From cedd6183f06fd35e365fecf78083227cb407b2c3 Mon Sep 17 00:00:00 2001 From: Hyyan Abo Fakher Date: Fri, 19 Jul 2019 15:21:27 +0200 Subject: [PATCH] feat: add api methods to control the chart toolbar items chart toolbar items can be add/removed now using the api methods (configuration & api) `addChartToolbarItem` & `removeChartToolbarItem` --- BBjGridExWidget.bbj | 96 +++++++++++++++++++++++++++++- client/dist/bbj-grid-widget.js | 40 ++++++++++++- client/dist/bbj-grid-widget.min.js | 8 ++- client/dist/report.html | 2 +- client/src/api/charts.js | 22 +++++++ client/src/api/init.js | 2 + 6 files changed, 164 insertions(+), 6 deletions(-) create mode 100644 client/src/api/charts.js diff --git a/BBjGridExWidget.bbj b/BBjGridExWidget.bbj index 7ed18851..28350df7 100644 --- a/BBjGridExWidget.bbj +++ b/BBjGridExWidget.bbj @@ -761,12 +761,16 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns field public BBjNumber SuppressMultiRangeSelection! = null() rem /** rem * Set to true to enable charting - rem * + rem * rem *
#Enterprise rem *
#Configuration rem */ field public BBjNumber EnableCharts! = null() rem /** + rem * An array which contains the supported toolbar items + rem */ + field protected HashSet ChartToolbarItems! = new HashSet() + rem /** rem * The grid languages manager rem */ field protected BBjGridExWidgetLanguageManager LanguageManager! = new BBjGridExWidgetLanguageManager() @@ -1043,6 +1047,38 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns methodret "never" methodend rem /** + rem * Constant value which defines that chart toolbar settings item + rem * + rem * @return BBjString + rem */ + method public static BBjString CAHRT_TOOLBAR_SETTINGS() + methodret "chartSettings" + methodend + rem /** + rem * Constant value which defines that chart toolbar data item + rem * + rem * @return BBjString + rem */ + method public static BBjString CAHRT_TOOLBAR_DATA() + methodret "chartData" + methodend + rem /** + rem * Constant value which defines that chart toolbar format item + rem * + rem * @return BBjString + rem */ + method public static BBjString CAHRT_TOOLBAR_FORMAT() + methodret "chartFormat" + methodend + rem /** + rem * Constant value which defines that chart toolbar download item + rem * + rem * @return BBjString + rem */ + method public static BBjString CAHRT_TOOLBAR_DOWNLOAD() + methodret "chartDownload" + methodend + rem /** rem * Make Hex Color rem * rem * Convert the given BBjColor to a hex color string @@ -1093,6 +1129,7 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns method public BBjGridExWidget(BBjWindow wnd!, BBjNumber id!, BBjNumber x!, BBjNumber y!, BBjNumber w!, BBjNumber h!) #super!.create(wnd!,id!,x!,y!,w!,h!) #RS!.createIndex() + #fillChartToolbarItems() methodend rem /** rem * The constructor that creates the widget on wnd! @@ -1111,6 +1148,7 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns #setTemplate(template$) #super!.create(wnd!,id!,x!,y!,w!,h!) #RS!.createIndex() + #fillChartToolbarItems() methodend rem /** rem * The constructor that creates the widget in the ChildWindow @@ -1120,6 +1158,7 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns method public BBjGridExWidget(BBjChildWindow wnd!) #super!.create(wnd!) #RS!.createIndex() + #fillChartToolbarItems() methodend rem /** rem * The constructor that creates the widget in the ChildWindow @@ -1133,6 +1172,7 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns #setTemplate(template$) #super!.create(wnd!) #RS!.createIndex() + #fillChartToolbarItems() methodend REM /** REM * Get the unique control type @@ -2163,7 +2203,7 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns options!.addProperty("overlayLoadingTemplate",#getOverlayLoadingTemplate(), err=*next) options!.addProperty("overlayNoRowsTemplate",#getOverlayNoRowsTemplate(), err=*next) rem Charts - rem =========================== + rem =========================== options!.addProperty("enableCharts",#getEnableCharts().booleanValue(), err=*next) rem Tree Data rem =========================== @@ -2196,6 +2236,9 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns context!.addProperty("contextMenu",#ContextMenu!.toString(), err=*next) context!.addProperty("navigateToNextCell",Iff(#NavigationBehavior! = #GRID_NAVIGATION_BEHAVIOUR_NEXT_ROW() , 1 , 0), err=*next) context!.addProperty("getDataPath",#getDataPathTemplate(), err=*next) + if(#getEnableCharts() <> null() and #getEnableCharts() = 1) then + context!.addProperty("chartToolbarItems",new Gson().toJson(#getChartToolbarItems()), err=*next) + fi options!.add("context",context!) methodret options! methodend @@ -2587,6 +2630,46 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns methodret v! methodend rem /** + rem * Enable a chart toolbar item + rem * + rem *
#Enterprise + rem *
#Configuration + rem *
#API + rem * + rem * @see CAHRT_TOOLBAR_SETTINGS() + rem * @see CAHRT_TOOLBAR_DATA() + rem * @see CAHRT_TOOLBAR_FORMAT() + rem * @see CAHRT_TOOLBAR_DOWNLOAD() + rem */ + method public void addChartToolbarItem(BBjString item!) + #ChartToolbarItems!.add(item!) + + if(#IsReady! and (#getEnableCharts() <> null() and #getEnableCharts() = 1)) then + #executeScript("gw_updateContext('" + #GRIDID$ + "', 'chartToolbarItems','" + new Gson().toJson(#getChartToolbarItems()) + "')") + FI + methodend + rem /** + rem * Disable a chart toolbar item + rem * + rem *
#Enterprise + rem *
#Configuration + rem *
#API + rem * + rem * @see CAHRT_TOOLBAR_SETTINGS() + rem * @see CAHRT_TOOLBAR_DATA() + rem * @see CAHRT_TOOLBAR_FORMAT() + rem * @see CAHRT_TOOLBAR_DOWNLOAD() + rem */ + method public void removeChartToolbarItem(BBjString item!) + if #ChartToolbarItems!.contains(item!) then + #ChartToolbarItems!.remove(item!) + FI + + if(#IsReady! and (#getEnableCharts() <> null() and #getEnableCharts() = 1)) then + #executeScript("gw_updateContext('" + #GRIDID$ + "', 'chartToolbarItems','" + new Gson().toJson(#getChartToolbarItems()) + "')") + FI + methodend + rem /** rem * Set the focus on the given row id and the given column rem * rem *
#API @@ -3161,6 +3244,15 @@ class public BBjGridExWidget extends BBjWidget implements BBjGridExWidgetColumns #executeScript("gw_updateContext('" + #GRIDID$ + "', 'interests','" + new Gson().toJson(#getInterests()) + "')") methodend rem /** + rem * The method will add the default chart toolbar items + rem */ + method protected void fillChartToolbarItems() + #getChartToolbarItems().add(#CAHRT_TOOLBAR_SETTINGS()) + #getChartToolbarItems().add(#CAHRT_TOOLBAR_DATA()) + #getChartToolbarItems().add(#CAHRT_TOOLBAR_FORMAT()) + #getChartToolbarItems().add(#CAHRT_TOOLBAR_DOWNLOAD()) + methodend + rem /** rem * Get the grid template rem * rem * @return BBjString parsed html template diff --git a/client/dist/bbj-grid-widget.js b/client/dist/bbj-grid-widget.js index 8d6e5149..6effb76c 100644 --- a/client/dist/bbj-grid-widget.js +++ b/client/dist/bbj-grid-widget.js @@ -10805,6 +10805,41 @@ function gw_setFocusedCell(id, row, column) { /***/ }), +/***/ "./src/api/charts.js": +/*!***************************!*\ + !*** ./src/api/charts.js ***! + \***************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.gw_getChartToolbarItems = gw_getChartToolbarItems; + +/* +* This file is part of the BBjGridExWidget plugin. +* (c) Basis Europe +* +* For the full copyright and license information, please view the LICENSE +* file that was distributed with this source code. +*/ + +/** + * Return the chart toolbar items defined in the grid's context + * + * @param {Object} params + * @returns {Array} array of supported chart items + */ +function gw_getChartToolbarItems(params) { + return params.api.gridOptionsWrapper.gridOptions.context.chartToolbarItems || []; +} + +/***/ }), + /***/ "./src/api/columns.js": /*!****************************!*\ !*** ./src/api/columns.js ***! @@ -11257,6 +11292,8 @@ var _rows = __webpack_require__(/*! ./rows */ "./src/api/rows.js"); var _menus = __webpack_require__(/*! ./menus */ "./src/api/menus.js"); +var _charts = __webpack_require__(/*! ./charts */ "./src/api/charts.js"); + var _utilities = __webpack_require__(/*! ./utilities */ "./src/api/utilities.js"); var _events = __webpack_require__(/*! events */ "./src/events/index.js"); @@ -11347,6 +11384,7 @@ function gw_parseOptions(options) { getContextMenuItems: function getContextMenuItems(params) { return (0, _menus.gw_getContextMenu)(id, params); }, + "getChartToolbarItems": _charts.gw_getChartToolbarItems, "popupParent": (0, _utilities.gw_getDocument)().body, "onRowDoubleClicked": (0, _events.gw_debounce)(_events.gw_onRowDoubleClicked, debounceDuration), "onSelectionChanged": (0, _events.gw_debounce)(_events.gw_onSelectionChanged, debounceDuration), @@ -12850,4 +12888,4 @@ module.exports = __webpack_require__(/*! ./src/index.js */"./src/index.js"); /***/ }) /******/ }))); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLWdyaWQuY3NzP2I0MzYiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzcz9jZGMxIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1iYWxoYW0uY3NzP2I5MzAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJsdWUuY3NzPzA5NTQiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3M/M2Y1NiIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZGFyay5jc3M/OGM0ZCIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZnJlc2guY3NzPzdkMDAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLW1hdGVyaWFsLmNzcz8xMWFlIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbXBvbmVudHMvZGlzdC9hZ2MtYmFzaWMuYnVuZGxlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL2FycmF5L2Zvci1lYWNoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL2FycmF5L2luY2x1ZGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL251bWJlci9pcy1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL3N0cmluZy9zdGFydHMtd2l0aC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hLWZ1bmN0aW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FkZC10by11bnNjb3BhYmxlcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hbi1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktaW5jbHVkZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktbWV0aG9kcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hcnJheS1zcGVjaWVzLWNvbnN0cnVjdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FycmF5LXNwZWNpZXMtY3JlYXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NvZi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19jb3JlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2N0eC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19kZWZpbmVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2Rlc2NyaXB0b3JzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2RvbS1jcmVhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZXhwb3J0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2ZhaWxzLWlzLXJlZ2V4cC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mYWlscy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mdW5jdGlvbi10by1zdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZ2xvYmFsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2hhcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19oaWRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2llOC1kb20tZGVmaW5lLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2lvYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtaW50ZWdlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pcy1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtcmVnZXhwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2xpYnJhcnkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWRwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fcmVkZWZpbmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc2hhcmVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmljdC1tZXRob2QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc3RyaW5nLWNvbnRleHQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8tYWJzb2x1dGUtaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8taW50ZWdlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1pb2JqZWN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3RvLWxlbmd0aC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8tcHJpbWl0aXZlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3VpZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL193a3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuZm9yLWVhY2guanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubnVtYmVyLmlzLWludGVnZXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLnN0YXJ0cy13aXRoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM3LmFycmF5LmluY2x1ZGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9kZWVwLXBhcnNlLWpzb24vaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tcG9uZW50cy9kaXN0L2FnYy1iYXNpYy5idW5kbGUuanMtZXhwb3NlZCIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvanNzL2pzcy5qcy1leHBvc2VkIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9qc3MvanNzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX1N5bWJvbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19hcHBseS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19hcnJheUxpa2VLZXlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2FycmF5TWFwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Fzc2lnblZhbHVlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VBc3NpZ25WYWx1ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlR2V0VGFnLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VJc0FyZ3VtZW50cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlSXNOYXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fYmFzZUlzVHlwZWRBcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlS2V5cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlS2V5c0luLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VQcm9wZXJ0eU9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VSZXN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VTZXRUb1N0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlVGltZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fYmFzZVRvU3RyaW5nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VVbmFyeS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlVmFsdWVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2NvcHlPYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fY29yZUpzRGF0YS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19jcmVhdGVBc3NpZ25lci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19jdXN0b21EZWZhdWx0c0Fzc2lnbkluLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2RlZmluZVByb3BlcnR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2VzY2FwZUh0bWxDaGFyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2VzY2FwZVN0cmluZ0NoYXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fZnJlZUdsb2JhbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19nZXROYXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fZ2V0UHJvdG90eXBlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2dldFJhd1RhZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19nZXRWYWx1ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19pc0luZGV4LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzSXRlcmF0ZWVDYWxsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzTWFza2VkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzUHJvdG90eXBlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX25hdGl2ZUtleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fbmF0aXZlS2V5c0luLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX25vZGVVdGlsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX29iamVjdFRvU3RyaW5nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX292ZXJBcmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fb3ZlclJlc3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fcmVFc2NhcGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fcmVFdmFsdWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19yZUludGVycG9sYXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX3Jvb3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fc2V0VG9TdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fc2hvcnRPdXQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fdG9Tb3VyY2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9hc3NpZ25JbldpdGguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9hdHRlbXB0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvY29uc3RhbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9lcS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2VzY2FwZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lkZW50aXR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNBcmd1bWVudHMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0FycmF5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNBcnJheUxpa2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0J1ZmZlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzRXJyb3IuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0Z1bmN0aW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNMZW5ndGguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc09iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzT2JqZWN0TGlrZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzUGxhaW5PYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc1N5bWJvbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzVHlwZWRBcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2tleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9rZXlzSW4uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9zdHViRmFsc2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC90ZW1wbGF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL3RlbXBsYXRlU2V0dGluZ3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC90b1N0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctZ3JpZC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtYmFsaGFtLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtYmx1ZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWRhcmsuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1mcmVzaC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLW1hdGVyaWFsLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc3R5bGUvY2xhc3Nlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL3VybHMuanMiLCJ3ZWJwYWNrOi8vLyh3ZWJwYWNrKS9idWlsZGluL2dsb2JhbC5qcyIsIndlYnBhY2s6Ly8vKHdlYnBhY2spL2J1aWxkaW4vbW9kdWxlLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvY2VsbHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9jb2x1bW5zLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvY29udGV4dC5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvaW5pdC5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL2pzcy5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL21lbnVzLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvb3ZlcmxheXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9yb3dzLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvc3RhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9zdGF0dXNiYXIuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS90b29scGFuZWwuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS91dGlsaXRpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9jb25zdGFudHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9lZGl0aW5nLmpzIiwid2VicGFjazovLy8uL3NyYy9ldmVudHMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9zZWxlY3Rpb25zLmpzIiwid2VicGFjazovLy8uL3NyYy9ldmVudHMvc3RhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy91dGlsaXRpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9wb2x5ZmlsbHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL3N0eWxlL2NsYXNzZXMuY3NzP2I3MzgiXSwibmFtZXMiOlsiZGVlcFBhcnNlSnNvbiIsImpzb25TdHJpbmciLCJKU09OIiwicGFyc2UiLCJlcnIiLCJBcnJheSIsImlzQXJyYXkiLCJtYXAiLCJ2YWwiLCJPYmplY3QiLCJrZXlzIiwicmVkdWNlIiwib2JqIiwia2V5IiwibW9kdWxlIiwiZXhwb3J0cyIsImd3X3N0YXJ0RWRpdGluZ0NlbGwiLCJpZCIsInJvdyIsImNvbEtleSIsImNoYXIiLCJvcHRpb25zIiwiYXBpIiwic2V0Rm9jdXNlZENlbGwiLCJOdW1iZXIiLCJzdGFydEVkaXRpbmdDZWxsIiwicm93SW5kZXgiLCJrZXlQcmVzcyIsImNoYXJQcmVzcyIsImd3X3N0b3BFZGl0aW5nIiwiY2FuY2VsIiwic3RvcEVkaXRpbmciLCJnd19lZGl0TmV4dENlbGwiLCJ0YWJUb05leHRDZWxsIiwiZ3dfZWRpdFByZXZpb3VzQ2VsbCIsInRhYlRvUHJldmlvdXNDZWxsIiwiZ3dfc2V0Rm9jdXNlZENlbGwiLCJjb2x1bW4iLCJyIiwiaXNJbnRlZ2VyIiwiZ2V0Um93Tm9kZSIsImMiLCJjb2x1bW5BcGkiLCJnZXRBbGxHcmlkQ29sdW1ucyIsImNvbElkIiwicmVxdWlyZSIsImd3X2V4dGVuZENvbHVtbkRlZmluaXRpb25zIiwiZGVmaW5pdGlvbnMiLCJpIiwiZGVmIiwiY2hlY2tib3hTZWxlY3Rpb24iLCJnd19pc1Nob3dTZWxlY3Rpb25DaGVja2JveCIsImhlYWRlckNoZWNrYm94U2VsZWN0aW9uIiwiZ3dfaXNIZWFkZXJDaGVja2JveFNlbGVjdGlvbiIsImd3X3NldENvbHVtbkRlZmluaXRpb25zIiwiZ3JpZCIsImRlZXBQYXJzZWREZWZpbml0aW9ucyIsInN0cmluZ2lmeSIsInNldENvbHVtbkRlZnMiLCJjb2x1bW5EZWZzIiwiZ3dfc2l6ZUNvbHVtbnNUb0ZpdCIsInNpemVDb2x1bW5zVG9GaXQiLCJnd19zZXRWaXNpYmxlQ29sdW1uIiwiY29sdW1uSWQiLCJlbnN1cmVDb2x1bW5WaXNpYmxlIiwiZ3dfc2V0Q29sdW1uV2lkdGgiLCJ3aWR0aCIsInNldENvbHVtbldpZHRoIiwiZ3dfcGluQ29sdW1uIiwicGluIiwic2V0Q29sdW1uUGlubmVkIiwiZ3dfbW92ZUNvbHVtbiIsInRvSW5kZXgiLCJtb3ZlQ29sdW1uIiwicGFyYW0iLCJjb250ZXh0Iiwic2hvd1NlbGVjdGlvbkNoZWNrYm94IiwiY29sdW1ucyIsImdldEFsbERpc3BsYXllZFZpcnR1YWxDb2x1bW5zIiwiY29sRGVmIiwiZmllbGQiLCJncmlkT3B0aW9uc1dyYXBwZXIiLCJncmlkT3B0aW9ucyIsInNob3dIZWFkZXJTZWxlY3Rpb25DaGVja2JveCIsImd3X2FkZFJvd0dyb3VwQ29sdW1uIiwic2V0Iiwic3BsaXQiLCJ0cmltIiwiZ3dfcmVtb3ZlUm93R3JvdXBDb2x1bW4iLCJyZW1vdmVSb3dHcm91cENvbHVtbnMiLCJnd19nZXRQaXZvdE1vZGUiLCJpc1Bpdm90TW9kZSIsImd3X3NldFBpdm90TW9kZSIsIm1vZGUiLCJzZXRQaXZvdE1vZGUiLCJnd19hZGRQaXZvdENvbHVtbnMiLCJnd19yZW1vdmVQaXZvdENvbHVtbnMiLCJyZW1vdmVQaXZvdENvbHVtbnMiLCJnd19hZGRWYWx1ZUNvbHVtbnMiLCJhZGRWYWx1ZUNvbHVtbnMiLCJnd19yZW1vdmVWYWx1ZUNvbHVtbnMiLCJyZW1vdmVWYWx1ZUNvbHVtbnMiLCJnd191cGRhdGVDb250ZXh0IiwidmFsdWUiLCJ0ZW1wbGF0ZSIsImd3X2luaXQiLCJsaWNlbnNlIiwiZGF0YSIsImFnR3JpZCIsIkxpY2Vuc2VNYW5hZ2VyIiwic2V0TGljZW5zZUtleSIsImNvbnRhaW5lciIsImdldEVsZW1lbnRCeUlkIiwiaW5uZXJIVE1MIiwicGFyc2VkT3B0aW9ucyIsImd3X3BhcnNlT3B0aW9ucyIsInJvd0RhdGEiLCJpbnN0YW5jZSIsIkdyaWQiLCJjb25zb2xlIiwibG9nIiwiZGVlcFBhcnNlZE9wdGlvbnMiLCJnZXREYXRhUGF0aFRlbXBsYXRlIiwiZ2V0RGF0YVBhdGgiLCJkZWJvdW5jZUR1cmF0aW9uIiwiZmluYWxPcHRpb25zIiwiZ2V0RG9jdW1lbnQiLCJvbkNlbGxFZGl0aW5nU3RhcnRlZCIsImUiLCJvbkNlbGxFZGl0aW5nU3RvcHBlZCIsIm9uQ2VsbFZhbHVlQ2hhbmdlZCIsIm9uUm93RWRpdGluZ1N0YXJ0ZWQiLCJvblJvd0VkaXRpbmdTdG9wcGVkIiwib25Sb3dWYWx1ZUNoYW5nZWQiLCJvbkNlbGxDbGlja2VkIiwib25DZWxsRG91YmxlQ2xpY2tlZCIsIm9uR3JpZFJlYWR5IiwiZ2V0Um93Tm9kZUlkIiwiZ3dfZ2V0Um93Tm9kZUlkIiwiZ2V0Q29udGV4dE1lbnVJdGVtcyIsInBhcmFtcyIsImJvZHkiLCJnd19vblJvd0RvdWJsZUNsaWNrZWQiLCJnd19vblNlbGVjdGlvbkNoYW5nZWQiLCJnd19vblJhbmdlU2VsZWN0aW9uQ2hhbmdlZCIsIkJhc2lzIiwiQWdHcmlkQ29tcG9uZW50cyIsIkJhc2ljQm9vbGVhbnNSZW5kZXJlciIsIkJhc2ljQm9vbGVhbnNFZGl0b3IiLCJCYXNpY0Jvb2xlYW5zRmlsdGVyIiwiQmFzaWNOdW1iZXJzRWRpdG9yIiwiQmFzaWNEYXRlVGltZXNFZGl0b3IiLCJCYXNpY0RhdGVUaW1lc0ZpbHRlciIsIkJhc2ljSW1hZ2VzUmVuZGVyZXIiLCJjb21waWxlZCIsIl9fVEVNUExBVEVfXyIsImhhc093blByb3BlcnR5IiwibmF2aWdhdGVUb05leHRDZWxsIiwidHJlZURhdGEiLCJnZXREYXRhUGF0aFRlbXBsYXRlQ29tcGxpZWQiLCJmb3JtYXRTZWxlY3RvciIsInNlbGVjdG9yIiwic3RhcnRzV2l0aCIsImd3X3NldFN0eWxlIiwicnVsZXMiLCJqc3MiLCJmb3JEb2N1bWVudCIsImd3X3JlbW92ZVN0eWxlIiwicmVtb3ZlIiwiZ3dfZ2V0Q29udGV4dE1lbnUiLCJncmlkSWQiLCJidWlsZENvbnRleHRNZW51QWN0aW9uIiwibm9kZSIsInYiLCJwYXJzZU1lbnUiLCJtZW51IiwiZm9yRWFjaCIsIml0ZW0iLCJjb250ZXh0TWVudSIsImd3X3Nob3dMb2FkaW5nT3ZlcmxheSIsInNob3dMb2FkaW5nT3ZlcmxheSIsImd3X3Nob3dOb1Jvd3NPdmVybGF5Iiwic2hvd05vUm93c092ZXJsYXkiLCJnd19oaWRlT3ZlcmxheSIsImhpZGVPdmVybGF5IiwiZ3dfc2V0UXVpY2tGaWx0ZXIiLCJmaWx0ZXIiLCJzZXRRdWlja0ZpbHRlciIsImd3X2V4cGFuZEFsbCIsImV4cGFuZEFsbCIsImd3X2NvbGxhcHNlQWxsIiwiY29sbGFwc2VBbGwiLCJnd19zZXRWaXNpYmxlUm93IiwiaW5kZXgiLCJwb3NpdGlvbiIsImVuc3VyZUluZGV4VmlzaWJsZSIsImd3X25hdmlnYXRlVG9OZXh0Um93IiwicHJldmlvdXNDZWxsIiwicHJldmlvdXNDZWxsUG9zaXRpb24iLCJzdWdnZXN0ZWROZXh0Q2VsbCIsIm5leHRDZWxsUG9zaXRpb24iLCJLRVlfVVAiLCJLRVlfRE9XTiIsIktFWV9MRUZUIiwiS0VZX1JJR0hUIiwiZm9yRWFjaE5vZGUiLCJzZXRTZWxlY3RlZCIsIkVycm9yIiwiZ3dfc2V0Um93c0RhdGEiLCJqc29uIiwic2V0Um93RGF0YSIsInJlZnJlc2hDbGllbnRTaWRlUm93TW9kZWwiLCJnd19zZXRSb3dEYXRhIiwidXBkYXRlUm93RGF0YSIsInVwZGF0ZSIsImd3X3JlbW92ZVJvd3MiLCJpbmRleGVzIiwiaXRlbXMiLCJwdXNoIiwiZ3dfYWRkUm93cyIsInJvd3MiLCJhZGQiLCJhZGRJbmRleCIsImd3X3NldFJvd3NIZWlnaHQiLCJoZWlnaHQiLCJzZXRSb3dIZWlnaHQiLCJvblJvd0hlaWdodENoYW5nZWQiLCJnd19zZXRSb3dIZWlnaHQiLCJnZXREaXNwbGF5ZWRSb3dBdEluZGV4Iiwid2FybiIsImd3X3NldFNlbGVjdGVkUm93cyIsImZvckVhY2hOb2RlQWZ0ZXJGaWx0ZXJBbmRTb3J0IiwiaW5kZXhPZiIsImV4cGFuZGVkIiwib25Hcm91cEV4cGFuZGVkT3JDb2xsYXBzZWQiLCJnd19zZWxlY3RBbGwiLCJmaWx0ZXJlZCIsInNlbGVjdEFsbEZpbHRlcmVkIiwic2VsZWN0QWxsIiwiZ3dfZGVzZWxlY3RBbGwiLCJkZXNlbGVjdEFsbEZpbHRlcmVkIiwiZGVzZWxlY3RBbGwiLCJnd19nZXRTZWxlY3RlZFJvd3MiLCJub2RlcyIsImdldFNlbGVjdGVkTm9kZXMiLCJwYXJzZWQiLCJnd19nZXRTZWxlY3RlZFJvdyIsImxlbmd0aCIsImd3X2dldFJhbmdlU2VsZWN0aW9ucyIsInJhbmdlcyIsImdldENlbGxSYW5nZXMiLCJtb2RlbCIsImdldE1vZGVsIiwicmVzdWx0IiwicmFuZ2UiLCJhY2N1bXVsYXRvciIsImN1cnJlbnQiLCJCb29sZWFuIiwic3RhckluZGV4IiwiTWF0aCIsIm1pbiIsInN0YXJ0Um93IiwiZW5kUm93IiwiZW5kSW5kZXgiLCJtYXgiLCJnZXRSb3ciLCJwYXJzZWROb2RlIiwiZ3dfYWRkQ2VsbFJhbmdlIiwicHIiLCJzdGFydCIsImVuZCIsImFkZENlbGxSYW5nZSIsInJvd1N0YXJ0SW5kZXgiLCJhYnMiLCJyb3dFbmRJbmRleCIsImd3X2NsZWFyUmFuZ2VTZWxlY3Rpb24iLCJjbGVhclJhbmdlU2VsZWN0aW9uIiwiZ3dfc2V0U3RhdGUiLCJzdGF0ZSIsInNldENvbHVtblN0YXRlIiwic2V0Q29sdW1uR3JvdXBTdGF0ZSIsImdyb3VwcyIsInNldFNvcnRNb2RlbCIsInNvcnQiLCJzZXRGaWx0ZXJNb2RlbCIsImZpbHRlcnMiLCJnd19nZXRTdGF0ZSIsImdldENvbHVtblN0YXRlIiwiZ2V0Q29sdW1uR3JvdXBTdGF0ZSIsImdldFNvcnRNb2RlbCIsImdldEZpbHRlck1vZGVsIiwiZ3dfc2V0U3RhdHVzYmFyQ29tcG9uZW50VmlzaWJpbGl0eSIsInZpc2liaWxpdHkiLCJnZXRTdGF0dXNQYW5lbCIsInNldFZpc2libGUiLCJnd19zZXRTaWRlQmFyVmlzaWJsZSIsInNldFNpZGVCYXJWaXNpYmxlIiwiZ3dfb3BlblRvb2xwYW5lbCIsInRvb2xwYW5lbElkIiwib3BlblRvb2xQYW5lbCIsImd3X2Nsb3NlVG9vbHBhbmVsIiwiY2xvc2VUb29sUGFuZWwiLCJnd19zZXRGdW5jdGlvbnNSZWFkT25seSIsInJlYWRvbmx5Iiwic2V0RnVuY3Rpb25zUmVhZE9ubHkiLCJnd19nZXREb2N1bWVudCIsIiRkb2MiLCJkb2N1bWVudCIsImd3X2dldFdpbmRvdyIsIiR3aW4iLCJ3aW5kb3ciLCJnd19lc2NhcGUiLCJ1bmRlZmluZWQiLCJnd19nZXRHcmlkIiwiQkJqR3JpZEV4V2lkZ2V0IiwicmVnaXN0ZXJlZEdyaWRzIiwiVHlwZUVycm9yIiwiZ3dfYWRkR3JpZCIsIkdXX0VWRU5UX1JPV19DTElDSyIsIkdXX0VWRU5UX1JPV19ET1VCTEVfQ0xJQ0siLCJHV19FVkVOVF9DRUxMX0NMSUNLIiwiR1dfRVZFTlRfQ0VMTF9ET1VCTEVfQ0xJQ0siLCJHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RBUlRFRCIsIkdXX0VWRU5UX0NFTExfRURJVElOR19TVE9QUEVEIiwiR1dfRVZFTlRfQ0VMTF9WQUxVRV9DSEFOR0VEIiwiR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RBUlRFRCIsIkdXX0VWRU5UX1JPV19FRElUSU5HX1NUT1BQRUQiLCJHV19FVkVOVF9HUklEX1NUQVRFX0NIQU5HRSIsIkdXX0VWRU5UX1JBTkdFX1NFTEVDVElPTl9DSEFOR0VEIiwiQ0VMTF9FRElUSU5HX0VWRU5UU19NQVAiLCJST1dfRURJVElOR19FVkVOVFNfTUFQIiwiZ3dfb25DZWxsRWRpdGluZ0V2ZW50IiwibmV3VmFsdWUiLCJvbGRWYWx1ZSIsInR5cGUiLCJvIiwiZ3dfb25Sb3dFZGl0aW5nRXZlbnQiLCJDRUxMX0NMSUNLSU5HX0VWRU5UU19NQVAiLCJnd19vbkNlbGxDbGlja0V2ZW50IiwiZ3dfb25SZWFkeUV2ZW50Iiwic3RhdGVEZWJvdW5jZSIsImNoYW5nZUV2ZW50IiwiZ3dfb25TdGF0ZUNoYW5nZWQiLCJldmVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJnd19kZWJvdW5jZSIsImZ1bmMiLCJ3YWl0IiwiaW1tZWRpYXRlIiwidGltZW91dCIsImFyZ3MiLCJhcmd1bWVudHMiLCJsYXRlciIsImFwcGx5IiwiY2FsbE5vdyIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJnd19zZW5kRXZlbnQiLCJwYXlsb2FkIiwiZXZlbnRJZCIsInJlZ2lzdGVyZWRJbnRlcmVzdHMiLCJpbnRlcmVzdHMiLCJpbmNsdWRlcyIsImRpdiIsIkN1c3RvbUV2ZW50IiwiZGlzcGF0Y2hFdmVudCIsImd3X3BhcnNlTm9kZSIsImdyb3VwIiwicm93Tm9kZUlkIiwieCIsInAiLCJwYXJlbnQiLCJjaGlsZEluZGV4IiwicyIsInNlbGVjdGVkIiwiZ3dfcGFyc2VOb2RlRnJvbUV2ZW50IiwiYnViYmxlcyIsImNhbmNlbGFibGUiLCJkZXRhaWwiLCJldnQiLCJjcmVhdGVFdmVudCIsImluaXRDdXN0b21FdmVudCIsInByb3RvdHlwZSIsIkV2ZW50Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxrREFBMEMsZ0NBQWdDO0FBQzFFO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZ0VBQXdELGtCQUFrQjtBQUMxRTtBQUNBLHlEQUFpRCxjQUFjO0FBQy9EOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBeUMsaUNBQWlDO0FBQzFFLHdIQUFnSCxtQkFBbUIsRUFBRTtBQUNySTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1DQUEyQiwwQkFBMEIsRUFBRTtBQUN2RCx5Q0FBaUMsZUFBZTtBQUNoRDtBQUNBO0FBQ0E7O0FBRUE7QUFDQSw4REFBc0QsK0RBQStEOztB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QUFrRCxzQkFBc0I7QUFDeEU7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FB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LE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxFQUFFO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxFQUFFO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0VBQXdFLDZGQUE2RjtBQUNySztBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsa0ZBQWtGLGlGQUFpRjtBQUM5SztBQUNBO0FBQ0E7O0FBRUEsMERBQTBELG1CQUFtQjtBQUM3RTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0EsZUFBZTs7QUFFZjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsOEZBQThGLGFBQWE7QUFDM0c7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBOztBQUVBLHdCQUF3QixrQkFBa0I7QUFDMUM7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLGdDQUFnQztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNEVBQTRFO0FBQzVFO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixXQUFXO0FBQ1g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsNkZBQTZGO0FBQzdGO0FBQ0E7QUFDQSxTQUFTOztBQUVUO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVzs7QUFFWDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSxnSkFBZ0o7QUFDaEo7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxnQ0FBZ0MsZUFBZTtBQUMvQztBQUNBO0FBQ0E7O0FBRUEsa0NBQWtDLGVBQWU7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxvREFBb0QsZUFBZTtBQUNuRTtBQUNBO0FBQ0E7O0FBRUEsa0NBQWtDLG9FQUFvRTtBQUN0RztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxjQUFjLDRCQUE0QjtBQUMxQztBQUNBOztBQUVBLDJCQUEyQiwwQkFBMEI7QUFDckQ7QUFDQTs7QUFFQSwwQ0FBMEMscUZBQXFGO0FBQy9IO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLHVCQUF1Qiw0QkFBNEI7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLDRDQUE0QyxLQUFLO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsdUdBQXVHOztBQUV2Ryw0Q0FBNEMsS0FBSztBQUNqRDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsNENBQTRDLEtBQUs7QUFDakQ7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNB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QUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxTQUFTOztBQUVUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSx5QkFBeUIsOEJBQThCO0FBQ3ZEO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSx1QkFBdUIsK0JBQStCO0FBQ3REO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7O0FBRVQ7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7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QkFBMkIsMkJBQTJCLG9CQUFvQixFQUFFLCtDQUErQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxvQ0FBb0MsdUJBQXVCLEVBQUUsb0NBQW9DLHdCQUF3QixFQUFFLG9DQUFvQyx1QkFBdUIsRUFBRSxvQ0FBb0Msd0JBQXdCLEVBQUUsb0NBQW9DLHVCQUF1QixFQUFFLG9DQUFvQyx3QkFBd0IsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNB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RUFBRSwwREFBMEQseUJBQXlCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCx5QkFBeUIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELHlCQUF5QixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQseUJBQXlCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCx5QkFBeUIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFB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LDBCQUEwQixFQUFFLHFEQUFxRCx5QkFBeUIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELHlCQUF5QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQseUJBQXlCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsd0NBQXdDLDRCQUE0Qiw2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RCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLHNDQUFzQyw0QkFBNEIsNkJBQTZCLEVBQUUsb0dBQW9HLDJCQUEyQiwyQkFBMkIsb0JBQW9CLGdDQUFnQyxpQ0FBaUMsa0NBQWtDLHNCQUFzQixFQUFFLHdIQUF3SCx3QkFBd0IsRUFBRSw0SUFBNEksb0JBQW9CLEVBQUUsc01B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RUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCw0QkFBNEIsRUFBRSx5REFBeUQsMEJBQTBCLEVB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LDBCQUEwQix1QkFBdUIsRUFBRSxzQkFBc0IscUNBQXFDLHFDQUFxQyxFQUFFLG1GQUFtRixzQkFBc0IsdUNBQXVDLHVDQUF1QyxFQUFFLDRCQUE0QixzQ0FBc0Msc0NBQXNDLEVBQUUsbURBQW1ELHlCQUF5QixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELHlCQUF5QixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELHlCQUF5QixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFF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LHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCx5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDRCQUE0QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsNEJBQTRCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDRCQUE0QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsNEJBQTRCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDRCQUE0QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSx1Q0FBdUMsNEJBQTRCLDZCQUE2QixFQUFFLHVHQUF1Rywy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RCwyQkFBMkIsRUFBRSx1REFBdUQsMEJBQTBCLEVBQUUsdURBQXVELDJCQUEyQixFQUFFLHVEQUF1RCwwQkFBMEIsRUFBRSx1REFBdUQsMkJBQTJCLEVBQUUsdURBQXVELDBCQUEwQixFQUFFLHVEQUF1RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0Qs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O0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBLEVBQUU7QUFDRjtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEVBQUU7QUFDRjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUEsRUFBRTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBOztBQUVBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLHVEQUF1RDtBQUN2RDs7QUFFQSw2QkFBNkIsbUJBQW1C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bEMsRUFBOEMsT0FBTyxLQUFQLENBRG5DLENBQ2lEOztBQUU1RCxXQUFTQSxXQUFULENBQXFCckIsS0FBckIsRUFBNEIzTSxNQUE1QixFQUFvQztBQUNsQ0EsVUFBTSxHQUFHQSxNQUFNLElBQUk7QUFBRTRPLGFBQU8sRUFBRSxLQUFYO0FBQWtCQyxnQkFBVSxFQUFFLEtBQTlCO0FBQXFDQyxZQUFNLEVBQUVsRTtBQUE3QyxLQUFuQjtBQUNBLFFBQUltRSxHQUFHLEdBQUd4RSxRQUFRLENBQUN5RSxXQUFULENBQXFCLGFBQXJCLENBQVY7QUFDQUQsT0FBRyxDQUFDRSxlQUFKLENBQW9CdEMsS0FBcEIsRUFBMkIzTSxNQUFNLENBQUM0TyxPQUFsQyxFQUEyQzVPLE1BQU0sQ0FBQzZPLFVBQWxELEVBQThEN08sTUFBTSxDQUFDOE8sTUFBckU7QUFDQSxXQUFPQyxHQUFQO0FBQ0Q7O0FBRURmLGFBQVcsQ0FBQ2tCLFNBQVosR0FBd0J4RSxNQUFNLENBQUN5RSxLQUFQLENBQWFELFNBQXJDO0FBRUF4RSxRQUFNLENBQUNzRCxXQUFQLEdBQXFCQSxXQUFyQjtBQUNELENBYkQsSTs7Ozs7Ozs7Ozs7O0FDUkEsY0FBYyxtQkFBTyxDQUFDLGlOQUErRzs7QUFFckksNENBQTRDLFFBQVM7O0FBRXJEO0FBQ0E7Ozs7QUFJQSxlQUFlOztBQUVmO0FBQ0Esa0NBQWtDOztBQUVsQyxhQUFhLG1CQUFPLENBQUMsc0dBQW1EOztBQUV4RTs7QUFFQSxHQUFHLEtBQVUsRUFBRSxFIiwiZmlsZSI6ImJiai1ncmlkLXdpZGdldC5qcyIsInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9XG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGdldHRlciB9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcbiBcdFx0fVxuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4gXHQvLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbiBcdC8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuIFx0Ly8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4gXHQvLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuIFx0XHRpZihtb2RlICYgMSkgdmFsdWUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKHZhbHVlKTtcbiBcdFx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcbiBcdFx0aWYoKG1vZGUgJiA0KSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmIHZhbHVlLl9fZXNNb2R1bGUpIHJldHVybiB2YWx1ZTtcbiBcdFx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG5zLCAnZGVmYXVsdCcsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHZhbHVlIH0pO1xuIFx0XHRpZihtb2RlICYgMiAmJiB0eXBlb2YgdmFsdWUgIT0gJ3N0cmluZycpIGZvcih2YXIga2V5IGluIHZhbHVlKSBfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGtleSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiB2YWx1ZVtrZXldOyB9LmJpbmQobnVsbCwga2V5KSk7XG4gXHRcdHJldHVybiBucztcbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAwKTtcbiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1iYWxoYW0tZGFyay5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmFsaGFtLWRhcmsuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1iYWxoYW0uY3NzXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkIH07XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJhbGhhbS5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmFsaGFtLmNzc1wiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYm9vdHN0cmFwLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1ib290c3RyYXAuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtZnJlc2guY3NzXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkIH07XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWZyZXNoLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1mcmVzaC5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLW1hdGVyaWFsLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1tYXRlcmlhbC5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtbWF0ZXJpYWwuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJCYXNpc1wiXSA9IHJvb3RbXCJCYXNpc1wiXSB8fCB7fSwgcm9vdFtcIkJhc2lzXCJdW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IGZhY3RvcnkoKTtcbn0pKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJyA/IHNlbGYgOiB0aGlzLCBmdW5jdGlvbigpIHtcbnJldHVybiAvKioqKioqLyAoZnVuY3Rpb24obW9kdWxlcykgeyAvLyB3ZWJwYWNrQm9vdHN0cmFwXG4vKioqKioqLyBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4vKioqKioqLyBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4vKioqKioqLyBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbi8qKioqKiovIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuLyoqKioqKi8gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbi8qKioqKiovIFx0XHRcdGk6IG1vZHVsZUlkLFxuLyoqKioqKi8gXHRcdFx0bDogZmFsc2UsXG4vKioqKioqLyBcdFx0XHRleHBvcnRzOiB7fVxuLyoqKioqKi8gXHRcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuLyoqKioqKi8gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4vKioqKioqLyBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuLyoqKioqKi8gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbi8qKioqKiovIFx0fVxuLyoqKioqKi9cbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuLyoqKioqKi8gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbi8qKioqKiovIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4vKioqKioqLyBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4vKioqKioqLyBcdFx0XHRcdGVudW1lcmFibGU6IHRydWUsXG4vKioqKioqLyBcdFx0XHRcdGdldDogZ2V0dGVyXG4vKioqKioqLyBcdFx0XHR9KTtcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbi8qKioqKiovIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbi8qKioqKiovIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4vKioqKioqLyBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuLyoqKioqKi8gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbi8qKioqKiovIFx0XHRyZXR1cm4gZ2V0dGVyO1xuLyoqKioqKi8gXHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbi8qKioqKiovIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gMjQpO1xuLyoqKioqKi8gfSlcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyAoW1xuLyogMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gUGFyYW1zOyB9KTtcbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBQYXJhbXMgTWl4aW5zIFxuKlxuKiBIZWxwZXIgbWV0aG9kcyB0byBtYW5hZ2UgY29tcG9uZW50cyBwYXJhbXNcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG52YXIgUGFyYW1zID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gUGFyYW1zKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBQYXJhbXMpO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKFBhcmFtcywgW3tcbiAgICBrZXk6IFwiZ2V0V2luXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFdpbihwYXJhbXMpIHtcbiAgICAgIHZhciB3aW4gPSBwYXJhbXMuV0lORE9XIHx8IHdpbmRvdyB8fCBudWxsO1xuICAgICAgaWYgKCF3aW4pIHRocm93IG5ldyBFcnJvcignQ3VycmVudCBlbnZpcm9tZW50IGRvZXMgbm90IHN1cHBvcnQgd2luZG93Jyk7XG4gICAgICByZXR1cm4gd2luO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJnZXREb2NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0RG9jKHBhcmFtcykge1xuICAgICAgdmFyIGRvYyA9IHBhcmFtcy5ET0NVTUVOVCB8fCBkb2N1bWVudCB8fCBudWxsO1xuICAgICAgaWYgKCFkb2MpIHRocm93IG5ldyBFcnJvcignQ3VycmVudCBlbnZpcm9tZW50IGRvZXMgbm90IHN1cHBvcnQgZG9jdW1lbnQnKTtcbiAgICAgIHJldHVybiBkb2M7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImdldE9wdGlvblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRPcHRpb24obmFtZSwgcGFyYW1zKSB7XG4gICAgICB2YXIgZmFsbGJhY2sgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6IG51bGw7XG4gICAgICB2YXIgb3B0aW9uOyAvLyB0cnkgdG8gZmV0Y2ggZnJvbSB0aGUgY29sdW1uIGRlZiBmaXJzdFxuXG4gICAgICBpZiAocGFyYW1zLmhhc093blByb3BlcnR5KCdjb2xEZWYnKSAmJiBwYXJhbXMuY29sRGVmLmhhc093blByb3BlcnR5KG5hbWUpKSB7XG4gICAgICAgIG9wdGlvbiA9IHBhcmFtcy5jb2xEZWZbbmFtZV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyB0cnkgdG8gZmV0Y2ggZnJvbSBBR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnfG1ldGEgaW4gdGhlIGNvbnRleHRcbiAgICAgICAgdmFyIEFHcmlkQ29tcG9uZW50c01ldGFDb25maWcgPSBwYXJhbXMuY29udGV4dC5BR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnIHx8IHBhcmFtcy5jb250ZXh0Lm1ldGE7XG5cbiAgICAgICAgaWYgKEFHcmlkQ29tcG9uZW50c01ldGFDb25maWcgJiYgQUdyaWRDb21wb25lbnRzTWV0YUNvbmZpZy5oYXNPd25Qcm9wZXJ0eShwYXJhbXMuY29sdW1uLmNvbElkKSAmJiBBR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnW3BhcmFtcy5jb2x1bW4uY29sSWRdLmhhc093blByb3BlcnR5KG5hbWUpKSB7XG4gICAgICAgICAgb3B0aW9uID0gQUdyaWRDb21wb25lbnRzTWV0YUNvbmZpZ1twYXJhbXMuY29sdW1uLmNvbElkXVtuYW1lXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyB0cnkgdG8gZmV0Y2ggZnJvbSB0aGUgY29udGVjdCBvYmplY3QgaXRzZWxmXG4gICAgICAgICAgdmFyIGNvbnRleHQgPSBwYXJhbXMuY29udGV4dDtcblxuICAgICAgICAgIGlmIChjb250ZXh0ICYmIGNvbnRleHQuaGFzT3duUHJvcGVydHkobmFtZSkpIHtcbiAgICAgICAgICAgIG9wdGlvbiA9IGNvbnRleHRbbmFtZV07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRyeSB0byBjaGVjayBwYXJhbXMgaXRzZWxmIG9yIGZhbGxiYWNrIHRvIGRlZmF1bHQgXG4gICAgICAgICAgICBvcHRpb24gPSBwYXJhbXNbbmFtZV0gfHwgZmFsbGJhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFBhcmFtcztcbn0oKTtcblxuXG5cbi8qKiovIH0pLFxuLyogMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vKlxuXHRNSVQgTGljZW5zZSBodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocFxuXHRBdXRob3IgVG9iaWFzIEtvcHBlcnMgQHNva3JhXG4qL1xuLy8gY3NzIGJhc2UgY29kZSwgaW5qZWN0ZWQgYnkgdGhlIGNzcy1sb2FkZXJcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24odXNlU291cmNlTWFwKSB7XG5cdHZhciBsaXN0ID0gW107XG5cblx0Ly8gcmV0dXJuIHRoZSBsaXN0IG9mIG1vZHVsZXMgYXMgY3NzIHN0cmluZ1xuXHRsaXN0LnRvU3RyaW5nID0gZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG5cdFx0cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7XG5cdFx0XHR2YXIgY29udGVudCA9IGNzc1dpdGhNYXBwaW5nVG9TdHJpbmcoaXRlbSwgdXNlU291cmNlTWFwKTtcblx0XHRcdGlmKGl0ZW1bMl0pIHtcblx0XHRcdFx0cmV0dXJuIFwiQG1lZGlhIFwiICsgaXRlbVsyXSArIFwie1wiICsgY29udGVudCArIFwifVwiO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGNvbnRlbnQ7XG5cdFx0XHR9XG5cdFx0fSkuam9pbihcIlwiKTtcblx0fTtcblxuXHQvLyBpbXBvcnQgYSBsaXN0IG9mIG1vZHVsZXMgaW50byB0aGUgbGlzdFxuXHRsaXN0LmkgPSBmdW5jdGlvbihtb2R1bGVzLCBtZWRpYVF1ZXJ5KSB7XG5cdFx0aWYodHlwZW9mIG1vZHVsZXMgPT09IFwic3RyaW5nXCIpXG5cdFx0XHRtb2R1bGVzID0gW1tudWxsLCBtb2R1bGVzLCBcIlwiXV07XG5cdFx0dmFyIGFscmVhZHlJbXBvcnRlZE1vZHVsZXMgPSB7fTtcblx0XHRmb3IodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGlkID0gdGhpc1tpXVswXTtcblx0XHRcdGlmKHR5cGVvZiBpZCA9PT0gXCJudW1iZXJcIilcblx0XHRcdFx0YWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpZF0gPSB0cnVlO1xuXHRcdH1cblx0XHRmb3IoaSA9IDA7IGkgPCBtb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgaXRlbSA9IG1vZHVsZXNbaV07XG5cdFx0XHQvLyBza2lwIGFscmVhZHkgaW1wb3J0ZWQgbW9kdWxlXG5cdFx0XHQvLyB0aGlzIGltcGxlbWVudGF0aW9uIGlzIG5vdCAxMDAlIHBlcmZlY3QgZm9yIHdlaXJkIG1lZGlhIHF1ZXJ5IGNvbWJpbmF0aW9uc1xuXHRcdFx0Ly8gIHdoZW4gYSBtb2R1bGUgaXMgaW1wb3J0ZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBkaWZmZXJlbnQgbWVkaWEgcXVlcmllcy5cblx0XHRcdC8vICBJIGhvcGUgdGhpcyB3aWxsIG5ldmVyIG9jY3VyIChIZXkgdGhpcyB3YXkgd2UgaGF2ZSBzbWFsbGVyIGJ1bmRsZXMpXG5cdFx0XHRpZih0eXBlb2YgaXRlbVswXSAhPT0gXCJudW1iZXJcIiB8fCAhYWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpdGVtWzBdXSkge1xuXHRcdFx0XHRpZihtZWRpYVF1ZXJ5ICYmICFpdGVtWzJdKSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IG1lZGlhUXVlcnk7XG5cdFx0XHRcdH0gZWxzZSBpZihtZWRpYVF1ZXJ5KSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IFwiKFwiICsgaXRlbVsyXSArIFwiKSBhbmQgKFwiICsgbWVkaWFRdWVyeSArIFwiKVwiO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpc3QucHVzaChpdGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdH07XG5cdHJldHVybiBsaXN0O1xufTtcblxuZnVuY3Rpb24gY3NzV2l0aE1hcHBpbmdUb1N0cmluZyhpdGVtLCB1c2VTb3VyY2VNYXApIHtcblx0dmFyIGNvbnRlbnQgPSBpdGVtWzFdIHx8ICcnO1xuXHR2YXIgY3NzTWFwcGluZyA9IGl0ZW1bM107XG5cdGlmICghY3NzTWFwcGluZykge1xuXHRcdHJldHVybiBjb250ZW50O1xuXHR9XG5cblx0aWYgKHVzZVNvdXJjZU1hcCAmJiB0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdHZhciBzb3VyY2VNYXBwaW5nID0gdG9Db21tZW50KGNzc01hcHBpbmcpO1xuXHRcdHZhciBzb3VyY2VVUkxzID0gY3NzTWFwcGluZy5zb3VyY2VzLm1hcChmdW5jdGlvbiAoc291cmNlKSB7XG5cdFx0XHRyZXR1cm4gJy8qIyBzb3VyY2VVUkw9JyArIGNzc01hcHBpbmcuc291cmNlUm9vdCArIHNvdXJjZSArICcgKi8nXG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gW2NvbnRlbnRdLmNvbmNhdChzb3VyY2VVUkxzKS5jb25jYXQoW3NvdXJjZU1hcHBpbmddKS5qb2luKCdcXG4nKTtcblx0fVxuXG5cdHJldHVybiBbY29udGVudF0uam9pbignXFxuJyk7XG59XG5cbi8vIEFkYXB0ZWQgZnJvbSBjb252ZXJ0LXNvdXJjZS1tYXAgKE1JVClcbmZ1bmN0aW9uIHRvQ29tbWVudChzb3VyY2VNYXApIHtcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG5cdHZhciBiYXNlNjQgPSBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpO1xuXHR2YXIgZGF0YSA9ICdzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwnICsgYmFzZTY0O1xuXG5cdHJldHVybiAnLyojICcgKyBkYXRhICsgJyAqLyc7XG59XG5cblxuLyoqKi8gfSksXG4vKiAyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbi8qXG5cdE1JVCBMaWNlbnNlIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG5cdEF1dGhvciBUb2JpYXMgS29wcGVycyBAc29rcmFcbiovXG5cbnZhciBzdHlsZXNJbkRvbSA9IHt9O1xuXG52YXJcdG1lbW9pemUgPSBmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW87XG5cblx0cmV0dXJuIGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodHlwZW9mIG1lbW8gPT09IFwidW5kZWZpbmVkXCIpIG1lbW8gPSBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHRcdHJldHVybiBtZW1vO1xuXHR9O1xufTtcblxudmFyIGlzT2xkSUUgPSBtZW1vaXplKGZ1bmN0aW9uICgpIHtcblx0Ly8gVGVzdCBmb3IgSUUgPD0gOSBhcyBwcm9wb3NlZCBieSBCcm93c2VyaGFja3Ncblx0Ly8gQHNlZSBodHRwOi8vYnJvd3NlcmhhY2tzLmNvbS8jaGFjay1lNzFkODY5MmY2NTMzNDE3M2ZlZTcxNWMyMjJjYjgwNVxuXHQvLyBUZXN0cyBmb3IgZXhpc3RlbmNlIG9mIHN0YW5kYXJkIGdsb2JhbHMgaXMgdG8gYWxsb3cgc3R5bGUtbG9hZGVyXG5cdC8vIHRvIG9wZXJhdGUgY29ycmVjdGx5IGludG8gbm9uLXN0YW5kYXJkIGVudmlyb25tZW50c1xuXHQvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJwYWNrLWNvbnRyaWIvc3R5bGUtbG9hZGVyL2lzc3Vlcy8xNzdcblx0cmV0dXJuIHdpbmRvdyAmJiBkb2N1bWVudCAmJiBkb2N1bWVudC5hbGwgJiYgIXdpbmRvdy5hdG9iO1xufSk7XG5cbnZhciBnZXRUYXJnZXQgPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG59O1xuXG52YXIgZ2V0RWxlbWVudCA9IChmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW8gPSB7fTtcblxuXHRyZXR1cm4gZnVuY3Rpb24odGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgcGFzc2luZyBmdW5jdGlvbiBpbiBvcHRpb25zLCB0aGVuIHVzZSBpdCBmb3IgcmVzb2x2ZSBcImhlYWRcIiBlbGVtZW50LlxuICAgICAgICAgICAgICAgIC8vIFVzZWZ1bCBmb3IgU2hhZG93IFJvb3Qgc3R5bGUgaS5lXG4gICAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAgIC8vICAgaW5zZXJ0SW50bzogZnVuY3Rpb24gKCkgeyByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNmb29cIikuc2hhZG93Um9vdCB9XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGFyZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbWVtb1t0YXJnZXRdID09PSBcInVuZGVmaW5lZFwiKSB7XG5cdFx0XHR2YXIgc3R5bGVUYXJnZXQgPSBnZXRUYXJnZXQuY2FsbCh0aGlzLCB0YXJnZXQpO1xuXHRcdFx0Ly8gU3BlY2lhbCBjYXNlIHRvIHJldHVybiBoZWFkIG9mIGlmcmFtZSBpbnN0ZWFkIG9mIGlmcmFtZSBpdHNlbGZcblx0XHRcdGlmICh3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQgJiYgc3R5bGVUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpIHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGFjY2VzcyB0byBpZnJhbWUgaXMgYmxvY2tlZFxuXHRcdFx0XHRcdC8vIGR1ZSB0byBjcm9zcy1vcmlnaW4gcmVzdHJpY3Rpb25zXG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBzdHlsZVRhcmdldC5jb250ZW50RG9jdW1lbnQuaGVhZDtcblx0XHRcdFx0fSBjYXRjaChlKSB7XG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBudWxsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRtZW1vW3RhcmdldF0gPSBzdHlsZVRhcmdldDtcblx0XHR9XG5cdFx0cmV0dXJuIG1lbW9bdGFyZ2V0XVxuXHR9O1xufSkoKTtcblxudmFyIHNpbmdsZXRvbiA9IG51bGw7XG52YXJcdHNpbmdsZXRvbkNvdW50ZXIgPSAwO1xudmFyXHRzdHlsZXNJbnNlcnRlZEF0VG9wID0gW107XG5cbnZhclx0Zml4VXJscyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24obGlzdCwgb3B0aW9ucykge1xuXHRpZiAodHlwZW9mIERFQlVHICE9PSBcInVuZGVmaW5lZFwiICYmIERFQlVHKSB7XG5cdFx0aWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJvYmplY3RcIikgdGhyb3cgbmV3IEVycm9yKFwiVGhlIHN0eWxlLWxvYWRlciBjYW5ub3QgYmUgdXNlZCBpbiBhIG5vbi1icm93c2VyIGVudmlyb25tZW50XCIpO1xuXHR9XG5cblx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cblx0b3B0aW9ucy5hdHRycyA9IHR5cGVvZiBvcHRpb25zLmF0dHJzID09PSBcIm9iamVjdFwiID8gb3B0aW9ucy5hdHRycyA6IHt9O1xuXG5cdC8vIEZvcmNlIHNpbmdsZS10YWcgc29sdXRpb24gb24gSUU2LTksIHdoaWNoIGhhcyBhIGhhcmQgbGltaXQgb24gdGhlICMgb2YgPHN0eWxlPlxuXHQvLyB0YWdzIGl0IHdpbGwgYWxsb3cgb24gYSBwYWdlXG5cdGlmICghb3B0aW9ucy5zaW5nbGV0b24gJiYgdHlwZW9mIG9wdGlvbnMuc2luZ2xldG9uICE9PSBcImJvb2xlYW5cIikgb3B0aW9ucy5zaW5nbGV0b24gPSBpc09sZElFKCk7XG5cblx0Ly8gQnkgZGVmYXVsdCwgYWRkIDxzdHlsZT4gdGFncyB0byB0aGUgPGhlYWQ+IGVsZW1lbnRcbiAgICAgICAgaWYgKCFvcHRpb25zLmluc2VydEludG8pIG9wdGlvbnMuaW5zZXJ0SW50byA9IFwiaGVhZFwiO1xuXG5cdC8vIEJ5IGRlZmF1bHQsIGFkZCA8c3R5bGU+IHRhZ3MgdG8gdGhlIGJvdHRvbSBvZiB0aGUgdGFyZ2V0XG5cdGlmICghb3B0aW9ucy5pbnNlcnRBdCkgb3B0aW9ucy5pbnNlcnRBdCA9IFwiYm90dG9tXCI7XG5cblx0dmFyIHN0eWxlcyA9IGxpc3RUb1N0eWxlcyhsaXN0LCBvcHRpb25zKTtcblxuXHRhZGRTdHlsZXNUb0RvbShzdHlsZXMsIG9wdGlvbnMpO1xuXG5cdHJldHVybiBmdW5jdGlvbiB1cGRhdGUgKG5ld0xpc3QpIHtcblx0XHR2YXIgbWF5UmVtb3ZlID0gW107XG5cblx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGl0ZW0gPSBzdHlsZXNbaV07XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdFx0ZG9tU3R5bGUucmVmcy0tO1xuXHRcdFx0bWF5UmVtb3ZlLnB1c2goZG9tU3R5bGUpO1xuXHRcdH1cblxuXHRcdGlmKG5ld0xpc3QpIHtcblx0XHRcdHZhciBuZXdTdHlsZXMgPSBsaXN0VG9TdHlsZXMobmV3TGlzdCwgb3B0aW9ucyk7XG5cdFx0XHRhZGRTdHlsZXNUb0RvbShuZXdTdHlsZXMsIG9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbWF5UmVtb3ZlLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBtYXlSZW1vdmVbaV07XG5cblx0XHRcdGlmKGRvbVN0eWxlLnJlZnMgPT09IDApIHtcblx0XHRcdFx0Zm9yICh2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykgZG9tU3R5bGUucGFydHNbal0oKTtcblxuXHRcdFx0XHRkZWxldGUgc3R5bGVzSW5Eb21bZG9tU3R5bGUuaWRdO1xuXHRcdFx0fVxuXHRcdH1cblx0fTtcbn07XG5cbmZ1bmN0aW9uIGFkZFN0eWxlc1RvRG9tIChzdHlsZXMsIG9wdGlvbnMpIHtcblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBzdHlsZXMubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IHN0eWxlc1tpXTtcblx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdGlmKGRvbVN0eWxlKSB7XG5cdFx0XHRkb21TdHlsZS5yZWZzKys7XG5cblx0XHRcdGZvcih2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRkb21TdHlsZS5wYXJ0c1tqXShpdGVtLnBhcnRzW2pdKTtcblx0XHRcdH1cblxuXHRcdFx0Zm9yKDsgaiA8IGl0ZW0ucGFydHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0ZG9tU3R5bGUucGFydHMucHVzaChhZGRTdHlsZShpdGVtLnBhcnRzW2pdLCBvcHRpb25zKSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHZhciBwYXJ0cyA9IFtdO1xuXG5cdFx0XHRmb3IodmFyIGogPSAwOyBqIDwgaXRlbS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRwYXJ0cy5wdXNoKGFkZFN0eWxlKGl0ZW0ucGFydHNbal0sIG9wdGlvbnMpKTtcblx0XHRcdH1cblxuXHRcdFx0c3R5bGVzSW5Eb21baXRlbS5pZF0gPSB7aWQ6IGl0ZW0uaWQsIHJlZnM6IDEsIHBhcnRzOiBwYXJ0c307XG5cdFx0fVxuXHR9XG59XG5cbmZ1bmN0aW9uIGxpc3RUb1N0eWxlcyAobGlzdCwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGVzID0gW107XG5cdHZhciBuZXdTdHlsZXMgPSB7fTtcblxuXHRmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IGxpc3RbaV07XG5cdFx0dmFyIGlkID0gb3B0aW9ucy5iYXNlID8gaXRlbVswXSArIG9wdGlvbnMuYmFzZSA6IGl0ZW1bMF07XG5cdFx0dmFyIGNzcyA9IGl0ZW1bMV07XG5cdFx0dmFyIG1lZGlhID0gaXRlbVsyXTtcblx0XHR2YXIgc291cmNlTWFwID0gaXRlbVszXTtcblx0XHR2YXIgcGFydCA9IHtjc3M6IGNzcywgbWVkaWE6IG1lZGlhLCBzb3VyY2VNYXA6IHNvdXJjZU1hcH07XG5cblx0XHRpZighbmV3U3R5bGVzW2lkXSkgc3R5bGVzLnB1c2gobmV3U3R5bGVzW2lkXSA9IHtpZDogaWQsIHBhcnRzOiBbcGFydF19KTtcblx0XHRlbHNlIG5ld1N0eWxlc1tpZF0ucGFydHMucHVzaChwYXJ0KTtcblx0fVxuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbmZ1bmN0aW9uIGluc2VydFN0eWxlRWxlbWVudCAob3B0aW9ucywgc3R5bGUpIHtcblx0dmFyIHRhcmdldCA9IGdldEVsZW1lbnQob3B0aW9ucy5pbnNlcnRJbnRvKVxuXG5cdGlmICghdGFyZ2V0KSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQ291bGRuJ3QgZmluZCBhIHN0eWxlIHRhcmdldC4gVGhpcyBwcm9iYWJseSBtZWFucyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlICdpbnNlcnRJbnRvJyBwYXJhbWV0ZXIgaXMgaW52YWxpZC5cIik7XG5cdH1cblxuXHR2YXIgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AgPSBzdHlsZXNJbnNlcnRlZEF0VG9wW3N0eWxlc0luc2VydGVkQXRUb3AubGVuZ3RoIC0gMV07XG5cblx0aWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwidG9wXCIpIHtcblx0XHRpZiAoIWxhc3RTdHlsZUVsZW1lbnRJbnNlcnRlZEF0VG9wKSB7XG5cdFx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCB0YXJnZXQuZmlyc3RDaGlsZCk7XG5cdFx0fSBlbHNlIGlmIChsYXN0U3R5bGVFbGVtZW50SW5zZXJ0ZWRBdFRvcC5uZXh0U2libGluZykge1xuXHRcdFx0dGFyZ2V0Lmluc2VydEJlZm9yZShzdHlsZSwgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AubmV4dFNpYmxpbmcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHRcdH1cblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnB1c2goc3R5bGUpO1xuXHR9IGVsc2UgaWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwiYm90dG9tXCIpIHtcblx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBvcHRpb25zLmluc2VydEF0ID09PSBcIm9iamVjdFwiICYmIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKSB7XG5cdFx0dmFyIG5leHRTaWJsaW5nID0gZ2V0RWxlbWVudChvcHRpb25zLmluc2VydEludG8gKyBcIiBcIiArIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKTtcblx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCBuZXh0U2libGluZyk7XG5cdH0gZWxzZSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiW1N0eWxlIExvYWRlcl1cXG5cXG4gSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICdpbnNlcnRBdCcgKCdvcHRpb25zLmluc2VydEF0JykgZm91bmQuXFxuIE11c3QgYmUgJ3RvcCcsICdib3R0b20nLCBvciBPYmplY3QuXFxuIChodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3N0eWxlLWxvYWRlciNpbnNlcnRhdClcXG5cIik7XG5cdH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlU3R5bGVFbGVtZW50IChzdHlsZSkge1xuXHRpZiAoc3R5bGUucGFyZW50Tm9kZSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuXHRzdHlsZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHN0eWxlKTtcblxuXHR2YXIgaWR4ID0gc3R5bGVzSW5zZXJ0ZWRBdFRvcC5pbmRleE9mKHN0eWxlKTtcblx0aWYoaWR4ID49IDApIHtcblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnNwbGljZShpZHgsIDEpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVN0eWxlRWxlbWVudCAob3B0aW9ucykge1xuXHR2YXIgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3R5bGVcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXG5cdGFkZEF0dHJzKHN0eWxlLCBvcHRpb25zLmF0dHJzKTtcblx0aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMsIHN0eWxlKTtcblxuXHRyZXR1cm4gc3R5bGU7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpbmtFbGVtZW50IChvcHRpb25zKSB7XG5cdHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImxpbmtcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXHRvcHRpb25zLmF0dHJzLnJlbCA9IFwic3R5bGVzaGVldFwiO1xuXG5cdGFkZEF0dHJzKGxpbmssIG9wdGlvbnMuYXR0cnMpO1xuXHRpbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucywgbGluayk7XG5cblx0cmV0dXJuIGxpbms7XG59XG5cbmZ1bmN0aW9uIGFkZEF0dHJzIChlbCwgYXR0cnMpIHtcblx0T2JqZWN0LmtleXMoYXR0cnMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuXHRcdGVsLnNldEF0dHJpYnV0ZShrZXksIGF0dHJzW2tleV0pO1xuXHR9KTtcbn1cblxuZnVuY3Rpb24gYWRkU3R5bGUgKG9iaiwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGUsIHVwZGF0ZSwgcmVtb3ZlLCByZXN1bHQ7XG5cblx0Ly8gSWYgYSB0cmFuc2Zvcm0gZnVuY3Rpb24gd2FzIGRlZmluZWQsIHJ1biBpdCBvbiB0aGUgY3NzXG5cdGlmIChvcHRpb25zLnRyYW5zZm9ybSAmJiBvYmouY3NzKSB7XG5cdCAgICByZXN1bHQgPSBvcHRpb25zLnRyYW5zZm9ybShvYmouY3NzKTtcblxuXHQgICAgaWYgKHJlc3VsdCkge1xuXHQgICAgXHQvLyBJZiB0cmFuc2Zvcm0gcmV0dXJucyBhIHZhbHVlLCB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIHJ1bm5pbmcgcnVudGltZSB0cmFuc2Zvcm1hdGlvbnMgb24gdGhlIGNzcy5cblx0ICAgIFx0b2JqLmNzcyA9IHJlc3VsdDtcblx0ICAgIH0gZWxzZSB7XG5cdCAgICBcdC8vIElmIHRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gcmV0dXJucyBhIGZhbHN5IHZhbHVlLCBkb24ndCBhZGQgdGhpcyBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIGNvbmRpdGlvbmFsIGxvYWRpbmcgb2YgY3NzXG5cdCAgICBcdHJldHVybiBmdW5jdGlvbigpIHtcblx0ICAgIFx0XHQvLyBub29wXG5cdCAgICBcdH07XG5cdCAgICB9XG5cdH1cblxuXHRpZiAob3B0aW9ucy5zaW5nbGV0b24pIHtcblx0XHR2YXIgc3R5bGVJbmRleCA9IHNpbmdsZXRvbkNvdW50ZXIrKztcblxuXHRcdHN0eWxlID0gc2luZ2xldG9uIHx8IChzaW5nbGV0b24gPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucykpO1xuXG5cdFx0dXBkYXRlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCBmYWxzZSk7XG5cdFx0cmVtb3ZlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCB0cnVlKTtcblxuXHR9IGVsc2UgaWYgKFxuXHRcdG9iai5zb3VyY2VNYXAgJiZcblx0XHR0eXBlb2YgVVJMID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgVVJMLmNyZWF0ZU9iamVjdFVSTCA9PT0gXCJmdW5jdGlvblwiICYmXG5cdFx0dHlwZW9mIFVSTC5yZXZva2VPYmplY3RVUkwgPT09IFwiZnVuY3Rpb25cIiAmJlxuXHRcdHR5cGVvZiBCbG9iID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgYnRvYSA9PT0gXCJmdW5jdGlvblwiXG5cdCkge1xuXHRcdHN0eWxlID0gY3JlYXRlTGlua0VsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gdXBkYXRlTGluay5iaW5kKG51bGwsIHN0eWxlLCBvcHRpb25zKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXG5cdFx0XHRpZihzdHlsZS5ocmVmKSBVUkwucmV2b2tlT2JqZWN0VVJMKHN0eWxlLmhyZWYpO1xuXHRcdH07XG5cdH0gZWxzZSB7XG5cdFx0c3R5bGUgPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gYXBwbHlUb1RhZy5iaW5kKG51bGwsIHN0eWxlKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXHRcdH07XG5cdH1cblxuXHR1cGRhdGUob2JqKTtcblxuXHRyZXR1cm4gZnVuY3Rpb24gdXBkYXRlU3R5bGUgKG5ld09iaikge1xuXHRcdGlmIChuZXdPYmopIHtcblx0XHRcdGlmIChcblx0XHRcdFx0bmV3T2JqLmNzcyA9PT0gb2JqLmNzcyAmJlxuXHRcdFx0XHRuZXdPYmoubWVkaWEgPT09IG9iai5tZWRpYSAmJlxuXHRcdFx0XHRuZXdPYmouc291cmNlTWFwID09PSBvYmouc291cmNlTWFwXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHR1cGRhdGUob2JqID0gbmV3T2JqKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVtb3ZlKCk7XG5cdFx0fVxuXHR9O1xufVxuXG52YXIgcmVwbGFjZVRleHQgPSAoZnVuY3Rpb24gKCkge1xuXHR2YXIgdGV4dFN0b3JlID0gW107XG5cblx0cmV0dXJuIGZ1bmN0aW9uIChpbmRleCwgcmVwbGFjZW1lbnQpIHtcblx0XHR0ZXh0U3RvcmVbaW5kZXhdID0gcmVwbGFjZW1lbnQ7XG5cblx0XHRyZXR1cm4gdGV4dFN0b3JlLmZpbHRlcihCb29sZWFuKS5qb2luKCdcXG4nKTtcblx0fTtcbn0pKCk7XG5cbmZ1bmN0aW9uIGFwcGx5VG9TaW5nbGV0b25UYWcgKHN0eWxlLCBpbmRleCwgcmVtb3ZlLCBvYmopIHtcblx0dmFyIGNzcyA9IHJlbW92ZSA/IFwiXCIgOiBvYmouY3NzO1xuXG5cdGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gcmVwbGFjZVRleHQoaW5kZXgsIGNzcyk7XG5cdH0gZWxzZSB7XG5cdFx0dmFyIGNzc05vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpO1xuXHRcdHZhciBjaGlsZE5vZGVzID0gc3R5bGUuY2hpbGROb2RlcztcblxuXHRcdGlmIChjaGlsZE5vZGVzW2luZGV4XSkgc3R5bGUucmVtb3ZlQ2hpbGQoY2hpbGROb2Rlc1tpbmRleF0pO1xuXG5cdFx0aWYgKGNoaWxkTm9kZXMubGVuZ3RoKSB7XG5cdFx0XHRzdHlsZS5pbnNlcnRCZWZvcmUoY3NzTm9kZSwgY2hpbGROb2Rlc1tpbmRleF0pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzdHlsZS5hcHBlbmRDaGlsZChjc3NOb2RlKTtcblx0XHR9XG5cdH1cbn1cblxuZnVuY3Rpb24gYXBwbHlUb1RhZyAoc3R5bGUsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIG1lZGlhID0gb2JqLm1lZGlhO1xuXG5cdGlmKG1lZGlhKSB7XG5cdFx0c3R5bGUuc2V0QXR0cmlidXRlKFwibWVkaWFcIiwgbWVkaWEpXG5cdH1cblxuXHRpZihzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xuXHR9IGVsc2Uge1xuXHRcdHdoaWxlKHN0eWxlLmZpcnN0Q2hpbGQpIHtcblx0XHRcdHN0eWxlLnJlbW92ZUNoaWxkKHN0eWxlLmZpcnN0Q2hpbGQpO1xuXHRcdH1cblxuXHRcdHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUxpbmsgKGxpbmssIG9wdGlvbnMsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIHNvdXJjZU1hcCA9IG9iai5zb3VyY2VNYXA7XG5cblx0Lypcblx0XHRJZiBjb252ZXJ0VG9BYnNvbHV0ZVVybHMgaXNuJ3QgZGVmaW5lZCwgYnV0IHNvdXJjZW1hcHMgYXJlIGVuYWJsZWRcblx0XHRhbmQgdGhlcmUgaXMgbm8gcHVibGljUGF0aCBkZWZpbmVkIHRoZW4gbGV0cyB0dXJuIGNvbnZlcnRUb0Fic29sdXRlVXJsc1xuXHRcdG9uIGJ5IGRlZmF1bHQuICBPdGhlcndpc2UgZGVmYXVsdCB0byB0aGUgY29udmVydFRvQWJzb2x1dGVVcmxzIG9wdGlvblxuXHRcdGRpcmVjdGx5XG5cdCovXG5cdHZhciBhdXRvRml4VXJscyA9IG9wdGlvbnMuY29udmVydFRvQWJzb2x1dGVVcmxzID09PSB1bmRlZmluZWQgJiYgc291cmNlTWFwO1xuXG5cdGlmIChvcHRpb25zLmNvbnZlcnRUb0Fic29sdXRlVXJscyB8fCBhdXRvRml4VXJscykge1xuXHRcdGNzcyA9IGZpeFVybHMoY3NzKTtcblx0fVxuXG5cdGlmIChzb3VyY2VNYXApIHtcblx0XHQvLyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yNjYwMzg3NVxuXHRcdGNzcyArPSBcIlxcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsXCIgKyBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpICsgXCIgKi9cIjtcblx0fVxuXG5cdHZhciBibG9iID0gbmV3IEJsb2IoW2Nzc10sIHsgdHlwZTogXCJ0ZXh0L2Nzc1wiIH0pO1xuXG5cdHZhciBvbGRTcmMgPSBsaW5rLmhyZWY7XG5cblx0bGluay5ocmVmID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcblxuXHRpZihvbGRTcmMpIFVSTC5yZXZva2VPYmplY3RVUkwob2xkU3JjKTtcbn1cblxuXG4vKioqLyB9KSxcbi8qIDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIEJvb2xlYW5Td2l0Y2g7IH0pO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIEJvb2xlYW4gUmVuZGVyZXJcbipcbiogU2ltcGxlIHRvZ2dsZSBzd2l0Y2ggdG8gaGFuZGxlIGJvb2xlYW4gdmFsdWVzXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xudmFyIEJvb2xlYW5Td2l0Y2ggPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICAvKipcbiAgICogQ29uc3RydWN0IHRoZSBCb29sZWFuU3dpdGNoIENvbXBvbmVudFxuICAgKlxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IGNoZWNrZWQgY2hlY2tlZCBkZWZhdWx0IHZhbHVlICwgdHJ1ZSB0byBjaGVjayAsIGZhbHNlIHRvIHVuY2hlY2tcbiAgICogQHBhcmFtIHtPYmplY3R9IGRvYyBkb2N1bWVudCBpbnN0YW5jZVxuICAgKi9cbiAgZnVuY3Rpb24gQm9vbGVhblN3aXRjaCgpIHtcbiAgICB2YXIgY2hlY2tlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogZmFsc2U7XG4gICAgdmFyIGRvYyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZG9jdW1lbnQ7XG4gICAgdmFyIGxpc3RlbmVyID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiBudWxsO1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEJvb2xlYW5Td2l0Y2gpO1xuXG4gICAgdGhpcy5fYnVpbGQobGlzdGVuZXIsIGNoZWNrZWQsIGRvYyk7XG4gIH1cbiAgLyoqXG4gICAqIEdldCB0aGUgY29tcG9uZW50IHZhbHVlXG4gICAqXG4gICAqIEByZXR1cm4ge0Jvb2xlYW59XG4gICAqL1xuXG5cbiAgX2NyZWF0ZUNsYXNzKEJvb2xlYW5Td2l0Y2gsIFt7XG4gICAga2V5OiBcImdldFZhbHVlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQuY2hlY2tlZDtcbiAgICB9XG4gICAgLyoqIEZvY3VzIG9uIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImZvY3VzXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGZvY3VzKCkge1xuICAgICAgdGhpcy5jb21wb25lbnQuZm9jdXMoKTtcbiAgICB9XG4gICAgLyoqIFRvZ2dsZSB0aGUgY29tcG9uZW50IHN0YXRlICovXG5cbiAgfSwge1xuICAgIGtleTogXCJ0b2dnbGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gIXRoaXMuaW5wdXQuY2hlY2tlZDtcbiAgICB9XG4gICAgLyoqIFNldCB0aGUgY29tcG9uZW50IHN0YXRlIHRvIGNoZWNrZWQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImNoZWNrXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGNoZWNrKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gICAgLyoqIFNldCB0aGUgY29tcG9uZW50IHN0YXRlIHRvIHVuY2hlY2tlZCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwidW5jaGVja1wiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiB1bmNoZWNrKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gZmFsc2U7XG4gICAgfVxuICAgIC8qKiBFbmFibGUgdGhlIGNvbXBvbmVudCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZW5hYmxlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGVuYWJsZSgpIHtcbiAgICAgIHRoaXMuaW5wdXQuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLyoqIERpc2FibGUgdGhlIGNvbXBvbmVudCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGlzYWJsZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkaXNhYmxlKCkge1xuICAgICAgdGhpcy5pbnB1dC5kaXNhYmxlZCA9IHRydWU7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImRlc3Ryb3lcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGVzdHJveSgpIHtcbiAgICAgIGlmICh0aGlzLl9vbkNsaWNrQmluZCkgdGhpcy5jb21wb25lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9vbkNsaWNrQmluZCk7XG4gICAgICBpZiAodGhpcy5fb25DaGFuZ2VCaW5kKSB0aGlzLmNvbXBvbmVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25DaGFuZ2VCaW5kKTtcbiAgICAgIHRoaXMuZGlzYWJsZSgpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkKGxpc3RlbmVyKSB7XG4gICAgICB2YXIgY2hlY2tlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZmFsc2U7XG4gICAgICB2YXIgZG9jID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiBkb2N1bWVudDtcbiAgICAgIC8vIGxhYmVsIGFzIGNvbXBvbmVudFxuICAgICAgdGhpcy5jb21wb25lbnQgPSBkb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICB0aGlzLmNvbXBvbmVudC5jbGFzc05hbWUgPSAnQm9vbGVhblN3aXRjaCc7XG4gICAgICB0aGlzLmNvbXBvbmVudC50YWJJbmRleCA9IFwiLTFcIjsgLy8gc3BhbiBhcyBzbGlkZXJcblxuICAgICAgdGhpcy5zbGlkZXIgPSBkb2MuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgdGhpcy5zbGlkZXIuY2xhc3NOYW1lID0gJ3NsaWRlciByb3VuZCc7IC8vIGlucHV0XG5cbiAgICAgIHRoaXMuaW5wdXQgPSBkb2MuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgIHRoaXMuaW5wdXQudHlwZSA9ICdjaGVja2JveCc7XG4gICAgICB0aGlzLmlucHV0LmNoZWNrZWQgPSBjaGVja2VkO1xuICAgICAgdGhpcy5pbnB1dC50YWJJbmRleCA9IFwiMFwiOyAvLyBhdHRhY2hlIGlucHV0IGFuZCBzbGlkZXIgdG8gY29tcG9uZW50XG5cbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdGhpcy5jb21wb25lbnQuYXBwZW5kQ2hpbGQodGhpcy5zbGlkZXIpO1xuICAgICAgdGhpcy5fb25DbGlja0JpbmQgPSB0aGlzLl9vbkNsaWNrLmJpbmQodGhpcywgbGlzdGVuZXIpO1xuICAgICAgdGhpcy5fb25DaGFuZ2VCaW5kID0gdGhpcy5fb25DaGFuZ2UuYmluZCh0aGlzLCBsaXN0ZW5lcik7XG4gICAgICB0aGlzLmNvbXBvbmVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX29uQ2xpY2tCaW5kKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLl9vbkNoYW5nZUJpbmQpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfb25DbGlja1wiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25DbGljayhsaXN0ZW5lciwgZSkge1xuICAgICAgaWYgKHRoaXMuaW5wdXQuZGlzYWJsZWQpIHJldHVybiBmYWxzZTtcbiAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICBpZiAobGlzdGVuZXIpIGxpc3RlbmVyKHRoaXMpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfb25DaGFuZ2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uQ2hhbmdlKGxpc3RlbmVyLCBlKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dC5kaXNhYmxlZCkgcmV0dXJuIGZhbHNlO1xuICAgICAgdmFyIGtleSA9IGUud2hpY2ggfHwgZS5rZXlDb2RlO1xuXG4gICAgICBpZiAoa2V5ID09IDMyKSB7XG4gICAgICAgIC8vIHNwYWNlXG4gICAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICAgIGlmIChsaXN0ZW5lcikgbGlzdGVuZXIodGhpcyk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9IGVsc2UgaWYgKGtleSA9PSAzOSkge1xuICAgICAgICAvLyByaWdodFxuICAgICAgICB0aGlzLmNoZWNrKCk7XG4gICAgICAgIGlmIChsaXN0ZW5lcikgbGlzdGVuZXIodGhpcyk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9IGVsc2UgaWYgKGtleSA9PSAzNykge1xuICAgICAgICAvLyBsZWZ0XG4gICAgICAgIHRoaXMudW5jaGVjaygpO1xuICAgICAgICBpZiAobGlzdGVuZXIpIGxpc3RlbmVyKHRoaXMpO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBCb29sZWFuU3dpdGNoO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiA0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlVGltZXNEaWFsb2c7IH0pO1xuZnVuY3Rpb24gX29iamVjdFNwcmVhZCh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXSAhPSBudWxsID8gYXJndW1lbnRzW2ldIDoge307IHZhciBvd25LZXlzID0gT2JqZWN0LmtleXMoc291cmNlKTsgaWYgKHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSAnZnVuY3Rpb24nKSB7IG93bktleXMgPSBvd25LZXlzLmNvbmNhdChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHNvdXJjZSkuZmlsdGVyKGZ1bmN0aW9uIChzeW0pIHsgcmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioc291cmNlLCBzeW0pLmVudW1lcmFibGU7IH0pKTsgfSBvd25LZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkgeyBfZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHNvdXJjZVtrZXldKTsgfSk7IH0gcmV0dXJuIHRhcmdldDsgfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKipcbiogRGF0ZVRpbWVzRGlhbG9nXG4qXG4qIEEgd3JhcCBhcm91bmQgZmxhdHBpY2tyIEFQSVxuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBEYXRlVGltZXNEaWFsb2cgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICAvKipcbiAgICogQ29uc3RydWN0IHRoZSBEYXRlVGltZXNEaWFsb2cgQ29tcG9uZW50XG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBkb2MgZG9jdW1lbnQgaW5zdGFuY2VcbiAgICogXG4gICAqIHtAbGluayBodHRwczovL2ZsYXRwaWNrci5qcy5vcmcvb3B0aW9ucy99XG4gICAqL1xuICBmdW5jdGlvbiBEYXRlVGltZXNEaWFsb2coKSB7XG4gICAgdmFyIG9wdGlvbnMgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuICAgIHZhciBkb2MgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IGRvY3VtZW50O1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIERhdGVUaW1lc0RpYWxvZyk7XG5cbiAgICB0aGlzLmRvYyA9IGRvYztcbiAgICB0aGlzLm9wdGlvbnMgPSBfb2JqZWN0U3ByZWFkKHt9LCB7XG4gICAgICBkYXRlRm9ybWF0OiBvcHRpb25zLm1hc2ssXG4gICAgICBmb3JtYXREYXRlOiB0aGlzLmZvcm1hdERhdGUuYmluZCh0aGlzKSxcbiAgICAgIHBhcnNlRGF0ZTogdGhpcy5wYXJzZURhdGUuYmluZCh0aGlzKSxcbiAgICAgIG9uUmVhZHk6IHRoaXMuX29uUmVhZHkuYmluZCh0aGlzKVxuICAgIH0sIG9wdGlvbnMpO1xuXG4gICAgdGhpcy5fYnVpbGQodGhpcy5vcHRpb25zLCB0aGlzLmRvYyk7XG4gIH1cbiAgLyoqXG4gICAqIEZvcm1hdCB0aGUgZGF0ZSB1c2luZyBgQkJqLk1hc2tzLlR5cGVzLmRhdGVgXG4gICAqIFxuICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAqIEBwYXJhbSB7U3RyaW5nfSBmb3JtYXQgQkJqIGRhdGUgZm9ybWF0XG4gICAqL1xuXG5cbiAgX2NyZWF0ZUNsYXNzKERhdGVUaW1lc0RpYWxvZywgW3tcbiAgICBrZXk6IFwiZm9ybWF0RGF0ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb3JtYXREYXRlKGRhdGUsIGZvcm1hdCkge1xuICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCclJykgPCAwKSByZXR1cm47XG4gICAgICByZXR1cm4gQkJqLk1hc2tzLlR5cGVzLmRhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IGRhdGUgb2JqZWN0IGZyb20gYSBkYXRlIHN0cmluZyBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZVN0cmluZyBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJwYXJzZURhdGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gcGFyc2VEYXRlKGRhdGVTdHJpbmcpIHtcbiAgICAgIHZhciBkYXRlT2JqZWN0ID0gRGF0ZS5wYXJzZShkYXRlU3RyaW5nKTtcbiAgICAgIGlmICghKGRhdGVPYmplY3QgaW5zdGFuY2VvZiBEYXRlKSkgZGF0ZU9iamVjdCA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpO1xuICAgICAgcmV0dXJuIGRhdGVPYmplY3Q7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBjYWxhbmRlciBkYXRlXG4gICAgICogXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGRhdGUgXG4gICAgICogQHBhcmFtIHtCb29sZWFufSB0cmlnZ2VyQ2hhbmdlIFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwic2V0RGF0ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBzZXREYXRlKGRhdGUpIHtcbiAgICAgIHZhciB0cmlnZ2VyQ2hhbmdlID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiBmYWxzZTtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLnNldERhdGUoZGF0ZSB8fCAnJywgdHJpZ2dlckNoYW5nZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBjYWxhbmRlciBvcHRpb25cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gb3B0aW9uIFxuICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJzZXRPcHRpb25cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gc2V0T3B0aW9uKG9wdGlvbiwgdmFsdWUpIHtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLnNldChvcHRpb24sIHZhbHVlKTtcbiAgICB9XG4gICAgLyoqIE9wZW4gY2FsYW5kZXIgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIm9wZW5cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gb3BlbigpIHtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLm9wZW4oKTtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LmZvY3VzKCk7XG4gICAgfVxuICAgIC8qKiBDbG9zZSBDYWxhbmRlciAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiY2xvc2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gY2xvc2UoKSB7XG4gICAgICB0aGlzLmZsYXRwaWNrci5jbG9zZSgpO1xuICAgIH1cbiAgICAvKiogRW5hYmxlIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImVuYWJsZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBlbmFibGUoKSB7XG4gICAgICB0aGlzLmlucHV0LmRpc2FibGVkID0gZmFsc2U7XG4gICAgfVxuICAgIC8qKiBEaXNhYmxlIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImRpc2FibGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGlzYWJsZSgpIHtcbiAgICAgIHRoaXMuaW5wdXQuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cbiAgICAvKiogRGVzdHJveSBUaGUgY29tcG9uZW50IGFuZCByZW1vdmUgZXZlbnQgbGlzdGVuZXJzICovXG5cbiAgfSwge1xuICAgIGtleTogXCJkZXN0cm95XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICB0aGlzLmZsYXRwaWNrci5kZXN0cm95KCk7XG4gICAgICBpZiAodGhpcy5fb25DbGVhckJ1dHRvbkNsaWNrQmluZCkgdGhpcy5jbGVhckJ1dHRvbi5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX29uQ2xlYXJCdXR0b25DbGlja0JpbmQpO1xuICAgICAgaWYgKHRoaXMuX29uS2V5RG93bkJpbmQpIHRoaXMuY29tcG9uZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLl9vbktleURvd25CaW5kKTtcbiAgICB9XG4gICAgLyoqIEJ1aWxkIHRoZSBjb21wb25lbnQgc3RydWN0dXJlICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkKCkge1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuICAgICAgdmFyIGRvYyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZG9jdW1lbnQ7XG4gICAgICB0aGlzLmNvbXBvbmVudCA9IGRvYy5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmNsYXNzTmFtZSA9ICdEYXRlVGltZXNEaWFsb2cnO1xuICAgICAgdGhpcy5jb21wb25lbnQudGFiSW5kZXggPSBcIjBcIjtcbiAgICAgIHRoaXMuaW5wdXQgPSBkb2MuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdGhpcy5mbGF0cGlja3IgPSBmbGF0cGlja3IodGhpcy5pbnB1dCwgb3B0aW9ucyk7XG4gICAgICB0aGlzLl9vbktleURvd25CaW5kID0gdGhpcy5fb25LZXlEb3duLmJpbmQodGhpcyk7XG4gICAgICB0aGlzLmNvbXBvbmVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duQmluZCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEFsbG93IGFycm93IGtleXMgaW5zaWRlIHRoZSBpbnB1dFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGUgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25LZXlEb3duXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9vbktleURvd24oZSkge1xuICAgICAgdmFyIGtleSA9IGUud2hpY2ggfHwgZS5rZXlDb2RlO1xuXG4gICAgICBpZiAoWzM3LCAzOV0uaW5kZXhPZihrZXkpID4gLTEpIHtcbiAgICAgICAgLy8gbGVmdCB8fCByaWdodFxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmICgzOCA9PT0ga2V5KSB7XG4gICAgICAgIC8vIHVwIFxuICAgICAgICB2YXIgY3VycmVudERhdGUgPSB0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZTtcblxuICAgICAgICB2YXIgX25leHQgPSBEYXRlLnBhcnNlKGN1cnJlbnREYXRlKTtcblxuICAgICAgICBpZiAoIShfbmV4dCBpbnN0YW5jZW9mIERhdGUpKSBfbmV4dCA9IG5ldyBEYXRlKGN1cnJlbnREYXRlKTtcblxuICAgICAgICBfbmV4dC5zZXREYXRlKF9uZXh0LmdldERhdGUoKSArIDEpO1xuXG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLnNldERhdGUoX25leHQsIGZhbHNlLCB0aGlzLm9wdGlvbnMubWFzayk7XG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LnZhbHVlID0gQkJqLk1hc2tzLlR5cGVzLmRhdGUoX25leHQsIHRoaXMub3B0aW9ucy5tYXNrKTtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH0gZWxzZSBpZiAoNDAgPT09IGtleSkge1xuICAgICAgICAvLyBkb3duXG4gICAgICAgIHZhciBfY3VycmVudERhdGUgPSB0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZTtcbiAgICAgICAgdmFyIHByZXYgPSBEYXRlLnBhcnNlKF9jdXJyZW50RGF0ZSk7XG4gICAgICAgIGlmICghKHByZXYgaW5zdGFuY2VvZiBEYXRlKSkgbmV4dCA9IG5ldyBEYXRlKF9jdXJyZW50RGF0ZSk7XG4gICAgICAgIHByZXYuc2V0RGF0ZShwcmV2LmdldERhdGUoKSAtIDEpO1xuICAgICAgICB0aGlzLmZsYXRwaWNrci5zZXREYXRlKHByZXYsIGZhbHNlLCB0aGlzLm9wdGlvbnMubWFzayk7XG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LnZhbHVlID0gQkJqLk1hc2tzLlR5cGVzLmRhdGUocHJldiwgdGhpcy5vcHRpb25zLm1hc2spO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmICg5ID09PSBrZXkpIHtcbiAgICAgICAgLy8gdGFwXG4gICAgICAgIHRoaXMuc2V0RGF0ZSh0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZSwgdHJ1ZSwgdGhpcy5vcHRpb25zLmRhdGVGb3JtYXQpO1xuICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNsZWFyIGJ1dHRvbiB3aGVuIGZsYXRwaWNrciBpcyByZWFkeSBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge0RhdGV9IGRhdGVPYmogXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGRhdGVTdHIgXG4gICAgICogQHBhcmFtIHtmbGF0cGlja3J9IGluc3RhbmNlIFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX29uUmVhZHlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uUmVhZHkoZGF0ZU9iaiwgZGF0ZVN0ciwgaW5zdGFuY2UpIHtcbiAgICAgIHZhciBjbGVhckJ1dHRvbiA9IGluc3RhbmNlLmNhbGVuZGFyQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5mbGF0cGlja3ItY2xlYXInKTtcblxuICAgICAgaWYgKCFjbGVhckJ1dHRvbikge1xuICAgICAgICB0aGlzLmNsZWFyQnV0dG9uID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uY2xhc3NOYW1lID0gJ2ZsYXRwaWNrci1jbGVhcic7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uaW5uZXJIVE1MID0gJ0NsZWFyJztcbiAgICAgICAgaW5zdGFuY2UuY2FsZW5kYXJDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5jbGVhckJ1dHRvbik7XG4gICAgICAgIHRoaXMuX29uQ2xlYXJCdXR0b25DbGlja0JpbmQgPSB0aGlzLl9vbkNsZWFyQnV0dG9uQ2xpY2suYmluZCh0aGlzLCBpbnN0YW5jZSk7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9vbkNsZWFyQnV0dG9uQ2xpY2tCaW5kKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogTGlzdGVuIHRvIGZsYXRwaWNrciBjbGVhciBidXR0b24gY2xpY2tzIGFuZCBjbGVhciB0aGUgY2FsYW5kZXJcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge2ZsYXRwaWNrcn0gaW5zdGFuY2UgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25DbGVhckJ1dHRvbkNsaWNrXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9vbkNsZWFyQnV0dG9uQ2xpY2soZmxhdHBpY2tySW5zdGFuY2UpIHtcbiAgICAgIGZsYXRwaWNrckluc3RhbmNlLmNsZWFyKCk7XG4gICAgICBmbGF0cGlja3JJbnN0YW5jZS5jbG9zZSgpO1xuICAgICAgaWYgKHRoaXMub3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgnb25DbGVhcicpKSB0aGlzLm9wdGlvbnMub25DbGVhcigpO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBEYXRlVGltZXNEaWFsb2c7XG59KCk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxudmFyIGNvbnRlbnQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuXG5pZiAodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaSwgY29udGVudCwgJyddXTtcbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcbnZhciBvcHRpb25zID0ge1xuICBcImhtclwiOiB0cnVlXG59O1xub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm07XG5cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZDtcbn07XG5cbnZhciB1cGRhdGUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZiAoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmIChmYWxzZSkge1xuICBtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIsIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTEtMSEuL3N0eWxlLmNzc1wiKTtcblxuICAgIGlmICh0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuICAgIHZhciBsb2NhbHMgPSBmdW5jdGlvbiAoYSwgYikge1xuICAgICAgdmFyIGtleSxcbiAgICAgICAgICBpZHggPSAwO1xuXG4gICAgICBmb3IgKGtleSBpbiBhKSB7XG4gICAgICAgIGlmICghYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZHgrKztcbiAgICAgIH1cblxuICAgICAgZm9yIChrZXkgaW4gYikge1xuICAgICAgICBpZHgtLTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGlkeCA9PT0gMDtcbiAgICB9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2Fscyk7XG5cbiAgICBpZiAoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcbiAgICB1cGRhdGUobmV3Q29udGVudCk7XG4gIH0pO1xuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24gKCkge1xuICAgIHVwZGF0ZSgpO1xuICB9KTtcbn1cblxuLyoqKi8gfSksXG4vKiA2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNCb29sZWFuc1JlbmRlcmVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0uQmFzaWNCb29sZWFuc0ZpbHRlciB1bHtkaXNwbGF5OmJsb2NrO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXJ9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGl7cGFkZGluZzoxMHB4Oy13ZWJraXQtdHJhbnNpdGlvbjouNHM7dHJhbnNpdGlvbjouNHM7Ym9yZGVyLWJvdHRvbTp0aGluIHNvbGlkICNjY2N9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGkuc2VsZWN0ZWR7YmFja2dyb3VuZDojNTY5ZmY3O2NvbG9yOiNmZmZ9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGk6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9LkJvb2xlYW5Td2l0Y2h7b3V0bGluZTpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt3aWR0aDo0MHB4O2hlaWdodDoyMHB4fS5Cb29sZWFuU3dpdGNoIGlucHV0e2Rpc3BsYXk6bm9uZX0uQm9vbGVhblN3aXRjaCAuc2xpZGVye2N1cnNvcjpwb2ludGVyO3RvcDoyMCU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjEwJTtiYWNrZ3JvdW5kLWNvbG9yOiNjY2N9LkJvb2xlYW5Td2l0Y2ggLnNsaWRlciwuQm9vbGVhblN3aXRjaCAuc2xpZGVyOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246LjRzO3RyYW5zaXRpb246LjRzfS5Cb29sZWFuU3dpdGNoIC5zbGlkZXI6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXCI7aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtsZWZ0OjFweDt0b3A6MXB4O2JvdHRvbToxcHg7cmlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2ZmZn0uQm9vbGVhblN3aXRjaCBpbnB1dDpjaGVja2VkKy5zbGlkZXJ7YmFja2dyb3VuZC1jb2xvcjojNTY5ZmY3fS5Cb29sZWFuU3dpdGNoIGlucHV0OmZvY3VzKy5zbGlkZXJ7Ym94LXNoYWRvdzowIDAgMXB4ICM1NjlmZjd9LkJvb2xlYW5Td2l0Y2ggaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyOmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KX0uQm9vbGVhblN3aXRjaCAuc2xpZGVyLnJvdW5ke2JvcmRlci1yYWRpdXM6MjhweH0uQm9vbGVhblN3aXRjaCAuc2xpZGVyLnJvdW5kOmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJX1cIiwgXCJcIl0pO1xuXG4vLyBleHBvcnRzXG5cblxuLyoqKi8gfSksXG4vKiA3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cblxuLyoqXG4gKiBXaGVuIHNvdXJjZSBtYXBzIGFyZSBlbmFibGVkLCBgc3R5bGUtbG9hZGVyYCB1c2VzIGEgbGluayBlbGVtZW50IHdpdGggYSBkYXRhLXVyaSB0b1xuICogZW1iZWQgdGhlIGNzcyBvbiB0aGUgcGFnZS4gVGhpcyBicmVha3MgYWxsIHJlbGF0aXZlIHVybHMgYmVjYXVzZSBub3cgdGhleSBhcmUgcmVsYXRpdmUgdG8gYVxuICogYnVuZGxlIGluc3RlYWQgb2YgdGhlIGN1cnJlbnQgcGFnZS5cbiAqXG4gKiBPbmUgc29sdXRpb24gaXMgdG8gb25seSB1c2UgZnVsbCB1cmxzLCBidXQgdGhhdCBtYXkgYmUgaW1wb3NzaWJsZS5cbiAqXG4gKiBJbnN0ZWFkLCB0aGlzIGZ1bmN0aW9uIFwiZml4ZXNcIiB0aGUgcmVsYXRpdmUgdXJscyB0byBiZSBhYnNvbHV0ZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgcGFnZSBsb2NhdGlvbi5cbiAqXG4gKiBBIHJ1ZGltZW50YXJ5IHRlc3Qgc3VpdGUgaXMgbG9jYXRlZCBhdCBgdGVzdC9maXhVcmxzLmpzYCBhbmQgY2FuIGJlIHJ1biB2aWEgdGhlIGBucG0gdGVzdGAgY29tbWFuZC5cbiAqXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoY3NzKSB7XG4gIC8vIGdldCBjdXJyZW50IGxvY2F0aW9uXG4gIHZhciBsb2NhdGlvbiA9IHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIgJiYgd2luZG93LmxvY2F0aW9uO1xuXG4gIGlmICghbG9jYXRpb24pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJmaXhVcmxzIHJlcXVpcmVzIHdpbmRvdy5sb2NhdGlvblwiKTtcbiAgfVxuXG5cdC8vIGJsYW5rIG9yIG51bGw/XG5cdGlmICghY3NzIHx8IHR5cGVvZiBjc3MgIT09IFwic3RyaW5nXCIpIHtcblx0ICByZXR1cm4gY3NzO1xuICB9XG5cbiAgdmFyIGJhc2VVcmwgPSBsb2NhdGlvbi5wcm90b2NvbCArIFwiLy9cIiArIGxvY2F0aW9uLmhvc3Q7XG4gIHZhciBjdXJyZW50RGlyID0gYmFzZVVybCArIGxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoL1xcL1teXFwvXSokLywgXCIvXCIpO1xuXG5cdC8vIGNvbnZlcnQgZWFjaCB1cmwoLi4uKVxuXHQvKlxuXHRUaGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBqdXN0IGEgd2F5IHRvIHJlY3Vyc2l2ZWx5IG1hdGNoIGJyYWNrZXRzIHdpdGhpblxuXHRhIHN0cmluZy5cblxuXHQgL3VybFxccypcXCggID0gTWF0Y2ggb24gdGhlIHdvcmQgXCJ1cmxcIiB3aXRoIGFueSB3aGl0ZXNwYWNlIGFmdGVyIGl0IGFuZCB0aGVuIGEgcGFyZW5zXG5cdCAgICggID0gU3RhcnQgYSBjYXB0dXJpbmcgZ3JvdXBcblx0ICAgICAoPzogID0gU3RhcnQgYSBub24tY2FwdHVyaW5nIGdyb3VwXG5cdCAgICAgICAgIFteKShdICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgIFxcKCAgPSBNYXRjaCBhIHN0YXJ0IHBhcmVudGhlc2VzXG5cdCAgICAgICAgICAgICAoPzogID0gU3RhcnQgYW5vdGhlciBub24tY2FwdHVyaW5nIGdyb3Vwc1xuXHQgICAgICAgICAgICAgICAgIFteKShdKyAgPSBNYXRjaCBhbnl0aGluZyB0aGF0IGlzbid0IGEgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgICAgICAgICAgXFwoICA9IE1hdGNoIGEgc3RhcnQgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICAgICAgW14pKF0qICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgICAgIFxcKSAgPSBNYXRjaCBhIGVuZCBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgKSAgPSBFbmQgR3JvdXBcbiAgICAgICAgICAgICAgKlxcKSA9IE1hdGNoIGFueXRoaW5nIGFuZCB0aGVuIGEgY2xvc2UgcGFyZW5zXG4gICAgICAgICAgKSAgPSBDbG9zZSBub24tY2FwdHVyaW5nIGdyb3VwXG4gICAgICAgICAgKiAgPSBNYXRjaCBhbnl0aGluZ1xuICAgICAgICkgID0gQ2xvc2UgY2FwdHVyaW5nIGdyb3VwXG5cdCBcXCkgID0gTWF0Y2ggYSBjbG9zZSBwYXJlbnNcblxuXHQgL2dpICA9IEdldCBhbGwgbWF0Y2hlcywgbm90IHRoZSBmaXJzdC4gIEJlIGNhc2UgaW5zZW5zaXRpdmUuXG5cdCAqL1xuXHR2YXIgZml4ZWRDc3MgPSBjc3MucmVwbGFjZSgvdXJsXFxzKlxcKCgoPzpbXikoXXxcXCgoPzpbXikoXSt8XFwoW14pKF0qXFwpKSpcXCkpKilcXCkvZ2ksIGZ1bmN0aW9uKGZ1bGxNYXRjaCwgb3JpZ1VybCkge1xuXHRcdC8vIHN0cmlwIHF1b3RlcyAoaWYgdGhleSBleGlzdClcblx0XHR2YXIgdW5xdW90ZWRPcmlnVXJsID0gb3JpZ1VybFxuXHRcdFx0LnRyaW0oKVxuXHRcdFx0LnJlcGxhY2UoL15cIiguKilcIiQvLCBmdW5jdGlvbihvLCAkMSl7IHJldHVybiAkMTsgfSlcblx0XHRcdC5yZXBsYWNlKC9eJyguKiknJC8sIGZ1bmN0aW9uKG8sICQxKXsgcmV0dXJuICQxOyB9KTtcblxuXHRcdC8vIGFscmVhZHkgYSBmdWxsIHVybD8gbm8gY2hhbmdlXG5cdFx0aWYgKC9eKCN8ZGF0YTp8aHR0cDpcXC9cXC98aHR0cHM6XFwvXFwvfGZpbGU6XFwvXFwvXFwvfFxccyokKS9pLnRlc3QodW5xdW90ZWRPcmlnVXJsKSkge1xuXHRcdCAgcmV0dXJuIGZ1bGxNYXRjaDtcblx0XHR9XG5cblx0XHQvLyBjb252ZXJ0IHRoZSB1cmwgdG8gYSBmdWxsIHVybFxuXHRcdHZhciBuZXdVcmw7XG5cblx0XHRpZiAodW5xdW90ZWRPcmlnVXJsLmluZGV4T2YoXCIvL1wiKSA9PT0gMCkge1xuXHRcdCAgXHQvL1RPRE86IHNob3VsZCB3ZSBhZGQgcHJvdG9jb2w/XG5cdFx0XHRuZXdVcmwgPSB1bnF1b3RlZE9yaWdVcmw7XG5cdFx0fSBlbHNlIGlmICh1bnF1b3RlZE9yaWdVcmwuaW5kZXhPZihcIi9cIikgPT09IDApIHtcblx0XHRcdC8vIHBhdGggc2hvdWxkIGJlIHJlbGF0aXZlIHRvIHRoZSBiYXNlIHVybFxuXHRcdFx0bmV3VXJsID0gYmFzZVVybCArIHVucXVvdGVkT3JpZ1VybDsgLy8gYWxyZWFkeSBzdGFydHMgd2l0aCAnLydcblx0XHR9IGVsc2Uge1xuXHRcdFx0Ly8gcGF0aCBzaG91bGQgYmUgcmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3Rvcnlcblx0XHRcdG5ld1VybCA9IGN1cnJlbnREaXIgKyB1bnF1b3RlZE9yaWdVcmwucmVwbGFjZSgvXlxcLlxcLy8sIFwiXCIpOyAvLyBTdHJpcCBsZWFkaW5nICcuLydcblx0XHR9XG5cblx0XHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIHVybCguLi4pXG5cdFx0cmV0dXJuIFwidXJsKFwiICsgSlNPTi5zdHJpbmdpZnkobmV3VXJsKSArIFwiKVwiO1xuXHR9KTtcblxuXHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIGNzc1xuXHRyZXR1cm4gZml4ZWRDc3M7XG59O1xuXG5cbi8qKiovIH0pLFxuLyogOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG52YXIgY29udGVudCA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pLCBcIi5mbGF0cGlja3ItY2FsZW5kYXJ7Zm9udC1zaXplOjEzcHg7Ym9yZGVyLXJhZGl1czo1cHh9LmZsYXRwaWNrci1jYWxlbmRhciAuZmxhdHBpY2tyLWNsZWFye3BhZGRpbmc6N3B4O21hcmdpbjoxMnB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6IzU2OWZmNztjb2xvcjojZmZmO291dGxpbmU6MDtib3JkZXI6MDttaW4td2lkdGg6MTAwcHg7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDAgMnB4IDAgdHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zNnN9LmZsYXRwaWNrci1jYWxlbmRhciAuZmxhdHBpY2tyLWNsZWFyOmZvY3VzLC5mbGF0cGlja3ItY2FsZW5kYXIgLmZsYXRwaWNrci1jbGVhcjpob3Zlcntib3gtc2hhZG93OjAgMCAycHggMCAjOWU5ZTllfS5EYXRlVGltZXNEaWFsb2d7bWF4LXdpZHRoOjMwNy44NzVweDtvdmVyZmxvdzpoaWRkZW59LkRhdGVUaW1lc0RpYWxvZyBpbnB1dHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87cGFkZGluZzozcHg7b3V0bGluZTowO2JvcmRlcjpub25lfVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDEwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbnZhciBjb250ZW50ID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNJbWFnZXNSZW5kZXJlciBpbWd7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbnZhciBjb250ZW50ID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDEzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNOdW1iZXJzRWRpdG9ye2Rpc3BsYXk6YmxvY2t9LkJhc2ljTnVtYmVyc0VkaXRvciBpbnB1dHttaW4td2lkdGg6MTAwJTtvdXRsaW5lOjA7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO2JvcmRlcjpub25lO3BhZGRpbmc6M3B4fVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBSZW5kZXJlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19Cb29sZWFuU3dpdGNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVXRpbGl0aWVzX1BhcmFtc19qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbmZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IGlmICh0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgdHlwZW9mIFN5bWJvbC5pdGVyYXRvciA9PT0gXCJzeW1ib2xcIikgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIHR5cGVvZiBvYmo7IH07IH0gZWxzZSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gb2JqICYmIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvYmogIT09IFN5bWJvbC5wcm90b3R5cGUgPyBcInN5bWJvbFwiIDogdHlwZW9mIG9iajsgfTsgfSByZXR1cm4gX3R5cGVvZihvYmopOyB9XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuZnVuY3Rpb24gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4oc2VsZiwgY2FsbCkgeyBpZiAoY2FsbCAmJiAoX3R5cGVvZihjYWxsKSA9PT0gXCJvYmplY3RcIiB8fCB0eXBlb2YgY2FsbCA9PT0gXCJmdW5jdGlvblwiKSkgeyByZXR1cm4gY2FsbDsgfSByZXR1cm4gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKTsgfVxuXG5mdW5jdGlvbiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpIHsgaWYgKHNlbGYgPT09IHZvaWQgMCkgeyB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoXCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWRcIik7IH0gcmV0dXJuIHNlbGY7IH1cblxuZnVuY3Rpb24gX2dldFByb3RvdHlwZU9mKG8pIHsgX2dldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mID8gT2JqZWN0LmdldFByb3RvdHlwZU9mIDogZnVuY3Rpb24gX2dldFByb3RvdHlwZU9mKG8pIHsgcmV0dXJuIG8uX19wcm90b19fIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZihvKTsgfTsgcmV0dXJuIF9nZXRQcm90b3R5cGVPZihvKTsgfVxuXG5mdW5jdGlvbiBfaW5oZXJpdHMoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIHsgaWYgKHR5cGVvZiBzdXBlckNsYXNzICE9PSBcImZ1bmN0aW9uXCIgJiYgc3VwZXJDbGFzcyAhPT0gbnVsbCkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb25cIik7IH0gc3ViQ2xhc3MucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShzdXBlckNsYXNzICYmIHN1cGVyQ2xhc3MucHJvdG90eXBlLCB7IGNvbnN0cnVjdG9yOiB7IHZhbHVlOiBzdWJDbGFzcywgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9IH0pOyBpZiAoc3VwZXJDbGFzcykgX3NldFByb3RvdHlwZU9mKHN1YkNsYXNzLCBzdXBlckNsYXNzKTsgfVxuXG5mdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBfc2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgby5fX3Byb3RvX18gPSBwOyByZXR1cm4gbzsgfTsgcmV0dXJuIF9zZXRQcm90b3R5cGVPZihvLCBwKTsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuXG4vKipcbiogQm9vbGVhbnMgUmVuZGVyZXJcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIFJlbmRlcmVyaW5nXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xuXG52YXIgUmVuZGVyZXIgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKF9QYXJhbXNNaXhpbnMpIHtcbiAgX2luaGVyaXRzKFJlbmRlcmVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBSZW5kZXJlcigpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgUmVuZGVyZXIpO1xuXG4gICAgcmV0dXJuIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHRoaXMsIF9nZXRQcm90b3R5cGVPZihSZW5kZXJlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoUmVuZGVyZXIsIFt7XG4gICAga2V5OiBcImluaXRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaW5pdChwYXJhbXMpIHtcbiAgICAgIHZhciBkb2MgPSB0aGlzLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIHN3aXRjaGVyID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fQm9vbGVhblN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKG51bGwsIGRvYyk7XG4gICAgICBzd2l0Y2hlci5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmNvbnRhaW5lciA9IGRvYy5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICB0aGlzLmNvbnRhaW5lci5jbGFzc05hbWUgPSBcIkJhc2ljQm9vbGVhbnNSZW5kZXJlclwiO1xuXG4gICAgICBpZiAoIXBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5pbm5lckhUTUwgPSAnJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciB0cnVlVmFsdWUgPSB0aGlzLmdldE9wdGlvbignUkVOREVSRVJfVFJVRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ1RSVUUnLCBwYXJhbXMpO1xuICAgICAgICB2YXIgZmFsc2VWYWx1ZSA9IHRoaXMuZ2V0T3B0aW9uKCdSRU5ERVJFUl9GQUxTRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ0ZBTFNFJywgcGFyYW1zKTtcblxuICAgICAgICBpZiAodHJ1ZSA9PT0gcGFyYW1zLnZhbHVlKSB7XG4gICAgICAgICAgaWYgKCF0cnVlVmFsdWUgfHwgdHJ1ZVZhbHVlID09PSAnc3dpdGNoJykge1xuICAgICAgICAgICAgc3dpdGNoZXIuY2hlY2soKTtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLmFwcGVuZENoaWxkKHN3aXRjaGVyLmNvbXBvbmVudCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLmlubmVySFRNTCA9IHRydWVWYWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKCFmYWxzZVZhbHVlIHx8IGZhbHNlVmFsdWUgPT09ICdzd2l0Y2gnKSB7XG4gICAgICAgICAgICBzd2l0Y2hlci51bmNoZWNrKCk7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lci5hcHBlbmRDaGlsZChzd2l0Y2hlci5jb21wb25lbnQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lci5pbm5lckhUTUwgPSBmYWxzZVZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJnZXRHdWlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0R3VpKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29udGFpbmVyO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBSZW5kZXJlcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0Jvb2xlYW5Td2l0Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiKSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfTsgfSBlbHNlIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9OyB9IHJldHVybiBfdHlwZW9mKG9iaik7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cbi8qKlxuKiBCb29sZWFucyBFZGl0b3JcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIEVkaXRpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBFZGl0b3IgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKF9QYXJhbXNNaXhpbnMpIHtcbiAgX2luaGVyaXRzKEVkaXRvciwgX1BhcmFtc01peGlucyk7XG5cbiAgZnVuY3Rpb24gRWRpdG9yKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBFZGl0b3IpO1xuXG4gICAgcmV0dXJuIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHRoaXMsIF9nZXRQcm90b3R5cGVPZihFZGl0b3IpLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykpO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKEVkaXRvciwgW3tcbiAgICBrZXk6IFwiaW5pdFwiLFxuXG4gICAgLyoqXG4gICAgICogU2V0dXAgdGhlIGNvbXBvbmVudFxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqL1xuICAgIHZhbHVlOiBmdW5jdGlvbiBpbml0KHBhcmFtcykge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGRvYyA9IHRoaXMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB2YXIgc3RhcnRWYWx1ZTtcbiAgICAgIGlmIChwYXJhbXMua2V5UHJlc3MgIT09IG51bGwpIHN0YXJ0VmFsdWUgPSBCb29sZWFuKHBhcmFtcy5rZXlQcmVzcyk7ZWxzZSBpZiAocGFyYW1zLmNoYXJQcmVzcyAhPT0gbnVsbCkgc3RhcnRWYWx1ZSA9IEJvb2xlYW4ocGFyYW1zLmNoYXJQcmVzcyk7XG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG5cbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB2YXIga2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSA9IHBhcmFtcy5rZXlQcmVzcyA9PSAzMiAvLyBzcGFjZVxuICAgICAgICB8fCBwYXJhbXMua2V5UHJlc3MgPT0gNDY7IC8vIGRlbGV0ZVxuXG4gICAgICAgIGlmIChrZXlQcmVzc0JhY2tzcGFjZU9yRGVsZXRlKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKHBhcmFtcy5jaGFyUHJlc3MpIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gQm9vbGVhbihwYXJhbXMuY2hhclByZXNzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG4gICAgICB0aGlzLnN3aXRjaGVyID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fQm9vbGVhblN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKHN0YXJ0VmFsdWUsIGRvYywgZnVuY3Rpb24gKHN3aXRjaGVyKSB7XG4gICAgICAgIF90aGlzLmN1cnJlbnRWYWx1ZSA9IHN3aXRjaGVyLmdldFZhbHVlKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuZm9jdXNJbigpOyAvLyB1cGRhdGUgYGN1cnJlbnRWYWx1ZWAgdGhlIHZhbHVlIHdoaWNoIHRoaXMgY29tcG9uZW50IGlzIG1hbmFnaW5nXG5cbiAgICAgIHRoaXMuY3VycmVudFZhbHVlID0gc3RhcnRWYWx1ZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IHRoZSByZWZyZW5jZSB0byB0aGUgY29tcG9uZW50IGVsZW1lbnRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0hUTUxFbGVtZW50fVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0R3VpXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldEd1aSgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN3aXRjaGVyLmNvbXBvbmVudDtcbiAgICB9XG4gICAgLyoqIE1ha2Ugc3VyZSBjb250YWluZXIgaXMgYWx3YXlzIGZvY3VzZWQgdG8gbGlzdGVuIHRvIGtleSBjaGFuZ2VzKi9cblxuICB9LCB7XG4gICAga2V5OiBcImFmdGVyR3VpQXR0YWNoZWRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gYWZ0ZXJHdWlBdHRhY2hlZCgpIHtcbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB0aGlzLmZvY3VzSW4oKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNJblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c0luKCkge1xuICAgICAgdGhpcy5zd2l0Y2hlci5mb2N1cygpO1xuICAgIH1cbiAgICAvKiogQ2FsbGVkIGlmIGVkaXRUeXBlID0gJ2Z1bGxSb3cnICovXG5cbiAgfSwge1xuICAgIGtleTogXCJmb2N1c091dFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c091dCgpIHtcbiAgICAgIHRoaXMuc3dpdGNoZXIuZGlzYWJsZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgVGhlIGNvbXBvbmVudCB2YWx1ZVxuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldFZhbHVlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wb25lbnQgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyBmYWxzZVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzUG9wdXBcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaXNQb3B1cCgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLyoqIHJlbW92ZSBldmVudCBsaXN0ZW5lcnMgb24gZGVzdG9yeSAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGVzdHJveVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkZXN0cm95KCkge1xuICAgICAgdGhpcy5zd2l0Y2hlci5kZXN0cm95KCk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEVkaXRvcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRmlsdGVyOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBCb29sZWFucyBGaWx0ZXJcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIEZpbHRlcmluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEZpbHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRmlsdGVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBGaWx0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEZpbHRlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEZpbHRlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRmlsdGVyLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgdGhlIEJvb2xlYW4gRmlsdGVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHZhciB0cnVlVmFsdWUgPSB0aGlzLmdldE9wdGlvbignRklMVEVSX1RSVUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdUUlVFJywgcGFyYW1zKTtcbiAgICAgIHZhciBmYWxzZVZhbHVlID0gdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9GQUxTRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ0ZBTFNFJywgcGFyYW1zKTtcbiAgICAgIHZhciBub25lVmFsdWUgPSB0aGlzLmdldE9wdGlvbignRklMVEVSX05PTkUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdOT05FJywgcGFyYW1zKTtcbiAgICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xuICAgICAgdGhpcy52YWx1ZUdldHRlciA9IHBhcmFtcy52YWx1ZUdldHRlcjtcbiAgICAgIHRoaXMuZmlsdGVyVGV4dCA9IG51bGw7XG4gICAgICB0aGlzLmd1aSA9IGRvYy5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuZ3VpLmNsYXNzTmFtZSA9ICdCYXNpY0Jvb2xlYW5zRmlsdGVyJztcbiAgICAgIHRoaXMuZ3VpLnRhYkluZGV4ID0gXCIwXCI7XG4gICAgICB0aGlzLmd1aS5pbm5lckhUTUwgPSBcIlxcbiAgICAgICAgPHVsIGNsYXNzPVxcXCJhZy1maWx0ZXItYm9keVxcXCI+XFxuICAgICAgICAgIDxsaSB2YWx1ZT1cXFwidHJ1ZVxcXCI+XCIuY29uY2F0KHRydWVWYWx1ZSB8fCAnJiM5NjczIFRydWUnLCBcIjwvbGk+XFxuICAgICAgICAgIDxsaSB2YWx1ZT1cXFwiZmFsc2VcXFwiPlwiKS5jb25jYXQoZmFsc2VWYWx1ZSB8fCAnJiM5Njc4OyBGYWxzZScsIFwiPC9saT5cXG4gICAgICAgICAgPGxpIHZhbHVlPVxcXCJub25lXFxcIj5cIikuY29uY2F0KG5vbmVWYWx1ZSB8fCAnJiM5Njc3OyBOb25lJywgXCI8L2xpPlxcbiAgICAgICAgPC91bD5cXG4gICAgXCIpO1xuICAgICAgdGhpcy5maWx0ZXJFbGVtZW50cyA9IHRoaXMuZ3VpLnF1ZXJ5U2VsZWN0b3JBbGwoJ2xpJyk7XG4gICAgICB0aGlzLl9vbkNoYW5nZUJpbmQgPSB0aGlzLl9vbkNoYW5nZS5iaW5kKHRoaXMpO1xuXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuZmlsdGVyRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGVsZW1lbnQgPSB0aGlzLmZpbHRlckVsZW1lbnRzW2ldO1xuICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCB0aGlzLl9vbkNoYW5nZUJpbmQpO1xuICAgICAgfVxuICAgIH1cbiAgICAvKiogQHJldHVybiB7SFRNTEVsZW1lbnR9Ki9cblxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5ndWk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrIHdoZXRoZXIgc2VsZWN0ZWQgZmlsdGVyIG1hdGNocyB0aGUgcGFzc2VkIGNlbGwgZGF0YVxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIHBhc3MsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZG9lc0ZpbHRlclBhc3NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZG9lc0ZpbHRlclBhc3MocGFyYW1zKSB7XG4gICAgICB2YXIgdmFsdWUgPSB0aGlzLnZhbHVlR2V0dGVyKHBhcmFtcyk7XG4gICAgICB2YXIgcGFzc2VkO1xuXG4gICAgICBpZiAodGhpcy5maWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkgPT09ICdmYWxzZScgJiYgdmFsdWUgPT0gZmFsc2UpIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5maWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJyAmJiB2YWx1ZSA9PSB0cnVlKSB7XG4gICAgICAgIHBhc3NlZCA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpID09PSAnbm9uZScpIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhc3NlZCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFzc2VkO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGVjayB3aGV0aGVyIHRoZSBjb21wb25lbnQgaXMgYXBwbHlpbmcgYW55IGZpbHRlciBvbiB0aGUgY29sdW1uXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtCb29sZWFufVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzRmlsdGVyQWN0aXZlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGlzRmlsdGVyQWN0aXZlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyVGV4dCAhPT0gbnVsbCAmJiB0aGlzLmZpbHRlclRleHQgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmZpbHRlclRleHQgIT09ICdub25lJztcbiAgICB9XG4gICAgLyoqIEdldHMgdGhlIGZpbHRlciBzdGF0ZSBmb3Igc3RvcmluZyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0TW9kZWxcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0TW9kZWwoKSB7XG4gICAgICB2YXIgbW9kZWwgPSB7XG4gICAgICAgIHZhbHVlOiB0aGlzLmZpbHRlclRleHRcbiAgICAgIH07XG4gICAgICByZXR1cm4gbW9kZWw7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIExpc3RlbiB0byBzZWxlY3Rpb24gY2hhbmdlcyBpbiB0aGUgZmlsdGVyIGxpc3QgYW5kIHVwZGF0ZSB0aGUgZ3JpZFxuICAgICAqXG4gICAgICogQHBhcmFtIHtFdmVudH0gZXZlbnRcbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIl9vbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25DaGFuZ2UoZXZlbnQpIHtcbiAgICAgIHRoaXMuZmlsdGVyVGV4dCA9IGV2ZW50LnRhcmdldC5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJyk7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5maWx0ZXJFbGVtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgZWxlbWVudCA9IHRoaXMuZmlsdGVyRWxlbWVudHNbaV07XG5cbiAgICAgICAgaWYgKGVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCkge1xuICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnc2VsZWN0ZWQnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ3NlbGVjdGVkJyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5wYXJhbXMuZmlsdGVyQ2hhbmdlZENhbGxiYWNrKCk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEZpbHRlcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0RhdGVUaW1lc0RpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cblxuLyoqXG4qIERhdGUgLyBUaW1lcyBFZGl0b3JcbipcbiogSGFuZGxlIERhdGUvVGltZSB2YWx1ZXMgRWRpdGluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEVkaXRvciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRWRpdG9yLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBFZGl0b3IoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEVkaXRvcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEVkaXRvcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRWRpdG9yLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBTZXR1cCB0aGUgY29tcG9uZW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHZhciBzdGFydFZhbHVlO1xuICAgICAgdGhpcy5mb2N1c0FmdGVyQXR0YWNoZWQgPSBwYXJhbXMuY2VsbFN0YXJ0ZWRFZGl0O1xuXG4gICAgICBpZiAodGhpcy5mb2N1c0FmdGVyQXR0YWNoZWQpIHtcbiAgICAgICAgdmFyIGtleVByZXNzQmFja3NwYWNlT3JEZWxldGUgPSBwYXJhbXMua2V5UHJlc3MgPT0gMzIgLy8gc3BhY2VcbiAgICAgICAgfHwgcGFyYW1zLmtleVByZXNzID09IDQ2OyAvLyBkZWxldGVcblxuICAgICAgICBpZiAoa2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSkge1xuICAgICAgICAgIHN0YXJ0VmFsdWUgPSAnJztcbiAgICAgICAgfSBlbHNlIGlmIChwYXJhbXMuY2hhclByZXNzKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy5jaGFyUHJlc3M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy52YWx1ZTtcblxuICAgICAgICAgIGlmIChwYXJhbXMua2V5UHJlc3MgIT0gMTEzKSB7XG4gICAgICAgICAgICAvL0YyXG4gICAgICAgICAgICB0aGlzLmhpZ2hsaWdodEFsbE9uRm9jdXMgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy52YWx1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kaWFsb2cgPSBuZXcgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19EYXRlVGltZXNEaWFsb2dfX1tcImFcIiAvKiBkZWZhdWx0ICovXSh7XG4gICAgICAgIGVuYWJsZVRpbWU6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfRU5BQkxFX1RJTUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfVElNRScsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIGVuYWJsZVNlY29uZHM6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfRU5BQkxFX1NFQ09ORFMnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfU0VDT05EUycsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1heERhdGU6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUFYJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUFYJywgcGFyYW1zKSB8fCBudWxsLFxuICAgICAgICBtaW5EYXRlOiB0aGlzLmdldE9wdGlvbignRURJVE9SX01JTicsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01JTicsIHBhcmFtcykgfHwgbnVsbCxcbiAgICAgICAgbWFzazogdGhpcy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUFTSycsIHBhcmFtcyksXG4gICAgICAgIGFsbG93SW5wdXQ6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfQUxMT1dfSU5QVVQnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdBTExPV19JTlBVVCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1vZGU6ICdzaW5nbGUnLFxuICAgICAgICAvL3RoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTU9ERScsIHBhcmFtcykgfHwgJ3JhbmdlJyxcbiAgICAgICAgdGltZV8yNGhyOiB0aGlzLmdldE9wdGlvbignRURJVE9SXzI0SCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJzI0SCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG9uVmFsdWVVcGRhdGU6IHRoaXMub25DaGFuZ2UuYmluZCh0aGlzKVxuICAgICAgfSwgZG9jKTtcbiAgICAgIHRoaXMuZGlhbG9nLnNldERhdGUoc3RhcnRWYWx1ZSwgdHJ1ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBgY3VycmVudFZhbHVlYCAgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJvbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBvbkNoYW5nZShkYXRlcywgZGF0ZVN0cikge1xuICAgICAgdGhpcy5kaWFsb2cuc2V0RGF0ZShkYXRlU3RyLCBmYWxzZSk7XG4gICAgICB0aGlzLmN1cnJlbnRWYWx1ZSA9IGRhdGVTdHI7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgcmVmcmVuY2UgdG8gdGhlIGNvbXBvbmVudCBlbGVtZW50XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtIVE1MRWxlbWVudH1cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaWFsb2cuY29tcG9uZW50O1xuICAgIH1cbiAgICAvKiogTWFrZSBzdXJlIGNvbnRhaW5lciBpcyBhbHdheXMgZm9jdXNlZCB0byBsaXN0ZW4gdG8ga2V5IGNoYW5nZXMqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiYWZ0ZXJHdWlBdHRhY2hlZFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhZnRlckd1aUF0dGFjaGVkKCkge1xuICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cykge1xuICAgICAgICB0aGlzLmRpYWxvZy5pbnB1dC5zZWxlY3QoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICAgIHRoaXMuZm9jdXNJbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8qKiBDYWxsZWQgaWYgZWRpdFR5cGUgPSAnZnVsbFJvdycgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImZvY3VzSW5cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZm9jdXNJbigpIHtcbiAgICAgIHRoaXMuZGlhbG9nLm9wZW4oKTtcbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNPdXRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZm9jdXNPdXQoKSB7XG4gICAgICB0aGlzLmRpYWxvZy5jbG9zZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgVGhlIGNvbXBvbmVudCB2YWx1ZVxuICAgICAqXG4gICAgICogQHJldHVybiB7U3RyaW5nfVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0VmFsdWVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0VmFsdWUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW50VmFsdWU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbXBvbmVudCBvdmVyZmxvd3MgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyB0cnVlXG4gICAgICoqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiaXNQb3B1cFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpc1BvcHVwKCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvKiogRGVzdG9yeSBEYXRlVGltZXNEaWFsb2cgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImRlc3Ryb3lcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGVzdHJveSgpIHtcbiAgICAgIHRoaXMuZGlhbG9nLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gRWRpdG9yO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDE4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWYWx1ZUZvcm1hdHRlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIERhdGVzIC8gVGltZXMgRm9ybWF0dGVyXG4qXG4qIEhhbmRsZSBEYXRlIC8gVGltZSB2YWx1ZXMgZm9ybWF0dGluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIFZhbHVlRm9ybWF0dGVyID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gVmFsdWVGb3JtYXR0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIFZhbHVlRm9ybWF0dGVyKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhWYWx1ZUZvcm1hdHRlciwgbnVsbCwgW3tcbiAgICBrZXk6IFwiZm9ybWF0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGZvcm1hdChwYXJhbXMpIHtcbiAgICAgIHZhciBwYXJhbXNNaXhpbnMgPSBuZXcgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10oKTtcbiAgICAgIHZhciBkb2MgPSBwYXJhbXNNaXhpbnMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB2YXIgbWFzayA9IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ1JFTkRFUkVSX01BU0snLCBwYXJhbXMpO1xuXG4gICAgICBpZiAobWFzayAmJiBwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgJiYgcGFyYW1zLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiBCQmouTWFza3MuVHlwZXMuZGF0ZShwYXJhbXMudmFsdWUsIG1hc2spO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyYW1zLnZhbHVlIHx8ICcnOyAvLyBhdm9pZCB1bmRlZmluZWQgXG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFZhbHVlRm9ybWF0dGVyO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRmlsdGVyOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0RhdGVUaW1lc0RpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfc2xpY2VkVG9BcnJheShhcnIsIGkpIHsgcmV0dXJuIF9hcnJheVdpdGhIb2xlcyhhcnIpIHx8IF9pdGVyYWJsZVRvQXJyYXlMaW1pdChhcnIsIGkpIHx8IF9ub25JdGVyYWJsZVJlc3QoKTsgfVxuXG5mdW5jdGlvbiBfbm9uSXRlcmFibGVSZXN0KCkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfVxuXG5mdW5jdGlvbiBfaXRlcmFibGVUb0FycmF5TGltaXQoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdICE9IG51bGwpIF9pW1wicmV0dXJuXCJdKCk7IH0gZmluYWxseSB7IGlmIChfZCkgdGhyb3cgX2U7IH0gfSByZXR1cm4gX2FycjsgfVxuXG5mdW5jdGlvbiBfYXJyYXlXaXRoSG9sZXMoYXJyKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHJldHVybiBhcnI7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cbi8qKlxuKiBEYXRlIC8gVGltZSBGaWx0ZXJcbipcbiogSGFuZGxlIERhdGVzIC8gVGltZXMgdmFsdWVzIEZpbHRlcmluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEZpbHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRmlsdGVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBGaWx0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEZpbHRlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEZpbHRlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRmlsdGVyLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgdGhlIEJvb2xlYW4gRmlsdGVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHRoaXMuZGlhbG9nID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fRGF0ZVRpbWVzRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10oe1xuICAgICAgICBpbmxpbmU6IHRydWUsXG4gICAgICAgIGVuYWJsZVRpbWU6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfRU5BQkxFX1RJTUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfVElNRScsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIGVuYWJsZVNlY29uZHM6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfRU5BQkxFX1NFQ09ORFMnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfU0VDT05EUycsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1heERhdGU6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfTUFYJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUFYJywgcGFyYW1zKSB8fCBudWxsLFxuICAgICAgICBtaW5EYXRlOiB0aGlzLmdldE9wdGlvbignRklMVEVSX01JTicsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01JTicsIHBhcmFtcykgfHwgbnVsbCxcbiAgICAgICAgbWFzazogdGhpcy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfTUFTSycsIHBhcmFtcyksXG4gICAgICAgIGFsbG93SW5wdXQ6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfQUxMT1dfSU5QVVQnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdBTExPV19JTlBVVCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1vZGU6ICdyYW5nZScsXG4gICAgICAgIC8vdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9NT0RFJywgcGFyYW1zKSB8fCAncmFuZ2UnLFxuICAgICAgICB0aW1lXzI0aHI6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfMjRIJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignMjRIJywgcGFyYW1zKSB8fCBmYWxzZSxcbiAgICAgICAgb25WYWx1ZVVwZGF0ZTogdGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpLFxuICAgICAgICBvbkNsZWFyOiB0aGlzLm9uQ2xlYXIuYmluZCh0aGlzKVxuICAgICAgfSwgZG9jKTsgLy8gbWFrZSBzdXJlIG5vIGRhdGUgaXMgc2VsZWN0ZWRcblxuICAgICAgdGhpcy5kaWFsb2cuc2V0RGF0ZSgnJywgdHJ1ZSk7XG4gICAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgICAgIHRoaXMudmFsdWVHZXR0ZXIgPSBwYXJhbXMudmFsdWVHZXR0ZXI7XG4gICAgICB0aGlzLmZpbHRlckRhdGVzID0gbnVsbDtcbiAgICB9XG4gICAgLyoqIFJlc2V0IGZpbHRlciB3aGVuIGNhbGFuZGVyIGlzIGNsZWFyZWQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIm9uQ2xlYXJcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gb25DbGVhcigpIHtcbiAgICAgIHRoaXMuZmlsdGVyRGF0ZXMgPSBbXTtcbiAgICAgIHRoaXMucGFyYW1zLmZpbHRlckNoYW5nZWRDYWxsYmFjaygpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBMaXN0ZW4gdG8gc2VsZWN0aW9uIGNoYW5nZXMgaW4gdGhlIGNhbGFuZGVyIGFuZCB1cGRhdGUgdGhlIGdyaWRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJvbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBvbkNoYW5nZShkYXRlcywgZGF0ZVN0cikge1xuICAgICAgdGhpcy5maWx0ZXJEYXRlcyA9IGRhdGVzO1xuICAgICAgdGhpcy5wYXJhbXMuZmlsdGVyQ2hhbmdlZENhbGxiYWNrKCk7XG4gICAgfVxuICAgIC8qKiBAcmV0dXJuIHtIVE1MRWxlbWVudH0qL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0R3VpXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldEd1aSgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpYWxvZy5jb21wb25lbnQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrIHdoZXRoZXIgc2VsZWN0ZWQgZmlsdGVyIG1hdGNocyB0aGUgcGFzc2VkIGNlbGwgZGF0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIHBhc3MsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZG9lc0ZpbHRlclBhc3NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZG9lc0ZpbHRlclBhc3MocGFyYW1zKSB7XG4gICAgICB2YXIgdmFsdWUgPSBuZXcgRGF0ZSh0aGlzLnZhbHVlR2V0dGVyKHBhcmFtcykpO1xuXG4gICAgICB2YXIgX3RoaXMkZmlsdGVyRGF0ZXMgPSBfc2xpY2VkVG9BcnJheSh0aGlzLmZpbHRlckRhdGVzLCAyKSxcbiAgICAgICAgICBzdGFydCA9IF90aGlzJGZpbHRlckRhdGVzWzBdLFxuICAgICAgICAgIGVuZCA9IF90aGlzJGZpbHRlckRhdGVzWzFdO1xuXG4gICAgICB2YXIgcGFzc2VkO1xuXG4gICAgICBpZiAodHlwZW9mIGVuZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHN0YXJ0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICB2YXIgc3RhcnRBc0RhdGUgPSBuZXcgRGF0ZShzdGFydCk7XG4gICAgICAgIHZhciBlbmRBc0RhdGUgPSBuZXcgRGF0ZShlbmQpO1xuICAgICAgICBwYXNzZWQgPSB2YWx1ZSA+PSBzdGFydEFzRGF0ZSAmJiB2YWx1ZSA8PSBlbmRBc0RhdGU7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzdGFydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdmFyIF9zdGFydEFzRGF0ZSA9IG5ldyBEYXRlKHN0YXJ0KTtcblxuICAgICAgICBwYXNzZWQgPSBfc3RhcnRBc0RhdGUgPT09IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhc3NlZDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2hlY2sgd2hldGhlciB0aGUgY29tcG9uZW50IGlzIGFwcGx5aW5nIGFueSBmaWx0ZXIgb24gdGhlIGNvbHVtblxuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICAgKiovXG5cbiAgfSwge1xuICAgIGtleTogXCJpc0ZpbHRlckFjdGl2ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpc0ZpbHRlckFjdGl2ZSgpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuZmlsdGVyRGF0ZXMpICYmIHRoaXMuZmlsdGVyRGF0ZXMubGVuZ3RoO1xuICAgIH1cbiAgICAvKiogR2V0cyB0aGUgZmlsdGVyIHN0YXRlIGZvciBzdG9yaW5nICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRNb2RlbFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRNb2RlbCgpIHtcbiAgICAgIHZhciBtb2RlbCA9IHtcbiAgICAgICAgdmFsdWU6IHRoaXMuZmlsdGVyRGF0ZXNcbiAgICAgIH07XG4gICAgICByZXR1cm4gbW9kZWw7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFByb3ZpZGUgYSByZWFkIG9ubHkgZmxvYXRpbmcgZmlsdGVyIFxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ31cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldE1vZGVsQXNTdHJpbmdcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0TW9kZWxBc1N0cmluZygpIHtcbiAgICAgIHZhciBtYXNrID0gdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9NQVNLJywgdGhpcy5wYXJhbXMpO1xuXG4gICAgICB2YXIgX3RoaXMkZmlsdGVyRGF0ZXMyID0gX3NsaWNlZFRvQXJyYXkodGhpcy5maWx0ZXJEYXRlcywgMiksXG4gICAgICAgICAgc3RhcnQgPSBfdGhpcyRmaWx0ZXJEYXRlczJbMF0sXG4gICAgICAgICAgZW5kID0gX3RoaXMkZmlsdGVyRGF0ZXMyWzFdO1xuXG4gICAgICB2YXIgcmVzdWx0ID0gJyc7XG4gICAgICBpZiAoc3RhcnQpIHJlc3VsdCArPSBcIlwiLmNvbmNhdChCQmouTWFza3MuVHlwZXMuZGF0ZShzdGFydCwgbWFzaykpO1xuICAgICAgaWYgKGVuZCkgcmVzdWx0ICs9IFwiIC0gXCIuY29uY2F0KEJCai5NYXNrcy5UeXBlcy5kYXRlKGVuZCwgbWFzaykpO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gRmlsdGVyO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDIwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBSZW5kZXJlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiKSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfTsgfSBlbHNlIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9OyB9IHJldHVybiBfdHlwZW9mKG9iaik7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKipcbiogSW1hZ2VzIFJlbmRlcmVyXG4qXG4qIEhhbmRsZSBJbWFnZXMgUmVuZGVyZXJpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBSZW5kZXJlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoUmVuZGVyZXIsIF9QYXJhbXNNaXhpbnMpO1xuXG4gIGZ1bmN0aW9uIFJlbmRlcmVyKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBSZW5kZXJlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKFJlbmRlcmVyKS5hcHBseSh0aGlzLCBhcmd1bWVudHMpKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhSZW5kZXJlciwgW3tcbiAgICBrZXk6IFwiaW5pdFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpbml0KHBhcmFtcykge1xuICAgICAgdmFyIGRvYyA9IHRoaXMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB0aGlzLmNvbnRhaW5lciA9IGRvYy5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICB0aGlzLmNvbnRhaW5lci5jbGFzc05hbWUgPSBcIkJhc2ljSW1hZ2VzUmVuZGVyZXJcIjtcblxuICAgICAgaWYgKCFwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykpIHtcbiAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gJyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgd2lkdGggPSB0aGlzLmdldE9wdGlvbignSU1BR0VTX1dJRFRIJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignV0lEVEgnLCBwYXJhbXMpIHx8ICcyNXB4JztcbiAgICAgICAgdmFyIGhlaWdodCA9IHRoaXMuZ2V0T3B0aW9uKCdJTUFHRVNfSEVJR0hUJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignSEVJR0hUJywgcGFyYW1zKSB8fCAnMjVweCc7XG4gICAgICAgIHZhciBsaXN0ID0gdGhpcy5nZXRPcHRpb24oJ0lNQUdFU19MSVNUJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTElTVCcsIHBhcmFtcyk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsaXN0ID0gSlNPTi5wYXJzZShsaXN0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGxpc3QgPSBsaXN0IHx8IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxpc3QgJiYgbGlzdC5oYXNPd25Qcm9wZXJ0eShwYXJhbXMudmFsdWUpKSB7XG4gICAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gXCI8aW1nIHNyYz1cXFwiXCIuY29uY2F0KGxpc3RbcGFyYW1zLnZhbHVlXSwgXCJcXFwiIHdpZHRoPVxcXCJcIikuY29uY2F0KHdpZHRoLCBcIlxcXCIgaGVpZ2h0PVxcXCJcIikuY29uY2F0KGhlaWdodCwgXCJcXFwiLz5cIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gcGFyYW1zLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250YWluZXI7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFJlbmRlcmVyO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDIxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWYWx1ZUZvcm1hdHRlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIE51bWJlcnMgVmFsdWUgRm9ybWF0dGVyXG4qXG4qIEhhbmRsZSBOdW1iZXIgdmFsdWVzIGZvcm1hdHRpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBWYWx1ZUZvcm1hdHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFZhbHVlRm9ybWF0dGVyKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBWYWx1ZUZvcm1hdHRlcik7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoVmFsdWVGb3JtYXR0ZXIsIG51bGwsIFt7XG4gICAga2V5OiBcImZvcm1hdFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb3JtYXQocGFyYW1zKSB7XG4gICAgICB2YXIgcGFyYW1zTWl4aW5zID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVXRpbGl0aWVzX1BhcmFtc19qc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKCk7XG4gICAgICB2YXIgZG9jID0gcGFyYW1zTWl4aW5zLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIG1hc2sgPSBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdNQVNLJywgcGFyYW1zKSB8fCBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdSRU5ERVJFUl9NQVNLJywgcGFyYW1zKTtcbiAgICAgIHZhciBncm91cFNlcCA9IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ0dST1VQX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgcGFyYW1zTWl4aW5zLmdldE9wdGlvbignUkVOREVSRVJfR1JPVVBfU0VQQVJBVE9SJywgcGFyYW1zKSB8fCBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdOVU1CRVJTX1JFTkRFUkVSX0dST1VQX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgJywnO1xuICAgICAgdmFyIGRlY2ltYWxTZXAgPSBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdERUNJTUFMX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgcGFyYW1zTWl4aW5zLmdldE9wdGlvbignUkVOREVSRVJfREVDSU1BTF9TRVBBUkFUT1InLCBwYXJhbXMpIHx8IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ05VTUJFUlNfUkVOREVSRVJfREVDSU1BTF9TRVBBUkFUT1InLCBwYXJhbXMpIHx8ICcuJztcblxuICAgICAgaWYgKG1hc2sgJiYgcGFyYW1zLmhhc093blByb3BlcnR5KCd2YWx1ZScpICYmIHBhcmFtcy52YWx1ZSAhPSBudWxsICYmICFpc05hTihwYXJhbXMudmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBCQmouTWFza3MuVHlwZXMubnVtYmVyKHBhcmFtcy52YWx1ZSwgbWFzaywgZ3JvdXBTZXAsIGRlY2ltYWxTZXApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyYW1zLnZhbHVlIHx8ICcnOyAvLyBhdm9pZCB1bmRlZmluZWQgXG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFZhbHVlRm9ybWF0dGVyO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiAyMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBOdW1iZXJzIEVkaXRvclxuKlxuKiBIYW5kbGUgbnVtYmVyIHZhbHVlcyBFZGl0aW5nXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xuXG52YXIgRWRpdG9yID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uIChfUGFyYW1zTWl4aW5zKSB7XG4gIF9pbmhlcml0cyhFZGl0b3IsIF9QYXJhbXNNaXhpbnMpO1xuXG4gIGZ1bmN0aW9uIEVkaXRvcigpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgRWRpdG9yKTtcblxuICAgIHJldHVybiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybih0aGlzLCBfZ2V0UHJvdG90eXBlT2YoRWRpdG9yKS5hcHBseSh0aGlzLCBhcmd1bWVudHMpKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhFZGl0b3IsIFt7XG4gICAga2V5OiBcImluaXRcIixcblxuICAgIC8qKlxuICAgICAqIFNldHVwIHRoZSBjb21wb25lbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXNcbiAgICAgKi9cbiAgICB2YWx1ZTogZnVuY3Rpb24gaW5pdChwYXJhbXMpIHtcbiAgICAgIHZhciBkb2MgPSB0aGlzLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIHN0YXJ0VmFsdWU7XG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG5cbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB2YXIga2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSA9IHBhcmFtcy5rZXlQcmVzcyA9PSAzMiAvLyBzcGFjZVxuICAgICAgICB8fCBwYXJhbXMua2V5UHJlc3MgPT0gNDY7IC8vIGRlbGV0ZVxuXG4gICAgICAgIGlmIChrZXlQcmVzc0JhY2tzcGFjZU9yRGVsZXRlKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9ICcnO1xuICAgICAgICB9IGVsc2UgaWYgKHBhcmFtcy5jaGFyUHJlc3MpIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLmNoYXJQcmVzcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuXG4gICAgICAgICAgaWYgKHBhcmFtcy5rZXlQcmVzcyAhPSAxMTMpIHtcbiAgICAgICAgICAgIC8vRjJcbiAgICAgICAgICAgIHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cyA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNvbXBvbmVudCA9IGRvYy5jcmVhdGVFbGVtZW50KCdsYWJlbCcpO1xuICAgICAgdGhpcy5jb21wb25lbnQuY2xhc3NOYW1lID0gJ0Jhc2ljTnVtYmVyc0VkaXRvcic7XG4gICAgICB0aGlzLmNvbXBvbmVudC50YWJJbmRleCA9IFwiMFwiOyAvLyBpbnB1dFxuXG4gICAgICB0aGlzLmlucHV0ID0gZG9jLmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICB0aGlzLmlucHV0LnR5cGUgPSBcIm51bWJlclwiO1xuICAgICAgdGhpcy5pbnB1dC52YWx1ZSA9IHN0YXJ0VmFsdWU7XG4gICAgICB0aGlzLmlucHV0LnRhYkluZGV4ID0gMDtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdmFyIG1pbiA9IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUlOJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUlOJywgcGFyYW1zKTtcbiAgICAgIHZhciBtYXggPSB0aGlzLmdldE9wdGlvbignRURJVE9SX01BWCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01BWCcsIHBhcmFtcyk7XG4gICAgICB2YXIgc3RlcCA9IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfU1RFUCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ1NURVAnLCBwYXJhbXMpO1xuICAgICAgaWYgKG1pbikgdGhpcy5pbnB1dC5taW4gPSBtaW47XG4gICAgICBpZiAobWF4KSB0aGlzLmlucHV0Lm1heCA9IG1heDtcbiAgICAgIGlmIChzdGVwKSB0aGlzLmlucHV0Lm1heCA9IHN0ZXA7XG4gICAgICB0aGlzLl9vbktleURvd25CaW5kID0gdGhpcy5fb25LZXlEb3duLmJpbmQodGhpcyk7XG4gICAgICB0aGlzLl9vbkNoYW5nZUJpbmQgPSB0aGlzLl9vbkNoYW5nZS5iaW5kKHRoaXMpO1xuICAgICAgdGhpcy5pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duQmluZCk7XG4gICAgICB0aGlzLmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIHRoaXMuX29uQ2hhbmdlQmluZCk7IC8vIHVwZGF0ZSBgY3VycmVudFZhbHVlYCB0aGUgdmFsdWUgd2hpY2ggdGhpcyBjb21wb25lbnQgaXMgbWFuYWdpbmdcblxuICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSBzdGFydFZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHJlZnJlbmNlIHRvIHRoZSBjb21wb25lbnQgZWxlbWVudFxuICAgICAqXG4gICAgICogQHJldHVybiB7SFRNTEVsZW1lbnR9XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRHdWlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0R3VpKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50O1xuICAgIH1cbiAgICAvKiogTWFrZSBzdXJlIGNvbnRhaW5lciBpcyBhbHdheXMgZm9jdXNlZCB0byBsaXN0ZW4gdG8ga2V5IGNoYW5nZXMqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiYWZ0ZXJHdWlBdHRhY2hlZFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhZnRlckd1aUF0dGFjaGVkKCkge1xuICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cykge1xuICAgICAgICB0aGlzLmlucHV0LnNlbGVjdCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNBZnRlckF0dGFjaGVkKSB7XG4gICAgICAgICAgdGhpcy5mb2N1c0luKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IFRoZSBjb21wb25lbnQgdmFsdWVcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRWYWx1ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRWYWx1ZSgpIHtcbiAgICAgIHZhciBjYXN0ZWQgPSBOdW1iZXIodGhpcy5jdXJyZW50VmFsdWUpO1xuICAgICAgcmV0dXJuIGlzTmFOKGNhc3RlZCkgPyB0aGlzLmN1cnJlbnRWYWx1ZSA6IGNhc3RlZDtcbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNJblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c0luKCkge1xuICAgICAgdGhpcy5pbnB1dC5mb2N1cygpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wb25lbnQgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyBmYWxzZVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzUG9wdXBcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaXNQb3B1cCgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLyoqIHJlbW92ZSBldmVudCBsaXN0ZW5lcnMgb24gZGVzdG9yeSAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGVzdHJveVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkZXN0cm95KCkge1xuICAgICAgaWYgKHRoaXMuX29uS2V5RG93bikgdGhpcy5pbnB1dC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duKTtcbiAgICAgIGlmICh0aGlzLl9vbkNoYW5nZUJpbmQpIHRoaXMuaW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgdGhpcy5fb25DaGFuZ2VCaW5kKTtcbiAgICB9XG4gICAgLyoqXG4gICAgKiBVcGRhdGUgYGN1cnJlbnRWYWx1ZWAgd2hlbiB0aGUgY2hlY2tib3ggdmFsdWUgaXMgY2hhbmdlZFxuICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25DaGFuZ2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uQ2hhbmdlKHBhcmFtcykge1xuICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSB0aGlzLmlucHV0LnZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBNb25pdG9yIGtleXMgW3RvcCxib3R0b20sZW50ZXJdIHRvIGNoYW5nZSB0aGUgaW5wdXQgdmFsdWVcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBldmVudFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX29uS2V5RG93blwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25LZXlEb3duKGV2ZW50KSB7XG4gICAgICB2YXIga2V5ID0gZXZlbnQud2hpY2ggfHwgZXZlbnQua2V5Q29kZTtcblxuICAgICAgaWYgKGtleSA9PSAzOCB8fCBrZXkgPT0gNDApIHtcbiAgICAgICAgLy8gdG9wIHwgZG93blxuICAgICAgICB0aGlzLmN1cnJlbnRWYWx1ZSA9IHRoaXMuaW5wdXQudmFsdWU7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmIChrZXkgPT0gMTMpIHtcbiAgICAgICAgLy8gZW50ZXJcbiAgICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSB0aGlzLmlucHV0LnZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBFZGl0b3I7XG59KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVXRpbGl0aWVzX1BhcmFtc19qc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuXG5cbi8qKiovIH0pLFxuLyogMjMgKi8sXG4vKiAyNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfZXhwb3NlX2xvYWRlcl9CQmpfTWFza3Nfbm9kZV9tb2R1bGVzX2Jial9tYXNrc19kaXN0X2Jial9tYXNrc19qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX2V4cG9zZV9sb2FkZXJfQkJqX01hc2tzX25vZGVfbW9kdWxlc19iYmpfbWFza3NfZGlzdF9iYmpfbWFza3NfanNfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9leHBvc2VfbG9hZGVyX0JCal9NYXNrc19ub2RlX21vZHVsZXNfYmJqX21hc2tzX2Rpc3RfYmJqX21hc2tzX2pzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19Cb29sZWFuc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19Cb29sZWFuc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fQm9vbGVhbnNfc3R5bGVfY3NzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fRGF0ZVRpbWVzX3N0eWxlX2Nzc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX0RhdGVUaW1lc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fRGF0ZVRpbWVzX3N0eWxlX2Nzc19fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX0ltYWdlc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fSW1hZ2VzX3N0eWxlX2Nzc19fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19JbWFnZXNfc3R5bGVfY3NzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX0Jvb2xlYW5zX1JlbmRlcmVyX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljQm9vbGVhbnNSZW5kZXJlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fQm9vbGVhbnNfUmVuZGVyZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fQm9vbGVhbnNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljQm9vbGVhbnNFZGl0b3JcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX0Jvb2xlYW5zX0VkaXRvcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19Cb29sZWFuc19GaWx0ZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNCb29sZWFuc0ZpbHRlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fQm9vbGVhbnNfRmlsdGVyX2pzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19EYXRlVGltZXNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljRGF0ZVRpbWVzRWRpdG9yXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMF9fRGF0ZVRpbWVzX0VkaXRvcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMV9fRGF0ZVRpbWVzX1ZhbHVlRm9ybWF0dGVyX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljRGF0ZVRpbWVzVmFsdWVGb3JtYXR0ZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19EYXRlVGltZXNfVmFsdWVGb3JtYXR0ZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX0RhdGVUaW1lc19GaWx0ZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNEYXRlVGltZXNGaWx0ZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEyX19EYXRlVGltZXNfRmlsdGVyX2pzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19JbWFnZXNfUmVuZGVyZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNJbWFnZXNSZW5kZXJlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTNfX0ltYWdlc19SZW5kZXJlcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fTnVtYmVyc19WYWx1ZUZvcm1hdHRlcl9qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJCYXNpY051bWJlcnNWYWx1ZUZvcm1hdHRlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX051bWJlcnNfVmFsdWVGb3JtYXR0ZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX051bWJlcnNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljTnVtYmVyc0VkaXRvclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX051bWJlcnNfRWRpdG9yX2pzX19bXCJhXCJdOyB9KTtcbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qKiovIH0pLFxuLyogMjUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuLyogV0VCUEFDSyBWQVIgSU5KRUNUSU9OICovKGZ1bmN0aW9uKGdsb2JhbCkge2lmKCFnbG9iYWxbXCJCQmpcIl0pIGdsb2JhbFtcIkJCalwiXSA9IHt9O1xubW9kdWxlLmV4cG9ydHMgPSBnbG9iYWxbXCJCQmpcIl1bXCJNYXNrc1wiXSA9IF9fd2VicGFja19yZXF1aXJlX18oMjcpO1xuLyogV0VCUEFDSyBWQVIgSU5KRUNUSU9OICovfS5jYWxsKGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18oMjYpKSlcblxuLyoqKi8gfSksXG4vKiAyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG52YXIgZztcblxuLy8gVGhpcyB3b3JrcyBpbiBub24tc3RyaWN0IG1vZGVcbmcgPSAoZnVuY3Rpb24oKSB7XG5cdHJldHVybiB0aGlzO1xufSkoKTtcblxudHJ5IHtcblx0Ly8gVGhpcyB3b3JrcyBpZiBldmFsIGlzIGFsbG93ZWQgKHNlZSBDU1ApXG5cdGcgPSBnIHx8IEZ1bmN0aW9uKFwicmV0dXJuIHRoaXNcIikoKSB8fCAoMSxldmFsKShcInRoaXNcIik7XG59IGNhdGNoKGUpIHtcblx0Ly8gVGhpcyB3b3JrcyBpZiB0aGUgd2luZG93IHJlZmVyZW5jZSBpcyBhdmFpbGFibGVcblx0aWYodHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIilcblx0XHRnID0gd2luZG93O1xufVxuXG4vLyBnIGNhbiBzdGlsbCBiZSB1bmRlZmluZWQsIGJ1dCBub3RoaW5nIHRvIGRvIGFib3V0IGl0Li4uXG4vLyBXZSByZXR1cm4gdW5kZWZpbmVkLCBpbnN0ZWFkIG9mIG5vdGhpbmcgaGVyZSwgc28gaXQnc1xuLy8gZWFzaWVyIHRvIGhhbmRsZSB0aGlzIGNhc2UuIGlmKCFnbG9iYWwpIHsgLi4ufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGc7XG5cblxuLyoqKi8gfSksXG4vKiAyNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG4oZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0cnVlKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiTWFza3NcIl0gPSBmYWN0b3J5KCk7XG5cdGVsc2Vcblx0XHRyb290W1wiQkJqXCJdID0gcm9vdFtcIkJCalwiXSB8fCB7fSwgcm9vdFtcIkJCalwiXVtcIk1hc2tzXCJdID0gZmFjdG9yeSgpO1xufSkodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnID8gc2VsZiA6IHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuIC8qKioqKiovIChmdW5jdGlvbihtb2R1bGVzKSB7IC8vIHdlYnBhY2tCb290c3RyYXBcbi8qKioqKiovIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuLyoqKioqKi8gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbi8qKioqKiovIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbi8qKioqKiovIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuLyoqKioqKi8gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4vKioqKioqLyBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuLyoqKioqKi8gXHRcdFx0aTogbW9kdWxlSWQsXG4vKioqKioqLyBcdFx0XHRsOiBmYWxzZSxcbi8qKioqKiovIFx0XHRcdGV4cG9ydHM6IHt9XG4vKioqKioqLyBcdFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4vKioqKioqLyBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbi8qKioqKiovIFx0XHRtb2R1bGUubCA9IHRydWU7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4vKioqKioqLyBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuLyoqKioqKi8gXHR9XG4vKioqKioqL1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4vKioqKioqLyBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuLyoqKioqKi8gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbi8qKioqKiovIFx0XHRcdFx0Y29uZmlndXJhYmxlOiBmYWxzZSxcbi8qKioqKiovIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbi8qKioqKiovIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbi8qKioqKiovIFx0XHRcdH0pO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuLyoqKioqKi8gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuLyoqKioqKi8gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbi8qKioqKiovIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4vKioqKioqLyBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuLyoqKioqKi8gXHRcdHJldHVybiBnZXR0ZXI7XG4vKioqKioqLyBcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuLyoqKioqKi8gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAyKTtcbi8qKioqKiovIH0pXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gKFtcbi8qIDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gIHZhbHVlOiB0cnVlXG59KTtcbmV4cG9ydHMuZGVmYXVsdCA9IHZvaWQgMDtcblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYmJqLW1hc2tzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqIFxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKiBcbiAqIERhdGVNYXNrXG4gKiBcbiAqIEhhbmRsZSBCQmogZGF0ZXMgbWFza2luZyBcbiAqIFxuICogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG52YXIgRGF0ZU1hc2sgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBEYXRlTWFzaygpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgRGF0ZU1hc2spO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKERhdGVNYXNrLCBudWxsLCBbe1xuICAgIGtleTogXCJtYXNrXCIsXG5cbiAgICAvKiogXG4gICAgICogTWFzayBkYXRlXG4gICAgICogXG4gICAgICogTWFzayB0aGUgcGFzc2VkIGRhdGUgd2l0aCB0aGUgcGFzc2VkIG1hc2tcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG1hc2sgbWFzayBhcyBhIHN0cmluZ1xuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gYSBkYXRlIG1hc2tlZCB3aXRodCB0aGUgZ2l2ZW4gbWFza1xuICAgICAqL1xuICAgIHZhbHVlOiBmdW5jdGlvbiBtYXNrKGRhdGUsIF9tYXNrKSB7XG4gICAgICBpZiAoIWRhdGUpIHJldHVybjtcbiAgICAgIGlmICghX21hc2spIHJldHVybiBkYXRlO1xuXG4gICAgICB2YXIgZGF0ZURldGFpbHMgPSBEYXRlTWFzay5fcGFyc2VEYXRlKGRhdGUpO1xuXG4gICAgICB2YXIgdHJhbnNsYXRpb25zID0gRGF0ZU1hc2suX2J1aWxkVHJhbnNpbGF0aW9uKGRhdGVEZXRhaWxzKTtcblxuICAgICAgdmFyIHJlc3VsdCA9IF9tYXNrO1xuXG4gICAgICBmb3IgKHZhciBrIGluIHRyYW5zbGF0aW9ucykge1xuICAgICAgICByZXN1bHQgPSByZXN1bHQucmVwbGFjZShuZXcgUmVnRXhwKCcoJScgKyBrICsgJyknLCAnZycpLCB0cmFuc2xhdGlvbnNba10pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBQYXJzZSB0aGUgcGFzc2VkIGRhdGUgc3RyaW5nIGFkbiByZXR1cm4gaXRzIGRldGlsYXNcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICogXG4gICAgICogQHJldHVybiB7T2JqZWN0fSBcbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIl9wYXJzZURhdGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX3BhcnNlRGF0ZShkYXRlKSB7XG4gICAgICB2YXIgZGF0ZU9iamVjdCA9IERhdGUucGFyc2UoZGF0ZSk7XG4gICAgICBpZiAoIShkYXRlT2JqZWN0IGluc3RhbmNlb2YgRGF0ZSkpIGRhdGVPYmplY3QgPSBuZXcgRGF0ZShkYXRlKTtcbiAgICAgIHZhciBob3VyczI0ID0gZGF0ZU9iamVjdC5nZXRIb3VycygpO1xuICAgICAgdmFyIGhvdXJzMTIgPSBob3VyczI0ICUgMTIgfHwgMTI7XG5cbiAgICAgIHZhciBkYXlPZlllYXIgPSBEYXRlTWFzay5fZ2V0RGF5T2ZZZWFyKGRhdGUpOyAvLyBjb25zdCBkYXlPZldlZWsgPSBkYXRlT2JqZWN0LmdldERheSgpID9cblxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBcInllYXJcIjogZGF0ZU9iamVjdC5nZXRGdWxsWWVhcigpLFxuICAgICAgICBcIm1vbnRoXCI6IGRhdGVPYmplY3QuZ2V0TW9udGgoKSArIDEsXG4gICAgICAgIFwiZGF5XCI6IGRhdGVPYmplY3QuZ2V0RGF0ZSgpLFxuICAgICAgICBcIm1pbnV0ZXNcIjogZGF0ZU9iamVjdC5nZXRNaW51dGVzKCksXG4gICAgICAgIFwic2Vjb25kc1wiOiBkYXRlT2JqZWN0LmdldFNlY29uZHMoKSxcbiAgICAgICAgXCJob3VyczI0XCI6IGhvdXJzMjQsXG4gICAgICAgIFwiaG91cnMxMlwiOiBob3VyczEyLFxuICAgICAgICBcImRheU9mWWVhclwiOiBkYXlPZlllYXIsXG4gICAgICAgIFwiZGF5T2ZXZWVrXCI6IGRhdGVPYmplY3QuZ2V0RGF5KCkgKyAxIC8vIFN1bmRheSA9IDEgaW4gQkJqIGJ1dCBTdW5kYXkgPSAwIGluIEpTXG5cbiAgICAgIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdldCBhIG1hcCBvYmplY3Qgd2hpY2ggY29udGFpbnMgYWxsIHBvc3NpYmxlIGZvcm1zIG9mIG1hc2tzXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGRhdGVEZXRhaWxzIGRhdGUgZGV0YWlscyBidWlsdCBieSBgX3BhcnNlRGF0ZWBcbiAgICAgKiBcbiAgICAgKiBAcmV0dXJuIHtPYmplY3R9IGZvcm1zIG1hc2tzXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRUcmFuc2lsYXRpb25cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkVHJhbnNpbGF0aW9uKGRhdGVEZXRhaWxzKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAvLyB5ZWFyIFxuICAgICAgICBcIll6XCI6IGRhdGVEZXRhaWxzLnllYXIudG9TdHJpbmcoKS5zdWJzdHIoLTIpLFxuICAgICAgICBcIllzXCI6IGRhdGVEZXRhaWxzLnllYXIsXG4gICAgICAgIFwiWWxcIjogZGF0ZURldGFpbHMueWVhcixcbiAgICAgICAgXCJZcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLnllYXIpLFxuICAgICAgICBcIllkXCI6IGRhdGVEZXRhaWxzLnllYXIsXG4gICAgICAgIFwiWVwiOiBkYXRlRGV0YWlscy55ZWFyLFxuICAgICAgICAvLyBtb250aFxuICAgICAgICBcIk16XCI6IFN0cmluZyhkYXRlRGV0YWlscy5tb250aCkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLm1vbnRoIDogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTXNcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTWxcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTXBcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5tb250aCksXG4gICAgICAgIFwiTWRcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTVwiOiBkYXRlRGV0YWlscy5tb250aCxcbiAgICAgICAgLy8gZGF5XG4gICAgICAgIFwiRHpcIjogU3RyaW5nKGRhdGVEZXRhaWxzLmRheSkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLmRheSA6IGRhdGVEZXRhaWxzLmRheSxcbiAgICAgICAgXCJEc1wiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIFwiRGxcIjogZGF0ZURldGFpbHMuZGF5LFxuICAgICAgICBcIkRwXCI6IFN0cmluZy5mcm9tQ2hhckNvZGUoZGF0ZURldGFpbHMuZGF5KSxcbiAgICAgICAgXCJEZFwiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIFwiRFwiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIC8vIGhvdXIgMjRcbiAgICAgICAgXCJIelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuaG91cnMyNCkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLmhvdXJzMjQgOiBkYXRlRGV0YWlscy5ob3VyczI0LFxuICAgICAgICBcIkhzXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQsXG4gICAgICAgIFwiSGxcIjogZGF0ZURldGFpbHMuaG91cnMyNCxcbiAgICAgICAgXCJIcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLmhvdXJzMjQpLFxuICAgICAgICBcIkhkXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQsXG4gICAgICAgIFwiSFwiOiBkYXRlRGV0YWlscy5ob3VyczI0LFxuICAgICAgICAvLyBob3VyIDEyXG4gICAgICAgIFwiaHpcIjogU3RyaW5nKGRhdGVEZXRhaWxzLmhvdXJzMTIpLmxlbmd0aCA9PSAxID8gXCIwXCIgKyBkYXRlRGV0YWlscy5ob3VyczEyIDogZGF0ZURldGFpbHMuaG91cnMxMixcbiAgICAgICAgXCJoc1wiOiBkYXRlRGV0YWlscy5ob3VyczEyLFxuICAgICAgICBcImhsXCI6IGRhdGVEZXRhaWxzLmhvdXJzMTIsXG4gICAgICAgIFwiaHBcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5ob3VyczEyKSxcbiAgICAgICAgXCJoZFwiOiBkYXRlRGV0YWlscy5ob3VyczEyLFxuICAgICAgICBcImhcIjogZGF0ZURldGFpbHMuaG91cnMxMixcbiAgICAgICAgLy8gbWludXRlc1xuICAgICAgICBcIm16XCI6IFN0cmluZyhkYXRlRGV0YWlscy5taW51dGVzKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMubWludXRlcyA6IGRhdGVEZXRhaWxzLm1pbnV0ZXMsXG4gICAgICAgIFwibXNcIjogZGF0ZURldGFpbHMubWludXRlcyxcbiAgICAgICAgXCJtbFwiOiBkYXRlRGV0YWlscy5taW51dGVzLFxuICAgICAgICBcIm1wXCI6IFN0cmluZy5mcm9tQ2hhckNvZGUoZGF0ZURldGFpbHMubWludXRlcyksXG4gICAgICAgIFwibWRcIjogZGF0ZURldGFpbHMubWludXRlcyxcbiAgICAgICAgXCJtXCI6IGRhdGVEZXRhaWxzLm1pbnV0ZXMsXG4gICAgICAgIC8vIHNlY29uZHNcbiAgICAgICAgXCJzelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuc2Vjb25kcykubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLnNlY29uZHMgOiBkYXRlRGV0YWlscy5zZWNvbmRzLFxuICAgICAgICBcInNzXCI6IGRhdGVEZXRhaWxzLnNlY29uZHMsXG4gICAgICAgIFwic2xcIjogZGF0ZURldGFpbHMuc2Vjb25kcyxcbiAgICAgICAgXCJzcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLnNlY29uZHMpLFxuICAgICAgICBcInNkXCI6IGRhdGVEZXRhaWxzLnNlY29uZHMsXG4gICAgICAgIFwic1wiOiBkYXRlRGV0YWlscy5zZWNvbmRzLFxuICAgICAgICAvLyBBTSAsIFBNXG4gICAgICAgIFwiUFBcIjogZGF0ZURldGFpbHMuaG91cnMyNCA+IDEyID8gXCJQTVwiIDogXCJQTVwiLFxuICAgICAgICBcIlBcIjogZGF0ZURldGFpbHMuaG91cnMyNCA+IDEyID8gXCJQTVwiIDogXCJBTVwiLFxuICAgICAgICBcInBwXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQgPiAxMiA/IFwicG1cIiA6IFwiYW1cIixcbiAgICAgICAgXCJwXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQgPiAxMiA/IFwicG1cIiA6IFwiYW1cIixcbiAgICAgICAgLy8gRGF5IG9mIFllYXJcbiAgICAgICAgXCJKelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuZGF5T2ZZZWFyKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMuZGF5T2ZZZWFyIDogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICBcIkpzXCI6IGRhdGVEZXRhaWxzLmRheU9mWWVhcixcbiAgICAgICAgXCJKbFwiOiBkYXRlRGV0YWlscy5kYXlPZlllYXIsXG4gICAgICAgIFwiSmRcIjogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICBcIkpcIjogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICAvLyBEYXkgT2YgV2VlayBcbiAgICAgICAgXCJXelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuZGF5T2ZXZWVrKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMuZGF5T2ZXZWVrIDogZGF0ZURldGFpbHMuZGF5T2ZXZWVrLFxuICAgICAgICBcIldzXCI6IGRhdGVEZXRhaWxzLmRheU9mV2VlayxcbiAgICAgICAgXCJXbFwiOiBkYXRlRGV0YWlscy5kYXlPZldlZWssXG4gICAgICAgIFwiV3BcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5kYXlPZldlZWspLFxuICAgICAgICBcIldkXCI6IGRhdGVEZXRhaWxzLmRheU9mV2VlayxcbiAgICAgICAgXCJXXCI6IGRhdGVEZXRhaWxzLmRheU9mV2Vla1xuICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBEYXkgbnVtYmVyIHdpdGhpbiB0aGUgeWVhciAoMS0zNjYpLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkYXRlIGRhdGUgYXMgYSBzdHJpbmdcbiAgICAgKiBcbiAgICAgKiBAcmV0dXJucyB7TnVtYmVyfVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX2dldERheU9mWWVhclwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfZ2V0RGF5T2ZZZWFyKGRhdGUpIHtcbiAgICAgIHZhciBub3cgPSBEYXRlLnBhcnNlKGRhdGUpO1xuICAgICAgaWYgKCEobm93IGluc3RhbmNlb2YgRGF0ZSkpIG5vdyA9IG5ldyBEYXRlKGRhdGUpO1xuICAgICAgdmFyIHN0YXJ0ID0gbmV3IERhdGUobm93LmdldEZ1bGxZZWFyKCksIDAsIDApO1xuICAgICAgdmFyIGRpZmYgPSBub3cgLSBzdGFydCArIChzdGFydC5nZXRUaW1lem9uZU9mZnNldCgpIC0gbm93LmdldFRpbWV6b25lT2Zmc2V0KCkpICogNjAgKiAxMDAwO1xuICAgICAgdmFyIG9uZURheSA9IDEwMDAgKiA2MCAqIDYwICogMjQ7XG4gICAgICB2YXIgZGF5ID0gTWF0aC5mbG9vcihkaWZmIC8gb25lRGF5KTtcbiAgICAgIHJldHVybiBkYXk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIERhdGVNYXNrO1xufSgpO1xuXG5leHBvcnRzLmRlZmF1bHQgPSBEYXRlTWFzaztcblxuLyoqKi8gfSksXG4vKiAxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICB2YWx1ZTogdHJ1ZVxufSk7XG5leHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGJiai1tYXNrcyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKiBcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKiogXG4gKiBOdW1iZXJNYXNrXG4gKiBcbiAqIEhhbmRsZSBCQmogbnVtYmVycyBtYXNraW5nIFxuICogXG4gKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBOdW1iZXJNYXNrID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gTnVtYmVyTWFzaygpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgTnVtYmVyTWFzayk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoTnVtYmVyTWFzaywgbnVsbCwgW3tcbiAgICBrZXk6IFwibWFza1wiLFxuXG4gICAgLyoqXG4gICAgICogTWFzayB0aGUgZ2l2ZW4gbnVtYmVyIHdpdGggdGhlIGdpdmVuIG1hc2sgYWNjb3JkaW5nIHRvIEJCaiBydWxlc1xuICAgICAqIFxuICAgICAqIEBwYXJhbSB7TnVtYmVyfSBudW1iZXIgdGhlIG51bWJlciB0byBmb3JtYXRcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbWFzayB0aGUgbWFzayB0byB1c2UgZm9yIGZvcm1hdHRpbmdcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZ3JvdXBpbmdTZXBhcmF0b3IgYSBjaGFyIHdoaWNoIHdpbGwgYmUgdXNlZCBhcyBhIGdyb3VwaW5nIHNlcGFyYXRvclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkZWNpbWFsU2VwYXJhdG9yIGEgY2hhciB3aGljaCB3aWxsIGJlIHVzZWQgYXMgYSBkZWNpbWFsIHNlcGFyYXRvclxuICAgICAqIFxuICAgICAqIEByZXR1cm5zIHtTdHJpbmd9IHRoZSBtYXNrZWQgbnVtYmVyXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIG1hc2sobnVtYmVyLCBfbWFzaykge1xuICAgICAgdmFyIGdyb3VwaW5nU2VwYXJhdG9yID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiAnLCc7XG4gICAgICB2YXIgZGVjaW1hbFNlcGFyYXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAzICYmIGFyZ3VtZW50c1szXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzNdIDogJy4nO1xuICAgICAgdmFyIG1hc2tMZW5ndGggPSBfbWFzay5sZW5ndGg7XG4gICAgICBpZiAoMCA9PT0gbWFza0xlbmd0aCkgcmV0dXJuIG51bWJlcjsgLy8gR2V0IG1hZ25pdHVkZSBhbmQgcHJlY2lzaW9uIG9mIE1BU0tcblxuICAgICAgdmFyIG1hc2tCZWZvcmVEZWNpbWFsID0gMDtcbiAgICAgIHZhciBtYXNrQWZ0ZXJEZWNpbWFsID0gMDtcbiAgICAgIHZhciBmb3VuZERlY2ltYWwgPSBmYWxzZTtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXNrTGVuZ3RoOyArK2kpIHtcbiAgICAgICAgdmFyIG0gPSBfbWFzay5jaGFyQXQoaSk7XG5cbiAgICAgICAgaWYgKG0gPT0gJzAnIHx8IG0gPT0gJyMnKSB7XG4gICAgICAgICAgaWYgKGZvdW5kRGVjaW1hbCkgKyttYXNrQWZ0ZXJEZWNpbWFsO2Vsc2UgKyttYXNrQmVmb3JlRGVjaW1hbDtcbiAgICAgICAgfSBlbHNlIGlmIChtID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIG51bSA9IE51bWJlck1hc2suX3JvdW5kKG51bWJlciwgbWFza0FmdGVyRGVjaW1hbCk7XG5cbiAgICAgIHZhciBkaWdpdHMgPSBOdW1iZXJNYXNrLl90b0NoYXJBcnJheShudW0pOyAvLyBHZXQgbWFnbml0dWRlIGFuZCBwcmVjaXNpb24gb2YgTlVNQkVSXG5cblxuICAgICAgdmFyIG51bUxlbiA9IGRpZ2l0cy5sZW5ndGg7XG4gICAgICB2YXIgbnVtQmVmb3JlRGVjaW1hbCA9IDA7XG4gICAgICB2YXIgbnVtQWZ0ZXJEZWNpbWFsID0gMDtcbiAgICAgIGZvdW5kRGVjaW1hbCA9IGZhbHNlO1xuXG4gICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgbnVtTGVuOyBfaSsrKSB7XG4gICAgICAgIGlmIChkaWdpdHNbX2ldID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtlbHNlIHtcbiAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSArK251bUFmdGVyRGVjaW1hbDtlbHNlICsrbnVtQmVmb3JlRGVjaW1hbDtcbiAgICAgICAgfVxuICAgICAgfSAvLyBhbHdheXMgaWdub3JlIG1hc2sgb3ZlcmZsb3dcblxuXG4gICAgICBpZiAobnVtQmVmb3JlRGVjaW1hbCA+IG1hc2tCZWZvcmVEZWNpbWFsKSByZXR1cm4gbnVtYmVyLnRvU3RyaW5nKCk7IC8vIHJvdW5kIGlmIG1hc2sgaXMgZm9yIGEgbG93ZXIgcHJlY2lzaW9uIG51bWJlclxuXG4gICAgICBpZiAobnVtQWZ0ZXJEZWNpbWFsID4gbWFza0FmdGVyRGVjaW1hbCkge1xuICAgICAgICBudW0gPSBOdW1iZXJNYXNrLl9yb3VuZChudW0sIG1hc2tBZnRlckRlY2ltYWwpO1xuICAgICAgICBkaWdpdHMgPSBOdW1iZXJNYXNrLl90b0NoYXJBcnJheShudW0pO1xuICAgICAgICBudW1MZW4gPSBkaWdpdHMubGVuZ3RoOyAvLyBHZXQgbmV3IG1hZ25pdHVkZSBhbmQgcHJlY2lzaW9uIG9mIE5VTUJFUlxuXG4gICAgICAgIG51bUJlZm9yZURlY2ltYWwgPSAwO1xuICAgICAgICBudW1BZnRlckRlY2ltYWwgPSAwO1xuICAgICAgICBmb3VuZERlY2ltYWwgPSBmYWxzZTtcblxuICAgICAgICBmb3IgKHZhciBfaTIgPSAwOyBfaTIgPCBudW1MZW47IF9pMisrKSB7XG4gICAgICAgICAgaWYgKGRpZ2l0c1tfaTJdID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtlbHNlIHtcbiAgICAgICAgICAgIGlmIChmb3VuZERlY2ltYWwpICsrbnVtQWZ0ZXJEZWNpbWFsO2Vsc2UgKytudW1CZWZvcmVEZWNpbWFsO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyBhbHdheXMgaWdub3JlIG1hc2sgb3ZlcmZsb3dcblxuXG4gICAgICAgIGlmIChudW1CZWZvcmVEZWNpbWFsID4gbWFza0JlZm9yZURlY2ltYWwpIHtcbiAgICAgICAgICByZXR1cm4gbnVtYmVyLnRvU3RyaW5nKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdmFyIGlzTmVnYXRpdmUgPSBOdW1iZXJNYXNrLl9nZXRTaWduKG51bSkgPT09IC0xO1xuICAgICAgdmFyIGVtaXREZWNpbWFsID0gbnVtTGVuID4gMCB8fCBfbWFzay5pbmRleE9mKCcwJykgPj0gMDtcbiAgICAgIHZhciBmb3VuZFplcm8gPSBmYWxzZTtcbiAgICAgIHZhciBjdXJyZW5jeSA9IGZhbHNlO1xuICAgICAgdmFyIGJ1ZmZlciA9ICcnO1xuICAgICAgZm91bmREZWNpbWFsID0gZmFsc2U7XG5cbiAgICAgIGZvciAodmFyIG51bVBvcyA9IDAsIG1hc2tQb3MgPSAwOyBtYXNrUG9zIDwgbWFza0xlbmd0aDsgbWFza1BvcysrKSB7XG4gICAgICAgIHZhciBfbSA9IF9tYXNrLmNoYXJBdChtYXNrUG9zKTtcblxuICAgICAgICBzd2l0Y2ggKF9tKSB7XG4gICAgICAgICAgY2FzZSAnMCc6XG4gICAgICAgICAgICAtLW1hc2tCZWZvcmVEZWNpbWFsO1xuXG4gICAgICAgICAgICBpZiAobWFza0JlZm9yZURlY2ltYWwgPCBudW1CZWZvcmVEZWNpbWFsICYmIG51bVBvcyA8IG51bUxlbikge1xuICAgICAgICAgICAgICBidWZmZXIgKz0gZGlnaXRzW251bVBvc107XG4gICAgICAgICAgICAgICsrbnVtUG9zO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgYnVmZmVyICs9ICcwJztcbiAgICAgICAgICAgICAgZm91bmRaZXJvID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICcjJzpcbiAgICAgICAgICAgIC0tbWFza0JlZm9yZURlY2ltYWw7XG5cbiAgICAgICAgICAgIGlmIChtYXNrQmVmb3JlRGVjaW1hbCA8IG51bUJlZm9yZURlY2ltYWwgJiYgbnVtUG9zIDwgbnVtTGVuKSB7XG4gICAgICAgICAgICAgIGJ1ZmZlciArPSBkaWdpdHNbbnVtUG9zXTtcbiAgICAgICAgICAgICAgKytudW1Qb3M7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSBidWZmZXIgKz0gJzAnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJywnOlxuICAgICAgICAgICAgaWYgKGZvdW5kWmVybyB8fCBudW1Qb3MgPiAwKSBidWZmZXIgKz0gZ3JvdXBpbmdTZXBhcmF0b3I7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJy0nOlxuICAgICAgICAgIGNhc2UgJygnOlxuICAgICAgICAgIGNhc2UgJyknOlxuICAgICAgICAgICAgaWYgKGlzTmVnYXRpdmUpIGJ1ZmZlciArPSBfbTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnKyc6XG4gICAgICAgICAgICBidWZmZXIgKz0gaXNOZWdhdGl2ZSA/ICctJyA6ICcrJztcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnLic6XG4gICAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSBidWZmZXIgKz0gX207ZWxzZSB7XG4gICAgICAgICAgICAgIGlmIChlbWl0RGVjaW1hbCkgYnVmZmVyICs9IGRlY2ltYWxTZXBhcmF0b3I7XG4gICAgICAgICAgICAgIGZvdW5kRGVjaW1hbCA9IHRydWU7XG4gICAgICAgICAgICAgICsrbnVtUG9zO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdDJzpcbiAgICAgICAgICAgIGlmIChtYXNrUG9zIDwgbWFza0xlbmd0aCAtIDEgJiYgX21hc2suY2hhckF0KG1hc2tQb3MgKyAxKSA9PSAnUicpIHtcbiAgICAgICAgICAgICAgaWYgKGlzTmVnYXRpdmUpIGJ1ZmZlciArPSAnQ1InO1xuICAgICAgICAgICAgICArK21hc2tQb3M7XG4gICAgICAgICAgICB9IGVsc2UgYnVmZmVyICs9IF9tO1xuXG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ0QnOlxuICAgICAgICAgICAgaWYgKG1hc2tQb3MgPCBtYXNrTGVuZ3RoIC0gMSAmJiBwX21hc2suY2hhckF0KG1hc2tQb3MgKyAxKSA9PSAnUicpIHtcbiAgICAgICAgICAgICAgYnVmZmVyICs9IGlzTmVnYXRpdmUgPyBcIkNSXCIgOiBcIkRSXCI7XG4gICAgICAgICAgICAgICsrbWFza1BvcztcbiAgICAgICAgICAgIH0gZWxzZSBidWZmZXIgKz0gX207XG5cbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnQic6XG4gICAgICAgICAgICBidWZmZXIgKz0gJyAnO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgYnVmZmVyICs9IF9tO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiX3NoaWZ0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9zaGlmdChudW1iZXIsIHByZWNpc2lvbiwgcmV2ZXJzZVNoaWZ0KSB7XG4gICAgICBpZiAocmV2ZXJzZVNoaWZ0KSBwcmVjaXNpb24gPSAtcHJlY2lzaW9uO1xuICAgICAgdmFyIG51bUFycmF5ID0gKFwiXCIgKyBudW1iZXIpLnNwbGl0KFwiZVwiKTtcbiAgICAgIHJldHVybiArKG51bUFycmF5WzBdICsgXCJlXCIgKyAobnVtQXJyYXlbMV0gPyArbnVtQXJyYXlbMV0gKyBwcmVjaXNpb24gOiBwcmVjaXNpb24pKTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiX3JvdW5kXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9yb3VuZChudW1iZXIsIHByZWNpc2lvbikge1xuICAgICAgcmV0dXJuIE51bWJlck1hc2suX3NoaWZ0KE1hdGgucm91bmQoTnVtYmVyTWFzay5fc2hpZnQobnVtYmVyLCBwcmVjaXNpb24sIGZhbHNlKSksIHByZWNpc2lvbiwgdHJ1ZSk7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIl90b0NoYXJBcnJheVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfdG9DaGFyQXJyYXkobnVtYmVyKSB7XG4gICAgICB2YXIgc2lnbnVtID0gTnVtYmVyTWFzay5fZ2V0U2lnbihudW1iZXIpO1xuXG4gICAgICB2YXIgY2hhcnMgPSBbXTtcblxuICAgICAgaWYgKHNpZ251bSAhPT0gMCkge1xuICAgICAgICB2YXIgc3RyaW5nID0gc2lnbnVtIDwgMCA/IFwiXCIuY29uY2F0KC0xICogbnVtYmVyLnRvU3RyaW5nKCkpIDogbnVtYmVyLnRvU3RyaW5nKCk7XG4gICAgICAgIGlmIChzdHJpbmcubGVuZ3RoID4gMSAmJiBzdHJpbmcuY2hhckF0KDApID09ICcwJykgc3RyaW5nID0gc3RyaW5nLnN1YnN0cmluZygxKTsgLy8gVGhlIHN0cmluZyBjb250YWlucyBvbmx5IFswLTldIGFuZCAnLidcblxuICAgICAgICBjaGFycyA9IHN0cmluZy5zcGxpdCgnJyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGFycztcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgc2lnbiBvZiBhIG51bWJlclxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7TnVtYmVyfSB4IG51bWJlclxuICAgICAqIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIHJlcHJlc2VudGluZyB0aGUgc2lnbiBvZiB0aGUgZ2l2ZW4gYXJndW1lbnQuIFxuICAgICAqICAgICAgICAgICAgICAgICAgIElmIHRoZSBhcmd1bWVudCBpcyBhIHBvc2l0aXZlIG51bWJlciwgbmVnYXRpdmUgbnVtYmVyLCBwb3NpdGl2ZSB6ZXJvIFxuICAgICAqICAgICAgICAgICAgICAgICAgIG9yIG5lZ2F0aXZlIHplcm8sIHRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiAxLCAtMSwgMCBvciAtMCByZXNwZWN0aXZlbHkuXG4gICAgICogICAgICAgICAgICAgICAgICAgT3RoZXJ3aXNlLCBOYU4gaXMgcmV0dXJuZWQuXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfZ2V0U2lnblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfZ2V0U2lnbih4KSB7XG4gICAgICByZXR1cm4gKHggPiAwKSAtICh4IDwgMCkgfHwgK3g7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIE51bWJlck1hc2s7XG59KCk7XG5cbmV4cG9ydHMuZGVmYXVsdCA9IE51bWJlck1hc2s7XG5cbi8qKiovIH0pLFxuLyogMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcblxuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiRGF0ZU1hc2tcIiwge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICByZXR1cm4gX0RhdGVNYXNrLmRlZmF1bHQ7XG4gIH1cbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiTnVtYmVyTWFza1wiLCB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgIHJldHVybiBfTnVtYmVyTWFzay5kZWZhdWx0O1xuICB9XG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIlR5cGVzXCIsIHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgcmV0dXJuIF9UeXBlcy5kZWZhdWx0O1xuICB9XG59KTtcblxudmFyIF9EYXRlTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygwKSk7XG5cbnZhciBfTnVtYmVyTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygxKSk7XG5cbnZhciBfVHlwZXMgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9fd2VicGFja19yZXF1aXJlX18oMykpO1xuXG5mdW5jdGlvbiBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KG9iaikgeyByZXR1cm4gb2JqICYmIG9iai5fX2VzTW9kdWxlID8gb2JqIDogeyBkZWZhdWx0OiBvYmogfTsgfVxuXG4vKioqLyB9KSxcbi8qIDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gIHZhbHVlOiB0cnVlXG59KTtcbmV4cG9ydHMuZGVmYXVsdCA9IHZvaWQgMDtcblxudmFyIF9OdW1iZXJNYXNrID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfX3dlYnBhY2tfcmVxdWlyZV9fKDEpKTtcblxudmFyIF9EYXRlTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygwKSk7XG5cbmZ1bmN0aW9uIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQob2JqKSB7IHJldHVybiBvYmogJiYgb2JqLl9fZXNNb2R1bGUgPyBvYmogOiB7IGRlZmF1bHQ6IG9iaiB9OyB9XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLyoqIFxuICogVHlwZXNcbiAqIFxuICogSGFuZGxlIEJCaiBtYXNraW5nIFxuICogXG4gKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBUeXBlcyA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFR5cGVzKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBUeXBlcyk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoVHlwZXMsIG51bGwsIFt7XG4gICAga2V5OiBcIm51bWJlclwiLFxuXG4gICAgLyoqXG4gICAgICogTWFzayBhIG51bWJlciBhY2NvcmRpbmcgdG8gYmJqIG1hc2tpbmcgcnVsZXMgXG4gICAgICogXG4gICAgICogQHBhcmFtIHtOdW1iZXJ9IG51bWJlciB0aGUgbnVtYmVyIHRvIGZvcm1hdFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtYXNrIHRoZSBtYXNrIHRvIHVzZSBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZ3JvdXBpbmdTZXBhcmF0b3IgYSBjaGFyIHdoaWNoIHdpbGwgYmUgdXNlZCBhcyBhIGdyb3VwaW5nIHNlcGFyYXRvclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkZWNpbWFsU2VwYXJhdG9yIGEgY2hhciB3aGljaCB3aWxsIGJlIHVzZWQgYXMgYSBkZWNpbWFsIHNlcGFyYXRvclxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gbnVtYmVyIG1hc2tlZCB3aXRoIHRoZSBnaXZlbiBtYXNrXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIG51bWJlcihfbnVtYmVyLCBtYXNrKSB7XG4gICAgICB2YXIgZ3JvdXBpbmdTZXBhcmF0b3IgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6ICcsJztcbiAgICAgIHZhciBkZWNpbWFsU2VwYXJhdG9yID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgJiYgYXJndW1lbnRzWzNdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbM10gOiAnLic7XG4gICAgICByZXR1cm4gX051bWJlck1hc2suZGVmYXVsdC5tYXNrKF9udW1iZXIsIG1hc2ssIGdyb3VwaW5nU2VwYXJhdG9yLCBkZWNpbWFsU2VwYXJhdG9yKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogTWFzayBhIGRhdGUgYWNjb3JkaW5nIHRvIGJiaiBtYXNraW5nIHJ1bGVzIFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBudW1iZXIgdGhlIGRhdGUgdG8gZm9ybWF0XG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG1hc2sgdGhlIG1hc2sgdG8gdXNlIFxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gbnVtYmVyIG1hc2tlZCB3aXRoIHRoZSBnaXZlbiBtYXNrXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJkYXRlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGRhdGUoX2RhdGUsIG1hc2spIHtcbiAgICAgIHJldHVybiBfRGF0ZU1hc2suZGVmYXVsdC5tYXNrKF9kYXRlLCBtYXNrKTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gVHlwZXM7XG59KCk7XG5cbmV4cG9ydHMuZGVmYXVsdCA9IFR5cGVzO1xuXG4vKioqLyB9KVxuLyoqKioqKi8gXSk7XG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJiai1tYXNrcy5qcy5tYXBcblxuLyoqKi8gfSksXG4vKiAyOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG4vKiBmbGF0cGlja3IgdjQuNS4wLCBAbGljZW5zZSBNSVQgKi9cbihmdW5jdGlvbiAoZ2xvYmFsLCBmYWN0b3J5KSB7XG4gICAgIHRydWUgPyBtb2R1bGUuZXhwb3J0cyA9IGZhY3RvcnkoKSA6XG4gICAgdHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKGZhY3RvcnkpIDpcbiAgICAoZ2xvYmFsLmZsYXRwaWNrciA9IGZhY3RvcnkoKSk7XG59KHRoaXMsIChmdW5jdGlvbiAoKSB7ICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBwYWQgPSBmdW5jdGlvbiBwYWQobnVtYmVyKSB7XG4gICAgICByZXR1cm4gKFwiMFwiICsgbnVtYmVyKS5zbGljZSgtMik7XG4gICAgfTtcbiAgICB2YXIgaW50ID0gZnVuY3Rpb24gaW50KGJvb2wpIHtcbiAgICAgIHJldHVybiBib29sID09PSB0cnVlID8gMSA6IDA7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBkZWJvdW5jZShmdW5jLCB3YWl0LCBpbW1lZGlhdGUpIHtcbiAgICAgIGlmIChpbW1lZGlhdGUgPT09IHZvaWQgMCkge1xuICAgICAgICBpbW1lZGlhdGUgPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgdmFyIHRpbWVvdXQ7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY29udGV4dCA9IHRoaXMsXG4gICAgICAgICAgICBhcmdzID0gYXJndW1lbnRzO1xuICAgICAgICB0aW1lb3V0ICE9PSBudWxsICYmIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcbiAgICAgICAgdGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICB0aW1lb3V0ID0gbnVsbDtcbiAgICAgICAgICBpZiAoIWltbWVkaWF0ZSkgZnVuYy5hcHBseShjb250ZXh0LCBhcmdzKTtcbiAgICAgICAgfSwgd2FpdCk7XG4gICAgICAgIGlmIChpbW1lZGlhdGUgJiYgIXRpbWVvdXQpIGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XG4gICAgICB9O1xuICAgIH1cbiAgICB2YXIgYXJyYXlpZnkgPSBmdW5jdGlvbiBhcnJheWlmeShvYmopIHtcbiAgICAgIHJldHVybiBvYmogaW5zdGFuY2VvZiBBcnJheSA/IG9iaiA6IFtvYmpdO1xuICAgIH07XG5cbiAgICB2YXIgZG9fbm90aGluZyA9IGZ1bmN0aW9uIGRvX25vdGhpbmcoKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH07XG5cbiAgICB2YXIgbW9udGhUb1N0ciA9IGZ1bmN0aW9uIG1vbnRoVG9TdHIobW9udGhOdW1iZXIsIHNob3J0aGFuZCwgbG9jYWxlKSB7XG4gICAgICByZXR1cm4gbG9jYWxlLm1vbnRoc1tzaG9ydGhhbmQgPyBcInNob3J0aGFuZFwiIDogXCJsb25naGFuZFwiXVttb250aE51bWJlcl07XG4gICAgfTtcbiAgICB2YXIgcmV2Rm9ybWF0ID0ge1xuICAgICAgRDogZG9fbm90aGluZyxcbiAgICAgIEY6IGZ1bmN0aW9uIEYoZGF0ZU9iaiwgbW9udGhOYW1lLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNb250aChsb2NhbGUubW9udGhzLmxvbmdoYW5kLmluZGV4T2YobW9udGhOYW1lKSk7XG4gICAgICB9LFxuICAgICAgRzogZnVuY3Rpb24gRyhkYXRlT2JqLCBob3VyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0SG91cnMocGFyc2VGbG9hdChob3VyKSk7XG4gICAgICB9LFxuICAgICAgSDogZnVuY3Rpb24gSChkYXRlT2JqLCBob3VyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0SG91cnMocGFyc2VGbG9hdChob3VyKSk7XG4gICAgICB9LFxuICAgICAgSjogZnVuY3Rpb24gSihkYXRlT2JqLCBkYXkpIHtcbiAgICAgICAgZGF0ZU9iai5zZXREYXRlKHBhcnNlRmxvYXQoZGF5KSk7XG4gICAgICB9LFxuICAgICAgSzogZnVuY3Rpb24gSyhkYXRlT2JqLCBhbVBNLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRIb3VycyhkYXRlT2JqLmdldEhvdXJzKCkgJSAxMiArIDEyICogaW50KG5ldyBSZWdFeHAobG9jYWxlLmFtUE1bMV0sIFwiaVwiKS50ZXN0KGFtUE0pKSk7XG4gICAgICB9LFxuICAgICAgTTogZnVuY3Rpb24gTShkYXRlT2JqLCBzaG9ydE1vbnRoLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNb250aChsb2NhbGUubW9udGhzLnNob3J0aGFuZC5pbmRleE9mKHNob3J0TW9udGgpKTtcbiAgICAgIH0sXG4gICAgICBTOiBmdW5jdGlvbiBTKGRhdGVPYmosIHNlY29uZHMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRTZWNvbmRzKHBhcnNlRmxvYXQoc2Vjb25kcykpO1xuICAgICAgfSxcbiAgICAgIFU6IGZ1bmN0aW9uIFUoXywgdW5peFNlY29uZHMpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHBhcnNlRmxvYXQodW5peFNlY29uZHMpICogMTAwMCk7XG4gICAgICB9LFxuICAgICAgVzogZnVuY3Rpb24gVyhkYXRlT2JqLCB3ZWVrTnVtKSB7XG4gICAgICAgIHZhciB3ZWVrTnVtYmVyID0gcGFyc2VJbnQod2Vla051bSk7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlT2JqLmdldEZ1bGxZZWFyKCksIDAsIDIgKyAod2Vla051bWJlciAtIDEpICogNywgMCwgMCwgMCwgMCk7XG4gICAgICB9LFxuICAgICAgWTogZnVuY3Rpb24gWShkYXRlT2JqLCB5ZWFyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0RnVsbFllYXIocGFyc2VGbG9hdCh5ZWFyKSk7XG4gICAgICB9LFxuICAgICAgWjogZnVuY3Rpb24gWihfLCBJU09EYXRlKSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShJU09EYXRlKTtcbiAgICAgIH0sXG4gICAgICBkOiBmdW5jdGlvbiBkKGRhdGVPYmosIGRheSkge1xuICAgICAgICBkYXRlT2JqLnNldERhdGUocGFyc2VGbG9hdChkYXkpKTtcbiAgICAgIH0sXG4gICAgICBoOiBmdW5jdGlvbiBoKGRhdGVPYmosIGhvdXIpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRIb3VycyhwYXJzZUZsb2F0KGhvdXIpKTtcbiAgICAgIH0sXG4gICAgICBpOiBmdW5jdGlvbiBpKGRhdGVPYmosIG1pbnV0ZXMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNaW51dGVzKHBhcnNlRmxvYXQobWludXRlcykpO1xuICAgICAgfSxcbiAgICAgIGo6IGZ1bmN0aW9uIGooZGF0ZU9iaiwgZGF5KSB7XG4gICAgICAgIGRhdGVPYmouc2V0RGF0ZShwYXJzZUZsb2F0KGRheSkpO1xuICAgICAgfSxcbiAgICAgIGw6IGRvX25vdGhpbmcsXG4gICAgICBtOiBmdW5jdGlvbiBtKGRhdGVPYmosIG1vbnRoKSB7XG4gICAgICAgIGRhdGVPYmouc2V0TW9udGgocGFyc2VGbG9hdChtb250aCkgLSAxKTtcbiAgICAgIH0sXG4gICAgICBuOiBmdW5jdGlvbiBuKGRhdGVPYmosIG1vbnRoKSB7XG4gICAgICAgIGRhdGVPYmouc2V0TW9udGgocGFyc2VGbG9hdChtb250aCkgLSAxKTtcbiAgICAgIH0sXG4gICAgICBzOiBmdW5jdGlvbiBzKGRhdGVPYmosIHNlY29uZHMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRTZWNvbmRzKHBhcnNlRmxvYXQoc2Vjb25kcykpO1xuICAgICAgfSxcbiAgICAgIHc6IGRvX25vdGhpbmcsXG4gICAgICB5OiBmdW5jdGlvbiB5KGRhdGVPYmosIHllYXIpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRGdWxsWWVhcigyMDAwICsgcGFyc2VGbG9hdCh5ZWFyKSk7XG4gICAgICB9XG4gICAgfTtcbiAgICB2YXIgdG9rZW5SZWdleCA9IHtcbiAgICAgIEQ6IFwiKFxcXFx3KylcIixcbiAgICAgIEY6IFwiKFxcXFx3KylcIixcbiAgICAgIEc6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBIOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgSjogXCIoXFxcXGRcXFxcZHxcXFxcZClcXFxcdytcIixcbiAgICAgIEs6IFwiXCIsXG4gICAgICBNOiBcIihcXFxcdyspXCIsXG4gICAgICBTOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgVTogXCIoLispXCIsXG4gICAgICBXOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgWTogXCIoXFxcXGR7NH0pXCIsXG4gICAgICBaOiBcIiguKylcIixcbiAgICAgIGQ6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBoOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgaTogXCIoXFxcXGRcXFxcZHxcXFxcZClcIixcbiAgICAgIGo6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBsOiBcIihcXFxcdyspXCIsXG4gICAgICBtOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgbjogXCIoXFxcXGRcXFxcZHxcXFxcZClcIixcbiAgICAgIHM6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICB3OiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgeTogXCIoXFxcXGR7Mn0pXCJcbiAgICB9O1xuICAgIHZhciBmb3JtYXRzID0ge1xuICAgICAgWjogZnVuY3Rpb24gWihkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICB9LFxuICAgICAgRDogZnVuY3Rpb24gRChkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZS53ZWVrZGF5cy5zaG9ydGhhbmRbZm9ybWF0cy53KGRhdGUsIGxvY2FsZSwgb3B0aW9ucyldO1xuICAgICAgfSxcbiAgICAgIEY6IGZ1bmN0aW9uIEYoZGF0ZSwgbG9jYWxlLCBvcHRpb25zKSB7XG4gICAgICAgIHJldHVybiBtb250aFRvU3RyKGZvcm1hdHMubihkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIC0gMSwgZmFsc2UsIGxvY2FsZSk7XG4gICAgICB9LFxuICAgICAgRzogZnVuY3Rpb24gRyhkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHBhZChmb3JtYXRzLmgoZGF0ZSwgbG9jYWxlLCBvcHRpb25zKSk7XG4gICAgICB9LFxuICAgICAgSDogZnVuY3Rpb24gSChkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXRIb3VycygpKTtcbiAgICAgIH0sXG4gICAgICBKOiBmdW5jdGlvbiBKKGRhdGUsIGxvY2FsZSkge1xuICAgICAgICByZXR1cm4gbG9jYWxlLm9yZGluYWwgIT09IHVuZGVmaW5lZCA/IGRhdGUuZ2V0RGF0ZSgpICsgbG9jYWxlLm9yZGluYWwoZGF0ZS5nZXREYXRlKCkpIDogZGF0ZS5nZXREYXRlKCk7XG4gICAgICB9LFxuICAgICAgSzogZnVuY3Rpb24gSyhkYXRlLCBsb2NhbGUpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZS5hbVBNW2ludChkYXRlLmdldEhvdXJzKCkgPiAxMSldO1xuICAgICAgfSxcbiAgICAgIE06IGZ1bmN0aW9uIE0oZGF0ZSwgbG9jYWxlKSB7XG4gICAgICAgIHJldHVybiBtb250aFRvU3RyKGRhdGUuZ2V0TW9udGgoKSwgdHJ1ZSwgbG9jYWxlKTtcbiAgICAgIH0sXG4gICAgICBTOiBmdW5jdGlvbiBTKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIHBhZChkYXRlLmdldFNlY29uZHMoKSk7XG4gICAgICB9LFxuICAgICAgVTogZnVuY3Rpb24gVShkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldFRpbWUoKSAvIDEwMDA7XG4gICAgICB9LFxuICAgICAgVzogZnVuY3Rpb24gVyhkYXRlLCBfLCBvcHRpb25zKSB7XG4gICAgICAgIHJldHVybiBvcHRpb25zLmdldFdlZWsoZGF0ZSk7XG4gICAgICB9LFxuICAgICAgWTogZnVuY3Rpb24gWShkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICB9LFxuICAgICAgZDogZnVuY3Rpb24gZChkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXREYXRlKCkpO1xuICAgICAgfSxcbiAgICAgIGg6IGZ1bmN0aW9uIGgoZGF0ZSkge1xuICAgICAgICByZXR1cm4gZGF0ZS5nZXRIb3VycygpICUgMTIgPyBkYXRlLmdldEhvdXJzKCkgJSAxMiA6IDEyO1xuICAgICAgfSxcbiAgICAgIGk6IGZ1bmN0aW9uIGkoZGF0ZSkge1xuICAgICAgICByZXR1cm4gcGFkKGRhdGUuZ2V0TWludXRlcygpKTtcbiAgICAgIH0sXG4gICAgICBqOiBmdW5jdGlvbiBqKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIGRhdGUuZ2V0RGF0ZSgpO1xuICAgICAgfSxcbiAgICAgIGw6IGZ1bmN0aW9uIGwoZGF0ZSwgbG9jYWxlKSB7XG4gICAgICAgIHJldHVybiBsb2NhbGUud2Vla2RheXMubG9uZ2hhbmRbZGF0ZS5nZXREYXkoKV07XG4gICAgICB9LFxuICAgICAgbTogZnVuY3Rpb24gbShkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXRNb250aCgpICsgMSk7XG4gICAgICB9LFxuICAgICAgbjogZnVuY3Rpb24gbihkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldE1vbnRoKCkgKyAxO1xuICAgICAgfSxcbiAgICAgIHM6IGZ1bmN0aW9uIHMoZGF0ZSkge1xuICAgICAgICByZXR1cm4gZGF0ZS5nZXRTZWNvbmRzKCk7XG4gICAgICB9LFxuICAgICAgdzogZnVuY3Rpb24gdyhkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldERheSgpO1xuICAgICAgfSxcbiAgICAgIHk6IGZ1bmN0aW9uIHkoZGF0ZSkge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGRhdGUuZ2V0RnVsbFllYXIoKSkuc3Vic3RyaW5nKDIpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgZW5nbGlzaCA9IHtcbiAgICAgIHdlZWtkYXlzOiB7XG4gICAgICAgIHNob3J0aGFuZDogW1wiU3VuXCIsIFwiTW9uXCIsIFwiVHVlXCIsIFwiV2VkXCIsIFwiVGh1XCIsIFwiRnJpXCIsIFwiU2F0XCJdLFxuICAgICAgICBsb25naGFuZDogW1wiU3VuZGF5XCIsIFwiTW9uZGF5XCIsIFwiVHVlc2RheVwiLCBcIldlZG5lc2RheVwiLCBcIlRodXJzZGF5XCIsIFwiRnJpZGF5XCIsIFwiU2F0dXJkYXlcIl1cbiAgICAgIH0sXG4gICAgICBtb250aHM6IHtcbiAgICAgICAgc2hvcnRoYW5kOiBbXCJKYW5cIiwgXCJGZWJcIiwgXCJNYXJcIiwgXCJBcHJcIiwgXCJNYXlcIiwgXCJKdW5cIiwgXCJKdWxcIiwgXCJBdWdcIiwgXCJTZXBcIiwgXCJPY3RcIiwgXCJOb3ZcIiwgXCJEZWNcIl0sXG4gICAgICAgIGxvbmdoYW5kOiBbXCJKYW51YXJ5XCIsIFwiRmVicnVhcnlcIiwgXCJNYXJjaFwiLCBcIkFwcmlsXCIsIFwiTWF5XCIsIFwiSnVuZVwiLCBcIkp1bHlcIiwgXCJBdWd1c3RcIiwgXCJTZXB0ZW1iZXJcIiwgXCJPY3RvYmVyXCIsIFwiTm92ZW1iZXJcIiwgXCJEZWNlbWJlclwiXVxuICAgICAgfSxcbiAgICAgIGRheXNJbk1vbnRoOiBbMzEsIDI4LCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMxLCAzMCwgMzEsIDMwLCAzMV0sXG4gICAgICBmaXJzdERheU9mV2VlazogMCxcbiAgICAgIG9yZGluYWw6IGZ1bmN0aW9uIG9yZGluYWwobnRoKSB7XG4gICAgICAgIHZhciBzID0gbnRoICUgMTAwO1xuICAgICAgICBpZiAocyA+IDMgJiYgcyA8IDIxKSByZXR1cm4gXCJ0aFwiO1xuXG4gICAgICAgIHN3aXRjaCAocyAlIDEwKSB7XG4gICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgcmV0dXJuIFwic3RcIjtcblxuICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgIHJldHVybiBcIm5kXCI7XG5cbiAgICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgICByZXR1cm4gXCJyZFwiO1xuXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBcInRoXCI7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICByYW5nZVNlcGFyYXRvcjogXCIgdG8gXCIsXG4gICAgICB3ZWVrQWJicmV2aWF0aW9uOiBcIldrXCIsXG4gICAgICBzY3JvbGxUaXRsZTogXCJTY3JvbGwgdG8gaW5jcmVtZW50XCIsXG4gICAgICB0b2dnbGVUaXRsZTogXCJDbGljayB0byB0b2dnbGVcIixcbiAgICAgIGFtUE06IFtcIkFNXCIsIFwiUE1cIl0sXG4gICAgICB5ZWFyQXJpYUxhYmVsOiBcIlllYXJcIlxuICAgIH07XG5cbiAgICB2YXIgY3JlYXRlRGF0ZUZvcm1hdHRlciA9IGZ1bmN0aW9uIGNyZWF0ZURhdGVGb3JtYXR0ZXIoX3JlZikge1xuICAgICAgdmFyIF9yZWYkY29uZmlnID0gX3JlZi5jb25maWcsXG4gICAgICAgICAgY29uZmlnID0gX3JlZiRjb25maWcgPT09IHZvaWQgMCA/IGRlZmF1bHRzIDogX3JlZiRjb25maWcsXG4gICAgICAgICAgX3JlZiRsMTBuID0gX3JlZi5sMTBuLFxuICAgICAgICAgIGwxMG4gPSBfcmVmJGwxMG4gPT09IHZvaWQgMCA/IGVuZ2xpc2ggOiBfcmVmJGwxMG47XG4gICAgICByZXR1cm4gZnVuY3Rpb24gKGRhdGVPYmosIGZybXQsIG92ZXJyaWRlTG9jYWxlKSB7XG4gICAgICAgIGlmIChjb25maWcuZm9ybWF0RGF0ZSAhPT0gdW5kZWZpbmVkKSByZXR1cm4gY29uZmlnLmZvcm1hdERhdGUoZGF0ZU9iaiwgZnJtdCk7XG4gICAgICAgIHZhciBsb2NhbGUgPSBvdmVycmlkZUxvY2FsZSB8fCBsMTBuO1xuICAgICAgICByZXR1cm4gZnJtdC5zcGxpdChcIlwiKS5tYXAoZnVuY3Rpb24gKGMsIGksIGFycikge1xuICAgICAgICAgIHJldHVybiBmb3JtYXRzW2NdICYmIGFycltpIC0gMV0gIT09IFwiXFxcXFwiID8gZm9ybWF0c1tjXShkYXRlT2JqLCBsb2NhbGUsIGNvbmZpZykgOiBjICE9PSBcIlxcXFxcIiA/IGMgOiBcIlwiO1xuICAgICAgICB9KS5qb2luKFwiXCIpO1xuICAgICAgfTtcbiAgICB9O1xuICAgIHZhciBjcmVhdGVEYXRlUGFyc2VyID0gZnVuY3Rpb24gY3JlYXRlRGF0ZVBhcnNlcihfcmVmMikge1xuICAgICAgdmFyIF9yZWYyJGNvbmZpZyA9IF9yZWYyLmNvbmZpZyxcbiAgICAgICAgICBjb25maWcgPSBfcmVmMiRjb25maWcgPT09IHZvaWQgMCA/IGRlZmF1bHRzIDogX3JlZjIkY29uZmlnLFxuICAgICAgICAgIF9yZWYyJGwxMG4gPSBfcmVmMi5sMTBuLFxuICAgICAgICAgIGwxMG4gPSBfcmVmMiRsMTBuID09PSB2b2lkIDAgPyBlbmdsaXNoIDogX3JlZjIkbDEwbjtcbiAgICAgIHJldHVybiBmdW5jdGlvbiAoZGF0ZSwgZ2l2ZW5Gb3JtYXQsIHRpbWVsZXNzKSB7XG4gICAgICAgIGlmIChkYXRlICE9PSAwICYmICFkYXRlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB2YXIgcGFyc2VkRGF0ZTtcbiAgICAgICAgdmFyIGRhdGVfb3JpZyA9IGRhdGU7XG4gICAgICAgIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSkgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtlbHNlIGlmICh0eXBlb2YgZGF0ZSAhPT0gXCJzdHJpbmdcIiAmJiBkYXRlLnRvRml4ZWQgIT09IHVuZGVmaW5lZCkgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKGRhdGUpO2Vsc2UgaWYgKHR5cGVvZiBkYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgdmFyIGZvcm1hdCA9IGdpdmVuRm9ybWF0IHx8IChjb25maWcgfHwgZGVmYXVsdHMpLmRhdGVGb3JtYXQ7XG4gICAgICAgICAgdmFyIGRhdGVzdHIgPSBTdHJpbmcoZGF0ZSkudHJpbSgpO1xuXG4gICAgICAgICAgaWYgKGRhdGVzdHIgPT09IFwidG9kYXlcIikge1xuICAgICAgICAgICAgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgICAgICB0aW1lbGVzcyA9IHRydWU7XG4gICAgICAgICAgfSBlbHNlIGlmICgvWiQvLnRlc3QoZGF0ZXN0cikgfHwgL0dNVCQvLnRlc3QoZGF0ZXN0cikpIHBhcnNlZERhdGUgPSBuZXcgRGF0ZShkYXRlKTtlbHNlIGlmIChjb25maWcgJiYgY29uZmlnLnBhcnNlRGF0ZSkgcGFyc2VkRGF0ZSA9IGNvbmZpZy5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlZERhdGUgPSAhY29uZmlnIHx8ICFjb25maWcubm9DYWxlbmRhciA/IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSwgMCwgMSwgMCwgMCwgMCwgMCkgOiBuZXcgRGF0ZShuZXcgRGF0ZSgpLnNldEhvdXJzKDAsIDAsIDAsIDApKTtcbiAgICAgICAgICAgIHZhciBtYXRjaGVkLFxuICAgICAgICAgICAgICAgIG9wcyA9IFtdO1xuXG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbWF0Y2hJbmRleCA9IDAsIHJlZ2V4U3RyID0gXCJcIjsgaSA8IGZvcm1hdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICB2YXIgdG9rZW4gPSBmb3JtYXRbaV07XG4gICAgICAgICAgICAgIHZhciBpc0JhY2tTbGFzaCA9IHRva2VuID09PSBcIlxcXFxcIjtcbiAgICAgICAgICAgICAgdmFyIGVzY2FwZWQgPSBmb3JtYXRbaSAtIDFdID09PSBcIlxcXFxcIiB8fCBpc0JhY2tTbGFzaDtcblxuICAgICAgICAgICAgICBpZiAodG9rZW5SZWdleFt0b2tlbl0gJiYgIWVzY2FwZWQpIHtcbiAgICAgICAgICAgICAgICByZWdleFN0ciArPSB0b2tlblJlZ2V4W3Rva2VuXTtcbiAgICAgICAgICAgICAgICB2YXIgbWF0Y2ggPSBuZXcgUmVnRXhwKHJlZ2V4U3RyKS5leGVjKGRhdGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG1hdGNoICYmIChtYXRjaGVkID0gdHJ1ZSkpIHtcbiAgICAgICAgICAgICAgICAgIG9wc1t0b2tlbiAhPT0gXCJZXCIgPyBcInB1c2hcIiA6IFwidW5zaGlmdFwiXSh7XG4gICAgICAgICAgICAgICAgICAgIGZuOiByZXZGb3JtYXRbdG9rZW5dLFxuICAgICAgICAgICAgICAgICAgICB2YWw6IG1hdGNoWysrbWF0Y2hJbmRleF1cbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIGlmICghaXNCYWNrU2xhc2gpIHJlZ2V4U3RyICs9IFwiLlwiO1xuXG4gICAgICAgICAgICAgIG9wcy5mb3JFYWNoKGZ1bmN0aW9uIChfcmVmMykge1xuICAgICAgICAgICAgICAgIHZhciBmbiA9IF9yZWYzLmZuLFxuICAgICAgICAgICAgICAgICAgICB2YWwgPSBfcmVmMy52YWw7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlZERhdGUgPSBmbihwYXJzZWREYXRlLCB2YWwsIGwxMG4pIHx8IHBhcnNlZERhdGU7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXJzZWREYXRlID0gbWF0Y2hlZCA/IHBhcnNlZERhdGUgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCEocGFyc2VkRGF0ZSBpbnN0YW5jZW9mIERhdGUgJiYgIWlzTmFOKHBhcnNlZERhdGUuZ2V0VGltZSgpKSkpIHtcbiAgICAgICAgICBjb25maWcuZXJyb3JIYW5kbGVyKG5ldyBFcnJvcihcIkludmFsaWQgZGF0ZSBwcm92aWRlZDogXCIgKyBkYXRlX29yaWcpKTtcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRpbWVsZXNzID09PSB0cnVlKSBwYXJzZWREYXRlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xuICAgICAgICByZXR1cm4gcGFyc2VkRGF0ZTtcbiAgICAgIH07XG4gICAgfTtcbiAgICBmdW5jdGlvbiBjb21wYXJlRGF0ZXMoZGF0ZTEsIGRhdGUyLCB0aW1lbGVzcykge1xuICAgICAgaWYgKHRpbWVsZXNzID09PSB2b2lkIDApIHtcbiAgICAgICAgdGltZWxlc3MgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAodGltZWxlc3MgIT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRUaW1lKCkpLnNldEhvdXJzKDAsIDAsIDAsIDApIC0gbmV3IERhdGUoZGF0ZTIuZ2V0VGltZSgpKS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRhdGUxLmdldFRpbWUoKSAtIGRhdGUyLmdldFRpbWUoKTtcbiAgICB9XG4gICAgdmFyIGdldFdlZWsgPSBmdW5jdGlvbiBnZXRXZWVrKGdpdmVuRGF0ZSkge1xuICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZShnaXZlbkRhdGUuZ2V0VGltZSgpKTtcbiAgICAgIGRhdGUuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG4gICAgICBkYXRlLnNldERhdGUoZGF0ZS5nZXREYXRlKCkgKyAzIC0gKGRhdGUuZ2V0RGF5KCkgKyA2KSAlIDcpO1xuICAgICAgdmFyIHdlZWsxID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCAwLCA0KTtcbiAgICAgIHJldHVybiAxICsgTWF0aC5yb3VuZCgoKGRhdGUuZ2V0VGltZSgpIC0gd2VlazEuZ2V0VGltZSgpKSAvIDg2NDAwMDAwIC0gMyArICh3ZWVrMS5nZXREYXkoKSArIDYpICUgNykgLyA3KTtcbiAgICB9O1xuICAgIHZhciBpc0JldHdlZW4gPSBmdW5jdGlvbiBpc0JldHdlZW4odHMsIHRzMSwgdHMyKSB7XG4gICAgICByZXR1cm4gdHMgPiBNYXRoLm1pbih0czEsIHRzMikgJiYgdHMgPCBNYXRoLm1heCh0czEsIHRzMik7XG4gICAgfTtcbiAgICB2YXIgZHVyYXRpb24gPSB7XG4gICAgICBEQVk6IDg2NDAwMDAwXG4gICAgfTtcblxuICAgIHZhciBkZWZhdWx0cyA9IHtcbiAgICAgIF9kaXNhYmxlOiBbXSxcbiAgICAgIF9lbmFibGU6IFtdLFxuICAgICAgYWxsb3dJbnB1dDogZmFsc2UsXG4gICAgICBhbHRGb3JtYXQ6IFwiRiBqLCBZXCIsXG4gICAgICBhbHRJbnB1dDogZmFsc2UsXG4gICAgICBhbHRJbnB1dENsYXNzOiBcImZvcm0tY29udHJvbCBpbnB1dFwiLFxuICAgICAgYW5pbWF0ZTogdHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIiAmJiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKFwiTVNJRVwiKSA9PT0gLTEsXG4gICAgICBhcmlhRGF0ZUZvcm1hdDogXCJGIGosIFlcIixcbiAgICAgIGNsaWNrT3BlbnM6IHRydWUsXG4gICAgICBjbG9zZU9uU2VsZWN0OiB0cnVlLFxuICAgICAgY29uanVuY3Rpb246IFwiLCBcIixcbiAgICAgIGRhdGVGb3JtYXQ6IFwiWS1tLWRcIixcbiAgICAgIGRlZmF1bHRIb3VyOiAxMixcbiAgICAgIGRlZmF1bHRNaW51dGU6IDAsXG4gICAgICBkZWZhdWx0U2Vjb25kczogMCxcbiAgICAgIGRpc2FibGU6IFtdLFxuICAgICAgZGlzYWJsZU1vYmlsZTogZmFsc2UsXG4gICAgICBlbmFibGU6IFtdLFxuICAgICAgZW5hYmxlU2Vjb25kczogZmFsc2UsXG4gICAgICBlbmFibGVUaW1lOiBmYWxzZSxcbiAgICAgIGVycm9ySGFuZGxlcjogZnVuY3Rpb24gZXJyb3JIYW5kbGVyKGVycikge1xuICAgICAgICByZXR1cm4gdHlwZW9mIGNvbnNvbGUgIT09IFwidW5kZWZpbmVkXCIgJiYgY29uc29sZS53YXJuKGVycik7XG4gICAgICB9LFxuICAgICAgZ2V0V2VlazogZ2V0V2VlayxcbiAgICAgIGhvdXJJbmNyZW1lbnQ6IDEsXG4gICAgICBpZ25vcmVkRm9jdXNFbGVtZW50czogW10sXG4gICAgICBpbmxpbmU6IGZhbHNlLFxuICAgICAgbG9jYWxlOiBcImRlZmF1bHRcIixcbiAgICAgIG1pbnV0ZUluY3JlbWVudDogNSxcbiAgICAgIG1vZGU6IFwic2luZ2xlXCIsXG4gICAgICBuZXh0QXJyb3c6IFwiPHN2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIHZpZXdCb3g9JzAgMCAxNyAxNyc+PGc+PC9nPjxwYXRoIGQ9J00xMy4yMDcgOC40NzJsLTcuODU0IDcuODU0LTAuNzA3LTAuNzA3IDcuMTQ2LTcuMTQ2LTcuMTQ2LTcuMTQ4IDAuNzA3LTAuNzA3IDcuODU0IDcuODU0eicgLz48L3N2Zz5cIixcbiAgICAgIG5vQ2FsZW5kYXI6IGZhbHNlLFxuICAgICAgbm93OiBuZXcgRGF0ZSgpLFxuICAgICAgb25DaGFuZ2U6IFtdLFxuICAgICAgb25DbG9zZTogW10sXG4gICAgICBvbkRheUNyZWF0ZTogW10sXG4gICAgICBvbkRlc3Ryb3k6IFtdLFxuICAgICAgb25LZXlEb3duOiBbXSxcbiAgICAgIG9uTW9udGhDaGFuZ2U6IFtdLFxuICAgICAgb25PcGVuOiBbXSxcbiAgICAgIG9uUGFyc2VDb25maWc6IFtdLFxuICAgICAgb25SZWFkeTogW10sXG4gICAgICBvblZhbHVlVXBkYXRlOiBbXSxcbiAgICAgIG9uWWVhckNoYW5nZTogW10sXG4gICAgICBvblByZUNhbGVuZGFyUG9zaXRpb246IFtdLFxuICAgICAgcGx1Z2luczogW10sXG4gICAgICBwb3NpdGlvbjogXCJhdXRvXCIsXG4gICAgICBwb3NpdGlvbkVsZW1lbnQ6IHVuZGVmaW5lZCxcbiAgICAgIHByZXZBcnJvdzogXCI8c3ZnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgdmlld0JveD0nMCAwIDE3IDE3Jz48Zz48L2c+PHBhdGggZD0nTTUuMjA3IDguNDcxbDcuMTQ2IDcuMTQ3LTAuNzA3IDAuNzA3LTcuODUzLTcuODU0IDcuODU0LTcuODUzIDAuNzA3IDAuNzA3LTcuMTQ3IDcuMTQ2eicgLz48L3N2Zz5cIixcbiAgICAgIHNob3J0aGFuZEN1cnJlbnRNb250aDogZmFsc2UsXG4gICAgICBzaG93TW9udGhzOiAxLFxuICAgICAgc3RhdGljOiBmYWxzZSxcbiAgICAgIHRpbWVfMjRocjogZmFsc2UsXG4gICAgICB3ZWVrTnVtYmVyczogZmFsc2UsXG4gICAgICB3cmFwOiBmYWxzZVxuICAgIH07XG5cbiAgICBmdW5jdGlvbiB0b2dnbGVDbGFzcyhlbGVtLCBjbGFzc05hbWUsIGJvb2wpIHtcbiAgICAgIGlmIChib29sID09PSB0cnVlKSByZXR1cm4gZWxlbS5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gICAgICBlbGVtLmNsYXNzTGlzdC5yZW1vdmUoY2xhc3NOYW1lKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0YWcsIGNsYXNzTmFtZSwgY29udGVudCkge1xuICAgICAgdmFyIGUgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWcpO1xuICAgICAgY2xhc3NOYW1lID0gY2xhc3NOYW1lIHx8IFwiXCI7XG4gICAgICBjb250ZW50ID0gY29udGVudCB8fCBcIlwiO1xuICAgICAgZS5jbGFzc05hbWUgPSBjbGFzc05hbWU7XG4gICAgICBpZiAoY29udGVudCAhPT0gdW5kZWZpbmVkKSBlLnRleHRDb250ZW50ID0gY29udGVudDtcbiAgICAgIHJldHVybiBlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBjbGVhck5vZGUobm9kZSkge1xuICAgICAgd2hpbGUgKG5vZGUuZmlyc3RDaGlsZCkge1xuICAgICAgICBub2RlLnJlbW92ZUNoaWxkKG5vZGUuZmlyc3RDaGlsZCk7XG4gICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGZpbmRQYXJlbnQobm9kZSwgY29uZGl0aW9uKSB7XG4gICAgICBpZiAoY29uZGl0aW9uKG5vZGUpKSByZXR1cm4gbm9kZTtlbHNlIGlmIChub2RlLnBhcmVudE5vZGUpIHJldHVybiBmaW5kUGFyZW50KG5vZGUucGFyZW50Tm9kZSwgY29uZGl0aW9uKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNyZWF0ZU51bWJlcklucHV0KGlucHV0Q2xhc3NOYW1lLCBvcHRzKSB7XG4gICAgICB2YXIgd3JhcHBlciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJudW1JbnB1dFdyYXBwZXJcIiksXG4gICAgICAgICAgbnVtSW5wdXQgPSBjcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwgXCJudW1JbnB1dCBcIiArIGlucHV0Q2xhc3NOYW1lKSxcbiAgICAgICAgICBhcnJvd1VwID0gY3JlYXRlRWxlbWVudChcInNwYW5cIiwgXCJhcnJvd1VwXCIpLFxuICAgICAgICAgIGFycm93RG93biA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiYXJyb3dEb3duXCIpO1xuICAgICAgbnVtSW5wdXQudHlwZSA9IFwidGV4dFwiO1xuICAgICAgbnVtSW5wdXQucGF0dGVybiA9IFwiXFxcXGQqXCI7XG4gICAgICBpZiAob3B0cyAhPT0gdW5kZWZpbmVkKSBmb3IgKHZhciBrZXkgaW4gb3B0cykge1xuICAgICAgICBudW1JbnB1dC5zZXRBdHRyaWJ1dGUoa2V5LCBvcHRzW2tleV0pO1xuICAgICAgfVxuICAgICAgd3JhcHBlci5hcHBlbmRDaGlsZChudW1JbnB1dCk7XG4gICAgICB3cmFwcGVyLmFwcGVuZENoaWxkKGFycm93VXApO1xuICAgICAgd3JhcHBlci5hcHBlbmRDaGlsZChhcnJvd0Rvd24pO1xuICAgICAgcmV0dXJuIHdyYXBwZXI7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBPYmplY3QuYXNzaWduICE9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24gPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgdGhyb3cgVHlwZUVycm9yKFwiQ2Fubm90IGNvbnZlcnQgdW5kZWZpbmVkIG9yIG51bGwgdG8gb2JqZWN0XCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yICh2YXIgX2xlbiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbiA+IDEgPyBfbGVuIC0gMSA6IDApLCBfa2V5ID0gMTsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgICAgIGFyZ3NbX2tleSAtIDFdID0gYXJndW1lbnRzW19rZXldO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIF9sb29wID0gZnVuY3Rpb24gX2xvb3AoKSB7XG4gICAgICAgICAgdmFyIHNvdXJjZSA9IGFyZ3NbX2ldO1xuXG4gICAgICAgICAgaWYgKHNvdXJjZSkge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoc291cmNlKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRhcmdldFtrZXldID0gc291cmNlW2tleV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3MubGVuZ3RoOyBfaSsrKSB7XG4gICAgICAgICAgX2xvb3AoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0YXJnZXQ7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHZhciBERUJPVU5DRURfQ0hBTkdFX01TID0gMzAwO1xuXG4gICAgZnVuY3Rpb24gRmxhdHBpY2tySW5zdGFuY2UoZWxlbWVudCwgaW5zdGFuY2VDb25maWcpIHtcbiAgICAgIHZhciBzZWxmID0ge1xuICAgICAgICBjb25maWc6IE9iamVjdC5hc3NpZ24oe30sIGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnKSxcbiAgICAgICAgbDEwbjogZW5nbGlzaFxuICAgICAgfTtcbiAgICAgIHNlbGYucGFyc2VEYXRlID0gY3JlYXRlRGF0ZVBhcnNlcih7XG4gICAgICAgIGNvbmZpZzogc2VsZi5jb25maWcsXG4gICAgICAgIGwxMG46IHNlbGYubDEwblxuICAgICAgfSk7XG4gICAgICBzZWxmLl9oYW5kbGVycyA9IFtdO1xuICAgICAgc2VsZi5fYmluZCA9IGJpbmQ7XG4gICAgICBzZWxmLl9zZXRIb3Vyc0Zyb21EYXRlID0gc2V0SG91cnNGcm9tRGF0ZTtcbiAgICAgIHNlbGYuX3Bvc2l0aW9uQ2FsZW5kYXIgPSBwb3NpdGlvbkNhbGVuZGFyO1xuICAgICAgc2VsZi5jaGFuZ2VNb250aCA9IGNoYW5nZU1vbnRoO1xuICAgICAgc2VsZi5jaGFuZ2VZZWFyID0gY2hhbmdlWWVhcjtcbiAgICAgIHNlbGYuY2xlYXIgPSBjbGVhcjtcbiAgICAgIHNlbGYuY2xvc2UgPSBjbG9zZTtcbiAgICAgIHNlbGYuX2NyZWF0ZUVsZW1lbnQgPSBjcmVhdGVFbGVtZW50O1xuICAgICAgc2VsZi5kZXN0cm95ID0gZGVzdHJveTtcbiAgICAgIHNlbGYuaXNFbmFibGVkID0gaXNFbmFibGVkO1xuICAgICAgc2VsZi5qdW1wVG9EYXRlID0ganVtcFRvRGF0ZTtcbiAgICAgIHNlbGYub3BlbiA9IG9wZW47XG4gICAgICBzZWxmLnJlZHJhdyA9IHJlZHJhdztcbiAgICAgIHNlbGYuc2V0ID0gc2V0O1xuICAgICAgc2VsZi5zZXREYXRlID0gc2V0RGF0ZTtcbiAgICAgIHNlbGYudG9nZ2xlID0gdG9nZ2xlO1xuXG4gICAgICBmdW5jdGlvbiBzZXR1cEhlbHBlckZ1bmN0aW9ucygpIHtcbiAgICAgICAgc2VsZi51dGlscyA9IHtcbiAgICAgICAgICBnZXREYXlzSW5Nb250aDogZnVuY3Rpb24gZ2V0RGF5c0luTW9udGgobW9udGgsIHlyKSB7XG4gICAgICAgICAgICBpZiAobW9udGggPT09IHZvaWQgMCkge1xuICAgICAgICAgICAgICBtb250aCA9IHNlbGYuY3VycmVudE1vbnRoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoeXIgPT09IHZvaWQgMCkge1xuICAgICAgICAgICAgICB5ciA9IHNlbGYuY3VycmVudFllYXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChtb250aCA9PT0gMSAmJiAoeXIgJSA0ID09PSAwICYmIHlyICUgMTAwICE9PSAwIHx8IHlyICUgNDAwID09PSAwKSkgcmV0dXJuIDI5O1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYubDEwbi5kYXlzSW5Nb250aFttb250aF07XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBpbml0KCkge1xuICAgICAgICBzZWxmLmVsZW1lbnQgPSBzZWxmLmlucHV0ID0gZWxlbWVudDtcbiAgICAgICAgc2VsZi5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgcGFyc2VDb25maWcoKTtcbiAgICAgICAgc2V0dXBMb2NhbGUoKTtcbiAgICAgICAgc2V0dXBJbnB1dHMoKTtcbiAgICAgICAgc2V0dXBEYXRlcygpO1xuICAgICAgICBzZXR1cEhlbHBlckZ1bmN0aW9ucygpO1xuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUpIGJ1aWxkKCk7XG4gICAgICAgIGJpbmRFdmVudHMoKTtcblxuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCB8fCBzZWxmLmNvbmZpZy5ub0NhbGVuZGFyKSB7XG4gICAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUpIHtcbiAgICAgICAgICAgIHNldEhvdXJzRnJvbURhdGUoc2VsZi5jb25maWcubm9DYWxlbmRhciA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqIHx8IHNlbGYuY29uZmlnLm1pbkRhdGUgOiB1bmRlZmluZWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVwZGF0ZVZhbHVlKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldENhbGVuZGFyV2lkdGgoKTtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDAgfHwgc2VsZi5jb25maWcubm9DYWxlbmRhcjtcbiAgICAgICAgdmFyIGlzU2FmYXJpID0gL14oKD8hY2hyb21lfGFuZHJvaWQpLikqc2FmYXJpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcblxuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUgJiYgaXNTYWZhcmkpIHtcbiAgICAgICAgICBwb3NpdGlvbkNhbGVuZGFyKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvblJlYWR5XCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBiaW5kVG9JbnN0YW5jZShmbikge1xuICAgICAgICByZXR1cm4gZm4uYmluZChzZWxmKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0Q2FsZW5kYXJXaWR0aCgpIHtcbiAgICAgICAgdmFyIGNvbmZpZyA9IHNlbGYuY29uZmlnO1xuICAgICAgICBpZiAoY29uZmlnLndlZWtOdW1iZXJzID09PSBmYWxzZSAmJiBjb25maWcuc2hvd01vbnRocyA9PT0gMSkgcmV0dXJuO2Vsc2UgaWYgKGNvbmZpZy5ub0NhbGVuZGFyICE9PSB0cnVlKSB7XG4gICAgICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnZpc2liaWxpdHkgPSBcImhpZGRlblwiO1xuICAgICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgdmFyIGRheXNXaWR0aCA9IChzZWxmLmRheXMub2Zmc2V0V2lkdGggKyAxKSAqIGNvbmZpZy5zaG93TW9udGhzO1xuICAgICAgICAgICAgICBzZWxmLmRheXNDb250YWluZXIuc3R5bGUud2lkdGggPSBkYXlzV2lkdGggKyBcInB4XCI7XG4gICAgICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUud2lkdGggPSBkYXlzV2lkdGggKyAoc2VsZi53ZWVrV3JhcHBlciAhPT0gdW5kZWZpbmVkID8gc2VsZi53ZWVrV3JhcHBlci5vZmZzZXRXaWR0aCA6IDApICsgXCJweFwiO1xuICAgICAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnJlbW92ZVByb3BlcnR5KFwidmlzaWJpbGl0eVwiKTtcbiAgICAgICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5yZW1vdmVQcm9wZXJ0eShcImRpc3BsYXlcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdXBkYXRlVGltZShlKSB7XG4gICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgICAgIGlmIChlICE9PSB1bmRlZmluZWQgJiYgZS50eXBlICE9PSBcImJsdXJcIikgdGltZVdyYXBwZXIoZSk7XG4gICAgICAgIHNldEhvdXJzRnJvbUlucHV0cygpO1xuICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuXG4gICAgICAgIHNlbGYuX2RlYm91bmNlZENoYW5nZSgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBhbXBtMm1pbGl0YXJ5KGhvdXIsIGFtUE0pIHtcbiAgICAgICAgcmV0dXJuIGhvdXIgJSAxMiArIDEyICogaW50KGFtUE0gPT09IHNlbGYubDEwbi5hbVBNWzFdKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gbWlsaXRhcnkyYW1wbShob3VyKSB7XG4gICAgICAgIHN3aXRjaCAoaG91ciAlIDI0KSB7XG4gICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgIGNhc2UgMTI6XG4gICAgICAgICAgICByZXR1cm4gMTI7XG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIGhvdXIgJSAxMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vyc0Zyb21JbnB1dHMoKSB7XG4gICAgICAgIGlmIChzZWxmLmhvdXJFbGVtZW50ID09PSB1bmRlZmluZWQgfHwgc2VsZi5taW51dGVFbGVtZW50ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgICAgdmFyIGhvdXJzID0gKHBhcnNlSW50KHNlbGYuaG91ckVsZW1lbnQudmFsdWUuc2xpY2UoLTIpLCAxMCkgfHwgMCkgJSAyNCxcbiAgICAgICAgICAgIG1pbnV0ZXMgPSAocGFyc2VJbnQoc2VsZi5taW51dGVFbGVtZW50LnZhbHVlLCAxMCkgfHwgMCkgJSA2MCxcbiAgICAgICAgICAgIHNlY29uZHMgPSBzZWxmLnNlY29uZEVsZW1lbnQgIT09IHVuZGVmaW5lZCA/IChwYXJzZUludChzZWxmLnNlY29uZEVsZW1lbnQudmFsdWUsIDEwKSB8fCAwKSAlIDYwIDogMDtcblxuICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBob3VycyA9IGFtcG0ybWlsaXRhcnkoaG91cnMsIHNlbGYuYW1QTS50ZXh0Q29udGVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgbGltaXRNaW5Ib3VycyA9IHNlbGYuY29uZmlnLm1pblRpbWUgIT09IHVuZGVmaW5lZCB8fCBzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYubWluRGF0ZUhhc1RpbWUgJiYgc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogJiYgY29tcGFyZURhdGVzKHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLCBzZWxmLmNvbmZpZy5taW5EYXRlLCB0cnVlKSA9PT0gMDtcbiAgICAgICAgdmFyIGxpbWl0TWF4SG91cnMgPSBzZWxmLmNvbmZpZy5tYXhUaW1lICE9PSB1bmRlZmluZWQgfHwgc2VsZi5jb25maWcubWF4RGF0ZSAmJiBzZWxmLm1heERhdGVIYXNUaW1lICYmIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqICYmIGNvbXBhcmVEYXRlcyhzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiwgc2VsZi5jb25maWcubWF4RGF0ZSwgdHJ1ZSkgPT09IDA7XG5cbiAgICAgICAgaWYgKGxpbWl0TWF4SG91cnMpIHtcbiAgICAgICAgICB2YXIgbWF4VGltZSA9IHNlbGYuY29uZmlnLm1heFRpbWUgIT09IHVuZGVmaW5lZCA/IHNlbGYuY29uZmlnLm1heFRpbWUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlO1xuICAgICAgICAgIGhvdXJzID0gTWF0aC5taW4oaG91cnMsIG1heFRpbWUuZ2V0SG91cnMoKSk7XG4gICAgICAgICAgaWYgKGhvdXJzID09PSBtYXhUaW1lLmdldEhvdXJzKCkpIG1pbnV0ZXMgPSBNYXRoLm1pbihtaW51dGVzLCBtYXhUaW1lLmdldE1pbnV0ZXMoKSk7XG4gICAgICAgICAgaWYgKG1pbnV0ZXMgPT09IG1heFRpbWUuZ2V0TWludXRlcygpKSBzZWNvbmRzID0gTWF0aC5taW4oc2Vjb25kcywgbWF4VGltZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxpbWl0TWluSG91cnMpIHtcbiAgICAgICAgICB2YXIgbWluVGltZSA9IHNlbGYuY29uZmlnLm1pblRpbWUgIT09IHVuZGVmaW5lZCA/IHNlbGYuY29uZmlnLm1pblRpbWUgOiBzZWxmLmNvbmZpZy5taW5EYXRlO1xuICAgICAgICAgIGhvdXJzID0gTWF0aC5tYXgoaG91cnMsIG1pblRpbWUuZ2V0SG91cnMoKSk7XG4gICAgICAgICAgaWYgKGhvdXJzID09PSBtaW5UaW1lLmdldEhvdXJzKCkpIG1pbnV0ZXMgPSBNYXRoLm1heChtaW51dGVzLCBtaW5UaW1lLmdldE1pbnV0ZXMoKSk7XG4gICAgICAgICAgaWYgKG1pbnV0ZXMgPT09IG1pblRpbWUuZ2V0TWludXRlcygpKSBzZWNvbmRzID0gTWF0aC5tYXgoc2Vjb25kcywgbWluVGltZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0SG91cnMoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vyc0Zyb21EYXRlKGRhdGVPYmopIHtcbiAgICAgICAgdmFyIGRhdGUgPSBkYXRlT2JqIHx8IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqO1xuICAgICAgICBpZiAoZGF0ZSkgc2V0SG91cnMoZGF0ZS5nZXRIb3VycygpLCBkYXRlLmdldE1pbnV0ZXMoKSwgZGF0ZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXREZWZhdWx0SG91cnMoKSB7XG4gICAgICAgIHZhciBob3VycyA9IHNlbGYuY29uZmlnLmRlZmF1bHRIb3VyO1xuICAgICAgICB2YXIgbWludXRlcyA9IHNlbGYuY29uZmlnLmRlZmF1bHRNaW51dGU7XG4gICAgICAgIHZhciBzZWNvbmRzID0gc2VsZi5jb25maWcuZGVmYXVsdFNlY29uZHM7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHZhciBtaW5faHIgPSBzZWxmLmNvbmZpZy5taW5EYXRlLmdldEhvdXJzKCk7XG4gICAgICAgICAgdmFyIG1pbl9taW51dGVzID0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRNaW51dGVzKCk7XG4gICAgICAgICAgaG91cnMgPSBNYXRoLm1heChob3VycywgbWluX2hyKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1pbl9ocikgbWludXRlcyA9IE1hdGgubWF4KG1pbl9taW51dGVzLCBtaW51dGVzKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1pbl9ociAmJiBtaW51dGVzID09PSBtaW5fbWludXRlcykgc2Vjb25kcyA9IHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0U2Vjb25kcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1heERhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHZhciBtYXhfaHIgPSBzZWxmLmNvbmZpZy5tYXhEYXRlLmdldEhvdXJzKCk7XG4gICAgICAgICAgdmFyIG1heF9taW51dGVzID0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNaW51dGVzKCk7XG4gICAgICAgICAgaG91cnMgPSBNYXRoLm1pbihob3VycywgbWF4X2hyKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1heF9ocikgbWludXRlcyA9IE1hdGgubWluKG1heF9taW51dGVzLCBtaW51dGVzKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1heF9ociAmJiBtaW51dGVzID09PSBtYXhfbWludXRlcykgc2Vjb25kcyA9IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0U2Vjb25kcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0SG91cnMoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vycyhob3VycywgbWludXRlcywgc2Vjb25kcykge1xuICAgICAgICBpZiAoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLnNldEhvdXJzKGhvdXJzICUgMjQsIG1pbnV0ZXMsIHNlY29uZHMgfHwgMCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNlbGYuaG91ckVsZW1lbnQgfHwgIXNlbGYubWludXRlRWxlbWVudCB8fCBzZWxmLmlzTW9iaWxlKSByZXR1cm47XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQudmFsdWUgPSBwYWQoIXNlbGYuY29uZmlnLnRpbWVfMjRociA/ICgxMiArIGhvdXJzKSAlIDEyICsgMTIgKiBpbnQoaG91cnMgJSAxMiA9PT0gMCkgOiBob3Vycyk7XG4gICAgICAgIHNlbGYubWludXRlRWxlbWVudC52YWx1ZSA9IHBhZChtaW51dGVzKTtcbiAgICAgICAgaWYgKHNlbGYuYW1QTSAhPT0gdW5kZWZpbmVkKSBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVtpbnQoaG91cnMgPj0gMTIpXTtcbiAgICAgICAgaWYgKHNlbGYuc2Vjb25kRWxlbWVudCAhPT0gdW5kZWZpbmVkKSBzZWxmLnNlY29uZEVsZW1lbnQudmFsdWUgPSBwYWQoc2Vjb25kcyk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG9uWWVhcklucHV0KGV2ZW50KSB7XG4gICAgICAgIHZhciB5ZWFyID0gcGFyc2VJbnQoZXZlbnQudGFyZ2V0LnZhbHVlKSArIChldmVudC5kZWx0YSB8fCAwKTtcblxuICAgICAgICBpZiAoeWVhciAvIDEwMDAgPiAxIHx8IGV2ZW50LmtleSA9PT0gXCJFbnRlclwiICYmICEvW15cXGRdLy50ZXN0KHllYXIudG9TdHJpbmcoKSkpIHtcbiAgICAgICAgICBjaGFuZ2VZZWFyKHllYXIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGJpbmQoZWxlbWVudCwgZXZlbnQsIGhhbmRsZXIsIG9wdGlvbnMpIHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgQXJyYXkpIHJldHVybiBldmVudC5mb3JFYWNoKGZ1bmN0aW9uIChldikge1xuICAgICAgICAgIHJldHVybiBiaW5kKGVsZW1lbnQsIGV2LCBoYW5kbGVyLCBvcHRpb25zKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChlbGVtZW50IGluc3RhbmNlb2YgQXJyYXkpIHJldHVybiBlbGVtZW50LmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgcmV0dXJuIGJpbmQoZWwsIGV2ZW50LCBoYW5kbGVyLCBvcHRpb25zKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihldmVudCwgaGFuZGxlciwgb3B0aW9ucyk7XG5cbiAgICAgICAgc2VsZi5faGFuZGxlcnMucHVzaCh7XG4gICAgICAgICAgZWxlbWVudDogZWxlbWVudCxcbiAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgICAgaGFuZGxlcjogaGFuZGxlcixcbiAgICAgICAgICBvcHRpb25zOiBvcHRpb25zXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvbkNsaWNrKGhhbmRsZXIpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICBldnQud2hpY2ggPT09IDEgJiYgaGFuZGxlcihldnQpO1xuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0cmlnZ2VyQ2hhbmdlKCkge1xuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvbkNoYW5nZVwiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYmluZEV2ZW50cygpIHtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLndyYXApIHtcbiAgICAgICAgICBbXCJvcGVuXCIsIFwiY2xvc2VcIiwgXCJ0b2dnbGVcIiwgXCJjbGVhclwiXS5mb3JFYWNoKGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoc2VsZi5lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS1cIiArIGV2dCArIFwiXVwiKSwgZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgICAgIHJldHVybiBiaW5kKGVsLCBcImNsaWNrXCIsIHNlbGZbZXZ0XSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmlzTW9iaWxlKSB7XG4gICAgICAgICAgc2V0dXBNb2JpbGUoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZGVib3VuY2VkUmVzaXplID0gZGVib3VuY2Uob25SZXNpemUsIDUwKTtcbiAgICAgICAgc2VsZi5fZGVib3VuY2VkQ2hhbmdlID0gZGVib3VuY2UodHJpZ2dlckNoYW5nZSwgREVCT1VOQ0VEX0NIQU5HRV9NUyk7XG4gICAgICAgIGlmIChzZWxmLmRheXNDb250YWluZXIgJiYgIS9pUGhvbmV8aVBhZHxpUG9kL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSkgYmluZChzZWxmLmRheXNDb250YWluZXIsIFwibW91c2VvdmVyXCIsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikgb25Nb3VzZU92ZXIoZS50YXJnZXQpO1xuICAgICAgICB9KTtcbiAgICAgICAgYmluZCh3aW5kb3cuZG9jdW1lbnQuYm9keSwgXCJrZXlkb3duXCIsIG9uS2V5RG93bik7XG4gICAgICAgIGlmICghc2VsZi5jb25maWcuc3RhdGljKSBiaW5kKHNlbGYuX2lucHV0LCBcImtleWRvd25cIiwgb25LZXlEb3duKTtcbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5pbmxpbmUgJiYgIXNlbGYuY29uZmlnLnN0YXRpYykgYmluZCh3aW5kb3csIFwicmVzaXplXCIsIGRlYm91bmNlZFJlc2l6ZSk7XG4gICAgICAgIGlmICh3aW5kb3cub250b3VjaHN0YXJ0ICE9PSB1bmRlZmluZWQpIGJpbmQod2luZG93LmRvY3VtZW50LCBcImNsaWNrXCIsIGRvY3VtZW50Q2xpY2spO2Vsc2UgYmluZCh3aW5kb3cuZG9jdW1lbnQsIFwibW91c2Vkb3duXCIsIG9uQ2xpY2soZG9jdW1lbnRDbGljaykpO1xuICAgICAgICBiaW5kKHdpbmRvdy5kb2N1bWVudCwgXCJmb2N1c1wiLCBkb2N1bWVudENsaWNrLCB7XG4gICAgICAgICAgY2FwdHVyZTogdHJ1ZVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoc2VsZi5jb25maWcuY2xpY2tPcGVucyA9PT0gdHJ1ZSkge1xuICAgICAgICAgIGJpbmQoc2VsZi5faW5wdXQsIFwiZm9jdXNcIiwgc2VsZi5vcGVuKTtcbiAgICAgICAgICBiaW5kKHNlbGYuX2lucHV0LCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKHNlbGYub3BlbikpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuZGF5c0NvbnRhaW5lciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgYmluZChzZWxmLm1vbnRoTmF2LCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKG9uTW9udGhOYXZDbGljaykpO1xuICAgICAgICAgIGJpbmQoc2VsZi5tb250aE5hdiwgW1wia2V5dXBcIiwgXCJpbmNyZW1lbnRcIl0sIG9uWWVhcklucHV0KTtcbiAgICAgICAgICBiaW5kKHNlbGYuZGF5c0NvbnRhaW5lciwgXCJtb3VzZWRvd25cIiwgb25DbGljayhzZWxlY3REYXRlKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi50aW1lQ29udGFpbmVyICE9PSB1bmRlZmluZWQgJiYgc2VsZi5taW51dGVFbGVtZW50ICE9PSB1bmRlZmluZWQgJiYgc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdmFyIHNlbFRleHQgPSBmdW5jdGlvbiBzZWxUZXh0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLnRhcmdldC5zZWxlY3QoKTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFtcImluY3JlbWVudFwiXSwgdXBkYXRlVGltZSk7XG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFwiYmx1clwiLCB1cGRhdGVUaW1lLCB7XG4gICAgICAgICAgICBjYXB0dXJlOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFwibW91c2Vkb3duXCIsIG9uQ2xpY2sodGltZUluY3JlbWVudCkpO1xuICAgICAgICAgIGJpbmQoW3NlbGYuaG91ckVsZW1lbnQsIHNlbGYubWludXRlRWxlbWVudF0sIFtcImZvY3VzXCIsIFwiY2xpY2tcIl0sIHNlbFRleHQpO1xuICAgICAgICAgIGlmIChzZWxmLnNlY29uZEVsZW1lbnQgIT09IHVuZGVmaW5lZCkgYmluZChzZWxmLnNlY29uZEVsZW1lbnQsIFwiZm9jdXNcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuc2Vjb25kRWxlbWVudCAmJiBzZWxmLnNlY29uZEVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGJpbmQoc2VsZi5hbVBNLCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgIHVwZGF0ZVRpbWUoZSk7XG4gICAgICAgICAgICAgIHRyaWdnZXJDaGFuZ2UoKTtcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24ganVtcFRvRGF0ZShqdW1wRGF0ZSkge1xuICAgICAgICB2YXIganVtcFRvID0ganVtcERhdGUgIT09IHVuZGVmaW5lZCA/IHNlbGYucGFyc2VEYXRlKGp1bXBEYXRlKSA6IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqIHx8IChzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYuY29uZmlnLm1pbkRhdGUgPiBzZWxmLm5vdyA/IHNlbGYuY29uZmlnLm1pbkRhdGUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY29uZmlnLm1heERhdGUgPCBzZWxmLm5vdyA/IHNlbGYuY29uZmlnLm1heERhdGUgOiBzZWxmLm5vdyk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoanVtcFRvICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudFllYXIgPSBqdW1wVG8uZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0ganVtcFRvLmdldE1vbnRoKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgZS5tZXNzYWdlID0gXCJJbnZhbGlkIGRhdGUgc3VwcGxpZWQ6IFwiICsganVtcFRvO1xuICAgICAgICAgIHNlbGYuY29uZmlnLmVycm9ySGFuZGxlcihlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHRpbWVJbmNyZW1lbnQoZSkge1xuICAgICAgICBpZiAofmUudGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKFwiYXJyb3dcIikpIGluY3JlbWVudE51bUlucHV0KGUsIGUudGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhcImFycm93VXBcIikgPyAxIDogLTEpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBpbmNyZW1lbnROdW1JbnB1dChlLCBkZWx0YSwgaW5wdXRFbGVtKSB7XG4gICAgICAgIHZhciB0YXJnZXQgPSBlICYmIGUudGFyZ2V0O1xuICAgICAgICB2YXIgaW5wdXQgPSBpbnB1dEVsZW0gfHwgdGFyZ2V0ICYmIHRhcmdldC5wYXJlbnROb2RlICYmIHRhcmdldC5wYXJlbnROb2RlLmZpcnN0Q2hpbGQ7XG4gICAgICAgIHZhciBldmVudCA9IGNyZWF0ZUV2ZW50KFwiaW5jcmVtZW50XCIpO1xuICAgICAgICBldmVudC5kZWx0YSA9IGRlbHRhO1xuICAgICAgICBpbnB1dCAmJiBpbnB1dC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGQoKSB7XG4gICAgICAgIHZhciBmcmFnbWVudCA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG4gICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLWNhbGVuZGFyXCIpO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnRhYkluZGV4ID0gLTE7XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5ub0NhbGVuZGFyKSB7XG4gICAgICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoYnVpbGRNb250aE5hdigpKTtcbiAgICAgICAgICBzZWxmLmlubmVyQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci1pbm5lckNvbnRhaW5lclwiKTtcblxuICAgICAgICAgIGlmIChzZWxmLmNvbmZpZy53ZWVrTnVtYmVycykge1xuICAgICAgICAgICAgdmFyIF9idWlsZFdlZWtzID0gYnVpbGRXZWVrcygpLFxuICAgICAgICAgICAgICAgIHdlZWtXcmFwcGVyID0gX2J1aWxkV2Vla3Mud2Vla1dyYXBwZXIsXG4gICAgICAgICAgICAgICAgd2Vla051bWJlcnMgPSBfYnVpbGRXZWVrcy53ZWVrTnVtYmVycztcblxuICAgICAgICAgICAgc2VsZi5pbm5lckNvbnRhaW5lci5hcHBlbmRDaGlsZCh3ZWVrV3JhcHBlcik7XG4gICAgICAgICAgICBzZWxmLndlZWtOdW1iZXJzID0gd2Vla051bWJlcnM7XG4gICAgICAgICAgICBzZWxmLndlZWtXcmFwcGVyID0gd2Vla1dyYXBwZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc2VsZi5yQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci1yQ29udGFpbmVyXCIpO1xuICAgICAgICAgIHNlbGYuckNvbnRhaW5lci5hcHBlbmRDaGlsZChidWlsZFdlZWtkYXlzKCkpO1xuXG4gICAgICAgICAgaWYgKCFzZWxmLmRheXNDb250YWluZXIpIHtcbiAgICAgICAgICAgIHNlbGYuZGF5c0NvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItZGF5c1wiKTtcbiAgICAgICAgICAgIHNlbGYuZGF5c0NvbnRhaW5lci50YWJJbmRleCA9IC0xO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJ1aWxkRGF5cygpO1xuICAgICAgICAgIHNlbGYuckNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWxmLmRheXNDb250YWluZXIpO1xuICAgICAgICAgIHNlbGYuaW5uZXJDb250YWluZXIuYXBwZW5kQ2hpbGQoc2VsZi5yQ29udGFpbmVyKTtcbiAgICAgICAgICBmcmFnbWVudC5hcHBlbmRDaGlsZChzZWxmLmlubmVyQ29udGFpbmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lKSB7XG4gICAgICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoYnVpbGRUaW1lKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJyYW5nZU1vZGVcIiwgc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhbmltYXRlXCIsIHNlbGYuY29uZmlnLmFuaW1hdGUgPT09IHRydWUpO1xuICAgICAgICB0b2dnbGVDbGFzcyhzZWxmLmNhbGVuZGFyQ29udGFpbmVyLCBcIm11bHRpTW9udGhcIiwgc2VsZi5jb25maWcuc2hvd01vbnRocyA+IDEpO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmFwcGVuZENoaWxkKGZyYWdtZW50KTtcbiAgICAgICAgdmFyIGN1c3RvbUFwcGVuZCA9IHNlbGYuY29uZmlnLmFwcGVuZFRvICE9PSB1bmRlZmluZWQgJiYgc2VsZi5jb25maWcuYXBwZW5kVG8ubm9kZVR5cGUgIT09IHVuZGVmaW5lZDtcblxuICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lIHx8IHNlbGYuY29uZmlnLnN0YXRpYykge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChzZWxmLmNvbmZpZy5pbmxpbmUgPyBcImlubGluZVwiIDogXCJzdGF0aWNcIik7XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lKSB7XG4gICAgICAgICAgICBpZiAoIWN1c3RvbUFwcGVuZCAmJiBzZWxmLmVsZW1lbnQucGFyZW50Tm9kZSkgc2VsZi5lbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYuY2FsZW5kYXJDb250YWluZXIsIHNlbGYuX2lucHV0Lm5leHRTaWJsaW5nKTtlbHNlIGlmIChzZWxmLmNvbmZpZy5hcHBlbmRUbyAhPT0gdW5kZWZpbmVkKSBzZWxmLmNvbmZpZy5hcHBlbmRUby5hcHBlbmRDaGlsZChzZWxmLmNhbGVuZGFyQ29udGFpbmVyKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuc3RhdGljKSB7XG4gICAgICAgICAgICB2YXIgd3JhcHBlciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd3JhcHBlclwiKTtcbiAgICAgICAgICAgIGlmIChzZWxmLmVsZW1lbnQucGFyZW50Tm9kZSkgc2VsZi5lbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHdyYXBwZXIsIHNlbGYuZWxlbWVudCk7XG4gICAgICAgICAgICB3cmFwcGVyLmFwcGVuZENoaWxkKHNlbGYuZWxlbWVudCk7XG4gICAgICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dCkgd3JhcHBlci5hcHBlbmRDaGlsZChzZWxmLmFsdElucHV0KTtcbiAgICAgICAgICAgIHdyYXBwZXIuYXBwZW5kQ2hpbGQoc2VsZi5jYWxlbmRhckNvbnRhaW5lcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgIXNlbGYuY29uZmlnLmlubGluZSkgKHNlbGYuY29uZmlnLmFwcGVuZFRvICE9PSB1bmRlZmluZWQgPyBzZWxmLmNvbmZpZy5hcHBlbmRUbyA6IHdpbmRvdy5kb2N1bWVudC5ib2R5KS5hcHBlbmRDaGlsZChzZWxmLmNhbGVuZGFyQ29udGFpbmVyKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gY3JlYXRlRGF5KGNsYXNzTmFtZSwgZGF0ZSwgZGF5TnVtYmVyLCBpKSB7XG4gICAgICAgIHZhciBkYXRlSXNFbmFibGVkID0gaXNFbmFibGVkKGRhdGUsIHRydWUpLFxuICAgICAgICAgICAgZGF5RWxlbWVudCA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLWRheSBcIiArIGNsYXNzTmFtZSwgZGF0ZS5nZXREYXRlKCkudG9TdHJpbmcoKSk7XG4gICAgICAgIGRheUVsZW1lbnQuZGF0ZU9iaiA9IGRhdGU7XG4gICAgICAgIGRheUVsZW1lbnQuJGkgPSBpO1xuICAgICAgICBkYXlFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIiwgc2VsZi5mb3JtYXREYXRlKGRhdGUsIHNlbGYuY29uZmlnLmFyaWFEYXRlRm9ybWF0KSk7XG5cbiAgICAgICAgaWYgKGNsYXNzTmFtZS5pbmRleE9mKFwiaGlkZGVuXCIpID09PSAtMSAmJiBjb21wYXJlRGF0ZXMoZGF0ZSwgc2VsZi5ub3cpID09PSAwKSB7XG4gICAgICAgICAgc2VsZi50b2RheURhdGVFbGVtID0gZGF5RWxlbWVudDtcbiAgICAgICAgICBkYXlFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJ0b2RheVwiKTtcbiAgICAgICAgICBkYXlFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtY3VycmVudFwiLCBcImRhdGVcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGF0ZUlzRW5hYmxlZCkge1xuICAgICAgICAgIGRheUVsZW1lbnQudGFiSW5kZXggPSAtMTtcblxuICAgICAgICAgIGlmIChpc0RhdGVTZWxlY3RlZChkYXRlKSkge1xuICAgICAgICAgICAgZGF5RWxlbWVudC5jbGFzc0xpc3QuYWRkKFwic2VsZWN0ZWRcIik7XG4gICAgICAgICAgICBzZWxmLnNlbGVjdGVkRGF0ZUVsZW0gPSBkYXlFbGVtZW50O1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSB7XG4gICAgICAgICAgICAgIHRvZ2dsZUNsYXNzKGRheUVsZW1lbnQsIFwic3RhcnRSYW5nZVwiLCBzZWxmLnNlbGVjdGVkRGF0ZXNbMF0gJiYgY29tcGFyZURhdGVzKGRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdHJ1ZSkgPT09IDApO1xuICAgICAgICAgICAgICB0b2dnbGVDbGFzcyhkYXlFbGVtZW50LCBcImVuZFJhbmdlXCIsIHNlbGYuc2VsZWN0ZWREYXRlc1sxXSAmJiBjb21wYXJlRGF0ZXMoZGF0ZSwgc2VsZi5zZWxlY3RlZERhdGVzWzFdLCB0cnVlKSA9PT0gMCk7XG4gICAgICAgICAgICAgIGlmIChjbGFzc05hbWUgPT09IFwibmV4dE1vbnRoRGF5XCIpIGRheUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImluUmFuZ2VcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRheUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImRpc2FibGVkXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikge1xuICAgICAgICAgIGlmIChpc0RhdGVJblJhbmdlKGRhdGUpICYmICFpc0RhdGVTZWxlY3RlZChkYXRlKSkgZGF5RWxlbWVudC5jbGFzc0xpc3QuYWRkKFwiaW5SYW5nZVwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLndlZWtOdW1iZXJzICYmIHNlbGYuY29uZmlnLnNob3dNb250aHMgPT09IDEgJiYgY2xhc3NOYW1lICE9PSBcInByZXZNb250aERheVwiICYmIGRheU51bWJlciAlIDcgPT09IDEpIHtcbiAgICAgICAgICBzZWxmLndlZWtOdW1iZXJzLmluc2VydEFkamFjZW50SFRNTChcImJlZm9yZWVuZFwiLCBcIjxzcGFuIGNsYXNzPSdmbGF0cGlja3ItZGF5Jz5cIiArIHNlbGYuY29uZmlnLmdldFdlZWsoZGF0ZSkgKyBcIjwvc3Bhbj5cIik7XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvbkRheUNyZWF0ZVwiLCBkYXlFbGVtZW50KTtcbiAgICAgICAgcmV0dXJuIGRheUVsZW1lbnQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGZvY3VzT25EYXlFbGVtKHRhcmdldE5vZGUpIHtcbiAgICAgICAgdGFyZ2V0Tm9kZS5mb2N1cygpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSBvbk1vdXNlT3Zlcih0YXJnZXROb2RlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZ2V0Rmlyc3RBdmFpbGFibGVEYXkoZGVsdGEpIHtcbiAgICAgICAgdmFyIHN0YXJ0TW9udGggPSBkZWx0YSA+IDAgPyAwIDogc2VsZi5jb25maWcuc2hvd01vbnRocyAtIDE7XG4gICAgICAgIHZhciBlbmRNb250aCA9IGRlbHRhID4gMCA/IHNlbGYuY29uZmlnLnNob3dNb250aHMgOiAtMTtcblxuICAgICAgICBmb3IgKHZhciBtID0gc3RhcnRNb250aDsgbSAhPSBlbmRNb250aDsgbSArPSBkZWx0YSkge1xuICAgICAgICAgIHZhciBtb250aCA9IHNlbGYuZGF5c0NvbnRhaW5lci5jaGlsZHJlblttXTtcbiAgICAgICAgICB2YXIgc3RhcnRJbmRleCA9IGRlbHRhID4gMCA/IDAgOiBtb250aC5jaGlsZHJlbi5sZW5ndGggLSAxO1xuICAgICAgICAgIHZhciBlbmRJbmRleCA9IGRlbHRhID4gMCA/IG1vbnRoLmNoaWxkcmVuLmxlbmd0aCA6IC0xO1xuXG4gICAgICAgICAgZm9yICh2YXIgaSA9IHN0YXJ0SW5kZXg7IGkgIT0gZW5kSW5kZXg7IGkgKz0gZGVsdGEpIHtcbiAgICAgICAgICAgIHZhciBjID0gbW9udGguY2hpbGRyZW5baV07XG4gICAgICAgICAgICBpZiAoYy5jbGFzc05hbWUuaW5kZXhPZihcImhpZGRlblwiKSA9PT0gLTEgJiYgaXNFbmFibGVkKGMuZGF0ZU9iaikpIHJldHVybiBjO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGdldE5leHRBdmFpbGFibGVEYXkoY3VycmVudCwgZGVsdGEpIHtcbiAgICAgICAgdmFyIGdpdmVuTW9udGggPSBjdXJyZW50LmNsYXNzTmFtZS5pbmRleE9mKFwiTW9udGhcIikgPT09IC0xID8gY3VycmVudC5kYXRlT2JqLmdldE1vbnRoKCkgOiBzZWxmLmN1cnJlbnRNb250aDtcbiAgICAgICAgdmFyIGVuZE1vbnRoID0gZGVsdGEgPiAwID8gc2VsZi5jb25maWcuc2hvd01vbnRocyA6IC0xO1xuICAgICAgICB2YXIgbG9vcERlbHRhID0gZGVsdGEgPiAwID8gMSA6IC0xO1xuXG4gICAgICAgIGZvciAodmFyIG0gPSBnaXZlbk1vbnRoIC0gc2VsZi5jdXJyZW50TW9udGg7IG0gIT0gZW5kTW9udGg7IG0gKz0gbG9vcERlbHRhKSB7XG4gICAgICAgICAgdmFyIG1vbnRoID0gc2VsZi5kYXlzQ29udGFpbmVyLmNoaWxkcmVuW21dO1xuICAgICAgICAgIHZhciBzdGFydEluZGV4ID0gZ2l2ZW5Nb250aCAtIHNlbGYuY3VycmVudE1vbnRoID09PSBtID8gY3VycmVudC4kaSArIGRlbHRhIDogZGVsdGEgPCAwID8gbW9udGguY2hpbGRyZW4ubGVuZ3RoIC0gMSA6IDA7XG4gICAgICAgICAgdmFyIG51bU1vbnRoRGF5cyA9IG1vbnRoLmNoaWxkcmVuLmxlbmd0aDtcblxuICAgICAgICAgIGZvciAodmFyIGkgPSBzdGFydEluZGV4OyBpID49IDAgJiYgaSA8IG51bU1vbnRoRGF5cyAmJiBpICE9IChkZWx0YSA+IDAgPyBudW1Nb250aERheXMgOiAtMSk7IGkgKz0gbG9vcERlbHRhKSB7XG4gICAgICAgICAgICB2YXIgYyA9IG1vbnRoLmNoaWxkcmVuW2ldO1xuICAgICAgICAgICAgaWYgKGMuY2xhc3NOYW1lLmluZGV4T2YoXCJoaWRkZW5cIikgPT09IC0xICYmIGlzRW5hYmxlZChjLmRhdGVPYmopICYmIE1hdGguYWJzKGN1cnJlbnQuJGkgLSBpKSA+PSBNYXRoLmFicyhkZWx0YSkpIHJldHVybiBmb2N1c09uRGF5RWxlbShjKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmNoYW5nZU1vbnRoKGxvb3BEZWx0YSk7XG4gICAgICAgIGZvY3VzT25EYXkoZ2V0Rmlyc3RBdmFpbGFibGVEYXkobG9vcERlbHRhKSwgMCk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGZvY3VzT25EYXkoY3VycmVudCwgb2Zmc2V0KSB7XG4gICAgICAgIHZhciBkYXlGb2N1c2VkID0gaXNJblZpZXcoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XG4gICAgICAgIHZhciBzdGFydEVsZW0gPSBjdXJyZW50ICE9PSB1bmRlZmluZWQgPyBjdXJyZW50IDogZGF5Rm9jdXNlZCA/IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgOiBzZWxmLnNlbGVjdGVkRGF0ZUVsZW0gIT09IHVuZGVmaW5lZCAmJiBpc0luVmlldyhzZWxmLnNlbGVjdGVkRGF0ZUVsZW0pID8gc2VsZi5zZWxlY3RlZERhdGVFbGVtIDogc2VsZi50b2RheURhdGVFbGVtICE9PSB1bmRlZmluZWQgJiYgaXNJblZpZXcoc2VsZi50b2RheURhdGVFbGVtKSA/IHNlbGYudG9kYXlEYXRlRWxlbSA6IGdldEZpcnN0QXZhaWxhYmxlRGF5KG9mZnNldCA+IDAgPyAxIDogLTEpO1xuICAgICAgICBpZiAoc3RhcnRFbGVtID09PSB1bmRlZmluZWQpIHJldHVybiBzZWxmLl9pbnB1dC5mb2N1cygpO1xuICAgICAgICBpZiAoIWRheUZvY3VzZWQpIHJldHVybiBmb2N1c09uRGF5RWxlbShzdGFydEVsZW0pO1xuICAgICAgICBnZXROZXh0QXZhaWxhYmxlRGF5KHN0YXJ0RWxlbSwgb2Zmc2V0KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aERheXMoeWVhciwgbW9udGgpIHtcbiAgICAgICAgdmFyIGZpcnN0T2ZNb250aCA9IChuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSkuZ2V0RGF5KCkgLSBzZWxmLmwxMG4uZmlyc3REYXlPZldlZWsgKyA3KSAlIDc7XG4gICAgICAgIHZhciBwcmV2TW9udGhEYXlzID0gc2VsZi51dGlscy5nZXREYXlzSW5Nb250aCgobW9udGggLSAxICsgMTIpICUgMTIpO1xuICAgICAgICB2YXIgZGF5c0luTW9udGggPSBzZWxmLnV0aWxzLmdldERheXNJbk1vbnRoKG1vbnRoKSxcbiAgICAgICAgICAgIGRheXMgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLFxuICAgICAgICAgICAgaXNNdWx0aU1vbnRoID0gc2VsZi5jb25maWcuc2hvd01vbnRocyA+IDEsXG4gICAgICAgICAgICBwcmV2TW9udGhEYXlDbGFzcyA9IGlzTXVsdGlNb250aCA/IFwicHJldk1vbnRoRGF5IGhpZGRlblwiIDogXCJwcmV2TW9udGhEYXlcIixcbiAgICAgICAgICAgIG5leHRNb250aERheUNsYXNzID0gaXNNdWx0aU1vbnRoID8gXCJuZXh0TW9udGhEYXkgaGlkZGVuXCIgOiBcIm5leHRNb250aERheVwiO1xuICAgICAgICB2YXIgZGF5TnVtYmVyID0gcHJldk1vbnRoRGF5cyArIDEgLSBmaXJzdE9mTW9udGgsXG4gICAgICAgICAgICBkYXlJbmRleCA9IDA7XG5cbiAgICAgICAgZm9yICg7IGRheU51bWJlciA8PSBwcmV2TW9udGhEYXlzOyBkYXlOdW1iZXIrKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KHByZXZNb250aERheUNsYXNzLCBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheU51bWJlciksIGRheU51bWJlciwgZGF5SW5kZXgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoZGF5TnVtYmVyID0gMTsgZGF5TnVtYmVyIDw9IGRheXNJbk1vbnRoOyBkYXlOdW1iZXIrKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KFwiXCIsIG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXlOdW1iZXIpLCBkYXlOdW1iZXIsIGRheUluZGV4KSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKHZhciBkYXlOdW0gPSBkYXlzSW5Nb250aCArIDE7IGRheU51bSA8PSA0MiAtIGZpcnN0T2ZNb250aCAmJiAoc2VsZi5jb25maWcuc2hvd01vbnRocyA9PT0gMSB8fCBkYXlJbmRleCAlIDcgIT09IDApOyBkYXlOdW0rKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KG5leHRNb250aERheUNsYXNzLCBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIGRheU51bSAlIGRheXNJbk1vbnRoKSwgZGF5TnVtLCBkYXlJbmRleCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGRheUNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJkYXlDb250YWluZXJcIik7XG4gICAgICAgIGRheUNvbnRhaW5lci5hcHBlbmRDaGlsZChkYXlzKTtcbiAgICAgICAgcmV0dXJuIGRheUNvbnRhaW5lcjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGREYXlzKCkge1xuICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjbGVhck5vZGUoc2VsZi5kYXlzQ29udGFpbmVyKTtcbiAgICAgICAgaWYgKHNlbGYud2Vla051bWJlcnMpIGNsZWFyTm9kZShzZWxmLndlZWtOdW1iZXJzKTtcbiAgICAgICAgdmFyIGZyYWcgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG5cbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzZWxmLmNvbmZpZy5zaG93TW9udGhzOyBpKyspIHtcbiAgICAgICAgICB2YXIgZCA9IG5ldyBEYXRlKHNlbGYuY3VycmVudFllYXIsIHNlbGYuY3VycmVudE1vbnRoLCAxKTtcbiAgICAgICAgICBkLnNldE1vbnRoKHNlbGYuY3VycmVudE1vbnRoICsgaSk7XG4gICAgICAgICAgZnJhZy5hcHBlbmRDaGlsZChidWlsZE1vbnRoRGF5cyhkLmdldEZ1bGxZZWFyKCksIGQuZ2V0TW9udGgoKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZi5kYXlzQ29udGFpbmVyLmFwcGVuZENoaWxkKGZyYWcpO1xuICAgICAgICBzZWxmLmRheXMgPSBzZWxmLmRheXNDb250YWluZXIuZmlyc3RDaGlsZDtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aCgpIHtcbiAgICAgICAgdmFyIGNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItbW9udGhcIik7XG4gICAgICAgIHZhciBtb250aE5hdkZyYWdtZW50ID0gd2luZG93LmRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcbiAgICAgICAgdmFyIG1vbnRoRWxlbWVudCA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiY3VyLW1vbnRoXCIpO1xuICAgICAgICBtb250aEVsZW1lbnQudGl0bGUgPSBzZWxmLmwxMG4uc2Nyb2xsVGl0bGU7XG4gICAgICAgIHZhciB5ZWFySW5wdXQgPSBjcmVhdGVOdW1iZXJJbnB1dChcImN1ci15ZWFyXCIsIHtcbiAgICAgICAgICB0YWJpbmRleDogXCItMVwiXG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgeWVhckVsZW1lbnQgPSB5ZWFySW5wdXQuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgeWVhckVsZW1lbnQudGl0bGUgPSBzZWxmLmwxMG4uc2Nyb2xsVGl0bGU7XG4gICAgICAgIHllYXJFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIiwgc2VsZi5sMTBuLnllYXJBcmlhTGFiZWwpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSkgeWVhckVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIiwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkpO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhEYXRlKSB7XG4gICAgICAgICAgeWVhckVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIiwgc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkpO1xuICAgICAgICAgIHllYXJFbGVtZW50LmRpc2FibGVkID0gISFzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0RnVsbFllYXIoKSA9PT0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGN1cnJlbnRNb250aCA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItY3VycmVudC1tb250aFwiKTtcbiAgICAgICAgY3VycmVudE1vbnRoLmFwcGVuZENoaWxkKG1vbnRoRWxlbWVudCk7XG4gICAgICAgIGN1cnJlbnRNb250aC5hcHBlbmRDaGlsZCh5ZWFySW5wdXQpO1xuICAgICAgICBtb250aE5hdkZyYWdtZW50LmFwcGVuZENoaWxkKGN1cnJlbnRNb250aCk7XG4gICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChtb250aE5hdkZyYWdtZW50KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb250YWluZXI6IGNvbnRhaW5lcixcbiAgICAgICAgICB5ZWFyRWxlbWVudDogeWVhckVsZW1lbnQsXG4gICAgICAgICAgbW9udGhFbGVtZW50OiBtb250aEVsZW1lbnRcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aHMoKSB7XG4gICAgICAgIGNsZWFyTm9kZShzZWxmLm1vbnRoTmF2KTtcbiAgICAgICAgc2VsZi5tb250aE5hdi5hcHBlbmRDaGlsZChzZWxmLnByZXZNb250aE5hdik7XG5cbiAgICAgICAgZm9yICh2YXIgbSA9IHNlbGYuY29uZmlnLnNob3dNb250aHM7IG0tLTspIHtcbiAgICAgICAgICB2YXIgbW9udGggPSBidWlsZE1vbnRoKCk7XG4gICAgICAgICAgc2VsZi55ZWFyRWxlbWVudHMucHVzaChtb250aC55ZWFyRWxlbWVudCk7XG4gICAgICAgICAgc2VsZi5tb250aEVsZW1lbnRzLnB1c2gobW9udGgubW9udGhFbGVtZW50KTtcbiAgICAgICAgICBzZWxmLm1vbnRoTmF2LmFwcGVuZENoaWxkKG1vbnRoLmNvbnRhaW5lcik7XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLm1vbnRoTmF2LmFwcGVuZENoaWxkKHNlbGYubmV4dE1vbnRoTmF2KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aE5hdigpIHtcbiAgICAgICAgc2VsZi5tb250aE5hdiA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItbW9udGhzXCIpO1xuICAgICAgICBzZWxmLnllYXJFbGVtZW50cyA9IFtdO1xuICAgICAgICBzZWxmLm1vbnRoRWxlbWVudHMgPSBbXTtcbiAgICAgICAgc2VsZi5wcmV2TW9udGhOYXYgPSBjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci1wcmV2LW1vbnRoXCIpO1xuICAgICAgICBzZWxmLnByZXZNb250aE5hdi5pbm5lckhUTUwgPSBzZWxmLmNvbmZpZy5wcmV2QXJyb3c7XG4gICAgICAgIHNlbGYubmV4dE1vbnRoTmF2ID0gY3JlYXRlRWxlbWVudChcInNwYW5cIiwgXCJmbGF0cGlja3ItbmV4dC1tb250aFwiKTtcbiAgICAgICAgc2VsZi5uZXh0TW9udGhOYXYuaW5uZXJIVE1MID0gc2VsZi5jb25maWcubmV4dEFycm93O1xuICAgICAgICBidWlsZE1vbnRocygpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZiwgXCJfaGlkZVByZXZNb250aEFycm93XCIsIHtcbiAgICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLl9faGlkZVByZXZNb250aEFycm93O1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBmdW5jdGlvbiBzZXQoYm9vbCkge1xuICAgICAgICAgICAgaWYgKHNlbGYuX19oaWRlUHJldk1vbnRoQXJyb3cgIT09IGJvb2wpIHtcbiAgICAgICAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5wcmV2TW9udGhOYXYsIFwiZGlzYWJsZWRcIiwgYm9vbCk7XG4gICAgICAgICAgICAgIHNlbGYuX19oaWRlUHJldk1vbnRoQXJyb3cgPSBib29sO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLCBcIl9oaWRlTmV4dE1vbnRoQXJyb3dcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuX19oaWRlTmV4dE1vbnRoQXJyb3c7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IGZ1bmN0aW9uIHNldChib29sKSB7XG4gICAgICAgICAgICBpZiAoc2VsZi5fX2hpZGVOZXh0TW9udGhBcnJvdyAhPT0gYm9vbCkge1xuICAgICAgICAgICAgICB0b2dnbGVDbGFzcyhzZWxmLm5leHRNb250aE5hdiwgXCJkaXNhYmxlZFwiLCBib29sKTtcbiAgICAgICAgICAgICAgc2VsZi5fX2hpZGVOZXh0TW9udGhBcnJvdyA9IGJvb2w7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgc2VsZi5jdXJyZW50WWVhckVsZW1lbnQgPSBzZWxmLnllYXJFbGVtZW50c1swXTtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgICByZXR1cm4gc2VsZi5tb250aE5hdjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRUaW1lKCkge1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJoYXNUaW1lXCIpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubm9DYWxlbmRhcikgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKFwibm9DYWxlbmRhclwiKTtcbiAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci10aW1lXCIpO1xuICAgICAgICBzZWxmLnRpbWVDb250YWluZXIudGFiSW5kZXggPSAtMTtcbiAgICAgICAgdmFyIHNlcGFyYXRvciA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLXRpbWUtc2VwYXJhdG9yXCIsIFwiOlwiKTtcbiAgICAgICAgdmFyIGhvdXJJbnB1dCA9IGNyZWF0ZU51bWJlcklucHV0KFwiZmxhdHBpY2tyLWhvdXJcIik7XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQgPSBob3VySW5wdXQuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgdmFyIG1pbnV0ZUlucHV0ID0gY3JlYXRlTnVtYmVySW5wdXQoXCJmbGF0cGlja3ItbWludXRlXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQgPSBtaW51dGVJbnB1dC5jaGlsZE5vZGVzWzBdO1xuICAgICAgICBzZWxmLmhvdXJFbGVtZW50LnRhYkluZGV4ID0gc2VsZi5taW51dGVFbGVtZW50LnRhYkluZGV4ID0gLTE7XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQudmFsdWUgPSBwYWQoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPyBzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iai5nZXRIb3VycygpIDogc2VsZi5jb25maWcudGltZV8yNGhyID8gc2VsZi5jb25maWcuZGVmYXVsdEhvdXIgOiBtaWxpdGFyeTJhbXBtKHNlbGYuY29uZmlnLmRlZmF1bHRIb3VyKSk7XG4gICAgICAgIHNlbGYubWludXRlRWxlbWVudC52YWx1ZSA9IHBhZChzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLmdldE1pbnV0ZXMoKSA6IHNlbGYuY29uZmlnLmRlZmF1bHRNaW51dGUpO1xuICAgICAgICBzZWxmLmhvdXJFbGVtZW50LnNldEF0dHJpYnV0ZShcImRhdGEtc3RlcFwiLCBzZWxmLmNvbmZpZy5ob3VySW5jcmVtZW50LnRvU3RyaW5nKCkpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIsIHNlbGYuY29uZmlnLm1pbnV0ZUluY3JlbWVudC50b1N0cmluZygpKTtcbiAgICAgICAgc2VsZi5ob3VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1pblwiLCBzZWxmLmNvbmZpZy50aW1lXzI0aHIgPyBcIjBcIiA6IFwiMVwiKTtcbiAgICAgICAgc2VsZi5ob3VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1heFwiLCBzZWxmLmNvbmZpZy50aW1lXzI0aHIgPyBcIjIzXCIgOiBcIjEyXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIiwgXCIwXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIiwgXCI1OVwiKTtcbiAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKGhvdXJJbnB1dCk7XG4gICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZXBhcmF0b3IpO1xuICAgICAgICBzZWxmLnRpbWVDb250YWluZXIuYXBwZW5kQ2hpbGQobWludXRlSW5wdXQpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcudGltZV8yNGhyKSBzZWxmLnRpbWVDb250YWluZXIuY2xhc3NMaXN0LmFkZChcInRpbWUyNGhyXCIpO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVTZWNvbmRzKSB7XG4gICAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJoYXNTZWNvbmRzXCIpO1xuICAgICAgICAgIHZhciBzZWNvbmRJbnB1dCA9IGNyZWF0ZU51bWJlcklucHV0KFwiZmxhdHBpY2tyLXNlY29uZFwiKTtcbiAgICAgICAgICBzZWxmLnNlY29uZEVsZW1lbnQgPSBzZWNvbmRJbnB1dC5jaGlsZE5vZGVzWzBdO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC52YWx1ZSA9IHBhZChzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLmdldFNlY29uZHMoKSA6IHNlbGYuY29uZmlnLmRlZmF1bHRTZWNvbmRzKTtcbiAgICAgICAgICBzZWxmLnNlY29uZEVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIsIHNlbGYubWludXRlRWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJkYXRhLXN0ZXBcIikpO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1pblwiLCBzZWxmLm1pbnV0ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIikpO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1heFwiLCBzZWxmLm1pbnV0ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIikpO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci10aW1lLXNlcGFyYXRvclwiLCBcIjpcIikpO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWNvbmRJbnB1dCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNlbGYuY29uZmlnLnRpbWVfMjRocikge1xuICAgICAgICAgIHNlbGYuYW1QTSA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLWFtLXBtXCIsIHNlbGYubDEwbi5hbVBNW2ludCgoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPyBzZWxmLmhvdXJFbGVtZW50LnZhbHVlIDogc2VsZi5jb25maWcuZGVmYXVsdEhvdXIpID4gMTEpXSk7XG4gICAgICAgICAgc2VsZi5hbVBNLnRpdGxlID0gc2VsZi5sMTBuLnRvZ2dsZVRpdGxlO1xuICAgICAgICAgIHNlbGYuYW1QTS50YWJJbmRleCA9IC0xO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWxmLmFtUE0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHNlbGYudGltZUNvbnRhaW5lcjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRXZWVrZGF5cygpIHtcbiAgICAgICAgaWYgKCFzZWxmLndlZWtkYXlDb250YWluZXIpIHNlbGYud2Vla2RheUNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd2Vla2RheXNcIik7ZWxzZSBjbGVhck5vZGUoc2VsZi53ZWVrZGF5Q29udGFpbmVyKTtcblxuICAgICAgICBmb3IgKHZhciBpID0gc2VsZi5jb25maWcuc2hvd01vbnRoczsgaS0tOykge1xuICAgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXJcIik7XG4gICAgICAgICAgc2VsZi53ZWVrZGF5Q29udGFpbmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVXZWVrZGF5cygpO1xuICAgICAgICByZXR1cm4gc2VsZi53ZWVrZGF5Q29udGFpbmVyO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB1cGRhdGVXZWVrZGF5cygpIHtcbiAgICAgICAgdmFyIGZpcnN0RGF5T2ZXZWVrID0gc2VsZi5sMTBuLmZpcnN0RGF5T2ZXZWVrO1xuICAgICAgICB2YXIgd2Vla2RheXMgPSBzZWxmLmwxMG4ud2Vla2RheXMuc2hvcnRoYW5kLmNvbmNhdCgpO1xuXG4gICAgICAgIGlmIChmaXJzdERheU9mV2VlayA+IDAgJiYgZmlyc3REYXlPZldlZWsgPCB3ZWVrZGF5cy5sZW5ndGgpIHtcbiAgICAgICAgICB3ZWVrZGF5cyA9IHdlZWtkYXlzLnNwbGljZShmaXJzdERheU9mV2Vlaywgd2Vla2RheXMubGVuZ3RoKS5jb25jYXQod2Vla2RheXMuc3BsaWNlKDAsIGZpcnN0RGF5T2ZXZWVrKSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKHZhciBpID0gc2VsZi5jb25maWcuc2hvd01vbnRoczsgaS0tOykge1xuICAgICAgICAgIHNlbGYud2Vla2RheUNvbnRhaW5lci5jaGlsZHJlbltpXS5pbm5lckhUTUwgPSBcIlxcbiAgICAgIDxzcGFuIGNsYXNzPWZsYXRwaWNrci13ZWVrZGF5PlxcbiAgICAgICAgXCIgKyB3ZWVrZGF5cy5qb2luKFwiPC9zcGFuPjxzcGFuIGNsYXNzPWZsYXRwaWNrci13ZWVrZGF5PlwiKSArIFwiXFxuICAgICAgPC9zcGFuPlxcbiAgICAgIFwiO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGJ1aWxkV2Vla3MoKSB7XG4gICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChcImhhc1dlZWtzXCIpO1xuICAgICAgICB2YXIgd2Vla1dyYXBwZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLXdlZWt3cmFwcGVyXCIpO1xuICAgICAgICB3ZWVrV3JhcHBlci5hcHBlbmRDaGlsZChjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci13ZWVrZGF5XCIsIHNlbGYubDEwbi53ZWVrQWJicmV2aWF0aW9uKSk7XG4gICAgICAgIHZhciB3ZWVrTnVtYmVycyA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd2Vla3NcIik7XG4gICAgICAgIHdlZWtXcmFwcGVyLmFwcGVuZENoaWxkKHdlZWtOdW1iZXJzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB3ZWVrV3JhcHBlcjogd2Vla1dyYXBwZXIsXG4gICAgICAgICAgd2Vla051bWJlcnM6IHdlZWtOdW1iZXJzXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNoYW5nZU1vbnRoKHZhbHVlLCBpc19vZmZzZXQpIHtcbiAgICAgICAgaWYgKGlzX29mZnNldCA9PT0gdm9pZCAwKSB7XG4gICAgICAgICAgaXNfb2Zmc2V0ID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBkZWx0YSA9IGlzX29mZnNldCA/IHZhbHVlIDogdmFsdWUgLSBzZWxmLmN1cnJlbnRNb250aDtcbiAgICAgICAgaWYgKGRlbHRhIDwgMCAmJiBzZWxmLl9oaWRlUHJldk1vbnRoQXJyb3cgPT09IHRydWUgfHwgZGVsdGEgPiAwICYmIHNlbGYuX2hpZGVOZXh0TW9udGhBcnJvdyA9PT0gdHJ1ZSkgcmV0dXJuO1xuICAgICAgICBzZWxmLmN1cnJlbnRNb250aCArPSBkZWx0YTtcblxuICAgICAgICBpZiAoc2VsZi5jdXJyZW50TW9udGggPCAwIHx8IHNlbGYuY3VycmVudE1vbnRoID4gMTEpIHtcbiAgICAgICAgICBzZWxmLmN1cnJlbnRZZWFyICs9IHNlbGYuY3VycmVudE1vbnRoID4gMTEgPyAxIDogLTE7XG4gICAgICAgICAgc2VsZi5jdXJyZW50TW9udGggPSAoc2VsZi5jdXJyZW50TW9udGggKyAxMikgJSAxMjtcbiAgICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvblllYXJDaGFuZ2VcIik7XG4gICAgICAgIH1cblxuICAgICAgICBidWlsZERheXMoKTtcbiAgICAgICAgdHJpZ2dlckV2ZW50KFwib25Nb250aENoYW5nZVwiKTtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBjbGVhcih0cmlnZ2VyQ2hhbmdlRXZlbnQpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCA9PT0gdm9pZCAwKSB7XG4gICAgICAgICAgdHJpZ2dlckNoYW5nZUV2ZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuaW5wdXQudmFsdWUgPSBcIlwiO1xuICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dCAhPT0gdW5kZWZpbmVkKSBzZWxmLmFsdElucHV0LnZhbHVlID0gXCJcIjtcbiAgICAgICAgaWYgKHNlbGYubW9iaWxlSW5wdXQgIT09IHVuZGVmaW5lZCkgc2VsZi5tb2JpbGVJbnB1dC52YWx1ZSA9IFwiXCI7XG4gICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IFtdO1xuICAgICAgICBzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA9IHVuZGVmaW5lZDtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUgPT09IHRydWUpIHtcbiAgICAgICAgICBzZXREZWZhdWx0SG91cnMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgIGlmICh0cmlnZ2VyQ2hhbmdlRXZlbnQpIHRyaWdnZXJFdmVudChcIm9uQ2hhbmdlXCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBjbG9zZSgpIHtcbiAgICAgICAgc2VsZi5pc09wZW4gPSBmYWxzZTtcblxuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUpIHtcbiAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJvcGVuXCIpO1xuXG4gICAgICAgICAgc2VsZi5faW5wdXQuY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZVwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2xvc2VcIik7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZyAhPT0gdW5kZWZpbmVkKSB0cmlnZ2VyRXZlbnQoXCJvbkRlc3Ryb3lcIik7XG5cbiAgICAgICAgZm9yICh2YXIgaSA9IHNlbGYuX2hhbmRsZXJzLmxlbmd0aDsgaS0tOykge1xuICAgICAgICAgIHZhciBoID0gc2VsZi5faGFuZGxlcnNbaV07XG4gICAgICAgICAgaC5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoaC5ldmVudCwgaC5oYW5kbGVyLCBoLm9wdGlvbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZi5faGFuZGxlcnMgPSBbXTtcblxuICAgICAgICBpZiAoc2VsZi5tb2JpbGVJbnB1dCkge1xuICAgICAgICAgIGlmIChzZWxmLm1vYmlsZUlucHV0LnBhcmVudE5vZGUpIHNlbGYubW9iaWxlSW5wdXQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChzZWxmLm1vYmlsZUlucHV0KTtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0ID0gdW5kZWZpbmVkO1xuICAgICAgICB9IGVsc2UgaWYgKHNlbGYuY2FsZW5kYXJDb250YWluZXIgJiYgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5wYXJlbnROb2RlKSBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoc2VsZi5jYWxlbmRhckNvbnRhaW5lcik7XG5cbiAgICAgICAgaWYgKHNlbGYuYWx0SW5wdXQpIHtcbiAgICAgICAgICBzZWxmLmlucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dC5wYXJlbnROb2RlKSBzZWxmLmFsdElucHV0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoc2VsZi5hbHRJbnB1dCk7XG4gICAgICAgICAgZGVsZXRlIHNlbGYuYWx0SW5wdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5pbnB1dCkge1xuICAgICAgICAgIHNlbGYuaW5wdXQudHlwZSA9IHNlbGYuaW5wdXQuX3R5cGU7XG4gICAgICAgICAgc2VsZi5pbnB1dC5jbGFzc0xpc3QucmVtb3ZlKFwiZmxhdHBpY2tyLWlucHV0XCIpO1xuICAgICAgICAgIHNlbGYuaW5wdXQucmVtb3ZlQXR0cmlidXRlKFwicmVhZG9ubHlcIik7XG4gICAgICAgICAgc2VsZi5pbnB1dC52YWx1ZSA9IFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICBbXCJfc2hvd1RpbWVJbnB1dFwiLCBcImxhdGVzdFNlbGVjdGVkRGF0ZU9ialwiLCBcIl9oaWRlTmV4dE1vbnRoQXJyb3dcIiwgXCJfaGlkZVByZXZNb250aEFycm93XCIsIFwiX19oaWRlTmV4dE1vbnRoQXJyb3dcIiwgXCJfX2hpZGVQcmV2TW9udGhBcnJvd1wiLCBcImlzTW9iaWxlXCIsIFwiaXNPcGVuXCIsIFwic2VsZWN0ZWREYXRlRWxlbVwiLCBcIm1pbkRhdGVIYXNUaW1lXCIsIFwibWF4RGF0ZUhhc1RpbWVcIiwgXCJkYXlzXCIsIFwiZGF5c0NvbnRhaW5lclwiLCBcIl9pbnB1dFwiLCBcIl9wb3NpdGlvbkVsZW1lbnRcIiwgXCJpbm5lckNvbnRhaW5lclwiLCBcInJDb250YWluZXJcIiwgXCJtb250aE5hdlwiLCBcInRvZGF5RGF0ZUVsZW1cIiwgXCJjYWxlbmRhckNvbnRhaW5lclwiLCBcIndlZWtkYXlDb250YWluZXJcIiwgXCJwcmV2TW9udGhOYXZcIiwgXCJuZXh0TW9udGhOYXZcIiwgXCJjdXJyZW50TW9udGhFbGVtZW50XCIsIFwiY3VycmVudFllYXJFbGVtZW50XCIsIFwibmF2aWdhdGlvbkN1cnJlbnRNb250aFwiLCBcInNlbGVjdGVkRGF0ZUVsZW1cIiwgXCJjb25maWdcIl0uZm9yRWFjaChmdW5jdGlvbiAoaykge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBkZWxldGUgc2VsZltrXTtcbiAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gaXNDYWxlbmRhckVsZW0oZWxlbSkge1xuICAgICAgICBpZiAoc2VsZi5jb25maWcuYXBwZW5kVG8gJiYgc2VsZi5jb25maWcuYXBwZW5kVG8uY29udGFpbnMoZWxlbSkpIHJldHVybiB0cnVlO1xuICAgICAgICByZXR1cm4gc2VsZi5jYWxlbmRhckNvbnRhaW5lci5jb250YWlucyhlbGVtKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZG9jdW1lbnRDbGljayhlKSB7XG4gICAgICAgIGlmIChzZWxmLmlzT3BlbiAmJiAhc2VsZi5jb25maWcuaW5saW5lKSB7XG4gICAgICAgICAgdmFyIGlzQ2FsZW5kYXJFbGVtZW50ID0gaXNDYWxlbmRhckVsZW0oZS50YXJnZXQpO1xuICAgICAgICAgIHZhciBpc0lucHV0ID0gZS50YXJnZXQgPT09IHNlbGYuaW5wdXQgfHwgZS50YXJnZXQgPT09IHNlbGYuYWx0SW5wdXQgfHwgc2VsZi5lbGVtZW50LmNvbnRhaW5zKGUudGFyZ2V0KSB8fCBlLnBhdGggJiYgZS5wYXRoLmluZGV4T2YgJiYgKH5lLnBhdGguaW5kZXhPZihzZWxmLmlucHV0KSB8fCB+ZS5wYXRoLmluZGV4T2Yoc2VsZi5hbHRJbnB1dCkpO1xuICAgICAgICAgIHZhciBsb3N0Rm9jdXMgPSBlLnR5cGUgPT09IFwiYmx1clwiID8gaXNJbnB1dCAmJiBlLnJlbGF0ZWRUYXJnZXQgJiYgIWlzQ2FsZW5kYXJFbGVtKGUucmVsYXRlZFRhcmdldCkgOiAhaXNJbnB1dCAmJiAhaXNDYWxlbmRhckVsZW1lbnQ7XG4gICAgICAgICAgdmFyIGlzSWdub3JlZCA9ICFzZWxmLmNvbmZpZy5pZ25vcmVkRm9jdXNFbGVtZW50cy5zb21lKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gZWxlbS5jb250YWlucyhlLnRhcmdldCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAobG9zdEZvY3VzICYmIGlzSWdub3JlZCkge1xuICAgICAgICAgICAgc2VsZi5jbG9zZSgpO1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiICYmIHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgc2VsZi5jbGVhcihmYWxzZSk7XG4gICAgICAgICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNoYW5nZVllYXIobmV3WWVhcikge1xuICAgICAgICBpZiAoIW5ld1llYXIgfHwgc2VsZi5jb25maWcubWluRGF0ZSAmJiBuZXdZZWFyIDwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpIHx8IHNlbGYuY29uZmlnLm1heERhdGUgJiYgbmV3WWVhciA+IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSkgcmV0dXJuO1xuICAgICAgICB2YXIgbmV3WWVhck51bSA9IG5ld1llYXIsXG4gICAgICAgICAgICBpc05ld1llYXIgPSBzZWxmLmN1cnJlbnRZZWFyICE9PSBuZXdZZWFyTnVtO1xuICAgICAgICBzZWxmLmN1cnJlbnRZZWFyID0gbmV3WWVhck51bSB8fCBzZWxmLmN1cnJlbnRZZWFyO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY3VycmVudFllYXIgPT09IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSkge1xuICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0gTWF0aC5taW4oc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNb250aCgpLCBzZWxmLmN1cnJlbnRNb250aCk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2VsZi5jb25maWcubWluRGF0ZSAmJiBzZWxmLmN1cnJlbnRZZWFyID09PSBzZWxmLmNvbmZpZy5taW5EYXRlLmdldEZ1bGxZZWFyKCkpIHtcbiAgICAgICAgICBzZWxmLmN1cnJlbnRNb250aCA9IE1hdGgubWF4KHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0TW9udGgoKSwgc2VsZi5jdXJyZW50TW9udGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzTmV3WWVhcikge1xuICAgICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25ZZWFyQ2hhbmdlXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzRW5hYmxlZChkYXRlLCB0aW1lbGVzcykge1xuICAgICAgICBpZiAodGltZWxlc3MgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRpbWVsZXNzID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBkYXRlVG9DaGVjayA9IHNlbGYucGFyc2VEYXRlKGRhdGUsIHVuZGVmaW5lZCwgdGltZWxlc3MpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSAmJiBkYXRlVG9DaGVjayAmJiBjb21wYXJlRGF0ZXMoZGF0ZVRvQ2hlY2ssIHNlbGYuY29uZmlnLm1pbkRhdGUsIHRpbWVsZXNzICE9PSB1bmRlZmluZWQgPyB0aW1lbGVzcyA6ICFzZWxmLm1pbkRhdGVIYXNUaW1lKSA8IDAgfHwgc2VsZi5jb25maWcubWF4RGF0ZSAmJiBkYXRlVG9DaGVjayAmJiBjb21wYXJlRGF0ZXMoZGF0ZVRvQ2hlY2ssIHNlbGYuY29uZmlnLm1heERhdGUsIHRpbWVsZXNzICE9PSB1bmRlZmluZWQgPyB0aW1lbGVzcyA6ICFzZWxmLm1heERhdGVIYXNUaW1lKSA+IDApIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZS5sZW5ndGggPT09IDAgJiYgc2VsZi5jb25maWcuZGlzYWJsZS5sZW5ndGggPT09IDApIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoZGF0ZVRvQ2hlY2sgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlO1xuICAgICAgICB2YXIgYm9vbCA9IHNlbGYuY29uZmlnLmVuYWJsZS5sZW5ndGggPiAwLFxuICAgICAgICAgICAgYXJyYXkgPSBib29sID8gc2VsZi5jb25maWcuZW5hYmxlIDogc2VsZi5jb25maWcuZGlzYWJsZTtcblxuICAgICAgICBmb3IgKHZhciBpID0gMCwgZDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgZCA9IGFycmF5W2ldO1xuICAgICAgICAgIGlmICh0eXBlb2YgZCA9PT0gXCJmdW5jdGlvblwiICYmIGQoZGF0ZVRvQ2hlY2spKSByZXR1cm4gYm9vbDtlbHNlIGlmIChkIGluc3RhbmNlb2YgRGF0ZSAmJiBkYXRlVG9DaGVjayAhPT0gdW5kZWZpbmVkICYmIGQuZ2V0VGltZSgpID09PSBkYXRlVG9DaGVjay5nZXRUaW1lKCkpIHJldHVybiBib29sO2Vsc2UgaWYgKHR5cGVvZiBkID09PSBcInN0cmluZ1wiICYmIGRhdGVUb0NoZWNrICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHZhciBwYXJzZWQgPSBzZWxmLnBhcnNlRGF0ZShkLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcnNlZCAmJiBwYXJzZWQuZ2V0VGltZSgpID09PSBkYXRlVG9DaGVjay5nZXRUaW1lKCkgPyBib29sIDogIWJvb2w7XG4gICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZCA9PT0gXCJvYmplY3RcIiAmJiBkYXRlVG9DaGVjayAhPT0gdW5kZWZpbmVkICYmIGQuZnJvbSAmJiBkLnRvICYmIGRhdGVUb0NoZWNrLmdldFRpbWUoKSA+PSBkLmZyb20uZ2V0VGltZSgpICYmIGRhdGVUb0NoZWNrLmdldFRpbWUoKSA8PSBkLnRvLmdldFRpbWUoKSkgcmV0dXJuIGJvb2w7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gIWJvb2w7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzSW5WaWV3KGVsZW0pIHtcbiAgICAgICAgaWYgKHNlbGYuZGF5c0NvbnRhaW5lciAhPT0gdW5kZWZpbmVkKSByZXR1cm4gZWxlbS5jbGFzc05hbWUuaW5kZXhPZihcImhpZGRlblwiKSA9PT0gLTEgJiYgc2VsZi5kYXlzQ29udGFpbmVyLmNvbnRhaW5zKGVsZW0pO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG9uS2V5RG93bihlKSB7XG4gICAgICAgIHZhciBpc0lucHV0ID0gZS50YXJnZXQgPT09IHNlbGYuX2lucHV0O1xuICAgICAgICB2YXIgYWxsb3dJbnB1dCA9IHNlbGYuY29uZmlnLmFsbG93SW5wdXQ7XG4gICAgICAgIHZhciBhbGxvd0tleWRvd24gPSBzZWxmLmlzT3BlbiAmJiAoIWFsbG93SW5wdXQgfHwgIWlzSW5wdXQpO1xuICAgICAgICB2YXIgYWxsb3dJbmxpbmVLZXlkb3duID0gc2VsZi5jb25maWcuaW5saW5lICYmIGlzSW5wdXQgJiYgIWFsbG93SW5wdXQ7XG5cbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMTMgJiYgaXNJbnB1dCkge1xuICAgICAgICAgIGlmIChhbGxvd0lucHV0KSB7XG4gICAgICAgICAgICBzZWxmLnNldERhdGUoc2VsZi5faW5wdXQudmFsdWUsIHRydWUsIGUudGFyZ2V0ID09PSBzZWxmLmFsdElucHV0ID8gc2VsZi5jb25maWcuYWx0Rm9ybWF0IDogc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgICAgICByZXR1cm4gZS50YXJnZXQuYmx1cigpO1xuICAgICAgICAgIH0gZWxzZSBzZWxmLm9wZW4oKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0NhbGVuZGFyRWxlbShlLnRhcmdldCkgfHwgYWxsb3dLZXlkb3duIHx8IGFsbG93SW5saW5lS2V5ZG93bikge1xuICAgICAgICAgIHZhciBpc1RpbWVPYmogPSAhIXNlbGYudGltZUNvbnRhaW5lciAmJiBzZWxmLnRpbWVDb250YWluZXIuY29udGFpbnMoZS50YXJnZXQpO1xuXG4gICAgICAgICAgc3dpdGNoIChlLmtleUNvZGUpIHtcbiAgICAgICAgICAgIGNhc2UgMTM6XG4gICAgICAgICAgICAgIGlmIChpc1RpbWVPYmopIHVwZGF0ZVRpbWUoKTtlbHNlIHNlbGVjdERhdGUoZSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDI3OlxuICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgIGZvY3VzQW5kQ2xvc2UoKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgIGNhc2UgNDY6XG4gICAgICAgICAgICAgIGlmIChpc0lucHV0ICYmICFzZWxmLmNvbmZpZy5hbGxvd0lucHV0KSB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIHNlbGYuY2xlYXIoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDM3OlxuICAgICAgICAgICAgY2FzZSAzOTpcbiAgICAgICAgICAgICAgaWYgKCFpc1RpbWVPYmopIHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyICE9PSB1bmRlZmluZWQgJiYgKGFsbG93SW5wdXQgPT09IGZhbHNlIHx8IGlzSW5WaWV3KGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKSkge1xuICAgICAgICAgICAgICAgICAgdmFyIF9kZWx0YSA9IGUua2V5Q29kZSA9PT0gMzkgPyAxIDogLTE7XG5cbiAgICAgICAgICAgICAgICAgIGlmICghZS5jdHJsS2V5KSBmb2N1c09uRGF5KHVuZGVmaW5lZCwgX2RlbHRhKTtlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY2hhbmdlTW9udGgoX2RlbHRhKTtcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNPbkRheShnZXRGaXJzdEF2YWlsYWJsZURheSgxKSwgMCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlbGYuaG91ckVsZW1lbnQpIHNlbGYuaG91ckVsZW1lbnQuZm9jdXMoKTtcblxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAzODpcbiAgICAgICAgICAgIGNhc2UgNDA6XG4gICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgdmFyIGRlbHRhID0gZS5rZXlDb2RlID09PSA0MCA/IDEgOiAtMTtcblxuICAgICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyKSB7XG4gICAgICAgICAgICAgICAgaWYgKGUuY3RybEtleSkge1xuICAgICAgICAgICAgICAgICAgY2hhbmdlWWVhcihzZWxmLmN1cnJlbnRZZWFyIC0gZGVsdGEpO1xuICAgICAgICAgICAgICAgICAgZm9jdXNPbkRheShnZXRGaXJzdEF2YWlsYWJsZURheSgxKSwgMCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICghaXNUaW1lT2JqKSBmb2N1c09uRGF5KHVuZGVmaW5lZCwgZGVsdGEgKiA3KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1RpbWVPYmogJiYgc2VsZi5ob3VyRWxlbWVudCkgc2VsZi5ob3VyRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHVwZGF0ZVRpbWUoZSk7XG5cbiAgICAgICAgICAgICAgICBzZWxmLl9kZWJvdW5jZWRDaGFuZ2UoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDk6XG4gICAgICAgICAgICAgIGlmICghaXNUaW1lT2JqKSBicmVhaztcbiAgICAgICAgICAgICAgdmFyIGVsZW1zID0gW3NlbGYuaG91ckVsZW1lbnQsIHNlbGYubWludXRlRWxlbWVudCwgc2VsZi5zZWNvbmRFbGVtZW50LCBzZWxmLmFtUE1dLmZpbHRlcihmdW5jdGlvbiAoeCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgdmFyIGkgPSBlbGVtcy5pbmRleE9mKGUudGFyZ2V0KTtcblxuICAgICAgICAgICAgICBpZiAoaSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0ID0gZWxlbXNbaSArIChlLnNoaWZ0S2V5ID8gLTEgOiAxKV07XG5cbiAgICAgICAgICAgICAgICBpZiAodGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgIHRhcmdldC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQgJiYgZS50YXJnZXQgPT09IHNlbGYuYW1QTSkge1xuICAgICAgICAgIHN3aXRjaCAoZS5rZXkpIHtcbiAgICAgICAgICAgIGNhc2Ugc2VsZi5sMTBuLmFtUE1bMF0uY2hhckF0KDApOlxuICAgICAgICAgICAgY2FzZSBzZWxmLmwxMG4uYW1QTVswXS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKTpcbiAgICAgICAgICAgICAgc2VsZi5hbVBNLnRleHRDb250ZW50ID0gc2VsZi5sMTBuLmFtUE1bMF07XG4gICAgICAgICAgICAgIHNldEhvdXJzRnJvbUlucHV0cygpO1xuICAgICAgICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBzZWxmLmwxMG4uYW1QTVsxXS5jaGFyQXQoMCk6XG4gICAgICAgICAgICBjYXNlIHNlbGYubDEwbi5hbVBNWzFdLmNoYXJBdCgwKS50b0xvd2VyQ2FzZSgpOlxuICAgICAgICAgICAgICBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVsxXTtcbiAgICAgICAgICAgICAgc2V0SG91cnNGcm9tSW5wdXRzKCk7XG4gICAgICAgICAgICAgIHVwZGF0ZVZhbHVlKCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uS2V5RG93blwiLCBlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gb25Nb3VzZU92ZXIoZWxlbSkge1xuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCAhPT0gMSB8fCAhZWxlbS5jbGFzc0xpc3QuY29udGFpbnMoXCJmbGF0cGlja3ItZGF5XCIpIHx8IGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKFwiZGlzYWJsZWRcIikpIHJldHVybjtcbiAgICAgICAgdmFyIGhvdmVyRGF0ZSA9IGVsZW0uZGF0ZU9iai5nZXRUaW1lKCksXG4gICAgICAgICAgICBpbml0aWFsRGF0ZSA9IHNlbGYucGFyc2VEYXRlKHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdW5kZWZpbmVkLCB0cnVlKS5nZXRUaW1lKCksXG4gICAgICAgICAgICByYW5nZVN0YXJ0RGF0ZSA9IE1hdGgubWluKGhvdmVyRGF0ZSwgc2VsZi5zZWxlY3RlZERhdGVzWzBdLmdldFRpbWUoKSksXG4gICAgICAgICAgICByYW5nZUVuZERhdGUgPSBNYXRoLm1heChob3ZlckRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXS5nZXRUaW1lKCkpO1xuICAgICAgICB2YXIgY29udGFpbnNEaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB2YXIgbWluUmFuZ2UgPSAwLFxuICAgICAgICAgICAgbWF4UmFuZ2UgPSAwO1xuXG4gICAgICAgIGZvciAodmFyIHQgPSByYW5nZVN0YXJ0RGF0ZTsgdCA8IHJhbmdlRW5kRGF0ZTsgdCArPSBkdXJhdGlvbi5EQVkpIHtcbiAgICAgICAgICBpZiAoIWlzRW5hYmxlZChuZXcgRGF0ZSh0KSwgdHJ1ZSkpIHtcbiAgICAgICAgICAgIGNvbnRhaW5zRGlzYWJsZWQgPSBjb250YWluc0Rpc2FibGVkIHx8IHQgPiByYW5nZVN0YXJ0RGF0ZSAmJiB0IDwgcmFuZ2VFbmREYXRlO1xuICAgICAgICAgICAgaWYgKHQgPCBpbml0aWFsRGF0ZSAmJiAoIW1pblJhbmdlIHx8IHQgPiBtaW5SYW5nZSkpIG1pblJhbmdlID0gdDtlbHNlIGlmICh0ID4gaW5pdGlhbERhdGUgJiYgKCFtYXhSYW5nZSB8fCB0IDwgbWF4UmFuZ2UpKSBtYXhSYW5nZSA9IHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yICh2YXIgbSA9IDA7IG0gPCBzZWxmLmNvbmZpZy5zaG93TW9udGhzOyBtKyspIHtcbiAgICAgICAgICB2YXIgbW9udGggPSBzZWxmLmRheXNDb250YWluZXIuY2hpbGRyZW5bbV07XG4gICAgICAgICAgdmFyIHByZXZNb250aCA9IHNlbGYuZGF5c0NvbnRhaW5lci5jaGlsZHJlblttIC0gMV07XG5cbiAgICAgICAgICB2YXIgX2xvb3AgPSBmdW5jdGlvbiBfbG9vcChpLCBsKSB7XG4gICAgICAgICAgICB2YXIgZGF5RWxlbSA9IG1vbnRoLmNoaWxkcmVuW2ldLFxuICAgICAgICAgICAgICAgIGRhdGUgPSBkYXlFbGVtLmRhdGVPYmo7XG4gICAgICAgICAgICB2YXIgdGltZXN0YW1wID0gZGF0ZS5nZXRUaW1lKCk7XG4gICAgICAgICAgICB2YXIgb3V0T2ZSYW5nZSA9IG1pblJhbmdlID4gMCAmJiB0aW1lc3RhbXAgPCBtaW5SYW5nZSB8fCBtYXhSYW5nZSA+IDAgJiYgdGltZXN0YW1wID4gbWF4UmFuZ2U7XG5cbiAgICAgICAgICAgIGlmIChvdXRPZlJhbmdlKSB7XG4gICAgICAgICAgICAgIGRheUVsZW0uY2xhc3NMaXN0LmFkZChcIm5vdEFsbG93ZWRcIik7XG4gICAgICAgICAgICAgIFtcImluUmFuZ2VcIiwgXCJzdGFydFJhbmdlXCIsIFwiZW5kUmFuZ2VcIl0uZm9yRWFjaChmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgICAgIGRheUVsZW0uY2xhc3NMaXN0LnJlbW92ZShjKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIHJldHVybiBcImNvbnRpbnVlXCI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRhaW5zRGlzYWJsZWQgJiYgIW91dE9mUmFuZ2UpIHJldHVybiBcImNvbnRpbnVlXCI7XG5cbiAgICAgICAgICAgIFtcInN0YXJ0UmFuZ2VcIiwgXCJpblJhbmdlXCIsIFwiZW5kUmFuZ2VcIiwgXCJub3RBbGxvd2VkXCJdLmZvckVhY2goZnVuY3Rpb24gKGMpIHtcbiAgICAgICAgICAgICAgZGF5RWxlbS5jbGFzc0xpc3QucmVtb3ZlKGMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBlbGVtLmNsYXNzTGlzdC5hZGQoaG92ZXJEYXRlIDwgc2VsZi5zZWxlY3RlZERhdGVzWzBdLmdldFRpbWUoKSA/IFwic3RhcnRSYW5nZVwiIDogXCJlbmRSYW5nZVwiKTtcblxuICAgICAgICAgICAgaWYgKG1vbnRoLmNvbnRhaW5zKGVsZW0pIHx8ICEobSA+IDAgJiYgcHJldk1vbnRoICYmIHByZXZNb250aC5sYXN0Q2hpbGQuZGF0ZU9iai5nZXRUaW1lKCkgPj0gdGltZXN0YW1wKSkge1xuICAgICAgICAgICAgICBpZiAoaW5pdGlhbERhdGUgPCBob3ZlckRhdGUgJiYgdGltZXN0YW1wID09PSBpbml0aWFsRGF0ZSkgZGF5RWxlbS5jbGFzc0xpc3QuYWRkKFwic3RhcnRSYW5nZVwiKTtlbHNlIGlmIChpbml0aWFsRGF0ZSA+IGhvdmVyRGF0ZSAmJiB0aW1lc3RhbXAgPT09IGluaXRpYWxEYXRlKSBkYXlFbGVtLmNsYXNzTGlzdC5hZGQoXCJlbmRSYW5nZVwiKTtcbiAgICAgICAgICAgICAgaWYgKHRpbWVzdGFtcCA+PSBtaW5SYW5nZSAmJiAobWF4UmFuZ2UgPT09IDAgfHwgdGltZXN0YW1wIDw9IG1heFJhbmdlKSAmJiBpc0JldHdlZW4odGltZXN0YW1wLCBpbml0aWFsRGF0ZSwgaG92ZXJEYXRlKSkgZGF5RWxlbS5jbGFzc0xpc3QuYWRkKFwiaW5SYW5nZVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBtb250aC5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBfcmV0ID0gX2xvb3AoaSwgbCk7XG5cbiAgICAgICAgICAgIGlmIChfcmV0ID09PSBcImNvbnRpbnVlXCIpIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvblJlc2l6ZSgpIHtcbiAgICAgICAgaWYgKHNlbGYuaXNPcGVuICYmICFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgIXNlbGYuY29uZmlnLmlubGluZSkgcG9zaXRpb25DYWxlbmRhcigpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvcGVuKGUsIHBvc2l0aW9uRWxlbWVudCkge1xuICAgICAgICBpZiAocG9zaXRpb25FbGVtZW50ID09PSB2b2lkIDApIHtcbiAgICAgICAgICBwb3NpdGlvbkVsZW1lbnQgPSBzZWxmLl9pbnB1dDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmlzTW9iaWxlID09PSB0cnVlKSB7XG4gICAgICAgICAgaWYgKGUpIHtcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGUudGFyZ2V0ICYmIGUudGFyZ2V0LmJsdXIoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHNlbGYubW9iaWxlSW5wdXQgIT09IHVuZGVmaW5lZCAmJiBzZWxmLm1vYmlsZUlucHV0LmZvY3VzKCk7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25PcGVuXCIpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLl9pbnB1dC5kaXNhYmxlZCB8fCBzZWxmLmNvbmZpZy5pbmxpbmUpIHJldHVybjtcbiAgICAgICAgdmFyIHdhc09wZW4gPSBzZWxmLmlzT3BlbjtcbiAgICAgICAgc2VsZi5pc09wZW4gPSB0cnVlO1xuXG4gICAgICAgIGlmICghd2FzT3Blbikge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm9wZW5cIik7XG5cbiAgICAgICAgICBzZWxmLl9pbnB1dC5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlXCIpO1xuXG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25PcGVuXCIpO1xuICAgICAgICAgIHBvc2l0aW9uQ2FsZW5kYXIocG9zaXRpb25FbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lID09PSB0cnVlICYmIHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgPT09IHRydWUpIHtcbiAgICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgc2VsZi5zZXREYXRlKHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCA/IG5ldyBEYXRlKHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0VGltZSgpKSA6IG5ldyBEYXRlKCksIGZhbHNlKTtcbiAgICAgICAgICAgIHNldERlZmF1bHRIb3VycygpO1xuICAgICAgICAgICAgdXBkYXRlVmFsdWUoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuYWxsb3dJbnB1dCA9PT0gZmFsc2UgJiYgKGUgPT09IHVuZGVmaW5lZCB8fCAhc2VsZi50aW1lQ29udGFpbmVyLmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCkpKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuaG91ckVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgICAgICB9LCA1MCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG1pbk1heERhdGVTZXR0ZXIodHlwZSkge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICB2YXIgZGF0ZU9iaiA9IHNlbGYuY29uZmlnW1wiX1wiICsgdHlwZSArIFwiRGF0ZVwiXSA9IHNlbGYucGFyc2VEYXRlKGRhdGUsIHNlbGYuY29uZmlnLmRhdGVGb3JtYXQpO1xuICAgICAgICAgIHZhciBpbnZlcnNlRGF0ZU9iaiA9IHNlbGYuY29uZmlnW1wiX1wiICsgKHR5cGUgPT09IFwibWluXCIgPyBcIm1heFwiIDogXCJtaW5cIikgKyBcIkRhdGVcIl07XG5cbiAgICAgICAgICBpZiAoZGF0ZU9iaiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBzZWxmW3R5cGUgPT09IFwibWluXCIgPyBcIm1pbkRhdGVIYXNUaW1lXCIgOiBcIm1heERhdGVIYXNUaW1lXCJdID0gZGF0ZU9iai5nZXRIb3VycygpID4gMCB8fCBkYXRlT2JqLmdldE1pbnV0ZXMoKSA+IDAgfHwgZGF0ZU9iai5nZXRTZWNvbmRzKCkgPiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMpIHtcbiAgICAgICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IHNlbGYuc2VsZWN0ZWREYXRlcy5maWx0ZXIoZnVuY3Rpb24gKGQpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGlzRW5hYmxlZChkKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKCFzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoICYmIHR5cGUgPT09IFwibWluXCIpIHNldEhvdXJzRnJvbURhdGUoZGF0ZU9iaik7XG4gICAgICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChzZWxmLmRheXNDb250YWluZXIpIHtcbiAgICAgICAgICAgIHJlZHJhdygpO1xuICAgICAgICAgICAgaWYgKGRhdGVPYmogIT09IHVuZGVmaW5lZCkgc2VsZi5jdXJyZW50WWVhckVsZW1lbnRbdHlwZV0gPSBkYXRlT2JqLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtlbHNlIHNlbGYuY3VycmVudFllYXJFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSh0eXBlKTtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudFllYXJFbGVtZW50LmRpc2FibGVkID0gISFpbnZlcnNlRGF0ZU9iaiAmJiBkYXRlT2JqICE9PSB1bmRlZmluZWQgJiYgaW52ZXJzZURhdGVPYmouZ2V0RnVsbFllYXIoKSA9PT0gZGF0ZU9iai5nZXRGdWxsWWVhcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gcGFyc2VDb25maWcoKSB7XG4gICAgICAgIHZhciBib29sT3B0cyA9IFtcIndyYXBcIiwgXCJ3ZWVrTnVtYmVyc1wiLCBcImFsbG93SW5wdXRcIiwgXCJjbGlja09wZW5zXCIsIFwidGltZV8yNGhyXCIsIFwiZW5hYmxlVGltZVwiLCBcIm5vQ2FsZW5kYXJcIiwgXCJhbHRJbnB1dFwiLCBcInNob3J0aGFuZEN1cnJlbnRNb250aFwiLCBcImlubGluZVwiLCBcInN0YXRpY1wiLCBcImVuYWJsZVNlY29uZHNcIiwgXCJkaXNhYmxlTW9iaWxlXCJdO1xuICAgICAgICB2YXIgaG9va3MgPSBbXCJvbkNoYW5nZVwiLCBcIm9uQ2xvc2VcIiwgXCJvbkRheUNyZWF0ZVwiLCBcIm9uRGVzdHJveVwiLCBcIm9uS2V5RG93blwiLCBcIm9uTW9udGhDaGFuZ2VcIiwgXCJvbk9wZW5cIiwgXCJvblBhcnNlQ29uZmlnXCIsIFwib25SZWFkeVwiLCBcIm9uVmFsdWVVcGRhdGVcIiwgXCJvblllYXJDaGFuZ2VcIiwgXCJvblByZUNhbGVuZGFyUG9zaXRpb25cIl07XG4gICAgICAgIHZhciB1c2VyQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgaW5zdGFuY2VDb25maWcsIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZWxlbWVudC5kYXRhc2V0IHx8IHt9KSkpO1xuICAgICAgICB2YXIgZm9ybWF0cyQkMSA9IHt9O1xuICAgICAgICBzZWxmLmNvbmZpZy5wYXJzZURhdGUgPSB1c2VyQ29uZmlnLnBhcnNlRGF0ZTtcbiAgICAgICAgc2VsZi5jb25maWcuZm9ybWF0RGF0ZSA9IHVzZXJDb25maWcuZm9ybWF0RGF0ZTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcImVuYWJsZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX2VuYWJsZTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGRhdGVzKSB7XG4gICAgICAgICAgICBzZWxmLmNvbmZpZy5fZW5hYmxlID0gcGFyc2VEYXRlUnVsZXMoZGF0ZXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLmNvbmZpZywgXCJkaXNhYmxlXCIsIHtcbiAgICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLmNvbmZpZy5fZGlzYWJsZTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGRhdGVzKSB7XG4gICAgICAgICAgICBzZWxmLmNvbmZpZy5fZGlzYWJsZSA9IHBhcnNlRGF0ZVJ1bGVzKGRhdGVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgdGltZU1vZGUgPSB1c2VyQ29uZmlnLm1vZGUgPT09IFwidGltZVwiO1xuXG4gICAgICAgIGlmICghdXNlckNvbmZpZy5kYXRlRm9ybWF0ICYmICh1c2VyQ29uZmlnLmVuYWJsZVRpbWUgfHwgdGltZU1vZGUpKSB7XG4gICAgICAgICAgZm9ybWF0cyQkMS5kYXRlRm9ybWF0ID0gdXNlckNvbmZpZy5ub0NhbGVuZGFyIHx8IHRpbWVNb2RlID8gXCJIOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTXCIgOiBcIlwiKSA6IGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnLmRhdGVGb3JtYXQgKyBcIiBIOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTXCIgOiBcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1c2VyQ29uZmlnLmFsdElucHV0ICYmICh1c2VyQ29uZmlnLmVuYWJsZVRpbWUgfHwgdGltZU1vZGUpICYmICF1c2VyQ29uZmlnLmFsdEZvcm1hdCkge1xuICAgICAgICAgIGZvcm1hdHMkJDEuYWx0Rm9ybWF0ID0gdXNlckNvbmZpZy5ub0NhbGVuZGFyIHx8IHRpbWVNb2RlID8gXCJoOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTIEtcIiA6IFwiIEtcIikgOiBmbGF0cGlja3IuZGVmYXVsdENvbmZpZy5hbHRGb3JtYXQgKyAoXCIgaDppXCIgKyAodXNlckNvbmZpZy5lbmFibGVTZWNvbmRzID8gXCI6U1wiIDogXCJcIikgKyBcIiBLXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcIm1pbkRhdGVcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLl9taW5EYXRlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBtaW5NYXhEYXRlU2V0dGVyKFwibWluXCIpXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZi5jb25maWcsIFwibWF4RGF0ZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX21heERhdGU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IG1pbk1heERhdGVTZXR0ZXIoXCJtYXhcIilcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdmFyIG1pbk1heFRpbWVTZXR0ZXIgPSBmdW5jdGlvbiBtaW5NYXhUaW1lU2V0dGVyKHR5cGUpIHtcbiAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgc2VsZi5jb25maWdbdHlwZSA9PT0gXCJtaW5cIiA/IFwiX21pblRpbWVcIiA6IFwiX21heFRpbWVcIl0gPSBzZWxmLnBhcnNlRGF0ZSh2YWwsIFwiSDppXCIpO1xuICAgICAgICAgIH07XG4gICAgICAgIH07XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcIm1pblRpbWVcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLl9taW5UaW1lO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBtaW5NYXhUaW1lU2V0dGVyKFwibWluXCIpXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZi5jb25maWcsIFwibWF4VGltZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX21heFRpbWU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IG1pbk1heFRpbWVTZXR0ZXIoXCJtYXhcIilcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHVzZXJDb25maWcubW9kZSA9PT0gXCJ0aW1lXCIpIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZy5ub0NhbGVuZGFyID0gdHJ1ZTtcbiAgICAgICAgICBzZWxmLmNvbmZpZy5lbmFibGVUaW1lID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIE9iamVjdC5hc3NpZ24oc2VsZi5jb25maWcsIGZvcm1hdHMkJDEsIHVzZXJDb25maWcpO1xuXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYm9vbE9wdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZ1tib29sT3B0c1tpXV0gPSBzZWxmLmNvbmZpZ1tib29sT3B0c1tpXV0gPT09IHRydWUgfHwgc2VsZi5jb25maWdbYm9vbE9wdHNbaV1dID09PSBcInRydWVcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAodmFyIF9pID0gaG9va3MubGVuZ3RoOyBfaS0tOykge1xuICAgICAgICAgIGlmIChzZWxmLmNvbmZpZ1tob29rc1tfaV1dICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNlbGYuY29uZmlnW2hvb2tzW19pXV0gPSBhcnJheWlmeShzZWxmLmNvbmZpZ1tob29rc1tfaV1dIHx8IFtdKS5tYXAoYmluZFRvSW5zdGFuY2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuaXNNb2JpbGUgPSAhc2VsZi5jb25maWcuZGlzYWJsZU1vYmlsZSAmJiAhc2VsZi5jb25maWcuaW5saW5lICYmIHNlbGYuY29uZmlnLm1vZGUgPT09IFwic2luZ2xlXCIgJiYgIXNlbGYuY29uZmlnLmRpc2FibGUubGVuZ3RoICYmICFzZWxmLmNvbmZpZy5lbmFibGUubGVuZ3RoICYmICFzZWxmLmNvbmZpZy53ZWVrTnVtYmVycyAmJiAvQW5kcm9pZHx3ZWJPU3xpUGhvbmV8aVBhZHxpUG9kfEJsYWNrQmVycnl8SUVNb2JpbGV8T3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG5cbiAgICAgICAgZm9yICh2YXIgX2kyID0gMDsgX2kyIDwgc2VsZi5jb25maWcucGx1Z2lucy5sZW5ndGg7IF9pMisrKSB7XG4gICAgICAgICAgdmFyIHBsdWdpbkNvbmYgPSBzZWxmLmNvbmZpZy5wbHVnaW5zW19pMl0oc2VsZikgfHwge307XG5cbiAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gcGx1Z2luQ29uZikge1xuICAgICAgICAgICAgaWYgKH5ob29rcy5pbmRleE9mKGtleSkpIHtcbiAgICAgICAgICAgICAgc2VsZi5jb25maWdba2V5XSA9IGFycmF5aWZ5KHBsdWdpbkNvbmZba2V5XSkubWFwKGJpbmRUb0luc3RhbmNlKS5jb25jYXQoc2VsZi5jb25maWdba2V5XSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB1c2VyQ29uZmlnW2tleV0gPT09IFwidW5kZWZpbmVkXCIpIHNlbGYuY29uZmlnW2tleV0gPSBwbHVnaW5Db25mW2tleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHJpZ2dlckV2ZW50KFwib25QYXJzZUNvbmZpZ1wiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0dXBMb2NhbGUoKSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2VsZi5jb25maWcubG9jYWxlICE9PSBcIm9iamVjdFwiICYmIHR5cGVvZiBmbGF0cGlja3IubDEwbnNbc2VsZi5jb25maWcubG9jYWxlXSA9PT0gXCJ1bmRlZmluZWRcIikgc2VsZi5jb25maWcuZXJyb3JIYW5kbGVyKG5ldyBFcnJvcihcImZsYXRwaWNrcjogaW52YWxpZCBsb2NhbGUgXCIgKyBzZWxmLmNvbmZpZy5sb2NhbGUpKTtcbiAgICAgICAgc2VsZi5sMTBuID0gT2JqZWN0LmFzc2lnbih7fSwgZmxhdHBpY2tyLmwxMG5zLmRlZmF1bHQsIHR5cGVvZiBzZWxmLmNvbmZpZy5sb2NhbGUgPT09IFwib2JqZWN0XCIgPyBzZWxmLmNvbmZpZy5sb2NhbGUgOiBzZWxmLmNvbmZpZy5sb2NhbGUgIT09IFwiZGVmYXVsdFwiID8gZmxhdHBpY2tyLmwxMG5zW3NlbGYuY29uZmlnLmxvY2FsZV0gOiB1bmRlZmluZWQpO1xuICAgICAgICB0b2tlblJlZ2V4LksgPSBcIihcIiArIHNlbGYubDEwbi5hbVBNWzBdICsgXCJ8XCIgKyBzZWxmLmwxMG4uYW1QTVsxXSArIFwifFwiICsgc2VsZi5sMTBuLmFtUE1bMF0udG9Mb3dlckNhc2UoKSArIFwifFwiICsgc2VsZi5sMTBuLmFtUE1bMV0udG9Mb3dlckNhc2UoKSArIFwiKVwiO1xuICAgICAgICBzZWxmLmZvcm1hdERhdGUgPSBjcmVhdGVEYXRlRm9ybWF0dGVyKHNlbGYpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBwb3NpdGlvbkNhbGVuZGFyKGN1c3RvbVBvc2l0aW9uRWxlbWVudCkge1xuICAgICAgICBpZiAoc2VsZi5jYWxlbmRhckNvbnRhaW5lciA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uUHJlQ2FsZW5kYXJQb3NpdGlvblwiKTtcbiAgICAgICAgdmFyIHBvc2l0aW9uRWxlbWVudCA9IGN1c3RvbVBvc2l0aW9uRWxlbWVudCB8fCBzZWxmLl9wb3NpdGlvbkVsZW1lbnQ7XG4gICAgICAgIHZhciBjYWxlbmRhckhlaWdodCA9IEFycmF5LnByb3RvdHlwZS5yZWR1Y2UuY2FsbChzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNoaWxkcmVuLCBmdW5jdGlvbiAoYWNjLCBjaGlsZCkge1xuICAgICAgICAgIHJldHVybiBhY2MgKyBjaGlsZC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIH0sIDApLFxuICAgICAgICAgICAgY2FsZW5kYXJXaWR0aCA9IHNlbGYuY2FsZW5kYXJDb250YWluZXIub2Zmc2V0V2lkdGgsXG4gICAgICAgICAgICBjb25maWdQb3MgPSBzZWxmLmNvbmZpZy5wb3NpdGlvbi5zcGxpdChcIiBcIiksXG4gICAgICAgICAgICBjb25maWdQb3NWZXJ0aWNhbCA9IGNvbmZpZ1Bvc1swXSxcbiAgICAgICAgICAgIGNvbmZpZ1Bvc0hvcml6b250YWwgPSBjb25maWdQb3MubGVuZ3RoID4gMSA/IGNvbmZpZ1Bvc1sxXSA6IG51bGwsXG4gICAgICAgICAgICBpbnB1dEJvdW5kcyA9IHBvc2l0aW9uRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgICAgICAgIGRpc3RhbmNlRnJvbUJvdHRvbSA9IHdpbmRvdy5pbm5lckhlaWdodCAtIGlucHV0Qm91bmRzLmJvdHRvbSxcbiAgICAgICAgICAgIHNob3dPblRvcCA9IGNvbmZpZ1Bvc1ZlcnRpY2FsID09PSBcImFib3ZlXCIgfHwgY29uZmlnUG9zVmVydGljYWwgIT09IFwiYmVsb3dcIiAmJiBkaXN0YW5jZUZyb21Cb3R0b20gPCBjYWxlbmRhckhlaWdodCAmJiBpbnB1dEJvdW5kcy50b3AgPiBjYWxlbmRhckhlaWdodDtcbiAgICAgICAgdmFyIHRvcCA9IHdpbmRvdy5wYWdlWU9mZnNldCArIGlucHV0Qm91bmRzLnRvcCArICghc2hvd09uVG9wID8gcG9zaXRpb25FbGVtZW50Lm9mZnNldEhlaWdodCArIDIgOiAtY2FsZW5kYXJIZWlnaHQgLSAyKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhcnJvd1RvcFwiLCAhc2hvd09uVG9wKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhcnJvd0JvdHRvbVwiLCBzaG93T25Ub3ApO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lKSByZXR1cm47XG4gICAgICAgIHZhciBsZWZ0ID0gd2luZG93LnBhZ2VYT2Zmc2V0ICsgaW5wdXRCb3VuZHMubGVmdCAtIChjb25maWdQb3NIb3Jpem9udGFsICE9IG51bGwgJiYgY29uZmlnUG9zSG9yaXpvbnRhbCA9PT0gXCJjZW50ZXJcIiA/IChjYWxlbmRhcldpZHRoIC0gaW5wdXRCb3VuZHMud2lkdGgpIC8gMiA6IDApO1xuICAgICAgICB2YXIgcmlnaHQgPSB3aW5kb3cuZG9jdW1lbnQuYm9keS5vZmZzZXRXaWR0aCAtIGlucHV0Qm91bmRzLnJpZ2h0O1xuICAgICAgICB2YXIgcmlnaHRNb3N0ID0gbGVmdCArIGNhbGVuZGFyV2lkdGggPiB3aW5kb3cuZG9jdW1lbnQuYm9keS5vZmZzZXRXaWR0aDtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJyaWdodE1vc3RcIiwgcmlnaHRNb3N0KTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLnN0YXRpYykgcmV0dXJuO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnRvcCA9IHRvcCArIFwicHhcIjtcblxuICAgICAgICBpZiAoIXJpZ2h0TW9zdCkge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyBcInB4XCI7XG4gICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5yaWdodCA9IFwiYXV0b1wiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUubGVmdCA9IFwiYXV0b1wiO1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUucmlnaHQgPSByaWdodCArIFwicHhcIjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiByZWRyYXcoKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5ub0NhbGVuZGFyIHx8IHNlbGYuaXNNb2JpbGUpIHJldHVybjtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgICBidWlsZERheXMoKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZm9jdXNBbmRDbG9zZSgpIHtcbiAgICAgICAgc2VsZi5faW5wdXQuZm9jdXMoKTtcblxuICAgICAgICBpZiAod2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZihcIk1TSUVcIikgIT09IC0xIHx8IG5hdmlnYXRvci5tc01heFRvdWNoUG9pbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KHNlbGYuY2xvc2UsIDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNlbGYuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZWxlY3REYXRlKGUpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHZhciBpc1NlbGVjdGFibGUgPSBmdW5jdGlvbiBpc1NlbGVjdGFibGUoZGF5KSB7XG4gICAgICAgICAgcmV0dXJuIGRheS5jbGFzc0xpc3QgJiYgZGF5LmNsYXNzTGlzdC5jb250YWlucyhcImZsYXRwaWNrci1kYXlcIikgJiYgIWRheS5jbGFzc0xpc3QuY29udGFpbnMoXCJkaXNhYmxlZFwiKSAmJiAhZGF5LmNsYXNzTGlzdC5jb250YWlucyhcIm5vdEFsbG93ZWRcIik7XG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHQgPSBmaW5kUGFyZW50KGUudGFyZ2V0LCBpc1NlbGVjdGFibGUpO1xuICAgICAgICBpZiAodCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIHZhciB0YXJnZXQgPSB0O1xuICAgICAgICB2YXIgc2VsZWN0ZWREYXRlID0gc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPSBuZXcgRGF0ZSh0YXJnZXQuZGF0ZU9iai5nZXRUaW1lKCkpO1xuICAgICAgICB2YXIgc2hvdWxkQ2hhbmdlTW9udGggPSAoc2VsZWN0ZWREYXRlLmdldE1vbnRoKCkgPCBzZWxmLmN1cnJlbnRNb250aCB8fCBzZWxlY3RlZERhdGUuZ2V0TW9udGgoKSA+IHNlbGYuY3VycmVudE1vbnRoICsgc2VsZi5jb25maWcuc2hvd01vbnRocyAtIDEpICYmIHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIjtcbiAgICAgICAgc2VsZi5zZWxlY3RlZERhdGVFbGVtID0gdGFyZ2V0O1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJzaW5nbGVcIikgc2VsZi5zZWxlY3RlZERhdGVzID0gW3NlbGVjdGVkRGF0ZV07ZWxzZSBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJtdWx0aXBsZVwiKSB7XG4gICAgICAgICAgdmFyIHNlbGVjdGVkSW5kZXggPSBpc0RhdGVTZWxlY3RlZChzZWxlY3RlZERhdGUpO1xuICAgICAgICAgIGlmIChzZWxlY3RlZEluZGV4KSBzZWxmLnNlbGVjdGVkRGF0ZXMuc3BsaWNlKHBhcnNlSW50KHNlbGVjdGVkSW5kZXgpLCAxKTtlbHNlIHNlbGYuc2VsZWN0ZWREYXRlcy5wdXNoKHNlbGVjdGVkRGF0ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSB7XG4gICAgICAgICAgaWYgKHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDIpIHNlbGYuY2xlYXIoZmFsc2UpO1xuICAgICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcy5wdXNoKHNlbGVjdGVkRGF0ZSk7XG4gICAgICAgICAgaWYgKGNvbXBhcmVEYXRlcyhzZWxlY3RlZERhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdHJ1ZSkgIT09IDApIHNlbGYuc2VsZWN0ZWREYXRlcy5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICAgICAgICByZXR1cm4gYS5nZXRUaW1lKCkgLSBiLmdldFRpbWUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBzZXRIb3Vyc0Zyb21JbnB1dHMoKTtcblxuICAgICAgICBpZiAoc2hvdWxkQ2hhbmdlTW9udGgpIHtcbiAgICAgICAgICB2YXIgaXNOZXdZZWFyID0gc2VsZi5jdXJyZW50WWVhciAhPT0gc2VsZWN0ZWREYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgICAgc2VsZi5jdXJyZW50WWVhciA9IHNlbGVjdGVkRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0gc2VsZWN0ZWREYXRlLmdldE1vbnRoKCk7XG4gICAgICAgICAgaWYgKGlzTmV3WWVhcikgdHJpZ2dlckV2ZW50KFwib25ZZWFyQ2hhbmdlXCIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uTW9udGhDaGFuZ2VcIik7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVOYXZpZ2F0aW9uQ3VycmVudE1vbnRoKCk7XG4gICAgICAgIGJ1aWxkRGF5cygpO1xuICAgICAgICBzZXREZWZhdWx0SG91cnMoKTtcbiAgICAgICAgdXBkYXRlVmFsdWUoKTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUpIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBzZWxmLnNob3dUaW1lSW5wdXQgPSB0cnVlO1xuICAgICAgICB9LCA1MCk7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikge1xuICAgICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBvbk1vdXNlT3Zlcih0YXJnZXQpO1xuICAgICAgICAgIH0gZWxzZSB1cGRhdGVOYXZpZ2F0aW9uQ3VycmVudE1vbnRoKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNob3VsZENoYW5nZU1vbnRoICYmIHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIiAmJiBzZWxmLmNvbmZpZy5zaG93TW9udGhzID09PSAxKSBmb2N1c09uRGF5RWxlbSh0YXJnZXQpO2Vsc2Ugc2VsZi5zZWxlY3RlZERhdGVFbGVtICYmIHNlbGYuc2VsZWN0ZWREYXRlRWxlbS5mb2N1cygpO1xuICAgICAgICBpZiAoc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkKSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkICYmIHNlbGYuaG91ckVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgIH0sIDQ1MSk7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmNsb3NlT25TZWxlY3QpIHtcbiAgICAgICAgICB2YXIgc2luZ2xlID0gc2VsZi5jb25maWcubW9kZSA9PT0gXCJzaW5nbGVcIiAmJiAhc2VsZi5jb25maWcuZW5hYmxlVGltZTtcbiAgICAgICAgICB2YXIgcmFuZ2UgPSBzZWxmLmNvbmZpZy5tb2RlID09PSBcInJhbmdlXCIgJiYgc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA9PT0gMiAmJiAhc2VsZi5jb25maWcuZW5hYmxlVGltZTtcblxuICAgICAgICAgIGlmIChzaW5nbGUgfHwgcmFuZ2UpIHtcbiAgICAgICAgICAgIGZvY3VzQW5kQ2xvc2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyQ2hhbmdlKCk7XG4gICAgICB9XG5cbiAgICAgIHZhciBDQUxMQkFDS1MgPSB7XG4gICAgICAgIGxvY2FsZTogW3NldHVwTG9jYWxlLCB1cGRhdGVXZWVrZGF5c10sXG4gICAgICAgIHNob3dNb250aHM6IFtidWlsZE1vbnRocywgc2V0Q2FsZW5kYXJXaWR0aCwgYnVpbGRXZWVrZGF5c11cbiAgICAgIH07XG5cbiAgICAgIGZ1bmN0aW9uIHNldChvcHRpb24sIHZhbHVlKSB7XG4gICAgICAgIGlmIChvcHRpb24gIT09IG51bGwgJiYgdHlwZW9mIG9wdGlvbiA9PT0gXCJvYmplY3RcIikgT2JqZWN0LmFzc2lnbihzZWxmLmNvbmZpZywgb3B0aW9uKTtlbHNlIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZ1tvcHRpb25dID0gdmFsdWU7XG4gICAgICAgICAgaWYgKENBTExCQUNLU1tvcHRpb25dICE9PSB1bmRlZmluZWQpIENBTExCQUNLU1tvcHRpb25dLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgIHJldHVybiB4KCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5yZWRyYXcoKTtcbiAgICAgICAganVtcFRvRGF0ZSgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRTZWxlY3RlZERhdGUoaW5wdXREYXRlLCBmb3JtYXQpIHtcbiAgICAgICAgdmFyIGRhdGVzID0gW107XG4gICAgICAgIGlmIChpbnB1dERhdGUgaW5zdGFuY2VvZiBBcnJheSkgZGF0ZXMgPSBpbnB1dERhdGUubWFwKGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNlbGYucGFyc2VEYXRlKGQsIGZvcm1hdCk7XG4gICAgICAgIH0pO2Vsc2UgaWYgKGlucHV0RGF0ZSBpbnN0YW5jZW9mIERhdGUgfHwgdHlwZW9mIGlucHV0RGF0ZSA9PT0gXCJudW1iZXJcIikgZGF0ZXMgPSBbc2VsZi5wYXJzZURhdGUoaW5wdXREYXRlLCBmb3JtYXQpXTtlbHNlIGlmICh0eXBlb2YgaW5wdXREYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgc3dpdGNoIChzZWxmLmNvbmZpZy5tb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwic2luZ2xlXCI6XG4gICAgICAgICAgICBjYXNlIFwidGltZVwiOlxuICAgICAgICAgICAgICBkYXRlcyA9IFtzZWxmLnBhcnNlRGF0ZShpbnB1dERhdGUsIGZvcm1hdCldO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcIm11bHRpcGxlXCI6XG4gICAgICAgICAgICAgIGRhdGVzID0gaW5wdXREYXRlLnNwbGl0KHNlbGYuY29uZmlnLmNvbmp1bmN0aW9uKS5tYXAoZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIFwicmFuZ2VcIjpcbiAgICAgICAgICAgICAgZGF0ZXMgPSBpbnB1dERhdGUuc3BsaXQoc2VsZi5sMTBuLnJhbmdlU2VwYXJhdG9yKS5tYXAoZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBzZWxmLmNvbmZpZy5lcnJvckhhbmRsZXIobmV3IEVycm9yKFwiSW52YWxpZCBkYXRlIHN1cHBsaWVkOiBcIiArIEpTT04uc3RyaW5naWZ5KGlucHV0RGF0ZSkpKTtcbiAgICAgICAgc2VsZi5zZWxlY3RlZERhdGVzID0gZGF0ZXMuZmlsdGVyKGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIGQgaW5zdGFuY2VvZiBEYXRlICYmIGlzRW5hYmxlZChkLCBmYWxzZSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSBzZWxmLnNlbGVjdGVkRGF0ZXMuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICAgICAgICAgIHJldHVybiBhLmdldFRpbWUoKSAtIGIuZ2V0VGltZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0RGF0ZShkYXRlLCB0cmlnZ2VyQ2hhbmdlLCBmb3JtYXQpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2UgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmb3JtYXQgPT09IHZvaWQgMCkge1xuICAgICAgICAgIGZvcm1hdCA9IHNlbGYuY29uZmlnLmRhdGVGb3JtYXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGF0ZSAhPT0gMCAmJiAhZGF0ZSB8fCBkYXRlIGluc3RhbmNlb2YgQXJyYXkgJiYgZGF0ZS5sZW5ndGggPT09IDApIHJldHVybiBzZWxmLmNsZWFyKHRyaWdnZXJDaGFuZ2UpO1xuICAgICAgICBzZXRTZWxlY3RlZERhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDA7XG4gICAgICAgIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqID0gc2VsZi5zZWxlY3RlZERhdGVzWzBdO1xuICAgICAgICBzZWxmLnJlZHJhdygpO1xuICAgICAgICBqdW1wVG9EYXRlKCk7XG4gICAgICAgIHNldEhvdXJzRnJvbURhdGUoKTtcbiAgICAgICAgdXBkYXRlVmFsdWUodHJpZ2dlckNoYW5nZSk7XG4gICAgICAgIGlmICh0cmlnZ2VyQ2hhbmdlKSB0cmlnZ2VyRXZlbnQoXCJvbkNoYW5nZVwiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gcGFyc2VEYXRlUnVsZXMoYXJyKSB7XG4gICAgICAgIHJldHVybiBhcnIuc2xpY2UoKS5tYXAoZnVuY3Rpb24gKHJ1bGUpIHtcbiAgICAgICAgICBpZiAodHlwZW9mIHJ1bGUgPT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIHJ1bGUgPT09IFwibnVtYmVyXCIgfHwgcnVsZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLnBhcnNlRGF0ZShydWxlLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICAgIH0gZWxzZSBpZiAocnVsZSAmJiB0eXBlb2YgcnVsZSA9PT0gXCJvYmplY3RcIiAmJiBydWxlLmZyb20gJiYgcnVsZS50bykgcmV0dXJuIHtcbiAgICAgICAgICAgIGZyb206IHNlbGYucGFyc2VEYXRlKHJ1bGUuZnJvbSwgdW5kZWZpbmVkKSxcbiAgICAgICAgICAgIHRvOiBzZWxmLnBhcnNlRGF0ZShydWxlLnRvLCB1bmRlZmluZWQpXG4gICAgICAgICAgfTtcblxuICAgICAgICAgIHJldHVybiBydWxlO1xuICAgICAgICB9KS5maWx0ZXIoZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICByZXR1cm4geDtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHNldHVwRGF0ZXMoKSB7XG4gICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IFtdO1xuICAgICAgICBzZWxmLm5vdyA9IHNlbGYucGFyc2VEYXRlKHNlbGYuY29uZmlnLm5vdykgfHwgbmV3IERhdGUoKTtcbiAgICAgICAgdmFyIHByZWxvYWRlZERhdGUgPSBzZWxmLmNvbmZpZy5kZWZhdWx0RGF0ZSB8fCAoc2VsZi5pbnB1dC5wbGFjZWhvbGRlci5sZW5ndGggPiAwICYmIHNlbGYuaW5wdXQudmFsdWUgPT09IHNlbGYuaW5wdXQucGxhY2Vob2xkZXIgPyBudWxsIDogc2VsZi5pbnB1dC52YWx1ZSk7XG4gICAgICAgIGlmIChwcmVsb2FkZWREYXRlKSBzZXRTZWxlY3RlZERhdGUocHJlbG9hZGVkRGF0ZSwgc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgIHZhciBpbml0aWFsRGF0ZSA9IHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPiAwID8gc2VsZi5zZWxlY3RlZERhdGVzWzBdIDogc2VsZi5jb25maWcubWluRGF0ZSAmJiBzZWxmLmNvbmZpZy5taW5EYXRlLmdldFRpbWUoKSA+IHNlbGYubm93LmdldFRpbWUoKSA/IHNlbGYuY29uZmlnLm1pbkRhdGUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY29uZmlnLm1heERhdGUuZ2V0VGltZSgpIDwgc2VsZi5ub3cuZ2V0VGltZSgpID8gc2VsZi5jb25maWcubWF4RGF0ZSA6IHNlbGYubm93O1xuICAgICAgICBzZWxmLmN1cnJlbnRZZWFyID0gaW5pdGlhbERhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgc2VsZi5jdXJyZW50TW9udGggPSBpbml0aWFsRGF0ZS5nZXRNb250aCgpO1xuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDApIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqID0gc2VsZi5zZWxlY3RlZERhdGVzWzBdO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluVGltZSAhPT0gdW5kZWZpbmVkKSBzZWxmLmNvbmZpZy5taW5UaW1lID0gc2VsZi5wYXJzZURhdGUoc2VsZi5jb25maWcubWluVGltZSwgXCJIOmlcIik7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhUaW1lICE9PSB1bmRlZmluZWQpIHNlbGYuY29uZmlnLm1heFRpbWUgPSBzZWxmLnBhcnNlRGF0ZShzZWxmLmNvbmZpZy5tYXhUaW1lLCBcIkg6aVwiKTtcbiAgICAgICAgc2VsZi5taW5EYXRlSGFzVGltZSA9ICEhc2VsZi5jb25maWcubWluRGF0ZSAmJiAoc2VsZi5jb25maWcubWluRGF0ZS5nZXRIb3VycygpID4gMCB8fCBzZWxmLmNvbmZpZy5taW5EYXRlLmdldE1pbnV0ZXMoKSA+IDAgfHwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRTZWNvbmRzKCkgPiAwKTtcbiAgICAgICAgc2VsZi5tYXhEYXRlSGFzVGltZSA9ICEhc2VsZi5jb25maWcubWF4RGF0ZSAmJiAoc2VsZi5jb25maWcubWF4RGF0ZS5nZXRIb3VycygpID4gMCB8fCBzZWxmLmNvbmZpZy5tYXhEYXRlLmdldE1pbnV0ZXMoKSA+IDAgfHwgc2VsZi5jb25maWcubWF4RGF0ZS5nZXRTZWNvbmRzKCkgPiAwKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYsIFwic2hvd1RpbWVJbnB1dFwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5fc2hvd1RpbWVJbnB1dDtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGJvb2wpIHtcbiAgICAgICAgICAgIHNlbGYuX3Nob3dUaW1lSW5wdXQgPSBib29sO1xuICAgICAgICAgICAgaWYgKHNlbGYuY2FsZW5kYXJDb250YWluZXIpIHRvZ2dsZUNsYXNzKHNlbGYuY2FsZW5kYXJDb250YWluZXIsIFwic2hvd1RpbWVJbnB1dFwiLCBib29sKTtcbiAgICAgICAgICAgIHNlbGYuaXNPcGVuICYmIHBvc2l0aW9uQ2FsZW5kYXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXR1cElucHV0cygpIHtcbiAgICAgICAgc2VsZi5pbnB1dCA9IHNlbGYuY29uZmlnLndyYXAgPyBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCJbZGF0YS1pbnB1dF1cIikgOiBlbGVtZW50O1xuXG4gICAgICAgIGlmICghc2VsZi5pbnB1dCkge1xuICAgICAgICAgIHNlbGYuY29uZmlnLmVycm9ySGFuZGxlcihuZXcgRXJyb3IoXCJJbnZhbGlkIGlucHV0IGVsZW1lbnQgc3BlY2lmaWVkXCIpKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmlucHV0Ll90eXBlID0gc2VsZi5pbnB1dC50eXBlO1xuICAgICAgICBzZWxmLmlucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgc2VsZi5pbnB1dC5jbGFzc0xpc3QuYWRkKFwiZmxhdHBpY2tyLWlucHV0XCIpO1xuICAgICAgICBzZWxmLl9pbnB1dCA9IHNlbGYuaW5wdXQ7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmFsdElucHV0KSB7XG4gICAgICAgICAgc2VsZi5hbHRJbnB1dCA9IGNyZWF0ZUVsZW1lbnQoc2VsZi5pbnB1dC5ub2RlTmFtZSwgc2VsZi5pbnB1dC5jbGFzc05hbWUgKyBcIiBcIiArIHNlbGYuY29uZmlnLmFsdElucHV0Q2xhc3MpO1xuICAgICAgICAgIHNlbGYuX2lucHV0ID0gc2VsZi5hbHRJbnB1dDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnBsYWNlaG9sZGVyID0gc2VsZi5pbnB1dC5wbGFjZWhvbGRlcjtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LmRpc2FibGVkID0gc2VsZi5pbnB1dC5kaXNhYmxlZDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnJlcXVpcmVkID0gc2VsZi5pbnB1dC5yZXF1aXJlZDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnRhYkluZGV4ID0gc2VsZi5pbnB1dC50YWJJbmRleDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgICBzZWxmLmlucHV0LnNldEF0dHJpYnV0ZShcInR5cGVcIiwgXCJoaWRkZW5cIik7XG4gICAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgc2VsZi5pbnB1dC5wYXJlbnROb2RlKSBzZWxmLmlucHV0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYuYWx0SW5wdXQsIHNlbGYuaW5wdXQubmV4dFNpYmxpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5hbGxvd0lucHV0KSBzZWxmLl9pbnB1dC5zZXRBdHRyaWJ1dGUoXCJyZWFkb25seVwiLCBcInJlYWRvbmx5XCIpO1xuICAgICAgICBzZWxmLl9wb3NpdGlvbkVsZW1lbnQgPSBzZWxmLmNvbmZpZy5wb3NpdGlvbkVsZW1lbnQgfHwgc2VsZi5faW5wdXQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHNldHVwTW9iaWxlKCkge1xuICAgICAgICB2YXIgaW5wdXRUeXBlID0gc2VsZi5jb25maWcuZW5hYmxlVGltZSA/IHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgPyBcInRpbWVcIiA6IFwiZGF0ZXRpbWUtbG9jYWxcIiA6IFwiZGF0ZVwiO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0ID0gY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHNlbGYuaW5wdXQuY2xhc3NOYW1lICsgXCIgZmxhdHBpY2tyLW1vYmlsZVwiKTtcbiAgICAgICAgc2VsZi5tb2JpbGVJbnB1dC5zdGVwID0gc2VsZi5pbnB1dC5nZXRBdHRyaWJ1dGUoXCJzdGVwXCIpIHx8IFwiYW55XCI7XG4gICAgICAgIHNlbGYubW9iaWxlSW5wdXQudGFiSW5kZXggPSAxO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnR5cGUgPSBpbnB1dFR5cGU7XG4gICAgICAgIHNlbGYubW9iaWxlSW5wdXQuZGlzYWJsZWQgPSBzZWxmLmlucHV0LmRpc2FibGVkO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnJlcXVpcmVkID0gc2VsZi5pbnB1dC5yZXF1aXJlZDtcbiAgICAgICAgc2VsZi5tb2JpbGVJbnB1dC5wbGFjZWhvbGRlciA9IHNlbGYuaW5wdXQucGxhY2Vob2xkZXI7XG4gICAgICAgIHNlbGYubW9iaWxlRm9ybWF0U3RyID0gaW5wdXRUeXBlID09PSBcImRhdGV0aW1lLWxvY2FsXCIgPyBcIlktbS1kXFxcXFRIOmk6U1wiIDogaW5wdXRUeXBlID09PSBcImRhdGVcIiA/IFwiWS1tLWRcIiA6IFwiSDppOlNcIjtcblxuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0LmRlZmF1bHRWYWx1ZSA9IHNlbGYubW9iaWxlSW5wdXQudmFsdWUgPSBzZWxmLmZvcm1hdERhdGUoc2VsZi5zZWxlY3RlZERhdGVzWzBdLCBzZWxmLm1vYmlsZUZvcm1hdFN0cik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSkgc2VsZi5tb2JpbGVJbnB1dC5taW4gPSBzZWxmLmZvcm1hdERhdGUoc2VsZi5jb25maWcubWluRGF0ZSwgXCJZLW0tZFwiKTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1heERhdGUpIHNlbGYubW9iaWxlSW5wdXQubWF4ID0gc2VsZi5mb3JtYXREYXRlKHNlbGYuY29uZmlnLm1heERhdGUsIFwiWS1tLWRcIik7XG4gICAgICAgIHNlbGYuaW5wdXQudHlwZSA9IFwiaGlkZGVuXCI7XG4gICAgICAgIGlmIChzZWxmLmFsdElucHV0ICE9PSB1bmRlZmluZWQpIHNlbGYuYWx0SW5wdXQudHlwZSA9IFwiaGlkZGVuXCI7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoc2VsZi5pbnB1dC5wYXJlbnROb2RlKSBzZWxmLmlucHV0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYubW9iaWxlSW5wdXQsIHNlbGYuaW5wdXQubmV4dFNpYmxpbmcpO1xuICAgICAgICB9IGNhdGNoIChfYSkge31cblxuICAgICAgICBiaW5kKHNlbGYubW9iaWxlSW5wdXQsIFwiY2hhbmdlXCIsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgc2VsZi5zZXREYXRlKGUudGFyZ2V0LnZhbHVlLCBmYWxzZSwgc2VsZi5tb2JpbGVGb3JtYXRTdHIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2hhbmdlXCIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2xvc2VcIik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0b2dnbGUoZSkge1xuICAgICAgICBpZiAoc2VsZi5pc09wZW4gPT09IHRydWUpIHJldHVybiBzZWxmLmNsb3NlKCk7XG4gICAgICAgIHNlbGYub3BlbihlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdHJpZ2dlckV2ZW50KGV2ZW50LCBkYXRhKSB7XG4gICAgICAgIHZhciBob29rcyA9IHNlbGYuY29uZmlnW2V2ZW50XTtcblxuICAgICAgICBpZiAoaG9va3MgIT09IHVuZGVmaW5lZCAmJiBob29rcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGhvb2tzW2ldICYmIGkgPCBob29rcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaG9va3NbaV0oc2VsZi5zZWxlY3RlZERhdGVzLCBzZWxmLmlucHV0LnZhbHVlLCBzZWxmLCBkYXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZlbnQgPT09IFwib25DaGFuZ2VcIikge1xuICAgICAgICAgIHNlbGYuaW5wdXQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudChcImNoYW5nZVwiKSk7XG4gICAgICAgICAgc2VsZi5pbnB1dC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KFwiaW5wdXRcIikpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNyZWF0ZUV2ZW50KG5hbWUpIHtcbiAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudChcIkV2ZW50XCIpO1xuICAgICAgICBlLmluaXRFdmVudChuYW1lLCB0cnVlLCB0cnVlKTtcbiAgICAgICAgcmV0dXJuIGU7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzRGF0ZVNlbGVjdGVkKGRhdGUpIHtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBpZiAoY29tcGFyZURhdGVzKHNlbGYuc2VsZWN0ZWREYXRlc1tpXSwgZGF0ZSkgPT09IDApIHJldHVybiBcIlwiICsgaTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gaXNEYXRlSW5SYW5nZShkYXRlKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tb2RlICE9PSBcInJhbmdlXCIgfHwgc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA8IDIpIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGNvbXBhcmVEYXRlcyhkYXRlLCBzZWxmLnNlbGVjdGVkRGF0ZXNbMF0pID49IDAgJiYgY29tcGFyZURhdGVzKGRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1sxXSkgPD0gMDtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpIHtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgfHwgc2VsZi5pc01vYmlsZSB8fCAhc2VsZi5tb250aE5hdikgcmV0dXJuO1xuICAgICAgICBzZWxmLnllYXJFbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uICh5ZWFyRWxlbWVudCwgaSkge1xuICAgICAgICAgIHZhciBkID0gbmV3IERhdGUoc2VsZi5jdXJyZW50WWVhciwgc2VsZi5jdXJyZW50TW9udGgsIDEpO1xuICAgICAgICAgIGQuc2V0TW9udGgoc2VsZi5jdXJyZW50TW9udGggKyBpKTtcbiAgICAgICAgICBzZWxmLm1vbnRoRWxlbWVudHNbaV0udGV4dENvbnRlbnQgPSBtb250aFRvU3RyKGQuZ2V0TW9udGgoKSwgc2VsZi5jb25maWcuc2hvcnRoYW5kQ3VycmVudE1vbnRoLCBzZWxmLmwxMG4pICsgXCIgXCI7XG4gICAgICAgICAgeWVhckVsZW1lbnQudmFsdWUgPSBkLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHNlbGYuX2hpZGVQcmV2TW9udGhBcnJvdyA9IHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCAmJiAoc2VsZi5jdXJyZW50WWVhciA9PT0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpID8gc2VsZi5jdXJyZW50TW9udGggPD0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRNb250aCgpIDogc2VsZi5jdXJyZW50WWVhciA8IHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0RnVsbFllYXIoKSk7XG4gICAgICAgIHNlbGYuX2hpZGVOZXh0TW9udGhBcnJvdyA9IHNlbGYuY29uZmlnLm1heERhdGUgIT09IHVuZGVmaW5lZCAmJiAoc2VsZi5jdXJyZW50WWVhciA9PT0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpID8gc2VsZi5jdXJyZW50TW9udGggKyAxID4gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNb250aCgpIDogc2VsZi5jdXJyZW50WWVhciA+IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHVwZGF0ZVZhbHVlKHRyaWdnZXJDaGFuZ2UpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2UgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDApIHJldHVybiBzZWxmLmNsZWFyKHRyaWdnZXJDaGFuZ2UpO1xuXG4gICAgICAgIGlmIChzZWxmLm1vYmlsZUlucHV0ICE9PSB1bmRlZmluZWQgJiYgc2VsZi5tb2JpbGVGb3JtYXRTdHIpIHtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnZhbHVlID0gc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogIT09IHVuZGVmaW5lZCA/IHNlbGYuZm9ybWF0RGF0ZShzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiwgc2VsZi5tb2JpbGVGb3JtYXRTdHIpIDogXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBqb2luQ2hhciA9IHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIiA/IHNlbGYuY29uZmlnLmNvbmp1bmN0aW9uIDogc2VsZi5sMTBuLnJhbmdlU2VwYXJhdG9yO1xuICAgICAgICBzZWxmLmlucHV0LnZhbHVlID0gc2VsZi5zZWxlY3RlZERhdGVzLm1hcChmdW5jdGlvbiAoZE9iaikge1xuICAgICAgICAgIHJldHVybiBzZWxmLmZvcm1hdERhdGUoZE9iaiwgc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgIH0pLmpvaW4oam9pbkNoYXIpO1xuXG4gICAgICAgIGlmIChzZWxmLmFsdElucHV0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnZhbHVlID0gc2VsZi5zZWxlY3RlZERhdGVzLm1hcChmdW5jdGlvbiAoZE9iaikge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuZm9ybWF0RGF0ZShkT2JqLCBzZWxmLmNvbmZpZy5hbHRGb3JtYXQpO1xuICAgICAgICAgIH0pLmpvaW4oam9pbkNoYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgIT09IGZhbHNlKSB0cmlnZ2VyRXZlbnQoXCJvblZhbHVlVXBkYXRlXCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvbk1vbnRoTmF2Q2xpY2soZSkge1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHZhciBpc1ByZXZNb250aCA9IHNlbGYucHJldk1vbnRoTmF2LmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICAgICAgdmFyIGlzTmV4dE1vbnRoID0gc2VsZi5uZXh0TW9udGhOYXYuY29udGFpbnMoZS50YXJnZXQpO1xuXG4gICAgICAgIGlmIChpc1ByZXZNb250aCB8fCBpc05leHRNb250aCkge1xuICAgICAgICAgIGNoYW5nZU1vbnRoKGlzUHJldk1vbnRoID8gLTEgOiAxKTtcbiAgICAgICAgfSBlbHNlIGlmIChzZWxmLnllYXJFbGVtZW50cy5pbmRleE9mKGUudGFyZ2V0KSA+PSAwKSB7XG4gICAgICAgICAgZS50YXJnZXQuc2VsZWN0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKFwiYXJyb3dVcFwiKSkge1xuICAgICAgICAgIHNlbGYuY2hhbmdlWWVhcihzZWxmLmN1cnJlbnRZZWFyICsgMSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKFwiYXJyb3dEb3duXCIpKSB7XG4gICAgICAgICAgc2VsZi5jaGFuZ2VZZWFyKHNlbGYuY3VycmVudFllYXIgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0aW1lV3JhcHBlcihlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdmFyIGlzS2V5RG93biA9IGUudHlwZSA9PT0gXCJrZXlkb3duXCIsXG4gICAgICAgICAgICBpbnB1dCA9IGUudGFyZ2V0O1xuXG4gICAgICAgIGlmIChzZWxmLmFtUE0gIT09IHVuZGVmaW5lZCAmJiBlLnRhcmdldCA9PT0gc2VsZi5hbVBNKSB7XG4gICAgICAgICAgc2VsZi5hbVBNLnRleHRDb250ZW50ID0gc2VsZi5sMTBuLmFtUE1baW50KHNlbGYuYW1QTS50ZXh0Q29udGVudCA9PT0gc2VsZi5sMTBuLmFtUE1bMF0pXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBtaW4gPSBwYXJzZUZsb2F0KGlucHV0LmdldEF0dHJpYnV0ZShcImRhdGEtbWluXCIpKSxcbiAgICAgICAgICAgIG1heCA9IHBhcnNlRmxvYXQoaW5wdXQuZ2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIikpLFxuICAgICAgICAgICAgc3RlcCA9IHBhcnNlRmxvYXQoaW5wdXQuZ2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIpKSxcbiAgICAgICAgICAgIGN1clZhbHVlID0gcGFyc2VJbnQoaW5wdXQudmFsdWUsIDEwKSxcbiAgICAgICAgICAgIGRlbHRhID0gZS5kZWx0YSB8fCAoaXNLZXlEb3duID8gZS53aGljaCA9PT0gMzggPyAxIDogLTEgOiAwKTtcbiAgICAgICAgdmFyIG5ld1ZhbHVlID0gY3VyVmFsdWUgKyBzdGVwICogZGVsdGE7XG5cbiAgICAgICAgaWYgKHR5cGVvZiBpbnB1dC52YWx1ZSAhPT0gXCJ1bmRlZmluZWRcIiAmJiBpbnB1dC52YWx1ZS5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICB2YXIgaXNIb3VyRWxlbSA9IGlucHV0ID09PSBzZWxmLmhvdXJFbGVtZW50LFxuICAgICAgICAgICAgICBpc01pbnV0ZUVsZW0gPSBpbnB1dCA9PT0gc2VsZi5taW51dGVFbGVtZW50O1xuXG4gICAgICAgICAgaWYgKG5ld1ZhbHVlIDwgbWluKSB7XG4gICAgICAgICAgICBuZXdWYWx1ZSA9IG1heCArIG5ld1ZhbHVlICsgaW50KCFpc0hvdXJFbGVtKSArIChpbnQoaXNIb3VyRWxlbSkgJiYgaW50KCFzZWxmLmFtUE0pKTtcbiAgICAgICAgICAgIGlmIChpc01pbnV0ZUVsZW0pIGluY3JlbWVudE51bUlucHV0KHVuZGVmaW5lZCwgLTEsIHNlbGYuaG91ckVsZW1lbnQpO1xuICAgICAgICAgIH0gZWxzZSBpZiAobmV3VmFsdWUgPiBtYXgpIHtcbiAgICAgICAgICAgIG5ld1ZhbHVlID0gaW5wdXQgPT09IHNlbGYuaG91ckVsZW1lbnQgPyBuZXdWYWx1ZSAtIG1heCAtIGludCghc2VsZi5hbVBNKSA6IG1pbjtcbiAgICAgICAgICAgIGlmIChpc01pbnV0ZUVsZW0pIGluY3JlbWVudE51bUlucHV0KHVuZGVmaW5lZCwgMSwgc2VsZi5ob3VyRWxlbWVudCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHNlbGYuYW1QTSAmJiBpc0hvdXJFbGVtICYmIChzdGVwID09PSAxID8gbmV3VmFsdWUgKyBjdXJWYWx1ZSA9PT0gMjMgOiBNYXRoLmFicyhuZXdWYWx1ZSAtIGN1clZhbHVlKSA+IHN0ZXApKSB7XG4gICAgICAgICAgICBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVtpbnQoc2VsZi5hbVBNLnRleHRDb250ZW50ID09PSBzZWxmLmwxMG4uYW1QTVswXSldO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlucHV0LnZhbHVlID0gcGFkKG5ld1ZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbml0KCk7XG4gICAgICByZXR1cm4gc2VsZjtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfZmxhdHBpY2tyKG5vZGVMaXN0LCBjb25maWcpIHtcbiAgICAgIHZhciBub2RlcyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKG5vZGVMaXN0KTtcbiAgICAgIHZhciBpbnN0YW5jZXMgPSBbXTtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgbm9kZSA9IG5vZGVzW2ldO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKG5vZGUuZ2V0QXR0cmlidXRlKFwiZGF0YS1mcC1vbWl0XCIpICE9PSBudWxsKSBjb250aW51ZTtcblxuICAgICAgICAgIGlmIChub2RlLl9mbGF0cGlja3IgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgbm9kZS5fZmxhdHBpY2tyLmRlc3Ryb3koKTtcblxuICAgICAgICAgICAgbm9kZS5fZmxhdHBpY2tyID0gdW5kZWZpbmVkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIG5vZGUuX2ZsYXRwaWNrciA9IEZsYXRwaWNrckluc3RhbmNlKG5vZGUsIGNvbmZpZyB8fCB7fSk7XG4gICAgICAgICAgaW5zdGFuY2VzLnB1c2gobm9kZS5fZmxhdHBpY2tyKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGluc3RhbmNlcy5sZW5ndGggPT09IDEgPyBpbnN0YW5jZXNbMF0gOiBpbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBIVE1MRWxlbWVudCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgSFRNTENvbGxlY3Rpb24ucHJvdG90eXBlLmZsYXRwaWNrciA9IE5vZGVMaXN0LnByb3RvdHlwZS5mbGF0cGlja3IgPSBmdW5jdGlvbiAoY29uZmlnKSB7XG4gICAgICAgIHJldHVybiBfZmxhdHBpY2tyKHRoaXMsIGNvbmZpZyk7XG4gICAgICB9O1xuXG4gICAgICBIVE1MRWxlbWVudC5wcm90b3R5cGUuZmxhdHBpY2tyID0gZnVuY3Rpb24gKGNvbmZpZykge1xuICAgICAgICByZXR1cm4gX2ZsYXRwaWNrcihbdGhpc10sIGNvbmZpZyk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHZhciBmbGF0cGlja3IgPSBmdW5jdGlvbiBmbGF0cGlja3Ioc2VsZWN0b3IsIGNvbmZpZykge1xuICAgICAgaWYgKHNlbGVjdG9yIGluc3RhbmNlb2YgTm9kZUxpc3QpIHJldHVybiBfZmxhdHBpY2tyKHNlbGVjdG9yLCBjb25maWcpO2Vsc2UgaWYgKHR5cGVvZiBzZWxlY3RvciA9PT0gXCJzdHJpbmdcIikgcmV0dXJuIF9mbGF0cGlja3Iod2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpLCBjb25maWcpO1xuICAgICAgcmV0dXJuIF9mbGF0cGlja3IoW3NlbGVjdG9yXSwgY29uZmlnKTtcbiAgICB9O1xuXG4gICAgZmxhdHBpY2tyLmRlZmF1bHRDb25maWcgPSBkZWZhdWx0cztcbiAgICBmbGF0cGlja3IubDEwbnMgPSB7XG4gICAgICBlbjogT2JqZWN0LmFzc2lnbih7fSwgZW5nbGlzaCksXG4gICAgICBkZWZhdWx0OiBPYmplY3QuYXNzaWduKHt9LCBlbmdsaXNoKVxuICAgIH07XG5cbiAgICBmbGF0cGlja3IubG9jYWxpemUgPSBmdW5jdGlvbiAobDEwbikge1xuICAgICAgZmxhdHBpY2tyLmwxMG5zLmRlZmF1bHQgPSBPYmplY3QuYXNzaWduKHt9LCBmbGF0cGlja3IubDEwbnMuZGVmYXVsdCwgbDEwbik7XG4gICAgfTtcblxuICAgIGZsYXRwaWNrci5zZXREZWZhdWx0cyA9IGZ1bmN0aW9uIChjb25maWcpIHtcbiAgICAgIGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgZmxhdHBpY2tyLmRlZmF1bHRDb25maWcsIGNvbmZpZyk7XG4gICAgfTtcblxuICAgIGZsYXRwaWNrci5wYXJzZURhdGUgPSBjcmVhdGVEYXRlUGFyc2VyKHt9KTtcbiAgICBmbGF0cGlja3IuZm9ybWF0RGF0ZSA9IGNyZWF0ZURhdGVGb3JtYXR0ZXIoe30pO1xuICAgIGZsYXRwaWNrci5jb21wYXJlRGF0ZXMgPSBjb21wYXJlRGF0ZXM7XG5cbiAgICBpZiAodHlwZW9mIGpRdWVyeSAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgalF1ZXJ5LmZuLmZsYXRwaWNrciA9IGZ1bmN0aW9uIChjb25maWcpIHtcbiAgICAgICAgcmV0dXJuIF9mbGF0cGlja3IodGhpcywgY29uZmlnKTtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgRGF0ZS5wcm90b3R5cGUuZnBfaW5jciA9IGZ1bmN0aW9uIChkYXlzKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5nZXRGdWxsWWVhcigpLCB0aGlzLmdldE1vbnRoKCksIHRoaXMuZ2V0RGF0ZSgpICsgKHR5cGVvZiBkYXlzID09PSBcInN0cmluZ1wiID8gcGFyc2VJbnQoZGF5cywgMTApIDogZGF5cykpO1xuICAgIH07XG5cbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgd2luZG93LmZsYXRwaWNrciA9IGZsYXRwaWNrcjtcbiAgICB9XG5cbiAgICByZXR1cm4gZmxhdHBpY2tyO1xuXG59KSkpO1xuXG5cbi8qKiovIH0pLFxuLyogMjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXG52YXIgY29udGVudCA9IF9fd2VicGFja19yZXF1aXJlX18oMzApO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihmYWxzZSkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9mbGF0cGlja3IuY3NzXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9mbGF0cGlja3IuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59XG5cbi8qKiovIH0pLFxuLyogMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pLCBcIi5mbGF0cGlja3ItY2FsZW5kYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtvcGFjaXR5OjA7ZGlzcGxheTpub25lO3RleHQtYWxpZ246Y2VudGVyO3Zpc2liaWxpdHk6aGlkZGVuO3BhZGRpbmc6MDstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lO2RpcmVjdGlvbjpsdHI7Ym9yZGVyOjA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjVweDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDozMDcuODc1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tcy10b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTYsLTFweCAwIDAgI2U2ZTZlNiwwIDFweCAwICNlNmU2ZTYsMCAtMXB4IDAgI2U2ZTZlNiwwIDNweCAxM3B4IHJnYmEoMCwwLDAsLjA4KTtib3gtc2hhZG93OjFweCAwIDAgI2U2ZTZlNiwtMXB4IDAgMCAjZTZlNmU2LDAgMXB4IDAgI2U2ZTZlNiwwIC0xcHggMCAjZTZlNmU2LDAgM3B4IDEzcHggcmdiYSgwLDAsMCwuMDgpfS5mbGF0cGlja3ItY2FsZW5kYXIuaW5saW5lLC5mbGF0cGlja3ItY2FsZW5kYXIub3BlbntvcGFjaXR5OjE7bWF4LWhlaWdodDo2NDBweDt2aXNpYmlsaXR5OnZpc2libGV9LmZsYXRwaWNrci1jYWxlbmRhci5vcGVue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3otaW5kZXg6OTk5OTl9LmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlLm9wZW57LXdlYmtpdC1hbmltYXRpb246ZnBGYWRlSW5Eb3duIC4zcyBjdWJpYy1iZXppZXIoLjIzLDEsLjMyLDEpO2FuaW1hdGlvbjpmcEZhZGVJbkRvd24gLjNzIGN1YmljLWJlemllciguMjMsMSwuMzIsMSl9LmZsYXRwaWNrci1jYWxlbmRhci5pbmxpbmV7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MnB4fS5mbGF0cGlja3ItY2FsZW5kYXIuc3RhdGlje3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyAycHgpfS5mbGF0cGlja3ItY2FsZW5kYXIuc3RhdGljLm9wZW57ei1pbmRleDo5OTk7ZGlzcGxheTpibG9ja30uZmxhdHBpY2tyLWNhbGVuZGFyLm11bHRpTW9udGggLmZsYXRwaWNrci1kYXlzIC5kYXlDb250YWluZXI6bnRoLWNoaWxkKG4rMSkgLmZsYXRwaWNrci1kYXkuaW5SYW5nZTpudGgtY2hpbGQoN24rNyl7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmZsYXRwaWNrci1jYWxlbmRhci5tdWx0aU1vbnRoIC5mbGF0cGlja3ItZGF5cyAuZGF5Q29udGFpbmVyOm50aC1jaGlsZChuKzIpIC5mbGF0cGlja3ItZGF5LmluUmFuZ2U6bnRoLWNoaWxkKDduKzEpey13ZWJraXQtYm94LXNoYWRvdzotMnB4IDAgMCAjZTZlNmU2LDVweCAwIDAgI2U2ZTZlNjtib3gtc2hhZG93Oi0ycHggMCAwICNlNmU2ZTYsNXB4IDAgMCAjZTZlNmU2fS5mbGF0cGlja3ItY2FsZW5kYXIgLmhhc1RpbWUgLmRheUNvbnRhaW5lciwuZmxhdHBpY2tyLWNhbGVuZGFyIC5oYXNXZWVrcyAuZGF5Q29udGFpbmVye2JvcmRlci1ib3R0b206MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uZmxhdHBpY2tyLWNhbGVuZGFyIC5oYXNXZWVrcyAuZGF5Q29udGFpbmVye2JvcmRlci1sZWZ0OjB9LmZsYXRwaWNrci1jYWxlbmRhci5zaG93VGltZUlucHV0Lmhhc1RpbWUgLmZsYXRwaWNrci10aW1le2hlaWdodDo0MHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5ub0NhbGVuZGFyLmhhc1RpbWUgLmZsYXRwaWNrci10aW1le2hlaWdodDphdXRvfS5mbGF0cGlja3ItY2FsZW5kYXI6YWZ0ZXIsLmZsYXRwaWNrci1jYWxlbmRhcjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jaztwb2ludGVyLWV2ZW50czpub25lO2JvcmRlcjpzb2xpZCB0cmFuc3BhcmVudDtjb250ZW50OlxcXCJcXFwiO2hlaWdodDowO3dpZHRoOjA7bGVmdDoyMnB4fS5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmFmdGVyLC5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmJlZm9yZXtsZWZ0OmF1dG87cmlnaHQ6MjJweH0uZmxhdHBpY2tyLWNhbGVuZGFyOmJlZm9yZXtib3JkZXItd2lkdGg6NXB4O21hcmdpbjowIC01cHh9LmZsYXRwaWNrci1jYWxlbmRhcjphZnRlcntib3JkZXItd2lkdGg6NHB4O21hcmdpbjowIC00cHh9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd1RvcDphZnRlciwuZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZXtib3R0b206MTAwJX0uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZXtib3JkZXItYm90dG9tLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd1RvcDphZnRlcntib3JkZXItYm90dG9tLWNvbG9yOiNmZmZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlciwuZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93Qm90dG9tOmJlZm9yZXt0b3A6MTAwJX0uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93Qm90dG9tOmJlZm9yZXtib3JkZXItdG9wLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlcntib3JkZXItdG9wLWNvbG9yOiNmZmZ9LmZsYXRwaWNrci1jYWxlbmRhcjpmb2N1c3tvdXRsaW5lOjB9LmZsYXRwaWNrci13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5mbGF0cGlja3ItbW9udGhze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1tb250aHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsLjkpO2ZpbGw6cmdiYSgwLDAsMCwuOSk7aGVpZ2h0OjI4cHg7bGluZS1oZWlnaHQ6MTt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MX0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGgsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoe3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xpbmUtaGVpZ2h0OjE2cHg7aGVpZ2h0OjI4cHg7cGFkZGluZzoxMHB4O3otaW5kZXg6Mztjb2xvcjpyZ2JhKDAsMCwwLC45KTtmaWxsOnJnYmEoMCwwLDAsLjkpfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5kaXNhYmxlZCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZGlzYWJsZWR7ZGlzcGxheTpub25lfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCBpLC5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aCBpe3Bvc2l0aW9uOnJlbGF0aXZlfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5mbGF0cGlja3ItcHJldi1tb250aCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLXByZXYtbW9udGh7bGVmdDowfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5mbGF0cGlja3ItbmV4dC1tb250aCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLW5leHQtbW9udGh7cmlnaHQ6MH0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGg6aG92ZXIsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoOmhvdmVye2NvbG9yOiM5NTllYTl9LmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoOmhvdmVyIHN2ZywuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGg6aG92ZXIgc3Zne2ZpbGw6I2Y2NDc0N30uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnLC5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aCBzdmd7d2lkdGg6MTRweDtoZWlnaHQ6MTRweH0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnIHBhdGgsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoIHN2ZyBwYXRoey13ZWJraXQtdHJhbnNpdGlvbjpmaWxsIC4xczt0cmFuc2l0aW9uOmZpbGwgLjFzO2ZpbGw6aW5oZXJpdH0ubnVtSW5wdXRXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDphdXRvfS5udW1JbnB1dFdyYXBwZXIgaW5wdXQsLm51bUlucHV0V3JhcHBlciBzcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5udW1JbnB1dFdyYXBwZXIgaW5wdXR7d2lkdGg6MTAwJX0ubnVtSW5wdXRXcmFwcGVyIGlucHV0OjotbXMtY2xlYXJ7ZGlzcGxheTpub25lfS5udW1JbnB1dFdyYXBwZXIgc3Bhbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3dpZHRoOjE0cHg7cGFkZGluZzowIDRweCAwIDJweDtoZWlnaHQ6NTAlO2xpbmUtaGVpZ2h0OjUwJTtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDU3LDU3LDU3LC4xNSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5udW1JbnB1dFdyYXBwZXIgc3Bhbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEpfS5udW1JbnB1dFdyYXBwZXIgc3BhbjphY3RpdmV7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yKX0ubnVtSW5wdXRXcmFwcGVyIHNwYW46YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCJcXFwiO3Bvc2l0aW9uOmFic29sdXRlfS5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1Vwe3RvcDowO2JvcmRlci1ib3R0b206MH0ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dVcDphZnRlcntib3JkZXItbGVmdDo0cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjRweCBzb2xpZCByZ2JhKDU3LDU3LDU3LC42KTt0b3A6MjYlfS5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd257dG9wOjUwJX0ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duOmFmdGVye2JvcmRlci1sZWZ0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NHB4IHNvbGlkIHJnYmEoNTcsNTcsNTcsLjYpO3RvcDo0MCV9Lm51bUlucHV0V3JhcHBlciBzcGFuIHN2Z3t3aWR0aDppbmhlcml0O2hlaWdodDphdXRvfS5udW1JbnB1dFdyYXBwZXIgc3BhbiBzdmcgcGF0aHtmaWxsOnJnYmEoMCwwLDAsLjUpfS5udW1JbnB1dFdyYXBwZXI6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4wNSl9Lm51bUlucHV0V3JhcHBlcjpob3ZlciBzcGFue29wYWNpdHk6MX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGh7Zm9udC1zaXplOjEzNSU7bGluZS1oZWlnaHQ6aW5oZXJpdDtmb250LXdlaWdodDozMDA7Y29sb3I6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo3NSU7bGVmdDoxMi41JTtwYWRkaW5nOjYuMTZweCAwIDA7bGluZS1oZWlnaHQ6MTtoZWlnaHQ6MjhweDtkaXNwbGF5OmlubGluZS1ibG9jazt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBzcGFuLmN1ci1tb250aHtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0Oi41Y2g7cGFkZGluZzowfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBzcGFuLmN1ci1tb250aDpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjA1KX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLm51bUlucHV0V3JhcHBlcnt3aWR0aDo2Y2g7d2lkdGg6N2NoXFxcXDA7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwOmFmdGVye2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwuOSl9LmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd246YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjpyZ2JhKDAsMCwwLC45KX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6aW5oZXJpdDtjdXJzb3I6dGV4dDtwYWRkaW5nOjAgMCAwIC41Y2g7bWFyZ2luOjA7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6aW5oZXJpdDtoZWlnaHQ6YXV0bztib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dmVydGljYWwtYWxpZ246aW5pdGlhbH0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXI6Zm9jdXN7b3V0bGluZTowfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhcltkaXNhYmxlZF0sLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIGlucHV0LmN1ci15ZWFyW2Rpc2FibGVkXTpob3Zlcntmb250LXNpemU6MTAwJTtjb2xvcjpyZ2JhKDAsMCwwLC41KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmV9LmZsYXRwaWNrci13ZWVrZGF5c3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RleHQtYWxpZ246Y2VudGVyO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDoyOHB4fS5mbGF0cGlja3Itd2Vla2RheXMsLmZsYXRwaWNrci13ZWVrZGF5cyAuZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0uZmxhdHBpY2tyLXdlZWtkYXlzIC5mbGF0cGlja3Itd2Vla2RheWNvbnRhaW5lcixzcGFuLmZsYXRwaWNrci13ZWVrZGF5ey13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MX1zcGFuLmZsYXRwaWNrci13ZWVrZGF5e2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZTo5MCU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjpyZ2JhKDAsMCwwLC41NCk7bGluZS1oZWlnaHQ6MTttYXJnaW46MDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtd2VpZ2h0OmJvbGRlcn0uZGF5Q29udGFpbmVyLC5mbGF0cGlja3Itd2Vla3N7cGFkZGluZzoxcHggMCAwfS5mbGF0cGlja3ItZGF5c3twb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpzdGFydDstd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt3aWR0aDozMDcuODc1cHh9LmZsYXRwaWNrci1kYXlzOmZvY3Vze291dGxpbmU6MH0uZGF5Q29udGFpbmVye3BhZGRpbmc6MDtvdXRsaW5lOjA7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjMwNy44NzVweDttaW4td2lkdGg6MzA3Ljg3NXB4O21heC13aWR0aDozMDcuODc1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDstbXMtZmxleC13cmFwOndyYXA7LW1zLWZsZXgtcGFjazpqdXN0aWZ5Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfS5kYXlDb250YWluZXIrLmRheUNvbnRhaW5lcnstd2Via2l0LWJveC1zaGFkb3c6LTFweCAwIDAgI2U2ZTZlNjtib3gtc2hhZG93Oi0xcHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci1kYXl7YmFja2dyb3VuZDpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxNTBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6IzM5MzkzOTtjdXJzb3I6cG9pbnRlcjtmb250LXdlaWdodDo0MDA7d2lkdGg6MTQuMjg1NzE0MyU7LXdlYmtpdC1mbGV4LWJhc2lzOjE0LjI4NTcxNDMlOy1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjE0LjI4NTcxNDMlO2ZsZXgtYmFzaXM6MTQuMjg1NzE0MyU7bWF4LXdpZHRoOjM5cHg7aGVpZ2h0OjM5cHg7bGluZS1oZWlnaHQ6MzlweDttYXJnaW46MDtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0uZmxhdHBpY2tyLWRheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS50b2RheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheTpmb2N1cywuZmxhdHBpY2tyLWRheS5uZXh0TW9udGhEYXk6aG92ZXIsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5LmluUmFuZ2UsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5LnRvZGF5LmluUmFuZ2UsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5OmZvY3VzLC5mbGF0cGlja3ItZGF5LnByZXZNb250aERheTpob3ZlciwuZmxhdHBpY2tyLWRheS50b2RheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5OmZvY3VzLC5mbGF0cGlja3ItZGF5OmhvdmVye2N1cnNvcjpwb2ludGVyO291dGxpbmU6MDtiYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1kYXkudG9kYXl7Ym9yZGVyLWNvbG9yOiM5NTllYTl9LmZsYXRwaWNrci1kYXkudG9kYXk6Zm9jdXMsLmZsYXRwaWNrci1kYXkudG9kYXk6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM5NTllYTk7YmFja2dyb3VuZDojOTU5ZWE5O2NvbG9yOiNmZmZ9LmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UsLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSwuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5uZXh0TW9udGhEYXksLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UucHJldk1vbnRoRGF5LC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmZvY3VzLC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmhvdmVyLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmluUmFuZ2UsLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQubmV4dE1vbnRoRGF5LC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLnByZXZNb250aERheSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpmb2N1cywuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpob3ZlciwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuaW5SYW5nZSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLm5leHRNb250aERheSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnByZXZNb250aERheSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlOmZvY3VzLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2U6aG92ZXJ7YmFja2dyb3VuZDojNTY5ZmY3Oy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojNTY5ZmY3fS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnN0YXJ0UmFuZ2UsLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQuc3RhcnRSYW5nZSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnN0YXJ0UmFuZ2V7Ym9yZGVyLXJhZGl1czo1MHB4IDAgMCA1MHB4fS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuZW5kUmFuZ2V7Ym9yZGVyLXJhZGl1czowIDUwcHggNTBweCAwfS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnN0YXJ0UmFuZ2UrLmVuZFJhbmdlOm5vdCg6bnRoLWNoaWxkKDduKzEpKSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlKy5lbmRSYW5nZTpub3QoOm50aC1jaGlsZCg3bisxKSksLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zdGFydFJhbmdlKy5lbmRSYW5nZTpub3QoOm50aC1jaGlsZCg3bisxKSl7LXdlYmtpdC1ib3gtc2hhZG93Oi0xMHB4IDAgMCAjNTY5ZmY3O2JveC1zaGFkb3c6LTEwcHggMCAwICM1NjlmZjd9LmZsYXRwaWNrci1kYXkuZW5kUmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZXtib3JkZXItcmFkaXVzOjUwcHh9LmZsYXRwaWNrci1kYXkuaW5SYW5nZXtib3JkZXItcmFkaXVzOjA7LXdlYmtpdC1ib3gtc2hhZG93Oi01cHggMCAwICNlNmU2ZTYsNXB4IDAgMCAjZTZlNmU2O2JveC1zaGFkb3c6LTVweCAwIDAgI2U2ZTZlNiw1cHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci1kYXkuZGlzYWJsZWQsLmZsYXRwaWNrci1kYXkuZGlzYWJsZWQ6aG92ZXIsLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5LC5mbGF0cGlja3ItZGF5Lm5vdEFsbG93ZWQsLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZC5uZXh0TW9udGhEYXksLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZC5wcmV2TW9udGhEYXksLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5e2NvbG9yOnJnYmEoNTcsNTcsNTcsLjMpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpkZWZhdWx0fS5mbGF0cGlja3ItZGF5LmRpc2FibGVkLC5mbGF0cGlja3ItZGF5LmRpc2FibGVkOmhvdmVye2N1cnNvcjpub3QtYWxsb3dlZDtjb2xvcjpyZ2JhKDU3LDU3LDU3LC4xKX0uZmxhdHBpY2tyLWRheS53ZWVrLnNlbGVjdGVke2JvcmRlci1yYWRpdXM6MDstd2Via2l0LWJveC1zaGFkb3c6LTVweCAwIDAgIzU2OWZmNyw1cHggMCAwICM1NjlmZjc7Ym94LXNoYWRvdzotNXB4IDAgMCAjNTY5ZmY3LDVweCAwIDAgIzU2OWZmN30uZmxhdHBpY2tyLWRheS5oaWRkZW57dmlzaWJpbGl0eTpoaWRkZW59LnJhbmdlTW9kZSAuZmxhdHBpY2tyLWRheXttYXJnaW4tdG9wOjFweH0uZmxhdHBpY2tyLXdlZWt3cmFwcGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0OmxlZnR9LmZsYXRwaWNrci13ZWVrd3JhcHBlciAuZmxhdHBpY2tyLXdlZWtze3BhZGRpbmc6MCAxMnB4Oy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTY7Ym94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci13ZWVrd3JhcHBlciAuZmxhdHBpY2tyLXdlZWtkYXl7ZmxvYXQ6bm9uZTt3aWR0aDoxMDAlO2xpbmUtaGVpZ2h0OjI4cHh9LmZsYXRwaWNrci13ZWVrd3JhcHBlciBzcGFuLmZsYXRwaWNrci1kYXksLmZsYXRwaWNrci13ZWVrd3JhcHBlciBzcGFuLmZsYXRwaWNrci1kYXk6aG92ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO2NvbG9yOnJnYmEoNTcsNTcsNTcsLjMpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y3Vyc29yOmRlZmF1bHQ7Ym9yZGVyOm5vbmV9LmZsYXRwaWNrci1pbm5lckNvbnRhaW5lcntkaXNwbGF5OmJsb2NrO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVufS5mbGF0cGlja3ItaW5uZXJDb250YWluZXIsLmZsYXRwaWNrci1yQ29udGFpbmVyey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uZmxhdHBpY2tyLXJDb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzowfS5mbGF0cGlja3ItdGltZXt0ZXh0LWFsaWduOmNlbnRlcjtvdXRsaW5lOjA7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtsaW5lLWhlaWdodDo0MHB4O21heC1oZWlnaHQ6NDBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LmZsYXRwaWNrci10aW1lOmFmdGVye2NvbnRlbnQ6XFxcIlxcXCI7ZGlzcGxheTp0YWJsZTtjbGVhcjpib3RofS5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyey13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTt3aWR0aDo0MCU7aGVpZ2h0OjQwcHg7ZmxvYXQ6bGVmdH0uZmxhdHBpY2tyLXRpbWUgLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXA6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMzkzOTM5fS5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duOmFmdGVye2JvcmRlci10b3AtY29sb3I6IzM5MzkzOX0uZmxhdHBpY2tyLXRpbWUuaGFzU2Vjb25kcyAubnVtSW5wdXRXcmFwcGVye3dpZHRoOjI2JX0uZmxhdHBpY2tyLXRpbWUudGltZTI0aHIgLm51bUlucHV0V3JhcHBlcnt3aWR0aDo0OSV9LmZsYXRwaWNrci10aW1lIGlucHV0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjojMzkzOTM5O2ZvbnQtc2l6ZToxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uZmxhdHBpY2tyLXRpbWUgaW5wdXQuZmxhdHBpY2tyLWhvdXJ7Zm9udC13ZWlnaHQ6NzAwfS5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3ItbWludXRlLC5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3Itc2Vjb25ke2ZvbnQtd2VpZ2h0OjQwMH0uZmxhdHBpY2tyLXRpbWUgaW5wdXQ6Zm9jdXN7b3V0bGluZTowO2JvcmRlcjowfS5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLWFtLXBtLC5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLXRpbWUtc2VwYXJhdG9ye2hlaWdodDppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0OmxlZnQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjojMzkzOTM5O2ZvbnQtd2VpZ2h0OjcwMDt3aWR0aDoyJTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcn0uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbXtvdXRsaW5lOjA7d2lkdGg6MTglO2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtd2VpZ2h0OjQwMH0uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbTpmb2N1cywuZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbTpob3ZlciwuZmxhdHBpY2tyLXRpbWUgaW5wdXQ6Zm9jdXMsLmZsYXRwaWNrci10aW1lIGlucHV0OmhvdmVye2JhY2tncm91bmQ6I2YzZjNmM30uZmxhdHBpY2tyLWlucHV0W3JlYWRvbmx5XXtjdXJzb3I6cG9pbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgZnBGYWRlSW5Eb3duezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZwRmFkZUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19XCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuXG5cbi8qKiovIH0pXG4vKioqKioqLyBdKTtcbn0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YWdjLWJhc2ljLmJ1bmRsZS5qcy5tYXAiLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNi5hcnJheS5mb3ItZWFjaCcpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuQXJyYXkuZm9yRWFjaDtcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM3LmFycmF5LmluY2x1ZGVzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5BcnJheS5pbmNsdWRlcztcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM2Lm51bWJlci5pcy1pbnRlZ2VyJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5OdW1iZXIuaXNJbnRlZ2VyO1xuIiwicmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczYuc3RyaW5nLnN0YXJ0cy13aXRoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5TdHJpbmcuc3RhcnRzV2l0aDtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICh0eXBlb2YgaXQgIT0gJ2Z1bmN0aW9uJykgdGhyb3cgVHlwZUVycm9yKGl0ICsgJyBpcyBub3QgYSBmdW5jdGlvbiEnKTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsIi8vIDIyLjEuMy4zMSBBcnJheS5wcm90b3R5cGVbQEB1bnNjb3BhYmxlc11cbnZhciBVTlNDT1BBQkxFUyA9IHJlcXVpcmUoJy4vX3drcycpKCd1bnNjb3BhYmxlcycpO1xudmFyIEFycmF5UHJvdG8gPSBBcnJheS5wcm90b3R5cGU7XG5pZiAoQXJyYXlQcm90b1tVTlNDT1BBQkxFU10gPT0gdW5kZWZpbmVkKSByZXF1aXJlKCcuL19oaWRlJykoQXJyYXlQcm90bywgVU5TQ09QQUJMRVMsIHt9KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICBBcnJheVByb3RvW1VOU0NPUEFCTEVTXVtrZXldID0gdHJ1ZTtcbn07XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICghaXNPYmplY3QoaXQpKSB0aHJvdyBUeXBlRXJyb3IoaXQgKyAnIGlzIG5vdCBhbiBvYmplY3QhJyk7XG4gIHJldHVybiBpdDtcbn07XG4iLCIvLyBmYWxzZSAtPiBBcnJheSNpbmRleE9mXG4vLyB0cnVlICAtPiBBcnJheSNpbmNsdWRlc1xudmFyIHRvSU9iamVjdCA9IHJlcXVpcmUoJy4vX3RvLWlvYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIHRvQWJzb2x1dGVJbmRleCA9IHJlcXVpcmUoJy4vX3RvLWFic29sdXRlLWluZGV4Jyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChJU19JTkNMVURFUykge1xuICByZXR1cm4gZnVuY3Rpb24gKCR0aGlzLCBlbCwgZnJvbUluZGV4KSB7XG4gICAgdmFyIE8gPSB0b0lPYmplY3QoJHRoaXMpO1xuICAgIHZhciBsZW5ndGggPSB0b0xlbmd0aChPLmxlbmd0aCk7XG4gICAgdmFyIGluZGV4ID0gdG9BYnNvbHV0ZUluZGV4KGZyb21JbmRleCwgbGVuZ3RoKTtcbiAgICB2YXIgdmFsdWU7XG4gICAgLy8gQXJyYXkjaW5jbHVkZXMgdXNlcyBTYW1lVmFsdWVaZXJvIGVxdWFsaXR5IGFsZ29yaXRobVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgICBpZiAoSVNfSU5DTFVERVMgJiYgZWwgIT0gZWwpIHdoaWxlIChsZW5ndGggPiBpbmRleCkge1xuICAgICAgdmFsdWUgPSBPW2luZGV4KytdO1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgICAgaWYgKHZhbHVlICE9IHZhbHVlKSByZXR1cm4gdHJ1ZTtcbiAgICAvLyBBcnJheSNpbmRleE9mIGlnbm9yZXMgaG9sZXMsIEFycmF5I2luY2x1ZGVzIC0gbm90XG4gICAgfSBlbHNlIGZvciAoO2xlbmd0aCA+IGluZGV4OyBpbmRleCsrKSBpZiAoSVNfSU5DTFVERVMgfHwgaW5kZXggaW4gTykge1xuICAgICAgaWYgKE9baW5kZXhdID09PSBlbCkgcmV0dXJuIElTX0lOQ0xVREVTIHx8IGluZGV4IHx8IDA7XG4gICAgfSByZXR1cm4gIUlTX0lOQ0xVREVTICYmIC0xO1xuICB9O1xufTtcbiIsIi8vIDAgLT4gQXJyYXkjZm9yRWFjaFxuLy8gMSAtPiBBcnJheSNtYXBcbi8vIDIgLT4gQXJyYXkjZmlsdGVyXG4vLyAzIC0+IEFycmF5I3NvbWVcbi8vIDQgLT4gQXJyYXkjZXZlcnlcbi8vIDUgLT4gQXJyYXkjZmluZFxuLy8gNiAtPiBBcnJheSNmaW5kSW5kZXhcbnZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbnZhciBJT2JqZWN0ID0gcmVxdWlyZSgnLi9faW9iamVjdCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuL190by1sZW5ndGgnKTtcbnZhciBhc2MgPSByZXF1aXJlKCcuL19hcnJheS1zcGVjaWVzLWNyZWF0ZScpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoVFlQRSwgJGNyZWF0ZSkge1xuICB2YXIgSVNfTUFQID0gVFlQRSA9PSAxO1xuICB2YXIgSVNfRklMVEVSID0gVFlQRSA9PSAyO1xuICB2YXIgSVNfU09NRSA9IFRZUEUgPT0gMztcbiAgdmFyIElTX0VWRVJZID0gVFlQRSA9PSA0O1xuICB2YXIgSVNfRklORF9JTkRFWCA9IFRZUEUgPT0gNjtcbiAgdmFyIE5PX0hPTEVTID0gVFlQRSA9PSA1IHx8IElTX0ZJTkRfSU5ERVg7XG4gIHZhciBjcmVhdGUgPSAkY3JlYXRlIHx8IGFzYztcbiAgcmV0dXJuIGZ1bmN0aW9uICgkdGhpcywgY2FsbGJhY2tmbiwgdGhhdCkge1xuICAgIHZhciBPID0gdG9PYmplY3QoJHRoaXMpO1xuICAgIHZhciBzZWxmID0gSU9iamVjdChPKTtcbiAgICB2YXIgZiA9IGN0eChjYWxsYmFja2ZuLCB0aGF0LCAzKTtcbiAgICB2YXIgbGVuZ3RoID0gdG9MZW5ndGgoc2VsZi5sZW5ndGgpO1xuICAgIHZhciBpbmRleCA9IDA7XG4gICAgdmFyIHJlc3VsdCA9IElTX01BUCA/IGNyZWF0ZSgkdGhpcywgbGVuZ3RoKSA6IElTX0ZJTFRFUiA/IGNyZWF0ZSgkdGhpcywgMCkgOiB1bmRlZmluZWQ7XG4gICAgdmFyIHZhbCwgcmVzO1xuICAgIGZvciAoO2xlbmd0aCA+IGluZGV4OyBpbmRleCsrKSBpZiAoTk9fSE9MRVMgfHwgaW5kZXggaW4gc2VsZikge1xuICAgICAgdmFsID0gc2VsZltpbmRleF07XG4gICAgICByZXMgPSBmKHZhbCwgaW5kZXgsIE8pO1xuICAgICAgaWYgKFRZUEUpIHtcbiAgICAgICAgaWYgKElTX01BUCkgcmVzdWx0W2luZGV4XSA9IHJlczsgICAvLyBtYXBcbiAgICAgICAgZWxzZSBpZiAocmVzKSBzd2l0Y2ggKFRZUEUpIHtcbiAgICAgICAgICBjYXNlIDM6IHJldHVybiB0cnVlOyAgICAgICAgICAgICAvLyBzb21lXG4gICAgICAgICAgY2FzZSA1OiByZXR1cm4gdmFsOyAgICAgICAgICAgICAgLy8gZmluZFxuICAgICAgICAgIGNhc2UgNjogcmV0dXJuIGluZGV4OyAgICAgICAgICAgIC8vIGZpbmRJbmRleFxuICAgICAgICAgIGNhc2UgMjogcmVzdWx0LnB1c2godmFsKTsgICAgICAgIC8vIGZpbHRlclxuICAgICAgICB9IGVsc2UgaWYgKElTX0VWRVJZKSByZXR1cm4gZmFsc2U7IC8vIGV2ZXJ5XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBJU19GSU5EX0lOREVYID8gLTEgOiBJU19TT01FIHx8IElTX0VWRVJZID8gSVNfRVZFUlkgOiByZXN1bHQ7XG4gIH07XG59O1xuIiwidmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgaXNBcnJheSA9IHJlcXVpcmUoJy4vX2lzLWFycmF5Jyk7XG52YXIgU1BFQ0lFUyA9IHJlcXVpcmUoJy4vX3drcycpKCdzcGVjaWVzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gIHZhciBDO1xuICBpZiAoaXNBcnJheShvcmlnaW5hbCkpIHtcbiAgICBDID0gb3JpZ2luYWwuY29uc3RydWN0b3I7XG4gICAgLy8gY3Jvc3MtcmVhbG0gZmFsbGJhY2tcbiAgICBpZiAodHlwZW9mIEMgPT0gJ2Z1bmN0aW9uJyAmJiAoQyA9PT0gQXJyYXkgfHwgaXNBcnJheShDLnByb3RvdHlwZSkpKSBDID0gdW5kZWZpbmVkO1xuICAgIGlmIChpc09iamVjdChDKSkge1xuICAgICAgQyA9IENbU1BFQ0lFU107XG4gICAgICBpZiAoQyA9PT0gbnVsbCkgQyA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH0gcmV0dXJuIEMgPT09IHVuZGVmaW5lZCA/IEFycmF5IDogQztcbn07XG4iLCIvLyA5LjQuMi4zIEFycmF5U3BlY2llc0NyZWF0ZShvcmlnaW5hbEFycmF5LCBsZW5ndGgpXG52YXIgc3BlY2llc0NvbnN0cnVjdG9yID0gcmVxdWlyZSgnLi9fYXJyYXktc3BlY2llcy1jb25zdHJ1Y3RvcicpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChvcmlnaW5hbCwgbGVuZ3RoKSB7XG4gIHJldHVybiBuZXcgKHNwZWNpZXNDb25zdHJ1Y3RvcihvcmlnaW5hbCkpKGxlbmd0aCk7XG59O1xuIiwidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuIiwidmFyIGNvcmUgPSBtb2R1bGUuZXhwb3J0cyA9IHsgdmVyc2lvbjogJzIuNi45JyB9O1xuaWYgKHR5cGVvZiBfX2UgPT0gJ251bWJlcicpIF9fZSA9IGNvcmU7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW5kZWZcbiIsIi8vIG9wdGlvbmFsIC8gc2ltcGxlIGNvbnRleHQgYmluZGluZ1xudmFyIGFGdW5jdGlvbiA9IHJlcXVpcmUoJy4vX2EtZnVuY3Rpb24nKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGZuLCB0aGF0LCBsZW5ndGgpIHtcbiAgYUZ1bmN0aW9uKGZuKTtcbiAgaWYgKHRoYXQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZuO1xuICBzd2l0Y2ggKGxlbmd0aCkge1xuICAgIGNhc2UgMTogcmV0dXJuIGZ1bmN0aW9uIChhKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhKTtcbiAgICB9O1xuICAgIGNhc2UgMjogcmV0dXJuIGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhLCBiKTtcbiAgICB9O1xuICAgIGNhc2UgMzogcmV0dXJuIGZ1bmN0aW9uIChhLCBiLCBjKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhLCBiLCBjKTtcbiAgICB9O1xuICB9XG4gIHJldHVybiBmdW5jdGlvbiAoLyogLi4uYXJncyAqLykge1xuICAgIHJldHVybiBmbi5hcHBseSh0aGF0LCBhcmd1bWVudHMpO1xuICB9O1xufTtcbiIsIi8vIDcuMi4xIFJlcXVpcmVPYmplY3RDb2VyY2libGUoYXJndW1lbnQpXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgPT0gdW5kZWZpbmVkKSB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAgXCIgKyBpdCk7XG4gIHJldHVybiBpdDtcbn07XG4iLCIvLyBUaGFuaydzIElFOCBmb3IgaGlzIGZ1bm55IGRlZmluZVByb3BlcnR5XG5tb2R1bGUuZXhwb3J0cyA9ICFyZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2EnLCB7IGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfSB9KS5hICE9IDc7XG59KTtcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGRvY3VtZW50ID0gcmVxdWlyZSgnLi9fZ2xvYmFsJykuZG9jdW1lbnQ7XG4vLyB0eXBlb2YgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCBpcyAnb2JqZWN0JyBpbiBvbGQgSUVcbnZhciBpcyA9IGlzT2JqZWN0KGRvY3VtZW50KSAmJiBpc09iamVjdChkb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpcyA/IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoaXQpIDoge307XG59O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGNvcmUgPSByZXF1aXJlKCcuL19jb3JlJyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbnZhciByZWRlZmluZSA9IHJlcXVpcmUoJy4vX3JlZGVmaW5lJyk7XG52YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG5cbnZhciAkZXhwb3J0ID0gZnVuY3Rpb24gKHR5cGUsIG5hbWUsIHNvdXJjZSkge1xuICB2YXIgSVNfRk9SQ0VEID0gdHlwZSAmICRleHBvcnQuRjtcbiAgdmFyIElTX0dMT0JBTCA9IHR5cGUgJiAkZXhwb3J0Lkc7XG4gIHZhciBJU19TVEFUSUMgPSB0eXBlICYgJGV4cG9ydC5TO1xuICB2YXIgSVNfUFJPVE8gPSB0eXBlICYgJGV4cG9ydC5QO1xuICB2YXIgSVNfQklORCA9IHR5cGUgJiAkZXhwb3J0LkI7XG4gIHZhciB0YXJnZXQgPSBJU19HTE9CQUwgPyBnbG9iYWwgOiBJU19TVEFUSUMgPyBnbG9iYWxbbmFtZV0gfHwgKGdsb2JhbFtuYW1lXSA9IHt9KSA6IChnbG9iYWxbbmFtZV0gfHwge30pW1BST1RPVFlQRV07XG4gIHZhciBleHBvcnRzID0gSVNfR0xPQkFMID8gY29yZSA6IGNvcmVbbmFtZV0gfHwgKGNvcmVbbmFtZV0gPSB7fSk7XG4gIHZhciBleHBQcm90byA9IGV4cG9ydHNbUFJPVE9UWVBFXSB8fCAoZXhwb3J0c1tQUk9UT1RZUEVdID0ge30pO1xuICB2YXIga2V5LCBvd24sIG91dCwgZXhwO1xuICBpZiAoSVNfR0xPQkFMKSBzb3VyY2UgPSBuYW1lO1xuICBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICAvLyBjb250YWlucyBpbiBuYXRpdmVcbiAgICBvd24gPSAhSVNfRk9SQ0VEICYmIHRhcmdldCAmJiB0YXJnZXRba2V5XSAhPT0gdW5kZWZpbmVkO1xuICAgIC8vIGV4cG9ydCBuYXRpdmUgb3IgcGFzc2VkXG4gICAgb3V0ID0gKG93biA/IHRhcmdldCA6IHNvdXJjZSlba2V5XTtcbiAgICAvLyBiaW5kIHRpbWVycyB0byBnbG9iYWwgZm9yIGNhbGwgZnJvbSBleHBvcnQgY29udGV4dFxuICAgIGV4cCA9IElTX0JJTkQgJiYgb3duID8gY3R4KG91dCwgZ2xvYmFsKSA6IElTX1BST1RPICYmIHR5cGVvZiBvdXQgPT0gJ2Z1bmN0aW9uJyA/IGN0eChGdW5jdGlvbi5jYWxsLCBvdXQpIDogb3V0O1xuICAgIC8vIGV4dGVuZCBnbG9iYWxcbiAgICBpZiAodGFyZ2V0KSByZWRlZmluZSh0YXJnZXQsIGtleSwgb3V0LCB0eXBlICYgJGV4cG9ydC5VKTtcbiAgICAvLyBleHBvcnRcbiAgICBpZiAoZXhwb3J0c1trZXldICE9IG91dCkgaGlkZShleHBvcnRzLCBrZXksIGV4cCk7XG4gICAgaWYgKElTX1BST1RPICYmIGV4cFByb3RvW2tleV0gIT0gb3V0KSBleHBQcm90b1trZXldID0gb3V0O1xuICB9XG59O1xuZ2xvYmFsLmNvcmUgPSBjb3JlO1xuLy8gdHlwZSBiaXRtYXBcbiRleHBvcnQuRiA9IDE7ICAgLy8gZm9yY2VkXG4kZXhwb3J0LkcgPSAyOyAgIC8vIGdsb2JhbFxuJGV4cG9ydC5TID0gNDsgICAvLyBzdGF0aWNcbiRleHBvcnQuUCA9IDg7ICAgLy8gcHJvdG9cbiRleHBvcnQuQiA9IDE2OyAgLy8gYmluZFxuJGV4cG9ydC5XID0gMzI7ICAvLyB3cmFwXG4kZXhwb3J0LlUgPSA2NDsgIC8vIHNhZmVcbiRleHBvcnQuUiA9IDEyODsgLy8gcmVhbCBwcm90byBtZXRob2QgZm9yIGBsaWJyYXJ5YFxubW9kdWxlLmV4cG9ydHMgPSAkZXhwb3J0O1xuIiwidmFyIE1BVENIID0gcmVxdWlyZSgnLi9fd2tzJykoJ21hdGNoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVkpIHtcbiAgdmFyIHJlID0gLy4vO1xuICB0cnkge1xuICAgICcvLi8nW0tFWV0ocmUpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJlW01BVENIXSA9IGZhbHNlO1xuICAgICAgcmV0dXJuICEnLy4vJ1tLRVldKHJlKTtcbiAgICB9IGNhdGNoIChmKSB7IC8qIGVtcHR5ICovIH1cbiAgfSByZXR1cm4gdHJ1ZTtcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChleGVjKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuICEhZXhlYygpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCduYXRpdmUtZnVuY3Rpb24tdG8tc3RyaW5nJywgRnVuY3Rpb24udG9TdHJpbmcpO1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbnZhciBnbG9iYWwgPSBtb2R1bGUuZXhwb3J0cyA9IHR5cGVvZiB3aW5kb3cgIT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lk1hdGggPT0gTWF0aFxuICA/IHdpbmRvdyA6IHR5cGVvZiBzZWxmICE9ICd1bmRlZmluZWQnICYmIHNlbGYuTWF0aCA9PSBNYXRoID8gc2VsZlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgOiBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuaWYgKHR5cGVvZiBfX2cgPT0gJ251bWJlcicpIF9fZyA9IGdsb2JhbDsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwidmFyIGhhc093blByb3BlcnR5ID0ge30uaGFzT3duUHJvcGVydHk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xufTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGNyZWF0ZURlc2MgPSByZXF1aXJlKCcuL19wcm9wZXJ0eS1kZXNjJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkUC5mKG9iamVjdCwga2V5LCBjcmVhdGVEZXNjKDEsIHZhbHVlKSk7XG59IDogZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gb2JqZWN0O1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gIXJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgJiYgIXJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcXVpcmUoJy4vX2RvbS1jcmVhdGUnKSgnZGl2JyksICdhJywgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIDc7IH0gfSkuYSAhPSA3O1xufSk7XG4iLCIvLyBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIGFuZCBub24tZW51bWVyYWJsZSBvbGQgVjggc3RyaW5nc1xudmFyIGNvZiA9IHJlcXVpcmUoJy4vX2NvZicpO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xubW9kdWxlLmV4cG9ydHMgPSBPYmplY3QoJ3onKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKSA/IE9iamVjdCA6IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gY29mKGl0KSA9PSAnU3RyaW5nJyA/IGl0LnNwbGl0KCcnKSA6IE9iamVjdChpdCk7XG59O1xuIiwiLy8gNy4yLjIgSXNBcnJheShhcmd1bWVudClcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbm1vZHVsZS5leHBvcnRzID0gQXJyYXkuaXNBcnJheSB8fCBmdW5jdGlvbiBpc0FycmF5KGFyZykge1xuICByZXR1cm4gY29mKGFyZykgPT0gJ0FycmF5Jztcbn07XG4iLCIvLyAyMC4xLjIuMyBOdW1iZXIuaXNJbnRlZ2VyKG51bWJlcilcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGZsb29yID0gTWF0aC5mbG9vcjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gaXNJbnRlZ2VyKGl0KSB7XG4gIHJldHVybiAhaXNPYmplY3QoaXQpICYmIGlzRmluaXRlKGl0KSAmJiBmbG9vcihpdCkgPT09IGl0O1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0eXBlb2YgaXQgPT09ICdvYmplY3QnID8gaXQgIT09IG51bGwgOiB0eXBlb2YgaXQgPT09ICdmdW5jdGlvbic7XG59O1xuIiwiLy8gNy4yLjggSXNSZWdFeHAoYXJndW1lbnQpXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbnZhciBNQVRDSCA9IHJlcXVpcmUoJy4vX3drcycpKCdtYXRjaCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgdmFyIGlzUmVnRXhwO1xuICByZXR1cm4gaXNPYmplY3QoaXQpICYmICgoaXNSZWdFeHAgPSBpdFtNQVRDSF0pICE9PSB1bmRlZmluZWQgPyAhIWlzUmVnRXhwIDogY29mKGl0KSA9PSAnUmVnRXhwJyk7XG59O1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmYWxzZTtcbiIsInZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4vX2FuLW9iamVjdCcpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi9faWU4LWRvbS1kZWZpbmUnKTtcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4vX3RvLXByaW1pdGl2ZScpO1xudmFyIGRQID0gT2JqZWN0LmRlZmluZVByb3BlcnR5O1xuXG5leHBvcnRzLmYgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpID8gT2JqZWN0LmRlZmluZVByb3BlcnR5IDogZnVuY3Rpb24gZGVmaW5lUHJvcGVydHkoTywgUCwgQXR0cmlidXRlcykge1xuICBhbk9iamVjdChPKTtcbiAgUCA9IHRvUHJpbWl0aXZlKFAsIHRydWUpO1xuICBhbk9iamVjdChBdHRyaWJ1dGVzKTtcbiAgaWYgKElFOF9ET01fREVGSU5FKSB0cnkge1xuICAgIHJldHVybiBkUChPLCBQLCBBdHRyaWJ1dGVzKTtcbiAgfSBjYXRjaCAoZSkgeyAvKiBlbXB0eSAqLyB9XG4gIGlmICgnZ2V0JyBpbiBBdHRyaWJ1dGVzIHx8ICdzZXQnIGluIEF0dHJpYnV0ZXMpIHRocm93IFR5cGVFcnJvcignQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQhJyk7XG4gIGlmICgndmFsdWUnIGluIEF0dHJpYnV0ZXMpIE9bUF0gPSBBdHRyaWJ1dGVzLnZhbHVlO1xuICByZXR1cm4gTztcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgaGFzID0gcmVxdWlyZSgnLi9faGFzJyk7XG52YXIgU1JDID0gcmVxdWlyZSgnLi9fdWlkJykoJ3NyYycpO1xudmFyICR0b1N0cmluZyA9IHJlcXVpcmUoJy4vX2Z1bmN0aW9uLXRvLXN0cmluZycpO1xudmFyIFRPX1NUUklORyA9ICd0b1N0cmluZyc7XG52YXIgVFBMID0gKCcnICsgJHRvU3RyaW5nKS5zcGxpdChUT19TVFJJTkcpO1xuXG5yZXF1aXJlKCcuL19jb3JlJykuaW5zcGVjdFNvdXJjZSA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gJHRvU3RyaW5nLmNhbGwoaXQpO1xufTtcblxuKG1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKE8sIGtleSwgdmFsLCBzYWZlKSB7XG4gIHZhciBpc0Z1bmN0aW9uID0gdHlwZW9mIHZhbCA9PSAnZnVuY3Rpb24nO1xuICBpZiAoaXNGdW5jdGlvbikgaGFzKHZhbCwgJ25hbWUnKSB8fCBoaWRlKHZhbCwgJ25hbWUnLCBrZXkpO1xuICBpZiAoT1trZXldID09PSB2YWwpIHJldHVybjtcbiAgaWYgKGlzRnVuY3Rpb24pIGhhcyh2YWwsIFNSQykgfHwgaGlkZSh2YWwsIFNSQywgT1trZXldID8gJycgKyBPW2tleV0gOiBUUEwuam9pbihTdHJpbmcoa2V5KSkpO1xuICBpZiAoTyA9PT0gZ2xvYmFsKSB7XG4gICAgT1trZXldID0gdmFsO1xuICB9IGVsc2UgaWYgKCFzYWZlKSB7XG4gICAgZGVsZXRlIE9ba2V5XTtcbiAgICBoaWRlKE8sIGtleSwgdmFsKTtcbiAgfSBlbHNlIGlmIChPW2tleV0pIHtcbiAgICBPW2tleV0gPSB2YWw7XG4gIH0gZWxzZSB7XG4gICAgaGlkZShPLCBrZXksIHZhbCk7XG4gIH1cbi8vIGFkZCBmYWtlIEZ1bmN0aW9uI3RvU3RyaW5nIGZvciBjb3JyZWN0IHdvcmsgd3JhcHBlZCBtZXRob2RzIC8gY29uc3RydWN0b3JzIHdpdGggbWV0aG9kcyBsaWtlIExvRGFzaCBpc05hdGl2ZVxufSkoRnVuY3Rpb24ucHJvdG90eXBlLCBUT19TVFJJTkcsIGZ1bmN0aW9uIHRvU3RyaW5nKCkge1xuICByZXR1cm4gdHlwZW9mIHRoaXMgPT0gJ2Z1bmN0aW9uJyAmJiB0aGlzW1NSQ10gfHwgJHRvU3RyaW5nLmNhbGwodGhpcyk7XG59KTtcbiIsInZhciBjb3JlID0gcmVxdWlyZSgnLi9fY29yZScpO1xudmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIFNIQVJFRCA9ICdfX2NvcmUtanNfc2hhcmVkX18nO1xudmFyIHN0b3JlID0gZ2xvYmFsW1NIQVJFRF0gfHwgKGdsb2JhbFtTSEFSRURdID0ge30pO1xuXG4obW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSkge1xuICByZXR1cm4gc3RvcmVba2V5XSB8fCAoc3RvcmVba2V5XSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHt9KTtcbn0pKCd2ZXJzaW9ucycsIFtdKS5wdXNoKHtcbiAgdmVyc2lvbjogY29yZS52ZXJzaW9uLFxuICBtb2RlOiByZXF1aXJlKCcuL19saWJyYXJ5JykgPyAncHVyZScgOiAnZ2xvYmFsJyxcbiAgY29weXJpZ2h0OiAnwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSdcbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobWV0aG9kLCBhcmcpIHtcbiAgcmV0dXJuICEhbWV0aG9kICYmIGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlbGVzcy1jYWxsXG4gICAgYXJnID8gbWV0aG9kLmNhbGwobnVsbCwgZnVuY3Rpb24gKCkgeyAvKiBlbXB0eSAqLyB9LCAxKSA6IG1ldGhvZC5jYWxsKG51bGwpO1xuICB9KTtcbn07XG4iLCIvLyBoZWxwZXIgZm9yIFN0cmluZyN7c3RhcnRzV2l0aCwgZW5kc1dpdGgsIGluY2x1ZGVzfVxudmFyIGlzUmVnRXhwID0gcmVxdWlyZSgnLi9faXMtcmVnZXhwJyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodGhhdCwgc2VhcmNoU3RyaW5nLCBOQU1FKSB7XG4gIGlmIChpc1JlZ0V4cChzZWFyY2hTdHJpbmcpKSB0aHJvdyBUeXBlRXJyb3IoJ1N0cmluZyMnICsgTkFNRSArIFwiIGRvZXNuJ3QgYWNjZXB0IHJlZ2V4IVwiKTtcbiAgcmV0dXJuIFN0cmluZyhkZWZpbmVkKHRoYXQpKTtcbn07XG4iLCJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIG1heCA9IE1hdGgubWF4O1xudmFyIG1pbiA9IE1hdGgubWluO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaW5kZXgsIGxlbmd0aCkge1xuICBpbmRleCA9IHRvSW50ZWdlcihpbmRleCk7XG4gIHJldHVybiBpbmRleCA8IDAgPyBtYXgoaW5kZXggKyBsZW5ndGgsIDApIDogbWluKGluZGV4LCBsZW5ndGgpO1xufTtcbiIsIi8vIDcuMS40IFRvSW50ZWdlclxudmFyIGNlaWwgPSBNYXRoLmNlaWw7XG52YXIgZmxvb3IgPSBNYXRoLmZsb29yO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGlzTmFOKGl0ID0gK2l0KSA/IDAgOiAoaXQgPiAwID8gZmxvb3IgOiBjZWlsKShpdCk7XG59O1xuIiwiLy8gdG8gaW5kZXhlZCBvYmplY3QsIHRvT2JqZWN0IHdpdGggZmFsbGJhY2sgZm9yIG5vbi1hcnJheS1saWtlIEVTMyBzdHJpbmdzXG52YXIgSU9iamVjdCA9IHJlcXVpcmUoJy4vX2lvYmplY3QnKTtcbnZhciBkZWZpbmVkID0gcmVxdWlyZSgnLi9fZGVmaW5lZCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIElPYmplY3QoZGVmaW5lZChpdCkpO1xufTtcbiIsIi8vIDcuMS4xNSBUb0xlbmd0aFxudmFyIHRvSW50ZWdlciA9IHJlcXVpcmUoJy4vX3RvLWludGVnZXInKTtcbnZhciBtaW4gPSBNYXRoLm1pbjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpdCA+IDAgPyBtaW4odG9JbnRlZ2VyKGl0KSwgMHgxZmZmZmZmZmZmZmZmZikgOiAwOyAvLyBwb3coMiwgNTMpIC0gMSA9PSA5MDA3MTk5MjU0NzQwOTkxXG59O1xuIiwiLy8gNy4xLjEzIFRvT2JqZWN0KGFyZ3VtZW50KVxudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gT2JqZWN0KGRlZmluZWQoaXQpKTtcbn07XG4iLCIvLyA3LjEuMSBUb1ByaW1pdGl2ZShpbnB1dCBbLCBQcmVmZXJyZWRUeXBlXSlcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xuLy8gaW5zdGVhZCBvZiB0aGUgRVM2IHNwZWMgdmVyc2lvbiwgd2UgZGlkbid0IGltcGxlbWVudCBAQHRvUHJpbWl0aXZlIGNhc2Vcbi8vIGFuZCB0aGUgc2Vjb25kIGFyZ3VtZW50IC0gZmxhZyAtIHByZWZlcnJlZCB0eXBlIGlzIGEgc3RyaW5nXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwgUykge1xuICBpZiAoIWlzT2JqZWN0KGl0KSkgcmV0dXJuIGl0O1xuICB2YXIgZm4sIHZhbDtcbiAgaWYgKFMgJiYgdHlwZW9mIChmbiA9IGl0LnRvU3RyaW5nKSA9PSAnZnVuY3Rpb24nICYmICFpc09iamVjdCh2YWwgPSBmbi5jYWxsKGl0KSkpIHJldHVybiB2YWw7XG4gIGlmICh0eXBlb2YgKGZuID0gaXQudmFsdWVPZikgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAoIVMgJiYgdHlwZW9mIChmbiA9IGl0LnRvU3RyaW5nKSA9PSAnZnVuY3Rpb24nICYmICFpc09iamVjdCh2YWwgPSBmbi5jYWxsKGl0KSkpIHJldHVybiB2YWw7XG4gIHRocm93IFR5cGVFcnJvcihcIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZVwiKTtcbn07XG4iLCJ2YXIgaWQgPSAwO1xudmFyIHB4ID0gTWF0aC5yYW5kb20oKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gJ1N5bWJvbCgnLmNvbmNhdChrZXkgPT09IHVuZGVmaW5lZCA/ICcnIDoga2V5LCAnKV8nLCAoKytpZCArIHB4KS50b1N0cmluZygzNikpO1xufTtcbiIsInZhciBzdG9yZSA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCd3a3MnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuL191aWQnKTtcbnZhciBTeW1ib2wgPSByZXF1aXJlKCcuL19nbG9iYWwnKS5TeW1ib2w7XG52YXIgVVNFX1NZTUJPTCA9IHR5cGVvZiBTeW1ib2wgPT0gJ2Z1bmN0aW9uJztcblxudmFyICRleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobmFtZSkge1xuICByZXR1cm4gc3RvcmVbbmFtZV0gfHwgKHN0b3JlW25hbWVdID1cbiAgICBVU0VfU1lNQk9MICYmIFN5bWJvbFtuYW1lXSB8fCAoVVNFX1NZTUJPTCA/IFN5bWJvbCA6IHVpZCkoJ1N5bWJvbC4nICsgbmFtZSkpO1xufTtcblxuJGV4cG9ydHMuc3RvcmUgPSBzdG9yZTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGZvckVhY2ggPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoMCk7XG52YXIgU1RSSUNUID0gcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKFtdLmZvckVhY2gsIHRydWUpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqICFTVFJJQ1QsICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjEwIC8gMTUuNC40LjE4IEFycmF5LnByb3RvdHlwZS5mb3JFYWNoKGNhbGxiYWNrZm4gWywgdGhpc0FyZ10pXG4gIGZvckVhY2g6IGZ1bmN0aW9uIGZvckVhY2goY2FsbGJhY2tmbiAvKiAsIHRoaXNBcmcgKi8pIHtcbiAgICByZXR1cm4gJGZvckVhY2godGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzWzFdKTtcbiAgfVxufSk7XG4iLCIvLyAyMC4xLjIuMyBOdW1iZXIuaXNJbnRlZ2VyKG51bWJlcilcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTnVtYmVyJywgeyBpc0ludGVnZXI6IHJlcXVpcmUoJy4vX2lzLWludGVnZXInKSB9KTtcbiIsIi8vIDIxLjEuMy4xOCBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGgoc2VhcmNoU3RyaW5nIFssIHBvc2l0aW9uIF0pXG4ndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgY29udGV4dCA9IHJlcXVpcmUoJy4vX3N0cmluZy1jb250ZXh0Jyk7XG52YXIgU1RBUlRTX1dJVEggPSAnc3RhcnRzV2l0aCc7XG52YXIgJHN0YXJ0c1dpdGggPSAnJ1tTVEFSVFNfV0lUSF07XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogcmVxdWlyZSgnLi9fZmFpbHMtaXMtcmVnZXhwJykoU1RBUlRTX1dJVEgpLCAnU3RyaW5nJywge1xuICBzdGFydHNXaXRoOiBmdW5jdGlvbiBzdGFydHNXaXRoKHNlYXJjaFN0cmluZyAvKiAsIHBvc2l0aW9uID0gMCAqLykge1xuICAgIHZhciB0aGF0ID0gY29udGV4dCh0aGlzLCBzZWFyY2hTdHJpbmcsIFNUQVJUU19XSVRIKTtcbiAgICB2YXIgaW5kZXggPSB0b0xlbmd0aChNYXRoLm1pbihhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCwgdGhhdC5sZW5ndGgpKTtcbiAgICB2YXIgc2VhcmNoID0gU3RyaW5nKHNlYXJjaFN0cmluZyk7XG4gICAgcmV0dXJuICRzdGFydHNXaXRoXG4gICAgICA/ICRzdGFydHNXaXRoLmNhbGwodGhhdCwgc2VhcmNoLCBpbmRleClcbiAgICAgIDogdGhhdC5zbGljZShpbmRleCwgaW5kZXggKyBzZWFyY2gubGVuZ3RoKSA9PT0gc2VhcmNoO1xuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0Jztcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L0FycmF5LnByb3RvdHlwZS5pbmNsdWRlc1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkaW5jbHVkZXMgPSByZXF1aXJlKCcuL19hcnJheS1pbmNsdWRlcycpKHRydWUpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCwgJ0FycmF5Jywge1xuICBpbmNsdWRlczogZnVuY3Rpb24gaW5jbHVkZXMoZWwgLyogLCBmcm9tSW5kZXggPSAwICovKSB7XG4gICAgcmV0dXJuICRpbmNsdWRlcyh0aGlzLCBlbCwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICB9XG59KTtcblxucmVxdWlyZSgnLi9fYWRkLXRvLXVuc2NvcGFibGVzJykoJ2luY2x1ZGVzJyk7XG4iLCIndXNlIHN0cmljdCc7XG4vKipcbiAqIFtSZWN1cnNpdmVseSBwYXJzZXMgYSBzdHJpbmdpZmllZCBKU09OXVxuICogQHBhcmFtICB7W3R5cGVdfSBqc29uU3RyaW5nIFtzdHJpbmdpZmllZCBqc29uIHRvIHBhcnNlXVxuICogQHJldHVybiB7W3R5cGVdfSAgICAgICAgICAgIFtub3JtYWxpemVkIEphdmFzY3JpcHQgb2JqZWN0XVxuICovXG5mdW5jdGlvbiBkZWVwUGFyc2VKc29uKGpzb25TdHJpbmcpIHtcbiAgLy8gaWYgbm90IHN0cmluZ2lmaWVkIGpzb24gcmF0aGVyIGEgc2ltcGxlIHN0cmluZyB2YWx1ZSB0aGVuIEpTT04ucGFyc2Ugd2lsbCB0aHJvdyBlcnJvclxuICAvLyBvdGhlcndpc2UgY29udGludWUgcmVjdXJzaW9uXG4gIGlmICh0eXBlb2YganNvblN0cmluZyA9PT0gJ3N0cmluZycpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGRlZXBQYXJzZUpzb24oSlNPTi5wYXJzZShqc29uU3RyaW5nKSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4ganNvblN0cmluZztcbiAgICB9XG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShqc29uU3RyaW5nKSkge1xuICAgIC8vIGlmIGFuIGFycmF5IGlzIHJlY2VpdmVkLCBtYXAgb3ZlciB0aGUgYXJyYXkgYW5kIGRlZXBQYXJzZSBlYWNoIHZhbHVlXG4gICAgcmV0dXJuIGpzb25TdHJpbmcubWFwKHZhbCA9PiBkZWVwUGFyc2VKc29uKHZhbCkpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBqc29uU3RyaW5nID09PSAnb2JqZWN0JyAmJiBqc29uU3RyaW5nICE9PSBudWxsKSB7XG4gICAgLy8gaWYgYW4gb2JqZWN0IGlzIHJlY2VpdmVkIHRoZW4gZGVlcFBhcnNlIGVhY2ggZWxlbWVudCBpbiB0aGUgb2JqZWN0XG4gICAgLy8gdHlwZW9mIG51bGwgcmV0dXJucyAnb2JqZWN0JyB0b28sIHNvIHdlIGhhdmUgdG8gZWxpbWluYXRlIHRoYXRcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoanNvblN0cmluZykucmVkdWNlKChvYmosIGtleSkgPT4ge1xuICAgICAgb2JqW2tleV0gPSBkZWVwUGFyc2VKc29uKGpzb25TdHJpbmdba2V5XSk7XG4gICAgICByZXR1cm4gb2JqO1xuICAgIH0sIHt9KTtcbiAgfSBlbHNlIHtcbiAgICAvLyBvdGhlcndpc2UgcmV0dXJuIHdoYXRldmVyIHdhcyByZWNlaXZlZFxuICAgIHJldHVybiBqc29uU3RyaW5nO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0geyBkZWVwUGFyc2VKc29uIH07XG4iLCJpZighZ2xvYmFsW1wiQmFzaXNcIl0pIGdsb2JhbFtcIkJhc2lzXCJdID0ge307XG5tb2R1bGUuZXhwb3J0cyA9IGdsb2JhbFtcIkJhc2lzXCJdW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IHJlcXVpcmUoXCItIS4vYWdjLWJhc2ljLmJ1bmRsZS5qc1wiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IGdsb2JhbFtcImpzc1wiXSA9IHJlcXVpcmUoXCItIS4vanNzLmpzXCIpOyIsIi8qXG4gKiBKU1MgdjAuNiAtIEphdmFTY3JpcHQgU3R5bGVzaGVldHNcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9Cb3g5L2pzc1xuICpcbiAqIENvcHlyaWdodCAoYykgMjAxMSwgRGF2aWQgVGFuZ1xuICogTUlUIExpY2Vuc2VkIChodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocClcbiAqL1xudmFyIGpzcyA9IChmdW5jdGlvbigpIHtcbiAgICB2YXIgYWRqU2VsQXR0clJlZ2V4ID0gLygoPzpcXC58IylbXlxcLlxccyNdKykoKD86XFwufCMpW15cXC5cXHMjXSspL2c7XG4gICAgdmFyIGRvdWJsZUNvbG9uUHNldWRvRWxSZWdleCA9IC8oOjopKGJlZm9yZXxhZnRlcnxmaXJzdC1saW5lfGZpcnN0LWxldHRlcnxzZWxlY3Rpb24pLztcbiAgICB2YXIgc2luZ2xlQ29sb25Qc2V1ZG9FbFJlZ2V4ID0gLyhbXjpdKSg6KShiZWZvcmV8YWZ0ZXJ8Zmlyc3QtbGluZXxmaXJzdC1sZXR0ZXJ8c2VsZWN0aW9uKS87XG4gICAgdmFyIHNpbmdsZUNvbG9uRm9yUHNldWRvRWxlbWVudHM7IC8vIGZsYWcgZm9yIG9sZGVyIGJyb3dzZXJzXG5cbiAgICBmdW5jdGlvbiBnZXRTZWxlY3RvcnNBbmRSdWxlcyhzaGVldCkge1xuICAgICAgICB2YXIgcnVsZXMgPSBzaGVldC5jc3NSdWxlcyB8fCBzaGVldC5ydWxlcyB8fCBbXTtcbiAgICAgICAgdmFyIHJlc3VsdHMgPSB7fTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgLy8gT2xkZXIgYnJvd3NlcnMgYW5kIEZGIHJlcG9ydCBwc2V1ZG8gZWxlbWVudCBzZWxlY3RvcnMgaW4gYW4gb3V0ZGF0ZWQgZm9ybWF0XG4gICAgICAgICAgICB2YXIgc2VsZWN0b3JUZXh0ID0gdG9Eb3VibGVDb2xvblBzZXVkb0VsZW1lbnRzKHJ1bGVzW2ldLnNlbGVjdG9yVGV4dCk7XG4gICAgICAgICAgICBpZiAoIXJlc3VsdHNbc2VsZWN0b3JUZXh0XSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdHNbc2VsZWN0b3JUZXh0XSA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzdWx0c1tzZWxlY3RvclRleHRdLnB1c2goe1xuICAgICAgICAgICAgICAgIHNoZWV0OiBzaGVldCxcbiAgICAgICAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICAgICAgICBzdHlsZTogcnVsZXNbaV0uc3R5bGVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHRzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldFJ1bGVzKHNoZWV0LCBzZWxlY3Rvcikge1xuICAgICAgICB2YXIgcnVsZXMgPSBzaGVldC5jc3NSdWxlcyB8fCBzaGVldC5ydWxlcyB8fCBbXTtcbiAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTtcbiAgICAgICAgLy8gQnJvd3NlcnMgcmVwb3J0IHNlbGVjdG9ycyBpbiBsb3dlcmNhc2VcbiAgICAgICAgc2VsZWN0b3IgPSBzZWxlY3Rvci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJ1bGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgc2VsZWN0b3JUZXh0ID0gcnVsZXNbaV0uc2VsZWN0b3JUZXh0O1xuICAgICAgICAgICAgLy8gTm90ZSAtIGNlcnRhaW4gcnVsZXMgKGUuZy4gQHJ1bGVzKSBkb24ndCBoYXZlIHNlbGVjdG9yVGV4dFxuICAgICAgICAgICAgaWYgKHNlbGVjdG9yVGV4dCAmJiAoc2VsZWN0b3JUZXh0ID09IHNlbGVjdG9yIHx8IHNlbGVjdG9yVGV4dCA9PSBzd2FwQWRqU2VsQXR0cihzZWxlY3RvcikgfHwgc2VsZWN0b3JUZXh0ID09IHN3YXBQc2V1ZG9FbFN5bnRheChzZWxlY3RvcikpKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgc2hlZXQ6IHNoZWV0LFxuICAgICAgICAgICAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHJ1bGVzW2ldLnN0eWxlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYWRkUnVsZShzaGVldCwgc2VsZWN0b3IpIHtcbiAgICAgICAgdmFyIHJ1bGVzID0gc2hlZXQuY3NzUnVsZXMgfHwgc2hlZXQucnVsZXMgfHwgW107XG4gICAgICAgIHZhciBpbmRleCA9IHJ1bGVzLmxlbmd0aDtcbiAgICAgICAgdmFyIHBzZXVkb0VsZW1lbnRSdWxlID0gYWRkUHNldWRvRWxlbWVudFJ1bGUoc2hlZXQsIHNlbGVjdG9yLCBydWxlcywgaW5kZXgpO1xuXG4gICAgICAgIGlmICghcHNldWRvRWxlbWVudFJ1bGUpIHtcbiAgICAgICAgICAgIGFkZFJ1bGVUb1NoZWV0KHNoZWV0LCBzZWxlY3RvciwgaW5kZXgpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc2hlZXQ6IHNoZWV0LFxuICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxuICAgICAgICAgICAgc3R5bGU6IHJ1bGVzW2luZGV4XS5zdHlsZVxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBmdW5jdGlvbiBhZGRSdWxlVG9TaGVldChzaGVldCwgc2VsZWN0b3IsIGluZGV4KSB7XG4gICAgICAgIGlmIChzaGVldC5pbnNlcnRSdWxlKSB7XG4gICAgICAgICAgICBzaGVldC5pbnNlcnRSdWxlKHNlbGVjdG9yICsgJyB7IH0nLCBpbmRleCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzaGVldC5hZGRSdWxlKHNlbGVjdG9yLCBudWxsLCBpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGVzIHNpbmdsZSBjb2xvbiBzeW50YXggZm9yIG9sZGVyIGJyb3dzZXJzIGFuZCBidWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTQ5NjUxXG4gICAgZnVuY3Rpb24gYWRkUHNldWRvRWxlbWVudFJ1bGUoc2hlZXQsIHNlbGVjdG9yLCBydWxlcywgaW5kZXgpIHtcbiAgICAgICAgdmFyIGRvdWJsZUNvbG9uU2VsZWN0b3I7XG4gICAgICAgIHZhciBzaW5nbGVDb2xvblNlbGVjdG9yO1xuXG4gICAgICAgIGlmIChkb3VibGVDb2xvblBzZXVkb0VsUmVnZXguZXhlYyhzZWxlY3RvcikpIHtcbiAgICAgICAgICAgIGRvdWJsZUNvbG9uU2VsZWN0b3IgPSBzZWxlY3RvcjtcbiAgICAgICAgICAgIHNpbmdsZUNvbG9uU2VsZWN0b3IgPSB0b1NpbmdsZUNvbG9uUHNldWRvRWxlbWVudHMoc2VsZWN0b3IpO1xuICAgICAgICB9IGVsc2UgaWYgKHNpbmdsZUNvbG9uUHNldWRvRWxSZWdleC5leGVjKHNlbGVjdG9yKSkge1xuICAgICAgICAgICAgZG91YmxlQ29sb25TZWxlY3RvciA9IHRvRG91YmxlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcik7XG4gICAgICAgICAgICBzaW5nbGVDb2xvblNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7IC8vIE5vdCBkZWFsaW5nIHdpdGggYSBwc2V1ZG8gZWxlbWVudFxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzaW5nbGVDb2xvbkZvclBzZXVkb0VsZW1lbnRzKSB7XG4gICAgICAgICAgICAvLyBBc3N1bWUgbW9kZXJuIGJyb3dzZXIgYW5kIHRoZW4gY2hlY2sgaWYgc3VjY2Vzc2Z1bFxuICAgICAgICAgICAgYWRkUnVsZVRvU2hlZXQoc2hlZXQsIGRvdWJsZUNvbG9uU2VsZWN0b3IsIGluZGV4KTtcbiAgICAgICAgICAgIGlmIChydWxlcy5sZW5ndGggPD0gaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBzaW5nbGVDb2xvbkZvclBzZXVkb0VsZW1lbnRzID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoc2luZ2xlQ29sb25Gb3JQc2V1ZG9FbGVtZW50cykge1xuICAgICAgICAgICAgYWRkUnVsZVRvU2hlZXQoc2hlZXQsIHNpbmdsZUNvbG9uU2VsZWN0b3IsIGluZGV4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRvRG91YmxlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcikge1xuICAgICAgICByZXR1cm4gc2VsZWN0b3IucmVwbGFjZShzaW5nbGVDb2xvblBzZXVkb0VsUmVnZXgsIGZ1bmN0aW9uIChtYXRjaCwgc3VibWF0Y2gxLCBzdWJtYXRjaDIsIHN1Ym1hdGNoMykge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1hdGNoMSArICc6OicgKyBzdWJtYXRjaDM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRvU2luZ2xlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcikge1xuICAgICAgICByZXR1cm4gc2VsZWN0b3IucmVwbGFjZShkb3VibGVDb2xvblBzZXVkb0VsUmVnZXgsIGZ1bmN0aW9uKG1hdGNoLCBzdWJtYXRjaDEsIHN1Ym1hdGNoMikge1xuICAgICAgICAgICAgcmV0dXJuICc6JyArIHN1Ym1hdGNoMjtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBmdW5jdGlvbiByZW1vdmVSdWxlKHJ1bGUpIHtcbiAgICAgICAgdmFyIHNoZWV0ID0gcnVsZS5zaGVldDtcbiAgICAgICAgaWYgKHNoZWV0LmRlbGV0ZVJ1bGUpIHtcbiAgICAgICAgICAgIHNoZWV0LmRlbGV0ZVJ1bGUocnVsZS5pbmRleCk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2hlZXQucmVtb3ZlUnVsZSkge1xuICAgICAgICAgICAgc2hlZXQucmVtb3ZlUnVsZShydWxlLmluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGV4dGVuZChkZXN0LCBzcmMpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIHNyYykge1xuICAgICAgICAgICAgaWYgKCFzcmMuaGFzT3duUHJvcGVydHkoa2V5KSlcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGRlc3Rba2V5XSA9IHNyY1trZXldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZXN0O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGFnZ3JlZ2F0ZVN0eWxlcyhydWxlcykge1xuICAgICAgICB2YXIgYWdncmVnYXRlID0ge307XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcnVsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGV4dGVuZChhZ2dyZWdhdGUsIGRlY2xhcmVkUHJvcGVydGllcyhydWxlc1tpXS5zdHlsZSkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhZ2dyZWdhdGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZGVjbGFyZWRQcm9wZXJ0aWVzKHN0eWxlKSB7XG4gICAgICAgIHZhciBkZWNsYXJlZCA9IHt9O1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBkZWNsYXJlZFtzdHlsZVtpXV0gPSBzdHlsZVt0b0NhbWVsQ2FzZShzdHlsZVtpXSldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZWNsYXJlZDtcbiAgICB9XG5cbiAgICAvLyBJRTkgc3RvcmVzIHJ1bGVzIHdpdGggYXR0cmlidXRlcyAoY2xhc3NlcyBvciBJRCdzKSBhZGphY2VudCBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgYXMgZGVmaW5lZFxuICAgIC8vIGNhdXNpbmcgdGhlbSB0byBub3QgYmUgZm91bmQsIHNvIHRoaXMgbWV0aG9kIHN3YXBzIFsjfC5dc2VsMVsjfC5dc2VsMiB0byBiZWNvbWUgWyN8Ll1zZWwyWyN8Ll1zZWwxXG4gICAgZnVuY3Rpb24gc3dhcEFkalNlbEF0dHIoc2VsZWN0b3IpIHtcbiAgICAgICAgdmFyIHN3YXAgPSAnJztcbiAgICAgICAgdmFyIGxhc3RJbmRleCA9IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgd2hpbGUgKChtYXRjaCA9IGFkalNlbEF0dHJSZWdleC5leGVjKHNlbGVjdG9yKSkgIT0gbnVsbCkge1xuICAgICAgICAgICAgaWYgKG1hdGNoWzBdID09PSAnJylcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIHN3YXAgKz0gc2VsZWN0b3Iuc3Vic3RyaW5nKGxhc3RJbmRleCwgbWF0Y2guaW5kZXgpO1xuICAgICAgICAgICAgc3dhcCArPSBzZWxlY3Rvci5zdWJzdHIobWF0Y2guaW5kZXggKyBtYXRjaFsxXS5sZW5ndGgsIG1hdGNoWzJdLmxlbmd0aCk7XG4gICAgICAgICAgICBzd2FwICs9IHNlbGVjdG9yLnN1YnN0cihtYXRjaC5pbmRleCwgbWF0Y2hbMV0ubGVuZ3RoKTtcbiAgICAgICAgICAgIGxhc3RJbmRleCA9IG1hdGNoLmluZGV4ICsgbWF0Y2hbMF0ubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIHN3YXAgKz0gc2VsZWN0b3Iuc3Vic3RyKGxhc3RJbmRleCk7XG4gICAgICAgIFxuICAgICAgICByZXR1cm4gc3dhcDtcbiAgICB9O1xuXG4gICAgLy8gRkYgYW5kIG9sZGVyIGJyb3dzZXJzIHN0b3JlIHJ1bGVzIHdpdGggcHNldWRvIGVsZW1lbnRzIHVzaW5nIHNpbmdsZS1jb2xvbiBzeW50YXhcbiAgICBmdW5jdGlvbiBzd2FwUHNldWRvRWxTeW50YXgoc2VsZWN0b3IpIHtcbiAgICAgICAgaWYgKGRvdWJsZUNvbG9uUHNldWRvRWxSZWdleC5leGVjKHNlbGVjdG9yKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvU2luZ2xlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGVjdG9yO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHNldFN0eWxlUHJvcGVydGllcyhydWxlLCBwcm9wZXJ0aWVzKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSBwcm9wZXJ0aWVzW2tleV07XG4gICAgICAgICAgICB2YXIgaW1wb3J0YW50SW5kZXggPSB2YWx1ZS5pbmRleE9mKCcgIWltcG9ydGFudCcpO1xuXG4gICAgICAgICAgICAvLyBNb2Rlcm4gYnJvd3NlcnMgc2VlbSB0byBoYW5kbGUgb3ZlcnJpZGVzIGZpbmUsIGJ1dCBJRTkgZG9lc24ndFxuICAgICAgICAgICAgcnVsZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eShrZXkpOyBcbiAgICAgICAgICAgIGlmIChpbXBvcnRhbnRJbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgICBydWxlLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUuc3Vic3RyKDAsIGltcG9ydGFudEluZGV4KSwgJ2ltcG9ydGFudCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBydWxlLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdG9DYW1lbENhc2Uoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvLShbYS16XSkvZywgZnVuY3Rpb24gKG1hdGNoLCBzdWJtYXRjaCkge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1hdGNoLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUNhbWVsQ2FzZWRQcm9wZXJ0eU5hbWVzKG9sZFByb3BzKSB7XG4gICAgICAgIHZhciBuZXdQcm9wcyA9IHt9O1xuICAgICAgICBmb3IgKHZhciBrZXkgaW4gb2xkUHJvcHMpIHtcbiAgICAgICAgICAgIG5ld1Byb3BzW3VuQ2FtZWxDYXNlKGtleSldID0gb2xkUHJvcHNba2V5XTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3UHJvcHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdW5DYW1lbENhc2Uoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvKFtBLVpdKS9nLCBmdW5jdGlvbihtYXRjaCwgc3VibWF0Y2gpIHtcbiAgICAgICAgICAgIHJldHVybiAnLScgKyBzdWJtYXRjaC50b0xvd2VyQ2FzZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgSnNzID0gZnVuY3Rpb24oZG9jKSB7XG4gICAgICAgIHRoaXMuZG9jID0gZG9jO1xuICAgICAgICB0aGlzLmhlYWQgPSB0aGlzLmRvYy5oZWFkIHx8IHRoaXMuZG9jLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gICAgICAgIHRoaXMuc2hlZXRzID0gdGhpcy5kb2Muc3R5bGVTaGVldHMgfHwgW107XG4gICAgfTtcblxuICAgIEpzcy5wcm90b3R5cGUgPSB7XG4gICAgICAgIC8vIFJldHVybnMgSlNTIHJ1bGVzIChzZWxlY3RvciBpcyBvcHRpb25hbClcbiAgICAgICAgZ2V0OiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlZmF1bHRTaGVldCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWxlY3Rvcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBhZ2dyZWdhdGVTdHlsZXMoZ2V0UnVsZXModGhpcy5kZWZhdWx0U2hlZXQsIHNlbGVjdG9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRTZWxlY3RvcnNBbmRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCk7XG4gICAgICAgICAgICBmb3IgKHNlbGVjdG9yIGluIHJ1bGVzKSB7XG4gICAgICAgICAgICAgICAgcnVsZXNbc2VsZWN0b3JdID0gYWdncmVnYXRlU3R5bGVzKHJ1bGVzW3NlbGVjdG9yXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcnVsZXM7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIFJldHVybnMgYWxsIHJ1bGVzIChzZWxlY3RvciBpcyByZXF1aXJlZClcbiAgICAgICAgZ2V0QWxsOiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgdmFyIHByb3BlcnRpZXMgPSB7fTtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zaGVldHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBleHRlbmQocHJvcGVydGllcywgYWdncmVnYXRlU3R5bGVzKGdldFJ1bGVzKHRoaXMuc2hlZXRzW2ldLCBzZWxlY3RvcikpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzO1xuICAgICAgICB9LFxuICAgICAgICAvLyBBZGRzIEpTUyBydWxlcyBmb3IgdGhlIHNlbGVjdG9yIGJhc2VkIG9uIHRoZSBnaXZlbiBwcm9wZXJ0aWVzXG4gICAgICAgIHNldDogZnVuY3Rpb24oc2VsZWN0b3IsIHByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kZWZhdWx0U2hlZXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlZmF1bHRTaGVldCA9IHRoaXMuX2NyZWF0ZVNoZWV0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcm9wZXJ0aWVzID0gdHJhbnNmb3JtQ2FtZWxDYXNlZFByb3BlcnR5TmFtZXMocHJvcGVydGllcyk7XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgaWYgKCFydWxlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBydWxlcyA9IFthZGRSdWxlKHRoaXMuZGVmYXVsdFNoZWV0LCBzZWxlY3RvcildO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHNldFN0eWxlUHJvcGVydGllcyhydWxlc1tpXSwgcHJvcGVydGllcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC8vIFJlbW92ZXMgSlNTIHJ1bGVzIChzZWxlY3RvciBpcyBvcHRpb25hbClcbiAgICAgICAgcmVtb3ZlOiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlZmF1bHRTaGVldClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBpZiAoIXNlbGVjdG9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVtb3ZlU2hlZXQodGhpcy5kZWZhdWx0U2hlZXQpO1xuICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmRlZmF1bHRTaGVldDtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHJlbW92ZVJ1bGUocnVsZXNbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJ1bGVzLmxlbmd0aDtcbiAgICAgICAgfSxcbiAgICAgICAgX2NyZWF0ZVNoZWV0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBzdHlsZU5vZGUgPSB0aGlzLmRvYy5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICAgICAgc3R5bGVOb2RlLnR5cGUgPSAndGV4dC9jc3MnO1xuICAgICAgICAgICAgc3R5bGVOb2RlLnJlbCA9ICdzdHlsZXNoZWV0JztcbiAgICAgICAgICAgIHRoaXMuaGVhZC5hcHBlbmRDaGlsZChzdHlsZU5vZGUpO1xuICAgICAgICAgICAgcmV0dXJuIHN0eWxlTm9kZS5zaGVldDtcbiAgICAgICAgfSxcbiAgICAgICAgX3JlbW92ZVNoZWV0OiBmdW5jdGlvbihzaGVldCkge1xuICAgICAgICAgICAgdmFyIG5vZGUgPSBzaGVldC5vd25lck5vZGU7XG4gICAgICAgICAgICBub2RlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobm9kZSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIGV4cG9ydHMgPSBuZXcgSnNzKGRvY3VtZW50KTtcbiAgICBleHBvcnRzLmZvckRvY3VtZW50ID0gZnVuY3Rpb24oZG9jKSB7XG4gICAgICAgIHJldHVybiBuZXcgSnNzKGRvYyk7XG4gICAgfTtcbiAgICByZXR1cm4gZXhwb3J0cztcbn0pKCk7XG5cbnR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzICYmIChtb2R1bGUuZXhwb3J0cyA9IGpzcyk7IC8vIENvbW1vbkpTIHN1cHBvcnQiLCJ2YXIgcm9vdCA9IHJlcXVpcmUoJy4vX3Jvb3QnKTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgU3ltYm9sID0gcm9vdC5TeW1ib2w7XG5cbm1vZHVsZS5leHBvcnRzID0gU3ltYm9sO1xuIiwiLyoqXG4gKiBBIGZhc3RlciBhbHRlcm5hdGl2ZSB0byBgRnVuY3Rpb24jYXBwbHlgLCB0aGlzIGZ1bmN0aW9uIGludm9rZXMgYGZ1bmNgXG4gKiB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiBgdGhpc0FyZ2AgYW5kIHRoZSBhcmd1bWVudHMgb2YgYGFyZ3NgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBpbnZva2UuXG4gKiBAcGFyYW0geyp9IHRoaXNBcmcgVGhlIGB0aGlzYCBiaW5kaW5nIG9mIGBmdW5jYC5cbiAqIEBwYXJhbSB7QXJyYXl9IGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBpbnZva2UgYGZ1bmNgIHdpdGguXG4gKiBAcmV0dXJucyB7Kn0gUmV0dXJucyB0aGUgcmVzdWx0IG9mIGBmdW5jYC5cbiAqL1xuZnVuY3Rpb24gYXBwbHkoZnVuYywgdGhpc0FyZywgYXJncykge1xuICBzd2l0Y2ggKGFyZ3MubGVuZ3RoKSB7XG4gICAgY2FzZSAwOiByZXR1cm4gZnVuYy5jYWxsKHRoaXNBcmcpO1xuICAgIGNhc2UgMTogcmV0dXJuIGZ1bmMuY2FsbCh0aGlzQXJnLCBhcmdzWzBdKTtcbiAgICBjYXNlIDI6IHJldHVybiBmdW5jLmNhbGwodGhpc0FyZywgYXJnc1swXSwgYXJnc1sxXSk7XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuYy5jYWxsKHRoaXNBcmcsIGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pO1xuICB9XG4gIHJldHVybiBmdW5jLmFwcGx5KHRoaXNBcmcsIGFyZ3MpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGFwcGx5O1xuIiwidmFyIGJhc2VUaW1lcyA9IHJlcXVpcmUoJy4vX2Jhc2VUaW1lcycpLFxuICAgIGlzQXJndW1lbnRzID0gcmVxdWlyZSgnLi9pc0FyZ3VtZW50cycpLFxuICAgIGlzQXJyYXkgPSByZXF1aXJlKCcuL2lzQXJyYXknKSxcbiAgICBpc0J1ZmZlciA9IHJlcXVpcmUoJy4vaXNCdWZmZXInKSxcbiAgICBpc0luZGV4ID0gcmVxdWlyZSgnLi9faXNJbmRleCcpLFxuICAgIGlzVHlwZWRBcnJheSA9IHJlcXVpcmUoJy4vaXNUeXBlZEFycmF5Jyk7XG5cbi8qKiBVc2VkIGZvciBidWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcy4gKi9cbnZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKiBVc2VkIHRvIGNoZWNrIG9iamVjdHMgZm9yIG93biBwcm9wZXJ0aWVzLiAqL1xudmFyIGhhc093blByb3BlcnR5ID0gb2JqZWN0UHJvdG8uaGFzT3duUHJvcGVydHk7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBvZiB0aGUgZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiB0aGUgYXJyYXktbGlrZSBgdmFsdWVgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBxdWVyeS5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gaW5oZXJpdGVkIFNwZWNpZnkgcmV0dXJuaW5nIGluaGVyaXRlZCBwcm9wZXJ0eSBuYW1lcy5cbiAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyB0aGUgYXJyYXkgb2YgcHJvcGVydHkgbmFtZXMuXG4gKi9cbmZ1bmN0aW9uIGFycmF5TGlrZUtleXModmFsdWUsIGluaGVyaXRlZCkge1xuICB2YXIgaXNBcnIgPSBpc0FycmF5KHZhbHVlKSxcbiAgICAgIGlzQXJnID0gIWlzQXJyICYmIGlzQXJndW1lbnRzKHZhbHVlKSxcbiAgICAgIGlzQnVmZiA9ICFpc0FyciAmJiAhaXNBcmcgJiYgaXNCdWZmZXIodmFsdWUpLFxuICAgICAgaXNUeXBlID0gIWlzQXJyICYmICFpc0FyZyAmJiAhaXNCdWZmICYmIGlzVHlwZWRBcnJheSh2YWx1ZSksXG4gICAgICBza2lwSW5kZXhlcyA9IGlzQXJyIHx8IGlzQXJnIHx8IGlzQnVmZiB8fCBpc1R5cGUsXG4gICAgICByZXN1bHQgPSBza2lwSW5kZXhlcyA/IGJhc2VUaW1lcyh2YWx1ZS5sZW5ndGgsIFN0cmluZykgOiBbXSxcbiAgICAgIGxlbmd0aCA9IHJlc3VsdC5sZW5ndGg7XG5cbiAgZm9yICh2YXIga2V5IGluIHZhbHVlKSB7XG4gICAgaWYgKChpbmhlcml0ZWQgfHwgaGFzT3duUHJvcGVydHkuY2FsbCh2YWx1ZSwga2V5KSkgJiZcbiAgICAgICAgIShza2lwSW5kZXhlcyAmJiAoXG4gICAgICAgICAgIC8vIFNhZmFyaSA5IGhhcyBlbnVtZXJhYmxlIGBhcmd1bWVudHMubGVuZ3RoYCBpbiBzdHJpY3QgbW9kZS5cbiAgICAgICAgICAga2V5ID09ICdsZW5ndGgnIHx8XG4gICAgICAgICAgIC8vIE5vZGUuanMgMC4xMCBoYXMgZW51bWVyYWJsZSBub24taW5kZXggcHJvcGVydGllcyBvbiBidWZmZXJzLlxuICAgICAgICAgICAoaXNCdWZmICYmIChrZXkgPT0gJ29mZnNldCcgfHwga2V5ID09ICdwYXJlbnQnKSkgfHxcbiAgICAgICAgICAgLy8gUGhhbnRvbUpTIDIgaGFzIGVudW1lcmFibGUgbm9uLWluZGV4IHByb3BlcnRpZXMgb24gdHlwZWQgYXJyYXlzLlxuICAgICAgICAgICAoaXNUeXBlICYmIChrZXkgPT0gJ2J1ZmZlcicgfHwga2V5ID09ICdieXRlTGVuZ3RoJyB8fCBrZXkgPT0gJ2J5dGVPZmZzZXQnKSkgfHxcbiAgICAgICAgICAgLy8gU2tpcCBpbmRleCBwcm9wZXJ0aWVzLlxuICAgICAgICAgICBpc0luZGV4KGtleSwgbGVuZ3RoKVxuICAgICAgICApKSkge1xuICAgICAgcmVzdWx0LnB1c2goa2V5KTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhcnJheUxpa2VLZXlzO1xuIiwiLyoqXG4gKiBBIHNwZWNpYWxpemVkIHZlcnNpb24gb2YgYF8ubWFwYCBmb3IgYXJyYXlzIHdpdGhvdXQgc3VwcG9ydCBmb3IgaXRlcmF0ZWVcbiAqIHNob3J0aGFuZHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7QXJyYXl9IFthcnJheV0gVGhlIGFycmF5IHRvIGl0ZXJhdGUgb3Zlci5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIFRoZSBmdW5jdGlvbiBpbnZva2VkIHBlciBpdGVyYXRpb24uXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIG5ldyBtYXBwZWQgYXJyYXkuXG4gKi9cbmZ1bmN0aW9uIGFycmF5TWFwKGFycmF5LCBpdGVyYXRlZSkge1xuICB2YXIgaW5kZXggPSAtMSxcbiAgICAgIGxlbmd0aCA9IGFycmF5ID09IG51bGwgPyAwIDogYXJyYXkubGVuZ3RoLFxuICAgICAgcmVzdWx0ID0gQXJyYXkobGVuZ3RoKTtcblxuICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgIHJlc3VsdFtpbmRleF0gPSBpdGVyYXRlZShhcnJheVtpbmRleF0sIGluZGV4LCBhcnJheSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhcnJheU1hcDtcbiIsInZhciBiYXNlQXNzaWduVmFsdWUgPSByZXF1aXJlKCcuL19iYXNlQXNzaWduVmFsdWUnKSxcbiAgICBlcSA9IHJlcXVpcmUoJy4vZXEnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBBc3NpZ25zIGB2YWx1ZWAgdG8gYGtleWAgb2YgYG9iamVjdGAgaWYgdGhlIGV4aXN0aW5nIHZhbHVlIGlzIG5vdCBlcXVpdmFsZW50XG4gKiB1c2luZyBbYFNhbWVWYWx1ZVplcm9gXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1zYW1ldmFsdWV6ZXJvKVxuICogZm9yIGVxdWFsaXR5IGNvbXBhcmlzb25zLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gbW9kaWZ5LlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSBUaGUga2V5IG9mIHRoZSBwcm9wZXJ0eSB0byBhc3NpZ24uXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBhc3NpZ24uXG4gKi9cbmZ1bmN0aW9uIGFzc2lnblZhbHVlKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICB2YXIgb2JqVmFsdWUgPSBvYmplY3Rba2V5XTtcbiAgaWYgKCEoaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIGtleSkgJiYgZXEob2JqVmFsdWUsIHZhbHVlKSkgfHxcbiAgICAgICh2YWx1ZSA9PT0gdW5kZWZpbmVkICYmICEoa2V5IGluIG9iamVjdCkpKSB7XG4gICAgYmFzZUFzc2lnblZhbHVlKG9iamVjdCwga2V5LCB2YWx1ZSk7XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhc3NpZ25WYWx1ZTtcbiIsInZhciBkZWZpbmVQcm9wZXJ0eSA9IHJlcXVpcmUoJy4vX2RlZmluZVByb3BlcnR5Jyk7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYGFzc2lnblZhbHVlYCBhbmQgYGFzc2lnbk1lcmdlVmFsdWVgIHdpdGhvdXRcbiAqIHZhbHVlIGNoZWNrcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIG1vZGlmeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgVGhlIGtleSBvZiB0aGUgcHJvcGVydHkgdG8gYXNzaWduLlxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gYXNzaWduLlxuICovXG5mdW5jdGlvbiBiYXNlQXNzaWduVmFsdWUob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIGlmIChrZXkgPT0gJ19fcHJvdG9fXycgJiYgZGVmaW5lUHJvcGVydHkpIHtcbiAgICBkZWZpbmVQcm9wZXJ0eShvYmplY3QsIGtleSwge1xuICAgICAgJ2NvbmZpZ3VyYWJsZSc6IHRydWUsXG4gICAgICAnZW51bWVyYWJsZSc6IHRydWUsXG4gICAgICAndmFsdWUnOiB2YWx1ZSxcbiAgICAgICd3cml0YWJsZSc6IHRydWVcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUFzc2lnblZhbHVlO1xuIiwidmFyIFN5bWJvbCA9IHJlcXVpcmUoJy4vX1N5bWJvbCcpLFxuICAgIGdldFJhd1RhZyA9IHJlcXVpcmUoJy4vX2dldFJhd1RhZycpLFxuICAgIG9iamVjdFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fb2JqZWN0VG9TdHJpbmcnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIG51bGxUYWcgPSAnW29iamVjdCBOdWxsXScsXG4gICAgdW5kZWZpbmVkVGFnID0gJ1tvYmplY3QgVW5kZWZpbmVkXSc7XG5cbi8qKiBCdWlsdC1pbiB2YWx1ZSByZWZlcmVuY2VzLiAqL1xudmFyIHN5bVRvU3RyaW5nVGFnID0gU3ltYm9sID8gU3ltYm9sLnRvU3RyaW5nVGFnIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBnZXRUYWdgIHdpdGhvdXQgZmFsbGJhY2tzIGZvciBidWdneSBlbnZpcm9ubWVudHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHF1ZXJ5LlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgYHRvU3RyaW5nVGFnYC5cbiAqL1xuZnVuY3Rpb24gYmFzZUdldFRhZyh2YWx1ZSkge1xuICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkVGFnIDogbnVsbFRhZztcbiAgfVxuICByZXR1cm4gKHN5bVRvU3RyaW5nVGFnICYmIHN5bVRvU3RyaW5nVGFnIGluIE9iamVjdCh2YWx1ZSkpXG4gICAgPyBnZXRSYXdUYWcodmFsdWUpXG4gICAgOiBvYmplY3RUb1N0cmluZyh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUdldFRhZztcbiIsInZhciBiYXNlR2V0VGFnID0gcmVxdWlyZSgnLi9fYmFzZUdldFRhZycpLFxuICAgIGlzT2JqZWN0TGlrZSA9IHJlcXVpcmUoJy4vaXNPYmplY3RMaWtlJyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhcmdzVGFnID0gJ1tvYmplY3QgQXJndW1lbnRzXSc7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8uaXNBcmd1bWVudHNgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGBhcmd1bWVudHNgIG9iamVjdCxcbiAqL1xuZnVuY3Rpb24gYmFzZUlzQXJndW1lbnRzKHZhbHVlKSB7XG4gIHJldHVybiBpc09iamVjdExpa2UodmFsdWUpICYmIGJhc2VHZXRUYWcodmFsdWUpID09IGFyZ3NUYWc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUlzQXJndW1lbnRzO1xuIiwidmFyIGlzRnVuY3Rpb24gPSByZXF1aXJlKCcuL2lzRnVuY3Rpb24nKSxcbiAgICBpc01hc2tlZCA9IHJlcXVpcmUoJy4vX2lzTWFza2VkJyksXG4gICAgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0JyksXG4gICAgdG9Tb3VyY2UgPSByZXF1aXJlKCcuL190b1NvdXJjZScpO1xuXG4vKipcbiAqIFVzZWQgdG8gbWF0Y2ggYFJlZ0V4cGBcbiAqIFtzeW50YXggY2hhcmFjdGVyc10oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtcGF0dGVybnMpLlxuICovXG52YXIgcmVSZWdFeHBDaGFyID0gL1tcXFxcXiQuKis/KClbXFxde318XS9nO1xuXG4vKiogVXNlZCB0byBkZXRlY3QgaG9zdCBjb25zdHJ1Y3RvcnMgKFNhZmFyaSkuICovXG52YXIgcmVJc0hvc3RDdG9yID0gL15cXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXF0kLztcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIGZ1bmNQcm90byA9IEZ1bmN0aW9uLnByb3RvdHlwZSxcbiAgICBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKiBVc2VkIHRvIHJlc29sdmUgdGhlIGRlY29tcGlsZWQgc291cmNlIG9mIGZ1bmN0aW9ucy4gKi9cbnZhciBmdW5jVG9TdHJpbmcgPSBmdW5jUHJvdG8udG9TdHJpbmc7XG5cbi8qKiBVc2VkIHRvIGNoZWNrIG9iamVjdHMgZm9yIG93biBwcm9wZXJ0aWVzLiAqL1xudmFyIGhhc093blByb3BlcnR5ID0gb2JqZWN0UHJvdG8uaGFzT3duUHJvcGVydHk7XG5cbi8qKiBVc2VkIHRvIGRldGVjdCBpZiBhIG1ldGhvZCBpcyBuYXRpdmUuICovXG52YXIgcmVJc05hdGl2ZSA9IFJlZ0V4cCgnXicgK1xuICBmdW5jVG9TdHJpbmcuY2FsbChoYXNPd25Qcm9wZXJ0eSkucmVwbGFjZShyZVJlZ0V4cENoYXIsICdcXFxcJCYnKVxuICAucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXFxcXCgpfCBmb3IgLis/KD89XFxcXFxcXSkvZywgJyQxLio/JykgKyAnJCdcbik7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8uaXNOYXRpdmVgIHdpdGhvdXQgYmFkIHNoaW0gY2hlY2tzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGEgbmF0aXZlIGZ1bmN0aW9uLFxuICogIGVsc2UgYGZhbHNlYC5cbiAqL1xuZnVuY3Rpb24gYmFzZUlzTmF0aXZlKHZhbHVlKSB7XG4gIGlmICghaXNPYmplY3QodmFsdWUpIHx8IGlzTWFza2VkKHZhbHVlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB2YXIgcGF0dGVybiA9IGlzRnVuY3Rpb24odmFsdWUpID8gcmVJc05hdGl2ZSA6IHJlSXNIb3N0Q3RvcjtcbiAgcmV0dXJuIHBhdHRlcm4udGVzdCh0b1NvdXJjZSh2YWx1ZSkpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VJc05hdGl2ZTtcbiIsInZhciBiYXNlR2V0VGFnID0gcmVxdWlyZSgnLi9fYmFzZUdldFRhZycpLFxuICAgIGlzTGVuZ3RoID0gcmVxdWlyZSgnLi9pc0xlbmd0aCcpLFxuICAgIGlzT2JqZWN0TGlrZSA9IHJlcXVpcmUoJy4vaXNPYmplY3RMaWtlJyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhcmdzVGFnID0gJ1tvYmplY3QgQXJndW1lbnRzXScsXG4gICAgYXJyYXlUYWcgPSAnW29iamVjdCBBcnJheV0nLFxuICAgIGJvb2xUYWcgPSAnW29iamVjdCBCb29sZWFuXScsXG4gICAgZGF0ZVRhZyA9ICdbb2JqZWN0IERhdGVdJyxcbiAgICBlcnJvclRhZyA9ICdbb2JqZWN0IEVycm9yXScsXG4gICAgZnVuY1RhZyA9ICdbb2JqZWN0IEZ1bmN0aW9uXScsXG4gICAgbWFwVGFnID0gJ1tvYmplY3QgTWFwXScsXG4gICAgbnVtYmVyVGFnID0gJ1tvYmplY3QgTnVtYmVyXScsXG4gICAgb2JqZWN0VGFnID0gJ1tvYmplY3QgT2JqZWN0XScsXG4gICAgcmVnZXhwVGFnID0gJ1tvYmplY3QgUmVnRXhwXScsXG4gICAgc2V0VGFnID0gJ1tvYmplY3QgU2V0XScsXG4gICAgc3RyaW5nVGFnID0gJ1tvYmplY3QgU3RyaW5nXScsXG4gICAgd2Vha01hcFRhZyA9ICdbb2JqZWN0IFdlYWtNYXBdJztcblxudmFyIGFycmF5QnVmZmVyVGFnID0gJ1tvYmplY3QgQXJyYXlCdWZmZXJdJyxcbiAgICBkYXRhVmlld1RhZyA9ICdbb2JqZWN0IERhdGFWaWV3XScsXG4gICAgZmxvYXQzMlRhZyA9ICdbb2JqZWN0IEZsb2F0MzJBcnJheV0nLFxuICAgIGZsb2F0NjRUYWcgPSAnW29iamVjdCBGbG9hdDY0QXJyYXldJyxcbiAgICBpbnQ4VGFnID0gJ1tvYmplY3QgSW50OEFycmF5XScsXG4gICAgaW50MTZUYWcgPSAnW29iamVjdCBJbnQxNkFycmF5XScsXG4gICAgaW50MzJUYWcgPSAnW29iamVjdCBJbnQzMkFycmF5XScsXG4gICAgdWludDhUYWcgPSAnW29iamVjdCBVaW50OEFycmF5XScsXG4gICAgdWludDhDbGFtcGVkVGFnID0gJ1tvYmplY3QgVWludDhDbGFtcGVkQXJyYXldJyxcbiAgICB1aW50MTZUYWcgPSAnW29iamVjdCBVaW50MTZBcnJheV0nLFxuICAgIHVpbnQzMlRhZyA9ICdbb2JqZWN0IFVpbnQzMkFycmF5XSc7XG5cbi8qKiBVc2VkIHRvIGlkZW50aWZ5IGB0b1N0cmluZ1RhZ2AgdmFsdWVzIG9mIHR5cGVkIGFycmF5cy4gKi9cbnZhciB0eXBlZEFycmF5VGFncyA9IHt9O1xudHlwZWRBcnJheVRhZ3NbZmxvYXQzMlRhZ10gPSB0eXBlZEFycmF5VGFnc1tmbG9hdDY0VGFnXSA9XG50eXBlZEFycmF5VGFnc1tpbnQ4VGFnXSA9IHR5cGVkQXJyYXlUYWdzW2ludDE2VGFnXSA9XG50eXBlZEFycmF5VGFnc1tpbnQzMlRhZ10gPSB0eXBlZEFycmF5VGFnc1t1aW50OFRhZ10gPVxudHlwZWRBcnJheVRhZ3NbdWludDhDbGFtcGVkVGFnXSA9IHR5cGVkQXJyYXlUYWdzW3VpbnQxNlRhZ10gPVxudHlwZWRBcnJheVRhZ3NbdWludDMyVGFnXSA9IHRydWU7XG50eXBlZEFycmF5VGFnc1thcmdzVGFnXSA9IHR5cGVkQXJyYXlUYWdzW2FycmF5VGFnXSA9XG50eXBlZEFycmF5VGFnc1thcnJheUJ1ZmZlclRhZ10gPSB0eXBlZEFycmF5VGFnc1tib29sVGFnXSA9XG50eXBlZEFycmF5VGFnc1tkYXRhVmlld1RhZ10gPSB0eXBlZEFycmF5VGFnc1tkYXRlVGFnXSA9XG50eXBlZEFycmF5VGFnc1tlcnJvclRhZ10gPSB0eXBlZEFycmF5VGFnc1tmdW5jVGFnXSA9XG50eXBlZEFycmF5VGFnc1ttYXBUYWddID0gdHlwZWRBcnJheVRhZ3NbbnVtYmVyVGFnXSA9XG50eXBlZEFycmF5VGFnc1tvYmplY3RUYWddID0gdHlwZWRBcnJheVRhZ3NbcmVnZXhwVGFnXSA9XG50eXBlZEFycmF5VGFnc1tzZXRUYWddID0gdHlwZWRBcnJheVRhZ3Nbc3RyaW5nVGFnXSA9XG50eXBlZEFycmF5VGFnc1t3ZWFrTWFwVGFnXSA9IGZhbHNlO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmlzVHlwZWRBcnJheWAgd2l0aG91dCBOb2RlLmpzIG9wdGltaXphdGlvbnMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB0eXBlZCBhcnJheSwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBiYXNlSXNUeXBlZEFycmF5KHZhbHVlKSB7XG4gIHJldHVybiBpc09iamVjdExpa2UodmFsdWUpICYmXG4gICAgaXNMZW5ndGgodmFsdWUubGVuZ3RoKSAmJiAhIXR5cGVkQXJyYXlUYWdzW2Jhc2VHZXRUYWcodmFsdWUpXTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlSXNUeXBlZEFycmF5O1xuIiwidmFyIGlzUHJvdG90eXBlID0gcmVxdWlyZSgnLi9faXNQcm90b3R5cGUnKSxcbiAgICBuYXRpdmVLZXlzID0gcmVxdWlyZSgnLi9fbmF0aXZlS2V5cycpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmtleXNgIHdoaWNoIGRvZXNuJ3QgdHJlYXQgc3BhcnNlIGFycmF5cyBhcyBkZW5zZS5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIHF1ZXJ5LlxuICogQHJldHVybnMge0FycmF5fSBSZXR1cm5zIHRoZSBhcnJheSBvZiBwcm9wZXJ0eSBuYW1lcy5cbiAqL1xuZnVuY3Rpb24gYmFzZUtleXMob2JqZWN0KSB7XG4gIGlmICghaXNQcm90b3R5cGUob2JqZWN0KSkge1xuICAgIHJldHVybiBuYXRpdmVLZXlzKG9iamVjdCk7XG4gIH1cbiAgdmFyIHJlc3VsdCA9IFtdO1xuICBmb3IgKHZhciBrZXkgaW4gT2JqZWN0KG9iamVjdCkpIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIGtleSkgJiYga2V5ICE9ICdjb25zdHJ1Y3RvcicpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGtleSk7XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUtleXM7XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0JyksXG4gICAgaXNQcm90b3R5cGUgPSByZXF1aXJlKCcuL19pc1Byb3RvdHlwZScpLFxuICAgIG5hdGl2ZUtleXNJbiA9IHJlcXVpcmUoJy4vX25hdGl2ZUtleXNJbicpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmtleXNJbmAgd2hpY2ggZG9lc24ndCB0cmVhdCBzcGFyc2UgYXJyYXlzIGFzIGRlbnNlLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICovXG5mdW5jdGlvbiBiYXNlS2V5c0luKG9iamVjdCkge1xuICBpZiAoIWlzT2JqZWN0KG9iamVjdCkpIHtcbiAgICByZXR1cm4gbmF0aXZlS2V5c0luKG9iamVjdCk7XG4gIH1cbiAgdmFyIGlzUHJvdG8gPSBpc1Byb3RvdHlwZShvYmplY3QpLFxuICAgICAgcmVzdWx0ID0gW107XG5cbiAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgIGlmICghKGtleSA9PSAnY29uc3RydWN0b3InICYmIChpc1Byb3RvIHx8ICFoYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwga2V5KSkpKSB7XG4gICAgICByZXN1bHQucHVzaChrZXkpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VLZXlzSW47XG4iLCIvKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnByb3BlcnR5T2ZgIHdpdGhvdXQgc3VwcG9ydCBmb3IgZGVlcCBwYXRocy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIHF1ZXJ5LlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgYWNjZXNzb3IgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIGJhc2VQcm9wZXJ0eU9mKG9iamVjdCkge1xuICByZXR1cm4gZnVuY3Rpb24oa2V5KSB7XG4gICAgcmV0dXJuIG9iamVjdCA9PSBudWxsID8gdW5kZWZpbmVkIDogb2JqZWN0W2tleV07XG4gIH07XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZVByb3BlcnR5T2Y7XG4iLCJ2YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5JyksXG4gICAgb3ZlclJlc3QgPSByZXF1aXJlKCcuL19vdmVyUmVzdCcpLFxuICAgIHNldFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fc2V0VG9TdHJpbmcnKTtcblxuLyoqXG4gKiBUaGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBvZiBgXy5yZXN0YCB3aGljaCBkb2Vzbid0IHZhbGlkYXRlIG9yIGNvZXJjZSBhcmd1bWVudHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIGFwcGx5IGEgcmVzdCBwYXJhbWV0ZXIgdG8uXG4gKiBAcGFyYW0ge251bWJlcn0gW3N0YXJ0PWZ1bmMubGVuZ3RoLTFdIFRoZSBzdGFydCBwb3NpdGlvbiBvZiB0aGUgcmVzdCBwYXJhbWV0ZXIuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gYmFzZVJlc3QoZnVuYywgc3RhcnQpIHtcbiAgcmV0dXJuIHNldFRvU3RyaW5nKG92ZXJSZXN0KGZ1bmMsIHN0YXJ0LCBpZGVudGl0eSksIGZ1bmMgKyAnJyk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZVJlc3Q7XG4iLCJ2YXIgY29uc3RhbnQgPSByZXF1aXJlKCcuL2NvbnN0YW50JyksXG4gICAgZGVmaW5lUHJvcGVydHkgPSByZXF1aXJlKCcuL19kZWZpbmVQcm9wZXJ0eScpLFxuICAgIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eScpO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBzZXRUb1N0cmluZ2Agd2l0aG91dCBzdXBwb3J0IGZvciBob3QgbG9vcCBzaG9ydGluZy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gbW9kaWZ5LlxuICogQHBhcmFtIHtGdW5jdGlvbn0gc3RyaW5nIFRoZSBgdG9TdHJpbmdgIHJlc3VsdC5cbiAqIEByZXR1cm5zIHtGdW5jdGlvbn0gUmV0dXJucyBgZnVuY2AuXG4gKi9cbnZhciBiYXNlU2V0VG9TdHJpbmcgPSAhZGVmaW5lUHJvcGVydHkgPyBpZGVudGl0eSA6IGZ1bmN0aW9uKGZ1bmMsIHN0cmluZykge1xuICByZXR1cm4gZGVmaW5lUHJvcGVydHkoZnVuYywgJ3RvU3RyaW5nJywge1xuICAgICdjb25maWd1cmFibGUnOiB0cnVlLFxuICAgICdlbnVtZXJhYmxlJzogZmFsc2UsXG4gICAgJ3ZhbHVlJzogY29uc3RhbnQoc3RyaW5nKSxcbiAgICAnd3JpdGFibGUnOiB0cnVlXG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlU2V0VG9TdHJpbmc7XG4iLCIvKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnRpbWVzYCB3aXRob3V0IHN1cHBvcnQgZm9yIGl0ZXJhdGVlIHNob3J0aGFuZHNcbiAqIG9yIG1heCBhcnJheSBsZW5ndGggY2hlY2tzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge251bWJlcn0gbiBUaGUgbnVtYmVyIG9mIHRpbWVzIHRvIGludm9rZSBgaXRlcmF0ZWVgLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gaXRlcmF0ZWUgVGhlIGZ1bmN0aW9uIGludm9rZWQgcGVyIGl0ZXJhdGlvbi5cbiAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyB0aGUgYXJyYXkgb2YgcmVzdWx0cy5cbiAqL1xuZnVuY3Rpb24gYmFzZVRpbWVzKG4sIGl0ZXJhdGVlKSB7XG4gIHZhciBpbmRleCA9IC0xLFxuICAgICAgcmVzdWx0ID0gQXJyYXkobik7XG5cbiAgd2hpbGUgKCsraW5kZXggPCBuKSB7XG4gICAgcmVzdWx0W2luZGV4XSA9IGl0ZXJhdGVlKGluZGV4KTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VUaW1lcztcbiIsInZhciBTeW1ib2wgPSByZXF1aXJlKCcuL19TeW1ib2wnKSxcbiAgICBhcnJheU1hcCA9IHJlcXVpcmUoJy4vX2FycmF5TWFwJyksXG4gICAgaXNBcnJheSA9IHJlcXVpcmUoJy4vaXNBcnJheScpLFxuICAgIGlzU3ltYm9sID0gcmVxdWlyZSgnLi9pc1N5bWJvbCcpO1xuXG4vKiogVXNlZCBhcyByZWZlcmVuY2VzIGZvciB2YXJpb3VzIGBOdW1iZXJgIGNvbnN0YW50cy4gKi9cbnZhciBJTkZJTklUWSA9IDEgLyAwO1xuXG4vKiogVXNlZCB0byBjb252ZXJ0IHN5bWJvbHMgdG8gcHJpbWl0aXZlcyBhbmQgc3RyaW5ncy4gKi9cbnZhciBzeW1ib2xQcm90byA9IFN5bWJvbCA/IFN5bWJvbC5wcm90b3R5cGUgOiB1bmRlZmluZWQsXG4gICAgc3ltYm9sVG9TdHJpbmcgPSBzeW1ib2xQcm90byA/IHN5bWJvbFByb3RvLnRvU3RyaW5nIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnRvU3RyaW5nYCB3aGljaCBkb2Vzbid0IGNvbnZlcnQgbnVsbGlzaFxuICogdmFsdWVzIHRvIGVtcHR5IHN0cmluZ3MuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHByb2Nlc3MuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBzdHJpbmcuXG4gKi9cbmZ1bmN0aW9uIGJhc2VUb1N0cmluZyh2YWx1ZSkge1xuICAvLyBFeGl0IGVhcmx5IGZvciBzdHJpbmdzIHRvIGF2b2lkIGEgcGVyZm9ybWFuY2UgaGl0IGluIHNvbWUgZW52aXJvbm1lbnRzLlxuICBpZiAodHlwZW9mIHZhbHVlID09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgIC8vIFJlY3Vyc2l2ZWx5IGNvbnZlcnQgdmFsdWVzIChzdXNjZXB0aWJsZSB0byBjYWxsIHN0YWNrIGxpbWl0cykuXG4gICAgcmV0dXJuIGFycmF5TWFwKHZhbHVlLCBiYXNlVG9TdHJpbmcpICsgJyc7XG4gIH1cbiAgaWYgKGlzU3ltYm9sKHZhbHVlKSkge1xuICAgIHJldHVybiBzeW1ib2xUb1N0cmluZyA/IHN5bWJvbFRvU3RyaW5nLmNhbGwodmFsdWUpIDogJyc7XG4gIH1cbiAgdmFyIHJlc3VsdCA9ICh2YWx1ZSArICcnKTtcbiAgcmV0dXJuIChyZXN1bHQgPT0gJzAnICYmICgxIC8gdmFsdWUpID09IC1JTkZJTklUWSkgPyAnLTAnIDogcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VUb1N0cmluZztcbiIsIi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8udW5hcnlgIHdpdGhvdXQgc3VwcG9ydCBmb3Igc3RvcmluZyBtZXRhZGF0YS5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gY2FwIGFyZ3VtZW50cyBmb3IuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBjYXBwZWQgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIGJhc2VVbmFyeShmdW5jKSB7XG4gIHJldHVybiBmdW5jdGlvbih2YWx1ZSkge1xuICAgIHJldHVybiBmdW5jKHZhbHVlKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlVW5hcnk7XG4iLCJ2YXIgYXJyYXlNYXAgPSByZXF1aXJlKCcuL19hcnJheU1hcCcpO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnZhbHVlc2AgYW5kIGBfLnZhbHVlc0luYCB3aGljaCBjcmVhdGVzIGFuXG4gKiBhcnJheSBvZiBgb2JqZWN0YCBwcm9wZXJ0eSB2YWx1ZXMgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvcGVydHkgbmFtZXNcbiAqIG9mIGBwcm9wc2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIG9iamVjdCB0byBxdWVyeS5cbiAqIEBwYXJhbSB7QXJyYXl9IHByb3BzIFRoZSBwcm9wZXJ0eSBuYW1lcyB0byBnZXQgdmFsdWVzIGZvci5cbiAqIEByZXR1cm5zIHtPYmplY3R9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gYmFzZVZhbHVlcyhvYmplY3QsIHByb3BzKSB7XG4gIHJldHVybiBhcnJheU1hcChwcm9wcywgZnVuY3Rpb24oa2V5KSB7XG4gICAgcmV0dXJuIG9iamVjdFtrZXldO1xuICB9KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlVmFsdWVzO1xuIiwidmFyIGFzc2lnblZhbHVlID0gcmVxdWlyZSgnLi9fYXNzaWduVmFsdWUnKSxcbiAgICBiYXNlQXNzaWduVmFsdWUgPSByZXF1aXJlKCcuL19iYXNlQXNzaWduVmFsdWUnKTtcblxuLyoqXG4gKiBDb3BpZXMgcHJvcGVydGllcyBvZiBgc291cmNlYCB0byBgb2JqZWN0YC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IHNvdXJjZSBUaGUgb2JqZWN0IHRvIGNvcHkgcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHtBcnJheX0gcHJvcHMgVGhlIHByb3BlcnR5IGlkZW50aWZpZXJzIHRvIGNvcHkuXG4gKiBAcGFyYW0ge09iamVjdH0gW29iamVjdD17fV0gVGhlIG9iamVjdCB0byBjb3B5IHByb3BlcnRpZXMgdG8uXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY3VzdG9taXplcl0gVGhlIGZ1bmN0aW9uIHRvIGN1c3RvbWl6ZSBjb3BpZWQgdmFsdWVzLlxuICogQHJldHVybnMge09iamVjdH0gUmV0dXJucyBgb2JqZWN0YC5cbiAqL1xuZnVuY3Rpb24gY29weU9iamVjdChzb3VyY2UsIHByb3BzLCBvYmplY3QsIGN1c3RvbWl6ZXIpIHtcbiAgdmFyIGlzTmV3ID0gIW9iamVjdDtcbiAgb2JqZWN0IHx8IChvYmplY3QgPSB7fSk7XG5cbiAgdmFyIGluZGV4ID0gLTEsXG4gICAgICBsZW5ndGggPSBwcm9wcy5sZW5ndGg7XG5cbiAgd2hpbGUgKCsraW5kZXggPCBsZW5ndGgpIHtcbiAgICB2YXIga2V5ID0gcHJvcHNbaW5kZXhdO1xuXG4gICAgdmFyIG5ld1ZhbHVlID0gY3VzdG9taXplclxuICAgICAgPyBjdXN0b21pemVyKG9iamVjdFtrZXldLCBzb3VyY2Vba2V5XSwga2V5LCBvYmplY3QsIHNvdXJjZSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKG5ld1ZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG5ld1ZhbHVlID0gc291cmNlW2tleV07XG4gICAgfVxuICAgIGlmIChpc05ldykge1xuICAgICAgYmFzZUFzc2lnblZhbHVlKG9iamVjdCwga2V5LCBuZXdWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2lnblZhbHVlKG9iamVjdCwga2V5LCBuZXdWYWx1ZSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBvYmplY3Q7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY29weU9iamVjdDtcbiIsInZhciByb290ID0gcmVxdWlyZSgnLi9fcm9vdCcpO1xuXG4vKiogVXNlZCB0byBkZXRlY3Qgb3ZlcnJlYWNoaW5nIGNvcmUtanMgc2hpbXMuICovXG52YXIgY29yZUpzRGF0YSA9IHJvb3RbJ19fY29yZS1qc19zaGFyZWRfXyddO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGNvcmVKc0RhdGE7XG4iLCJ2YXIgYmFzZVJlc3QgPSByZXF1aXJlKCcuL19iYXNlUmVzdCcpLFxuICAgIGlzSXRlcmF0ZWVDYWxsID0gcmVxdWlyZSgnLi9faXNJdGVyYXRlZUNhbGwnKTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgZnVuY3Rpb24gbGlrZSBgXy5hc3NpZ25gLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBhc3NpZ25lciBUaGUgZnVuY3Rpb24gdG8gYXNzaWduIHZhbHVlcy5cbiAqIEByZXR1cm5zIHtGdW5jdGlvbn0gUmV0dXJucyB0aGUgbmV3IGFzc2lnbmVyIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBjcmVhdGVBc3NpZ25lcihhc3NpZ25lcikge1xuICByZXR1cm4gYmFzZVJlc3QoZnVuY3Rpb24ob2JqZWN0LCBzb3VyY2VzKSB7XG4gICAgdmFyIGluZGV4ID0gLTEsXG4gICAgICAgIGxlbmd0aCA9IHNvdXJjZXMubGVuZ3RoLFxuICAgICAgICBjdXN0b21pemVyID0gbGVuZ3RoID4gMSA/IHNvdXJjZXNbbGVuZ3RoIC0gMV0gOiB1bmRlZmluZWQsXG4gICAgICAgIGd1YXJkID0gbGVuZ3RoID4gMiA/IHNvdXJjZXNbMl0gOiB1bmRlZmluZWQ7XG5cbiAgICBjdXN0b21pemVyID0gKGFzc2lnbmVyLmxlbmd0aCA+IDMgJiYgdHlwZW9mIGN1c3RvbWl6ZXIgPT0gJ2Z1bmN0aW9uJylcbiAgICAgID8gKGxlbmd0aC0tLCBjdXN0b21pemVyKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBpZiAoZ3VhcmQgJiYgaXNJdGVyYXRlZUNhbGwoc291cmNlc1swXSwgc291cmNlc1sxXSwgZ3VhcmQpKSB7XG4gICAgICBjdXN0b21pemVyID0gbGVuZ3RoIDwgMyA/IHVuZGVmaW5lZCA6IGN1c3RvbWl6ZXI7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH1cbiAgICBvYmplY3QgPSBPYmplY3Qob2JqZWN0KTtcbiAgICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgICAgdmFyIHNvdXJjZSA9IHNvdXJjZXNbaW5kZXhdO1xuICAgICAgaWYgKHNvdXJjZSkge1xuICAgICAgICBhc3NpZ25lcihvYmplY3QsIHNvdXJjZSwgaW5kZXgsIGN1c3RvbWl6ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gb2JqZWN0O1xuICB9KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjcmVhdGVBc3NpZ25lcjtcbiIsInZhciBlcSA9IHJlcXVpcmUoJy4vZXEnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBVc2VkIGJ5IGBfLmRlZmF1bHRzYCB0byBjdXN0b21pemUgaXRzIGBfLmFzc2lnbkluYCB1c2UgdG8gYXNzaWduIHByb3BlcnRpZXNcbiAqIG9mIHNvdXJjZSBvYmplY3RzIHRvIHRoZSBkZXN0aW5hdGlvbiBvYmplY3QgZm9yIGFsbCBkZXN0aW5hdGlvbiBwcm9wZXJ0aWVzXG4gKiB0aGF0IHJlc29sdmUgdG8gYHVuZGVmaW5lZGAuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gb2JqVmFsdWUgVGhlIGRlc3RpbmF0aW9uIHZhbHVlLlxuICogQHBhcmFtIHsqfSBzcmNWYWx1ZSBUaGUgc291cmNlIHZhbHVlLlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSBUaGUga2V5IG9mIHRoZSBwcm9wZXJ0eSB0byBhc3NpZ24uXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBwYXJlbnQgb2JqZWN0IG9mIGBvYmpWYWx1ZWAuXG4gKiBAcmV0dXJucyB7Kn0gUmV0dXJucyB0aGUgdmFsdWUgdG8gYXNzaWduLlxuICovXG5mdW5jdGlvbiBjdXN0b21EZWZhdWx0c0Fzc2lnbkluKG9ialZhbHVlLCBzcmNWYWx1ZSwga2V5LCBvYmplY3QpIHtcbiAgaWYgKG9ialZhbHVlID09PSB1bmRlZmluZWQgfHxcbiAgICAgIChlcShvYmpWYWx1ZSwgb2JqZWN0UHJvdG9ba2V5XSkgJiYgIWhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBrZXkpKSkge1xuICAgIHJldHVybiBzcmNWYWx1ZTtcbiAgfVxuICByZXR1cm4gb2JqVmFsdWU7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY3VzdG9tRGVmYXVsdHNBc3NpZ25JbjtcbiIsInZhciBnZXROYXRpdmUgPSByZXF1aXJlKCcuL19nZXROYXRpdmUnKTtcblxudmFyIGRlZmluZVByb3BlcnR5ID0gKGZ1bmN0aW9uKCkge1xuICB0cnkge1xuICAgIHZhciBmdW5jID0gZ2V0TmF0aXZlKE9iamVjdCwgJ2RlZmluZVByb3BlcnR5Jyk7XG4gICAgZnVuYyh7fSwgJycsIHt9KTtcbiAgICByZXR1cm4gZnVuYztcbiAgfSBjYXRjaCAoZSkge31cbn0oKSk7XG5cbm1vZHVsZS5leHBvcnRzID0gZGVmaW5lUHJvcGVydHk7XG4iLCJ2YXIgYmFzZVByb3BlcnR5T2YgPSByZXF1aXJlKCcuL19iYXNlUHJvcGVydHlPZicpO1xuXG4vKiogVXNlZCB0byBtYXAgY2hhcmFjdGVycyB0byBIVE1MIGVudGl0aWVzLiAqL1xudmFyIGh0bWxFc2NhcGVzID0ge1xuICAnJic6ICcmYW1wOycsXG4gICc8JzogJyZsdDsnLFxuICAnPic6ICcmZ3Q7JyxcbiAgJ1wiJzogJyZxdW90OycsXG4gIFwiJ1wiOiAnJiMzOTsnXG59O1xuXG4vKipcbiAqIFVzZWQgYnkgYF8uZXNjYXBlYCB0byBjb252ZXJ0IGNoYXJhY3RlcnMgdG8gSFRNTCBlbnRpdGllcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtzdHJpbmd9IGNociBUaGUgbWF0Y2hlZCBjaGFyYWN0ZXIgdG8gZXNjYXBlLlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgZXNjYXBlZCBjaGFyYWN0ZXIuXG4gKi9cbnZhciBlc2NhcGVIdG1sQ2hhciA9IGJhc2VQcm9wZXJ0eU9mKGh0bWxFc2NhcGVzKTtcblxubW9kdWxlLmV4cG9ydHMgPSBlc2NhcGVIdG1sQ2hhcjtcbiIsIi8qKiBVc2VkIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIGZvciBpbmNsdXNpb24gaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLiAqL1xudmFyIHN0cmluZ0VzY2FwZXMgPSB7XG4gICdcXFxcJzogJ1xcXFwnLFxuICBcIidcIjogXCInXCIsXG4gICdcXG4nOiAnbicsXG4gICdcXHInOiAncicsXG4gICdcXHUyMDI4JzogJ3UyMDI4JyxcbiAgJ1xcdTIwMjknOiAndTIwMjknXG59O1xuXG4vKipcbiAqIFVzZWQgYnkgYF8udGVtcGxhdGVgIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIGZvciBpbmNsdXNpb24gaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hyIFRoZSBtYXRjaGVkIGNoYXJhY3RlciB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBlc2NhcGVkIGNoYXJhY3Rlci5cbiAqL1xuZnVuY3Rpb24gZXNjYXBlU3RyaW5nQ2hhcihjaHIpIHtcbiAgcmV0dXJuICdcXFxcJyArIHN0cmluZ0VzY2FwZXNbY2hyXTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBlc2NhcGVTdHJpbmdDaGFyO1xuIiwiLyoqIERldGVjdCBmcmVlIHZhcmlhYmxlIGBnbG9iYWxgIGZyb20gTm9kZS5qcy4gKi9cbnZhciBmcmVlR2xvYmFsID0gdHlwZW9mIGdsb2JhbCA9PSAnb2JqZWN0JyAmJiBnbG9iYWwgJiYgZ2xvYmFsLk9iamVjdCA9PT0gT2JqZWN0ICYmIGdsb2JhbDtcblxubW9kdWxlLmV4cG9ydHMgPSBmcmVlR2xvYmFsO1xuIiwidmFyIGJhc2VJc05hdGl2ZSA9IHJlcXVpcmUoJy4vX2Jhc2VJc05hdGl2ZScpLFxuICAgIGdldFZhbHVlID0gcmVxdWlyZSgnLi9fZ2V0VmFsdWUnKTtcblxuLyoqXG4gKiBHZXRzIHRoZSBuYXRpdmUgZnVuY3Rpb24gYXQgYGtleWAgb2YgYG9iamVjdGAuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIG9iamVjdCB0byBxdWVyeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgVGhlIGtleSBvZiB0aGUgbWV0aG9kIHRvIGdldC5cbiAqIEByZXR1cm5zIHsqfSBSZXR1cm5zIHRoZSBmdW5jdGlvbiBpZiBpdCdzIG5hdGl2ZSwgZWxzZSBgdW5kZWZpbmVkYC5cbiAqL1xuZnVuY3Rpb24gZ2V0TmF0aXZlKG9iamVjdCwga2V5KSB7XG4gIHZhciB2YWx1ZSA9IGdldFZhbHVlKG9iamVjdCwga2V5KTtcbiAgcmV0dXJuIGJhc2VJc05hdGl2ZSh2YWx1ZSkgPyB2YWx1ZSA6IHVuZGVmaW5lZDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBnZXROYXRpdmU7XG4iLCJ2YXIgb3ZlckFyZyA9IHJlcXVpcmUoJy4vX292ZXJBcmcnKTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgZ2V0UHJvdG90eXBlID0gb3ZlckFyZyhPYmplY3QuZ2V0UHJvdG90eXBlT2YsIE9iamVjdCk7XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0UHJvdG90eXBlO1xuIiwidmFyIFN5bWJvbCA9IHJlcXVpcmUoJy4vX1N5bWJvbCcpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFVzZWQgdG8gcmVzb2x2ZSB0aGVcbiAqIFtgdG9TdHJpbmdUYWdgXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1vYmplY3QucHJvdG90eXBlLnRvc3RyaW5nKVxuICogb2YgdmFsdWVzLlxuICovXG52YXIgbmF0aXZlT2JqZWN0VG9TdHJpbmcgPSBvYmplY3RQcm90by50b1N0cmluZztcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgc3ltVG9TdHJpbmdUYWcgPSBTeW1ib2wgPyBTeW1ib2wudG9TdHJpbmdUYWcgOiB1bmRlZmluZWQ7XG5cbi8qKlxuICogQSBzcGVjaWFsaXplZCB2ZXJzaW9uIG9mIGBiYXNlR2V0VGFnYCB3aGljaCBpZ25vcmVzIGBTeW1ib2wudG9TdHJpbmdUYWdgIHZhbHVlcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSByYXcgYHRvU3RyaW5nVGFnYC5cbiAqL1xuZnVuY3Rpb24gZ2V0UmF3VGFnKHZhbHVlKSB7XG4gIHZhciBpc093biA9IGhhc093blByb3BlcnR5LmNhbGwodmFsdWUsIHN5bVRvU3RyaW5nVGFnKSxcbiAgICAgIHRhZyA9IHZhbHVlW3N5bVRvU3RyaW5nVGFnXTtcblxuICB0cnkge1xuICAgIHZhbHVlW3N5bVRvU3RyaW5nVGFnXSA9IHVuZGVmaW5lZDtcbiAgICB2YXIgdW5tYXNrZWQgPSB0cnVlO1xuICB9IGNhdGNoIChlKSB7fVxuXG4gIHZhciByZXN1bHQgPSBuYXRpdmVPYmplY3RUb1N0cmluZy5jYWxsKHZhbHVlKTtcbiAgaWYgKHVubWFza2VkKSB7XG4gICAgaWYgKGlzT3duKSB7XG4gICAgICB2YWx1ZVtzeW1Ub1N0cmluZ1RhZ10gPSB0YWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRlbGV0ZSB2YWx1ZVtzeW1Ub1N0cmluZ1RhZ107XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0UmF3VGFnO1xuIiwiLyoqXG4gKiBHZXRzIHRoZSB2YWx1ZSBhdCBga2V5YCBvZiBgb2JqZWN0YC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IFtvYmplY3RdIFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcGFyYW0ge3N0cmluZ30ga2V5IFRoZSBrZXkgb2YgdGhlIHByb3BlcnR5IHRvIGdldC5cbiAqIEByZXR1cm5zIHsqfSBSZXR1cm5zIHRoZSBwcm9wZXJ0eSB2YWx1ZS5cbiAqL1xuZnVuY3Rpb24gZ2V0VmFsdWUob2JqZWN0LCBrZXkpIHtcbiAgcmV0dXJuIG9iamVjdCA9PSBudWxsID8gdW5kZWZpbmVkIDogb2JqZWN0W2tleV07XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0VmFsdWU7XG4iLCIvKiogVXNlZCBhcyByZWZlcmVuY2VzIGZvciB2YXJpb3VzIGBOdW1iZXJgIGNvbnN0YW50cy4gKi9cbnZhciBNQVhfU0FGRV9JTlRFR0VSID0gOTAwNzE5OTI1NDc0MDk5MTtcblxuLyoqIFVzZWQgdG8gZGV0ZWN0IHVuc2lnbmVkIGludGVnZXIgdmFsdWVzLiAqL1xudmFyIHJlSXNVaW50ID0gL14oPzowfFsxLTldXFxkKikkLztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhIHZhbGlkIGFycmF5LWxpa2UgaW5kZXguXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHBhcmFtIHtudW1iZXJ9IFtsZW5ndGg9TUFYX1NBRkVfSU5URUdFUl0gVGhlIHVwcGVyIGJvdW5kcyBvZiBhIHZhbGlkIGluZGV4LlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB2YWxpZCBpbmRleCwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc0luZGV4KHZhbHVlLCBsZW5ndGgpIHtcbiAgdmFyIHR5cGUgPSB0eXBlb2YgdmFsdWU7XG4gIGxlbmd0aCA9IGxlbmd0aCA9PSBudWxsID8gTUFYX1NBRkVfSU5URUdFUiA6IGxlbmd0aDtcblxuICByZXR1cm4gISFsZW5ndGggJiZcbiAgICAodHlwZSA9PSAnbnVtYmVyJyB8fFxuICAgICAgKHR5cGUgIT0gJ3N5bWJvbCcgJiYgcmVJc1VpbnQudGVzdCh2YWx1ZSkpKSAmJlxuICAgICAgICAodmFsdWUgPiAtMSAmJiB2YWx1ZSAlIDEgPT0gMCAmJiB2YWx1ZSA8IGxlbmd0aCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNJbmRleDtcbiIsInZhciBlcSA9IHJlcXVpcmUoJy4vZXEnKSxcbiAgICBpc0FycmF5TGlrZSA9IHJlcXVpcmUoJy4vaXNBcnJheUxpa2UnKSxcbiAgICBpc0luZGV4ID0gcmVxdWlyZSgnLi9faXNJbmRleCcpLFxuICAgIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9pc09iamVjdCcpO1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gYXJndW1lbnRzIGFyZSBmcm9tIGFuIGl0ZXJhdGVlIGNhbGwuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHBvdGVudGlhbCBpdGVyYXRlZSB2YWx1ZSBhcmd1bWVudC5cbiAqIEBwYXJhbSB7Kn0gaW5kZXggVGhlIHBvdGVudGlhbCBpdGVyYXRlZSBpbmRleCBvciBrZXkgYXJndW1lbnQuXG4gKiBAcGFyYW0geyp9IG9iamVjdCBUaGUgcG90ZW50aWFsIGl0ZXJhdGVlIG9iamVjdCBhcmd1bWVudC5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgYXJndW1lbnRzIGFyZSBmcm9tIGFuIGl0ZXJhdGVlIGNhbGwsXG4gKiAgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc0l0ZXJhdGVlQ2FsbCh2YWx1ZSwgaW5kZXgsIG9iamVjdCkge1xuICBpZiAoIWlzT2JqZWN0KG9iamVjdCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHR5cGUgPSB0eXBlb2YgaW5kZXg7XG4gIGlmICh0eXBlID09ICdudW1iZXInXG4gICAgICAgID8gKGlzQXJyYXlMaWtlKG9iamVjdCkgJiYgaXNJbmRleChpbmRleCwgb2JqZWN0Lmxlbmd0aCkpXG4gICAgICAgIDogKHR5cGUgPT0gJ3N0cmluZycgJiYgaW5kZXggaW4gb2JqZWN0KVxuICAgICAgKSB7XG4gICAgcmV0dXJuIGVxKG9iamVjdFtpbmRleF0sIHZhbHVlKTtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNJdGVyYXRlZUNhbGw7XG4iLCJ2YXIgY29yZUpzRGF0YSA9IHJlcXVpcmUoJy4vX2NvcmVKc0RhdGEnKTtcblxuLyoqIFVzZWQgdG8gZGV0ZWN0IG1ldGhvZHMgbWFzcXVlcmFkaW5nIGFzIG5hdGl2ZS4gKi9cbnZhciBtYXNrU3JjS2V5ID0gKGZ1bmN0aW9uKCkge1xuICB2YXIgdWlkID0gL1teLl0rJC8uZXhlYyhjb3JlSnNEYXRhICYmIGNvcmVKc0RhdGEua2V5cyAmJiBjb3JlSnNEYXRhLmtleXMuSUVfUFJPVE8gfHwgJycpO1xuICByZXR1cm4gdWlkID8gKCdTeW1ib2woc3JjKV8xLicgKyB1aWQpIDogJyc7XG59KCkpO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgZnVuY2AgaGFzIGl0cyBzb3VyY2UgbWFza2VkLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgZnVuY2AgaXMgbWFza2VkLCBlbHNlIGBmYWxzZWAuXG4gKi9cbmZ1bmN0aW9uIGlzTWFza2VkKGZ1bmMpIHtcbiAgcmV0dXJuICEhbWFza1NyY0tleSAmJiAobWFza1NyY0tleSBpbiBmdW5jKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc01hc2tlZDtcbiIsIi8qKiBVc2VkIGZvciBidWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcy4gKi9cbnZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgbGlrZWx5IGEgcHJvdG90eXBlIG9iamVjdC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBhIHByb3RvdHlwZSwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc1Byb3RvdHlwZSh2YWx1ZSkge1xuICB2YXIgQ3RvciA9IHZhbHVlICYmIHZhbHVlLmNvbnN0cnVjdG9yLFxuICAgICAgcHJvdG8gPSAodHlwZW9mIEN0b3IgPT0gJ2Z1bmN0aW9uJyAmJiBDdG9yLnByb3RvdHlwZSkgfHwgb2JqZWN0UHJvdG87XG5cbiAgcmV0dXJuIHZhbHVlID09PSBwcm90bztcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc1Byb3RvdHlwZTtcbiIsInZhciBvdmVyQXJnID0gcmVxdWlyZSgnLi9fb3ZlckFyZycpO1xuXG4vKiBCdWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcyBmb3IgdGhvc2Ugd2l0aCB0aGUgc2FtZSBuYW1lIGFzIG90aGVyIGBsb2Rhc2hgIG1ldGhvZHMuICovXG52YXIgbmF0aXZlS2V5cyA9IG92ZXJBcmcoT2JqZWN0LmtleXMsIE9iamVjdCk7XG5cbm1vZHVsZS5leHBvcnRzID0gbmF0aXZlS2V5cztcbiIsIi8qKlxuICogVGhpcyBmdW5jdGlvbiBpcyBsaWtlXG4gKiBbYE9iamVjdC5rZXlzYF0oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtb2JqZWN0LmtleXMpXG4gKiBleGNlcHQgdGhhdCBpdCBpbmNsdWRlcyBpbmhlcml0ZWQgZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICovXG5mdW5jdGlvbiBuYXRpdmVLZXlzSW4ob2JqZWN0KSB7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgaWYgKG9iamVjdCAhPSBudWxsKSB7XG4gICAgZm9yICh2YXIga2V5IGluIE9iamVjdChvYmplY3QpKSB7XG4gICAgICByZXN1bHQucHVzaChrZXkpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IG5hdGl2ZUtleXNJbjtcbiIsInZhciBmcmVlR2xvYmFsID0gcmVxdWlyZSgnLi9fZnJlZUdsb2JhbCcpO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYGV4cG9ydHNgLiAqL1xudmFyIGZyZWVFeHBvcnRzID0gdHlwZW9mIGV4cG9ydHMgPT0gJ29iamVjdCcgJiYgZXhwb3J0cyAmJiAhZXhwb3J0cy5ub2RlVHlwZSAmJiBleHBvcnRzO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYG1vZHVsZWAuICovXG52YXIgZnJlZU1vZHVsZSA9IGZyZWVFeHBvcnRzICYmIHR5cGVvZiBtb2R1bGUgPT0gJ29iamVjdCcgJiYgbW9kdWxlICYmICFtb2R1bGUubm9kZVR5cGUgJiYgbW9kdWxlO1xuXG4vKiogRGV0ZWN0IHRoZSBwb3B1bGFyIENvbW1vbkpTIGV4dGVuc2lvbiBgbW9kdWxlLmV4cG9ydHNgLiAqL1xudmFyIG1vZHVsZUV4cG9ydHMgPSBmcmVlTW9kdWxlICYmIGZyZWVNb2R1bGUuZXhwb3J0cyA9PT0gZnJlZUV4cG9ydHM7XG5cbi8qKiBEZXRlY3QgZnJlZSB2YXJpYWJsZSBgcHJvY2Vzc2AgZnJvbSBOb2RlLmpzLiAqL1xudmFyIGZyZWVQcm9jZXNzID0gbW9kdWxlRXhwb3J0cyAmJiBmcmVlR2xvYmFsLnByb2Nlc3M7XG5cbi8qKiBVc2VkIHRvIGFjY2VzcyBmYXN0ZXIgTm9kZS5qcyBoZWxwZXJzLiAqL1xudmFyIG5vZGVVdGlsID0gKGZ1bmN0aW9uKCkge1xuICB0cnkge1xuICAgIC8vIFVzZSBgdXRpbC50eXBlc2AgZm9yIE5vZGUuanMgMTArLlxuICAgIHZhciB0eXBlcyA9IGZyZWVNb2R1bGUgJiYgZnJlZU1vZHVsZS5yZXF1aXJlICYmIGZyZWVNb2R1bGUucmVxdWlyZSgndXRpbCcpLnR5cGVzO1xuXG4gICAgaWYgKHR5cGVzKSB7XG4gICAgICByZXR1cm4gdHlwZXM7XG4gICAgfVxuXG4gICAgLy8gTGVnYWN5IGBwcm9jZXNzLmJpbmRpbmcoJ3V0aWwnKWAgZm9yIE5vZGUuanMgPCAxMC5cbiAgICByZXR1cm4gZnJlZVByb2Nlc3MgJiYgZnJlZVByb2Nlc3MuYmluZGluZyAmJiBmcmVlUHJvY2Vzcy5iaW5kaW5nKCd1dGlsJyk7XG4gIH0gY2F0Y2ggKGUpIHt9XG59KCkpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IG5vZGVVdGlsO1xuIiwiLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqXG4gKiBVc2VkIHRvIHJlc29sdmUgdGhlXG4gKiBbYHRvU3RyaW5nVGFnYF0oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtb2JqZWN0LnByb3RvdHlwZS50b3N0cmluZylcbiAqIG9mIHZhbHVlcy5cbiAqL1xudmFyIG5hdGl2ZU9iamVjdFRvU3RyaW5nID0gb2JqZWN0UHJvdG8udG9TdHJpbmc7XG5cbi8qKlxuICogQ29udmVydHMgYHZhbHVlYCB0byBhIHN0cmluZyB1c2luZyBgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZ2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBjb252ZXJ0ZWQgc3RyaW5nLlxuICovXG5mdW5jdGlvbiBvYmplY3RUb1N0cmluZyh2YWx1ZSkge1xuICByZXR1cm4gbmF0aXZlT2JqZWN0VG9TdHJpbmcuY2FsbCh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gb2JqZWN0VG9TdHJpbmc7XG4iLCIvKipcbiAqIENyZWF0ZXMgYSB1bmFyeSBmdW5jdGlvbiB0aGF0IGludm9rZXMgYGZ1bmNgIHdpdGggaXRzIGFyZ3VtZW50IHRyYW5zZm9ybWVkLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byB3cmFwLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gdHJhbnNmb3JtIFRoZSBhcmd1bWVudCB0cmFuc2Zvcm0uXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gb3ZlckFyZyhmdW5jLCB0cmFuc2Zvcm0pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uKGFyZykge1xuICAgIHJldHVybiBmdW5jKHRyYW5zZm9ybShhcmcpKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBvdmVyQXJnO1xuIiwidmFyIGFwcGx5ID0gcmVxdWlyZSgnLi9fYXBwbHknKTtcblxuLyogQnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMgZm9yIHRob3NlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBvdGhlciBgbG9kYXNoYCBtZXRob2RzLiAqL1xudmFyIG5hdGl2ZU1heCA9IE1hdGgubWF4O1xuXG4vKipcbiAqIEEgc3BlY2lhbGl6ZWQgdmVyc2lvbiBvZiBgYmFzZVJlc3RgIHdoaWNoIHRyYW5zZm9ybXMgdGhlIHJlc3QgYXJyYXkuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIGFwcGx5IGEgcmVzdCBwYXJhbWV0ZXIgdG8uXG4gKiBAcGFyYW0ge251bWJlcn0gW3N0YXJ0PWZ1bmMubGVuZ3RoLTFdIFRoZSBzdGFydCBwb3NpdGlvbiBvZiB0aGUgcmVzdCBwYXJhbWV0ZXIuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSB0cmFuc2Zvcm0gVGhlIHJlc3QgYXJyYXkgdHJhbnNmb3JtLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIG92ZXJSZXN0KGZ1bmMsIHN0YXJ0LCB0cmFuc2Zvcm0pIHtcbiAgc3RhcnQgPSBuYXRpdmVNYXgoc3RhcnQgPT09IHVuZGVmaW5lZCA/IChmdW5jLmxlbmd0aCAtIDEpIDogc3RhcnQsIDApO1xuICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGFyZ3MgPSBhcmd1bWVudHMsXG4gICAgICAgIGluZGV4ID0gLTEsXG4gICAgICAgIGxlbmd0aCA9IG5hdGl2ZU1heChhcmdzLmxlbmd0aCAtIHN0YXJ0LCAwKSxcbiAgICAgICAgYXJyYXkgPSBBcnJheShsZW5ndGgpO1xuXG4gICAgd2hpbGUgKCsraW5kZXggPCBsZW5ndGgpIHtcbiAgICAgIGFycmF5W2luZGV4XSA9IGFyZ3Nbc3RhcnQgKyBpbmRleF07XG4gICAgfVxuICAgIGluZGV4ID0gLTE7XG4gICAgdmFyIG90aGVyQXJncyA9IEFycmF5KHN0YXJ0ICsgMSk7XG4gICAgd2hpbGUgKCsraW5kZXggPCBzdGFydCkge1xuICAgICAgb3RoZXJBcmdzW2luZGV4XSA9IGFyZ3NbaW5kZXhdO1xuICAgIH1cbiAgICBvdGhlckFyZ3Nbc3RhcnRdID0gdHJhbnNmb3JtKGFycmF5KTtcbiAgICByZXR1cm4gYXBwbHkoZnVuYywgdGhpcywgb3RoZXJBcmdzKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBvdmVyUmVzdDtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVFc2NhcGUgPSAvPCUtKFtcXHNcXFNdKz8pJT4vZztcblxubW9kdWxlLmV4cG9ydHMgPSByZUVzY2FwZTtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVFdmFsdWF0ZSA9IC88JShbXFxzXFxTXSs/KSU+L2c7XG5cbm1vZHVsZS5leHBvcnRzID0gcmVFdmFsdWF0ZTtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVJbnRlcnBvbGF0ZSA9IC88JT0oW1xcc1xcU10rPyklPi9nO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHJlSW50ZXJwb2xhdGU7XG4iLCJ2YXIgZnJlZUdsb2JhbCA9IHJlcXVpcmUoJy4vX2ZyZWVHbG9iYWwnKTtcblxuLyoqIERldGVjdCBmcmVlIHZhcmlhYmxlIGBzZWxmYC4gKi9cbnZhciBmcmVlU2VsZiA9IHR5cGVvZiBzZWxmID09ICdvYmplY3QnICYmIHNlbGYgJiYgc2VsZi5PYmplY3QgPT09IE9iamVjdCAmJiBzZWxmO1xuXG4vKiogVXNlZCBhcyBhIHJlZmVyZW5jZSB0byB0aGUgZ2xvYmFsIG9iamVjdC4gKi9cbnZhciByb290ID0gZnJlZUdsb2JhbCB8fCBmcmVlU2VsZiB8fCBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHJvb3Q7XG4iLCJ2YXIgYmFzZVNldFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fYmFzZVNldFRvU3RyaW5nJyksXG4gICAgc2hvcnRPdXQgPSByZXF1aXJlKCcuL19zaG9ydE91dCcpO1xuXG4vKipcbiAqIFNldHMgdGhlIGB0b1N0cmluZ2AgbWV0aG9kIG9mIGBmdW5jYCB0byByZXR1cm4gYHN0cmluZ2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIG1vZGlmeS5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IHN0cmluZyBUaGUgYHRvU3RyaW5nYCByZXN1bHQuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgYGZ1bmNgLlxuICovXG52YXIgc2V0VG9TdHJpbmcgPSBzaG9ydE91dChiYXNlU2V0VG9TdHJpbmcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHNldFRvU3RyaW5nO1xuIiwiLyoqIFVzZWQgdG8gZGV0ZWN0IGhvdCBmdW5jdGlvbnMgYnkgbnVtYmVyIG9mIGNhbGxzIHdpdGhpbiBhIHNwYW4gb2YgbWlsbGlzZWNvbmRzLiAqL1xudmFyIEhPVF9DT1VOVCA9IDgwMCxcbiAgICBIT1RfU1BBTiA9IDE2O1xuXG4vKiBCdWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcyBmb3IgdGhvc2Ugd2l0aCB0aGUgc2FtZSBuYW1lIGFzIG90aGVyIGBsb2Rhc2hgIG1ldGhvZHMuICovXG52YXIgbmF0aXZlTm93ID0gRGF0ZS5ub3c7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQnbGwgc2hvcnQgb3V0IGFuZCBpbnZva2UgYGlkZW50aXR5YCBpbnN0ZWFkXG4gKiBvZiBgZnVuY2Agd2hlbiBpdCdzIGNhbGxlZCBgSE9UX0NPVU5UYCBvciBtb3JlIHRpbWVzIGluIGBIT1RfU1BBTmBcbiAqIG1pbGxpc2Vjb25kcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gcmVzdHJpY3QuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBzaG9ydGFibGUgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIHNob3J0T3V0KGZ1bmMpIHtcbiAgdmFyIGNvdW50ID0gMCxcbiAgICAgIGxhc3RDYWxsZWQgPSAwO1xuXG4gIHJldHVybiBmdW5jdGlvbigpIHtcbiAgICB2YXIgc3RhbXAgPSBuYXRpdmVOb3coKSxcbiAgICAgICAgcmVtYWluaW5nID0gSE9UX1NQQU4gLSAoc3RhbXAgLSBsYXN0Q2FsbGVkKTtcblxuICAgIGxhc3RDYWxsZWQgPSBzdGFtcDtcbiAgICBpZiAocmVtYWluaW5nID4gMCkge1xuICAgICAgaWYgKCsrY291bnQgPj0gSE9UX0NPVU5UKSB7XG4gICAgICAgIHJldHVybiBhcmd1bWVudHNbMF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvdW50ID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIGZ1bmMuYXBwbHkodW5kZWZpbmVkLCBhcmd1bWVudHMpO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHNob3J0T3V0O1xuIiwiLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIGZ1bmNQcm90byA9IEZ1bmN0aW9uLnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gcmVzb2x2ZSB0aGUgZGVjb21waWxlZCBzb3VyY2Ugb2YgZnVuY3Rpb25zLiAqL1xudmFyIGZ1bmNUb1N0cmluZyA9IGZ1bmNQcm90by50b1N0cmluZztcblxuLyoqXG4gKiBDb252ZXJ0cyBgZnVuY2AgdG8gaXRzIHNvdXJjZSBjb2RlLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBjb252ZXJ0LlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgc291cmNlIGNvZGUuXG4gKi9cbmZ1bmN0aW9uIHRvU291cmNlKGZ1bmMpIHtcbiAgaWYgKGZ1bmMgIT0gbnVsbCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gZnVuY1RvU3RyaW5nLmNhbGwoZnVuYyk7XG4gICAgfSBjYXRjaCAoZSkge31cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIChmdW5jICsgJycpO1xuICAgIH0gY2F0Y2ggKGUpIHt9XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHRvU291cmNlO1xuIiwidmFyIGNvcHlPYmplY3QgPSByZXF1aXJlKCcuL19jb3B5T2JqZWN0JyksXG4gICAgY3JlYXRlQXNzaWduZXIgPSByZXF1aXJlKCcuL19jcmVhdGVBc3NpZ25lcicpLFxuICAgIGtleXNJbiA9IHJlcXVpcmUoJy4va2V5c0luJyk7XG5cbi8qKlxuICogVGhpcyBtZXRob2QgaXMgbGlrZSBgXy5hc3NpZ25JbmAgZXhjZXB0IHRoYXQgaXQgYWNjZXB0cyBgY3VzdG9taXplcmBcbiAqIHdoaWNoIGlzIGludm9rZWQgdG8gcHJvZHVjZSB0aGUgYXNzaWduZWQgdmFsdWVzLiBJZiBgY3VzdG9taXplcmAgcmV0dXJuc1xuICogYHVuZGVmaW5lZGAsIGFzc2lnbm1lbnQgaXMgaGFuZGxlZCBieSB0aGUgbWV0aG9kIGluc3RlYWQuIFRoZSBgY3VzdG9taXplcmBcbiAqIGlzIGludm9rZWQgd2l0aCBmaXZlIGFyZ3VtZW50czogKG9ialZhbHVlLCBzcmNWYWx1ZSwga2V5LCBvYmplY3QsIHNvdXJjZSkuXG4gKlxuICogKipOb3RlOioqIFRoaXMgbWV0aG9kIG11dGF0ZXMgYG9iamVjdGAuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGFsaWFzIGV4dGVuZFdpdGhcbiAqIEBjYXRlZ29yeSBPYmplY3RcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIGRlc3RpbmF0aW9uIG9iamVjdC5cbiAqIEBwYXJhbSB7Li4uT2JqZWN0fSBzb3VyY2VzIFRoZSBzb3VyY2Ugb2JqZWN0cy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtjdXN0b21pemVyXSBUaGUgZnVuY3Rpb24gdG8gY3VzdG9taXplIGFzc2lnbmVkIHZhbHVlcy5cbiAqIEByZXR1cm5zIHtPYmplY3R9IFJldHVybnMgYG9iamVjdGAuXG4gKiBAc2VlIF8uYXNzaWduV2l0aFxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBjdXN0b21pemVyKG9ialZhbHVlLCBzcmNWYWx1ZSkge1xuICogICByZXR1cm4gXy5pc1VuZGVmaW5lZChvYmpWYWx1ZSkgPyBzcmNWYWx1ZSA6IG9ialZhbHVlO1xuICogfVxuICpcbiAqIHZhciBkZWZhdWx0cyA9IF8ucGFydGlhbFJpZ2h0KF8uYXNzaWduSW5XaXRoLCBjdXN0b21pemVyKTtcbiAqXG4gKiBkZWZhdWx0cyh7ICdhJzogMSB9LCB7ICdiJzogMiB9LCB7ICdhJzogMyB9KTtcbiAqIC8vID0+IHsgJ2EnOiAxLCAnYic6IDIgfVxuICovXG52YXIgYXNzaWduSW5XaXRoID0gY3JlYXRlQXNzaWduZXIoZnVuY3Rpb24ob2JqZWN0LCBzb3VyY2UsIHNyY0luZGV4LCBjdXN0b21pemVyKSB7XG4gIGNvcHlPYmplY3Qoc291cmNlLCBrZXlzSW4oc291cmNlKSwgb2JqZWN0LCBjdXN0b21pemVyKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGFzc2lnbkluV2l0aDtcbiIsInZhciBhcHBseSA9IHJlcXVpcmUoJy4vX2FwcGx5JyksXG4gICAgYmFzZVJlc3QgPSByZXF1aXJlKCcuL19iYXNlUmVzdCcpLFxuICAgIGlzRXJyb3IgPSByZXF1aXJlKCcuL2lzRXJyb3InKTtcblxuLyoqXG4gKiBBdHRlbXB0cyB0byBpbnZva2UgYGZ1bmNgLCByZXR1cm5pbmcgZWl0aGVyIHRoZSByZXN1bHQgb3IgdGhlIGNhdWdodCBlcnJvclxuICogb2JqZWN0LiBBbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgYXJlIHByb3ZpZGVkIHRvIGBmdW5jYCB3aGVuIGl0J3MgaW52b2tlZC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDMuMC4wXG4gKiBAY2F0ZWdvcnkgVXRpbFxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gYXR0ZW1wdC5cbiAqIEBwYXJhbSB7Li4uKn0gW2FyZ3NdIFRoZSBhcmd1bWVudHMgdG8gaW52b2tlIGBmdW5jYCB3aXRoLlxuICogQHJldHVybnMgeyp9IFJldHVybnMgdGhlIGBmdW5jYCByZXN1bHQgb3IgZXJyb3Igb2JqZWN0LlxuICogQGV4YW1wbGVcbiAqXG4gKiAvLyBBdm9pZCB0aHJvd2luZyBlcnJvcnMgZm9yIGludmFsaWQgc2VsZWN0b3JzLlxuICogdmFyIGVsZW1lbnRzID0gXy5hdHRlbXB0KGZ1bmN0aW9uKHNlbGVjdG9yKSB7XG4gKiAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAqIH0sICc+Xz4nKTtcbiAqXG4gKiBpZiAoXy5pc0Vycm9yKGVsZW1lbnRzKSkge1xuICogICBlbGVtZW50cyA9IFtdO1xuICogfVxuICovXG52YXIgYXR0ZW1wdCA9IGJhc2VSZXN0KGZ1bmN0aW9uKGZ1bmMsIGFyZ3MpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXBwbHkoZnVuYywgdW5kZWZpbmVkLCBhcmdzKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBpc0Vycm9yKGUpID8gZSA6IG5ldyBFcnJvcihlKTtcbiAgfVxufSk7XG5cbm1vZHVsZS5leHBvcnRzID0gYXR0ZW1wdDtcbiIsIi8qKlxuICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBgdmFsdWVgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMi40LjBcbiAqIEBjYXRlZ29yeSBVdGlsXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byByZXR1cm4gZnJvbSB0aGUgbmV3IGZ1bmN0aW9uLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgY29uc3RhbnQgZnVuY3Rpb24uXG4gKiBAZXhhbXBsZVxuICpcbiAqIHZhciBvYmplY3RzID0gXy50aW1lcygyLCBfLmNvbnN0YW50KHsgJ2EnOiAxIH0pKTtcbiAqXG4gKiBjb25zb2xlLmxvZyhvYmplY3RzKTtcbiAqIC8vID0+IFt7ICdhJzogMSB9LCB7ICdhJzogMSB9XVxuICpcbiAqIGNvbnNvbGUubG9nKG9iamVjdHNbMF0gPT09IG9iamVjdHNbMV0pO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBjb25zdGFudCh2YWx1ZSkge1xuICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNvbnN0YW50O1xuIiwiLyoqXG4gKiBQZXJmb3JtcyBhXG4gKiBbYFNhbWVWYWx1ZVplcm9gXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1zYW1ldmFsdWV6ZXJvKVxuICogY29tcGFyaXNvbiBiZXR3ZWVuIHR3byB2YWx1ZXMgdG8gZGV0ZXJtaW5lIGlmIHRoZXkgYXJlIGVxdWl2YWxlbnQuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNvbXBhcmUuXG4gKiBAcGFyYW0geyp9IG90aGVyIFRoZSBvdGhlciB2YWx1ZSB0byBjb21wYXJlLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZXMgYXJlIGVxdWl2YWxlbnQsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogdmFyIG9iamVjdCA9IHsgJ2EnOiAxIH07XG4gKiB2YXIgb3RoZXIgPSB7ICdhJzogMSB9O1xuICpcbiAqIF8uZXEob2JqZWN0LCBvYmplY3QpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uZXEob2JqZWN0LCBvdGhlcik7XG4gKiAvLyA9PiBmYWxzZVxuICpcbiAqIF8uZXEoJ2EnLCAnYScpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uZXEoJ2EnLCBPYmplY3QoJ2EnKSk7XG4gKiAvLyA9PiBmYWxzZVxuICpcbiAqIF8uZXEoTmFOLCBOYU4pO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBlcSh2YWx1ZSwgb3RoZXIpIHtcbiAgcmV0dXJuIHZhbHVlID09PSBvdGhlciB8fCAodmFsdWUgIT09IHZhbHVlICYmIG90aGVyICE9PSBvdGhlcik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZXE7XG4iLCJ2YXIgZXNjYXBlSHRtbENoYXIgPSByZXF1aXJlKCcuL19lc2NhcGVIdG1sQ2hhcicpLFxuICAgIHRvU3RyaW5nID0gcmVxdWlyZSgnLi90b1N0cmluZycpO1xuXG4vKiogVXNlZCB0byBtYXRjaCBIVE1MIGVudGl0aWVzIGFuZCBIVE1MIGNoYXJhY3RlcnMuICovXG52YXIgcmVVbmVzY2FwZWRIdG1sID0gL1smPD5cIiddL2csXG4gICAgcmVIYXNVbmVzY2FwZWRIdG1sID0gUmVnRXhwKHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UpO1xuXG4vKipcbiAqIENvbnZlcnRzIHRoZSBjaGFyYWN0ZXJzIFwiJlwiLCBcIjxcIiwgXCI+XCIsICdcIicsIGFuZCBcIidcIiBpbiBgc3RyaW5nYCB0byB0aGVpclxuICogY29ycmVzcG9uZGluZyBIVE1MIGVudGl0aWVzLlxuICpcbiAqICoqTm90ZToqKiBObyBvdGhlciBjaGFyYWN0ZXJzIGFyZSBlc2NhcGVkLiBUbyBlc2NhcGUgYWRkaXRpb25hbFxuICogY2hhcmFjdGVycyB1c2UgYSB0aGlyZC1wYXJ0eSBsaWJyYXJ5IGxpa2UgW19oZV9dKGh0dHBzOi8vbXRocy5iZS9oZSkuXG4gKlxuICogVGhvdWdoIHRoZSBcIj5cIiBjaGFyYWN0ZXIgaXMgZXNjYXBlZCBmb3Igc3ltbWV0cnksIGNoYXJhY3RlcnMgbGlrZVxuICogXCI+XCIgYW5kIFwiL1wiIGRvbid0IG5lZWQgZXNjYXBpbmcgaW4gSFRNTCBhbmQgaGF2ZSBubyBzcGVjaWFsIG1lYW5pbmdcbiAqIHVubGVzcyB0aGV5J3JlIHBhcnQgb2YgYSB0YWcgb3IgdW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlLiBTZWVcbiAqIFtNYXRoaWFzIEJ5bmVucydzIGFydGljbGVdKGh0dHBzOi8vbWF0aGlhc2J5bmVucy5iZS9ub3Rlcy9hbWJpZ3VvdXMtYW1wZXJzYW5kcylcbiAqICh1bmRlciBcInNlbWktcmVsYXRlZCBmdW4gZmFjdFwiKSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFdoZW4gd29ya2luZyB3aXRoIEhUTUwgeW91IHNob3VsZCBhbHdheXNcbiAqIFtxdW90ZSBhdHRyaWJ1dGUgdmFsdWVzXShodHRwOi8vd29ua28uY29tL3Bvc3QvaHRtbC1lc2NhcGluZykgdG8gcmVkdWNlXG4gKiBYU1MgdmVjdG9ycy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBtZW1iZXJPZiBfXG4gKiBAY2F0ZWdvcnkgU3RyaW5nXG4gKiBAcGFyYW0ge3N0cmluZ30gW3N0cmluZz0nJ10gVGhlIHN0cmluZyB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBlc2NhcGVkIHN0cmluZy5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5lc2NhcGUoJ2ZyZWQsIGJhcm5leSwgJiBwZWJibGVzJyk7XG4gKiAvLyA9PiAnZnJlZCwgYmFybmV5LCAmYW1wOyBwZWJibGVzJ1xuICovXG5mdW5jdGlvbiBlc2NhcGUoc3RyaW5nKSB7XG4gIHN0cmluZyA9IHRvU3RyaW5nKHN0cmluZyk7XG4gIHJldHVybiAoc3RyaW5nICYmIHJlSGFzVW5lc2NhcGVkSHRtbC50ZXN0KHN0cmluZykpXG4gICAgPyBzdHJpbmcucmVwbGFjZShyZVVuZXNjYXBlZEh0bWwsIGVzY2FwZUh0bWxDaGFyKVxuICAgIDogc3RyaW5nO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGVzY2FwZTtcbiIsIi8qKlxuICogVGhpcyBtZXRob2QgcmV0dXJucyB0aGUgZmlyc3QgYXJndW1lbnQgaXQgcmVjZWl2ZXMuXG4gKlxuICogQHN0YXRpY1xuICogQHNpbmNlIDAuMS4wXG4gKiBAbWVtYmVyT2YgX1xuICogQGNhdGVnb3J5IFV0aWxcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgQW55IHZhbHVlLlxuICogQHJldHVybnMgeyp9IFJldHVybnMgYHZhbHVlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogdmFyIG9iamVjdCA9IHsgJ2EnOiAxIH07XG4gKlxuICogY29uc29sZS5sb2coXy5pZGVudGl0eShvYmplY3QpID09PSBvYmplY3QpO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBpZGVudGl0eSh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWU7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaWRlbnRpdHk7XG4iLCJ2YXIgYmFzZUlzQXJndW1lbnRzID0gcmVxdWlyZSgnLi9fYmFzZUlzQXJndW1lbnRzJyksXG4gICAgaXNPYmplY3RMaWtlID0gcmVxdWlyZSgnLi9pc09iamVjdExpa2UnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgcHJvcGVydHlJc0VudW1lcmFibGUgPSBvYmplY3RQcm90by5wcm9wZXJ0eUlzRW51bWVyYWJsZTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBsaWtlbHkgYW4gYGFyZ3VtZW50c2Agb2JqZWN0LlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGBhcmd1bWVudHNgIG9iamVjdCxcbiAqICBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNBcmd1bWVudHMoZnVuY3Rpb24oKSB7IHJldHVybiBhcmd1bWVudHM7IH0oKSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FyZ3VtZW50cyhbMSwgMiwgM10pO1xuICogLy8gPT4gZmFsc2VcbiAqL1xudmFyIGlzQXJndW1lbnRzID0gYmFzZUlzQXJndW1lbnRzKGZ1bmN0aW9uKCkgeyByZXR1cm4gYXJndW1lbnRzOyB9KCkpID8gYmFzZUlzQXJndW1lbnRzIDogZnVuY3Rpb24odmFsdWUpIHtcbiAgcmV0dXJuIGlzT2JqZWN0TGlrZSh2YWx1ZSkgJiYgaGFzT3duUHJvcGVydHkuY2FsbCh2YWx1ZSwgJ2NhbGxlZScpICYmXG4gICAgIXByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwodmFsdWUsICdjYWxsZWUnKTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gaXNBcmd1bWVudHM7XG4iLCIvKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGNsYXNzaWZpZWQgYXMgYW4gYEFycmF5YCBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYW4gYXJyYXksIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0FycmF5KFsxLCAyLCAzXSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5KGRvY3VtZW50LmJvZHkuY2hpbGRyZW4pO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzQXJyYXkoJ2FiYycpO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzQXJyYXkoXy5ub29wKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbnZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTtcblxubW9kdWxlLmV4cG9ydHMgPSBpc0FycmF5O1xuIiwidmFyIGlzRnVuY3Rpb24gPSByZXF1aXJlKCcuL2lzRnVuY3Rpb24nKSxcbiAgICBpc0xlbmd0aCA9IHJlcXVpcmUoJy4vaXNMZW5ndGgnKTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhcnJheS1saWtlLiBBIHZhbHVlIGlzIGNvbnNpZGVyZWQgYXJyYXktbGlrZSBpZiBpdCdzXG4gKiBub3QgYSBmdW5jdGlvbiBhbmQgaGFzIGEgYHZhbHVlLmxlbmd0aGAgdGhhdCdzIGFuIGludGVnZXIgZ3JlYXRlciB0aGFuIG9yXG4gKiBlcXVhbCB0byBgMGAgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byBgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4wLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFycmF5LWxpa2UsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0FycmF5TGlrZShbMSwgMiwgM10pO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNBcnJheUxpa2UoZG9jdW1lbnQuYm9keS5jaGlsZHJlbik7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5TGlrZSgnYWJjJyk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5TGlrZShfLm5vb3ApO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNBcnJheUxpa2UodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgaXNMZW5ndGgodmFsdWUubGVuZ3RoKSAmJiAhaXNGdW5jdGlvbih2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNBcnJheUxpa2U7XG4iLCJ2YXIgcm9vdCA9IHJlcXVpcmUoJy4vX3Jvb3QnKSxcbiAgICBzdHViRmFsc2UgPSByZXF1aXJlKCcuL3N0dWJGYWxzZScpO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYGV4cG9ydHNgLiAqL1xudmFyIGZyZWVFeHBvcnRzID0gdHlwZW9mIGV4cG9ydHMgPT0gJ29iamVjdCcgJiYgZXhwb3J0cyAmJiAhZXhwb3J0cy5ub2RlVHlwZSAmJiBleHBvcnRzO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYG1vZHVsZWAuICovXG52YXIgZnJlZU1vZHVsZSA9IGZyZWVFeHBvcnRzICYmIHR5cGVvZiBtb2R1bGUgPT0gJ29iamVjdCcgJiYgbW9kdWxlICYmICFtb2R1bGUubm9kZVR5cGUgJiYgbW9kdWxlO1xuXG4vKiogRGV0ZWN0IHRoZSBwb3B1bGFyIENvbW1vbkpTIGV4dGVuc2lvbiBgbW9kdWxlLmV4cG9ydHNgLiAqL1xudmFyIG1vZHVsZUV4cG9ydHMgPSBmcmVlTW9kdWxlICYmIGZyZWVNb2R1bGUuZXhwb3J0cyA9PT0gZnJlZUV4cG9ydHM7XG5cbi8qKiBCdWlsdC1pbiB2YWx1ZSByZWZlcmVuY2VzLiAqL1xudmFyIEJ1ZmZlciA9IG1vZHVsZUV4cG9ydHMgPyByb290LkJ1ZmZlciA6IHVuZGVmaW5lZDtcblxuLyogQnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMgZm9yIHRob3NlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBvdGhlciBgbG9kYXNoYCBtZXRob2RzLiAqL1xudmFyIG5hdGl2ZUlzQnVmZmVyID0gQnVmZmVyID8gQnVmZmVyLmlzQnVmZmVyIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgYnVmZmVyLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4zLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGEgYnVmZmVyLCBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNCdWZmZXIobmV3IEJ1ZmZlcigyKSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0J1ZmZlcihuZXcgVWludDhBcnJheSgyKSk7XG4gKiAvLyA9PiBmYWxzZVxuICovXG52YXIgaXNCdWZmZXIgPSBuYXRpdmVJc0J1ZmZlciB8fCBzdHViRmFsc2U7XG5cbm1vZHVsZS5leHBvcnRzID0gaXNCdWZmZXI7XG4iLCJ2YXIgYmFzZUdldFRhZyA9IHJlcXVpcmUoJy4vX2Jhc2VHZXRUYWcnKSxcbiAgICBpc09iamVjdExpa2UgPSByZXF1aXJlKCcuL2lzT2JqZWN0TGlrZScpLFxuICAgIGlzUGxhaW5PYmplY3QgPSByZXF1aXJlKCcuL2lzUGxhaW5PYmplY3QnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIGRvbUV4Y1RhZyA9ICdbb2JqZWN0IERPTUV4Y2VwdGlvbl0nLFxuICAgIGVycm9yVGFnID0gJ1tvYmplY3QgRXJyb3JdJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhbiBgRXJyb3JgLCBgRXZhbEVycm9yYCwgYFJhbmdlRXJyb3JgLCBgUmVmZXJlbmNlRXJyb3JgLFxuICogYFN5bnRheEVycm9yYCwgYFR5cGVFcnJvcmAsIG9yIGBVUklFcnJvcmAgb2JqZWN0LlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMy4wLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGVycm9yIG9iamVjdCwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzRXJyb3IobmV3IEVycm9yKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzRXJyb3IoRXJyb3IpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNFcnJvcih2YWx1ZSkge1xuICBpZiAoIWlzT2JqZWN0TGlrZSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHRhZyA9IGJhc2VHZXRUYWcodmFsdWUpO1xuICByZXR1cm4gdGFnID09IGVycm9yVGFnIHx8IHRhZyA9PSBkb21FeGNUYWcgfHxcbiAgICAodHlwZW9mIHZhbHVlLm1lc3NhZ2UgPT0gJ3N0cmluZycgJiYgdHlwZW9mIHZhbHVlLm5hbWUgPT0gJ3N0cmluZycgJiYgIWlzUGxhaW5PYmplY3QodmFsdWUpKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc0Vycm9yO1xuIiwidmFyIGJhc2VHZXRUYWcgPSByZXF1aXJlKCcuL19iYXNlR2V0VGFnJyksXG4gICAgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0Jyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhc3luY1RhZyA9ICdbb2JqZWN0IEFzeW5jRnVuY3Rpb25dJyxcbiAgICBmdW5jVGFnID0gJ1tvYmplY3QgRnVuY3Rpb25dJyxcbiAgICBnZW5UYWcgPSAnW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl0nLFxuICAgIHByb3h5VGFnID0gJ1tvYmplY3QgUHJveHldJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBjbGFzc2lmaWVkIGFzIGEgYEZ1bmN0aW9uYCBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSBmdW5jdGlvbiwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzRnVuY3Rpb24oXyk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0Z1bmN0aW9uKC9hYmMvKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHtcbiAgaWYgKCFpc09iamVjdCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gVGhlIHVzZSBvZiBgT2JqZWN0I3RvU3RyaW5nYCBhdm9pZHMgaXNzdWVzIHdpdGggdGhlIGB0eXBlb2ZgIG9wZXJhdG9yXG4gIC8vIGluIFNhZmFyaSA5IHdoaWNoIHJldHVybnMgJ29iamVjdCcgZm9yIHR5cGVkIGFycmF5cyBhbmQgb3RoZXIgY29uc3RydWN0b3JzLlxuICB2YXIgdGFnID0gYmFzZUdldFRhZyh2YWx1ZSk7XG4gIHJldHVybiB0YWcgPT0gZnVuY1RhZyB8fCB0YWcgPT0gZ2VuVGFnIHx8IHRhZyA9PSBhc3luY1RhZyB8fCB0YWcgPT0gcHJveHlUYWc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNGdW5jdGlvbjtcbiIsIi8qKiBVc2VkIGFzIHJlZmVyZW5jZXMgZm9yIHZhcmlvdXMgYE51bWJlcmAgY29uc3RhbnRzLiAqL1xudmFyIE1BWF9TQUZFX0lOVEVHRVIgPSA5MDA3MTk5MjU0NzQwOTkxO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgdmFsaWQgYXJyYXktbGlrZSBsZW5ndGguXG4gKlxuICogKipOb3RlOioqIFRoaXMgbWV0aG9kIGlzIGxvb3NlbHkgYmFzZWQgb25cbiAqIFtgVG9MZW5ndGhgXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy10b2xlbmd0aCkuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB2YWxpZCBsZW5ndGgsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0xlbmd0aCgzKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzTGVuZ3RoKE51bWJlci5NSU5fVkFMVUUpO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzTGVuZ3RoKEluZmluaXR5KTtcbiAqIC8vID0+IGZhbHNlXG4gKlxuICogXy5pc0xlbmd0aCgnMycpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNMZW5ndGgodmFsdWUpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PSAnbnVtYmVyJyAmJlxuICAgIHZhbHVlID4gLTEgJiYgdmFsdWUgJSAxID09IDAgJiYgdmFsdWUgPD0gTUFYX1NBRkVfSU5URUdFUjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc0xlbmd0aDtcbiIsIi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgdGhlXG4gKiBbbGFuZ3VhZ2UgdHlwZV0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLWVjbWFzY3JpcHQtbGFuZ3VhZ2UtdHlwZXMpXG4gKiBvZiBgT2JqZWN0YC4gKGUuZy4gYXJyYXlzLCBmdW5jdGlvbnMsIG9iamVjdHMsIHJlZ2V4ZXMsIGBuZXcgTnVtYmVyKDApYCwgYW5kIGBuZXcgU3RyaW5nKCcnKWApXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYW4gb2JqZWN0LCBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNPYmplY3Qoe30pO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNPYmplY3QoWzEsIDIsIDNdKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzT2JqZWN0KF8ubm9vcCk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc09iamVjdChudWxsKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbHVlKSB7XG4gIHZhciB0eXBlID0gdHlwZW9mIHZhbHVlO1xuICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiAodHlwZSA9PSAnb2JqZWN0JyB8fCB0eXBlID09ICdmdW5jdGlvbicpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGlzT2JqZWN0O1xuIiwiLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBvYmplY3QtbGlrZS4gQSB2YWx1ZSBpcyBvYmplY3QtbGlrZSBpZiBpdCdzIG5vdCBgbnVsbGBcbiAqIGFuZCBoYXMgYSBgdHlwZW9mYCByZXN1bHQgb2YgXCJvYmplY3RcIi5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDQuMC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBvYmplY3QtbGlrZSwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZSh7fSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc09iamVjdExpa2UoWzEsIDIsIDNdKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZShfLm5vb3ApO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZShudWxsKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0TGlrZSh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT0gJ29iamVjdCc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNPYmplY3RMaWtlO1xuIiwidmFyIGJhc2VHZXRUYWcgPSByZXF1aXJlKCcuL19iYXNlR2V0VGFnJyksXG4gICAgZ2V0UHJvdG90eXBlID0gcmVxdWlyZSgnLi9fZ2V0UHJvdG90eXBlJyksXG4gICAgaXNPYmplY3RMaWtlID0gcmVxdWlyZSgnLi9pc09iamVjdExpa2UnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFRhZyA9ICdbb2JqZWN0IE9iamVjdF0nO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgZnVuY1Byb3RvID0gRnVuY3Rpb24ucHJvdG90eXBlLFxuICAgIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gcmVzb2x2ZSB0aGUgZGVjb21waWxlZCBzb3VyY2Ugb2YgZnVuY3Rpb25zLiAqL1xudmFyIGZ1bmNUb1N0cmluZyA9IGZ1bmNQcm90by50b1N0cmluZztcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqIFVzZWQgdG8gaW5mZXIgdGhlIGBPYmplY3RgIGNvbnN0cnVjdG9yLiAqL1xudmFyIG9iamVjdEN0b3JTdHJpbmcgPSBmdW5jVG9TdHJpbmcuY2FsbChPYmplY3QpO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgcGxhaW4gb2JqZWN0LCB0aGF0IGlzLCBhbiBvYmplY3QgY3JlYXRlZCBieSB0aGVcbiAqIGBPYmplY3RgIGNvbnN0cnVjdG9yIG9yIG9uZSB3aXRoIGEgYFtbUHJvdG90eXBlXV1gIG9mIGBudWxsYC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDAuOC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBhIHBsYWluIG9iamVjdCwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiB9XG4gKlxuICogXy5pc1BsYWluT2JqZWN0KG5ldyBGb28pO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzUGxhaW5PYmplY3QoWzEsIDIsIDNdKTtcbiAqIC8vID0+IGZhbHNlXG4gKlxuICogXy5pc1BsYWluT2JqZWN0KHsgJ3gnOiAwLCAneSc6IDAgfSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc1BsYWluT2JqZWN0KE9iamVjdC5jcmVhdGUobnVsbCkpO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBpc1BsYWluT2JqZWN0KHZhbHVlKSB7XG4gIGlmICghaXNPYmplY3RMaWtlKHZhbHVlKSB8fCBiYXNlR2V0VGFnKHZhbHVlKSAhPSBvYmplY3RUYWcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHByb3RvID0gZ2V0UHJvdG90eXBlKHZhbHVlKTtcbiAgaWYgKHByb3RvID09PSBudWxsKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgdmFyIEN0b3IgPSBoYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3RvLCAnY29uc3RydWN0b3InKSAmJiBwcm90by5jb25zdHJ1Y3RvcjtcbiAgcmV0dXJuIHR5cGVvZiBDdG9yID09ICdmdW5jdGlvbicgJiYgQ3RvciBpbnN0YW5jZW9mIEN0b3IgJiZcbiAgICBmdW5jVG9TdHJpbmcuY2FsbChDdG9yKSA9PSBvYmplY3RDdG9yU3RyaW5nO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGlzUGxhaW5PYmplY3Q7XG4iLCJ2YXIgYmFzZUdldFRhZyA9IHJlcXVpcmUoJy4vX2Jhc2VHZXRUYWcnKSxcbiAgICBpc09iamVjdExpa2UgPSByZXF1aXJlKCcuL2lzT2JqZWN0TGlrZScpO1xuXG4vKiogYE9iamVjdCN0b1N0cmluZ2AgcmVzdWx0IHJlZmVyZW5jZXMuICovXG52YXIgc3ltYm9sVGFnID0gJ1tvYmplY3QgU3ltYm9sXSc7XG5cbi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgY2xhc3NpZmllZCBhcyBhIGBTeW1ib2xgIHByaW1pdGl2ZSBvciBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSBzeW1ib2wsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc1N5bWJvbChTeW1ib2wuaXRlcmF0b3IpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNTeW1ib2woJ2FiYycpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTeW1ib2wodmFsdWUpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PSAnc3ltYm9sJyB8fFxuICAgIChpc09iamVjdExpa2UodmFsdWUpICYmIGJhc2VHZXRUYWcodmFsdWUpID09IHN5bWJvbFRhZyk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNTeW1ib2w7XG4iLCJ2YXIgYmFzZUlzVHlwZWRBcnJheSA9IHJlcXVpcmUoJy4vX2Jhc2VJc1R5cGVkQXJyYXknKSxcbiAgICBiYXNlVW5hcnkgPSByZXF1aXJlKCcuL19iYXNlVW5hcnknKSxcbiAgICBub2RlVXRpbCA9IHJlcXVpcmUoJy4vX25vZGVVdGlsJyk7XG5cbi8qIE5vZGUuanMgaGVscGVyIHJlZmVyZW5jZXMuICovXG52YXIgbm9kZUlzVHlwZWRBcnJheSA9IG5vZGVVdGlsICYmIG5vZGVVdGlsLmlzVHlwZWRBcnJheTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBjbGFzc2lmaWVkIGFzIGEgdHlwZWQgYXJyYXkuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAzLjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB0eXBlZCBhcnJheSwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzVHlwZWRBcnJheShuZXcgVWludDhBcnJheSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc1R5cGVkQXJyYXkoW10pO1xuICogLy8gPT4gZmFsc2VcbiAqL1xudmFyIGlzVHlwZWRBcnJheSA9IG5vZGVJc1R5cGVkQXJyYXkgPyBiYXNlVW5hcnkobm9kZUlzVHlwZWRBcnJheSkgOiBiYXNlSXNUeXBlZEFycmF5O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGlzVHlwZWRBcnJheTtcbiIsInZhciBhcnJheUxpa2VLZXlzID0gcmVxdWlyZSgnLi9fYXJyYXlMaWtlS2V5cycpLFxuICAgIGJhc2VLZXlzID0gcmVxdWlyZSgnLi9fYmFzZUtleXMnKSxcbiAgICBpc0FycmF5TGlrZSA9IHJlcXVpcmUoJy4vaXNBcnJheUxpa2UnKTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuIGFycmF5IG9mIHRoZSBvd24gZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiBgb2JqZWN0YC5cbiAqXG4gKiAqKk5vdGU6KiogTm9uLW9iamVjdCB2YWx1ZXMgYXJlIGNvZXJjZWQgdG8gb2JqZWN0cy4gU2VlIHRoZVxuICogW0VTIHNwZWNdKGh0dHA6Ly9lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLW9iamVjdC5rZXlzKVxuICogZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBtZW1iZXJPZiBfXG4gKiBAY2F0ZWdvcnkgT2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiAgIHRoaXMuYiA9IDI7XG4gKiB9XG4gKlxuICogRm9vLnByb3RvdHlwZS5jID0gMztcbiAqXG4gKiBfLmtleXMobmV3IEZvbyk7XG4gKiAvLyA9PiBbJ2EnLCAnYiddIChpdGVyYXRpb24gb3JkZXIgaXMgbm90IGd1YXJhbnRlZWQpXG4gKlxuICogXy5rZXlzKCdoaScpO1xuICogLy8gPT4gWycwJywgJzEnXVxuICovXG5mdW5jdGlvbiBrZXlzKG9iamVjdCkge1xuICByZXR1cm4gaXNBcnJheUxpa2Uob2JqZWN0KSA/IGFycmF5TGlrZUtleXMob2JqZWN0KSA6IGJhc2VLZXlzKG9iamVjdCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0ga2V5cztcbiIsInZhciBhcnJheUxpa2VLZXlzID0gcmVxdWlyZSgnLi9fYXJyYXlMaWtlS2V5cycpLFxuICAgIGJhc2VLZXlzSW4gPSByZXF1aXJlKCcuL19iYXNlS2V5c0luJyksXG4gICAgaXNBcnJheUxpa2UgPSByZXF1aXJlKCcuL2lzQXJyYXlMaWtlJyk7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBvZiB0aGUgb3duIGFuZCBpbmhlcml0ZWQgZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiBgb2JqZWN0YC5cbiAqXG4gKiAqKk5vdGU6KiogTm9uLW9iamVjdCB2YWx1ZXMgYXJlIGNvZXJjZWQgdG8gb2JqZWN0cy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDMuMC4wXG4gKiBAY2F0ZWdvcnkgT2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiAgIHRoaXMuYiA9IDI7XG4gKiB9XG4gKlxuICogRm9vLnByb3RvdHlwZS5jID0gMztcbiAqXG4gKiBfLmtleXNJbihuZXcgRm9vKTtcbiAqIC8vID0+IFsnYScsICdiJywgJ2MnXSAoaXRlcmF0aW9uIG9yZGVyIGlzIG5vdCBndWFyYW50ZWVkKVxuICovXG5mdW5jdGlvbiBrZXlzSW4ob2JqZWN0KSB7XG4gIHJldHVybiBpc0FycmF5TGlrZShvYmplY3QpID8gYXJyYXlMaWtlS2V5cyhvYmplY3QsIHRydWUpIDogYmFzZUtleXNJbihvYmplY3QpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGtleXNJbjtcbiIsIi8qKlxuICogVGhpcyBtZXRob2QgcmV0dXJucyBgZmFsc2VgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4xMy4wXG4gKiBAY2F0ZWdvcnkgVXRpbFxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy50aW1lcygyLCBfLnN0dWJGYWxzZSk7XG4gKiAvLyA9PiBbZmFsc2UsIGZhbHNlXVxuICovXG5mdW5jdGlvbiBzdHViRmFsc2UoKSB7XG4gIHJldHVybiBmYWxzZTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBzdHViRmFsc2U7XG4iLCJ2YXIgYXNzaWduSW5XaXRoID0gcmVxdWlyZSgnLi9hc3NpZ25JbldpdGgnKSxcbiAgICBhdHRlbXB0ID0gcmVxdWlyZSgnLi9hdHRlbXB0JyksXG4gICAgYmFzZVZhbHVlcyA9IHJlcXVpcmUoJy4vX2Jhc2VWYWx1ZXMnKSxcbiAgICBjdXN0b21EZWZhdWx0c0Fzc2lnbkluID0gcmVxdWlyZSgnLi9fY3VzdG9tRGVmYXVsdHNBc3NpZ25JbicpLFxuICAgIGVzY2FwZVN0cmluZ0NoYXIgPSByZXF1aXJlKCcuL19lc2NhcGVTdHJpbmdDaGFyJyksXG4gICAgaXNFcnJvciA9IHJlcXVpcmUoJy4vaXNFcnJvcicpLFxuICAgIGlzSXRlcmF0ZWVDYWxsID0gcmVxdWlyZSgnLi9faXNJdGVyYXRlZUNhbGwnKSxcbiAgICBrZXlzID0gcmVxdWlyZSgnLi9rZXlzJyksXG4gICAgcmVJbnRlcnBvbGF0ZSA9IHJlcXVpcmUoJy4vX3JlSW50ZXJwb2xhdGUnKSxcbiAgICB0ZW1wbGF0ZVNldHRpbmdzID0gcmVxdWlyZSgnLi90ZW1wbGF0ZVNldHRpbmdzJyksXG4gICAgdG9TdHJpbmcgPSByZXF1aXJlKCcuL3RvU3RyaW5nJyk7XG5cbi8qKiBVc2VkIHRvIG1hdGNoIGVtcHR5IHN0cmluZyBsaXRlcmFscyBpbiBjb21waWxlZCB0ZW1wbGF0ZSBzb3VyY2UuICovXG52YXIgcmVFbXB0eVN0cmluZ0xlYWRpbmcgPSAvXFxiX19wIFxcKz0gJyc7L2csXG4gICAgcmVFbXB0eVN0cmluZ01pZGRsZSA9IC9cXGIoX19wIFxcKz0pICcnIFxcKy9nLFxuICAgIHJlRW1wdHlTdHJpbmdUcmFpbGluZyA9IC8oX19lXFwoLio/XFwpfFxcYl9fdFxcKSkgXFwrXFxuJyc7L2c7XG5cbi8qKlxuICogVXNlZCB0byBtYXRjaFxuICogW0VTIHRlbXBsYXRlIGRlbGltaXRlcnNdKGh0dHA6Ly9lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLXRlbXBsYXRlLWxpdGVyYWwtbGV4aWNhbC1jb21wb25lbnRzKS5cbiAqL1xudmFyIHJlRXNUZW1wbGF0ZSA9IC9cXCRcXHsoW15cXFxcfV0qKD86XFxcXC5bXlxcXFx9XSopKilcXH0vZztcblxuLyoqIFVzZWQgdG8gZW5zdXJlIGNhcHR1cmluZyBvcmRlciBvZiB0ZW1wbGF0ZSBkZWxpbWl0ZXJzLiAqL1xudmFyIHJlTm9NYXRjaCA9IC8oJF4pLztcblxuLyoqIFVzZWQgdG8gbWF0Y2ggdW5lc2NhcGVkIGNoYXJhY3RlcnMgaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLiAqL1xudmFyIHJlVW5lc2NhcGVkU3RyaW5nID0gL1snXFxuXFxyXFx1MjAyOFxcdTIwMjlcXFxcXS9nO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjb21waWxlZCB0ZW1wbGF0ZSBmdW5jdGlvbiB0aGF0IGNhbiBpbnRlcnBvbGF0ZSBkYXRhIHByb3BlcnRpZXNcbiAqIGluIFwiaW50ZXJwb2xhdGVcIiBkZWxpbWl0ZXJzLCBIVE1MLWVzY2FwZSBpbnRlcnBvbGF0ZWQgZGF0YSBwcm9wZXJ0aWVzIGluXG4gKiBcImVzY2FwZVwiIGRlbGltaXRlcnMsIGFuZCBleGVjdXRlIEphdmFTY3JpcHQgaW4gXCJldmFsdWF0ZVwiIGRlbGltaXRlcnMuIERhdGFcbiAqIHByb3BlcnRpZXMgbWF5IGJlIGFjY2Vzc2VkIGFzIGZyZWUgdmFyaWFibGVzIGluIHRoZSB0ZW1wbGF0ZS4gSWYgYSBzZXR0aW5nXG4gKiBvYmplY3QgaXMgZ2l2ZW4sIGl0IHRha2VzIHByZWNlZGVuY2Ugb3ZlciBgXy50ZW1wbGF0ZVNldHRpbmdzYCB2YWx1ZXMuXG4gKlxuICogKipOb3RlOioqIEluIHRoZSBkZXZlbG9wbWVudCBidWlsZCBgXy50ZW1wbGF0ZWAgdXRpbGl6ZXNcbiAqIFtzb3VyY2VVUkxzXShodHRwOi8vd3d3Lmh0bWw1cm9ja3MuY29tL2VuL3R1dG9yaWFscy9kZXZlbG9wZXJ0b29scy9zb3VyY2VtYXBzLyN0b2Mtc291cmNldXJsKVxuICogZm9yIGVhc2llciBkZWJ1Z2dpbmcuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gcHJlY29tcGlsaW5nIHRlbXBsYXRlcyBzZWVcbiAqIFtsb2Rhc2gncyBjdXN0b20gYnVpbGRzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vbG9kYXNoLmNvbS9jdXN0b20tYnVpbGRzKS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBDaHJvbWUgZXh0ZW5zaW9uIHNhbmRib3hlcyBzZWVcbiAqIFtDaHJvbWUncyBleHRlbnNpb25zIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGV2ZWxvcGVyLmNocm9tZS5jb20vZXh0ZW5zaW9ucy9zYW5kYm94aW5nRXZhbCkuXG4gKlxuICogQHN0YXRpY1xuICogQHNpbmNlIDAuMS4wXG4gKiBAbWVtYmVyT2YgX1xuICogQGNhdGVnb3J5IFN0cmluZ1xuICogQHBhcmFtIHtzdHJpbmd9IFtzdHJpbmc9JyddIFRoZSB0ZW1wbGF0ZSBzdHJpbmcuXG4gKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnM9e31dIFRoZSBvcHRpb25zIG9iamVjdC5cbiAqIEBwYXJhbSB7UmVnRXhwfSBbb3B0aW9ucy5lc2NhcGU9Xy50ZW1wbGF0ZVNldHRpbmdzLmVzY2FwZV1cbiAqICBUaGUgSFRNTCBcImVzY2FwZVwiIGRlbGltaXRlci5cbiAqIEBwYXJhbSB7UmVnRXhwfSBbb3B0aW9ucy5ldmFsdWF0ZT1fLnRlbXBsYXRlU2V0dGluZ3MuZXZhbHVhdGVdXG4gKiAgVGhlIFwiZXZhbHVhdGVcIiBkZWxpbWl0ZXIuXG4gKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnMuaW1wb3J0cz1fLnRlbXBsYXRlU2V0dGluZ3MuaW1wb3J0c11cbiAqICBBbiBvYmplY3QgdG8gaW1wb3J0IGludG8gdGhlIHRlbXBsYXRlIGFzIGZyZWUgdmFyaWFibGVzLlxuICogQHBhcmFtIHtSZWdFeHB9IFtvcHRpb25zLmludGVycG9sYXRlPV8udGVtcGxhdGVTZXR0aW5ncy5pbnRlcnBvbGF0ZV1cbiAqICBUaGUgXCJpbnRlcnBvbGF0ZVwiIGRlbGltaXRlci5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbb3B0aW9ucy5zb3VyY2VVUkw9J3RlbXBsYXRlU291cmNlc1tuXSddXG4gKiAgVGhlIHNvdXJjZVVSTCBvZiB0aGUgY29tcGlsZWQgdGVtcGxhdGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gW29wdGlvbnMudmFyaWFibGU9J29iaiddXG4gKiAgVGhlIGRhdGEgb2JqZWN0IHZhcmlhYmxlIG5hbWUuXG4gKiBAcGFyYW0tIHtPYmplY3R9IFtndWFyZF0gRW5hYmxlcyB1c2UgYXMgYW4gaXRlcmF0ZWUgZm9yIG1ldGhvZHMgbGlrZSBgXy5tYXBgLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBjb21waWxlZCB0ZW1wbGF0ZSBmdW5jdGlvbi5cbiAqIEBleGFtcGxlXG4gKlxuICogLy8gVXNlIHRoZSBcImludGVycG9sYXRlXCIgZGVsaW1pdGVyIHRvIGNyZWF0ZSBhIGNvbXBpbGVkIHRlbXBsYXRlLlxuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGVsbG8gPCU9IHVzZXIgJT4hJyk7XG4gKiBjb21waWxlZCh7ICd1c2VyJzogJ2ZyZWQnIH0pO1xuICogLy8gPT4gJ2hlbGxvIGZyZWQhJ1xuICpcbiAqIC8vIFVzZSB0aGUgSFRNTCBcImVzY2FwZVwiIGRlbGltaXRlciB0byBlc2NhcGUgZGF0YSBwcm9wZXJ0eSB2YWx1ZXMuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8Yj48JS0gdmFsdWUgJT48L2I+Jyk7XG4gKiBjb21waWxlZCh7ICd2YWx1ZSc6ICc8c2NyaXB0PicgfSk7XG4gKiAvLyA9PiAnPGI+Jmx0O3NjcmlwdCZndDs8L2I+J1xuICpcbiAqIC8vIFVzZSB0aGUgXCJldmFsdWF0ZVwiIGRlbGltaXRlciB0byBleGVjdXRlIEphdmFTY3JpcHQgYW5kIGdlbmVyYXRlIEhUTUwuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8JSBfLmZvckVhY2godXNlcnMsIGZ1bmN0aW9uKHVzZXIpIHsgJT48bGk+PCUtIHVzZXIgJT48L2xpPjwlIH0pOyAlPicpO1xuICogY29tcGlsZWQoeyAndXNlcnMnOiBbJ2ZyZWQnLCAnYmFybmV5J10gfSk7XG4gKiAvLyA9PiAnPGxpPmZyZWQ8L2xpPjxsaT5iYXJuZXk8L2xpPidcbiAqXG4gKiAvLyBVc2UgdGhlIGludGVybmFsIGBwcmludGAgZnVuY3Rpb24gaW4gXCJldmFsdWF0ZVwiIGRlbGltaXRlcnMuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8JSBwcmludChcImhlbGxvIFwiICsgdXNlcik7ICU+IScpO1xuICogY29tcGlsZWQoeyAndXNlcic6ICdiYXJuZXknIH0pO1xuICogLy8gPT4gJ2hlbGxvIGJhcm5leSEnXG4gKlxuICogLy8gVXNlIHRoZSBFUyB0ZW1wbGF0ZSBsaXRlcmFsIGRlbGltaXRlciBhcyBhbiBcImludGVycG9sYXRlXCIgZGVsaW1pdGVyLlxuICogLy8gRGlzYWJsZSBzdXBwb3J0IGJ5IHJlcGxhY2luZyB0aGUgXCJpbnRlcnBvbGF0ZVwiIGRlbGltaXRlci5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJ2hlbGxvICR7IHVzZXIgfSEnKTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXInOiAncGViYmxlcycgfSk7XG4gKiAvLyA9PiAnaGVsbG8gcGViYmxlcyEnXG4gKlxuICogLy8gVXNlIGJhY2tzbGFzaGVzIHRvIHRyZWF0IGRlbGltaXRlcnMgYXMgcGxhaW4gdGV4dC5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJzwlPSBcIlxcXFw8JS0gdmFsdWUgJVxcXFw+XCIgJT4nKTtcbiAqIGNvbXBpbGVkKHsgJ3ZhbHVlJzogJ2lnbm9yZWQnIH0pO1xuICogLy8gPT4gJzwlLSB2YWx1ZSAlPidcbiAqXG4gKiAvLyBVc2UgdGhlIGBpbXBvcnRzYCBvcHRpb24gdG8gaW1wb3J0IGBqUXVlcnlgIGFzIGBqcWAuXG4gKiB2YXIgdGV4dCA9ICc8JSBqcS5lYWNoKHVzZXJzLCBmdW5jdGlvbih1c2VyKSB7ICU+PGxpPjwlLSB1c2VyICU+PC9saT48JSB9KTsgJT4nO1xuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSh0ZXh0LCB7ICdpbXBvcnRzJzogeyAnanEnOiBqUXVlcnkgfSB9KTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXJzJzogWydmcmVkJywgJ2Jhcm5leSddIH0pO1xuICogLy8gPT4gJzxsaT5mcmVkPC9saT48bGk+YmFybmV5PC9saT4nXG4gKlxuICogLy8gVXNlIHRoZSBgc291cmNlVVJMYCBvcHRpb24gdG8gc3BlY2lmeSBhIGN1c3RvbSBzb3VyY2VVUkwgZm9yIHRoZSB0ZW1wbGF0ZS5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJ2hlbGxvIDwlPSB1c2VyICU+IScsIHsgJ3NvdXJjZVVSTCc6ICcvYmFzaWMvZ3JlZXRpbmcuanN0JyB9KTtcbiAqIGNvbXBpbGVkKGRhdGEpO1xuICogLy8gPT4gRmluZCB0aGUgc291cmNlIG9mIFwiZ3JlZXRpbmcuanN0XCIgdW5kZXIgdGhlIFNvdXJjZXMgdGFiIG9yIFJlc291cmNlcyBwYW5lbCBvZiB0aGUgd2ViIGluc3BlY3Rvci5cbiAqXG4gKiAvLyBVc2UgdGhlIGB2YXJpYWJsZWAgb3B0aW9uIHRvIGVuc3VyZSBhIHdpdGgtc3RhdGVtZW50IGlzbid0IHVzZWQgaW4gdGhlIGNvbXBpbGVkIHRlbXBsYXRlLlxuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGkgPCU9IGRhdGEudXNlciAlPiEnLCB7ICd2YXJpYWJsZSc6ICdkYXRhJyB9KTtcbiAqIGNvbXBpbGVkLnNvdXJjZTtcbiAqIC8vID0+IGZ1bmN0aW9uKGRhdGEpIHtcbiAqIC8vICAgdmFyIF9fdCwgX19wID0gJyc7XG4gKiAvLyAgIF9fcCArPSAnaGkgJyArICgoX190ID0gKCBkYXRhLnVzZXIgKSkgPT0gbnVsbCA/ICcnIDogX190KSArICchJztcbiAqIC8vICAgcmV0dXJuIF9fcDtcbiAqIC8vIH1cbiAqXG4gKiAvLyBVc2UgY3VzdG9tIHRlbXBsYXRlIGRlbGltaXRlcnMuXG4gKiBfLnRlbXBsYXRlU2V0dGluZ3MuaW50ZXJwb2xhdGUgPSAve3soW1xcc1xcU10rPyl9fS9nO1xuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGVsbG8ge3sgdXNlciB9fSEnKTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXInOiAnbXVzdGFjaGUnIH0pO1xuICogLy8gPT4gJ2hlbGxvIG11c3RhY2hlISdcbiAqXG4gKiAvLyBVc2UgdGhlIGBzb3VyY2VgIHByb3BlcnR5IHRvIGlubGluZSBjb21waWxlZCB0ZW1wbGF0ZXMgZm9yIG1lYW5pbmdmdWxcbiAqIC8vIGxpbmUgbnVtYmVycyBpbiBlcnJvciBtZXNzYWdlcyBhbmQgc3RhY2sgdHJhY2VzLlxuICogZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgJ2pzdC5qcycpLCAnXFxcbiAqICAgdmFyIEpTVCA9IHtcXFxuICogICAgIFwibWFpblwiOiAnICsgXy50ZW1wbGF0ZShtYWluVGV4dCkuc291cmNlICsgJ1xcXG4gKiAgIH07XFxcbiAqICcpO1xuICovXG5mdW5jdGlvbiB0ZW1wbGF0ZShzdHJpbmcsIG9wdGlvbnMsIGd1YXJkKSB7XG4gIC8vIEJhc2VkIG9uIEpvaG4gUmVzaWcncyBgdG1wbGAgaW1wbGVtZW50YXRpb25cbiAgLy8gKGh0dHA6Ly9lam9obi5vcmcvYmxvZy9qYXZhc2NyaXB0LW1pY3JvLXRlbXBsYXRpbmcvKVxuICAvLyBhbmQgTGF1cmEgRG9rdG9yb3ZhJ3MgZG9ULmpzIChodHRwczovL2dpdGh1Yi5jb20vb2xhZG8vZG9UKS5cbiAgdmFyIHNldHRpbmdzID0gdGVtcGxhdGVTZXR0aW5ncy5pbXBvcnRzLl8udGVtcGxhdGVTZXR0aW5ncyB8fCB0ZW1wbGF0ZVNldHRpbmdzO1xuXG4gIGlmIChndWFyZCAmJiBpc0l0ZXJhdGVlQ2FsbChzdHJpbmcsIG9wdGlvbnMsIGd1YXJkKSkge1xuICAgIG9wdGlvbnMgPSB1bmRlZmluZWQ7XG4gIH1cbiAgc3RyaW5nID0gdG9TdHJpbmcoc3RyaW5nKTtcbiAgb3B0aW9ucyA9IGFzc2lnbkluV2l0aCh7fSwgb3B0aW9ucywgc2V0dGluZ3MsIGN1c3RvbURlZmF1bHRzQXNzaWduSW4pO1xuXG4gIHZhciBpbXBvcnRzID0gYXNzaWduSW5XaXRoKHt9LCBvcHRpb25zLmltcG9ydHMsIHNldHRpbmdzLmltcG9ydHMsIGN1c3RvbURlZmF1bHRzQXNzaWduSW4pLFxuICAgICAgaW1wb3J0c0tleXMgPSBrZXlzKGltcG9ydHMpLFxuICAgICAgaW1wb3J0c1ZhbHVlcyA9IGJhc2VWYWx1ZXMoaW1wb3J0cywgaW1wb3J0c0tleXMpO1xuXG4gIHZhciBpc0VzY2FwaW5nLFxuICAgICAgaXNFdmFsdWF0aW5nLFxuICAgICAgaW5kZXggPSAwLFxuICAgICAgaW50ZXJwb2xhdGUgPSBvcHRpb25zLmludGVycG9sYXRlIHx8IHJlTm9NYXRjaCxcbiAgICAgIHNvdXJjZSA9IFwiX19wICs9ICdcIjtcblxuICAvLyBDb21waWxlIHRoZSByZWdleHAgdG8gbWF0Y2ggZWFjaCBkZWxpbWl0ZXIuXG4gIHZhciByZURlbGltaXRlcnMgPSBSZWdFeHAoXG4gICAgKG9wdGlvbnMuZXNjYXBlIHx8IHJlTm9NYXRjaCkuc291cmNlICsgJ3wnICtcbiAgICBpbnRlcnBvbGF0ZS5zb3VyY2UgKyAnfCcgK1xuICAgIChpbnRlcnBvbGF0ZSA9PT0gcmVJbnRlcnBvbGF0ZSA/IHJlRXNUZW1wbGF0ZSA6IHJlTm9NYXRjaCkuc291cmNlICsgJ3wnICtcbiAgICAob3B0aW9ucy5ldmFsdWF0ZSB8fCByZU5vTWF0Y2gpLnNvdXJjZSArICd8JCdcbiAgLCAnZycpO1xuXG4gIC8vIFVzZSBhIHNvdXJjZVVSTCBmb3IgZWFzaWVyIGRlYnVnZ2luZy5cbiAgLy8gVGhlIHNvdXJjZVVSTCBnZXRzIGluamVjdGVkIGludG8gdGhlIHNvdXJjZSB0aGF0J3MgZXZhbC1lZCwgc28gYmUgY2FyZWZ1bFxuICAvLyB3aXRoIGxvb2t1cCAoaW4gY2FzZSBvZiBlLmcuIHByb3RvdHlwZSBwb2xsdXRpb24pLCBhbmQgc3RyaXAgbmV3bGluZXMgaWYgYW55LlxuICAvLyBBIG5ld2xpbmUgd291bGRuJ3QgYmUgYSB2YWxpZCBzb3VyY2VVUkwgYW55d2F5LCBhbmQgaXQnZCBlbmFibGUgY29kZSBpbmplY3Rpb24uXG4gIHZhciBzb3VyY2VVUkwgPSBoYXNPd25Qcm9wZXJ0eS5jYWxsKG9wdGlvbnMsICdzb3VyY2VVUkwnKVxuICAgID8gKCcvLyMgc291cmNlVVJMPScgK1xuICAgICAgIChvcHRpb25zLnNvdXJjZVVSTCArICcnKS5yZXBsYWNlKC9bXFxyXFxuXS9nLCAnICcpICtcbiAgICAgICAnXFxuJylcbiAgICA6ICcnO1xuXG4gIHN0cmluZy5yZXBsYWNlKHJlRGVsaW1pdGVycywgZnVuY3Rpb24obWF0Y2gsIGVzY2FwZVZhbHVlLCBpbnRlcnBvbGF0ZVZhbHVlLCBlc1RlbXBsYXRlVmFsdWUsIGV2YWx1YXRlVmFsdWUsIG9mZnNldCkge1xuICAgIGludGVycG9sYXRlVmFsdWUgfHwgKGludGVycG9sYXRlVmFsdWUgPSBlc1RlbXBsYXRlVmFsdWUpO1xuXG4gICAgLy8gRXNjYXBlIGNoYXJhY3RlcnMgdGhhdCBjYW4ndCBiZSBpbmNsdWRlZCBpbiBzdHJpbmcgbGl0ZXJhbHMuXG4gICAgc291cmNlICs9IHN0cmluZy5zbGljZShpbmRleCwgb2Zmc2V0KS5yZXBsYWNlKHJlVW5lc2NhcGVkU3RyaW5nLCBlc2NhcGVTdHJpbmdDaGFyKTtcblxuICAgIC8vIFJlcGxhY2UgZGVsaW1pdGVycyB3aXRoIHNuaXBwZXRzLlxuICAgIGlmIChlc2NhcGVWYWx1ZSkge1xuICAgICAgaXNFc2NhcGluZyA9IHRydWU7XG4gICAgICBzb3VyY2UgKz0gXCInICtcXG5fX2UoXCIgKyBlc2NhcGVWYWx1ZSArIFwiKSArXFxuJ1wiO1xuICAgIH1cbiAgICBpZiAoZXZhbHVhdGVWYWx1ZSkge1xuICAgICAgaXNFdmFsdWF0aW5nID0gdHJ1ZTtcbiAgICAgIHNvdXJjZSArPSBcIic7XFxuXCIgKyBldmFsdWF0ZVZhbHVlICsgXCI7XFxuX19wICs9ICdcIjtcbiAgICB9XG4gICAgaWYgKGludGVycG9sYXRlVmFsdWUpIHtcbiAgICAgIHNvdXJjZSArPSBcIicgK1xcbigoX190ID0gKFwiICsgaW50ZXJwb2xhdGVWYWx1ZSArIFwiKSkgPT0gbnVsbCA/ICcnIDogX190KSArXFxuJ1wiO1xuICAgIH1cbiAgICBpbmRleCA9IG9mZnNldCArIG1hdGNoLmxlbmd0aDtcblxuICAgIC8vIFRoZSBKUyBlbmdpbmUgZW1iZWRkZWQgaW4gQWRvYmUgcHJvZHVjdHMgbmVlZHMgYG1hdGNoYCByZXR1cm5lZCBpblxuICAgIC8vIG9yZGVyIHRvIHByb2R1Y2UgdGhlIGNvcnJlY3QgYG9mZnNldGAgdmFsdWUuXG4gICAgcmV0dXJuIG1hdGNoO1xuICB9KTtcblxuICBzb3VyY2UgKz0gXCInO1xcblwiO1xuXG4gIC8vIElmIGB2YXJpYWJsZWAgaXMgbm90IHNwZWNpZmllZCB3cmFwIGEgd2l0aC1zdGF0ZW1lbnQgYXJvdW5kIHRoZSBnZW5lcmF0ZWRcbiAgLy8gY29kZSB0byBhZGQgdGhlIGRhdGEgb2JqZWN0IHRvIHRoZSB0b3Agb2YgdGhlIHNjb3BlIGNoYWluLlxuICAvLyBMaWtlIHdpdGggc291cmNlVVJMLCB3ZSB0YWtlIGNhcmUgdG8gbm90IGNoZWNrIHRoZSBvcHRpb24ncyBwcm90b3R5cGUsXG4gIC8vIGFzIHRoaXMgY29uZmlndXJhdGlvbiBpcyBhIGNvZGUgaW5qZWN0aW9uIHZlY3Rvci5cbiAgdmFyIHZhcmlhYmxlID0gaGFzT3duUHJvcGVydHkuY2FsbChvcHRpb25zLCAndmFyaWFibGUnKSAmJiBvcHRpb25zLnZhcmlhYmxlO1xuICBpZiAoIXZhcmlhYmxlKSB7XG4gICAgc291cmNlID0gJ3dpdGggKG9iaikge1xcbicgKyBzb3VyY2UgKyAnXFxufVxcbic7XG4gIH1cbiAgLy8gQ2xlYW51cCBjb2RlIGJ5IHN0cmlwcGluZyBlbXB0eSBzdHJpbmdzLlxuICBzb3VyY2UgPSAoaXNFdmFsdWF0aW5nID8gc291cmNlLnJlcGxhY2UocmVFbXB0eVN0cmluZ0xlYWRpbmcsICcnKSA6IHNvdXJjZSlcbiAgICAucmVwbGFjZShyZUVtcHR5U3RyaW5nTWlkZGxlLCAnJDEnKVxuICAgIC5yZXBsYWNlKHJlRW1wdHlTdHJpbmdUcmFpbGluZywgJyQxOycpO1xuXG4gIC8vIEZyYW1lIGNvZGUgYXMgdGhlIGZ1bmN0aW9uIGJvZHkuXG4gIHNvdXJjZSA9ICdmdW5jdGlvbignICsgKHZhcmlhYmxlIHx8ICdvYmonKSArICcpIHtcXG4nICtcbiAgICAodmFyaWFibGVcbiAgICAgID8gJydcbiAgICAgIDogJ29iaiB8fCAob2JqID0ge30pO1xcbidcbiAgICApICtcbiAgICBcInZhciBfX3QsIF9fcCA9ICcnXCIgK1xuICAgIChpc0VzY2FwaW5nXG4gICAgICAgPyAnLCBfX2UgPSBfLmVzY2FwZSdcbiAgICAgICA6ICcnXG4gICAgKSArXG4gICAgKGlzRXZhbHVhdGluZ1xuICAgICAgPyAnLCBfX2ogPSBBcnJheS5wcm90b3R5cGUuam9pbjtcXG4nICtcbiAgICAgICAgXCJmdW5jdGlvbiBwcmludCgpIHsgX19wICs9IF9fai5jYWxsKGFyZ3VtZW50cywgJycpIH1cXG5cIlxuICAgICAgOiAnO1xcbidcbiAgICApICtcbiAgICBzb3VyY2UgK1xuICAgICdyZXR1cm4gX19wXFxufSc7XG5cbiAgdmFyIHJlc3VsdCA9IGF0dGVtcHQoZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEZ1bmN0aW9uKGltcG9ydHNLZXlzLCBzb3VyY2VVUkwgKyAncmV0dXJuICcgKyBzb3VyY2UpXG4gICAgICAuYXBwbHkodW5kZWZpbmVkLCBpbXBvcnRzVmFsdWVzKTtcbiAgfSk7XG5cbiAgLy8gUHJvdmlkZSB0aGUgY29tcGlsZWQgZnVuY3Rpb24ncyBzb3VyY2UgYnkgaXRzIGB0b1N0cmluZ2AgbWV0aG9kIG9yXG4gIC8vIHRoZSBgc291cmNlYCBwcm9wZXJ0eSBhcyBhIGNvbnZlbmllbmNlIGZvciBpbmxpbmluZyBjb21waWxlZCB0ZW1wbGF0ZXMuXG4gIHJlc3VsdC5zb3VyY2UgPSBzb3VyY2U7XG4gIGlmIChpc0Vycm9yKHJlc3VsdCkpIHtcbiAgICB0aHJvdyByZXN1bHQ7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB0ZW1wbGF0ZTtcbiIsInZhciBlc2NhcGUgPSByZXF1aXJlKCcuL2VzY2FwZScpLFxuICAgIHJlRXNjYXBlID0gcmVxdWlyZSgnLi9fcmVFc2NhcGUnKSxcbiAgICByZUV2YWx1YXRlID0gcmVxdWlyZSgnLi9fcmVFdmFsdWF0ZScpLFxuICAgIHJlSW50ZXJwb2xhdGUgPSByZXF1aXJlKCcuL19yZUludGVycG9sYXRlJyk7XG5cbi8qKlxuICogQnkgZGVmYXVsdCwgdGhlIHRlbXBsYXRlIGRlbGltaXRlcnMgdXNlZCBieSBsb2Rhc2ggYXJlIGxpa2UgdGhvc2UgaW5cbiAqIGVtYmVkZGVkIFJ1YnkgKEVSQikgYXMgd2VsbCBhcyBFUzIwMTUgdGVtcGxhdGUgc3RyaW5ncy4gQ2hhbmdlIHRoZVxuICogZm9sbG93aW5nIHRlbXBsYXRlIHNldHRpbmdzIHRvIHVzZSBhbHRlcm5hdGl2ZSBkZWxpbWl0ZXJzLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAdHlwZSB7T2JqZWN0fVxuICovXG52YXIgdGVtcGxhdGVTZXR0aW5ncyA9IHtcblxuICAvKipcbiAgICogVXNlZCB0byBkZXRlY3QgYGRhdGFgIHByb3BlcnR5IHZhbHVlcyB0byBiZSBIVE1MLWVzY2FwZWQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge1JlZ0V4cH1cbiAgICovXG4gICdlc2NhcGUnOiByZUVzY2FwZSxcblxuICAvKipcbiAgICogVXNlZCB0byBkZXRlY3QgY29kZSB0byBiZSBldmFsdWF0ZWQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge1JlZ0V4cH1cbiAgICovXG4gICdldmFsdWF0ZSc6IHJlRXZhbHVhdGUsXG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gZGV0ZWN0IGBkYXRhYCBwcm9wZXJ0eSB2YWx1ZXMgdG8gaW5qZWN0LlxuICAgKlxuICAgKiBAbWVtYmVyT2YgXy50ZW1wbGF0ZVNldHRpbmdzXG4gICAqIEB0eXBlIHtSZWdFeHB9XG4gICAqL1xuICAnaW50ZXJwb2xhdGUnOiByZUludGVycG9sYXRlLFxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIHJlZmVyZW5jZSB0aGUgZGF0YSBvYmplY3QgaW4gdGhlIHRlbXBsYXRlIHRleHQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gICd2YXJpYWJsZSc6ICcnLFxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGltcG9ydCB2YXJpYWJsZXMgaW50byB0aGUgY29tcGlsZWQgdGVtcGxhdGUuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge09iamVjdH1cbiAgICovXG4gICdpbXBvcnRzJzoge1xuXG4gICAgLyoqXG4gICAgICogQSByZWZlcmVuY2UgdG8gdGhlIGBsb2Rhc2hgIGZ1bmN0aW9uLlxuICAgICAqXG4gICAgICogQG1lbWJlck9mIF8udGVtcGxhdGVTZXR0aW5ncy5pbXBvcnRzXG4gICAgICogQHR5cGUge0Z1bmN0aW9ufVxuICAgICAqL1xuICAgICdfJzogeyAnZXNjYXBlJzogZXNjYXBlIH1cbiAgfVxufTtcblxubW9kdWxlLmV4cG9ydHMgPSB0ZW1wbGF0ZVNldHRpbmdzO1xuIiwidmFyIGJhc2VUb1N0cmluZyA9IHJlcXVpcmUoJy4vX2Jhc2VUb1N0cmluZycpO1xuXG4vKipcbiAqIENvbnZlcnRzIGB2YWx1ZWAgdG8gYSBzdHJpbmcuIEFuIGVtcHR5IHN0cmluZyBpcyByZXR1cm5lZCBmb3IgYG51bGxgXG4gKiBhbmQgYHVuZGVmaW5lZGAgdmFsdWVzLiBUaGUgc2lnbiBvZiBgLTBgIGlzIHByZXNlcnZlZC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDQuMC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIHtzdHJpbmd9IFJldHVybnMgdGhlIGNvbnZlcnRlZCBzdHJpbmcuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8udG9TdHJpbmcobnVsbCk7XG4gKiAvLyA9PiAnJ1xuICpcbiAqIF8udG9TdHJpbmcoLTApO1xuICogLy8gPT4gJy0wJ1xuICpcbiAqIF8udG9TdHJpbmcoWzEsIDIsIDNdKTtcbiAqIC8vID0+ICcxLDIsMydcbiAqL1xuZnVuY3Rpb24gdG9TdHJpbmcodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlID09IG51bGwgPyAnJyA6IGJhc2VUb1N0cmluZyh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gdG9TdHJpbmc7XG4iLCJtb2R1bGUuZXhwb3J0cyA9IFwiLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBHZW5lcmljIFN0eWxlc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG5hZy1ncmlkLCBhZy1ncmlkLWFuZ3VsYXIsIGFnLWdyaWQtbmcyLCBhZy1ncmlkLXBvbHltZXIsIGFnLWdyaWQtYXVyZWxpYSB7XFxuICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1oaWRkZW4ge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XFxuXFxuLmFnLWludmlzaWJsZSB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsgfVxcblxcbi5hZy1mYWRlZCB7XFxuICBvcGFjaXR5OiAwLjM7IH1cXG5cXG4uYWctd2lkdGgtaGFsZiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7IH1cXG5cXG4uYWctdW5zZWxlY3RhYmxlIHtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDsgfVxcblxcbi5hZy1zZWxlY3RhYmxlIHtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDtcXG4gIC1tcy11c2VyLXNlbGVjdDogdGV4dCAhaW1wb3J0YW50O1xcbiAgdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDsgfVxcblxcbi5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgZmxleDogMSAxIGF1dG87XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1zaGFrZS1sZWZ0LXRvLXJpZ2h0IHtcXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMnM7XFxuICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XFxuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhZy1zaGFrZS1sZWZ0LXRvLXJpZ2h0O1xcbiAgYW5pbWF0aW9uLW5hbWU6IGFnLXNoYWtlLWxlZnQtdG8tcmlnaHQ7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgYWctc2hha2UtbGVmdC10by1yaWdodCB7XFxuICBmcm9tIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgdG8ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDJweDtcXG4gICAgcGFkZGluZy1yaWdodDogNnB4OyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIGFnLXNoYWtlLWxlZnQtdG8tcmlnaHQge1xcbiAgZnJvbSB7XFxuICAgIHBhZGRpbmctbGVmdDogNnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIHRvIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfSB9XFxuXFxuLmFnLXJvb3Qtd3JhcHBlciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gIC5hZy1yb290LXdyYXBwZXIuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLXJvb3Qtd3JhcHBlciAuYWctd2F0ZXJtYXJrIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBib3R0b206IDEwcHg7XFxuICAgIHJpZ2h0OiAyNXB4O1xcbiAgICBvcGFjaXR5OiAwLjU7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dCAzcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dCAzczsgfVxcbiAgICAuYWctcm9vdC13cmFwcGVyIC5hZy13YXRlcm1hcms6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiAnJztcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpVlZSR0xUZ2lQejRLUEhOMlp5QjNhV1IwYUQwaU5EazBjSGdpSUdobGFXZG9kRDBpTWpNNWNIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBME9UUWdNak01SWlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaVBnb2dJQ0FnUENFdExTQkhaVzVsY21GMGIzSTZJRk5yWlhSamFDQTBOeTR4SUNnME5UUXlNaWtnTFNCb2RIUndPaTh2ZDNkM0xtSnZhR1Z0YVdGdVkyOWthVzVuTG1OdmJTOXphMlYwWTJnZ0xTMCtDaUFnSUNBOGRHbDBiR1UrVEc5bmJ6d3ZkR2wwYkdVK0NpQWdJQ0E4WkdWell6NURjbVZoZEdWa0lIZHBkR2dnVTJ0bGRHTm9Mand2WkdWell6NEtJQ0FnSUR4a1pXWnpQZ29nSUNBZ0lDQWdJRHh3WVhSb0lHUTlJazB3TGpZeE1qZzBPVGt6TVN3eE1EZ2dUREF1TmpFeU9EUTVPVE14TERZM0xqUTFPVFl6TnpRZ1REQXVOakV5T0RRNU9UTXhMRFkzTGpRMU9UWXpOelFnUXpBdU5qRXlPRFE1T1RNeExEWXlMakV3TURZMU16WWdNeTQwTnpFNE16TTNPQ3cxTnk0eE5EZzNORGd6SURndU1URXlPRFE1T1RNc05UUXVORFk1TWpVMk5DQk1PVGd1TXpBMk5ESTFMREl1TXprMU9UY3hOVGNnVERrNExqTXdOalF5TlN3eUxqTTVOVGszTVRVM0lFTXhNREl1T1RRM05EUXhMQzB3TGpJNE16VXlNRE0xT0NBeE1EZ3VOalkxTkRBNUxDMHdMakk0TXpVeU1ETTFPQ0F4TVRNdU16QTJOREkxTERJdU16azFPVGN4TlRjZ1RERXhNeTR6TURZME1qVXNNaTR6T1RVNU56RTFOeUJNTWpBekxqVXNOVFF1TkRZNU1qVTJOQ0JNTWpBekxqVXNOVFF1TkRZNU1qVTJOQ0JETWpBNExqRTBNVEF4Tml3MU55NHhORGczTkRneklESXhNU3cyTWk0eE1EQTJOVE0ySURJeE1TdzJOeTQwTlRrMk16YzBJRXd5TVRFc01UTTRJRXd4T0RFc01UTTRJRXd4T0RBdU9UazNNRFF4TERrekxqazVPVGs1T1RnZ1RERTRNQzQ1T1RZd016SXNPVE11T1RrNU9UazVPU0JETVRnd0xqazVOVFEzTlN3NE5TNDNNVFl4TWpJMklERTNOQzR5TnprNU1Ea3NOemt1TURBeE1EQTROeUF4TmpVdU9UazJNRE15TERjNUxqQXdNVEF3T0RjZ1RERXlNaXczT0M0NU9UazVPVGs1SUVNeE1UTXVOekUxTnpJNUxEYzRMams1T1RrNU9Ua2dNVEEzTERnMUxqY3hOVGN5T0RZZ01UQTNMRGt6TGprNU9UazVPVGtnVERFd055d3hNell1TURFMU5qSXpJRXd4TURjc01UTTJMakF4TlRZeU15QkRNVEEzTERFME5DNHlPVGs0T1RVZ01URXpMamN4TlRjeU9Td3hOVEV1TURFMU5qSXpJREV5TWl3eE5URXVNREUxTmpJeklFd3hOamdzTVRVeExqQXhOVFl5TXlCTU1UWTRMREUyTXlCRE1UWTRMREUyTkM0Mk5UWTROVFFnTVRZMkxqWTFOamcxTkN3eE5qWWdNVFkxTERFMk5pQk1NVEl3TERFMk5pQk1NVEl3TERFM09TQk1NVFkxTGprNU5qQXpNaXd4TnprZ1RERTJOUzQ1T1RZd016SXNNVGM0TGprNU56ZzNOeUJETVRjMExqSTNPVFEzTkN3eE56Z3VPVGszT0RjM0lERTRNQzQ1T1RRNE5pd3hOekl1TWpnek5EUXlJREU0TUM0NU9UWXdNeklzTVRZMElFd3hPREVzTVRVd0xqazJNRFUxTkNCTU1qRXhMREUxTUM0NU5qQTFOVFFnVERJeE1Td3hOekV1TmpBMk1qQTNJRXd5TVRFc01UY3hMall3TmpJd055QkRNakV4TERFM05pNDVOalV4T1RFZ01qQTRMakUwTVRBeE5pd3hPREV1T1RFM01EazJJREl3TXk0MUxERTROQzQxT1RZMU9EZ2dUREV4TXk0ek1EWTBNalVzTWpNMkxqWTJPVGczTXlCTU1URXpMak13TmpReU5Td3lNell1TmpZNU9EY3pJRU14TURndU5qWTFOREE1TERJek9TNHpORGt6TmpVZ01UQXlMamswTnpRME1Td3lNemt1TXpRNU16WTFJRGs0TGpNd05qUXlOU3d5TXpZdU5qWTVPRGN6SUV3NExqRXhNamcwT1RrekxERTROQzQxT1RZMU9EZ2dURGd1TVRFeU9EUTVPVE1zTVRnMExqVTVOalU0T0NCRE15NDBOekU0TXpNM09Dd3hPREV1T1RFM01EazJJREF1TmpFeU9EUTVPVE14TERFM05pNDVOalV4T1RFZ01DNDJNVEk0TkRrNU16RXNNVGN4TGpZd05qSXdOeUJNTUM0Mk1USTRORGs1TXpFc01USXhJRXd5Tnl3eE1qRWdUREkzTERFek5pQkRNamNzTVRRMExqSTROREkzTVNBek15NDNNVFUzTWpnM0xERTFNU0EwTWl3eE5URWdURFF5TERFMU1TQk1NVEF3TERFMU1TQk1NVEF3TERrMElFTXhNREFzT0RVdU56RTFOekk0T0NBNU15NHlPRFF5TnpFeUxEYzVJRGcxTERjNUlFd3lOeXczT1NCTU1qY3NPVElnVERnMExEa3lJRU00TlM0Mk5UWTROVFF5TERreUlEZzNMRGt6TGpNME16RTBOVGdnT0Rjc09UVWdURGczTERrMUlFdzROeXd4TURnZ1REQXVOakV5T0RRNU9UTXhMREV3T0NCYUlpQnBaRDBpY0dGMGFDMHhJajQ4TDNCaGRHZytDaUFnSUNBOEwyUmxabk0rQ2lBZ0lDQThaeUJwWkQwaVUzbHRZbTlzY3lJZ2MzUnliMnRsUFNKdWIyNWxJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqRWlJR1pwYkd3OUltNXZibVVpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJK0NpQWdJQ0FnSUNBZ1BHY2dhV1E5SWt4dloyOGlQZ29nSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk5EYzNMRFUxSUV3ME9UUXNOVFVnVERRNU5Dd3hOVEVnVERRek5Td3hOVEVnUXpReU5pNDNNVFUzTWprc01UVXhJRFF5TUN3eE5EUXVNamcwTWpjeElEUXlNQ3d4TXpZZ1REUXlNQ3c1TmlCRE5ESXdMRGczTGpjeE5UY3lPRGdnTkRJMkxqY3hOVGN5T1N3NE1TQTBNelVzT0RFZ1REUXpOU3c0TVNCTU5EYzNMRGd4SUV3ME56Y3NOVFVnV2lCTk5EUXdMRGs0SUVNME16Z3VNelF6TVRRMkxEazRJRFF6Tnl3NU9TNHpORE14TkRVNElEUXpOeXd4TURFZ1REUXpOeXd4TXpFZ1F6UXpOeXd4TXpJdU5qVTJPRFUwSURRek9DNHpORE14TkRZc01UTTBJRFEwTUN3eE16UWdURFEzTnl3eE16UWdURFEzTnl3NU9DQk1ORFF3TERrNElGb2lJR2xrUFNKa0lpQm1hV3hzUFNJalJrWkdSa1pHSWo0OEwzQmhkR2crQ2lBZ0lDQWdJQ0FnSUNBZ0lEeG5JR2xrUFNKcElpQjBjbUZ1YzJadmNtMDlJblJ5WVc1emJHRjBaU2d6T1RZdU1EQXdNREF3TENBMU5TNHdNREF3TURBcElqNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHdiMng1WjI5dUlHbGtQU0pRWVhSb0xUWWlJR1pwYkd3OUlpTkdSa1pHUmtZaUlIQnZhVzUwY3owaU1DQXlOaUF4TnlBeU5pQXhOeUE1TmlBd0lEazJJajQ4TDNCdmJIbG5iMjQrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4Y0c5c2VXZHZiaUJwWkQwaVVHRjBhQzAzSWlCbWFXeHNQU0lqUlRFeFJqSXlJaUJ3YjJsdWRITTlJakFnTVM0eE16WTROamd6T0dVdE1UTWdNVGNnTVM0eE16WTROamd6T0dVdE1UTWdNVGNnTVRjZ01DQXhOeUkrUEM5d2IyeDVaMjl1UGdvZ0lDQWdJQ0FnSUNBZ0lDQThMMmMrQ2lBZ0lDQWdJQ0FnSUNBZ0lEeHdZWFJvSUdROUlrMHpNekVzTVRVeElFd3pORGdzTVRVeElFd3pORGdzTVRBeElFd3pORGdzTVRBeElFTXpORGdzT1RrdU16UXpNVFExT0NBek5Ea3VNelF6TVRRMkxEazRJRE0xTVN3NU9DQk1Nemc1TERrNElFd3pPRGtzT0RFZ1RETTBOaXc0TVNCTU16UTJMRGd4SUVNek16Y3VOekUxTnpJNUxEZ3hJRE16TVN3NE55NDNNVFUzTWpnNElETXpNU3c1TmlCTU16TXhMREUxTVNCYUlpQnBaRDBpY2lJZ1ptbHNiRDBpSTBaR1JrWkdSaUkrUEM5d1lYUm9QZ29nSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk16STBMRGcySUV3ek1qUXNOellnVERNeU5DdzNOaUJETXpJMExEWTNMamN4TlRjeU9EZ2dNekUzTGpJNE5ESTNNU3cyTVNBek1Ea3NOakVnVERJME9TdzJNU0JNTWpRNUxEWXhJRU15TkRBdU56RTFOekk1TERZeElESXpOQ3cyTnk0M01UVTNNamc0SURJek5DdzNOaUJNTWpNMExERXpOaUJNTWpNMExERXpOaUJETWpNMExERTBOQzR5T0RReU56RWdNalF3TGpjeE5UY3lPU3d4TlRFZ01qUTVMREUxTVNCTU16QTVMREUxTVNCTU16QTVMREUxTVNCRE16RTNMakk0TkRJM01Td3hOVEVnTXpJMExERTBOQzR5T0RReU56RWdNekkwTERFek5pQk1NekkwTERFd01DQk1NamczTERFd01DQk1NamczTERFeE55Qk1NekEzTERFeE55Qk1NekEzTERFek1TQk1NekEzTERFek1TQkRNekEzTERFek1pNDJOVFk0TlRRZ016QTFMalkxTmpnMU5Dd3hNelFnTXpBMExERXpOQ0JNTWpVMExERXpOQ0JNTWpVMExERXpOQ0JETWpVeUxqTTBNekUwTml3eE16UWdNalV4TERFek1pNDJOVFk0TlRRZ01qVXhMREV6TVNCTU1qVXhMRGd4SUV3eU5URXNPREVnUXpJMU1TdzNPUzR6TkRNeE5EVTRJREkxTWk0ek5ETXhORFlzTnpnZ01qVTBMRGM0SUV3ek1EUXNOemdnVERNd05DdzNPQ0JETXpBMUxqWTFOamcxTkN3M09DQXpNRGNzTnprdU16UXpNVFExT0NBek1EY3NPREVnVERNd055dzROaUJNTXpJMExEZzJJRm9pSUdsa1BTSkhJaUJtYVd4c1BTSWpSa1pHUmtaR0lqNDhMM0JoZEdnK0NpQWdJQ0FnSUNBZ0lDQWdJRHhuSUdsa1BTSmhaeUkrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4WnlCcFpEMGlRMjl0WW1sdVpXUXRVMmhoY0dVaVBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHh0WVhOcklHbGtQU0p0WVhOckxUSWlJR1pwYkd3OUluZG9hWFJsSWo0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhWelpTQjRiR2x1YXpwb2NtVm1QU0lqY0dGMGFDMHhJajQ4TDNWelpUNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4TDIxaGMycytDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhWelpTQm1hV3hzUFNJalJURXhSakl5SWlCNGJHbHVhenBvY21WbVBTSWpjR0YwYUMweElqNDhMM1Z6WlQ0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHlaV04wSUdsa1BTSm5JaUJtYVd4c1BTSWpSVEV4UmpJeUlpQjRQU0l4TWpBaUlIazlJamt5SWlCM2FXUjBhRDBpTkRnaUlHaGxhV2RvZEQwaU5EWWlJSEo0UFNJeklqNDhMM0psWTNRK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk5EQXNNVEl4SUV3NE55d3hNakVnVERnM0xERXpPQ0JNTkRNc01UTTRJRXcwTXl3eE16Z2dRelF4TGpNME16RTBOVGdzTVRNNElEUXdMREV6Tmk0Mk5UWTROVFFnTkRBc01UTTFJRXcwTUN3eE1qRWdXaUlnYVdROUlrTnZiV0pwYm1Wa0xWTm9ZWEJsSWlCbWFXeHNQU0lqUlRFeFJqSXlJajQ4TDNCaGRHZytDaUFnSUNBZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUNBZ0lDQThMMmMrQ2lBZ0lDQThMMmMrQ2p3dmMzWm5QZz09KTtcXG4gICAgICAtd2Via2l0LWZpbHRlcjogaW52ZXJ0KDUwJSk7XFxuICAgICAgZmlsdGVyOiBpbnZlcnQoNTAlKTtcXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTEwcHggNjBweDtcXG4gICAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgICBoZWlnaHQ6IDYwcHg7XFxuICAgICAgd2lkdGg6IDExMHB4OyB9XFxuICAgIC5hZy1yb290LXdyYXBwZXIgLmFnLXdhdGVybWFyayAuYWctd2F0ZXJtYXJrLXRleHQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBmb250LWZhbWlseTogSW1wYWN0O1xcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfVxcblxcbi5hZy1yb290LXdyYXBwZXItYm9keSB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XFxuICAuYWctcm9vdC13cmFwcGVyLWJvZHkuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIGhlaWdodDogMDtcXG4gICAgbWluLWhlaWdodDogMDsgfVxcblxcbi5hZy1yb290IHtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XFxuICAuYWctcm9vdC5hZy1sYXlvdXQtbm9ybWFsLCAuYWctcm9vdC5hZy1sYXlvdXQtYXV0by1oZWlnaHQge1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB3aWR0aDogMDsgfVxcbiAgLmFnLXJvb3QuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogVmlld3BvcnRzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1oZWFkZXItdmlld3BvcnQsXFxuLmFnLWZsb2F0aW5nLXRvcC12aWV3cG9ydCxcXG4uYWctYm9keS12aWV3cG9ydCxcXG4uYWctcGlubmVkLWxlZnQtY29scy12aWV3cG9ydCxcXG4uYWctY2VudGVyLWNvbHMtdmlld3BvcnQsXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLXZpZXdwb3J0LFxcbi5hZy1mbG9hdGluZy1ib3R0b20tdmlld3BvcnQsXFxuLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwtdmlld3BvcnQsXFxuLmFnLXZpcnR1YWwtbGlzdC12aWV3cG9ydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgZmxleDogMSAxIGF1dG87IH1cXG5cXG4uYWctYm9keS12aWV3cG9ydCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQ6bm90KC5hZy1sYXlvdXQtcHJpbnQpLmFnLWZvcmNlLXZlcnRpY2FsLXNjcm9sbCB7XFxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxcblxcbi5hZy1waW5uZWQtbGVmdC1jb2xzLXZpZXdwb3J0LCAuYWctcGlubmVkLXJpZ2h0LWNvbHMtdmlld3BvcnQge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLWNlbnRlci1jb2xzLXZpZXdwb3J0IHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLXZpZXdwb3J0IHtcXG4gIG92ZXJmbG93LXg6IHNjcm9sbDsgfVxcblxcbi5hZy12aXJ0dWFsLWxpc3Qtdmlld3BvcnQge1xcbiAgb3ZlcmZsb3c6IGF1dG87XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQ29udGFpbmVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctaGVhZGVyLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctdG9wLWNvbnRhaW5lcixcXG4uYWctYm9keS1jb250YWluZXIsXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLWNvbnRhaW5lcixcXG4uYWctY2VudGVyLWNvbHMtY29udGFpbmVyLFxcbi5hZy1waW5uZWQtbGVmdC1jb2xzLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctYm90dG9tLWNvbnRhaW5lcixcXG4uYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbC1jb250YWluZXIsXFxuLmFnLWZ1bGwtd2lkdGgtY29udGFpbmVyLFxcbi5hZy1mbG9hdGluZy1ib3R0b20tZnVsbC13aWR0aC1jb250YWluZXIsXFxuLmFnLXZpcnR1YWwtbGlzdC1jb250YWluZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWhlYWRlci1jb250YWluZXIsIC5hZy1mbG9hdGluZy10b3AtY29udGFpbmVyLCAuYWctZmxvYXRpbmctYm90dG9tLWNvbnRhaW5lciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLWJvZHktdmlld3BvcnQgLmFnLWNlbnRlci1jb2xzLWNsaXBwZXIge1xcbiAgbWluLWhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1ib2R5LXZpZXdwb3J0LmFnLWxheW91dC1hdXRvLWhlaWdodCAuYWctY2VudGVyLWNvbHMtY2xpcHBlciwgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LWF1dG8taGVpZ2h0IC5hZy1jZW50ZXItY29scy1jb250YWluZXIge1xcbiAgbWluLWhlaWdodDogNTBweDsgfVxcblxcbi5hZy1ib2R5LXZpZXdwb3J0IC5hZy1jZW50ZXItY29scy1jb250YWluZXIge1xcbiAgZGlzcGxheTogYmxvY2s7IH1cXG5cXG4uYWctYm9keS12aWV3cG9ydC5hZy1sYXlvdXQtcHJpbnQge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LXByaW50IC5hZy1jZW50ZXItY29scy1jbGlwcGVyIHtcXG4gICAgbWluLXdpZHRoOiAxMDAlOyB9XFxuXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLWNvbnRhaW5lciB7XFxuICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLWNvbnRhaW5lciB7XFxuICBoZWlnaHQ6IDEwMCU7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1jb250YWluZXIsXFxuLmFnLWZsb2F0aW5nLXRvcC1mdWxsLXdpZHRoLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctYm90dG9tLWZ1bGwtd2lkdGgtY29udGFpbmVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMHB4O1xcbiAgbGVmdDogMHB4O1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1jb250YWluZXIge1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctZmxvYXRpbmctYm90dG9tLWZ1bGwtd2lkdGgtY29udGFpbmVyLCAuYWctZmxvYXRpbmctdG9wLWZ1bGwtd2lkdGgtY29udGFpbmVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy12aXJ0dWFsLWxpc3QtY29udGFpbmVyIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFNjcm9sbGVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctY2VudGVyLWNvbHMtY2xpcHBlciB7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDE7XFxuICBmbGV4OiAxO1xcbiAgbWluLXdpZHRoOiAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsIHtcXG4gIG1pbi1oZWlnaHQ6IDA7XFxuICBtaW4td2lkdGg6IDA7XFxuICB3aWR0aDogMTAwJTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWxheW91dC1wcmludCAuYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbCB7XFxuICBkaXNwbGF5OiBub25lOyB9XFxuXFxuLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIsIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtaW4td2lkdGg6IDA7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxMDAwO1xcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDEwMDA7XFxuICBmbGV4LWdyb3c6IDEwMDA7XFxuICBvdmVyZmxvdy14OiBzY3JvbGw7IH1cXG4gIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciwgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogSGVhZGVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctaGVhZGVyLCAuYWctcGlubmVkLWxlZnQtaGVhZGVyLCAuYWctcGlubmVkLXJpZ2h0LWhlYWRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1zb3J0YWJsZSwgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciAuYWctaGVhZGVyLWNlbGwtc29ydGFibGUsIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1zb3J0YWJsZSB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcbi5hZy1oZWFkZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICB3aWR0aDogMTAwJTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctaGVhZGVyLWljb24ge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7IH1cXG5cXG4uYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1oZWFkZXItcm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG5cXG4uYWctaGVhZGVyLW92ZXJsYXkge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cXG5cXG4uYWctaGVhZGVyLWNlbGwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcblxcbi5hZy1oZWFkZXItZ3JvdXAtY2VsbC1sYWJlbCwgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItY2VsbC10ZXh0IHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cXG5cXG4uYWctaGVhZGVyLWdyb3VwLXRleHQge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcblxcbi5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogMTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHdpZHRoOiA0cHg7IH1cXG5cXG4uYWctaGVhZGVyLWV4cGFuZC1pY29uIHtcXG4gIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuXFxuLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIENvbHVtbnNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWNvbHVtbi1tb3ZpbmcgLmFnLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnM7IH1cXG5cXG4uYWctY29sdW1uLW1vdmluZyAuYWctaGVhZGVyLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnM7IH1cXG5cXG4uYWctY29sdW1uLW1vdmluZyAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnMsIHdpZHRoIDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnMsIHdpZHRoIDAuMnM7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIENvbHVtbiBQYW5lbFxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctY29sdW1uLXBhbmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAtbXMtZmxleDogMSAxIGF1dG87XFxuICBmbGV4OiAxIDEgYXV0bzsgfVxcblxcbi5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDQ7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogNDtcXG4gIGZsZXgtZ3JvdzogNDtcXG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAxO1xcbiAgZmxleC1zaHJpbms6IDE7XFxuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcXG4gIGZsZXgtYmFzaXM6IDA7IH1cXG4gIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgZmxleDogbm9uZTsgfVxcbiAgICAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgICAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWZpbHRlci13cmFwcGVyIHtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgICAgIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIgaW5wdXQge1xcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIG92ZXJmbG93OiBhdXRvOyB9XFxuXFxuLmFnLWNvbHVtbi1kcm9wIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgb3ZlcmZsb3c6IGF1dG87XFxuICB3aWR0aDogMTAwJTsgfVxcbiAgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAgIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC10ZXh0IHtcXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctY29sdW1uLWRyb3AuYWctY29sdW1uLWRyb3AtdmVydGljYWwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgMHB4O1xcbiAgZmxleDogMSAxIDA7XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcXG4gIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cXG4gIC5hZy1jb2x1bW4tZHJvcC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IGRpdiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWNvbHVtbi1kcm9wLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XFxuICAgIGZsZXgtZ3JvdzogMTtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBvdmVyZmxvdy14OiBhdXRvOyB9XFxuICAuYWctY29sdW1uLWRyb3AuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1jb2x1bW4tZHJvcC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBSb3dzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1yb3ctYW5pbWF0aW9uIC5hZy1yb3cge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC40cywgaGVpZ2h0IDAuNHMsIGJhY2tncm91bmQtY29sb3IgMC4xcywgb3BhY2l0eSAwLjJzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjRzO1xcbiAgdHJhbnNpdGlvbjogdG9wIDAuNHMsIGhlaWdodCAwLjRzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMsIG9wYWNpdHkgMC4ycywgLXdlYmtpdC10cmFuc2Zvcm0gMC40cztcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzLCB0b3AgMC40cywgaGVpZ2h0IDAuNHMsIGJhY2tncm91bmQtY29sb3IgMC4xcywgb3BhY2l0eSAwLjJzO1xcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMsIHRvcCAwLjRzLCBoZWlnaHQgMC40cywgYmFja2dyb3VuZC1jb2xvciAwLjFzLCBvcGFjaXR5IDAuMnMsIC13ZWJraXQtdHJhbnNmb3JtIDAuNHM7IH1cXG5cXG4uYWctcm93LW5vLWFuaW1hdGlvbiAuYWctcm93IHtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuXFxuLmFnLXJvdyB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctcm93LXBvc2l0aW9uLWFic29sdXRlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxcblxcbi5hZy1yb3ctcG9zaXRpb24tcmVsYXRpdmUge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWZ1bGwtd2lkdGgtcm93IHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb2ludGVyLWV2ZW50czogYWxsOyB9XFxuXFxuLmFnLXJvdy1pbmxpbmUtZWRpdGluZyB7XFxuICB6LWluZGV4OiAxOyB9XFxuXFxuLmFnLXJvdy1kcmFnZ2luZyB7XFxuICB6LWluZGV4OiAyOyB9XFxuXFxuLmFnLXN0dWItY2VsbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQ2VsbHNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWNlbGwge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcblxcbi5hZy1jZWxsLXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLWNlbGwtd3JhcHBlci5hZy1yb3ctZ3JvdXAge1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy1jZWxsLXdyYXBwZXIgLmFnLWNlbGwtdmFsdWUsIC5hZy1jZWxsLXdyYXBwZXIgLmFnLWdyb3VwLXZhbHVlIHtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1yb3cuYWctcm93LWdyb3VwIC5hZy1jZWxsLXdyYXBwZXIge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuXFxuLmFnLWNlbGwtd2l0aC1oZWlnaHQge1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWdyb3VwLWNlbGwtZW50aXJlLXJvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctZm9vdGVyLWNlbGwtZW50aXJlLXJvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICB6LWluZGV4OiAxOyB9XFxuICAuYWctY2VsbC1pbmxpbmUtZWRpdGluZyAuYWctY2VsbC1lZGl0LWlucHV0LCAuYWctY2VsbC1pbmxpbmUtZWRpdGluZyAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIEZpbHRlcnNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLWZpbHRlciAuYWctZmlsdGVyLWNoZWNrYm94IHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuXFxuLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxcblxcbi5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBGbG9hdGluZyBGaWx0ZXJcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1mdWxsLWJvZHkgLmFnLXJlYWN0LWNvbnRhaW5lciwgLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IC5hZy1yZWFjdC1jb250YWluZXIge1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuICAuYWctZmxvYXRpbmctZmlsdGVyLWJvZHkgaW5wdXQge1xcbiAgICBtYXJnaW46IDA7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7IH1cXG5cXG4uYWctZmxvYXRpbmctZmlsdGVyLWZ1bGwtYm9keSB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHdpZHRoOiAxMDAlOyB9XFxuICAuYWctZmxvYXRpbmctZmlsdGVyLWZ1bGwtYm9keSA+IGRpdiB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy1mbG9hdGluZy1maWx0ZXItZnVsbC1ib2R5IGlucHV0IHtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICB3aWR0aDogMTAwJTsgfVxcbiAgLmFnLWZsb2F0aW5nLWZpbHRlci1mdWxsLWJvZHkgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1pbnB1dCB7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItaW5wdXQ6LW1vei1yZWFkLW9ubHkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItaW5wdXQ6cmVhZC1vbmx5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7IH1cXG5cXG4uYWctZmxvYXRpbmctZmlsdGVyLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogRHJhZyAmIERyb3BcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWRuZC1naG9zdCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGJhY2tncm91bmQ6ICNlNWU1ZTU7XFxuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG4gIGN1cnNvcjogbW92ZTtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xcbiAgZm9udC1zaXplOiAxNHB4O1xcbiAgbGluZS1oZWlnaHQ6IDEuNDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwYWRkaW5nOiAzcHg7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB6LWluZGV4OiAxMDsgfVxcblxcbi5hZy1kbmQtZ2hvc3QtaWNvbiB7XFxuICBwYWRkaW5nOiAycHg7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIE92ZXJsYXlcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLW92ZXJsYXkge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbGVmdDogMDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctb3ZlcmxheS1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctb3ZlcmxheS13cmFwcGVyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy1vdmVybGF5LXdyYXBwZXIuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XFxuXFxuLmFnLW92ZXJsYXktbm8tcm93cy13cmFwcGVyLmFnLWxheW91dC1hdXRvLWhlaWdodCB7XFxuICBwYWRkaW5nLXRvcDogMzBweDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogUG9wdXBcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXBvcHVwID4gZGl2IHtcXG4gIHotaW5kZXg6IDU7IH1cXG5cXG4uYWctcG9wdXAtYmFja2Ryb3Age1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbGVmdDogMDtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIHdpZHRoOiAxMDAlOyB9XFxuXFxuLmFnLXBvcHVwLWVkaXRvciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcXG4gIHVzZXItc2VsZWN0OiBub25lO1xcbiAgei1pbmRleDogMTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogVmlydHVhbCBMaXN0c1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG4gIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSBzcGFuOmVtcHR5Om5vdCguYWctaWNvbikge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBGbG9hdGluZyBUb3AgYW5kIEJvdHRvbVxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctZmxvYXRpbmctdG9wIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcblxcbi5hZy1waW5uZWQtbGVmdC1mbG9hdGluZy10b3Age1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1pbi13aWR0aDogMHB4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLXBpbm5lZC1yaWdodC1mbG9hdGluZy10b3Age1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1pbi13aWR0aDogMHB4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7IH1cXG5cXG4uYWctcGlubmVkLWxlZnQtZmxvYXRpbmctYm90dG9tIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDEwMDA7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogMTAwMDtcXG4gIGZsZXgtZ3JvdzogMTAwMDsgfVxcblxcbi5hZy1waW5uZWQtcmlnaHQtZmxvYXRpbmctYm90dG9tIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDEwMDA7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogMTAwMDtcXG4gIGZsZXgtZ3JvdzogMTAwMDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogRGlhbG9nXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1kaWFsb2csIC5hZy1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICBmbGV4OiBub25lO1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItdGl0bGUsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItdGl0bGUge1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAgIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctZGlhbG9nIC5hZy1wYW5lbC1jb250ZW50LXdyYXBwZXIsIC5hZy1wYW5lbCAuYWctcGFuZWwtY29udGVudC13cmFwcGVyIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcGFuZWwtY29udGVudC13cmFwcGVyID4gZGl2LCAuYWctcGFuZWwgLmFnLXBhbmVsLWNvbnRlbnQtd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWRpYWxvZyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cXG4gIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICB6LWluZGV4OiAxOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci10b3BMZWZ0IHtcXG4gICAgICB0b3A6IDA7XFxuICAgICAgbGVmdDogMDtcXG4gICAgICBoZWlnaHQ6IDVweDtcXG4gICAgICB3aWR0aDogNXB4O1xcbiAgICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcmVzaXplci5hZy1yZXNpemVyLXRvcCB7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIGxlZnQ6IDVweDtcXG4gICAgICByaWdodDogNXB4O1xcbiAgICAgIGhlaWdodDogNXB4O1xcbiAgICAgIGN1cnNvcjogbnMtcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci10b3BSaWdodCB7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIHJpZ2h0OiAwO1xcbiAgICAgIGhlaWdodDogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBuZXN3LXJlc2l6ZTsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1yZXNpemVyLmFnLXJlc2l6ZXItcmlnaHQge1xcbiAgICAgIHRvcDogNXB4O1xcbiAgICAgIHJpZ2h0OiAwO1xcbiAgICAgIGJvdHRvbTogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBldy1yZXNpemU7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcmVzaXplci5hZy1yZXNpemVyLWJvdHRvbVJpZ2h0IHtcXG4gICAgICBib3R0b206IDA7XFxuICAgICAgcmlnaHQ6IDA7XFxuICAgICAgaGVpZ2h0OiA1cHg7XFxuICAgICAgd2lkdGg6IDVweDtcXG4gICAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci1ib3R0b20ge1xcbiAgICAgIGJvdHRvbTogMDtcXG4gICAgICBsZWZ0OiA1cHg7XFxuICAgICAgcmlnaHQ6IDVweDtcXG4gICAgICBoZWlnaHQ6IDVweDtcXG4gICAgICBjdXJzb3I6IG5zLXJlc2l6ZTsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1yZXNpemVyLmFnLXJlc2l6ZXItYm90dG9tTGVmdCB7XFxuICAgICAgYm90dG9tOiAwO1xcbiAgICAgIGxlZnQ6IDA7XFxuICAgICAgaGVpZ2h0OiA1cHg7XFxuICAgICAgd2lkdGg6IDVweDtcXG4gICAgICBjdXJzb3I6IG5lc3ctcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci1sZWZ0IHtcXG4gICAgICBsZWZ0OiAwO1xcbiAgICAgIHRvcDogNXB4O1xcbiAgICAgIGJvdHRvbTogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBldy1yZXNpemU7IH1cXG4gIC5hZy1kaWFsb2cgLmFnLW1lc3NhZ2UtYm94IHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWNvbnRlbnQge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XFxuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBUb29sdGlwXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy10b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgei1pbmRleDogOTk5OTk7IH1cXG5cXG4uYWctY2hhcnQtdG9vbHRpcCB7XFxuICBkaXNwbGF5OiB0YWJsZTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICB6LWluZGV4OiA5OTk5OTtcXG4gIGZvbnQ6IDEycHggVmVyZGFuYSwgc2Fucy1zZXJpZjtcXG4gIGNvbG9yOiBibGFjaztcXG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XFxuICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgzLCAzLCAzLCAwLjcpLCAwLjV2aCAwLjV2aCAxdmggcmdiYSgzLCAzLCAzLCAwLjI1KTtcXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgzLCAzLCAzLCAwLjcpLCAwLjV2aCAwLjV2aCAxdmggcmdiYSgzLCAzLCAzLCAwLjI1KTtcXG4gIG9wYWNpdHk6IDA7XFxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XFxuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgLXdlYmtpdC10cmFuc2Zvcm07XFxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCAtd2Via2l0LXRyYW5zZm9ybTtcXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cXG4gIC5hZy1jaGFydC10b29sdGlwLnZpc2libGUge1xcbiAgICBvcGFjaXR5OiAxO1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XFxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cXG4gIC5hZy1jaGFydC10b29sdGlwIC50aXRsZSB7XFxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICBwYWRkaW5nOiA3cHg7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcXG4gICAgY29sb3I6IHdoaXRlO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4OyB9XFxuICAuYWctY2hhcnQtdG9vbHRpcCAuY29udGVudCB7XFxuICAgIHBhZGRpbmc6IDdweDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQW5pbWF0aW9uc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctdmFsdWUtc2xpZGUtb3V0IHtcXG4gIG1hcmdpbi1yaWdodDogNXB4O1xcbiAgb3BhY2l0eTogMTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzcywgbWFyZ2luLXJpZ2h0IDNzO1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzcywgbWFyZ2luLXJpZ2h0IDNzO1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbi5hZy12YWx1ZS1zbGlkZS1vdXQtZW5kIHtcXG4gIG1hcmdpbi1yaWdodDogMTBweDtcXG4gIG9wYWNpdHk6IDA7IH1cXG5cXG4uYWctb3BhY2l0eS16ZXJvIHtcXG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogTWVudVxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctbWVudSB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cXG5cXG4uYWctbWVudS1jb2x1bW4tc2VsZWN0LXdyYXBwZXIge1xcbiAgaGVpZ2h0OiAyNjVweDtcXG4gIG92ZXJmbG93OiBhdXRvO1xcbiAgd2lkdGg6IDIwMHB4OyB9XFxuXFxuLmFnLW1lbnUtbGlzdCB7XFxuICBkaXNwbGF5OiB0YWJsZTsgfVxcblxcbi5hZy1tZW51LW9wdGlvbiwgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxcbiAgLmFnLW1lbnUtb3B0aW9uID4gc3BhbiwgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG5cXG4uYWctbWVudS1vcHRpb24tdGV4dCB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogUmljaCBTZWxlY3RcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXJpY2gtc2VsZWN0IHtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIG91dGxpbmU6IG5vbmU7IH1cXG4gIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSA+IHNwYW4ge1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAgICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSA+IHNwYW4uYWctaWNvbiB7XFxuICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xcbiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XFxuICAgICAgICBvcmRlcjogMTtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFBhZ2luYXRpb25cXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXBhZ2luZy1wYW5lbCB7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcXG4gIC1tcy1mbGV4LXBhY2s6IGVuZDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cXG5cXG4uYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWRpc2FibGVkIHtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBUb29sIFBhbmVsXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIHdpZHRoOiAyMDBweDsgfVxcbiAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICBsaW5lLWhlaWdodDogMS41O1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG5cXG4uYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLFxcbi5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4sXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4sXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxcblxcbi5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4OyB9XFxuXFxuLmFnLXRvb2wtcGFuZWwtaG9yaXpvbnRhbC1yZXNpemUge1xcbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgd2lkdGg6IDVweDtcXG4gIHotaW5kZXg6IDE7IH1cXG5cXG4uYWctcnRsIC5hZy10b29sLXBhbmVsLWhvcml6b250YWwtcmVzaXplIHtcXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2wtcGFuZWwtaG9yaXpvbnRhbC1yZXNpemUge1xcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7IH1cXG5cXG4ubG9hZGluZy1maWx0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBhZGRpbmc6IDVweDtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMzRweDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgei1pbmRleDogMTsgfVxcblxcbi5hZy1kZXRhaWxzLXJvdyB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1kZXRhaWxzLWdyaWQge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cXG5cXG4uYWctY2VsbC1sYWJlbC1jb250YWluZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1udW1lcmljLWhlYWRlciAuYWctY2VsbC1sYWJlbC1jb250YWluZXIge1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFNpZGUgQmFyXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1zaWRlLWJhciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cXG4gIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGRpdiBidXR0b24ge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gICAgb3V0bGluZTogbm9uZTtcXG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAgIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGRpdiBidXR0b24gc3Bhbjpub3QoLmFnLWljb24pIHtcXG4gICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdGI7XFxuICAgICAgLW1zLXdyaXRpbmctbW9kZTogdGI7XFxuICAgICAgd3JpdGluZy1tb2RlOiB0YjtcXG4gICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XFxuICAgICAgLW1zLXdyaXRpbmctbW9kZTogdGItbHI7XFxuICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgfVxcbiAgLmFnLXNpZGUtYmFyIC5wYW5lbC1jb250YWluZXIge1xcbiAgICB3aWR0aDogMTgwcHg7IH1cXG4gIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5wYW5lbC1jb250YWluZXIge1xcbiAgICB3aWR0aDogMjAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGJ1dHRvbiBzcGFuOm5vdCguYWctaWNvbikge1xcbiAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHRiLXJsO1xcbiAgLW1zLXdyaXRpbmctbW9kZTogdGItcmw7XFxuICB3cml0aW5nLW1vZGU6IHRiLXJsO1xcbiAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xcbiAgLW1zLXdyaXRpbmctbW9kZTogdGItcmw7XFxuICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBTdGF0dXMgQmFyXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1zdGF0dXMtYmFyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcXG4gIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctc3RhdHVzLWJhciAuYWctc3RhdHVzLXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuXFxuLmFnLXN0YXR1cy1iYXItbGVmdCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcblxcbi5hZy1zdGF0dXMtYmFyLWNlbnRlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcblxcbi5hZy1zdGF0dXMtYmFyLXJpZ2h0IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBXaWRnZXRzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgMTAwJTtcXG4gIGZsZXg6IDEgMSAxMDAlOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdG9vbGJhciB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XFxuICAgIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIgLmFnLWdyb3VwLXN1Ymdyb3VwIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2g7XFxuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWNvbGxhcHNlZCAuYWctZ3JvdXAtY29tcG9uZW50LXRvb2xiYXIsIC5hZy1ncm91cC1jb21wb25lbnQuYWctY29sbGFwc2VkIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgZGlzcGxheTogbm9uZTsgfVxcblxcbi5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgMC4zcztcXG4gIHRyYW5zaXRpb246IHJpZ2h0IDAuM3M7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC0xcHg7IH1cXG5cXG4uYWctaW5wdXQtZmllbGQge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWlucHV0LWZpZWxkIGlucHV0LCAuYWctaW5wdXQtZmllbGQgc2VsZWN0LCAuYWctaW5wdXQtZmllbGQgdGV4dGFyZWEge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgbWluLXdpZHRoOiAwOyB9XFxuXFxuLmFnLXJhbmdlLWZpZWxkIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuXFxuLmFnLXBpY2tlci1maWVsZCA+IC5hZy13cmFwcGVyLCAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIsIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXBpY2tlci1maWVsZCA+IC5hZy13cmFwcGVyID4gZGl2LCAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIgPiBkaXYsIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87IH1cXG5cXG4uYWctYW5nbGUtc2VsZWN0IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLWNoaWxkLWNpcmNsZSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxcblxcbi5hZy1waWNrZXItZmllbGQge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gIC5hZy1waWNrZXItZmllbGQgPiAuYWctd3JhcHBlciA+IGJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICBtYXJnaW46IDA7IH1cXG5cXG4uYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7XFxuICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1jb2xvci1waWNrZXIgYnV0dG9uIHtcXG4gIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcbi5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXJpZ2h0IGxhYmVsIHtcXG4gIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7XFxuICAtbXMtZmxleC1vcmRlcjogMTtcXG4gIG9yZGVyOiAxOyB9XFxuXFxuLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tcmlnaHQgPiBkaXYge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcblxcbi5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCB7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XFxuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XFxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxcbiAgLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wID4gZGl2IHtcXG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaDtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxcblxcbi5hZy1jb2xvci1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAuYWctY29sb3ItcGFuZWwgLmFnLWZpbGwge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgbGVmdDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCByaWdodCB0b3AsIGxlZnQgdG9wLCBjb2xvci1zdG9wKDMlLCAjZmYwMDAwKSwgY29sb3Itc3RvcCgxNyUsICNmZmZmMDApLCBjb2xvci1zdG9wKDMzJSwgIzAwZmYwMCksIGNvbG9yLXN0b3AoNTAlLCAjMDBmZmZmKSwgY29sb3Itc3RvcCg2NyUsICMwMDAwZmYpLCBjb2xvci1zdG9wKDgzJSwgI2ZmMDBmZiksIHRvKCNmZjAwMDApKTtcXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICNmZjAwMDAgMyUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYSB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUtYmFja2dyb3VuZCB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBoZWlnaHQ6IDEwMCU7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMCkpLCB0byhibGFjaykpO1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMCksIGJsYWNrKTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgIG91dGxpbmU6IG5vbmU7XFxuICAgIG91dGxpbmUtb2Zmc2V0OiAwOyB9XFxuICAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgcGFkZGluZy1sZWZ0OiA3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgcGFkZGluZy1sZWZ0OiA3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gIHBhZGRpbmctbGVmdDogMTAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDEwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgcGFkZGluZy1yaWdodDogMTEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gIHBhZGRpbmctbGVmdDogMTEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDExMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDEyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgcGFkZGluZy1yaWdodDogMTIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gIHBhZGRpbmctbGVmdDogMTMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDEzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgcGFkZGluZy1yaWdodDogMTQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gIHBhZGRpbmctbGVmdDogMTQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDE1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgcGFkZGluZy1sZWZ0OiAxNTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gIHBhZGRpbmctbGVmdDogMTYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICBwYWRkaW5nLWxlZnQ6IDE2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgcGFkZGluZy1sZWZ0OiAxNzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgcGFkZGluZy1yaWdodDogMTcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gIHBhZGRpbmctbGVmdDogMTcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICBwYWRkaW5nLWxlZnQ6IDE4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgcGFkZGluZy1yaWdodDogMTgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gIHBhZGRpbmctbGVmdDogMTkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICBwYWRkaW5nLWxlZnQ6IDE5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxOTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgcGFkZGluZy1sZWZ0OiAyMDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gIHBhZGRpbmctbGVmdDogMjAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICBwYWRkaW5nLWxlZnQ6IDIxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyMTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgcGFkZGluZy1sZWZ0OiAyMTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgcGFkZGluZy1yaWdodDogMjEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gIHBhZGRpbmctbGVmdDogMjIwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIyMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyMjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgcGFkZGluZy1sZWZ0OiAyMzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgcGFkZGluZy1yaWdodDogMjMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gIHBhZGRpbmctbGVmdDogMjMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgcGFkZGluZy1yaWdodDogMjQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gIHBhZGRpbmctbGVmdDogMjUwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI1MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDI1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gIHBhZGRpbmctbGVmdDogMjYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICBwYWRkaW5nLWxlZnQ6IDI3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgcGFkZGluZy1sZWZ0OiAyNzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgcGFkZGluZy1yaWdodDogMjcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gIHBhZGRpbmctbGVmdDogMjgwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgcGFkZGluZy1sZWZ0OiAyOTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgcGFkZGluZy1yaWdodDogMjkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gIHBhZGRpbmctbGVmdDogMjkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDMwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgcGFkZGluZy1sZWZ0OiAzMDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgcGFkZGluZy1yaWdodDogMzAwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gIHBhZGRpbmctbGVmdDogMzEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMxMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICBwYWRkaW5nLWxlZnQ6IDMxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDMzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgcGFkZGluZy1yaWdodDogMzMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gIHBhZGRpbmctbGVmdDogMzQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgcGFkZGluZy1sZWZ0OiAzNTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgcGFkZGluZy1yaWdodDogMzUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gIHBhZGRpbmctbGVmdDogMzUwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM1MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICBwYWRkaW5nLWxlZnQ6IDM2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gIHBhZGRpbmctbGVmdDogMzcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICBwYWRkaW5nLWxlZnQ6IDM3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgcGFkZGluZy1sZWZ0OiAzODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gIHBhZGRpbmctbGVmdDogMzgwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM4MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICBwYWRkaW5nLWxlZnQ6IDM5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzOTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgcGFkZGluZy1sZWZ0OiAzOTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgcGFkZGluZy1yaWdodDogMzkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gIHBhZGRpbmctbGVmdDogNDAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgcGFkZGluZy1sZWZ0OiA0MTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgcGFkZGluZy1yaWdodDogNDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gIHBhZGRpbmctbGVmdDogNDEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQxMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgcGFkZGluZy1sZWZ0OiA0MjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgcGFkZGluZy1yaWdodDogNDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gIHBhZGRpbmctbGVmdDogNDMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICBwYWRkaW5nLWxlZnQ6IDQzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgcGFkZGluZy1sZWZ0OiA0NDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gIHBhZGRpbmctbGVmdDogNDQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0NTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgcGFkZGluZy1sZWZ0OiA0NTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgcGFkZGluZy1yaWdodDogNDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gIHBhZGRpbmctbGVmdDogNDYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0NjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgcGFkZGluZy1sZWZ0OiA0NzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgcGFkZGluZy1yaWdodDogNDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gIHBhZGRpbmctbGVmdDogNDcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgcGFkZGluZy1yaWdodDogNDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gIHBhZGRpbmctbGVmdDogNDkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0OTBweDsgfVxcblxcbi5hZy1sdHIge1xcbiAgZGlyZWN0aW9uOiBsdHI7IH1cXG4gIC5hZy1sdHIgLmFnLWJvZHksIC5hZy1sdHIgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLWx0ciAuYWctZmxvYXRpbmctYm90dG9tLCAuYWctbHRyIC5hZy1oZWFkZXIsIC5hZy1sdHIgLmFnLWJvZHktdmlld3BvcnQsIC5hZy1sdHIgLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwge1xcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxcbiAgLmFnLWx0ciAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgcmlnaHQ6IC00cHg7IH1cXG4gIC5hZy1sdHIgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGxlZnQ6IC00cHg7IH1cXG5cXG4uYWctcnRsIHtcXG4gIGRpcmVjdGlvbjogcnRsOyB9XFxuICAuYWctcnRsIC5hZy1ib2R5LCAuYWctcnRsIC5hZy1mbG9hdGluZy10b3AsIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWJvdHRvbSwgLmFnLXJ0bCAuYWctaGVhZGVyLCAuYWctcnRsIC5hZy1ib2R5LXZpZXdwb3J0LCAuYWctcnRsIC5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsIHtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxcbiAgLmFnLXJ0bCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgbGVmdDogLTRweDsgfVxcbiAgLmFnLXJ0bCAuYWctcGlubmVkLWxlZnQtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICByaWdodDogLTRweDsgfVxcblxcbkBtZWRpYSBwcmludCB7XFxuICAuYWctYm9keS12aWV3cG9ydCB7XFxuICAgIGRpc3BsYXk6IGJsb2NrOyB9XFxuICAuYWctcm93IHtcXG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9IH1cXG5cXG4uYWctYm9keSAuYWctcGlubmVkLWxlZnQtY29scy12aWV3cG9ydCwgLmFnLWJvZHkgLmFnLWJvZHktdmlld3BvcnQsIC5hZy1ib2R5IC5hZy1waW5uZWQtcmlnaHQtY29scy12aWV3cG9ydCB7XFxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cXG5cXG4uYWctY2hhcnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7IH1cXG4gIC5hZy1jaGFydCAuYWctY2hhcnQtY29tcG9uZW50cy13cmFwcGVyIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWNoYXJ0IC5hZy1jaGFydC1jb21wb25lbnRzLXdyYXBwZXIgLmFnLWNoYXJ0LWNhbnZhcy13cmFwcGVyIHtcXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcbiAgICAgIC5hZy1jaGFydCAuYWctY2hhcnQtY29tcG9uZW50cy13cmFwcGVyIC5hZy1jaGFydC1jYW52YXMtd3JhcHBlciBjYW52YXMge1xcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cXG4gICAgLmFnLWNoYXJ0IC5hZy1jaGFydC1jb21wb25lbnRzLXdyYXBwZXIgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICB0b3A6IDEwcHg7XFxuICAgICAgcmlnaHQ6IDIwcHg7XFxuICAgICAgd2lkdGg6IDI0cHg7XFxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxcbiAgLmFnLWNoYXJ0Om5vdCguYWctaGFzLW1lbnUpOmhvdmVyIC5hZy1jaGFydC1tZW51IHtcXG4gICAgb3BhY2l0eTogMTtcXG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxcbiAgLmFnLWNoYXJ0IC5hZy1jaGFydC1kb2NrZWQtY29udGFpbmVyIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICB3aWR0aDogMDtcXG4gICAgbWluLXdpZHRoOiAwO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG1pbi13aWR0aCAwLjRzO1xcbiAgICB0cmFuc2l0aW9uOiBtaW4td2lkdGggMC40czsgfVxcbiAgICAuYWctY2hhcnQgLmFnLWNoYXJ0LWRvY2tlZC1jb250YWluZXIgLmFnLXBhbmVsIHtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDFweDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSA+IGRpdiB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWhlYWRlciB7XFxuICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICBmbGV4OiBub25lO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIGN1cnNvcjogZGVmYXVsdDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWJvZHkge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcXG4gICAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcXG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLXRhYi1ib2R5ID4gZGl2IHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgIG92ZXJmbG93LXk6IGF1dG87IH1cXG5cXG4uYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtIHtcXG4gICAgICAgICAgb3BhY2l0eTogMC4yOyB9XFxuICAgICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB9XFxuICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctY2hhcnQtc2V0dGluZ3MtcHJldi1idG4sIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5leHQtYnRuIHtcXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLWNoYXJ0LXNldHRpbmdzLXByZXYtYnRuIGJ1dHRvbiwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctY2hhcnQtc2V0dGluZ3MtbmV4dC1idG4gYnV0dG9uIHtcXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICAgICAgICB0b3A6IDA7XFxuICAgICAgICAgIGxlZnQ6IDA7XFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxcbiAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIge1xcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgICBvdmVyZmxvdy14OiBoaWRkZW47XFxuICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfVxcbiAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIHtcXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICAgIHRvcDogMDtcXG4gICAgICAgIGxlZnQ6IDA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTsgfVxcbiAgICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS1jaGFydHMtY29udGFpbmVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAgICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcXG4gICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxcbiAgICAgICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICAgICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgICAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTsgfVxcbiAgICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS1jaGFydHMtY29udGFpbmVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIuYWctYW5pbWF0aW5nLCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlci5hZy1hbmltYXRpbmcge1xcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zcztcXG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjNzO1xcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcXG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgICAgICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwgY2FudmFzIHtcXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZGF0YS13cmFwcGVyLCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1kYXRhLXdyYXBwZXIgPiBkaXYsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgPiBkaXYge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZy1ib3R0b206IDJweDsgfVxcbiAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWRhdGEtd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIge1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XFxuICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLXN1Ymdyb3VwIHtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XFxuXFxuLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51IHtcXG4gIG9wYWNpdHk6IDA7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3BhbiB7XFxuICAgIG9wYWNpdHk6IDAuNTtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XFxuICAgIGZvbnQtc2l6ZTogMjRweDtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgbWFyZ2luOiAycHggMDtcXG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAgIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSA+IHNwYW46aG92ZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcblxcbi5hZy1jaGFydCAuYWctY2hhcnQtZG9ja2VkLWNvbnRhaW5lciB7XFxuICBtaW4td2lkdGg6IDA7XFxuICB3aWR0aDogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWJvZHkge1xcbiAgcGFkZGluZzogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIge1xcbiAgcGFkZGluZzogMCAxMHB4O1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3Ige1xcbiAgICBwYWRkaW5nOiAwIDEwcHg7IH1cXG4gICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZEJhbGhhbVxcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpxTXV5M2dBQUFGNEFBQWJER2hsWVdRVm9tT1hBQUFjaEFBQUFEWm9hR1ZoQjhJRCtRQUFITHdBQUFBa2FHMTBlTllBSW5ZQUFCemdBQUFBNEd4dlkySEVtTDRhQUFBZHdBQUFBSEp0WVhod0FFVUFsUUFBSGpRQUFBQWdibUZ0WlpRWHhLUUFBQjVVQUFBQmtuQnZjM1FBQXdBQUFBQWY2QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFEQUQvLy93UEJBNEVBSndCUUFHNEFBQUVlQVJjV0ZSWVVCeFFIRGdFSEJpTUdJaWNpSnk0Qkp5WTFKalEzTkRjK0FUYzJNell5RnpJRklnWUhCZ2NPQVJjVUZ4NEJGeFlYRmpJM05qYytBVGMyTnpZMEp5WW5MZ0VuSmlNaUJnY0dJd0VqTlNFVkhnRVhGZ1lIRGdFVklUVXpGU0UwTmpjK0FTY3VBU2MxSVFNa1Bsd0NBUUVCQVFKY1BrbEpTWkpKU1VrOVhRSUJBUUVCQWx3K1NVbEpra2xKL2dVbE9nRUJBUUVCQVFNQ05TUkpTVXFTU2tsSkpEVUNBd0VCQVFFREFqVWtTVWhKa1VsSVNRSGdRUDhBQVhVWkVBb1lKMVlCQUVEK2dBWWJMV1FnTG1JQ0FZQURnQUpjUGtsSlNaSkpTVWsrWEFJQkFRRUJBbHcrU1VsSmtrbEpTVDVjQWdFQkFVRTRKa2hKU1pKSlNVa2tOUUlEQVFFQkFRTUNOU1JKU1VxU1NrbEpKRFVDQXdFQkFmOEFRQU1nUWlzY1JCY2lQUnBBZ0NaTUdDZEhIeWxITkVVQUFRQlRBQk1EclFOdEFDY0FBQk1YQnljM0hnRVhCeUVSQnljM0hnRVhCeWNSSVNjM0hnRVhCeWMzSVJFM0hnRVhCeWMzRnhITlNpNldsZ3dXREVvQkUwa3VseVpMSmk1SkFSTktMaVZNSlpZdVN2N3RTUXdXREplWExra0JvRWt1bDVjTUZneEpBUk5LTHBZbFRDVXVTdjd0U1M0bVN5YVhMa24rN1VvTUZneVdsaTVLQVJNQUFBRUJLUUNaQXRjQzV3QUtBQUFCQnljM0hnRVhCeWNSSXdIZ2lTN1hObXMyTG9sQUFteUpMZGMyYXpZdGlmNHRBQU1BZ0FCQUE0QURRQUFiQURjQVJnQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KZ2N5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOellUTng0QkZ3Y1hCeWNISnpjbk54Y0NBRTlHUm1rZUhoNGVhVVpHVDA5R1Jta2VIaDRlYVVaR1QwSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83UXFrTUZneXFxaTZwcVM2cXFpNnBBMEFlSG1sR1JrOVBSa1pwSGg0ZUhtbEdSazlQUmtacEhoNUFHUmxYT2p0Q1FqczZWeGtaR1JsWE9qdENRanM2VnhrWi91MnFEQllNcWFrdXFxb3VxYWt1cWdBREFOVUFsUU1yQXVzQUJBQUpBQTBBQUJNekVTTVJOek1SSXhFVE14RWoxWUNBNzNoNDczaDRBamYrWGdHaXRQMnFBbGIrcXY4QUFBTUFBUC9BQkFBRHdBQVBBQ0FBS0FBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lqQndFbk54Y0JIZ0VEU1Axd1RHeHNUQUtRVEd4c1N2MXRMVUZCTFFLVExVRkFMZ3orVk5Bem5RRjVEUnBBYkV3Q2tFeHNiRXo5Y0V4c0E3bEJMZjF0TGtCQUxnS1RMVUgzL2xQUk5KMEJlQTBhQUFNQUFQL0FCQUFEd0FBUEFDQUFKQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWWpBeUUxSVFOSS9YQk1iR3hNQXBCTWJHeEsvVzB0UVVFdEFwTXRRVUF1SmYyMkFrcEFiRXdDa0V4c2JFejljRXhzQTdsQkxmMXRMa0JBTGdLVExVSCtJa29BQWdBQS84QUVBQVBBQUE4QUlBQUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZakEwaE1iR3hNL1hCTWJHeE1BcEw5YlMxQlFTMENreTFCUUM0RHdHeE0vWEJNYkd4TUFwQk1iRWRCTGYxdExrQkFMZ0tUTFVFQUFBQURBSE1BU0FPTkF6Z0FCZ0FLQUJZQUFBa0JCeGNKQWlFM0Z5RUZNQVlWRkJZek1qWTFOQ1lDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBQUlBd0FDZ0FjQUM0QUFEQUFjQUFDVWhFU0VIRVRNUkFjRC9BQUVBd0lDZ0FrQkEva0FCd0FBRUFNQUFvQU5BQXVBQUF3QUhBQXNBRHdBQUpTTVJNeE1qRVRNVEl4RXpBU01STXdIQVFFREFRRURBUUVEOXdFQkFvQUpBL2NBQ1FQM0FBa0Q5d0FKQUFBQUFBQUVCWGdDcEFxSUMxd0FIQUFBQkJ4Y0hDUUVlQVFLaTZla3QvdWtCRndzWEFxbnA2UzRCRndFWERCWUFBd0NnQUVBRFlBTkFBQkFBSUFBekFBQWxJeUltTlJFME5qc0JNaFlWRVJRR0l4TWhJZ1lWRVJRV015RXlOalVSTkNZQkl6d0JOUkUwTmpNaE9nRXpGU0VpQmhVUkFyNzdRMkJnUS90RFgxOURCZjc5SnpjM0p3RURKemMzL2ZkQlgwTUJtZ0VDQWY1ZEpqWkFYMFFCT2tOZ1lFUCt4a1JmQWtBNEp2NjdKemMzSndGRkpqaitBQUVFQWdJWFExOUFOaWI5M0FBQUFBQUJBU2tBNlFMWEFwY0FEZ0FBQVRjZUFSY0hGd2NuQnljM0p6Y1hBZ0NwREJZTXFxb3VxYWt1cXFvdXFRSHRxZ3dXREttcExxcXFMcW1wTHFvQUFBQUFCUUJBQUFBRHdBT0FBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHV0NBaHBTa3BwYVVvVUpSRnBhUkVsRkVwcGFVcEthUWdJYWdFNmh2M1dveVUwTkNVbE5UVWxKVFEwSlNVMU5TVUJEUWtORFFrSkRRMEJNZjd6V1FFNmhnS0RFU1VVU21scFNrcHBDQWhxYWdnSWFVcEthV2xLRkNVUmFmN0hMUUlwRURVbEpUUTBKU1UxL2VjMEpTVTFOU1VsTkFGUURRa0pEUTBKQ1EwQnFmN3pXUUU1TFFBQUJ3Q0dBRllEZWdNcUFBc0FEd0FiQUNnQUxBQTRBRHdBQURjaUJoVVVGak15TmpVMEpnVTFJUlVESWdZVkZCWXpNalkxTkNZSE1oWVZGQVlqSWlZMU5EWXpCU0UxSVFFeUZoVVVCaU1pSmpVME5nVWhOU0hHR2lZbUdoc2xKUUtaL2VhYUdpWW1HaHNsSlJzU0dSa1NFUmtaRVFJSi9wRUJiLzMzR3lVbEd4b21KZ0xPL2VZQ0d0WW1HaHNsSlJzYUptdFZWUUdWSmhvYUppWWFHaVlWR1JJU0dSa1NFaGxXVmdFL0pSc2FKaVlhR3lWcVZRQUFBQUVCS1FDWkF0Y0M1d0FLQUFBQk54NEJGd2NuTnhjUk13SWdpUXdXRE5mWExvbEFBUlNKQ3hjTDE5Y3RpUUhUQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQVVBUXdCekE3MEREUUFzQUVvQWFBQnpBSDBBQUFFK0FUYzZBVE1XRng0QkZ4WVhNQVlIRGdFSEZ3Y25CZ2NHSmljbUp5NEJKeTRCSnpBMk56NEJOeWMzRndjT0FROEJGaGNlQVJjV056NEJOeWNPQVNNaUp5NEJKeVkxTkRZM0p3RStBVDhCSmljdUFTY21CdzRCQnhjK0FUTXlGeDRCRnhZVkZBWUhGd0VPQVJVVUZqTXlOamNuQlQ0Qk5UUW1JeUlHQndFcUwyZzJCd1FIU0VOQ2NpMHRHemt1RUNRVFBpMUxPVUJBZ0Q0OU5TbEVHUW9QQ2lVYkZ6Y2dQaTFLQ2pGT0dBRWROemVKVEV4SUN4WUtIUnhFSmk4b0tUMFNFUmNWTUFIQk1VMFlBUmduS0dVN096NHBVQ1VrSEVRbUxpa3BQUkVTR0JVcS9wME1EbDVDR0MwVDNnRUxEUTVlUWhrc0V3TEVGeHNDQWhnWFVqazRSSFl3RVI0TlBpMUxIQTBNQ0JVVkpoNUtMQkVpR0ZNa0h6WVdQaTFKVVNGWk53SkZOVFUvQndjWEJBZ0ZIUlVZRWhJOEtTa3VKa1FjTWY2WklWbzNBamd1TGtFU0VnRUJFeEVqRlJjUkVqMHBLQzhsUlJ3cUFRZ1RMQmxDWGc0TjNiQVRMUmhEWFE0TUFBUUFRd0NaQTcwQzlnQWtBRU1BWUFCdkFBQUJGaGNlQVJjV0Z6QUdCd1lIRGdFbkppY3VBU2N1QVNjd05qYzJOejRCTnpZM09nRXpCd1lIRGdFSEJnOEJGaGNlQVJjV056WTNQZ0UzTmo4QkppY3VBU2NtSXhjeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZ6VTBKaU1pQmgwQkZCWXpNalkxQWdsSVEwSnlMUzBiT1M0NlRrNm9VMVJGS1VRWkNnOEtKUnNnS1NwZ05UVTNCd1FIRVRzNE4yQW5KaGdCSFRjM2lVeE1TQ29sSmtBYUdoSUJHQ2NvWlRzN1BnZ3RLQ2M3RVJJU0VUc25LQzB0S0NjN0VSSVNFVHNuS0MyZ1hrSkNYbDVDUWw0QzlnSVlGMUk1T0VSMk1EMGpKQkFWRkRJZVNpd1JJaGhUSkNzakl6SU9EZ0pBQWhJVFFDMHNOZ0pGTlRVL0J3Y1hEUllXT3lNaktBTTRMaTFDRWhFZkVSRTdKeWd0TFNnbk94SVJFUkk3SnlndExTZ25PeEVSMkFGQ1hsNUNBa0plWGtJQUFnREFBS0FEUUFNQUFCc0FNd0FBQVFZSERnRUhCZ2NPQVIwQkJ6UTJKelFtSnlZbkxnRW5KaWMxSVFVVUZoY1dGeDRCRnhZWEZUYzFOamMrQVRjMk56NEJOUU5BQVJZVlFTVW1JQVFFd0FJQ0JRTWhKU1pBRmhVQkFvRDl3QVFFSVNVbVFCWVZBVUFCRmhWQkpTWWdCQVFDdWlBZkh6OGdJQ0lGQ3daMWtFS0RRZ1lLQkNJaElrQWVIeDFHUUFjT0JpSWhJa0FlSHgyR01GWWdIeDgvSUNBaUJnNEhBQUFBQWdEMUFLa0RDd0xYQUFjQUN3QUFBUWNYQndrQkhnRWxFU01SQXd2cDZTMys2UUVYQ3hmK05VQUNxZW5wTGdFWEFSY01GZ3YrQUFJQUFBQUFEQURBQU1BRFFBTEFBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQWxJelV6RnlNMU14Y2pOVE1YSXpVekpTTTFNeGNqTlRNWEl6VXpGeU0xTXlVak5UTVhJelV6RnlNMU14Y2pOVE1CQUVCQXdFQkF3RUJBd0VCQS9jQkFRTUJBUU1CQVFNQkFRUDNBUUVEQVFFREFRRURBUUVEQWdJQ0FnSUNBZ0VDQWdJQ0FnSUNBUUlDQWdJQ0FnSUFBQUFnQVAvLy9BOEVEZ1FBbkFGQUFWQUJZQUZ3QVlBQmtBR2dBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SUZJZ1lIQmdjT0FSY1VGeDRCRnhZWEZqSTNOamMrQVRjMk56WTBKeVluTGdFbkppTWlCZ2NHSXhNak5UTUZJVFVoSlNNMU13VWhOU0VsSXpVekJTRTFJUU1rUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWs5WFFJQkFRRUJBbHcrU1VsSmtrbEovZ1VsT2dFQkFRRUJBUU1DTlNSSlNVcVNTa2xKSkRVQ0F3RUJBUUVEQWpVa1NVaEprVWxJU2VDQWdBR0Evc0FCUVA2QWdJQUJnUDdBQVVEK0FJQ0FBZ0QrUUFIQUE0QUNYRDVKU1VtU1NVbEpQbHdDQVFFQkFRSmNQa2xKU1pKSlNVaytYQUlCQVFGQk9DWklTVW1TU1VsSkpEVUNBd0VCQVFFREFqVWtTVWxLa2twSlNTUTFBZ01CQVFIOTRFQkFRRUJBUUVCQVFFQkFBQUFBQUFRQVF3RElBNzBDdUFBa0FFMEFZQUJ3QUFBQkZoY2VBUmNXRnpBR0J3WUhEZ0VIQmljbUp5NEJKeVluTURZM05qYytBVGMyTXpvQkJ5SUdCd1lIRGdFSEJnY3dGaGNXRng0Qk56WTNOamMrQVRjMk56QW1KeVluTGdFbkppTXFBU01YSGdFVkZBWUhEZ0VuTGdFbk5EWTNQZ0V6Qnc0QkJ3WVdGeFkyTnpZbUp5NEJJd0lKUUVKQmRTOHdIVUk3S1M4dll6SXlNRHM1T21ZcEtSbEZQeUVsSlU0b0tDY0hCQW9OR1F3dU1DOVZJeU1WSHg4cU5EUnZPRGd4S2lnb1NCMGRFaDhmSGlVa1R5b3BLQVlFQmhKR2l4Z1pNSHcwUEdjQ0dSd2tVam9USTBnV0d4b3ZQWXdlR3lBd0Z5QW9BcmdCREF3NUx5OUlmU2tkRWhFUkFRRURCQkFQT3kwdFBvRXFGdzRQRVFRRVFBRUJBd3NMS3lFaExqOGNLQlVWRVFJQ0J3WU5EU3dlSGljL0hSd1RFaFFGQkIwQ1JWUWdQUlFtQmdVRlRVRWlRaFlhREVBQkNSa2dYQTBSQnlVaVhBc0dBZ0FDQVBVQXFRTUxBdGNBREFBUUFBQUpBU2MzSnpjV0Z4NEJGeFlYRXlNUk13STUvdWt0NmVrdEl5TWlSaU1qSTlKQVFBSEEvdWt1NmVrdUl5TWpSaUlqSS84QUFnQUFBQUFDQUhrQWt3T0hBdTBBQ3dBV0FBQUJCeUVWSVJjSENRRWVBUmNGRnpjbklUVWhOeWNPQVFJMFFBR1QvbTFBamY3U0FTNGpSeVArb05NeWdBSHUvaEtBTWpWcEFtQkF3RUNOQVMwQkxTTkhJNkRUTTRCQWdETTFhUUFBQUFnQVlBQWdBNkFEWUFBREFBa0FEd0FUQUJjQUhRQWpBQ2NBQUNVakVUTW5CeWMzSGdFRkJ5YzNIZ0UzSVRVaEJTRTFJVGNISnpjZUFTVUhKemNlQVFVakVUTUNJRUJBYzgwdHpRc1hBYXN0elMwelo0Yi9BQUVBL2NEL0FBRUFUUzNOTFRObkFkUE5MYzBMRi83ZVFFQWdBUUFnelMzTkN4ZXJMYzB0TTJmTlFFQkFZQzNOTFRObmJjMHR6UXNYaXdFQUFBQUNBUEVBc1FNUEFzOEFCd0FPQUFBVEh3RW5OeWNISnlVdkFSY0hGemZ4QTk5SGRGTjFSd0llQTk5SGRGTjFBWlBmQTBkMVUzUkhXdDhEUjNWVGRBQUFBd0RBQU9BRFFBS2dBQU1BQndBTEFBQWxJVFVoTlNFMUlUVWhOU0VEUVAyQUFvRDlnQUtBL1lBQ2dPQkFnRUNBUUFBQUFBSUF5d0NLQXpVQzlnQUhBQThBQUNVdkFSY0hGemNYRXg4Qkp6Y25CeWNCMmdUZVIzUlRkVWRNQk41SGRGTjFSN2plQkVoMVUzVkhBaERlQkVoMVUzVkhBQUFBQWdDQUFXQURnQUlnQUFNQUJ3QUFBU0UxSVFVVklUVURnUDBBQXdEOVFBS0FBV0RBUUVCQUFBRUJYZ0NwQXFJQzF3QU1BQUFKQVNjM0p6Y1dGeDRCRnhZWEFxTCs2UzNwNlMwakl5TkZJeU1qQWNEKzZTN3A2UzRqSXlOR0lpTWpBQUFBQUFJQVFBQ2dBOEFDNEFBS0FCWUFBQUUzSGdFWEJ5YzNGeEV6QVNNUkJ5YzNIZ0VYQnljUkFVR1FEQmNNNE9BdmtFSUJ3RUtRTCtBNGNEZ3ZrQUVZaGdzV0M5TFNMSVlCeVAzQUFjaUdMTkkwYVRVc2h2NDRBQUFHQUhZQVFBT0xBMHNBSEFBeUFFRUFVd0JpQUc0QUFBRVdGeDRCRnhZSEJnY09BU2NtSnlZbkxnRTNOamMyTno0Qk56WVhCd1lIRGdFSEJoY1dGeDRCTnpZM05pY3VBU2NtQnhjV0J3NEJCd1luTGdFdkFRRWVBUUVXTno0Qk56WTNOaVluQmdjT0FRY0dCeE15Rmg4QkFTWW5KalkzTmpjNkFRY0dCdzRCQndZWEFTNEJCd0lHWWxWVmF3NE5MU2RPVGJkZFhrY3ZIaDRYQ0FnY0dTY21YemMzT1FwVFIwaGFDZ3NuS0ZOVHVWVlZMU1VLQ1ZoSlNWenpJd2dJVFVCQlRodzBHQ2dCZ3dZTC90Z29LU3BKSEJzTUNBRUpJU0FoUVNFZ0lVTWhRQjBwL24wbEJRWXlPRGhZQkFvR01Db3FOd29LRGdFR0VTSVNBMHNDTlRXa1pXUmdWRGMzSlJVVVF5czVPbjVBUURveUtpazZFQkFCUUFFdExZeFZWRkZUTFMwRUtpdGNURlZWank4dUFjMUFTa2w3SlNZSUFoRU5GZ0dEQ2hUK3JRd0ZCU2NnSHlrZVBSMGdJU0ZCSVNBaEFkWVJFQmIrZkVGTFRJSXVMUVpBQWhrWlRUQXZMZ0VGQlFVQkFBQUFBQU1BZ0FBd0E0QURVQUFXQUNJQU5nQUFBVFFtSXlJR0ZTTWlCaFVSRkJZeklUSTJOUkUwSmlNRk1oWVZGQVlqSWlZMU5EWUJJU0ltTlJFME5qc0JGU0UxTXpJV0ZSRVVCZ0tBT0VoSU9JQTFTMHMxQWdBMVMwczEvd0FTR1JrU0Voa1pBUkwrQUJvbUpocEFBWUJBR2lZbUF2QVlTRWdZU3pYK1FEVkxTelVCd0RWTEVSZ1JFUmdZRVJFWS9aRW1HZ0hBR2lhQWdDWWEva0FhSmdBQUFBQUNBSEFBTUFPUUExQUFLQUJBQUFBQkp6QTJOejRCRnpjbU56NEJOell4RmhjZUFSY1dGdzRCQnc0Qkp3Y2VBUmNXQmc4Qkp3Y25Od0VPQVI4QkJ5WUdCd0UrQVRjMkppYzNNQlkzSnpBR01RRlpsUVlQSVhFd1pRa1FFQ3dVRkNVa0pVa2xKU1FGQ3dVYVJTcHFBUUVDQXlndkdKcnBMZWtCQ0JFYUNoQ2dNR0lUQVNFQ0JBSWVCd2VhT2lUYUFRRkhsU2NWTFE4Sll4d2RIUzRQRHlVbEpFb2xKQ1VIRGdjakx3ZG5DUUViTTJBWURKcnFMdWtCdGc0bUR4ZWZEQUllL3Q4Q0F3SWFWaXlhRVNyWkFRQUFDZ0EvLy84RHdRT0JBQ2NBT3dCSEFHRUFad0J1QUhzQWhnQ01BSklBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SVRJUkVXTXhZMk56WTNQZ0UzTmpjK0FTYzBKd0VVRmhVZUFSY3lGak0xSXdFSEp6Y2VBUmNISnhVT0FRY2pGd2NuTng0QkZ3Y1dOamMxQlJRV0ZUTTFKd1lVQnpNMUl6Y3FBU01pQmdjVUJoVXpOVE1sRlRNMEpqVXVBU2NpSmlVR0lnY1ZNemNtSWlNVk13TWtQbHdDQVFFQkFRSmNQa2xKU1pKSlNVazlYUUlCQVFFQkFsdytTVWxKa2tsSnFQMjZQVDA5ZWowOVBTUTFBZ0lDQVFFQkF2ejhBUUkxSkFnUUNId0NRUWt1VnhZckZpNEpBVncvZHdvdVZsWU1GZ3dMVVlJQi9id0JmbjBCQVg5OXZ4Z3VGeVU2QVFGOFFnSEhmUUVDTlNRSUVQN3pJVUVnZ3NNZ1FTR0NBNEFDWEQ1SlNVbVNTVWxKUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWsrWEFJQkFRSC9BUDI4QWdFQkFRSUNBalVrUFQwOGVqMDlQUDQ4Q1JFSUpEVUNBWDRCRmdvdVZoVXNGUzRLY3o5ZkFna3VWMWNNRmd3S0FSMUZjMVFoUUNDQndpRkFJWUwvT0NZWU1CbEJmMzhKRVFra05RSUJBZ0VCZjRBQmdRQUFBZ0NnQUdBRFlBTWdBQXNBRndBQUFTRVZJUkVqRVNFMUlSRXpCeEVoRlNFUk14RWhOU0VSQW1BQkFQOEF3UDhBQVFEQWdQOEFBUUJBQVFEL0FBSWd3UDhBQVFEQUFRQkEvd0JBL3dBQkFFQUJBQUFBQVFGZUFLa0NvZ0xYQUFjQUFBRUhGd2NKQVI0QkFxTHA2UzMrNlFFWEN4Y0NxZW5wTGdFWEFSY01GZ0FDQUFEL3dBUUFBOEFBR3dBM0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21CeklYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOZ0lBYWwxZGl5a29LQ21MWFYxcWFsMWRpeWtvS0NtTFhWMXFYVkZTZWlNakl5TjZVbEZkWFZGU2VpTWpJeU42VWxFRHdDZ3BpMTFkYW1wZFhZc3BLQ2dwaTExZGFtcGRYWXNwS0VBakkzcFNVVjFkVVZKNkl5TWpJM3BTVVYxZFVWSjZJeU1BQXdBQS84QUVBQVBBQUJzQU53QlRBQUFCSWdjT0FRY0dGUlFYSGdFWEZqTXlOejRCTnpZMU5DY3VBU2NtQnpJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmdFVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTXlGeDRCRnhZQ0FHcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtDZ3BpMTFkYWwxUlVub2pJeU1qZWxKUlhWMVJVbm9qSXlNamVsSlJBWjBaR1ZjNk8wSkNPenBYR1JrWkdWYzZPMEpDT3pwWEdSa0R3Q2dwaTExZGFtcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtFQWpJM3BTVVYxZFVWSjZJeU1qSTNwU1VWMWRVVko2SXlQK1FFSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83QUFBQUFBSUFlUUNUQTRjQzdRQU9BQmtBQUFrQkp6Y2hOU0VuTnhZWEhnRVhGaVVYSVJVaEJ4YzNKdzRCQTRmKzBvMUEvbTBCazBDTkppWWxUQ1VtL3NhQS9oSUI3b0F5MDlNTUdnSEEvdE9OUU1CQWpTVW1Ka3NtSlhxQVFJQXowOU1OR1FBQUFBQUNBSUFBUUFPQUEwQUFEZ0FaQUFBQkVTRVJJeEVVRmpNaE1qWTFFU01GTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeVZmOEFianpWMVR4dVZnSEEvdFVCSy83Vkl6SXlJd0VySFc0ODFkVThiZ0dkL21NQUFRRHBBUjRERndKaUFBY0FBQWtDTnhjM0hnRURGLzdwL3VrdTZla01GZ0kxL3VrQkZ5M3A2UXNYQUFBQkFWNEFxUUtpQXRjQUJ3QUFBUWNYQndrQkhnRUNvdW5wTGY3cEFSY0xGd0twNmVrdUFSY0JGd3dXQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQUVBNlFFZUF4Y0NZZ0FMQUFBQkJ5Y0hKd0VXRng0QkZ4WURGeTdwNlM0QkZ5TWpJa1lqSXdGTExlbnBMUUVYSXlNalJTTWpBQUFBQVFEcEFPNERGd0tTQUFjQUFBa0JKemNYQVI0QkF4ZitpYmN1aVFGSkRCWUNaZjZKdHkySkFVa0xGd0FCQVY0QXFRS2lBdGNBREFBQUNRRW5OeWMzRmhjZUFSY1dGd0tpL3VrdDZla3RJeU1qUlNNakl3SEEvdWt1NmVrdUl5TWpSaUlqSXdBQUFBQUJBTUFCb0FOQUFlQUFBd0FBRXlFVkljQUNnUDJBQWVCQUFBQUFBUURwQVI0REZ3SmlBQWNBQUFrQ054YzNIZ0VERi83cC91a3U2ZWtNRmdJMS91a0JGeTNwNlFzWEFBQUJBQUFBQVFBQUVrdmhlVjhQUFBVQUN3UUFBQUFBQU5sQmo0MEFBQUFBMlVHUGpRQUEvOEFFQUFQQUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFQQS84QUFBQVFBQUFBQUFBUUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQTRCQUFBQUFBQUFBQUFBQUFBQWdBQUFBUUFBRDhFQUFCVEJBQUJLUVFBQUlBRUFBRFZCQUFBQUFRQUFBQUVBQUFBQkFBQWN3UUFBTUFFQUFEQUJBQUJYZ1FBQUtBRUFBRXBCQUFBUUFRQUFJWUVBQUVwQkFBQlhnUUFBRU1FQUFCREJBQUF3QVFBQVBVRUFBREFCQUFBUHdRQUFFTUVBQUQxQkFBQWVRUUFBR0FFQUFEeEJBQUF3QVFBQU1zRUFBQ0FCQUFCWGdRQUFFQUVBQUIyQkFBQWdBUUFBSEFFQUFBL0JBQUFvQVFBQVY0RUFBQUFCQUFBQUFRQUFIa0VBQUNBQkFBQTZRUUFBVjRFQUFGZUJBQUE2UVFBQU9rRUFBRmVCQUFBd0FRQUFPa0FBQUFBQUFvQUZBQWVBTUlCQmdFZUFZd0JxQUhxQWlRQ1dBS0dBcG9DdkFMU0F4NERQZ08yQkJJRUtnUklCUWdGcmdZQ0JpQUdhZ2NNQjdZSDJnZ0lDRklJY2dpTUNLNEl3Z2pnQ1F3SnhBb1VDbndMVkF0K0M1UUw2Z3hxREp3TXlBemVEUFFORWcwdURVUU5ZZzF3RFlZQUFBQUJBQUFBT0FDVEFBd0FBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFDQUFBQUFFQUFBQUFBQUlBQndCcEFBRUFBQUFBQUFNQUNBQTVBQUVBQUFBQUFBUUFDQUIrQUFFQUFBQUFBQVVBQ3dBWUFBRUFBQUFBQUFZQUNBQlJBQUVBQUFBQUFBb0FHZ0NXQUFNQUFRUUpBQUVBRUFBSUFBTUFBUVFKQUFJQURnQndBQU1BQVFRSkFBTUFFQUJCQUFNQUFRUUpBQVFBRUFDR0FBTUFBUVFKQUFVQUZnQWpBQU1BQVFRSkFBWUFFQUJaQUFNQUFRUUpBQW9BTkFDd1FXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Vm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2RDWVd4b1lXMEFRUUJuQUVJQVlRQnNBR2dBWVFCdFFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0VW1WbmRXeGhjZ0JTQUdVQVp3QjFBR3dBWVFCeVFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Um05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJhbGhhbS1kYXJrIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gIGNvbG9yOiAjRjVGNUY1O1xcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgZm9udC1zaXplOiAxMnB4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3QsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDM0MzY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBCMEZGO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzJkMzQzNjtcXG4gICAgYm9yZGVyLWNvbG9yOiAjNDI0MjQyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgKiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAqOmZvY3VzLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgKiAqOmJlZm9yZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrICogKjphZnRlciB7XFxuICAgICAgb3V0bGluZTogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDM2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzcycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogI2U1MzkzNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSksXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2VjZjBmMTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzYsIDI0MCwgMjQxLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWEge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZWNmMGYxOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzYsIDI0MCwgMjQxLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdyB7XFxuICAgIGJvcmRlcjogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM0MjQyNDI7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdzpub3QoLmFnLXJvdy1maXJzdCkge1xcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy5hZy1yb3ctbGFzdCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1vZGQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyYzJlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDQ3NDk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgb3BhY2l0eTogMC44NzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM0MjQyNDI7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMEIwRkY7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1saXN0IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDc0OTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjM0MjQyNDInJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjRweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjMmQzNDM2O1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZzogMCA4cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsuYWctZG5kLWdob3N0IGRpdiB7XFxuICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3QgLmFnLWRuZC1naG9zdC1pY29uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjMWMxZjIwO1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWJvZHkge1xcbiAgICBwYWRkaW5nOiAycHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpmaXJzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3QsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3Qge1xcbiAgICBtYXJnaW46IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICAgIGhlaWdodDogMjhweDtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItaGVhZGVyLWNvbnRhaW5lcjpudGgtY2hpbGQoMikge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBoZWlnaHQ6IDMycHg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIHtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC42NCk7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyIHtcXG4gICAgICAgICAgcGFkZGluZzogMCA1cHg7IH1cXG4gICAgICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIgPiBkaXYge1xcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWFpciB7XFxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWxpc3Qge1xcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC42NCk7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctaWNvbiB7XFxuICAgIHdpZHRoOiAxNnB4O1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbiBidXR0b24ge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ODgwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tIHtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDBCMEZGOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuMik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0NSwgMTY2LCAyNTUsIDAuNSk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI2LCAxNzcsIDc0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC42KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbGwtaGFuZGxlIHtcXG4gICAgY3Vyc29yOiBjZWxsOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiA0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LWxpc3Qge1xcbiAgICAgIHdpZHRoOiAyMDBweDtcXG4gICAgICBoZWlnaHQ6IDE4MnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgICBwYWRkaW5nOiAwIDRweCAwIDEycHg7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDc0OTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU4ODA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoaWxkLWNvdW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLXJpZ2h0IHtcXG4gICAgICBtYXJnaW46IDAgNHB4O1xcbiAgICAgIG9wYWNpdHk6IDAuNjQ7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzIzOTNjO1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtaW4td2lkdGg6IDE2cHg7XFxuICAgICAgbWFyZ2luOiAwIDJweDtcXG4gICAgICBvcGFjaXR5OiAwLjY0OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBiYWNrZ3JvdW5kOiAjMmQzNDM2O1xcbiAgICBoZWlnaHQ6IDcwcHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMiwgMTYwLCAxMzMsIDAuNSkgIWltcG9ydGFudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLWRhdGEtY2hhbmdlZC1hbmltYXRpb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctdG9wLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1mbG9hdGluZy10b3AgLmFnLXJvdywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1mbG9hdGluZy1ib3R0b20gLmFnLXJvdyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1uYW1lLXZhbHVlLXZhbHVlIHtcXG4gICAgY29sb3I6ICNGNUY1RjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc3RhdHVzLWJhci1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zaWRlLWJ1dHRvbiBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXI6IDA7XFxuICAgICAgICBjb2xvcjogI0Y1RjVGNTtcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAwO1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgICBtYXJnaW46IDA7XFxuICAgICAgICBtaW4taGVpZ2h0OiA3MnB4O1xcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMDtcXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNlbGVjdGVkIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2O1xcbiAgICBwYWRkaW5nOiAwcHg7XFxuICAgIGJvcmRlcjogMCBzb2xpZCAjNGY0ZjRmO1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyZjMwO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgICAgbWFyZ2luOiAycHggMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICAgIGhlaWdodDogMThweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbGFiZWxlZC5hZy1sYWJlbC1hbGlnbi10b3AgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctcGFyZW50LWNpcmNsZSB7XFxuICAgIHdpZHRoOiAyNHB4O1xcbiAgICBoZWlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLWNoaWxkLWNpcmNsZSB7XFxuICAgIHRvcDogNHB4O1xcbiAgICBsZWZ0OiAxMnB4O1xcbiAgICB3aWR0aDogNnB4O1xcbiAgICBoZWlnaHQ6IDZweDtcXG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XFxuICAgIG1hcmdpbi10b3A6IC00cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjBmMTtcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlY2YwZjE7XFxuICAgICAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgICAgcmlnaHQ6IC0xcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Q0NzQ5OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRpYWxvZy5hZy1jb2xvci1kaWFsb2cge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tY29sb3Ige1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdG9vbHMge1xcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20oYmxhY2spLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWRyYWdnZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctaHVlLWFscGhhIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xcbiAgICAgIGhlaWdodDogMTFweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZSB7XFxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBkNzdlNDtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2Omxhc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsuYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDM0MzY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNWM1YzVjO1xcbiAgICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICAgIGhlaWdodDogMzJweDtcXG4gICAgICBmb250LXNpemU6IDEycHg7XFxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiAuYWctaWNvbiB7XFxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpob3ZlciwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDA1MDU7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIge1xcbiAgICAgIGhlaWdodDogMzBweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGNvbG9yOiAjRjVGNUY1O1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzM0MzkzYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbHRpcC5hZy10b29sdGlwLWhpZGluZyB7XFxuICAgICAgb3BhY2l0eTogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTkxYTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6ICMwMEIwRkY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjRjVGNUY1O1xcbiAgICBmb250LXNpemU6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICBjb2xvcjogIzAwQjBGRjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRCYWxoYW1cXFwiO1xcbiAgICBzcGVhazogbm9uZTtcXG4gICAgZm9udC1zaXplOiAxNnB4O1xcbiAgICBjb2xvcjogI2VjZjBmMTtcXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1hcnJvd3M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWFzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGFydDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jb2xvci1waWNrZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29sdW1uczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29udHJhY3RlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY3Jvc3M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWN1dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZGVzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZXhwYW5kZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTExXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZXllOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1maWx0ZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1ncmlwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1ncm91cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbGFzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbWF4aW1pemU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLW1lbnU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1taW51czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbmV4dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbm90LWFsbG93ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXBhc3RlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXBpdm90OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1wbHVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9mZjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjhcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc2F2ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtZG93bjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXNtYWxsLXVwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10cmVlLWNsb3NlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tdHJlZS1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2O1xcbiAgICBsaW5lLWhlaWdodDogMTZweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICMwMEIwRkY7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICMwMEIwRkY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIzMnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyOHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI5OHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTZweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCMEZGICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgIGhlaWdodDogODAlO1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDY2LCA2NiwgNjYsIDAuNSk7XFxuICAgIGNvbnRlbnQ6IFxcXCIgXFxcIjtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdGV4dC1pbmRlbnQ6IC0yMDAwcHg7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhlYWRlci1jZWxsOjphZnRlcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICByaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhlYWRlci1jZWxsOjphZnRlcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcC5hZy13aWR0aC1oYWxmOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcC5hZy13aWR0aC1oYWxmOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcm93IHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjNWM1YzVjOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1zZWxlY3RlZCB7XFxuICAgIGJvcmRlci1jb2xvcjogIzAwNTg4MDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWluLWhlaWdodDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGhlaWdodDogMzJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xcbiAgICAgIHBhZGRpbmctdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWljb24tZXhwYW5kZWQsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctaWNvbi1jb250cmFjdGVkIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudS1vcHRpb24ge1xcbiAgICBoZWlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10YWItYm9keSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcG9wdXAtZWRpdG9yLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgY29sb3I6ICNGNUY1RjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgY29sb3I6ICNGNUY1RjU7XFxuICAgIHBhZGRpbmc6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0xOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTM6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC00Om5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjYpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayBpbnB1dCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayBzZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyYzJlO1xcbiAgICBjb2xvcjogI0Y1RjVGNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXItdG9vbHBhbmVsLWJvZHkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YzsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZEJhbGhhbVxcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpxTXV5M2dBQUFGNEFBQWJER2hsWVdRVm9tT1hBQUFjaEFBQUFEWm9hR1ZoQjhJRCtRQUFITHdBQUFBa2FHMTBlTllBSW5ZQUFCemdBQUFBNEd4dlkySEVtTDRhQUFBZHdBQUFBSEp0WVhod0FFVUFsUUFBSGpRQUFBQWdibUZ0WlpRWHhLUUFBQjVVQUFBQmtuQnZjM1FBQXdBQUFBQWY2QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFEQUQvLy93UEJBNEVBSndCUUFHNEFBQUVlQVJjV0ZSWVVCeFFIRGdFSEJpTUdJaWNpSnk0Qkp5WTFKalEzTkRjK0FUYzJNell5RnpJRklnWUhCZ2NPQVJjVUZ4NEJGeFlYRmpJM05qYytBVGMyTnpZMEp5WW5MZ0VuSmlNaUJnY0dJd0VqTlNFVkhnRVhGZ1lIRGdFVklUVXpGU0UwTmpjK0FTY3VBU2MxSVFNa1Bsd0NBUUVCQVFKY1BrbEpTWkpKU1VrOVhRSUJBUUVCQWx3K1NVbEpra2xKL2dVbE9nRUJBUUVCQVFNQ05TUkpTVXFTU2tsSkpEVUNBd0VCQVFFREFqVWtTVWhKa1VsSVNRSGdRUDhBQVhVWkVBb1lKMVlCQUVEK2dBWWJMV1FnTG1JQ0FZQURnQUpjUGtsSlNaSkpTVWsrWEFJQkFRRUJBbHcrU1VsSmtrbEpTVDVjQWdFQkFVRTRKa2hKU1pKSlNVa2tOUUlEQVFFQkFRTUNOU1JKU1VxU1NrbEpKRFVDQXdFQkFmOEFRQU1nUWlzY1JCY2lQUnBBZ0NaTUdDZEhIeWxITkVVQUFRQlRBQk1EclFOdEFDY0FBQk1YQnljM0hnRVhCeUVSQnljM0hnRVhCeWNSSVNjM0hnRVhCeWMzSVJFM0hnRVhCeWMzRnhITlNpNldsZ3dXREVvQkUwa3VseVpMSmk1SkFSTktMaVZNSlpZdVN2N3RTUXdXREplWExra0JvRWt1bDVjTUZneEpBUk5LTHBZbFRDVXVTdjd0U1M0bVN5YVhMa24rN1VvTUZneVdsaTVLQVJNQUFBRUJLUUNaQXRjQzV3QUtBQUFCQnljM0hnRVhCeWNSSXdIZ2lTN1hObXMyTG9sQUFteUpMZGMyYXpZdGlmNHRBQU1BZ0FCQUE0QURRQUFiQURjQVJnQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KZ2N5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOellUTng0QkZ3Y1hCeWNISnpjbk54Y0NBRTlHUm1rZUhoNGVhVVpHVDA5R1Jta2VIaDRlYVVaR1QwSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83UXFrTUZneXFxaTZwcVM2cXFpNnBBMEFlSG1sR1JrOVBSa1pwSGg0ZUhtbEdSazlQUmtacEhoNUFHUmxYT2p0Q1FqczZWeGtaR1JsWE9qdENRanM2VnhrWi91MnFEQllNcWFrdXFxb3VxYWt1cWdBREFOVUFsUU1yQXVzQUJBQUpBQTBBQUJNekVTTVJOek1SSXhFVE14RWoxWUNBNzNoNDczaDRBamYrWGdHaXRQMnFBbGIrcXY4QUFBTUFBUC9BQkFBRHdBQVBBQ0FBS0FBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lqQndFbk54Y0JIZ0VEU1Axd1RHeHNUQUtRVEd4c1N2MXRMVUZCTFFLVExVRkFMZ3orVk5Bem5RRjVEUnBBYkV3Q2tFeHNiRXo5Y0V4c0E3bEJMZjF0TGtCQUxnS1RMVUgzL2xQUk5KMEJlQTBhQUFNQUFQL0FCQUFEd0FBUEFDQUFKQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWWpBeUUxSVFOSS9YQk1iR3hNQXBCTWJHeEsvVzB0UVVFdEFwTXRRVUF1SmYyMkFrcEFiRXdDa0V4c2JFejljRXhzQTdsQkxmMXRMa0JBTGdLVExVSCtJa29BQWdBQS84QUVBQVBBQUE4QUlBQUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZakEwaE1iR3hNL1hCTWJHeE1BcEw5YlMxQlFTMENreTFCUUM0RHdHeE0vWEJNYkd4TUFwQk1iRWRCTGYxdExrQkFMZ0tUTFVFQUFBQURBSE1BU0FPTkF6Z0FCZ0FLQUJZQUFBa0JCeGNKQWlFM0Z5RUZNQVlWRkJZek1qWTFOQ1lDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBQUlBd0FDZ0FjQUM0QUFEQUFjQUFDVWhFU0VIRVRNUkFjRC9BQUVBd0lDZ0FrQkEva0FCd0FBRUFNQUFvQU5BQXVBQUF3QUhBQXNBRHdBQUpTTVJNeE1qRVRNVEl4RXpBU01STXdIQVFFREFRRURBUUVEOXdFQkFvQUpBL2NBQ1FQM0FBa0Q5d0FKQUFBQUFBQUVCWGdDcEFxSUMxd0FIQUFBQkJ4Y0hDUUVlQVFLaTZla3QvdWtCRndzWEFxbnA2UzRCRndFWERCWUFBd0NnQUVBRFlBTkFBQkFBSUFBekFBQWxJeUltTlJFME5qc0JNaFlWRVJRR0l4TWhJZ1lWRVJRV015RXlOalVSTkNZQkl6d0JOUkUwTmpNaE9nRXpGU0VpQmhVUkFyNzdRMkJnUS90RFgxOURCZjc5SnpjM0p3RURKemMzL2ZkQlgwTUJtZ0VDQWY1ZEpqWkFYMFFCT2tOZ1lFUCt4a1JmQWtBNEp2NjdKemMzSndGRkpqaitBQUVFQWdJWFExOUFOaWI5M0FBQUFBQUJBU2tBNlFMWEFwY0FEZ0FBQVRjZUFSY0hGd2NuQnljM0p6Y1hBZ0NwREJZTXFxb3VxYWt1cXFvdXFRSHRxZ3dXREttcExxcXFMcW1wTHFvQUFBQUFCUUJBQUFBRHdBT0FBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHV0NBaHBTa3BwYVVvVUpSRnBhUkVsRkVwcGFVcEthUWdJYWdFNmh2M1dveVUwTkNVbE5UVWxKVFEwSlNVMU5TVUJEUWtORFFrSkRRMEJNZjd6V1FFNmhnS0RFU1VVU21scFNrcHBDQWhxYWdnSWFVcEthV2xLRkNVUmFmN0hMUUlwRURVbEpUUTBKU1UxL2VjMEpTVTFOU1VsTkFGUURRa0pEUTBKQ1EwQnFmN3pXUUU1TFFBQUJ3Q0dBRllEZWdNcUFBc0FEd0FiQUNnQUxBQTRBRHdBQURjaUJoVVVGak15TmpVMEpnVTFJUlVESWdZVkZCWXpNalkxTkNZSE1oWVZGQVlqSWlZMU5EWXpCU0UxSVFFeUZoVVVCaU1pSmpVME5nVWhOU0hHR2lZbUdoc2xKUUtaL2VhYUdpWW1HaHNsSlJzU0dSa1NFUmtaRVFJSi9wRUJiLzMzR3lVbEd4b21KZ0xPL2VZQ0d0WW1HaHNsSlJzYUptdFZWUUdWSmhvYUppWWFHaVlWR1JJU0dSa1NFaGxXVmdFL0pSc2FKaVlhR3lWcVZRQUFBQUVCS1FDWkF0Y0M1d0FLQUFBQk54NEJGd2NuTnhjUk13SWdpUXdXRE5mWExvbEFBUlNKQ3hjTDE5Y3RpUUhUQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQVVBUXdCekE3MEREUUFzQUVvQWFBQnpBSDBBQUFFK0FUYzZBVE1XRng0QkZ4WVhNQVlIRGdFSEZ3Y25CZ2NHSmljbUp5NEJKeTRCSnpBMk56NEJOeWMzRndjT0FROEJGaGNlQVJjV056NEJOeWNPQVNNaUp5NEJKeVkxTkRZM0p3RStBVDhCSmljdUFTY21CdzRCQnhjK0FUTXlGeDRCRnhZVkZBWUhGd0VPQVJVVUZqTXlOamNuQlQ0Qk5UUW1JeUlHQndFcUwyZzJCd1FIU0VOQ2NpMHRHemt1RUNRVFBpMUxPVUJBZ0Q0OU5TbEVHUW9QQ2lVYkZ6Y2dQaTFLQ2pGT0dBRWROemVKVEV4SUN4WUtIUnhFSmk4b0tUMFNFUmNWTUFIQk1VMFlBUmduS0dVN096NHBVQ1VrSEVRbUxpa3BQUkVTR0JVcS9wME1EbDVDR0MwVDNnRUxEUTVlUWhrc0V3TEVGeHNDQWhnWFVqazRSSFl3RVI0TlBpMUxIQTBNQ0JVVkpoNUtMQkVpR0ZNa0h6WVdQaTFKVVNGWk53SkZOVFUvQndjWEJBZ0ZIUlVZRWhJOEtTa3VKa1FjTWY2WklWbzNBamd1TGtFU0VnRUJFeEVqRlJjUkVqMHBLQzhsUlJ3cUFRZ1RMQmxDWGc0TjNiQVRMUmhEWFE0TUFBUUFRd0NaQTcwQzlnQWtBRU1BWUFCdkFBQUJGaGNlQVJjV0Z6QUdCd1lIRGdFbkppY3VBU2N1QVNjd05qYzJOejRCTnpZM09nRXpCd1lIRGdFSEJnOEJGaGNlQVJjV056WTNQZ0UzTmo4QkppY3VBU2NtSXhjeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZ6VTBKaU1pQmgwQkZCWXpNalkxQWdsSVEwSnlMUzBiT1M0NlRrNm9VMVJGS1VRWkNnOEtKUnNnS1NwZ05UVTNCd1FIRVRzNE4yQW5KaGdCSFRjM2lVeE1TQ29sSmtBYUdoSUJHQ2NvWlRzN1BnZ3RLQ2M3RVJJU0VUc25LQzB0S0NjN0VSSVNFVHNuS0MyZ1hrSkNYbDVDUWw0QzlnSVlGMUk1T0VSMk1EMGpKQkFWRkRJZVNpd1JJaGhUSkNzakl6SU9EZ0pBQWhJVFFDMHNOZ0pGTlRVL0J3Y1hEUllXT3lNaktBTTRMaTFDRWhFZkVSRTdKeWd0TFNnbk94SVJFUkk3SnlndExTZ25PeEVSMkFGQ1hsNUNBa0plWGtJQUFnREFBS0FEUUFNQUFCc0FNd0FBQVFZSERnRUhCZ2NPQVIwQkJ6UTJKelFtSnlZbkxnRW5KaWMxSVFVVUZoY1dGeDRCRnhZWEZUYzFOamMrQVRjMk56NEJOUU5BQVJZVlFTVW1JQVFFd0FJQ0JRTWhKU1pBRmhVQkFvRDl3QVFFSVNVbVFCWVZBVUFCRmhWQkpTWWdCQVFDdWlBZkh6OGdJQ0lGQ3daMWtFS0RRZ1lLQkNJaElrQWVIeDFHUUFjT0JpSWhJa0FlSHgyR01GWWdIeDgvSUNBaUJnNEhBQUFBQWdEMUFLa0RDd0xYQUFjQUN3QUFBUWNYQndrQkhnRWxFU01SQXd2cDZTMys2UUVYQ3hmK05VQUNxZW5wTGdFWEFSY01GZ3YrQUFJQUFBQUFEQURBQU1BRFFBTEFBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQWxJelV6RnlNMU14Y2pOVE1YSXpVekpTTTFNeGNqTlRNWEl6VXpGeU0xTXlVak5UTVhJelV6RnlNMU14Y2pOVE1CQUVCQXdFQkF3RUJBd0VCQS9jQkFRTUJBUU1CQVFNQkFRUDNBUUVEQVFFREFRRURBUUVEQWdJQ0FnSUNBZ0VDQWdJQ0FnSUNBUUlDQWdJQ0FnSUFBQUFnQVAvLy9BOEVEZ1FBbkFGQUFWQUJZQUZ3QVlBQmtBR2dBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SUZJZ1lIQmdjT0FSY1VGeDRCRnhZWEZqSTNOamMrQVRjMk56WTBKeVluTGdFbkppTWlCZ2NHSXhNak5UTUZJVFVoSlNNMU13VWhOU0VsSXpVekJTRTFJUU1rUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWs5WFFJQkFRRUJBbHcrU1VsSmtrbEovZ1VsT2dFQkFRRUJBUU1DTlNSSlNVcVNTa2xKSkRVQ0F3RUJBUUVEQWpVa1NVaEprVWxJU2VDQWdBR0Evc0FCUVA2QWdJQUJnUDdBQVVEK0FJQ0FBZ0QrUUFIQUE0QUNYRDVKU1VtU1NVbEpQbHdDQVFFQkFRSmNQa2xKU1pKSlNVaytYQUlCQVFGQk9DWklTVW1TU1VsSkpEVUNBd0VCQVFFREFqVWtTVWxLa2twSlNTUTFBZ01CQVFIOTRFQkFRRUJBUUVCQVFFQkFBQUFBQUFRQVF3RElBNzBDdUFBa0FFMEFZQUJ3QUFBQkZoY2VBUmNXRnpBR0J3WUhEZ0VIQmljbUp5NEJKeVluTURZM05qYytBVGMyTXpvQkJ5SUdCd1lIRGdFSEJnY3dGaGNXRng0Qk56WTNOamMrQVRjMk56QW1KeVluTGdFbkppTXFBU01YSGdFVkZBWUhEZ0VuTGdFbk5EWTNQZ0V6Qnc0QkJ3WVdGeFkyTnpZbUp5NEJJd0lKUUVKQmRTOHdIVUk3S1M4dll6SXlNRHM1T21ZcEtSbEZQeUVsSlU0b0tDY0hCQW9OR1F3dU1DOVZJeU1WSHg4cU5EUnZPRGd4S2lnb1NCMGRFaDhmSGlVa1R5b3BLQVlFQmhKR2l4Z1pNSHcwUEdjQ0dSd2tVam9USTBnV0d4b3ZQWXdlR3lBd0Z5QW9BcmdCREF3NUx5OUlmU2tkRWhFUkFRRURCQkFQT3kwdFBvRXFGdzRQRVFRRVFBRUJBd3NMS3lFaExqOGNLQlVWRVFJQ0J3WU5EU3dlSGljL0hSd1RFaFFGQkIwQ1JWUWdQUlFtQmdVRlRVRWlRaFlhREVBQkNSa2dYQTBSQnlVaVhBc0dBZ0FDQVBVQXFRTUxBdGNBREFBUUFBQUpBU2MzSnpjV0Z4NEJGeFlYRXlNUk13STUvdWt0NmVrdEl5TWlSaU1qSTlKQVFBSEEvdWt1NmVrdUl5TWpSaUlqSS84QUFnQUFBQUFDQUhrQWt3T0hBdTBBQ3dBV0FBQUJCeUVWSVJjSENRRWVBUmNGRnpjbklUVWhOeWNPQVFJMFFBR1QvbTFBamY3U0FTNGpSeVArb05NeWdBSHUvaEtBTWpWcEFtQkF3RUNOQVMwQkxTTkhJNkRUTTRCQWdETTFhUUFBQUFnQVlBQWdBNkFEWUFBREFBa0FEd0FUQUJjQUhRQWpBQ2NBQUNVakVUTW5CeWMzSGdFRkJ5YzNIZ0UzSVRVaEJTRTFJVGNISnpjZUFTVUhKemNlQVFVakVUTUNJRUJBYzgwdHpRc1hBYXN0elMwelo0Yi9BQUVBL2NEL0FBRUFUUzNOTFRObkFkUE5MYzBMRi83ZVFFQWdBUUFnelMzTkN4ZXJMYzB0TTJmTlFFQkFZQzNOTFRObmJjMHR6UXNYaXdFQUFBQUNBUEVBc1FNUEFzOEFCd0FPQUFBVEh3RW5OeWNISnlVdkFSY0hGemZ4QTk5SGRGTjFSd0llQTk5SGRGTjFBWlBmQTBkMVUzUkhXdDhEUjNWVGRBQUFBd0RBQU9BRFFBS2dBQU1BQndBTEFBQWxJVFVoTlNFMUlUVWhOU0VEUVAyQUFvRDlnQUtBL1lBQ2dPQkFnRUNBUUFBQUFBSUF5d0NLQXpVQzlnQUhBQThBQUNVdkFSY0hGemNYRXg4Qkp6Y25CeWNCMmdUZVIzUlRkVWRNQk41SGRGTjFSN2plQkVoMVUzVkhBaERlQkVoMVUzVkhBQUFBQWdDQUFXQURnQUlnQUFNQUJ3QUFBU0UxSVFVVklUVURnUDBBQXdEOVFBS0FBV0RBUUVCQUFBRUJYZ0NwQXFJQzF3QU1BQUFKQVNjM0p6Y1dGeDRCRnhZWEFxTCs2UzNwNlMwakl5TkZJeU1qQWNEKzZTN3A2UzRqSXlOR0lpTWpBQUFBQUFJQVFBQ2dBOEFDNEFBS0FCWUFBQUUzSGdFWEJ5YzNGeEV6QVNNUkJ5YzNIZ0VYQnljUkFVR1FEQmNNNE9BdmtFSUJ3RUtRTCtBNGNEZ3ZrQUVZaGdzV0M5TFNMSVlCeVAzQUFjaUdMTkkwYVRVc2h2NDRBQUFHQUhZQVFBT0xBMHNBSEFBeUFFRUFVd0JpQUc0QUFBRVdGeDRCRnhZSEJnY09BU2NtSnlZbkxnRTNOamMyTno0Qk56WVhCd1lIRGdFSEJoY1dGeDRCTnpZM05pY3VBU2NtQnhjV0J3NEJCd1luTGdFdkFRRWVBUUVXTno0Qk56WTNOaVluQmdjT0FRY0dCeE15Rmg4QkFTWW5KalkzTmpjNkFRY0dCdzRCQndZWEFTNEJCd0lHWWxWVmF3NE5MU2RPVGJkZFhrY3ZIaDRYQ0FnY0dTY21YemMzT1FwVFIwaGFDZ3NuS0ZOVHVWVlZMU1VLQ1ZoSlNWenpJd2dJVFVCQlRodzBHQ2dCZ3dZTC90Z29LU3BKSEJzTUNBRUpJU0FoUVNFZ0lVTWhRQjBwL24wbEJRWXlPRGhZQkFvR01Db3FOd29LRGdFR0VTSVNBMHNDTlRXa1pXUmdWRGMzSlJVVVF5czVPbjVBUURveUtpazZFQkFCUUFFdExZeFZWRkZUTFMwRUtpdGNURlZWank4dUFjMUFTa2w3SlNZSUFoRU5GZ0dEQ2hUK3JRd0ZCU2NnSHlrZVBSMGdJU0ZCSVNBaEFkWVJFQmIrZkVGTFRJSXVMUVpBQWhrWlRUQXZMZ0VGQlFVQkFBQUFBQU1BZ0FBd0E0QURVQUFXQUNJQU5nQUFBVFFtSXlJR0ZTTWlCaFVSRkJZeklUSTJOUkUwSmlNRk1oWVZGQVlqSWlZMU5EWUJJU0ltTlJFME5qc0JGU0UxTXpJV0ZSRVVCZ0tBT0VoSU9JQTFTMHMxQWdBMVMwczEvd0FTR1JrU0Voa1pBUkwrQUJvbUpocEFBWUJBR2lZbUF2QVlTRWdZU3pYK1FEVkxTelVCd0RWTEVSZ1JFUmdZRVJFWS9aRW1HZ0hBR2lhQWdDWWEva0FhSmdBQUFBQUNBSEFBTUFPUUExQUFLQUJBQUFBQkp6QTJOejRCRnpjbU56NEJOell4RmhjZUFSY1dGdzRCQnc0Qkp3Y2VBUmNXQmc4Qkp3Y25Od0VPQVI4QkJ5WUdCd0UrQVRjMkppYzNNQlkzSnpBR01RRlpsUVlQSVhFd1pRa1FFQ3dVRkNVa0pVa2xKU1FGQ3dVYVJTcHFBUUVDQXlndkdKcnBMZWtCQ0JFYUNoQ2dNR0lUQVNFQ0JBSWVCd2VhT2lUYUFRRkhsU2NWTFE4Sll4d2RIUzRQRHlVbEpFb2xKQ1VIRGdjakx3ZG5DUUViTTJBWURKcnFMdWtCdGc0bUR4ZWZEQUllL3Q4Q0F3SWFWaXlhRVNyWkFRQUFDZ0EvLy84RHdRT0JBQ2NBT3dCSEFHRUFad0J1QUhzQWhnQ01BSklBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SVRJUkVXTXhZMk56WTNQZ0UzTmpjK0FTYzBKd0VVRmhVZUFSY3lGak0xSXdFSEp6Y2VBUmNISnhVT0FRY2pGd2NuTng0QkZ3Y1dOamMxQlJRV0ZUTTFKd1lVQnpNMUl6Y3FBU01pQmdjVUJoVXpOVE1sRlRNMEpqVXVBU2NpSmlVR0lnY1ZNemNtSWlNVk13TWtQbHdDQVFFQkFRSmNQa2xKU1pKSlNVazlYUUlCQVFFQkFsdytTVWxKa2tsSnFQMjZQVDA5ZWowOVBTUTFBZ0lDQVFFQkF2ejhBUUkxSkFnUUNId0NRUWt1VnhZckZpNEpBVncvZHdvdVZsWU1GZ3dMVVlJQi9id0JmbjBCQVg5OXZ4Z3VGeVU2QVFGOFFnSEhmUUVDTlNRSUVQN3pJVUVnZ3NNZ1FTR0NBNEFDWEQ1SlNVbVNTVWxKUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWsrWEFJQkFRSC9BUDI4QWdFQkFRSUNBalVrUFQwOGVqMDlQUDQ4Q1JFSUpEVUNBWDRCRmdvdVZoVXNGUzRLY3o5ZkFna3VWMWNNRmd3S0FSMUZjMVFoUUNDQndpRkFJWUwvT0NZWU1CbEJmMzhKRVFra05RSUJBZ0VCZjRBQmdRQUFBZ0NnQUdBRFlBTWdBQXNBRndBQUFTRVZJUkVqRVNFMUlSRXpCeEVoRlNFUk14RWhOU0VSQW1BQkFQOEF3UDhBQVFEQWdQOEFBUUJBQVFEL0FBSWd3UDhBQVFEQUFRQkEvd0JBL3dBQkFFQUJBQUFBQVFGZUFLa0NvZ0xYQUFjQUFBRUhGd2NKQVI0QkFxTHA2UzMrNlFFWEN4Y0NxZW5wTGdFWEFSY01GZ0FDQUFEL3dBUUFBOEFBR3dBM0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21CeklYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOZ0lBYWwxZGl5a29LQ21MWFYxcWFsMWRpeWtvS0NtTFhWMXFYVkZTZWlNakl5TjZVbEZkWFZGU2VpTWpJeU42VWxFRHdDZ3BpMTFkYW1wZFhZc3BLQ2dwaTExZGFtcGRYWXNwS0VBakkzcFNVVjFkVVZKNkl5TWpJM3BTVVYxZFVWSjZJeU1BQXdBQS84QUVBQVBBQUJzQU53QlRBQUFCSWdjT0FRY0dGUlFYSGdFWEZqTXlOejRCTnpZMU5DY3VBU2NtQnpJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmdFVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTXlGeDRCRnhZQ0FHcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtDZ3BpMTFkYWwxUlVub2pJeU1qZWxKUlhWMVJVbm9qSXlNamVsSlJBWjBaR1ZjNk8wSkNPenBYR1JrWkdWYzZPMEpDT3pwWEdSa0R3Q2dwaTExZGFtcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtFQWpJM3BTVVYxZFVWSjZJeU1qSTNwU1VWMWRVVko2SXlQK1FFSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83QUFBQUFBSUFlUUNUQTRjQzdRQU9BQmtBQUFrQkp6Y2hOU0VuTnhZWEhnRVhGaVVYSVJVaEJ4YzNKdzRCQTRmKzBvMUEvbTBCazBDTkppWWxUQ1VtL3NhQS9oSUI3b0F5MDlNTUdnSEEvdE9OUU1CQWpTVW1Ka3NtSlhxQVFJQXowOU1OR1FBQUFBQUNBSUFBUUFPQUEwQUFEZ0FaQUFBQkVTRVJJeEVVRmpNaE1qWTFFU01GTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeVZmOEFianpWMVR4dVZnSEEvdFVCSy83Vkl6SXlJd0VySFc0ODFkVThiZ0dkL21NQUFRRHBBUjRERndKaUFBY0FBQWtDTnhjM0hnRURGLzdwL3VrdTZla01GZ0kxL3VrQkZ5M3A2UXNYQUFBQkFWNEFxUUtpQXRjQUJ3QUFBUWNYQndrQkhnRUNvdW5wTGY3cEFSY0xGd0twNmVrdUFSY0JGd3dXQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQUVBNlFFZUF4Y0NZZ0FMQUFBQkJ5Y0hKd0VXRng0QkZ4WURGeTdwNlM0QkZ5TWpJa1lqSXdGTExlbnBMUUVYSXlNalJTTWpBQUFBQVFEcEFPNERGd0tTQUFjQUFBa0JKemNYQVI0QkF4ZitpYmN1aVFGSkRCWUNaZjZKdHkySkFVa0xGd0FCQVY0QXFRS2lBdGNBREFBQUNRRW5OeWMzRmhjZUFSY1dGd0tpL3VrdDZla3RJeU1qUlNNakl3SEEvdWt1NmVrdUl5TWpSaUlqSXdBQUFBQUJBTUFCb0FOQUFlQUFBd0FBRXlFVkljQUNnUDJBQWVCQUFBQUFBUURwQVI0REZ3SmlBQWNBQUFrQ054YzNIZ0VERi83cC91a3U2ZWtNRmdJMS91a0JGeTNwNlFzWEFBQUJBQUFBQVFBQUVrdmhlVjhQUFBVQUN3UUFBQUFBQU5sQmo0MEFBQUFBMlVHUGpRQUEvOEFFQUFQQUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFQQS84QUFBQVFBQUFBQUFBUUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQTRCQUFBQUFBQUFBQUFBQUFBQWdBQUFBUUFBRDhFQUFCVEJBQUJLUVFBQUlBRUFBRFZCQUFBQUFRQUFBQUVBQUFBQkFBQWN3UUFBTUFFQUFEQUJBQUJYZ1FBQUtBRUFBRXBCQUFBUUFRQUFJWUVBQUVwQkFBQlhnUUFBRU1FQUFCREJBQUF3QVFBQVBVRUFBREFCQUFBUHdRQUFFTUVBQUQxQkFBQWVRUUFBR0FFQUFEeEJBQUF3QVFBQU1zRUFBQ0FCQUFCWGdRQUFFQUVBQUIyQkFBQWdBUUFBSEFFQUFBL0JBQUFvQVFBQVY0RUFBQUFCQUFBQUFRQUFIa0VBQUNBQkFBQTZRUUFBVjRFQUFGZUJBQUE2UVFBQU9rRUFBRmVCQUFBd0FRQUFPa0FBQUFBQUFvQUZBQWVBTUlCQmdFZUFZd0JxQUhxQWlRQ1dBS0dBcG9DdkFMU0F4NERQZ08yQkJJRUtnUklCUWdGcmdZQ0JpQUdhZ2NNQjdZSDJnZ0lDRklJY2dpTUNLNEl3Z2pnQ1F3SnhBb1VDbndMVkF0K0M1UUw2Z3hxREp3TXlBemVEUFFORWcwdURVUU5ZZzF3RFlZQUFBQUJBQUFBT0FDVEFBd0FBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFDQUFBQUFFQUFBQUFBQUlBQndCcEFBRUFBQUFBQUFNQUNBQTVBQUVBQUFBQUFBUUFDQUIrQUFFQUFBQUFBQVVBQ3dBWUFBRUFBQUFBQUFZQUNBQlJBQUVBQUFBQUFBb0FHZ0NXQUFNQUFRUUpBQUVBRUFBSUFBTUFBUVFKQUFJQURnQndBQU1BQVFRSkFBTUFFQUJCQUFNQUFRUUpBQVFBRUFDR0FBTUFBUVFKQUFVQUZnQWpBQU1BQVFRSkFBWUFFQUJaQUFNQUFRUUpBQW9BTkFDd1FXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Vm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2RDWVd4b1lXMEFRUUJuQUVJQVlRQnNBR2dBWVFCdFFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0VW1WbmRXeGhjZ0JTQUdVQVp3QjFBR3dBWVFCeVFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Um05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJhbGhhbSB7XFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xcbiAgY29sb3I6ICMwMDA7XFxuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBmb250LXNpemU6IDEycHg7XFxuICBsaW5lLWhlaWdodDogMTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGhlbWUtYmFsaGFtLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgIG1hcmdpbjogNHB4O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICBwYWRkaW5nOiA0cHggOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA5MUVBO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XFxuICAgIGJvcmRlci1jb2xvcjogI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gKiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gKjpmb2N1cywgLmFnLXRoZW1lLWJhbGhhbSAqICo6YmVmb3JlLCAuYWctdGhlbWUtYmFsaGFtICogKjphZnRlciB7XFxuICAgICAgb3V0bGluZTogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUzMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNjE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNzAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogODY4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTUycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk1MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDM2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA2NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA5MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogODIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE0OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctbGVmdDogODQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogODgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIzMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTMxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTM0NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMzcycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hlY2tib3gsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94IGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94IGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwge1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1sZWFmLWluZGVudCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS1kZWx0YSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS1kb3duIHtcXG4gICAgY29sb3I6ICNlNTM5MzU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS12YWx1ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcHg7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzk1QTVBNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcXG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMTQ5LCAxNjUsIDE2NiwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzk1QTVBNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNDksIDE2NSwgMTY2LCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y3O1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdyB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI0JEQzNDNztcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdzpub3QoLmFnLXJvdy1maXJzdCkge1xcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93LW9kZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2ZkZmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0YwRjE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjQkRDM0M3O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA5MUVBO1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICB3aWR0aDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1kaXNhYmxlZCB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1zaG9ydGN1dCB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3Ige1xcbiAgICAgIGhlaWdodDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNCREMzQzcnJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgd2lkdGg6IDI0cHg7XFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLmFnLWRuZC1naG9zdCB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZzogMCA4cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3Qgc3BhbixcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3QgLmFnLWRuZC1naG9zdC1pY29uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y1ZjdmNztcXG4gICAgbWluLXdpZHRoOiAyMjBweDtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWJvZHkge1xcbiAgICBwYWRkaW5nOiAycHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0IHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3Qge1xcbiAgICBtYXJnaW46IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInJhZGlvXFxcIl0ge1xcbiAgICBtYXJnaW46IDAgM3B4IDAgNnB4O1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxN3B4O1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItbGlzdCB7XFxuICAgIGhlaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYXBwbHktcGFuZWwgYnV0dG9uICsgYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIHtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IGF1dG87XFxuICAgICAgICAgICAgICAgIGZsZXg6IGF1dG87XFxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XFxuICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIgPiBkaXYge1xcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5LXdyYXBwZXIge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCB7XFxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1udW1lcmljLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhZ2luZy1wYW5lbCA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDE2cHg7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbiBidXR0b24ge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCAuYWctaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I3ZTRmZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3Age1xcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tIHtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDA5MUVBOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtbGVmdCB7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDkxRUE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgODgsIDI1NSwgMC4xKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI1NSwgMTMyLCAwLjEpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNDUsIDIzNCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE0NSwgMjM0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuNik7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjODY5MTk4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0IHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzg2OTE5ODsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMDA5MUVBOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20uYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM4NjkxOTg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjODY5MTk4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcmFuZ2UtaGFuZGxlIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB3aWR0aDogNnB4O1xcbiAgICBoZWlnaHQ6IDZweDtcXG4gICAgYm90dG9tOiAtMXB4O1xcbiAgICByaWdodDogLTFweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNzsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgICAgd2lkdGg6IDIwMHB4O1xcbiAgICAgIGhlaWdodDogMTgycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgICBwYWRkaW5nOiAwIDRweCAwIDEycHg7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGhlaWdodDogMjhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbTpob3ZlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNGMEYxOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93LXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjdlNGZmOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNztcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjU0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjZGRlNGU2O1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbjogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDAuNTQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNldC1maWx0ZXItbGlzdCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLWRhdGEtY2hhbmdlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmxvYXRpbmctdG9wLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20gLmFnLXJvdyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1uYW1lLXZhbHVlLXZhbHVlIHtcXG4gICAgY29sb3I6ICMwMDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7XFxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2lkZS1idXR0b24gYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYm9yZGVyOiAwO1xcbiAgICAgICAgY29sb3I6ICMwMDA7XFxuICAgICAgICBwYWRkaW5nOiA4cHggMCA4cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogNzJweDtcXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDA7XFxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBtaW4taGVpZ2h0OiA1MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gICAgcGFkZGluZzogMHB4O1xcbiAgICBib3JkZXI6IDAgc29saWQgI2NiZDBkMztcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtbGFiZWwgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVlZWY7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBoZWlnaHQ6IDI2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gZGl2IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIgLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgICBkaXNwbGF5OiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRvb2xiYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY1ZjU7XFxuICAgICAgcGFkZGluZzogNHB4O1xcbiAgICAgIGJvcmRlcjogMCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogMnB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zbGlkZXIgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgdG9wOiA0cHg7XFxuICAgIGxlZnQ6IDEycHg7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcXG4gICAgbWFyZ2luLXRvcDogLTRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM0YzRjOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3RjhDOEQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTZweDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzdGOEM4RDtcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgPiBkaXYge1xcbiAgICAgIHdpZHRoOiAxNnB4O1xcbiAgICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIGJ1dHRvbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWNvbG9yIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdmFsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWUge1xcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2OmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0uYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFuZWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgICAuYWctZHJhZ2dpbmctcmFuZ2UtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsLmFnLWRpYWxvZyB7XFxuICAgICAgb3BhY2l0eTogMC43O1xcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWRjZGU7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOmhvdmVyLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkN2UwZTI7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgaGVpZ2h0OiAzMHB4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2x0aXAge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2JkMGQzO1xcbiAgICBjb2xvcjogIzAwMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNjYmQwZDM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIG1hcmdpbjogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoMm4gKyAyKTpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoM24pIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwuYWctc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwOTFFQTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjMDAwO1xcbiAgICBmb250LXNpemU6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbS5hZy1zZWxlY3RlZCB7XFxuICAgICAgY29sb3I6ICMwMDkxRUE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1mb3JtYXQgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIC5hZy1ncm91cC1pdGVtIHtcXG4gICAgbWFyZ2luOiA0LjhweCAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRCYWxoYW1cXFwiO1xcbiAgICBzcGVhazogbm9uZTtcXG4gICAgZm9udC1zaXplOiAxNnB4O1xcbiAgICBjb2xvcjogIzdGOEM4RDtcXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1hZ2dyZWdhdGlvbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWFzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNhbmNlbDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2xvci1waWNrZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2x1bW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY29udHJhY3RlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNvcHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWN1dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWRhdGE6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tZXhwYW5kZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTExXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1leWUtc2xhc2g6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1maWx0ZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1maXJzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1ncm91cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWxvYWRpbmc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW1lbnU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1taW5pbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tbmV4dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW5vbmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXBhc3RlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcGluOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1wbHVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcHJldmlvdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tc21hbGwtZG93bjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXNtYWxsLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXNtYWxsLXVwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdGljazpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdHJlZS1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdHJlZS1vcGVuOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgb3BhY2l0eTogMC4zODsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1yb3ctZHJhZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiAjMDA5MUVBOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIzMnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyOHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI5OHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTZweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQSAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiA4MCU7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWdyb3VwLWNlbGw6OmFmdGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgxODksIDE5NSwgMTk5LCAwLjUpO1xcbiAgICBjb250ZW50OiBcXFwiIFxcXCI7XFxuICAgIGhlaWdodDogMTZweDtcXG4gICAgbWFyZ2luLXRvcDogOHB4O1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRleHQtaW5kZW50OiAtMjAwMHB4O1xcbiAgICB0b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICByaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1oZWFkZXItY2VsbDo6YWZ0ZXIsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhlYWRlci1ncm91cC1jZWxsOjphZnRlciB7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3AuYWctd2lkdGgtaGFsZjpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wLmFnLXdpZHRoLWhhbGY6Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93IHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZDlkY2RlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBib3JkZXItY29sb3I6ICNiN2U0ZmY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtaW4taGVpZ2h0OiAyNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y3O1xcbiAgICBoZWlnaHQ6IDMycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtY2VsbC10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcXG4gICAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNpZGUtYmFyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1pY29uLWV4cGFuZGVkLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1pY29uLWNvbnRyYWN0ZWQge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudS1vcHRpb24ge1xcbiAgICBoZWlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWJvZHksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wb3B1cC1lZGl0b3IsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGNvbG9yOiAjMDAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcge1xcbiAgICBoZWlnaHQ6IDI4cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWRldGFpbHMtcm93IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW92ZXJsYXktbG9hZGluZy13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGNvbG9yOiAjMDAwO1xcbiAgICBwYWRkaW5nOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNDUsIDIzNCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE0NSwgMjM0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuNik7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXItdG9vbHBhbmVsLWJvZHkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZENsYXNzaWNcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadDZzb2E0QUFBRjRBQUFVNEdobFlXUVZvMk92QUFBV1dBQUFBRFpvYUdWaEI4UUQrQUFBRnBBQUFBQWthRzEwZU5ZQUdGa0FBQmEwQUFBQTRHeHZZMkdhaEpWNkFBQVhsQUFBQUhKdFlYaHdBRVVBWFFBQUdBZ0FBQUFnYm1GdFpSSEJiQ1VBQUJnb0FBQUJubkJ2YzNRQUF3QUFBQUFaeUFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFMWUFRQU5LQTBBQUNnQUFBU0VYQnlFVklSTURJUlVEU3Y2VGVYa0JiZjFzM053Q2xBS1YxZFdyQVlBQmdLc0FBQUFBQVFBQS84QUVBQVBBQUNFQUFBRTFCeWMzRndjbkVTRW5OeGNISnpjaEVUY1hCeWMzRnhFaEZ3Y25OeGNISVJFQnpWSkl6YzFJVWdFSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKQXZNSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKVWtqTnpVaFNBUUFBQUFBQUFRQ1dBQjREYWdOaUFCQUFBQUVISndFV0Z4NEJGeFlYQnljUkl4RXhBYTZ4WndGcUxTNHRXaTR0TFdld3BRSkNzV2NCYWk0dExWc3RMUzFuc1AzZEFpUUFBQUFCQVFBQXdBTUFBc0FBQ3dBQUFRY25CeWMzSnpjWE54Y0hBd0JJdUxoSXVMaEl1TGhJdUFFSVNMaTRTTGk0U0xpNFNMZ0FCUUFCLzc0RC93UEJBQThBSHdBakFDY0FMQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJNeEVqSlRNVkl3TXpFU01SQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDJhVlZVQlZWVlZxMVpXUWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL3F2KzFxcXFBYXIrVmdHcUFBQUFBd0FCLzc0RC93UEJBQThBSHdBcEFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdjQkp6Y1hFeDRCRnpFRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZYlA3by9UV3U2QkltRWdQQlN6WDgvVFZMU3pVREF6VkxWeGdSL1A4UkdSa1JBd0VSR0w3OS9zcERpd0dvQ2hRS0FBQUFBQU1BQWYrK0EvOER3UUFQQUI4QUl3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRElUVWhBMzgxUzBzMS9RSTFTMHMxQXYvOC9oRVlHQkVEQWhFWUdPYitxZ0ZXQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL2dHcUFBQUFBZ0FCLzc0RC93UEJBQThBSHdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVlBQU1BY3dCSUE0MERPQUFHQUFvQUZ3QUFDUUVIRndrQ0lUY1hJUVV3QmhVVUZqTXlOalUwSmpFQy9mNVZQR2IrOXdGRkFVWDk3OHpNL21nQ1RGVXlJeU15VlFHTkFhczhadjczL3JzQlJjM05RR3NxSXpJeUl5cHJBQUFBQWdCVkFCVUJxd05yQUFNQUJ3QUFBUkVoRVFFVklUVUJxLzZxQVZiK3FnSnIvYW9DVmdFQXE2c0FBQUFHQUZVQUZRT3JBMnNBQXdBSEFBc0FEd0FUQUJjQUFDVVZJVFVoRlNFMUF4VWhOU0VWSVRVREZTRTFJUlVoTlFHci9xb0RWdjZxcXY2cUExYitxcXIrcWdOVy9xckFxNnVycXdGVnFxcXFxZ0ZXcTZ1cnF3QUFBd0FCLzc0RC93UEJBQThBSHdBakFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdNVklUVURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWtmNEFBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvcXVxcWdBQUFBQURBS3NBYXdOVkF4VUFCd0FNQUJJQUFBRXpFU0UxSXhFaEV5RVJJUkVuTlNFUk14RUNxNnIrQUtvQ0FGWCtxd0ZWcS82clZRSnIvZ0NxQWdEL0FQNnJBVlZXVmY2ckFRQUFBQUFBQVFCdUFDNERrZ05TQUEwQUFBa0JIZ0VYQ1FFSENRRW5DUUUzQWdBQkdSNDlIdjduQVJsNS91Zis1M2tCR2Y3bmVRSTVBUmtlUFI3KzUvN25lUUVaL3VkNUFSa0JHWGtBQXdCNEFOVURud0xoQURnQVJ3QmFBQUFCTmpjK0FUYzJGeDRCSHdFR0J3NEJCd1lIRmhjZUFSY1dGdzRCSnk0Qkp3NEJCd1luTGdFbkpqYytBVGN1QVRjK0FSY2VBUmNlQVJjSEJnY09BUWNHTno0Qk56QTJCekVuSWdZSERnRUhCaGNlQVJjV0Z6Y3VBU014QWhvbUpTWkdJQ0VkRUJ3Tk55QWdJRUFoSUNBZ0lTQkFJQ0FnTm0xSklrb2hPM3hDSHlVbU93OFBEZzFES0VCTUdCQTlNVDFzTmhBaEVKc25LeXMyQVFJdEkwUWtBd1dPQkFrRkF3VURGdzBNUGljbkhnRWxUaDBDT1NFZUh5OE9EZ0VCQ1FjaEd4c2JOeHdiR3hvWkdqUWFHaG9oRGpZWk54a3NUQjBPQWdJaUhoNHFLemtUSW5BMEl5TUJCRTRtREJnTWtBRVZGVEVURXdJQk5CZzBBZU1DQVFFREFROFVGU1VPRFFFekdqUUFBQUFBQndBeUFDY0R6Z05aQUFzQUR3QWJBQjhBS3dBd0FEMEFBRGNpQmhVVUZqTXlOalUwSmlrQkZTRUJJZ1lWRkJZek1qWTFOQ1loRlNFMUJ6SVdGUlFHSXlJbU5UUTJBUlVoTlNFaE1oWVZGQVlqSWlZMU5EWXpuUzArUGkwc1BqNERCZjFWQXF2OHp5MCtQaTBzUGo0REJmMVZoaDRzTEI0ZkxDd0RVUDFWQXF2OHp5dytQaXd0UGo0dC9ENHNMVDQrTFN3KzFRSUVQeXdzUHo4c0xEL1cxaUFzSHg4c0xCOGZMQUZPMWRVK0xTdytQaXd0UGdBQUFBRUFsZ0FqQTJvRFhRQUpBQUFCRVRNUk54Y0pBVGNYQWEra3NHZitsdjZXWjdJQlF3SWEvZWV3Wi82V0FXcG5zUUFBQUFBREFBSC93UVFCQThFQUVBQWdBQ3dBQUFFeUZoVVJGQVlqSVNJbU5SRTBOak1oRnlFaUJoVVJGQll6SVRJMk5SRTBKZ0V6RlNNVkl6VWpOVE0xTXdPQU5VeE1OZjBCTlV0TE5RTC9BZnorRWhnWUVnTUNFUmdZL3NTcnE2dXJxNnNEd1VzMS9RQTFTMHMxQXdBMVMxY1lFZjBCRVJnWUVRTC9FUmorcktxcXFxcXJBQUFEQUNJQWRnUGVBd29BSWdCSUFGTUFBQUUzRno0Qk14WVhIZ0VYRmhjT0FRY1hCeWMzQVQ0Qk56WXlNeVkwTlNNaUJnY25CeE1tSnk0Qkp5WW5EZ0VIRmhjZUFSY1dOeGNHQndZbUp5WW5KaWN1QVNjbUp6NEJOekVCUGdFM01DWW5EZ0VIRndFb05TY2dRaU5JUWtKM05ETXJLbTlBTjBNaER2N01IajhlQ2hRTEFRczFhekpRTXVzcUpTVTZGQlFISXo0YUpqRXljejgvUHpRdUx5OWZMeTh1SWg0Zk5oa1lGeXRxUHdIakxrd2dQemtMUGl4VEF1RXBNZ2tLQWhjWFVEWTJQejVySjBVMUtRd0Jod2NGQVFFVkt4VUtFR1pLL3RZRkVSSTNKQ1FwR2o4a05Da3FPQXdNQ0VFT0JRVUpFQThiRlJvWk95QWdJajl2S2Y2UUhVc3JVQzAxVmh0cUFBQUFBd0FpQUprRDNnTG9BQnNBT3dCS0FBQUJGaGNlQVJjV0Z3WUhEZ0VuSmljbUp5NEJKeVluTmpjK0FUYzJCdzRCQnhZWEhnRTNOamMrQVRjd0ppY0dCdzRCQndZaklpY3VBU2NtSnpFbEpqUTFJdzRCQnhjK0FUYzZBVE1DQ1VoQ1FuYzBNeXM3VlZYRmFXbGpJaDRmTmhrWUZ5bzFOSHRHUmJjalBob3dSRVNjVWxOTk1WRWlQemtKRnhkREtTb3VMeW9yUWhjWENBRlNBUXRFaHp3bExtWXhDaFFMQXVnQ0Z4ZFBOalpBVjBWRlNBVUVQQlFhR2pvaElDRS9OemRSRnhldkdVQWtRakV5TVFZRkxSeFBMbEFzTENVbE53OFFFQkE1Smljc0F4WXJGUUVSSFUwV0RnSUFBQUFDQUZVQVFBT3JBMEFBQmdBTEFBQVRJUUVSSnhFQkFSVXpOU05WQTFiK3FxcitxZ0ZXcXFvRFFQNnIvbFdyQVFBQlZmNnJWbFlBQUFJQThnREFBdzRDd0FBREFBa0FBQUVSSXhFQkp6Y25DUUVCUjFVQ0hNZkhPZjhBQVFBQ3dQNEFBZ0QrT2NmSE9mOEEvd0FBQUFBQURBQ3IvK3NEVlFPVkFBTUFCd0FMQUE4QUV3QVhBQnNBSHdBakFDY0FLd0F2QUFBM014VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlFak5UT3JxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFhcXFxcFdxcXFxcXFnR3FxcXFxcXFvQnFxcXFxcXFxQWFxcXFxcXFBQUFBQUFVQVZmL3JBNnNEbFFBZkFDTUFLQUFzQURBQUFBRXpOU0VSSVRVakZTTVZJVFVoRVNFMUlSRWhOU0VSSVRVaEVTTVJJUlV4QVNNVk14RWpGVE0xRVNNVk15VWpGVE1CcTZvQlZ2NnFxcXNCVlFGVy9xcitxd0ZWQVZiK3F2NVdWZ0ZXQWFxcXFxcXFxcXIrQUtxcUEwQlYvd0JXVnFwVi93QlYvd0JXL3dCVkFsVUJBRlg5VlZVQnExWldBVlZWVlZVQUFBQURBQmtCRVFQbkFwTUFGZ0F0QUR3QUFBRVdGeDRCRnhZZkFRWUhEZ0VuSmk4Qk5qYytBVGMyQlE0Qkl5SW1KdzRCRHdFV0Z4NEJOelkvQVM0Qkp6RUhKalExSXc0QkJ4YytBVGMyTWpNQ0NENDhQSEl6TkN3a1hucDUvM3g3WXlReE9qbCtSRU1CTFJ5QlVsS0JIQ0U5SEFOS1hsN0ZYMTlNQXh3L0lwa0JDMFNIUENVdVpqRUtGQXNDa3dFTURDMGhJQ3NrWFRVMUR5b3BYeVF5SnlnM0R3K0lSMXhjUnc0bUZ3TS9JQ0VCSUI5QUFoZ29EaU1WS3hVQkVCNU1GZzBDQVFBQUFnRHlBTUFERGdMQUFBTUFDZ0FBSlNNUk13RTNKemNKQVNjRERsVlYvZVRIeHprQkFQOEFPY0FDQVA0NXg4YzUvd0QvQURrQUFBQUJBRXNBVmdPMUF5b0FDd0FBQVJjSENRRWVBUmNISVJVaEFXK3RaLzZXQVdvWk5CcXZBa2o5dWdGcXJXY0JhZ0ZxR2pNYXJxc0FBQUlBVlFBVkE2c0Rhd0FjQUNjQUFBRTNGd2N6RlNNZUFSY0hKeFVqTlFjbk55TTFNeWMzSGdFWE5UTVZBek0zTlNjakJ4VWVBUmNDVlp4NW5OM2RKMDRuZVp5cW5IbWMzZDJjZVNkT0o2cWNqbVJram1RWk1oa0NqcHg1bktvblRpZDVuTjNkbkhtY3FweDVKMDRuM2QzK2gyU09aR1NPR1RJWkFBQUVBQUgvdmdQL0E4RUFEd0FmQUNjQUx3QUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQkJ6Y1hOeGNIRndFM0J4Y0hGemNYQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDNnNDBneW56bWZNQUczU3VVeG9EbWdNVUpMTlFNRE5VdExOZno5TlVzRHJCZ1IvUDhSR1JrUkF3RVJHUDB0U2VReG56bWZNUUczNVVreW9EbWdNUUFEQUZVQUZRT3JBMnNBQXdBSEFBc0FBQ1VWSVRVQkZTRTFBUlVoTlFPci9Lb0RWdnlxQTFiOHFzQ3Jxd0ZWcXFvQlZxdXJBQUFBQUFRQUFmKytBLzhEd1FBUEFCOEFKd0F2QUFBRklTSW1OUkUwTmpNaE1oWVZFUlFHQXlFaUJoVVJGQll6SVRJMk5SRTBKZ0UzQnljSEp6Y25BUWMzSnpjbkJ5Y0RmLzBDTlV0TE5RTCtOVXRMTlB6K0VSZ1lFUU1DRVJnWS9XemtTVEtmT1o4d0FXeEo1REdmT1o4eFFrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9lNUo1REdnT2FBeEFXemtTVEdnT2FBeEFBRUFxd0ZyQTFVQ0ZRQURBQUFUSVJVaHF3S3EvVllDRmFvQUFBQUJBV1FBd0FLY0FzQUFCUUFBSlRjbk53a0JBV1RIeHpnQkFQOEErY2ZIT2Y4QS93QUFBQUFBQVFEUy85WURMZ09xQUJRQUFBRUhKd0VXRng0QkZ4WVhCeWNSTnhjSkFUY1hFUUdsYkdjQkxpWWxKa3dsSmlabmJHeG4vdEwrMG1kc0FvRnNad0V1SmlVbVRDVW1KbWRzL241c1ovN1NBUzVuYkFHQ0FBQUFBQU1BQWYrL0JBQUR3Z0FjQUNvQU9RQUFBVElYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOak1GQVI0Qk16STNQZ0UzTmpVMEppY3VBU01pQnc0QkJ3WVZGQllYQVFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxQVZIOXFUYUdTbGhPVG5RaElqQjBONFpLV0U1T2N5SWhMeXNDVndQQ0tDbUxYbDFxYTExZGpDZ3BLU2lNWFYxcmFsMWVpeWtvKy8ycEtqQWlJWFJPVFZsS2hZRXFNQ0VpZEUxT1dFdUdOZ0pYQUFBQ0FLc0FRQU5WQTBBQUNBQVNBQUFCSVJFaEVTRTFNeFVYSXhVaE5TTVJJUkV4QWxVQkFQMVdBUUNxcTFYK3FsVUNBQUxyL1ZVQ3ExVlZWcXFxL2dBQ0FBQUFBQUVBcXdBVkExVURGUUFQQUFBQkl4RVhJUXNCSVRjMU14RWpOU0VWQXdCVnF2OEFWVlgvQUtwV3F3SUFBc0QrcTFiL0FBRUFWbFVCQUZWVkFBVUFBZisrQS84RHdRQVBBQjRBSmdBOEFFUUFBQVVoSWlZMUVUUTJNeUV5RmhVUkZBWUJOU01pQmhVUkZCWTdBUkVqTlRNRklSRWhNalkxRVE4Qkp6Y2VBUmNISnhVakZ3Y25OeDRCRndjek5URVRJUlVoTlRRbUl3Ti8vUUkxUzBzMUF2NDFTMHY5VElJUkdCZ1JncXVyQXFuOXJBSXJFUmorRFR4ekhUb2RQUXpFRFQxemN4QWVEdzF2MWYzVkFsUVlFVUpMTlFNRE5VdExOZno5TlVzREFxb1lFZnovRVJrQ1ZWVlYvYXNaRVFJcjV3MDljeDA2SEQwTnhBdzlkSE1QSGc4TmJ3SG1xb0VSR0FBQUFBQUJBS3NBYXdOVkF4VUFDd0FBRXlFUk14RWhGU0VSSXhFaHF3RUFxZ0VBL3dDcS93QUNGUUVBL3dDcS93QUJBQUFCQVdRQXdBS2NBc0FBQlFBQUpTYzNKd2tCQXB6SHh6ai9BQUVBK2NmSE9mOEEvd0FBQUFBQUFnQUIvNzhFQUFQQ0FCd0FPUUFBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNVk1oY2VBUmNXRlJRSERnRUhCaU1pSnk0Qkp5WTFORGMrQVRjMk13SUFhbDFkaXlnb0tDaUxYVjFxYWwxZGl5Z3BLU2lMWFYxcVdFNU9kQ0VpSWlGMFRrNVlXRTVPY3lJaElTSnpUazVZQThJb0tZdGVYV3ByWFYyTUtDa3BLSXhkWFd0cVhWNkxLU2hYSVNKMFRVNVlXVTFPZENFaUlpRjBUazFaV0U1TmRDSWhBQUFEQUFIL3Z3UUFBOElBSEFBNUFGWUFBQUV5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6RlNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNQkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpNaGNlQVJjV0ZRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcVdFNU9jeUloSVNKelRrNVlXRTVPZENFaUlpRjBUazVZQVFBVUZFVXZMelUxTHk1R0ZCUVVGRVl1THpVMUx5OUZGQlFEd2lncGkxNWRhbXRkWFl3b0tTa29qRjFkYTJwZFhvc3BLRmNoSW5STlRsaFpUVTUwSVNJaUlYUk9UVmxZVGsxMElpSCtWalV2TDBVVUZCUVVSUzh2TlRVdUwwWVVGQlFVUmk4dU5RQUFBQUVBU3dCV0E3VURLZ0FQQUFBQkp6Y1dGeDRCRnhZWEFTYzNJVFVoQXBLdVp5MHRMVnN0TFM3K2xtZXQvYm9DUndJVnJtY3RMUzVhTFM0dC9wWm5yYXNBQUFBQUFnQ0FBRUFEZ0FOQUFBMEFHQUFBQVJFaEVTTVJGQll6SVRJMk5SRUZOeGNISnpjWEVUTVJNUU1yL2FwVk1pTUNWaU15L3F0dVBOWFZQRzVXQWNEKzFRRXIvdFVqTWpJakFTc2RianpWMVR4dUFaMytZd0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUZWQUdzQ3F3TVZBQU1BQUFrQkVRRUJWUUZXL3FvQndBRlYvVllCVlFBQkFWVUFhd0tyQXhVQUF3QUFDUUlSQVZVQlZ2NnFBeFgrcS82ckFxb0FBQUVBcXdFVkExVUNhd0FEQUFBVENRRWhxd0ZWQVZYOVZnRVZBVmIrcWdBQUFRQkVBR1lEdkFNYkFBa0FBQWtDTnhjQkhnRVhNUU84L2NUK3hIakVBY1FlUEI0Q292M0VBVHg0d3dIRUh6d2VBQUFBQUFFQlZRQnJBcXNERlFBREFBQUpBaEVCVlFGVy9xb0RGZjZyL3FzQ3FnQUFBUUNyQVdzRFZRSVZBQU1BQUJNaEZTR3JBcXI5VmdJVnFnQUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRQUFBQUVBQVBRZmZROWZEenoxQUFzRUFBQUFBQURaUVkrWkFBQUFBTmxCajVrQUFQKytCQUVEd2dBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBLy84RUFRQUJBQUFBQUFBQUFBQUFBQUFBQUFBQU9BUUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQzJCQUFBQUFRQUFKWUVBQUVBQkFBQUFRUUFBQUVFQUFBQkJBQUFBUVFBQUhNRUFBQlZCQUFBVlFRQUFBRUVBQUNyQkFBQWJnUUFBSGdFQUFBeUJBQUFsZ1FBQUFFRUFBQWlCQUFBSWdRQUFGVUVBQUR5QkFBQXF3UUFBRlVFQUFBWkJBQUE4Z1FBQUVzRUFBQlZCQUFBQVFRQUFGVUVBQUFCQkFBQXF3UUFBV1FFQUFEU0JBQUFBUVFBQUtzRUFBQ3JCQUFBQVFRQUFLc0VBQUZrQkFBQUFRUUFBQUVFQUFCTEJBQUFnQVFBQUtzRUFBRlZCQUFCVlFRQUFLc0VBQUJFQkFBQlZRUUFBS3NFQUFDckFBQUFBQUFLQUJRQUhnQTRBSFFBbGdDd0FQZ0JQQUYyQWFnQjFnSHNBaGdDVWdKNEFwd0RMQU9JQTZJRDVBUnFCT0FFL0FVWUJXZ0ZzZ1lVQmpBR1RBYUtCdGdHOUFkQ0IxQUhaQWVRQit3SURnZ3NDSlFJckFqQUNSZ0ptZ204Q2VnSitBb0lDaGdLS0FwQ0NsSUtZQXB3QUFBQUFRQUFBRGdBV3dBTUFBQUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0QXJnQUJBQUFBQUFBQkFBa0FBQUFCQUFBQUFBQUNBQWNBY2dBQkFBQUFBQUFEQUFrQVBBQUJBQUFBQUFBRUFBa0Fod0FCQUFBQUFBQUZBQXNBR3dBQkFBQUFBQUFHQUFrQVZ3QUJBQUFBQUFBS0FCb0FvZ0FEQUFFRUNRQUJBQklBQ1FBREFBRUVDUUFDQUE0QWVRQURBQUVFQ1FBREFCSUFSUUFEQUFFRUNRQUVBQklBa0FBREFBRUVDUUFGQUJZQUpnQURBQUVFQ1FBR0FCSUFZQUFEQUFFRUNRQUtBRFFBdkVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFabGNuTnBiMjRnTVM0d0FGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNRUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMEZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMUpsWjNWc1lYSUFVZ0JsQUdjQWRRQnNBR0VBY2tGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBadmJuUWdaMlZ1WlhKaGRHVmtJR0o1SUVsamIwMXZiMjR1QUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJsdWUge1xcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gIGNvbG9yOiAjMjIyMjIyO1xcbiAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgZm9udC1zaXplOiAxNHB4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUsIC5hZy10aGVtZS1ibHVlIC5hZy10aGVtZS1ibHVlLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmNmY2ZjYgIWltcG9ydGFudDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAqOmZvY3VzLCAuYWctdGhlbWUtYmx1ZSAqICo6YmVmb3JlLCAuYWctdGhlbWUtYmx1ZSAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWJsdWUgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1ibHVlIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1ibHVlIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmx1ZSAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCwgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1sZWFmLWluZGVudCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtZG93biB7XFxuICAgIGNvbG9yOiBkYXJrcmVkOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFweDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6ZGlzYWJsZWQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGVkZTtcXG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTljZDM7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxuICAgIGNvbG9yOiB3aGl0ZTtcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM5YmMyZTY7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LmFnLXJvdy1sYXN0IHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LW9kZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWViZjc7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlciB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzliYzJlNjtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlYmViZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSB7XFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICBjdXJzb3I6IGNvbC1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjNweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7XFxuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xcbiAgICBjdXJzb3I6IGdyYWI7XFxuICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICB3aWR0aDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XFxuICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1tZW51IC5hZy1tZW51LXNlcGFyYXRvciB7XFxuICAgICAgaGVpZ2h0OiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjM5QkMyRTYnJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUuYWctZG5kLWdob3N0IHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgY29sb3I6ICMyMjIyMjI7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZS5hZy1kbmQtZ2hvc3Qgc3BhbixcXG4gICAgLmFnLXRoZW1lLWJsdWUuYWctZG5kLWdob3N0IGRpdiB7XFxuICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgbWluLXdpZHRoOiAyMjBweDtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0IHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpmaXJzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3QsIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInJhZGlvXFxcIl0ge1xcbiAgICBtYXJnaW46IDAgM3B4IDAgNnB4O1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxN3B4O1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItbGlzdCB7XFxuICAgIGhlaWdodDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICAgIGhlaWdodDogMjBweDtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIC5hZy1maWx0ZXItaGVhZGVyLWNvbnRhaW5lcjpudGgtY2hpbGQoMikge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIHtcXG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IGF1dG87XFxuICAgICAgICAgICAgICAgIGZsZXg6IGF1dG87XFxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XFxuICAgICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyIHtcXG4gICAgICAgICAgcGFkZGluZzogMCA1cHg7IH1cXG4gICAgICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5LXdyYXBwZXIge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWFpciB7XFxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCB7XFxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1udW1lcmljLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmc6IDAgMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMzQsIDM0LCAzNCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIHNwYW4ge1xcbiAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEzNSwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTYwLCAxMDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIwLCAxMjAsIDEyMCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MCwgODAsIDgwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNDk5MGQyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM0OTkwZDI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzQ5OTBkMjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjNDk5MGQyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsbC1oYW5kbGUsIC5hZy10aGVtZS1ibHVlIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiAzN3B4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgcGFkZGluZzogMCA0cHggMCAxMnB4O1xcbiAgICBoZWlnaHQ6IDI1cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXJvdyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M3OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIGJ1dHRvbiB7XFxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgd2lkdGg6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1sZWZ0LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2RkZWJmNztcXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcXG4gICAgbWluLWhlaWdodDogMTZweDtcXG4gICAgcGFkZGluZzogMCAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBoZWlnaHQ6IDcwcHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbTpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNldC1maWx0ZXItbGlzdCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgPiAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLWRhdGEtY2hhbmdlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWMgIWltcG9ydGFudDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3ctc3R1YiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc3R1Yi1jZWxsIC5hZy1sb2FkaW5nLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtYmx1ZSAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZGV0YWlscy1yb3cge1xcbiAgICBwYWRkaW5nOiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDA7XFxuICAgICAgICB3aWR0aDogMTAwJTtcXG4gICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcycHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6ICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1zaWRlLWJhciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkICNhZmNlZWI7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1sYWJlbCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLCAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgaGVpZ2h0OiAyNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiBkaXYge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdG9vbGJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcXG4gICAgICBwYWRkaW5nOiA0cHg7XFxuICAgICAgYm9yZGVyOiAwIHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIHtcXG4gICAgICBtYXJnaW46IDJweCAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1ibHVlIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgICAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAxMnB4KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1kaWFsb2cuYWctY29sb3ItZGlhbG9nIHtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRvb2xzIHtcXG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1kcmFnZ2VyIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLWh1ZS1hbHBoYSB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcXG4gICAgICBoZWlnaHQ6IDExcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWU6Zm9jdXMge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZDc3ZTQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpsYXN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUuYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsLmFnLWRpYWxvZyB7XFxuICAgICAgb3BhY2l0eTogMC43O1xcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU5Y2QzO1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzRkYmYwO1xcbiAgICAgIGNvbG9yOiB3aGl0ZTtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIC5hZy1pY29uIHtcXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzgzYzc7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlOWNkMztcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSA+IHNwYW46aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgybiArIDIpOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbC5hZy1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdCAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICBtYXJnaW46IDQuOHB4IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICMzMzM7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHkge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQge1xcbiAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJpZ2h0LWFycm93OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5zYXNzLXZhcmlhYmxlczo6YWZ0ZXIge1xcbiAgICBjb250ZW50OiAneyBcXFwiYXV0b1NpemVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwiaGVhZGVySGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JvdXBQYWRkaW5nU2l6ZVxcXCI6IFxcXCIyNHB4XFxcIiwgXFxcImZvb3RlclBhZGRpbmdBZGRpdGlvblxcXCI6IFxcXCIxNnB4XFxcIiwgXFxcInZpcnR1YWxJdGVtSGVpZ2h0XFxcIjogXFxcIjIwcHhcXFwiLCBcXFwiYWdnRnVuY1BvcHVwSGVpZ2h0XFxcIjogXFxcIjcwcHhcXFwiLCBcXFwiY2hlY2tib3hJbmRlbnRXaWR0aFxcXCI6IFxcXCIxNnB4XFxcIiwgXFxcImxlYWZOb2RlUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcInJvd0hlaWdodFxcXCI6IFxcXCIyNXB4XFxcIiwgXFxcImdyaWRTaXplXFxcIjogXFxcIjRweFxcXCIsIFxcXCJpY29uU2l6ZVxcXCI6IFxcXCIxMnB4XFxcIiB9JztcXG4gICAgZGlzcGxheTogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU5Y2QzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmFkZWQge1xcbiAgICBvcGFjaXR5OiAwLjM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvb3Qge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZWVuOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2RkZWJmNztcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgbWluLWhlaWdodDogMThweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcXG4gICAgICBtYXJnaW4tdG9wOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBsaWdodGdyZWVuOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1oaWdobGlnaHQtYW5pbWF0aW9uIHtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXM7XFxuICAgIHRyYW5zaXRpb246IGFsbCAxczsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyIHtcXG4gICAgaGVpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbml0aWFsO1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJlOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcXG4gICAgY29sb3I6IGJsYWNrO1xcbiAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSBpbnB1dCxcXG4gIC5hZy10aGVtZS1ibHVlIHNlbGVjdCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGNvbG9yOiAjMjIyMjIyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93IHtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7IH1cXG5cXG5cIiIsIm1vZHVsZS5leHBvcnRzID0gXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbkBmb250LWZhY2Uge1xcbiAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gIHNyYzogdXJsKFxcXCJkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQUxBSUFBQXdBd1QxTXZNZzhTQmxNQUFBQzhBQUFBWUdOdFlYQVhWdEs2QUFBQkhBQUFBRlJuWVhOd0FBQUFFQUFBQVhBQUFBQUlaMng1WnQ2c29hNEFBQUY0QUFBVTRHaGxZV1FWbzJPdkFBQVdXQUFBQURab2FHVmhCOFFEK0FBQUZwQUFBQUFrYUcxMGVOWUFHRmtBQUJhMEFBQUE0R3h2WTJHYWhKVjZBQUFYbEFBQUFISnRZWGh3QUVVQVhRQUFHQWdBQUFBZ2JtRnRaUkhCYkNVQUFCZ29BQUFCbm5CdmMzUUFBd0FBQUFBWnlBQUFBQ0FBQXdQMkFaQUFCUUFBQXBrQ3pBQUFBSThDbVFMTUFBQUI2d0F6QVFrQUFBQUFBQUFBQUFBQUFBQUFBQUFCRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFEcE13UEEvOEFBUUFQQUFFQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFEQUFBQUF3QUFBQndBQVFBREFBQUFIQUFEQUFFQUFBQWNBQVFBT0FBQUFBb0FDQUFDQUFJQUFRQWc2VFAvL2YvL0FBQUFBQUFnNlFELy9mLy9BQUgvNHhjRUFBTUFBUUFBQUFBQUFBQUFBQUFBQVFBQi8vOEFEd0FCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBTFlBUUFOS0EwQUFDZ0FBQVNFWEJ5RVZJUk1ESVJVRFN2NlRlWGtCYmYxczNOd0NsQUtWMWRXckFZQUJnS3NBQUFBQUFRQUEvOEFFQUFQQUFDRUFBQUUxQnljM0Z3Y25FU0VuTnhjSEp6Y2hFVGNYQnljM0Z4RWhGd2NuTnhjSElSRUJ6VkpJemMxSVVnRUpVVWpOelVoUi92ZFNTTTNOU0ZMKzkxRkl6YzFJVVFFSkF2TUpVVWpOelVoUi92ZFNTTTNOU0ZMKzkxRkl6YzFJVVFFSlVrak56VWhTQVFBQUFBQUFBUUNXQUI0RGFnTmlBQkFBQUFFSEp3RVdGeDRCRnhZWEJ5Y1JJeEV4QWE2eFp3RnFMUzR0V2k0dExXZXdwUUpDc1djQmFpNHRMVnN0TFMxbnNQM2RBaVFBQUFBQkFRQUF3QU1BQXNBQUN3QUFBUWNuQnljM0p6Y1hOeGNIQXdCSXVMaEl1TGhJdUxoSXVBRUlTTGk0U0xpNFNMaTRTTGdBQlFBQi83NEQvd1BCQUE4QUh3QWpBQ2NBTEFBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lCTXhFakpUTVZJd016RVNNUkEzLzlBalZMU3pVQy9qVkxTelQ4L2hFWUdCRURBaEVZR1AyYVZWVUJWVlZWcTFaV1FrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9xdisxcXFxQWFyK1ZnR3FBQUFBQXdBQi83NEQvd1BCQUE4QUh3QXBBQUFCTWhZVkVSUUdJeUVpSmpVUk5EWXpCU0VpQmhVUkZCWXpJVEkyTlJFMEpnY0JKemNYRXg0QkZ6RURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWJQN28vVFd1NkJJbUVnUEJTelg4L1RWTFN6VURBelZMVnhnUi9QOFJHUmtSQXdFUkdMNzkvc3BEaXdHb0NoUUtBQUFBQUFNQUFmKytBLzhEd1FBUEFCOEFJd0FBQVRJV0ZSRVVCaU1oSWlZMUVUUTJNd1VoSWdZVkVSUVdNeUV5TmpVUk5DWURJVFVoQTM4MVMwczEvUUkxUzBzMUF2LzgvaEVZR0JFREFoRVlHT2IrcWdGV0E4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWS9nR3FBQUFBQWdBQi83NEQvd1BCQUE4QUh3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZQUFNQWN3QklBNDBET0FBR0FBb0FGd0FBQ1FFSEZ3a0NJVGNYSVFVd0JoVVVGak15TmpVMEpqRUMvZjVWUEdiKzl3RkZBVVg5Nzh6TS9tZ0NURlV5SXlNeVZRR05BYXM4WnY3My9yc0JSYzNOUUdzcUl6SXlJeXByQUFBQUFnQlZBQlVCcXdOckFBTUFCd0FBQVJFaEVRRVZJVFVCcS82cUFWYitxZ0pyL2FvQ1ZnRUFxNnNBQUFBR0FGVUFGUU9yQTJzQUF3QUhBQXNBRHdBVEFCY0FBQ1VWSVRVaEZTRTFBeFVoTlNFVklUVURGU0UxSVJVaE5RR3IvcW9EVnY2cXF2NnFBMWIrcXFyK3FnTlcvcXJBcTZ1cnF3RlZxcXFxcWdGV3E2dXJxd0FBQXdBQi83NEQvd1BCQUE4QUh3QWpBQUFCTWhZVkVSUUdJeUVpSmpVUk5EWXpCU0VpQmhVUkZCWXpJVEkyTlJFMEpnTVZJVFVEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lrZjRBQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL3F1cXFnQUFBQUFEQUtzQWF3TlZBeFVBQndBTUFCSUFBQUV6RVNFMUl4RWhFeUVSSVJFbk5TRVJNeEVDcTZyK0FLb0NBRlgrcXdGVnEvNnJWUUpyL2dDcUFnRC9BUDZyQVZWV1ZmNnJBUUFBQUFBQUFRQnVBQzREa2dOU0FBMEFBQWtCSGdFWENRRUhDUUVuQ1FFM0FnQUJHUjQ5SHY3bkFSbDUvdWYrNTNrQkdmN25lUUk1QVJrZVBSNys1LzduZVFFWi91ZDVBUmtCR1hrQUF3QjRBTlVEbndMaEFEZ0FSd0JhQUFBQk5qYytBVGMyRng0Qkh3RUdCdzRCQndZSEZoY2VBUmNXRnc0Qkp5NEJKdzRCQndZbkxnRW5KamMrQVRjdUFUYytBUmNlQVJjZUFSY0hCZ2NPQVFjR056NEJOekEyQnpFbklnWUhEZ0VIQmhjZUFSY1dGemN1QVNNeEFob21KU1pHSUNFZEVCd05OeUFnSUVBaElDQWdJU0JBSUNBZ05tMUpJa29oTzN4Q0h5VW1PdzhQRGcxREtFQk1HQkE5TVQxc05oQWhFSnNuS3lzMkFRSXRJMFFrQXdXT0JBa0ZBd1VERncwTVBpY25IZ0VsVGgwQ09TRWVIeThPRGdFQkNRY2hHeHNiTnh3Ykd4b1pHalFhR2hvaERqWVpOeGtzVEIwT0FnSWlIaDRxS3prVEluQTBJeU1CQkU0bURCZ01rQUVWRlRFVEV3SUJOQmcwQWVNQ0FRRURBUThVRlNVT0RRRXpHalFBQUFBQUJ3QXlBQ2NEemdOWkFBc0FEd0FiQUI4QUt3QXdBRDBBQURjaUJoVVVGak15TmpVMEppa0JGU0VCSWdZVkZCWXpNalkxTkNZaEZTRTFCeklXRlJRR0l5SW1OVFEyQVJVaE5TRWhNaFlWRkFZaklpWTFORFl6blMwK1BpMHNQajREQmYxVkFxdjh6eTArUGkwc1BqNERCZjFWaGg0c0xCNGZMQ3dEVVAxVkFxdjh6eXcrUGl3dFBqNHQvRDRzTFQ0K0xTdysxUUlFUHl3c1B6OHNMRC9XMWlBc0h4OHNMQjhmTEFGTzFkVStMU3crUGl3dFBnQUFBQUVBbGdBakEyb0RYUUFKQUFBQkVUTVJOeGNKQVRjWEFhK2tzR2YrbHY2V1o3SUJRd0lhL2Vld1ovNldBV3Buc1FBQUFBQURBQUgvd1FRQkE4RUFFQUFnQUN3QUFBRXlGaFVSRkFZaklTSW1OUkUwTmpNaEZ5RWlCaFVSRkJZeklUSTJOUkUwSmdFekZTTVZJelVqTlRNMU13T0FOVXhNTmYwQk5VdExOUUwvQWZ6K0VoZ1lFZ01DRVJnWS9zU3JxNnVycTZzRHdVczEvUUExUzBzMUF3QTFTMWNZRWYwQkVSZ1lFUUwvRVJqK3JLcXFxcXFyQUFBREFDSUFkZ1BlQXdvQUlnQklBRk1BQUFFM0Z6NEJNeFlYSGdFWEZoY09BUWNYQnljM0FUNEJOell5TXlZME5TTWlCZ2NuQnhNbUp5NEJKeVluRGdFSEZoY2VBUmNXTnhjR0J3WW1KeVluSmljdUFTY21KejRCTnpFQlBnRTNNQ1luRGdFSEZ3RW9OU2NnUWlOSVFrSjNORE1yS205QU4wTWhEdjdNSGo4ZUNoUUxBUXMxYXpKUU11c3FKU1U2RkJRSEl6NGFKakV5Y3o4L1B6UXVMeTlmTHk4dUloNGZOaGtZRnl0cVB3SGpMa3dnUHprTFBpeFRBdUVwTWdrS0FoY1hVRFkyUHo1ckowVTFLUXdCaHdjRkFRRVZLeFVLRUdaSy90WUZFUkkzSkNRcEdqOGtOQ2txT0F3TUNFRU9CUVVKRUE4YkZSb1pPeUFnSWo5dktmNlFIVXNyVUMwMVZodHFBQUFBQXdBaUFKa0QzZ0xvQUJzQU93QktBQUFCRmhjZUFSY1dGd1lIRGdFbkppY21KeTRCSnlZbk5qYytBVGMyQnc0QkJ4WVhIZ0UzTmpjK0FUY3dKaWNHQnc0QkJ3WWpJaWN1QVNjbUp6RWxKalExSXc0QkJ4YytBVGM2QVRNQ0NVaENRbmMwTXlzN1ZWWEZhV2xqSWg0Zk5oa1lGeW8xTkh0R1JiY2pQaG93UkVTY1VsTk5NVkVpUHprSkZ4ZERLU291THlvclFoY1hDQUZTQVF0RWh6d2xMbVl4Q2hRTEF1Z0NGeGRQTmpaQVYwVkZTQVVFUEJRYUdqb2hJQ0UvTnpkUkZ4ZXZHVUFrUWpFeU1RWUZMUnhQTGxBc0xDVWxOdzhRRUJBNUppY3NBeFlyRlFFUkhVMFdEZ0lBQUFBQ0FGVUFRQU9yQTBBQUJnQUxBQUFUSVFFUkp4RUJBUlV6TlNOVkExYitxcXIrcWdGV3Fxb0RRUDZyL2xXckFRQUJWZjZyVmxZQUFBSUE4Z0RBQXc0Q3dBQURBQWtBQUFFUkl4RUJKemNuQ1FFQlIxVUNITWZIT2Y4QUFRQUN3UDRBQWdEK09jZkhPZjhBL3dBQUFBQUFEQUNyLytzRFZRT1ZBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQTNNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5RWpOVE9ycXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBYXFxcXBXcXFxcXFxZ0dxcXFxcXFxb0JxcXFxcXFxcUFhcXFxcXFxQUFBQUFBVUFWZi9yQTZzRGxRQWZBQ01BS0FBc0FEQUFBQUV6TlNFUklUVWpGU01WSVRVaEVTRTFJUkVoTlNFUklUVWhFU01SSVJVeEFTTVZNeEVqRlRNMUVTTVZNeVVqRlRNQnE2b0JWdjZxcXFzQlZRRlcvcXIrcXdGVkFWYitxdjVXVmdGV0FhcXFxcXFxcXFyK0FLcXFBMEJWL3dCV1ZxcFYvd0JWL3dCVy93QlZBbFVCQUZYOVZWVUJxMVpXQVZWVlZWVUFBQUFEQUJrQkVRUG5BcE1BRmdBdEFEd0FBQUVXRng0QkZ4WWZBUVlIRGdFbkppOEJOamMrQVRjMkJRNEJJeUltSnc0QkR3RVdGeDRCTnpZL0FTNEJKekVISmpRMUl3NEJCeGMrQVRjMk1qTUNDRDQ4UEhJek5Dd2tYbnA1LzN4N1l5UXhPamwrUkVNQkxSeUJVbEtCSENFOUhBTktYbDdGWDE5TUF4dy9JcGtCQzBTSFBDVXVaakVLRkFzQ2t3RU1EQzBoSUNza1hUVTFEeW9wWHlReUp5ZzNEdytJUjF4Y1J3NG1Gd00vSUNFQklCOUFBaGdvRGlNVkt4VUJFQjVNRmcwQ0FRQUFBZ0R5QU1BRERnTEFBQU1BQ2dBQUpTTVJNd0UzSnpjSkFTY0REbFZWL2VUSHh6a0JBUDhBT2NBQ0FQNDV4OGM1L3dEL0FEa0FBQUFCQUVzQVZnTzFBeW9BQ3dBQUFSY0hDUUVlQVJjSElSVWhBVyt0Wi82V0FXb1pOQnF2QWtqOXVnRnFyV2NCYWdGcUdqTWFycXNBQUFJQVZRQVZBNnNEYXdBY0FDY0FBQUUzRndjekZTTWVBUmNISnhVak5RY25OeU0xTXljM0hnRVhOVE1WQXpNM05TY2pCeFVlQVJjQ1ZaeDVuTjNkSjA0bmVaeXFuSG1jM2QyY2VTZE9KNnFjam1Sa2ptUVpNaGtDanB4NW5Lb25UaWQ1bk4zZG5IbWNxcHg1SjA0bjNkMytoMlNPWkdTT0dUSVpBQUFFQUFIL3ZnUC9BOEVBRHdBZkFDY0FMd0FBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJCemNYTnhjSEZ3RTNCeGNIRnpjWEEzLzlBalZMU3pVQy9qVkxTelQ4L2hFWUdCRURBaEVZR1AzZzQwZ3luem1mTUFHM1N1VXhvRG1nTVVKTE5RTUROVXRMTmZ6OU5Vc0RyQmdSL1A4UkdSa1JBd0VSR1AwdFNlUXhuem1mTVFHMzVVa3lvRG1nTVFBREFGVUFGUU9yQTJzQUF3QUhBQXNBQUNVVklUVUJGU0UxQVJVaE5RT3IvS29EVnZ5cUExYjhxc0NycXdGVnFxb0JWcXVyQUFBQUFBUUFBZisrQS84RHdRQVBBQjhBSndBdkFBQUZJU0ltTlJFME5qTWhNaFlWRVJRR0F5RWlCaFVSRkJZeklUSTJOUkUwSmdFM0J5Y0hKemNuQVFjM0p6Y25CeWNEZi8wQ05VdExOUUwrTlV0TE5QeitFUmdZRVFNQ0VSZ1kvV3prU1RLZk9aOHdBV3hKNURHZk9aOHhRa3MxQXdNMVMwczEvUDAxU3dPc0dCSDgveEVaR1JFREFSRVkvZTVKNURHZ09hQXhBV3prU1RHZ09hQXhBQUVBcXdGckExVUNGUUFEQUFBVElSVWhxd0txL1ZZQ0Zhb0FBQUFCQVdRQXdBS2NBc0FBQlFBQUpUY25Od2tCQVdUSHh6Z0JBUDhBK2NmSE9mOEEvd0FBQUFBQUFRRFMvOVlETGdPcUFCUUFBQUVISndFV0Z4NEJGeFlYQnljUk54Y0pBVGNYRVFHbGJHY0JMaVlsSmt3bEppWm5iR3huL3RMKzBtZHNBb0ZzWndFdUppVW1UQ1VtSm1kcy9uNXNaLzdTQVM1bmJBR0NBQUFBQUFNQUFmKy9CQUFEd2dBY0FDb0FPUUFBQVRJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmpNRkFSNEJNekkzUGdFM05qVTBKaWN1QVNNaUJ3NEJCd1lWRkJZWEFRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcUFWSDlxVGFHU2xoT1RuUWhJakIwTjRaS1dFNU9jeUloTHlzQ1Z3UENLQ21MWGwxcWExMWRqQ2dwS1NpTVhWMXJhbDFlaXlrbysvMnBLakFpSVhST1RWbEtoWUVxTUNFaWRFMU9XRXVHTmdKWEFBQUNBS3NBUUFOVkEwQUFDQUFTQUFBQklSRWhFU0UxTXhVWEl4VWhOU01SSVJFeEFsVUJBUDFXQVFDcXExWCtxbFVDQUFMci9WVUNxMVZWVnFxcS9nQUNBQUFBQUFFQXF3QVZBMVVERlFBUEFBQUJJeEVYSVFzQklUYzFNeEVqTlNFVkF3QlZxdjhBVlZYL0FLcFdxd0lBQXNEK3ExYi9BQUVBVmxVQkFGVlZBQVVBQWYrK0EvOER3UUFQQUI0QUpnQThBRVFBQUFVaElpWTFFVFEyTXlFeUZoVVJGQVlCTlNNaUJoVVJGQlk3QVJFak5UTUZJUkVoTWpZMUVROEJKemNlQVJjSEp4VWpGd2NuTng0QkZ3Y3pOVEVUSVJVaE5UUW1Jd04vL1FJMVMwczFBdjQxUzB2OVRJSVJHQmdSZ3F1ckFxbjlyQUlyRVJqK0RUeHpIVG9kUFF6RURUMXpjeEFlRHcxdjFmM1ZBbFFZRVVKTE5RTUROVXRMTmZ6OU5Vc0RBcW9ZRWZ6L0VSa0NWVlZWL2FzWkVRSXI1dzA5Y3gwNkhEME54QXc5ZEhNUEhnOE5id0htcW9FUkdBQUFBQUFCQUtzQWF3TlZBeFVBQ3dBQUV5RVJNeEVoRlNFUkl4RWhxd0VBcWdFQS93Q3Evd0FDRlFFQS93Q3Evd0FCQUFBQkFXUUF3QUtjQXNBQUJRQUFKU2MzSndrQkFwekh4emovQUFFQStjZkhPZjhBL3dBQUFBQUFBZ0FCLzc4RUFBUENBQndBT1FBQUFTSUhEZ0VIQmhVVUZ4NEJGeFl6TWpjK0FUYzJOVFFuTGdFbkppTVZNaGNlQVJjV0ZSUUhEZ0VIQmlNaUp5NEJKeVkxTkRjK0FUYzJNd0lBYWwxZGl5Z29LQ2lMWFYxcWFsMWRpeWdwS1NpTFhWMXFXRTVPZENFaUlpRjBUazVZV0U1T2N5SWhJU0p6VGs1WUE4SW9LWXRlWFdwclhWMk1LQ2twS0l4ZFhXdHFYVjZMS1NoWElTSjBUVTVZV1UxT2RDRWlJaUYwVGsxWldFNU5kQ0loQUFBREFBSC92d1FBQThJQUhBQTVBRllBQUFFeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZTSUhEZ0VIQmhVVUZ4NEJGeFl6TWpjK0FUYzJOVFFuTGdFbkppTUJGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6TWhjZUFSY1dGUUlBYWwxZGl5Z3BLU2lMWFYxcWFsMWRpeWdvS0NpTFhWMXFXRTVPY3lJaElTSnpUazVZV0U1T2RDRWlJaUYwVGs1WUFRQVVGRVV2THpVMUx5NUdGQlFVRkVZdUx6VTFMeTlGRkJRRHdpZ3BpMTVkYW10ZFhZd29LU2tvakYxZGEycGRYb3NwS0ZjaEluUk5UbGhaVFU1MElTSWlJWFJPVFZsWVRrMTBJaUgrVmpVdkwwVVVGQlFVUlM4dk5UVXVMMFlVRkJRVVJpOHVOUUFBQUFFQVN3QldBN1VES2dBUEFBQUJKemNXRng0QkZ4WVhBU2MzSVRVaEFwS3VaeTB0TFZzdExTNytsbWV0L2JvQ1J3SVZybWN0TFM1YUxTNHQvcFpucmFzQUFBQUFBZ0NBQUVBRGdBTkFBQTBBR0FBQUFSRWhFU01SRkJZeklUSTJOUkVGTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeS9xdHVQTlhWUEc1V0FjRCsxUUVyL3RVak1qSWpBU3NkYmp6VjFUeHVBWjMrWXdBQUFBRUFxd0VWQTFVQ2F3QURBQUFUSVFrQnF3S3EvcXYrcXdKci9xb0JWZ0FBQVFGVkFHc0Nxd01WQUFNQUFBa0JFUUVCVlFGVy9xb0J3QUZWL1ZZQlZRQUJBVlVBYXdLckF4VUFBd0FBQ1FJUkFWVUJWdjZxQXhYK3EvNnJBcW9BQUFFQXF3RVZBMVVDYXdBREFBQVRDUUVocXdGVkFWWDlWZ0VWQVZiK3FnQUFBUUJFQUdZRHZBTWJBQWtBQUFrQ054Y0JIZ0VYTVFPOC9jVCt4SGpFQWNRZVBCNENvdjNFQVR4NHd3SEVIendlQUFBQUFBRUJWUUJyQXFzREZRQURBQUFKQWhFQlZRRlcvcW9ERmY2ci9xc0NxZ0FBQVFDckFXc0RWUUlWQUFNQUFCTWhGU0dyQXFyOVZnSVZxZ0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUFBQUFFQUFQUWZmUTlmRHp6MUFBc0VBQUFBQUFEWlFZK1pBQUFBQU5sQmo1a0FBUCsrQkFFRHdnQUFBQWdBQWdBQUFBQUFBQUFCQUFBRHdQL0FBQUFFQUFBQS8vOEVBUUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFPQVFBQUFBQUFBQUFBQUFBQUFJQUFBQUVBQUMyQkFBQUFBUUFBSllFQUFFQUJBQUFBUVFBQUFFRUFBQUJCQUFBQVFRQUFITUVBQUJWQkFBQVZRUUFBQUVFQUFDckJBQUFiZ1FBQUhnRUFBQXlCQUFBbGdRQUFBRUVBQUFpQkFBQUlnUUFBRlVFQUFEeUJBQUFxd1FBQUZVRUFBQVpCQUFBOGdRQUFFc0VBQUJWQkFBQUFRUUFBRlVFQUFBQkJBQUFxd1FBQVdRRUFBRFNCQUFBQVFRQUFLc0VBQUNyQkFBQUFRUUFBS3NFQUFGa0JBQUFBUVFBQUFFRUFBQkxCQUFBZ0FRQUFLc0VBQUZWQkFBQlZRUUFBS3NFQUFCRUJBQUJWUVFBQUtzRUFBQ3JBQUFBQUFBS0FCUUFIZ0E0QUhRQWxnQ3dBUGdCUEFGMkFhZ0IxZ0hzQWhnQ1VnSjRBcHdETEFPSUE2SUQ1QVJxQk9BRS9BVVlCV2dGc2dZVUJqQUdUQWFLQnRnRzlBZENCMUFIWkFlUUIrd0lEZ2dzQ0pRSXJBakFDUmdKbWdtOENlZ0orQW9JQ2hnS0tBcENDbElLWUFwd0FBQUFBUUFBQURnQVd3QU1BQUFBQUFBQ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBNEFyZ0FCQUFBQUFBQUJBQWtBQUFBQkFBQUFBQUFDQUFjQWNnQUJBQUFBQUFBREFBa0FQQUFCQUFBQUFBQUVBQWtBaHdBQkFBQUFBQUFGQUFzQUd3QUJBQUFBQUFBR0FBa0FWd0FCQUFBQUFBQUtBQm9Bb2dBREFBRUVDUUFCQUJJQUNRQURBQUVFQ1FBQ0FBNEFlUUFEQUFFRUNRQURBQklBUlFBREFBRUVDUUFFQUJJQWtBQURBQUVFQ1FBRkFCWUFKZ0FEQUFFRUNRQUdBQklBWUFBREFBRUVDUUFLQURRQXZFRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkxWmxjbk5wYjI0Z01TNHdBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFKbFozVnNZWElBVWdCbEFHY0FkUUJzQUdFQWNrRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkwWnZiblFnWjJWdVpYSmhkR1ZrSUdKNUlFbGpiMDF2YjI0dUFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBQUFBTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9XFxcIikgZm9ybWF0KFxcXCJ0cnVldHlwZVxcXCIpO1xcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxcblxcbi5hZy10aGVtZS1ib290c3RyYXAge1xcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gIGNvbG9yOiBibGFjaztcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTRweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICBtYXJnaW46IDRweDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgcGFkZGluZzogNHB4IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjZmNmY2ICFpbXBvcnRhbnQ7XFxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwICo6Zm9jdXMsIC5hZy10aGVtZS1ib290c3RyYXAgKiAqOmJlZm9yZSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjU2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMzUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDAwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNjI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzY4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogODQwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTkycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTg0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAzMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNoZWNrYm94LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveCBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveCBsYWJlbDplbXB0eSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsIHtcXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS1kb3duIHtcXG4gICAgY29sb3I6IGRhcmtyZWQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS12YWx1ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcHg7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJyYW5nZVxcXCJdIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGlubmVkLXJpZ2h0LWhlYWRlciB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1vZGQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjNweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG4gICAgb3V0bGluZTogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1saXN0IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWljb24ge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICBtaW4td2lkdGg6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCc4cHgnJTIwdmlld0JveCUzRCcwJTIwMCUyMDElMjA4cHgnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUzRSUzQ2xpbmUlMjB4MSUzRCcwJyUyMHkxJTNEJzRweCclMjB4MiUzRCcxJyUyMHkyJTNEJzRweCclMjBzdHJva2Utd2lkdGglM0QnMSclMjBzdHJva2UlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVxcXCIpOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCBkaXYge1xcbiAgICAgIGhlaWdodDogMTAwJTtcXG4gICAgICBtYXJnaW46IDA7XFxuICAgICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICAgICAgZmxleDogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItc2VsZWN0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItZmlsdGVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0ge1xcbiAgICBoZWlnaHQ6IDIwcHg7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXI6bnRoLWNoaWxkKDIpIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItYXBwbHktcGFuZWwgYnV0dG9uICsgYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciB7XFxuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4OyB9XFxuICAgICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1haXIge1xcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWxpc3Qge1xcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwIDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWljb24ge1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG4gICAgYm90dG9tOiAwO1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkZTJlNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3Age1xcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0IHtcXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtbGVmdCB7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIwLCAxMjAsIDEyMCwgMC40KTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODAsIDgwLCA4MCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3AuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkIHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwKTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCByZ2JhKDAsIDAsIDAsIDApOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkIHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbGwtaGFuZGxlLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogMzdweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IHtcXG4gICAgd2lkdGg6IDIwMHB4O1xcbiAgICBoZWlnaHQ6IDE2Mi41cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIHBhZGRpbmc6IDAgNHB4IDAgMTJweDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDEycHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XFxuICAgIG1pbi1oZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDAgMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbiB7XFxuICAgICAgbWluLXdpZHRoOiAxNnB4O1xcbiAgICAgIG1hcmdpbjogMCAycHg7XFxuICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgaGVpZ2h0OiA3MHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZXQtZmlsdGVyLWxpc3QsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1kYXRhLWNoYW5nZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VjICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1mbG9hdGluZy10b3AsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctdG9wIC5hZy1yb3csIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWJvdHRvbSAuYWctcm93IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICBmb250LXNpemU6IDE0cHg7XFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7XFxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICAgIHdpZHRoOiAxNnB4O1xcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiBibGFjaztcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAwO1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgICBtYXJnaW46IDA7XFxuICAgICAgICBtaW4taGVpZ2h0OiA3MnB4O1xcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMDtcXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcHJpbWFyeS1jb2xzLWZpbHRlci13cmFwcGVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkIHJnYmEoMTMsIDEzLCAxMywgMCk7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgaGVpZ2h0OiAyNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50ID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgICAgbWFyZ2luOiAycHggMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWxhYmVsZWQgbGFiZWwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbGFiZWxlZC5hZy1sYWJlbC1hbGlnbi10b3AgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWFuZ2xlLXNlbGVjdCA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xcbiAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctcGFyZW50LWNpcmNsZSB7XFxuICAgIHdpZHRoOiAyNHB4O1xcbiAgICBoZWlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBoZWlnaHQ6IDEycHg7XFxuICAgIHdpZHRoOiA0MHB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcXG4gICAgICByaWdodDogY2FsYygxMDAlIC0gMTJweCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWRpYWxvZy5hZy1jb2xvci1kaWFsb2cge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdG9vbHMge1xcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWRyYWdnZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctaHVlLWFscGhhIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xcbiAgICAgIGhlaWdodDogMTFweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBkNzdlNDtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2Omxhc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy1kcmFnZ2luZy1yYW5nZS1oYW5kbGUgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjYsIDI2LCAyNiwgMCk7XFxuICAgICAgY29sb3I6ICMzMzMzMzM7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOmhvdmVyLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgaGVpZ2h0OiAzMHB4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciBidXR0b24ge1xcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNlYmViZWI7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoM24gKyAxKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtIHtcXG4gICAgY29sb3I6IGJsYWNrO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbS5hZy1zZWxlY3RlZCB7XFxuICAgICAgY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbiB7XFxuICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkQ2xhc3NpY1xcXCI7XFxuICAgIHNwZWFrOiBub25lO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGNvbG9yOiAjMzMzO1xcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XFxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tYXJyb3dzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tYXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hhcnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbG9yLXBpY2tlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDhcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbHVtbnM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jb250cmFjdGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNyb3NzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY3V0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWRlc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1leHBhbmRlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWV5ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTNcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWZpbHRlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTRcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tZ3JpcDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWdyb3VwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWxhc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW1heGltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbWVudTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MURcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbWludXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1uZXh0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW5vdC1hbGxvd2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tcGFzdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1waXZvdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjVcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXBsdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vZmY6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yYWRpby1idXR0b24tb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXNhdmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1zbWFsbC1kb3duOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tc21hbGwtdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tdHJlZS1jbG9zZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10cmVlLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBsaW5lLWhlaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZCAuYWctaWNvbi1jb250cmFjdGVkOmVtcHR5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yYWRpby1idXR0b24tb24ge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpZ2h0LWFycm93OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLWdyb3VwLWljb25zLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWdyb3VwLWNoaWxkLWNvdW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLnNhc3MtdmFyaWFibGVzOjphZnRlciB7XFxuICAgIGNvbnRlbnQ6ICd7IFxcXCJhdXRvU2l6ZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJoZWFkZXJIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncm91cFBhZGRpbmdTaXplXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwiZm9vdGVyUGFkZGluZ0FkZGl0aW9uXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwidmlydHVhbEl0ZW1IZWlnaHRcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJhZ2dGdW5jUG9wdXBIZWlnaHRcXFwiOiBcXFwiNzBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiNHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjEycHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmFkZWQge1xcbiAgICBvcGFjaXR5OiAwLjM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvb3Qge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkZTJlNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24ge1xcbiAgICBsaW5lLWhlaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICBtaW4taGVpZ2h0OiAxOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyIHtcXG4gICAgaGVpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaXRpYWw7XFxuICAgICAgICAgICAgYm94LXNpemluZzogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgcGFkZGluZzogMTBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10aGVtZS1ib290c3RyYXAuYWctZG5kLWdob3N0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiQGNoYXJzZXQgXFxcIlVURi04XFxcIjtcXG5AZm9udC1mYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkQ2xhc3NpY1xcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVp0NnNvYTRBQUFGNEFBQVU0R2hsWVdRVm8yT3ZBQUFXV0FBQUFEWm9hR1ZoQjhRRCtBQUFGcEFBQUFBa2FHMTBlTllBR0ZrQUFCYTBBQUFBNEd4dlkyR2FoSlY2QUFBWGxBQUFBSEp0WVhod0FFVUFYUUFBR0FnQUFBQWdibUZ0WlJIQmJDVUFBQmdvQUFBQm5uQnZjM1FBQXdBQUFBQVp5QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUxZQVFBTktBMEFBQ2dBQUFTRVhCeUVWSVJNRElSVURTdjZUZVhrQmJmMXMzTndDbEFLVjFkV3JBWUFCZ0tzQUFBQUFBUUFBLzhBRUFBUEFBQ0VBQUFFMUJ5YzNGd2NuRVNFbk54Y0hKemNoRVRjWEJ5YzNGeEVoRndjbk54Y0hJUkVCelZKSXpjMUlVZ0VKVVVqTnpVaFIvdmRTU00zTlNGTCs5MUZJemMxSVVRRUpBdk1KVVVqTnpVaFIvdmRTU00zTlNGTCs5MUZJemMxSVVRRUpVa2pOelVoU0FRQUFBQUFBQVFDV0FCNERhZ05pQUJBQUFBRUhKd0VXRng0QkZ4WVhCeWNSSXhFeEFhNnhad0ZxTFM0dFdpNHRMV2V3cFFKQ3NXY0JhaTR0TFZzdExTMW5zUDNkQWlRQUFBQUJBUUFBd0FNQUFzQUFDd0FBQVFjbkJ5YzNKemNYTnhjSEF3Qkl1TGhJdUxoSXVMaEl1QUVJU0xpNFNMaTRTTGk0U0xnQUJRQUIvNzREL3dQQkFBOEFId0FqQUNjQUxBQUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQk14RWpKVE1WSXdNekVTTVJBMy85QWpWTFN6VUMvalZMU3pUOC9oRVlHQkVEQWhFWUdQMmFWVlVCVlZWVnExWldRa3MxQXdNMVMwczEvUDAxU3dPc0dCSDgveEVaR1JFREFSRVkvcXYrMXFxcUFhcitWZ0dxQUFBQUF3QUIvNzREL3dQQkFBOEFId0FwQUFBQk1oWVZFUlFHSXlFaUpqVVJORFl6QlNFaUJoVVJGQll6SVRJMk5SRTBKZ2NCSnpjWEV4NEJGekVEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1liUDdvL1RXdTZCSW1FZ1BCU3pYOC9UVkxTelVEQXpWTFZ4Z1IvUDhSR1JrUkF3RVJHTDc5L3NwRGl3R29DaFFLQUFBQUFBTUFBZisrQS84RHdRQVBBQjhBSXdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lESVRVaEEzODFTMHMxL1FJMVMwczFBdi84L2hFWUdCRURBaEVZR09iK3FnRldBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvZ0dxQUFBQUFnQUIvNzREL3dQQkFBOEFId0FBQVRJV0ZSRVVCaU1oSWlZMUVUUTJNd1VoSWdZVkVSUVdNeUV5TmpVUk5DWURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWUE4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWUFBTUFjd0JJQTQwRE9BQUdBQW9BRndBQUNRRUhGd2tDSVRjWElRVXdCaFVVRmpNeU5qVTBKakVDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBZ0JWQUJVQnF3TnJBQU1BQndBQUFSRWhFUUVWSVRVQnEvNnFBVmIrcWdKci9hb0NWZ0VBcTZzQUFBQUdBRlVBRlFPckEyc0FBd0FIQUFzQUR3QVRBQmNBQUNVVklUVWhGU0UxQXhVaE5TRVZJVFVERlNFMUlSVWhOUUdyL3FvRFZ2NnFxdjZxQTFiK3FxcitxZ05XL3FyQXE2dXJxd0ZWcXFxcXFnRldxNnVycXdBQUF3QUIvNzREL3dQQkFBOEFId0FqQUFBQk1oWVZFUlFHSXlFaUpqVVJORFl6QlNFaUJoVVJGQll6SVRJMk5SRTBKZ01WSVRVRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZa2Y0QUE4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWS9xdXFxZ0FBQUFBREFLc0Fhd05WQXhVQUJ3QU1BQklBQUFFekVTRTFJeEVoRXlFUklSRW5OU0VSTXhFQ3E2citBS29DQUZYK3F3RlZxLzZyVlFKci9nQ3FBZ0QvQVA2ckFWVldWZjZyQVFBQUFBQUFBUUJ1QUM0RGtnTlNBQTBBQUFrQkhnRVhDUUVIQ1FFbkNRRTNBZ0FCR1I0OUh2N25BUmw1L3VmKzUza0JHZjduZVFJNUFSa2VQUjcrNS83bmVRRVovdWQ1QVJrQkdYa0FBd0I0QU5VRG53TGhBRGdBUndCYUFBQUJOamMrQVRjMkZ4NEJId0VHQnc0QkJ3WUhGaGNlQVJjV0Z3NEJKeTRCSnc0QkJ3WW5MZ0VuSmpjK0FUY3VBVGMrQVJjZUFSY2VBUmNIQmdjT0FRY0dOejRCTnpBMkJ6RW5JZ1lIRGdFSEJoY2VBUmNXRnpjdUFTTXhBaG9tSlNaR0lDRWRFQndOTnlBZ0lFQWhJQ0FnSVNCQUlDQWdObTFKSWtvaE8zeENIeVVtT3c4UERnMURLRUJNR0JBOU1UMXNOaEFoRUpzbkt5czJBUUl0STBRa0F3V09CQWtGQXdVREZ3ME1QaWNuSGdFbFRoMENPU0VlSHk4T0RnRUJDUWNoR3hzYk54d2JHeG9aR2pRYUdob2hEallaTnhrc1RCME9BZ0lpSGg0cUt6a1RJbkEwSXlNQkJFNG1EQmdNa0FFVkZURVRFd0lCTkJnMEFlTUNBUUVEQVE4VUZTVU9EUUV6R2pRQUFBQUFCd0F5QUNjRHpnTlpBQXNBRHdBYkFCOEFLd0F3QUQwQUFEY2lCaFVVRmpNeU5qVTBKaWtCRlNFQklnWVZGQll6TWpZMU5DWWhGU0UxQnpJV0ZSUUdJeUltTlRRMkFSVWhOU0VoTWhZVkZBWWpJaVkxTkRZem5TMCtQaTBzUGo0REJmMVZBcXY4enkwK1BpMHNQajREQmYxVmhoNHNMQjRmTEN3RFVQMVZBcXY4enl3K1Bpd3RQajR0L0Q0c0xUNCtMU3crMVFJRVB5d3NQejhzTEQvVzFpQXNIeDhzTEI4ZkxBRk8xZFUrTFN3K1Bpd3RQZ0FBQUFFQWxnQWpBMm9EWFFBSkFBQUJFVE1STnhjSkFUY1hBYStrc0dmK2x2NldaN0lCUXdJYS9lZXdaLzZXQVdwbnNRQUFBQUFEQUFIL3dRUUJBOEVBRUFBZ0FDd0FBQUV5RmhVUkZBWWpJU0ltTlJFME5qTWhGeUVpQmhVUkZCWXpJVEkyTlJFMEpnRXpGU01WSXpVak5UTTFNd09BTlV4TU5mMEJOVXRMTlFML0FmeitFaGdZRWdNQ0VSZ1kvc1NycTZ1cnE2c0R3VXMxL1FBMVMwczFBd0ExUzFjWUVmMEJFUmdZRVFML0VSaityS3FxcXFxckFBQURBQ0lBZGdQZUF3b0FJZ0JJQUZNQUFBRTNGejRCTXhZWEhnRVhGaGNPQVFjWEJ5YzNBVDRCTnpZeU15WTBOU01pQmdjbkJ4TW1KeTRCSnlZbkRnRUhGaGNlQVJjV054Y0dCd1ltSnlZbkppY3VBU2NtSno0Qk56RUJQZ0UzTUNZbkRnRUhGd0VvTlNjZ1FpTklRa0ozTkRNckttOUFOME1oRHY3TUhqOGVDaFFMQVFzMWF6SlFNdXNxSlNVNkZCUUhJejRhSmpFeWN6OC9QelF1THk5Zkx5OHVJaDRmTmhrWUZ5dHFQd0hqTGt3Z1B6a0xQaXhUQXVFcE1na0tBaGNYVURZMlB6NXJKMFUxS1F3Qmh3Y0ZBUUVWS3hVS0VHWksvdFlGRVJJM0pDUXBHajhrTkNrcU9Bd01DRUVPQlFVSkVBOGJGUm9aT3lBZ0lqOXZLZjZRSFVzclVDMDFWaHRxQUFBQUF3QWlBSmtEM2dMb0FCc0FPd0JLQUFBQkZoY2VBUmNXRndZSERnRW5KaWNtSnk0Qkp5WW5OamMrQVRjMkJ3NEJCeFlYSGdFM05qYytBVGN3SmljR0J3NEJCd1lqSWljdUFTY21KekVsSmpRMUl3NEJCeGMrQVRjNkFUTUNDVWhDUW5jME15czdWVlhGYVdsakloNGZOaGtZRnlvMU5IdEdSYmNqUGhvd1JFU2NVbE5OTVZFaVB6a0pGeGRES1NvdUx5b3JRaGNYQ0FGU0FRdEVoendsTG1ZeENoUUxBdWdDRnhkUE5qWkFWMFZGU0FVRVBCUWFHam9oSUNFL056ZFJGeGV2R1VBa1FqRXlNUVlGTFJ4UExsQXNMQ1VsTnc4UUVCQTVKaWNzQXhZckZRRVJIVTBXRGdJQUFBQUNBRlVBUUFPckEwQUFCZ0FMQUFBVElRRVJKeEVCQVJVek5TTlZBMWIrcXFyK3FnRldxcW9EUVA2ci9sV3JBUUFCVmY2clZsWUFBQUlBOGdEQUF3NEN3QUFEQUFrQUFBRVJJeEVCSnpjbkNRRUJSMVVDSE1mSE9mOEFBUUFDd1A0QUFnRCtPY2ZIT2Y4QS93QUFBQUFBREFDci8rc0RWUU9WQUFNQUJ3QUxBQThBRXdBWEFCc0FId0FqQUNjQUt3QXZBQUEzTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeUVqTlRPcnFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQWFxcXFwV3FxcXFxcWdHcXFxcXFxcW9CcXFxcXFxcXFBYXFxcXFxcUFBQUFBQVVBVmYvckE2c0RsUUFmQUNNQUtBQXNBREFBQUFFek5TRVJJVFVqRlNNVklUVWhFU0UxSVJFaE5TRVJJVFVoRVNNUklSVXhBU01WTXhFakZUTTFFU01WTXlVakZUTUJxNm9CVnY2cXFxc0JWUUZXL3FyK3F3RlZBVmIrcXY1V1ZnRldBYXFxcXFxcXFxcitBS3FxQTBCVi93QldWcXBWL3dCVi93Qlcvd0JWQWxVQkFGWDlWVlVCcTFaV0FWVlZWVlVBQUFBREFCa0JFUVBuQXBNQUZnQXRBRHdBQUFFV0Z4NEJGeFlmQVFZSERnRW5KaThCTmpjK0FUYzJCUTRCSXlJbUp3NEJEd0VXRng0Qk56WS9BUzRCSnpFSEpqUTFJdzRCQnhjK0FUYzJNak1DQ0Q0OFBISXpOQ3drWG5wNS8zeDdZeVF4T2psK1JFTUJMUnlCVWxLQkhDRTlIQU5LWGw3RlgxOU1BeHcvSXBrQkMwU0hQQ1V1WmpFS0ZBc0Nrd0VNREMwaElDc2tYVFUxRHlvcFh5UXlKeWczRHcrSVIxeGNSdzRtRndNL0lDRUJJQjlBQWhnb0RpTVZLeFVCRUI1TUZnMENBUUFBQWdEeUFNQUREZ0xBQUFNQUNnQUFKU01STXdFM0p6Y0pBU2NERGxWVi9lVEh4emtCQVA4QU9jQUNBUDQ1eDhjNS93RC9BRGtBQUFBQkFFc0FWZ08xQXlvQUN3QUFBUmNIQ1FFZUFSY0hJUlVoQVcrdFovNldBV29aTkJxdkFrajl1Z0ZxcldjQmFnRnFHak1hcnFzQUFBSUFWUUFWQTZzRGF3QWNBQ2NBQUFFM0Z3Y3pGU01lQVJjSEp4VWpOUWNuTnlNMU15YzNIZ0VYTlRNVkF6TTNOU2NqQnhVZUFSY0NWWng1bk4zZEowNG5lWnlxbkhtYzNkMmNlU2RPSjZxY2ptUmtqbVFaTWhrQ2pweDVuS29uVGlkNW5OM2RuSG1jcXB4NUowNG4zZDMraDJTT1pHU09HVElaQUFBRUFBSC92Z1AvQThFQUR3QWZBQ2NBTHdBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lCQnpjWE54Y0hGd0UzQnhjSEZ6Y1hBMy85QWpWTFN6VUMvalZMU3pUOC9oRVlHQkVEQWhFWUdQM2c0MGd5bnptZk1BRzNTdVV4b0RtZ01VSkxOUU1ETlV0TE5mejlOVXNEckJnUi9QOFJHUmtSQXdFUkdQMHRTZVF4bnptZk1RRzM1VWt5b0RtZ01RQURBRlVBRlFPckEyc0FBd0FIQUFzQUFDVVZJVFVCRlNFMUFSVWhOUU9yL0tvRFZ2eXFBMWI4cXNDcnF3RlZxcW9CVnF1ckFBQUFBQVFBQWYrK0EvOER3UUFQQUI4QUp3QXZBQUFGSVNJbU5SRTBOak1oTWhZVkVSUUdBeUVpQmhVUkZCWXpJVEkyTlJFMEpnRTNCeWNISnpjbkFRYzNKemNuQnljRGYvMENOVXRMTlFMK05VdExOUHorRVJnWUVRTUNFUmdZL1d6a1NUS2ZPWjh3QVd4SjVER2ZPWjh4UWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL2U1SjVER2dPYUF4QVd6a1NUR2dPYUF4QUFFQXF3RnJBMVVDRlFBREFBQVRJUlVocXdLcS9WWUNGYW9BQUFBQkFXUUF3QUtjQXNBQUJRQUFKVGNuTndrQkFXVEh4emdCQVA4QStjZkhPZjhBL3dBQUFBQUFBUURTLzlZRExnT3FBQlFBQUFFSEp3RVdGeDRCRnhZWEJ5Y1JOeGNKQVRjWEVRR2xiR2NCTGlZbEprd2xKaVpuYkd4bi90TCswbWRzQW9Gc1p3RXVKaVVtVENVbUptZHMvbjVzWi83U0FTNW5iQUdDQUFBQUFBTUFBZisvQkFBRHdnQWNBQ29BT1FBQUFUSVhIZ0VYRmhVVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTUZBUjRCTXpJM1BnRTNOalUwSmljdUFTTWlCdzRCQndZVkZCWVhBUUlBYWwxZGl5Z3BLU2lMWFYxcWFsMWRpeWdvS0NpTFhWMXFBVkg5cVRhR1NsaE9UblFoSWpCME40WktXRTVPY3lJaEx5c0NWd1BDS0NtTFhsMXFhMTFkakNncEtTaU1YVjFyYWwxZWl5a28rLzJwS2pBaUlYUk9UVmxLaFlFcU1DRWlkRTFPV0V1R05nSlhBQUFDQUtzQVFBTlZBMEFBQ0FBU0FBQUJJUkVoRVNFMU14VVhJeFVoTlNNUklSRXhBbFVCQVAxV0FRQ3FxMVgrcWxVQ0FBTHIvVlVDcTFWVlZxcXEvZ0FDQUFBQUFBRUFxd0FWQTFVREZRQVBBQUFCSXhFWElRc0JJVGMxTXhFak5TRVZBd0JWcXY4QVZWWC9BS3BXcXdJQUFzRCtxMWIvQUFFQVZsVUJBRlZWQUFVQUFmKytBLzhEd1FBUEFCNEFKZ0E4QUVRQUFBVWhJaVkxRVRRMk15RXlGaFVSRkFZQk5TTWlCaFVSRkJZN0FSRWpOVE1GSVJFaE1qWTFFUThCSnpjZUFSY0hKeFVqRndjbk54NEJGd2N6TlRFVElSVWhOVFFtSXdOLy9RSTFTMHMxQXY0MVMwdjlUSUlSR0JnUmdxdXJBcW45ckFJckVSaitEVHh6SFRvZFBRekVEVDF6Y3hBZUR3MXYxZjNWQWxRWUVVSkxOUU1ETlV0TE5mejlOVXNEQXFvWUVmei9FUmtDVlZWVi9hc1pFUUlyNXcwOWN4MDZIRDBOeEF3OWRITVBIZzhOYndIbXFvRVJHQUFBQUFBQkFLc0Fhd05WQXhVQUN3QUFFeUVSTXhFaEZTRVJJeEVocXdFQXFnRUEvd0NxL3dBQ0ZRRUEvd0NxL3dBQkFBQUJBV1FBd0FLY0FzQUFCUUFBSlNjM0p3a0JBcHpIeHpqL0FBRUErY2ZIT2Y4QS93QUFBQUFBQWdBQi83OEVBQVBDQUJ3QU9RQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KaU1WTWhjZUFSY1dGUlFIRGdFSEJpTWlKeTRCSnlZMU5EYytBVGMyTXdJQWFsMWRpeWdvS0NpTFhWMXFhbDFkaXlncEtTaUxYVjFxV0U1T2RDRWlJaUYwVGs1WVdFNU9jeUloSVNKelRrNVlBOElvS1l0ZVhXcHJYVjJNS0NrcEtJeGRYV3RxWFY2TEtTaFhJU0owVFU1WVdVMU9kQ0VpSWlGMFRrMVpXRTVOZENJaEFBQURBQUgvdndRQUE4SUFIQUE1QUZZQUFBRXlGeDRCRnhZVkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpGU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KaU1CRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZek1oY2VBUmNXRlFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxV0U1T2N5SWhJU0p6VGs1WVdFNU9kQ0VpSWlGMFRrNVlBUUFVRkVVdkx6VTFMeTVHRkJRVUZFWXVMelUxTHk5RkZCUUR3aWdwaTE1ZGFtdGRYWXdvS1Nrb2pGMWRhMnBkWG9zcEtGY2hJblJOVGxoWlRVNTBJU0lpSVhST1RWbFlUazEwSWlIK1ZqVXZMMFVVRkJRVVJTOHZOVFV1TDBZVUZCUVVSaTh1TlFBQUFBRUFTd0JXQTdVREtnQVBBQUFCSnpjV0Z4NEJGeFlYQVNjM0lUVWhBcEt1WnkwdExWc3RMUzcrbG1ldC9ib0NSd0lWcm1jdExTNWFMUzR0L3BabnJhc0FBQUFBQWdDQUFFQURnQU5BQUEwQUdBQUFBUkVoRVNNUkZCWXpJVEkyTlJFRk54Y0hKemNYRVRNUk1RTXIvYXBWTWlNQ1ZpTXkvcXR1UE5YVlBHNVdBY0QrMVFFci90VWpNaklqQVNzZGJqelYxVHh1QVozK1l3QUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRRlZBR3NDcXdNVkFBTUFBQWtCRVFFQlZRRlcvcW9Cd0FGVi9WWUJWUUFCQVZVQWF3S3JBeFVBQXdBQUNRSVJBVlVCVnY2cUF4WCtxLzZyQXFvQUFBRUFxd0VWQTFVQ2F3QURBQUFUQ1FFaHF3RlZBVlg5VmdFVkFWYitxZ0FBQVFCRUFHWUR2QU1iQUFrQUFBa0NOeGNCSGdFWE1RTzgvY1QreEhqRUFjUWVQQjRDb3YzRUFUeDR3d0hFSHp3ZUFBQUFBQUVCVlFCckFxc0RGUUFEQUFBSkFoRUJWUUZXL3FvREZmNnIvcXNDcWdBQUFRQ3JBV3NEVlFJVkFBTUFBQk1oRlNHckFxcjlWZ0lWcWdBQUFBRUFxd0VWQTFVQ2F3QURBQUFUSVFrQnF3S3EvcXYrcXdKci9xb0JWZ0FBQVFBQUFBRUFBUFFmZlE5ZkR6ejFBQXNFQUFBQUFBRFpRWStaQUFBQUFObEJqNWtBQVArK0JBRUR3Z0FBQUFnQUFnQUFBQUFBQUFBQkFBQUR3UC9BQUFBRUFBQUEvLzhFQVFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBT0FRQUFBQUFBQUFBQUFBQUFBSUFBQUFFQUFDMkJBQUFBQVFBQUpZRUFBRUFCQUFBQVFRQUFBRUVBQUFCQkFBQUFRUUFBSE1FQUFCVkJBQUFWUVFBQUFFRUFBQ3JCQUFBYmdRQUFIZ0VBQUF5QkFBQWxnUUFBQUVFQUFBaUJBQUFJZ1FBQUZVRUFBRHlCQUFBcXdRQUFGVUVBQUFaQkFBQThnUUFBRXNFQUFCVkJBQUFBUVFBQUZVRUFBQUJCQUFBcXdRQUFXUUVBQURTQkFBQUFRUUFBS3NFQUFDckJBQUFBUVFBQUtzRUFBRmtCQUFBQVFRQUFBRUVBQUJMQkFBQWdBUUFBS3NFQUFGVkJBQUJWUVFBQUtzRUFBQkVCQUFCVlFRQUFLc0VBQUNyQUFBQUFBQUtBQlFBSGdBNEFIUUFsZ0N3QVBnQlBBRjJBYWdCMWdIc0FoZ0NVZ0o0QXB3RExBT0lBNklENUFScUJPQUUvQVVZQldnRnNnWVVCakFHVEFhS0J0Z0c5QWRDQjFBSFpBZVFCK3dJRGdnc0NKUUlyQWpBQ1JnSm1nbThDZWdKK0FvSUNoZ0tLQXBDQ2xJS1lBcHdBQUFBQVFBQUFEZ0FXd0FNQUFBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQTRBcmdBQkFBQUFBQUFCQUFrQUFBQUJBQUFBQUFBQ0FBY0FjZ0FCQUFBQUFBQURBQWtBUEFBQkFBQUFBQUFFQUFrQWh3QUJBQUFBQUFBRkFBc0FHd0FCQUFBQUFBQUdBQWtBVndBQkFBQUFBQUFLQUJvQW9nQURBQUVFQ1FBQkFCSUFDUUFEQUFFRUNRQUNBQTRBZVFBREFBRUVDUUFEQUJJQVJRQURBQUVFQ1FBRUFCSUFrQUFEQUFFRUNRQUZBQllBSmdBREFBRUVDUUFHQUJJQVlBQURBQUVFQ1FBS0FEUUF2RUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMVpsY25OcGIyNGdNUzR3QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1FRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkwRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkxSmxaM1ZzWVhJQVVnQmxBR2NBZFFCc0FHRUFja0ZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMFp2Ym5RZ1oyVnVaWEpoZEdWa0lHSjVJRWxqYjAxdmIyNHVBRVlBYndCdUFIUUFJQUJuQUdVQWJnQmxBSElBWVFCMEFHVUFaQUFnQUdJQWVRQWdBRWtBWXdCdkFFMEFid0J2QUc0QUxnQUFBQU1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPVxcXCIpIGZvcm1hdChcXFwidHJ1ZXR5cGVcXFwiKTtcXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICBmb250LXN0eWxlOiBub3JtYWw7IH1cXG5cXG4uYWctdGhlbWUtZGFyayB7XFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7XFxuICBjb2xvcjogI2NjYztcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTRweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctYm9keS12aWV3cG9ydCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51LCAuYWctdGhlbWUtZGFyayAuYWctdGhlbWUtZGFyay5hZy1kbmQtZ2hvc3QsIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCwgLmFnLXRoZW1lLWRhcmsgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICBtYXJnaW46IDRweDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgcGFkZGluZzogNHB4IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYi5hZy10YWItc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzMwMmUyZSAhaW1wb3J0YW50O1xcbiAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAqOmZvY3VzLCAuYWctdGhlbWUtZGFyayAqICo6YmVmb3JlLCAuYWctdGhlbWUtZGFyayAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1kYXJrIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZGFyayAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCBncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtdXAge1xcbiAgICBjb2xvcjogZ3JlZW55ZWxsb3c7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtZG93biB7XFxuICAgIGNvbG9yOiByZWQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0sXFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ4LCA0NiwgNDYsIDAuMyk7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6ZGlzYWJsZWQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuNSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgY29sb3I6ICNjY2NjY2M7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93IHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1yb3c6bm90KC5hZy1yb3ctZmlyc3QpIHtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctb2RkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQwM2UzZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWdyb3VwLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCkge1xcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgY3Vyc29yOiBjb2wtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiO1xcbiAgICBtaW4td2lkdGg6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7XFxuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xcbiAgICBjdXJzb3I6IGdyYWI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwsXFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwsXFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkNWQ1O1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWljb24ge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICBtaW4td2lkdGg6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3Ige1xcbiAgICAgIGhlaWdodDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCc4cHgnJTIwdmlld0JveCUzRCcwJTIwMCUyMDElMjA4cHgnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUzRSUzQ2xpbmUlMjB4MSUzRCcwJyUyMHkxJTNEJzRweCclMjB4MiUzRCcxJyUyMHkyJTNEJzRweCclMjBzdHJva2Utd2lkdGglM0QnMSclMjBzdHJva2UlM0QnJTIzQTlBOUE5JyUyRiUzRSUzQyUyRnN2ZyUzRVxcXCIpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjBweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1kYXJrLmFnLWRuZC1naG9zdCB7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBjb2xvcjogI2NjY2NjYztcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XFxuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW46IDA7XFxuICAgIHBhZGRpbmc6IDAgOHB4O1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtZGFyay5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsuYWctZG5kLWdob3N0IC5hZy1kbmQtZ2hvc3QtaWNvbiB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgICAgb3BhY2l0eTogMTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IHtcXG4gICAgcGFkZGluZzogMnB4IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiBzcGFuIHtcXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItc2VsZWN0IHtcXG4gICAgbWFyZ2luOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyMHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gZGl2LCAuYWctdGhlbWUtZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICAgIG1hcmdpbjogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCB7XFxuICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6ICNjY2NjY2M7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyID4gZGl2IHtcXG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XFxuICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgICBwYWRkaW5nOiA0cHggMDtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGNvbG9yOiAjY2NjY2NjO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmc6IDAgMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIHNwYW4ge1xcbiAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNzA4YjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2Q2ZDVkNTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEzNSwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTYwLCAxMDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjYpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTYwLCAxNjAsIDAuNyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC44KTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI2Q2ZDVkNTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM3Njc2NzY7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsbC1oYW5kbGUsIC5hZy10aGVtZS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiAzN3B4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgcGFkZGluZzogMCA0cHggMCAxMnB4O1xcbiAgICBoZWlnaHQ6IDI1cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXJvdyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE3MDhiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIGJ1dHRvbiB7XFxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgd2lkdGg6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1sZWZ0LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogIzQwM2UzZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcXG4gICAgbWluLWhlaWdodDogMTZweDtcXG4gICAgcGFkZGluZzogMCAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCB7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE3MDhiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWRhdGEtY2hhbmdlZC1hbmltYXRpb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93LXN0dWIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtZGFyayAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuNSk7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogI2NjYzsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZGV0YWlscy1yb3cge1xcbiAgICBwYWRkaW5nOiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogIzMwMmUyZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiAjY2NjO1xcbiAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDA7XFxuICAgICAgICB3aWR0aDogMTAwJTtcXG4gICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcycHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1maWx0ZXItd3JhcHBlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzAzMDtcXG4gICAgcGFkZGluZzogMHB4O1xcbiAgICBib3JkZXI6IDAgc29saWQgI2I2YjZiNjtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjI0MjQ7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBoZWlnaHQ6IDI2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIgLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgICBkaXNwbGF5OiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQyYzJjO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIHtcXG4gICAgICBtYXJnaW46IDJweCAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDVkNTtcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDVkNTtcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDEycHgpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9nZ2xlLWJ1dHRvbi5hZy1zZWxlY3RlZCAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgICAgcmlnaHQ6IC0xcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIGJ1dHRvbiB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tY29sb3Ige1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20oYmxhY2spLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZSB7XFxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAgIC5hZy1kcmFnZ2luZy1yYW5nZS1oYW5kbGUgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbC5hZy1kaWFsb2cge1xcbiAgICAgIG9wYWNpdHk6IDAuNztcXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MzYzNjMztcXG4gICAgICBjb2xvcjogI2NjY2NjYztcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIC5hZy1pY29uIHtcXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0OTQ5NDk7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiAjY2NjO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTUxNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgybiArIDIpOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbC5hZy1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjY2NjO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdCAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICBtYXJnaW46IDQuOHB4IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICNkNmQ1ZDU7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xcbiAgICBsaW5lLWhlaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCB7XFxuICAgIGNvbG9yOiAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yb3ctZHJhZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICNkNmQ1ZDU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIyNXB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjRweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyMHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI3MHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTJweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZhZGVkIHtcXG4gICAgb3BhY2l0eTogMC4zOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXM6bm90KC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNzA4YjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogIzQwM2UzZTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIG1pbi1oZWlnaHQ6IDE4cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC40KTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGxpZ2h0Z3JlZW47IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWhpZ2hsaWdodC1hbmltYXRpb24ge1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcztcXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xcbiAgICBoZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaXRpYWw7XFxuICAgICAgICAgICAgYm94LXNpemluZzogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICB0b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJlOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgcGFkZGluZzogMTBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1uYW1lLWZpbHRlciB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgaW5wdXQsXFxuICAuYWctdGhlbWUtZGFyayBzZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBjb2xvcjogI2NjYzsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IGlucHV0W3JlYWRvbmx5XSB7XFxuICAgIGJhY2tncm91bmQ6IHJnYmEoNDgsIDQ2LCA0NiwgMC4zKTsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZENsYXNzaWNcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadDZzb2E0QUFBRjRBQUFVNEdobFlXUVZvMk92QUFBV1dBQUFBRFpvYUdWaEI4UUQrQUFBRnBBQUFBQWthRzEwZU5ZQUdGa0FBQmEwQUFBQTRHeHZZMkdhaEpWNkFBQVhsQUFBQUhKdFlYaHdBRVVBWFFBQUdBZ0FBQUFnYm1GdFpSSEJiQ1VBQUJnb0FBQUJubkJ2YzNRQUF3QUFBQUFaeUFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFMWUFRQU5LQTBBQUNnQUFBU0VYQnlFVklSTURJUlVEU3Y2VGVYa0JiZjFzM053Q2xBS1YxZFdyQVlBQmdLc0FBQUFBQVFBQS84QUVBQVBBQUNFQUFBRTFCeWMzRndjbkVTRW5OeGNISnpjaEVUY1hCeWMzRnhFaEZ3Y25OeGNISVJFQnpWSkl6YzFJVWdFSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKQXZNSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKVWtqTnpVaFNBUUFBQUFBQUFRQ1dBQjREYWdOaUFCQUFBQUVISndFV0Z4NEJGeFlYQnljUkl4RXhBYTZ4WndGcUxTNHRXaTR0TFdld3BRSkNzV2NCYWk0dExWc3RMUzFuc1AzZEFpUUFBQUFCQVFBQXdBTUFBc0FBQ3dBQUFRY25CeWMzSnpjWE54Y0hBd0JJdUxoSXVMaEl1TGhJdUFFSVNMaTRTTGk0U0xpNFNMZ0FCUUFCLzc0RC93UEJBQThBSHdBakFDY0FMQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJNeEVqSlRNVkl3TXpFU01SQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDJhVlZVQlZWVlZxMVpXUWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL3F2KzFxcXFBYXIrVmdHcUFBQUFBd0FCLzc0RC93UEJBQThBSHdBcEFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdjQkp6Y1hFeDRCRnpFRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZYlA3by9UV3U2QkltRWdQQlN6WDgvVFZMU3pVREF6VkxWeGdSL1A4UkdSa1JBd0VSR0w3OS9zcERpd0dvQ2hRS0FBQUFBQU1BQWYrK0EvOER3UUFQQUI4QUl3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRElUVWhBMzgxUzBzMS9RSTFTMHMxQXYvOC9oRVlHQkVEQWhFWUdPYitxZ0ZXQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL2dHcUFBQUFBZ0FCLzc0RC93UEJBQThBSHdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVlBQU1BY3dCSUE0MERPQUFHQUFvQUZ3QUFDUUVIRndrQ0lUY1hJUVV3QmhVVUZqTXlOalUwSmpFQy9mNVZQR2IrOXdGRkFVWDk3OHpNL21nQ1RGVXlJeU15VlFHTkFhczhadjczL3JzQlJjM05RR3NxSXpJeUl5cHJBQUFBQWdCVkFCVUJxd05yQUFNQUJ3QUFBUkVoRVFFVklUVUJxLzZxQVZiK3FnSnIvYW9DVmdFQXE2c0FBQUFHQUZVQUZRT3JBMnNBQXdBSEFBc0FEd0FUQUJjQUFDVVZJVFVoRlNFMUF4VWhOU0VWSVRVREZTRTFJUlVoTlFHci9xb0RWdjZxcXY2cUExYitxcXIrcWdOVy9xckFxNnVycXdGVnFxcXFxZ0ZXcTZ1cnF3QUFBd0FCLzc0RC93UEJBQThBSHdBakFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdNVklUVURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWtmNEFBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvcXVxcWdBQUFBQURBS3NBYXdOVkF4VUFCd0FNQUJJQUFBRXpFU0UxSXhFaEV5RVJJUkVuTlNFUk14RUNxNnIrQUtvQ0FGWCtxd0ZWcS82clZRSnIvZ0NxQWdEL0FQNnJBVlZXVmY2ckFRQUFBQUFBQVFCdUFDNERrZ05TQUEwQUFBa0JIZ0VYQ1FFSENRRW5DUUUzQWdBQkdSNDlIdjduQVJsNS91Zis1M2tCR2Y3bmVRSTVBUmtlUFI3KzUvN25lUUVaL3VkNUFSa0JHWGtBQXdCNEFOVURud0xoQURnQVJ3QmFBQUFCTmpjK0FUYzJGeDRCSHdFR0J3NEJCd1lIRmhjZUFSY1dGdzRCSnk0Qkp3NEJCd1luTGdFbkpqYytBVGN1QVRjK0FSY2VBUmNlQVJjSEJnY09BUWNHTno0Qk56QTJCekVuSWdZSERnRUhCaGNlQVJjV0Z6Y3VBU014QWhvbUpTWkdJQ0VkRUJ3Tk55QWdJRUFoSUNBZ0lTQkFJQ0FnTm0xSklrb2hPM3hDSHlVbU93OFBEZzFES0VCTUdCQTlNVDFzTmhBaEVKc25LeXMyQVFJdEkwUWtBd1dPQkFrRkF3VURGdzBNUGljbkhnRWxUaDBDT1NFZUh5OE9EZ0VCQ1FjaEd4c2JOeHdiR3hvWkdqUWFHaG9oRGpZWk54a3NUQjBPQWdJaUhoNHFLemtUSW5BMEl5TUJCRTRtREJnTWtBRVZGVEVURXdJQk5CZzBBZU1DQVFFREFROFVGU1VPRFFFekdqUUFBQUFBQndBeUFDY0R6Z05aQUFzQUR3QWJBQjhBS3dBd0FEMEFBRGNpQmhVVUZqTXlOalUwSmlrQkZTRUJJZ1lWRkJZek1qWTFOQ1loRlNFMUJ6SVdGUlFHSXlJbU5UUTJBUlVoTlNFaE1oWVZGQVlqSWlZMU5EWXpuUzArUGkwc1BqNERCZjFWQXF2OHp5MCtQaTBzUGo0REJmMVZoaDRzTEI0ZkxDd0RVUDFWQXF2OHp5dytQaXd0UGo0dC9ENHNMVDQrTFN3KzFRSUVQeXdzUHo4c0xEL1cxaUFzSHg4c0xCOGZMQUZPMWRVK0xTdytQaXd0UGdBQUFBRUFsZ0FqQTJvRFhRQUpBQUFCRVRNUk54Y0pBVGNYQWEra3NHZitsdjZXWjdJQlF3SWEvZWV3Wi82V0FXcG5zUUFBQUFBREFBSC93UVFCQThFQUVBQWdBQ3dBQUFFeUZoVVJGQVlqSVNJbU5SRTBOak1oRnlFaUJoVVJGQll6SVRJMk5SRTBKZ0V6RlNNVkl6VWpOVE0xTXdPQU5VeE1OZjBCTlV0TE5RTC9BZnorRWhnWUVnTUNFUmdZL3NTcnE2dXJxNnNEd1VzMS9RQTFTMHMxQXdBMVMxY1lFZjBCRVJnWUVRTC9FUmorcktxcXFxcXJBQUFEQUNJQWRnUGVBd29BSWdCSUFGTUFBQUUzRno0Qk14WVhIZ0VYRmhjT0FRY1hCeWMzQVQ0Qk56WXlNeVkwTlNNaUJnY25CeE1tSnk0Qkp5WW5EZ0VIRmhjZUFSY1dOeGNHQndZbUp5WW5KaWN1QVNjbUp6NEJOekVCUGdFM01DWW5EZ0VIRndFb05TY2dRaU5JUWtKM05ETXJLbTlBTjBNaER2N01IajhlQ2hRTEFRczFhekpRTXVzcUpTVTZGQlFISXo0YUpqRXljejgvUHpRdUx5OWZMeTh1SWg0Zk5oa1lGeXRxUHdIakxrd2dQemtMUGl4VEF1RXBNZ2tLQWhjWFVEWTJQejVySjBVMUtRd0Jod2NGQVFFVkt4VUtFR1pLL3RZRkVSSTNKQ1FwR2o4a05Da3FPQXdNQ0VFT0JRVUpFQThiRlJvWk95QWdJajl2S2Y2UUhVc3JVQzAxVmh0cUFBQUFBd0FpQUprRDNnTG9BQnNBT3dCS0FBQUJGaGNlQVJjV0Z3WUhEZ0VuSmljbUp5NEJKeVluTmpjK0FUYzJCdzRCQnhZWEhnRTNOamMrQVRjd0ppY0dCdzRCQndZaklpY3VBU2NtSnpFbEpqUTFJdzRCQnhjK0FUYzZBVE1DQ1VoQ1FuYzBNeXM3VlZYRmFXbGpJaDRmTmhrWUZ5bzFOSHRHUmJjalBob3dSRVNjVWxOTk1WRWlQemtKRnhkREtTb3VMeW9yUWhjWENBRlNBUXRFaHp3bExtWXhDaFFMQXVnQ0Z4ZFBOalpBVjBWRlNBVUVQQlFhR2pvaElDRS9OemRSRnhldkdVQWtRakV5TVFZRkxSeFBMbEFzTENVbE53OFFFQkE1Smljc0F4WXJGUUVSSFUwV0RnSUFBQUFDQUZVQVFBT3JBMEFBQmdBTEFBQVRJUUVSSnhFQkFSVXpOU05WQTFiK3FxcitxZ0ZXcXFvRFFQNnIvbFdyQVFBQlZmNnJWbFlBQUFJQThnREFBdzRDd0FBREFBa0FBQUVSSXhFQkp6Y25DUUVCUjFVQ0hNZkhPZjhBQVFBQ3dQNEFBZ0QrT2NmSE9mOEEvd0FBQUFBQURBQ3IvK3NEVlFPVkFBTUFCd0FMQUE4QUV3QVhBQnNBSHdBakFDY0FLd0F2QUFBM014VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlFak5UT3JxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFhcXFxcFdxcXFxcXFnR3FxcXFxcXFvQnFxcXFxcXFxQWFxcXFxcXFBQUFBQUFVQVZmL3JBNnNEbFFBZkFDTUFLQUFzQURBQUFBRXpOU0VSSVRVakZTTVZJVFVoRVNFMUlSRWhOU0VSSVRVaEVTTVJJUlV4QVNNVk14RWpGVE0xRVNNVk15VWpGVE1CcTZvQlZ2NnFxcXNCVlFGVy9xcitxd0ZWQVZiK3F2NVdWZ0ZXQWFxcXFxcXFxcXIrQUtxcUEwQlYvd0JXVnFwVi93QlYvd0JXL3dCVkFsVUJBRlg5VlZVQnExWldBVlZWVlZVQUFBQURBQmtCRVFQbkFwTUFGZ0F0QUR3QUFBRVdGeDRCRnhZZkFRWUhEZ0VuSmk4Qk5qYytBVGMyQlE0Qkl5SW1KdzRCRHdFV0Z4NEJOelkvQVM0Qkp6RUhKalExSXc0QkJ4YytBVGMyTWpNQ0NENDhQSEl6TkN3a1hucDUvM3g3WXlReE9qbCtSRU1CTFJ5QlVsS0JIQ0U5SEFOS1hsN0ZYMTlNQXh3L0lwa0JDMFNIUENVdVpqRUtGQXNDa3dFTURDMGhJQ3NrWFRVMUR5b3BYeVF5SnlnM0R3K0lSMXhjUnc0bUZ3TS9JQ0VCSUI5QUFoZ29EaU1WS3hVQkVCNU1GZzBDQVFBQUFnRHlBTUFERGdMQUFBTUFDZ0FBSlNNUk13RTNKemNKQVNjRERsVlYvZVRIeHprQkFQOEFPY0FDQVA0NXg4YzUvd0QvQURrQUFBQUJBRXNBVmdPMUF5b0FDd0FBQVJjSENRRWVBUmNISVJVaEFXK3RaLzZXQVdvWk5CcXZBa2o5dWdGcXJXY0JhZ0ZxR2pNYXJxc0FBQUlBVlFBVkE2c0Rhd0FjQUNjQUFBRTNGd2N6RlNNZUFSY0hKeFVqTlFjbk55TTFNeWMzSGdFWE5UTVZBek0zTlNjakJ4VWVBUmNDVlp4NW5OM2RKMDRuZVp5cW5IbWMzZDJjZVNkT0o2cWNqbVJram1RWk1oa0NqcHg1bktvblRpZDVuTjNkbkhtY3FweDVKMDRuM2QzK2gyU09aR1NPR1RJWkFBQUVBQUgvdmdQL0E4RUFEd0FmQUNjQUx3QUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQkJ6Y1hOeGNIRndFM0J4Y0hGemNYQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDNnNDBneW56bWZNQUczU3VVeG9EbWdNVUpMTlFNRE5VdExOZno5TlVzRHJCZ1IvUDhSR1JrUkF3RVJHUDB0U2VReG56bWZNUUczNVVreW9EbWdNUUFEQUZVQUZRT3JBMnNBQXdBSEFBc0FBQ1VWSVRVQkZTRTFBUlVoTlFPci9Lb0RWdnlxQTFiOHFzQ3Jxd0ZWcXFvQlZxdXJBQUFBQUFRQUFmKytBLzhEd1FBUEFCOEFKd0F2QUFBRklTSW1OUkUwTmpNaE1oWVZFUlFHQXlFaUJoVVJGQll6SVRJMk5SRTBKZ0UzQnljSEp6Y25BUWMzSnpjbkJ5Y0RmLzBDTlV0TE5RTCtOVXRMTlB6K0VSZ1lFUU1DRVJnWS9XemtTVEtmT1o4d0FXeEo1REdmT1o4eFFrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9lNUo1REdnT2FBeEFXemtTVEdnT2FBeEFBRUFxd0ZyQTFVQ0ZRQURBQUFUSVJVaHF3S3EvVllDRmFvQUFBQUJBV1FBd0FLY0FzQUFCUUFBSlRjbk53a0JBV1RIeHpnQkFQOEErY2ZIT2Y4QS93QUFBQUFBQVFEUy85WURMZ09xQUJRQUFBRUhKd0VXRng0QkZ4WVhCeWNSTnhjSkFUY1hFUUdsYkdjQkxpWWxKa3dsSmlabmJHeG4vdEwrMG1kc0FvRnNad0V1SmlVbVRDVW1KbWRzL241c1ovN1NBUzVuYkFHQ0FBQUFBQU1BQWYrL0JBQUR3Z0FjQUNvQU9RQUFBVElYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOak1GQVI0Qk16STNQZ0UzTmpVMEppY3VBU01pQnc0QkJ3WVZGQllYQVFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxQVZIOXFUYUdTbGhPVG5RaElqQjBONFpLV0U1T2N5SWhMeXNDVndQQ0tDbUxYbDFxYTExZGpDZ3BLU2lNWFYxcmFsMWVpeWtvKy8ycEtqQWlJWFJPVFZsS2hZRXFNQ0VpZEUxT1dFdUdOZ0pYQUFBQ0FLc0FRQU5WQTBBQUNBQVNBQUFCSVJFaEVTRTFNeFVYSXhVaE5TTVJJUkV4QWxVQkFQMVdBUUNxcTFYK3FsVUNBQUxyL1ZVQ3ExVlZWcXFxL2dBQ0FBQUFBQUVBcXdBVkExVURGUUFQQUFBQkl4RVhJUXNCSVRjMU14RWpOU0VWQXdCVnF2OEFWVlgvQUtwV3F3SUFBc0QrcTFiL0FBRUFWbFVCQUZWVkFBVUFBZisrQS84RHdRQVBBQjRBSmdBOEFFUUFBQVVoSWlZMUVUUTJNeUV5RmhVUkZBWUJOU01pQmhVUkZCWTdBUkVqTlRNRklSRWhNalkxRVE4Qkp6Y2VBUmNISnhVakZ3Y25OeDRCRndjek5URVRJUlVoTlRRbUl3Ti8vUUkxUzBzMUF2NDFTMHY5VElJUkdCZ1JncXVyQXFuOXJBSXJFUmorRFR4ekhUb2RQUXpFRFQxemN4QWVEdzF2MWYzVkFsUVlFVUpMTlFNRE5VdExOZno5TlVzREFxb1lFZnovRVJrQ1ZWVlYvYXNaRVFJcjV3MDljeDA2SEQwTnhBdzlkSE1QSGc4TmJ3SG1xb0VSR0FBQUFBQUJBS3NBYXdOVkF4VUFDd0FBRXlFUk14RWhGU0VSSXhFaHF3RUFxZ0VBL3dDcS93QUNGUUVBL3dDcS93QUJBQUFCQVdRQXdBS2NBc0FBQlFBQUpTYzNKd2tCQXB6SHh6ai9BQUVBK2NmSE9mOEEvd0FBQUFBQUFnQUIvNzhFQUFQQ0FCd0FPUUFBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNVk1oY2VBUmNXRlJRSERnRUhCaU1pSnk0Qkp5WTFORGMrQVRjMk13SUFhbDFkaXlnb0tDaUxYVjFxYWwxZGl5Z3BLU2lMWFYxcVdFNU9kQ0VpSWlGMFRrNVlXRTVPY3lJaElTSnpUazVZQThJb0tZdGVYV3ByWFYyTUtDa3BLSXhkWFd0cVhWNkxLU2hYSVNKMFRVNVlXVTFPZENFaUlpRjBUazFaV0U1TmRDSWhBQUFEQUFIL3Z3UUFBOElBSEFBNUFGWUFBQUV5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6RlNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNQkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpNaGNlQVJjV0ZRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcVdFNU9jeUloSVNKelRrNVlXRTVPZENFaUlpRjBUazVZQVFBVUZFVXZMelUxTHk1R0ZCUVVGRVl1THpVMUx5OUZGQlFEd2lncGkxNWRhbXRkWFl3b0tTa29qRjFkYTJwZFhvc3BLRmNoSW5STlRsaFpUVTUwSVNJaUlYUk9UVmxZVGsxMElpSCtWalV2TDBVVUZCUVVSUzh2TlRVdUwwWVVGQlFVUmk4dU5RQUFBQUVBU3dCV0E3VURLZ0FQQUFBQkp6Y1dGeDRCRnhZWEFTYzNJVFVoQXBLdVp5MHRMVnN0TFM3K2xtZXQvYm9DUndJVnJtY3RMUzVhTFM0dC9wWm5yYXNBQUFBQUFnQ0FBRUFEZ0FOQUFBMEFHQUFBQVJFaEVTTVJGQll6SVRJMk5SRUZOeGNISnpjWEVUTVJNUU1yL2FwVk1pTUNWaU15L3F0dVBOWFZQRzVXQWNEKzFRRXIvdFVqTWpJakFTc2RianpWMVR4dUFaMytZd0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUZWQUdzQ3F3TVZBQU1BQUFrQkVRRUJWUUZXL3FvQndBRlYvVllCVlFBQkFWVUFhd0tyQXhVQUF3QUFDUUlSQVZVQlZ2NnFBeFgrcS82ckFxb0FBQUVBcXdFVkExVUNhd0FEQUFBVENRRWhxd0ZWQVZYOVZnRVZBVmIrcWdBQUFRQkVBR1lEdkFNYkFBa0FBQWtDTnhjQkhnRVhNUU84L2NUK3hIakVBY1FlUEI0Q292M0VBVHg0d3dIRUh6d2VBQUFBQUFFQlZRQnJBcXNERlFBREFBQUpBaEVCVlFGVy9xb0RGZjZyL3FzQ3FnQUFBUUNyQVdzRFZRSVZBQU1BQUJNaEZTR3JBcXI5VmdJVnFnQUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRQUFBQUVBQVBRZmZROWZEenoxQUFzRUFBQUFBQURaUVkrWkFBQUFBTmxCajVrQUFQKytCQUVEd2dBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBLy84RUFRQUJBQUFBQUFBQUFBQUFBQUFBQUFBQU9BUUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQzJCQUFBQUFRQUFKWUVBQUVBQkFBQUFRUUFBQUVFQUFBQkJBQUFBUVFBQUhNRUFBQlZCQUFBVlFRQUFBRUVBQUNyQkFBQWJnUUFBSGdFQUFBeUJBQUFsZ1FBQUFFRUFBQWlCQUFBSWdRQUFGVUVBQUR5QkFBQXF3UUFBRlVFQUFBWkJBQUE4Z1FBQUVzRUFBQlZCQUFBQVFRQUFGVUVBQUFCQkFBQXF3UUFBV1FFQUFEU0JBQUFBUVFBQUtzRUFBQ3JCQUFBQVFRQUFLc0VBQUZrQkFBQUFRUUFBQUVFQUFCTEJBQUFnQVFBQUtzRUFBRlZCQUFCVlFRQUFLc0VBQUJFQkFBQlZRUUFBS3NFQUFDckFBQUFBQUFLQUJRQUhnQTRBSFFBbGdDd0FQZ0JQQUYyQWFnQjFnSHNBaGdDVWdKNEFwd0RMQU9JQTZJRDVBUnFCT0FFL0FVWUJXZ0ZzZ1lVQmpBR1RBYUtCdGdHOUFkQ0IxQUhaQWVRQit3SURnZ3NDSlFJckFqQUNSZ0ptZ204Q2VnSitBb0lDaGdLS0FwQ0NsSUtZQXB3QUFBQUFRQUFBRGdBV3dBTUFBQUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0QXJnQUJBQUFBQUFBQkFBa0FBQUFCQUFBQUFBQUNBQWNBY2dBQkFBQUFBQUFEQUFrQVBBQUJBQUFBQUFBRUFBa0Fod0FCQUFBQUFBQUZBQXNBR3dBQkFBQUFBQUFHQUFrQVZ3QUJBQUFBQUFBS0FCb0FvZ0FEQUFFRUNRQUJBQklBQ1FBREFBRUVDUUFDQUE0QWVRQURBQUVFQ1FBREFCSUFSUUFEQUFFRUNRQUVBQklBa0FBREFBRUVDUUFGQUJZQUpnQURBQUVFQ1FBR0FCSUFZQUFEQUFFRUNRQUtBRFFBdkVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFabGNuTnBiMjRnTVM0d0FGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNRUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMEZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMUpsWjNWc1lYSUFVZ0JsQUdjQWRRQnNBR0VBY2tGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBadmJuUWdaMlZ1WlhKaGRHVmtJR0o1SUVsamIwMXZiMjR1QUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWZyZXNoIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICBjb2xvcjogYmxhY2s7XFxuICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBmb250LXNpemU6IDE0cHg7XFxuICBsaW5lLWhlaWdodDogMTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51LCAuYWctdGhlbWUtZnJlc2ggLmFnLXRoZW1lLWZyZXNoLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3IsIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtZnJlc2ggLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjZmNmY2ICFpbXBvcnRhbnQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAqIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoICo6Zm9jdXMsIC5hZy10aGVtZS1mcmVzaCAqICo6YmVmb3JlLCAuYWctdGhlbWUtZnJlc2ggKiAqOmFmdGVyIHtcXG4gICAgICBvdXRsaW5lOiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIC5hZy1pY29uIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoZWNrYm94LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWZyZXNoIC5hZy10b2dnbGUtYnV0dG9uIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveCBsYWJlbCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiBsYWJlbCB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveCBsYWJlbDplbXB0eSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiBsYWJlbDplbXB0eSB7XFxuICAgICAgICBtYXJnaW46IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIHtcXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgc2lsdmVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgc2lsdmVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhIHtcXG4gICAgcGFkZGluZy1yaWdodDogMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogZGFya3JlZDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20od2hpdGUpLCB0byhsaWdodGdyZXkpKTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlLCBsaWdodGdyZXkpO1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcm93IHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy5hZy1yb3ctbGFzdCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctb2RkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctaG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlYmViZTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIHdpZHRoOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNBOUE5QTknJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjBweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2guYWctZG5kLWdob3N0IHNwYW4sXFxuICAgIC5hZy10aGVtZS1mcmVzaC5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIG1pbi13aWR0aDogMjIwcHg7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgbWFyZ2luOiAwIDNweCAwIDZweDtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTdweDtcXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWxpc3Qge1xcbiAgICBoZWlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyMHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSB7XFxuICAgICAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiBhdXRvO1xcbiAgICAgICAgICAgICAgICBmbGV4OiBhdXRvO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtbXMtZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keS13cmFwcGVyIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XFxuICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwIDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFuZWwgPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG4gICAgYm90dG9tOiAwO1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24uYWctZGlzYWJsZWQgLmFnLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQuYWctY2VsbC1yYW5nZS1jaGFydC1jYXRlZ29yeSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MCwgODAsIDgwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMzpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM3Njc2NzY7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20ge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20uYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWxsLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogY2VsbDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogMzdweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wb3B1cC1lZGl0b3IgLmFnLWxhcmdlLXRleHRhcmVhIHRleHRhcmVhIHtcXG4gICAgICBoZWlnaHQ6IGF1dG87XFxuICAgICAgcGFkZGluZzogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIHBhZGRpbmc6IDAgNHB4IDAgMTJweDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24gYnV0dG9uIHtcXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICB3aWR0aDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgfiAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLWxlZnQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjZWNmMGYxO1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtaW4td2lkdGg6IDE2cHg7XFxuICAgICAgbWFyZ2luOiAwIDJweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZGUyZTU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlYyAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcm93LXN0dWIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1mbG9hdGluZy10b3Age1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctdG9wIC5hZy1yb3csIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc3RhdHVzLWJhci1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zaWRlLWJ1dHRvbiBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXI6IDA7XFxuICAgICAgICBjb2xvcjogYmxhY2s7XFxuICAgICAgICBwYWRkaW5nOiA4cHggMCA4cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogNzJweDtcXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDA7XFxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctc2lkZS1iYXIgLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xcbiAgICBwYWRkaW5nOiAwcHg7XFxuICAgIGJvcmRlcjogMCBzb2xpZCAjYjZiNmI2O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogMnB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbGFiZWxlZCBsYWJlbCB7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1mcmVzaCAuYWctYW5nbGUtc2VsZWN0ID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgd2lkdGg6IDQwcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICBib3JkZXItcmFkaXVzOiA1MDByZW07IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDEycHgpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICAgIHJpZ2h0OiAtMXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1kaWFsb2cuYWctY29sb3ItZGlhbG9nIHtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWNvbG9yIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRvb2xzIHtcXG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdmFsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1kcmFnZ2VyIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLWh1ZS1hbHBoYSB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcXG4gICAgICBoZWlnaHQ6IDExcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWUge1xcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWU6Zm9jdXMge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZDc3ZTQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2OmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpsYXN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MzYzNjMztcXG4gICAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIHtcXG4gICAgICAgIGhlaWdodDogMjBweDtcXG4gICAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbi5hZy1oYXMtcG9wdXAge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIgYnV0dG9uIHtcXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNlYmViZWI7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2x0aXAuYWctdG9vbHRpcC1oaWRpbmcge1xcbiAgICAgIG9wYWNpdHk6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0ge1xcbiAgICBjb2xvcjogYmxhY2s7XFxuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICMzMzM7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1hZ2dyZWdhdGlvbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDBcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tYXJyb3dzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNhbmNlbDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hhcnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jb2x1bW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvbHVtbnM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvcHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNyb3NzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWRhdGE6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWRlc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1leWUtc2xhc2g6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWV5ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1maXJzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZ3JpcDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxhc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxvYWRpbmc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW1heGltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1taW5pbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tbWludXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5vbmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5vdC1hbGxvd2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcGluOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1waXZvdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcHJldmlvdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vZmY6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNhdmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdGljazpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzBcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdHJlZS1jbG9zZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdHJlZS1vcGVuOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHkge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJvdy1kcmFnOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvZ2dsZS1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tZ3JvdXAsXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gZGl2LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLnNhc3MtdmFyaWFibGVzOjphZnRlciB7XFxuICAgIGNvbnRlbnQ6ICd7IFxcXCJhdXRvU2l6ZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJoZWFkZXJIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncm91cFBhZGRpbmdTaXplXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwiZm9vdGVyUGFkZGluZ0FkZGl0aW9uXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwidmlydHVhbEl0ZW1IZWlnaHRcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJhZ2dGdW5jUG9wdXBIZWlnaHRcXFwiOiBcXFwiNzBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiNHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjEycHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZhZGVkIHtcXG4gICAgb3BhY2l0eTogMC4zOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20od2hpdGUpLCB0byhsaWdodGdyZXkpKTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlLCBsaWdodGdyZXkpO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgbWluLWhlaWdodDogMThweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgZGFya2dyZWVuOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xcbiAgICBoZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbml0aWFsO1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgICBjb2xvcjogYmxhY2s7XFxuICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiQGNoYXJzZXQgXFxcIlVURi04XFxcIjtcXG5AZm9udC1mYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkTWF0ZXJpYWxcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadlpOQkJnQUFBRjRBQUFSV0dobFlXUVZhV04zQUFBUzBBQUFBRFpvYUdWaEI0a0QrUUFBRXdnQUFBQWthRzEwZU5ZQUpwOEFBQk1zQUFBQTRHeHZZMkY5U0hqTUFBQVVEQUFBQUhKdFlYaHdBRUlBV1FBQUZJQUFBQUFnYm1GdFpWbThxM0VBQUJTZ0FBQUJxbkJ2YzNRQUF3QUFBQUFXVEFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFRQUFhd01BQXhVQUN3QUFBU0VWQ1FFVklUVWhOeWNoQXdEK0FBRVYvdXNDQVA3VjF0WUJLd01WVmY4QS93QlZnTlhWQUFBQUFBUUFPZi81QThjRGh3QUlBQThBRndBZkFBQUJNelV6SndjekZURUhJelVIRnpVekpTY1ZJeFV6RlRjRkl4VWpGemNqTlFHcnFuTEh4M0k1Y3NmSGNnSlZ4M0p5eC82T3FuTEh4M0lDVG5MSHgzSTVjc2ZIY2xYSGNxcHl4NDV5eDhkeUFBQUJBS3NBYXdOVkF4VUFDUUFBRXhjM0VUTVJGemNKQWFzODdsYnVQUDZyL3FzQndEenUvZmtDQis4OUFWWCtxd0FDQUZVQUZRT3JBMnNBSEFBb0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21JeE1ISndjbk55YzNGemNYQndJQVdFNU9kQ0VpSWlGMFRrNVlXRTVPZENFaUlpRjBUazVZMVR5Wm1UeVptVHlabVR5WkEyc2lJWFJPVGxoWVRrNTBJU0lpSVhST1RsaFlUazUwSVNMOXZEeVptVHlabVR5Wm1UeVpBQUFBQXdEVkFKVURLd0xyQUFRQUNRQU5BQUFUTXhFakVUY3pFU01SRXpNUkk5V0FnTzk0ZU85NGVBSTMvbDRCb3JUOXFnSlcvcXIvQUFBQ0FJQUFRQU9BQTBBQUR3QVdBQUFCSVNJR0ZSRVVGak1oTWpZMUVUUW1BU2MzRndFWEFRTXIvYW9qTWpJakFsWWpNakwrWGRZOG1nRkVQUDZBQTBBeUkvMnFJekl5SXdKV0l6TDlxOVU4bVFGRVBQNkFBQUFBQWdDQUFFQURnQU5BQUE4QUV3QUFBU0VpQmhVUkZCWXpJVEkyTlJFMEpnTWhOU0VESy8ycUl6SXlJd0pXSXpJeWVmNVdBYW9EUURJai9hb2pNaklqQWxZak12NVZWZ0FBQWdDQUFFQURnQU5BQUFNQUV3QUFBUkVoRVNVaElnWVZFUlFXTXlFeU5qVVJOQ1lESy8ycUFsYjlxaU15TWlNQ1ZpTXlNZ0xyL2FvQ1ZsVXlJLzJxSXpJeUl3SldJeklBQXdCekFFZ0RqUU00QUFZQUNnQVdBQUFKQVFjWENRSWhOeGNoQlRBR0ZSUVdNekkyTlRRbUF2MytWVHhtL3ZjQlJRRkYvZS9NelA1b0FreFZNaU1qTWxVQmpRR3JQR2IrOS82N0FVWE56VUJyS2lNeU1pTXFhd0FBQUFBQ0FLc0Fhd0ZWQXhVQUF3QUhBQUFsSXhFek5SVWpOUUZWcXFxcWF3SC9xMWRYQUFBSkFLc0Fhd05WQXhVQUF3QUlBQXdBRUFBVkFCa0FIZ0FpQUNZQUFCTXpOU01CTXpVakZTRXpOU00xTXpVakJUTTFJeFVCRlRNMUJUTTFJeFVCTXpVakVUTTFJNnVxcWdFQXFxci9BS3FxcXFvQkFLcXFBUUNxL2xhcXFnRUFxcXFxcWdKcnF2MVdxcXFxVnFxcXFxb0JxcXFxcXFxcS93Q3EvbGFxQUFBQUFBRUJZZ0RBQXA0Q3dBQUdBQUFCSndrQk55YzNBcDQ4L3dBQkFEekR3d0tFUFA4QS93QTh4TVFBQUFBQUF3QnIvK3NEbFFPVkFBZ0FHUUFkQUFBQklTSUdGUkV6RVNFWElTSUdGUkVVRmpNaE1qWTFFVFFtSXhFaEVTRUN3UDRBSXpKVkFnQ0EvaXNrTWpJa0FkVWpNaklqL2lzQjFRT1ZNaVA5cXdKVlZUSWsvYXNqTWpJakFsVWtNdjFWQWxVQUFBRUExUUNWQXlzQzZ3QU1BQUFCSndjbkJ4Y0hGemNYTnljM0F5czg3Kzg4Nys4ODcrODg3KzhDcnp6djd6enY3enp2N3p6djd3QUFCUUJWQUJVRHF3TnJBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHYkNBaGtSMGRrWkVjVEl4QmxaUkFqRTBka1pFZEhaQWdJWlFFcmdQM3dteU15TWlNak1qSWpJekl5SXlNeU1pTUJBQWtNREFrSkRBd0JJdjhBVlFFcmdBSjZFQ01UUjJSa1IwZGtDQWhsWlFnSVpFZEhaR1JIRXlNUVpmN1ZLd0lQRHpFa0pERXhKQ1F4L2dBeEpDUXhNU1FrTVFGQURBa0pEQXdKQ1F3QmxmOEFWUUVxS3dBQUJ3Q1hBTDhEYVFMQkFBd0FFQUFkQUNFQUxRQTZBRDRBQUJNaUJoVVVGak15TmpVMEppTUZOU0VWQXlJR0ZSUVdNekkyTlRRbUl3VWhOU0VGTWhZVkZBWWpJaVkxTkRZM01oWVZGQVlqSWlZMU5EWXpCU0UxSWNJU0dSa1NFaGtaRWdLbi9kZCtFaGtaRWhJWkdSSUIwdjZzQVZUK0xnMFRFdzBORXhNTkVoa1pFaElaR1JJQ3AvM1hBaWtCRlJrU0VSb2FFUklaVlZaV0FTc1pFaElaR1JJU0dWVlZDeE1ORFJNVERRMFQ0Um9SRWhrWkVoRWFWbFVBQUFBQkFLc0Fhd05WQXhVQUNRQUFBU2NIRVNNUkp3Y0pBUU5WUE81Vzdqd0JWUUZWQWNBODdnSUgvZm52UGY2ckFWVUFBQUFBQVFGaUFNQUNuZ0xBQUFZQUFBRUhGd2NYQ1FFQm5qekR3endCQVA4QUFzQTh4TVE4QVFBQkFBQUFBQUFCQUpNQXh3TnRBcmtBUndBQUFTNEJJeUlHQnljK0FUTXlGeDRCRnhZWERnRUhKejRCTnlNT0FRY25JeGNPQVNNaUppY2pIZ0V6TWpZM0Z3NEJJeUluTGdFbkppYytBVGNYRGdFSE15YytBVE15RmhjekFxTUtYRDBpUFJaUEsyTTJQams1WHlRbEZSaFlPVThTR0FWRUJBMElLMUJHQkFrRklqVUpSQXBjUGhNakVFZ2hSeVkrT1RsZkpDVVZFejRvWGdVR0FvWXBEU1FWSWpRSlJBSGRPazhhRjA4WkhCTVNRaTR0Tno1bElVOFNMUm9NRlFrcVJnRUJLUjg2VUFnSVNBME9FeEpDTGkwM01GUWdYZ29VQ3lvTkVDZ2ZBQUFEQUpNQXh3TnRBcmtBSEFBcEFEVUFBQUVpQnc0QkJ3WUhGaGNlQVJjV016STNQZ0UzTmpjbUp5NEJKeVlqRVNJbU5UUTJNeklXRlJRR0l4RWlCaFVVRmpNeU5qVTBKZ0lBUGprNVh5UWxGUlVsSkY4NU9UNCtPVGxmSkNVVkZTVWtYems1UGtWaFlVVkZZV0ZGS1RzN0tTazdPd0s1RXhKQ0xpMDNOeTB1UWhJVEV4SkNMaTAzTnkwdVFoSVQvbUZoUlVWaFlVVkZZUUVLT3lrcE96c3BLVHNBQUFNQWdBREFBNEFDd0FBRUFBZ0FEQUFBSlRNMUl4VUJGU0UxQVNFMUlRR3JxcXIrMVFNQS9ZQUNBUDRBd0ZWVkFnQlZWZjdWVmdBQUFnRDNBTUFEQ1FMQUFBVUFDZ0FBSlNjM0p3a0JBVE1SSXhFRENjVEVQUDhBQVFEK0tsWlcvTVRFUFA4QS93QUNBUDRBQWdBQUFBQUNBS3NCUUFOVkFrQUFBd0FJQUFBQklSVWhCU0UxSVJVRFZmMVdBcXI5VmdLcS9WWUNRRldyVlZVQUFBWUFqZ0NrQTNJQzNBQUhBQXdBRXdBWEFCc0FJUUFBQVNFVUJpc0JOVEVsRlNFMUlTY3lGaFVoTlNFQkl6VXpOU00xTXljak5EWXpGUUpWQVIxREw2c0JIZjdqQVIxeUwwUCtBQUdPL3VSeWNuSnk1SEpETHdFVkwwSng1SEp5NDBJdmNmM0ljWEp5Y2k5Q2NRQUFBQUFDQUpNQXh3TnRBcmtBSEFBcEFBQUJJZ2NPQVFjR0J4WVhIZ0VYRmpNeU56NEJOelkzSmljdUFTY21JeEVpSmpVME5qTXlGaFVVQmlNQ0FENDVPVjhrSlJVVkpTUmZPVGsrUGprNVh5UWxGUlVsSkY4NU9UNUZZV0ZGUldGaFJRSzVFeEpDTGkwM055MHVRaElURXhKQ0xpMDNOeTB1UWhJVC9tRmhSVVZoWVVWRllRQUNBUGNBd0FNSkFzQUFCZ0FLQUFBVEZ3Y1hDUUVISlRNUkkvZkV4RHdCQVA4QVBBRzhWbFlDaE1URVBBRUFBUUE4UFA0QUFBQUFBQUVBcXdCckExVURGUUFKQUFBQklUY25DUUUzSnlFMUExWDkrZTg5L3FzQlZUenVBZ2NCNis0OC9xditxenp1VmdBQUFBQUNBT1FBcEFNY0F0d0FIQUFtQUFBQk54Y0hNeFVqSGdFWEJ5Y1ZJelVISnpjak5UTW5OeDRCRnpVekZRY3pOelVuSXdjVkhnRUNPV2hRYUpPVEdqUWFVR2h5YUZCb2s1Tm9VQm8wR25Kb1hrTkRYa01SSVFKSmFGQm9jaG8wR2xCb2s1Tm9VR2h5YUZBYU5CcVRrL3REWGtORFhoRWhBQUFCQUlBQzZ3T0FBMEFBQXdBQUV5RVZJWUFEQVAwQUEwQlZBQUFBQXdDQUFNQURnQUxBQUFNQUJ3QUxBQUEzSVRVaE5TRTFJVFVWSVRXQUF3RDlBQU1BL1FBREFNQlZnRmJWVlZVQUFRRUFBRUFEQUFDVkFBTUFBQ1VoRlNFQkFBSUEvZ0NWVlFBQUFBRUExUUdWQXlzQjZ3QUVBQUFUSVJVaE5kVUNWdjJxQWV0V1ZnQUJBV0lBd0FLZUFzQUFCZ0FBQVFjWEJ4Y0pBUUdlUE1QRFBBRUEvd0FDd0R6RXhEd0JBQUVBQUFBQUFBTUFnQURBQTRBQ3dBQURBQWNBQ3dBQU55RTFJUkVWSVRVQklUVWhnQUlBL2dBREFQMEFBd0Q5QU1CVkFhdFZWZjdWVmdBREFGVUFGUU9yQTJzQUhBQXJBRG9BQUFFaUJ3NEJCd1lWRkJjZUFSY1dNekkzUGdFM05qVTBKeTRCSnlZakFUUTNQZ0UzTmpNeUZoY0JMZ0UxQVNJbUp3RWVBUlVVQnc0QkJ3WWpBZ0JZVGs1MElTSWlJWFJPVGxoWVRrNTBJU0lpSVhST1RsaitxeG9iWFQ0K1J6dHJLLzRpSWlZQlZUdHJLd0hlSWlZYUcxMCtQa2NEYXlJaGRFNU9XRmhPVG5RaElpSWhkRTVPV0ZoT1RuUWhJdjVWUno0K1hSc2FKaUwrSWl0ck8vNnJKaUlCM2l0ck8wYytQbDBiR2dBQUFBQURBSUQvNndPQUE1VUFHQUFrQUN3QUFBRWpMZ0VqSWdZSEl5SUdGUkVVRmpNaE1qWTFFVFFtSXpFaE1oWVZGQVlqSWlZMU5EWUJJUkV6RlNFMU13TXJzdzFCS2lwQkRiTWpNaklqQWxZak1qSWovdFVTR1JrU0Voa1pBVDM5cWxZQnFsWURRQ1V3TUNVeUkvMVZJekl5SXdLckl6SVpFaEVaR1JFU0dmMEFBcXVBZ0FBQ0FLMEFid05UQXhFQUJRQVNBQUFsQnljM0hnRVRBUWNuQnhjSEp6Y1hOeWMzQVdPT0tJNEtGTVlCTkI4ZTl6NVk5bGc5ZXg0ZS9ZNG9qZ29VQWdyK3pCNGVlejFZOWxnKzl4NGZBQUFBQUFrQU9mLzVBOGNEaHdBUEFCTUFGd0FnQUNRQUxnQXlBRFlBT2dBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdFakZUTUJJUkVoSlFjWEJ5YzNIZ0VYSnlNVk15VUhKd2NuTng0QkZ6RUJJeFV6SlNNVk16Y2pGVE1EVmYxV0wwTkRMd0txTDBORC9kR3FxZ0lBL2prQngvN2NRa0lwYVdrS0ZRcmNxcW9CK0NoQlFpaHFHalVhL2dpcXFnRWQ1T1RqcXFvSFF5OENxaTlEUXkvOVZpOURBUnlxQVk3K2NyTkNRU2hwYWdvVUN0dXJNU2hCUVNocEdqVWFBWmFxcXFxcXFnQUFBQUFCQU5VQWxRTXJBdXNBQ3dBQUFTRVJJeEVoTlNFUk14RWhBeXYvQUZiL0FBRUFWZ0VBQVpYL0FBRUFWZ0VBL3dBQUFBQUFBUUZpQU1BQ25nTEFBQVlBQUFFbkNRRTNKemNDbmp6L0FBRUFQTVBEQW9ROC93RC9BRHpFeEFBQUFBQUNBRlVBRlFPckEyc0FIQUE1QUFBQklnY09BUWNHRlJRWEhnRVhGak15Tno0Qk56WTFOQ2N1QVNjbUl4RWlKeTRCSnlZMU5EYytBVGMyTXpJWEhnRVhGaFVVQnc0QkJ3WWpBZ0JZVGs1MElTSWlJWFJPVGxoWVRrNTBJU0lpSVhST1RsaEhQajVkR3hvYUcxMCtQa2RIUGo1ZEd4b2FHMTArUGtjRGF5SWhkRTVPV0ZoT1RuUWhJaUloZEU1T1dGaE9UblFoSXYwQUdodGRQajVIUno0K1hSc2FHaHRkUGo1SFJ6NCtYUnNhQUFNQVZRQVZBNnNEYXdBY0FEa0FWZ0FBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNMUlnY09BUWNHRlJRWEhnRVhGak15Tno0Qk56WTFOQ2N1QVNjbUl4RWlKeTRCSnlZMU5EYytBVGMyTXpJWEhnRVhGaFVVQnc0QkJ3WWpBZ0FzSnljNkVSQVFFVG9uSnl3c0p5YzZFUkFRRVRvbkp5eFlUazUwSVNJaUlYUk9UbGhZVGs1MElTSWlJWFJPVGxoSFBqNWRHeG9hRzEwK1BrZEhQajVkR3hvYUcxMCtQa2NDbFJBUk9pY25MQ3duSnpvUkVCQVJPaWNuTEN3bkp6b1JFTllpSVhST1RsaFlUazUwSVNJaUlYUk9UbGhZVGs1MElTTDlBQm9iWFQ0K1IwYytQbDBiR2hvYlhUNCtSMGMrUGwwYkdnQUJBS3NBYXdOVkF4VUFDUUFBQVFjWElSVWhCeGNKQVFJQVBPNzkrUUlIN2p3QlZmNnJBeFU4N2xidVBBRlZBVlVBQUFBQUFnQ0FBRUFEZ0FOQUFBNEFHUUFBQVJFaEVTTVJGQll6SVRJMk5SRWpCVGNYQnljM0Z4RXpFVEVESy8ycVZUSWpBbFlqTWxYL0FHNDgxZFU4YmxZQndQN1ZBU3YrMVNNeU1pTUJLeDF1UE5YVlBHNEJuZjVqQUFFQkt3RlZBdFVDS3dBREFBQUJGemNoQVN2VjFmNVdBaXZXMWdBQkFaVUE2d0pyQXBVQUF3QUFBUWNYRVFKcjF0WUNsZFhWQWFvQUFRR1ZBT3NDYXdLVkFBTUFBQ1UzSnhFQmxkYlc2OVhWL2xZQUFBRUJLd0ZWQXRVQ0t3QURBQUFCTnhjaEFTdlYxZjVXQVZYVzFnQUJBSWtBb2dOM0F0NEFCZ0FBQVNjSEZ3RW5BUUYzc2p6dUFnQTgvandCRzdJOTdnSUFQUDQ5QUFBQUFBRUJZZ0RBQXA0Q3dBQUdBQUFCQnhjSEZ3a0JBWjQ4dzhNOEFRRC9BQUxBUE1URVBBRUFBUUFBQUFBQUFRRFZBWlVES3dIckFBUUFBQk1oRlNFMTFRSlcvYW9CNjFaV0FBRUJBQUVpQXdBQ1hnQUZBQUFCQnljSENRRUN4TVRFUEFFQUFRQUNYc1BEUFA4QUFRQUFBQUFCQUFBQUFRQUFjRkJ6RVY4UFBQVUFDd1FBQUFBQUFObEJqMzBBQUFBQTJVR1BmUUFBLytzRHh3T1ZBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBUEEvOEFBQUFRQUFBQUFBQVBIQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUE0QkFBQUFBQUFBQUFBQUFBQUFnQUFBQVFBQVFBRUFBQTVCQUFBcXdRQUFGVUVBQURWQkFBQWdBUUFBSUFFQUFDQUJBQUFjd1FBQUtzRUFBQ3JCQUFCWWdRQUFHc0VBQURWQkFBQVZRUUFBSmNFQUFDckJBQUJZZ1FBQUpNRUFBQ1RCQUFBZ0FRQUFQY0VBQUNyQkFBQWpnUUFBSk1FQUFEM0JBQUFxd1FBQU9RRUFBQ0FCQUFBZ0FRQUFRQUVBQURWQkFBQllnUUFBSUFFQUFCVkJBQUFnQVFBQUswRUFBQTVCQUFBMVFRQUFXSUVBQUJWQkFBQVZRUUFBS3NFQUFDQUJBQUJLd1FBQVpVRUFBR1ZCQUFCS3dRQUFJa0VBQUZpQkFBQTFRUUFBUUFBQUFBQUFBb0FGQUFlQURvQWJBQ0VBTWdBNUFFUUFUUUJXQUdHQVpnQjJBSHVBaUFDUEFLMEF4SURMQU5DQTY0RUFBUWNCRGdFVGdTR0JNZ0U1QVQrQlRvRlNBVmdCVzRGZkFXU0Jhd0dEQVpPQm5ZRzJBYnlCd2dIWUFmZ0Ivb0lKZ2cwQ0VJSVVBaGVDSFFJaWdpWUNLd0FBQUFCQUFBQU9BQlhBQWtBQUFBQUFBSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEZ0N1QUFFQUFBQUFBQUVBQ2dBQUFBRUFBQUFBQUFJQUJ3QjdBQUVBQUFBQUFBTUFDZ0EvQUFFQUFBQUFBQVFBQ2dDUUFBRUFBQUFBQUFVQUN3QWVBQUVBQUFBQUFBWUFDZ0JkQUFFQUFBQUFBQW9BR2dDdUFBTUFBUVFKQUFFQUZBQUtBQU1BQVFRSkFBSUFEZ0NDQUFNQUFRUUpBQU1BRkFCSkFBTUFBUVFKQUFRQUZBQ2FBQU1BQVFRSkFBVUFGZ0FwQUFNQUFRUUpBQVlBRkFCbkFBTUFBUVFKQUFvQU5BRElRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzVm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzUVdkTllYUmxjbWxoYkFCQkFHY0FUUUJoQUhRQVpRQnlBR2tBWVFCc1VtVm5kV3hoY2dCU0FHVUFad0IxQUd3QVlRQnlRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzUm05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLW1hdGVyaWFsIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTNweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYi5hZy10YWItc2VsZWN0ZWQge1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgKjpmb2N1cywgLmFnLXRoZW1lLW1hdGVyaWFsICogKjpiZWZvcmUsIC5hZy10aGVtZS1tYXRlcmlhbCAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogODRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjEwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE1NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjUycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI5NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjk0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzM2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIzNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjM0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM3OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzc4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjg2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc5OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTIwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTIwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogODgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogODgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTk4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTk4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNTBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA5MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEzNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIxOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI2MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTMwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzMDJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTM0NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg1OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg1OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTM4NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzODZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MjhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ3MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NzBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTUxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1MTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTU1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1NTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk4OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTU5NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1OTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDE0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjM4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTYzOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA0MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2ODBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDY2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA2NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTcyMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3MjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDkycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTExOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MDZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxODA2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTE0NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTg0OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE4NDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTcwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxODkwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTg5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE5NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExOTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTMycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjIycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTIyMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTk3NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5NzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDE2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI3NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyNzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwNThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMDU4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogI2U1MzkzNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFjYzE7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XFxuICAgIGhlaWdodDogNDBweDtcXG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06Zm9jdXMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpmb2N1cyxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmZvY3VzLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmZvY3VzLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpmb2N1cyB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgICAgb3V0bGluZTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOjotbW96LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOjotbW96LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06Oi1tb3otcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTo6LW1vei1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTo6LW1vei1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06Oi1tb3otcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOjpwbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06OnBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTo6cGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XFxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcXG4gICAgaGVpZ2h0OiA0MHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpmb2N1cyB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgICAgb3V0bGluZTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdyB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2UyZTJlMjtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93LmFnLXJvdy1sYXN0IHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctaG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG9wYWNpdHk6IDAuODc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGwsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZTJlMmUyO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSB7XFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWNvbHVtbi1yZXNpemluZykgKyAuYWctaGVhZGVyLWdyb3VwLWNlbGw6aG92ZXIsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWdyb3VwLWNlbGw6bm90KC5hZy1jb2x1bW4tcmVzaXppbmcpICsgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWNvbHVtbi1yZXNpemluZyxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1jb2x1bW4tcmVzaXppbmcpICsgLmFnLWhlYWRlci1jZWxsOmhvdmVyLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbDpub3QoLmFnLWNvbHVtbi1yZXNpemluZykgKyAuYWctaGVhZGVyLWNlbGwuYWctY29sdW1uLXJlc2l6aW5nLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpmaXJzdC1vZi10eXBlOmhvdmVyLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpmaXJzdC1vZi10eXBlLmFnLWNvbHVtbi1yZXNpemluZyxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6Zmlyc3Qtb2YtdHlwZTpob3ZlcixcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6Zmlyc3Qtb2YtdHlwZS5hZy1jb2x1bW4tcmVzaXppbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMjRweDtcXG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMjNweDtcXG4gICAgcGFkZGluZy1yaWdodDogMjNweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiA0MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzZjUxYjU7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XFxuICAgICAgbWFyZ2luLXRvcDogOHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1pY29uIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XFxuICAgICAgbWluLXdpZHRoOiAzNHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCcxNnB4JyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxJTIwMTZweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnOHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnOHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNFMkUyRTInJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMzRweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogNTZweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogNTZweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDE2cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2cHgpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwuYWctZG5kLWdob3N0IHNwYW4sXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICAgIG9wYWNpdHk6IDAuODc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNlZWU7XFxuICAgIG1pbi13aWR0aDogMjIwcHg7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMzJweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgbWFyZ2luOiAwIDNweCAwIDZweDtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTdweDtcXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWxpc3Qge1xcbiAgICBoZWlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiA0MHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBwYWRkaW5nLXRvcDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXI6IDA7XFxuICAgICAgY29sb3I6ICMzZjUxYjU7XFxuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XFxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwO1xcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24gKyBidXR0b24ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAzMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLWdyb3VwLWljb25zLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGhlaWdodDogNTZweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiBhdXRvO1xcbiAgICAgICAgICAgICAgICBmbGV4OiBhdXRvO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtbXMtZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keS13cmFwcGVyIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDU2cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogN3B4O1xcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgICAgcGFkZGluZzogOHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBoZWlnaHQ6IDU2cHg7XFxuICAgIHBhZGRpbmc6IDAgMjRweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYW5lbCA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWljb24ge1xcbiAgICB3aWR0aDogMThweDtcXG4gICAgaGVpZ2h0OiAxOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCAuYWctaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24uYWctZGlzYWJsZWQgYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgc3BhbiB7XFxuICAgIG1hcmdpbjogMCA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCB7XFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20sIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0IHtcXG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMiwgMTM0LCAyMDMsIDAuMSk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA4OCwgMjU1LCAwLjEpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQuYWctY2VsbC1yYW5nZS1jaGFydC1jYXRlZ29yeSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyNTUsIDEzMiwgMC4xKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC4yKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTM6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC40KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC41KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbGwtaGFuZGxlIHtcXG4gICAgY3Vyc29yOiBjZWxsOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMjRweDtcXG4gICAgaGVpZ2h0OiA3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBvcHVwLWVkaXRvciAuYWctbGFyZ2UtdGV4dGFyZWEgdGV4dGFyZWEge1xcbiAgICAgIGhlaWdodDogYXV0bztcXG4gICAgICBwYWRkaW5nOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IHtcXG4gICAgICB3aWR0aDogMjAwcHg7XFxuICAgICAgaGVpZ2h0OiAzMTJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgICAgcGFkZGluZzogMCA4cHggMCAyNHB4O1xcbiAgICAgIGhlaWdodDogNDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGhlaWdodDogNDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93LXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24gYnV0dG9uIHtcXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgaGVpZ2h0OiAxOHB4O1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICB3aWR0aDogMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgfiAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XFxuICAgIGhlaWdodDogNDhweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLWxlZnQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDhweDtcXG4gICAgICBvcGFjaXR5OiAwLjU0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgb3BhY2l0eTogMC4zODsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2UyZTJlMjtcXG4gICAgYm9yZGVyLXJhZGl1czogMzJweDtcXG4gICAgbWluLWhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbjogMCA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbiB7XFxuICAgICAgbWluLXdpZHRoOiAzMnB4O1xcbiAgICAgIG1hcmdpbjogMCA0cHg7XFxuICAgICAgb3BhY2l0eTogMC41NDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMC44NzsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBoZWlnaHQ6IDE0MHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZXQtZmlsdGVyLWxpc3QsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgPiAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1kYXRhLWNoYW5nZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhY2MxICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1kYXRhLWNoYW5nZWQtYW5pbWF0aW9uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdGF0dXMtYmFyLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XFxuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1kZXRhaWxzLXJvdyB7XFxuICAgIHBhZGRpbmc6IDQwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDMycHg7XFxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcXG4gICAgICB3aWR0aDogMjJweDtcXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgcGFkZGluZzogMTZweCAwIDE2cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogMTQ0cHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XFxuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBtaW4taGVpZ2h0OiA1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXByaW1hcnktY29scy1maWx0ZXItd3JhcHBlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGZkZmQ7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkICNlZmVmZWY7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtbGFiZWwgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xcbiAgICAgIGhlaWdodDogMThweDtcXG4gICAgICBmb250LXNpemU6IDEzcHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xcbiAgICAgIHBhZGRpbmc6IDhweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDtcXG4gICAgICBwYWRkaW5nOiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogNHB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbGFiZWxlZCBsYWJlbCB7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctYW5nbGUtc2VsZWN0ID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgdG9wOiA0cHg7XFxuICAgIGxlZnQ6IDEycHg7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcXG4gICAgbWFyZ2luLXRvcDogLTRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM0YzRjOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBoZWlnaHQ6IDE4cHg7XFxuICAgIHdpZHRoOiA0MHB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICBib3JkZXItcmFkaXVzOiA1MDByZW07IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMThweDtcXG4gICAgICBoZWlnaHQ6IDE4cHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDE4cHgpOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0MDgxOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9nZ2xlLWJ1dHRvbi5hZy1zZWxlY3RlZCAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMThweDtcXG4gICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCB7XFxuICAgIHBhZGRpbmc6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1zYXQge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHdoaXRlKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgd2hpdGUsIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1zbGlkZXIge1xcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xcbiAgICAgIHdpZHRoOiAxM3B4O1xcbiAgICAgIGhlaWdodDogMTNweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2IHtcXG4gICAgICBtYXJnaW46IDAgM3B4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1wb3B1cCA+IGRpdjpub3QoLmFnLXRvb2x0aXAtY3VzdG9tKSB7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctZHJhZ2dpbmctcmFuZ2UtaGFuZGxlIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbC5hZy1kaWFsb2cge1xcbiAgICAgIG9wYWNpdHk6IDAuNztcXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmY2ZjZmM7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgaGVpZ2h0OiA1NnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiAuYWctaWNvbiB7XFxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpob3ZlciwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIge1xcbiAgICAgIGhlaWdodDogMzBweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbHRpcC5hZy10b29sdGlwLWhpZGluZyB7XFxuICAgICAgb3BhY2l0eTogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6ICMzZjUxYjU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmb250LXNpemU6IDExcHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICBjb2xvcjogIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogOS42cHggMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRNYXRlcmlhbFxcXCI7XFxuICAgIHNwZWFrOiBub25lO1xcbiAgICBmb250LXNpemU6IDE4cHg7XFxuICAgIGNvbG9yOiAjMzMzO1xcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XFxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tYWdncmVnYXRpb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tYXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jYW5jZWw6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNvbG9yLXBpY2tlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDhcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY29sdW1uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb250cmFjdGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb3B5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY3V0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1kYXRhOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1leHBhbmRlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tZXllLXNsYXNoOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWZpbHRlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTRcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tZmlyc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWdyb3VwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sb2FkaW5nOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tbWVudTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MURcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tbWluaW1pemU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1uZXh0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1ub25lOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcGFzdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXBpbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjRcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXBsdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXByZXZpb3VzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1kb3duOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tc21hbGwtdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRpY2s6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi10cmVlLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRyZWUtb3BlbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBsaW5lLWhlaWdodDogMThweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICNmZjQwODE7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICNmZjQwODE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMjRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIyNHB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCI1NnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiNDJweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMzJweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCI0MHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCIxNDBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjI2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjQ4cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiOHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjE4cHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbixcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmIHtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgZm9udC1zaXplOiAyNHB4O1xcbiAgICBsaW5lLWhlaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTRlYyAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51LW9wdGlvbiB7XFxuICAgIGhlaWdodDogMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zaWRlLWJhciB7XFxuICAgIGJvcmRlci1ib3R0b206IDA7XFxuICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgYm9yZGVyLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgYnV0dG9uIHtcXG4gICAgICBib3JkZXI6IDA7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2lkZS1idXR0b24gYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzNmNTFiNTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLWZpbHRlci10b29scGFuZWwtYm9keSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XFxuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgIG1hcmdpbi1yaWdodDogLTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4OyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiLypcXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxcbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxcbipcXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXFxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cXG4qL1xcblxcbi5ndy1hbGlnbm1lbnQtY2VsbC1yaWdodCxcXG4uZ3ctYWxpZ25tZW50LWNlbGwtcmlnaHQgLmFnLWNlbGwtdmFsdWUge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMTtcXG4gICAgICAgICAgICBmbGV4OiAxO1xcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWNlbGwtY2VudGVyLFxcbi5ndy1hbGlnbm1lbnQtY2VsbC1jZW50ZXIgLmFnLWNlbGwtdmFsdWUge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxO1xcbiAgICAgICAgICAgIGZsZXg6IDE7XFxufVxcblxcbi5ndy1hbGlnbm1lbnQtaGVhZGVyLXJpZ2h0IC5hZy1oZWFkZXItY2VsbC1sYWJlbCB7XFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7ICAgIFxcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWhlYWRlci1jZW50ZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWhlYWRlci1yaWdodCAuYWctY2VsbC1sYWJlbC1jb250YWluZXIsXFxuLmd3LWFsaWdubWVudC1oZWFkZXItY2VudGVyIC5hZy1jZWxsLWxhYmVsLWNvbnRhaW5lciB7XFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbn1cIiIsIi8qXG5cdE1JVCBMaWNlbnNlIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG5cdEF1dGhvciBUb2JpYXMgS29wcGVycyBAc29rcmFcbiovXG5cbnZhciBzdHlsZXNJbkRvbSA9IHt9O1xuXG52YXJcdG1lbW9pemUgPSBmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW87XG5cblx0cmV0dXJuIGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodHlwZW9mIG1lbW8gPT09IFwidW5kZWZpbmVkXCIpIG1lbW8gPSBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHRcdHJldHVybiBtZW1vO1xuXHR9O1xufTtcblxudmFyIGlzT2xkSUUgPSBtZW1vaXplKGZ1bmN0aW9uICgpIHtcblx0Ly8gVGVzdCBmb3IgSUUgPD0gOSBhcyBwcm9wb3NlZCBieSBCcm93c2VyaGFja3Ncblx0Ly8gQHNlZSBodHRwOi8vYnJvd3NlcmhhY2tzLmNvbS8jaGFjay1lNzFkODY5MmY2NTMzNDE3M2ZlZTcxNWMyMjJjYjgwNVxuXHQvLyBUZXN0cyBmb3IgZXhpc3RlbmNlIG9mIHN0YW5kYXJkIGdsb2JhbHMgaXMgdG8gYWxsb3cgc3R5bGUtbG9hZGVyXG5cdC8vIHRvIG9wZXJhdGUgY29ycmVjdGx5IGludG8gbm9uLXN0YW5kYXJkIGVudmlyb25tZW50c1xuXHQvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJwYWNrLWNvbnRyaWIvc3R5bGUtbG9hZGVyL2lzc3Vlcy8xNzdcblx0cmV0dXJuIHdpbmRvdyAmJiBkb2N1bWVudCAmJiBkb2N1bWVudC5hbGwgJiYgIXdpbmRvdy5hdG9iO1xufSk7XG5cbnZhciBnZXRUYXJnZXQgPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG59O1xuXG52YXIgZ2V0RWxlbWVudCA9IChmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW8gPSB7fTtcblxuXHRyZXR1cm4gZnVuY3Rpb24odGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgcGFzc2luZyBmdW5jdGlvbiBpbiBvcHRpb25zLCB0aGVuIHVzZSBpdCBmb3IgcmVzb2x2ZSBcImhlYWRcIiBlbGVtZW50LlxuICAgICAgICAgICAgICAgIC8vIFVzZWZ1bCBmb3IgU2hhZG93IFJvb3Qgc3R5bGUgaS5lXG4gICAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAgIC8vICAgaW5zZXJ0SW50bzogZnVuY3Rpb24gKCkgeyByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNmb29cIikuc2hhZG93Um9vdCB9XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGFyZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbWVtb1t0YXJnZXRdID09PSBcInVuZGVmaW5lZFwiKSB7XG5cdFx0XHR2YXIgc3R5bGVUYXJnZXQgPSBnZXRUYXJnZXQuY2FsbCh0aGlzLCB0YXJnZXQpO1xuXHRcdFx0Ly8gU3BlY2lhbCBjYXNlIHRvIHJldHVybiBoZWFkIG9mIGlmcmFtZSBpbnN0ZWFkIG9mIGlmcmFtZSBpdHNlbGZcblx0XHRcdGlmICh3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQgJiYgc3R5bGVUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpIHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGFjY2VzcyB0byBpZnJhbWUgaXMgYmxvY2tlZFxuXHRcdFx0XHRcdC8vIGR1ZSB0byBjcm9zcy1vcmlnaW4gcmVzdHJpY3Rpb25zXG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBzdHlsZVRhcmdldC5jb250ZW50RG9jdW1lbnQuaGVhZDtcblx0XHRcdFx0fSBjYXRjaChlKSB7XG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBudWxsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRtZW1vW3RhcmdldF0gPSBzdHlsZVRhcmdldDtcblx0XHR9XG5cdFx0cmV0dXJuIG1lbW9bdGFyZ2V0XVxuXHR9O1xufSkoKTtcblxudmFyIHNpbmdsZXRvbiA9IG51bGw7XG52YXJcdHNpbmdsZXRvbkNvdW50ZXIgPSAwO1xudmFyXHRzdHlsZXNJbnNlcnRlZEF0VG9wID0gW107XG5cbnZhclx0Zml4VXJscyA9IHJlcXVpcmUoXCIuL3VybHNcIik7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24obGlzdCwgb3B0aW9ucykge1xuXHRpZiAodHlwZW9mIERFQlVHICE9PSBcInVuZGVmaW5lZFwiICYmIERFQlVHKSB7XG5cdFx0aWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJvYmplY3RcIikgdGhyb3cgbmV3IEVycm9yKFwiVGhlIHN0eWxlLWxvYWRlciBjYW5ub3QgYmUgdXNlZCBpbiBhIG5vbi1icm93c2VyIGVudmlyb25tZW50XCIpO1xuXHR9XG5cblx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cblx0b3B0aW9ucy5hdHRycyA9IHR5cGVvZiBvcHRpb25zLmF0dHJzID09PSBcIm9iamVjdFwiID8gb3B0aW9ucy5hdHRycyA6IHt9O1xuXG5cdC8vIEZvcmNlIHNpbmdsZS10YWcgc29sdXRpb24gb24gSUU2LTksIHdoaWNoIGhhcyBhIGhhcmQgbGltaXQgb24gdGhlICMgb2YgPHN0eWxlPlxuXHQvLyB0YWdzIGl0IHdpbGwgYWxsb3cgb24gYSBwYWdlXG5cdGlmICghb3B0aW9ucy5zaW5nbGV0b24gJiYgdHlwZW9mIG9wdGlvbnMuc2luZ2xldG9uICE9PSBcImJvb2xlYW5cIikgb3B0aW9ucy5zaW5nbGV0b24gPSBpc09sZElFKCk7XG5cblx0Ly8gQnkgZGVmYXVsdCwgYWRkIDxzdHlsZT4gdGFncyB0byB0aGUgPGhlYWQ+IGVsZW1lbnRcbiAgICAgICAgaWYgKCFvcHRpb25zLmluc2VydEludG8pIG9wdGlvbnMuaW5zZXJ0SW50byA9IFwiaGVhZFwiO1xuXG5cdC8vIEJ5IGRlZmF1bHQsIGFkZCA8c3R5bGU+IHRhZ3MgdG8gdGhlIGJvdHRvbSBvZiB0aGUgdGFyZ2V0XG5cdGlmICghb3B0aW9ucy5pbnNlcnRBdCkgb3B0aW9ucy5pbnNlcnRBdCA9IFwiYm90dG9tXCI7XG5cblx0dmFyIHN0eWxlcyA9IGxpc3RUb1N0eWxlcyhsaXN0LCBvcHRpb25zKTtcblxuXHRhZGRTdHlsZXNUb0RvbShzdHlsZXMsIG9wdGlvbnMpO1xuXG5cdHJldHVybiBmdW5jdGlvbiB1cGRhdGUgKG5ld0xpc3QpIHtcblx0XHR2YXIgbWF5UmVtb3ZlID0gW107XG5cblx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGl0ZW0gPSBzdHlsZXNbaV07XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdFx0ZG9tU3R5bGUucmVmcy0tO1xuXHRcdFx0bWF5UmVtb3ZlLnB1c2goZG9tU3R5bGUpO1xuXHRcdH1cblxuXHRcdGlmKG5ld0xpc3QpIHtcblx0XHRcdHZhciBuZXdTdHlsZXMgPSBsaXN0VG9TdHlsZXMobmV3TGlzdCwgb3B0aW9ucyk7XG5cdFx0XHRhZGRTdHlsZXNUb0RvbShuZXdTdHlsZXMsIG9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbWF5UmVtb3ZlLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBtYXlSZW1vdmVbaV07XG5cblx0XHRcdGlmKGRvbVN0eWxlLnJlZnMgPT09IDApIHtcblx0XHRcdFx0Zm9yICh2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykgZG9tU3R5bGUucGFydHNbal0oKTtcblxuXHRcdFx0XHRkZWxldGUgc3R5bGVzSW5Eb21bZG9tU3R5bGUuaWRdO1xuXHRcdFx0fVxuXHRcdH1cblx0fTtcbn07XG5cbmZ1bmN0aW9uIGFkZFN0eWxlc1RvRG9tIChzdHlsZXMsIG9wdGlvbnMpIHtcblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBzdHlsZXMubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IHN0eWxlc1tpXTtcblx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdGlmKGRvbVN0eWxlKSB7XG5cdFx0XHRkb21TdHlsZS5yZWZzKys7XG5cblx0XHRcdGZvcih2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRkb21TdHlsZS5wYXJ0c1tqXShpdGVtLnBhcnRzW2pdKTtcblx0XHRcdH1cblxuXHRcdFx0Zm9yKDsgaiA8IGl0ZW0ucGFydHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0ZG9tU3R5bGUucGFydHMucHVzaChhZGRTdHlsZShpdGVtLnBhcnRzW2pdLCBvcHRpb25zKSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHZhciBwYXJ0cyA9IFtdO1xuXG5cdFx0XHRmb3IodmFyIGogPSAwOyBqIDwgaXRlbS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRwYXJ0cy5wdXNoKGFkZFN0eWxlKGl0ZW0ucGFydHNbal0sIG9wdGlvbnMpKTtcblx0XHRcdH1cblxuXHRcdFx0c3R5bGVzSW5Eb21baXRlbS5pZF0gPSB7aWQ6IGl0ZW0uaWQsIHJlZnM6IDEsIHBhcnRzOiBwYXJ0c307XG5cdFx0fVxuXHR9XG59XG5cbmZ1bmN0aW9uIGxpc3RUb1N0eWxlcyAobGlzdCwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGVzID0gW107XG5cdHZhciBuZXdTdHlsZXMgPSB7fTtcblxuXHRmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IGxpc3RbaV07XG5cdFx0dmFyIGlkID0gb3B0aW9ucy5iYXNlID8gaXRlbVswXSArIG9wdGlvbnMuYmFzZSA6IGl0ZW1bMF07XG5cdFx0dmFyIGNzcyA9IGl0ZW1bMV07XG5cdFx0dmFyIG1lZGlhID0gaXRlbVsyXTtcblx0XHR2YXIgc291cmNlTWFwID0gaXRlbVszXTtcblx0XHR2YXIgcGFydCA9IHtjc3M6IGNzcywgbWVkaWE6IG1lZGlhLCBzb3VyY2VNYXA6IHNvdXJjZU1hcH07XG5cblx0XHRpZighbmV3U3R5bGVzW2lkXSkgc3R5bGVzLnB1c2gobmV3U3R5bGVzW2lkXSA9IHtpZDogaWQsIHBhcnRzOiBbcGFydF19KTtcblx0XHRlbHNlIG5ld1N0eWxlc1tpZF0ucGFydHMucHVzaChwYXJ0KTtcblx0fVxuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbmZ1bmN0aW9uIGluc2VydFN0eWxlRWxlbWVudCAob3B0aW9ucywgc3R5bGUpIHtcblx0dmFyIHRhcmdldCA9IGdldEVsZW1lbnQob3B0aW9ucy5pbnNlcnRJbnRvKVxuXG5cdGlmICghdGFyZ2V0KSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQ291bGRuJ3QgZmluZCBhIHN0eWxlIHRhcmdldC4gVGhpcyBwcm9iYWJseSBtZWFucyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlICdpbnNlcnRJbnRvJyBwYXJhbWV0ZXIgaXMgaW52YWxpZC5cIik7XG5cdH1cblxuXHR2YXIgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AgPSBzdHlsZXNJbnNlcnRlZEF0VG9wW3N0eWxlc0luc2VydGVkQXRUb3AubGVuZ3RoIC0gMV07XG5cblx0aWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwidG9wXCIpIHtcblx0XHRpZiAoIWxhc3RTdHlsZUVsZW1lbnRJbnNlcnRlZEF0VG9wKSB7XG5cdFx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCB0YXJnZXQuZmlyc3RDaGlsZCk7XG5cdFx0fSBlbHNlIGlmIChsYXN0U3R5bGVFbGVtZW50SW5zZXJ0ZWRBdFRvcC5uZXh0U2libGluZykge1xuXHRcdFx0dGFyZ2V0Lmluc2VydEJlZm9yZShzdHlsZSwgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AubmV4dFNpYmxpbmcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHRcdH1cblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnB1c2goc3R5bGUpO1xuXHR9IGVsc2UgaWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwiYm90dG9tXCIpIHtcblx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBvcHRpb25zLmluc2VydEF0ID09PSBcIm9iamVjdFwiICYmIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKSB7XG5cdFx0dmFyIG5leHRTaWJsaW5nID0gZ2V0RWxlbWVudChvcHRpb25zLmluc2VydEludG8gKyBcIiBcIiArIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKTtcblx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCBuZXh0U2libGluZyk7XG5cdH0gZWxzZSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiW1N0eWxlIExvYWRlcl1cXG5cXG4gSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICdpbnNlcnRBdCcgKCdvcHRpb25zLmluc2VydEF0JykgZm91bmQuXFxuIE11c3QgYmUgJ3RvcCcsICdib3R0b20nLCBvciBPYmplY3QuXFxuIChodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3N0eWxlLWxvYWRlciNpbnNlcnRhdClcXG5cIik7XG5cdH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlU3R5bGVFbGVtZW50IChzdHlsZSkge1xuXHRpZiAoc3R5bGUucGFyZW50Tm9kZSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuXHRzdHlsZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHN0eWxlKTtcblxuXHR2YXIgaWR4ID0gc3R5bGVzSW5zZXJ0ZWRBdFRvcC5pbmRleE9mKHN0eWxlKTtcblx0aWYoaWR4ID49IDApIHtcblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnNwbGljZShpZHgsIDEpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVN0eWxlRWxlbWVudCAob3B0aW9ucykge1xuXHR2YXIgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3R5bGVcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXG5cdGFkZEF0dHJzKHN0eWxlLCBvcHRpb25zLmF0dHJzKTtcblx0aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMsIHN0eWxlKTtcblxuXHRyZXR1cm4gc3R5bGU7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpbmtFbGVtZW50IChvcHRpb25zKSB7XG5cdHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImxpbmtcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXHRvcHRpb25zLmF0dHJzLnJlbCA9IFwic3R5bGVzaGVldFwiO1xuXG5cdGFkZEF0dHJzKGxpbmssIG9wdGlvbnMuYXR0cnMpO1xuXHRpbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucywgbGluayk7XG5cblx0cmV0dXJuIGxpbms7XG59XG5cbmZ1bmN0aW9uIGFkZEF0dHJzIChlbCwgYXR0cnMpIHtcblx0T2JqZWN0LmtleXMoYXR0cnMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuXHRcdGVsLnNldEF0dHJpYnV0ZShrZXksIGF0dHJzW2tleV0pO1xuXHR9KTtcbn1cblxuZnVuY3Rpb24gYWRkU3R5bGUgKG9iaiwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGUsIHVwZGF0ZSwgcmVtb3ZlLCByZXN1bHQ7XG5cblx0Ly8gSWYgYSB0cmFuc2Zvcm0gZnVuY3Rpb24gd2FzIGRlZmluZWQsIHJ1biBpdCBvbiB0aGUgY3NzXG5cdGlmIChvcHRpb25zLnRyYW5zZm9ybSAmJiBvYmouY3NzKSB7XG5cdCAgICByZXN1bHQgPSBvcHRpb25zLnRyYW5zZm9ybShvYmouY3NzKTtcblxuXHQgICAgaWYgKHJlc3VsdCkge1xuXHQgICAgXHQvLyBJZiB0cmFuc2Zvcm0gcmV0dXJucyBhIHZhbHVlLCB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIHJ1bm5pbmcgcnVudGltZSB0cmFuc2Zvcm1hdGlvbnMgb24gdGhlIGNzcy5cblx0ICAgIFx0b2JqLmNzcyA9IHJlc3VsdDtcblx0ICAgIH0gZWxzZSB7XG5cdCAgICBcdC8vIElmIHRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gcmV0dXJucyBhIGZhbHN5IHZhbHVlLCBkb24ndCBhZGQgdGhpcyBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIGNvbmRpdGlvbmFsIGxvYWRpbmcgb2YgY3NzXG5cdCAgICBcdHJldHVybiBmdW5jdGlvbigpIHtcblx0ICAgIFx0XHQvLyBub29wXG5cdCAgICBcdH07XG5cdCAgICB9XG5cdH1cblxuXHRpZiAob3B0aW9ucy5zaW5nbGV0b24pIHtcblx0XHR2YXIgc3R5bGVJbmRleCA9IHNpbmdsZXRvbkNvdW50ZXIrKztcblxuXHRcdHN0eWxlID0gc2luZ2xldG9uIHx8IChzaW5nbGV0b24gPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucykpO1xuXG5cdFx0dXBkYXRlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCBmYWxzZSk7XG5cdFx0cmVtb3ZlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCB0cnVlKTtcblxuXHR9IGVsc2UgaWYgKFxuXHRcdG9iai5zb3VyY2VNYXAgJiZcblx0XHR0eXBlb2YgVVJMID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgVVJMLmNyZWF0ZU9iamVjdFVSTCA9PT0gXCJmdW5jdGlvblwiICYmXG5cdFx0dHlwZW9mIFVSTC5yZXZva2VPYmplY3RVUkwgPT09IFwiZnVuY3Rpb25cIiAmJlxuXHRcdHR5cGVvZiBCbG9iID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgYnRvYSA9PT0gXCJmdW5jdGlvblwiXG5cdCkge1xuXHRcdHN0eWxlID0gY3JlYXRlTGlua0VsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gdXBkYXRlTGluay5iaW5kKG51bGwsIHN0eWxlLCBvcHRpb25zKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXG5cdFx0XHRpZihzdHlsZS5ocmVmKSBVUkwucmV2b2tlT2JqZWN0VVJMKHN0eWxlLmhyZWYpO1xuXHRcdH07XG5cdH0gZWxzZSB7XG5cdFx0c3R5bGUgPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gYXBwbHlUb1RhZy5iaW5kKG51bGwsIHN0eWxlKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXHRcdH07XG5cdH1cblxuXHR1cGRhdGUob2JqKTtcblxuXHRyZXR1cm4gZnVuY3Rpb24gdXBkYXRlU3R5bGUgKG5ld09iaikge1xuXHRcdGlmIChuZXdPYmopIHtcblx0XHRcdGlmIChcblx0XHRcdFx0bmV3T2JqLmNzcyA9PT0gb2JqLmNzcyAmJlxuXHRcdFx0XHRuZXdPYmoubWVkaWEgPT09IG9iai5tZWRpYSAmJlxuXHRcdFx0XHRuZXdPYmouc291cmNlTWFwID09PSBvYmouc291cmNlTWFwXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHR1cGRhdGUob2JqID0gbmV3T2JqKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVtb3ZlKCk7XG5cdFx0fVxuXHR9O1xufVxuXG52YXIgcmVwbGFjZVRleHQgPSAoZnVuY3Rpb24gKCkge1xuXHR2YXIgdGV4dFN0b3JlID0gW107XG5cblx0cmV0dXJuIGZ1bmN0aW9uIChpbmRleCwgcmVwbGFjZW1lbnQpIHtcblx0XHR0ZXh0U3RvcmVbaW5kZXhdID0gcmVwbGFjZW1lbnQ7XG5cblx0XHRyZXR1cm4gdGV4dFN0b3JlLmZpbHRlcihCb29sZWFuKS5qb2luKCdcXG4nKTtcblx0fTtcbn0pKCk7XG5cbmZ1bmN0aW9uIGFwcGx5VG9TaW5nbGV0b25UYWcgKHN0eWxlLCBpbmRleCwgcmVtb3ZlLCBvYmopIHtcblx0dmFyIGNzcyA9IHJlbW92ZSA/IFwiXCIgOiBvYmouY3NzO1xuXG5cdGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gcmVwbGFjZVRleHQoaW5kZXgsIGNzcyk7XG5cdH0gZWxzZSB7XG5cdFx0dmFyIGNzc05vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpO1xuXHRcdHZhciBjaGlsZE5vZGVzID0gc3R5bGUuY2hpbGROb2RlcztcblxuXHRcdGlmIChjaGlsZE5vZGVzW2luZGV4XSkgc3R5bGUucmVtb3ZlQ2hpbGQoY2hpbGROb2Rlc1tpbmRleF0pO1xuXG5cdFx0aWYgKGNoaWxkTm9kZXMubGVuZ3RoKSB7XG5cdFx0XHRzdHlsZS5pbnNlcnRCZWZvcmUoY3NzTm9kZSwgY2hpbGROb2Rlc1tpbmRleF0pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzdHlsZS5hcHBlbmRDaGlsZChjc3NOb2RlKTtcblx0XHR9XG5cdH1cbn1cblxuZnVuY3Rpb24gYXBwbHlUb1RhZyAoc3R5bGUsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIG1lZGlhID0gb2JqLm1lZGlhO1xuXG5cdGlmKG1lZGlhKSB7XG5cdFx0c3R5bGUuc2V0QXR0cmlidXRlKFwibWVkaWFcIiwgbWVkaWEpXG5cdH1cblxuXHRpZihzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xuXHR9IGVsc2Uge1xuXHRcdHdoaWxlKHN0eWxlLmZpcnN0Q2hpbGQpIHtcblx0XHRcdHN0eWxlLnJlbW92ZUNoaWxkKHN0eWxlLmZpcnN0Q2hpbGQpO1xuXHRcdH1cblxuXHRcdHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUxpbmsgKGxpbmssIG9wdGlvbnMsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIHNvdXJjZU1hcCA9IG9iai5zb3VyY2VNYXA7XG5cblx0Lypcblx0XHRJZiBjb252ZXJ0VG9BYnNvbHV0ZVVybHMgaXNuJ3QgZGVmaW5lZCwgYnV0IHNvdXJjZW1hcHMgYXJlIGVuYWJsZWRcblx0XHRhbmQgdGhlcmUgaXMgbm8gcHVibGljUGF0aCBkZWZpbmVkIHRoZW4gbGV0cyB0dXJuIGNvbnZlcnRUb0Fic29sdXRlVXJsc1xuXHRcdG9uIGJ5IGRlZmF1bHQuICBPdGhlcndpc2UgZGVmYXVsdCB0byB0aGUgY29udmVydFRvQWJzb2x1dGVVcmxzIG9wdGlvblxuXHRcdGRpcmVjdGx5XG5cdCovXG5cdHZhciBhdXRvRml4VXJscyA9IG9wdGlvbnMuY29udmVydFRvQWJzb2x1dGVVcmxzID09PSB1bmRlZmluZWQgJiYgc291cmNlTWFwO1xuXG5cdGlmIChvcHRpb25zLmNvbnZlcnRUb0Fic29sdXRlVXJscyB8fCBhdXRvRml4VXJscykge1xuXHRcdGNzcyA9IGZpeFVybHMoY3NzKTtcblx0fVxuXG5cdGlmIChzb3VyY2VNYXApIHtcblx0XHQvLyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yNjYwMzg3NVxuXHRcdGNzcyArPSBcIlxcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsXCIgKyBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpICsgXCIgKi9cIjtcblx0fVxuXG5cdHZhciBibG9iID0gbmV3IEJsb2IoW2Nzc10sIHsgdHlwZTogXCJ0ZXh0L2Nzc1wiIH0pO1xuXG5cdHZhciBvbGRTcmMgPSBsaW5rLmhyZWY7XG5cblx0bGluay5ocmVmID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcblxuXHRpZihvbGRTcmMpIFVSTC5yZXZva2VPYmplY3RVUkwob2xkU3JjKTtcbn1cbiIsIlxuLyoqXG4gKiBXaGVuIHNvdXJjZSBtYXBzIGFyZSBlbmFibGVkLCBgc3R5bGUtbG9hZGVyYCB1c2VzIGEgbGluayBlbGVtZW50IHdpdGggYSBkYXRhLXVyaSB0b1xuICogZW1iZWQgdGhlIGNzcyBvbiB0aGUgcGFnZS4gVGhpcyBicmVha3MgYWxsIHJlbGF0aXZlIHVybHMgYmVjYXVzZSBub3cgdGhleSBhcmUgcmVsYXRpdmUgdG8gYVxuICogYnVuZGxlIGluc3RlYWQgb2YgdGhlIGN1cnJlbnQgcGFnZS5cbiAqXG4gKiBPbmUgc29sdXRpb24gaXMgdG8gb25seSB1c2UgZnVsbCB1cmxzLCBidXQgdGhhdCBtYXkgYmUgaW1wb3NzaWJsZS5cbiAqXG4gKiBJbnN0ZWFkLCB0aGlzIGZ1bmN0aW9uIFwiZml4ZXNcIiB0aGUgcmVsYXRpdmUgdXJscyB0byBiZSBhYnNvbHV0ZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgcGFnZSBsb2NhdGlvbi5cbiAqXG4gKiBBIHJ1ZGltZW50YXJ5IHRlc3Qgc3VpdGUgaXMgbG9jYXRlZCBhdCBgdGVzdC9maXhVcmxzLmpzYCBhbmQgY2FuIGJlIHJ1biB2aWEgdGhlIGBucG0gdGVzdGAgY29tbWFuZC5cbiAqXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoY3NzKSB7XG4gIC8vIGdldCBjdXJyZW50IGxvY2F0aW9uXG4gIHZhciBsb2NhdGlvbiA9IHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIgJiYgd2luZG93LmxvY2F0aW9uO1xuXG4gIGlmICghbG9jYXRpb24pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJmaXhVcmxzIHJlcXVpcmVzIHdpbmRvdy5sb2NhdGlvblwiKTtcbiAgfVxuXG5cdC8vIGJsYW5rIG9yIG51bGw/XG5cdGlmICghY3NzIHx8IHR5cGVvZiBjc3MgIT09IFwic3RyaW5nXCIpIHtcblx0ICByZXR1cm4gY3NzO1xuICB9XG5cbiAgdmFyIGJhc2VVcmwgPSBsb2NhdGlvbi5wcm90b2NvbCArIFwiLy9cIiArIGxvY2F0aW9uLmhvc3Q7XG4gIHZhciBjdXJyZW50RGlyID0gYmFzZVVybCArIGxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoL1xcL1teXFwvXSokLywgXCIvXCIpO1xuXG5cdC8vIGNvbnZlcnQgZWFjaCB1cmwoLi4uKVxuXHQvKlxuXHRUaGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBqdXN0IGEgd2F5IHRvIHJlY3Vyc2l2ZWx5IG1hdGNoIGJyYWNrZXRzIHdpdGhpblxuXHRhIHN0cmluZy5cblxuXHQgL3VybFxccypcXCggID0gTWF0Y2ggb24gdGhlIHdvcmQgXCJ1cmxcIiB3aXRoIGFueSB3aGl0ZXNwYWNlIGFmdGVyIGl0IGFuZCB0aGVuIGEgcGFyZW5zXG5cdCAgICggID0gU3RhcnQgYSBjYXB0dXJpbmcgZ3JvdXBcblx0ICAgICAoPzogID0gU3RhcnQgYSBub24tY2FwdHVyaW5nIGdyb3VwXG5cdCAgICAgICAgIFteKShdICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgIFxcKCAgPSBNYXRjaCBhIHN0YXJ0IHBhcmVudGhlc2VzXG5cdCAgICAgICAgICAgICAoPzogID0gU3RhcnQgYW5vdGhlciBub24tY2FwdHVyaW5nIGdyb3Vwc1xuXHQgICAgICAgICAgICAgICAgIFteKShdKyAgPSBNYXRjaCBhbnl0aGluZyB0aGF0IGlzbid0IGEgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgICAgICAgICAgXFwoICA9IE1hdGNoIGEgc3RhcnQgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICAgICAgW14pKF0qICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgICAgIFxcKSAgPSBNYXRjaCBhIGVuZCBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgKSAgPSBFbmQgR3JvdXBcbiAgICAgICAgICAgICAgKlxcKSA9IE1hdGNoIGFueXRoaW5nIGFuZCB0aGVuIGEgY2xvc2UgcGFyZW5zXG4gICAgICAgICAgKSAgPSBDbG9zZSBub24tY2FwdHVyaW5nIGdyb3VwXG4gICAgICAgICAgKiAgPSBNYXRjaCBhbnl0aGluZ1xuICAgICAgICkgID0gQ2xvc2UgY2FwdHVyaW5nIGdyb3VwXG5cdCBcXCkgID0gTWF0Y2ggYSBjbG9zZSBwYXJlbnNcblxuXHQgL2dpICA9IEdldCBhbGwgbWF0Y2hlcywgbm90IHRoZSBmaXJzdC4gIEJlIGNhc2UgaW5zZW5zaXRpdmUuXG5cdCAqL1xuXHR2YXIgZml4ZWRDc3MgPSBjc3MucmVwbGFjZSgvdXJsXFxzKlxcKCgoPzpbXikoXXxcXCgoPzpbXikoXSt8XFwoW14pKF0qXFwpKSpcXCkpKilcXCkvZ2ksIGZ1bmN0aW9uKGZ1bGxNYXRjaCwgb3JpZ1VybCkge1xuXHRcdC8vIHN0cmlwIHF1b3RlcyAoaWYgdGhleSBleGlzdClcblx0XHR2YXIgdW5xdW90ZWRPcmlnVXJsID0gb3JpZ1VybFxuXHRcdFx0LnRyaW0oKVxuXHRcdFx0LnJlcGxhY2UoL15cIiguKilcIiQvLCBmdW5jdGlvbihvLCAkMSl7IHJldHVybiAkMTsgfSlcblx0XHRcdC5yZXBsYWNlKC9eJyguKiknJC8sIGZ1bmN0aW9uKG8sICQxKXsgcmV0dXJuICQxOyB9KTtcblxuXHRcdC8vIGFscmVhZHkgYSBmdWxsIHVybD8gbm8gY2hhbmdlXG5cdFx0aWYgKC9eKCN8ZGF0YTp8aHR0cDpcXC9cXC98aHR0cHM6XFwvXFwvfGZpbGU6XFwvXFwvXFwvfFxccyokKS9pLnRlc3QodW5xdW90ZWRPcmlnVXJsKSkge1xuXHRcdCAgcmV0dXJuIGZ1bGxNYXRjaDtcblx0XHR9XG5cblx0XHQvLyBjb252ZXJ0IHRoZSB1cmwgdG8gYSBmdWxsIHVybFxuXHRcdHZhciBuZXdVcmw7XG5cblx0XHRpZiAodW5xdW90ZWRPcmlnVXJsLmluZGV4T2YoXCIvL1wiKSA9PT0gMCkge1xuXHRcdCAgXHQvL1RPRE86IHNob3VsZCB3ZSBhZGQgcHJvdG9jb2w/XG5cdFx0XHRuZXdVcmwgPSB1bnF1b3RlZE9yaWdVcmw7XG5cdFx0fSBlbHNlIGlmICh1bnF1b3RlZE9yaWdVcmwuaW5kZXhPZihcIi9cIikgPT09IDApIHtcblx0XHRcdC8vIHBhdGggc2hvdWxkIGJlIHJlbGF0aXZlIHRvIHRoZSBiYXNlIHVybFxuXHRcdFx0bmV3VXJsID0gYmFzZVVybCArIHVucXVvdGVkT3JpZ1VybDsgLy8gYWxyZWFkeSBzdGFydHMgd2l0aCAnLydcblx0XHR9IGVsc2Uge1xuXHRcdFx0Ly8gcGF0aCBzaG91bGQgYmUgcmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3Rvcnlcblx0XHRcdG5ld1VybCA9IGN1cnJlbnREaXIgKyB1bnF1b3RlZE9yaWdVcmwucmVwbGFjZSgvXlxcLlxcLy8sIFwiXCIpOyAvLyBTdHJpcCBsZWFkaW5nICcuLydcblx0XHR9XG5cblx0XHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIHVybCguLi4pXG5cdFx0cmV0dXJuIFwidXJsKFwiICsgSlNPTi5zdHJpbmdpZnkobmV3VXJsKSArIFwiKVwiO1xuXHR9KTtcblxuXHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIGNzc1xuXHRyZXR1cm4gZml4ZWRDc3M7XG59O1xuIiwidmFyIGc7XG5cbi8vIFRoaXMgd29ya3MgaW4gbm9uLXN0cmljdCBtb2RlXG5nID0gKGZ1bmN0aW9uKCkge1xuXHRyZXR1cm4gdGhpcztcbn0pKCk7XG5cbnRyeSB7XG5cdC8vIFRoaXMgd29ya3MgaWYgZXZhbCBpcyBhbGxvd2VkIChzZWUgQ1NQKVxuXHRnID0gZyB8fCBuZXcgRnVuY3Rpb24oXCJyZXR1cm4gdGhpc1wiKSgpO1xufSBjYXRjaCAoZSkge1xuXHQvLyBUaGlzIHdvcmtzIGlmIHRoZSB3aW5kb3cgcmVmZXJlbmNlIGlzIGF2YWlsYWJsZVxuXHRpZiAodHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIikgZyA9IHdpbmRvdztcbn1cblxuLy8gZyBjYW4gc3RpbGwgYmUgdW5kZWZpbmVkLCBidXQgbm90aGluZyB0byBkbyBhYm91dCBpdC4uLlxuLy8gV2UgcmV0dXJuIHVuZGVmaW5lZCwgaW5zdGVhZCBvZiBub3RoaW5nIGhlcmUsIHNvIGl0J3Ncbi8vIGVhc2llciB0byBoYW5kbGUgdGhpcyBjYXNlLiBpZighZ2xvYmFsKSB7IC4uLn1cblxubW9kdWxlLmV4cG9ydHMgPSBnO1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbihtb2R1bGUpIHtcblx0aWYgKCFtb2R1bGUud2VicGFja1BvbHlmaWxsKSB7XG5cdFx0bW9kdWxlLmRlcHJlY2F0ZSA9IGZ1bmN0aW9uKCkge307XG5cdFx0bW9kdWxlLnBhdGhzID0gW107XG5cdFx0Ly8gbW9kdWxlLnBhcmVudCA9IHVuZGVmaW5lZCBieSBkZWZhdWx0XG5cdFx0aWYgKCFtb2R1bGUuY2hpbGRyZW4pIG1vZHVsZS5jaGlsZHJlbiA9IFtdO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwibG9hZGVkXCIsIHtcblx0XHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRyZXR1cm4gbW9kdWxlLmw7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG1vZHVsZSwgXCJpZFwiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0cmV0dXJuIG1vZHVsZS5pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdG1vZHVsZS53ZWJwYWNrUG9seWZpbGwgPSAxO1xuXHR9XG5cdHJldHVybiBtb2R1bGU7XG59O1xuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbi8qKlxuICogU3RhcnQgY2VsbCBlZGl0aW5nXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkIFxuICogQHBhcmFtIHtTdHJpbmd8bnVtYmVyfSByb3cgVGhlIHJvdyBpbmRleFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbEtleSBUaGUgY29sdW1uJ3Mga2V5XG4gKiBAcGFyYW0ge1N0cmluZ3xOdW1iZXJ9IGtleSAgS2V5IHByZXNzXG4gKiBAcGFyYW0ge1N0cmluZ30gY2hhciBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3N0YXJ0RWRpdGluZ0NlbGwoaWQsIHJvdywgY29sS2V5LCBrZXksIGNoYXIpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkuc2V0Rm9jdXNlZENlbGwoTnVtYmVyKHJvdyksIGNvbEtleSk7XG4gIG9wdGlvbnMuYXBpLnN0YXJ0RWRpdGluZ0NlbGwoe1xuICAgIHJvd0luZGV4OiBOdW1iZXIocm93KSxcbiAgICBjb2xLZXk6IGNvbEtleSxcbiAgICBrZXlQcmVzczogTnVtYmVyKGtleSksXG4gICAgY2hhclByZXNzOiBjaGFyXG4gIH0pO1xufVxuXG4vKipcbiAqIFN0b3AgY2VsbCBlZGl0aW5nIFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZCBcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gY2FuY2VsIHdoZW4gdHJ1ZSBjYW5jZWwgZWRpdHMgLCBzYXZlIGVkaXRzIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfc3RvcEVkaXRpbmcoaWQsIGNhbmNlbCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zdG9wRWRpdGluZyhjYW5jZWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZWRpdE5leHRDZWxsKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnRhYlRvTmV4dENlbGwoKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19lZGl0UHJldmlvdXNDZWxsKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnRhYlRvUHJldmlvdXNDZWxsKCk7XG59XG5cbi8qKlxuICogU2V0IEZvY3VzIG9uIHRoZSBnaXZlbiByb3cgYW5kIGNvbHVtblxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZCBcbiAqIEBwYXJhbSB7U3RyaW5nfE51bWJlcn0gcm93IFRoZSByb3cncyBpbmRleC9pZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbiBUaGUgY29sdW1uIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRGb2N1c2VkQ2VsbChpZCwgcm93LCBjb2x1bW4pIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IHIgPSAhcm93ID8gMCA6IChOdW1iZXIuaXNJbnRlZ2VyKCtyb3cpID8gK3JvdyA6IG9wdGlvbnMuYXBpLmdldFJvd05vZGUocm93KS5yb3dJbmRleCk7XG4gIGNvbnN0IGMgPSBjb2x1bW4gPyBjb2x1bW4gOiBvcHRpb25zLmNvbHVtbkFwaS5nZXRBbGxHcmlkQ29sdW1ucygpWzBdLmNvbElkO1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zZXRGb2N1c2VkQ2VsbChyLCBjKTtcbn0iLCIvKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuY29uc3QgeyBkZWVwUGFyc2VKc29uIH0gPSByZXF1aXJlKFwiZGVlcC1wYXJzZS1qc29uXCIpO1xuXG4vKipcbiAqIEV4dGVuZCB0aGUgY29sdW1uIGRlZmluaXRpb25zXG4gKiBcbiAqIEV4dGVuZCB0aGUgY29sdW1uIGRlZmluaXRpb25zIHdpdGggb3B0aW9ucyB3aGljaCBjYW4gbm90IGJlIGhhbmRsZWQgaW4gQkJqXG4gKiAoZXg6IGF0dGFjaGluZyBjYWxsYmFja3MpXG4gKiBcbiAqIEBwYXJhbSB7QXJyYXl9IGRlZmluaXRpb25zIGFycmF5IG9mIGNvbHVtbiBkZWZpbml0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZXh0ZW5kQ29sdW1uRGVmaW5pdGlvbnMoZGVmaW5pdGlvbnMpIHtcblxuICBmb3IgKGxldCBpIGluIGRlZmluaXRpb25zKSB7XG4gICAgY29uc3QgZGVmID0gZGVmaW5pdGlvbnNbaV07XG5cbiAgICBkZWYuY2hlY2tib3hTZWxlY3Rpb24gPSBkZWYuY2hlY2tib3hTZWxlY3Rpb24gfHwgZ3dfaXNTaG93U2VsZWN0aW9uQ2hlY2tib3g7XG4gICAgZGVmLmhlYWRlckNoZWNrYm94U2VsZWN0aW9uID0gZGVmLmhlYWRlckNoZWNrYm94U2VsZWN0aW9uIHx8IGd3X2lzSGVhZGVyQ2hlY2tib3hTZWxlY3Rpb247XG4gIH1cbn1cblxuLyoqXG4gKiBVcGRhdGUgdGhlIGNvbHVtbiBkZWZpbml0aW9ucyBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge0FycmF5fSBkZWZpbml0aW9ucyBhcnJheSBvZiBjb2x1bW4gZGVmaW5pdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldENvbHVtbkRlZmluaXRpb25zKGlkLCBkZWZpbml0aW9ucykge1xuICBjb25zdCBncmlkID0gZ3dfZ2V0R3JpZChpZCk7XG4gIGNvbnN0IGRlZXBQYXJzZWREZWZpbml0aW9ucyA9IGRlZXBQYXJzZUpzb24oSlNPTi5zdHJpbmdpZnkoZGVmaW5pdGlvbnMpKTtcblxuICBnd19leHRlbmRDb2x1bW5EZWZpbml0aW9ucyhkZWVwUGFyc2VkRGVmaW5pdGlvbnMpO1xuXG4gIGdyaWQub3B0aW9ucy5hcGkuc2V0Q29sdW1uRGVmcyhkZWVwUGFyc2VkRGVmaW5pdGlvbnMpO1xuICBncmlkLm9wdGlvbnMuY29sdW1uRGVmcyA9IGRlZXBQYXJzZWREZWZpbml0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NpemVDb2x1bW5zVG9GaXQoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0VmlzaWJsZUNvbHVtbihpZCwgY29sdW1uSWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuZW5zdXJlQ29sdW1uVmlzaWJsZShjb2x1bW5JZCk7XG59XG5cbi8qKlxuICogU2V0IENvbHVtbiBXaWR0aFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCBpZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbklkIFRoZSBjb2x1bW4gaWRcbiAqIEBwYXJhbSB7TnVtYmVyfFN0cmluZ30gd2lkdGggVGhlIG5ldyBjb2x1bW4gd2lkdGhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldENvbHVtbldpZHRoKGlkLCBjb2x1bW5JZCwgd2lkdGgpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAuc2V0Q29sdW1uV2lkdGgoY29sdW1uSWQsIE51bWJlcih3aWR0aCkpO1xufVxuXG4vKipcbiAqIFBpbiBDb2x1bW5cbiAqXG4gKiBQaW4gYSBjb2x1bW4gdG8gYSBzcGVjaWZpYyBkaXJlY3Rpb25cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5JZCBUaGUgY29sdW1uIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gcGluIFRoZSBwaW4gZGlyZWN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19waW5Db2x1bW4oaWQsIGNvbHVtbklkLCBwaW4pIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAuc2V0Q29sdW1uUGlubmVkKGNvbHVtbklkLCBwaW4pO1xufVxuXG4vKipcbiAqIE1vdmUgQ29sdW1uXG4gKlxuICogTW92ZSBjb2x1bW4gdG8gYSBzcGVjaWZpYyBpbmRleFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCBpZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbklkIFRoZSBjb2x1bW4gaWRcbiAqIEBwYXJhbSB7TnVtYmVyfFN0cmluZ30gdG9JbmRleCBUaGUgbmV3IGNvbHVtbiBpbmRleFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfbW92ZUNvbHVtbihpZCwgY29sdW1uSWQsIHRvSW5kZXgpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAubW92ZUNvbHVtbihjb2x1bW5JZCwgdG9JbmRleCk7XG59XG5cbi8qKlxuICogU2hvdyAvIEhpZGUgc2VsZWN0aW9uIGNoZWNrYm94IGJhc2VkIG9uIHRoZSBmaXJzdCBjb2x1bW5cbiAqXG4gKiBUaGUgZnVuY3Rpb24gbWFrZSBzdXJlIHRoYXQgdGhlIHNlbGVjdGlvbiBjaGVja2JveCBpcyBhbHdheXMgc2hvd24gb24gdGhlXG4gKiBmaXJzdCBjb2x1bW5cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gcGFyYW1cbiAqXG4gKiBAcmV0dXJuIHtCb29sZWFufSB0cnVlIHdoZW4gZmlyc3QgY29sdW1uICwgZmFsc2UgaWYgbm90IHRoZSBmaXJzdCBjb2x1bW4gb3IgaWYgdGhlXG4gKiAgICAgICAgICAgICAgICAgICBncmlkJ3MgYENvbnRleHQuc2hvd1NlbGVjdGlvbkNoZWNrYm94YCBpcyBmYWxzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfaXNTaG93U2VsZWN0aW9uQ2hlY2tib3gocGFyYW0pIHtcbiAgaWYgKCFwYXJhbS5jb250ZXh0LnNob3dTZWxlY3Rpb25DaGVja2JveCkgcmV0dXJuIGZhbHNlO1xuXG4gIGNvbnN0IGNvbHVtbnMgPSBwYXJhbS5jb2x1bW5BcGkuZ2V0QWxsRGlzcGxheWVkVmlydHVhbENvbHVtbnMoKTtcblxuICByZXR1cm4gY29sdW1uc1swXS5jb2xEZWYuZmllbGQgPT09IHBhcmFtLmNvbERlZi5maWVsZDtcbn1cblxuLyoqXG4gKiBTaG93IC8gSGlkZSBoZWFkZXIgc2VsZWN0aW9uIGNoZWNrYm94IGJhc2VkIG9uIHRoZSBmaXJzdCBjb2x1bW5cbiAqXG4gKiBUaGUgZnVuY3Rpb24gbWFrZSBzdXJlIHRoYXQgdGhlIGhlYWRlciBzZWxlY3Rpb24gY2hlY2tib3ggaXMgYWx3YXlzIHNob3duIG9uIHRoZVxuICogZmlyc3QgY29sdW1uXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHBhcmFtXG4gKlxuICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIGZpcnN0IGNvbHVtbiAsIGZhbHNlIGlmIG5vdCB0aGUgZmlyc3QgY29sdW1uIG9yIGlmIHRoZVxuICogICAgICAgICAgICAgICAgICAgZ3JpZCdzIGBDb250ZXh0LnNob3dIZWFkZXJTZWxlY3Rpb25DaGVja2JveGAgaXMgZmFsc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2lzSGVhZGVyQ2hlY2tib3hTZWxlY3Rpb24ocGFyYW0pIHtcbiAgY29uc3QgY29udGV4dCA9IHBhcmFtLmFwaS5ncmlkT3B0aW9uc1dyYXBwZXIuZ3JpZE9wdGlvbnMuY29udGV4dDtcblxuICBpZiAoIWNvbnRleHQuc2hvd0hlYWRlclNlbGVjdGlvbkNoZWNrYm94KSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3QgY29sdW1ucyA9IHBhcmFtLmNvbHVtbkFwaS5nZXRBbGxEaXNwbGF5ZWRWaXJ0dWFsQ29sdW1ucygpO1xuXG4gIHJldHVybiBjb2x1bW5zWzBdLmNvbERlZi5maWVsZCA9PT0gcGFyYW0uY29sRGVmLmZpZWxkO1xufVxuXG4vKipcbiAqIEVuYWJsZSByb3cgZ3JvdXBpbmcgZm9yIGNvbHVtbnNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1ucyAgYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mIGNvbHVtbnNcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gc2V0ICBXaGVuIHRydWUgLCBgc2V0Um93R3JvdXBDb2x1bW5zYCB3aWxsIGJlIHVzZWQgLCBgYWRkUm93R3JvdXBDb2x1bW5zYCBvdGhlcndpc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZFJvd0dyb3VwQ29sdW1uKGlkLCBjb2x1bW5zLCBzZXQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlbc2V0ID8gXCJzZXRSb3dHcm91cENvbHVtbnNcIiA6IFwiYWRkUm93R3JvdXBDb2x1bW5zXCJdKFxuICAgICAgY29sdW1ucy5zcGxpdChcIixcIikubWFwKGkgPT4gaS50cmltKCkpXG4gICAgKTtcbn1cblxuLyoqXG4gKiBEaXNhYmxlIHJvdyBncm91cGluZyBmb3IgY29sdW1uc1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5zICBhIGNvbW1hIHNlcGFyYXRlZCBzdHJpbmcgb2YgY29sdW1uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcmVtb3ZlUm93R3JvdXBDb2x1bW4oaWQsIGNvbHVtbnMpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAucmVtb3ZlUm93R3JvdXBDb2x1bW5zKFxuICAgICAgY29sdW1ucy5zcGxpdChcIixcIikubWFwKGkgPT4gaS50cmltKCkpXG4gICAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldFBpdm90TW9kZShpZCkge1xuICByZXR1cm4gZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAuaXNQaXZvdE1vZGUoKTtcbn1cblxuLyoqXG4gKiBFbmFibGUgLyBkaXNiYWxlIHBpdm90IG1vZGUgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICogQHBhcmFtIHtCb29sZWFufSBtb2RlIHdoZW4gdHJ1ZSBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFBpdm90TW9kZShpZCwgbW9kZSkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmNvbHVtbkFwaVxuICAgIC5zZXRQaXZvdE1vZGUoISFOdW1iZXIobW9kZSkpO1xufVxuXG4vKipcbiAqIEVuYWJsZSBwaXZvdCBmb3IgY29sdW1uc1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5zICBhIGNvbW1hIHNlcGFyYXRlZCBzdHJpbmcgb2YgY29sdW1uc1xuICogQHBhcmFtIHtCb29sZWFufSBzZXQgIFdoZW4gdHJ1ZSAsIGBhZGRQaXZvdENvbHVtbnNgIHdpbGwgYmUgdXNlZCAsIGBzZXRQaXZvdENvbHVtbnNgIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfYWRkUGl2b3RDb2x1bW5zKGlkLCBjb2x1bW5zLCBzZXQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlbc2V0ID8gXCJzZXRQaXZvdENvbHVtbnNcIiA6IFwiYWRkUGl2b3RDb2x1bW5zXCJdKFxuICAgICAgY29sdW1ucy5zcGxpdChcIixcIikubWFwKGkgPT4gaS50cmltKCkpXG4gICAgKTtcbn1cblxuLyoqXG4gKiBEaXNhYmxlIHBpdm90IGZvciBjb2x1bW5zXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbnMgIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiBjb2x1bW5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19yZW1vdmVQaXZvdENvbHVtbnMoaWQsIGNvbHVtbnMpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAucmVtb3ZlUGl2b3RDb2x1bW5zKFxuICAgICAgY29sdW1ucy5zcGxpdChcIixcIikubWFwKGkgPT4gaS50cmltKCkpXG4gICAgKTtcbn1cblxuLyoqXG4gKiBFbmFibGUgdmFsdWUgZm9yIGNvbHVtbnNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1ucyAgYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mIGNvbHVtbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZFZhbHVlQ29sdW1ucyhpZCwgY29sdW1ucywgc2V0KSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLmFkZFZhbHVlQ29sdW1ucyhcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG5cbi8qKlxuICogRGlzYWJsZSB2YWx1ZSBmb3IgY29sdW1uc1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5zICBhIGNvbW1hIHNlcGFyYXRlZCBzdHJpbmcgb2YgY29sdW1uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcmVtb3ZlVmFsdWVDb2x1bW5zKGlkLCBjb2x1bW5zKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLnJlbW92ZVZhbHVlQ29sdW1ucyhcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG4iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcblxuLyoqXG4gKiBVcGRhdGUgY29udGV4dCBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkJ3MgaWQgXG4gKiBAcGFyYW0ge1N0cmluZ30ga2V5IFRoZSBjb250ZXh0J3Mga2V5IHRvIHVwZGF0ZVxuICogQHBhcmFtIHtTdHJpbmd9IHZhbHVlICBUaGUgbmV3IGNvbnRleHQncyB2YWx1ZSBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3VwZGF0ZUNvbnRleHQoaWQsIGtleSwgdmFsdWUpIHtcblx0Z3dfZ2V0R3JpZChpZClcblx0XHQub3B0aW9uc1xuXHRcdC5jb250ZXh0W2tleV0gPSBKU09OLnBhcnNlKHZhbHVlKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbml0LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29sdW1ucy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3Jvd3MuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jZWxscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXRlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdG9vbHBhbmVsLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdHVzYmFyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheXMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vanNzLmpzJzsiLCIvKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuaW1wb3J0IHsgZ3dfZXh0ZW5kQ29sdW1uRGVmaW5pdGlvbnMgfSBmcm9tIFwiLi9jb2x1bW5zXCI7XG5pbXBvcnQgeyBnd19uYXZpZ2F0ZVRvTmV4dFJvdyB9ICAgICAgIGZyb20gXCIuL3Jvd3NcIjtcbmltcG9ydCB7IGd3X2dldENvbnRleHRNZW51IH0gICAgICAgICAgZnJvbSBcIi4vbWVudXNcIjtcbmltcG9ydCB7IGd3X2dldERvY3VtZW50LCBnd19hZGRHcmlkfSAgZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5pbXBvcnQge1xuICBnd19vblJvd0RvdWJsZUNsaWNrZWQsXG4gIGd3X29uU2VsZWN0aW9uQ2hhbmdlZCxcbiAgZ3dfb25SYW5nZVNlbGVjdGlvbkNoYW5nZWQsXG4gIGd3X29uQ2VsbENsaWNrRXZlbnQsXG4gIGd3X29uQ2VsbEVkaXRpbmdFdmVudCxcbiAgZ3dfb25Sb3dFZGl0aW5nRXZlbnQsXG4gIGd3X29uUmVhZHlFdmVudCxcbiAgZ3dfZGVib3VuY2Vcbn0gZnJvbSBcImV2ZW50c1wiO1xuXG5jb25zdCB7IGRlZXBQYXJzZUpzb24gfSA9IHJlcXVpcmUoXCJkZWVwLXBhcnNlLWpzb25cIik7XG5jb25zdCB0ZW1wbGF0ZSAgICAgICAgICA9IHJlcXVpcmUoJ2xvZGFzaC90ZW1wbGF0ZScpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3dfaW5pdChvcHRpb25zLCBsaWNlbnNlICwgZGF0YSkge1xuICBcbiAgLy8gc2V0IHRoZSBsaWNlbnNlIGtleSBmb3IgZW50ZXJwcmlzZSB2ZXJzaW9uXG4gIGlmIChhZ0dyaWQuTGljZW5zZU1hbmFnZXIgJiYgbGljZW5zZSlcbiAgICBhZ0dyaWQuTGljZW5zZU1hbmFnZXIuc2V0TGljZW5zZUtleShsaWNlbnNlKTtcblxuICBjb25zdCBpZCAgICAgICAgICAgICAgPSBvcHRpb25zLmNvbnRleHQuaWQ7XG4gIGNvbnN0IGNvbnRhaW5lciAgICAgICA9IGd3X2dldERvY3VtZW50KCkuZ2V0RWxlbWVudEJ5SWQoaWQpO1xuICAvLyB3ZSBtYWtlIHRoZSBncmlkIG9wdGlvbnMgYXZhaWxhYmxlIGFzIHNvb24gYXMgcG9zc2libGUgXG4gIGNvbnN0IGdyaWQgICAgICAgICAgICA9IGd3X2FkZEdyaWQoaWQsIHtcbiAgICBjb250YWluZXIsXG4gICAgb3B0aW9uc1xuICB9KTtcblxuICAvLyBUT0RPOiB1c2UgYWcgZ3JpZCBkZXN0cm95XG4gIGNvbnRhaW5lci5pbm5lckhUTUwgICA9ICcnO1xuXG4gIGNvbnN0IHBhcnNlZE9wdGlvbnMgICA9IGd3X3BhcnNlT3B0aW9ucyhvcHRpb25zKTtcbiAgcGFyc2VkT3B0aW9ucy5yb3dEYXRhID0gZGF0YTtcblxuICBjb25zdCBpbnN0YW5jZSAgICAgICAgPSBuZXcgYWdHcmlkLkdyaWQoY29udGFpbmVyLCBwYXJzZWRPcHRpb25zKTtcbiAgZ3JpZC5pbnN0YW5jZSA9IGluc3RhbmNlO1xuICBncmlkLm9wdGlvbnMgID0gcGFyc2VkT3B0aW9ucztcblxuICBjb25zb2xlLmxvZyhcbiAgICBgJWMgR3JpZCBbJHtpZH1dIHNldHRpbmdzIDogYFxuICAgICwgJ2JhY2tncm91bmQ6ICMyMjI7IGNvbG9yOiAjYmFkYTU1J1xuICAgICwgcGFyc2VkT3B0aW9uc1xuICApO1xufVxuXG4vKipcbiAqIFBhcnNlIE9wdGlvbnNcbiAqIFxuICogUGFyc2UgdGhlIGdyaWQgb3B0aW9ucyBhbmQgcmV0dXJuIFxuICogYW4gb2JqZWN0IHdoaWNoIGNhbiBiZSBwYXNzZWQgdG8gdGhlIGdyaWRcbiAqIFxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgR3JpZCBvcHRpb25zIGFzIEpzb24gT2JqZWN0XG4gKiBcbiAqIEByZXR1cm4ge09iamVjdH0gb3B0aW9ucyBvYmplY3RcbiAqL1xuZnVuY3Rpb24gZ3dfcGFyc2VPcHRpb25zKG9wdGlvbnMpIHtcbiAgY29uc3QgZGVlcFBhcnNlZE9wdGlvbnMgICAgID0gZGVlcFBhcnNlSnNvbihKU09OLnN0cmluZ2lmeShvcHRpb25zKSk7XG4gIGNvbnN0IGlkICAgICAgICAgICAgICAgICAgICA9IGRlZXBQYXJzZWRPcHRpb25zLmNvbnRleHQuaWQ7XG4gIGNvbnN0IGdldERhdGFQYXRoVGVtcGxhdGUgICA9IGRlZXBQYXJzZWRPcHRpb25zLmNvbnRleHQuZ2V0RGF0YVBhdGggfHwgXCJcIjtcbiAgLy8gVE9ETzogZG8gd2UgbmVlZCB0byBjb250cm9sIHRoaXMgc2V0dGluZyBmcm9tIEJCaiA/XG4gIGNvbnN0IGRlYm91bmNlRHVyYXRpb24gICAgICA9IDI1MDtcbiAgY29uc3QgZmluYWxPcHRpb25zID0ge1xuICAgIC4uLmRlZXBQYXJzZWRPcHRpb25zICxcbiAgICAuLi57XG4gICAgICBnZXREb2N1bWVudDogICAgICAgICAgICAoKSAgICAgPT4gICBnd19nZXREb2N1bWVudCgpLFxuICAgICAgb25DZWxsRWRpdGluZ1N0YXJ0ZWQ6ICAgZSAgICAgID0+IHsgZ3dfb25DZWxsRWRpdGluZ0V2ZW50KGlkLCBlKSB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uQ2VsbEVkaXRpbmdTdG9wcGVkOiAgIGUgICAgICA9PiB7IGd3X29uQ2VsbEVkaXRpbmdFdmVudChpZCwgZSkgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBvbkNlbGxWYWx1ZUNoYW5nZWQ6ICAgICBlICAgICAgPT4geyBnd19vbkNlbGxFZGl0aW5nRXZlbnQoaWQsIGUpIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgb25Sb3dFZGl0aW5nU3RhcnRlZDogICAgZSAgICAgID0+IHsgZ3dfb25Sb3dFZGl0aW5nRXZlbnQoaWQsIGUpICB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uUm93RWRpdGluZ1N0b3BwZWQ6ICAgIGUgICAgICA9PiB7IGd3X29uUm93RWRpdGluZ0V2ZW50KGlkLCBlKSAgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBvblJvd1ZhbHVlQ2hhbmdlZDogICAgICBlICAgICAgPT4geyBnd19vblJvd0VkaXRpbmdFdmVudChpZCwgZSkgIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgb25DZWxsQ2xpY2tlZDogICAgICAgICAgZSAgICAgID0+IHsgZ3dfb25DZWxsQ2xpY2tFdmVudChpZCwgZSkgICB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uQ2VsbERvdWJsZUNsaWNrZWQ6ICAgIGUgICAgICA9PiB7IGd3X29uQ2VsbENsaWNrRXZlbnQoaWQsIGUpICAgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBvbkdyaWRSZWFkeTogICAgICAgICAgICBlICAgICAgPT4geyBnd19vblJlYWR5RXZlbnQoaWQsIGUpICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgZ2V0Um93Tm9kZUlkOiAgICAgICAgICAgZGF0YSAgID0+ICAgZ3dfZ2V0Um93Tm9kZUlkKGlkLCBkYXRhKSAgICAgICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIGdldENvbnRleHRNZW51SXRlbXM6ICAgIHBhcmFtcyA9PiAgIGd3X2dldENvbnRleHRNZW51KGlkLCBwYXJhbXMpICAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBcInBvcHVwUGFyZW50XCI6ICAgICAgICAgICAgICAgICAgICAgIGd3X2dldERvY3VtZW50KCkuYm9keSxcbiAgICAgIFwib25Sb3dEb3VibGVDbGlja2VkXCI6ICAgICAgICAgICAgICAgZ3dfZGVib3VuY2UoZ3dfb25Sb3dEb3VibGVDbGlja2VkLCBkZWJvdW5jZUR1cmF0aW9uKSAgICAgICAgICxcbiAgICAgIFwib25TZWxlY3Rpb25DaGFuZ2VkXCI6ICAgICAgICAgICAgICAgZ3dfZGVib3VuY2UoZ3dfb25TZWxlY3Rpb25DaGFuZ2VkLCBkZWJvdW5jZUR1cmF0aW9uKSAgICAgICAgICxcbiAgICAgIFwib25SYW5nZVNlbGVjdGlvbkNoYW5nZWRcIjogICAgICAgICAgZ3dfZGVib3VuY2UoZ3dfb25SYW5nZVNlbGVjdGlvbkNoYW5nZWQgLCBkZWJvdW5jZUR1cmF0aW9uKSAgLFxuICAgICAgXCJjb21wb25lbnRzXCI6IHtcbiAgICAgICAgXCJCYXNpY0Jvb2xlYW5zUmVuZGVyZXJcIiAgICAgICA6IEJhc2lzLkFnR3JpZENvbXBvbmVudHMuQmFzaWNCb29sZWFuc1JlbmRlcmVyLFxuICAgICAgICBcIkJhc2ljQm9vbGVhbnNFZGl0b3JcIiAgICAgICAgIDogQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5CYXNpY0Jvb2xlYW5zRWRpdG9yICAsXG4gICAgICAgIFwiQmFzaWNCb29sZWFuc0ZpbHRlclwiICAgICAgICAgOiBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLkJhc2ljQm9vbGVhbnNGaWx0ZXIgICxcbiAgICAgICAgXCJCYXNpY051bWJlcnNFZGl0b3JcIiAgICAgICAgICA6IEJhc2lzLkFnR3JpZENvbXBvbmVudHMuQmFzaWNOdW1iZXJzRWRpdG9yICAgLFxuICAgICAgICBcIkJhc2ljRGF0ZVRpbWVzRWRpdG9yXCIgICAgICAgIDogQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5CYXNpY0RhdGVUaW1lc0VkaXRvciAsXG4gICAgICAgIFwiQmFzaWNEYXRlVGltZXNGaWx0ZXJcIiAgICAgICAgOiBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLkJhc2ljRGF0ZVRpbWVzRmlsdGVyICxcbiAgICAgICAgXCJCYXNpY0ltYWdlc1JlbmRlcmVyXCIgICAgICAgICA6IEJhc2lzLkFnR3JpZENvbXBvbmVudHMuQmFzaWNJbWFnZXNSZW5kZXJlciAgLFxuICAgICAgICAvLyBsb2Rhc2ggdGVtcGxhdGUgcmVuZGVyXG4gICAgICAgIFwiR1dDdXN0b21IVE1MVGVtcGxhdGVSZW5kZXJlclwiOiBwYXJhbXMgPT4ge1xuICAgICAgICAgIGNvbnN0IGNvbXBpbGVkID0gdGVtcGxhdGUocGFyYW1zLl9fVEVNUExBVEVfXyk7XG4gICAgICAgICAgcmV0dXJuIGNvbXBpbGVkKHsgcGFyYW1zOiBwYXJhbXMgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgaWYgKFxuICAgIGZpbmFsT3B0aW9ucy5jb250ZXh0Lmhhc093blByb3BlcnR5KFwibmF2aWdhdGVUb05leHRDZWxsXCIpICYmXG4gICAgZmluYWxPcHRpb25zLmNvbnRleHQubmF2aWdhdGVUb05leHRDZWxsXG4gICkge1xuICAgIGZpbmFsT3B0aW9ucy5uYXZpZ2F0ZVRvTmV4dENlbGwgPSBwYXJhbXMgPT4geyByZXR1cm4gZ3dfbmF2aWdhdGVUb05leHRSb3coaWQsIHBhcmFtcykgfTtcbiAgfVxuXG4gIGlmIChnZXREYXRhUGF0aFRlbXBsYXRlICYmIGZpbmFsT3B0aW9ucy50cmVlRGF0YSkge1xuICAgIGNvbnN0IGdldERhdGFQYXRoVGVtcGxhdGVDb21wbGllZCA9IHRlbXBsYXRlKGdldERhdGFQYXRoVGVtcGxhdGUpO1xuICAgIGZpbmFsT3B0aW9ucy5nZXREYXRhUGF0aCA9IGRhdGEgPT4gZ2V0RGF0YVBhdGhUZW1wbGF0ZUNvbXBsaWVkKHsgZGF0YTogZGF0YSB9KTtcbiAgfVxuXG4gIC8vIGV4dGVuZCB0aGUgY29sdW1uIGRlZmluaXRpb25zXG4gIGd3X2V4dGVuZENvbHVtbkRlZmluaXRpb25zKGZpbmFsT3B0aW9ucy5jb2x1bW5EZWZzKTtcblxuICByZXR1cm4gZmluYWxPcHRpb25zO1xufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0ICdleHBvc2UtbG9hZGVyP2pzcyFqc3MvanNzLmpzJztcbmltcG9ydCB7Z3dfZ2V0RG9jdW1lbnR9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuXG4vKipcbiAqIEZvcm1hdGUgdGhlIGNzcyBzZWxlY3RvciBcbiAqIFxuICogQ2hlY2sgaWYgdGhlIGNzcyBzZWxlY3RvciBzdGFydHMgd2l0aCBkb3QgLCBpZiBub3QgYWRkIG9uZSBhbmQgcmV0dXJuIHRoZSBcbiAqIGZvcm1hdHRlZCBuYW1lIFxuICogXG4gKiBAcGFyYW0geyp9IHNlbGVjdG9yIFxuICovXG5mdW5jdGlvbiBmb3JtYXRTZWxlY3RvcihzZWxlY3Rvcil7XG4gIHJldHVybiBzZWxlY3Rvci5zdGFydHNXaXRoKFwiLlwiKSA/IHNlbGVjdG9yIDogYC4ke3NlbGVjdG9yfWA7XG59XG5cbi8qKlxuICogQWRkIG5ldyBzdHlsZSBcbiAqIFxuICogQWRkIG5ldyBzdHlsZSB0byB0aGUgZG9jdW1lbnQgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBzZWxlY3RvciBjc3Mgc2VsZWN0b3JcbiAqIEBwYXJhbSB7U3RyaW5nfSBydWxlcyBKc29uIHN0cmluZyBmb3IgYW4gYXJyYXkgb2YgcnVsZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFN0eWxlKHNlbGVjdG9yLCBydWxlcykge1xuICBqc3MuZm9yRG9jdW1lbnQoZ3dfZ2V0RG9jdW1lbnQoKSkuc2V0KGZvcm1hdFNlbGVjdG9yKHNlbGVjdG9yKSwgSlNPTi5wYXJzZShydWxlcykpO1xufVxuXG4vKipcbiAqIFJlbW92ZSBzdHlsZVxuICogXG4gKiBSZW1vdmUgYWRkZWQgc3R5bGUgZnJvbSB0aGVzIGRvY3VtZW50IFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gc2VsZWN0b3IgY3NzIHNlbGVjdG9yXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19yZW1vdmVTdHlsZShzZWxlY3Rvcikge1xuICBqc3MuZm9yRG9jdW1lbnQoZ3dfZ2V0RG9jdW1lbnQoKSkucmVtb3ZlKGZvcm1hdFNlbGVjdG9yKHNlbGVjdG9yKSk7XG59XG4iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIlxuaW1wb3J0IHtcbiAgZ3dfcGFyc2VOb2RlRnJvbUV2ZW50LFxuICBnd19zZW5kRXZlbnRcbn0gZnJvbSBcImV2ZW50cy91dGlsaXRpZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldENvbnRleHRNZW51KGdyaWRJZCwgcGFyYW1zKSB7XG5cbiAgY29uc3QgYnVpbGRDb250ZXh0TWVudUFjdGlvbiA9IChwYXJhbXMsIGlkKSA9PiB7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuXG4gICAgICBjb25zdCBub2RlID0gZ3dfcGFyc2VOb2RlRnJvbUV2ZW50KHBhcmFtcyk7XG4gICAgICBjb25zdCBjb2xJZCA9IHBhcmFtcy5jb2x1bW4uY29sSWQ7XG4gICAgICBjb25zdCB2YWx1ZSA9IHBhcmFtcy52YWx1ZTtcblxuICAgICAgZ3dfc2VuZEV2ZW50KGd3X2dldEdyaWQoZ3JpZElkKS5vcHRpb25zLmNvbnRleHQsIHtcbiAgICAgICAgJ3R5cGUnOiAnZ3cuY29udGV4dG1lbnUnLFxuICAgICAgICAnZGV0YWlsJzogSlNPTi5zdHJpbmdpZnkoeyByOiBub2RlLCBjOiBjb2xJZCwgdjp2YWx1ZSwgaTppZCB9KVxuICAgICAgfSwgaWQpO1xuICAgIH07XG4gIH07XG5cbiAgY29uc3QgcGFyc2VNZW51ID0gKG1lbnUpID0+IHtcbiAgICBtZW51LmZvckVhY2goaXRlbSA9PiB7XG5cbiAgICAgIGlmICh0eXBlb2YgaXRlbSA9PT0gJ3N0cmluZycpIHJldHVybjtcblxuICAgICAgaXRlbVsnYWN0aW9uJ10gPSBidWlsZENvbnRleHRNZW51QWN0aW9uKHBhcmFtcywgaXRlbS5pZCk7XG5cbiAgICAgIGlmIChpdGVtWydjc3NDbGFzc2VzJ10gJiYgIUFycmF5LmlzQXJyYXkoaXRlbVsnY3NzQ2xhc3NlcyddKSlcbiAgICAgICAgaXRlbVsnY3NzQ2xhc3NlcyddID0gaXRlbVsnY3NzQ2xhc3NlcyddLnNwbGl0KFwiIFwiKTtcblxuICAgICAgaWYgKGl0ZW1bJ3N1Yk1lbnUnXSkgaXRlbVsnc3ViTWVudSddID0gcGFyc2VNZW51KGl0ZW1bJ3N1Yk1lbnUnXSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWVudTtcbiAgfTtcblxuICByZXR1cm4gcGFyc2VNZW51KGd3X2dldEdyaWQoZ3JpZElkKS5vcHRpb25zLmNvbnRleHQuY29udGV4dE1lbnUpO1xufVxuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbi8qKlxuICogU2hvdyBsb2FkaW5nIG92ZXJsYXlcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zaG93TG9hZGluZ092ZXJsYXkoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuc2hvd0xvYWRpbmdPdmVybGF5KCk7XG59XG5cbi8qKlxuICogU2hvdyAnbm8gcm93cycgb3ZlcmxheVxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3Nob3dOb1Jvd3NPdmVybGF5KGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnNob3dOb1Jvd3NPdmVybGF5KCk7XG59XG5cbi8qKlxuICogQ2xlYXIgYWxsIG92ZXJsYXlzXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfaGlkZU92ZXJsYXkoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuaGlkZU92ZXJsYXkoKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuaW1wb3J0IHsgZ3dfcGFyc2VOb2RlIH0gZnJvbSBcImV2ZW50cy91dGlsaXRpZXNcIjtcblxuY29uc3QgeyBkZWVwUGFyc2VKc29uIH0gPSByZXF1aXJlKFwiZGVlcC1wYXJzZS1qc29uXCIpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0UXVpY2tGaWx0ZXIoaWQsIGZpbHRlcikge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zZXRRdWlja0ZpbHRlcihmaWx0ZXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZXhwYW5kQWxsKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLmV4cGFuZEFsbCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfY29sbGFwc2VBbGwoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuY29sbGFwc2VBbGwoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFZpc2libGVSb3coaWQsIGluZGV4LCBwb3NpdGlvbikge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5lbnN1cmVJbmRleFZpc2libGUoaW5kZXgsIHBvc2l0aW9uKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X25hdmlnYXRlVG9OZXh0Um93KGlkLCBwYXJhbXMpIHtcblxuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcbiAgbGV0IHByZXZpb3VzQ2VsbCA9IHBhcmFtcy5wcmV2aW91c0NlbGxQb3NpdGlvbjtcbiAgbGV0IHN1Z2dlc3RlZE5leHRDZWxsID0gcGFyYW1zLm5leHRDZWxsUG9zaXRpb247XG5cbiAgY29uc3QgS0VZX1VQID0gMzg7XG4gIGNvbnN0IEtFWV9ET1dOID0gNDA7XG4gIGNvbnN0IEtFWV9MRUZUID0gMzc7XG4gIGNvbnN0IEtFWV9SSUdIVCA9IDM5O1xuXG4gIHN3aXRjaCAocGFyYW1zLmtleSkge1xuICAgIGNhc2UgS0VZX0RPV046XG4gICAgICAvLyBzZXQgc2VsZWN0ZWQgY2VsbCBvbiBjdXJyZW50IGNlbGwgKyAxXG4gICAgICBvcHRpb25zLmFwaS5mb3JFYWNoTm9kZSgobm9kZSkgPT4ge1xuICAgICAgICBpZiAocHJldmlvdXNDZWxsLnJvd0luZGV4ICsgMSA9PT0gbm9kZS5yb3dJbmRleCkge1xuICAgICAgICAgIG5vZGUuc2V0U2VsZWN0ZWQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN1Z2dlc3RlZE5leHRDZWxsO1xuICAgIGNhc2UgS0VZX1VQOlxuICAgICAgLy8gc2V0IHNlbGVjdGVkIGNlbGwgb24gY3VycmVudCBjZWxsIC0gMVxuICAgICAgb3B0aW9ucy5hcGkuZm9yRWFjaE5vZGUoKG5vZGUpID0+IHtcbiAgICAgICAgaWYgKHByZXZpb3VzQ2VsbC5yb3dJbmRleCAtIDEgPT09IG5vZGUucm93SW5kZXgpIHtcbiAgICAgICAgICBub2RlLnNldFNlbGVjdGVkKHRydWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBzdWdnZXN0ZWROZXh0Q2VsbDtcbiAgICBjYXNlIEtFWV9MRUZUOlxuICAgIGNhc2UgS0VZX1JJR0hUOlxuICAgICAgcmV0dXJuIHN1Z2dlc3RlZE5leHRDZWxsO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJZb3UgaGF2ZSBzdXBlciBzdHJhbmdlIGtleWJvYXJkXCIpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRSb3dOb2RlSWQoaWQsIGRhdGEpIHtcbiAgcmV0dXJuIGRhdGFbZ3dfZ2V0R3JpZChpZCkub3B0aW9ucy5jb250ZXh0LmdldFJvd05vZGVJZF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRSb3dzRGF0YShpZCwganNvbikge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcblxuICBvcHRpb25zLmFwaS5zZXRSb3dEYXRhKGpzb24pO1xuICBvcHRpb25zLnJvd0RhdGEgPSBqc29uO1xuICBvcHRpb25zLmFwaS5yZWZyZXNoQ2xpZW50U2lkZVJvd01vZGVsKCdncm91cCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0Um93RGF0YShpZCwgcm93KSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuXG4gIG9wdGlvbnMuYXBpLnVwZGF0ZVJvd0RhdGEoeyB1cGRhdGU6IFtyb3ddIH0pO1xuICBvcHRpb25zLmFwaS5yZWZyZXNoQ2xpZW50U2lkZVJvd01vZGVsKCdncm91cCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfcmVtb3ZlUm93cyhpZCwgaW5kZXhlcykge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcbiAgbGV0IGl0ZW1zID0gW107XG5cbiAgaW5kZXhlcy5mb3JFYWNoKGluZGV4ID0+IHtcbiAgICBpdGVtcy5wdXNoKG9wdGlvbnMuYXBpLmdldFJvd05vZGUoaW5kZXgpLmRhdGEpO1xuICB9KTtcblxuICBvcHRpb25zLmFwaS51cGRhdGVSb3dEYXRhKHsgcmVtb3ZlOiBpdGVtcyB9KTtcbiAgb3B0aW9ucy5hcGkucmVmcmVzaENsaWVudFNpZGVSb3dNb2RlbCgnZ3JvdXAnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZFJvd3MoaWQsIGluZGV4LCByb3dzKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuXG4gIG9wdGlvbnMuYXBpLnVwZGF0ZVJvd0RhdGEoeyBhZGQ6IHJvd3MsIGFkZEluZGV4OiBpbmRleCB9KTtcbiAgb3B0aW9ucy5hcGkucmVmcmVzaENsaWVudFNpZGVSb3dNb2RlbCgnZ3JvdXAnKTtcbn1cblxuLyoqXG4gKiBTZXQgdGhlIGhlaWdodCBvZiBhbGwgcm93cyBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge051bWJlcn0gaGVpZ2h0IHRoZSByb3cgaGVpZ2h0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRSb3dzSGVpZ2h0KGlkLCBoZWlnaHQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkuZm9yRWFjaE5vZGUocm93ID0+IHtcbiAgICByb3cuc2V0Um93SGVpZ2h0KGhlaWdodCk7XG4gIH0pO1xuICBvcHRpb25zLmFwaS5vblJvd0hlaWdodENoYW5nZWQoKTtcbn1cblxuLyoqXG4gKiBTZXQgdGhlIGdpdmVuIHJvdyBoZWlnaHQgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZCBcbiAqIEBwYXJhbSB7TnVtYmVyfSBpbmRleCB0aGUgcm93IGluZGV4XG4gKiBAcGFyYW0ge051bWJlcn0gaGVpZ2h0IHRoZSBuZXcgaGVpZ2h0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRSb3dIZWlnaHQoaWQsIGluZGV4LCBoZWlnaHQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IHJvdyA9IG9wdGlvbnMuYXBpLmdldERpc3BsYXllZFJvd0F0SW5kZXgoaW5kZXgpO1xuXG4gIGlmIChyb3cpIHtcbiAgICByb3cuc2V0Um93SGVpZ2h0KGhlaWdodCk7XG4gICAgb3B0aW9ucy5hcGkub25Sb3dIZWlnaHRDaGFuZ2VkKCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc29sZS53YXJuKGBGYWlsZWQgdG8gc2V0IGhlaWdodCBmb3Igcm93ICR7aW5kZXh9LiBSb3cgY2FuIG5vdCBiZSBmb3VuZGApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRTZWxlY3RlZFJvd3MoaWQsIHJvd3MpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkuZm9yRWFjaE5vZGVBZnRlckZpbHRlckFuZFNvcnQobm9kZSA9PiB7XG4gICAgaWYgKHJvd3MuaW5kZXhPZihub2RlLnJvd0luZGV4KSA+IC0xKSB7XG4gICAgICBub2RlLnNldFNlbGVjdGVkKHRydWUpO1xuICAgICAgbm9kZS5leHBhbmRlZCA9IHRydWU7XG4gICAgfVxuICB9KTtcbiAgb3B0aW9ucy5hcGkub25Hcm91cEV4cGFuZGVkT3JDb2xsYXBzZWQoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NlbGVjdEFsbChpZCwgZmlsdGVyZWQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgaWYgKDEgPT09IGZpbHRlcmVkKSB7XG4gICAgb3B0aW9ucy5hcGkuc2VsZWN0QWxsRmlsdGVyZWQoKTtcbiAgfSBlbHNlIHtcbiAgICBvcHRpb25zLmFwaS5zZWxlY3RBbGwoKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZGVzZWxlY3RBbGwoaWQsIGZpbHRlcmVkKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuXG4gIGlmICgxID09PSBmaWx0ZXJlZCkge1xuICAgIG9wdGlvbnMuYXBpLmRlc2VsZWN0QWxsRmlsdGVyZWQoKTtcbiAgfSBlbHNlIHtcbiAgICBvcHRpb25zLmFwaS5kZXNlbGVjdEFsbCgpO1xuICB9XG59XG5cbi8qKlxuICogR2V0IHRoZSBjdXJyZW50IHNlbGVjdGVkIHJvd3NcbiAqIFxuICogQHBhcmFtIHtOdW1iZXJ9IGlkIGdyaWQncyBpZFxuICogXG4gKiBAcmV0dXJucyB7U3RyaW5nfSAgc2VsZWN0ZWQgcm93cyBhcyBKU09OXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRTZWxlY3RlZFJvd3MoaWQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IG5vZGVzID0gb3B0aW9ucy5hcGkuZ2V0U2VsZWN0ZWROb2RlcygpO1xuICBsZXQgcGFyc2VkID0gW107XG5cbiAgbm9kZXMuZm9yRWFjaChub2RlID0+IHtcbiAgICBwYXJzZWQucHVzaChnd19wYXJzZU5vZGUobm9kZSwgb3B0aW9ucy5jb250ZXh0KSk7XG4gIH0pO1xuXG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShwYXJzZWQpO1xufVxuXG4vKipcbiAqIEdldCB0aGUgbGFzdCBzZWxlY3RlZCByb3dcbiAqIFxuICogQHBhcmFtIHtOdW1iZXJ9IGlkIGdyaWQncyBpZFxuICogXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBzZWxlY3RlZCByb3cgYXMgSlNPTlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0U2VsZWN0ZWRSb3coaWQpIHtcbiAgY29uc3Qgcm93cyA9IEpTT04ucGFyc2UoZ3dfZ2V0U2VsZWN0ZWRSb3dzKGlkKSk7XG5cbiAgaWYgKHJvd3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHJvd3Nbcm93cy5sZW5ndGggLSAxXSk7XG4gIH1cblxuICByZXR1cm4gJyc7XG59XG5cbi8qKlxuICogR2V0IFJhbmdlIFNlbGVjdGlvbnNcbiAqIFxuICogVGhlIG1ldGhvZCB3aWxsIGNyZWF0ZSBhIHJhbmdlIGpzb24gbW9kZWwgZm9yIGVhY2ggcmFuZ2Ugd2hpY2ggY2FuIGJlIHBhcnNlZCBpbiBCQmogc2lkZS5cbiAqIFxuICogQHBhcmFtIHtOdW1iZXJ9IGlkIGdyaWQncyBpZFxuICogXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBzZWxlY3RlZCByYW5nZXMgYXMgSlNPTlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0UmFuZ2VTZWxlY3Rpb25zKGlkKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuICBjb25zdCBjb250ZXh0ID0gb3B0aW9ucy5jb250ZXh0O1xuICBjb25zdCBhcGkgPSBvcHRpb25zLmFwaTtcbiAgY29uc3QgcmFuZ2VzID0gYXBpLmdldENlbGxSYW5nZXMoKTtcbiAgY29uc3QgbW9kZWwgPSBhcGkuZ2V0TW9kZWwoKTtcbiAgbGV0IHJlc3VsdCA9IFtdO1xuXG4gIHJhbmdlcy5mb3JFYWNoKHJhbmdlID0+IHtcblxuICAgIC8vIGNvbnN0IHN0YXJ0ID0gZ3dfcGFyc2VOb2RlKG1vZGVsLmdldFJvdyhyYW5nZS5zdGFydFJvdy5yb3dJbmRleCksIG9wdGlvbnMuY29udGV4dCk7XG4gICAgLy8gY29uc3QgZW5kID0gZ3dfcGFyc2VOb2RlKG1vZGVsLmdldFJvdyhyYW5nZS5lbmRSb3cucm93SW5kZXgpLCBvcHRpb25zLmNvbnRleHQpO1xuXG4gICAgLy9pZiAoc3RhcnQgIT09IGZhbHNlICYmIGVuZCAhPT0gZmFsc2UpIHtcbiAgICBjb25zdCBjb2x1bW5zID0gcmFuZ2UuY29sdW1ucy5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjdXJyZW50KSA9PiB7XG5cbiAgICAgIGlmIChcImFnLUdyaWQtQXV0b0NvbHVtblwiICE9PSBjdXJyZW50LmNvbElkKSB7XG4gICAgICAgIGFjY3VtdWxhdG9yLnB1c2goY3VycmVudC5jb2xJZCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBhY2N1bXVsYXRvcjtcbiAgICB9LCBbXSkuZmlsdGVyKEJvb2xlYW4pO1xuXG4gICAgY29uc3Qgc3RhckluZGV4ID0gTWF0aC5taW4ocmFuZ2Uuc3RhcnRSb3cucm93SW5kZXgsIHJhbmdlLmVuZFJvdy5yb3dJbmRleCk7XG4gICAgY29uc3QgZW5kSW5kZXggPSBNYXRoLm1heChyYW5nZS5zdGFydFJvdy5yb3dJbmRleCwgcmFuZ2UuZW5kUm93LnJvd0luZGV4KTtcbiAgICBjb25zdCByb3dzID0gW107XG5cbiAgICBmb3IgKGxldCByb3dJbmRleCA9IHN0YXJJbmRleDsgcm93SW5kZXggPD0gZW5kSW5kZXg7IHJvd0luZGV4KyspIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBtb2RlbC5nZXRSb3cocm93SW5kZXgpO1xuICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgY29uc3QgcGFyc2VkTm9kZSA9IGd3X3BhcnNlTm9kZShub2RlLCBjb250ZXh0KTtcbiAgICAgICAgaWYocGFyc2VkTm9kZSkgcm93cy5wdXNoKHBhcnNlZE5vZGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChyb3dzLmxlbmd0aCAmJiBjb2x1bW5zLmxlbmd0aCkge1xuICAgICAgcmVzdWx0LnB1c2goeyByOnJvd3MsIGM6Y29sdW1ucyB9KTtcbiAgICB9XG4gICAgLy99XG4gIH0pO1xuXG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShyZXN1bHQpO1xufVxuXG4vKipcbiAqIEFkZCBuZXcgY2VsbCByYW5nZVxuICogXG4gKiBAcGFyYW0ge051bWJlcn0gaWQgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gcmFuZ2UgIGJvdW5kZWQgb3IgdW5ib3VuZGVkIHJhbmdlIG1vZGVsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19hZGRDZWxsUmFuZ2UoaWQsIHJhbmdlKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuICBjb25zdCBwciA9IGRlZXBQYXJzZUpzb24oSlNPTi5zdHJpbmdpZnkocmFuZ2UpKTtcbiAgY29uc3Qgc3RhcnQgPSAhKHByLnN0YXJ0IHx8IG51bGwpID9cbiAgICAwIDogKE51bWJlci5pc0ludGVnZXIoK3ByLnN0YXJ0KSA/ICtwci5zdGFydCA6IG9wdGlvbnMuYXBpLmdldFJvd05vZGUocHIuc3RhcnQpLnJvd0luZGV4KTtcbiAgY29uc3QgZW5kID0gIShwci5lbmQgfHwgbnVsbCkgP1xuICAgIChvcHRpb25zLnJvd0RhdGEubGVuZ3RoIC0gMSkgOiAoTnVtYmVyLmlzSW50ZWdlcigrcHIuZW5kKSA/ICtwci5lbmQgOiBvcHRpb25zLmFwaS5nZXRSb3dOb2RlKHByLmVuZCkucm93SW5kZXgpO1xuXG4gIG9wdGlvbnMuYXBpLmFkZENlbGxSYW5nZSh7XG4gICAgcm93U3RhcnRJbmRleDogTWF0aC5hYnMoc3RhcnQpLFxuICAgIHJvd0VuZEluZGV4OiBNYXRoLmFicyhlbmQpLFxuICAgIGNvbHVtbnM6IHByLmNvbHVtbnNcbiAgfSk7XG59XG5cbi8qKlxuICogQ2xlYXJzIHRoZSBzZWxlY3RlZCByYW5nZS5cbiAqIFxuICogQHBhcmFtIHtOdW1iZXJ9IGlkIGdyaWQncyBpZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfY2xlYXJSYW5nZVNlbGVjdGlvbihpZCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5jbGVhclJhbmdlU2VsZWN0aW9uKCk7XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRTdGF0ZShpZCwgc3RhdGUpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgdHJ5IHtcbiAgICBvcHRpb25zLmNvbHVtbkFwaS5zZXRDb2x1bW5TdGF0ZShzdGF0ZS5jb2x1bW5zKTtcbiAgICBvcHRpb25zLmNvbHVtbkFwaS5zZXRDb2x1bW5Hcm91cFN0YXRlKHN0YXRlLmdyb3Vwcyk7XG4gICAgb3B0aW9ucy5hcGkuc2V0U29ydE1vZGVsKHN0YXRlLnNvcnQpO1xuICAgIG9wdGlvbnMuYXBpLnNldEZpbHRlck1vZGVsKHN0YXRlLmZpbHRlcnMpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKCdGYWlsZWQgdG8gcGFyc2UgZ3JpZCBzdGF0ZSBmcm9tIEpTT04nLCBlKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0U3RhdGUoaWQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IGNvbHVtbnMgPSBvcHRpb25zLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuICBjb25zdCBncm91cHMgPSBvcHRpb25zLmNvbHVtbkFwaS5nZXRDb2x1bW5Hcm91cFN0YXRlKCk7XG4gIGNvbnN0IHNvcnQgPSBvcHRpb25zLmFwaS5nZXRTb3J0TW9kZWwoKTtcbiAgY29uc3QgZmlsdGVycyA9IG9wdGlvbnMuYXBpLmdldEZpbHRlck1vZGVsKCk7XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgY29sdW1ucyxcbiAgICAgIGdyb3VwcyxcbiAgICAgIHNvcnQsXG4gICAgICBmaWx0ZXJzXG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oJ0ZhaWxlZCB0byBjb252ZXJ0IHRoZSBncmlkIHN0YXRlIHRvIGpzb24nLCBlKTtcbiAgfVxufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0U3RhdHVzYmFyQ29tcG9uZW50VmlzaWJpbGl0eShpZCwga2V5LCB2aXNpYmlsaXR5KSB7XG5cdGd3X2dldEdyaWQoaWQpXG5cdFx0Lm9wdGlvbnNcblx0XHQuYXBpXG5cdFx0LmdldFN0YXR1c1BhbmVsKGtleSlcblx0XHQuc2V0VmlzaWJsZShCb29sZWFuKHZpc2liaWxpdHkpKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFNpZGVCYXJWaXNpYmxlKGlkLCB2YWx1ZSkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zZXRTaWRlQmFyVmlzaWJsZShCb29sZWFuKHZhbHVlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19vcGVuVG9vbHBhbmVsKGdyaWRJZCwgdG9vbHBhbmVsSWQpIHtcbiAgZ3dfZ2V0R3JpZChncmlkSWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLm9wZW5Ub29sUGFuZWwodG9vbHBhbmVsSWQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfY2xvc2VUb29scGFuZWwoZ3JpZElkLCB0b29scGFuZWxJZCkge1xuICBnd19nZXRHcmlkKGdyaWRJZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuY2xvc2VUb29sUGFuZWwodG9vbHBhbmVsSWQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0RnVuY3Rpb25zUmVhZE9ubHkoaWQsIHJlYWRvbmx5KSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnNldEZ1bmN0aW9uc1JlYWRPbmx5KEJvb2xlYW4ocmVhZG9ubHkpKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuLyoqXG4gKiBHZXQgZG9jdW1lbnQgXG4gKiBcbiAqIEdldCB0aGUgZG9jdW1lbnQgaW5zdGFuY2UgYWNjb3JkaW5nIHRvIHRoZSBjdXJyZW50IEJCaiBlbnZcbiAqIFxuICogQHJldHVybiB7T2JqZWN0fSBEb2N1bWVudCBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0RG9jdW1lbnQoKSB7XG4gIHJldHVybiB0eXBlb2YgJGRvYyAhPT0gJ3VuZGVmaW5lZCcgPyAkZG9jIDogZG9jdW1lbnQ7XG59XG5cbi8qKlxuICogR2V0IHdpbmRvdyBcbiAqIFxuICogR2V0IHRoZSB3aW5kb3cgaW5zdGFuY2UgYWNjb3JkaW5nIHRvIHRoZSBjdXJyZW50IEJCaiBlbnZcbiAqIFxuICogQHJldHVybiB7T2JqZWN0fSBXaW5kb3cgaW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldFdpbmRvdygpIHtcbiAgcmV0dXJuIHR5cGVvZiAkd2luICE9PSAndW5kZWZpbmVkJyA/ICR3aW4gOiB3aW5kb3c7XG59XG5cbi8qKlxuICogRXNjYXBlIFZhbHVlIFxuICogXG4gKiBDaGFuZ2UgbnVsbCBhbmQgdW5kZWZpbmVkIHRvIGVtcHR5IHN0cmluZyBcbiAqIFxuICogQHBhcmFtIHsqfSB2YWx1ZSBcbiAqIFxuICogQHJldHVybiB7U3RyaW5nfSBlc2NhcGVkIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19lc2NhcGUodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6ICcnO1xufVxuXG4vKipcbiAqIEdldCBHcmlkIFxuICogXG4gKiBSZXRyaWV2ZSB0aGUgZ3JpZCBpbnN0YW5jZSBmcm9tIGB3aW5kb3cuQkJqR3JpZEV4V2lkZ2V0YCBhcnJheSBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkJ3MgaWRcbiAqIFxuICogQHJldHVybiB7T2JqZWN0fG51bGx9IFRoZSBncmlkJ3MgaW5zdGFuY2Ugb2ZyIG51bGxcbiAqIEB0aHJvd3MgVHlwZUVycm9yIHdoZW4gdGhlIGdyaWQgaW5zdGFuY2UgaXMgbm90IGZvdW5kXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRHcmlkKGlkKSB7XG4gIHdpbmRvdy5CQmpHcmlkRXhXaWRnZXQgPSB3aW5kb3cuQkJqR3JpZEV4V2lkZ2V0IHx8IHt9O1xuICBjb25zdCBncmlkID0gIHdpbmRvdy5CQmpHcmlkRXhXaWRnZXRbaWRdIHx8IG51bGw7XG5cbiAgaWYgKCFncmlkKSB7XG4gICAgY29uc3QgcmVnaXN0ZXJlZEdyaWRzID0gSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmtleXMod2luZG93LkJCakdyaWRFeFdpZGdldCkpO1xuICAgIC8vZ2V0RnVuY0FyZ3MoZnVuYykuZm9yRWFjaCgoa2V5LCBpKSA9PiBhcmdzT2JqW2tleV0gPSBhcmdzW2ldKTtcbiAgICBcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuYFxcblxcbltHcmlkIE5vdCBGb3VuZF0gVGhlIG1ldGhvZCBhc2tlZCBmb3Igbm9uLWV4aXN0ZW50IGdyaWQgaW5zdGFuY2UuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5SZXF1aXJlZCBHcmlkIElkIDogJHtpZH0gICBcblJlZ2lzdGVyZWQgR3JpZHMgOiAke3JlZ2lzdGVyZWRHcmlkc31cbmApO1xuICB9XG4gIFxuICByZXR1cm4gZ3JpZDtcbn1cblxuLyoqXG4gKiBBZGQgR3JpZCBcbiAqIFxuICogU3RvcmUgYSBuZXcgZ3JpZCBpbnN0YW5jZSBieSBpbiB0aGUgYHdpbmRvdy5CQmpHcmlkRXhXaWRnZXRgIGFycmF5IFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZFxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgIFRoZSBncmlkJ3Mgb3B0aW9uc1xuICogXG4gKiBAcmV0dXJuIHtPYmplY3R9IFN0b3JlZCBncmlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19hZGRHcmlkKGlkLCBvcHRpb25zKSB7XG4gIHdpbmRvdy5CQmpHcmlkRXhXaWRnZXQgPSB3aW5kb3cuQkJqR3JpZEV4V2lkZ2V0IHx8IHt9O1xuICB3aW5kb3cuQkJqR3JpZEV4V2lkZ2V0W2lkXSA9IG9wdGlvbnM7XG4gIFxuICByZXR1cm4gZ3dfZ2V0R3JpZChpZCk7XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG4vLyBzZWxlY3Rpb24gY29uc3RhbnRzXG5leHBvcnQgY29uc3QgR1dfRVZFTlRfUk9XX0NMSUNLID0gNjk7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfUk9XX0RPVUJMRV9DTElDSyA9IDUyO1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX0NFTExfQ0xJQ0sgPSA1MDAxO1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX0NFTExfRE9VQkxFX0NMSUNLID0gNTAwMjtcblxuLy8gZWRpdGluZyBjb25zdGFudHNcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RBUlRFRCA9IDUwMDM7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfQ0VMTF9FRElUSU5HX1NUT1BQRUQgPSA1MDA0O1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX0NFTExfVkFMVUVfQ0hBTkdFRCA9IDUwMDU7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RBUlRFRCAgPSA1MDA2O1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX1JPV19FRElUSU5HX1NUT1BQRUQgPSA1MDA3O1xuXG4vLyBzdGF0ZSBjb25zdGFudHNcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9HUklEX1NUQVRFX0NIQU5HRSA9IDUwMDg7XG5cbi8vIHJhbmdlIHNlbGVjdGlvblxuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX1JBTkdFX1NFTEVDVElPTl9DSEFOR0VEID0gNTAwOTsiLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X3NlbmRFdmVudCwgZ3dfcGFyc2VOb2RlRnJvbUV2ZW50IH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5pbXBvcnQgeyBnd19lc2NhcGUsIGd3X2dldEdyaWQgfSBmcm9tIFwiYXBpL3V0aWxpdGllc1wiO1xuaW1wb3J0IHtcbiAgR1dfRVZFTlRfQ0VMTF9FRElUSU5HX1NUQVJURUQsXG4gIEdXX0VWRU5UX0NFTExfRURJVElOR19TVE9QUEVELFxuICBHV19FVkVOVF9DRUxMX1ZBTFVFX0NIQU5HRUQsXG4gIEdXX0VWRU5UX1JPV19FRElUSU5HX1NUQVJURUQsXG4gIEdXX0VWRU5UX1JPV19FRElUSU5HX1NUT1BQRURcbn0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IENFTExfRURJVElOR19FVkVOVFNfTUFQID0ge1xuICAnY2VsbEVkaXRpbmdTdGFydGVkJyAgOiBHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RBUlRFRCxcbiAgJ2NlbGxFZGl0aW5nU3RvcHBlZCcgIDogR1dfRVZFTlRfQ0VMTF9FRElUSU5HX1NUT1BQRUQsXG4gICdjZWxsVmFsdWVDaGFuZ2VkJyAgOiBHV19FVkVOVF9DRUxMX1ZBTFVFX0NIQU5HRUQsXG59O1xuXG5jb25zdCBST1dfRURJVElOR19FVkVOVFNfTUFQID0ge1xuICAncm93RWRpdGluZ1N0YXJ0ZWQnICA6IEdXX0VWRU5UX1JPV19FRElUSU5HX1NUQVJURUQsXG4gICdyb3dFZGl0aW5nU3RvcHBlZCcgIDogR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RPUFBFRCxcbn07XG5cbi8qKlxuICogQW4gaGFuZGxlciBmb3IgdGhlIGdyaWQgYGNlbGxFZGl0aW5nU3RhcnRlZGAgLCBgY2VsbEVkaXRpbmdTdG9wcGVkYCBhbmQgXG4gKiBgY2VsbFZhbHVlQ2hhbmdlZGAgZXZlbnRzXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gZSAgVGhlIGV2ZW50IHBheWxvYWRcbiAqIFxuICogQGxpc3RlbnMgYWdHcmlkLmNlbGxFZGl0aW5nU3RhcnRlZFxuICogQGxpc3RlbnMgYWdHcmlkLmNlbGxFZGl0aW5nU3RvcHBlZFxuICogQGxpc3RlbnMgYWdHcmlkLmNlbGxWYWx1ZUNoYW5nZWRcbiAqIFxuICogQGZpcmVzIGd3LmNlbGxFZGl0aW5nU3RhcnRlZFxuICogQGZpcmVzIGd3LmNlbGxFZGl0aW5nU3RvcHBlZFxuICogQGZpcmVzIGd3LmNlbGxWYWx1ZUNoYW5nZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uQ2VsbEVkaXRpbmdFdmVudChpZCwgZSkge1xuXG4gIGNvbnN0IHZhbHVlID0gZ3dfZXNjYXBlKGUubmV3VmFsdWUpIHx8IGd3X2VzY2FwZShlLnZhbHVlKTtcbiAgY29uc3Qgb2xkVmFsdWUgPSBnd19lc2NhcGUoZS5vbGRWYWx1ZSkgfHwgZ3dfZXNjYXBlKGUubmV3VmFsdWUpIHx8IGd3X2VzY2FwZShlLnZhbHVlKTtcblxuICAvL2lmICh2YWx1ZSA9PT0gb2xkVmFsdWUpIHJldHVybjtcblxuICBjb25zdCBwYXJzZWQgPSBnd19wYXJzZU5vZGVGcm9tRXZlbnQoZSk7XG4gIGNvbnN0IHR5cGUgPSBlLnR5cGU7XG4gIGNvbnN0IGNvbElkID0gZS5jb2x1bW4uY29sSWQ7XG5cbiAgaWYgKHBhcnNlZCkge1xuICAgIGd3X3NlbmRFdmVudChcbiAgICAgIGd3X2dldEdyaWQoaWQpLm9wdGlvbnMuY29udGV4dCxcbiAgICAgIHtcbiAgICAgICAgJ3R5cGUnOiBgZ3cuJHt0eXBlfWAsXG4gICAgICAgICdkZXRhaWwnOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgcjogcGFyc2VkLCAvLyByb3dcbiAgICAgICAgICB2OiB2YWx1ZSwgLy8gbmV3IHZhbHVlXG4gICAgICAgICAgbzogb2xkVmFsdWUsIC8vIG9sZCB2YWx1ZVxuICAgICAgICAgIGM6IGNvbElkIC8vIGNvbHVtblxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIENFTExfRURJVElOR19FVkVOVFNfTUFQW3R5cGVdXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGhhbmRsZXIgZm9yIHRoZSBncmlkIGByb3dFZGl0aW5nU3RhcnRlZGAgLCBgcm93RWRpdGluZ1N0b3BwZWRgIGV2ZW50c1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZFxuICogQHBhcmFtIHtPYmplY3R9IGUgIFRoZSBldmVudCBwYXlsb2FkXG4gKiBcbiAqIEBsaXN0ZW5zIGFnR3JpZC5yb3dFZGl0aW5nU3RhcnRlZFxuICogQGxpc3RlbnMgYWdHcmlkLnJvd0VkaXRpbmdTdG9wcGVkXG4gKiBcbiAqIEBmaXJlcyBndy5yb3dFZGl0aW5nU3RhcnRlZFxuICogQGZpcmVzIGd3LnJvd0VkaXRpbmdTdG9wcGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19vblJvd0VkaXRpbmdFdmVudChpZCwgZSkge1xuICBjb25zdCBwYXJzZWQgPSBnd19wYXJzZU5vZGVGcm9tRXZlbnQoZSk7XG5cbiAgaWYgKHBhcnNlZCkge1xuICAgIGNvbnN0IHR5cGUgPSBlLnR5cGU7XG4gICAgZ3dfc2VuZEV2ZW50KFxuICAgICAgZ3dfZ2V0R3JpZChpZCkub3B0aW9ucy5jb250ZXh0LFxuICAgICAge1xuICAgICAgICAndHlwZSc6IGBndy4ke2UudHlwZX1gLFxuICAgICAgICAnZGV0YWlsJzogSlNPTi5zdHJpbmdpZnkocGFyc2VkKVxuICAgICAgfSxcbiAgICAgIFJPV19FRElUSU5HX0VWRU5UU19NQVBbdHlwZV1cbiAgICApO1xuICB9XG59XG5cbiIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHtcblx0Z3dfb25Sb3dEb3VibGVDbGlja2VkLFxuXHRnd19vblNlbGVjdGlvbkNoYW5nZWQsXG5cdGd3X29uQ2VsbENsaWNrRXZlbnQsXG5cdGd3X29uUmFuZ2VTZWxlY3Rpb25DaGFuZ2VkXG59IGZyb20gXCIuL3NlbGVjdGlvbnNcIjtcblxuaW1wb3J0IHtcblx0Z3dfb25DZWxsRWRpdGluZ0V2ZW50LFxuXHRnd19vblJvd0VkaXRpbmdFdmVudFxufSBmcm9tIFwiLi9lZGl0aW5nXCI7XG5cbmltcG9ydCB7XG5cdGd3X29uUmVhZHlFdmVudFxufSBmcm9tIFwiLi9zdGF0ZVwiO1xuXG5pbXBvcnQge1xuXHRnd19kZWJvdW5jZVxufSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcblxuZXhwb3J0IHtcblx0Z3dfb25Sb3dEb3VibGVDbGlja2VkLFxuXHRnd19vblNlbGVjdGlvbkNoYW5nZWQsXG5cdGd3X29uUmFuZ2VTZWxlY3Rpb25DaGFuZ2VkLFxuXHRnd19vbkNlbGxDbGlja0V2ZW50LFxuXHRnd19vbkNlbGxFZGl0aW5nRXZlbnQsXG5cdGd3X29uUm93RWRpdGluZ0V2ZW50LFxuXHRnd19vblJlYWR5RXZlbnQsXG5cdGd3X2RlYm91bmNlXG59OyIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfc2VuZEV2ZW50LCBnd19wYXJzZU5vZGVGcm9tRXZlbnQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcbmltcG9ydCB7IGd3X2VzY2FwZSwgZ3dfZ2V0R3JpZCB9IGZyb20gXCJhcGkvdXRpbGl0aWVzXCI7XG5pbXBvcnQge1xuICBHV19FVkVOVF9ST1dfQ0xJQ0ssXG4gIEdXX0VWRU5UX1JPV19ET1VCTEVfQ0xJQ0ssXG4gIEdXX0VWRU5UX0NFTExfQ0xJQ0ssXG4gIEdXX0VWRU5UX0NFTExfRE9VQkxFX0NMSUNLLFxuICBHV19FVkVOVF9SQU5HRV9TRUxFQ1RJT05fQ0hBTkdFRFxufSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuY29uc3QgQ0VMTF9DTElDS0lOR19FVkVOVFNfTUFQID0ge1xuICAnY2VsbENsaWNrZWQnOiBHV19FVkVOVF9DRUxMX0NMSUNLLFxuICAnY2VsbERvdWJsZUNsaWNrZWQnOiBHV19FVkVOVF9DRUxMX0RPVUJMRV9DTElDSyxcbn07XG5cbi8qKlxuICogQW4gaGFuZGxlciBmb3IgdGhlIGdyaWQgYHJvd0RvdWJsZUNsaWNrZWRgIGV2ZW50XG4gKiBcbiAqIFRoZSBmdW5jdGlvbiB3aWxsIHNlbmQgYSBiYmogZXZlbnQgd2l0aCBgR1dfTk9ERWAgYXMgcGF5bG9hZFxuICogXG4gKiBAcGFyYW0ge09iamVjdH0gZSBUaGUgZXZlbnQncyBwYXlsb2FkXG4gKiBcbiAqIEBsaXN0ZW5zIGFnR3JpZC5yb3dEb3VibGVDbGlja2VkXG4gKiBAZmlyZXMgZ3cucm93RG91YmxlQ2xpY2tcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uUm93RG91YmxlQ2xpY2tlZChlKSB7XG4gIGNvbnN0IGNvbnRleHQgPSBlLmFwaS5ncmlkT3B0aW9uc1dyYXBwZXIuZ3JpZE9wdGlvbnMuY29udGV4dDtcbiAgZ3dfc2VuZEV2ZW50KGNvbnRleHQsIHtcbiAgICAndHlwZSc6ICdndy5yb3dEb3VibGVDbGljaycsXG4gICAgJ2RldGFpbCc6ICcnXG4gIH0sIEdXX0VWRU5UX1JPV19ET1VCTEVfQ0xJQ0spO1xufVxuXG4vKipcbiAqIEEgaGFuZGxlciBmb3IgdGhlIGdyaWQgYHNlbGVjdGlvbkNoYW5nZWRgIGV2ZW50XG4gKiBcbiAqIEBwYXJhbSB7T2JqZWN0fSBlICBUaGUgZXZlbnQgcGF5bG9hZFxuICogXG4gKiBAbGlzdGVucyBhZ0dyaWQuc2VsZWN0aW9uQ2hhbmdlZFxuICogQGZpcmVzIGd3LnJvd1NlbGVjdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfb25TZWxlY3Rpb25DaGFuZ2VkKGUpIHtcbiAgY29uc3QgY29udGV4dCA9IGUuYXBpLmdyaWRPcHRpb25zV3JhcHBlci5ncmlkT3B0aW9ucy5jb250ZXh0O1xuICBnd19zZW5kRXZlbnQoY29udGV4dCwge1xuICAgICd0eXBlJzogJ2d3LnJvd1NlbGVjdCcsXG4gICAgJ2RldGFpbCc6ICcnXG4gIH0sIEdXX0VWRU5UX1JPV19DTElDSyk7XG59XG5cbi8qKlxuICogQSBoYW5kbGVyIGZvciB0aGUgZ3JpZCBgcmFuZ2VTZWxlY3Rpb25DaGFuZ2VkYCBldmVudFxuICogXG4gKiBAcGFyYW0ge09iamVjdH0gZSBcbiAqIFxuICogQGxpc3RlbnMgYWdHcmlkLnJhbmdlU2VsZWN0aW9uQ2hhbmdlZFxuICogQGZpcmVzIGd3LnJhbmdlU2VsZWN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19vblJhbmdlU2VsZWN0aW9uQ2hhbmdlZChlKSB7XG4gIGNvbnN0IGNvbnRleHQgPSBlLmFwaS5ncmlkT3B0aW9uc1dyYXBwZXIuZ3JpZE9wdGlvbnMuY29udGV4dDtcbiAgZ3dfc2VuZEV2ZW50KGNvbnRleHQsIHtcbiAgICAndHlwZSc6ICdndy5yYW5nZVNlbGVjdGlvbicsXG4gICAgJ2RldGFpbCc6ICcnXG4gIH0sIEdXX0VWRU5UX1JBTkdFX1NFTEVDVElPTl9DSEFOR0VEKTtcbn1cblxuLyoqXG4gKiBBIGhhbmRsZXIgZm9yIHRoZSBncmlkIGBjZWxsQ2xpY2tFdmVudGAgJiBgY2VsbERvdWJsZUNsaWNrZWRgIGV2ZW50XG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gZSAgVGhlIGV2ZW50IHBheWxvYWRcbiAqIFxuICogQGxpc3RlbnMgYWdHcmlkLmNlbGxDbGlja0V2ZW50XG4gKiBAbGlzdGVucyBhZ0dyaWQuY2VsbERvdWJsZUNsaWNrZWRcbiAqIFxuICogQGZpcmVzIGd3LmNlbGxDbGlja2VkXG4gKiBAZmlyZXMgZ3cuY2VsbERvdWJsZUNsaWNrZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uQ2VsbENsaWNrRXZlbnQoaWQsIGUpIHtcbiAgY29uc3QgcGFyc2VkID0gZ3dfcGFyc2VOb2RlRnJvbUV2ZW50KGUpO1xuXG4gIGlmIChwYXJzZWQpIHtcbiAgICBjb25zdCB0eXBlID0gZS50eXBlO1xuICAgIGd3X3NlbmRFdmVudChnd19nZXRHcmlkKGlkKS5vcHRpb25zLmNvbnRleHQsIHtcbiAgICAgICd0eXBlJzogYGd3LiR7ZS50eXBlfWAsXG4gICAgICAnZGV0YWlsJzogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICByOiBwYXJzZWQsIC8vIHJvd1xuICAgICAgICB2OiBnd19lc2NhcGUoZS52YWx1ZSksICAvLyBuZXcgdmFsdWVcbiAgICAgICAgbzogZ3dfZXNjYXBlKGUudmFsdWUpLCAvLyBvZGwgdmFsdWVcbiAgICAgICAgYzogZS5jb2x1bW4uY29sSWQgLy8gY29sdW1uc1xuICAgICAgfSlcbiAgICB9LCBDRUxMX0NMSUNLSU5HX0VWRU5UU19NQVBbdHlwZV0pO1xuICB9XG59XG4iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X3NlbmRFdmVudCwgZ3dfZGVib3VuY2UgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiYXBpL3V0aWxpdGllc1wiO1xuaW1wb3J0IHtcbiAgR1dfRVZFTlRfR1JJRF9TVEFURV9DSEFOR0Vcbn0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbi8qKlxuICogT24gUmVhZHkgRXZlbnQgXG4gKiBcbiAqIFRoZSBtZXRob2Qgd2lsbCBpZ25vcmUgZmlyc3QgcmVhZHkgZXZlbnQgYW5kIHRoZW4gcmVnaXN0ZXIgYSBkZWJvdW5jZWQgc3RhdGVcbiAqIGNhbGxiYWNrIHRvIHNlbmQgc3RhdGUgZXZlbnRzIHRvIEJCalxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZFxuICogQHBhcmFtIHtPYmplY3R9IGUgIFRoZSBldmVudCBwYXlsb2FkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19vblJlYWR5RXZlbnQoaWQsIGUpIHtcblxuICAvLyByZWdpc3RlciBzdGF0ZSBkZWJvdW5jZSBtb25pdG9yIFxuICBjb25zdCBzdGF0ZURlYm91bmNlID0gZ3dfZGVib3VuY2UoY2hhbmdlRXZlbnQgPT4ge1xuXG4gICAgLy8gV2Ugc2tpcCB0aGUgZmlyc3QgcmVuZGVyIHN0YXRlIGNoYW5nZXNcbiAgICAvLyBpZiAoIWd3X2dldEdyaWQoaWQpLmhhc093blByb3BlcnR5KCdpc0ZpcnN0UmVuZGVyJykpIHtcbiAgICAvLyBcdGd3X2dldEdyaWQoaWQpLmlzRmlyc3RSZW5kZXIgPSB0cnVlO1xuICAgIC8vIFx0cmV0dXJuO1xuICAgIC8vIH1cblxuICAgIGd3X29uU3RhdGVDaGFuZ2VkKGlkLCBjaGFuZ2VFdmVudCk7XG4gIH0sIDUwMCk7XG5cbiAgW1xuICAgICdzb3J0Q2hhbmdlZCcsXG4gICAgJ2ZpbHRlckNoYW5nZWQnLFxuICAgICdjb2x1bW5WaXNpYmxlJyxcbiAgICAnY29sdW1uUGlubmVkJyxcbiAgICAnY29sdW1uUmVzaXplZCcsXG4gICAgJ2NvbHVtbk1vdmVkJyxcbiAgICAnbmV3Q29sdW1uc0xvYWRlZCcsXG4gICAgJ2dyaWRDb2x1bW5zQ2hhbmdlZCcsXG4gICAgJ2Rpc3BsYXllZENvbHVtbnNDaGFuZ2VkJyxcbiAgICAndmlydHVhbENvbHVtbnNDaGFuZ2VkJyxcbiAgICAnY29sdW1uRXZlcnl0aGluZ0NoYW5nZWQnLFxuICAgIC8vJ2dyaWRTaXplQ2hhbmdlZCcsXG4gICAgJ2V4cGFuZE9yQ29sbGFwc2VBbGwnLFxuICAgIC8vJ3Rvb2xQYW5lbFZpc2libGVDaGFuZ2VkJ1xuICBdLmZvckVhY2goZXZlbnQgPT4ge1xuICAgIGd3X2dldEdyaWQoaWQpLm9wdGlvbnMuYXBpLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnQsIHN0YXRlRGVib3VuY2UpO1xuICB9KTtcbn1cblxuLyoqXG4gKiBBbiBoYW5kbGVyIGZvciB0aGUgZ3JpZCBgc3RhdGVDaGFuZ2VkYCBldmVudHNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkJ3MgaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBlICBUaGUgZXZlbnQgcGF5bG9hZFxuICogXG4gKiBAbGlzdGVucyBhZ0dyaWQuc3RhdGVDaGFuZ2VkXG4gKiBAbGlzdGVucyBhZ0dyaWQucm93RWRpdGluZ1N0b3BwZWRcbiAqIFxuICogQGZpcmVzIGd3LnN0YXRlQ2hhbmdlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfb25TdGF0ZUNoYW5nZWQoaWQsIGUpIHtcbiAgZ3dfc2VuZEV2ZW50KFxuICAgIGd3X2dldEdyaWQoaWQpLm9wdGlvbnMuY29udGV4dCxcbiAgICB7XG4gICAgICAndHlwZSc6ICdndy5zdGF0ZUNoYW5nZWQnLFxuICAgICAgJ2RldGFpbCc6IFtdXG4gICAgfSxcbiAgICBHV19FVkVOVF9HUklEX1NUQVRFX0NIQU5HRVxuICApO1xufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfZ2V0RG9jdW1lbnQgfSBmcm9tIFwiYXBpL3V0aWxpdGllc1wiO1xuXG4vKiogaHR0cHM6Ly9kYXZpZHdhbHNoLm5hbWUvamF2YXNjcmlwdC1kZWJvdW5jZS1mdW5jdGlvbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2RlYm91bmNlKGZ1bmMsIHdhaXQsIGltbWVkaWF0ZSkge1xuICB2YXIgdGltZW91dDtcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgY29udGV4dCA9IHRoaXMsIGFyZ3MgPSBhcmd1bWVudHM7XG4gICAgdmFyIGxhdGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgdGltZW91dCA9IG51bGw7XG4gICAgICBpZiAoIWltbWVkaWF0ZSkgZnVuYy5hcHBseShjb250ZXh0LCBhcmdzKTtcbiAgICB9O1xuICAgIHZhciBjYWxsTm93ID0gaW1tZWRpYXRlICYmICF0aW1lb3V0O1xuICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcbiAgICB0aW1lb3V0ID0gc2V0VGltZW91dChsYXRlciwgd2FpdCk7XG4gICAgaWYgKGNhbGxOb3cpIGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XG4gIH07XG59XG5cbi8qKlxuICogU2VuZCBhbiBldmVudCB0byBCQmogc2lkZSBcbiAqIFxuICogVGhlIGZ1bmN0aW9uIHdpbGwgdHJpZ2dlciBhIGN1c3RvbSBjbGljayBldmVudCBvbiB0aGUgYGV2ZW50LWJyaWRnZS0ke2lkfWAgZGl2XG4gKiB0aGVuIHRoZSBkaXYgd2lsbCB1c2UgYmFzaXNEaXNwYXRjaEN1c3RvbUV2ZW50IHRvIGRpc3BhdGNoIHRoZSBldmVudCB0byBCQmpcbiAqIFxuICogQHBhcmFtIHtBcnJheX0gY29udGV4dCB0aGUgZ3JpZCdzIGNvbnRleHRcbiAqIEBwYXJhbSB7Kn0gcGF5bG9hZCB0aGUgZXZlbnQgcGF5bG9hZFxuICogQHBhcmFtIHtTdHJpbmd9IGV2ZW50SWQgdGhlIGV2ZW50J3MgaWQgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZW5kRXZlbnQoY29udGV4dCwgcGF5bG9hZCA9IHt9LCBldmVudElkID0gW10pIHtcbiAgY29uc3QgcmVnaXN0ZXJlZEludGVyZXN0cyA9IGNvbnRleHQuaW50ZXJlc3RzIHx8IFtdO1xuXG4gIGlmIChyZWdpc3RlcmVkSW50ZXJlc3RzLmluY2x1ZGVzKGV2ZW50SWQpKSB7XG4gICAgY29uc3QgZGl2ID0gZ3dfZ2V0RG9jdW1lbnQoKS5nZXRFbGVtZW50QnlJZChgZXZlbnQtYnJpZGdlLSR7Y29udGV4dC5pZH1gKTtcbiAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudCgnY2xpY2snKTtcblxuICAgIGV2ZW50LnBheWxvYWQgPSBwYXlsb2FkO1xuICAgIGRpdi5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgfVxufVxuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IEJCakdyaWRFeFdpZGdldFJvd1xuICogXG4gKiBAcHJvcGVydHkge251bWJlcn0gaWQgXG4gKiBAcHJvcGVydHkge251bWJlcn0gaW5kZXggXG4gKiBAcHJvcGVydHkge251bWJlcn0gcGFyZW50S2V5IFxuICogQHByb3BlcnR5IHtudW1iZXJ9IGNoaWxkSW5kZXggXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHNlbGVjdGVkIFxuICovXG5cbi8qKlxuICogUGFyc2UgYSBub2RlIGFzIEJCakdyaWRFeFdpZGdldFJvd1xuICogXG4gKiBAcGFyYW0ge09iamVjdH0gbm9kZSBhZyBncmlkIG5vZGVcbiAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0ICBhZyBncmlkIGNvbnRleHRcbiAqIFxuICogQHJldHVybnMge0JCakdyaWRFeFdpZGdldFJvd3xCb29sZWFufSBvYmplY3QgZm9ybWF0dGVkIGFzIEJCakdyaWRFeFdpZGdldFJvdy5cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgaWYgdGhlIG5vZGUgaXMgZm9yIGdyb3VwIG5vZGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3BhcnNlTm9kZShub2RlLCBjb250ZXh0KSB7XG5cbiAgaWYgKHRydWUgPT09IG5vZGUuZ3JvdXApIHJldHVybiBmYWxzZTsgLy8gd2UgZG8gbm90IG1hbmFnZSBncm91cHNcblxuICBjb25zdCByb3dOb2RlSWQgPSBjb250ZXh0Lmhhc093blByb3BlcnR5KCdnZXRSb3dOb2RlSWQnKSAmJiBub2RlLmRhdGFbY29udGV4dC5nZXRSb3dOb2RlSWRdID9cbiAgICBub2RlLmRhdGFbY29udGV4dC5nZXRSb3dOb2RlSWRdIDogJyc7XG5cbiAgcmV0dXJuIHtcbiAgICBpOiByb3dOb2RlSWQgPyByb3dOb2RlSWQgOiBub2RlLmlkLCAvLyBpZFxuICAgIHg6IHJvd05vZGVJZCwgLy8gaW5kZXhcbiAgICBwOiBub2RlLmhhc093blByb3BlcnR5KCdwYXJlbnQnKSAmJiBub2RlLnBhcmVudC5oYXNPd25Qcm9wZXJ0eSgna2V5JykgP1xuICAgICAgbm9kZS5wYXJlbnQua2V5IDogJycsIC8vIHBhcmVudCBrZXlcbiAgICBjOiBub2RlLmNoaWxkSW5kZXgsIC8vY2hpbGRJbmRleFxuICAgIHM6IEJvb2xlYW4obm9kZS5zZWxlY3RlZCksIC8vIHNlbGVjdGVkIFxuICB9O1xufVxuXG4vKipcbiAqIFBhcnNlIG5vZGUgZnJvbSBldmVudCBcbiAqIFxuICogUGFyc2Ugbm9kZSBpbiB0aGUgcGFTc2VkIGV2ZW50IGFzIEJCakdyaWRFeFdpZGdldFJvd1xuICogXG4gKiBAcGFyYW0ge09iamVjdH0gZVxuICogXG4gKiBAcmV0dXJucyB7QkJqR3JpZEV4V2lkZ2V0Um93fVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcGFyc2VOb2RlRnJvbUV2ZW50KGUpIHtcbiAgcmV0dXJuIGd3X3BhcnNlTm9kZShlLm5vZGUsIGUuY29udGV4dCk7XG59XG4iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCAnZXhwb3NlLWxvYWRlcj9CYXNpcy5BZ0dyaWRDb21wb25lbnRzIWFnLWdyaWQtY29tcG9uZW50cy9kaXN0L2FnYy1iYXNpYy5idW5kbGUuanMnO1xuXG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy1ncmlkLmNzcycpO1xuXG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1ib290c3RyYXAuY3NzJyk7XG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1ibHVlLmNzcycpO1xucmVxdWlyZSgnYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZGFyay5jc3MnKTtcbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWZyZXNoLmNzcycpO1xucmVxdWlyZSgnYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtbWF0ZXJpYWwuY3NzJyk7XG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1iYWxoYW0uY3NzJyk7XG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1iYWxoYW0tZGFyay5jc3MnKTtcblxucmVxdWlyZSgnLi9zdHlsZS9jbGFzc2VzLmNzcycpO1xuXG5leHBvcnQgKiBmcm9tICcuL3BvbHlmaWxscy5qcyc7XG5leHBvcnQgKiBmcm9tIFwiLi9hcGlcIjtcbiIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuLyoqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9DdXN0b21FdmVudC9DdXN0b21FdmVudCAgKi9cbihmdW5jdGlvbiAoKSB7XG4gIGlmICh0eXBlb2Ygd2luZG93LkN1c3RvbUV2ZW50ID09PSBcImZ1bmN0aW9uXCIpIHJldHVybiBmYWxzZTsgLy9JZiBub3QgSUVcblxuICBmdW5jdGlvbiBDdXN0b21FdmVudChldmVudCwgcGFyYW1zKSB7XG4gICAgcGFyYW1zID0gcGFyYW1zIHx8IHsgYnViYmxlczogZmFsc2UsIGNhbmNlbGFibGU6IGZhbHNlLCBkZXRhaWw6IHVuZGVmaW5lZCB9O1xuICAgIHZhciBldnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnQ3VzdG9tRXZlbnQnKTtcbiAgICBldnQuaW5pdEN1c3RvbUV2ZW50KGV2ZW50LCBwYXJhbXMuYnViYmxlcywgcGFyYW1zLmNhbmNlbGFibGUsIHBhcmFtcy5kZXRhaWwpO1xuICAgIHJldHVybiBldnQ7XG4gIH1cblxuICBDdXN0b21FdmVudC5wcm90b3R5cGUgPSB3aW5kb3cuRXZlbnQucHJvdG90eXBlO1xuXG4gIHdpbmRvdy5DdXN0b21FdmVudCA9IEN1c3RvbUV2ZW50O1xufSkoKTtcbiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9jbGFzc2VzLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9jbGFzc2VzLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2NsYXNzZXMuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59Il0sInNvdXJjZVJvb3QiOiIifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLWdyaWQuY3NzP2I0MzYiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzcz9jZGMxIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1iYWxoYW0uY3NzP2I5MzAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJsdWUuY3NzPzA5NTQiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3M/M2Y1NiIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZGFyay5jc3M/OGM0ZCIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZnJlc2guY3NzPzdkMDAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLW1hdGVyaWFsLmNzcz8xMWFlIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbXBvbmVudHMvZGlzdC9hZ2MtYmFzaWMuYnVuZGxlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL2FycmF5L2Zvci1lYWNoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL2FycmF5L2luY2x1ZGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL251bWJlci9pcy1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ZuL3N0cmluZy9zdGFydHMtd2l0aC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hLWZ1bmN0aW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FkZC10by11bnNjb3BhYmxlcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hbi1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktaW5jbHVkZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktbWV0aG9kcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hcnJheS1zcGVjaWVzLWNvbnN0cnVjdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FycmF5LXNwZWNpZXMtY3JlYXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NvZi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19jb3JlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2N0eC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19kZWZpbmVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2Rlc2NyaXB0b3JzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2RvbS1jcmVhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZXhwb3J0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2ZhaWxzLWlzLXJlZ2V4cC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mYWlscy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mdW5jdGlvbi10by1zdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZ2xvYmFsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2hhcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19oaWRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2llOC1kb20tZGVmaW5lLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2lvYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtaW50ZWdlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pcy1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtcmVnZXhwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2xpYnJhcnkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWRwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fcmVkZWZpbmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc2hhcmVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmljdC1tZXRob2QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc3RyaW5nLWNvbnRleHQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8tYWJzb2x1dGUtaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8taW50ZWdlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1pb2JqZWN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3RvLWxlbmd0aC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8tcHJpbWl0aXZlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3VpZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL193a3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuZm9yLWVhY2guanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubnVtYmVyLmlzLWludGVnZXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLnN0YXJ0cy13aXRoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM3LmFycmF5LmluY2x1ZGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9kZWVwLXBhcnNlLWpzb24vaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tcG9uZW50cy9kaXN0L2FnYy1iYXNpYy5idW5kbGUuanMtZXhwb3NlZCIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvanNzL2pzcy5qcy1leHBvc2VkIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9qc3MvanNzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX1N5bWJvbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19hcHBseS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19hcnJheUxpa2VLZXlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2FycmF5TWFwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Fzc2lnblZhbHVlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VBc3NpZ25WYWx1ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlR2V0VGFnLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VJc0FyZ3VtZW50cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlSXNOYXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fYmFzZUlzVHlwZWRBcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlS2V5cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlS2V5c0luLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VQcm9wZXJ0eU9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VSZXN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VTZXRUb1N0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlVGltZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fYmFzZVRvU3RyaW5nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2Jhc2VVbmFyeS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19iYXNlVmFsdWVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2NvcHlPYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fY29yZUpzRGF0YS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19jcmVhdGVBc3NpZ25lci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19jdXN0b21EZWZhdWx0c0Fzc2lnbkluLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2RlZmluZVByb3BlcnR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2VzY2FwZUh0bWxDaGFyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2VzY2FwZVN0cmluZ0NoYXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fZnJlZUdsb2JhbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19nZXROYXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fZ2V0UHJvdG90eXBlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2dldFJhd1RhZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19nZXRWYWx1ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19pc0luZGV4LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzSXRlcmF0ZWVDYWxsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzTWFza2VkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX2lzUHJvdG90eXBlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX25hdGl2ZUtleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fbmF0aXZlS2V5c0luLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX25vZGVVdGlsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX29iamVjdFRvU3RyaW5nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX292ZXJBcmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fb3ZlclJlc3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fcmVFc2NhcGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fcmVFdmFsdWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL19yZUludGVycG9sYXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvX3Jvb3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fc2V0VG9TdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fc2hvcnRPdXQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9fdG9Tb3VyY2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9hc3NpZ25JbldpdGguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9hdHRlbXB0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvY29uc3RhbnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9lcS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2VzY2FwZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lkZW50aXR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNBcmd1bWVudHMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0FycmF5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNBcnJheUxpa2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0J1ZmZlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzRXJyb3IuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc0Z1bmN0aW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9sb2Rhc2gvaXNMZW5ndGguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc09iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzT2JqZWN0TGlrZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzUGxhaW5PYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9pc1N5bWJvbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2lzVHlwZWRBcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL2tleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9rZXlzSW4uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC9zdHViRmFsc2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC90ZW1wbGF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbG9kYXNoL3RlbXBsYXRlU2V0dGluZ3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xvZGFzaC90b1N0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctZ3JpZC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtYmFsaGFtLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtYmx1ZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWRhcmsuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9hZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1mcmVzaC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLW1hdGVyaWFsLmNzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc3R5bGUvY2xhc3Nlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL3VybHMuanMiLCJ3ZWJwYWNrOi8vLyh3ZWJwYWNrKS9idWlsZGluL2dsb2JhbC5qcyIsIndlYnBhY2s6Ly8vKHdlYnBhY2spL2J1aWxkaW4vbW9kdWxlLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvY2VsbHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9jaGFydHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9jb2x1bW5zLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvY29udGV4dC5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvaW5pdC5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL2pzcy5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXBpL21lbnVzLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvb3ZlcmxheXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9yb3dzLmpzIiwid2VicGFjazovLy8uL3NyYy9hcGkvc3RhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS9zdGF0dXNiYXIuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS90b29scGFuZWwuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2FwaS91dGlsaXRpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9jb25zdGFudHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9lZGl0aW5nLmpzIiwid2VicGFjazovLy8uL3NyYy9ldmVudHMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy9zZWxlY3Rpb25zLmpzIiwid2VicGFjazovLy8uL3NyYy9ldmVudHMvc3RhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2V2ZW50cy91dGlsaXRpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL2luZGV4LmpzIiwid2VicGFjazovLy8uL3NyYy9wb2x5ZmlsbHMuanMiLCJ3ZWJwYWNrOi8vLy4vc3JjL3N0eWxlL2NsYXNzZXMuY3NzP2I3MzgiXSwibmFtZXMiOlsiZGVlcFBhcnNlSnNvbiIsImpzb25TdHJpbmciLCJKU09OIiwicGFyc2UiLCJlcnIiLCJBcnJheSIsImlzQXJyYXkiLCJtYXAiLCJ2YWwiLCJPYmplY3QiLCJrZXlzIiwicmVkdWNlIiwib2JqIiwia2V5IiwibW9kdWxlIiwiZXhwb3J0cyIsImd3X3N0YXJ0RWRpdGluZ0NlbGwiLCJpZCIsInJvdyIsImNvbEtleSIsImNoYXIiLCJvcHRpb25zIiwiYXBpIiwic2V0Rm9jdXNlZENlbGwiLCJOdW1iZXIiLCJzdGFydEVkaXRpbmdDZWxsIiwicm93SW5kZXgiLCJrZXlQcmVzcyIsImNoYXJQcmVzcyIsImd3X3N0b3BFZGl0aW5nIiwiY2FuY2VsIiwic3RvcEVkaXRpbmciLCJnd19lZGl0TmV4dENlbGwiLCJ0YWJUb05leHRDZWxsIiwiZ3dfZWRpdFByZXZpb3VzQ2VsbCIsInRhYlRvUHJldmlvdXNDZWxsIiwiZ3dfc2V0Rm9jdXNlZENlbGwiLCJjb2x1bW4iLCJyIiwiaXNJbnRlZ2VyIiwiZ2V0Um93Tm9kZSIsImMiLCJjb2x1bW5BcGkiLCJnZXRBbGxHcmlkQ29sdW1ucyIsImNvbElkIiwiZ3dfZ2V0Q2hhcnRUb29sYmFySXRlbXMiLCJwYXJhbXMiLCJncmlkT3B0aW9uc1dyYXBwZXIiLCJncmlkT3B0aW9ucyIsImNvbnRleHQiLCJjaGFydFRvb2xiYXJJdGVtcyIsInJlcXVpcmUiLCJnd19leHRlbmRDb2x1bW5EZWZpbml0aW9ucyIsImRlZmluaXRpb25zIiwiaSIsImRlZiIsImNoZWNrYm94U2VsZWN0aW9uIiwiZ3dfaXNTaG93U2VsZWN0aW9uQ2hlY2tib3giLCJoZWFkZXJDaGVja2JveFNlbGVjdGlvbiIsImd3X2lzSGVhZGVyQ2hlY2tib3hTZWxlY3Rpb24iLCJnd19zZXRDb2x1bW5EZWZpbml0aW9ucyIsImdyaWQiLCJkZWVwUGFyc2VkRGVmaW5pdGlvbnMiLCJzdHJpbmdpZnkiLCJzZXRDb2x1bW5EZWZzIiwiY29sdW1uRGVmcyIsImd3X3NpemVDb2x1bW5zVG9GaXQiLCJzaXplQ29sdW1uc1RvRml0IiwiZ3dfc2V0VmlzaWJsZUNvbHVtbiIsImNvbHVtbklkIiwiZW5zdXJlQ29sdW1uVmlzaWJsZSIsImd3X3NldENvbHVtbldpZHRoIiwid2lkdGgiLCJzZXRDb2x1bW5XaWR0aCIsImd3X3BpbkNvbHVtbiIsInBpbiIsInNldENvbHVtblBpbm5lZCIsImd3X21vdmVDb2x1bW4iLCJ0b0luZGV4IiwibW92ZUNvbHVtbiIsInBhcmFtIiwic2hvd1NlbGVjdGlvbkNoZWNrYm94IiwiY29sdW1ucyIsImdldEFsbERpc3BsYXllZFZpcnR1YWxDb2x1bW5zIiwiY29sRGVmIiwiZmllbGQiLCJzaG93SGVhZGVyU2VsZWN0aW9uQ2hlY2tib3giLCJnd19hZGRSb3dHcm91cENvbHVtbiIsInNldCIsInNwbGl0IiwidHJpbSIsImd3X3JlbW92ZVJvd0dyb3VwQ29sdW1uIiwicmVtb3ZlUm93R3JvdXBDb2x1bW5zIiwiZ3dfZ2V0UGl2b3RNb2RlIiwiaXNQaXZvdE1vZGUiLCJnd19zZXRQaXZvdE1vZGUiLCJtb2RlIiwic2V0UGl2b3RNb2RlIiwiZ3dfYWRkUGl2b3RDb2x1bW5zIiwiZ3dfcmVtb3ZlUGl2b3RDb2x1bW5zIiwicmVtb3ZlUGl2b3RDb2x1bW5zIiwiZ3dfYWRkVmFsdWVDb2x1bW5zIiwiYWRkVmFsdWVDb2x1bW5zIiwiZ3dfcmVtb3ZlVmFsdWVDb2x1bW5zIiwicmVtb3ZlVmFsdWVDb2x1bW5zIiwiZ3dfdXBkYXRlQ29udGV4dCIsInZhbHVlIiwidGVtcGxhdGUiLCJnd19pbml0IiwibGljZW5zZSIsImRhdGEiLCJhZ0dyaWQiLCJMaWNlbnNlTWFuYWdlciIsInNldExpY2Vuc2VLZXkiLCJjb250YWluZXIiLCJnZXRFbGVtZW50QnlJZCIsImlubmVySFRNTCIsInBhcnNlZE9wdGlvbnMiLCJnd19wYXJzZU9wdGlvbnMiLCJyb3dEYXRhIiwiaW5zdGFuY2UiLCJHcmlkIiwiY29uc29sZSIsImxvZyIsImRlZXBQYXJzZWRPcHRpb25zIiwiZ2V0RGF0YVBhdGhUZW1wbGF0ZSIsImdldERhdGFQYXRoIiwiZGVib3VuY2VEdXJhdGlvbiIsImZpbmFsT3B0aW9ucyIsImdldERvY3VtZW50Iiwib25DZWxsRWRpdGluZ1N0YXJ0ZWQiLCJlIiwib25DZWxsRWRpdGluZ1N0b3BwZWQiLCJvbkNlbGxWYWx1ZUNoYW5nZWQiLCJvblJvd0VkaXRpbmdTdGFydGVkIiwib25Sb3dFZGl0aW5nU3RvcHBlZCIsIm9uUm93VmFsdWVDaGFuZ2VkIiwib25DZWxsQ2xpY2tlZCIsIm9uQ2VsbERvdWJsZUNsaWNrZWQiLCJvbkdyaWRSZWFkeSIsImdldFJvd05vZGVJZCIsImd3X2dldFJvd05vZGVJZCIsImdldENvbnRleHRNZW51SXRlbXMiLCJib2R5IiwiZ3dfb25Sb3dEb3VibGVDbGlja2VkIiwiZ3dfb25TZWxlY3Rpb25DaGFuZ2VkIiwiZ3dfb25SYW5nZVNlbGVjdGlvbkNoYW5nZWQiLCJCYXNpcyIsIkFnR3JpZENvbXBvbmVudHMiLCJCYXNpY0Jvb2xlYW5zUmVuZGVyZXIiLCJCYXNpY0Jvb2xlYW5zRWRpdG9yIiwiQmFzaWNCb29sZWFuc0ZpbHRlciIsIkJhc2ljTnVtYmVyc0VkaXRvciIsIkJhc2ljRGF0ZVRpbWVzRWRpdG9yIiwiQmFzaWNEYXRlVGltZXNGaWx0ZXIiLCJCYXNpY0ltYWdlc1JlbmRlcmVyIiwiY29tcGlsZWQiLCJfX1RFTVBMQVRFX18iLCJoYXNPd25Qcm9wZXJ0eSIsIm5hdmlnYXRlVG9OZXh0Q2VsbCIsInRyZWVEYXRhIiwiZ2V0RGF0YVBhdGhUZW1wbGF0ZUNvbXBsaWVkIiwiZm9ybWF0U2VsZWN0b3IiLCJzZWxlY3RvciIsInN0YXJ0c1dpdGgiLCJnd19zZXRTdHlsZSIsInJ1bGVzIiwianNzIiwiZm9yRG9jdW1lbnQiLCJnd19yZW1vdmVTdHlsZSIsInJlbW92ZSIsImd3X2dldENvbnRleHRNZW51IiwiZ3JpZElkIiwiYnVpbGRDb250ZXh0TWVudUFjdGlvbiIsIm5vZGUiLCJ2IiwicGFyc2VNZW51IiwibWVudSIsImZvckVhY2giLCJpdGVtIiwiY29udGV4dE1lbnUiLCJnd19zaG93TG9hZGluZ092ZXJsYXkiLCJzaG93TG9hZGluZ092ZXJsYXkiLCJnd19zaG93Tm9Sb3dzT3ZlcmxheSIsInNob3dOb1Jvd3NPdmVybGF5IiwiZ3dfaGlkZU92ZXJsYXkiLCJoaWRlT3ZlcmxheSIsImd3X3NldFF1aWNrRmlsdGVyIiwiZmlsdGVyIiwic2V0UXVpY2tGaWx0ZXIiLCJnd19leHBhbmRBbGwiLCJleHBhbmRBbGwiLCJnd19jb2xsYXBzZUFsbCIsImNvbGxhcHNlQWxsIiwiZ3dfc2V0VmlzaWJsZVJvdyIsImluZGV4IiwicG9zaXRpb24iLCJlbnN1cmVJbmRleFZpc2libGUiLCJnd19uYXZpZ2F0ZVRvTmV4dFJvdyIsInByZXZpb3VzQ2VsbCIsInByZXZpb3VzQ2VsbFBvc2l0aW9uIiwic3VnZ2VzdGVkTmV4dENlbGwiLCJuZXh0Q2VsbFBvc2l0aW9uIiwiS0VZX1VQIiwiS0VZX0RPV04iLCJLRVlfTEVGVCIsIktFWV9SSUdIVCIsImZvckVhY2hOb2RlIiwic2V0U2VsZWN0ZWQiLCJFcnJvciIsImd3X3NldFJvd3NEYXRhIiwianNvbiIsInNldFJvd0RhdGEiLCJyZWZyZXNoQ2xpZW50U2lkZVJvd01vZGVsIiwiZ3dfc2V0Um93RGF0YSIsInVwZGF0ZVJvd0RhdGEiLCJ1cGRhdGUiLCJnd19yZW1vdmVSb3dzIiwiaW5kZXhlcyIsIml0ZW1zIiwicHVzaCIsImd3X2FkZFJvd3MiLCJyb3dzIiwiYWRkIiwiYWRkSW5kZXgiLCJnd19zZXRSb3dzSGVpZ2h0IiwiaGVpZ2h0Iiwic2V0Um93SGVpZ2h0Iiwib25Sb3dIZWlnaHRDaGFuZ2VkIiwiZ3dfc2V0Um93SGVpZ2h0IiwiZ2V0RGlzcGxheWVkUm93QXRJbmRleCIsIndhcm4iLCJnd19zZXRTZWxlY3RlZFJvd3MiLCJmb3JFYWNoTm9kZUFmdGVyRmlsdGVyQW5kU29ydCIsImluZGV4T2YiLCJleHBhbmRlZCIsIm9uR3JvdXBFeHBhbmRlZE9yQ29sbGFwc2VkIiwiZ3dfc2VsZWN0QWxsIiwiZmlsdGVyZWQiLCJzZWxlY3RBbGxGaWx0ZXJlZCIsInNlbGVjdEFsbCIsImd3X2Rlc2VsZWN0QWxsIiwiZGVzZWxlY3RBbGxGaWx0ZXJlZCIsImRlc2VsZWN0QWxsIiwiZ3dfZ2V0U2VsZWN0ZWRSb3dzIiwibm9kZXMiLCJnZXRTZWxlY3RlZE5vZGVzIiwicGFyc2VkIiwiZ3dfZ2V0U2VsZWN0ZWRSb3ciLCJsZW5ndGgiLCJnd19nZXRSYW5nZVNlbGVjdGlvbnMiLCJyYW5nZXMiLCJnZXRDZWxsUmFuZ2VzIiwibW9kZWwiLCJnZXRNb2RlbCIsInJlc3VsdCIsInJhbmdlIiwiYWNjdW11bGF0b3IiLCJjdXJyZW50IiwiQm9vbGVhbiIsInN0YXJJbmRleCIsIk1hdGgiLCJtaW4iLCJzdGFydFJvdyIsImVuZFJvdyIsImVuZEluZGV4IiwibWF4IiwiZ2V0Um93IiwicGFyc2VkTm9kZSIsImd3X2FkZENlbGxSYW5nZSIsInByIiwic3RhcnQiLCJlbmQiLCJhZGRDZWxsUmFuZ2UiLCJyb3dTdGFydEluZGV4IiwiYWJzIiwicm93RW5kSW5kZXgiLCJnd19jbGVhclJhbmdlU2VsZWN0aW9uIiwiY2xlYXJSYW5nZVNlbGVjdGlvbiIsImd3X3NldFN0YXRlIiwic3RhdGUiLCJzZXRDb2x1bW5TdGF0ZSIsInNldENvbHVtbkdyb3VwU3RhdGUiLCJncm91cHMiLCJzZXRTb3J0TW9kZWwiLCJzb3J0Iiwic2V0RmlsdGVyTW9kZWwiLCJmaWx0ZXJzIiwiZ3dfZ2V0U3RhdGUiLCJnZXRDb2x1bW5TdGF0ZSIsImdldENvbHVtbkdyb3VwU3RhdGUiLCJnZXRTb3J0TW9kZWwiLCJnZXRGaWx0ZXJNb2RlbCIsImd3X3NldFN0YXR1c2JhckNvbXBvbmVudFZpc2liaWxpdHkiLCJ2aXNpYmlsaXR5IiwiZ2V0U3RhdHVzUGFuZWwiLCJzZXRWaXNpYmxlIiwiZ3dfc2V0U2lkZUJhclZpc2libGUiLCJzZXRTaWRlQmFyVmlzaWJsZSIsImd3X29wZW5Ub29scGFuZWwiLCJ0b29scGFuZWxJZCIsIm9wZW5Ub29sUGFuZWwiLCJnd19jbG9zZVRvb2xwYW5lbCIsImNsb3NlVG9vbFBhbmVsIiwiZ3dfc2V0RnVuY3Rpb25zUmVhZE9ubHkiLCJyZWFkb25seSIsInNldEZ1bmN0aW9uc1JlYWRPbmx5IiwiZ3dfZ2V0RG9jdW1lbnQiLCIkZG9jIiwiZG9jdW1lbnQiLCJnd19nZXRXaW5kb3ciLCIkd2luIiwid2luZG93IiwiZ3dfZXNjYXBlIiwidW5kZWZpbmVkIiwiZ3dfZ2V0R3JpZCIsIkJCakdyaWRFeFdpZGdldCIsInJlZ2lzdGVyZWRHcmlkcyIsIlR5cGVFcnJvciIsImd3X2FkZEdyaWQiLCJHV19FVkVOVF9ST1dfQ0xJQ0siLCJHV19FVkVOVF9ST1dfRE9VQkxFX0NMSUNLIiwiR1dfRVZFTlRfQ0VMTF9DTElDSyIsIkdXX0VWRU5UX0NFTExfRE9VQkxFX0NMSUNLIiwiR1dfRVZFTlRfQ0VMTF9FRElUSU5HX1NUQVJURUQiLCJHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RPUFBFRCIsIkdXX0VWRU5UX0NFTExfVkFMVUVfQ0hBTkdFRCIsIkdXX0VWRU5UX1JPV19FRElUSU5HX1NUQVJURUQiLCJHV19FVkVOVF9ST1dfRURJVElOR19TVE9QUEVEIiwiR1dfRVZFTlRfR1JJRF9TVEFURV9DSEFOR0UiLCJHV19FVkVOVF9SQU5HRV9TRUxFQ1RJT05fQ0hBTkdFRCIsIkNFTExfRURJVElOR19FVkVOVFNfTUFQIiwiUk9XX0VESVRJTkdfRVZFTlRTX01BUCIsImd3X29uQ2VsbEVkaXRpbmdFdmVudCIsIm5ld1ZhbHVlIiwib2xkVmFsdWUiLCJ0eXBlIiwibyIsImd3X29uUm93RWRpdGluZ0V2ZW50IiwiQ0VMTF9DTElDS0lOR19FVkVOVFNfTUFQIiwiZ3dfb25DZWxsQ2xpY2tFdmVudCIsImd3X29uUmVhZHlFdmVudCIsInN0YXRlRGVib3VuY2UiLCJjaGFuZ2VFdmVudCIsImd3X29uU3RhdGVDaGFuZ2VkIiwiZXZlbnQiLCJhZGRFdmVudExpc3RlbmVyIiwiZ3dfZGVib3VuY2UiLCJmdW5jIiwid2FpdCIsImltbWVkaWF0ZSIsInRpbWVvdXQiLCJhcmdzIiwiYXJndW1lbnRzIiwibGF0ZXIiLCJhcHBseSIsImNhbGxOb3ciLCJjbGVhclRpbWVvdXQiLCJzZXRUaW1lb3V0IiwiZ3dfc2VuZEV2ZW50IiwicGF5bG9hZCIsImV2ZW50SWQiLCJyZWdpc3RlcmVkSW50ZXJlc3RzIiwiaW50ZXJlc3RzIiwiaW5jbHVkZXMiLCJkaXYiLCJDdXN0b21FdmVudCIsImRpc3BhdGNoRXZlbnQiLCJnd19wYXJzZU5vZGUiLCJncm91cCIsInJvd05vZGVJZCIsIngiLCJwIiwicGFyZW50IiwiY2hpbGRJbmRleCIsInMiLCJzZWxlY3RlZCIsImd3X3BhcnNlTm9kZUZyb21FdmVudCIsImJ1YmJsZXMiLCJjYW5jZWxhYmxlIiwiZGV0YWlsIiwiZXZ0IiwiY3JlYXRlRXZlbnQiLCJpbml0Q3VzdG9tRXZlbnQiLCJwcm90b3R5cGUiLCJFdmVudCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOzs7QUFHQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esa0RBQTBDLGdDQUFnQztBQUMxRTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGdFQUF3RCxrQkFBa0I7QUFDMUU7QUFDQSx5REFBaUQsY0FBYztBQUMvRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQXlDLGlDQUFpQztBQUMxRSx3SEFBZ0gsbUJBQW1CLEVBQUU7QUFDckk7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxt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QUFFQTtBQUNBO0FBQ0E7O0FBRUEsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYzs7QUFFZCxrREFBa0Qsc0JBQXNCO0FBQ3hFO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsRUFBRTtBQUNGOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxDQUFDOztBQUVEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FB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T0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsRUFBRTtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsRUFBRTtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFD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QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsV0FBVztBQUNYOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLDZGQUE2RjtBQUM3RjtBQUNBO0FBQ0EsU0FBUzs7QUFFVDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7O0FBRVg7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EsZ0pBQWdKO0FBQ2hKOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsZ0NBQWdDLGVBQWU7QUFDL0M7QUFDQTtBQUNBOztBQUVBLGtDQUFrQyxlQUFlO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsb0RBQW9ELGVBQWU7QUFDbkU7QUFDQTtBQUNBOztBQUVBLGtDQUFrQyxvRUFBb0U7QUFDdEc7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEs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LFdBQVc7QUFDWDtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTO0FBQ1Q7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsU0FBUzs7QUFFVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0EseUJBQXlCLDhCQUE4QjtBQUN2RDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsdUJBQXVCLCtCQUErQjtBQUN0RDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxTQUFTOztBQUVUO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxTQUFTO0FBQ1Q7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U0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSwyQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLHdCQUF3QjtBQUNuRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsa0JBQWtCO0FBQzdDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsa0JBQWtCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FB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RSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUscUNBQXFDLHlCQUF5QixFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSxxQ0FBcUMseUJBQXlCLEVBQUUscUNBQXFDLHdCQUF3QixFQUFFLHFDQUFxQyx5QkFBeUIsRUFBRSxxQ0FBcUMsd0JBQXdCLEVBQUUs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c0MsRUFBRSwwREFBMEQseUJBQXlCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCx5QkFBeUIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELHlCQUF5QixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQseUJBQXlCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCx5QkFBeUIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELHlCQUF5QixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQseUJBQXlCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwwREFBMEQsMEJBQTBCLEVBQUUsMERBQTBELDJCQUEyQixFQUFFLDBEQUEwRCwwQkFBMEIsRUFBRSwwREFBMEQsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixFQUFFLDBEQUEwRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCw0QkFBNEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsMkRBQTJELDJCQUEyQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsNEJBQTRCLEVBQUUsMkRBQTJELDBCQUEwQixFQUFFLDJEQUEyRCwyQkFBMkIsRUFBRSwyREFBMkQsMkJBQTJCLEVBQUUsMkRBQTJELDRCQUE0QixFQUFFLDJEQUEyRCwwQkFBMEIsRUFBRSwy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QXFELDBCQUEwQixFQUFFLHFEQUFxRCx5QkFBeUIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELHlCQUF5QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQseUJBQXlCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCx5QkFBeUIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELHlCQUF5QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEwQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDRCQUE0QixFQUFFLHNEQUFzRCwwQkFBMEIsRUFBRSxzREFBc0QsMkJBQTJCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCw0QkFBNEIsRUFBRSxzREFBc0QsMEJBQTBCLEVBQUUsc0RBQXNELDJCQUEyQixFQUFFLHNEQUFzRCwyQkFBMkIsRUFBRSxzREFBc0QsNEJBQTRCLEVBQUUsc0RBQXNELDBCQUEw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QUFtRCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELHlCQUF5QixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQseUJBQXlCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELHlCQUF5QixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG1EQUFtRCwwQkFBMEIsRUFBRSxtREFBbUQsMkJBQTJCLEVBQUUsbURBQW1ELDBCQUEwQixFQUFFLG1EQUFtRCwyQkFBMkIsRUFBRSxtREFBbUQsMEJBQTBCLEVBQUUsbURBQW1ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxzQ0FBc0MsNEJBQTRCLDZCQUE2QixFQUFFLG9HQUFvRywyQkFBMkIsMkJBQTJCLG9C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MEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBCLEVBQUUseURBQXlELDJCQUEyQixFQUFFLHlEQUF5RCwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUseURBQXlELDBCQUEwQixFQUFFLHlEQUF5RCwyQkFBMkIsRUFBRSx5REFBeUQsMEJBQTBC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LEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsNEJBQTRCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCw0QkFBNEIsRUFBRSxzQ0FBc0MsNEJBQTRCLDZCQUE2QixFQUFFLG9HQUFvRywyQkFBMkIsMkJBQTJCLG9CQUFvQixnQ0FBZ0MsaUNBQWlDLGtDQUFrQyxzQkFBc0IsRUFBRSx3SEFBd0gsd0JBQXdCLEVBQUUsNElBQTRJLG9CQUFvQixFQUFFLHNNQUFzTSx5QkFBeUIsRUFBRSw2QkFBNkIsbURBQW1ELEVBQUUsc0RBQXNELHdCQUF3QixFQUFFLHFDQUFxQyxvQ0FBb0MsRUFBRSwrSUFBK0ksc0NBQXNDLEVBQUUsMklBQTJJLHVDQUF1QyxFQUFFLHNEQUFzRCx5QkFBeUIsRUFBRSxxQ0FBcUMsbUNBQW1DLEVBQUUsK0lBQStJLHNDQUFzQyxFQUFFLDJJQUEySSx1Q0FBdUMsRUFBRSwyQ0FBMkMseUJBQXlCLEVBQUUsOENBQThDLHlCQUF5QixFQUFFLGdEQUFnRCxpQkFBaUIsRUFBRSwyQ0FBMkMsb0NBQW9DLHlCQUF5Qix3QkFBd0IseUJBQXlCLDhDQUE4QyxzQ0FBc0MsRUFBRSxxREFBcUQsa0NBQWtDLGdEQUFnRCx3Q0FBd0MsRUFBRSxxV0FBcVcsd0JBQXdCLDBCQUEwQiw0QkFBNEIsRUFBRSx1YUFBdWEsd0NBQXdDLGdEQUFnRCx5Q0FBeUMsRUFBRSwyREFBMkQsMEJBQTBCLDZCQUE2Qiw2QkFBNkIsRUFBRSw0REFBNEQsaUJBQWlCLEVBQUUsK0NBQStDLHdCQUF3QiwwQkFBMEIsNEJBQTRCLEVBQUUsMERBQTBELHdDQUF3QyxnREFBZ0QseUNBQXlDLEVBQUUsK0JBQStCLGdDQUFnQyw2QkFBNkIscUJBQXFCLHVCQUF1QixzQkFBc0Isa0RBQWtELHdDQUF3QyxFQUFFLDRDQUE0QyxzQ0FBc0MsRUFBRSwyQ0FBMkMsdUNBQXVDLEVBQUUsbUNBQW1DLG1CQUFtQixFQUFFLDRCQUE0QiwwQkFBMEIsNkJBQTZCLHNCQUFzQixFQUFFLGlEQUFpRCw0QkFBNEIsRUFBRSwwQ0FBMEMsK0JBQStCLEVBQUUsZ0NBQWdDLGdDQUFnQyxFQUFFLGlDQUFpQyxnQ0FBZ0MsRUFBRSwrQ0FBK0MsdUNBQXVDLEVBQUUsb0VBQW9FLDJCQUEyQixFQUFFLGdEQUFnRCxzQ0FBc0MsRUFBRSxxRUFBcUUsMEJBQTBCLEVBQUUsa0NBQWtDLGdDQUFnQyxFQUFFLHFDQUFxQyx3QkFBd0IsRUFBRSwwREFBMEQsdUJBQXVCLGlCQUFpQixFQUFFLDZFQUE2RSwwQkFBMEIsNkJBQTZCLHlCQUF5QiwwQkFBMEIsc0JBQXNCLEVBQUUsNkhBQTZILGtDQUFrQyxFQUFFLHlKQUF5Siw4QkFBOEIsRUFBRSxnSUFBZ0ksMEJBQTBCLEVBQUUsMkNBQTJDLHlCQUF5QixFQUFFLDBDQUEwQyx5QkFBeUIsRUFBRSw2QkFBNkIsd0JBQXdCLHlCQUF5QiwwQkFBMEIsb0NBQW9DLHlCQUF5QiwwQkFBMEIsRUFBRSxpQ0FBaUMsbUJBQW1CLDJCQUEyQixtQkFBbUIsc0JBQXNCLEVBQUUsbUZBQW1GLG1CQUFtQixFQUFFLG9DQUFvQyxtQkFBbUIsMkJBQTJCLG1CQUFtQixFQUFFLHFDQUFxQyxtQkFBbUIsRUFBRSw4ZkFBOGYsZ0NBQWdDLHVCQUF1QixFQUFFLDJDQUEyQyxpQkFBaUIsRUFBRSw2QkFBNkIsMEJBQTBCLHVCQUF1QiwrQkFBK0IsK0JBQStCLG1CQUFtQixpQkFBaUIsRUFBRSw2Q0FBNkMsd0JBQXdCLDJCQUEyQix3QkFBd0Isb0JBQW9CLEVBQUUsc0RBQXNELGtDQUFrQyxFQUFFLHdEQUF3RCxxQkFBcUIsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQiwyQkFBMkIsd0JBQXdCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLGtEQUFrRCxvQkFBb0IsRUFBRSwyREFBMkQscVNBQXFTLEVBQUUsNkRBQTZELG9CQUFvQiwyQkFBMkIsRUFBRSxpQ0FBaUMsMEJBQTBCLHVCQUF1QiwrQkFBK0IsK0JBQStCLG1CQUFtQixpQ0FBaUMscUJBQXFCLHVCQUF1QixzQkFBc0Isa0RBQWtELDhCQUE4Qix3QkFBd0IsZ0JBQWdCLHFCQUFxQix5Q0FBeUMseUNBQXlDLEVBQUUsOEVBQThFLHFCQUFxQixrQkFBa0IsbUJBQW1CLEVBQUUsc0RBQXNELDBCQUEwQixtQkFBbUIsRUFBRSxtQ0FBbUMsMEJBQTBCLHVCQUF1QixrQkFBa0IsMkJBQTJCLDJCQUEyQixvQkFBb0IsRUFBRSw2Q0FBNkMsNkJBQTZCLDZCQUE2QixzQkFBc0IsNkNBQTZDLHFCQUFxQiw0QkFBNEIsMkJBQTJCLDJCQUEyQixrQ0FBa0MsbUNBQW1DLG9DQUFvQyxpQ0FBaUMsa0NBQWtDLHdDQUF3QyxFQUFFLGlDQUFpQyxxQkFBcUIsRUFBRSxpREFBaUQseUJBQXlCLHNCQUFzQixFQUFFLDRFQUE0RSx5QkFBeUIsRUFBRSwyRUFBMkUsNEJBQTRCLEVBQUUsb0dBQW9HLG1DQUFtQyxFQUFFLDRGQUE0Rix5QkFBeUIsRUFBRSwrQ0FBK0Msb0JBQW9CLEVBQUUsaURBQWlELHVCQUF1Qix3QkFBd0IsRUFBRSxpREFBaUQsa0JBQWtCLEVBQUUscURBQXFELDBCQUEwQixrQkFBa0IsbUJBQW1CLDBCQUEwQixFQUFFLHVHQUF1Ryx3QkFBd0IsRUFBRSxtREFBbUQsb0JBQW9CLEVBQUUsbURBQW1ELG1CQUFtQiwyQkFBMkIsMkJBQTJCLG9CQUFvQixnQ0FBZ0MsaUNBQWlDLGtDQUFrQyxFQUFFLGlIQUFpSCx5QkFBeUIsNkJBQTZCLDZCQUE2QixzQkFBc0IsRUFBRSx3RUFBd0Usd0NBQXdDLEVBQUUsc0RBQXNELDJCQUEyQiwyQkFBMkIsb0JBQW9CLDRCQUE0Qiw2QkFBNkIsd0NBQXdDLG1CQUFtQix1QkFBdUIsRUFBRSwrREFBK0QseUJBQXlCLEVBQUUsd0VBQXdFLHlCQUF5QixFQUFFLHVKQUF1SixtQkFBbUIsRUFBRSx5bkJBQXluQix5QkFBeUIsMEJBQTBCLEVBQUUsd0VBQXdFLHFDQUFxQyx1QkFBdUIsRUFBRSxnRkFBZ0Ysd0JBQXdCLEVBQUUsdUdBQXVHLHdCQUF3QixFQUFFLGtEQUFrRCxxQ0FBcUMsbUJBQW1CLGdDQUFnQyxpQ0FBaUMsa0NBQWtDLEVBQUUsMERBQTBELHdCQUF3QixzQkFBc0IsRUFBRSxvRUFBb0UseUJBQXlCLDBCQUEwQixFQUFFLDJDQUEyQyxzQkFBc0IsRUFBRSw4REFBOEQsb0JBQW9CLEVBQUUsOEZBQThGLHlCQUF5QiwyQkFBMkIsOEJBQThCLDZCQUE2Qiw2QkFBNkIsdUNBQXVDLHdDQUF3Qyx5Q0FBeUMseUNBQXlDLGdDQUFnQyxnQ0FBZ0MsK0JBQStCLCtCQUErQix3QkFBd0IsdUNBQXVDLHVDQUF1QyxFQUFFLDRIQUE0SCwyQkFBMkIsRUFBRSxvSUFBb0ksNkJBQTZCLEVBQUUsd0ZBQXdGLDJCQUEyQixFQUFFLCtFQUErRSxxQ0FBcUMseUJBQXlCLDBCQUEwQix5QkFBeUIsRUFBRSxrRUFBa0UscUJBQXFCLDZCQUE2Qiw2QkFBNkIsc0JBQXNCLDRCQUE0QiwyQkFBMkIsMkJBQTJCLEVBQUUsMEZBQTBGLCtCQUErQiwrQkFBK0Isd0JBQXdCLG9DQUFvQyxxQ0FBcUMsc0NBQXNDLDJCQUEyQixFQUFFLHFFQUFxRSwwQ0FBMEMsNEJBQTRCLHVCQUF1QixFQUFFLDZEQUE2RCwwQ0FBMEMsdUJBQXVCLDRCQUE0QixFQUFFLDZGQUE2RiwwQ0FBMEMsMkJBQTJCLDBCQUEwQixzREFBc0QsNkJBQTZCLDZCQUE2QiwwQkFBMEIsRUFBRSxvRkFBb0YsMEJBQTBCLDBCQUEwQixFQUFFLG9GQUFvRiwyQkFBMkIsNEJBQTRCLEVBQUUsMEVBQTBFLDJCQUEyQixFQUFFLDZFQUE2RSxxQkFBcUIsd0JBQXdCLEVBQUUscUNBQXFDLHFDQUFxQyxxQkFBcUIsbUJBQW1CLHNCQUFzQixFQUFFLDhDQUE4QywwQkFBMEIsRUFBRSwyREFBMkQsa0JBQWtCLG1CQUFtQixFQUFFLDJFQUEyRSxzQkFBc0IsaUJBQWlCLGFBQWEsZUFBZSxnQkFBZ0IsY0FBYyxFQUFFLHlGQUF5RixzQ0FBc0MsbUJBQW1CLEVBQUUsdUZBQXVGLHNCQUFzQixFQUFFLHVEQUF1RCxvQkFBb0IsRUFBRSxxQ0FBcUMsZ0NBQWdDLEVBQUUsb0xBQW9MLG9DQUFvQyxFQUFFLDBOQUEwTixrQ0FBa0MsRUFBRSw4TkFBOE4sb0NBQW9DLEVBQUUsZ09BQWdPLHFDQUFxQyxFQUFFLDROQUE0TixtQ0FBbUMsRUFBRSxnRUFBZ0UsaURBQWlELEVBQUUsc0ZBQXNGLG1EQUFtRCxFQUFFLG1IQUFtSCxtREFBbUQsRUFBRSxrRUFBa0UsaURBQWlELEVBQUUsa0VBQWtFLGlEQUFpRCxFQUFFLGtFQUFrRSxpREFBaUQsRUFBRSxrRUFBa0UsaURBQWlELEVBQUUsa0dBQWtHLHFDQUFxQyxFQUFFLGtLQUFrSyx1Q0FBdUMsRUFBRSxzR0FBc0csdUNBQXVDLEVBQUUsc0tBQXNLLHlDQUF5QyxFQUFFLHdHQUF3Ryx3Q0FBd0MsRUFBRSx3S0FBd0ssMENBQTBDLEVBQUUsb0dBQW9HLHNDQUFzQyxFQUFFLG9LQUFvSyx3Q0FBd0MsRUFBRSxxRUFBcUUseUJBQXlCLGlCQUFpQixrQkFBa0IsbUJBQW1CLGtCQUFrQixnQ0FBZ0MsRUFBRSxvQ0FBb0MsbUJBQW1CLEVBQUUscUNBQXFDLDBCQUEwQixFQUFFLG9EQUFvRCxvQkFBb0IsbUJBQW1CLEVBQUUsNkZBQTZGLDBCQUEwQix1QkFBdUIsK0JBQStCLCtCQUErQixtQkFBbUIsRUFBRSxxQ0FBcUMsaUJBQWlCLEVBQUUsbUVBQW1FLHFCQUFxQixzQkFBc0IsRUFBRSx5REFBeUQsbUJBQW1CLHNCQUFzQixFQUFFLDBEQUEwRCw0QkFBNEIsbUJBQW1CLEVBQUUsMERBQTBELHNCQUFzQixtQkFBbUIsRUFBRSxrRUFBa0Usa0NBQWtDLEVBQUUsd0RBQXdELHlCQUF5QixFQUFFLGlFQUFpRSxnQ0FBZ0MsRUFBRSx1REFBdUQsd0JBQXdCLEVBQUUsc0RBQXNELCtCQUErQiwrQkFBK0IsK0JBQStCLDhCQUE4QixnQkFBZ0IsbUJBQW1CLGlCQUFpQixrQkFBa0IsRUFBRSw0cUJBQTRxQix3QkFBd0IsRUFBRSxzVEFBc1Qsd0JBQXdCLEVBQUUsMENBQTBDLHVCQUF1QixFQUFFLGdEQUFnRCx5QkFBeUIsRUFBRSwrQ0FBK0MsZ0NBQWdDLG1CQUFtQix5QkFBeUIsRUFBRSwrSEFBK0gsMkJBQTJCLEVBQUUsMElBQTBJLHNCQUFzQixtQkFBbUIsRUFBRSwrRUFBK0UscUJBQXFCLEVBQUUseUNBQXlDLDBCQUEwQiwwQkFBMEIsdUJBQXVCLHFCQUFxQixFQUFFLHFFQUFxRSxzQkFBc0IsRUFBRSx1RUFBdUUsd0JBQXdCLHNCQUFzQixtQkFBbUIsRUFBRSwrRUFBK0UscUJBQXFCLEVBQUUsMkRBQTJELHlCQUF5QixFQUFFLGtFQUFrRSxzQkFBc0IsRUFBRSw4Q0FBOEMsMEJBQTBCLHVCQUF1QiwrQkFBK0IsK0JBQStCLG1CQUFtQiwwQkFBMEIsbUJBQW1CLGlCQUFpQixFQUFFLHNFQUFzRSx3QkFBd0IsMEJBQTBCLDBCQUEwQixFQUFFLDRFQUE0RSxrQ0FBa0MsRUFBRSwwRkFBMEYsa0JBQWtCLEVBQUUsb0VBQW9FLHVCQUF1QixvQkFBb0IsRUFBRSwwQ0FBMEMsNkNBQTZDLEVBQUUsb0RBQW9ELG9DQUFvQyw4Q0FBOEMsc0NBQXNDLEVBQUUsaUNBQWlDLDZCQUE2QixFQUFFLGtDQUFrQyx5QkFBeUIsdUJBQXVCLEVBQUUscURBQXFELHFDQUFxQyxxQ0FBcUMsMkNBQTJDLDJDQUEyQyxvREFBb0Qsb0RBQW9ELGtEQUFrRCxrREFBa0QsRUFBRSw2QkFBNkIsVUFBVSxzQ0FBc0Msc0NBQXNDLEVBQUUsUUFBUSx3Q0FBd0Msd0NBQXdDLEVBQUUsRUFBRSxxQkFBcUIsVUFBVSxzQ0FBc0Msc0NBQXNDLEVBQUUsUUFBUSx3Q0FBd0Msd0NBQXdDLEVBQUUsRUFBRSxxREFBcUQseUJBQXlCLHdCQUF3QixFQUFFLHFDQUFxQyx3Q0FBd0MsRUFBRSx3Q0FBd0MscUNBQXFDLEVBQUUseUVBQXlFLDZCQUE2QixFQUFFLDJGQUEyRiwrQkFBK0IsRUFBRSxtQ0FBbUMsMEJBQTBCLGlDQUFpQywwQkFBMEIsc0NBQXNDLHVCQUF1QixzQkFBc0Isa0RBQWtELDBCQUEwQix5QkFBeUIsdUJBQXVCLEVBQUUseUNBQXlDLGtCQUFrQixFQUFFLDBDQUEwQyx5QkFBeUIsRUFBRSxtQ0FBbUMsdUJBQXVCLHdCQUF3Qix1QkFBdUIsMEJBQTBCLEVBQUUsb0NBQW9DLG9CQUFvQixFQUFFLGdEQUFnRCxpREFBaUQsRUFBRSwrQ0FBK0MsMEJBQTBCLHVCQUF1QiwrQkFBK0IsK0JBQStCLG1CQUFtQixFQUFFLGlDQUFpQyxnQ0FBZ0MsaUNBQWlDLDJCQUEyQix5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLDRCQUE0QixvQkFBb0IsMkJBQTJCLEVBQUUsNkVBQTZFLGtDQUFrQyxvQkFBb0Isc0JBQXNCLCtCQUErQixzQkFBc0Isb0JBQW9CLDJCQUEyQixvQ0FBb0MsOEJBQThCLG9DQUFvQyx3Q0FBd0Msd0NBQXdDLHVDQUF1QyxFQUFFLDBFQUEwRSxvQ0FBb0MsNEJBQTRCLDRCQUE0QixpQ0FBaUMsRUFBRSx1REFBdUQseUNBQXlDLEVBQUUsa0VBQWtFLHdCQUF3QixFQUFFLG1EQUFtRCx5QkFBeUIsRUFBRSxvREFBb0QsdUJBQXVCLHdCQUF3QixFQUFFLHdDQUF3QyxnQ0FBZ0MsbUJBQW1CLDhCQUE4Qiw0QkFBNEIsRUFBRSw0TEFBNEwscUJBQXFCLEVBQUUsd0VBQXdFLGtDQUFrQyxxQkFBcUIsd0JBQXdCLG9EQUFvRCxxQkFBcUIsRUFBRSxxRUFBcUUsdUJBQXVCLEVBQUUsK0ZBQStGLHVCQUF1QixxQkFBcUIsRUFBRSx3SEFBd0gsd0JBQXdCLEVBQUUsc0VBQXNFLGtDQUFrQyxxQkFBcUIsaUNBQWlDLEVBQUUsMEVBQTBFLHlCQUF5QixxQkFBcUIsRUFBRSx5REFBeUQsc0JBQXNCLEVBQUUseUZBQXlGLHVCQUF1QixFQUFFLHNDQUFzQyx3QkFBd0IsMEJBQTBCLEVBQUUseURBQXlELHlCQUF5QixFQUFFLGdKQUFnSix1QkFBdUIsRUFBRSw4RUFBOEUsa0JBQWtCLG1CQUFtQiwwQkFBMEIscURBQXFELHFEQUFxRCxnQ0FBZ0MsRUFBRSw2RUFBNkUsZUFBZSxpQkFBaUIsaUJBQWlCLGtCQUFrQix3QkFBd0IsdUJBQXVCLHlCQUF5QixnQ0FBZ0MsRUFBRSx3REFBd0QsbUJBQW1CLGtCQUFrQixnQ0FBZ0MsZ0NBQWdDLDRCQUE0QixFQUFFLG1FQUFtRSxvQkFBb0IscUJBQXFCLGtDQUFrQyw4QkFBOEIsaUNBQWlDLEVBQUUsb0VBQW9FLGdDQUFnQyxFQUFFLCtFQUErRSw0QkFBNEIsb0JBQW9CLEVBQUUsbURBQW1ELGlDQUFpQyx5QkFBeUIsRUFBRSwyREFBMkQsb0JBQW9CLHFCQUFxQixFQUFFLDREQUE0RCxrQ0FBa0MsRUFBRSxrRUFBa0Usa0NBQWtDLEVBQUUsK0NBQStDLHlCQUF5QixFQUFFLG9DQUFvQyxtQkFBbUIsRUFBRSx5REFBeUQsOEJBQThCLDJCQUEyQixFQUFFLHlEQUF5RCxzQkFBc0IsRUFBRSx1REFBdUQsaUhBQWlILG1GQUFtRixFQUFFLHVEQUF1RCxtSEFBbUgsaUZBQWlGLEVBQUUsMkRBQTJELDRCQUE0QixxQkFBcUIsb0JBQW9CLGdDQUFnQywwQkFBMEIsNERBQTRELDREQUE0RCxFQUFFLGtFQUFrRSwyQkFBMkIsRUFBRSxvRUFBb0UsMkJBQTJCLEVBQUUsb0RBQW9ELDRCQUE0QixxQkFBcUIsMkJBQTJCLEVBQUUsMERBQTBELDBCQUEwQixvQkFBb0IscUJBQXFCLDRCQUE0QixrQ0FBa0MsNERBQTRELDREQUE0RCxFQUFFLDhEQUE4RCwwQkFBMEIsMEJBQTBCLG9CQUFvQixFQUFFLG9FQUFvRSxrQ0FBa0MscUJBQXFCLEVBQUUsOERBQThELHNCQUFzQixFQUFFLDRFQUE0RSx5QkFBeUIsRUFBRSwyRUFBMkUsMEJBQTBCLEVBQUUsMkRBQTJELDBEQUEwRCwwREFBMEQsRUFBRSw4QkFBOEIsZ0NBQWdDLGlDQUFpQyxFQUFFLGlJQUFpSSxxQkFBcUIsNkJBQTZCLEVBQUUsOENBQThDLGtDQUFrQyx5Q0FBeUMsdUJBQXVCLHFCQUFxQix3QkFBd0IseUJBQXlCLG9EQUFvRCwyQkFBMkIsMEJBQTBCLEVBQUUsaUZBQWlGLHVCQUF1QixzQkFBc0IsNkJBQTZCLEVBQUUsNEZBQTRGLDhCQUE4Qiw0QkFBNEIsRUFBRSwrS0FBK0ssc0NBQXNDLEVBQUUsb0dBQW9HLDhCQUE4QixFQUFFLDJFQUEyRSxxQkFBcUIsa0NBQWtDLHFCQUFxQixFQUFFLG9GQUFvRiwyQkFBMkIsRUFBRSxnQ0FBZ0MsZ0NBQWdDLGtCQUFrQix5QkFBeUIsbUJBQW1CLHdCQUF3QiwwQkFBMEIsNEJBQTRCLHFDQUFxQyw2QkFBNkIsRUFBRSxvREFBb0QsbUJBQW1CLEVBQUUsNkNBQTZDLHlCQUF5QiwwQkFBMEIsRUFBRSw0REFBNEQsa0NBQWtDLEVBQUUsMkhBQTJILHFCQUFxQixFQUFFLHNIQUFzSCxpQ0FBaUMseUJBQXlCLGtCQUFrQixFQUFFLDJKQUEySiwwQkFBMEIsMkJBQTJCLEVBQUUsMElBQTBJLHlCQUF5QixFQUFFLHNJQUFzSSwwQkFBMEIsRUFBRSxvSUFBb0ksOEJBQThCLEVBQUUsZ0lBQWdJLGtCQUFrQixzQkFBc0IsRUFBRSw4SUFBOEksdUJBQXVCLEVBQUUsbUdBQW1HLHNCQUFzQixFQUFFLDZCQUE2QiwySEFBMkgsa0JBQWtCLHNCQUFzQixxQkFBcUIseUJBQXlCLDBCQUEwQiwyQkFBMkIsMkJBQTJCLHVGQUF1Rix5Q0FBeUMsRUFBRSxnREFBZ0QsMEJBQTBCLEVBQUUsMkNBQTJDLDBCQUEwQixFQUFFLHdDQUF3QywwQkFBMEIsRUFBRSwyQ0FBMkMsMEJBQTBCLEVBQUUsMENBQTBDLDBCQUEwQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSwyREFBMkQsMEJBQTBCLEVBQUUsdURBQXVELDBCQUEwQixFQUFFLGlEQUFpRCwwQkFBMEIsRUFBRSwyQ0FBMkMsMEJBQTBCLEVBQUUsNENBQTRDLDBCQUEwQixFQUFFLCtDQUErQywwQkFBMEIsRUFBRSx5Q0FBeUMsMEJBQTBCLEVBQUUsMENBQTBDLDBCQUEwQixFQUFFLHdDQUF3QywwQkFBMEIsRUFBRSx5Q0FBeUMsMEJBQTBCLEVBQUUseUNBQXlDLDBCQUEwQixFQUFFLDZDQUE2QywwQkFBMEIsRUFBRSw4Q0FBOEMsMEJBQTBCLEVBQUUsd0NBQXdDLDBCQUEwQixFQUFFLDJDQUEyQywwQkFBMEIsRUFBRSwwQ0FBMEMsMEJBQTBCLEVBQUUseUNBQXlDLDBCQUEwQixFQUFFLDBDQUEwQywwQkFBMEIsRUFBRSxrREFBa0QsMEJBQTBCLEVBQUUseUNBQXlDLDBCQUEwQixFQUFFLHlDQUF5QywwQkFBMEIsRUFBRSw0Q0FBNEMsMEJBQTBCLEVBQUUsNkNBQTZDLDBCQUEwQixFQUFFLHlDQUF5QywwQkFBMEIsRUFBRSw2Q0FBNkMsMEJBQTBCLEVBQUUsMENBQTBDLDBCQUEwQixFQUFFLHlDQUF5QywwQkFBMEIsRUFBRSx5Q0FBeUMsMEJBQTBCLEVBQUUsZ0RBQWdELDBCQUEwQixFQUFFLDBDQUEwQywwQkFBMEIsRUFBRSx3Q0FBd0MsMEJBQTBCLEVBQUUsMENBQTBDLDBCQUEwQixFQUFFLHlDQUF5QywwQkFBMEIsRUFBRSw2Q0FBNkMsMEJBQTBCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSwwQ0FBMEMsMEJBQTBCLEVBQUUseUNBQXlDLDBCQUEwQixFQUFFLCtDQUErQywwQkFBMEIsRUFBRSwrQ0FBK0MsMEJBQTBCLEVBQUUsZ0RBQWdELDBCQUEwQixFQUFFLDZDQUE2QywwQkFBMEIsRUFBRSx5Q0FBeUMsMEJBQTBCLEVBQUUsZ0RBQWdELDBCQUEwQixFQUFFLHVEQUF1RCwwQkFBMEIsRUFBRSw4Q0FBOEMsMEJBQTBCLEVBQUUsZ0pBQWdKLDZCQUE2Qix3QkFBd0IseUJBQXlCLEVBQUUsaUxBQWlMLHdCQUF3QixxQkFBcUIsRUFBRSw4Q0FBOEMscUJBQXFCLEVBQUUsZ0VBQWdFLDRCQUE0QixFQUFFLG9FQUFvRSwwQkFBMEIsRUFBRSxnRUFBZ0UsMEJBQTBCLEVBQUUsd0VBQXdFLDBCQUEwQixFQUFFLDZDQUE2QywwQkFBMEIsRUFBRSwyQ0FBMkMsMEJBQTBCLEVBQUUsNkNBQTZDLHFCQUFxQixFQUFFLDJDQUEyQywwQkFBMEIsRUFBRSw0QkFBNEIsd0JBQXdCLEVBQUUsK0NBQStDLHlCQUF5QixFQUFFLDhOQUE4TiwwQkFBMEIsdUJBQXVCLEVBQUUsZ0dBQWdHLDBCQUEwQixFQUFFLG1HQUFtRywwQkFBMEIsNEJBQTRCLEVBQUUseWJBQXliLHlCQUF5QiwwQkFBMEIsRUFBRSxpSEFBaUgsdUJBQXVCLDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsd0JBQXdCLEVBQUUsdU1BQXVNLG9DQUFvQyxvQ0FBb0MsNkJBQTZCLEVBQUUsa29CQUFrb0IsNkJBQTZCLCtCQUErQixFQUFFLG1TQUFtUyw2QkFBNkIsK0JBQStCLEVBQUUsb0RBQW9ELDJCQUEyQiwwQkFBMEIsRUFBRSx5REFBeUQsNEJBQTRCLEVBQUUsbUpBQW1KLDRCQUE0QiwwQkFBMEIsRUFBRSx5REFBeUQsMkJBQTJCLEVBQUUsMkdBQTJHLHVCQUF1QiwwQkFBMEIsRUFBRSx1RUFBdUUsd0NBQXdDLHdCQUF3QixFQUFFLCtEQUErRCx3Q0FBd0Msd0JBQXdCLEVBQUUsMEVBQTBFLHVCQUF1QixFQUFFLDJDQUEyQyxpQkFBaUIsOFVBQThVLEVBQUUsb0JBQW9CLEVBQUUsbUNBQW1DLGdDQUFnQyxFQUFFLDhCQUE4QixtQkFBbUIsRUFBRSw4REFBOEQsaUNBQWlDLHVCQUF1QixFQUFFLHlFQUF5RSxxQkFBcUIsRUFBRSxrREFBa0QsbUJBQW1CLG9CQUFvQixFQUFFLG9DQUFvQyx1Q0FBdUMsRUFBRSwwQ0FBMEMsdUNBQXVDLEVBQUUsNkJBQTZCLGlDQUFpQyxFQUFFLDJDQUEyQyx1Q0FBdUMsRUFBRSwrQ0FBK0Msc0JBQXNCLEVBQUUsc0RBQXNELHFDQUFxQyw4QkFBOEIsK0JBQStCLDBDQUEwQyxFQUFFLDhFQUE4RSxpQ0FBaUMsRUFBRSxvREFBb0QsZ0NBQWdDLEVBQUUsNkNBQTZDLHdCQUF3QixFQUFFLHlDQUF5QywwQkFBMEIsNkJBQTZCLGlDQUFpQyx1QkFBdUIsdUJBQXVCLEVBQUUsdUVBQXVFLDJCQUEyQix3QkFBd0IsRUFBRSw2RUFBNkUsbUNBQW1DLEVBQUUsdUNBQXVDLGlEQUFpRCwwQ0FBMEMsRUFBRSxpREFBaUQsaUNBQWlDLHlCQUF5QixFQUFFLG9EQUFvRCxtQkFBbUIsaUJBQWlCLEVBQUUsdUpBQXVKLG1CQUFtQixFQUFFLDJEQUEyRCxtQkFBbUIsRUFBRSw0QkFBNEIsa0NBQWtDLGtDQUFrQyxFQUFFLGdEQUFnRCx5QkFBeUIsYUFBYSxFQUFFLDBDQUEwQyx3Q0FBd0MsRUFBRSxpRUFBaUUsbUJBQW1CLEVBQUUsMkNBQTJDLGdDQUFnQyxFQUFFLGdEQUFnRCxpREFBaUQsRUFBRSwrQ0FBK0MsNkJBQTZCLGlDQUFpQywwQkFBMEIsbUJBQW1CLG9CQUFvQixFQUFFLDJDQUEyQyxtQkFBbUIsRUFBRSxvREFBb0QsZ0NBQWdDLGtCQUFrQixFQUFFLDZEQUE2RCx3Q0FBd0MsRUFBRSxLOzs7Ozs7Ozs7OztBQ0F0NTZFLHFDQUFxQyxjQUFjLG1DQUFtQywyQ0FBMkMsY0FBYyw0cVJBQTRxUix3QkFBd0IsdUJBQXVCLEVBQUUscUJBQXFCLHdDQUF3Qyw0QkFBNEIsaUJBQWlCLGdEQUFnRCxxQkFBcUIsb0JBQW9CLG1CQUFtQixFQUFFLHVDQUF1QyxnQ0FBZ0MsRUFBRSw4UEFBOFAsZ0NBQWdDLGlDQUFpQyxFQUFFLDRDQUE0QyxvQ0FBb0MsNkJBQTZCLGtCQUFrQix1QkFBdUIsdUJBQXVCLEVBQUUsNERBQTRELGdDQUFnQyxrREFBa0QsNkJBQTZCLEVBQUUsMkJBQTJCLHVCQUF1QixFQUFFLHVCQUF1QixxQ0FBcUMscUNBQXFDLEVBQUUsc0ZBQXNGLHNCQUFzQix1Q0FBdUMsdUNBQXVDLEVBQUUsNkJBQTZCLHNDQUFzQyxzQ0FBc0MsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCx5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCx5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QseUJBQXlCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCx5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELHlCQUF5QixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCx5QkFBeUIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxvREFBb0QsMEJBQTBCLEVBQUUsb0RBQW9ELDJCQUEyQixFQUFFLG9EQUFvRCwwQkFBMEIsRUFBRSxvREFBb0QsMkJBQTJCLEVBQUUsb0RBQW9ELDBCQUEwQixFQUFFLG9EQUFvRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsNEJBQTRCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDRCQUE0QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsNEJBQTRCLEVBQUUscURBQXFELDBCQUEwQixFQUFFLHFEQUFxRCwyQkFBMkIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDRCQUE0QixFQUFFLHFEQUFxRCwwQkFBMEIsRUFBRSxxREFBcUQsMkJBQTJCLEVBQUUscURBQXFELDJCQUEyQixFQUFFLHFEQUFxRCw0QkFBNEIsRUFBRSxxREFBcUQsMEJBQTBCLEVBQUUscURBQXFELDJCQUEy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QUF1RCwyQkFBMkIsRUFBRSx1REFBdUQsMEJBQTBCLEVBQUUsdURBQXVELDJCQUEyQixFQUFFLHVEQUF1RCwwQkFBMEIsRUFBRSx1REFBdUQsMkJBQTJCLEVBQUUsdURBQXVELDBCQUEwQixFQUFFLHVEQUF1RCwyQkFBMkIsRUFBRSx1REFBdUQsMEJBQTBCLEVBQUUsdURBQXVELDJCQUEyQixFQUFFLHVEQUF1RCwwQkFBMEIsRUFBRSx1REFBdUQsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMEJBQTBCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDBCQUEwQixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwwQkFBMEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFBd0QsNEJBQTRCLEVBQUUsd0RBQXdELDJCQUEyQixFQUFFLHdEQUF3RCw0QkFBNEIsRUFBRSx3REFBd0QsMkJBQTJCLEVBQUUsd0RBQXdELDRCQUE0QixFQUFFLHdEQUF3RCwyQkFBMkIsRUFBRSx3REFB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QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBLEVBQUU7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsRUFBRTtBQUNGO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxFQUFFO0FBQ0Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7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c0dBQW1EOztBQUV4RTs7QUFFQSxHQUFHLEtBQVUsRUFBRSxFIiwiZmlsZSI6ImJiai1ncmlkLXdpZGdldC5qcyIsInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9XG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGdldHRlciB9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcbiBcdFx0fVxuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4gXHQvLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbiBcdC8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuIFx0Ly8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4gXHQvLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuIFx0XHRpZihtb2RlICYgMSkgdmFsdWUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKHZhbHVlKTtcbiBcdFx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcbiBcdFx0aWYoKG1vZGUgJiA0KSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmIHZhbHVlLl9fZXNNb2R1bGUpIHJldHVybiB2YWx1ZTtcbiBcdFx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG5zLCAnZGVmYXVsdCcsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHZhbHVlIH0pO1xuIFx0XHRpZihtb2RlICYgMiAmJiB0eXBlb2YgdmFsdWUgIT0gJ3N0cmluZycpIGZvcih2YXIga2V5IGluIHZhbHVlKSBfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGtleSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiB2YWx1ZVtrZXldOyB9LmJpbmQobnVsbCwga2V5KSk7XG4gXHRcdHJldHVybiBucztcbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAwKTtcbiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctZ3JpZC5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1iYWxoYW0tZGFyay5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmFsaGFtLWRhcmsuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1iYWxoYW0uY3NzXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkIH07XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJhbGhhbS5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmFsaGFtLmNzc1wiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYmx1ZS5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3NcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtYm9vdHN0cmFwLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1ib290c3RyYXAuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1kYXJrLmNzc1wiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtZnJlc2guY3NzXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkIH07XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLWZyZXNoLmNzc1wiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1mcmVzaC5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2FnLXRoZW1lLW1hdGVyaWFsLmNzc1wiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZCB9O1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi9hZy10aGVtZS1tYXRlcmlhbC5jc3NcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vLi4vcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vYWctdGhlbWUtbWF0ZXJpYWwuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJCYXNpc1wiXSA9IHJvb3RbXCJCYXNpc1wiXSB8fCB7fSwgcm9vdFtcIkJhc2lzXCJdW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IGZhY3RvcnkoKTtcbn0pKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJyA/IHNlbGYgOiB0aGlzLCBmdW5jdGlvbigpIHtcbnJldHVybiAvKioqKioqLyAoZnVuY3Rpb24obW9kdWxlcykgeyAvLyB3ZWJwYWNrQm9vdHN0cmFwXG4vKioqKioqLyBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4vKioqKioqLyBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4vKioqKioqLyBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbi8qKioqKiovIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuLyoqKioqKi8gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbi8qKioqKiovIFx0XHRcdGk6IG1vZHVsZUlkLFxuLyoqKioqKi8gXHRcdFx0bDogZmFsc2UsXG4vKioqKioqLyBcdFx0XHRleHBvcnRzOiB7fVxuLyoqKioqKi8gXHRcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuLyoqKioqKi8gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4vKioqKioqLyBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuLyoqKioqKi8gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbi8qKioqKiovIFx0fVxuLyoqKioqKi9cbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuLyoqKioqKi8gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbi8qKioqKiovIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4vKioqKioqLyBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4vKioqKioqLyBcdFx0XHRcdGVudW1lcmFibGU6IHRydWUsXG4vKioqKioqLyBcdFx0XHRcdGdldDogZ2V0dGVyXG4vKioqKioqLyBcdFx0XHR9KTtcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbi8qKioqKiovIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbi8qKioqKiovIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4vKioqKioqLyBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuLyoqKioqKi8gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbi8qKioqKiovIFx0XHRyZXR1cm4gZ2V0dGVyO1xuLyoqKioqKi8gXHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbi8qKioqKiovIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gMjQpO1xuLyoqKioqKi8gfSlcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyAoW1xuLyogMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gUGFyYW1zOyB9KTtcbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBQYXJhbXMgTWl4aW5zIFxuKlxuKiBIZWxwZXIgbWV0aG9kcyB0byBtYW5hZ2UgY29tcG9uZW50cyBwYXJhbXNcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG52YXIgUGFyYW1zID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gUGFyYW1zKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBQYXJhbXMpO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKFBhcmFtcywgW3tcbiAgICBrZXk6IFwiZ2V0V2luXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFdpbihwYXJhbXMpIHtcbiAgICAgIHZhciB3aW4gPSBwYXJhbXMuV0lORE9XIHx8IHdpbmRvdyB8fCBudWxsO1xuICAgICAgaWYgKCF3aW4pIHRocm93IG5ldyBFcnJvcignQ3VycmVudCBlbnZpcm9tZW50IGRvZXMgbm90IHN1cHBvcnQgd2luZG93Jyk7XG4gICAgICByZXR1cm4gd2luO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJnZXREb2NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0RG9jKHBhcmFtcykge1xuICAgICAgdmFyIGRvYyA9IHBhcmFtcy5ET0NVTUVOVCB8fCBkb2N1bWVudCB8fCBudWxsO1xuICAgICAgaWYgKCFkb2MpIHRocm93IG5ldyBFcnJvcignQ3VycmVudCBlbnZpcm9tZW50IGRvZXMgbm90IHN1cHBvcnQgZG9jdW1lbnQnKTtcbiAgICAgIHJldHVybiBkb2M7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImdldE9wdGlvblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRPcHRpb24obmFtZSwgcGFyYW1zKSB7XG4gICAgICB2YXIgZmFsbGJhY2sgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6IG51bGw7XG4gICAgICB2YXIgb3B0aW9uOyAvLyB0cnkgdG8gZmV0Y2ggZnJvbSB0aGUgY29sdW1uIGRlZiBmaXJzdFxuXG4gICAgICBpZiAocGFyYW1zLmhhc093blByb3BlcnR5KCdjb2xEZWYnKSAmJiBwYXJhbXMuY29sRGVmLmhhc093blByb3BlcnR5KG5hbWUpKSB7XG4gICAgICAgIG9wdGlvbiA9IHBhcmFtcy5jb2xEZWZbbmFtZV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyB0cnkgdG8gZmV0Y2ggZnJvbSBBR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnfG1ldGEgaW4gdGhlIGNvbnRleHRcbiAgICAgICAgdmFyIEFHcmlkQ29tcG9uZW50c01ldGFDb25maWcgPSBwYXJhbXMuY29udGV4dC5BR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnIHx8IHBhcmFtcy5jb250ZXh0Lm1ldGE7XG5cbiAgICAgICAgaWYgKEFHcmlkQ29tcG9uZW50c01ldGFDb25maWcgJiYgQUdyaWRDb21wb25lbnRzTWV0YUNvbmZpZy5oYXNPd25Qcm9wZXJ0eShwYXJhbXMuY29sdW1uLmNvbElkKSAmJiBBR3JpZENvbXBvbmVudHNNZXRhQ29uZmlnW3BhcmFtcy5jb2x1bW4uY29sSWRdLmhhc093blByb3BlcnR5KG5hbWUpKSB7XG4gICAgICAgICAgb3B0aW9uID0gQUdyaWRDb21wb25lbnRzTWV0YUNvbmZpZ1twYXJhbXMuY29sdW1uLmNvbElkXVtuYW1lXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyB0cnkgdG8gZmV0Y2ggZnJvbSB0aGUgY29udGVjdCBvYmplY3QgaXRzZWxmXG4gICAgICAgICAgdmFyIGNvbnRleHQgPSBwYXJhbXMuY29udGV4dDtcblxuICAgICAgICAgIGlmIChjb250ZXh0ICYmIGNvbnRleHQuaGFzT3duUHJvcGVydHkobmFtZSkpIHtcbiAgICAgICAgICAgIG9wdGlvbiA9IGNvbnRleHRbbmFtZV07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRyeSB0byBjaGVjayBwYXJhbXMgaXRzZWxmIG9yIGZhbGxiYWNrIHRvIGRlZmF1bHQgXG4gICAgICAgICAgICBvcHRpb24gPSBwYXJhbXNbbmFtZV0gfHwgZmFsbGJhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFBhcmFtcztcbn0oKTtcblxuXG5cbi8qKiovIH0pLFxuLyogMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vKlxuXHRNSVQgTGljZW5zZSBodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocFxuXHRBdXRob3IgVG9iaWFzIEtvcHBlcnMgQHNva3JhXG4qL1xuLy8gY3NzIGJhc2UgY29kZSwgaW5qZWN0ZWQgYnkgdGhlIGNzcy1sb2FkZXJcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24odXNlU291cmNlTWFwKSB7XG5cdHZhciBsaXN0ID0gW107XG5cblx0Ly8gcmV0dXJuIHRoZSBsaXN0IG9mIG1vZHVsZXMgYXMgY3NzIHN0cmluZ1xuXHRsaXN0LnRvU3RyaW5nID0gZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG5cdFx0cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7XG5cdFx0XHR2YXIgY29udGVudCA9IGNzc1dpdGhNYXBwaW5nVG9TdHJpbmcoaXRlbSwgdXNlU291cmNlTWFwKTtcblx0XHRcdGlmKGl0ZW1bMl0pIHtcblx0XHRcdFx0cmV0dXJuIFwiQG1lZGlhIFwiICsgaXRlbVsyXSArIFwie1wiICsgY29udGVudCArIFwifVwiO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGNvbnRlbnQ7XG5cdFx0XHR9XG5cdFx0fSkuam9pbihcIlwiKTtcblx0fTtcblxuXHQvLyBpbXBvcnQgYSBsaXN0IG9mIG1vZHVsZXMgaW50byB0aGUgbGlzdFxuXHRsaXN0LmkgPSBmdW5jdGlvbihtb2R1bGVzLCBtZWRpYVF1ZXJ5KSB7XG5cdFx0aWYodHlwZW9mIG1vZHVsZXMgPT09IFwic3RyaW5nXCIpXG5cdFx0XHRtb2R1bGVzID0gW1tudWxsLCBtb2R1bGVzLCBcIlwiXV07XG5cdFx0dmFyIGFscmVhZHlJbXBvcnRlZE1vZHVsZXMgPSB7fTtcblx0XHRmb3IodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGlkID0gdGhpc1tpXVswXTtcblx0XHRcdGlmKHR5cGVvZiBpZCA9PT0gXCJudW1iZXJcIilcblx0XHRcdFx0YWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpZF0gPSB0cnVlO1xuXHRcdH1cblx0XHRmb3IoaSA9IDA7IGkgPCBtb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgaXRlbSA9IG1vZHVsZXNbaV07XG5cdFx0XHQvLyBza2lwIGFscmVhZHkgaW1wb3J0ZWQgbW9kdWxlXG5cdFx0XHQvLyB0aGlzIGltcGxlbWVudGF0aW9uIGlzIG5vdCAxMDAlIHBlcmZlY3QgZm9yIHdlaXJkIG1lZGlhIHF1ZXJ5IGNvbWJpbmF0aW9uc1xuXHRcdFx0Ly8gIHdoZW4gYSBtb2R1bGUgaXMgaW1wb3J0ZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBkaWZmZXJlbnQgbWVkaWEgcXVlcmllcy5cblx0XHRcdC8vICBJIGhvcGUgdGhpcyB3aWxsIG5ldmVyIG9jY3VyIChIZXkgdGhpcyB3YXkgd2UgaGF2ZSBzbWFsbGVyIGJ1bmRsZXMpXG5cdFx0XHRpZih0eXBlb2YgaXRlbVswXSAhPT0gXCJudW1iZXJcIiB8fCAhYWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpdGVtWzBdXSkge1xuXHRcdFx0XHRpZihtZWRpYVF1ZXJ5ICYmICFpdGVtWzJdKSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IG1lZGlhUXVlcnk7XG5cdFx0XHRcdH0gZWxzZSBpZihtZWRpYVF1ZXJ5KSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IFwiKFwiICsgaXRlbVsyXSArIFwiKSBhbmQgKFwiICsgbWVkaWFRdWVyeSArIFwiKVwiO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpc3QucHVzaChpdGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdH07XG5cdHJldHVybiBsaXN0O1xufTtcblxuZnVuY3Rpb24gY3NzV2l0aE1hcHBpbmdUb1N0cmluZyhpdGVtLCB1c2VTb3VyY2VNYXApIHtcblx0dmFyIGNvbnRlbnQgPSBpdGVtWzFdIHx8ICcnO1xuXHR2YXIgY3NzTWFwcGluZyA9IGl0ZW1bM107XG5cdGlmICghY3NzTWFwcGluZykge1xuXHRcdHJldHVybiBjb250ZW50O1xuXHR9XG5cblx0aWYgKHVzZVNvdXJjZU1hcCAmJiB0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdHZhciBzb3VyY2VNYXBwaW5nID0gdG9Db21tZW50KGNzc01hcHBpbmcpO1xuXHRcdHZhciBzb3VyY2VVUkxzID0gY3NzTWFwcGluZy5zb3VyY2VzLm1hcChmdW5jdGlvbiAoc291cmNlKSB7XG5cdFx0XHRyZXR1cm4gJy8qIyBzb3VyY2VVUkw9JyArIGNzc01hcHBpbmcuc291cmNlUm9vdCArIHNvdXJjZSArICcgKi8nXG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gW2NvbnRlbnRdLmNvbmNhdChzb3VyY2VVUkxzKS5jb25jYXQoW3NvdXJjZU1hcHBpbmddKS5qb2luKCdcXG4nKTtcblx0fVxuXG5cdHJldHVybiBbY29udGVudF0uam9pbignXFxuJyk7XG59XG5cbi8vIEFkYXB0ZWQgZnJvbSBjb252ZXJ0LXNvdXJjZS1tYXAgKE1JVClcbmZ1bmN0aW9uIHRvQ29tbWVudChzb3VyY2VNYXApIHtcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG5cdHZhciBiYXNlNjQgPSBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpO1xuXHR2YXIgZGF0YSA9ICdzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwnICsgYmFzZTY0O1xuXG5cdHJldHVybiAnLyojICcgKyBkYXRhICsgJyAqLyc7XG59XG5cblxuLyoqKi8gfSksXG4vKiAyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbi8qXG5cdE1JVCBMaWNlbnNlIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG5cdEF1dGhvciBUb2JpYXMgS29wcGVycyBAc29rcmFcbiovXG5cbnZhciBzdHlsZXNJbkRvbSA9IHt9O1xuXG52YXJcdG1lbW9pemUgPSBmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW87XG5cblx0cmV0dXJuIGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodHlwZW9mIG1lbW8gPT09IFwidW5kZWZpbmVkXCIpIG1lbW8gPSBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHRcdHJldHVybiBtZW1vO1xuXHR9O1xufTtcblxudmFyIGlzT2xkSUUgPSBtZW1vaXplKGZ1bmN0aW9uICgpIHtcblx0Ly8gVGVzdCBmb3IgSUUgPD0gOSBhcyBwcm9wb3NlZCBieSBCcm93c2VyaGFja3Ncblx0Ly8gQHNlZSBodHRwOi8vYnJvd3NlcmhhY2tzLmNvbS8jaGFjay1lNzFkODY5MmY2NTMzNDE3M2ZlZTcxNWMyMjJjYjgwNVxuXHQvLyBUZXN0cyBmb3IgZXhpc3RlbmNlIG9mIHN0YW5kYXJkIGdsb2JhbHMgaXMgdG8gYWxsb3cgc3R5bGUtbG9hZGVyXG5cdC8vIHRvIG9wZXJhdGUgY29ycmVjdGx5IGludG8gbm9uLXN0YW5kYXJkIGVudmlyb25tZW50c1xuXHQvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJwYWNrLWNvbnRyaWIvc3R5bGUtbG9hZGVyL2lzc3Vlcy8xNzdcblx0cmV0dXJuIHdpbmRvdyAmJiBkb2N1bWVudCAmJiBkb2N1bWVudC5hbGwgJiYgIXdpbmRvdy5hdG9iO1xufSk7XG5cbnZhciBnZXRUYXJnZXQgPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG59O1xuXG52YXIgZ2V0RWxlbWVudCA9IChmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW8gPSB7fTtcblxuXHRyZXR1cm4gZnVuY3Rpb24odGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgcGFzc2luZyBmdW5jdGlvbiBpbiBvcHRpb25zLCB0aGVuIHVzZSBpdCBmb3IgcmVzb2x2ZSBcImhlYWRcIiBlbGVtZW50LlxuICAgICAgICAgICAgICAgIC8vIFVzZWZ1bCBmb3IgU2hhZG93IFJvb3Qgc3R5bGUgaS5lXG4gICAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAgIC8vICAgaW5zZXJ0SW50bzogZnVuY3Rpb24gKCkgeyByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNmb29cIikuc2hhZG93Um9vdCB9XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGFyZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbWVtb1t0YXJnZXRdID09PSBcInVuZGVmaW5lZFwiKSB7XG5cdFx0XHR2YXIgc3R5bGVUYXJnZXQgPSBnZXRUYXJnZXQuY2FsbCh0aGlzLCB0YXJnZXQpO1xuXHRcdFx0Ly8gU3BlY2lhbCBjYXNlIHRvIHJldHVybiBoZWFkIG9mIGlmcmFtZSBpbnN0ZWFkIG9mIGlmcmFtZSBpdHNlbGZcblx0XHRcdGlmICh3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQgJiYgc3R5bGVUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpIHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGFjY2VzcyB0byBpZnJhbWUgaXMgYmxvY2tlZFxuXHRcdFx0XHRcdC8vIGR1ZSB0byBjcm9zcy1vcmlnaW4gcmVzdHJpY3Rpb25zXG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBzdHlsZVRhcmdldC5jb250ZW50RG9jdW1lbnQuaGVhZDtcblx0XHRcdFx0fSBjYXRjaChlKSB7XG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBudWxsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRtZW1vW3RhcmdldF0gPSBzdHlsZVRhcmdldDtcblx0XHR9XG5cdFx0cmV0dXJuIG1lbW9bdGFyZ2V0XVxuXHR9O1xufSkoKTtcblxudmFyIHNpbmdsZXRvbiA9IG51bGw7XG52YXJcdHNpbmdsZXRvbkNvdW50ZXIgPSAwO1xudmFyXHRzdHlsZXNJbnNlcnRlZEF0VG9wID0gW107XG5cbnZhclx0Zml4VXJscyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24obGlzdCwgb3B0aW9ucykge1xuXHRpZiAodHlwZW9mIERFQlVHICE9PSBcInVuZGVmaW5lZFwiICYmIERFQlVHKSB7XG5cdFx0aWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJvYmplY3RcIikgdGhyb3cgbmV3IEVycm9yKFwiVGhlIHN0eWxlLWxvYWRlciBjYW5ub3QgYmUgdXNlZCBpbiBhIG5vbi1icm93c2VyIGVudmlyb25tZW50XCIpO1xuXHR9XG5cblx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cblx0b3B0aW9ucy5hdHRycyA9IHR5cGVvZiBvcHRpb25zLmF0dHJzID09PSBcIm9iamVjdFwiID8gb3B0aW9ucy5hdHRycyA6IHt9O1xuXG5cdC8vIEZvcmNlIHNpbmdsZS10YWcgc29sdXRpb24gb24gSUU2LTksIHdoaWNoIGhhcyBhIGhhcmQgbGltaXQgb24gdGhlICMgb2YgPHN0eWxlPlxuXHQvLyB0YWdzIGl0IHdpbGwgYWxsb3cgb24gYSBwYWdlXG5cdGlmICghb3B0aW9ucy5zaW5nbGV0b24gJiYgdHlwZW9mIG9wdGlvbnMuc2luZ2xldG9uICE9PSBcImJvb2xlYW5cIikgb3B0aW9ucy5zaW5nbGV0b24gPSBpc09sZElFKCk7XG5cblx0Ly8gQnkgZGVmYXVsdCwgYWRkIDxzdHlsZT4gdGFncyB0byB0aGUgPGhlYWQ+IGVsZW1lbnRcbiAgICAgICAgaWYgKCFvcHRpb25zLmluc2VydEludG8pIG9wdGlvbnMuaW5zZXJ0SW50byA9IFwiaGVhZFwiO1xuXG5cdC8vIEJ5IGRlZmF1bHQsIGFkZCA8c3R5bGU+IHRhZ3MgdG8gdGhlIGJvdHRvbSBvZiB0aGUgdGFyZ2V0XG5cdGlmICghb3B0aW9ucy5pbnNlcnRBdCkgb3B0aW9ucy5pbnNlcnRBdCA9IFwiYm90dG9tXCI7XG5cblx0dmFyIHN0eWxlcyA9IGxpc3RUb1N0eWxlcyhsaXN0LCBvcHRpb25zKTtcblxuXHRhZGRTdHlsZXNUb0RvbShzdHlsZXMsIG9wdGlvbnMpO1xuXG5cdHJldHVybiBmdW5jdGlvbiB1cGRhdGUgKG5ld0xpc3QpIHtcblx0XHR2YXIgbWF5UmVtb3ZlID0gW107XG5cblx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGl0ZW0gPSBzdHlsZXNbaV07XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdFx0ZG9tU3R5bGUucmVmcy0tO1xuXHRcdFx0bWF5UmVtb3ZlLnB1c2goZG9tU3R5bGUpO1xuXHRcdH1cblxuXHRcdGlmKG5ld0xpc3QpIHtcblx0XHRcdHZhciBuZXdTdHlsZXMgPSBsaXN0VG9TdHlsZXMobmV3TGlzdCwgb3B0aW9ucyk7XG5cdFx0XHRhZGRTdHlsZXNUb0RvbShuZXdTdHlsZXMsIG9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbWF5UmVtb3ZlLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBtYXlSZW1vdmVbaV07XG5cblx0XHRcdGlmKGRvbVN0eWxlLnJlZnMgPT09IDApIHtcblx0XHRcdFx0Zm9yICh2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykgZG9tU3R5bGUucGFydHNbal0oKTtcblxuXHRcdFx0XHRkZWxldGUgc3R5bGVzSW5Eb21bZG9tU3R5bGUuaWRdO1xuXHRcdFx0fVxuXHRcdH1cblx0fTtcbn07XG5cbmZ1bmN0aW9uIGFkZFN0eWxlc1RvRG9tIChzdHlsZXMsIG9wdGlvbnMpIHtcblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBzdHlsZXMubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IHN0eWxlc1tpXTtcblx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdGlmKGRvbVN0eWxlKSB7XG5cdFx0XHRkb21TdHlsZS5yZWZzKys7XG5cblx0XHRcdGZvcih2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRkb21TdHlsZS5wYXJ0c1tqXShpdGVtLnBhcnRzW2pdKTtcblx0XHRcdH1cblxuXHRcdFx0Zm9yKDsgaiA8IGl0ZW0ucGFydHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0ZG9tU3R5bGUucGFydHMucHVzaChhZGRTdHlsZShpdGVtLnBhcnRzW2pdLCBvcHRpb25zKSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHZhciBwYXJ0cyA9IFtdO1xuXG5cdFx0XHRmb3IodmFyIGogPSAwOyBqIDwgaXRlbS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRwYXJ0cy5wdXNoKGFkZFN0eWxlKGl0ZW0ucGFydHNbal0sIG9wdGlvbnMpKTtcblx0XHRcdH1cblxuXHRcdFx0c3R5bGVzSW5Eb21baXRlbS5pZF0gPSB7aWQ6IGl0ZW0uaWQsIHJlZnM6IDEsIHBhcnRzOiBwYXJ0c307XG5cdFx0fVxuXHR9XG59XG5cbmZ1bmN0aW9uIGxpc3RUb1N0eWxlcyAobGlzdCwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGVzID0gW107XG5cdHZhciBuZXdTdHlsZXMgPSB7fTtcblxuXHRmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IGxpc3RbaV07XG5cdFx0dmFyIGlkID0gb3B0aW9ucy5iYXNlID8gaXRlbVswXSArIG9wdGlvbnMuYmFzZSA6IGl0ZW1bMF07XG5cdFx0dmFyIGNzcyA9IGl0ZW1bMV07XG5cdFx0dmFyIG1lZGlhID0gaXRlbVsyXTtcblx0XHR2YXIgc291cmNlTWFwID0gaXRlbVszXTtcblx0XHR2YXIgcGFydCA9IHtjc3M6IGNzcywgbWVkaWE6IG1lZGlhLCBzb3VyY2VNYXA6IHNvdXJjZU1hcH07XG5cblx0XHRpZighbmV3U3R5bGVzW2lkXSkgc3R5bGVzLnB1c2gobmV3U3R5bGVzW2lkXSA9IHtpZDogaWQsIHBhcnRzOiBbcGFydF19KTtcblx0XHRlbHNlIG5ld1N0eWxlc1tpZF0ucGFydHMucHVzaChwYXJ0KTtcblx0fVxuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbmZ1bmN0aW9uIGluc2VydFN0eWxlRWxlbWVudCAob3B0aW9ucywgc3R5bGUpIHtcblx0dmFyIHRhcmdldCA9IGdldEVsZW1lbnQob3B0aW9ucy5pbnNlcnRJbnRvKVxuXG5cdGlmICghdGFyZ2V0KSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQ291bGRuJ3QgZmluZCBhIHN0eWxlIHRhcmdldC4gVGhpcyBwcm9iYWJseSBtZWFucyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlICdpbnNlcnRJbnRvJyBwYXJhbWV0ZXIgaXMgaW52YWxpZC5cIik7XG5cdH1cblxuXHR2YXIgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AgPSBzdHlsZXNJbnNlcnRlZEF0VG9wW3N0eWxlc0luc2VydGVkQXRUb3AubGVuZ3RoIC0gMV07XG5cblx0aWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwidG9wXCIpIHtcblx0XHRpZiAoIWxhc3RTdHlsZUVsZW1lbnRJbnNlcnRlZEF0VG9wKSB7XG5cdFx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCB0YXJnZXQuZmlyc3RDaGlsZCk7XG5cdFx0fSBlbHNlIGlmIChsYXN0U3R5bGVFbGVtZW50SW5zZXJ0ZWRBdFRvcC5uZXh0U2libGluZykge1xuXHRcdFx0dGFyZ2V0Lmluc2VydEJlZm9yZShzdHlsZSwgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AubmV4dFNpYmxpbmcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHRcdH1cblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnB1c2goc3R5bGUpO1xuXHR9IGVsc2UgaWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwiYm90dG9tXCIpIHtcblx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBvcHRpb25zLmluc2VydEF0ID09PSBcIm9iamVjdFwiICYmIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKSB7XG5cdFx0dmFyIG5leHRTaWJsaW5nID0gZ2V0RWxlbWVudChvcHRpb25zLmluc2VydEludG8gKyBcIiBcIiArIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKTtcblx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCBuZXh0U2libGluZyk7XG5cdH0gZWxzZSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiW1N0eWxlIExvYWRlcl1cXG5cXG4gSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICdpbnNlcnRBdCcgKCdvcHRpb25zLmluc2VydEF0JykgZm91bmQuXFxuIE11c3QgYmUgJ3RvcCcsICdib3R0b20nLCBvciBPYmplY3QuXFxuIChodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3N0eWxlLWxvYWRlciNpbnNlcnRhdClcXG5cIik7XG5cdH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlU3R5bGVFbGVtZW50IChzdHlsZSkge1xuXHRpZiAoc3R5bGUucGFyZW50Tm9kZSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuXHRzdHlsZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHN0eWxlKTtcblxuXHR2YXIgaWR4ID0gc3R5bGVzSW5zZXJ0ZWRBdFRvcC5pbmRleE9mKHN0eWxlKTtcblx0aWYoaWR4ID49IDApIHtcblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnNwbGljZShpZHgsIDEpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVN0eWxlRWxlbWVudCAob3B0aW9ucykge1xuXHR2YXIgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3R5bGVcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXG5cdGFkZEF0dHJzKHN0eWxlLCBvcHRpb25zLmF0dHJzKTtcblx0aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMsIHN0eWxlKTtcblxuXHRyZXR1cm4gc3R5bGU7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpbmtFbGVtZW50IChvcHRpb25zKSB7XG5cdHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImxpbmtcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXHRvcHRpb25zLmF0dHJzLnJlbCA9IFwic3R5bGVzaGVldFwiO1xuXG5cdGFkZEF0dHJzKGxpbmssIG9wdGlvbnMuYXR0cnMpO1xuXHRpbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucywgbGluayk7XG5cblx0cmV0dXJuIGxpbms7XG59XG5cbmZ1bmN0aW9uIGFkZEF0dHJzIChlbCwgYXR0cnMpIHtcblx0T2JqZWN0LmtleXMoYXR0cnMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuXHRcdGVsLnNldEF0dHJpYnV0ZShrZXksIGF0dHJzW2tleV0pO1xuXHR9KTtcbn1cblxuZnVuY3Rpb24gYWRkU3R5bGUgKG9iaiwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGUsIHVwZGF0ZSwgcmVtb3ZlLCByZXN1bHQ7XG5cblx0Ly8gSWYgYSB0cmFuc2Zvcm0gZnVuY3Rpb24gd2FzIGRlZmluZWQsIHJ1biBpdCBvbiB0aGUgY3NzXG5cdGlmIChvcHRpb25zLnRyYW5zZm9ybSAmJiBvYmouY3NzKSB7XG5cdCAgICByZXN1bHQgPSBvcHRpb25zLnRyYW5zZm9ybShvYmouY3NzKTtcblxuXHQgICAgaWYgKHJlc3VsdCkge1xuXHQgICAgXHQvLyBJZiB0cmFuc2Zvcm0gcmV0dXJucyBhIHZhbHVlLCB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIHJ1bm5pbmcgcnVudGltZSB0cmFuc2Zvcm1hdGlvbnMgb24gdGhlIGNzcy5cblx0ICAgIFx0b2JqLmNzcyA9IHJlc3VsdDtcblx0ICAgIH0gZWxzZSB7XG5cdCAgICBcdC8vIElmIHRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gcmV0dXJucyBhIGZhbHN5IHZhbHVlLCBkb24ndCBhZGQgdGhpcyBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIGNvbmRpdGlvbmFsIGxvYWRpbmcgb2YgY3NzXG5cdCAgICBcdHJldHVybiBmdW5jdGlvbigpIHtcblx0ICAgIFx0XHQvLyBub29wXG5cdCAgICBcdH07XG5cdCAgICB9XG5cdH1cblxuXHRpZiAob3B0aW9ucy5zaW5nbGV0b24pIHtcblx0XHR2YXIgc3R5bGVJbmRleCA9IHNpbmdsZXRvbkNvdW50ZXIrKztcblxuXHRcdHN0eWxlID0gc2luZ2xldG9uIHx8IChzaW5nbGV0b24gPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucykpO1xuXG5cdFx0dXBkYXRlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCBmYWxzZSk7XG5cdFx0cmVtb3ZlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCB0cnVlKTtcblxuXHR9IGVsc2UgaWYgKFxuXHRcdG9iai5zb3VyY2VNYXAgJiZcblx0XHR0eXBlb2YgVVJMID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgVVJMLmNyZWF0ZU9iamVjdFVSTCA9PT0gXCJmdW5jdGlvblwiICYmXG5cdFx0dHlwZW9mIFVSTC5yZXZva2VPYmplY3RVUkwgPT09IFwiZnVuY3Rpb25cIiAmJlxuXHRcdHR5cGVvZiBCbG9iID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgYnRvYSA9PT0gXCJmdW5jdGlvblwiXG5cdCkge1xuXHRcdHN0eWxlID0gY3JlYXRlTGlua0VsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gdXBkYXRlTGluay5iaW5kKG51bGwsIHN0eWxlLCBvcHRpb25zKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXG5cdFx0XHRpZihzdHlsZS5ocmVmKSBVUkwucmV2b2tlT2JqZWN0VVJMKHN0eWxlLmhyZWYpO1xuXHRcdH07XG5cdH0gZWxzZSB7XG5cdFx0c3R5bGUgPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gYXBwbHlUb1RhZy5iaW5kKG51bGwsIHN0eWxlKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXHRcdH07XG5cdH1cblxuXHR1cGRhdGUob2JqKTtcblxuXHRyZXR1cm4gZnVuY3Rpb24gdXBkYXRlU3R5bGUgKG5ld09iaikge1xuXHRcdGlmIChuZXdPYmopIHtcblx0XHRcdGlmIChcblx0XHRcdFx0bmV3T2JqLmNzcyA9PT0gb2JqLmNzcyAmJlxuXHRcdFx0XHRuZXdPYmoubWVkaWEgPT09IG9iai5tZWRpYSAmJlxuXHRcdFx0XHRuZXdPYmouc291cmNlTWFwID09PSBvYmouc291cmNlTWFwXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHR1cGRhdGUob2JqID0gbmV3T2JqKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVtb3ZlKCk7XG5cdFx0fVxuXHR9O1xufVxuXG52YXIgcmVwbGFjZVRleHQgPSAoZnVuY3Rpb24gKCkge1xuXHR2YXIgdGV4dFN0b3JlID0gW107XG5cblx0cmV0dXJuIGZ1bmN0aW9uIChpbmRleCwgcmVwbGFjZW1lbnQpIHtcblx0XHR0ZXh0U3RvcmVbaW5kZXhdID0gcmVwbGFjZW1lbnQ7XG5cblx0XHRyZXR1cm4gdGV4dFN0b3JlLmZpbHRlcihCb29sZWFuKS5qb2luKCdcXG4nKTtcblx0fTtcbn0pKCk7XG5cbmZ1bmN0aW9uIGFwcGx5VG9TaW5nbGV0b25UYWcgKHN0eWxlLCBpbmRleCwgcmVtb3ZlLCBvYmopIHtcblx0dmFyIGNzcyA9IHJlbW92ZSA/IFwiXCIgOiBvYmouY3NzO1xuXG5cdGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gcmVwbGFjZVRleHQoaW5kZXgsIGNzcyk7XG5cdH0gZWxzZSB7XG5cdFx0dmFyIGNzc05vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpO1xuXHRcdHZhciBjaGlsZE5vZGVzID0gc3R5bGUuY2hpbGROb2RlcztcblxuXHRcdGlmIChjaGlsZE5vZGVzW2luZGV4XSkgc3R5bGUucmVtb3ZlQ2hpbGQoY2hpbGROb2Rlc1tpbmRleF0pO1xuXG5cdFx0aWYgKGNoaWxkTm9kZXMubGVuZ3RoKSB7XG5cdFx0XHRzdHlsZS5pbnNlcnRCZWZvcmUoY3NzTm9kZSwgY2hpbGROb2Rlc1tpbmRleF0pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzdHlsZS5hcHBlbmRDaGlsZChjc3NOb2RlKTtcblx0XHR9XG5cdH1cbn1cblxuZnVuY3Rpb24gYXBwbHlUb1RhZyAoc3R5bGUsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIG1lZGlhID0gb2JqLm1lZGlhO1xuXG5cdGlmKG1lZGlhKSB7XG5cdFx0c3R5bGUuc2V0QXR0cmlidXRlKFwibWVkaWFcIiwgbWVkaWEpXG5cdH1cblxuXHRpZihzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xuXHR9IGVsc2Uge1xuXHRcdHdoaWxlKHN0eWxlLmZpcnN0Q2hpbGQpIHtcblx0XHRcdHN0eWxlLnJlbW92ZUNoaWxkKHN0eWxlLmZpcnN0Q2hpbGQpO1xuXHRcdH1cblxuXHRcdHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUxpbmsgKGxpbmssIG9wdGlvbnMsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIHNvdXJjZU1hcCA9IG9iai5zb3VyY2VNYXA7XG5cblx0Lypcblx0XHRJZiBjb252ZXJ0VG9BYnNvbHV0ZVVybHMgaXNuJ3QgZGVmaW5lZCwgYnV0IHNvdXJjZW1hcHMgYXJlIGVuYWJsZWRcblx0XHRhbmQgdGhlcmUgaXMgbm8gcHVibGljUGF0aCBkZWZpbmVkIHRoZW4gbGV0cyB0dXJuIGNvbnZlcnRUb0Fic29sdXRlVXJsc1xuXHRcdG9uIGJ5IGRlZmF1bHQuICBPdGhlcndpc2UgZGVmYXVsdCB0byB0aGUgY29udmVydFRvQWJzb2x1dGVVcmxzIG9wdGlvblxuXHRcdGRpcmVjdGx5XG5cdCovXG5cdHZhciBhdXRvRml4VXJscyA9IG9wdGlvbnMuY29udmVydFRvQWJzb2x1dGVVcmxzID09PSB1bmRlZmluZWQgJiYgc291cmNlTWFwO1xuXG5cdGlmIChvcHRpb25zLmNvbnZlcnRUb0Fic29sdXRlVXJscyB8fCBhdXRvRml4VXJscykge1xuXHRcdGNzcyA9IGZpeFVybHMoY3NzKTtcblx0fVxuXG5cdGlmIChzb3VyY2VNYXApIHtcblx0XHQvLyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yNjYwMzg3NVxuXHRcdGNzcyArPSBcIlxcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsXCIgKyBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpICsgXCIgKi9cIjtcblx0fVxuXG5cdHZhciBibG9iID0gbmV3IEJsb2IoW2Nzc10sIHsgdHlwZTogXCJ0ZXh0L2Nzc1wiIH0pO1xuXG5cdHZhciBvbGRTcmMgPSBsaW5rLmhyZWY7XG5cblx0bGluay5ocmVmID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcblxuXHRpZihvbGRTcmMpIFVSTC5yZXZva2VPYmplY3RVUkwob2xkU3JjKTtcbn1cblxuXG4vKioqLyB9KSxcbi8qIDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIEJvb2xlYW5Td2l0Y2g7IH0pO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIEJvb2xlYW4gUmVuZGVyZXJcbipcbiogU2ltcGxlIHRvZ2dsZSBzd2l0Y2ggdG8gaGFuZGxlIGJvb2xlYW4gdmFsdWVzXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xudmFyIEJvb2xlYW5Td2l0Y2ggPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICAvKipcbiAgICogQ29uc3RydWN0IHRoZSBCb29sZWFuU3dpdGNoIENvbXBvbmVudFxuICAgKlxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IGNoZWNrZWQgY2hlY2tlZCBkZWZhdWx0IHZhbHVlICwgdHJ1ZSB0byBjaGVjayAsIGZhbHNlIHRvIHVuY2hlY2tcbiAgICogQHBhcmFtIHtPYmplY3R9IGRvYyBkb2N1bWVudCBpbnN0YW5jZVxuICAgKi9cbiAgZnVuY3Rpb24gQm9vbGVhblN3aXRjaCgpIHtcbiAgICB2YXIgY2hlY2tlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogZmFsc2U7XG4gICAgdmFyIGRvYyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZG9jdW1lbnQ7XG4gICAgdmFyIGxpc3RlbmVyID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiBudWxsO1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEJvb2xlYW5Td2l0Y2gpO1xuXG4gICAgdGhpcy5fYnVpbGQobGlzdGVuZXIsIGNoZWNrZWQsIGRvYyk7XG4gIH1cbiAgLyoqXG4gICAqIEdldCB0aGUgY29tcG9uZW50IHZhbHVlXG4gICAqXG4gICAqIEByZXR1cm4ge0Jvb2xlYW59XG4gICAqL1xuXG5cbiAgX2NyZWF0ZUNsYXNzKEJvb2xlYW5Td2l0Y2gsIFt7XG4gICAga2V5OiBcImdldFZhbHVlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQuY2hlY2tlZDtcbiAgICB9XG4gICAgLyoqIEZvY3VzIG9uIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImZvY3VzXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGZvY3VzKCkge1xuICAgICAgdGhpcy5jb21wb25lbnQuZm9jdXMoKTtcbiAgICB9XG4gICAgLyoqIFRvZ2dsZSB0aGUgY29tcG9uZW50IHN0YXRlICovXG5cbiAgfSwge1xuICAgIGtleTogXCJ0b2dnbGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gdG9nZ2xlKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gIXRoaXMuaW5wdXQuY2hlY2tlZDtcbiAgICB9XG4gICAgLyoqIFNldCB0aGUgY29tcG9uZW50IHN0YXRlIHRvIGNoZWNrZWQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImNoZWNrXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGNoZWNrKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gICAgLyoqIFNldCB0aGUgY29tcG9uZW50IHN0YXRlIHRvIHVuY2hlY2tlZCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwidW5jaGVja1wiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiB1bmNoZWNrKCkge1xuICAgICAgdGhpcy5pbnB1dC5jaGVja2VkID0gZmFsc2U7XG4gICAgfVxuICAgIC8qKiBFbmFibGUgdGhlIGNvbXBvbmVudCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZW5hYmxlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGVuYWJsZSgpIHtcbiAgICAgIHRoaXMuaW5wdXQuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLyoqIERpc2FibGUgdGhlIGNvbXBvbmVudCAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGlzYWJsZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkaXNhYmxlKCkge1xuICAgICAgdGhpcy5pbnB1dC5kaXNhYmxlZCA9IHRydWU7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImRlc3Ryb3lcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGVzdHJveSgpIHtcbiAgICAgIGlmICh0aGlzLl9vbkNsaWNrQmluZCkgdGhpcy5jb21wb25lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9vbkNsaWNrQmluZCk7XG4gICAgICBpZiAodGhpcy5fb25DaGFuZ2VCaW5kKSB0aGlzLmNvbXBvbmVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25DaGFuZ2VCaW5kKTtcbiAgICAgIHRoaXMuZGlzYWJsZSgpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkKGxpc3RlbmVyKSB7XG4gICAgICB2YXIgY2hlY2tlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZmFsc2U7XG4gICAgICB2YXIgZG9jID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiBkb2N1bWVudDtcbiAgICAgIC8vIGxhYmVsIGFzIGNvbXBvbmVudFxuICAgICAgdGhpcy5jb21wb25lbnQgPSBkb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICB0aGlzLmNvbXBvbmVudC5jbGFzc05hbWUgPSAnQm9vbGVhblN3aXRjaCc7XG4gICAgICB0aGlzLmNvbXBvbmVudC50YWJJbmRleCA9IFwiLTFcIjsgLy8gc3BhbiBhcyBzbGlkZXJcblxuICAgICAgdGhpcy5zbGlkZXIgPSBkb2MuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgdGhpcy5zbGlkZXIuY2xhc3NOYW1lID0gJ3NsaWRlciByb3VuZCc7IC8vIGlucHV0XG5cbiAgICAgIHRoaXMuaW5wdXQgPSBkb2MuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgIHRoaXMuaW5wdXQudHlwZSA9ICdjaGVja2JveCc7XG4gICAgICB0aGlzLmlucHV0LmNoZWNrZWQgPSBjaGVja2VkO1xuICAgICAgdGhpcy5pbnB1dC50YWJJbmRleCA9IFwiMFwiOyAvLyBhdHRhY2hlIGlucHV0IGFuZCBzbGlkZXIgdG8gY29tcG9uZW50XG5cbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdGhpcy5jb21wb25lbnQuYXBwZW5kQ2hpbGQodGhpcy5zbGlkZXIpO1xuICAgICAgdGhpcy5fb25DbGlja0JpbmQgPSB0aGlzLl9vbkNsaWNrLmJpbmQodGhpcywgbGlzdGVuZXIpO1xuICAgICAgdGhpcy5fb25DaGFuZ2VCaW5kID0gdGhpcy5fb25DaGFuZ2UuYmluZCh0aGlzLCBsaXN0ZW5lcik7XG4gICAgICB0aGlzLmNvbXBvbmVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX29uQ2xpY2tCaW5kKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLl9vbkNoYW5nZUJpbmQpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfb25DbGlja1wiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25DbGljayhsaXN0ZW5lciwgZSkge1xuICAgICAgaWYgKHRoaXMuaW5wdXQuZGlzYWJsZWQpIHJldHVybiBmYWxzZTtcbiAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICBpZiAobGlzdGVuZXIpIGxpc3RlbmVyKHRoaXMpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJfb25DaGFuZ2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uQ2hhbmdlKGxpc3RlbmVyLCBlKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dC5kaXNhYmxlZCkgcmV0dXJuIGZhbHNlO1xuICAgICAgdmFyIGtleSA9IGUud2hpY2ggfHwgZS5rZXlDb2RlO1xuXG4gICAgICBpZiAoa2V5ID09IDMyKSB7XG4gICAgICAgIC8vIHNwYWNlXG4gICAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICAgIGlmIChsaXN0ZW5lcikgbGlzdGVuZXIodGhpcyk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9IGVsc2UgaWYgKGtleSA9PSAzOSkge1xuICAgICAgICAvLyByaWdodFxuICAgICAgICB0aGlzLmNoZWNrKCk7XG4gICAgICAgIGlmIChsaXN0ZW5lcikgbGlzdGVuZXIodGhpcyk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9IGVsc2UgaWYgKGtleSA9PSAzNykge1xuICAgICAgICAvLyBsZWZ0XG4gICAgICAgIHRoaXMudW5jaGVjaygpO1xuICAgICAgICBpZiAobGlzdGVuZXIpIGxpc3RlbmVyKHRoaXMpO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBCb29sZWFuU3dpdGNoO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiA0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlVGltZXNEaWFsb2c7IH0pO1xuZnVuY3Rpb24gX29iamVjdFNwcmVhZCh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXSAhPSBudWxsID8gYXJndW1lbnRzW2ldIDoge307IHZhciBvd25LZXlzID0gT2JqZWN0LmtleXMoc291cmNlKTsgaWYgKHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSAnZnVuY3Rpb24nKSB7IG93bktleXMgPSBvd25LZXlzLmNvbmNhdChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHNvdXJjZSkuZmlsdGVyKGZ1bmN0aW9uIChzeW0pIHsgcmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioc291cmNlLCBzeW0pLmVudW1lcmFibGU7IH0pKTsgfSBvd25LZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkgeyBfZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHNvdXJjZVtrZXldKTsgfSk7IH0gcmV0dXJuIHRhcmdldDsgfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKipcbiogRGF0ZVRpbWVzRGlhbG9nXG4qXG4qIEEgd3JhcCBhcm91bmQgZmxhdHBpY2tyIEFQSVxuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBEYXRlVGltZXNEaWFsb2cgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICAvKipcbiAgICogQ29uc3RydWN0IHRoZSBEYXRlVGltZXNEaWFsb2cgQ29tcG9uZW50XG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBkb2MgZG9jdW1lbnQgaW5zdGFuY2VcbiAgICogXG4gICAqIHtAbGluayBodHRwczovL2ZsYXRwaWNrci5qcy5vcmcvb3B0aW9ucy99XG4gICAqL1xuICBmdW5jdGlvbiBEYXRlVGltZXNEaWFsb2coKSB7XG4gICAgdmFyIG9wdGlvbnMgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuICAgIHZhciBkb2MgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IGRvY3VtZW50O1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIERhdGVUaW1lc0RpYWxvZyk7XG5cbiAgICB0aGlzLmRvYyA9IGRvYztcbiAgICB0aGlzLm9wdGlvbnMgPSBfb2JqZWN0U3ByZWFkKHt9LCB7XG4gICAgICBkYXRlRm9ybWF0OiBvcHRpb25zLm1hc2ssXG4gICAgICBmb3JtYXREYXRlOiB0aGlzLmZvcm1hdERhdGUuYmluZCh0aGlzKSxcbiAgICAgIHBhcnNlRGF0ZTogdGhpcy5wYXJzZURhdGUuYmluZCh0aGlzKSxcbiAgICAgIG9uUmVhZHk6IHRoaXMuX29uUmVhZHkuYmluZCh0aGlzKVxuICAgIH0sIG9wdGlvbnMpO1xuXG4gICAgdGhpcy5fYnVpbGQodGhpcy5vcHRpb25zLCB0aGlzLmRvYyk7XG4gIH1cbiAgLyoqXG4gICAqIEZvcm1hdCB0aGUgZGF0ZSB1c2luZyBgQkJqLk1hc2tzLlR5cGVzLmRhdGVgXG4gICAqIFxuICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAqIEBwYXJhbSB7U3RyaW5nfSBmb3JtYXQgQkJqIGRhdGUgZm9ybWF0XG4gICAqL1xuXG5cbiAgX2NyZWF0ZUNsYXNzKERhdGVUaW1lc0RpYWxvZywgW3tcbiAgICBrZXk6IFwiZm9ybWF0RGF0ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb3JtYXREYXRlKGRhdGUsIGZvcm1hdCkge1xuICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCclJykgPCAwKSByZXR1cm47XG4gICAgICByZXR1cm4gQkJqLk1hc2tzLlR5cGVzLmRhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IGRhdGUgb2JqZWN0IGZyb20gYSBkYXRlIHN0cmluZyBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZVN0cmluZyBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJwYXJzZURhdGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gcGFyc2VEYXRlKGRhdGVTdHJpbmcpIHtcbiAgICAgIHZhciBkYXRlT2JqZWN0ID0gRGF0ZS5wYXJzZShkYXRlU3RyaW5nKTtcbiAgICAgIGlmICghKGRhdGVPYmplY3QgaW5zdGFuY2VvZiBEYXRlKSkgZGF0ZU9iamVjdCA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpO1xuICAgICAgcmV0dXJuIGRhdGVPYmplY3Q7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBjYWxhbmRlciBkYXRlXG4gICAgICogXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGRhdGUgXG4gICAgICogQHBhcmFtIHtCb29sZWFufSB0cmlnZ2VyQ2hhbmdlIFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwic2V0RGF0ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBzZXREYXRlKGRhdGUpIHtcbiAgICAgIHZhciB0cmlnZ2VyQ2hhbmdlID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiBmYWxzZTtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLnNldERhdGUoZGF0ZSB8fCAnJywgdHJpZ2dlckNoYW5nZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBjYWxhbmRlciBvcHRpb25cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gb3B0aW9uIFxuICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJzZXRPcHRpb25cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gc2V0T3B0aW9uKG9wdGlvbiwgdmFsdWUpIHtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLnNldChvcHRpb24sIHZhbHVlKTtcbiAgICB9XG4gICAgLyoqIE9wZW4gY2FsYW5kZXIgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIm9wZW5cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gb3BlbigpIHtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLm9wZW4oKTtcbiAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LmZvY3VzKCk7XG4gICAgfVxuICAgIC8qKiBDbG9zZSBDYWxhbmRlciAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiY2xvc2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gY2xvc2UoKSB7XG4gICAgICB0aGlzLmZsYXRwaWNrci5jbG9zZSgpO1xuICAgIH1cbiAgICAvKiogRW5hYmxlIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImVuYWJsZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBlbmFibGUoKSB7XG4gICAgICB0aGlzLmlucHV0LmRpc2FibGVkID0gZmFsc2U7XG4gICAgfVxuICAgIC8qKiBEaXNhYmxlIHRoZSBjb21wb25lbnQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImRpc2FibGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGlzYWJsZSgpIHtcbiAgICAgIHRoaXMuaW5wdXQuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cbiAgICAvKiogRGVzdHJveSBUaGUgY29tcG9uZW50IGFuZCByZW1vdmUgZXZlbnQgbGlzdGVuZXJzICovXG5cbiAgfSwge1xuICAgIGtleTogXCJkZXN0cm95XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICB0aGlzLmZsYXRwaWNrci5kZXN0cm95KCk7XG4gICAgICBpZiAodGhpcy5fb25DbGVhckJ1dHRvbkNsaWNrQmluZCkgdGhpcy5jbGVhckJ1dHRvbi5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX29uQ2xlYXJCdXR0b25DbGlja0JpbmQpO1xuICAgICAgaWYgKHRoaXMuX29uS2V5RG93bkJpbmQpIHRoaXMuY29tcG9uZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLl9vbktleURvd25CaW5kKTtcbiAgICB9XG4gICAgLyoqIEJ1aWxkIHRoZSBjb21wb25lbnQgc3RydWN0dXJlICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkKCkge1xuICAgICAgdmFyIG9wdGlvbnMgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuICAgICAgdmFyIGRvYyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogZG9jdW1lbnQ7XG4gICAgICB0aGlzLmNvbXBvbmVudCA9IGRvYy5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmNsYXNzTmFtZSA9ICdEYXRlVGltZXNEaWFsb2cnO1xuICAgICAgdGhpcy5jb21wb25lbnQudGFiSW5kZXggPSBcIjBcIjtcbiAgICAgIHRoaXMuaW5wdXQgPSBkb2MuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdGhpcy5mbGF0cGlja3IgPSBmbGF0cGlja3IodGhpcy5pbnB1dCwgb3B0aW9ucyk7XG4gICAgICB0aGlzLl9vbktleURvd25CaW5kID0gdGhpcy5fb25LZXlEb3duLmJpbmQodGhpcyk7XG4gICAgICB0aGlzLmNvbXBvbmVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duQmluZCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEFsbG93IGFycm93IGtleXMgaW5zaWRlIHRoZSBpbnB1dFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGUgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25LZXlEb3duXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9vbktleURvd24oZSkge1xuICAgICAgdmFyIGtleSA9IGUud2hpY2ggfHwgZS5rZXlDb2RlO1xuXG4gICAgICBpZiAoWzM3LCAzOV0uaW5kZXhPZihrZXkpID4gLTEpIHtcbiAgICAgICAgLy8gbGVmdCB8fCByaWdodFxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmICgzOCA9PT0ga2V5KSB7XG4gICAgICAgIC8vIHVwIFxuICAgICAgICB2YXIgY3VycmVudERhdGUgPSB0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZTtcblxuICAgICAgICB2YXIgX25leHQgPSBEYXRlLnBhcnNlKGN1cnJlbnREYXRlKTtcblxuICAgICAgICBpZiAoIShfbmV4dCBpbnN0YW5jZW9mIERhdGUpKSBfbmV4dCA9IG5ldyBEYXRlKGN1cnJlbnREYXRlKTtcblxuICAgICAgICBfbmV4dC5zZXREYXRlKF9uZXh0LmdldERhdGUoKSArIDEpO1xuXG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLnNldERhdGUoX25leHQsIGZhbHNlLCB0aGlzLm9wdGlvbnMubWFzayk7XG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LnZhbHVlID0gQkJqLk1hc2tzLlR5cGVzLmRhdGUoX25leHQsIHRoaXMub3B0aW9ucy5tYXNrKTtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH0gZWxzZSBpZiAoNDAgPT09IGtleSkge1xuICAgICAgICAvLyBkb3duXG4gICAgICAgIHZhciBfY3VycmVudERhdGUgPSB0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZTtcbiAgICAgICAgdmFyIHByZXYgPSBEYXRlLnBhcnNlKF9jdXJyZW50RGF0ZSk7XG4gICAgICAgIGlmICghKHByZXYgaW5zdGFuY2VvZiBEYXRlKSkgbmV4dCA9IG5ldyBEYXRlKF9jdXJyZW50RGF0ZSk7XG4gICAgICAgIHByZXYuc2V0RGF0ZShwcmV2LmdldERhdGUoKSAtIDEpO1xuICAgICAgICB0aGlzLmZsYXRwaWNrci5zZXREYXRlKHByZXYsIGZhbHNlLCB0aGlzLm9wdGlvbnMubWFzayk7XG4gICAgICAgIHRoaXMuZmxhdHBpY2tyLmlucHV0LnZhbHVlID0gQkJqLk1hc2tzLlR5cGVzLmRhdGUocHJldiwgdGhpcy5vcHRpb25zLm1hc2spO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmICg5ID09PSBrZXkpIHtcbiAgICAgICAgLy8gdGFwXG4gICAgICAgIHRoaXMuc2V0RGF0ZSh0aGlzLmZsYXRwaWNrci5pbnB1dC52YWx1ZSwgdHJ1ZSwgdGhpcy5vcHRpb25zLmRhdGVGb3JtYXQpO1xuICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNsZWFyIGJ1dHRvbiB3aGVuIGZsYXRwaWNrciBpcyByZWFkeSBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge0RhdGV9IGRhdGVPYmogXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGRhdGVTdHIgXG4gICAgICogQHBhcmFtIHtmbGF0cGlja3J9IGluc3RhbmNlIFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX29uUmVhZHlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uUmVhZHkoZGF0ZU9iaiwgZGF0ZVN0ciwgaW5zdGFuY2UpIHtcbiAgICAgIHZhciBjbGVhckJ1dHRvbiA9IGluc3RhbmNlLmNhbGVuZGFyQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5mbGF0cGlja3ItY2xlYXInKTtcblxuICAgICAgaWYgKCFjbGVhckJ1dHRvbikge1xuICAgICAgICB0aGlzLmNsZWFyQnV0dG9uID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uY2xhc3NOYW1lID0gJ2ZsYXRwaWNrci1jbGVhcic7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uaW5uZXJIVE1MID0gJ0NsZWFyJztcbiAgICAgICAgaW5zdGFuY2UuY2FsZW5kYXJDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5jbGVhckJ1dHRvbik7XG4gICAgICAgIHRoaXMuX29uQ2xlYXJCdXR0b25DbGlja0JpbmQgPSB0aGlzLl9vbkNsZWFyQnV0dG9uQ2xpY2suYmluZCh0aGlzLCBpbnN0YW5jZSk7XG4gICAgICAgIHRoaXMuY2xlYXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9vbkNsZWFyQnV0dG9uQ2xpY2tCaW5kKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogTGlzdGVuIHRvIGZsYXRwaWNrciBjbGVhciBidXR0b24gY2xpY2tzIGFuZCBjbGVhciB0aGUgY2FsYW5kZXJcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge2ZsYXRwaWNrcn0gaW5zdGFuY2UgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25DbGVhckJ1dHRvbkNsaWNrXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9vbkNsZWFyQnV0dG9uQ2xpY2soZmxhdHBpY2tySW5zdGFuY2UpIHtcbiAgICAgIGZsYXRwaWNrckluc3RhbmNlLmNsZWFyKCk7XG4gICAgICBmbGF0cGlja3JJbnN0YW5jZS5jbG9zZSgpO1xuICAgICAgaWYgKHRoaXMub3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgnb25DbGVhcicpKSB0aGlzLm9wdGlvbnMub25DbGVhcigpO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBEYXRlVGltZXNEaWFsb2c7XG59KCk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxudmFyIGNvbnRlbnQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuXG5pZiAodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaSwgY29udGVudCwgJyddXTtcbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcbnZhciBvcHRpb25zID0ge1xuICBcImhtclwiOiB0cnVlXG59O1xub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm07XG5cbm9wdGlvbnMuaW5zZXJ0SW50byA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHdpbmRvdy50b3AuZG9jdW1lbnQuaGVhZDtcbn07XG5cbnZhciB1cGRhdGUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZiAoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmIChmYWxzZSkge1xuICBtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIsIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTEtMSEuL3N0eWxlLmNzc1wiKTtcblxuICAgIGlmICh0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuICAgIHZhciBsb2NhbHMgPSBmdW5jdGlvbiAoYSwgYikge1xuICAgICAgdmFyIGtleSxcbiAgICAgICAgICBpZHggPSAwO1xuXG4gICAgICBmb3IgKGtleSBpbiBhKSB7XG4gICAgICAgIGlmICghYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZHgrKztcbiAgICAgIH1cblxuICAgICAgZm9yIChrZXkgaW4gYikge1xuICAgICAgICBpZHgtLTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGlkeCA9PT0gMDtcbiAgICB9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2Fscyk7XG5cbiAgICBpZiAoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcbiAgICB1cGRhdGUobmV3Q29udGVudCk7XG4gIH0pO1xuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24gKCkge1xuICAgIHVwZGF0ZSgpO1xuICB9KTtcbn1cblxuLyoqKi8gfSksXG4vKiA2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNCb29sZWFuc1JlbmRlcmVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0uQmFzaWNCb29sZWFuc0ZpbHRlciB1bHtkaXNwbGF5OmJsb2NrO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXJ9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGl7cGFkZGluZzoxMHB4Oy13ZWJraXQtdHJhbnNpdGlvbjouNHM7dHJhbnNpdGlvbjouNHM7Ym9yZGVyLWJvdHRvbTp0aGluIHNvbGlkICNjY2N9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGkuc2VsZWN0ZWR7YmFja2dyb3VuZDojNTY5ZmY3O2NvbG9yOiNmZmZ9LkJhc2ljQm9vbGVhbnNGaWx0ZXIgdWwgbGk6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9LkJvb2xlYW5Td2l0Y2h7b3V0bGluZTpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt3aWR0aDo0MHB4O2hlaWdodDoyMHB4fS5Cb29sZWFuU3dpdGNoIGlucHV0e2Rpc3BsYXk6bm9uZX0uQm9vbGVhblN3aXRjaCAuc2xpZGVye2N1cnNvcjpwb2ludGVyO3RvcDoyMCU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjEwJTtiYWNrZ3JvdW5kLWNvbG9yOiNjY2N9LkJvb2xlYW5Td2l0Y2ggLnNsaWRlciwuQm9vbGVhblN3aXRjaCAuc2xpZGVyOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246LjRzO3RyYW5zaXRpb246LjRzfS5Cb29sZWFuU3dpdGNoIC5zbGlkZXI6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXCI7aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtsZWZ0OjFweDt0b3A6MXB4O2JvdHRvbToxcHg7cmlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2ZmZn0uQm9vbGVhblN3aXRjaCBpbnB1dDpjaGVja2VkKy5zbGlkZXJ7YmFja2dyb3VuZC1jb2xvcjojNTY5ZmY3fS5Cb29sZWFuU3dpdGNoIGlucHV0OmZvY3VzKy5zbGlkZXJ7Ym94LXNoYWRvdzowIDAgMXB4ICM1NjlmZjd9LkJvb2xlYW5Td2l0Y2ggaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyOmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KX0uQm9vbGVhblN3aXRjaCAuc2xpZGVyLnJvdW5ke2JvcmRlci1yYWRpdXM6MjhweH0uQm9vbGVhblN3aXRjaCAuc2xpZGVyLnJvdW5kOmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJX1cIiwgXCJcIl0pO1xuXG4vLyBleHBvcnRzXG5cblxuLyoqKi8gfSksXG4vKiA3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cblxuLyoqXG4gKiBXaGVuIHNvdXJjZSBtYXBzIGFyZSBlbmFibGVkLCBgc3R5bGUtbG9hZGVyYCB1c2VzIGEgbGluayBlbGVtZW50IHdpdGggYSBkYXRhLXVyaSB0b1xuICogZW1iZWQgdGhlIGNzcyBvbiB0aGUgcGFnZS4gVGhpcyBicmVha3MgYWxsIHJlbGF0aXZlIHVybHMgYmVjYXVzZSBub3cgdGhleSBhcmUgcmVsYXRpdmUgdG8gYVxuICogYnVuZGxlIGluc3RlYWQgb2YgdGhlIGN1cnJlbnQgcGFnZS5cbiAqXG4gKiBPbmUgc29sdXRpb24gaXMgdG8gb25seSB1c2UgZnVsbCB1cmxzLCBidXQgdGhhdCBtYXkgYmUgaW1wb3NzaWJsZS5cbiAqXG4gKiBJbnN0ZWFkLCB0aGlzIGZ1bmN0aW9uIFwiZml4ZXNcIiB0aGUgcmVsYXRpdmUgdXJscyB0byBiZSBhYnNvbHV0ZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgcGFnZSBsb2NhdGlvbi5cbiAqXG4gKiBBIHJ1ZGltZW50YXJ5IHRlc3Qgc3VpdGUgaXMgbG9jYXRlZCBhdCBgdGVzdC9maXhVcmxzLmpzYCBhbmQgY2FuIGJlIHJ1biB2aWEgdGhlIGBucG0gdGVzdGAgY29tbWFuZC5cbiAqXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoY3NzKSB7XG4gIC8vIGdldCBjdXJyZW50IGxvY2F0aW9uXG4gIHZhciBsb2NhdGlvbiA9IHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIgJiYgd2luZG93LmxvY2F0aW9uO1xuXG4gIGlmICghbG9jYXRpb24pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJmaXhVcmxzIHJlcXVpcmVzIHdpbmRvdy5sb2NhdGlvblwiKTtcbiAgfVxuXG5cdC8vIGJsYW5rIG9yIG51bGw/XG5cdGlmICghY3NzIHx8IHR5cGVvZiBjc3MgIT09IFwic3RyaW5nXCIpIHtcblx0ICByZXR1cm4gY3NzO1xuICB9XG5cbiAgdmFyIGJhc2VVcmwgPSBsb2NhdGlvbi5wcm90b2NvbCArIFwiLy9cIiArIGxvY2F0aW9uLmhvc3Q7XG4gIHZhciBjdXJyZW50RGlyID0gYmFzZVVybCArIGxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoL1xcL1teXFwvXSokLywgXCIvXCIpO1xuXG5cdC8vIGNvbnZlcnQgZWFjaCB1cmwoLi4uKVxuXHQvKlxuXHRUaGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBqdXN0IGEgd2F5IHRvIHJlY3Vyc2l2ZWx5IG1hdGNoIGJyYWNrZXRzIHdpdGhpblxuXHRhIHN0cmluZy5cblxuXHQgL3VybFxccypcXCggID0gTWF0Y2ggb24gdGhlIHdvcmQgXCJ1cmxcIiB3aXRoIGFueSB3aGl0ZXNwYWNlIGFmdGVyIGl0IGFuZCB0aGVuIGEgcGFyZW5zXG5cdCAgICggID0gU3RhcnQgYSBjYXB0dXJpbmcgZ3JvdXBcblx0ICAgICAoPzogID0gU3RhcnQgYSBub24tY2FwdHVyaW5nIGdyb3VwXG5cdCAgICAgICAgIFteKShdICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgIFxcKCAgPSBNYXRjaCBhIHN0YXJ0IHBhcmVudGhlc2VzXG5cdCAgICAgICAgICAgICAoPzogID0gU3RhcnQgYW5vdGhlciBub24tY2FwdHVyaW5nIGdyb3Vwc1xuXHQgICAgICAgICAgICAgICAgIFteKShdKyAgPSBNYXRjaCBhbnl0aGluZyB0aGF0IGlzbid0IGEgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgICAgICAgICAgXFwoICA9IE1hdGNoIGEgc3RhcnQgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICAgICAgW14pKF0qICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgICAgIFxcKSAgPSBNYXRjaCBhIGVuZCBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgKSAgPSBFbmQgR3JvdXBcbiAgICAgICAgICAgICAgKlxcKSA9IE1hdGNoIGFueXRoaW5nIGFuZCB0aGVuIGEgY2xvc2UgcGFyZW5zXG4gICAgICAgICAgKSAgPSBDbG9zZSBub24tY2FwdHVyaW5nIGdyb3VwXG4gICAgICAgICAgKiAgPSBNYXRjaCBhbnl0aGluZ1xuICAgICAgICkgID0gQ2xvc2UgY2FwdHVyaW5nIGdyb3VwXG5cdCBcXCkgID0gTWF0Y2ggYSBjbG9zZSBwYXJlbnNcblxuXHQgL2dpICA9IEdldCBhbGwgbWF0Y2hlcywgbm90IHRoZSBmaXJzdC4gIEJlIGNhc2UgaW5zZW5zaXRpdmUuXG5cdCAqL1xuXHR2YXIgZml4ZWRDc3MgPSBjc3MucmVwbGFjZSgvdXJsXFxzKlxcKCgoPzpbXikoXXxcXCgoPzpbXikoXSt8XFwoW14pKF0qXFwpKSpcXCkpKilcXCkvZ2ksIGZ1bmN0aW9uKGZ1bGxNYXRjaCwgb3JpZ1VybCkge1xuXHRcdC8vIHN0cmlwIHF1b3RlcyAoaWYgdGhleSBleGlzdClcblx0XHR2YXIgdW5xdW90ZWRPcmlnVXJsID0gb3JpZ1VybFxuXHRcdFx0LnRyaW0oKVxuXHRcdFx0LnJlcGxhY2UoL15cIiguKilcIiQvLCBmdW5jdGlvbihvLCAkMSl7IHJldHVybiAkMTsgfSlcblx0XHRcdC5yZXBsYWNlKC9eJyguKiknJC8sIGZ1bmN0aW9uKG8sICQxKXsgcmV0dXJuICQxOyB9KTtcblxuXHRcdC8vIGFscmVhZHkgYSBmdWxsIHVybD8gbm8gY2hhbmdlXG5cdFx0aWYgKC9eKCN8ZGF0YTp8aHR0cDpcXC9cXC98aHR0cHM6XFwvXFwvfGZpbGU6XFwvXFwvXFwvfFxccyokKS9pLnRlc3QodW5xdW90ZWRPcmlnVXJsKSkge1xuXHRcdCAgcmV0dXJuIGZ1bGxNYXRjaDtcblx0XHR9XG5cblx0XHQvLyBjb252ZXJ0IHRoZSB1cmwgdG8gYSBmdWxsIHVybFxuXHRcdHZhciBuZXdVcmw7XG5cblx0XHRpZiAodW5xdW90ZWRPcmlnVXJsLmluZGV4T2YoXCIvL1wiKSA9PT0gMCkge1xuXHRcdCAgXHQvL1RPRE86IHNob3VsZCB3ZSBhZGQgcHJvdG9jb2w/XG5cdFx0XHRuZXdVcmwgPSB1bnF1b3RlZE9yaWdVcmw7XG5cdFx0fSBlbHNlIGlmICh1bnF1b3RlZE9yaWdVcmwuaW5kZXhPZihcIi9cIikgPT09IDApIHtcblx0XHRcdC8vIHBhdGggc2hvdWxkIGJlIHJlbGF0aXZlIHRvIHRoZSBiYXNlIHVybFxuXHRcdFx0bmV3VXJsID0gYmFzZVVybCArIHVucXVvdGVkT3JpZ1VybDsgLy8gYWxyZWFkeSBzdGFydHMgd2l0aCAnLydcblx0XHR9IGVsc2Uge1xuXHRcdFx0Ly8gcGF0aCBzaG91bGQgYmUgcmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3Rvcnlcblx0XHRcdG5ld1VybCA9IGN1cnJlbnREaXIgKyB1bnF1b3RlZE9yaWdVcmwucmVwbGFjZSgvXlxcLlxcLy8sIFwiXCIpOyAvLyBTdHJpcCBsZWFkaW5nICcuLydcblx0XHR9XG5cblx0XHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIHVybCguLi4pXG5cdFx0cmV0dXJuIFwidXJsKFwiICsgSlNPTi5zdHJpbmdpZnkobmV3VXJsKSArIFwiKVwiO1xuXHR9KTtcblxuXHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIGNzc1xuXHRyZXR1cm4gZml4ZWRDc3M7XG59O1xuXG5cbi8qKiovIH0pLFxuLyogOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG52YXIgY29udGVudCA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pLCBcIi5mbGF0cGlja3ItY2FsZW5kYXJ7Zm9udC1zaXplOjEzcHg7Ym9yZGVyLXJhZGl1czo1cHh9LmZsYXRwaWNrci1jYWxlbmRhciAuZmxhdHBpY2tyLWNsZWFye3BhZGRpbmc6N3B4O21hcmdpbjoxMnB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6IzU2OWZmNztjb2xvcjojZmZmO291dGxpbmU6MDtib3JkZXI6MDttaW4td2lkdGg6MTAwcHg7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDAgMnB4IDAgdHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zNnN9LmZsYXRwaWNrci1jYWxlbmRhciAuZmxhdHBpY2tyLWNsZWFyOmZvY3VzLC5mbGF0cGlja3ItY2FsZW5kYXIgLmZsYXRwaWNrci1jbGVhcjpob3Zlcntib3gtc2hhZG93OjAgMCAycHggMCAjOWU5ZTllfS5EYXRlVGltZXNEaWFsb2d7bWF4LXdpZHRoOjMwNy44NzVweDtvdmVyZmxvdzpoaWRkZW59LkRhdGVUaW1lc0RpYWxvZyBpbnB1dHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87cGFkZGluZzozcHg7b3V0bGluZTowO2JvcmRlcjpub25lfVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDEwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbnZhciBjb250ZW50ID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNJbWFnZXNSZW5kZXJlciBpbWd7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbnZhciBjb250ZW50ID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG5cbmlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xudmFyIG9wdGlvbnMgPSB7XG4gIFwiaG1yXCI6IHRydWVcbn07XG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybTtcblxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkO1xufTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmIChjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYgKGZhbHNlKSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9zdHlsZS5jc3NcIiwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tMS0xIS4vc3R5bGUuY3NzXCIpO1xuXG4gICAgaWYgKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG4gICAgdmFyIGxvY2FscyA9IGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICB2YXIga2V5LFxuICAgICAgICAgIGlkeCA9IDA7XG5cbiAgICAgIGZvciAoa2V5IGluIGEpIHtcbiAgICAgICAgaWYgKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGtleSBpbiBiKSB7XG4gICAgICAgIGlkeC0tO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWR4ID09PSAwO1xuICAgIH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKTtcblxuICAgIGlmICghbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuICAgIHVwZGF0ZShuZXdDb250ZW50KTtcbiAgfSk7XG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbiAoKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG4vKioqLyB9KSxcbi8qIDEzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cbmV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IF9fd2VicGFja19yZXF1aXJlX18oMSkoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaSwgXCIuQmFzaWNOdW1iZXJzRWRpdG9ye2Rpc3BsYXk6YmxvY2t9LkJhc2ljTnVtYmVyc0VkaXRvciBpbnB1dHttaW4td2lkdGg6MTAwJTtvdXRsaW5lOjA7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO2JvcmRlcjpub25lO3BhZGRpbmc6M3B4fVwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcblxuXG4vKioqLyB9KSxcbi8qIDE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBSZW5kZXJlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19Cb29sZWFuU3dpdGNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVXRpbGl0aWVzX1BhcmFtc19qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbmZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IGlmICh0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgdHlwZW9mIFN5bWJvbC5pdGVyYXRvciA9PT0gXCJzeW1ib2xcIikgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIHR5cGVvZiBvYmo7IH07IH0gZWxzZSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gb2JqICYmIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvYmogIT09IFN5bWJvbC5wcm90b3R5cGUgPyBcInN5bWJvbFwiIDogdHlwZW9mIG9iajsgfTsgfSByZXR1cm4gX3R5cGVvZihvYmopOyB9XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuZnVuY3Rpb24gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4oc2VsZiwgY2FsbCkgeyBpZiAoY2FsbCAmJiAoX3R5cGVvZihjYWxsKSA9PT0gXCJvYmplY3RcIiB8fCB0eXBlb2YgY2FsbCA9PT0gXCJmdW5jdGlvblwiKSkgeyByZXR1cm4gY2FsbDsgfSByZXR1cm4gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKTsgfVxuXG5mdW5jdGlvbiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpIHsgaWYgKHNlbGYgPT09IHZvaWQgMCkgeyB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoXCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWRcIik7IH0gcmV0dXJuIHNlbGY7IH1cblxuZnVuY3Rpb24gX2dldFByb3RvdHlwZU9mKG8pIHsgX2dldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mID8gT2JqZWN0LmdldFByb3RvdHlwZU9mIDogZnVuY3Rpb24gX2dldFByb3RvdHlwZU9mKG8pIHsgcmV0dXJuIG8uX19wcm90b19fIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZihvKTsgfTsgcmV0dXJuIF9nZXRQcm90b3R5cGVPZihvKTsgfVxuXG5mdW5jdGlvbiBfaW5oZXJpdHMoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIHsgaWYgKHR5cGVvZiBzdXBlckNsYXNzICE9PSBcImZ1bmN0aW9uXCIgJiYgc3VwZXJDbGFzcyAhPT0gbnVsbCkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb25cIik7IH0gc3ViQ2xhc3MucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShzdXBlckNsYXNzICYmIHN1cGVyQ2xhc3MucHJvdG90eXBlLCB7IGNvbnN0cnVjdG9yOiB7IHZhbHVlOiBzdWJDbGFzcywgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9IH0pOyBpZiAoc3VwZXJDbGFzcykgX3NldFByb3RvdHlwZU9mKHN1YkNsYXNzLCBzdXBlckNsYXNzKTsgfVxuXG5mdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBfc2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgby5fX3Byb3RvX18gPSBwOyByZXR1cm4gbzsgfTsgcmV0dXJuIF9zZXRQcm90b3R5cGVPZihvLCBwKTsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuXG4vKipcbiogQm9vbGVhbnMgUmVuZGVyZXJcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIFJlbmRlcmVyaW5nXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xuXG52YXIgUmVuZGVyZXIgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKF9QYXJhbXNNaXhpbnMpIHtcbiAgX2luaGVyaXRzKFJlbmRlcmVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBSZW5kZXJlcigpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgUmVuZGVyZXIpO1xuXG4gICAgcmV0dXJuIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHRoaXMsIF9nZXRQcm90b3R5cGVPZihSZW5kZXJlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoUmVuZGVyZXIsIFt7XG4gICAga2V5OiBcImluaXRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaW5pdChwYXJhbXMpIHtcbiAgICAgIHZhciBkb2MgPSB0aGlzLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIHN3aXRjaGVyID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fQm9vbGVhblN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKG51bGwsIGRvYyk7XG4gICAgICBzd2l0Y2hlci5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmNvbnRhaW5lciA9IGRvYy5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICB0aGlzLmNvbnRhaW5lci5jbGFzc05hbWUgPSBcIkJhc2ljQm9vbGVhbnNSZW5kZXJlclwiO1xuXG4gICAgICBpZiAoIXBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5pbm5lckhUTUwgPSAnJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciB0cnVlVmFsdWUgPSB0aGlzLmdldE9wdGlvbignUkVOREVSRVJfVFJVRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ1RSVUUnLCBwYXJhbXMpO1xuICAgICAgICB2YXIgZmFsc2VWYWx1ZSA9IHRoaXMuZ2V0T3B0aW9uKCdSRU5ERVJFUl9GQUxTRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ0ZBTFNFJywgcGFyYW1zKTtcblxuICAgICAgICBpZiAodHJ1ZSA9PT0gcGFyYW1zLnZhbHVlKSB7XG4gICAgICAgICAgaWYgKCF0cnVlVmFsdWUgfHwgdHJ1ZVZhbHVlID09PSAnc3dpdGNoJykge1xuICAgICAgICAgICAgc3dpdGNoZXIuY2hlY2soKTtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLmFwcGVuZENoaWxkKHN3aXRjaGVyLmNvbXBvbmVudCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLmlubmVySFRNTCA9IHRydWVWYWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKCFmYWxzZVZhbHVlIHx8IGZhbHNlVmFsdWUgPT09ICdzd2l0Y2gnKSB7XG4gICAgICAgICAgICBzd2l0Y2hlci51bmNoZWNrKCk7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lci5hcHBlbmRDaGlsZChzd2l0Y2hlci5jb21wb25lbnQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lci5pbm5lckhUTUwgPSBmYWxzZVZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJnZXRHdWlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0R3VpKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29udGFpbmVyO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBSZW5kZXJlcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0Jvb2xlYW5Td2l0Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiKSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfTsgfSBlbHNlIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9OyB9IHJldHVybiBfdHlwZW9mKG9iaik7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cbi8qKlxuKiBCb29sZWFucyBFZGl0b3JcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIEVkaXRpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBFZGl0b3IgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKF9QYXJhbXNNaXhpbnMpIHtcbiAgX2luaGVyaXRzKEVkaXRvciwgX1BhcmFtc01peGlucyk7XG5cbiAgZnVuY3Rpb24gRWRpdG9yKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBFZGl0b3IpO1xuXG4gICAgcmV0dXJuIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHRoaXMsIF9nZXRQcm90b3R5cGVPZihFZGl0b3IpLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykpO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKEVkaXRvciwgW3tcbiAgICBrZXk6IFwiaW5pdFwiLFxuXG4gICAgLyoqXG4gICAgICogU2V0dXAgdGhlIGNvbXBvbmVudFxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqL1xuICAgIHZhbHVlOiBmdW5jdGlvbiBpbml0KHBhcmFtcykge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGRvYyA9IHRoaXMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB2YXIgc3RhcnRWYWx1ZTtcbiAgICAgIGlmIChwYXJhbXMua2V5UHJlc3MgIT09IG51bGwpIHN0YXJ0VmFsdWUgPSBCb29sZWFuKHBhcmFtcy5rZXlQcmVzcyk7ZWxzZSBpZiAocGFyYW1zLmNoYXJQcmVzcyAhPT0gbnVsbCkgc3RhcnRWYWx1ZSA9IEJvb2xlYW4ocGFyYW1zLmNoYXJQcmVzcyk7XG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG5cbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB2YXIga2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSA9IHBhcmFtcy5rZXlQcmVzcyA9PSAzMiAvLyBzcGFjZVxuICAgICAgICB8fCBwYXJhbXMua2V5UHJlc3MgPT0gNDY7IC8vIGRlbGV0ZVxuXG4gICAgICAgIGlmIChrZXlQcmVzc0JhY2tzcGFjZU9yRGVsZXRlKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKHBhcmFtcy5jaGFyUHJlc3MpIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gQm9vbGVhbihwYXJhbXMuY2hhclByZXNzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG4gICAgICB0aGlzLnN3aXRjaGVyID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fQm9vbGVhblN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKHN0YXJ0VmFsdWUsIGRvYywgZnVuY3Rpb24gKHN3aXRjaGVyKSB7XG4gICAgICAgIF90aGlzLmN1cnJlbnRWYWx1ZSA9IHN3aXRjaGVyLmdldFZhbHVlKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuZm9jdXNJbigpOyAvLyB1cGRhdGUgYGN1cnJlbnRWYWx1ZWAgdGhlIHZhbHVlIHdoaWNoIHRoaXMgY29tcG9uZW50IGlzIG1hbmFnaW5nXG5cbiAgICAgIHRoaXMuY3VycmVudFZhbHVlID0gc3RhcnRWYWx1ZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IHRoZSByZWZyZW5jZSB0byB0aGUgY29tcG9uZW50IGVsZW1lbnRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0hUTUxFbGVtZW50fVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0R3VpXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldEd1aSgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN3aXRjaGVyLmNvbXBvbmVudDtcbiAgICB9XG4gICAgLyoqIE1ha2Ugc3VyZSBjb250YWluZXIgaXMgYWx3YXlzIGZvY3VzZWQgdG8gbGlzdGVuIHRvIGtleSBjaGFuZ2VzKi9cblxuICB9LCB7XG4gICAga2V5OiBcImFmdGVyR3VpQXR0YWNoZWRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gYWZ0ZXJHdWlBdHRhY2hlZCgpIHtcbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB0aGlzLmZvY3VzSW4oKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNJblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c0luKCkge1xuICAgICAgdGhpcy5zd2l0Y2hlci5mb2N1cygpO1xuICAgIH1cbiAgICAvKiogQ2FsbGVkIGlmIGVkaXRUeXBlID0gJ2Z1bGxSb3cnICovXG5cbiAgfSwge1xuICAgIGtleTogXCJmb2N1c091dFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c091dCgpIHtcbiAgICAgIHRoaXMuc3dpdGNoZXIuZGlzYWJsZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgVGhlIGNvbXBvbmVudCB2YWx1ZVxuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldFZhbHVlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wb25lbnQgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyBmYWxzZVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzUG9wdXBcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaXNQb3B1cCgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLyoqIHJlbW92ZSBldmVudCBsaXN0ZW5lcnMgb24gZGVzdG9yeSAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGVzdHJveVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkZXN0cm95KCkge1xuICAgICAgdGhpcy5zd2l0Y2hlci5kZXN0cm95KCk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEVkaXRvcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRmlsdGVyOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBCb29sZWFucyBGaWx0ZXJcbipcbiogSGFuZGxlIGJvb2xlYW4gdmFsdWVzIEZpbHRlcmluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEZpbHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRmlsdGVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBGaWx0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEZpbHRlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEZpbHRlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRmlsdGVyLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgdGhlIEJvb2xlYW4gRmlsdGVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHZhciB0cnVlVmFsdWUgPSB0aGlzLmdldE9wdGlvbignRklMVEVSX1RSVUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdUUlVFJywgcGFyYW1zKTtcbiAgICAgIHZhciBmYWxzZVZhbHVlID0gdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9GQUxTRScsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ0ZBTFNFJywgcGFyYW1zKTtcbiAgICAgIHZhciBub25lVmFsdWUgPSB0aGlzLmdldE9wdGlvbignRklMVEVSX05PTkUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdOT05FJywgcGFyYW1zKTtcbiAgICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xuICAgICAgdGhpcy52YWx1ZUdldHRlciA9IHBhcmFtcy52YWx1ZUdldHRlcjtcbiAgICAgIHRoaXMuZmlsdGVyVGV4dCA9IG51bGw7XG4gICAgICB0aGlzLmd1aSA9IGRvYy5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIHRoaXMuZ3VpLmNsYXNzTmFtZSA9ICdCYXNpY0Jvb2xlYW5zRmlsdGVyJztcbiAgICAgIHRoaXMuZ3VpLnRhYkluZGV4ID0gXCIwXCI7XG4gICAgICB0aGlzLmd1aS5pbm5lckhUTUwgPSBcIlxcbiAgICAgICAgPHVsIGNsYXNzPVxcXCJhZy1maWx0ZXItYm9keVxcXCI+XFxuICAgICAgICAgIDxsaSB2YWx1ZT1cXFwidHJ1ZVxcXCI+XCIuY29uY2F0KHRydWVWYWx1ZSB8fCAnJiM5NjczIFRydWUnLCBcIjwvbGk+XFxuICAgICAgICAgIDxsaSB2YWx1ZT1cXFwiZmFsc2VcXFwiPlwiKS5jb25jYXQoZmFsc2VWYWx1ZSB8fCAnJiM5Njc4OyBGYWxzZScsIFwiPC9saT5cXG4gICAgICAgICAgPGxpIHZhbHVlPVxcXCJub25lXFxcIj5cIikuY29uY2F0KG5vbmVWYWx1ZSB8fCAnJiM5Njc3OyBOb25lJywgXCI8L2xpPlxcbiAgICAgICAgPC91bD5cXG4gICAgXCIpO1xuICAgICAgdGhpcy5maWx0ZXJFbGVtZW50cyA9IHRoaXMuZ3VpLnF1ZXJ5U2VsZWN0b3JBbGwoJ2xpJyk7XG4gICAgICB0aGlzLl9vbkNoYW5nZUJpbmQgPSB0aGlzLl9vbkNoYW5nZS5iaW5kKHRoaXMpO1xuXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuZmlsdGVyRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGVsZW1lbnQgPSB0aGlzLmZpbHRlckVsZW1lbnRzW2ldO1xuICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCB0aGlzLl9vbkNoYW5nZUJpbmQpO1xuICAgICAgfVxuICAgIH1cbiAgICAvKiogQHJldHVybiB7SFRNTEVsZW1lbnR9Ki9cblxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5ndWk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrIHdoZXRoZXIgc2VsZWN0ZWQgZmlsdGVyIG1hdGNocyB0aGUgcGFzc2VkIGNlbGwgZGF0YVxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIHBhc3MsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZG9lc0ZpbHRlclBhc3NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZG9lc0ZpbHRlclBhc3MocGFyYW1zKSB7XG4gICAgICB2YXIgdmFsdWUgPSB0aGlzLnZhbHVlR2V0dGVyKHBhcmFtcyk7XG4gICAgICB2YXIgcGFzc2VkO1xuXG4gICAgICBpZiAodGhpcy5maWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkgPT09ICdmYWxzZScgJiYgdmFsdWUgPT0gZmFsc2UpIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5maWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJyAmJiB2YWx1ZSA9PSB0cnVlKSB7XG4gICAgICAgIHBhc3NlZCA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpID09PSAnbm9uZScpIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhc3NlZCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFzc2VkO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGVjayB3aGV0aGVyIHRoZSBjb21wb25lbnQgaXMgYXBwbHlpbmcgYW55IGZpbHRlciBvbiB0aGUgY29sdW1uXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtCb29sZWFufVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzRmlsdGVyQWN0aXZlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGlzRmlsdGVyQWN0aXZlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyVGV4dCAhPT0gbnVsbCAmJiB0aGlzLmZpbHRlclRleHQgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmZpbHRlclRleHQgIT09ICdub25lJztcbiAgICB9XG4gICAgLyoqIEdldHMgdGhlIGZpbHRlciBzdGF0ZSBmb3Igc3RvcmluZyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0TW9kZWxcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0TW9kZWwoKSB7XG4gICAgICB2YXIgbW9kZWwgPSB7XG4gICAgICAgIHZhbHVlOiB0aGlzLmZpbHRlclRleHRcbiAgICAgIH07XG4gICAgICByZXR1cm4gbW9kZWw7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIExpc3RlbiB0byBzZWxlY3Rpb24gY2hhbmdlcyBpbiB0aGUgZmlsdGVyIGxpc3QgYW5kIHVwZGF0ZSB0aGUgZ3JpZFxuICAgICAqXG4gICAgICogQHBhcmFtIHtFdmVudH0gZXZlbnRcbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIl9vbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25DaGFuZ2UoZXZlbnQpIHtcbiAgICAgIHRoaXMuZmlsdGVyVGV4dCA9IGV2ZW50LnRhcmdldC5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJyk7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5maWx0ZXJFbGVtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgZWxlbWVudCA9IHRoaXMuZmlsdGVyRWxlbWVudHNbaV07XG5cbiAgICAgICAgaWYgKGVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCkge1xuICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnc2VsZWN0ZWQnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ3NlbGVjdGVkJyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5wYXJhbXMuZmlsdGVyQ2hhbmdlZENhbGxiYWNrKCk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEZpbHRlcjtcbn0oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0RhdGVUaW1lc0RpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cblxuLyoqXG4qIERhdGUgLyBUaW1lcyBFZGl0b3JcbipcbiogSGFuZGxlIERhdGUvVGltZSB2YWx1ZXMgRWRpdGluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEVkaXRvciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRWRpdG9yLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBFZGl0b3IoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEVkaXRvcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEVkaXRvcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRWRpdG9yLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBTZXR1cCB0aGUgY29tcG9uZW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHZhciBzdGFydFZhbHVlO1xuICAgICAgdGhpcy5mb2N1c0FmdGVyQXR0YWNoZWQgPSBwYXJhbXMuY2VsbFN0YXJ0ZWRFZGl0O1xuXG4gICAgICBpZiAodGhpcy5mb2N1c0FmdGVyQXR0YWNoZWQpIHtcbiAgICAgICAgdmFyIGtleVByZXNzQmFja3NwYWNlT3JEZWxldGUgPSBwYXJhbXMua2V5UHJlc3MgPT0gMzIgLy8gc3BhY2VcbiAgICAgICAgfHwgcGFyYW1zLmtleVByZXNzID09IDQ2OyAvLyBkZWxldGVcblxuICAgICAgICBpZiAoa2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSkge1xuICAgICAgICAgIHN0YXJ0VmFsdWUgPSAnJztcbiAgICAgICAgfSBlbHNlIGlmIChwYXJhbXMuY2hhclByZXNzKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy5jaGFyUHJlc3M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy52YWx1ZTtcblxuICAgICAgICAgIGlmIChwYXJhbXMua2V5UHJlc3MgIT0gMTEzKSB7XG4gICAgICAgICAgICAvL0YyXG4gICAgICAgICAgICB0aGlzLmhpZ2hsaWdodEFsbE9uRm9jdXMgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RhcnRWYWx1ZSA9IHBhcmFtcy52YWx1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kaWFsb2cgPSBuZXcgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19EYXRlVGltZXNEaWFsb2dfX1tcImFcIiAvKiBkZWZhdWx0ICovXSh7XG4gICAgICAgIGVuYWJsZVRpbWU6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfRU5BQkxFX1RJTUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfVElNRScsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIGVuYWJsZVNlY29uZHM6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfRU5BQkxFX1NFQ09ORFMnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfU0VDT05EUycsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1heERhdGU6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUFYJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUFYJywgcGFyYW1zKSB8fCBudWxsLFxuICAgICAgICBtaW5EYXRlOiB0aGlzLmdldE9wdGlvbignRURJVE9SX01JTicsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01JTicsIHBhcmFtcykgfHwgbnVsbCxcbiAgICAgICAgbWFzazogdGhpcy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUFTSycsIHBhcmFtcyksXG4gICAgICAgIGFsbG93SW5wdXQ6IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfQUxMT1dfSU5QVVQnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdBTExPV19JTlBVVCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1vZGU6ICdzaW5nbGUnLFxuICAgICAgICAvL3RoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTU9ERScsIHBhcmFtcykgfHwgJ3JhbmdlJyxcbiAgICAgICAgdGltZV8yNGhyOiB0aGlzLmdldE9wdGlvbignRURJVE9SXzI0SCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJzI0SCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG9uVmFsdWVVcGRhdGU6IHRoaXMub25DaGFuZ2UuYmluZCh0aGlzKVxuICAgICAgfSwgZG9jKTtcbiAgICAgIHRoaXMuZGlhbG9nLnNldERhdGUoc3RhcnRWYWx1ZSwgdHJ1ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBgY3VycmVudFZhbHVlYCAgXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJvbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBvbkNoYW5nZShkYXRlcywgZGF0ZVN0cikge1xuICAgICAgdGhpcy5kaWFsb2cuc2V0RGF0ZShkYXRlU3RyLCBmYWxzZSk7XG4gICAgICB0aGlzLmN1cnJlbnRWYWx1ZSA9IGRhdGVTdHI7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgcmVmcmVuY2UgdG8gdGhlIGNvbXBvbmVudCBlbGVtZW50XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtIVE1MRWxlbWVudH1cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaWFsb2cuY29tcG9uZW50O1xuICAgIH1cbiAgICAvKiogTWFrZSBzdXJlIGNvbnRhaW5lciBpcyBhbHdheXMgZm9jdXNlZCB0byBsaXN0ZW4gdG8ga2V5IGNoYW5nZXMqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiYWZ0ZXJHdWlBdHRhY2hlZFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhZnRlckd1aUF0dGFjaGVkKCkge1xuICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cykge1xuICAgICAgICB0aGlzLmRpYWxvZy5pbnB1dC5zZWxlY3QoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICAgIHRoaXMuZm9jdXNJbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8qKiBDYWxsZWQgaWYgZWRpdFR5cGUgPSAnZnVsbFJvdycgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImZvY3VzSW5cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZm9jdXNJbigpIHtcbiAgICAgIHRoaXMuZGlhbG9nLm9wZW4oKTtcbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNPdXRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZm9jdXNPdXQoKSB7XG4gICAgICB0aGlzLmRpYWxvZy5jbG9zZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgVGhlIGNvbXBvbmVudCB2YWx1ZVxuICAgICAqXG4gICAgICogQHJldHVybiB7U3RyaW5nfVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0VmFsdWVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0VmFsdWUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXJyZW50VmFsdWU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbXBvbmVudCBvdmVyZmxvd3MgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyB0cnVlXG4gICAgICoqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiaXNQb3B1cFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpc1BvcHVwKCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvKiogRGVzdG9yeSBEYXRlVGltZXNEaWFsb2cgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImRlc3Ryb3lcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZGVzdHJveSgpIHtcbiAgICAgIHRoaXMuZGlhbG9nLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gRWRpdG9yO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDE4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWYWx1ZUZvcm1hdHRlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIERhdGVzIC8gVGltZXMgRm9ybWF0dGVyXG4qXG4qIEhhbmRsZSBEYXRlIC8gVGltZSB2YWx1ZXMgZm9ybWF0dGluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIFZhbHVlRm9ybWF0dGVyID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gVmFsdWVGb3JtYXR0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIFZhbHVlRm9ybWF0dGVyKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhWYWx1ZUZvcm1hdHRlciwgbnVsbCwgW3tcbiAgICBrZXk6IFwiZm9ybWF0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGZvcm1hdChwYXJhbXMpIHtcbiAgICAgIHZhciBwYXJhbXNNaXhpbnMgPSBuZXcgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10oKTtcbiAgICAgIHZhciBkb2MgPSBwYXJhbXNNaXhpbnMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB2YXIgbWFzayA9IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ1JFTkRFUkVSX01BU0snLCBwYXJhbXMpO1xuXG4gICAgICBpZiAobWFzayAmJiBwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgJiYgcGFyYW1zLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiBCQmouTWFza3MuVHlwZXMuZGF0ZShwYXJhbXMudmFsdWUsIG1hc2spO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyYW1zLnZhbHVlIHx8ICcnOyAvLyBhdm9pZCB1bmRlZmluZWQgXG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFZhbHVlRm9ybWF0dGVyO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiAxOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRmlsdGVyOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX0RhdGVUaW1lc0RpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfc2xpY2VkVG9BcnJheShhcnIsIGkpIHsgcmV0dXJuIF9hcnJheVdpdGhIb2xlcyhhcnIpIHx8IF9pdGVyYWJsZVRvQXJyYXlMaW1pdChhcnIsIGkpIHx8IF9ub25JdGVyYWJsZVJlc3QoKTsgfVxuXG5mdW5jdGlvbiBfbm9uSXRlcmFibGVSZXN0KCkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfVxuXG5mdW5jdGlvbiBfaXRlcmFibGVUb0FycmF5TGltaXQoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdICE9IG51bGwpIF9pW1wicmV0dXJuXCJdKCk7IH0gZmluYWxseSB7IGlmIChfZCkgdGhyb3cgX2U7IH0gfSByZXR1cm4gX2FycjsgfVxuXG5mdW5jdGlvbiBfYXJyYXlXaXRoSG9sZXMoYXJyKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHJldHVybiBhcnI7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cbi8qKlxuKiBEYXRlIC8gVGltZSBGaWx0ZXJcbipcbiogSGFuZGxlIERhdGVzIC8gVGltZXMgdmFsdWVzIEZpbHRlcmluZ1xuKlxuKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cblxudmFyIEZpbHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoRmlsdGVyLCBfUGFyYW1zTWl4aW5zKTtcblxuICBmdW5jdGlvbiBGaWx0ZXIoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEZpbHRlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKEZpbHRlcikuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoRmlsdGVyLCBbe1xuICAgIGtleTogXCJpbml0XCIsXG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgdGhlIEJvb2xlYW4gRmlsdGVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQocGFyYW1zKSB7XG4gICAgICB2YXIgZG9jID0gdGhpcy5nZXREb2MocGFyYW1zKTtcbiAgICAgIHRoaXMuZGlhbG9nID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fRGF0ZVRpbWVzRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10oe1xuICAgICAgICBpbmxpbmU6IHRydWUsXG4gICAgICAgIGVuYWJsZVRpbWU6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfRU5BQkxFX1RJTUUnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfVElNRScsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIGVuYWJsZVNlY29uZHM6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfRU5BQkxFX1NFQ09ORFMnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdFTkFCTEVfU0VDT05EUycsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1heERhdGU6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfTUFYJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUFYJywgcGFyYW1zKSB8fCBudWxsLFxuICAgICAgICBtaW5EYXRlOiB0aGlzLmdldE9wdGlvbignRklMVEVSX01JTicsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01JTicsIHBhcmFtcykgfHwgbnVsbCxcbiAgICAgICAgbWFzazogdGhpcy5nZXRPcHRpb24oJ01BU0snLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfTUFTSycsIHBhcmFtcyksXG4gICAgICAgIGFsbG93SW5wdXQ6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfQUxMT1dfSU5QVVQnLCBwYXJhbXMpIHx8IHRoaXMuZ2V0T3B0aW9uKCdBTExPV19JTlBVVCcsIHBhcmFtcykgfHwgZmFsc2UsXG4gICAgICAgIG1vZGU6ICdyYW5nZScsXG4gICAgICAgIC8vdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9NT0RFJywgcGFyYW1zKSB8fCAncmFuZ2UnLFxuICAgICAgICB0aW1lXzI0aHI6IHRoaXMuZ2V0T3B0aW9uKCdGSUxURVJfMjRIJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignMjRIJywgcGFyYW1zKSB8fCBmYWxzZSxcbiAgICAgICAgb25WYWx1ZVVwZGF0ZTogdGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpLFxuICAgICAgICBvbkNsZWFyOiB0aGlzLm9uQ2xlYXIuYmluZCh0aGlzKVxuICAgICAgfSwgZG9jKTsgLy8gbWFrZSBzdXJlIG5vIGRhdGUgaXMgc2VsZWN0ZWRcblxuICAgICAgdGhpcy5kaWFsb2cuc2V0RGF0ZSgnJywgdHJ1ZSk7XG4gICAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgICAgIHRoaXMudmFsdWVHZXR0ZXIgPSBwYXJhbXMudmFsdWVHZXR0ZXI7XG4gICAgICB0aGlzLmZpbHRlckRhdGVzID0gbnVsbDtcbiAgICB9XG4gICAgLyoqIFJlc2V0IGZpbHRlciB3aGVuIGNhbGFuZGVyIGlzIGNsZWFyZWQgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIm9uQ2xlYXJcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gb25DbGVhcigpIHtcbiAgICAgIHRoaXMuZmlsdGVyRGF0ZXMgPSBbXTtcbiAgICAgIHRoaXMucGFyYW1zLmZpbHRlckNoYW5nZWRDYWxsYmFjaygpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBMaXN0ZW4gdG8gc2VsZWN0aW9uIGNoYW5nZXMgaW4gdGhlIGNhbGFuZGVyIGFuZCB1cGRhdGUgdGhlIGdyaWRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJvbkNoYW5nZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBvbkNoYW5nZShkYXRlcywgZGF0ZVN0cikge1xuICAgICAgdGhpcy5maWx0ZXJEYXRlcyA9IGRhdGVzO1xuICAgICAgdGhpcy5wYXJhbXMuZmlsdGVyQ2hhbmdlZENhbGxiYWNrKCk7XG4gICAgfVxuICAgIC8qKiBAcmV0dXJuIHtIVE1MRWxlbWVudH0qL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZ2V0R3VpXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldEd1aSgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpYWxvZy5jb21wb25lbnQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrIHdoZXRoZXIgc2VsZWN0ZWQgZmlsdGVyIG1hdGNocyB0aGUgcGFzc2VkIGNlbGwgZGF0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtc1xuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIHBhc3MsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZG9lc0ZpbHRlclBhc3NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZG9lc0ZpbHRlclBhc3MocGFyYW1zKSB7XG4gICAgICB2YXIgdmFsdWUgPSBuZXcgRGF0ZSh0aGlzLnZhbHVlR2V0dGVyKHBhcmFtcykpO1xuXG4gICAgICB2YXIgX3RoaXMkZmlsdGVyRGF0ZXMgPSBfc2xpY2VkVG9BcnJheSh0aGlzLmZpbHRlckRhdGVzLCAyKSxcbiAgICAgICAgICBzdGFydCA9IF90aGlzJGZpbHRlckRhdGVzWzBdLFxuICAgICAgICAgIGVuZCA9IF90aGlzJGZpbHRlckRhdGVzWzFdO1xuXG4gICAgICB2YXIgcGFzc2VkO1xuXG4gICAgICBpZiAodHlwZW9mIGVuZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHN0YXJ0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICB2YXIgc3RhcnRBc0RhdGUgPSBuZXcgRGF0ZShzdGFydCk7XG4gICAgICAgIHZhciBlbmRBc0RhdGUgPSBuZXcgRGF0ZShlbmQpO1xuICAgICAgICBwYXNzZWQgPSB2YWx1ZSA+PSBzdGFydEFzRGF0ZSAmJiB2YWx1ZSA8PSBlbmRBc0RhdGU7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzdGFydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdmFyIF9zdGFydEFzRGF0ZSA9IG5ldyBEYXRlKHN0YXJ0KTtcblxuICAgICAgICBwYXNzZWQgPSBfc3RhcnRBc0RhdGUgPT09IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFzc2VkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhc3NlZDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2hlY2sgd2hldGhlciB0aGUgY29tcG9uZW50IGlzIGFwcGx5aW5nIGFueSBmaWx0ZXIgb24gdGhlIGNvbHVtblxuICAgICAqXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICAgKiovXG5cbiAgfSwge1xuICAgIGtleTogXCJpc0ZpbHRlckFjdGl2ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpc0ZpbHRlckFjdGl2ZSgpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuZmlsdGVyRGF0ZXMpICYmIHRoaXMuZmlsdGVyRGF0ZXMubGVuZ3RoO1xuICAgIH1cbiAgICAvKiogR2V0cyB0aGUgZmlsdGVyIHN0YXRlIGZvciBzdG9yaW5nICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRNb2RlbFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRNb2RlbCgpIHtcbiAgICAgIHZhciBtb2RlbCA9IHtcbiAgICAgICAgdmFsdWU6IHRoaXMuZmlsdGVyRGF0ZXNcbiAgICAgIH07XG4gICAgICByZXR1cm4gbW9kZWw7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFByb3ZpZGUgYSByZWFkIG9ubHkgZmxvYXRpbmcgZmlsdGVyIFxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ31cbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcImdldE1vZGVsQXNTdHJpbmdcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0TW9kZWxBc1N0cmluZygpIHtcbiAgICAgIHZhciBtYXNrID0gdGhpcy5nZXRPcHRpb24oJ0ZJTFRFUl9NQVNLJywgdGhpcy5wYXJhbXMpO1xuXG4gICAgICB2YXIgX3RoaXMkZmlsdGVyRGF0ZXMyID0gX3NsaWNlZFRvQXJyYXkodGhpcy5maWx0ZXJEYXRlcywgMiksXG4gICAgICAgICAgc3RhcnQgPSBfdGhpcyRmaWx0ZXJEYXRlczJbMF0sXG4gICAgICAgICAgZW5kID0gX3RoaXMkZmlsdGVyRGF0ZXMyWzFdO1xuXG4gICAgICB2YXIgcmVzdWx0ID0gJyc7XG4gICAgICBpZiAoc3RhcnQpIHJlc3VsdCArPSBcIlwiLmNvbmNhdChCQmouTWFza3MuVHlwZXMuZGF0ZShzdGFydCwgbWFzaykpO1xuICAgICAgaWYgKGVuZCkgcmVzdWx0ICs9IFwiIC0gXCIuY29uY2F0KEJCai5NYXNrcy5UeXBlcy5kYXRlKGVuZCwgbWFzaykpO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gRmlsdGVyO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDIwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBSZW5kZXJlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiKSB7IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfTsgfSBlbHNlIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9OyB9IHJldHVybiBfdHlwZW9mKG9iaik7IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7IGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7IHJldHVybiBjYWxsOyB9IHJldHVybiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpOyB9XG5cbmZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikgeyBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7IHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTsgfSByZXR1cm4gc2VsZjsgfVxuXG5mdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyBfZ2V0UHJvdG90eXBlT2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2YobykgeyByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOyB9OyByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTsgfSBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsgY29uc3RydWN0b3I6IHsgdmFsdWU6IHN1YkNsYXNzLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBfc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOyB9XG5cbmZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkgeyBvLl9fcHJvdG9fXyA9IHA7IHJldHVybiBvOyB9OyByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApOyB9XG5cbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKipcbiogSW1hZ2VzIFJlbmRlcmVyXG4qXG4qIEhhbmRsZSBJbWFnZXMgUmVuZGVyZXJpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBSZW5kZXJlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoX1BhcmFtc01peGlucykge1xuICBfaW5oZXJpdHMoUmVuZGVyZXIsIF9QYXJhbXNNaXhpbnMpO1xuXG4gIGZ1bmN0aW9uIFJlbmRlcmVyKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBSZW5kZXJlcik7XG5cbiAgICByZXR1cm4gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgX2dldFByb3RvdHlwZU9mKFJlbmRlcmVyKS5hcHBseSh0aGlzLCBhcmd1bWVudHMpKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhSZW5kZXJlciwgW3tcbiAgICBrZXk6IFwiaW5pdFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpbml0KHBhcmFtcykge1xuICAgICAgdmFyIGRvYyA9IHRoaXMuZ2V0RG9jKHBhcmFtcyk7XG4gICAgICB0aGlzLmNvbnRhaW5lciA9IGRvYy5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICB0aGlzLmNvbnRhaW5lci5jbGFzc05hbWUgPSBcIkJhc2ljSW1hZ2VzUmVuZGVyZXJcIjtcblxuICAgICAgaWYgKCFwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykpIHtcbiAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gJyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgd2lkdGggPSB0aGlzLmdldE9wdGlvbignSU1BR0VTX1dJRFRIJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignV0lEVEgnLCBwYXJhbXMpIHx8ICcyNXB4JztcbiAgICAgICAgdmFyIGhlaWdodCA9IHRoaXMuZ2V0T3B0aW9uKCdJTUFHRVNfSEVJR0hUJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignSEVJR0hUJywgcGFyYW1zKSB8fCAnMjVweCc7XG4gICAgICAgIHZhciBsaXN0ID0gdGhpcy5nZXRPcHRpb24oJ0lNQUdFU19MSVNUJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTElTVCcsIHBhcmFtcyk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsaXN0ID0gSlNPTi5wYXJzZShsaXN0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGxpc3QgPSBsaXN0IHx8IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxpc3QgJiYgbGlzdC5oYXNPd25Qcm9wZXJ0eShwYXJhbXMudmFsdWUpKSB7XG4gICAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gXCI8aW1nIHNyYz1cXFwiXCIuY29uY2F0KGxpc3RbcGFyYW1zLnZhbHVlXSwgXCJcXFwiIHdpZHRoPVxcXCJcIikuY29uY2F0KHdpZHRoLCBcIlxcXCIgaGVpZ2h0PVxcXCJcIikuY29uY2F0KGhlaWdodCwgXCJcXFwiLz5cIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5jb250YWluZXIuaW5uZXJIVE1MID0gcGFyYW1zLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImdldEd1aVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRHdWkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250YWluZXI7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFJlbmRlcmVyO1xufShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cblxuXG4vKioqLyB9KSxcbi8qIDIxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWYWx1ZUZvcm1hdHRlcjsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19VdGlsaXRpZXNfUGFyYW1zX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYWctZ2lyZC1jb21wb25lbnRzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqXG4gKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4gKi9cblxuLyoqXG4qIE51bWJlcnMgVmFsdWUgRm9ybWF0dGVyXG4qXG4qIEhhbmRsZSBOdW1iZXIgdmFsdWVzIGZvcm1hdHRpbmdcbipcbiogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG5cbnZhciBWYWx1ZUZvcm1hdHRlciA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFZhbHVlRm9ybWF0dGVyKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBWYWx1ZUZvcm1hdHRlcik7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoVmFsdWVGb3JtYXR0ZXIsIG51bGwsIFt7XG4gICAga2V5OiBcImZvcm1hdFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb3JtYXQocGFyYW1zKSB7XG4gICAgICB2YXIgcGFyYW1zTWl4aW5zID0gbmV3IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVXRpbGl0aWVzX1BhcmFtc19qc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKCk7XG4gICAgICB2YXIgZG9jID0gcGFyYW1zTWl4aW5zLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIG1hc2sgPSBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdNQVNLJywgcGFyYW1zKSB8fCBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdSRU5ERVJFUl9NQVNLJywgcGFyYW1zKTtcbiAgICAgIHZhciBncm91cFNlcCA9IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ0dST1VQX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgcGFyYW1zTWl4aW5zLmdldE9wdGlvbignUkVOREVSRVJfR1JPVVBfU0VQQVJBVE9SJywgcGFyYW1zKSB8fCBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdOVU1CRVJTX1JFTkRFUkVSX0dST1VQX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgJywnO1xuICAgICAgdmFyIGRlY2ltYWxTZXAgPSBwYXJhbXNNaXhpbnMuZ2V0T3B0aW9uKCdERUNJTUFMX1NFUEFSQVRPUicsIHBhcmFtcykgfHwgcGFyYW1zTWl4aW5zLmdldE9wdGlvbignUkVOREVSRVJfREVDSU1BTF9TRVBBUkFUT1InLCBwYXJhbXMpIHx8IHBhcmFtc01peGlucy5nZXRPcHRpb24oJ05VTUJFUlNfUkVOREVSRVJfREVDSU1BTF9TRVBBUkFUT1InLCBwYXJhbXMpIHx8ICcuJztcblxuICAgICAgaWYgKG1hc2sgJiYgcGFyYW1zLmhhc093blByb3BlcnR5KCd2YWx1ZScpICYmIHBhcmFtcy52YWx1ZSAhPSBudWxsICYmICFpc05hTihwYXJhbXMudmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBCQmouTWFza3MuVHlwZXMubnVtYmVyKHBhcmFtcy52YWx1ZSwgbWFzaywgZ3JvdXBTZXAsIGRlY2ltYWxTZXApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyYW1zLnZhbHVlIHx8ICcnOyAvLyBhdm9pZCB1bmRlZmluZWQgXG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFZhbHVlRm9ybWF0dGVyO1xufSgpO1xuXG5cblxuLyoqKi8gfSksXG4vKiAyMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gRWRpdG9yOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1V0aWxpdGllc19QYXJhbXNfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG5mdW5jdGlvbiBfdHlwZW9mKG9iaikgeyBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHsgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9OyB9IGVsc2UgeyBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07IH0gcmV0dXJuIF90eXBlb2Yob2JqKTsgfVxuXG5mdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7IGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7IH0gfVxuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9XG5cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9XG5cbmZ1bmN0aW9uIF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuKHNlbGYsIGNhbGwpIHsgaWYgKGNhbGwgJiYgKF90eXBlb2YoY2FsbCkgPT09IFwib2JqZWN0XCIgfHwgdHlwZW9mIGNhbGwgPT09IFwiZnVuY3Rpb25cIikpIHsgcmV0dXJuIGNhbGw7IH0gcmV0dXJuIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZik7IH1cblxuZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7IGlmIChzZWxmID09PSB2b2lkIDApIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7IHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7IH07IHJldHVybiBfZ2V0UHJvdG90eXBlT2Yobyk7IH1cblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7IGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIF9zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7IH1cblxuZnVuY3Rpb24gX3NldFByb3RvdHlwZU9mKG8sIHApIHsgX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7IG8uX19wcm90b19fID0gcDsgcmV0dXJuIG87IH07IHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGFnLWdpcmQtY29tcG9uZW50cyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKlxuKiBOdW1iZXJzIEVkaXRvclxuKlxuKiBIYW5kbGUgbnVtYmVyIHZhbHVlcyBFZGl0aW5nXG4qXG4qIEBhdXRob3IgSHl5YW4gQWJvIEZha2hlciA8aGFib2Zha2hlckBiYXNpcy5jb20+XG4qL1xuXG52YXIgRWRpdG9yID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uIChfUGFyYW1zTWl4aW5zKSB7XG4gIF9pbmhlcml0cyhFZGl0b3IsIF9QYXJhbXNNaXhpbnMpO1xuXG4gIGZ1bmN0aW9uIEVkaXRvcigpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgRWRpdG9yKTtcblxuICAgIHJldHVybiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybih0aGlzLCBfZ2V0UHJvdG90eXBlT2YoRWRpdG9yKS5hcHBseSh0aGlzLCBhcmd1bWVudHMpKTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhFZGl0b3IsIFt7XG4gICAga2V5OiBcImluaXRcIixcblxuICAgIC8qKlxuICAgICAqIFNldHVwIHRoZSBjb21wb25lbnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXNcbiAgICAgKi9cbiAgICB2YWx1ZTogZnVuY3Rpb24gaW5pdChwYXJhbXMpIHtcbiAgICAgIHZhciBkb2MgPSB0aGlzLmdldERvYyhwYXJhbXMpO1xuICAgICAgdmFyIHN0YXJ0VmFsdWU7XG4gICAgICB0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCA9IHBhcmFtcy5jZWxsU3RhcnRlZEVkaXQ7XG5cbiAgICAgIGlmICh0aGlzLmZvY3VzQWZ0ZXJBdHRhY2hlZCkge1xuICAgICAgICB2YXIga2V5UHJlc3NCYWNrc3BhY2VPckRlbGV0ZSA9IHBhcmFtcy5rZXlQcmVzcyA9PSAzMiAvLyBzcGFjZVxuICAgICAgICB8fCBwYXJhbXMua2V5UHJlc3MgPT0gNDY7IC8vIGRlbGV0ZVxuXG4gICAgICAgIGlmIChrZXlQcmVzc0JhY2tzcGFjZU9yRGVsZXRlKSB7XG4gICAgICAgICAgc3RhcnRWYWx1ZSA9ICcnO1xuICAgICAgICB9IGVsc2UgaWYgKHBhcmFtcy5jaGFyUHJlc3MpIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLmNoYXJQcmVzcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuXG4gICAgICAgICAgaWYgKHBhcmFtcy5rZXlQcmVzcyAhPSAxMTMpIHtcbiAgICAgICAgICAgIC8vRjJcbiAgICAgICAgICAgIHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cyA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydFZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNvbXBvbmVudCA9IGRvYy5jcmVhdGVFbGVtZW50KCdsYWJlbCcpO1xuICAgICAgdGhpcy5jb21wb25lbnQuY2xhc3NOYW1lID0gJ0Jhc2ljTnVtYmVyc0VkaXRvcic7XG4gICAgICB0aGlzLmNvbXBvbmVudC50YWJJbmRleCA9IFwiMFwiOyAvLyBpbnB1dFxuXG4gICAgICB0aGlzLmlucHV0ID0gZG9jLmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICB0aGlzLmlucHV0LnR5cGUgPSBcIm51bWJlclwiO1xuICAgICAgdGhpcy5pbnB1dC52YWx1ZSA9IHN0YXJ0VmFsdWU7XG4gICAgICB0aGlzLmlucHV0LnRhYkluZGV4ID0gMDtcbiAgICAgIHRoaXMuY29tcG9uZW50LmFwcGVuZENoaWxkKHRoaXMuaW5wdXQpO1xuICAgICAgdmFyIG1pbiA9IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfTUlOJywgcGFyYW1zKSB8fCB0aGlzLmdldE9wdGlvbignTUlOJywgcGFyYW1zKTtcbiAgICAgIHZhciBtYXggPSB0aGlzLmdldE9wdGlvbignRURJVE9SX01BWCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ01BWCcsIHBhcmFtcyk7XG4gICAgICB2YXIgc3RlcCA9IHRoaXMuZ2V0T3B0aW9uKCdFRElUT1JfU1RFUCcsIHBhcmFtcykgfHwgdGhpcy5nZXRPcHRpb24oJ1NURVAnLCBwYXJhbXMpO1xuICAgICAgaWYgKG1pbikgdGhpcy5pbnB1dC5taW4gPSBtaW47XG4gICAgICBpZiAobWF4KSB0aGlzLmlucHV0Lm1heCA9IG1heDtcbiAgICAgIGlmIChzdGVwKSB0aGlzLmlucHV0Lm1heCA9IHN0ZXA7XG4gICAgICB0aGlzLl9vbktleURvd25CaW5kID0gdGhpcy5fb25LZXlEb3duLmJpbmQodGhpcyk7XG4gICAgICB0aGlzLl9vbkNoYW5nZUJpbmQgPSB0aGlzLl9vbkNoYW5nZS5iaW5kKHRoaXMpO1xuICAgICAgdGhpcy5pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duQmluZCk7XG4gICAgICB0aGlzLmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIHRoaXMuX29uQ2hhbmdlQmluZCk7IC8vIHVwZGF0ZSBgY3VycmVudFZhbHVlYCB0aGUgdmFsdWUgd2hpY2ggdGhpcyBjb21wb25lbnQgaXMgbWFuYWdpbmdcblxuICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSBzdGFydFZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHJlZnJlbmNlIHRvIHRoZSBjb21wb25lbnQgZWxlbWVudFxuICAgICAqXG4gICAgICogQHJldHVybiB7SFRNTEVsZW1lbnR9XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRHdWlcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0R3VpKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50O1xuICAgIH1cbiAgICAvKiogTWFrZSBzdXJlIGNvbnRhaW5lciBpcyBhbHdheXMgZm9jdXNlZCB0byBsaXN0ZW4gdG8ga2V5IGNoYW5nZXMqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiYWZ0ZXJHdWlBdHRhY2hlZFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhZnRlckd1aUF0dGFjaGVkKCkge1xuICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0QWxsT25Gb2N1cykge1xuICAgICAgICB0aGlzLmlucHV0LnNlbGVjdCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNBZnRlckF0dGFjaGVkKSB7XG4gICAgICAgICAgdGhpcy5mb2N1c0luKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IFRoZSBjb21wb25lbnQgdmFsdWVcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59XG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJnZXRWYWx1ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRWYWx1ZSgpIHtcbiAgICAgIHZhciBjYXN0ZWQgPSBOdW1iZXIodGhpcy5jdXJyZW50VmFsdWUpO1xuICAgICAgcmV0dXJuIGlzTmFOKGNhc3RlZCkgPyB0aGlzLmN1cnJlbnRWYWx1ZSA6IGNhc3RlZDtcbiAgICB9XG4gICAgLyoqIENhbGxlZCBpZiBlZGl0VHlwZSA9ICdmdWxsUm93JyAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZm9jdXNJblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBmb2N1c0luKCkge1xuICAgICAgdGhpcy5pbnB1dC5mb2N1cygpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wb25lbnQgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNlbGxcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0Jvb2xlYW59IGFsd2F5cyBmYWxzZVxuICAgICAqKi9cblxuICB9LCB7XG4gICAga2V5OiBcImlzUG9wdXBcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gaXNQb3B1cCgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLyoqIHJlbW92ZSBldmVudCBsaXN0ZW5lcnMgb24gZGVzdG9yeSAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiZGVzdHJveVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBkZXN0cm95KCkge1xuICAgICAgaWYgKHRoaXMuX29uS2V5RG93bikgdGhpcy5pbnB1dC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duKTtcbiAgICAgIGlmICh0aGlzLl9vbkNoYW5nZUJpbmQpIHRoaXMuaW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgdGhpcy5fb25DaGFuZ2VCaW5kKTtcbiAgICB9XG4gICAgLyoqXG4gICAgKiBVcGRhdGUgYGN1cnJlbnRWYWx1ZWAgd2hlbiB0aGUgY2hlY2tib3ggdmFsdWUgaXMgY2hhbmdlZFxuICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfb25DaGFuZ2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX29uQ2hhbmdlKHBhcmFtcykge1xuICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSB0aGlzLmlucHV0LnZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBNb25pdG9yIGtleXMgW3RvcCxib3R0b20sZW50ZXJdIHRvIGNoYW5nZSB0aGUgaW5wdXQgdmFsdWVcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBldmVudFxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX29uS2V5RG93blwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfb25LZXlEb3duKGV2ZW50KSB7XG4gICAgICB2YXIga2V5ID0gZXZlbnQud2hpY2ggfHwgZXZlbnQua2V5Q29kZTtcblxuICAgICAgaWYgKGtleSA9PSAzOCB8fCBrZXkgPT0gNDApIHtcbiAgICAgICAgLy8gdG9wIHwgZG93blxuICAgICAgICB0aGlzLmN1cnJlbnRWYWx1ZSA9IHRoaXMuaW5wdXQudmFsdWU7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmIChrZXkgPT0gMTMpIHtcbiAgICAgICAgLy8gZW50ZXJcbiAgICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSB0aGlzLmlucHV0LnZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBFZGl0b3I7XG59KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVXRpbGl0aWVzX1BhcmFtc19qc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuXG5cbi8qKiovIH0pLFxuLyogMjMgKi8sXG4vKiAyNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfZXhwb3NlX2xvYWRlcl9CQmpfTWFza3Nfbm9kZV9tb2R1bGVzX2Jial9tYXNrc19kaXN0X2Jial9tYXNrc19qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX2V4cG9zZV9sb2FkZXJfQkJqX01hc2tzX25vZGVfbW9kdWxlc19iYmpfbWFza3NfZGlzdF9iYmpfbWFza3NfanNfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9leHBvc2VfbG9hZGVyX0JCal9NYXNrc19ub2RlX21vZHVsZXNfYmJqX21hc2tzX2Rpc3RfYmJqX21hc2tzX2pzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9mbGF0cGlja3JfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19Cb29sZWFuc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19Cb29sZWFuc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fQm9vbGVhbnNfc3R5bGVfY3NzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fRGF0ZVRpbWVzX3N0eWxlX2Nzc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX0RhdGVUaW1lc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fRGF0ZVRpbWVzX3N0eWxlX2Nzc19fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX0ltYWdlc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fSW1hZ2VzX3N0eWxlX2Nzc19fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19JbWFnZXNfc3R5bGVfY3NzX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fTnVtYmVyc19zdHlsZV9jc3NfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19ub2RlX21vZHVsZXNfZmxhdHBpY2tyX2Rpc3RfZmxhdHBpY2tyX2Nzc19fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX0Jvb2xlYW5zX1JlbmRlcmVyX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljQm9vbGVhbnNSZW5kZXJlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fQm9vbGVhbnNfUmVuZGVyZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fQm9vbGVhbnNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljQm9vbGVhbnNFZGl0b3JcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX0Jvb2xlYW5zX0VkaXRvcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19Cb29sZWFuc19GaWx0ZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNCb29sZWFuc0ZpbHRlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fQm9vbGVhbnNfRmlsdGVyX2pzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19EYXRlVGltZXNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljRGF0ZVRpbWVzRWRpdG9yXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMF9fRGF0ZVRpbWVzX0VkaXRvcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMV9fRGF0ZVRpbWVzX1ZhbHVlRm9ybWF0dGVyX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljRGF0ZVRpbWVzVmFsdWVGb3JtYXR0ZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19EYXRlVGltZXNfVmFsdWVGb3JtYXR0ZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX0RhdGVUaW1lc19GaWx0ZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNEYXRlVGltZXNGaWx0ZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEyX19EYXRlVGltZXNfRmlsdGVyX2pzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19JbWFnZXNfUmVuZGVyZXJfanNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiQmFzaWNJbWFnZXNSZW5kZXJlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTNfX0ltYWdlc19SZW5kZXJlcl9qc19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fTnVtYmVyc19WYWx1ZUZvcm1hdHRlcl9qc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJCYXNpY051bWJlcnNWYWx1ZUZvcm1hdHRlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX051bWJlcnNfVmFsdWVGb3JtYXR0ZXJfanNfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX051bWJlcnNfRWRpdG9yX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkJhc2ljTnVtYmVyc0VkaXRvclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX051bWJlcnNfRWRpdG9yX2pzX19bXCJhXCJdOyB9KTtcbi8qXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBhZy1naXJkLWNvbXBvbmVudHMgbGliLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuICpcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qKiovIH0pLFxuLyogMjUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuLyogV0VCUEFDSyBWQVIgSU5KRUNUSU9OICovKGZ1bmN0aW9uKGdsb2JhbCkge2lmKCFnbG9iYWxbXCJCQmpcIl0pIGdsb2JhbFtcIkJCalwiXSA9IHt9O1xubW9kdWxlLmV4cG9ydHMgPSBnbG9iYWxbXCJCQmpcIl1bXCJNYXNrc1wiXSA9IF9fd2VicGFja19yZXF1aXJlX18oMjcpO1xuLyogV0VCUEFDSyBWQVIgSU5KRUNUSU9OICovfS5jYWxsKGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18oMjYpKSlcblxuLyoqKi8gfSksXG4vKiAyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG52YXIgZztcblxuLy8gVGhpcyB3b3JrcyBpbiBub24tc3RyaWN0IG1vZGVcbmcgPSAoZnVuY3Rpb24oKSB7XG5cdHJldHVybiB0aGlzO1xufSkoKTtcblxudHJ5IHtcblx0Ly8gVGhpcyB3b3JrcyBpZiBldmFsIGlzIGFsbG93ZWQgKHNlZSBDU1ApXG5cdGcgPSBnIHx8IEZ1bmN0aW9uKFwicmV0dXJuIHRoaXNcIikoKSB8fCAoMSxldmFsKShcInRoaXNcIik7XG59IGNhdGNoKGUpIHtcblx0Ly8gVGhpcyB3b3JrcyBpZiB0aGUgd2luZG93IHJlZmVyZW5jZSBpcyBhdmFpbGFibGVcblx0aWYodHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIilcblx0XHRnID0gd2luZG93O1xufVxuXG4vLyBnIGNhbiBzdGlsbCBiZSB1bmRlZmluZWQsIGJ1dCBub3RoaW5nIHRvIGRvIGFib3V0IGl0Li4uXG4vLyBXZSByZXR1cm4gdW5kZWZpbmVkLCBpbnN0ZWFkIG9mIG5vdGhpbmcgaGVyZSwgc28gaXQnc1xuLy8gZWFzaWVyIHRvIGhhbmRsZSB0aGlzIGNhc2UuIGlmKCFnbG9iYWwpIHsgLi4ufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGc7XG5cblxuLyoqKi8gfSksXG4vKiAyNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG4oZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0cnVlKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiTWFza3NcIl0gPSBmYWN0b3J5KCk7XG5cdGVsc2Vcblx0XHRyb290W1wiQkJqXCJdID0gcm9vdFtcIkJCalwiXSB8fCB7fSwgcm9vdFtcIkJCalwiXVtcIk1hc2tzXCJdID0gZmFjdG9yeSgpO1xufSkodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnID8gc2VsZiA6IHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuIC8qKioqKiovIChmdW5jdGlvbihtb2R1bGVzKSB7IC8vIHdlYnBhY2tCb290c3RyYXBcbi8qKioqKiovIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuLyoqKioqKi8gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbi8qKioqKiovIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbi8qKioqKiovIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuLyoqKioqKi8gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4vKioqKioqLyBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuLyoqKioqKi8gXHRcdFx0aTogbW9kdWxlSWQsXG4vKioqKioqLyBcdFx0XHRsOiBmYWxzZSxcbi8qKioqKiovIFx0XHRcdGV4cG9ydHM6IHt9XG4vKioqKioqLyBcdFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4vKioqKioqLyBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbi8qKioqKiovIFx0XHRtb2R1bGUubCA9IHRydWU7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4vKioqKioqLyBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuLyoqKioqKi8gXHR9XG4vKioqKioqL1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4vKioqKioqLyBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuLyoqKioqKi8gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbi8qKioqKiovIFx0XHRcdFx0Y29uZmlndXJhYmxlOiBmYWxzZSxcbi8qKioqKiovIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbi8qKioqKiovIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbi8qKioqKiovIFx0XHRcdH0pO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4vKioqKioqLyBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuLyoqKioqKi8gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuLyoqKioqKi8gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbi8qKioqKiovIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4vKioqKioqLyBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuLyoqKioqKi8gXHRcdHJldHVybiBnZXR0ZXI7XG4vKioqKioqLyBcdH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuLyoqKioqKi8gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAyKTtcbi8qKioqKiovIH0pXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gKFtcbi8qIDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gIHZhbHVlOiB0cnVlXG59KTtcbmV4cG9ydHMuZGVmYXVsdCA9IHZvaWQgMDtcblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfVxuXG4vKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgYmJqLW1hc2tzIGxpYi5cbiAqIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbiAqIFxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbi8qKiBcbiAqIERhdGVNYXNrXG4gKiBcbiAqIEhhbmRsZSBCQmogZGF0ZXMgbWFza2luZyBcbiAqIFxuICogQGF1dGhvciBIeXlhbiBBYm8gRmFraGVyIDxoYWJvZmFraGVyQGJhc2lzLmNvbT5cbiovXG52YXIgRGF0ZU1hc2sgPVxuLyojX19QVVJFX18qL1xuZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBEYXRlTWFzaygpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgRGF0ZU1hc2spO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKERhdGVNYXNrLCBudWxsLCBbe1xuICAgIGtleTogXCJtYXNrXCIsXG5cbiAgICAvKiogXG4gICAgICogTWFzayBkYXRlXG4gICAgICogXG4gICAgICogTWFzayB0aGUgcGFzc2VkIGRhdGUgd2l0aCB0aGUgcGFzc2VkIG1hc2tcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG1hc2sgbWFzayBhcyBhIHN0cmluZ1xuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gYSBkYXRlIG1hc2tlZCB3aXRodCB0aGUgZ2l2ZW4gbWFza1xuICAgICAqL1xuICAgIHZhbHVlOiBmdW5jdGlvbiBtYXNrKGRhdGUsIF9tYXNrKSB7XG4gICAgICBpZiAoIWRhdGUpIHJldHVybjtcbiAgICAgIGlmICghX21hc2spIHJldHVybiBkYXRlO1xuXG4gICAgICB2YXIgZGF0ZURldGFpbHMgPSBEYXRlTWFzay5fcGFyc2VEYXRlKGRhdGUpO1xuXG4gICAgICB2YXIgdHJhbnNsYXRpb25zID0gRGF0ZU1hc2suX2J1aWxkVHJhbnNpbGF0aW9uKGRhdGVEZXRhaWxzKTtcblxuICAgICAgdmFyIHJlc3VsdCA9IF9tYXNrO1xuXG4gICAgICBmb3IgKHZhciBrIGluIHRyYW5zbGF0aW9ucykge1xuICAgICAgICByZXN1bHQgPSByZXN1bHQucmVwbGFjZShuZXcgUmVnRXhwKCcoJScgKyBrICsgJyknLCAnZycpLCB0cmFuc2xhdGlvbnNba10pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBQYXJzZSB0aGUgcGFzc2VkIGRhdGUgc3RyaW5nIGFkbiByZXR1cm4gaXRzIGRldGlsYXNcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZGF0ZSBkYXRlIGFzIGEgc3RyaW5nXG4gICAgICogXG4gICAgICogQHJldHVybiB7T2JqZWN0fSBcbiAgICAgKi9cblxuICB9LCB7XG4gICAga2V5OiBcIl9wYXJzZURhdGVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX3BhcnNlRGF0ZShkYXRlKSB7XG4gICAgICB2YXIgZGF0ZU9iamVjdCA9IERhdGUucGFyc2UoZGF0ZSk7XG4gICAgICBpZiAoIShkYXRlT2JqZWN0IGluc3RhbmNlb2YgRGF0ZSkpIGRhdGVPYmplY3QgPSBuZXcgRGF0ZShkYXRlKTtcbiAgICAgIHZhciBob3VyczI0ID0gZGF0ZU9iamVjdC5nZXRIb3VycygpO1xuICAgICAgdmFyIGhvdXJzMTIgPSBob3VyczI0ICUgMTIgfHwgMTI7XG5cbiAgICAgIHZhciBkYXlPZlllYXIgPSBEYXRlTWFzay5fZ2V0RGF5T2ZZZWFyKGRhdGUpOyAvLyBjb25zdCBkYXlPZldlZWsgPSBkYXRlT2JqZWN0LmdldERheSgpID9cblxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBcInllYXJcIjogZGF0ZU9iamVjdC5nZXRGdWxsWWVhcigpLFxuICAgICAgICBcIm1vbnRoXCI6IGRhdGVPYmplY3QuZ2V0TW9udGgoKSArIDEsXG4gICAgICAgIFwiZGF5XCI6IGRhdGVPYmplY3QuZ2V0RGF0ZSgpLFxuICAgICAgICBcIm1pbnV0ZXNcIjogZGF0ZU9iamVjdC5nZXRNaW51dGVzKCksXG4gICAgICAgIFwic2Vjb25kc1wiOiBkYXRlT2JqZWN0LmdldFNlY29uZHMoKSxcbiAgICAgICAgXCJob3VyczI0XCI6IGhvdXJzMjQsXG4gICAgICAgIFwiaG91cnMxMlwiOiBob3VyczEyLFxuICAgICAgICBcImRheU9mWWVhclwiOiBkYXlPZlllYXIsXG4gICAgICAgIFwiZGF5T2ZXZWVrXCI6IGRhdGVPYmplY3QuZ2V0RGF5KCkgKyAxIC8vIFN1bmRheSA9IDEgaW4gQkJqIGJ1dCBTdW5kYXkgPSAwIGluIEpTXG5cbiAgICAgIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdldCBhIG1hcCBvYmplY3Qgd2hpY2ggY29udGFpbnMgYWxsIHBvc3NpYmxlIGZvcm1zIG9mIG1hc2tzXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGRhdGVEZXRhaWxzIGRhdGUgZGV0YWlscyBidWlsdCBieSBgX3BhcnNlRGF0ZWBcbiAgICAgKiBcbiAgICAgKiBAcmV0dXJuIHtPYmplY3R9IGZvcm1zIG1hc2tzXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfYnVpbGRUcmFuc2lsYXRpb25cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gX2J1aWxkVHJhbnNpbGF0aW9uKGRhdGVEZXRhaWxzKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAvLyB5ZWFyIFxuICAgICAgICBcIll6XCI6IGRhdGVEZXRhaWxzLnllYXIudG9TdHJpbmcoKS5zdWJzdHIoLTIpLFxuICAgICAgICBcIllzXCI6IGRhdGVEZXRhaWxzLnllYXIsXG4gICAgICAgIFwiWWxcIjogZGF0ZURldGFpbHMueWVhcixcbiAgICAgICAgXCJZcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLnllYXIpLFxuICAgICAgICBcIllkXCI6IGRhdGVEZXRhaWxzLnllYXIsXG4gICAgICAgIFwiWVwiOiBkYXRlRGV0YWlscy55ZWFyLFxuICAgICAgICAvLyBtb250aFxuICAgICAgICBcIk16XCI6IFN0cmluZyhkYXRlRGV0YWlscy5tb250aCkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLm1vbnRoIDogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTXNcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTWxcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTXBcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5tb250aCksXG4gICAgICAgIFwiTWRcIjogZGF0ZURldGFpbHMubW9udGgsXG4gICAgICAgIFwiTVwiOiBkYXRlRGV0YWlscy5tb250aCxcbiAgICAgICAgLy8gZGF5XG4gICAgICAgIFwiRHpcIjogU3RyaW5nKGRhdGVEZXRhaWxzLmRheSkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLmRheSA6IGRhdGVEZXRhaWxzLmRheSxcbiAgICAgICAgXCJEc1wiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIFwiRGxcIjogZGF0ZURldGFpbHMuZGF5LFxuICAgICAgICBcIkRwXCI6IFN0cmluZy5mcm9tQ2hhckNvZGUoZGF0ZURldGFpbHMuZGF5KSxcbiAgICAgICAgXCJEZFwiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIFwiRFwiOiBkYXRlRGV0YWlscy5kYXksXG4gICAgICAgIC8vIGhvdXIgMjRcbiAgICAgICAgXCJIelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuaG91cnMyNCkubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLmhvdXJzMjQgOiBkYXRlRGV0YWlscy5ob3VyczI0LFxuICAgICAgICBcIkhzXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQsXG4gICAgICAgIFwiSGxcIjogZGF0ZURldGFpbHMuaG91cnMyNCxcbiAgICAgICAgXCJIcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLmhvdXJzMjQpLFxuICAgICAgICBcIkhkXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQsXG4gICAgICAgIFwiSFwiOiBkYXRlRGV0YWlscy5ob3VyczI0LFxuICAgICAgICAvLyBob3VyIDEyXG4gICAgICAgIFwiaHpcIjogU3RyaW5nKGRhdGVEZXRhaWxzLmhvdXJzMTIpLmxlbmd0aCA9PSAxID8gXCIwXCIgKyBkYXRlRGV0YWlscy5ob3VyczEyIDogZGF0ZURldGFpbHMuaG91cnMxMixcbiAgICAgICAgXCJoc1wiOiBkYXRlRGV0YWlscy5ob3VyczEyLFxuICAgICAgICBcImhsXCI6IGRhdGVEZXRhaWxzLmhvdXJzMTIsXG4gICAgICAgIFwiaHBcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5ob3VyczEyKSxcbiAgICAgICAgXCJoZFwiOiBkYXRlRGV0YWlscy5ob3VyczEyLFxuICAgICAgICBcImhcIjogZGF0ZURldGFpbHMuaG91cnMxMixcbiAgICAgICAgLy8gbWludXRlc1xuICAgICAgICBcIm16XCI6IFN0cmluZyhkYXRlRGV0YWlscy5taW51dGVzKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMubWludXRlcyA6IGRhdGVEZXRhaWxzLm1pbnV0ZXMsXG4gICAgICAgIFwibXNcIjogZGF0ZURldGFpbHMubWludXRlcyxcbiAgICAgICAgXCJtbFwiOiBkYXRlRGV0YWlscy5taW51dGVzLFxuICAgICAgICBcIm1wXCI6IFN0cmluZy5mcm9tQ2hhckNvZGUoZGF0ZURldGFpbHMubWludXRlcyksXG4gICAgICAgIFwibWRcIjogZGF0ZURldGFpbHMubWludXRlcyxcbiAgICAgICAgXCJtXCI6IGRhdGVEZXRhaWxzLm1pbnV0ZXMsXG4gICAgICAgIC8vIHNlY29uZHNcbiAgICAgICAgXCJzelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuc2Vjb25kcykubGVuZ3RoID09IDEgPyBcIjBcIiArIGRhdGVEZXRhaWxzLnNlY29uZHMgOiBkYXRlRGV0YWlscy5zZWNvbmRzLFxuICAgICAgICBcInNzXCI6IGRhdGVEZXRhaWxzLnNlY29uZHMsXG4gICAgICAgIFwic2xcIjogZGF0ZURldGFpbHMuc2Vjb25kcyxcbiAgICAgICAgXCJzcFwiOiBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGVEZXRhaWxzLnNlY29uZHMpLFxuICAgICAgICBcInNkXCI6IGRhdGVEZXRhaWxzLnNlY29uZHMsXG4gICAgICAgIFwic1wiOiBkYXRlRGV0YWlscy5zZWNvbmRzLFxuICAgICAgICAvLyBBTSAsIFBNXG4gICAgICAgIFwiUFBcIjogZGF0ZURldGFpbHMuaG91cnMyNCA+IDEyID8gXCJQTVwiIDogXCJQTVwiLFxuICAgICAgICBcIlBcIjogZGF0ZURldGFpbHMuaG91cnMyNCA+IDEyID8gXCJQTVwiIDogXCJBTVwiLFxuICAgICAgICBcInBwXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQgPiAxMiA/IFwicG1cIiA6IFwiYW1cIixcbiAgICAgICAgXCJwXCI6IGRhdGVEZXRhaWxzLmhvdXJzMjQgPiAxMiA/IFwicG1cIiA6IFwiYW1cIixcbiAgICAgICAgLy8gRGF5IG9mIFllYXJcbiAgICAgICAgXCJKelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuZGF5T2ZZZWFyKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMuZGF5T2ZZZWFyIDogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICBcIkpzXCI6IGRhdGVEZXRhaWxzLmRheU9mWWVhcixcbiAgICAgICAgXCJKbFwiOiBkYXRlRGV0YWlscy5kYXlPZlllYXIsXG4gICAgICAgIFwiSmRcIjogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICBcIkpcIjogZGF0ZURldGFpbHMuZGF5T2ZZZWFyLFxuICAgICAgICAvLyBEYXkgT2YgV2VlayBcbiAgICAgICAgXCJXelwiOiBTdHJpbmcoZGF0ZURldGFpbHMuZGF5T2ZXZWVrKS5sZW5ndGggPT0gMSA/IFwiMFwiICsgZGF0ZURldGFpbHMuZGF5T2ZXZWVrIDogZGF0ZURldGFpbHMuZGF5T2ZXZWVrLFxuICAgICAgICBcIldzXCI6IGRhdGVEZXRhaWxzLmRheU9mV2VlayxcbiAgICAgICAgXCJXbFwiOiBkYXRlRGV0YWlscy5kYXlPZldlZWssXG4gICAgICAgIFwiV3BcIjogU3RyaW5nLmZyb21DaGFyQ29kZShkYXRlRGV0YWlscy5kYXlPZldlZWspLFxuICAgICAgICBcIldkXCI6IGRhdGVEZXRhaWxzLmRheU9mV2VlayxcbiAgICAgICAgXCJXXCI6IGRhdGVEZXRhaWxzLmRheU9mV2Vla1xuICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBEYXkgbnVtYmVyIHdpdGhpbiB0aGUgeWVhciAoMS0zNjYpLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkYXRlIGRhdGUgYXMgYSBzdHJpbmdcbiAgICAgKiBcbiAgICAgKiBAcmV0dXJucyB7TnVtYmVyfVxuICAgICAqL1xuXG4gIH0sIHtcbiAgICBrZXk6IFwiX2dldERheU9mWWVhclwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfZ2V0RGF5T2ZZZWFyKGRhdGUpIHtcbiAgICAgIHZhciBub3cgPSBEYXRlLnBhcnNlKGRhdGUpO1xuICAgICAgaWYgKCEobm93IGluc3RhbmNlb2YgRGF0ZSkpIG5vdyA9IG5ldyBEYXRlKGRhdGUpO1xuICAgICAgdmFyIHN0YXJ0ID0gbmV3IERhdGUobm93LmdldEZ1bGxZZWFyKCksIDAsIDApO1xuICAgICAgdmFyIGRpZmYgPSBub3cgLSBzdGFydCArIChzdGFydC5nZXRUaW1lem9uZU9mZnNldCgpIC0gbm93LmdldFRpbWV6b25lT2Zmc2V0KCkpICogNjAgKiAxMDAwO1xuICAgICAgdmFyIG9uZURheSA9IDEwMDAgKiA2MCAqIDYwICogMjQ7XG4gICAgICB2YXIgZGF5ID0gTWF0aC5mbG9vcihkaWZmIC8gb25lRGF5KTtcbiAgICAgIHJldHVybiBkYXk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIERhdGVNYXNrO1xufSgpO1xuXG5leHBvcnRzLmRlZmF1bHQgPSBEYXRlTWFzaztcblxuLyoqKi8gfSksXG4vKiAxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICB2YWx1ZTogdHJ1ZVxufSk7XG5leHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGJiai1tYXNrcyBsaWIuXG4gKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4gKiBcbiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4gKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiAqL1xuXG4vKiogXG4gKiBOdW1iZXJNYXNrXG4gKiBcbiAqIEhhbmRsZSBCQmogbnVtYmVycyBtYXNraW5nIFxuICogXG4gKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBOdW1iZXJNYXNrID1cbi8qI19fUFVSRV9fKi9cbmZ1bmN0aW9uICgpIHtcbiAgZnVuY3Rpb24gTnVtYmVyTWFzaygpIHtcbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgTnVtYmVyTWFzayk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoTnVtYmVyTWFzaywgbnVsbCwgW3tcbiAgICBrZXk6IFwibWFza1wiLFxuXG4gICAgLyoqXG4gICAgICogTWFzayB0aGUgZ2l2ZW4gbnVtYmVyIHdpdGggdGhlIGdpdmVuIG1hc2sgYWNjb3JkaW5nIHRvIEJCaiBydWxlc1xuICAgICAqIFxuICAgICAqIEBwYXJhbSB7TnVtYmVyfSBudW1iZXIgdGhlIG51bWJlciB0byBmb3JtYXRcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbWFzayB0aGUgbWFzayB0byB1c2UgZm9yIGZvcm1hdHRpbmdcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZ3JvdXBpbmdTZXBhcmF0b3IgYSBjaGFyIHdoaWNoIHdpbGwgYmUgdXNlZCBhcyBhIGdyb3VwaW5nIHNlcGFyYXRvclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkZWNpbWFsU2VwYXJhdG9yIGEgY2hhciB3aGljaCB3aWxsIGJlIHVzZWQgYXMgYSBkZWNpbWFsIHNlcGFyYXRvclxuICAgICAqIFxuICAgICAqIEByZXR1cm5zIHtTdHJpbmd9IHRoZSBtYXNrZWQgbnVtYmVyXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIG1hc2sobnVtYmVyLCBfbWFzaykge1xuICAgICAgdmFyIGdyb3VwaW5nU2VwYXJhdG9yID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiAnLCc7XG4gICAgICB2YXIgZGVjaW1hbFNlcGFyYXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAzICYmIGFyZ3VtZW50c1szXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzNdIDogJy4nO1xuICAgICAgdmFyIG1hc2tMZW5ndGggPSBfbWFzay5sZW5ndGg7XG4gICAgICBpZiAoMCA9PT0gbWFza0xlbmd0aCkgcmV0dXJuIG51bWJlcjsgLy8gR2V0IG1hZ25pdHVkZSBhbmQgcHJlY2lzaW9uIG9mIE1BU0tcblxuICAgICAgdmFyIG1hc2tCZWZvcmVEZWNpbWFsID0gMDtcbiAgICAgIHZhciBtYXNrQWZ0ZXJEZWNpbWFsID0gMDtcbiAgICAgIHZhciBmb3VuZERlY2ltYWwgPSBmYWxzZTtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXNrTGVuZ3RoOyArK2kpIHtcbiAgICAgICAgdmFyIG0gPSBfbWFzay5jaGFyQXQoaSk7XG5cbiAgICAgICAgaWYgKG0gPT0gJzAnIHx8IG0gPT0gJyMnKSB7XG4gICAgICAgICAgaWYgKGZvdW5kRGVjaW1hbCkgKyttYXNrQWZ0ZXJEZWNpbWFsO2Vsc2UgKyttYXNrQmVmb3JlRGVjaW1hbDtcbiAgICAgICAgfSBlbHNlIGlmIChtID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIG51bSA9IE51bWJlck1hc2suX3JvdW5kKG51bWJlciwgbWFza0FmdGVyRGVjaW1hbCk7XG5cbiAgICAgIHZhciBkaWdpdHMgPSBOdW1iZXJNYXNrLl90b0NoYXJBcnJheShudW0pOyAvLyBHZXQgbWFnbml0dWRlIGFuZCBwcmVjaXNpb24gb2YgTlVNQkVSXG5cblxuICAgICAgdmFyIG51bUxlbiA9IGRpZ2l0cy5sZW5ndGg7XG4gICAgICB2YXIgbnVtQmVmb3JlRGVjaW1hbCA9IDA7XG4gICAgICB2YXIgbnVtQWZ0ZXJEZWNpbWFsID0gMDtcbiAgICAgIGZvdW5kRGVjaW1hbCA9IGZhbHNlO1xuXG4gICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgbnVtTGVuOyBfaSsrKSB7XG4gICAgICAgIGlmIChkaWdpdHNbX2ldID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtlbHNlIHtcbiAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSArK251bUFmdGVyRGVjaW1hbDtlbHNlICsrbnVtQmVmb3JlRGVjaW1hbDtcbiAgICAgICAgfVxuICAgICAgfSAvLyBhbHdheXMgaWdub3JlIG1hc2sgb3ZlcmZsb3dcblxuXG4gICAgICBpZiAobnVtQmVmb3JlRGVjaW1hbCA+IG1hc2tCZWZvcmVEZWNpbWFsKSByZXR1cm4gbnVtYmVyLnRvU3RyaW5nKCk7IC8vIHJvdW5kIGlmIG1hc2sgaXMgZm9yIGEgbG93ZXIgcHJlY2lzaW9uIG51bWJlclxuXG4gICAgICBpZiAobnVtQWZ0ZXJEZWNpbWFsID4gbWFza0FmdGVyRGVjaW1hbCkge1xuICAgICAgICBudW0gPSBOdW1iZXJNYXNrLl9yb3VuZChudW0sIG1hc2tBZnRlckRlY2ltYWwpO1xuICAgICAgICBkaWdpdHMgPSBOdW1iZXJNYXNrLl90b0NoYXJBcnJheShudW0pO1xuICAgICAgICBudW1MZW4gPSBkaWdpdHMubGVuZ3RoOyAvLyBHZXQgbmV3IG1hZ25pdHVkZSBhbmQgcHJlY2lzaW9uIG9mIE5VTUJFUlxuXG4gICAgICAgIG51bUJlZm9yZURlY2ltYWwgPSAwO1xuICAgICAgICBudW1BZnRlckRlY2ltYWwgPSAwO1xuICAgICAgICBmb3VuZERlY2ltYWwgPSBmYWxzZTtcblxuICAgICAgICBmb3IgKHZhciBfaTIgPSAwOyBfaTIgPCBudW1MZW47IF9pMisrKSB7XG4gICAgICAgICAgaWYgKGRpZ2l0c1tfaTJdID09ICcuJykgZm91bmREZWNpbWFsID0gdHJ1ZTtlbHNlIHtcbiAgICAgICAgICAgIGlmIChmb3VuZERlY2ltYWwpICsrbnVtQWZ0ZXJEZWNpbWFsO2Vsc2UgKytudW1CZWZvcmVEZWNpbWFsO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyBhbHdheXMgaWdub3JlIG1hc2sgb3ZlcmZsb3dcblxuXG4gICAgICAgIGlmIChudW1CZWZvcmVEZWNpbWFsID4gbWFza0JlZm9yZURlY2ltYWwpIHtcbiAgICAgICAgICByZXR1cm4gbnVtYmVyLnRvU3RyaW5nKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdmFyIGlzTmVnYXRpdmUgPSBOdW1iZXJNYXNrLl9nZXRTaWduKG51bSkgPT09IC0xO1xuICAgICAgdmFyIGVtaXREZWNpbWFsID0gbnVtTGVuID4gMCB8fCBfbWFzay5pbmRleE9mKCcwJykgPj0gMDtcbiAgICAgIHZhciBmb3VuZFplcm8gPSBmYWxzZTtcbiAgICAgIHZhciBjdXJyZW5jeSA9IGZhbHNlO1xuICAgICAgdmFyIGJ1ZmZlciA9ICcnO1xuICAgICAgZm91bmREZWNpbWFsID0gZmFsc2U7XG5cbiAgICAgIGZvciAodmFyIG51bVBvcyA9IDAsIG1hc2tQb3MgPSAwOyBtYXNrUG9zIDwgbWFza0xlbmd0aDsgbWFza1BvcysrKSB7XG4gICAgICAgIHZhciBfbSA9IF9tYXNrLmNoYXJBdChtYXNrUG9zKTtcblxuICAgICAgICBzd2l0Y2ggKF9tKSB7XG4gICAgICAgICAgY2FzZSAnMCc6XG4gICAgICAgICAgICAtLW1hc2tCZWZvcmVEZWNpbWFsO1xuXG4gICAgICAgICAgICBpZiAobWFza0JlZm9yZURlY2ltYWwgPCBudW1CZWZvcmVEZWNpbWFsICYmIG51bVBvcyA8IG51bUxlbikge1xuICAgICAgICAgICAgICBidWZmZXIgKz0gZGlnaXRzW251bVBvc107XG4gICAgICAgICAgICAgICsrbnVtUG9zO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgYnVmZmVyICs9ICcwJztcbiAgICAgICAgICAgICAgZm91bmRaZXJvID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICcjJzpcbiAgICAgICAgICAgIC0tbWFza0JlZm9yZURlY2ltYWw7XG5cbiAgICAgICAgICAgIGlmIChtYXNrQmVmb3JlRGVjaW1hbCA8IG51bUJlZm9yZURlY2ltYWwgJiYgbnVtUG9zIDwgbnVtTGVuKSB7XG4gICAgICAgICAgICAgIGJ1ZmZlciArPSBkaWdpdHNbbnVtUG9zXTtcbiAgICAgICAgICAgICAgKytudW1Qb3M7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSBidWZmZXIgKz0gJzAnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJywnOlxuICAgICAgICAgICAgaWYgKGZvdW5kWmVybyB8fCBudW1Qb3MgPiAwKSBidWZmZXIgKz0gZ3JvdXBpbmdTZXBhcmF0b3I7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJy0nOlxuICAgICAgICAgIGNhc2UgJygnOlxuICAgICAgICAgIGNhc2UgJyknOlxuICAgICAgICAgICAgaWYgKGlzTmVnYXRpdmUpIGJ1ZmZlciArPSBfbTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnKyc6XG4gICAgICAgICAgICBidWZmZXIgKz0gaXNOZWdhdGl2ZSA/ICctJyA6ICcrJztcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnLic6XG4gICAgICAgICAgICBpZiAoZm91bmREZWNpbWFsKSBidWZmZXIgKz0gX207ZWxzZSB7XG4gICAgICAgICAgICAgIGlmIChlbWl0RGVjaW1hbCkgYnVmZmVyICs9IGRlY2ltYWxTZXBhcmF0b3I7XG4gICAgICAgICAgICAgIGZvdW5kRGVjaW1hbCA9IHRydWU7XG4gICAgICAgICAgICAgICsrbnVtUG9zO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdDJzpcbiAgICAgICAgICAgIGlmIChtYXNrUG9zIDwgbWFza0xlbmd0aCAtIDEgJiYgX21hc2suY2hhckF0KG1hc2tQb3MgKyAxKSA9PSAnUicpIHtcbiAgICAgICAgICAgICAgaWYgKGlzTmVnYXRpdmUpIGJ1ZmZlciArPSAnQ1InO1xuICAgICAgICAgICAgICArK21hc2tQb3M7XG4gICAgICAgICAgICB9IGVsc2UgYnVmZmVyICs9IF9tO1xuXG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ0QnOlxuICAgICAgICAgICAgaWYgKG1hc2tQb3MgPCBtYXNrTGVuZ3RoIC0gMSAmJiBwX21hc2suY2hhckF0KG1hc2tQb3MgKyAxKSA9PSAnUicpIHtcbiAgICAgICAgICAgICAgYnVmZmVyICs9IGlzTmVnYXRpdmUgPyBcIkNSXCIgOiBcIkRSXCI7XG4gICAgICAgICAgICAgICsrbWFza1BvcztcbiAgICAgICAgICAgIH0gZWxzZSBidWZmZXIgKz0gX207XG5cbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnQic6XG4gICAgICAgICAgICBidWZmZXIgKz0gJyAnO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgYnVmZmVyICs9IF9tO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiX3NoaWZ0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9zaGlmdChudW1iZXIsIHByZWNpc2lvbiwgcmV2ZXJzZVNoaWZ0KSB7XG4gICAgICBpZiAocmV2ZXJzZVNoaWZ0KSBwcmVjaXNpb24gPSAtcHJlY2lzaW9uO1xuICAgICAgdmFyIG51bUFycmF5ID0gKFwiXCIgKyBudW1iZXIpLnNwbGl0KFwiZVwiKTtcbiAgICAgIHJldHVybiArKG51bUFycmF5WzBdICsgXCJlXCIgKyAobnVtQXJyYXlbMV0gPyArbnVtQXJyYXlbMV0gKyBwcmVjaXNpb24gOiBwcmVjaXNpb24pKTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6IFwiX3JvdW5kXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9yb3VuZChudW1iZXIsIHByZWNpc2lvbikge1xuICAgICAgcmV0dXJuIE51bWJlck1hc2suX3NoaWZ0KE1hdGgucm91bmQoTnVtYmVyTWFzay5fc2hpZnQobnVtYmVyLCBwcmVjaXNpb24sIGZhbHNlKSksIHByZWNpc2lvbiwgdHJ1ZSk7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcIl90b0NoYXJBcnJheVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfdG9DaGFyQXJyYXkobnVtYmVyKSB7XG4gICAgICB2YXIgc2lnbnVtID0gTnVtYmVyTWFzay5fZ2V0U2lnbihudW1iZXIpO1xuXG4gICAgICB2YXIgY2hhcnMgPSBbXTtcblxuICAgICAgaWYgKHNpZ251bSAhPT0gMCkge1xuICAgICAgICB2YXIgc3RyaW5nID0gc2lnbnVtIDwgMCA/IFwiXCIuY29uY2F0KC0xICogbnVtYmVyLnRvU3RyaW5nKCkpIDogbnVtYmVyLnRvU3RyaW5nKCk7XG4gICAgICAgIGlmIChzdHJpbmcubGVuZ3RoID4gMSAmJiBzdHJpbmcuY2hhckF0KDApID09ICcwJykgc3RyaW5nID0gc3RyaW5nLnN1YnN0cmluZygxKTsgLy8gVGhlIHN0cmluZyBjb250YWlucyBvbmx5IFswLTldIGFuZCAnLidcblxuICAgICAgICBjaGFycyA9IHN0cmluZy5zcGxpdCgnJyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGFycztcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgc2lnbiBvZiBhIG51bWJlclxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7TnVtYmVyfSB4IG51bWJlclxuICAgICAqIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIHJlcHJlc2VudGluZyB0aGUgc2lnbiBvZiB0aGUgZ2l2ZW4gYXJndW1lbnQuIFxuICAgICAqICAgICAgICAgICAgICAgICAgIElmIHRoZSBhcmd1bWVudCBpcyBhIHBvc2l0aXZlIG51bWJlciwgbmVnYXRpdmUgbnVtYmVyLCBwb3NpdGl2ZSB6ZXJvIFxuICAgICAqICAgICAgICAgICAgICAgICAgIG9yIG5lZ2F0aXZlIHplcm8sIHRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiAxLCAtMSwgMCBvciAtMCByZXNwZWN0aXZlbHkuXG4gICAgICogICAgICAgICAgICAgICAgICAgT3RoZXJ3aXNlLCBOYU4gaXMgcmV0dXJuZWQuXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJfZ2V0U2lnblwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBfZ2V0U2lnbih4KSB7XG4gICAgICByZXR1cm4gKHggPiAwKSAtICh4IDwgMCkgfHwgK3g7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIE51bWJlck1hc2s7XG59KCk7XG5cbmV4cG9ydHMuZGVmYXVsdCA9IE51bWJlck1hc2s7XG5cbi8qKiovIH0pLFxuLyogMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcblxuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiRGF0ZU1hc2tcIiwge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICByZXR1cm4gX0RhdGVNYXNrLmRlZmF1bHQ7XG4gIH1cbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiTnVtYmVyTWFza1wiLCB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgIHJldHVybiBfTnVtYmVyTWFzay5kZWZhdWx0O1xuICB9XG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIlR5cGVzXCIsIHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgcmV0dXJuIF9UeXBlcy5kZWZhdWx0O1xuICB9XG59KTtcblxudmFyIF9EYXRlTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygwKSk7XG5cbnZhciBfTnVtYmVyTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygxKSk7XG5cbnZhciBfVHlwZXMgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9fd2VicGFja19yZXF1aXJlX18oMykpO1xuXG5mdW5jdGlvbiBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KG9iaikgeyByZXR1cm4gb2JqICYmIG9iai5fX2VzTW9kdWxlID8gb2JqIDogeyBkZWZhdWx0OiBvYmogfTsgfVxuXG4vKioqLyB9KSxcbi8qIDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gIHZhbHVlOiB0cnVlXG59KTtcbmV4cG9ydHMuZGVmYXVsdCA9IHZvaWQgMDtcblxudmFyIF9OdW1iZXJNYXNrID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfX3dlYnBhY2tfcmVxdWlyZV9fKDEpKTtcblxudmFyIF9EYXRlTWFzayA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX193ZWJwYWNrX3JlcXVpcmVfXygwKSk7XG5cbmZ1bmN0aW9uIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQob2JqKSB7IHJldHVybiBvYmogJiYgb2JqLl9fZXNNb2R1bGUgPyBvYmogOiB7IGRlZmF1bHQ6IG9iaiB9OyB9XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTsgfSB9XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgeyB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldOyBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH1cblxuLyoqIFxuICogVHlwZXNcbiAqIFxuICogSGFuZGxlIEJCaiBtYXNraW5nIFxuICogXG4gKiBAYXV0aG9yIEh5eWFuIEFibyBGYWtoZXIgPGhhYm9mYWtoZXJAYmFzaXMuY29tPlxuKi9cbnZhciBUeXBlcyA9XG4vKiNfX1BVUkVfXyovXG5mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFR5cGVzKCkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBUeXBlcyk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoVHlwZXMsIG51bGwsIFt7XG4gICAga2V5OiBcIm51bWJlclwiLFxuXG4gICAgLyoqXG4gICAgICogTWFzayBhIG51bWJlciBhY2NvcmRpbmcgdG8gYmJqIG1hc2tpbmcgcnVsZXMgXG4gICAgICogXG4gICAgICogQHBhcmFtIHtOdW1iZXJ9IG51bWJlciB0aGUgbnVtYmVyIHRvIGZvcm1hdFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtYXNrIHRoZSBtYXNrIHRvIHVzZSBcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gZ3JvdXBpbmdTZXBhcmF0b3IgYSBjaGFyIHdoaWNoIHdpbGwgYmUgdXNlZCBhcyBhIGdyb3VwaW5nIHNlcGFyYXRvclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBkZWNpbWFsU2VwYXJhdG9yIGEgY2hhciB3aGljaCB3aWxsIGJlIHVzZWQgYXMgYSBkZWNpbWFsIHNlcGFyYXRvclxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gbnVtYmVyIG1hc2tlZCB3aXRoIHRoZSBnaXZlbiBtYXNrXG4gICAgICovXG4gICAgdmFsdWU6IGZ1bmN0aW9uIG51bWJlcihfbnVtYmVyLCBtYXNrKSB7XG4gICAgICB2YXIgZ3JvdXBpbmdTZXBhcmF0b3IgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6ICcsJztcbiAgICAgIHZhciBkZWNpbWFsU2VwYXJhdG9yID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgJiYgYXJndW1lbnRzWzNdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbM10gOiAnLic7XG4gICAgICByZXR1cm4gX051bWJlck1hc2suZGVmYXVsdC5tYXNrKF9udW1iZXIsIG1hc2ssIGdyb3VwaW5nU2VwYXJhdG9yLCBkZWNpbWFsU2VwYXJhdG9yKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogTWFzayBhIGRhdGUgYWNjb3JkaW5nIHRvIGJiaiBtYXNraW5nIHJ1bGVzIFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBudW1iZXIgdGhlIGRhdGUgdG8gZm9ybWF0XG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG1hc2sgdGhlIG1hc2sgdG8gdXNlIFxuICAgICAqIFxuICAgICAqIEByZXR1cm4ge1N0cmluZ30gbnVtYmVyIG1hc2tlZCB3aXRoIHRoZSBnaXZlbiBtYXNrXG4gICAgICovXG5cbiAgfSwge1xuICAgIGtleTogXCJkYXRlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGRhdGUoX2RhdGUsIG1hc2spIHtcbiAgICAgIHJldHVybiBfRGF0ZU1hc2suZGVmYXVsdC5tYXNrKF9kYXRlLCBtYXNrKTtcbiAgICB9XG4gIH1dKTtcblxuICByZXR1cm4gVHlwZXM7XG59KCk7XG5cbmV4cG9ydHMuZGVmYXVsdCA9IFR5cGVzO1xuXG4vKioqLyB9KVxuLyoqKioqKi8gXSk7XG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJiai1tYXNrcy5qcy5tYXBcblxuLyoqKi8gfSksXG4vKiAyOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG4vKiBmbGF0cGlja3IgdjQuNS4wLCBAbGljZW5zZSBNSVQgKi9cbihmdW5jdGlvbiAoZ2xvYmFsLCBmYWN0b3J5KSB7XG4gICAgIHRydWUgPyBtb2R1bGUuZXhwb3J0cyA9IGZhY3RvcnkoKSA6XG4gICAgdHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKGZhY3RvcnkpIDpcbiAgICAoZ2xvYmFsLmZsYXRwaWNrciA9IGZhY3RvcnkoKSk7XG59KHRoaXMsIChmdW5jdGlvbiAoKSB7ICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBwYWQgPSBmdW5jdGlvbiBwYWQobnVtYmVyKSB7XG4gICAgICByZXR1cm4gKFwiMFwiICsgbnVtYmVyKS5zbGljZSgtMik7XG4gICAgfTtcbiAgICB2YXIgaW50ID0gZnVuY3Rpb24gaW50KGJvb2wpIHtcbiAgICAgIHJldHVybiBib29sID09PSB0cnVlID8gMSA6IDA7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBkZWJvdW5jZShmdW5jLCB3YWl0LCBpbW1lZGlhdGUpIHtcbiAgICAgIGlmIChpbW1lZGlhdGUgPT09IHZvaWQgMCkge1xuICAgICAgICBpbW1lZGlhdGUgPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgdmFyIHRpbWVvdXQ7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgY29udGV4dCA9IHRoaXMsXG4gICAgICAgICAgICBhcmdzID0gYXJndW1lbnRzO1xuICAgICAgICB0aW1lb3V0ICE9PSBudWxsICYmIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcbiAgICAgICAgdGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICB0aW1lb3V0ID0gbnVsbDtcbiAgICAgICAgICBpZiAoIWltbWVkaWF0ZSkgZnVuYy5hcHBseShjb250ZXh0LCBhcmdzKTtcbiAgICAgICAgfSwgd2FpdCk7XG4gICAgICAgIGlmIChpbW1lZGlhdGUgJiYgIXRpbWVvdXQpIGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XG4gICAgICB9O1xuICAgIH1cbiAgICB2YXIgYXJyYXlpZnkgPSBmdW5jdGlvbiBhcnJheWlmeShvYmopIHtcbiAgICAgIHJldHVybiBvYmogaW5zdGFuY2VvZiBBcnJheSA/IG9iaiA6IFtvYmpdO1xuICAgIH07XG5cbiAgICB2YXIgZG9fbm90aGluZyA9IGZ1bmN0aW9uIGRvX25vdGhpbmcoKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH07XG5cbiAgICB2YXIgbW9udGhUb1N0ciA9IGZ1bmN0aW9uIG1vbnRoVG9TdHIobW9udGhOdW1iZXIsIHNob3J0aGFuZCwgbG9jYWxlKSB7XG4gICAgICByZXR1cm4gbG9jYWxlLm1vbnRoc1tzaG9ydGhhbmQgPyBcInNob3J0aGFuZFwiIDogXCJsb25naGFuZFwiXVttb250aE51bWJlcl07XG4gICAgfTtcbiAgICB2YXIgcmV2Rm9ybWF0ID0ge1xuICAgICAgRDogZG9fbm90aGluZyxcbiAgICAgIEY6IGZ1bmN0aW9uIEYoZGF0ZU9iaiwgbW9udGhOYW1lLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNb250aChsb2NhbGUubW9udGhzLmxvbmdoYW5kLmluZGV4T2YobW9udGhOYW1lKSk7XG4gICAgICB9LFxuICAgICAgRzogZnVuY3Rpb24gRyhkYXRlT2JqLCBob3VyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0SG91cnMocGFyc2VGbG9hdChob3VyKSk7XG4gICAgICB9LFxuICAgICAgSDogZnVuY3Rpb24gSChkYXRlT2JqLCBob3VyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0SG91cnMocGFyc2VGbG9hdChob3VyKSk7XG4gICAgICB9LFxuICAgICAgSjogZnVuY3Rpb24gSihkYXRlT2JqLCBkYXkpIHtcbiAgICAgICAgZGF0ZU9iai5zZXREYXRlKHBhcnNlRmxvYXQoZGF5KSk7XG4gICAgICB9LFxuICAgICAgSzogZnVuY3Rpb24gSyhkYXRlT2JqLCBhbVBNLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRIb3VycyhkYXRlT2JqLmdldEhvdXJzKCkgJSAxMiArIDEyICogaW50KG5ldyBSZWdFeHAobG9jYWxlLmFtUE1bMV0sIFwiaVwiKS50ZXN0KGFtUE0pKSk7XG4gICAgICB9LFxuICAgICAgTTogZnVuY3Rpb24gTShkYXRlT2JqLCBzaG9ydE1vbnRoLCBsb2NhbGUpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNb250aChsb2NhbGUubW9udGhzLnNob3J0aGFuZC5pbmRleE9mKHNob3J0TW9udGgpKTtcbiAgICAgIH0sXG4gICAgICBTOiBmdW5jdGlvbiBTKGRhdGVPYmosIHNlY29uZHMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRTZWNvbmRzKHBhcnNlRmxvYXQoc2Vjb25kcykpO1xuICAgICAgfSxcbiAgICAgIFU6IGZ1bmN0aW9uIFUoXywgdW5peFNlY29uZHMpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHBhcnNlRmxvYXQodW5peFNlY29uZHMpICogMTAwMCk7XG4gICAgICB9LFxuICAgICAgVzogZnVuY3Rpb24gVyhkYXRlT2JqLCB3ZWVrTnVtKSB7XG4gICAgICAgIHZhciB3ZWVrTnVtYmVyID0gcGFyc2VJbnQod2Vla051bSk7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlT2JqLmdldEZ1bGxZZWFyKCksIDAsIDIgKyAod2Vla051bWJlciAtIDEpICogNywgMCwgMCwgMCwgMCk7XG4gICAgICB9LFxuICAgICAgWTogZnVuY3Rpb24gWShkYXRlT2JqLCB5ZWFyKSB7XG4gICAgICAgIGRhdGVPYmouc2V0RnVsbFllYXIocGFyc2VGbG9hdCh5ZWFyKSk7XG4gICAgICB9LFxuICAgICAgWjogZnVuY3Rpb24gWihfLCBJU09EYXRlKSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShJU09EYXRlKTtcbiAgICAgIH0sXG4gICAgICBkOiBmdW5jdGlvbiBkKGRhdGVPYmosIGRheSkge1xuICAgICAgICBkYXRlT2JqLnNldERhdGUocGFyc2VGbG9hdChkYXkpKTtcbiAgICAgIH0sXG4gICAgICBoOiBmdW5jdGlvbiBoKGRhdGVPYmosIGhvdXIpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRIb3VycyhwYXJzZUZsb2F0KGhvdXIpKTtcbiAgICAgIH0sXG4gICAgICBpOiBmdW5jdGlvbiBpKGRhdGVPYmosIG1pbnV0ZXMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRNaW51dGVzKHBhcnNlRmxvYXQobWludXRlcykpO1xuICAgICAgfSxcbiAgICAgIGo6IGZ1bmN0aW9uIGooZGF0ZU9iaiwgZGF5KSB7XG4gICAgICAgIGRhdGVPYmouc2V0RGF0ZShwYXJzZUZsb2F0KGRheSkpO1xuICAgICAgfSxcbiAgICAgIGw6IGRvX25vdGhpbmcsXG4gICAgICBtOiBmdW5jdGlvbiBtKGRhdGVPYmosIG1vbnRoKSB7XG4gICAgICAgIGRhdGVPYmouc2V0TW9udGgocGFyc2VGbG9hdChtb250aCkgLSAxKTtcbiAgICAgIH0sXG4gICAgICBuOiBmdW5jdGlvbiBuKGRhdGVPYmosIG1vbnRoKSB7XG4gICAgICAgIGRhdGVPYmouc2V0TW9udGgocGFyc2VGbG9hdChtb250aCkgLSAxKTtcbiAgICAgIH0sXG4gICAgICBzOiBmdW5jdGlvbiBzKGRhdGVPYmosIHNlY29uZHMpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRTZWNvbmRzKHBhcnNlRmxvYXQoc2Vjb25kcykpO1xuICAgICAgfSxcbiAgICAgIHc6IGRvX25vdGhpbmcsXG4gICAgICB5OiBmdW5jdGlvbiB5KGRhdGVPYmosIHllYXIpIHtcbiAgICAgICAgZGF0ZU9iai5zZXRGdWxsWWVhcigyMDAwICsgcGFyc2VGbG9hdCh5ZWFyKSk7XG4gICAgICB9XG4gICAgfTtcbiAgICB2YXIgdG9rZW5SZWdleCA9IHtcbiAgICAgIEQ6IFwiKFxcXFx3KylcIixcbiAgICAgIEY6IFwiKFxcXFx3KylcIixcbiAgICAgIEc6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBIOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgSjogXCIoXFxcXGRcXFxcZHxcXFxcZClcXFxcdytcIixcbiAgICAgIEs6IFwiXCIsXG4gICAgICBNOiBcIihcXFxcdyspXCIsXG4gICAgICBTOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgVTogXCIoLispXCIsXG4gICAgICBXOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgWTogXCIoXFxcXGR7NH0pXCIsXG4gICAgICBaOiBcIiguKylcIixcbiAgICAgIGQ6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBoOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgaTogXCIoXFxcXGRcXFxcZHxcXFxcZClcIixcbiAgICAgIGo6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICBsOiBcIihcXFxcdyspXCIsXG4gICAgICBtOiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgbjogXCIoXFxcXGRcXFxcZHxcXFxcZClcIixcbiAgICAgIHM6IFwiKFxcXFxkXFxcXGR8XFxcXGQpXCIsXG4gICAgICB3OiBcIihcXFxcZFxcXFxkfFxcXFxkKVwiLFxuICAgICAgeTogXCIoXFxcXGR7Mn0pXCJcbiAgICB9O1xuICAgIHZhciBmb3JtYXRzID0ge1xuICAgICAgWjogZnVuY3Rpb24gWihkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICB9LFxuICAgICAgRDogZnVuY3Rpb24gRChkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZS53ZWVrZGF5cy5zaG9ydGhhbmRbZm9ybWF0cy53KGRhdGUsIGxvY2FsZSwgb3B0aW9ucyldO1xuICAgICAgfSxcbiAgICAgIEY6IGZ1bmN0aW9uIEYoZGF0ZSwgbG9jYWxlLCBvcHRpb25zKSB7XG4gICAgICAgIHJldHVybiBtb250aFRvU3RyKGZvcm1hdHMubihkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIC0gMSwgZmFsc2UsIGxvY2FsZSk7XG4gICAgICB9LFxuICAgICAgRzogZnVuY3Rpb24gRyhkYXRlLCBsb2NhbGUsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHBhZChmb3JtYXRzLmgoZGF0ZSwgbG9jYWxlLCBvcHRpb25zKSk7XG4gICAgICB9LFxuICAgICAgSDogZnVuY3Rpb24gSChkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXRIb3VycygpKTtcbiAgICAgIH0sXG4gICAgICBKOiBmdW5jdGlvbiBKKGRhdGUsIGxvY2FsZSkge1xuICAgICAgICByZXR1cm4gbG9jYWxlLm9yZGluYWwgIT09IHVuZGVmaW5lZCA/IGRhdGUuZ2V0RGF0ZSgpICsgbG9jYWxlLm9yZGluYWwoZGF0ZS5nZXREYXRlKCkpIDogZGF0ZS5nZXREYXRlKCk7XG4gICAgICB9LFxuICAgICAgSzogZnVuY3Rpb24gSyhkYXRlLCBsb2NhbGUpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZS5hbVBNW2ludChkYXRlLmdldEhvdXJzKCkgPiAxMSldO1xuICAgICAgfSxcbiAgICAgIE06IGZ1bmN0aW9uIE0oZGF0ZSwgbG9jYWxlKSB7XG4gICAgICAgIHJldHVybiBtb250aFRvU3RyKGRhdGUuZ2V0TW9udGgoKSwgdHJ1ZSwgbG9jYWxlKTtcbiAgICAgIH0sXG4gICAgICBTOiBmdW5jdGlvbiBTKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIHBhZChkYXRlLmdldFNlY29uZHMoKSk7XG4gICAgICB9LFxuICAgICAgVTogZnVuY3Rpb24gVShkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldFRpbWUoKSAvIDEwMDA7XG4gICAgICB9LFxuICAgICAgVzogZnVuY3Rpb24gVyhkYXRlLCBfLCBvcHRpb25zKSB7XG4gICAgICAgIHJldHVybiBvcHRpb25zLmdldFdlZWsoZGF0ZSk7XG4gICAgICB9LFxuICAgICAgWTogZnVuY3Rpb24gWShkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICB9LFxuICAgICAgZDogZnVuY3Rpb24gZChkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXREYXRlKCkpO1xuICAgICAgfSxcbiAgICAgIGg6IGZ1bmN0aW9uIGgoZGF0ZSkge1xuICAgICAgICByZXR1cm4gZGF0ZS5nZXRIb3VycygpICUgMTIgPyBkYXRlLmdldEhvdXJzKCkgJSAxMiA6IDEyO1xuICAgICAgfSxcbiAgICAgIGk6IGZ1bmN0aW9uIGkoZGF0ZSkge1xuICAgICAgICByZXR1cm4gcGFkKGRhdGUuZ2V0TWludXRlcygpKTtcbiAgICAgIH0sXG4gICAgICBqOiBmdW5jdGlvbiBqKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIGRhdGUuZ2V0RGF0ZSgpO1xuICAgICAgfSxcbiAgICAgIGw6IGZ1bmN0aW9uIGwoZGF0ZSwgbG9jYWxlKSB7XG4gICAgICAgIHJldHVybiBsb2NhbGUud2Vla2RheXMubG9uZ2hhbmRbZGF0ZS5nZXREYXkoKV07XG4gICAgICB9LFxuICAgICAgbTogZnVuY3Rpb24gbShkYXRlKSB7XG4gICAgICAgIHJldHVybiBwYWQoZGF0ZS5nZXRNb250aCgpICsgMSk7XG4gICAgICB9LFxuICAgICAgbjogZnVuY3Rpb24gbihkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldE1vbnRoKCkgKyAxO1xuICAgICAgfSxcbiAgICAgIHM6IGZ1bmN0aW9uIHMoZGF0ZSkge1xuICAgICAgICByZXR1cm4gZGF0ZS5nZXRTZWNvbmRzKCk7XG4gICAgICB9LFxuICAgICAgdzogZnVuY3Rpb24gdyhkYXRlKSB7XG4gICAgICAgIHJldHVybiBkYXRlLmdldERheSgpO1xuICAgICAgfSxcbiAgICAgIHk6IGZ1bmN0aW9uIHkoZGF0ZSkge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGRhdGUuZ2V0RnVsbFllYXIoKSkuc3Vic3RyaW5nKDIpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgZW5nbGlzaCA9IHtcbiAgICAgIHdlZWtkYXlzOiB7XG4gICAgICAgIHNob3J0aGFuZDogW1wiU3VuXCIsIFwiTW9uXCIsIFwiVHVlXCIsIFwiV2VkXCIsIFwiVGh1XCIsIFwiRnJpXCIsIFwiU2F0XCJdLFxuICAgICAgICBsb25naGFuZDogW1wiU3VuZGF5XCIsIFwiTW9uZGF5XCIsIFwiVHVlc2RheVwiLCBcIldlZG5lc2RheVwiLCBcIlRodXJzZGF5XCIsIFwiRnJpZGF5XCIsIFwiU2F0dXJkYXlcIl1cbiAgICAgIH0sXG4gICAgICBtb250aHM6IHtcbiAgICAgICAgc2hvcnRoYW5kOiBbXCJKYW5cIiwgXCJGZWJcIiwgXCJNYXJcIiwgXCJBcHJcIiwgXCJNYXlcIiwgXCJKdW5cIiwgXCJKdWxcIiwgXCJBdWdcIiwgXCJTZXBcIiwgXCJPY3RcIiwgXCJOb3ZcIiwgXCJEZWNcIl0sXG4gICAgICAgIGxvbmdoYW5kOiBbXCJKYW51YXJ5XCIsIFwiRmVicnVhcnlcIiwgXCJNYXJjaFwiLCBcIkFwcmlsXCIsIFwiTWF5XCIsIFwiSnVuZVwiLCBcIkp1bHlcIiwgXCJBdWd1c3RcIiwgXCJTZXB0ZW1iZXJcIiwgXCJPY3RvYmVyXCIsIFwiTm92ZW1iZXJcIiwgXCJEZWNlbWJlclwiXVxuICAgICAgfSxcbiAgICAgIGRheXNJbk1vbnRoOiBbMzEsIDI4LCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMxLCAzMCwgMzEsIDMwLCAzMV0sXG4gICAgICBmaXJzdERheU9mV2VlazogMCxcbiAgICAgIG9yZGluYWw6IGZ1bmN0aW9uIG9yZGluYWwobnRoKSB7XG4gICAgICAgIHZhciBzID0gbnRoICUgMTAwO1xuICAgICAgICBpZiAocyA+IDMgJiYgcyA8IDIxKSByZXR1cm4gXCJ0aFwiO1xuXG4gICAgICAgIHN3aXRjaCAocyAlIDEwKSB7XG4gICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgcmV0dXJuIFwic3RcIjtcblxuICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgIHJldHVybiBcIm5kXCI7XG5cbiAgICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgICByZXR1cm4gXCJyZFwiO1xuXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBcInRoXCI7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICByYW5nZVNlcGFyYXRvcjogXCIgdG8gXCIsXG4gICAgICB3ZWVrQWJicmV2aWF0aW9uOiBcIldrXCIsXG4gICAgICBzY3JvbGxUaXRsZTogXCJTY3JvbGwgdG8gaW5jcmVtZW50XCIsXG4gICAgICB0b2dnbGVUaXRsZTogXCJDbGljayB0byB0b2dnbGVcIixcbiAgICAgIGFtUE06IFtcIkFNXCIsIFwiUE1cIl0sXG4gICAgICB5ZWFyQXJpYUxhYmVsOiBcIlllYXJcIlxuICAgIH07XG5cbiAgICB2YXIgY3JlYXRlRGF0ZUZvcm1hdHRlciA9IGZ1bmN0aW9uIGNyZWF0ZURhdGVGb3JtYXR0ZXIoX3JlZikge1xuICAgICAgdmFyIF9yZWYkY29uZmlnID0gX3JlZi5jb25maWcsXG4gICAgICAgICAgY29uZmlnID0gX3JlZiRjb25maWcgPT09IHZvaWQgMCA/IGRlZmF1bHRzIDogX3JlZiRjb25maWcsXG4gICAgICAgICAgX3JlZiRsMTBuID0gX3JlZi5sMTBuLFxuICAgICAgICAgIGwxMG4gPSBfcmVmJGwxMG4gPT09IHZvaWQgMCA/IGVuZ2xpc2ggOiBfcmVmJGwxMG47XG4gICAgICByZXR1cm4gZnVuY3Rpb24gKGRhdGVPYmosIGZybXQsIG92ZXJyaWRlTG9jYWxlKSB7XG4gICAgICAgIGlmIChjb25maWcuZm9ybWF0RGF0ZSAhPT0gdW5kZWZpbmVkKSByZXR1cm4gY29uZmlnLmZvcm1hdERhdGUoZGF0ZU9iaiwgZnJtdCk7XG4gICAgICAgIHZhciBsb2NhbGUgPSBvdmVycmlkZUxvY2FsZSB8fCBsMTBuO1xuICAgICAgICByZXR1cm4gZnJtdC5zcGxpdChcIlwiKS5tYXAoZnVuY3Rpb24gKGMsIGksIGFycikge1xuICAgICAgICAgIHJldHVybiBmb3JtYXRzW2NdICYmIGFycltpIC0gMV0gIT09IFwiXFxcXFwiID8gZm9ybWF0c1tjXShkYXRlT2JqLCBsb2NhbGUsIGNvbmZpZykgOiBjICE9PSBcIlxcXFxcIiA/IGMgOiBcIlwiO1xuICAgICAgICB9KS5qb2luKFwiXCIpO1xuICAgICAgfTtcbiAgICB9O1xuICAgIHZhciBjcmVhdGVEYXRlUGFyc2VyID0gZnVuY3Rpb24gY3JlYXRlRGF0ZVBhcnNlcihfcmVmMikge1xuICAgICAgdmFyIF9yZWYyJGNvbmZpZyA9IF9yZWYyLmNvbmZpZyxcbiAgICAgICAgICBjb25maWcgPSBfcmVmMiRjb25maWcgPT09IHZvaWQgMCA/IGRlZmF1bHRzIDogX3JlZjIkY29uZmlnLFxuICAgICAgICAgIF9yZWYyJGwxMG4gPSBfcmVmMi5sMTBuLFxuICAgICAgICAgIGwxMG4gPSBfcmVmMiRsMTBuID09PSB2b2lkIDAgPyBlbmdsaXNoIDogX3JlZjIkbDEwbjtcbiAgICAgIHJldHVybiBmdW5jdGlvbiAoZGF0ZSwgZ2l2ZW5Gb3JtYXQsIHRpbWVsZXNzKSB7XG4gICAgICAgIGlmIChkYXRlICE9PSAwICYmICFkYXRlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB2YXIgcGFyc2VkRGF0ZTtcbiAgICAgICAgdmFyIGRhdGVfb3JpZyA9IGRhdGU7XG4gICAgICAgIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSkgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtlbHNlIGlmICh0eXBlb2YgZGF0ZSAhPT0gXCJzdHJpbmdcIiAmJiBkYXRlLnRvRml4ZWQgIT09IHVuZGVmaW5lZCkgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKGRhdGUpO2Vsc2UgaWYgKHR5cGVvZiBkYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgdmFyIGZvcm1hdCA9IGdpdmVuRm9ybWF0IHx8IChjb25maWcgfHwgZGVmYXVsdHMpLmRhdGVGb3JtYXQ7XG4gICAgICAgICAgdmFyIGRhdGVzdHIgPSBTdHJpbmcoZGF0ZSkudHJpbSgpO1xuXG4gICAgICAgICAgaWYgKGRhdGVzdHIgPT09IFwidG9kYXlcIikge1xuICAgICAgICAgICAgcGFyc2VkRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgICAgICB0aW1lbGVzcyA9IHRydWU7XG4gICAgICAgICAgfSBlbHNlIGlmICgvWiQvLnRlc3QoZGF0ZXN0cikgfHwgL0dNVCQvLnRlc3QoZGF0ZXN0cikpIHBhcnNlZERhdGUgPSBuZXcgRGF0ZShkYXRlKTtlbHNlIGlmIChjb25maWcgJiYgY29uZmlnLnBhcnNlRGF0ZSkgcGFyc2VkRGF0ZSA9IGNvbmZpZy5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlZERhdGUgPSAhY29uZmlnIHx8ICFjb25maWcubm9DYWxlbmRhciA/IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSwgMCwgMSwgMCwgMCwgMCwgMCkgOiBuZXcgRGF0ZShuZXcgRGF0ZSgpLnNldEhvdXJzKDAsIDAsIDAsIDApKTtcbiAgICAgICAgICAgIHZhciBtYXRjaGVkLFxuICAgICAgICAgICAgICAgIG9wcyA9IFtdO1xuXG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbWF0Y2hJbmRleCA9IDAsIHJlZ2V4U3RyID0gXCJcIjsgaSA8IGZvcm1hdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICB2YXIgdG9rZW4gPSBmb3JtYXRbaV07XG4gICAgICAgICAgICAgIHZhciBpc0JhY2tTbGFzaCA9IHRva2VuID09PSBcIlxcXFxcIjtcbiAgICAgICAgICAgICAgdmFyIGVzY2FwZWQgPSBmb3JtYXRbaSAtIDFdID09PSBcIlxcXFxcIiB8fCBpc0JhY2tTbGFzaDtcblxuICAgICAgICAgICAgICBpZiAodG9rZW5SZWdleFt0b2tlbl0gJiYgIWVzY2FwZWQpIHtcbiAgICAgICAgICAgICAgICByZWdleFN0ciArPSB0b2tlblJlZ2V4W3Rva2VuXTtcbiAgICAgICAgICAgICAgICB2YXIgbWF0Y2ggPSBuZXcgUmVnRXhwKHJlZ2V4U3RyKS5leGVjKGRhdGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG1hdGNoICYmIChtYXRjaGVkID0gdHJ1ZSkpIHtcbiAgICAgICAgICAgICAgICAgIG9wc1t0b2tlbiAhPT0gXCJZXCIgPyBcInB1c2hcIiA6IFwidW5zaGlmdFwiXSh7XG4gICAgICAgICAgICAgICAgICAgIGZuOiByZXZGb3JtYXRbdG9rZW5dLFxuICAgICAgICAgICAgICAgICAgICB2YWw6IG1hdGNoWysrbWF0Y2hJbmRleF1cbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIGlmICghaXNCYWNrU2xhc2gpIHJlZ2V4U3RyICs9IFwiLlwiO1xuXG4gICAgICAgICAgICAgIG9wcy5mb3JFYWNoKGZ1bmN0aW9uIChfcmVmMykge1xuICAgICAgICAgICAgICAgIHZhciBmbiA9IF9yZWYzLmZuLFxuICAgICAgICAgICAgICAgICAgICB2YWwgPSBfcmVmMy52YWw7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlZERhdGUgPSBmbihwYXJzZWREYXRlLCB2YWwsIGwxMG4pIHx8IHBhcnNlZERhdGU7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXJzZWREYXRlID0gbWF0Y2hlZCA/IHBhcnNlZERhdGUgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCEocGFyc2VkRGF0ZSBpbnN0YW5jZW9mIERhdGUgJiYgIWlzTmFOKHBhcnNlZERhdGUuZ2V0VGltZSgpKSkpIHtcbiAgICAgICAgICBjb25maWcuZXJyb3JIYW5kbGVyKG5ldyBFcnJvcihcIkludmFsaWQgZGF0ZSBwcm92aWRlZDogXCIgKyBkYXRlX29yaWcpKTtcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRpbWVsZXNzID09PSB0cnVlKSBwYXJzZWREYXRlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xuICAgICAgICByZXR1cm4gcGFyc2VkRGF0ZTtcbiAgICAgIH07XG4gICAgfTtcbiAgICBmdW5jdGlvbiBjb21wYXJlRGF0ZXMoZGF0ZTEsIGRhdGUyLCB0aW1lbGVzcykge1xuICAgICAgaWYgKHRpbWVsZXNzID09PSB2b2lkIDApIHtcbiAgICAgICAgdGltZWxlc3MgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAodGltZWxlc3MgIT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRUaW1lKCkpLnNldEhvdXJzKDAsIDAsIDAsIDApIC0gbmV3IERhdGUoZGF0ZTIuZ2V0VGltZSgpKS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRhdGUxLmdldFRpbWUoKSAtIGRhdGUyLmdldFRpbWUoKTtcbiAgICB9XG4gICAgdmFyIGdldFdlZWsgPSBmdW5jdGlvbiBnZXRXZWVrKGdpdmVuRGF0ZSkge1xuICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZShnaXZlbkRhdGUuZ2V0VGltZSgpKTtcbiAgICAgIGRhdGUuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG4gICAgICBkYXRlLnNldERhdGUoZGF0ZS5nZXREYXRlKCkgKyAzIC0gKGRhdGUuZ2V0RGF5KCkgKyA2KSAlIDcpO1xuICAgICAgdmFyIHdlZWsxID0gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCAwLCA0KTtcbiAgICAgIHJldHVybiAxICsgTWF0aC5yb3VuZCgoKGRhdGUuZ2V0VGltZSgpIC0gd2VlazEuZ2V0VGltZSgpKSAvIDg2NDAwMDAwIC0gMyArICh3ZWVrMS5nZXREYXkoKSArIDYpICUgNykgLyA3KTtcbiAgICB9O1xuICAgIHZhciBpc0JldHdlZW4gPSBmdW5jdGlvbiBpc0JldHdlZW4odHMsIHRzMSwgdHMyKSB7XG4gICAgICByZXR1cm4gdHMgPiBNYXRoLm1pbih0czEsIHRzMikgJiYgdHMgPCBNYXRoLm1heCh0czEsIHRzMik7XG4gICAgfTtcbiAgICB2YXIgZHVyYXRpb24gPSB7XG4gICAgICBEQVk6IDg2NDAwMDAwXG4gICAgfTtcblxuICAgIHZhciBkZWZhdWx0cyA9IHtcbiAgICAgIF9kaXNhYmxlOiBbXSxcbiAgICAgIF9lbmFibGU6IFtdLFxuICAgICAgYWxsb3dJbnB1dDogZmFsc2UsXG4gICAgICBhbHRGb3JtYXQ6IFwiRiBqLCBZXCIsXG4gICAgICBhbHRJbnB1dDogZmFsc2UsXG4gICAgICBhbHRJbnB1dENsYXNzOiBcImZvcm0tY29udHJvbCBpbnB1dFwiLFxuICAgICAgYW5pbWF0ZTogdHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIiAmJiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKFwiTVNJRVwiKSA9PT0gLTEsXG4gICAgICBhcmlhRGF0ZUZvcm1hdDogXCJGIGosIFlcIixcbiAgICAgIGNsaWNrT3BlbnM6IHRydWUsXG4gICAgICBjbG9zZU9uU2VsZWN0OiB0cnVlLFxuICAgICAgY29uanVuY3Rpb246IFwiLCBcIixcbiAgICAgIGRhdGVGb3JtYXQ6IFwiWS1tLWRcIixcbiAgICAgIGRlZmF1bHRIb3VyOiAxMixcbiAgICAgIGRlZmF1bHRNaW51dGU6IDAsXG4gICAgICBkZWZhdWx0U2Vjb25kczogMCxcbiAgICAgIGRpc2FibGU6IFtdLFxuICAgICAgZGlzYWJsZU1vYmlsZTogZmFsc2UsXG4gICAgICBlbmFibGU6IFtdLFxuICAgICAgZW5hYmxlU2Vjb25kczogZmFsc2UsXG4gICAgICBlbmFibGVUaW1lOiBmYWxzZSxcbiAgICAgIGVycm9ySGFuZGxlcjogZnVuY3Rpb24gZXJyb3JIYW5kbGVyKGVycikge1xuICAgICAgICByZXR1cm4gdHlwZW9mIGNvbnNvbGUgIT09IFwidW5kZWZpbmVkXCIgJiYgY29uc29sZS53YXJuKGVycik7XG4gICAgICB9LFxuICAgICAgZ2V0V2VlazogZ2V0V2VlayxcbiAgICAgIGhvdXJJbmNyZW1lbnQ6IDEsXG4gICAgICBpZ25vcmVkRm9jdXNFbGVtZW50czogW10sXG4gICAgICBpbmxpbmU6IGZhbHNlLFxuICAgICAgbG9jYWxlOiBcImRlZmF1bHRcIixcbiAgICAgIG1pbnV0ZUluY3JlbWVudDogNSxcbiAgICAgIG1vZGU6IFwic2luZ2xlXCIsXG4gICAgICBuZXh0QXJyb3c6IFwiPHN2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIHZpZXdCb3g9JzAgMCAxNyAxNyc+PGc+PC9nPjxwYXRoIGQ9J00xMy4yMDcgOC40NzJsLTcuODU0IDcuODU0LTAuNzA3LTAuNzA3IDcuMTQ2LTcuMTQ2LTcuMTQ2LTcuMTQ4IDAuNzA3LTAuNzA3IDcuODU0IDcuODU0eicgLz48L3N2Zz5cIixcbiAgICAgIG5vQ2FsZW5kYXI6IGZhbHNlLFxuICAgICAgbm93OiBuZXcgRGF0ZSgpLFxuICAgICAgb25DaGFuZ2U6IFtdLFxuICAgICAgb25DbG9zZTogW10sXG4gICAgICBvbkRheUNyZWF0ZTogW10sXG4gICAgICBvbkRlc3Ryb3k6IFtdLFxuICAgICAgb25LZXlEb3duOiBbXSxcbiAgICAgIG9uTW9udGhDaGFuZ2U6IFtdLFxuICAgICAgb25PcGVuOiBbXSxcbiAgICAgIG9uUGFyc2VDb25maWc6IFtdLFxuICAgICAgb25SZWFkeTogW10sXG4gICAgICBvblZhbHVlVXBkYXRlOiBbXSxcbiAgICAgIG9uWWVhckNoYW5nZTogW10sXG4gICAgICBvblByZUNhbGVuZGFyUG9zaXRpb246IFtdLFxuICAgICAgcGx1Z2luczogW10sXG4gICAgICBwb3NpdGlvbjogXCJhdXRvXCIsXG4gICAgICBwb3NpdGlvbkVsZW1lbnQ6IHVuZGVmaW5lZCxcbiAgICAgIHByZXZBcnJvdzogXCI8c3ZnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgdmlld0JveD0nMCAwIDE3IDE3Jz48Zz48L2c+PHBhdGggZD0nTTUuMjA3IDguNDcxbDcuMTQ2IDcuMTQ3LTAuNzA3IDAuNzA3LTcuODUzLTcuODU0IDcuODU0LTcuODUzIDAuNzA3IDAuNzA3LTcuMTQ3IDcuMTQ2eicgLz48L3N2Zz5cIixcbiAgICAgIHNob3J0aGFuZEN1cnJlbnRNb250aDogZmFsc2UsXG4gICAgICBzaG93TW9udGhzOiAxLFxuICAgICAgc3RhdGljOiBmYWxzZSxcbiAgICAgIHRpbWVfMjRocjogZmFsc2UsXG4gICAgICB3ZWVrTnVtYmVyczogZmFsc2UsXG4gICAgICB3cmFwOiBmYWxzZVxuICAgIH07XG5cbiAgICBmdW5jdGlvbiB0b2dnbGVDbGFzcyhlbGVtLCBjbGFzc05hbWUsIGJvb2wpIHtcbiAgICAgIGlmIChib29sID09PSB0cnVlKSByZXR1cm4gZWxlbS5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gICAgICBlbGVtLmNsYXNzTGlzdC5yZW1vdmUoY2xhc3NOYW1lKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0YWcsIGNsYXNzTmFtZSwgY29udGVudCkge1xuICAgICAgdmFyIGUgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWcpO1xuICAgICAgY2xhc3NOYW1lID0gY2xhc3NOYW1lIHx8IFwiXCI7XG4gICAgICBjb250ZW50ID0gY29udGVudCB8fCBcIlwiO1xuICAgICAgZS5jbGFzc05hbWUgPSBjbGFzc05hbWU7XG4gICAgICBpZiAoY29udGVudCAhPT0gdW5kZWZpbmVkKSBlLnRleHRDb250ZW50ID0gY29udGVudDtcbiAgICAgIHJldHVybiBlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBjbGVhck5vZGUobm9kZSkge1xuICAgICAgd2hpbGUgKG5vZGUuZmlyc3RDaGlsZCkge1xuICAgICAgICBub2RlLnJlbW92ZUNoaWxkKG5vZGUuZmlyc3RDaGlsZCk7XG4gICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGZpbmRQYXJlbnQobm9kZSwgY29uZGl0aW9uKSB7XG4gICAgICBpZiAoY29uZGl0aW9uKG5vZGUpKSByZXR1cm4gbm9kZTtlbHNlIGlmIChub2RlLnBhcmVudE5vZGUpIHJldHVybiBmaW5kUGFyZW50KG5vZGUucGFyZW50Tm9kZSwgY29uZGl0aW9uKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNyZWF0ZU51bWJlcklucHV0KGlucHV0Q2xhc3NOYW1lLCBvcHRzKSB7XG4gICAgICB2YXIgd3JhcHBlciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJudW1JbnB1dFdyYXBwZXJcIiksXG4gICAgICAgICAgbnVtSW5wdXQgPSBjcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwgXCJudW1JbnB1dCBcIiArIGlucHV0Q2xhc3NOYW1lKSxcbiAgICAgICAgICBhcnJvd1VwID0gY3JlYXRlRWxlbWVudChcInNwYW5cIiwgXCJhcnJvd1VwXCIpLFxuICAgICAgICAgIGFycm93RG93biA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiYXJyb3dEb3duXCIpO1xuICAgICAgbnVtSW5wdXQudHlwZSA9IFwidGV4dFwiO1xuICAgICAgbnVtSW5wdXQucGF0dGVybiA9IFwiXFxcXGQqXCI7XG4gICAgICBpZiAob3B0cyAhPT0gdW5kZWZpbmVkKSBmb3IgKHZhciBrZXkgaW4gb3B0cykge1xuICAgICAgICBudW1JbnB1dC5zZXRBdHRyaWJ1dGUoa2V5LCBvcHRzW2tleV0pO1xuICAgICAgfVxuICAgICAgd3JhcHBlci5hcHBlbmRDaGlsZChudW1JbnB1dCk7XG4gICAgICB3cmFwcGVyLmFwcGVuZENoaWxkKGFycm93VXApO1xuICAgICAgd3JhcHBlci5hcHBlbmRDaGlsZChhcnJvd0Rvd24pO1xuICAgICAgcmV0dXJuIHdyYXBwZXI7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBPYmplY3QuYXNzaWduICE9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24gPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgdGhyb3cgVHlwZUVycm9yKFwiQ2Fubm90IGNvbnZlcnQgdW5kZWZpbmVkIG9yIG51bGwgdG8gb2JqZWN0XCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yICh2YXIgX2xlbiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbiA+IDEgPyBfbGVuIC0gMSA6IDApLCBfa2V5ID0gMTsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgICAgIGFyZ3NbX2tleSAtIDFdID0gYXJndW1lbnRzW19rZXldO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIF9sb29wID0gZnVuY3Rpb24gX2xvb3AoKSB7XG4gICAgICAgICAgdmFyIHNvdXJjZSA9IGFyZ3NbX2ldO1xuXG4gICAgICAgICAgaWYgKHNvdXJjZSkge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoc291cmNlKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRhcmdldFtrZXldID0gc291cmNlW2tleV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgZm9yICh2YXIgX2kgPSAwOyBfaSA8IGFyZ3MubGVuZ3RoOyBfaSsrKSB7XG4gICAgICAgICAgX2xvb3AoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0YXJnZXQ7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHZhciBERUJPVU5DRURfQ0hBTkdFX01TID0gMzAwO1xuXG4gICAgZnVuY3Rpb24gRmxhdHBpY2tySW5zdGFuY2UoZWxlbWVudCwgaW5zdGFuY2VDb25maWcpIHtcbiAgICAgIHZhciBzZWxmID0ge1xuICAgICAgICBjb25maWc6IE9iamVjdC5hc3NpZ24oe30sIGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnKSxcbiAgICAgICAgbDEwbjogZW5nbGlzaFxuICAgICAgfTtcbiAgICAgIHNlbGYucGFyc2VEYXRlID0gY3JlYXRlRGF0ZVBhcnNlcih7XG4gICAgICAgIGNvbmZpZzogc2VsZi5jb25maWcsXG4gICAgICAgIGwxMG46IHNlbGYubDEwblxuICAgICAgfSk7XG4gICAgICBzZWxmLl9oYW5kbGVycyA9IFtdO1xuICAgICAgc2VsZi5fYmluZCA9IGJpbmQ7XG4gICAgICBzZWxmLl9zZXRIb3Vyc0Zyb21EYXRlID0gc2V0SG91cnNGcm9tRGF0ZTtcbiAgICAgIHNlbGYuX3Bvc2l0aW9uQ2FsZW5kYXIgPSBwb3NpdGlvbkNhbGVuZGFyO1xuICAgICAgc2VsZi5jaGFuZ2VNb250aCA9IGNoYW5nZU1vbnRoO1xuICAgICAgc2VsZi5jaGFuZ2VZZWFyID0gY2hhbmdlWWVhcjtcbiAgICAgIHNlbGYuY2xlYXIgPSBjbGVhcjtcbiAgICAgIHNlbGYuY2xvc2UgPSBjbG9zZTtcbiAgICAgIHNlbGYuX2NyZWF0ZUVsZW1lbnQgPSBjcmVhdGVFbGVtZW50O1xuICAgICAgc2VsZi5kZXN0cm95ID0gZGVzdHJveTtcbiAgICAgIHNlbGYuaXNFbmFibGVkID0gaXNFbmFibGVkO1xuICAgICAgc2VsZi5qdW1wVG9EYXRlID0ganVtcFRvRGF0ZTtcbiAgICAgIHNlbGYub3BlbiA9IG9wZW47XG4gICAgICBzZWxmLnJlZHJhdyA9IHJlZHJhdztcbiAgICAgIHNlbGYuc2V0ID0gc2V0O1xuICAgICAgc2VsZi5zZXREYXRlID0gc2V0RGF0ZTtcbiAgICAgIHNlbGYudG9nZ2xlID0gdG9nZ2xlO1xuXG4gICAgICBmdW5jdGlvbiBzZXR1cEhlbHBlckZ1bmN0aW9ucygpIHtcbiAgICAgICAgc2VsZi51dGlscyA9IHtcbiAgICAgICAgICBnZXREYXlzSW5Nb250aDogZnVuY3Rpb24gZ2V0RGF5c0luTW9udGgobW9udGgsIHlyKSB7XG4gICAgICAgICAgICBpZiAobW9udGggPT09IHZvaWQgMCkge1xuICAgICAgICAgICAgICBtb250aCA9IHNlbGYuY3VycmVudE1vbnRoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoeXIgPT09IHZvaWQgMCkge1xuICAgICAgICAgICAgICB5ciA9IHNlbGYuY3VycmVudFllYXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChtb250aCA9PT0gMSAmJiAoeXIgJSA0ID09PSAwICYmIHlyICUgMTAwICE9PSAwIHx8IHlyICUgNDAwID09PSAwKSkgcmV0dXJuIDI5O1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYubDEwbi5kYXlzSW5Nb250aFttb250aF07XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBpbml0KCkge1xuICAgICAgICBzZWxmLmVsZW1lbnQgPSBzZWxmLmlucHV0ID0gZWxlbWVudDtcbiAgICAgICAgc2VsZi5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgcGFyc2VDb25maWcoKTtcbiAgICAgICAgc2V0dXBMb2NhbGUoKTtcbiAgICAgICAgc2V0dXBJbnB1dHMoKTtcbiAgICAgICAgc2V0dXBEYXRlcygpO1xuICAgICAgICBzZXR1cEhlbHBlckZ1bmN0aW9ucygpO1xuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUpIGJ1aWxkKCk7XG4gICAgICAgIGJpbmRFdmVudHMoKTtcblxuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCB8fCBzZWxmLmNvbmZpZy5ub0NhbGVuZGFyKSB7XG4gICAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUpIHtcbiAgICAgICAgICAgIHNldEhvdXJzRnJvbURhdGUoc2VsZi5jb25maWcubm9DYWxlbmRhciA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqIHx8IHNlbGYuY29uZmlnLm1pbkRhdGUgOiB1bmRlZmluZWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVwZGF0ZVZhbHVlKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldENhbGVuZGFyV2lkdGgoKTtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDAgfHwgc2VsZi5jb25maWcubm9DYWxlbmRhcjtcbiAgICAgICAgdmFyIGlzU2FmYXJpID0gL14oKD8hY2hyb21lfGFuZHJvaWQpLikqc2FmYXJpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcblxuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUgJiYgaXNTYWZhcmkpIHtcbiAgICAgICAgICBwb3NpdGlvbkNhbGVuZGFyKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvblJlYWR5XCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBiaW5kVG9JbnN0YW5jZShmbikge1xuICAgICAgICByZXR1cm4gZm4uYmluZChzZWxmKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0Q2FsZW5kYXJXaWR0aCgpIHtcbiAgICAgICAgdmFyIGNvbmZpZyA9IHNlbGYuY29uZmlnO1xuICAgICAgICBpZiAoY29uZmlnLndlZWtOdW1iZXJzID09PSBmYWxzZSAmJiBjb25maWcuc2hvd01vbnRocyA9PT0gMSkgcmV0dXJuO2Vsc2UgaWYgKGNvbmZpZy5ub0NhbGVuZGFyICE9PSB0cnVlKSB7XG4gICAgICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnZpc2liaWxpdHkgPSBcImhpZGRlblwiO1xuICAgICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgdmFyIGRheXNXaWR0aCA9IChzZWxmLmRheXMub2Zmc2V0V2lkdGggKyAxKSAqIGNvbmZpZy5zaG93TW9udGhzO1xuICAgICAgICAgICAgICBzZWxmLmRheXNDb250YWluZXIuc3R5bGUud2lkdGggPSBkYXlzV2lkdGggKyBcInB4XCI7XG4gICAgICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUud2lkdGggPSBkYXlzV2lkdGggKyAoc2VsZi53ZWVrV3JhcHBlciAhPT0gdW5kZWZpbmVkID8gc2VsZi53ZWVrV3JhcHBlci5vZmZzZXRXaWR0aCA6IDApICsgXCJweFwiO1xuICAgICAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnJlbW92ZVByb3BlcnR5KFwidmlzaWJpbGl0eVwiKTtcbiAgICAgICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5yZW1vdmVQcm9wZXJ0eShcImRpc3BsYXlcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdXBkYXRlVGltZShlKSB7XG4gICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgICAgIGlmIChlICE9PSB1bmRlZmluZWQgJiYgZS50eXBlICE9PSBcImJsdXJcIikgdGltZVdyYXBwZXIoZSk7XG4gICAgICAgIHNldEhvdXJzRnJvbUlucHV0cygpO1xuICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuXG4gICAgICAgIHNlbGYuX2RlYm91bmNlZENoYW5nZSgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBhbXBtMm1pbGl0YXJ5KGhvdXIsIGFtUE0pIHtcbiAgICAgICAgcmV0dXJuIGhvdXIgJSAxMiArIDEyICogaW50KGFtUE0gPT09IHNlbGYubDEwbi5hbVBNWzFdKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gbWlsaXRhcnkyYW1wbShob3VyKSB7XG4gICAgICAgIHN3aXRjaCAoaG91ciAlIDI0KSB7XG4gICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgIGNhc2UgMTI6XG4gICAgICAgICAgICByZXR1cm4gMTI7XG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIGhvdXIgJSAxMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vyc0Zyb21JbnB1dHMoKSB7XG4gICAgICAgIGlmIChzZWxmLmhvdXJFbGVtZW50ID09PSB1bmRlZmluZWQgfHwgc2VsZi5taW51dGVFbGVtZW50ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgICAgdmFyIGhvdXJzID0gKHBhcnNlSW50KHNlbGYuaG91ckVsZW1lbnQudmFsdWUuc2xpY2UoLTIpLCAxMCkgfHwgMCkgJSAyNCxcbiAgICAgICAgICAgIG1pbnV0ZXMgPSAocGFyc2VJbnQoc2VsZi5taW51dGVFbGVtZW50LnZhbHVlLCAxMCkgfHwgMCkgJSA2MCxcbiAgICAgICAgICAgIHNlY29uZHMgPSBzZWxmLnNlY29uZEVsZW1lbnQgIT09IHVuZGVmaW5lZCA/IChwYXJzZUludChzZWxmLnNlY29uZEVsZW1lbnQudmFsdWUsIDEwKSB8fCAwKSAlIDYwIDogMDtcblxuICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBob3VycyA9IGFtcG0ybWlsaXRhcnkoaG91cnMsIHNlbGYuYW1QTS50ZXh0Q29udGVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgbGltaXRNaW5Ib3VycyA9IHNlbGYuY29uZmlnLm1pblRpbWUgIT09IHVuZGVmaW5lZCB8fCBzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYubWluRGF0ZUhhc1RpbWUgJiYgc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogJiYgY29tcGFyZURhdGVzKHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLCBzZWxmLmNvbmZpZy5taW5EYXRlLCB0cnVlKSA9PT0gMDtcbiAgICAgICAgdmFyIGxpbWl0TWF4SG91cnMgPSBzZWxmLmNvbmZpZy5tYXhUaW1lICE9PSB1bmRlZmluZWQgfHwgc2VsZi5jb25maWcubWF4RGF0ZSAmJiBzZWxmLm1heERhdGVIYXNUaW1lICYmIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqICYmIGNvbXBhcmVEYXRlcyhzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiwgc2VsZi5jb25maWcubWF4RGF0ZSwgdHJ1ZSkgPT09IDA7XG5cbiAgICAgICAgaWYgKGxpbWl0TWF4SG91cnMpIHtcbiAgICAgICAgICB2YXIgbWF4VGltZSA9IHNlbGYuY29uZmlnLm1heFRpbWUgIT09IHVuZGVmaW5lZCA/IHNlbGYuY29uZmlnLm1heFRpbWUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlO1xuICAgICAgICAgIGhvdXJzID0gTWF0aC5taW4oaG91cnMsIG1heFRpbWUuZ2V0SG91cnMoKSk7XG4gICAgICAgICAgaWYgKGhvdXJzID09PSBtYXhUaW1lLmdldEhvdXJzKCkpIG1pbnV0ZXMgPSBNYXRoLm1pbihtaW51dGVzLCBtYXhUaW1lLmdldE1pbnV0ZXMoKSk7XG4gICAgICAgICAgaWYgKG1pbnV0ZXMgPT09IG1heFRpbWUuZ2V0TWludXRlcygpKSBzZWNvbmRzID0gTWF0aC5taW4oc2Vjb25kcywgbWF4VGltZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxpbWl0TWluSG91cnMpIHtcbiAgICAgICAgICB2YXIgbWluVGltZSA9IHNlbGYuY29uZmlnLm1pblRpbWUgIT09IHVuZGVmaW5lZCA/IHNlbGYuY29uZmlnLm1pblRpbWUgOiBzZWxmLmNvbmZpZy5taW5EYXRlO1xuICAgICAgICAgIGhvdXJzID0gTWF0aC5tYXgoaG91cnMsIG1pblRpbWUuZ2V0SG91cnMoKSk7XG4gICAgICAgICAgaWYgKGhvdXJzID09PSBtaW5UaW1lLmdldEhvdXJzKCkpIG1pbnV0ZXMgPSBNYXRoLm1heChtaW51dGVzLCBtaW5UaW1lLmdldE1pbnV0ZXMoKSk7XG4gICAgICAgICAgaWYgKG1pbnV0ZXMgPT09IG1pblRpbWUuZ2V0TWludXRlcygpKSBzZWNvbmRzID0gTWF0aC5tYXgoc2Vjb25kcywgbWluVGltZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0SG91cnMoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vyc0Zyb21EYXRlKGRhdGVPYmopIHtcbiAgICAgICAgdmFyIGRhdGUgPSBkYXRlT2JqIHx8IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqO1xuICAgICAgICBpZiAoZGF0ZSkgc2V0SG91cnMoZGF0ZS5nZXRIb3VycygpLCBkYXRlLmdldE1pbnV0ZXMoKSwgZGF0ZS5nZXRTZWNvbmRzKCkpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXREZWZhdWx0SG91cnMoKSB7XG4gICAgICAgIHZhciBob3VycyA9IHNlbGYuY29uZmlnLmRlZmF1bHRIb3VyO1xuICAgICAgICB2YXIgbWludXRlcyA9IHNlbGYuY29uZmlnLmRlZmF1bHRNaW51dGU7XG4gICAgICAgIHZhciBzZWNvbmRzID0gc2VsZi5jb25maWcuZGVmYXVsdFNlY29uZHM7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHZhciBtaW5faHIgPSBzZWxmLmNvbmZpZy5taW5EYXRlLmdldEhvdXJzKCk7XG4gICAgICAgICAgdmFyIG1pbl9taW51dGVzID0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRNaW51dGVzKCk7XG4gICAgICAgICAgaG91cnMgPSBNYXRoLm1heChob3VycywgbWluX2hyKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1pbl9ocikgbWludXRlcyA9IE1hdGgubWF4KG1pbl9taW51dGVzLCBtaW51dGVzKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1pbl9ociAmJiBtaW51dGVzID09PSBtaW5fbWludXRlcykgc2Vjb25kcyA9IHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0U2Vjb25kcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1heERhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHZhciBtYXhfaHIgPSBzZWxmLmNvbmZpZy5tYXhEYXRlLmdldEhvdXJzKCk7XG4gICAgICAgICAgdmFyIG1heF9taW51dGVzID0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNaW51dGVzKCk7XG4gICAgICAgICAgaG91cnMgPSBNYXRoLm1pbihob3VycywgbWF4X2hyKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1heF9ocikgbWludXRlcyA9IE1hdGgubWluKG1heF9taW51dGVzLCBtaW51dGVzKTtcbiAgICAgICAgICBpZiAoaG91cnMgPT09IG1heF9ociAmJiBtaW51dGVzID09PSBtYXhfbWludXRlcykgc2Vjb25kcyA9IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0U2Vjb25kcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0SG91cnMoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRIb3Vycyhob3VycywgbWludXRlcywgc2Vjb25kcykge1xuICAgICAgICBpZiAoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLnNldEhvdXJzKGhvdXJzICUgMjQsIG1pbnV0ZXMsIHNlY29uZHMgfHwgMCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNlbGYuaG91ckVsZW1lbnQgfHwgIXNlbGYubWludXRlRWxlbWVudCB8fCBzZWxmLmlzTW9iaWxlKSByZXR1cm47XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQudmFsdWUgPSBwYWQoIXNlbGYuY29uZmlnLnRpbWVfMjRociA/ICgxMiArIGhvdXJzKSAlIDEyICsgMTIgKiBpbnQoaG91cnMgJSAxMiA9PT0gMCkgOiBob3Vycyk7XG4gICAgICAgIHNlbGYubWludXRlRWxlbWVudC52YWx1ZSA9IHBhZChtaW51dGVzKTtcbiAgICAgICAgaWYgKHNlbGYuYW1QTSAhPT0gdW5kZWZpbmVkKSBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVtpbnQoaG91cnMgPj0gMTIpXTtcbiAgICAgICAgaWYgKHNlbGYuc2Vjb25kRWxlbWVudCAhPT0gdW5kZWZpbmVkKSBzZWxmLnNlY29uZEVsZW1lbnQudmFsdWUgPSBwYWQoc2Vjb25kcyk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG9uWWVhcklucHV0KGV2ZW50KSB7XG4gICAgICAgIHZhciB5ZWFyID0gcGFyc2VJbnQoZXZlbnQudGFyZ2V0LnZhbHVlKSArIChldmVudC5kZWx0YSB8fCAwKTtcblxuICAgICAgICBpZiAoeWVhciAvIDEwMDAgPiAxIHx8IGV2ZW50LmtleSA9PT0gXCJFbnRlclwiICYmICEvW15cXGRdLy50ZXN0KHllYXIudG9TdHJpbmcoKSkpIHtcbiAgICAgICAgICBjaGFuZ2VZZWFyKHllYXIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGJpbmQoZWxlbWVudCwgZXZlbnQsIGhhbmRsZXIsIG9wdGlvbnMpIHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgQXJyYXkpIHJldHVybiBldmVudC5mb3JFYWNoKGZ1bmN0aW9uIChldikge1xuICAgICAgICAgIHJldHVybiBiaW5kKGVsZW1lbnQsIGV2LCBoYW5kbGVyLCBvcHRpb25zKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChlbGVtZW50IGluc3RhbmNlb2YgQXJyYXkpIHJldHVybiBlbGVtZW50LmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgcmV0dXJuIGJpbmQoZWwsIGV2ZW50LCBoYW5kbGVyLCBvcHRpb25zKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihldmVudCwgaGFuZGxlciwgb3B0aW9ucyk7XG5cbiAgICAgICAgc2VsZi5faGFuZGxlcnMucHVzaCh7XG4gICAgICAgICAgZWxlbWVudDogZWxlbWVudCxcbiAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgICAgaGFuZGxlcjogaGFuZGxlcixcbiAgICAgICAgICBvcHRpb25zOiBvcHRpb25zXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvbkNsaWNrKGhhbmRsZXIpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICBldnQud2hpY2ggPT09IDEgJiYgaGFuZGxlcihldnQpO1xuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0cmlnZ2VyQ2hhbmdlKCkge1xuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvbkNoYW5nZVwiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYmluZEV2ZW50cygpIHtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLndyYXApIHtcbiAgICAgICAgICBbXCJvcGVuXCIsIFwiY2xvc2VcIiwgXCJ0b2dnbGVcIiwgXCJjbGVhclwiXS5mb3JFYWNoKGZ1bmN0aW9uIChldnQpIHtcbiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoc2VsZi5lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS1cIiArIGV2dCArIFwiXVwiKSwgZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgICAgICAgIHJldHVybiBiaW5kKGVsLCBcImNsaWNrXCIsIHNlbGZbZXZ0XSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmlzTW9iaWxlKSB7XG4gICAgICAgICAgc2V0dXBNb2JpbGUoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZGVib3VuY2VkUmVzaXplID0gZGVib3VuY2Uob25SZXNpemUsIDUwKTtcbiAgICAgICAgc2VsZi5fZGVib3VuY2VkQ2hhbmdlID0gZGVib3VuY2UodHJpZ2dlckNoYW5nZSwgREVCT1VOQ0VEX0NIQU5HRV9NUyk7XG4gICAgICAgIGlmIChzZWxmLmRheXNDb250YWluZXIgJiYgIS9pUGhvbmV8aVBhZHxpUG9kL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSkgYmluZChzZWxmLmRheXNDb250YWluZXIsIFwibW91c2VvdmVyXCIsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikgb25Nb3VzZU92ZXIoZS50YXJnZXQpO1xuICAgICAgICB9KTtcbiAgICAgICAgYmluZCh3aW5kb3cuZG9jdW1lbnQuYm9keSwgXCJrZXlkb3duXCIsIG9uS2V5RG93bik7XG4gICAgICAgIGlmICghc2VsZi5jb25maWcuc3RhdGljKSBiaW5kKHNlbGYuX2lucHV0LCBcImtleWRvd25cIiwgb25LZXlEb3duKTtcbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5pbmxpbmUgJiYgIXNlbGYuY29uZmlnLnN0YXRpYykgYmluZCh3aW5kb3csIFwicmVzaXplXCIsIGRlYm91bmNlZFJlc2l6ZSk7XG4gICAgICAgIGlmICh3aW5kb3cub250b3VjaHN0YXJ0ICE9PSB1bmRlZmluZWQpIGJpbmQod2luZG93LmRvY3VtZW50LCBcImNsaWNrXCIsIGRvY3VtZW50Q2xpY2spO2Vsc2UgYmluZCh3aW5kb3cuZG9jdW1lbnQsIFwibW91c2Vkb3duXCIsIG9uQ2xpY2soZG9jdW1lbnRDbGljaykpO1xuICAgICAgICBiaW5kKHdpbmRvdy5kb2N1bWVudCwgXCJmb2N1c1wiLCBkb2N1bWVudENsaWNrLCB7XG4gICAgICAgICAgY2FwdHVyZTogdHJ1ZVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoc2VsZi5jb25maWcuY2xpY2tPcGVucyA9PT0gdHJ1ZSkge1xuICAgICAgICAgIGJpbmQoc2VsZi5faW5wdXQsIFwiZm9jdXNcIiwgc2VsZi5vcGVuKTtcbiAgICAgICAgICBiaW5kKHNlbGYuX2lucHV0LCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKHNlbGYub3BlbikpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuZGF5c0NvbnRhaW5lciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgYmluZChzZWxmLm1vbnRoTmF2LCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKG9uTW9udGhOYXZDbGljaykpO1xuICAgICAgICAgIGJpbmQoc2VsZi5tb250aE5hdiwgW1wia2V5dXBcIiwgXCJpbmNyZW1lbnRcIl0sIG9uWWVhcklucHV0KTtcbiAgICAgICAgICBiaW5kKHNlbGYuZGF5c0NvbnRhaW5lciwgXCJtb3VzZWRvd25cIiwgb25DbGljayhzZWxlY3REYXRlKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi50aW1lQ29udGFpbmVyICE9PSB1bmRlZmluZWQgJiYgc2VsZi5taW51dGVFbGVtZW50ICE9PSB1bmRlZmluZWQgJiYgc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdmFyIHNlbFRleHQgPSBmdW5jdGlvbiBzZWxUZXh0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLnRhcmdldC5zZWxlY3QoKTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFtcImluY3JlbWVudFwiXSwgdXBkYXRlVGltZSk7XG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFwiYmx1clwiLCB1cGRhdGVUaW1lLCB7XG4gICAgICAgICAgICBjYXB0dXJlOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYmluZChzZWxmLnRpbWVDb250YWluZXIsIFwibW91c2Vkb3duXCIsIG9uQ2xpY2sodGltZUluY3JlbWVudCkpO1xuICAgICAgICAgIGJpbmQoW3NlbGYuaG91ckVsZW1lbnQsIHNlbGYubWludXRlRWxlbWVudF0sIFtcImZvY3VzXCIsIFwiY2xpY2tcIl0sIHNlbFRleHQpO1xuICAgICAgICAgIGlmIChzZWxmLnNlY29uZEVsZW1lbnQgIT09IHVuZGVmaW5lZCkgYmluZChzZWxmLnNlY29uZEVsZW1lbnQsIFwiZm9jdXNcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuc2Vjb25kRWxlbWVudCAmJiBzZWxmLnNlY29uZEVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGJpbmQoc2VsZi5hbVBNLCBcIm1vdXNlZG93blwiLCBvbkNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgIHVwZGF0ZVRpbWUoZSk7XG4gICAgICAgICAgICAgIHRyaWdnZXJDaGFuZ2UoKTtcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24ganVtcFRvRGF0ZShqdW1wRGF0ZSkge1xuICAgICAgICB2YXIganVtcFRvID0ganVtcERhdGUgIT09IHVuZGVmaW5lZCA/IHNlbGYucGFyc2VEYXRlKGp1bXBEYXRlKSA6IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqIHx8IChzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYuY29uZmlnLm1pbkRhdGUgPiBzZWxmLm5vdyA/IHNlbGYuY29uZmlnLm1pbkRhdGUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY29uZmlnLm1heERhdGUgPCBzZWxmLm5vdyA/IHNlbGYuY29uZmlnLm1heERhdGUgOiBzZWxmLm5vdyk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoanVtcFRvICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudFllYXIgPSBqdW1wVG8uZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0ganVtcFRvLmdldE1vbnRoKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgZS5tZXNzYWdlID0gXCJJbnZhbGlkIGRhdGUgc3VwcGxpZWQ6IFwiICsganVtcFRvO1xuICAgICAgICAgIHNlbGYuY29uZmlnLmVycm9ySGFuZGxlcihlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHRpbWVJbmNyZW1lbnQoZSkge1xuICAgICAgICBpZiAofmUudGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKFwiYXJyb3dcIikpIGluY3JlbWVudE51bUlucHV0KGUsIGUudGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucyhcImFycm93VXBcIikgPyAxIDogLTEpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBpbmNyZW1lbnROdW1JbnB1dChlLCBkZWx0YSwgaW5wdXRFbGVtKSB7XG4gICAgICAgIHZhciB0YXJnZXQgPSBlICYmIGUudGFyZ2V0O1xuICAgICAgICB2YXIgaW5wdXQgPSBpbnB1dEVsZW0gfHwgdGFyZ2V0ICYmIHRhcmdldC5wYXJlbnROb2RlICYmIHRhcmdldC5wYXJlbnROb2RlLmZpcnN0Q2hpbGQ7XG4gICAgICAgIHZhciBldmVudCA9IGNyZWF0ZUV2ZW50KFwiaW5jcmVtZW50XCIpO1xuICAgICAgICBldmVudC5kZWx0YSA9IGRlbHRhO1xuICAgICAgICBpbnB1dCAmJiBpbnB1dC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGQoKSB7XG4gICAgICAgIHZhciBmcmFnbWVudCA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG4gICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLWNhbGVuZGFyXCIpO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnRhYkluZGV4ID0gLTE7XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5ub0NhbGVuZGFyKSB7XG4gICAgICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoYnVpbGRNb250aE5hdigpKTtcbiAgICAgICAgICBzZWxmLmlubmVyQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci1pbm5lckNvbnRhaW5lclwiKTtcblxuICAgICAgICAgIGlmIChzZWxmLmNvbmZpZy53ZWVrTnVtYmVycykge1xuICAgICAgICAgICAgdmFyIF9idWlsZFdlZWtzID0gYnVpbGRXZWVrcygpLFxuICAgICAgICAgICAgICAgIHdlZWtXcmFwcGVyID0gX2J1aWxkV2Vla3Mud2Vla1dyYXBwZXIsXG4gICAgICAgICAgICAgICAgd2Vla051bWJlcnMgPSBfYnVpbGRXZWVrcy53ZWVrTnVtYmVycztcblxuICAgICAgICAgICAgc2VsZi5pbm5lckNvbnRhaW5lci5hcHBlbmRDaGlsZCh3ZWVrV3JhcHBlcik7XG4gICAgICAgICAgICBzZWxmLndlZWtOdW1iZXJzID0gd2Vla051bWJlcnM7XG4gICAgICAgICAgICBzZWxmLndlZWtXcmFwcGVyID0gd2Vla1dyYXBwZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc2VsZi5yQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci1yQ29udGFpbmVyXCIpO1xuICAgICAgICAgIHNlbGYuckNvbnRhaW5lci5hcHBlbmRDaGlsZChidWlsZFdlZWtkYXlzKCkpO1xuXG4gICAgICAgICAgaWYgKCFzZWxmLmRheXNDb250YWluZXIpIHtcbiAgICAgICAgICAgIHNlbGYuZGF5c0NvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItZGF5c1wiKTtcbiAgICAgICAgICAgIHNlbGYuZGF5c0NvbnRhaW5lci50YWJJbmRleCA9IC0xO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJ1aWxkRGF5cygpO1xuICAgICAgICAgIHNlbGYuckNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWxmLmRheXNDb250YWluZXIpO1xuICAgICAgICAgIHNlbGYuaW5uZXJDb250YWluZXIuYXBwZW5kQ2hpbGQoc2VsZi5yQ29udGFpbmVyKTtcbiAgICAgICAgICBmcmFnbWVudC5hcHBlbmRDaGlsZChzZWxmLmlubmVyQ29udGFpbmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lKSB7XG4gICAgICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoYnVpbGRUaW1lKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJyYW5nZU1vZGVcIiwgc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhbmltYXRlXCIsIHNlbGYuY29uZmlnLmFuaW1hdGUgPT09IHRydWUpO1xuICAgICAgICB0b2dnbGVDbGFzcyhzZWxmLmNhbGVuZGFyQ29udGFpbmVyLCBcIm11bHRpTW9udGhcIiwgc2VsZi5jb25maWcuc2hvd01vbnRocyA+IDEpO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmFwcGVuZENoaWxkKGZyYWdtZW50KTtcbiAgICAgICAgdmFyIGN1c3RvbUFwcGVuZCA9IHNlbGYuY29uZmlnLmFwcGVuZFRvICE9PSB1bmRlZmluZWQgJiYgc2VsZi5jb25maWcuYXBwZW5kVG8ubm9kZVR5cGUgIT09IHVuZGVmaW5lZDtcblxuICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lIHx8IHNlbGYuY29uZmlnLnN0YXRpYykge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChzZWxmLmNvbmZpZy5pbmxpbmUgPyBcImlubGluZVwiIDogXCJzdGF0aWNcIik7XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lKSB7XG4gICAgICAgICAgICBpZiAoIWN1c3RvbUFwcGVuZCAmJiBzZWxmLmVsZW1lbnQucGFyZW50Tm9kZSkgc2VsZi5lbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYuY2FsZW5kYXJDb250YWluZXIsIHNlbGYuX2lucHV0Lm5leHRTaWJsaW5nKTtlbHNlIGlmIChzZWxmLmNvbmZpZy5hcHBlbmRUbyAhPT0gdW5kZWZpbmVkKSBzZWxmLmNvbmZpZy5hcHBlbmRUby5hcHBlbmRDaGlsZChzZWxmLmNhbGVuZGFyQ29udGFpbmVyKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuc3RhdGljKSB7XG4gICAgICAgICAgICB2YXIgd3JhcHBlciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd3JhcHBlclwiKTtcbiAgICAgICAgICAgIGlmIChzZWxmLmVsZW1lbnQucGFyZW50Tm9kZSkgc2VsZi5lbGVtZW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHdyYXBwZXIsIHNlbGYuZWxlbWVudCk7XG4gICAgICAgICAgICB3cmFwcGVyLmFwcGVuZENoaWxkKHNlbGYuZWxlbWVudCk7XG4gICAgICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dCkgd3JhcHBlci5hcHBlbmRDaGlsZChzZWxmLmFsdElucHV0KTtcbiAgICAgICAgICAgIHdyYXBwZXIuYXBwZW5kQ2hpbGQoc2VsZi5jYWxlbmRhckNvbnRhaW5lcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgIXNlbGYuY29uZmlnLmlubGluZSkgKHNlbGYuY29uZmlnLmFwcGVuZFRvICE9PSB1bmRlZmluZWQgPyBzZWxmLmNvbmZpZy5hcHBlbmRUbyA6IHdpbmRvdy5kb2N1bWVudC5ib2R5KS5hcHBlbmRDaGlsZChzZWxmLmNhbGVuZGFyQ29udGFpbmVyKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gY3JlYXRlRGF5KGNsYXNzTmFtZSwgZGF0ZSwgZGF5TnVtYmVyLCBpKSB7XG4gICAgICAgIHZhciBkYXRlSXNFbmFibGVkID0gaXNFbmFibGVkKGRhdGUsIHRydWUpLFxuICAgICAgICAgICAgZGF5RWxlbWVudCA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLWRheSBcIiArIGNsYXNzTmFtZSwgZGF0ZS5nZXREYXRlKCkudG9TdHJpbmcoKSk7XG4gICAgICAgIGRheUVsZW1lbnQuZGF0ZU9iaiA9IGRhdGU7XG4gICAgICAgIGRheUVsZW1lbnQuJGkgPSBpO1xuICAgICAgICBkYXlFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIiwgc2VsZi5mb3JtYXREYXRlKGRhdGUsIHNlbGYuY29uZmlnLmFyaWFEYXRlRm9ybWF0KSk7XG5cbiAgICAgICAgaWYgKGNsYXNzTmFtZS5pbmRleE9mKFwiaGlkZGVuXCIpID09PSAtMSAmJiBjb21wYXJlRGF0ZXMoZGF0ZSwgc2VsZi5ub3cpID09PSAwKSB7XG4gICAgICAgICAgc2VsZi50b2RheURhdGVFbGVtID0gZGF5RWxlbWVudDtcbiAgICAgICAgICBkYXlFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJ0b2RheVwiKTtcbiAgICAgICAgICBkYXlFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtY3VycmVudFwiLCBcImRhdGVcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGF0ZUlzRW5hYmxlZCkge1xuICAgICAgICAgIGRheUVsZW1lbnQudGFiSW5kZXggPSAtMTtcblxuICAgICAgICAgIGlmIChpc0RhdGVTZWxlY3RlZChkYXRlKSkge1xuICAgICAgICAgICAgZGF5RWxlbWVudC5jbGFzc0xpc3QuYWRkKFwic2VsZWN0ZWRcIik7XG4gICAgICAgICAgICBzZWxmLnNlbGVjdGVkRGF0ZUVsZW0gPSBkYXlFbGVtZW50O1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSB7XG4gICAgICAgICAgICAgIHRvZ2dsZUNsYXNzKGRheUVsZW1lbnQsIFwic3RhcnRSYW5nZVwiLCBzZWxmLnNlbGVjdGVkRGF0ZXNbMF0gJiYgY29tcGFyZURhdGVzKGRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdHJ1ZSkgPT09IDApO1xuICAgICAgICAgICAgICB0b2dnbGVDbGFzcyhkYXlFbGVtZW50LCBcImVuZFJhbmdlXCIsIHNlbGYuc2VsZWN0ZWREYXRlc1sxXSAmJiBjb21wYXJlRGF0ZXMoZGF0ZSwgc2VsZi5zZWxlY3RlZERhdGVzWzFdLCB0cnVlKSA9PT0gMCk7XG4gICAgICAgICAgICAgIGlmIChjbGFzc05hbWUgPT09IFwibmV4dE1vbnRoRGF5XCIpIGRheUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImluUmFuZ2VcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRheUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImRpc2FibGVkXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikge1xuICAgICAgICAgIGlmIChpc0RhdGVJblJhbmdlKGRhdGUpICYmICFpc0RhdGVTZWxlY3RlZChkYXRlKSkgZGF5RWxlbWVudC5jbGFzc0xpc3QuYWRkKFwiaW5SYW5nZVwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLndlZWtOdW1iZXJzICYmIHNlbGYuY29uZmlnLnNob3dNb250aHMgPT09IDEgJiYgY2xhc3NOYW1lICE9PSBcInByZXZNb250aERheVwiICYmIGRheU51bWJlciAlIDcgPT09IDEpIHtcbiAgICAgICAgICBzZWxmLndlZWtOdW1iZXJzLmluc2VydEFkamFjZW50SFRNTChcImJlZm9yZWVuZFwiLCBcIjxzcGFuIGNsYXNzPSdmbGF0cGlja3ItZGF5Jz5cIiArIHNlbGYuY29uZmlnLmdldFdlZWsoZGF0ZSkgKyBcIjwvc3Bhbj5cIik7XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvbkRheUNyZWF0ZVwiLCBkYXlFbGVtZW50KTtcbiAgICAgICAgcmV0dXJuIGRheUVsZW1lbnQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGZvY3VzT25EYXlFbGVtKHRhcmdldE5vZGUpIHtcbiAgICAgICAgdGFyZ2V0Tm9kZS5mb2N1cygpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSBvbk1vdXNlT3Zlcih0YXJnZXROb2RlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZ2V0Rmlyc3RBdmFpbGFibGVEYXkoZGVsdGEpIHtcbiAgICAgICAgdmFyIHN0YXJ0TW9udGggPSBkZWx0YSA+IDAgPyAwIDogc2VsZi5jb25maWcuc2hvd01vbnRocyAtIDE7XG4gICAgICAgIHZhciBlbmRNb250aCA9IGRlbHRhID4gMCA/IHNlbGYuY29uZmlnLnNob3dNb250aHMgOiAtMTtcblxuICAgICAgICBmb3IgKHZhciBtID0gc3RhcnRNb250aDsgbSAhPSBlbmRNb250aDsgbSArPSBkZWx0YSkge1xuICAgICAgICAgIHZhciBtb250aCA9IHNlbGYuZGF5c0NvbnRhaW5lci5jaGlsZHJlblttXTtcbiAgICAgICAgICB2YXIgc3RhcnRJbmRleCA9IGRlbHRhID4gMCA/IDAgOiBtb250aC5jaGlsZHJlbi5sZW5ndGggLSAxO1xuICAgICAgICAgIHZhciBlbmRJbmRleCA9IGRlbHRhID4gMCA/IG1vbnRoLmNoaWxkcmVuLmxlbmd0aCA6IC0xO1xuXG4gICAgICAgICAgZm9yICh2YXIgaSA9IHN0YXJ0SW5kZXg7IGkgIT0gZW5kSW5kZXg7IGkgKz0gZGVsdGEpIHtcbiAgICAgICAgICAgIHZhciBjID0gbW9udGguY2hpbGRyZW5baV07XG4gICAgICAgICAgICBpZiAoYy5jbGFzc05hbWUuaW5kZXhPZihcImhpZGRlblwiKSA9PT0gLTEgJiYgaXNFbmFibGVkKGMuZGF0ZU9iaikpIHJldHVybiBjO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGdldE5leHRBdmFpbGFibGVEYXkoY3VycmVudCwgZGVsdGEpIHtcbiAgICAgICAgdmFyIGdpdmVuTW9udGggPSBjdXJyZW50LmNsYXNzTmFtZS5pbmRleE9mKFwiTW9udGhcIikgPT09IC0xID8gY3VycmVudC5kYXRlT2JqLmdldE1vbnRoKCkgOiBzZWxmLmN1cnJlbnRNb250aDtcbiAgICAgICAgdmFyIGVuZE1vbnRoID0gZGVsdGEgPiAwID8gc2VsZi5jb25maWcuc2hvd01vbnRocyA6IC0xO1xuICAgICAgICB2YXIgbG9vcERlbHRhID0gZGVsdGEgPiAwID8gMSA6IC0xO1xuXG4gICAgICAgIGZvciAodmFyIG0gPSBnaXZlbk1vbnRoIC0gc2VsZi5jdXJyZW50TW9udGg7IG0gIT0gZW5kTW9udGg7IG0gKz0gbG9vcERlbHRhKSB7XG4gICAgICAgICAgdmFyIG1vbnRoID0gc2VsZi5kYXlzQ29udGFpbmVyLmNoaWxkcmVuW21dO1xuICAgICAgICAgIHZhciBzdGFydEluZGV4ID0gZ2l2ZW5Nb250aCAtIHNlbGYuY3VycmVudE1vbnRoID09PSBtID8gY3VycmVudC4kaSArIGRlbHRhIDogZGVsdGEgPCAwID8gbW9udGguY2hpbGRyZW4ubGVuZ3RoIC0gMSA6IDA7XG4gICAgICAgICAgdmFyIG51bU1vbnRoRGF5cyA9IG1vbnRoLmNoaWxkcmVuLmxlbmd0aDtcblxuICAgICAgICAgIGZvciAodmFyIGkgPSBzdGFydEluZGV4OyBpID49IDAgJiYgaSA8IG51bU1vbnRoRGF5cyAmJiBpICE9IChkZWx0YSA+IDAgPyBudW1Nb250aERheXMgOiAtMSk7IGkgKz0gbG9vcERlbHRhKSB7XG4gICAgICAgICAgICB2YXIgYyA9IG1vbnRoLmNoaWxkcmVuW2ldO1xuICAgICAgICAgICAgaWYgKGMuY2xhc3NOYW1lLmluZGV4T2YoXCJoaWRkZW5cIikgPT09IC0xICYmIGlzRW5hYmxlZChjLmRhdGVPYmopICYmIE1hdGguYWJzKGN1cnJlbnQuJGkgLSBpKSA+PSBNYXRoLmFicyhkZWx0YSkpIHJldHVybiBmb2N1c09uRGF5RWxlbShjKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmNoYW5nZU1vbnRoKGxvb3BEZWx0YSk7XG4gICAgICAgIGZvY3VzT25EYXkoZ2V0Rmlyc3RBdmFpbGFibGVEYXkobG9vcERlbHRhKSwgMCk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGZvY3VzT25EYXkoY3VycmVudCwgb2Zmc2V0KSB7XG4gICAgICAgIHZhciBkYXlGb2N1c2VkID0gaXNJblZpZXcoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XG4gICAgICAgIHZhciBzdGFydEVsZW0gPSBjdXJyZW50ICE9PSB1bmRlZmluZWQgPyBjdXJyZW50IDogZGF5Rm9jdXNlZCA/IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgOiBzZWxmLnNlbGVjdGVkRGF0ZUVsZW0gIT09IHVuZGVmaW5lZCAmJiBpc0luVmlldyhzZWxmLnNlbGVjdGVkRGF0ZUVsZW0pID8gc2VsZi5zZWxlY3RlZERhdGVFbGVtIDogc2VsZi50b2RheURhdGVFbGVtICE9PSB1bmRlZmluZWQgJiYgaXNJblZpZXcoc2VsZi50b2RheURhdGVFbGVtKSA/IHNlbGYudG9kYXlEYXRlRWxlbSA6IGdldEZpcnN0QXZhaWxhYmxlRGF5KG9mZnNldCA+IDAgPyAxIDogLTEpO1xuICAgICAgICBpZiAoc3RhcnRFbGVtID09PSB1bmRlZmluZWQpIHJldHVybiBzZWxmLl9pbnB1dC5mb2N1cygpO1xuICAgICAgICBpZiAoIWRheUZvY3VzZWQpIHJldHVybiBmb2N1c09uRGF5RWxlbShzdGFydEVsZW0pO1xuICAgICAgICBnZXROZXh0QXZhaWxhYmxlRGF5KHN0YXJ0RWxlbSwgb2Zmc2V0KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aERheXMoeWVhciwgbW9udGgpIHtcbiAgICAgICAgdmFyIGZpcnN0T2ZNb250aCA9IChuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSkuZ2V0RGF5KCkgLSBzZWxmLmwxMG4uZmlyc3REYXlPZldlZWsgKyA3KSAlIDc7XG4gICAgICAgIHZhciBwcmV2TW9udGhEYXlzID0gc2VsZi51dGlscy5nZXREYXlzSW5Nb250aCgobW9udGggLSAxICsgMTIpICUgMTIpO1xuICAgICAgICB2YXIgZGF5c0luTW9udGggPSBzZWxmLnV0aWxzLmdldERheXNJbk1vbnRoKG1vbnRoKSxcbiAgICAgICAgICAgIGRheXMgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLFxuICAgICAgICAgICAgaXNNdWx0aU1vbnRoID0gc2VsZi5jb25maWcuc2hvd01vbnRocyA+IDEsXG4gICAgICAgICAgICBwcmV2TW9udGhEYXlDbGFzcyA9IGlzTXVsdGlNb250aCA/IFwicHJldk1vbnRoRGF5IGhpZGRlblwiIDogXCJwcmV2TW9udGhEYXlcIixcbiAgICAgICAgICAgIG5leHRNb250aERheUNsYXNzID0gaXNNdWx0aU1vbnRoID8gXCJuZXh0TW9udGhEYXkgaGlkZGVuXCIgOiBcIm5leHRNb250aERheVwiO1xuICAgICAgICB2YXIgZGF5TnVtYmVyID0gcHJldk1vbnRoRGF5cyArIDEgLSBmaXJzdE9mTW9udGgsXG4gICAgICAgICAgICBkYXlJbmRleCA9IDA7XG5cbiAgICAgICAgZm9yICg7IGRheU51bWJlciA8PSBwcmV2TW9udGhEYXlzOyBkYXlOdW1iZXIrKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KHByZXZNb250aERheUNsYXNzLCBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheU51bWJlciksIGRheU51bWJlciwgZGF5SW5kZXgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoZGF5TnVtYmVyID0gMTsgZGF5TnVtYmVyIDw9IGRheXNJbk1vbnRoOyBkYXlOdW1iZXIrKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KFwiXCIsIG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXlOdW1iZXIpLCBkYXlOdW1iZXIsIGRheUluZGV4KSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKHZhciBkYXlOdW0gPSBkYXlzSW5Nb250aCArIDE7IGRheU51bSA8PSA0MiAtIGZpcnN0T2ZNb250aCAmJiAoc2VsZi5jb25maWcuc2hvd01vbnRocyA9PT0gMSB8fCBkYXlJbmRleCAlIDcgIT09IDApOyBkYXlOdW0rKywgZGF5SW5kZXgrKykge1xuICAgICAgICAgIGRheXMuYXBwZW5kQ2hpbGQoY3JlYXRlRGF5KG5leHRNb250aERheUNsYXNzLCBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIGRheU51bSAlIGRheXNJbk1vbnRoKSwgZGF5TnVtLCBkYXlJbmRleCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGRheUNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJkYXlDb250YWluZXJcIik7XG4gICAgICAgIGRheUNvbnRhaW5lci5hcHBlbmRDaGlsZChkYXlzKTtcbiAgICAgICAgcmV0dXJuIGRheUNvbnRhaW5lcjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGREYXlzKCkge1xuICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjbGVhck5vZGUoc2VsZi5kYXlzQ29udGFpbmVyKTtcbiAgICAgICAgaWYgKHNlbGYud2Vla051bWJlcnMpIGNsZWFyTm9kZShzZWxmLndlZWtOdW1iZXJzKTtcbiAgICAgICAgdmFyIGZyYWcgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG5cbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzZWxmLmNvbmZpZy5zaG93TW9udGhzOyBpKyspIHtcbiAgICAgICAgICB2YXIgZCA9IG5ldyBEYXRlKHNlbGYuY3VycmVudFllYXIsIHNlbGYuY3VycmVudE1vbnRoLCAxKTtcbiAgICAgICAgICBkLnNldE1vbnRoKHNlbGYuY3VycmVudE1vbnRoICsgaSk7XG4gICAgICAgICAgZnJhZy5hcHBlbmRDaGlsZChidWlsZE1vbnRoRGF5cyhkLmdldEZ1bGxZZWFyKCksIGQuZ2V0TW9udGgoKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZi5kYXlzQ29udGFpbmVyLmFwcGVuZENoaWxkKGZyYWcpO1xuICAgICAgICBzZWxmLmRheXMgPSBzZWxmLmRheXNDb250YWluZXIuZmlyc3RDaGlsZDtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aCgpIHtcbiAgICAgICAgdmFyIGNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItbW9udGhcIik7XG4gICAgICAgIHZhciBtb250aE5hdkZyYWdtZW50ID0gd2luZG93LmRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcbiAgICAgICAgdmFyIG1vbnRoRWxlbWVudCA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiY3VyLW1vbnRoXCIpO1xuICAgICAgICBtb250aEVsZW1lbnQudGl0bGUgPSBzZWxmLmwxMG4uc2Nyb2xsVGl0bGU7XG4gICAgICAgIHZhciB5ZWFySW5wdXQgPSBjcmVhdGVOdW1iZXJJbnB1dChcImN1ci15ZWFyXCIsIHtcbiAgICAgICAgICB0YWJpbmRleDogXCItMVwiXG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgeWVhckVsZW1lbnQgPSB5ZWFySW5wdXQuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgeWVhckVsZW1lbnQudGl0bGUgPSBzZWxmLmwxMG4uc2Nyb2xsVGl0bGU7XG4gICAgICAgIHllYXJFbGVtZW50LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIiwgc2VsZi5sMTBuLnllYXJBcmlhTGFiZWwpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSkgeWVhckVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIiwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkpO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhEYXRlKSB7XG4gICAgICAgICAgeWVhckVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIiwgc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkpO1xuICAgICAgICAgIHllYXJFbGVtZW50LmRpc2FibGVkID0gISFzZWxmLmNvbmZpZy5taW5EYXRlICYmIHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0RnVsbFllYXIoKSA9PT0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGN1cnJlbnRNb250aCA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItY3VycmVudC1tb250aFwiKTtcbiAgICAgICAgY3VycmVudE1vbnRoLmFwcGVuZENoaWxkKG1vbnRoRWxlbWVudCk7XG4gICAgICAgIGN1cnJlbnRNb250aC5hcHBlbmRDaGlsZCh5ZWFySW5wdXQpO1xuICAgICAgICBtb250aE5hdkZyYWdtZW50LmFwcGVuZENoaWxkKGN1cnJlbnRNb250aCk7XG4gICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChtb250aE5hdkZyYWdtZW50KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb250YWluZXI6IGNvbnRhaW5lcixcbiAgICAgICAgICB5ZWFyRWxlbWVudDogeWVhckVsZW1lbnQsXG4gICAgICAgICAgbW9udGhFbGVtZW50OiBtb250aEVsZW1lbnRcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aHMoKSB7XG4gICAgICAgIGNsZWFyTm9kZShzZWxmLm1vbnRoTmF2KTtcbiAgICAgICAgc2VsZi5tb250aE5hdi5hcHBlbmRDaGlsZChzZWxmLnByZXZNb250aE5hdik7XG5cbiAgICAgICAgZm9yICh2YXIgbSA9IHNlbGYuY29uZmlnLnNob3dNb250aHM7IG0tLTspIHtcbiAgICAgICAgICB2YXIgbW9udGggPSBidWlsZE1vbnRoKCk7XG4gICAgICAgICAgc2VsZi55ZWFyRWxlbWVudHMucHVzaChtb250aC55ZWFyRWxlbWVudCk7XG4gICAgICAgICAgc2VsZi5tb250aEVsZW1lbnRzLnB1c2gobW9udGgubW9udGhFbGVtZW50KTtcbiAgICAgICAgICBzZWxmLm1vbnRoTmF2LmFwcGVuZENoaWxkKG1vbnRoLmNvbnRhaW5lcik7XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLm1vbnRoTmF2LmFwcGVuZENoaWxkKHNlbGYubmV4dE1vbnRoTmF2KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRNb250aE5hdigpIHtcbiAgICAgICAgc2VsZi5tb250aE5hdiA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3ItbW9udGhzXCIpO1xuICAgICAgICBzZWxmLnllYXJFbGVtZW50cyA9IFtdO1xuICAgICAgICBzZWxmLm1vbnRoRWxlbWVudHMgPSBbXTtcbiAgICAgICAgc2VsZi5wcmV2TW9udGhOYXYgPSBjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci1wcmV2LW1vbnRoXCIpO1xuICAgICAgICBzZWxmLnByZXZNb250aE5hdi5pbm5lckhUTUwgPSBzZWxmLmNvbmZpZy5wcmV2QXJyb3c7XG4gICAgICAgIHNlbGYubmV4dE1vbnRoTmF2ID0gY3JlYXRlRWxlbWVudChcInNwYW5cIiwgXCJmbGF0cGlja3ItbmV4dC1tb250aFwiKTtcbiAgICAgICAgc2VsZi5uZXh0TW9udGhOYXYuaW5uZXJIVE1MID0gc2VsZi5jb25maWcubmV4dEFycm93O1xuICAgICAgICBidWlsZE1vbnRocygpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZiwgXCJfaGlkZVByZXZNb250aEFycm93XCIsIHtcbiAgICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLl9faGlkZVByZXZNb250aEFycm93O1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBmdW5jdGlvbiBzZXQoYm9vbCkge1xuICAgICAgICAgICAgaWYgKHNlbGYuX19oaWRlUHJldk1vbnRoQXJyb3cgIT09IGJvb2wpIHtcbiAgICAgICAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5wcmV2TW9udGhOYXYsIFwiZGlzYWJsZWRcIiwgYm9vbCk7XG4gICAgICAgICAgICAgIHNlbGYuX19oaWRlUHJldk1vbnRoQXJyb3cgPSBib29sO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLCBcIl9oaWRlTmV4dE1vbnRoQXJyb3dcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuX19oaWRlTmV4dE1vbnRoQXJyb3c7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IGZ1bmN0aW9uIHNldChib29sKSB7XG4gICAgICAgICAgICBpZiAoc2VsZi5fX2hpZGVOZXh0TW9udGhBcnJvdyAhPT0gYm9vbCkge1xuICAgICAgICAgICAgICB0b2dnbGVDbGFzcyhzZWxmLm5leHRNb250aE5hdiwgXCJkaXNhYmxlZFwiLCBib29sKTtcbiAgICAgICAgICAgICAgc2VsZi5fX2hpZGVOZXh0TW9udGhBcnJvdyA9IGJvb2w7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgc2VsZi5jdXJyZW50WWVhckVsZW1lbnQgPSBzZWxmLnllYXJFbGVtZW50c1swXTtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgICByZXR1cm4gc2VsZi5tb250aE5hdjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRUaW1lKCkge1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJoYXNUaW1lXCIpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubm9DYWxlbmRhcikgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKFwibm9DYWxlbmRhclwiKTtcbiAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyID0gY3JlYXRlRWxlbWVudChcImRpdlwiLCBcImZsYXRwaWNrci10aW1lXCIpO1xuICAgICAgICBzZWxmLnRpbWVDb250YWluZXIudGFiSW5kZXggPSAtMTtcbiAgICAgICAgdmFyIHNlcGFyYXRvciA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLXRpbWUtc2VwYXJhdG9yXCIsIFwiOlwiKTtcbiAgICAgICAgdmFyIGhvdXJJbnB1dCA9IGNyZWF0ZU51bWJlcklucHV0KFwiZmxhdHBpY2tyLWhvdXJcIik7XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQgPSBob3VySW5wdXQuY2hpbGROb2Rlc1swXTtcbiAgICAgICAgdmFyIG1pbnV0ZUlucHV0ID0gY3JlYXRlTnVtYmVySW5wdXQoXCJmbGF0cGlja3ItbWludXRlXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQgPSBtaW51dGVJbnB1dC5jaGlsZE5vZGVzWzBdO1xuICAgICAgICBzZWxmLmhvdXJFbGVtZW50LnRhYkluZGV4ID0gc2VsZi5taW51dGVFbGVtZW50LnRhYkluZGV4ID0gLTE7XG4gICAgICAgIHNlbGYuaG91ckVsZW1lbnQudmFsdWUgPSBwYWQoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPyBzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iai5nZXRIb3VycygpIDogc2VsZi5jb25maWcudGltZV8yNGhyID8gc2VsZi5jb25maWcuZGVmYXVsdEhvdXIgOiBtaWxpdGFyeTJhbXBtKHNlbGYuY29uZmlnLmRlZmF1bHRIb3VyKSk7XG4gICAgICAgIHNlbGYubWludXRlRWxlbWVudC52YWx1ZSA9IHBhZChzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLmdldE1pbnV0ZXMoKSA6IHNlbGYuY29uZmlnLmRlZmF1bHRNaW51dGUpO1xuICAgICAgICBzZWxmLmhvdXJFbGVtZW50LnNldEF0dHJpYnV0ZShcImRhdGEtc3RlcFwiLCBzZWxmLmNvbmZpZy5ob3VySW5jcmVtZW50LnRvU3RyaW5nKCkpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIsIHNlbGYuY29uZmlnLm1pbnV0ZUluY3JlbWVudC50b1N0cmluZygpKTtcbiAgICAgICAgc2VsZi5ob3VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1pblwiLCBzZWxmLmNvbmZpZy50aW1lXzI0aHIgPyBcIjBcIiA6IFwiMVwiKTtcbiAgICAgICAgc2VsZi5ob3VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1heFwiLCBzZWxmLmNvbmZpZy50aW1lXzI0aHIgPyBcIjIzXCIgOiBcIjEyXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIiwgXCIwXCIpO1xuICAgICAgICBzZWxmLm1pbnV0ZUVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIiwgXCI1OVwiKTtcbiAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKGhvdXJJbnB1dCk7XG4gICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZXBhcmF0b3IpO1xuICAgICAgICBzZWxmLnRpbWVDb250YWluZXIuYXBwZW5kQ2hpbGQobWludXRlSW5wdXQpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcudGltZV8yNGhyKSBzZWxmLnRpbWVDb250YWluZXIuY2xhc3NMaXN0LmFkZChcInRpbWUyNGhyXCIpO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVTZWNvbmRzKSB7XG4gICAgICAgICAgc2VsZi50aW1lQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJoYXNTZWNvbmRzXCIpO1xuICAgICAgICAgIHZhciBzZWNvbmRJbnB1dCA9IGNyZWF0ZU51bWJlcklucHV0KFwiZmxhdHBpY2tyLXNlY29uZFwiKTtcbiAgICAgICAgICBzZWxmLnNlY29uZEVsZW1lbnQgPSBzZWNvbmRJbnB1dC5jaGlsZE5vZGVzWzBdO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC52YWx1ZSA9IHBhZChzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA/IHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqLmdldFNlY29uZHMoKSA6IHNlbGYuY29uZmlnLmRlZmF1bHRTZWNvbmRzKTtcbiAgICAgICAgICBzZWxmLnNlY29uZEVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIsIHNlbGYubWludXRlRWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJkYXRhLXN0ZXBcIikpO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1pblwiLCBzZWxmLm1pbnV0ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiZGF0YS1taW5cIikpO1xuICAgICAgICAgIHNlbGYuc2Vjb25kRWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkYXRhLW1heFwiLCBzZWxmLm1pbnV0ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIikpO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci10aW1lLXNlcGFyYXRvclwiLCBcIjpcIikpO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWNvbmRJbnB1dCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNlbGYuY29uZmlnLnRpbWVfMjRocikge1xuICAgICAgICAgIHNlbGYuYW1QTSA9IGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIFwiZmxhdHBpY2tyLWFtLXBtXCIsIHNlbGYubDEwbi5hbVBNW2ludCgoc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPyBzZWxmLmhvdXJFbGVtZW50LnZhbHVlIDogc2VsZi5jb25maWcuZGVmYXVsdEhvdXIpID4gMTEpXSk7XG4gICAgICAgICAgc2VsZi5hbVBNLnRpdGxlID0gc2VsZi5sMTBuLnRvZ2dsZVRpdGxlO1xuICAgICAgICAgIHNlbGYuYW1QTS50YWJJbmRleCA9IC0xO1xuICAgICAgICAgIHNlbGYudGltZUNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWxmLmFtUE0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHNlbGYudGltZUNvbnRhaW5lcjtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gYnVpbGRXZWVrZGF5cygpIHtcbiAgICAgICAgaWYgKCFzZWxmLndlZWtkYXlDb250YWluZXIpIHNlbGYud2Vla2RheUNvbnRhaW5lciA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd2Vla2RheXNcIik7ZWxzZSBjbGVhck5vZGUoc2VsZi53ZWVrZGF5Q29udGFpbmVyKTtcblxuICAgICAgICBmb3IgKHZhciBpID0gc2VsZi5jb25maWcuc2hvd01vbnRoczsgaS0tOykge1xuICAgICAgICAgIHZhciBjb250YWluZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXJcIik7XG4gICAgICAgICAgc2VsZi53ZWVrZGF5Q29udGFpbmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVXZWVrZGF5cygpO1xuICAgICAgICByZXR1cm4gc2VsZi53ZWVrZGF5Q29udGFpbmVyO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB1cGRhdGVXZWVrZGF5cygpIHtcbiAgICAgICAgdmFyIGZpcnN0RGF5T2ZXZWVrID0gc2VsZi5sMTBuLmZpcnN0RGF5T2ZXZWVrO1xuICAgICAgICB2YXIgd2Vla2RheXMgPSBzZWxmLmwxMG4ud2Vla2RheXMuc2hvcnRoYW5kLmNvbmNhdCgpO1xuXG4gICAgICAgIGlmIChmaXJzdERheU9mV2VlayA+IDAgJiYgZmlyc3REYXlPZldlZWsgPCB3ZWVrZGF5cy5sZW5ndGgpIHtcbiAgICAgICAgICB3ZWVrZGF5cyA9IHdlZWtkYXlzLnNwbGljZShmaXJzdERheU9mV2Vlaywgd2Vla2RheXMubGVuZ3RoKS5jb25jYXQod2Vla2RheXMuc3BsaWNlKDAsIGZpcnN0RGF5T2ZXZWVrKSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKHZhciBpID0gc2VsZi5jb25maWcuc2hvd01vbnRoczsgaS0tOykge1xuICAgICAgICAgIHNlbGYud2Vla2RheUNvbnRhaW5lci5jaGlsZHJlbltpXS5pbm5lckhUTUwgPSBcIlxcbiAgICAgIDxzcGFuIGNsYXNzPWZsYXRwaWNrci13ZWVrZGF5PlxcbiAgICAgICAgXCIgKyB3ZWVrZGF5cy5qb2luKFwiPC9zcGFuPjxzcGFuIGNsYXNzPWZsYXRwaWNrci13ZWVrZGF5PlwiKSArIFwiXFxuICAgICAgPC9zcGFuPlxcbiAgICAgIFwiO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGJ1aWxkV2Vla3MoKSB7XG4gICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChcImhhc1dlZWtzXCIpO1xuICAgICAgICB2YXIgd2Vla1dyYXBwZXIgPSBjcmVhdGVFbGVtZW50KFwiZGl2XCIsIFwiZmxhdHBpY2tyLXdlZWt3cmFwcGVyXCIpO1xuICAgICAgICB3ZWVrV3JhcHBlci5hcHBlbmRDaGlsZChjcmVhdGVFbGVtZW50KFwic3BhblwiLCBcImZsYXRwaWNrci13ZWVrZGF5XCIsIHNlbGYubDEwbi53ZWVrQWJicmV2aWF0aW9uKSk7XG4gICAgICAgIHZhciB3ZWVrTnVtYmVycyA9IGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgXCJmbGF0cGlja3Itd2Vla3NcIik7XG4gICAgICAgIHdlZWtXcmFwcGVyLmFwcGVuZENoaWxkKHdlZWtOdW1iZXJzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB3ZWVrV3JhcHBlcjogd2Vla1dyYXBwZXIsXG4gICAgICAgICAgd2Vla051bWJlcnM6IHdlZWtOdW1iZXJzXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNoYW5nZU1vbnRoKHZhbHVlLCBpc19vZmZzZXQpIHtcbiAgICAgICAgaWYgKGlzX29mZnNldCA9PT0gdm9pZCAwKSB7XG4gICAgICAgICAgaXNfb2Zmc2V0ID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBkZWx0YSA9IGlzX29mZnNldCA/IHZhbHVlIDogdmFsdWUgLSBzZWxmLmN1cnJlbnRNb250aDtcbiAgICAgICAgaWYgKGRlbHRhIDwgMCAmJiBzZWxmLl9oaWRlUHJldk1vbnRoQXJyb3cgPT09IHRydWUgfHwgZGVsdGEgPiAwICYmIHNlbGYuX2hpZGVOZXh0TW9udGhBcnJvdyA9PT0gdHJ1ZSkgcmV0dXJuO1xuICAgICAgICBzZWxmLmN1cnJlbnRNb250aCArPSBkZWx0YTtcblxuICAgICAgICBpZiAoc2VsZi5jdXJyZW50TW9udGggPCAwIHx8IHNlbGYuY3VycmVudE1vbnRoID4gMTEpIHtcbiAgICAgICAgICBzZWxmLmN1cnJlbnRZZWFyICs9IHNlbGYuY3VycmVudE1vbnRoID4gMTEgPyAxIDogLTE7XG4gICAgICAgICAgc2VsZi5jdXJyZW50TW9udGggPSAoc2VsZi5jdXJyZW50TW9udGggKyAxMikgJSAxMjtcbiAgICAgICAgICB0cmlnZ2VyRXZlbnQoXCJvblllYXJDaGFuZ2VcIik7XG4gICAgICAgIH1cblxuICAgICAgICBidWlsZERheXMoKTtcbiAgICAgICAgdHJpZ2dlckV2ZW50KFwib25Nb250aENoYW5nZVwiKTtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBjbGVhcih0cmlnZ2VyQ2hhbmdlRXZlbnQpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2VFdmVudCA9PT0gdm9pZCAwKSB7XG4gICAgICAgICAgdHJpZ2dlckNoYW5nZUV2ZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuaW5wdXQudmFsdWUgPSBcIlwiO1xuICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dCAhPT0gdW5kZWZpbmVkKSBzZWxmLmFsdElucHV0LnZhbHVlID0gXCJcIjtcbiAgICAgICAgaWYgKHNlbGYubW9iaWxlSW5wdXQgIT09IHVuZGVmaW5lZCkgc2VsZi5tb2JpbGVJbnB1dC52YWx1ZSA9IFwiXCI7XG4gICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IFtdO1xuICAgICAgICBzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiA9IHVuZGVmaW5lZDtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUgPT09IHRydWUpIHtcbiAgICAgICAgICBzZXREZWZhdWx0SG91cnMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgIGlmICh0cmlnZ2VyQ2hhbmdlRXZlbnQpIHRyaWdnZXJFdmVudChcIm9uQ2hhbmdlXCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBjbG9zZSgpIHtcbiAgICAgICAgc2VsZi5pc09wZW4gPSBmYWxzZTtcblxuICAgICAgICBpZiAoIXNlbGYuaXNNb2JpbGUpIHtcbiAgICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoXCJvcGVuXCIpO1xuXG4gICAgICAgICAgc2VsZi5faW5wdXQuY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZVwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2xvc2VcIik7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGRlc3Ryb3koKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZyAhPT0gdW5kZWZpbmVkKSB0cmlnZ2VyRXZlbnQoXCJvbkRlc3Ryb3lcIik7XG5cbiAgICAgICAgZm9yICh2YXIgaSA9IHNlbGYuX2hhbmRsZXJzLmxlbmd0aDsgaS0tOykge1xuICAgICAgICAgIHZhciBoID0gc2VsZi5faGFuZGxlcnNbaV07XG4gICAgICAgICAgaC5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoaC5ldmVudCwgaC5oYW5kbGVyLCBoLm9wdGlvbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZi5faGFuZGxlcnMgPSBbXTtcblxuICAgICAgICBpZiAoc2VsZi5tb2JpbGVJbnB1dCkge1xuICAgICAgICAgIGlmIChzZWxmLm1vYmlsZUlucHV0LnBhcmVudE5vZGUpIHNlbGYubW9iaWxlSW5wdXQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChzZWxmLm1vYmlsZUlucHV0KTtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0ID0gdW5kZWZpbmVkO1xuICAgICAgICB9IGVsc2UgaWYgKHNlbGYuY2FsZW5kYXJDb250YWluZXIgJiYgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5wYXJlbnROb2RlKSBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoc2VsZi5jYWxlbmRhckNvbnRhaW5lcik7XG5cbiAgICAgICAgaWYgKHNlbGYuYWx0SW5wdXQpIHtcbiAgICAgICAgICBzZWxmLmlucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgICBpZiAoc2VsZi5hbHRJbnB1dC5wYXJlbnROb2RlKSBzZWxmLmFsdElucHV0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoc2VsZi5hbHRJbnB1dCk7XG4gICAgICAgICAgZGVsZXRlIHNlbGYuYWx0SW5wdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5pbnB1dCkge1xuICAgICAgICAgIHNlbGYuaW5wdXQudHlwZSA9IHNlbGYuaW5wdXQuX3R5cGU7XG4gICAgICAgICAgc2VsZi5pbnB1dC5jbGFzc0xpc3QucmVtb3ZlKFwiZmxhdHBpY2tyLWlucHV0XCIpO1xuICAgICAgICAgIHNlbGYuaW5wdXQucmVtb3ZlQXR0cmlidXRlKFwicmVhZG9ubHlcIik7XG4gICAgICAgICAgc2VsZi5pbnB1dC52YWx1ZSA9IFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICBbXCJfc2hvd1RpbWVJbnB1dFwiLCBcImxhdGVzdFNlbGVjdGVkRGF0ZU9ialwiLCBcIl9oaWRlTmV4dE1vbnRoQXJyb3dcIiwgXCJfaGlkZVByZXZNb250aEFycm93XCIsIFwiX19oaWRlTmV4dE1vbnRoQXJyb3dcIiwgXCJfX2hpZGVQcmV2TW9udGhBcnJvd1wiLCBcImlzTW9iaWxlXCIsIFwiaXNPcGVuXCIsIFwic2VsZWN0ZWREYXRlRWxlbVwiLCBcIm1pbkRhdGVIYXNUaW1lXCIsIFwibWF4RGF0ZUhhc1RpbWVcIiwgXCJkYXlzXCIsIFwiZGF5c0NvbnRhaW5lclwiLCBcIl9pbnB1dFwiLCBcIl9wb3NpdGlvbkVsZW1lbnRcIiwgXCJpbm5lckNvbnRhaW5lclwiLCBcInJDb250YWluZXJcIiwgXCJtb250aE5hdlwiLCBcInRvZGF5RGF0ZUVsZW1cIiwgXCJjYWxlbmRhckNvbnRhaW5lclwiLCBcIndlZWtkYXlDb250YWluZXJcIiwgXCJwcmV2TW9udGhOYXZcIiwgXCJuZXh0TW9udGhOYXZcIiwgXCJjdXJyZW50TW9udGhFbGVtZW50XCIsIFwiY3VycmVudFllYXJFbGVtZW50XCIsIFwibmF2aWdhdGlvbkN1cnJlbnRNb250aFwiLCBcInNlbGVjdGVkRGF0ZUVsZW1cIiwgXCJjb25maWdcIl0uZm9yRWFjaChmdW5jdGlvbiAoaykge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBkZWxldGUgc2VsZltrXTtcbiAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gaXNDYWxlbmRhckVsZW0oZWxlbSkge1xuICAgICAgICBpZiAoc2VsZi5jb25maWcuYXBwZW5kVG8gJiYgc2VsZi5jb25maWcuYXBwZW5kVG8uY29udGFpbnMoZWxlbSkpIHJldHVybiB0cnVlO1xuICAgICAgICByZXR1cm4gc2VsZi5jYWxlbmRhckNvbnRhaW5lci5jb250YWlucyhlbGVtKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZG9jdW1lbnRDbGljayhlKSB7XG4gICAgICAgIGlmIChzZWxmLmlzT3BlbiAmJiAhc2VsZi5jb25maWcuaW5saW5lKSB7XG4gICAgICAgICAgdmFyIGlzQ2FsZW5kYXJFbGVtZW50ID0gaXNDYWxlbmRhckVsZW0oZS50YXJnZXQpO1xuICAgICAgICAgIHZhciBpc0lucHV0ID0gZS50YXJnZXQgPT09IHNlbGYuaW5wdXQgfHwgZS50YXJnZXQgPT09IHNlbGYuYWx0SW5wdXQgfHwgc2VsZi5lbGVtZW50LmNvbnRhaW5zKGUudGFyZ2V0KSB8fCBlLnBhdGggJiYgZS5wYXRoLmluZGV4T2YgJiYgKH5lLnBhdGguaW5kZXhPZihzZWxmLmlucHV0KSB8fCB+ZS5wYXRoLmluZGV4T2Yoc2VsZi5hbHRJbnB1dCkpO1xuICAgICAgICAgIHZhciBsb3N0Rm9jdXMgPSBlLnR5cGUgPT09IFwiYmx1clwiID8gaXNJbnB1dCAmJiBlLnJlbGF0ZWRUYXJnZXQgJiYgIWlzQ2FsZW5kYXJFbGVtKGUucmVsYXRlZFRhcmdldCkgOiAhaXNJbnB1dCAmJiAhaXNDYWxlbmRhckVsZW1lbnQ7XG4gICAgICAgICAgdmFyIGlzSWdub3JlZCA9ICFzZWxmLmNvbmZpZy5pZ25vcmVkRm9jdXNFbGVtZW50cy5zb21lKGZ1bmN0aW9uIChlbGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gZWxlbS5jb250YWlucyhlLnRhcmdldCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAobG9zdEZvY3VzICYmIGlzSWdub3JlZCkge1xuICAgICAgICAgICAgc2VsZi5jbG9zZSgpO1xuXG4gICAgICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiICYmIHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgc2VsZi5jbGVhcihmYWxzZSk7XG4gICAgICAgICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNoYW5nZVllYXIobmV3WWVhcikge1xuICAgICAgICBpZiAoIW5ld1llYXIgfHwgc2VsZi5jb25maWcubWluRGF0ZSAmJiBuZXdZZWFyIDwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpIHx8IHNlbGYuY29uZmlnLm1heERhdGUgJiYgbmV3WWVhciA+IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSkgcmV0dXJuO1xuICAgICAgICB2YXIgbmV3WWVhck51bSA9IG5ld1llYXIsXG4gICAgICAgICAgICBpc05ld1llYXIgPSBzZWxmLmN1cnJlbnRZZWFyICE9PSBuZXdZZWFyTnVtO1xuICAgICAgICBzZWxmLmN1cnJlbnRZZWFyID0gbmV3WWVhck51bSB8fCBzZWxmLmN1cnJlbnRZZWFyO1xuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY3VycmVudFllYXIgPT09IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSkge1xuICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0gTWF0aC5taW4oc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNb250aCgpLCBzZWxmLmN1cnJlbnRNb250aCk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2VsZi5jb25maWcubWluRGF0ZSAmJiBzZWxmLmN1cnJlbnRZZWFyID09PSBzZWxmLmNvbmZpZy5taW5EYXRlLmdldEZ1bGxZZWFyKCkpIHtcbiAgICAgICAgICBzZWxmLmN1cnJlbnRNb250aCA9IE1hdGgubWF4KHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0TW9udGgoKSwgc2VsZi5jdXJyZW50TW9udGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzTmV3WWVhcikge1xuICAgICAgICAgIHNlbGYucmVkcmF3KCk7XG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25ZZWFyQ2hhbmdlXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzRW5hYmxlZChkYXRlLCB0aW1lbGVzcykge1xuICAgICAgICBpZiAodGltZWxlc3MgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRpbWVsZXNzID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBkYXRlVG9DaGVjayA9IHNlbGYucGFyc2VEYXRlKGRhdGUsIHVuZGVmaW5lZCwgdGltZWxlc3MpO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSAmJiBkYXRlVG9DaGVjayAmJiBjb21wYXJlRGF0ZXMoZGF0ZVRvQ2hlY2ssIHNlbGYuY29uZmlnLm1pbkRhdGUsIHRpbWVsZXNzICE9PSB1bmRlZmluZWQgPyB0aW1lbGVzcyA6ICFzZWxmLm1pbkRhdGVIYXNUaW1lKSA8IDAgfHwgc2VsZi5jb25maWcubWF4RGF0ZSAmJiBkYXRlVG9DaGVjayAmJiBjb21wYXJlRGF0ZXMoZGF0ZVRvQ2hlY2ssIHNlbGYuY29uZmlnLm1heERhdGUsIHRpbWVsZXNzICE9PSB1bmRlZmluZWQgPyB0aW1lbGVzcyA6ICFzZWxmLm1heERhdGVIYXNUaW1lKSA+IDApIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZS5sZW5ndGggPT09IDAgJiYgc2VsZi5jb25maWcuZGlzYWJsZS5sZW5ndGggPT09IDApIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoZGF0ZVRvQ2hlY2sgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlO1xuICAgICAgICB2YXIgYm9vbCA9IHNlbGYuY29uZmlnLmVuYWJsZS5sZW5ndGggPiAwLFxuICAgICAgICAgICAgYXJyYXkgPSBib29sID8gc2VsZi5jb25maWcuZW5hYmxlIDogc2VsZi5jb25maWcuZGlzYWJsZTtcblxuICAgICAgICBmb3IgKHZhciBpID0gMCwgZDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgZCA9IGFycmF5W2ldO1xuICAgICAgICAgIGlmICh0eXBlb2YgZCA9PT0gXCJmdW5jdGlvblwiICYmIGQoZGF0ZVRvQ2hlY2spKSByZXR1cm4gYm9vbDtlbHNlIGlmIChkIGluc3RhbmNlb2YgRGF0ZSAmJiBkYXRlVG9DaGVjayAhPT0gdW5kZWZpbmVkICYmIGQuZ2V0VGltZSgpID09PSBkYXRlVG9DaGVjay5nZXRUaW1lKCkpIHJldHVybiBib29sO2Vsc2UgaWYgKHR5cGVvZiBkID09PSBcInN0cmluZ1wiICYmIGRhdGVUb0NoZWNrICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHZhciBwYXJzZWQgPSBzZWxmLnBhcnNlRGF0ZShkLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcnNlZCAmJiBwYXJzZWQuZ2V0VGltZSgpID09PSBkYXRlVG9DaGVjay5nZXRUaW1lKCkgPyBib29sIDogIWJvb2w7XG4gICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZCA9PT0gXCJvYmplY3RcIiAmJiBkYXRlVG9DaGVjayAhPT0gdW5kZWZpbmVkICYmIGQuZnJvbSAmJiBkLnRvICYmIGRhdGVUb0NoZWNrLmdldFRpbWUoKSA+PSBkLmZyb20uZ2V0VGltZSgpICYmIGRhdGVUb0NoZWNrLmdldFRpbWUoKSA8PSBkLnRvLmdldFRpbWUoKSkgcmV0dXJuIGJvb2w7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gIWJvb2w7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzSW5WaWV3KGVsZW0pIHtcbiAgICAgICAgaWYgKHNlbGYuZGF5c0NvbnRhaW5lciAhPT0gdW5kZWZpbmVkKSByZXR1cm4gZWxlbS5jbGFzc05hbWUuaW5kZXhPZihcImhpZGRlblwiKSA9PT0gLTEgJiYgc2VsZi5kYXlzQ29udGFpbmVyLmNvbnRhaW5zKGVsZW0pO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG9uS2V5RG93bihlKSB7XG4gICAgICAgIHZhciBpc0lucHV0ID0gZS50YXJnZXQgPT09IHNlbGYuX2lucHV0O1xuICAgICAgICB2YXIgYWxsb3dJbnB1dCA9IHNlbGYuY29uZmlnLmFsbG93SW5wdXQ7XG4gICAgICAgIHZhciBhbGxvd0tleWRvd24gPSBzZWxmLmlzT3BlbiAmJiAoIWFsbG93SW5wdXQgfHwgIWlzSW5wdXQpO1xuICAgICAgICB2YXIgYWxsb3dJbmxpbmVLZXlkb3duID0gc2VsZi5jb25maWcuaW5saW5lICYmIGlzSW5wdXQgJiYgIWFsbG93SW5wdXQ7XG5cbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMTMgJiYgaXNJbnB1dCkge1xuICAgICAgICAgIGlmIChhbGxvd0lucHV0KSB7XG4gICAgICAgICAgICBzZWxmLnNldERhdGUoc2VsZi5faW5wdXQudmFsdWUsIHRydWUsIGUudGFyZ2V0ID09PSBzZWxmLmFsdElucHV0ID8gc2VsZi5jb25maWcuYWx0Rm9ybWF0IDogc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgICAgICByZXR1cm4gZS50YXJnZXQuYmx1cigpO1xuICAgICAgICAgIH0gZWxzZSBzZWxmLm9wZW4oKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0NhbGVuZGFyRWxlbShlLnRhcmdldCkgfHwgYWxsb3dLZXlkb3duIHx8IGFsbG93SW5saW5lS2V5ZG93bikge1xuICAgICAgICAgIHZhciBpc1RpbWVPYmogPSAhIXNlbGYudGltZUNvbnRhaW5lciAmJiBzZWxmLnRpbWVDb250YWluZXIuY29udGFpbnMoZS50YXJnZXQpO1xuXG4gICAgICAgICAgc3dpdGNoIChlLmtleUNvZGUpIHtcbiAgICAgICAgICAgIGNhc2UgMTM6XG4gICAgICAgICAgICAgIGlmIChpc1RpbWVPYmopIHVwZGF0ZVRpbWUoKTtlbHNlIHNlbGVjdERhdGUoZSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDI3OlxuICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgIGZvY3VzQW5kQ2xvc2UoKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgIGNhc2UgNDY6XG4gICAgICAgICAgICAgIGlmIChpc0lucHV0ICYmICFzZWxmLmNvbmZpZy5hbGxvd0lucHV0KSB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIHNlbGYuY2xlYXIoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDM3OlxuICAgICAgICAgICAgY2FzZSAzOTpcbiAgICAgICAgICAgICAgaWYgKCFpc1RpbWVPYmopIHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyICE9PSB1bmRlZmluZWQgJiYgKGFsbG93SW5wdXQgPT09IGZhbHNlIHx8IGlzSW5WaWV3KGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKSkge1xuICAgICAgICAgICAgICAgICAgdmFyIF9kZWx0YSA9IGUua2V5Q29kZSA9PT0gMzkgPyAxIDogLTE7XG5cbiAgICAgICAgICAgICAgICAgIGlmICghZS5jdHJsS2V5KSBmb2N1c09uRGF5KHVuZGVmaW5lZCwgX2RlbHRhKTtlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY2hhbmdlTW9udGgoX2RlbHRhKTtcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNPbkRheShnZXRGaXJzdEF2YWlsYWJsZURheSgxKSwgMCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlbGYuaG91ckVsZW1lbnQpIHNlbGYuaG91ckVsZW1lbnQuZm9jdXMoKTtcblxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAzODpcbiAgICAgICAgICAgIGNhc2UgNDA6XG4gICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgdmFyIGRlbHRhID0gZS5rZXlDb2RlID09PSA0MCA/IDEgOiAtMTtcblxuICAgICAgICAgICAgICBpZiAoc2VsZi5kYXlzQ29udGFpbmVyKSB7XG4gICAgICAgICAgICAgICAgaWYgKGUuY3RybEtleSkge1xuICAgICAgICAgICAgICAgICAgY2hhbmdlWWVhcihzZWxmLmN1cnJlbnRZZWFyIC0gZGVsdGEpO1xuICAgICAgICAgICAgICAgICAgZm9jdXNPbkRheShnZXRGaXJzdEF2YWlsYWJsZURheSgxKSwgMCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICghaXNUaW1lT2JqKSBmb2N1c09uRGF5KHVuZGVmaW5lZCwgZGVsdGEgKiA3KTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1RpbWVPYmogJiYgc2VsZi5ob3VyRWxlbWVudCkgc2VsZi5ob3VyRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHVwZGF0ZVRpbWUoZSk7XG5cbiAgICAgICAgICAgICAgICBzZWxmLl9kZWJvdW5jZWRDaGFuZ2UoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDk6XG4gICAgICAgICAgICAgIGlmICghaXNUaW1lT2JqKSBicmVhaztcbiAgICAgICAgICAgICAgdmFyIGVsZW1zID0gW3NlbGYuaG91ckVsZW1lbnQsIHNlbGYubWludXRlRWxlbWVudCwgc2VsZi5zZWNvbmRFbGVtZW50LCBzZWxmLmFtUE1dLmZpbHRlcihmdW5jdGlvbiAoeCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgdmFyIGkgPSBlbGVtcy5pbmRleE9mKGUudGFyZ2V0KTtcblxuICAgICAgICAgICAgICBpZiAoaSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0ID0gZWxlbXNbaSArIChlLnNoaWZ0S2V5ID8gLTEgOiAxKV07XG5cbiAgICAgICAgICAgICAgICBpZiAodGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgIHRhcmdldC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5hbVBNICE9PSB1bmRlZmluZWQgJiYgZS50YXJnZXQgPT09IHNlbGYuYW1QTSkge1xuICAgICAgICAgIHN3aXRjaCAoZS5rZXkpIHtcbiAgICAgICAgICAgIGNhc2Ugc2VsZi5sMTBuLmFtUE1bMF0uY2hhckF0KDApOlxuICAgICAgICAgICAgY2FzZSBzZWxmLmwxMG4uYW1QTVswXS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKTpcbiAgICAgICAgICAgICAgc2VsZi5hbVBNLnRleHRDb250ZW50ID0gc2VsZi5sMTBuLmFtUE1bMF07XG4gICAgICAgICAgICAgIHNldEhvdXJzRnJvbUlucHV0cygpO1xuICAgICAgICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBzZWxmLmwxMG4uYW1QTVsxXS5jaGFyQXQoMCk6XG4gICAgICAgICAgICBjYXNlIHNlbGYubDEwbi5hbVBNWzFdLmNoYXJBdCgwKS50b0xvd2VyQ2FzZSgpOlxuICAgICAgICAgICAgICBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVsxXTtcbiAgICAgICAgICAgICAgc2V0SG91cnNGcm9tSW5wdXRzKCk7XG4gICAgICAgICAgICAgIHVwZGF0ZVZhbHVlKCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uS2V5RG93blwiLCBlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gb25Nb3VzZU92ZXIoZWxlbSkge1xuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCAhPT0gMSB8fCAhZWxlbS5jbGFzc0xpc3QuY29udGFpbnMoXCJmbGF0cGlja3ItZGF5XCIpIHx8IGVsZW0uY2xhc3NMaXN0LmNvbnRhaW5zKFwiZGlzYWJsZWRcIikpIHJldHVybjtcbiAgICAgICAgdmFyIGhvdmVyRGF0ZSA9IGVsZW0uZGF0ZU9iai5nZXRUaW1lKCksXG4gICAgICAgICAgICBpbml0aWFsRGF0ZSA9IHNlbGYucGFyc2VEYXRlKHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdW5kZWZpbmVkLCB0cnVlKS5nZXRUaW1lKCksXG4gICAgICAgICAgICByYW5nZVN0YXJ0RGF0ZSA9IE1hdGgubWluKGhvdmVyRGF0ZSwgc2VsZi5zZWxlY3RlZERhdGVzWzBdLmdldFRpbWUoKSksXG4gICAgICAgICAgICByYW5nZUVuZERhdGUgPSBNYXRoLm1heChob3ZlckRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXS5nZXRUaW1lKCkpO1xuICAgICAgICB2YXIgY29udGFpbnNEaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB2YXIgbWluUmFuZ2UgPSAwLFxuICAgICAgICAgICAgbWF4UmFuZ2UgPSAwO1xuXG4gICAgICAgIGZvciAodmFyIHQgPSByYW5nZVN0YXJ0RGF0ZTsgdCA8IHJhbmdlRW5kRGF0ZTsgdCArPSBkdXJhdGlvbi5EQVkpIHtcbiAgICAgICAgICBpZiAoIWlzRW5hYmxlZChuZXcgRGF0ZSh0KSwgdHJ1ZSkpIHtcbiAgICAgICAgICAgIGNvbnRhaW5zRGlzYWJsZWQgPSBjb250YWluc0Rpc2FibGVkIHx8IHQgPiByYW5nZVN0YXJ0RGF0ZSAmJiB0IDwgcmFuZ2VFbmREYXRlO1xuICAgICAgICAgICAgaWYgKHQgPCBpbml0aWFsRGF0ZSAmJiAoIW1pblJhbmdlIHx8IHQgPiBtaW5SYW5nZSkpIG1pblJhbmdlID0gdDtlbHNlIGlmICh0ID4gaW5pdGlhbERhdGUgJiYgKCFtYXhSYW5nZSB8fCB0IDwgbWF4UmFuZ2UpKSBtYXhSYW5nZSA9IHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yICh2YXIgbSA9IDA7IG0gPCBzZWxmLmNvbmZpZy5zaG93TW9udGhzOyBtKyspIHtcbiAgICAgICAgICB2YXIgbW9udGggPSBzZWxmLmRheXNDb250YWluZXIuY2hpbGRyZW5bbV07XG4gICAgICAgICAgdmFyIHByZXZNb250aCA9IHNlbGYuZGF5c0NvbnRhaW5lci5jaGlsZHJlblttIC0gMV07XG5cbiAgICAgICAgICB2YXIgX2xvb3AgPSBmdW5jdGlvbiBfbG9vcChpLCBsKSB7XG4gICAgICAgICAgICB2YXIgZGF5RWxlbSA9IG1vbnRoLmNoaWxkcmVuW2ldLFxuICAgICAgICAgICAgICAgIGRhdGUgPSBkYXlFbGVtLmRhdGVPYmo7XG4gICAgICAgICAgICB2YXIgdGltZXN0YW1wID0gZGF0ZS5nZXRUaW1lKCk7XG4gICAgICAgICAgICB2YXIgb3V0T2ZSYW5nZSA9IG1pblJhbmdlID4gMCAmJiB0aW1lc3RhbXAgPCBtaW5SYW5nZSB8fCBtYXhSYW5nZSA+IDAgJiYgdGltZXN0YW1wID4gbWF4UmFuZ2U7XG5cbiAgICAgICAgICAgIGlmIChvdXRPZlJhbmdlKSB7XG4gICAgICAgICAgICAgIGRheUVsZW0uY2xhc3NMaXN0LmFkZChcIm5vdEFsbG93ZWRcIik7XG4gICAgICAgICAgICAgIFtcImluUmFuZ2VcIiwgXCJzdGFydFJhbmdlXCIsIFwiZW5kUmFuZ2VcIl0uZm9yRWFjaChmdW5jdGlvbiAoYykge1xuICAgICAgICAgICAgICAgIGRheUVsZW0uY2xhc3NMaXN0LnJlbW92ZShjKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIHJldHVybiBcImNvbnRpbnVlXCI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnRhaW5zRGlzYWJsZWQgJiYgIW91dE9mUmFuZ2UpIHJldHVybiBcImNvbnRpbnVlXCI7XG5cbiAgICAgICAgICAgIFtcInN0YXJ0UmFuZ2VcIiwgXCJpblJhbmdlXCIsIFwiZW5kUmFuZ2VcIiwgXCJub3RBbGxvd2VkXCJdLmZvckVhY2goZnVuY3Rpb24gKGMpIHtcbiAgICAgICAgICAgICAgZGF5RWxlbS5jbGFzc0xpc3QucmVtb3ZlKGMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBlbGVtLmNsYXNzTGlzdC5hZGQoaG92ZXJEYXRlIDwgc2VsZi5zZWxlY3RlZERhdGVzWzBdLmdldFRpbWUoKSA/IFwic3RhcnRSYW5nZVwiIDogXCJlbmRSYW5nZVwiKTtcblxuICAgICAgICAgICAgaWYgKG1vbnRoLmNvbnRhaW5zKGVsZW0pIHx8ICEobSA+IDAgJiYgcHJldk1vbnRoICYmIHByZXZNb250aC5sYXN0Q2hpbGQuZGF0ZU9iai5nZXRUaW1lKCkgPj0gdGltZXN0YW1wKSkge1xuICAgICAgICAgICAgICBpZiAoaW5pdGlhbERhdGUgPCBob3ZlckRhdGUgJiYgdGltZXN0YW1wID09PSBpbml0aWFsRGF0ZSkgZGF5RWxlbS5jbGFzc0xpc3QuYWRkKFwic3RhcnRSYW5nZVwiKTtlbHNlIGlmIChpbml0aWFsRGF0ZSA+IGhvdmVyRGF0ZSAmJiB0aW1lc3RhbXAgPT09IGluaXRpYWxEYXRlKSBkYXlFbGVtLmNsYXNzTGlzdC5hZGQoXCJlbmRSYW5nZVwiKTtcbiAgICAgICAgICAgICAgaWYgKHRpbWVzdGFtcCA+PSBtaW5SYW5nZSAmJiAobWF4UmFuZ2UgPT09IDAgfHwgdGltZXN0YW1wIDw9IG1heFJhbmdlKSAmJiBpc0JldHdlZW4odGltZXN0YW1wLCBpbml0aWFsRGF0ZSwgaG92ZXJEYXRlKSkgZGF5RWxlbS5jbGFzc0xpc3QuYWRkKFwiaW5SYW5nZVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBtb250aC5jaGlsZHJlbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBfcmV0ID0gX2xvb3AoaSwgbCk7XG5cbiAgICAgICAgICAgIGlmIChfcmV0ID09PSBcImNvbnRpbnVlXCIpIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvblJlc2l6ZSgpIHtcbiAgICAgICAgaWYgKHNlbGYuaXNPcGVuICYmICFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgIXNlbGYuY29uZmlnLmlubGluZSkgcG9zaXRpb25DYWxlbmRhcigpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvcGVuKGUsIHBvc2l0aW9uRWxlbWVudCkge1xuICAgICAgICBpZiAocG9zaXRpb25FbGVtZW50ID09PSB2b2lkIDApIHtcbiAgICAgICAgICBwb3NpdGlvbkVsZW1lbnQgPSBzZWxmLl9pbnB1dDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmlzTW9iaWxlID09PSB0cnVlKSB7XG4gICAgICAgICAgaWYgKGUpIHtcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGUudGFyZ2V0ICYmIGUudGFyZ2V0LmJsdXIoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHNlbGYubW9iaWxlSW5wdXQgIT09IHVuZGVmaW5lZCAmJiBzZWxmLm1vYmlsZUlucHV0LmZvY3VzKCk7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25PcGVuXCIpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLl9pbnB1dC5kaXNhYmxlZCB8fCBzZWxmLmNvbmZpZy5pbmxpbmUpIHJldHVybjtcbiAgICAgICAgdmFyIHdhc09wZW4gPSBzZWxmLmlzT3BlbjtcbiAgICAgICAgc2VsZi5pc09wZW4gPSB0cnVlO1xuXG4gICAgICAgIGlmICghd2FzT3Blbikge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuY2xhc3NMaXN0LmFkZChcIm9wZW5cIik7XG5cbiAgICAgICAgICBzZWxmLl9pbnB1dC5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlXCIpO1xuXG4gICAgICAgICAgdHJpZ2dlckV2ZW50KFwib25PcGVuXCIpO1xuICAgICAgICAgIHBvc2l0aW9uQ2FsZW5kYXIocG9zaXRpb25FbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5lbmFibGVUaW1lID09PSB0cnVlICYmIHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgPT09IHRydWUpIHtcbiAgICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgc2VsZi5zZXREYXRlKHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCA/IG5ldyBEYXRlKHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0VGltZSgpKSA6IG5ldyBEYXRlKCksIGZhbHNlKTtcbiAgICAgICAgICAgIHNldERlZmF1bHRIb3VycygpO1xuICAgICAgICAgICAgdXBkYXRlVmFsdWUoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoc2VsZi5jb25maWcuYWxsb3dJbnB1dCA9PT0gZmFsc2UgJiYgKGUgPT09IHVuZGVmaW5lZCB8fCAhc2VsZi50aW1lQ29udGFpbmVyLmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCkpKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuaG91ckVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgICAgICB9LCA1MCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIG1pbk1heERhdGVTZXR0ZXIodHlwZSkge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICB2YXIgZGF0ZU9iaiA9IHNlbGYuY29uZmlnW1wiX1wiICsgdHlwZSArIFwiRGF0ZVwiXSA9IHNlbGYucGFyc2VEYXRlKGRhdGUsIHNlbGYuY29uZmlnLmRhdGVGb3JtYXQpO1xuICAgICAgICAgIHZhciBpbnZlcnNlRGF0ZU9iaiA9IHNlbGYuY29uZmlnW1wiX1wiICsgKHR5cGUgPT09IFwibWluXCIgPyBcIm1heFwiIDogXCJtaW5cIikgKyBcIkRhdGVcIl07XG5cbiAgICAgICAgICBpZiAoZGF0ZU9iaiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBzZWxmW3R5cGUgPT09IFwibWluXCIgPyBcIm1pbkRhdGVIYXNUaW1lXCIgOiBcIm1heERhdGVIYXNUaW1lXCJdID0gZGF0ZU9iai5nZXRIb3VycygpID4gMCB8fCBkYXRlT2JqLmdldE1pbnV0ZXMoKSA+IDAgfHwgZGF0ZU9iai5nZXRTZWNvbmRzKCkgPiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMpIHtcbiAgICAgICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IHNlbGYuc2VsZWN0ZWREYXRlcy5maWx0ZXIoZnVuY3Rpb24gKGQpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGlzRW5hYmxlZChkKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKCFzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoICYmIHR5cGUgPT09IFwibWluXCIpIHNldEhvdXJzRnJvbURhdGUoZGF0ZU9iaik7XG4gICAgICAgICAgICB1cGRhdGVWYWx1ZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChzZWxmLmRheXNDb250YWluZXIpIHtcbiAgICAgICAgICAgIHJlZHJhdygpO1xuICAgICAgICAgICAgaWYgKGRhdGVPYmogIT09IHVuZGVmaW5lZCkgc2VsZi5jdXJyZW50WWVhckVsZW1lbnRbdHlwZV0gPSBkYXRlT2JqLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtlbHNlIHNlbGYuY3VycmVudFllYXJFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSh0eXBlKTtcbiAgICAgICAgICAgIHNlbGYuY3VycmVudFllYXJFbGVtZW50LmRpc2FibGVkID0gISFpbnZlcnNlRGF0ZU9iaiAmJiBkYXRlT2JqICE9PSB1bmRlZmluZWQgJiYgaW52ZXJzZURhdGVPYmouZ2V0RnVsbFllYXIoKSA9PT0gZGF0ZU9iai5nZXRGdWxsWWVhcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gcGFyc2VDb25maWcoKSB7XG4gICAgICAgIHZhciBib29sT3B0cyA9IFtcIndyYXBcIiwgXCJ3ZWVrTnVtYmVyc1wiLCBcImFsbG93SW5wdXRcIiwgXCJjbGlja09wZW5zXCIsIFwidGltZV8yNGhyXCIsIFwiZW5hYmxlVGltZVwiLCBcIm5vQ2FsZW5kYXJcIiwgXCJhbHRJbnB1dFwiLCBcInNob3J0aGFuZEN1cnJlbnRNb250aFwiLCBcImlubGluZVwiLCBcInN0YXRpY1wiLCBcImVuYWJsZVNlY29uZHNcIiwgXCJkaXNhYmxlTW9iaWxlXCJdO1xuICAgICAgICB2YXIgaG9va3MgPSBbXCJvbkNoYW5nZVwiLCBcIm9uQ2xvc2VcIiwgXCJvbkRheUNyZWF0ZVwiLCBcIm9uRGVzdHJveVwiLCBcIm9uS2V5RG93blwiLCBcIm9uTW9udGhDaGFuZ2VcIiwgXCJvbk9wZW5cIiwgXCJvblBhcnNlQ29uZmlnXCIsIFwib25SZWFkeVwiLCBcIm9uVmFsdWVVcGRhdGVcIiwgXCJvblllYXJDaGFuZ2VcIiwgXCJvblByZUNhbGVuZGFyUG9zaXRpb25cIl07XG4gICAgICAgIHZhciB1c2VyQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgaW5zdGFuY2VDb25maWcsIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZWxlbWVudC5kYXRhc2V0IHx8IHt9KSkpO1xuICAgICAgICB2YXIgZm9ybWF0cyQkMSA9IHt9O1xuICAgICAgICBzZWxmLmNvbmZpZy5wYXJzZURhdGUgPSB1c2VyQ29uZmlnLnBhcnNlRGF0ZTtcbiAgICAgICAgc2VsZi5jb25maWcuZm9ybWF0RGF0ZSA9IHVzZXJDb25maWcuZm9ybWF0RGF0ZTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcImVuYWJsZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX2VuYWJsZTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGRhdGVzKSB7XG4gICAgICAgICAgICBzZWxmLmNvbmZpZy5fZW5hYmxlID0gcGFyc2VEYXRlUnVsZXMoZGF0ZXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLmNvbmZpZywgXCJkaXNhYmxlXCIsIHtcbiAgICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLmNvbmZpZy5fZGlzYWJsZTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGRhdGVzKSB7XG4gICAgICAgICAgICBzZWxmLmNvbmZpZy5fZGlzYWJsZSA9IHBhcnNlRGF0ZVJ1bGVzKGRhdGVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgdGltZU1vZGUgPSB1c2VyQ29uZmlnLm1vZGUgPT09IFwidGltZVwiO1xuXG4gICAgICAgIGlmICghdXNlckNvbmZpZy5kYXRlRm9ybWF0ICYmICh1c2VyQ29uZmlnLmVuYWJsZVRpbWUgfHwgdGltZU1vZGUpKSB7XG4gICAgICAgICAgZm9ybWF0cyQkMS5kYXRlRm9ybWF0ID0gdXNlckNvbmZpZy5ub0NhbGVuZGFyIHx8IHRpbWVNb2RlID8gXCJIOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTXCIgOiBcIlwiKSA6IGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnLmRhdGVGb3JtYXQgKyBcIiBIOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTXCIgOiBcIlwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1c2VyQ29uZmlnLmFsdElucHV0ICYmICh1c2VyQ29uZmlnLmVuYWJsZVRpbWUgfHwgdGltZU1vZGUpICYmICF1c2VyQ29uZmlnLmFsdEZvcm1hdCkge1xuICAgICAgICAgIGZvcm1hdHMkJDEuYWx0Rm9ybWF0ID0gdXNlckNvbmZpZy5ub0NhbGVuZGFyIHx8IHRpbWVNb2RlID8gXCJoOmlcIiArICh1c2VyQ29uZmlnLmVuYWJsZVNlY29uZHMgPyBcIjpTIEtcIiA6IFwiIEtcIikgOiBmbGF0cGlja3IuZGVmYXVsdENvbmZpZy5hbHRGb3JtYXQgKyAoXCIgaDppXCIgKyAodXNlckNvbmZpZy5lbmFibGVTZWNvbmRzID8gXCI6U1wiIDogXCJcIikgKyBcIiBLXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcIm1pbkRhdGVcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLl9taW5EYXRlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBtaW5NYXhEYXRlU2V0dGVyKFwibWluXCIpXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZi5jb25maWcsIFwibWF4RGF0ZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX21heERhdGU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IG1pbk1heERhdGVTZXR0ZXIoXCJtYXhcIilcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdmFyIG1pbk1heFRpbWVTZXR0ZXIgPSBmdW5jdGlvbiBtaW5NYXhUaW1lU2V0dGVyKHR5cGUpIHtcbiAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgc2VsZi5jb25maWdbdHlwZSA9PT0gXCJtaW5cIiA/IFwiX21pblRpbWVcIiA6IFwiX21heFRpbWVcIl0gPSBzZWxmLnBhcnNlRGF0ZSh2YWwsIFwiSDppXCIpO1xuICAgICAgICAgIH07XG4gICAgICAgIH07XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYuY29uZmlnLCBcIm1pblRpbWVcIiwge1xuICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLl9taW5UaW1lO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2V0OiBtaW5NYXhUaW1lU2V0dGVyKFwibWluXCIpXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2VsZi5jb25maWcsIFwibWF4VGltZVwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5jb25maWcuX21heFRpbWU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXQ6IG1pbk1heFRpbWVTZXR0ZXIoXCJtYXhcIilcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHVzZXJDb25maWcubW9kZSA9PT0gXCJ0aW1lXCIpIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZy5ub0NhbGVuZGFyID0gdHJ1ZTtcbiAgICAgICAgICBzZWxmLmNvbmZpZy5lbmFibGVUaW1lID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIE9iamVjdC5hc3NpZ24oc2VsZi5jb25maWcsIGZvcm1hdHMkJDEsIHVzZXJDb25maWcpO1xuXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYm9vbE9wdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZ1tib29sT3B0c1tpXV0gPSBzZWxmLmNvbmZpZ1tib29sT3B0c1tpXV0gPT09IHRydWUgfHwgc2VsZi5jb25maWdbYm9vbE9wdHNbaV1dID09PSBcInRydWVcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAodmFyIF9pID0gaG9va3MubGVuZ3RoOyBfaS0tOykge1xuICAgICAgICAgIGlmIChzZWxmLmNvbmZpZ1tob29rc1tfaV1dICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNlbGYuY29uZmlnW2hvb2tzW19pXV0gPSBhcnJheWlmeShzZWxmLmNvbmZpZ1tob29rc1tfaV1dIHx8IFtdKS5tYXAoYmluZFRvSW5zdGFuY2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuaXNNb2JpbGUgPSAhc2VsZi5jb25maWcuZGlzYWJsZU1vYmlsZSAmJiAhc2VsZi5jb25maWcuaW5saW5lICYmIHNlbGYuY29uZmlnLm1vZGUgPT09IFwic2luZ2xlXCIgJiYgIXNlbGYuY29uZmlnLmRpc2FibGUubGVuZ3RoICYmICFzZWxmLmNvbmZpZy5lbmFibGUubGVuZ3RoICYmICFzZWxmLmNvbmZpZy53ZWVrTnVtYmVycyAmJiAvQW5kcm9pZHx3ZWJPU3xpUGhvbmV8aVBhZHxpUG9kfEJsYWNrQmVycnl8SUVNb2JpbGV8T3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG5cbiAgICAgICAgZm9yICh2YXIgX2kyID0gMDsgX2kyIDwgc2VsZi5jb25maWcucGx1Z2lucy5sZW5ndGg7IF9pMisrKSB7XG4gICAgICAgICAgdmFyIHBsdWdpbkNvbmYgPSBzZWxmLmNvbmZpZy5wbHVnaW5zW19pMl0oc2VsZikgfHwge307XG5cbiAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gcGx1Z2luQ29uZikge1xuICAgICAgICAgICAgaWYgKH5ob29rcy5pbmRleE9mKGtleSkpIHtcbiAgICAgICAgICAgICAgc2VsZi5jb25maWdba2V5XSA9IGFycmF5aWZ5KHBsdWdpbkNvbmZba2V5XSkubWFwKGJpbmRUb0luc3RhbmNlKS5jb25jYXQoc2VsZi5jb25maWdba2V5XSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB1c2VyQ29uZmlnW2tleV0gPT09IFwidW5kZWZpbmVkXCIpIHNlbGYuY29uZmlnW2tleV0gPSBwbHVnaW5Db25mW2tleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHJpZ2dlckV2ZW50KFwib25QYXJzZUNvbmZpZ1wiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0dXBMb2NhbGUoKSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2VsZi5jb25maWcubG9jYWxlICE9PSBcIm9iamVjdFwiICYmIHR5cGVvZiBmbGF0cGlja3IubDEwbnNbc2VsZi5jb25maWcubG9jYWxlXSA9PT0gXCJ1bmRlZmluZWRcIikgc2VsZi5jb25maWcuZXJyb3JIYW5kbGVyKG5ldyBFcnJvcihcImZsYXRwaWNrcjogaW52YWxpZCBsb2NhbGUgXCIgKyBzZWxmLmNvbmZpZy5sb2NhbGUpKTtcbiAgICAgICAgc2VsZi5sMTBuID0gT2JqZWN0LmFzc2lnbih7fSwgZmxhdHBpY2tyLmwxMG5zLmRlZmF1bHQsIHR5cGVvZiBzZWxmLmNvbmZpZy5sb2NhbGUgPT09IFwib2JqZWN0XCIgPyBzZWxmLmNvbmZpZy5sb2NhbGUgOiBzZWxmLmNvbmZpZy5sb2NhbGUgIT09IFwiZGVmYXVsdFwiID8gZmxhdHBpY2tyLmwxMG5zW3NlbGYuY29uZmlnLmxvY2FsZV0gOiB1bmRlZmluZWQpO1xuICAgICAgICB0b2tlblJlZ2V4LksgPSBcIihcIiArIHNlbGYubDEwbi5hbVBNWzBdICsgXCJ8XCIgKyBzZWxmLmwxMG4uYW1QTVsxXSArIFwifFwiICsgc2VsZi5sMTBuLmFtUE1bMF0udG9Mb3dlckNhc2UoKSArIFwifFwiICsgc2VsZi5sMTBuLmFtUE1bMV0udG9Mb3dlckNhc2UoKSArIFwiKVwiO1xuICAgICAgICBzZWxmLmZvcm1hdERhdGUgPSBjcmVhdGVEYXRlRm9ybWF0dGVyKHNlbGYpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBwb3NpdGlvbkNhbGVuZGFyKGN1c3RvbVBvc2l0aW9uRWxlbWVudCkge1xuICAgICAgICBpZiAoc2VsZi5jYWxlbmRhckNvbnRhaW5lciA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIHRyaWdnZXJFdmVudChcIm9uUHJlQ2FsZW5kYXJQb3NpdGlvblwiKTtcbiAgICAgICAgdmFyIHBvc2l0aW9uRWxlbWVudCA9IGN1c3RvbVBvc2l0aW9uRWxlbWVudCB8fCBzZWxmLl9wb3NpdGlvbkVsZW1lbnQ7XG4gICAgICAgIHZhciBjYWxlbmRhckhlaWdodCA9IEFycmF5LnByb3RvdHlwZS5yZWR1Y2UuY2FsbChzZWxmLmNhbGVuZGFyQ29udGFpbmVyLmNoaWxkcmVuLCBmdW5jdGlvbiAoYWNjLCBjaGlsZCkge1xuICAgICAgICAgIHJldHVybiBhY2MgKyBjaGlsZC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIH0sIDApLFxuICAgICAgICAgICAgY2FsZW5kYXJXaWR0aCA9IHNlbGYuY2FsZW5kYXJDb250YWluZXIub2Zmc2V0V2lkdGgsXG4gICAgICAgICAgICBjb25maWdQb3MgPSBzZWxmLmNvbmZpZy5wb3NpdGlvbi5zcGxpdChcIiBcIiksXG4gICAgICAgICAgICBjb25maWdQb3NWZXJ0aWNhbCA9IGNvbmZpZ1Bvc1swXSxcbiAgICAgICAgICAgIGNvbmZpZ1Bvc0hvcml6b250YWwgPSBjb25maWdQb3MubGVuZ3RoID4gMSA/IGNvbmZpZ1Bvc1sxXSA6IG51bGwsXG4gICAgICAgICAgICBpbnB1dEJvdW5kcyA9IHBvc2l0aW9uRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgICAgICAgIGRpc3RhbmNlRnJvbUJvdHRvbSA9IHdpbmRvdy5pbm5lckhlaWdodCAtIGlucHV0Qm91bmRzLmJvdHRvbSxcbiAgICAgICAgICAgIHNob3dPblRvcCA9IGNvbmZpZ1Bvc1ZlcnRpY2FsID09PSBcImFib3ZlXCIgfHwgY29uZmlnUG9zVmVydGljYWwgIT09IFwiYmVsb3dcIiAmJiBkaXN0YW5jZUZyb21Cb3R0b20gPCBjYWxlbmRhckhlaWdodCAmJiBpbnB1dEJvdW5kcy50b3AgPiBjYWxlbmRhckhlaWdodDtcbiAgICAgICAgdmFyIHRvcCA9IHdpbmRvdy5wYWdlWU9mZnNldCArIGlucHV0Qm91bmRzLnRvcCArICghc2hvd09uVG9wID8gcG9zaXRpb25FbGVtZW50Lm9mZnNldEhlaWdodCArIDIgOiAtY2FsZW5kYXJIZWlnaHQgLSAyKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhcnJvd1RvcFwiLCAhc2hvd09uVG9wKTtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJhcnJvd0JvdHRvbVwiLCBzaG93T25Ub3ApO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcuaW5saW5lKSByZXR1cm47XG4gICAgICAgIHZhciBsZWZ0ID0gd2luZG93LnBhZ2VYT2Zmc2V0ICsgaW5wdXRCb3VuZHMubGVmdCAtIChjb25maWdQb3NIb3Jpem9udGFsICE9IG51bGwgJiYgY29uZmlnUG9zSG9yaXpvbnRhbCA9PT0gXCJjZW50ZXJcIiA/IChjYWxlbmRhcldpZHRoIC0gaW5wdXRCb3VuZHMud2lkdGgpIC8gMiA6IDApO1xuICAgICAgICB2YXIgcmlnaHQgPSB3aW5kb3cuZG9jdW1lbnQuYm9keS5vZmZzZXRXaWR0aCAtIGlucHV0Qm91bmRzLnJpZ2h0O1xuICAgICAgICB2YXIgcmlnaHRNb3N0ID0gbGVmdCArIGNhbGVuZGFyV2lkdGggPiB3aW5kb3cuZG9jdW1lbnQuYm9keS5vZmZzZXRXaWR0aDtcbiAgICAgICAgdG9nZ2xlQ2xhc3Moc2VsZi5jYWxlbmRhckNvbnRhaW5lciwgXCJyaWdodE1vc3RcIiwgcmlnaHRNb3N0KTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLnN0YXRpYykgcmV0dXJuO1xuICAgICAgICBzZWxmLmNhbGVuZGFyQ29udGFpbmVyLnN0eWxlLnRvcCA9IHRvcCArIFwicHhcIjtcblxuICAgICAgICBpZiAoIXJpZ2h0TW9zdCkge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyBcInB4XCI7XG4gICAgICAgICAgc2VsZi5jYWxlbmRhckNvbnRhaW5lci5zdHlsZS5yaWdodCA9IFwiYXV0b1wiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUubGVmdCA9IFwiYXV0b1wiO1xuICAgICAgICAgIHNlbGYuY2FsZW5kYXJDb250YWluZXIuc3R5bGUucmlnaHQgPSByaWdodCArIFwicHhcIjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiByZWRyYXcoKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5ub0NhbGVuZGFyIHx8IHNlbGYuaXNNb2JpbGUpIHJldHVybjtcbiAgICAgICAgdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpO1xuICAgICAgICBidWlsZERheXMoKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gZm9jdXNBbmRDbG9zZSgpIHtcbiAgICAgICAgc2VsZi5faW5wdXQuZm9jdXMoKTtcblxuICAgICAgICBpZiAod2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZihcIk1TSUVcIikgIT09IC0xIHx8IG5hdmlnYXRvci5tc01heFRvdWNoUG9pbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KHNlbGYuY2xvc2UsIDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNlbGYuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZWxlY3REYXRlKGUpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHZhciBpc1NlbGVjdGFibGUgPSBmdW5jdGlvbiBpc1NlbGVjdGFibGUoZGF5KSB7XG4gICAgICAgICAgcmV0dXJuIGRheS5jbGFzc0xpc3QgJiYgZGF5LmNsYXNzTGlzdC5jb250YWlucyhcImZsYXRwaWNrci1kYXlcIikgJiYgIWRheS5jbGFzc0xpc3QuY29udGFpbnMoXCJkaXNhYmxlZFwiKSAmJiAhZGF5LmNsYXNzTGlzdC5jb250YWlucyhcIm5vdEFsbG93ZWRcIik7XG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHQgPSBmaW5kUGFyZW50KGUudGFyZ2V0LCBpc1NlbGVjdGFibGUpO1xuICAgICAgICBpZiAodCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIHZhciB0YXJnZXQgPSB0O1xuICAgICAgICB2YXIgc2VsZWN0ZWREYXRlID0gc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogPSBuZXcgRGF0ZSh0YXJnZXQuZGF0ZU9iai5nZXRUaW1lKCkpO1xuICAgICAgICB2YXIgc2hvdWxkQ2hhbmdlTW9udGggPSAoc2VsZWN0ZWREYXRlLmdldE1vbnRoKCkgPCBzZWxmLmN1cnJlbnRNb250aCB8fCBzZWxlY3RlZERhdGUuZ2V0TW9udGgoKSA+IHNlbGYuY3VycmVudE1vbnRoICsgc2VsZi5jb25maWcuc2hvd01vbnRocyAtIDEpICYmIHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIjtcbiAgICAgICAgc2VsZi5zZWxlY3RlZERhdGVFbGVtID0gdGFyZ2V0O1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJzaW5nbGVcIikgc2VsZi5zZWxlY3RlZERhdGVzID0gW3NlbGVjdGVkRGF0ZV07ZWxzZSBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJtdWx0aXBsZVwiKSB7XG4gICAgICAgICAgdmFyIHNlbGVjdGVkSW5kZXggPSBpc0RhdGVTZWxlY3RlZChzZWxlY3RlZERhdGUpO1xuICAgICAgICAgIGlmIChzZWxlY3RlZEluZGV4KSBzZWxmLnNlbGVjdGVkRGF0ZXMuc3BsaWNlKHBhcnNlSW50KHNlbGVjdGVkSW5kZXgpLCAxKTtlbHNlIHNlbGYuc2VsZWN0ZWREYXRlcy5wdXNoKHNlbGVjdGVkRGF0ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSB7XG4gICAgICAgICAgaWYgKHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDIpIHNlbGYuY2xlYXIoZmFsc2UpO1xuICAgICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcy5wdXNoKHNlbGVjdGVkRGF0ZSk7XG4gICAgICAgICAgaWYgKGNvbXBhcmVEYXRlcyhzZWxlY3RlZERhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1swXSwgdHJ1ZSkgIT09IDApIHNlbGYuc2VsZWN0ZWREYXRlcy5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICAgICAgICByZXR1cm4gYS5nZXRUaW1lKCkgLSBiLmdldFRpbWUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBzZXRIb3Vyc0Zyb21JbnB1dHMoKTtcblxuICAgICAgICBpZiAoc2hvdWxkQ2hhbmdlTW9udGgpIHtcbiAgICAgICAgICB2YXIgaXNOZXdZZWFyID0gc2VsZi5jdXJyZW50WWVhciAhPT0gc2VsZWN0ZWREYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgICAgc2VsZi5jdXJyZW50WWVhciA9IHNlbGVjdGVkRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICAgIHNlbGYuY3VycmVudE1vbnRoID0gc2VsZWN0ZWREYXRlLmdldE1vbnRoKCk7XG4gICAgICAgICAgaWYgKGlzTmV3WWVhcikgdHJpZ2dlckV2ZW50KFwib25ZZWFyQ2hhbmdlXCIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uTW9udGhDaGFuZ2VcIik7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVOYXZpZ2F0aW9uQ3VycmVudE1vbnRoKCk7XG4gICAgICAgIGJ1aWxkRGF5cygpO1xuICAgICAgICBzZXREZWZhdWx0SG91cnMoKTtcbiAgICAgICAgdXBkYXRlVmFsdWUoKTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmVuYWJsZVRpbWUpIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBzZWxmLnNob3dUaW1lSW5wdXQgPSB0cnVlO1xuICAgICAgICB9LCA1MCk7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1vZGUgPT09IFwicmFuZ2VcIikge1xuICAgICAgICAgIGlmIChzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBvbk1vdXNlT3Zlcih0YXJnZXQpO1xuICAgICAgICAgIH0gZWxzZSB1cGRhdGVOYXZpZ2F0aW9uQ3VycmVudE1vbnRoKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXNob3VsZENoYW5nZU1vbnRoICYmIHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIiAmJiBzZWxmLmNvbmZpZy5zaG93TW9udGhzID09PSAxKSBmb2N1c09uRGF5RWxlbSh0YXJnZXQpO2Vsc2Ugc2VsZi5zZWxlY3RlZERhdGVFbGVtICYmIHNlbGYuc2VsZWN0ZWREYXRlRWxlbS5mb2N1cygpO1xuICAgICAgICBpZiAoc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkKSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gc2VsZi5ob3VyRWxlbWVudCAhPT0gdW5kZWZpbmVkICYmIHNlbGYuaG91ckVsZW1lbnQuc2VsZWN0KCk7XG4gICAgICAgIH0sIDQ1MSk7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmNsb3NlT25TZWxlY3QpIHtcbiAgICAgICAgICB2YXIgc2luZ2xlID0gc2VsZi5jb25maWcubW9kZSA9PT0gXCJzaW5nbGVcIiAmJiAhc2VsZi5jb25maWcuZW5hYmxlVGltZTtcbiAgICAgICAgICB2YXIgcmFuZ2UgPSBzZWxmLmNvbmZpZy5tb2RlID09PSBcInJhbmdlXCIgJiYgc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA9PT0gMiAmJiAhc2VsZi5jb25maWcuZW5hYmxlVGltZTtcblxuICAgICAgICAgIGlmIChzaW5nbGUgfHwgcmFuZ2UpIHtcbiAgICAgICAgICAgIGZvY3VzQW5kQ2xvc2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0cmlnZ2VyQ2hhbmdlKCk7XG4gICAgICB9XG5cbiAgICAgIHZhciBDQUxMQkFDS1MgPSB7XG4gICAgICAgIGxvY2FsZTogW3NldHVwTG9jYWxlLCB1cGRhdGVXZWVrZGF5c10sXG4gICAgICAgIHNob3dNb250aHM6IFtidWlsZE1vbnRocywgc2V0Q2FsZW5kYXJXaWR0aCwgYnVpbGRXZWVrZGF5c11cbiAgICAgIH07XG5cbiAgICAgIGZ1bmN0aW9uIHNldChvcHRpb24sIHZhbHVlKSB7XG4gICAgICAgIGlmIChvcHRpb24gIT09IG51bGwgJiYgdHlwZW9mIG9wdGlvbiA9PT0gXCJvYmplY3RcIikgT2JqZWN0LmFzc2lnbihzZWxmLmNvbmZpZywgb3B0aW9uKTtlbHNlIHtcbiAgICAgICAgICBzZWxmLmNvbmZpZ1tvcHRpb25dID0gdmFsdWU7XG4gICAgICAgICAgaWYgKENBTExCQUNLU1tvcHRpb25dICE9PSB1bmRlZmluZWQpIENBTExCQUNLU1tvcHRpb25dLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgIHJldHVybiB4KCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5yZWRyYXcoKTtcbiAgICAgICAganVtcFRvRGF0ZSgpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXRTZWxlY3RlZERhdGUoaW5wdXREYXRlLCBmb3JtYXQpIHtcbiAgICAgICAgdmFyIGRhdGVzID0gW107XG4gICAgICAgIGlmIChpbnB1dERhdGUgaW5zdGFuY2VvZiBBcnJheSkgZGF0ZXMgPSBpbnB1dERhdGUubWFwKGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIHNlbGYucGFyc2VEYXRlKGQsIGZvcm1hdCk7XG4gICAgICAgIH0pO2Vsc2UgaWYgKGlucHV0RGF0ZSBpbnN0YW5jZW9mIERhdGUgfHwgdHlwZW9mIGlucHV0RGF0ZSA9PT0gXCJudW1iZXJcIikgZGF0ZXMgPSBbc2VsZi5wYXJzZURhdGUoaW5wdXREYXRlLCBmb3JtYXQpXTtlbHNlIGlmICh0eXBlb2YgaW5wdXREYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgc3dpdGNoIChzZWxmLmNvbmZpZy5tb2RlKSB7XG4gICAgICAgICAgICBjYXNlIFwic2luZ2xlXCI6XG4gICAgICAgICAgICBjYXNlIFwidGltZVwiOlxuICAgICAgICAgICAgICBkYXRlcyA9IFtzZWxmLnBhcnNlRGF0ZShpbnB1dERhdGUsIGZvcm1hdCldO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcIm11bHRpcGxlXCI6XG4gICAgICAgICAgICAgIGRhdGVzID0gaW5wdXREYXRlLnNwbGl0KHNlbGYuY29uZmlnLmNvbmp1bmN0aW9uKS5tYXAoZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIFwicmFuZ2VcIjpcbiAgICAgICAgICAgICAgZGF0ZXMgPSBpbnB1dERhdGUuc3BsaXQoc2VsZi5sMTBuLnJhbmdlU2VwYXJhdG9yKS5tYXAoZnVuY3Rpb24gKGRhdGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wYXJzZURhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBzZWxmLmNvbmZpZy5lcnJvckhhbmRsZXIobmV3IEVycm9yKFwiSW52YWxpZCBkYXRlIHN1cHBsaWVkOiBcIiArIEpTT04uc3RyaW5naWZ5KGlucHV0RGF0ZSkpKTtcbiAgICAgICAgc2VsZi5zZWxlY3RlZERhdGVzID0gZGF0ZXMuZmlsdGVyKGZ1bmN0aW9uIChkKSB7XG4gICAgICAgICAgcmV0dXJuIGQgaW5zdGFuY2VvZiBEYXRlICYmIGlzRW5hYmxlZChkLCBmYWxzZSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubW9kZSA9PT0gXCJyYW5nZVwiKSBzZWxmLnNlbGVjdGVkRGF0ZXMuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICAgICAgICAgIHJldHVybiBhLmdldFRpbWUoKSAtIGIuZ2V0VGltZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gc2V0RGF0ZShkYXRlLCB0cmlnZ2VyQ2hhbmdlLCBmb3JtYXQpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2UgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmb3JtYXQgPT09IHZvaWQgMCkge1xuICAgICAgICAgIGZvcm1hdCA9IHNlbGYuY29uZmlnLmRhdGVGb3JtYXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGF0ZSAhPT0gMCAmJiAhZGF0ZSB8fCBkYXRlIGluc3RhbmNlb2YgQXJyYXkgJiYgZGF0ZS5sZW5ndGggPT09IDApIHJldHVybiBzZWxmLmNsZWFyKHRyaWdnZXJDaGFuZ2UpO1xuICAgICAgICBzZXRTZWxlY3RlZERhdGUoZGF0ZSwgZm9ybWF0KTtcbiAgICAgICAgc2VsZi5zaG93VGltZUlucHV0ID0gc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDA7XG4gICAgICAgIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqID0gc2VsZi5zZWxlY3RlZERhdGVzWzBdO1xuICAgICAgICBzZWxmLnJlZHJhdygpO1xuICAgICAgICBqdW1wVG9EYXRlKCk7XG4gICAgICAgIHNldEhvdXJzRnJvbURhdGUoKTtcbiAgICAgICAgdXBkYXRlVmFsdWUodHJpZ2dlckNoYW5nZSk7XG4gICAgICAgIGlmICh0cmlnZ2VyQ2hhbmdlKSB0cmlnZ2VyRXZlbnQoXCJvbkNoYW5nZVwiKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gcGFyc2VEYXRlUnVsZXMoYXJyKSB7XG4gICAgICAgIHJldHVybiBhcnIuc2xpY2UoKS5tYXAoZnVuY3Rpb24gKHJ1bGUpIHtcbiAgICAgICAgICBpZiAodHlwZW9mIHJ1bGUgPT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIHJ1bGUgPT09IFwibnVtYmVyXCIgfHwgcnVsZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLnBhcnNlRGF0ZShydWxlLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICAgIH0gZWxzZSBpZiAocnVsZSAmJiB0eXBlb2YgcnVsZSA9PT0gXCJvYmplY3RcIiAmJiBydWxlLmZyb20gJiYgcnVsZS50bykgcmV0dXJuIHtcbiAgICAgICAgICAgIGZyb206IHNlbGYucGFyc2VEYXRlKHJ1bGUuZnJvbSwgdW5kZWZpbmVkKSxcbiAgICAgICAgICAgIHRvOiBzZWxmLnBhcnNlRGF0ZShydWxlLnRvLCB1bmRlZmluZWQpXG4gICAgICAgICAgfTtcblxuICAgICAgICAgIHJldHVybiBydWxlO1xuICAgICAgICB9KS5maWx0ZXIoZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICByZXR1cm4geDtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHNldHVwRGF0ZXMoKSB7XG4gICAgICAgIHNlbGYuc2VsZWN0ZWREYXRlcyA9IFtdO1xuICAgICAgICBzZWxmLm5vdyA9IHNlbGYucGFyc2VEYXRlKHNlbGYuY29uZmlnLm5vdykgfHwgbmV3IERhdGUoKTtcbiAgICAgICAgdmFyIHByZWxvYWRlZERhdGUgPSBzZWxmLmNvbmZpZy5kZWZhdWx0RGF0ZSB8fCAoc2VsZi5pbnB1dC5wbGFjZWhvbGRlci5sZW5ndGggPiAwICYmIHNlbGYuaW5wdXQudmFsdWUgPT09IHNlbGYuaW5wdXQucGxhY2Vob2xkZXIgPyBudWxsIDogc2VsZi5pbnB1dC52YWx1ZSk7XG4gICAgICAgIGlmIChwcmVsb2FkZWREYXRlKSBzZXRTZWxlY3RlZERhdGUocHJlbG9hZGVkRGF0ZSwgc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgIHZhciBpbml0aWFsRGF0ZSA9IHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPiAwID8gc2VsZi5zZWxlY3RlZERhdGVzWzBdIDogc2VsZi5jb25maWcubWluRGF0ZSAmJiBzZWxmLmNvbmZpZy5taW5EYXRlLmdldFRpbWUoKSA+IHNlbGYubm93LmdldFRpbWUoKSA/IHNlbGYuY29uZmlnLm1pbkRhdGUgOiBzZWxmLmNvbmZpZy5tYXhEYXRlICYmIHNlbGYuY29uZmlnLm1heERhdGUuZ2V0VGltZSgpIDwgc2VsZi5ub3cuZ2V0VGltZSgpID8gc2VsZi5jb25maWcubWF4RGF0ZSA6IHNlbGYubm93O1xuICAgICAgICBzZWxmLmN1cnJlbnRZZWFyID0gaW5pdGlhbERhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgc2VsZi5jdXJyZW50TW9udGggPSBpbml0aWFsRGF0ZS5nZXRNb250aCgpO1xuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDApIHNlbGYubGF0ZXN0U2VsZWN0ZWREYXRlT2JqID0gc2VsZi5zZWxlY3RlZERhdGVzWzBdO1xuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluVGltZSAhPT0gdW5kZWZpbmVkKSBzZWxmLmNvbmZpZy5taW5UaW1lID0gc2VsZi5wYXJzZURhdGUoc2VsZi5jb25maWcubWluVGltZSwgXCJIOmlcIik7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tYXhUaW1lICE9PSB1bmRlZmluZWQpIHNlbGYuY29uZmlnLm1heFRpbWUgPSBzZWxmLnBhcnNlRGF0ZShzZWxmLmNvbmZpZy5tYXhUaW1lLCBcIkg6aVwiKTtcbiAgICAgICAgc2VsZi5taW5EYXRlSGFzVGltZSA9ICEhc2VsZi5jb25maWcubWluRGF0ZSAmJiAoc2VsZi5jb25maWcubWluRGF0ZS5nZXRIb3VycygpID4gMCB8fCBzZWxmLmNvbmZpZy5taW5EYXRlLmdldE1pbnV0ZXMoKSA+IDAgfHwgc2VsZi5jb25maWcubWluRGF0ZS5nZXRTZWNvbmRzKCkgPiAwKTtcbiAgICAgICAgc2VsZi5tYXhEYXRlSGFzVGltZSA9ICEhc2VsZi5jb25maWcubWF4RGF0ZSAmJiAoc2VsZi5jb25maWcubWF4RGF0ZS5nZXRIb3VycygpID4gMCB8fCBzZWxmLmNvbmZpZy5tYXhEYXRlLmdldE1pbnV0ZXMoKSA+IDAgfHwgc2VsZi5jb25maWcubWF4RGF0ZS5nZXRTZWNvbmRzKCkgPiAwKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNlbGYsIFwic2hvd1RpbWVJbnB1dFwiLCB7XG4gICAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZi5fc2hvd1RpbWVJbnB1dDtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNldDogZnVuY3Rpb24gc2V0KGJvb2wpIHtcbiAgICAgICAgICAgIHNlbGYuX3Nob3dUaW1lSW5wdXQgPSBib29sO1xuICAgICAgICAgICAgaWYgKHNlbGYuY2FsZW5kYXJDb250YWluZXIpIHRvZ2dsZUNsYXNzKHNlbGYuY2FsZW5kYXJDb250YWluZXIsIFwic2hvd1RpbWVJbnB1dFwiLCBib29sKTtcbiAgICAgICAgICAgIHNlbGYuaXNPcGVuICYmIHBvc2l0aW9uQ2FsZW5kYXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBzZXR1cElucHV0cygpIHtcbiAgICAgICAgc2VsZi5pbnB1dCA9IHNlbGYuY29uZmlnLndyYXAgPyBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCJbZGF0YS1pbnB1dF1cIikgOiBlbGVtZW50O1xuXG4gICAgICAgIGlmICghc2VsZi5pbnB1dCkge1xuICAgICAgICAgIHNlbGYuY29uZmlnLmVycm9ySGFuZGxlcihuZXcgRXJyb3IoXCJJbnZhbGlkIGlucHV0IGVsZW1lbnQgc3BlY2lmaWVkXCIpKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmlucHV0Ll90eXBlID0gc2VsZi5pbnB1dC50eXBlO1xuICAgICAgICBzZWxmLmlucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgc2VsZi5pbnB1dC5jbGFzc0xpc3QuYWRkKFwiZmxhdHBpY2tyLWlucHV0XCIpO1xuICAgICAgICBzZWxmLl9pbnB1dCA9IHNlbGYuaW5wdXQ7XG5cbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLmFsdElucHV0KSB7XG4gICAgICAgICAgc2VsZi5hbHRJbnB1dCA9IGNyZWF0ZUVsZW1lbnQoc2VsZi5pbnB1dC5ub2RlTmFtZSwgc2VsZi5pbnB1dC5jbGFzc05hbWUgKyBcIiBcIiArIHNlbGYuY29uZmlnLmFsdElucHV0Q2xhc3MpO1xuICAgICAgICAgIHNlbGYuX2lucHV0ID0gc2VsZi5hbHRJbnB1dDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnBsYWNlaG9sZGVyID0gc2VsZi5pbnB1dC5wbGFjZWhvbGRlcjtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LmRpc2FibGVkID0gc2VsZi5pbnB1dC5kaXNhYmxlZDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnJlcXVpcmVkID0gc2VsZi5pbnB1dC5yZXF1aXJlZDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnRhYkluZGV4ID0gc2VsZi5pbnB1dC50YWJJbmRleDtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnR5cGUgPSBcInRleHRcIjtcbiAgICAgICAgICBzZWxmLmlucHV0LnNldEF0dHJpYnV0ZShcInR5cGVcIiwgXCJoaWRkZW5cIik7XG4gICAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5zdGF0aWMgJiYgc2VsZi5pbnB1dC5wYXJlbnROb2RlKSBzZWxmLmlucHV0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYuYWx0SW5wdXQsIHNlbGYuaW5wdXQubmV4dFNpYmxpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzZWxmLmNvbmZpZy5hbGxvd0lucHV0KSBzZWxmLl9pbnB1dC5zZXRBdHRyaWJ1dGUoXCJyZWFkb25seVwiLCBcInJlYWRvbmx5XCIpO1xuICAgICAgICBzZWxmLl9wb3NpdGlvbkVsZW1lbnQgPSBzZWxmLmNvbmZpZy5wb3NpdGlvbkVsZW1lbnQgfHwgc2VsZi5faW5wdXQ7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHNldHVwTW9iaWxlKCkge1xuICAgICAgICB2YXIgaW5wdXRUeXBlID0gc2VsZi5jb25maWcuZW5hYmxlVGltZSA/IHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgPyBcInRpbWVcIiA6IFwiZGF0ZXRpbWUtbG9jYWxcIiA6IFwiZGF0ZVwiO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0ID0gY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHNlbGYuaW5wdXQuY2xhc3NOYW1lICsgXCIgZmxhdHBpY2tyLW1vYmlsZVwiKTtcbiAgICAgICAgc2VsZi5tb2JpbGVJbnB1dC5zdGVwID0gc2VsZi5pbnB1dC5nZXRBdHRyaWJ1dGUoXCJzdGVwXCIpIHx8IFwiYW55XCI7XG4gICAgICAgIHNlbGYubW9iaWxlSW5wdXQudGFiSW5kZXggPSAxO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnR5cGUgPSBpbnB1dFR5cGU7XG4gICAgICAgIHNlbGYubW9iaWxlSW5wdXQuZGlzYWJsZWQgPSBzZWxmLmlucHV0LmRpc2FibGVkO1xuICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnJlcXVpcmVkID0gc2VsZi5pbnB1dC5yZXF1aXJlZDtcbiAgICAgICAgc2VsZi5tb2JpbGVJbnB1dC5wbGFjZWhvbGRlciA9IHNlbGYuaW5wdXQucGxhY2Vob2xkZXI7XG4gICAgICAgIHNlbGYubW9iaWxlRm9ybWF0U3RyID0gaW5wdXRUeXBlID09PSBcImRhdGV0aW1lLWxvY2FsXCIgPyBcIlktbS1kXFxcXFRIOmk6U1wiIDogaW5wdXRUeXBlID09PSBcImRhdGVcIiA/IFwiWS1tLWRcIiA6IFwiSDppOlNcIjtcblxuICAgICAgICBpZiAoc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0LmRlZmF1bHRWYWx1ZSA9IHNlbGYubW9iaWxlSW5wdXQudmFsdWUgPSBzZWxmLmZvcm1hdERhdGUoc2VsZi5zZWxlY3RlZERhdGVzWzBdLCBzZWxmLm1vYmlsZUZvcm1hdFN0cik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5jb25maWcubWluRGF0ZSkgc2VsZi5tb2JpbGVJbnB1dC5taW4gPSBzZWxmLmZvcm1hdERhdGUoc2VsZi5jb25maWcubWluRGF0ZSwgXCJZLW0tZFwiKTtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm1heERhdGUpIHNlbGYubW9iaWxlSW5wdXQubWF4ID0gc2VsZi5mb3JtYXREYXRlKHNlbGYuY29uZmlnLm1heERhdGUsIFwiWS1tLWRcIik7XG4gICAgICAgIHNlbGYuaW5wdXQudHlwZSA9IFwiaGlkZGVuXCI7XG4gICAgICAgIGlmIChzZWxmLmFsdElucHV0ICE9PSB1bmRlZmluZWQpIHNlbGYuYWx0SW5wdXQudHlwZSA9IFwiaGlkZGVuXCI7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoc2VsZi5pbnB1dC5wYXJlbnROb2RlKSBzZWxmLmlucHV0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHNlbGYubW9iaWxlSW5wdXQsIHNlbGYuaW5wdXQubmV4dFNpYmxpbmcpO1xuICAgICAgICB9IGNhdGNoIChfYSkge31cblxuICAgICAgICBiaW5kKHNlbGYubW9iaWxlSW5wdXQsIFwiY2hhbmdlXCIsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgc2VsZi5zZXREYXRlKGUudGFyZ2V0LnZhbHVlLCBmYWxzZSwgc2VsZi5tb2JpbGVGb3JtYXRTdHIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2hhbmdlXCIpO1xuICAgICAgICAgIHRyaWdnZXJFdmVudChcIm9uQ2xvc2VcIik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0b2dnbGUoZSkge1xuICAgICAgICBpZiAoc2VsZi5pc09wZW4gPT09IHRydWUpIHJldHVybiBzZWxmLmNsb3NlKCk7XG4gICAgICAgIHNlbGYub3BlbihlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdHJpZ2dlckV2ZW50KGV2ZW50LCBkYXRhKSB7XG4gICAgICAgIHZhciBob29rcyA9IHNlbGYuY29uZmlnW2V2ZW50XTtcblxuICAgICAgICBpZiAoaG9va3MgIT09IHVuZGVmaW5lZCAmJiBob29rcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGhvb2tzW2ldICYmIGkgPCBob29rcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaG9va3NbaV0oc2VsZi5zZWxlY3RlZERhdGVzLCBzZWxmLmlucHV0LnZhbHVlLCBzZWxmLCBkYXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZlbnQgPT09IFwib25DaGFuZ2VcIikge1xuICAgICAgICAgIHNlbGYuaW5wdXQuZGlzcGF0Y2hFdmVudChjcmVhdGVFdmVudChcImNoYW5nZVwiKSk7XG4gICAgICAgICAgc2VsZi5pbnB1dC5kaXNwYXRjaEV2ZW50KGNyZWF0ZUV2ZW50KFwiaW5wdXRcIikpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGNyZWF0ZUV2ZW50KG5hbWUpIHtcbiAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudChcIkV2ZW50XCIpO1xuICAgICAgICBlLmluaXRFdmVudChuYW1lLCB0cnVlLCB0cnVlKTtcbiAgICAgICAgcmV0dXJuIGU7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIGlzRGF0ZVNlbGVjdGVkKGRhdGUpIHtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzZWxmLnNlbGVjdGVkRGF0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBpZiAoY29tcGFyZURhdGVzKHNlbGYuc2VsZWN0ZWREYXRlc1tpXSwgZGF0ZSkgPT09IDApIHJldHVybiBcIlwiICsgaTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gaXNEYXRlSW5SYW5nZShkYXRlKSB7XG4gICAgICAgIGlmIChzZWxmLmNvbmZpZy5tb2RlICE9PSBcInJhbmdlXCIgfHwgc2VsZi5zZWxlY3RlZERhdGVzLmxlbmd0aCA8IDIpIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGNvbXBhcmVEYXRlcyhkYXRlLCBzZWxmLnNlbGVjdGVkRGF0ZXNbMF0pID49IDAgJiYgY29tcGFyZURhdGVzKGRhdGUsIHNlbGYuc2VsZWN0ZWREYXRlc1sxXSkgPD0gMDtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gdXBkYXRlTmF2aWdhdGlvbkN1cnJlbnRNb250aCgpIHtcbiAgICAgICAgaWYgKHNlbGYuY29uZmlnLm5vQ2FsZW5kYXIgfHwgc2VsZi5pc01vYmlsZSB8fCAhc2VsZi5tb250aE5hdikgcmV0dXJuO1xuICAgICAgICBzZWxmLnllYXJFbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uICh5ZWFyRWxlbWVudCwgaSkge1xuICAgICAgICAgIHZhciBkID0gbmV3IERhdGUoc2VsZi5jdXJyZW50WWVhciwgc2VsZi5jdXJyZW50TW9udGgsIDEpO1xuICAgICAgICAgIGQuc2V0TW9udGgoc2VsZi5jdXJyZW50TW9udGggKyBpKTtcbiAgICAgICAgICBzZWxmLm1vbnRoRWxlbWVudHNbaV0udGV4dENvbnRlbnQgPSBtb250aFRvU3RyKGQuZ2V0TW9udGgoKSwgc2VsZi5jb25maWcuc2hvcnRoYW5kQ3VycmVudE1vbnRoLCBzZWxmLmwxMG4pICsgXCIgXCI7XG4gICAgICAgICAgeWVhckVsZW1lbnQudmFsdWUgPSBkLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHNlbGYuX2hpZGVQcmV2TW9udGhBcnJvdyA9IHNlbGYuY29uZmlnLm1pbkRhdGUgIT09IHVuZGVmaW5lZCAmJiAoc2VsZi5jdXJyZW50WWVhciA9PT0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRGdWxsWWVhcigpID8gc2VsZi5jdXJyZW50TW9udGggPD0gc2VsZi5jb25maWcubWluRGF0ZS5nZXRNb250aCgpIDogc2VsZi5jdXJyZW50WWVhciA8IHNlbGYuY29uZmlnLm1pbkRhdGUuZ2V0RnVsbFllYXIoKSk7XG4gICAgICAgIHNlbGYuX2hpZGVOZXh0TW9udGhBcnJvdyA9IHNlbGYuY29uZmlnLm1heERhdGUgIT09IHVuZGVmaW5lZCAmJiAoc2VsZi5jdXJyZW50WWVhciA9PT0gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRGdWxsWWVhcigpID8gc2VsZi5jdXJyZW50TW9udGggKyAxID4gc2VsZi5jb25maWcubWF4RGF0ZS5nZXRNb250aCgpIDogc2VsZi5jdXJyZW50WWVhciA+IHNlbGYuY29uZmlnLm1heERhdGUuZ2V0RnVsbFllYXIoKSk7XG4gICAgICB9XG5cbiAgICAgIGZ1bmN0aW9uIHVwZGF0ZVZhbHVlKHRyaWdnZXJDaGFuZ2UpIHtcbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgPT09IHZvaWQgMCkge1xuICAgICAgICAgIHRyaWdnZXJDaGFuZ2UgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuc2VsZWN0ZWREYXRlcy5sZW5ndGggPT09IDApIHJldHVybiBzZWxmLmNsZWFyKHRyaWdnZXJDaGFuZ2UpO1xuXG4gICAgICAgIGlmIChzZWxmLm1vYmlsZUlucHV0ICE9PSB1bmRlZmluZWQgJiYgc2VsZi5tb2JpbGVGb3JtYXRTdHIpIHtcbiAgICAgICAgICBzZWxmLm1vYmlsZUlucHV0LnZhbHVlID0gc2VsZi5sYXRlc3RTZWxlY3RlZERhdGVPYmogIT09IHVuZGVmaW5lZCA/IHNlbGYuZm9ybWF0RGF0ZShzZWxmLmxhdGVzdFNlbGVjdGVkRGF0ZU9iaiwgc2VsZi5tb2JpbGVGb3JtYXRTdHIpIDogXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBqb2luQ2hhciA9IHNlbGYuY29uZmlnLm1vZGUgIT09IFwicmFuZ2VcIiA/IHNlbGYuY29uZmlnLmNvbmp1bmN0aW9uIDogc2VsZi5sMTBuLnJhbmdlU2VwYXJhdG9yO1xuICAgICAgICBzZWxmLmlucHV0LnZhbHVlID0gc2VsZi5zZWxlY3RlZERhdGVzLm1hcChmdW5jdGlvbiAoZE9iaikge1xuICAgICAgICAgIHJldHVybiBzZWxmLmZvcm1hdERhdGUoZE9iaiwgc2VsZi5jb25maWcuZGF0ZUZvcm1hdCk7XG4gICAgICAgIH0pLmpvaW4oam9pbkNoYXIpO1xuXG4gICAgICAgIGlmIChzZWxmLmFsdElucHV0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzZWxmLmFsdElucHV0LnZhbHVlID0gc2VsZi5zZWxlY3RlZERhdGVzLm1hcChmdW5jdGlvbiAoZE9iaikge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGYuZm9ybWF0RGF0ZShkT2JqLCBzZWxmLmNvbmZpZy5hbHRGb3JtYXQpO1xuICAgICAgICAgIH0pLmpvaW4oam9pbkNoYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRyaWdnZXJDaGFuZ2UgIT09IGZhbHNlKSB0cmlnZ2VyRXZlbnQoXCJvblZhbHVlVXBkYXRlXCIpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBvbk1vbnRoTmF2Q2xpY2soZSkge1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHZhciBpc1ByZXZNb250aCA9IHNlbGYucHJldk1vbnRoTmF2LmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICAgICAgdmFyIGlzTmV4dE1vbnRoID0gc2VsZi5uZXh0TW9udGhOYXYuY29udGFpbnMoZS50YXJnZXQpO1xuXG4gICAgICAgIGlmIChpc1ByZXZNb250aCB8fCBpc05leHRNb250aCkge1xuICAgICAgICAgIGNoYW5nZU1vbnRoKGlzUHJldk1vbnRoID8gLTEgOiAxKTtcbiAgICAgICAgfSBlbHNlIGlmIChzZWxmLnllYXJFbGVtZW50cy5pbmRleE9mKGUudGFyZ2V0KSA+PSAwKSB7XG4gICAgICAgICAgZS50YXJnZXQuc2VsZWN0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKFwiYXJyb3dVcFwiKSkge1xuICAgICAgICAgIHNlbGYuY2hhbmdlWWVhcihzZWxmLmN1cnJlbnRZZWFyICsgMSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKFwiYXJyb3dEb3duXCIpKSB7XG4gICAgICAgICAgc2VsZi5jaGFuZ2VZZWFyKHNlbGYuY3VycmVudFllYXIgLSAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiB0aW1lV3JhcHBlcihlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdmFyIGlzS2V5RG93biA9IGUudHlwZSA9PT0gXCJrZXlkb3duXCIsXG4gICAgICAgICAgICBpbnB1dCA9IGUudGFyZ2V0O1xuXG4gICAgICAgIGlmIChzZWxmLmFtUE0gIT09IHVuZGVmaW5lZCAmJiBlLnRhcmdldCA9PT0gc2VsZi5hbVBNKSB7XG4gICAgICAgICAgc2VsZi5hbVBNLnRleHRDb250ZW50ID0gc2VsZi5sMTBuLmFtUE1baW50KHNlbGYuYW1QTS50ZXh0Q29udGVudCA9PT0gc2VsZi5sMTBuLmFtUE1bMF0pXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBtaW4gPSBwYXJzZUZsb2F0KGlucHV0LmdldEF0dHJpYnV0ZShcImRhdGEtbWluXCIpKSxcbiAgICAgICAgICAgIG1heCA9IHBhcnNlRmxvYXQoaW5wdXQuZ2V0QXR0cmlidXRlKFwiZGF0YS1tYXhcIikpLFxuICAgICAgICAgICAgc3RlcCA9IHBhcnNlRmxvYXQoaW5wdXQuZ2V0QXR0cmlidXRlKFwiZGF0YS1zdGVwXCIpKSxcbiAgICAgICAgICAgIGN1clZhbHVlID0gcGFyc2VJbnQoaW5wdXQudmFsdWUsIDEwKSxcbiAgICAgICAgICAgIGRlbHRhID0gZS5kZWx0YSB8fCAoaXNLZXlEb3duID8gZS53aGljaCA9PT0gMzggPyAxIDogLTEgOiAwKTtcbiAgICAgICAgdmFyIG5ld1ZhbHVlID0gY3VyVmFsdWUgKyBzdGVwICogZGVsdGE7XG5cbiAgICAgICAgaWYgKHR5cGVvZiBpbnB1dC52YWx1ZSAhPT0gXCJ1bmRlZmluZWRcIiAmJiBpbnB1dC52YWx1ZS5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICB2YXIgaXNIb3VyRWxlbSA9IGlucHV0ID09PSBzZWxmLmhvdXJFbGVtZW50LFxuICAgICAgICAgICAgICBpc01pbnV0ZUVsZW0gPSBpbnB1dCA9PT0gc2VsZi5taW51dGVFbGVtZW50O1xuXG4gICAgICAgICAgaWYgKG5ld1ZhbHVlIDwgbWluKSB7XG4gICAgICAgICAgICBuZXdWYWx1ZSA9IG1heCArIG5ld1ZhbHVlICsgaW50KCFpc0hvdXJFbGVtKSArIChpbnQoaXNIb3VyRWxlbSkgJiYgaW50KCFzZWxmLmFtUE0pKTtcbiAgICAgICAgICAgIGlmIChpc01pbnV0ZUVsZW0pIGluY3JlbWVudE51bUlucHV0KHVuZGVmaW5lZCwgLTEsIHNlbGYuaG91ckVsZW1lbnQpO1xuICAgICAgICAgIH0gZWxzZSBpZiAobmV3VmFsdWUgPiBtYXgpIHtcbiAgICAgICAgICAgIG5ld1ZhbHVlID0gaW5wdXQgPT09IHNlbGYuaG91ckVsZW1lbnQgPyBuZXdWYWx1ZSAtIG1heCAtIGludCghc2VsZi5hbVBNKSA6IG1pbjtcbiAgICAgICAgICAgIGlmIChpc01pbnV0ZUVsZW0pIGluY3JlbWVudE51bUlucHV0KHVuZGVmaW5lZCwgMSwgc2VsZi5ob3VyRWxlbWVudCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHNlbGYuYW1QTSAmJiBpc0hvdXJFbGVtICYmIChzdGVwID09PSAxID8gbmV3VmFsdWUgKyBjdXJWYWx1ZSA9PT0gMjMgOiBNYXRoLmFicyhuZXdWYWx1ZSAtIGN1clZhbHVlKSA+IHN0ZXApKSB7XG4gICAgICAgICAgICBzZWxmLmFtUE0udGV4dENvbnRlbnQgPSBzZWxmLmwxMG4uYW1QTVtpbnQoc2VsZi5hbVBNLnRleHRDb250ZW50ID09PSBzZWxmLmwxMG4uYW1QTVswXSldO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlucHV0LnZhbHVlID0gcGFkKG5ld1ZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbml0KCk7XG4gICAgICByZXR1cm4gc2VsZjtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfZmxhdHBpY2tyKG5vZGVMaXN0LCBjb25maWcpIHtcbiAgICAgIHZhciBub2RlcyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKG5vZGVMaXN0KTtcbiAgICAgIHZhciBpbnN0YW5jZXMgPSBbXTtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgbm9kZSA9IG5vZGVzW2ldO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKG5vZGUuZ2V0QXR0cmlidXRlKFwiZGF0YS1mcC1vbWl0XCIpICE9PSBudWxsKSBjb250aW51ZTtcblxuICAgICAgICAgIGlmIChub2RlLl9mbGF0cGlja3IgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgbm9kZS5fZmxhdHBpY2tyLmRlc3Ryb3koKTtcblxuICAgICAgICAgICAgbm9kZS5fZmxhdHBpY2tyID0gdW5kZWZpbmVkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIG5vZGUuX2ZsYXRwaWNrciA9IEZsYXRwaWNrckluc3RhbmNlKG5vZGUsIGNvbmZpZyB8fCB7fSk7XG4gICAgICAgICAgaW5zdGFuY2VzLnB1c2gobm9kZS5fZmxhdHBpY2tyKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGluc3RhbmNlcy5sZW5ndGggPT09IDEgPyBpbnN0YW5jZXNbMF0gOiBpbnN0YW5jZXM7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBIVE1MRWxlbWVudCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgSFRNTENvbGxlY3Rpb24ucHJvdG90eXBlLmZsYXRwaWNrciA9IE5vZGVMaXN0LnByb3RvdHlwZS5mbGF0cGlja3IgPSBmdW5jdGlvbiAoY29uZmlnKSB7XG4gICAgICAgIHJldHVybiBfZmxhdHBpY2tyKHRoaXMsIGNvbmZpZyk7XG4gICAgICB9O1xuXG4gICAgICBIVE1MRWxlbWVudC5wcm90b3R5cGUuZmxhdHBpY2tyID0gZnVuY3Rpb24gKGNvbmZpZykge1xuICAgICAgICByZXR1cm4gX2ZsYXRwaWNrcihbdGhpc10sIGNvbmZpZyk7XG4gICAgICB9O1xuICAgIH1cblxuICAgIHZhciBmbGF0cGlja3IgPSBmdW5jdGlvbiBmbGF0cGlja3Ioc2VsZWN0b3IsIGNvbmZpZykge1xuICAgICAgaWYgKHNlbGVjdG9yIGluc3RhbmNlb2YgTm9kZUxpc3QpIHJldHVybiBfZmxhdHBpY2tyKHNlbGVjdG9yLCBjb25maWcpO2Vsc2UgaWYgKHR5cGVvZiBzZWxlY3RvciA9PT0gXCJzdHJpbmdcIikgcmV0dXJuIF9mbGF0cGlja3Iod2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpLCBjb25maWcpO1xuICAgICAgcmV0dXJuIF9mbGF0cGlja3IoW3NlbGVjdG9yXSwgY29uZmlnKTtcbiAgICB9O1xuXG4gICAgZmxhdHBpY2tyLmRlZmF1bHRDb25maWcgPSBkZWZhdWx0cztcbiAgICBmbGF0cGlja3IubDEwbnMgPSB7XG4gICAgICBlbjogT2JqZWN0LmFzc2lnbih7fSwgZW5nbGlzaCksXG4gICAgICBkZWZhdWx0OiBPYmplY3QuYXNzaWduKHt9LCBlbmdsaXNoKVxuICAgIH07XG5cbiAgICBmbGF0cGlja3IubG9jYWxpemUgPSBmdW5jdGlvbiAobDEwbikge1xuICAgICAgZmxhdHBpY2tyLmwxMG5zLmRlZmF1bHQgPSBPYmplY3QuYXNzaWduKHt9LCBmbGF0cGlja3IubDEwbnMuZGVmYXVsdCwgbDEwbik7XG4gICAgfTtcblxuICAgIGZsYXRwaWNrci5zZXREZWZhdWx0cyA9IGZ1bmN0aW9uIChjb25maWcpIHtcbiAgICAgIGZsYXRwaWNrci5kZWZhdWx0Q29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgZmxhdHBpY2tyLmRlZmF1bHRDb25maWcsIGNvbmZpZyk7XG4gICAgfTtcblxuICAgIGZsYXRwaWNrci5wYXJzZURhdGUgPSBjcmVhdGVEYXRlUGFyc2VyKHt9KTtcbiAgICBmbGF0cGlja3IuZm9ybWF0RGF0ZSA9IGNyZWF0ZURhdGVGb3JtYXR0ZXIoe30pO1xuICAgIGZsYXRwaWNrci5jb21wYXJlRGF0ZXMgPSBjb21wYXJlRGF0ZXM7XG5cbiAgICBpZiAodHlwZW9mIGpRdWVyeSAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgalF1ZXJ5LmZuLmZsYXRwaWNrciA9IGZ1bmN0aW9uIChjb25maWcpIHtcbiAgICAgICAgcmV0dXJuIF9mbGF0cGlja3IodGhpcywgY29uZmlnKTtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgRGF0ZS5wcm90b3R5cGUuZnBfaW5jciA9IGZ1bmN0aW9uIChkYXlzKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5nZXRGdWxsWWVhcigpLCB0aGlzLmdldE1vbnRoKCksIHRoaXMuZ2V0RGF0ZSgpICsgKHR5cGVvZiBkYXlzID09PSBcInN0cmluZ1wiID8gcGFyc2VJbnQoZGF5cywgMTApIDogZGF5cykpO1xuICAgIH07XG5cbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgd2luZG93LmZsYXRwaWNrciA9IGZsYXRwaWNrcjtcbiAgICB9XG5cbiAgICByZXR1cm4gZmxhdHBpY2tyO1xuXG59KSkpO1xuXG5cbi8qKiovIH0pLFxuLyogMjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXG52YXIgY29udGVudCA9IF9fd2VicGFja19yZXF1aXJlX18oMzApO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB3aW5kb3cudG9wLmRvY3VtZW50LmhlYWQgfTtcblxudmFyIHVwZGF0ZSA9IF9fd2VicGFja19yZXF1aXJlX18oMikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihmYWxzZSkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9mbGF0cGlja3IuY3NzXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS0xLTEhLi9mbGF0cGlja3IuY3NzXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59XG5cbi8qKiovIH0pLFxuLyogMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pLCBcIi5mbGF0cGlja3ItY2FsZW5kYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtvcGFjaXR5OjA7ZGlzcGxheTpub25lO3RleHQtYWxpZ246Y2VudGVyO3Zpc2liaWxpdHk6aGlkZGVuO3BhZGRpbmc6MDstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lO2RpcmVjdGlvbjpsdHI7Ym9yZGVyOjA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjVweDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDozMDcuODc1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tcy10b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTYsLTFweCAwIDAgI2U2ZTZlNiwwIDFweCAwICNlNmU2ZTYsMCAtMXB4IDAgI2U2ZTZlNiwwIDNweCAxM3B4IHJnYmEoMCwwLDAsLjA4KTtib3gtc2hhZG93OjFweCAwIDAgI2U2ZTZlNiwtMXB4IDAgMCAjZTZlNmU2LDAgMXB4IDAgI2U2ZTZlNiwwIC0xcHggMCAjZTZlNmU2LDAgM3B4IDEzcHggcmdiYSgwLDAsMCwuMDgpfS5mbGF0cGlja3ItY2FsZW5kYXIuaW5saW5lLC5mbGF0cGlja3ItY2FsZW5kYXIub3BlbntvcGFjaXR5OjE7bWF4LWhlaWdodDo2NDBweDt2aXNpYmlsaXR5OnZpc2libGV9LmZsYXRwaWNrci1jYWxlbmRhci5vcGVue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3otaW5kZXg6OTk5OTl9LmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlLm9wZW57LXdlYmtpdC1hbmltYXRpb246ZnBGYWRlSW5Eb3duIC4zcyBjdWJpYy1iZXppZXIoLjIzLDEsLjMyLDEpO2FuaW1hdGlvbjpmcEZhZGVJbkRvd24gLjNzIGN1YmljLWJlemllciguMjMsMSwuMzIsMSl9LmZsYXRwaWNrci1jYWxlbmRhci5pbmxpbmV7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MnB4fS5mbGF0cGlja3ItY2FsZW5kYXIuc3RhdGlje3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyAycHgpfS5mbGF0cGlja3ItY2FsZW5kYXIuc3RhdGljLm9wZW57ei1pbmRleDo5OTk7ZGlzcGxheTpibG9ja30uZmxhdHBpY2tyLWNhbGVuZGFyLm11bHRpTW9udGggLmZsYXRwaWNrci1kYXlzIC5kYXlDb250YWluZXI6bnRoLWNoaWxkKG4rMSkgLmZsYXRwaWNrci1kYXkuaW5SYW5nZTpudGgtY2hpbGQoN24rNyl7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmZsYXRwaWNrci1jYWxlbmRhci5tdWx0aU1vbnRoIC5mbGF0cGlja3ItZGF5cyAuZGF5Q29udGFpbmVyOm50aC1jaGlsZChuKzIpIC5mbGF0cGlja3ItZGF5LmluUmFuZ2U6bnRoLWNoaWxkKDduKzEpey13ZWJraXQtYm94LXNoYWRvdzotMnB4IDAgMCAjZTZlNmU2LDVweCAwIDAgI2U2ZTZlNjtib3gtc2hhZG93Oi0ycHggMCAwICNlNmU2ZTYsNXB4IDAgMCAjZTZlNmU2fS5mbGF0cGlja3ItY2FsZW5kYXIgLmhhc1RpbWUgLmRheUNvbnRhaW5lciwuZmxhdHBpY2tyLWNhbGVuZGFyIC5oYXNXZWVrcyAuZGF5Q29udGFpbmVye2JvcmRlci1ib3R0b206MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uZmxhdHBpY2tyLWNhbGVuZGFyIC5oYXNXZWVrcyAuZGF5Q29udGFpbmVye2JvcmRlci1sZWZ0OjB9LmZsYXRwaWNrci1jYWxlbmRhci5zaG93VGltZUlucHV0Lmhhc1RpbWUgLmZsYXRwaWNrci10aW1le2hlaWdodDo0MHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5ub0NhbGVuZGFyLmhhc1RpbWUgLmZsYXRwaWNrci10aW1le2hlaWdodDphdXRvfS5mbGF0cGlja3ItY2FsZW5kYXI6YWZ0ZXIsLmZsYXRwaWNrci1jYWxlbmRhcjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jaztwb2ludGVyLWV2ZW50czpub25lO2JvcmRlcjpzb2xpZCB0cmFuc3BhcmVudDtjb250ZW50OlxcXCJcXFwiO2hlaWdodDowO3dpZHRoOjA7bGVmdDoyMnB4fS5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmFmdGVyLC5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmJlZm9yZXtsZWZ0OmF1dG87cmlnaHQ6MjJweH0uZmxhdHBpY2tyLWNhbGVuZGFyOmJlZm9yZXtib3JkZXItd2lkdGg6NXB4O21hcmdpbjowIC01cHh9LmZsYXRwaWNrci1jYWxlbmRhcjphZnRlcntib3JkZXItd2lkdGg6NHB4O21hcmdpbjowIC00cHh9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd1RvcDphZnRlciwuZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZXtib3R0b206MTAwJX0uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZXtib3JkZXItYm90dG9tLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd1RvcDphZnRlcntib3JkZXItYm90dG9tLWNvbG9yOiNmZmZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlciwuZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93Qm90dG9tOmJlZm9yZXt0b3A6MTAwJX0uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93Qm90dG9tOmJlZm9yZXtib3JkZXItdG9wLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlcntib3JkZXItdG9wLWNvbG9yOiNmZmZ9LmZsYXRwaWNrci1jYWxlbmRhcjpmb2N1c3tvdXRsaW5lOjB9LmZsYXRwaWNrci13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5mbGF0cGlja3ItbW9udGhze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1tb250aHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsLjkpO2ZpbGw6cmdiYSgwLDAsMCwuOSk7aGVpZ2h0OjI4cHg7bGluZS1oZWlnaHQ6MTt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MX0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGgsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoe3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xpbmUtaGVpZ2h0OjE2cHg7aGVpZ2h0OjI4cHg7cGFkZGluZzoxMHB4O3otaW5kZXg6Mztjb2xvcjpyZ2JhKDAsMCwwLC45KTtmaWxsOnJnYmEoMCwwLDAsLjkpfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5kaXNhYmxlZCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZGlzYWJsZWR7ZGlzcGxheTpub25lfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCBpLC5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aCBpe3Bvc2l0aW9uOnJlbGF0aXZlfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5mbGF0cGlja3ItcHJldi1tb250aCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLXByZXYtbW9udGh7bGVmdDowfS5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aC5mbGF0cGlja3ItbmV4dC1tb250aCwuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLW5leHQtbW9udGh7cmlnaHQ6MH0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGg6aG92ZXIsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoOmhvdmVye2NvbG9yOiM5NTllYTl9LmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoOmhvdmVyIHN2ZywuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGg6aG92ZXIgc3Zne2ZpbGw6I2Y2NDc0N30uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnLC5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aCBzdmd7d2lkdGg6MTRweDtoZWlnaHQ6MTRweH0uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnIHBhdGgsLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoIHN2ZyBwYXRoey13ZWJraXQtdHJhbnNpdGlvbjpmaWxsIC4xczt0cmFuc2l0aW9uOmZpbGwgLjFzO2ZpbGw6aW5oZXJpdH0ubnVtSW5wdXRXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDphdXRvfS5udW1JbnB1dFdyYXBwZXIgaW5wdXQsLm51bUlucHV0V3JhcHBlciBzcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5udW1JbnB1dFdyYXBwZXIgaW5wdXR7d2lkdGg6MTAwJX0ubnVtSW5wdXRXcmFwcGVyIGlucHV0OjotbXMtY2xlYXJ7ZGlzcGxheTpub25lfS5udW1JbnB1dFdyYXBwZXIgc3Bhbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3dpZHRoOjE0cHg7cGFkZGluZzowIDRweCAwIDJweDtoZWlnaHQ6NTAlO2xpbmUtaGVpZ2h0OjUwJTtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDU3LDU3LDU3LC4xNSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5udW1JbnB1dFdyYXBwZXIgc3Bhbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEpfS5udW1JbnB1dFdyYXBwZXIgc3BhbjphY3RpdmV7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yKX0ubnVtSW5wdXRXcmFwcGVyIHNwYW46YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCJcXFwiO3Bvc2l0aW9uOmFic29sdXRlfS5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1Vwe3RvcDowO2JvcmRlci1ib3R0b206MH0ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dVcDphZnRlcntib3JkZXItbGVmdDo0cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjRweCBzb2xpZCByZ2JhKDU3LDU3LDU3LC42KTt0b3A6MjYlfS5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd257dG9wOjUwJX0ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duOmFmdGVye2JvcmRlci1sZWZ0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NHB4IHNvbGlkIHJnYmEoNTcsNTcsNTcsLjYpO3RvcDo0MCV9Lm51bUlucHV0V3JhcHBlciBzcGFuIHN2Z3t3aWR0aDppbmhlcml0O2hlaWdodDphdXRvfS5udW1JbnB1dFdyYXBwZXIgc3BhbiBzdmcgcGF0aHtmaWxsOnJnYmEoMCwwLDAsLjUpfS5udW1JbnB1dFdyYXBwZXI6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4wNSl9Lm51bUlucHV0V3JhcHBlcjpob3ZlciBzcGFue29wYWNpdHk6MX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGh7Zm9udC1zaXplOjEzNSU7bGluZS1oZWlnaHQ6aW5oZXJpdDtmb250LXdlaWdodDozMDA7Y29sb3I6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo3NSU7bGVmdDoxMi41JTtwYWRkaW5nOjYuMTZweCAwIDA7bGluZS1oZWlnaHQ6MTtoZWlnaHQ6MjhweDtkaXNwbGF5OmlubGluZS1ibG9jazt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBzcGFuLmN1ci1tb250aHtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0Oi41Y2g7cGFkZGluZzowfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBzcGFuLmN1ci1tb250aDpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjA1KX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLm51bUlucHV0V3JhcHBlcnt3aWR0aDo2Y2g7d2lkdGg6N2NoXFxcXDA7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwOmFmdGVye2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwuOSl9LmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd246YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjpyZ2JhKDAsMCwwLC45KX0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6aW5oZXJpdDtjdXJzb3I6dGV4dDtwYWRkaW5nOjAgMCAwIC41Y2g7bWFyZ2luOjA7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6aW5oZXJpdDtoZWlnaHQ6YXV0bztib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dmVydGljYWwtYWxpZ246aW5pdGlhbH0uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXI6Zm9jdXN7b3V0bGluZTowfS5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhcltkaXNhYmxlZF0sLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIGlucHV0LmN1ci15ZWFyW2Rpc2FibGVkXTpob3Zlcntmb250LXNpemU6MTAwJTtjb2xvcjpyZ2JhKDAsMCwwLC41KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmV9LmZsYXRwaWNrci13ZWVrZGF5c3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RleHQtYWxpZ246Y2VudGVyO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDoyOHB4fS5mbGF0cGlja3Itd2Vla2RheXMsLmZsYXRwaWNrci13ZWVrZGF5cyAuZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0uZmxhdHBpY2tyLXdlZWtkYXlzIC5mbGF0cGlja3Itd2Vla2RheWNvbnRhaW5lcixzcGFuLmZsYXRwaWNrci13ZWVrZGF5ey13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MX1zcGFuLmZsYXRwaWNrci13ZWVrZGF5e2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZTo5MCU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjpyZ2JhKDAsMCwwLC41NCk7bGluZS1oZWlnaHQ6MTttYXJnaW46MDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtd2VpZ2h0OmJvbGRlcn0uZGF5Q29udGFpbmVyLC5mbGF0cGlja3Itd2Vla3N7cGFkZGluZzoxcHggMCAwfS5mbGF0cGlja3ItZGF5c3twb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpzdGFydDstd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt3aWR0aDozMDcuODc1cHh9LmZsYXRwaWNrci1kYXlzOmZvY3Vze291dGxpbmU6MH0uZGF5Q29udGFpbmVye3BhZGRpbmc6MDtvdXRsaW5lOjA7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjMwNy44NzVweDttaW4td2lkdGg6MzA3Ljg3NXB4O21heC13aWR0aDozMDcuODc1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDstbXMtZmxleC13cmFwOndyYXA7LW1zLWZsZXgtcGFjazpqdXN0aWZ5Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfS5kYXlDb250YWluZXIrLmRheUNvbnRhaW5lcnstd2Via2l0LWJveC1zaGFkb3c6LTFweCAwIDAgI2U2ZTZlNjtib3gtc2hhZG93Oi0xcHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci1kYXl7YmFja2dyb3VuZDpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxNTBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6IzM5MzkzOTtjdXJzb3I6cG9pbnRlcjtmb250LXdlaWdodDo0MDA7d2lkdGg6MTQuMjg1NzE0MyU7LXdlYmtpdC1mbGV4LWJhc2lzOjE0LjI4NTcxNDMlOy1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjE0LjI4NTcxNDMlO2ZsZXgtYmFzaXM6MTQuMjg1NzE0MyU7bWF4LXdpZHRoOjM5cHg7aGVpZ2h0OjM5cHg7bGluZS1oZWlnaHQ6MzlweDttYXJnaW46MDtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0uZmxhdHBpY2tyLWRheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS50b2RheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheTpmb2N1cywuZmxhdHBpY2tyLWRheS5uZXh0TW9udGhEYXk6aG92ZXIsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5LmluUmFuZ2UsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5LnRvZGF5LmluUmFuZ2UsLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5OmZvY3VzLC5mbGF0cGlja3ItZGF5LnByZXZNb250aERheTpob3ZlciwuZmxhdHBpY2tyLWRheS50b2RheS5pblJhbmdlLC5mbGF0cGlja3ItZGF5OmZvY3VzLC5mbGF0cGlja3ItZGF5OmhvdmVye2N1cnNvcjpwb2ludGVyO291dGxpbmU6MDtiYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOiNlNmU2ZTZ9LmZsYXRwaWNrci1kYXkudG9kYXl7Ym9yZGVyLWNvbG9yOiM5NTllYTl9LmZsYXRwaWNrci1kYXkudG9kYXk6Zm9jdXMsLmZsYXRwaWNrci1kYXkudG9kYXk6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM5NTllYTk7YmFja2dyb3VuZDojOTU5ZWE5O2NvbG9yOiNmZmZ9LmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UsLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSwuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5uZXh0TW9udGhEYXksLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UucHJldk1vbnRoRGF5LC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmZvY3VzLC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmhvdmVyLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmluUmFuZ2UsLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQubmV4dE1vbnRoRGF5LC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLnByZXZNb250aERheSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpmb2N1cywuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpob3ZlciwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuaW5SYW5nZSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLm5leHRNb250aERheSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnByZXZNb250aERheSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlOmZvY3VzLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2U6aG92ZXJ7YmFja2dyb3VuZDojNTY5ZmY3Oy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojNTY5ZmY3fS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnN0YXJ0UmFuZ2UsLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQuc3RhcnRSYW5nZSwuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnN0YXJ0UmFuZ2V7Ym9yZGVyLXJhZGl1czo1MHB4IDAgMCA1MHB4fS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuZW5kUmFuZ2V7Ym9yZGVyLXJhZGl1czowIDUwcHggNTBweCAwfS5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnN0YXJ0UmFuZ2UrLmVuZFJhbmdlOm5vdCg6bnRoLWNoaWxkKDduKzEpKSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlKy5lbmRSYW5nZTpub3QoOm50aC1jaGlsZCg3bisxKSksLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zdGFydFJhbmdlKy5lbmRSYW5nZTpub3QoOm50aC1jaGlsZCg3bisxKSl7LXdlYmtpdC1ib3gtc2hhZG93Oi0xMHB4IDAgMCAjNTY5ZmY3O2JveC1zaGFkb3c6LTEwcHggMCAwICM1NjlmZjd9LmZsYXRwaWNrci1kYXkuZW5kUmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZSwuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlLmVuZFJhbmdlLC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZXtib3JkZXItcmFkaXVzOjUwcHh9LmZsYXRwaWNrci1kYXkuaW5SYW5nZXtib3JkZXItcmFkaXVzOjA7LXdlYmtpdC1ib3gtc2hhZG93Oi01cHggMCAwICNlNmU2ZTYsNXB4IDAgMCAjZTZlNmU2O2JveC1zaGFkb3c6LTVweCAwIDAgI2U2ZTZlNiw1cHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci1kYXkuZGlzYWJsZWQsLmZsYXRwaWNrci1kYXkuZGlzYWJsZWQ6aG92ZXIsLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5LC5mbGF0cGlja3ItZGF5Lm5vdEFsbG93ZWQsLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZC5uZXh0TW9udGhEYXksLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZC5wcmV2TW9udGhEYXksLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5e2NvbG9yOnJnYmEoNTcsNTcsNTcsLjMpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpkZWZhdWx0fS5mbGF0cGlja3ItZGF5LmRpc2FibGVkLC5mbGF0cGlja3ItZGF5LmRpc2FibGVkOmhvdmVye2N1cnNvcjpub3QtYWxsb3dlZDtjb2xvcjpyZ2JhKDU3LDU3LDU3LC4xKX0uZmxhdHBpY2tyLWRheS53ZWVrLnNlbGVjdGVke2JvcmRlci1yYWRpdXM6MDstd2Via2l0LWJveC1zaGFkb3c6LTVweCAwIDAgIzU2OWZmNyw1cHggMCAwICM1NjlmZjc7Ym94LXNoYWRvdzotNXB4IDAgMCAjNTY5ZmY3LDVweCAwIDAgIzU2OWZmN30uZmxhdHBpY2tyLWRheS5oaWRkZW57dmlzaWJpbGl0eTpoaWRkZW59LnJhbmdlTW9kZSAuZmxhdHBpY2tyLWRheXttYXJnaW4tdG9wOjFweH0uZmxhdHBpY2tyLXdlZWt3cmFwcGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0OmxlZnR9LmZsYXRwaWNrci13ZWVrd3JhcHBlciAuZmxhdHBpY2tyLXdlZWtze3BhZGRpbmc6MCAxMnB4Oy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTY7Ym94LXNoYWRvdzoxcHggMCAwICNlNmU2ZTZ9LmZsYXRwaWNrci13ZWVrd3JhcHBlciAuZmxhdHBpY2tyLXdlZWtkYXl7ZmxvYXQ6bm9uZTt3aWR0aDoxMDAlO2xpbmUtaGVpZ2h0OjI4cHh9LmZsYXRwaWNrci13ZWVrd3JhcHBlciBzcGFuLmZsYXRwaWNrci1kYXksLmZsYXRwaWNrci13ZWVrd3JhcHBlciBzcGFuLmZsYXRwaWNrci1kYXk6aG92ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO2NvbG9yOnJnYmEoNTcsNTcsNTcsLjMpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y3Vyc29yOmRlZmF1bHQ7Ym9yZGVyOm5vbmV9LmZsYXRwaWNrci1pbm5lckNvbnRhaW5lcntkaXNwbGF5OmJsb2NrO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVufS5mbGF0cGlja3ItaW5uZXJDb250YWluZXIsLmZsYXRwaWNrci1yQ29udGFpbmVyey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uZmxhdHBpY2tyLXJDb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzowfS5mbGF0cGlja3ItdGltZXt0ZXh0LWFsaWduOmNlbnRlcjtvdXRsaW5lOjA7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtsaW5lLWhlaWdodDo0MHB4O21heC1oZWlnaHQ6NDBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LmZsYXRwaWNrci10aW1lOmFmdGVye2NvbnRlbnQ6XFxcIlxcXCI7ZGlzcGxheTp0YWJsZTtjbGVhcjpib3RofS5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyey13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTt3aWR0aDo0MCU7aGVpZ2h0OjQwcHg7ZmxvYXQ6bGVmdH0uZmxhdHBpY2tyLXRpbWUgLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXA6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjojMzkzOTM5fS5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duOmFmdGVye2JvcmRlci10b3AtY29sb3I6IzM5MzkzOX0uZmxhdHBpY2tyLXRpbWUuaGFzU2Vjb25kcyAubnVtSW5wdXRXcmFwcGVye3dpZHRoOjI2JX0uZmxhdHBpY2tyLXRpbWUudGltZTI0aHIgLm51bUlucHV0V3JhcHBlcnt3aWR0aDo0OSV9LmZsYXRwaWNrci10aW1lIGlucHV0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjojMzkzOTM5O2ZvbnQtc2l6ZToxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uZmxhdHBpY2tyLXRpbWUgaW5wdXQuZmxhdHBpY2tyLWhvdXJ7Zm9udC13ZWlnaHQ6NzAwfS5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3ItbWludXRlLC5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3Itc2Vjb25ke2ZvbnQtd2VpZ2h0OjQwMH0uZmxhdHBpY2tyLXRpbWUgaW5wdXQ6Zm9jdXN7b3V0bGluZTowO2JvcmRlcjowfS5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLWFtLXBtLC5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLXRpbWUtc2VwYXJhdG9ye2hlaWdodDppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0OmxlZnQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjojMzkzOTM5O2ZvbnQtd2VpZ2h0OjcwMDt3aWR0aDoyJTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcn0uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbXtvdXRsaW5lOjA7d2lkdGg6MTglO2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtd2VpZ2h0OjQwMH0uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbTpmb2N1cywuZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbTpob3ZlciwuZmxhdHBpY2tyLXRpbWUgaW5wdXQ6Zm9jdXMsLmZsYXRwaWNrci10aW1lIGlucHV0OmhvdmVye2JhY2tncm91bmQ6I2YzZjNmM30uZmxhdHBpY2tyLWlucHV0W3JlYWRvbmx5XXtjdXJzb3I6cG9pbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgZnBGYWRlSW5Eb3duezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZwRmFkZUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19XCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuXG5cbi8qKiovIH0pXG4vKioqKioqLyBdKTtcbn0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YWdjLWJhc2ljLmJ1bmRsZS5qcy5tYXAiLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNi5hcnJheS5mb3ItZWFjaCcpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuQXJyYXkuZm9yRWFjaDtcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM3LmFycmF5LmluY2x1ZGVzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5BcnJheS5pbmNsdWRlcztcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM2Lm51bWJlci5pcy1pbnRlZ2VyJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5OdW1iZXIuaXNJbnRlZ2VyO1xuIiwicmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczYuc3RyaW5nLnN0YXJ0cy13aXRoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5TdHJpbmcuc3RhcnRzV2l0aDtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICh0eXBlb2YgaXQgIT0gJ2Z1bmN0aW9uJykgdGhyb3cgVHlwZUVycm9yKGl0ICsgJyBpcyBub3QgYSBmdW5jdGlvbiEnKTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsIi8vIDIyLjEuMy4zMSBBcnJheS5wcm90b3R5cGVbQEB1bnNjb3BhYmxlc11cbnZhciBVTlNDT1BBQkxFUyA9IHJlcXVpcmUoJy4vX3drcycpKCd1bnNjb3BhYmxlcycpO1xudmFyIEFycmF5UHJvdG8gPSBBcnJheS5wcm90b3R5cGU7XG5pZiAoQXJyYXlQcm90b1tVTlNDT1BBQkxFU10gPT0gdW5kZWZpbmVkKSByZXF1aXJlKCcuL19oaWRlJykoQXJyYXlQcm90bywgVU5TQ09QQUJMRVMsIHt9KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICBBcnJheVByb3RvW1VOU0NPUEFCTEVTXVtrZXldID0gdHJ1ZTtcbn07XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICghaXNPYmplY3QoaXQpKSB0aHJvdyBUeXBlRXJyb3IoaXQgKyAnIGlzIG5vdCBhbiBvYmplY3QhJyk7XG4gIHJldHVybiBpdDtcbn07XG4iLCIvLyBmYWxzZSAtPiBBcnJheSNpbmRleE9mXG4vLyB0cnVlICAtPiBBcnJheSNpbmNsdWRlc1xudmFyIHRvSU9iamVjdCA9IHJlcXVpcmUoJy4vX3RvLWlvYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIHRvQWJzb2x1dGVJbmRleCA9IHJlcXVpcmUoJy4vX3RvLWFic29sdXRlLWluZGV4Jyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChJU19JTkNMVURFUykge1xuICByZXR1cm4gZnVuY3Rpb24gKCR0aGlzLCBlbCwgZnJvbUluZGV4KSB7XG4gICAgdmFyIE8gPSB0b0lPYmplY3QoJHRoaXMpO1xuICAgIHZhciBsZW5ndGggPSB0b0xlbmd0aChPLmxlbmd0aCk7XG4gICAgdmFyIGluZGV4ID0gdG9BYnNvbHV0ZUluZGV4KGZyb21JbmRleCwgbGVuZ3RoKTtcbiAgICB2YXIgdmFsdWU7XG4gICAgLy8gQXJyYXkjaW5jbHVkZXMgdXNlcyBTYW1lVmFsdWVaZXJvIGVxdWFsaXR5IGFsZ29yaXRobVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgICBpZiAoSVNfSU5DTFVERVMgJiYgZWwgIT0gZWwpIHdoaWxlIChsZW5ndGggPiBpbmRleCkge1xuICAgICAgdmFsdWUgPSBPW2luZGV4KytdO1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgICAgaWYgKHZhbHVlICE9IHZhbHVlKSByZXR1cm4gdHJ1ZTtcbiAgICAvLyBBcnJheSNpbmRleE9mIGlnbm9yZXMgaG9sZXMsIEFycmF5I2luY2x1ZGVzIC0gbm90XG4gICAgfSBlbHNlIGZvciAoO2xlbmd0aCA+IGluZGV4OyBpbmRleCsrKSBpZiAoSVNfSU5DTFVERVMgfHwgaW5kZXggaW4gTykge1xuICAgICAgaWYgKE9baW5kZXhdID09PSBlbCkgcmV0dXJuIElTX0lOQ0xVREVTIHx8IGluZGV4IHx8IDA7XG4gICAgfSByZXR1cm4gIUlTX0lOQ0xVREVTICYmIC0xO1xuICB9O1xufTtcbiIsIi8vIDAgLT4gQXJyYXkjZm9yRWFjaFxuLy8gMSAtPiBBcnJheSNtYXBcbi8vIDIgLT4gQXJyYXkjZmlsdGVyXG4vLyAzIC0+IEFycmF5I3NvbWVcbi8vIDQgLT4gQXJyYXkjZXZlcnlcbi8vIDUgLT4gQXJyYXkjZmluZFxuLy8gNiAtPiBBcnJheSNmaW5kSW5kZXhcbnZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbnZhciBJT2JqZWN0ID0gcmVxdWlyZSgnLi9faW9iamVjdCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuL190by1sZW5ndGgnKTtcbnZhciBhc2MgPSByZXF1aXJlKCcuL19hcnJheS1zcGVjaWVzLWNyZWF0ZScpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoVFlQRSwgJGNyZWF0ZSkge1xuICB2YXIgSVNfTUFQID0gVFlQRSA9PSAxO1xuICB2YXIgSVNfRklMVEVSID0gVFlQRSA9PSAyO1xuICB2YXIgSVNfU09NRSA9IFRZUEUgPT0gMztcbiAgdmFyIElTX0VWRVJZID0gVFlQRSA9PSA0O1xuICB2YXIgSVNfRklORF9JTkRFWCA9IFRZUEUgPT0gNjtcbiAgdmFyIE5PX0hPTEVTID0gVFlQRSA9PSA1IHx8IElTX0ZJTkRfSU5ERVg7XG4gIHZhciBjcmVhdGUgPSAkY3JlYXRlIHx8IGFzYztcbiAgcmV0dXJuIGZ1bmN0aW9uICgkdGhpcywgY2FsbGJhY2tmbiwgdGhhdCkge1xuICAgIHZhciBPID0gdG9PYmplY3QoJHRoaXMpO1xuICAgIHZhciBzZWxmID0gSU9iamVjdChPKTtcbiAgICB2YXIgZiA9IGN0eChjYWxsYmFja2ZuLCB0aGF0LCAzKTtcbiAgICB2YXIgbGVuZ3RoID0gdG9MZW5ndGgoc2VsZi5sZW5ndGgpO1xuICAgIHZhciBpbmRleCA9IDA7XG4gICAgdmFyIHJlc3VsdCA9IElTX01BUCA/IGNyZWF0ZSgkdGhpcywgbGVuZ3RoKSA6IElTX0ZJTFRFUiA/IGNyZWF0ZSgkdGhpcywgMCkgOiB1bmRlZmluZWQ7XG4gICAgdmFyIHZhbCwgcmVzO1xuICAgIGZvciAoO2xlbmd0aCA+IGluZGV4OyBpbmRleCsrKSBpZiAoTk9fSE9MRVMgfHwgaW5kZXggaW4gc2VsZikge1xuICAgICAgdmFsID0gc2VsZltpbmRleF07XG4gICAgICByZXMgPSBmKHZhbCwgaW5kZXgsIE8pO1xuICAgICAgaWYgKFRZUEUpIHtcbiAgICAgICAgaWYgKElTX01BUCkgcmVzdWx0W2luZGV4XSA9IHJlczsgICAvLyBtYXBcbiAgICAgICAgZWxzZSBpZiAocmVzKSBzd2l0Y2ggKFRZUEUpIHtcbiAgICAgICAgICBjYXNlIDM6IHJldHVybiB0cnVlOyAgICAgICAgICAgICAvLyBzb21lXG4gICAgICAgICAgY2FzZSA1OiByZXR1cm4gdmFsOyAgICAgICAgICAgICAgLy8gZmluZFxuICAgICAgICAgIGNhc2UgNjogcmV0dXJuIGluZGV4OyAgICAgICAgICAgIC8vIGZpbmRJbmRleFxuICAgICAgICAgIGNhc2UgMjogcmVzdWx0LnB1c2godmFsKTsgICAgICAgIC8vIGZpbHRlclxuICAgICAgICB9IGVsc2UgaWYgKElTX0VWRVJZKSByZXR1cm4gZmFsc2U7IC8vIGV2ZXJ5XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBJU19GSU5EX0lOREVYID8gLTEgOiBJU19TT01FIHx8IElTX0VWRVJZID8gSVNfRVZFUlkgOiByZXN1bHQ7XG4gIH07XG59O1xuIiwidmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgaXNBcnJheSA9IHJlcXVpcmUoJy4vX2lzLWFycmF5Jyk7XG52YXIgU1BFQ0lFUyA9IHJlcXVpcmUoJy4vX3drcycpKCdzcGVjaWVzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gIHZhciBDO1xuICBpZiAoaXNBcnJheShvcmlnaW5hbCkpIHtcbiAgICBDID0gb3JpZ2luYWwuY29uc3RydWN0b3I7XG4gICAgLy8gY3Jvc3MtcmVhbG0gZmFsbGJhY2tcbiAgICBpZiAodHlwZW9mIEMgPT0gJ2Z1bmN0aW9uJyAmJiAoQyA9PT0gQXJyYXkgfHwgaXNBcnJheShDLnByb3RvdHlwZSkpKSBDID0gdW5kZWZpbmVkO1xuICAgIGlmIChpc09iamVjdChDKSkge1xuICAgICAgQyA9IENbU1BFQ0lFU107XG4gICAgICBpZiAoQyA9PT0gbnVsbCkgQyA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH0gcmV0dXJuIEMgPT09IHVuZGVmaW5lZCA/IEFycmF5IDogQztcbn07XG4iLCIvLyA5LjQuMi4zIEFycmF5U3BlY2llc0NyZWF0ZShvcmlnaW5hbEFycmF5LCBsZW5ndGgpXG52YXIgc3BlY2llc0NvbnN0cnVjdG9yID0gcmVxdWlyZSgnLi9fYXJyYXktc3BlY2llcy1jb25zdHJ1Y3RvcicpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChvcmlnaW5hbCwgbGVuZ3RoKSB7XG4gIHJldHVybiBuZXcgKHNwZWNpZXNDb25zdHJ1Y3RvcihvcmlnaW5hbCkpKGxlbmd0aCk7XG59O1xuIiwidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuIiwidmFyIGNvcmUgPSBtb2R1bGUuZXhwb3J0cyA9IHsgdmVyc2lvbjogJzIuNi45JyB9O1xuaWYgKHR5cGVvZiBfX2UgPT0gJ251bWJlcicpIF9fZSA9IGNvcmU7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW5kZWZcbiIsIi8vIG9wdGlvbmFsIC8gc2ltcGxlIGNvbnRleHQgYmluZGluZ1xudmFyIGFGdW5jdGlvbiA9IHJlcXVpcmUoJy4vX2EtZnVuY3Rpb24nKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGZuLCB0aGF0LCBsZW5ndGgpIHtcbiAgYUZ1bmN0aW9uKGZuKTtcbiAgaWYgKHRoYXQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZuO1xuICBzd2l0Y2ggKGxlbmd0aCkge1xuICAgIGNhc2UgMTogcmV0dXJuIGZ1bmN0aW9uIChhKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhKTtcbiAgICB9O1xuICAgIGNhc2UgMjogcmV0dXJuIGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhLCBiKTtcbiAgICB9O1xuICAgIGNhc2UgMzogcmV0dXJuIGZ1bmN0aW9uIChhLCBiLCBjKSB7XG4gICAgICByZXR1cm4gZm4uY2FsbCh0aGF0LCBhLCBiLCBjKTtcbiAgICB9O1xuICB9XG4gIHJldHVybiBmdW5jdGlvbiAoLyogLi4uYXJncyAqLykge1xuICAgIHJldHVybiBmbi5hcHBseSh0aGF0LCBhcmd1bWVudHMpO1xuICB9O1xufTtcbiIsIi8vIDcuMi4xIFJlcXVpcmVPYmplY3RDb2VyY2libGUoYXJndW1lbnQpXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgPT0gdW5kZWZpbmVkKSB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAgXCIgKyBpdCk7XG4gIHJldHVybiBpdDtcbn07XG4iLCIvLyBUaGFuaydzIElFOCBmb3IgaGlzIGZ1bm55IGRlZmluZVByb3BlcnR5XG5tb2R1bGUuZXhwb3J0cyA9ICFyZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2EnLCB7IGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfSB9KS5hICE9IDc7XG59KTtcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGRvY3VtZW50ID0gcmVxdWlyZSgnLi9fZ2xvYmFsJykuZG9jdW1lbnQ7XG4vLyB0eXBlb2YgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCBpcyAnb2JqZWN0JyBpbiBvbGQgSUVcbnZhciBpcyA9IGlzT2JqZWN0KGRvY3VtZW50KSAmJiBpc09iamVjdChkb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpcyA/IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoaXQpIDoge307XG59O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGNvcmUgPSByZXF1aXJlKCcuL19jb3JlJyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbnZhciByZWRlZmluZSA9IHJlcXVpcmUoJy4vX3JlZGVmaW5lJyk7XG52YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG5cbnZhciAkZXhwb3J0ID0gZnVuY3Rpb24gKHR5cGUsIG5hbWUsIHNvdXJjZSkge1xuICB2YXIgSVNfRk9SQ0VEID0gdHlwZSAmICRleHBvcnQuRjtcbiAgdmFyIElTX0dMT0JBTCA9IHR5cGUgJiAkZXhwb3J0Lkc7XG4gIHZhciBJU19TVEFUSUMgPSB0eXBlICYgJGV4cG9ydC5TO1xuICB2YXIgSVNfUFJPVE8gPSB0eXBlICYgJGV4cG9ydC5QO1xuICB2YXIgSVNfQklORCA9IHR5cGUgJiAkZXhwb3J0LkI7XG4gIHZhciB0YXJnZXQgPSBJU19HTE9CQUwgPyBnbG9iYWwgOiBJU19TVEFUSUMgPyBnbG9iYWxbbmFtZV0gfHwgKGdsb2JhbFtuYW1lXSA9IHt9KSA6IChnbG9iYWxbbmFtZV0gfHwge30pW1BST1RPVFlQRV07XG4gIHZhciBleHBvcnRzID0gSVNfR0xPQkFMID8gY29yZSA6IGNvcmVbbmFtZV0gfHwgKGNvcmVbbmFtZV0gPSB7fSk7XG4gIHZhciBleHBQcm90byA9IGV4cG9ydHNbUFJPVE9UWVBFXSB8fCAoZXhwb3J0c1tQUk9UT1RZUEVdID0ge30pO1xuICB2YXIga2V5LCBvd24sIG91dCwgZXhwO1xuICBpZiAoSVNfR0xPQkFMKSBzb3VyY2UgPSBuYW1lO1xuICBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICAvLyBjb250YWlucyBpbiBuYXRpdmVcbiAgICBvd24gPSAhSVNfRk9SQ0VEICYmIHRhcmdldCAmJiB0YXJnZXRba2V5XSAhPT0gdW5kZWZpbmVkO1xuICAgIC8vIGV4cG9ydCBuYXRpdmUgb3IgcGFzc2VkXG4gICAgb3V0ID0gKG93biA/IHRhcmdldCA6IHNvdXJjZSlba2V5XTtcbiAgICAvLyBiaW5kIHRpbWVycyB0byBnbG9iYWwgZm9yIGNhbGwgZnJvbSBleHBvcnQgY29udGV4dFxuICAgIGV4cCA9IElTX0JJTkQgJiYgb3duID8gY3R4KG91dCwgZ2xvYmFsKSA6IElTX1BST1RPICYmIHR5cGVvZiBvdXQgPT0gJ2Z1bmN0aW9uJyA/IGN0eChGdW5jdGlvbi5jYWxsLCBvdXQpIDogb3V0O1xuICAgIC8vIGV4dGVuZCBnbG9iYWxcbiAgICBpZiAodGFyZ2V0KSByZWRlZmluZSh0YXJnZXQsIGtleSwgb3V0LCB0eXBlICYgJGV4cG9ydC5VKTtcbiAgICAvLyBleHBvcnRcbiAgICBpZiAoZXhwb3J0c1trZXldICE9IG91dCkgaGlkZShleHBvcnRzLCBrZXksIGV4cCk7XG4gICAgaWYgKElTX1BST1RPICYmIGV4cFByb3RvW2tleV0gIT0gb3V0KSBleHBQcm90b1trZXldID0gb3V0O1xuICB9XG59O1xuZ2xvYmFsLmNvcmUgPSBjb3JlO1xuLy8gdHlwZSBiaXRtYXBcbiRleHBvcnQuRiA9IDE7ICAgLy8gZm9yY2VkXG4kZXhwb3J0LkcgPSAyOyAgIC8vIGdsb2JhbFxuJGV4cG9ydC5TID0gNDsgICAvLyBzdGF0aWNcbiRleHBvcnQuUCA9IDg7ICAgLy8gcHJvdG9cbiRleHBvcnQuQiA9IDE2OyAgLy8gYmluZFxuJGV4cG9ydC5XID0gMzI7ICAvLyB3cmFwXG4kZXhwb3J0LlUgPSA2NDsgIC8vIHNhZmVcbiRleHBvcnQuUiA9IDEyODsgLy8gcmVhbCBwcm90byBtZXRob2QgZm9yIGBsaWJyYXJ5YFxubW9kdWxlLmV4cG9ydHMgPSAkZXhwb3J0O1xuIiwidmFyIE1BVENIID0gcmVxdWlyZSgnLi9fd2tzJykoJ21hdGNoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVkpIHtcbiAgdmFyIHJlID0gLy4vO1xuICB0cnkge1xuICAgICcvLi8nW0tFWV0ocmUpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJlW01BVENIXSA9IGZhbHNlO1xuICAgICAgcmV0dXJuICEnLy4vJ1tLRVldKHJlKTtcbiAgICB9IGNhdGNoIChmKSB7IC8qIGVtcHR5ICovIH1cbiAgfSByZXR1cm4gdHJ1ZTtcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChleGVjKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuICEhZXhlYygpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCduYXRpdmUtZnVuY3Rpb24tdG8tc3RyaW5nJywgRnVuY3Rpb24udG9TdHJpbmcpO1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbnZhciBnbG9iYWwgPSBtb2R1bGUuZXhwb3J0cyA9IHR5cGVvZiB3aW5kb3cgIT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lk1hdGggPT0gTWF0aFxuICA/IHdpbmRvdyA6IHR5cGVvZiBzZWxmICE9ICd1bmRlZmluZWQnICYmIHNlbGYuTWF0aCA9PSBNYXRoID8gc2VsZlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgOiBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuaWYgKHR5cGVvZiBfX2cgPT0gJ251bWJlcicpIF9fZyA9IGdsb2JhbDsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwidmFyIGhhc093blByb3BlcnR5ID0ge30uaGFzT3duUHJvcGVydHk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xufTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGNyZWF0ZURlc2MgPSByZXF1aXJlKCcuL19wcm9wZXJ0eS1kZXNjJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkUC5mKG9iamVjdCwga2V5LCBjcmVhdGVEZXNjKDEsIHZhbHVlKSk7XG59IDogZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gb2JqZWN0O1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gIXJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgJiYgIXJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcXVpcmUoJy4vX2RvbS1jcmVhdGUnKSgnZGl2JyksICdhJywgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIDc7IH0gfSkuYSAhPSA3O1xufSk7XG4iLCIvLyBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIGFuZCBub24tZW51bWVyYWJsZSBvbGQgVjggc3RyaW5nc1xudmFyIGNvZiA9IHJlcXVpcmUoJy4vX2NvZicpO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xubW9kdWxlLmV4cG9ydHMgPSBPYmplY3QoJ3onKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKSA/IE9iamVjdCA6IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gY29mKGl0KSA9PSAnU3RyaW5nJyA/IGl0LnNwbGl0KCcnKSA6IE9iamVjdChpdCk7XG59O1xuIiwiLy8gNy4yLjIgSXNBcnJheShhcmd1bWVudClcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbm1vZHVsZS5leHBvcnRzID0gQXJyYXkuaXNBcnJheSB8fCBmdW5jdGlvbiBpc0FycmF5KGFyZykge1xuICByZXR1cm4gY29mKGFyZykgPT0gJ0FycmF5Jztcbn07XG4iLCIvLyAyMC4xLjIuMyBOdW1iZXIuaXNJbnRlZ2VyKG51bWJlcilcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGZsb29yID0gTWF0aC5mbG9vcjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gaXNJbnRlZ2VyKGl0KSB7XG4gIHJldHVybiAhaXNPYmplY3QoaXQpICYmIGlzRmluaXRlKGl0KSAmJiBmbG9vcihpdCkgPT09IGl0O1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0eXBlb2YgaXQgPT09ICdvYmplY3QnID8gaXQgIT09IG51bGwgOiB0eXBlb2YgaXQgPT09ICdmdW5jdGlvbic7XG59O1xuIiwiLy8gNy4yLjggSXNSZWdFeHAoYXJndW1lbnQpXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbnZhciBNQVRDSCA9IHJlcXVpcmUoJy4vX3drcycpKCdtYXRjaCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgdmFyIGlzUmVnRXhwO1xuICByZXR1cm4gaXNPYmplY3QoaXQpICYmICgoaXNSZWdFeHAgPSBpdFtNQVRDSF0pICE9PSB1bmRlZmluZWQgPyAhIWlzUmVnRXhwIDogY29mKGl0KSA9PSAnUmVnRXhwJyk7XG59O1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmYWxzZTtcbiIsInZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4vX2FuLW9iamVjdCcpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi9faWU4LWRvbS1kZWZpbmUnKTtcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4vX3RvLXByaW1pdGl2ZScpO1xudmFyIGRQID0gT2JqZWN0LmRlZmluZVByb3BlcnR5O1xuXG5leHBvcnRzLmYgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpID8gT2JqZWN0LmRlZmluZVByb3BlcnR5IDogZnVuY3Rpb24gZGVmaW5lUHJvcGVydHkoTywgUCwgQXR0cmlidXRlcykge1xuICBhbk9iamVjdChPKTtcbiAgUCA9IHRvUHJpbWl0aXZlKFAsIHRydWUpO1xuICBhbk9iamVjdChBdHRyaWJ1dGVzKTtcbiAgaWYgKElFOF9ET01fREVGSU5FKSB0cnkge1xuICAgIHJldHVybiBkUChPLCBQLCBBdHRyaWJ1dGVzKTtcbiAgfSBjYXRjaCAoZSkgeyAvKiBlbXB0eSAqLyB9XG4gIGlmICgnZ2V0JyBpbiBBdHRyaWJ1dGVzIHx8ICdzZXQnIGluIEF0dHJpYnV0ZXMpIHRocm93IFR5cGVFcnJvcignQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQhJyk7XG4gIGlmICgndmFsdWUnIGluIEF0dHJpYnV0ZXMpIE9bUF0gPSBBdHRyaWJ1dGVzLnZhbHVlO1xuICByZXR1cm4gTztcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgaGFzID0gcmVxdWlyZSgnLi9faGFzJyk7XG52YXIgU1JDID0gcmVxdWlyZSgnLi9fdWlkJykoJ3NyYycpO1xudmFyICR0b1N0cmluZyA9IHJlcXVpcmUoJy4vX2Z1bmN0aW9uLXRvLXN0cmluZycpO1xudmFyIFRPX1NUUklORyA9ICd0b1N0cmluZyc7XG52YXIgVFBMID0gKCcnICsgJHRvU3RyaW5nKS5zcGxpdChUT19TVFJJTkcpO1xuXG5yZXF1aXJlKCcuL19jb3JlJykuaW5zcGVjdFNvdXJjZSA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gJHRvU3RyaW5nLmNhbGwoaXQpO1xufTtcblxuKG1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKE8sIGtleSwgdmFsLCBzYWZlKSB7XG4gIHZhciBpc0Z1bmN0aW9uID0gdHlwZW9mIHZhbCA9PSAnZnVuY3Rpb24nO1xuICBpZiAoaXNGdW5jdGlvbikgaGFzKHZhbCwgJ25hbWUnKSB8fCBoaWRlKHZhbCwgJ25hbWUnLCBrZXkpO1xuICBpZiAoT1trZXldID09PSB2YWwpIHJldHVybjtcbiAgaWYgKGlzRnVuY3Rpb24pIGhhcyh2YWwsIFNSQykgfHwgaGlkZSh2YWwsIFNSQywgT1trZXldID8gJycgKyBPW2tleV0gOiBUUEwuam9pbihTdHJpbmcoa2V5KSkpO1xuICBpZiAoTyA9PT0gZ2xvYmFsKSB7XG4gICAgT1trZXldID0gdmFsO1xuICB9IGVsc2UgaWYgKCFzYWZlKSB7XG4gICAgZGVsZXRlIE9ba2V5XTtcbiAgICBoaWRlKE8sIGtleSwgdmFsKTtcbiAgfSBlbHNlIGlmIChPW2tleV0pIHtcbiAgICBPW2tleV0gPSB2YWw7XG4gIH0gZWxzZSB7XG4gICAgaGlkZShPLCBrZXksIHZhbCk7XG4gIH1cbi8vIGFkZCBmYWtlIEZ1bmN0aW9uI3RvU3RyaW5nIGZvciBjb3JyZWN0IHdvcmsgd3JhcHBlZCBtZXRob2RzIC8gY29uc3RydWN0b3JzIHdpdGggbWV0aG9kcyBsaWtlIExvRGFzaCBpc05hdGl2ZVxufSkoRnVuY3Rpb24ucHJvdG90eXBlLCBUT19TVFJJTkcsIGZ1bmN0aW9uIHRvU3RyaW5nKCkge1xuICByZXR1cm4gdHlwZW9mIHRoaXMgPT0gJ2Z1bmN0aW9uJyAmJiB0aGlzW1NSQ10gfHwgJHRvU3RyaW5nLmNhbGwodGhpcyk7XG59KTtcbiIsInZhciBjb3JlID0gcmVxdWlyZSgnLi9fY29yZScpO1xudmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIFNIQVJFRCA9ICdfX2NvcmUtanNfc2hhcmVkX18nO1xudmFyIHN0b3JlID0gZ2xvYmFsW1NIQVJFRF0gfHwgKGdsb2JhbFtTSEFSRURdID0ge30pO1xuXG4obW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSkge1xuICByZXR1cm4gc3RvcmVba2V5XSB8fCAoc3RvcmVba2V5XSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHt9KTtcbn0pKCd2ZXJzaW9ucycsIFtdKS5wdXNoKHtcbiAgdmVyc2lvbjogY29yZS52ZXJzaW9uLFxuICBtb2RlOiByZXF1aXJlKCcuL19saWJyYXJ5JykgPyAncHVyZScgOiAnZ2xvYmFsJyxcbiAgY29weXJpZ2h0OiAnwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSdcbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobWV0aG9kLCBhcmcpIHtcbiAgcmV0dXJuICEhbWV0aG9kICYmIGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlbGVzcy1jYWxsXG4gICAgYXJnID8gbWV0aG9kLmNhbGwobnVsbCwgZnVuY3Rpb24gKCkgeyAvKiBlbXB0eSAqLyB9LCAxKSA6IG1ldGhvZC5jYWxsKG51bGwpO1xuICB9KTtcbn07XG4iLCIvLyBoZWxwZXIgZm9yIFN0cmluZyN7c3RhcnRzV2l0aCwgZW5kc1dpdGgsIGluY2x1ZGVzfVxudmFyIGlzUmVnRXhwID0gcmVxdWlyZSgnLi9faXMtcmVnZXhwJyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodGhhdCwgc2VhcmNoU3RyaW5nLCBOQU1FKSB7XG4gIGlmIChpc1JlZ0V4cChzZWFyY2hTdHJpbmcpKSB0aHJvdyBUeXBlRXJyb3IoJ1N0cmluZyMnICsgTkFNRSArIFwiIGRvZXNuJ3QgYWNjZXB0IHJlZ2V4IVwiKTtcbiAgcmV0dXJuIFN0cmluZyhkZWZpbmVkKHRoYXQpKTtcbn07XG4iLCJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIG1heCA9IE1hdGgubWF4O1xudmFyIG1pbiA9IE1hdGgubWluO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaW5kZXgsIGxlbmd0aCkge1xuICBpbmRleCA9IHRvSW50ZWdlcihpbmRleCk7XG4gIHJldHVybiBpbmRleCA8IDAgPyBtYXgoaW5kZXggKyBsZW5ndGgsIDApIDogbWluKGluZGV4LCBsZW5ndGgpO1xufTtcbiIsIi8vIDcuMS40IFRvSW50ZWdlclxudmFyIGNlaWwgPSBNYXRoLmNlaWw7XG52YXIgZmxvb3IgPSBNYXRoLmZsb29yO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGlzTmFOKGl0ID0gK2l0KSA/IDAgOiAoaXQgPiAwID8gZmxvb3IgOiBjZWlsKShpdCk7XG59O1xuIiwiLy8gdG8gaW5kZXhlZCBvYmplY3QsIHRvT2JqZWN0IHdpdGggZmFsbGJhY2sgZm9yIG5vbi1hcnJheS1saWtlIEVTMyBzdHJpbmdzXG52YXIgSU9iamVjdCA9IHJlcXVpcmUoJy4vX2lvYmplY3QnKTtcbnZhciBkZWZpbmVkID0gcmVxdWlyZSgnLi9fZGVmaW5lZCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIElPYmplY3QoZGVmaW5lZChpdCkpO1xufTtcbiIsIi8vIDcuMS4xNSBUb0xlbmd0aFxudmFyIHRvSW50ZWdlciA9IHJlcXVpcmUoJy4vX3RvLWludGVnZXInKTtcbnZhciBtaW4gPSBNYXRoLm1pbjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpdCA+IDAgPyBtaW4odG9JbnRlZ2VyKGl0KSwgMHgxZmZmZmZmZmZmZmZmZikgOiAwOyAvLyBwb3coMiwgNTMpIC0gMSA9PSA5MDA3MTk5MjU0NzQwOTkxXG59O1xuIiwiLy8gNy4xLjEzIFRvT2JqZWN0KGFyZ3VtZW50KVxudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gT2JqZWN0KGRlZmluZWQoaXQpKTtcbn07XG4iLCIvLyA3LjEuMSBUb1ByaW1pdGl2ZShpbnB1dCBbLCBQcmVmZXJyZWRUeXBlXSlcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xuLy8gaW5zdGVhZCBvZiB0aGUgRVM2IHNwZWMgdmVyc2lvbiwgd2UgZGlkbid0IGltcGxlbWVudCBAQHRvUHJpbWl0aXZlIGNhc2Vcbi8vIGFuZCB0aGUgc2Vjb25kIGFyZ3VtZW50IC0gZmxhZyAtIHByZWZlcnJlZCB0eXBlIGlzIGEgc3RyaW5nXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwgUykge1xuICBpZiAoIWlzT2JqZWN0KGl0KSkgcmV0dXJuIGl0O1xuICB2YXIgZm4sIHZhbDtcbiAgaWYgKFMgJiYgdHlwZW9mIChmbiA9IGl0LnRvU3RyaW5nKSA9PSAnZnVuY3Rpb24nICYmICFpc09iamVjdCh2YWwgPSBmbi5jYWxsKGl0KSkpIHJldHVybiB2YWw7XG4gIGlmICh0eXBlb2YgKGZuID0gaXQudmFsdWVPZikgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAoIVMgJiYgdHlwZW9mIChmbiA9IGl0LnRvU3RyaW5nKSA9PSAnZnVuY3Rpb24nICYmICFpc09iamVjdCh2YWwgPSBmbi5jYWxsKGl0KSkpIHJldHVybiB2YWw7XG4gIHRocm93IFR5cGVFcnJvcihcIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZVwiKTtcbn07XG4iLCJ2YXIgaWQgPSAwO1xudmFyIHB4ID0gTWF0aC5yYW5kb20oKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gJ1N5bWJvbCgnLmNvbmNhdChrZXkgPT09IHVuZGVmaW5lZCA/ICcnIDoga2V5LCAnKV8nLCAoKytpZCArIHB4KS50b1N0cmluZygzNikpO1xufTtcbiIsInZhciBzdG9yZSA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCd3a3MnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuL191aWQnKTtcbnZhciBTeW1ib2wgPSByZXF1aXJlKCcuL19nbG9iYWwnKS5TeW1ib2w7XG52YXIgVVNFX1NZTUJPTCA9IHR5cGVvZiBTeW1ib2wgPT0gJ2Z1bmN0aW9uJztcblxudmFyICRleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobmFtZSkge1xuICByZXR1cm4gc3RvcmVbbmFtZV0gfHwgKHN0b3JlW25hbWVdID1cbiAgICBVU0VfU1lNQk9MICYmIFN5bWJvbFtuYW1lXSB8fCAoVVNFX1NZTUJPTCA/IFN5bWJvbCA6IHVpZCkoJ1N5bWJvbC4nICsgbmFtZSkpO1xufTtcblxuJGV4cG9ydHMuc3RvcmUgPSBzdG9yZTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGZvckVhY2ggPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoMCk7XG52YXIgU1RSSUNUID0gcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKFtdLmZvckVhY2gsIHRydWUpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqICFTVFJJQ1QsICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjEwIC8gMTUuNC40LjE4IEFycmF5LnByb3RvdHlwZS5mb3JFYWNoKGNhbGxiYWNrZm4gWywgdGhpc0FyZ10pXG4gIGZvckVhY2g6IGZ1bmN0aW9uIGZvckVhY2goY2FsbGJhY2tmbiAvKiAsIHRoaXNBcmcgKi8pIHtcbiAgICByZXR1cm4gJGZvckVhY2godGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzWzFdKTtcbiAgfVxufSk7XG4iLCIvLyAyMC4xLjIuMyBOdW1iZXIuaXNJbnRlZ2VyKG51bWJlcilcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTnVtYmVyJywgeyBpc0ludGVnZXI6IHJlcXVpcmUoJy4vX2lzLWludGVnZXInKSB9KTtcbiIsIi8vIDIxLjEuMy4xOCBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGgoc2VhcmNoU3RyaW5nIFssIHBvc2l0aW9uIF0pXG4ndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgY29udGV4dCA9IHJlcXVpcmUoJy4vX3N0cmluZy1jb250ZXh0Jyk7XG52YXIgU1RBUlRTX1dJVEggPSAnc3RhcnRzV2l0aCc7XG52YXIgJHN0YXJ0c1dpdGggPSAnJ1tTVEFSVFNfV0lUSF07XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogcmVxdWlyZSgnLi9fZmFpbHMtaXMtcmVnZXhwJykoU1RBUlRTX1dJVEgpLCAnU3RyaW5nJywge1xuICBzdGFydHNXaXRoOiBmdW5jdGlvbiBzdGFydHNXaXRoKHNlYXJjaFN0cmluZyAvKiAsIHBvc2l0aW9uID0gMCAqLykge1xuICAgIHZhciB0aGF0ID0gY29udGV4dCh0aGlzLCBzZWFyY2hTdHJpbmcsIFNUQVJUU19XSVRIKTtcbiAgICB2YXIgaW5kZXggPSB0b0xlbmd0aChNYXRoLm1pbihhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCwgdGhhdC5sZW5ndGgpKTtcbiAgICB2YXIgc2VhcmNoID0gU3RyaW5nKHNlYXJjaFN0cmluZyk7XG4gICAgcmV0dXJuICRzdGFydHNXaXRoXG4gICAgICA/ICRzdGFydHNXaXRoLmNhbGwodGhhdCwgc2VhcmNoLCBpbmRleClcbiAgICAgIDogdGhhdC5zbGljZShpbmRleCwgaW5kZXggKyBzZWFyY2gubGVuZ3RoKSA9PT0gc2VhcmNoO1xuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0Jztcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L0FycmF5LnByb3RvdHlwZS5pbmNsdWRlc1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkaW5jbHVkZXMgPSByZXF1aXJlKCcuL19hcnJheS1pbmNsdWRlcycpKHRydWUpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCwgJ0FycmF5Jywge1xuICBpbmNsdWRlczogZnVuY3Rpb24gaW5jbHVkZXMoZWwgLyogLCBmcm9tSW5kZXggPSAwICovKSB7XG4gICAgcmV0dXJuICRpbmNsdWRlcyh0aGlzLCBlbCwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICB9XG59KTtcblxucmVxdWlyZSgnLi9fYWRkLXRvLXVuc2NvcGFibGVzJykoJ2luY2x1ZGVzJyk7XG4iLCIndXNlIHN0cmljdCc7XG4vKipcbiAqIFtSZWN1cnNpdmVseSBwYXJzZXMgYSBzdHJpbmdpZmllZCBKU09OXVxuICogQHBhcmFtICB7W3R5cGVdfSBqc29uU3RyaW5nIFtzdHJpbmdpZmllZCBqc29uIHRvIHBhcnNlXVxuICogQHJldHVybiB7W3R5cGVdfSAgICAgICAgICAgIFtub3JtYWxpemVkIEphdmFzY3JpcHQgb2JqZWN0XVxuICovXG5mdW5jdGlvbiBkZWVwUGFyc2VKc29uKGpzb25TdHJpbmcpIHtcbiAgLy8gaWYgbm90IHN0cmluZ2lmaWVkIGpzb24gcmF0aGVyIGEgc2ltcGxlIHN0cmluZyB2YWx1ZSB0aGVuIEpTT04ucGFyc2Ugd2lsbCB0aHJvdyBlcnJvclxuICAvLyBvdGhlcndpc2UgY29udGludWUgcmVjdXJzaW9uXG4gIGlmICh0eXBlb2YganNvblN0cmluZyA9PT0gJ3N0cmluZycpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGRlZXBQYXJzZUpzb24oSlNPTi5wYXJzZShqc29uU3RyaW5nKSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4ganNvblN0cmluZztcbiAgICB9XG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShqc29uU3RyaW5nKSkge1xuICAgIC8vIGlmIGFuIGFycmF5IGlzIHJlY2VpdmVkLCBtYXAgb3ZlciB0aGUgYXJyYXkgYW5kIGRlZXBQYXJzZSBlYWNoIHZhbHVlXG4gICAgcmV0dXJuIGpzb25TdHJpbmcubWFwKHZhbCA9PiBkZWVwUGFyc2VKc29uKHZhbCkpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBqc29uU3RyaW5nID09PSAnb2JqZWN0JyAmJiBqc29uU3RyaW5nICE9PSBudWxsKSB7XG4gICAgLy8gaWYgYW4gb2JqZWN0IGlzIHJlY2VpdmVkIHRoZW4gZGVlcFBhcnNlIGVhY2ggZWxlbWVudCBpbiB0aGUgb2JqZWN0XG4gICAgLy8gdHlwZW9mIG51bGwgcmV0dXJucyAnb2JqZWN0JyB0b28sIHNvIHdlIGhhdmUgdG8gZWxpbWluYXRlIHRoYXRcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoanNvblN0cmluZykucmVkdWNlKChvYmosIGtleSkgPT4ge1xuICAgICAgb2JqW2tleV0gPSBkZWVwUGFyc2VKc29uKGpzb25TdHJpbmdba2V5XSk7XG4gICAgICByZXR1cm4gb2JqO1xuICAgIH0sIHt9KTtcbiAgfSBlbHNlIHtcbiAgICAvLyBvdGhlcndpc2UgcmV0dXJuIHdoYXRldmVyIHdhcyByZWNlaXZlZFxuICAgIHJldHVybiBqc29uU3RyaW5nO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0geyBkZWVwUGFyc2VKc29uIH07XG4iLCJpZighZ2xvYmFsW1wiQmFzaXNcIl0pIGdsb2JhbFtcIkJhc2lzXCJdID0ge307XG5tb2R1bGUuZXhwb3J0cyA9IGdsb2JhbFtcIkJhc2lzXCJdW1wiQWdHcmlkQ29tcG9uZW50c1wiXSA9IHJlcXVpcmUoXCItIS4vYWdjLWJhc2ljLmJ1bmRsZS5qc1wiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IGdsb2JhbFtcImpzc1wiXSA9IHJlcXVpcmUoXCItIS4vanNzLmpzXCIpOyIsIi8qXG4gKiBKU1MgdjAuNiAtIEphdmFTY3JpcHQgU3R5bGVzaGVldHNcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9Cb3g5L2pzc1xuICpcbiAqIENvcHlyaWdodCAoYykgMjAxMSwgRGF2aWQgVGFuZ1xuICogTUlUIExpY2Vuc2VkIChodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocClcbiAqL1xudmFyIGpzcyA9IChmdW5jdGlvbigpIHtcbiAgICB2YXIgYWRqU2VsQXR0clJlZ2V4ID0gLygoPzpcXC58IylbXlxcLlxccyNdKykoKD86XFwufCMpW15cXC5cXHMjXSspL2c7XG4gICAgdmFyIGRvdWJsZUNvbG9uUHNldWRvRWxSZWdleCA9IC8oOjopKGJlZm9yZXxhZnRlcnxmaXJzdC1saW5lfGZpcnN0LWxldHRlcnxzZWxlY3Rpb24pLztcbiAgICB2YXIgc2luZ2xlQ29sb25Qc2V1ZG9FbFJlZ2V4ID0gLyhbXjpdKSg6KShiZWZvcmV8YWZ0ZXJ8Zmlyc3QtbGluZXxmaXJzdC1sZXR0ZXJ8c2VsZWN0aW9uKS87XG4gICAgdmFyIHNpbmdsZUNvbG9uRm9yUHNldWRvRWxlbWVudHM7IC8vIGZsYWcgZm9yIG9sZGVyIGJyb3dzZXJzXG5cbiAgICBmdW5jdGlvbiBnZXRTZWxlY3RvcnNBbmRSdWxlcyhzaGVldCkge1xuICAgICAgICB2YXIgcnVsZXMgPSBzaGVldC5jc3NSdWxlcyB8fCBzaGVldC5ydWxlcyB8fCBbXTtcbiAgICAgICAgdmFyIHJlc3VsdHMgPSB7fTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgLy8gT2xkZXIgYnJvd3NlcnMgYW5kIEZGIHJlcG9ydCBwc2V1ZG8gZWxlbWVudCBzZWxlY3RvcnMgaW4gYW4gb3V0ZGF0ZWQgZm9ybWF0XG4gICAgICAgICAgICB2YXIgc2VsZWN0b3JUZXh0ID0gdG9Eb3VibGVDb2xvblBzZXVkb0VsZW1lbnRzKHJ1bGVzW2ldLnNlbGVjdG9yVGV4dCk7XG4gICAgICAgICAgICBpZiAoIXJlc3VsdHNbc2VsZWN0b3JUZXh0XSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdHNbc2VsZWN0b3JUZXh0XSA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzdWx0c1tzZWxlY3RvclRleHRdLnB1c2goe1xuICAgICAgICAgICAgICAgIHNoZWV0OiBzaGVldCxcbiAgICAgICAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICAgICAgICBzdHlsZTogcnVsZXNbaV0uc3R5bGVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHRzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldFJ1bGVzKHNoZWV0LCBzZWxlY3Rvcikge1xuICAgICAgICB2YXIgcnVsZXMgPSBzaGVldC5jc3NSdWxlcyB8fCBzaGVldC5ydWxlcyB8fCBbXTtcbiAgICAgICAgdmFyIHJlc3VsdHMgPSBbXTtcbiAgICAgICAgLy8gQnJvd3NlcnMgcmVwb3J0IHNlbGVjdG9ycyBpbiBsb3dlcmNhc2VcbiAgICAgICAgc2VsZWN0b3IgPSBzZWxlY3Rvci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJ1bGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgc2VsZWN0b3JUZXh0ID0gcnVsZXNbaV0uc2VsZWN0b3JUZXh0O1xuICAgICAgICAgICAgLy8gTm90ZSAtIGNlcnRhaW4gcnVsZXMgKGUuZy4gQHJ1bGVzKSBkb24ndCBoYXZlIHNlbGVjdG9yVGV4dFxuICAgICAgICAgICAgaWYgKHNlbGVjdG9yVGV4dCAmJiAoc2VsZWN0b3JUZXh0ID09IHNlbGVjdG9yIHx8IHNlbGVjdG9yVGV4dCA9PSBzd2FwQWRqU2VsQXR0cihzZWxlY3RvcikgfHwgc2VsZWN0b3JUZXh0ID09IHN3YXBQc2V1ZG9FbFN5bnRheChzZWxlY3RvcikpKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgc2hlZXQ6IHNoZWV0LFxuICAgICAgICAgICAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHJ1bGVzW2ldLnN0eWxlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYWRkUnVsZShzaGVldCwgc2VsZWN0b3IpIHtcbiAgICAgICAgdmFyIHJ1bGVzID0gc2hlZXQuY3NzUnVsZXMgfHwgc2hlZXQucnVsZXMgfHwgW107XG4gICAgICAgIHZhciBpbmRleCA9IHJ1bGVzLmxlbmd0aDtcbiAgICAgICAgdmFyIHBzZXVkb0VsZW1lbnRSdWxlID0gYWRkUHNldWRvRWxlbWVudFJ1bGUoc2hlZXQsIHNlbGVjdG9yLCBydWxlcywgaW5kZXgpO1xuXG4gICAgICAgIGlmICghcHNldWRvRWxlbWVudFJ1bGUpIHtcbiAgICAgICAgICAgIGFkZFJ1bGVUb1NoZWV0KHNoZWV0LCBzZWxlY3RvciwgaW5kZXgpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc2hlZXQ6IHNoZWV0LFxuICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxuICAgICAgICAgICAgc3R5bGU6IHJ1bGVzW2luZGV4XS5zdHlsZVxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBmdW5jdGlvbiBhZGRSdWxlVG9TaGVldChzaGVldCwgc2VsZWN0b3IsIGluZGV4KSB7XG4gICAgICAgIGlmIChzaGVldC5pbnNlcnRSdWxlKSB7XG4gICAgICAgICAgICBzaGVldC5pbnNlcnRSdWxlKHNlbGVjdG9yICsgJyB7IH0nLCBpbmRleCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzaGVldC5hZGRSdWxlKHNlbGVjdG9yLCBudWxsLCBpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGVzIHNpbmdsZSBjb2xvbiBzeW50YXggZm9yIG9sZGVyIGJyb3dzZXJzIGFuZCBidWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTQ5NjUxXG4gICAgZnVuY3Rpb24gYWRkUHNldWRvRWxlbWVudFJ1bGUoc2hlZXQsIHNlbGVjdG9yLCBydWxlcywgaW5kZXgpIHtcbiAgICAgICAgdmFyIGRvdWJsZUNvbG9uU2VsZWN0b3I7XG4gICAgICAgIHZhciBzaW5nbGVDb2xvblNlbGVjdG9yO1xuXG4gICAgICAgIGlmIChkb3VibGVDb2xvblBzZXVkb0VsUmVnZXguZXhlYyhzZWxlY3RvcikpIHtcbiAgICAgICAgICAgIGRvdWJsZUNvbG9uU2VsZWN0b3IgPSBzZWxlY3RvcjtcbiAgICAgICAgICAgIHNpbmdsZUNvbG9uU2VsZWN0b3IgPSB0b1NpbmdsZUNvbG9uUHNldWRvRWxlbWVudHMoc2VsZWN0b3IpO1xuICAgICAgICB9IGVsc2UgaWYgKHNpbmdsZUNvbG9uUHNldWRvRWxSZWdleC5leGVjKHNlbGVjdG9yKSkge1xuICAgICAgICAgICAgZG91YmxlQ29sb25TZWxlY3RvciA9IHRvRG91YmxlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcik7XG4gICAgICAgICAgICBzaW5nbGVDb2xvblNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7IC8vIE5vdCBkZWFsaW5nIHdpdGggYSBwc2V1ZG8gZWxlbWVudFxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzaW5nbGVDb2xvbkZvclBzZXVkb0VsZW1lbnRzKSB7XG4gICAgICAgICAgICAvLyBBc3N1bWUgbW9kZXJuIGJyb3dzZXIgYW5kIHRoZW4gY2hlY2sgaWYgc3VjY2Vzc2Z1bFxuICAgICAgICAgICAgYWRkUnVsZVRvU2hlZXQoc2hlZXQsIGRvdWJsZUNvbG9uU2VsZWN0b3IsIGluZGV4KTtcbiAgICAgICAgICAgIGlmIChydWxlcy5sZW5ndGggPD0gaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBzaW5nbGVDb2xvbkZvclBzZXVkb0VsZW1lbnRzID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoc2luZ2xlQ29sb25Gb3JQc2V1ZG9FbGVtZW50cykge1xuICAgICAgICAgICAgYWRkUnVsZVRvU2hlZXQoc2hlZXQsIHNpbmdsZUNvbG9uU2VsZWN0b3IsIGluZGV4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRvRG91YmxlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcikge1xuICAgICAgICByZXR1cm4gc2VsZWN0b3IucmVwbGFjZShzaW5nbGVDb2xvblBzZXVkb0VsUmVnZXgsIGZ1bmN0aW9uIChtYXRjaCwgc3VibWF0Y2gxLCBzdWJtYXRjaDIsIHN1Ym1hdGNoMykge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1hdGNoMSArICc6OicgKyBzdWJtYXRjaDM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRvU2luZ2xlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcikge1xuICAgICAgICByZXR1cm4gc2VsZWN0b3IucmVwbGFjZShkb3VibGVDb2xvblBzZXVkb0VsUmVnZXgsIGZ1bmN0aW9uKG1hdGNoLCBzdWJtYXRjaDEsIHN1Ym1hdGNoMikge1xuICAgICAgICAgICAgcmV0dXJuICc6JyArIHN1Ym1hdGNoMjtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBmdW5jdGlvbiByZW1vdmVSdWxlKHJ1bGUpIHtcbiAgICAgICAgdmFyIHNoZWV0ID0gcnVsZS5zaGVldDtcbiAgICAgICAgaWYgKHNoZWV0LmRlbGV0ZVJ1bGUpIHtcbiAgICAgICAgICAgIHNoZWV0LmRlbGV0ZVJ1bGUocnVsZS5pbmRleCk7XG4gICAgICAgIH0gZWxzZSBpZiAoc2hlZXQucmVtb3ZlUnVsZSkge1xuICAgICAgICAgICAgc2hlZXQucmVtb3ZlUnVsZShydWxlLmluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGV4dGVuZChkZXN0LCBzcmMpIHtcbiAgICAgICAgZm9yICh2YXIga2V5IGluIHNyYykge1xuICAgICAgICAgICAgaWYgKCFzcmMuaGFzT3duUHJvcGVydHkoa2V5KSlcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGRlc3Rba2V5XSA9IHNyY1trZXldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZXN0O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGFnZ3JlZ2F0ZVN0eWxlcyhydWxlcykge1xuICAgICAgICB2YXIgYWdncmVnYXRlID0ge307XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcnVsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGV4dGVuZChhZ2dyZWdhdGUsIGRlY2xhcmVkUHJvcGVydGllcyhydWxlc1tpXS5zdHlsZSkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhZ2dyZWdhdGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZGVjbGFyZWRQcm9wZXJ0aWVzKHN0eWxlKSB7XG4gICAgICAgIHZhciBkZWNsYXJlZCA9IHt9O1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBkZWNsYXJlZFtzdHlsZVtpXV0gPSBzdHlsZVt0b0NhbWVsQ2FzZShzdHlsZVtpXSldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZWNsYXJlZDtcbiAgICB9XG5cbiAgICAvLyBJRTkgc3RvcmVzIHJ1bGVzIHdpdGggYXR0cmlidXRlcyAoY2xhc3NlcyBvciBJRCdzKSBhZGphY2VudCBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgYXMgZGVmaW5lZFxuICAgIC8vIGNhdXNpbmcgdGhlbSB0byBub3QgYmUgZm91bmQsIHNvIHRoaXMgbWV0aG9kIHN3YXBzIFsjfC5dc2VsMVsjfC5dc2VsMiB0byBiZWNvbWUgWyN8Ll1zZWwyWyN8Ll1zZWwxXG4gICAgZnVuY3Rpb24gc3dhcEFkalNlbEF0dHIoc2VsZWN0b3IpIHtcbiAgICAgICAgdmFyIHN3YXAgPSAnJztcbiAgICAgICAgdmFyIGxhc3RJbmRleCA9IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgd2hpbGUgKChtYXRjaCA9IGFkalNlbEF0dHJSZWdleC5leGVjKHNlbGVjdG9yKSkgIT0gbnVsbCkge1xuICAgICAgICAgICAgaWYgKG1hdGNoWzBdID09PSAnJylcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIHN3YXAgKz0gc2VsZWN0b3Iuc3Vic3RyaW5nKGxhc3RJbmRleCwgbWF0Y2guaW5kZXgpO1xuICAgICAgICAgICAgc3dhcCArPSBzZWxlY3Rvci5zdWJzdHIobWF0Y2guaW5kZXggKyBtYXRjaFsxXS5sZW5ndGgsIG1hdGNoWzJdLmxlbmd0aCk7XG4gICAgICAgICAgICBzd2FwICs9IHNlbGVjdG9yLnN1YnN0cihtYXRjaC5pbmRleCwgbWF0Y2hbMV0ubGVuZ3RoKTtcbiAgICAgICAgICAgIGxhc3RJbmRleCA9IG1hdGNoLmluZGV4ICsgbWF0Y2hbMF0ubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIHN3YXAgKz0gc2VsZWN0b3Iuc3Vic3RyKGxhc3RJbmRleCk7XG4gICAgICAgIFxuICAgICAgICByZXR1cm4gc3dhcDtcbiAgICB9O1xuXG4gICAgLy8gRkYgYW5kIG9sZGVyIGJyb3dzZXJzIHN0b3JlIHJ1bGVzIHdpdGggcHNldWRvIGVsZW1lbnRzIHVzaW5nIHNpbmdsZS1jb2xvbiBzeW50YXhcbiAgICBmdW5jdGlvbiBzd2FwUHNldWRvRWxTeW50YXgoc2VsZWN0b3IpIHtcbiAgICAgICAgaWYgKGRvdWJsZUNvbG9uUHNldWRvRWxSZWdleC5leGVjKHNlbGVjdG9yKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvU2luZ2xlQ29sb25Qc2V1ZG9FbGVtZW50cyhzZWxlY3Rvcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGVjdG9yO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHNldFN0eWxlUHJvcGVydGllcyhydWxlLCBwcm9wZXJ0aWVzKSB7XG4gICAgICAgIGZvciAodmFyIGtleSBpbiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICB2YXIgdmFsdWUgPSBwcm9wZXJ0aWVzW2tleV07XG4gICAgICAgICAgICB2YXIgaW1wb3J0YW50SW5kZXggPSB2YWx1ZS5pbmRleE9mKCcgIWltcG9ydGFudCcpO1xuXG4gICAgICAgICAgICAvLyBNb2Rlcm4gYnJvd3NlcnMgc2VlbSB0byBoYW5kbGUgb3ZlcnJpZGVzIGZpbmUsIGJ1dCBJRTkgZG9lc24ndFxuICAgICAgICAgICAgcnVsZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eShrZXkpOyBcbiAgICAgICAgICAgIGlmIChpbXBvcnRhbnRJbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgICBydWxlLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUuc3Vic3RyKDAsIGltcG9ydGFudEluZGV4KSwgJ2ltcG9ydGFudCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBydWxlLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdG9DYW1lbENhc2Uoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvLShbYS16XSkvZywgZnVuY3Rpb24gKG1hdGNoLCBzdWJtYXRjaCkge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1hdGNoLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUNhbWVsQ2FzZWRQcm9wZXJ0eU5hbWVzKG9sZFByb3BzKSB7XG4gICAgICAgIHZhciBuZXdQcm9wcyA9IHt9O1xuICAgICAgICBmb3IgKHZhciBrZXkgaW4gb2xkUHJvcHMpIHtcbiAgICAgICAgICAgIG5ld1Byb3BzW3VuQ2FtZWxDYXNlKGtleSldID0gb2xkUHJvcHNba2V5XTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3UHJvcHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdW5DYW1lbENhc2Uoc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvKFtBLVpdKS9nLCBmdW5jdGlvbihtYXRjaCwgc3VibWF0Y2gpIHtcbiAgICAgICAgICAgIHJldHVybiAnLScgKyBzdWJtYXRjaC50b0xvd2VyQ2FzZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgSnNzID0gZnVuY3Rpb24oZG9jKSB7XG4gICAgICAgIHRoaXMuZG9jID0gZG9jO1xuICAgICAgICB0aGlzLmhlYWQgPSB0aGlzLmRvYy5oZWFkIHx8IHRoaXMuZG9jLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gICAgICAgIHRoaXMuc2hlZXRzID0gdGhpcy5kb2Muc3R5bGVTaGVldHMgfHwgW107XG4gICAgfTtcblxuICAgIEpzcy5wcm90b3R5cGUgPSB7XG4gICAgICAgIC8vIFJldHVybnMgSlNTIHJ1bGVzIChzZWxlY3RvciBpcyBvcHRpb25hbClcbiAgICAgICAgZ2V0OiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlZmF1bHRTaGVldCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWxlY3Rvcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBhZ2dyZWdhdGVTdHlsZXMoZ2V0UnVsZXModGhpcy5kZWZhdWx0U2hlZXQsIHNlbGVjdG9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRTZWxlY3RvcnNBbmRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCk7XG4gICAgICAgICAgICBmb3IgKHNlbGVjdG9yIGluIHJ1bGVzKSB7XG4gICAgICAgICAgICAgICAgcnVsZXNbc2VsZWN0b3JdID0gYWdncmVnYXRlU3R5bGVzKHJ1bGVzW3NlbGVjdG9yXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcnVsZXM7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIFJldHVybnMgYWxsIHJ1bGVzIChzZWxlY3RvciBpcyByZXF1aXJlZClcbiAgICAgICAgZ2V0QWxsOiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgdmFyIHByb3BlcnRpZXMgPSB7fTtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zaGVldHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBleHRlbmQocHJvcGVydGllcywgYWdncmVnYXRlU3R5bGVzKGdldFJ1bGVzKHRoaXMuc2hlZXRzW2ldLCBzZWxlY3RvcikpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzO1xuICAgICAgICB9LFxuICAgICAgICAvLyBBZGRzIEpTUyBydWxlcyBmb3IgdGhlIHNlbGVjdG9yIGJhc2VkIG9uIHRoZSBnaXZlbiBwcm9wZXJ0aWVzXG4gICAgICAgIHNldDogZnVuY3Rpb24oc2VsZWN0b3IsIHByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kZWZhdWx0U2hlZXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlZmF1bHRTaGVldCA9IHRoaXMuX2NyZWF0ZVNoZWV0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcm9wZXJ0aWVzID0gdHJhbnNmb3JtQ2FtZWxDYXNlZFByb3BlcnR5TmFtZXMocHJvcGVydGllcyk7XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgaWYgKCFydWxlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBydWxlcyA9IFthZGRSdWxlKHRoaXMuZGVmYXVsdFNoZWV0LCBzZWxlY3RvcildO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHNldFN0eWxlUHJvcGVydGllcyhydWxlc1tpXSwgcHJvcGVydGllcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC8vIFJlbW92ZXMgSlNTIHJ1bGVzIChzZWxlY3RvciBpcyBvcHRpb25hbClcbiAgICAgICAgcmVtb3ZlOiBmdW5jdGlvbihzZWxlY3Rvcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRlZmF1bHRTaGVldClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBpZiAoIXNlbGVjdG9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVtb3ZlU2hlZXQodGhpcy5kZWZhdWx0U2hlZXQpO1xuICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmRlZmF1bHRTaGVldDtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgcnVsZXMgPSBnZXRSdWxlcyh0aGlzLmRlZmF1bHRTaGVldCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBydWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHJlbW92ZVJ1bGUocnVsZXNbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJ1bGVzLmxlbmd0aDtcbiAgICAgICAgfSxcbiAgICAgICAgX2NyZWF0ZVNoZWV0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBzdHlsZU5vZGUgPSB0aGlzLmRvYy5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICAgICAgc3R5bGVOb2RlLnR5cGUgPSAndGV4dC9jc3MnO1xuICAgICAgICAgICAgc3R5bGVOb2RlLnJlbCA9ICdzdHlsZXNoZWV0JztcbiAgICAgICAgICAgIHRoaXMuaGVhZC5hcHBlbmRDaGlsZChzdHlsZU5vZGUpO1xuICAgICAgICAgICAgcmV0dXJuIHN0eWxlTm9kZS5zaGVldDtcbiAgICAgICAgfSxcbiAgICAgICAgX3JlbW92ZVNoZWV0OiBmdW5jdGlvbihzaGVldCkge1xuICAgICAgICAgICAgdmFyIG5vZGUgPSBzaGVldC5vd25lck5vZGU7XG4gICAgICAgICAgICBub2RlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobm9kZSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgdmFyIGV4cG9ydHMgPSBuZXcgSnNzKGRvY3VtZW50KTtcbiAgICBleHBvcnRzLmZvckRvY3VtZW50ID0gZnVuY3Rpb24oZG9jKSB7XG4gICAgICAgIHJldHVybiBuZXcgSnNzKGRvYyk7XG4gICAgfTtcbiAgICByZXR1cm4gZXhwb3J0cztcbn0pKCk7XG5cbnR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzICYmIChtb2R1bGUuZXhwb3J0cyA9IGpzcyk7IC8vIENvbW1vbkpTIHN1cHBvcnQiLCJ2YXIgcm9vdCA9IHJlcXVpcmUoJy4vX3Jvb3QnKTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgU3ltYm9sID0gcm9vdC5TeW1ib2w7XG5cbm1vZHVsZS5leHBvcnRzID0gU3ltYm9sO1xuIiwiLyoqXG4gKiBBIGZhc3RlciBhbHRlcm5hdGl2ZSB0byBgRnVuY3Rpb24jYXBwbHlgLCB0aGlzIGZ1bmN0aW9uIGludm9rZXMgYGZ1bmNgXG4gKiB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiBgdGhpc0FyZ2AgYW5kIHRoZSBhcmd1bWVudHMgb2YgYGFyZ3NgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBpbnZva2UuXG4gKiBAcGFyYW0geyp9IHRoaXNBcmcgVGhlIGB0aGlzYCBiaW5kaW5nIG9mIGBmdW5jYC5cbiAqIEBwYXJhbSB7QXJyYXl9IGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBpbnZva2UgYGZ1bmNgIHdpdGguXG4gKiBAcmV0dXJucyB7Kn0gUmV0dXJucyB0aGUgcmVzdWx0IG9mIGBmdW5jYC5cbiAqL1xuZnVuY3Rpb24gYXBwbHkoZnVuYywgdGhpc0FyZywgYXJncykge1xuICBzd2l0Y2ggKGFyZ3MubGVuZ3RoKSB7XG4gICAgY2FzZSAwOiByZXR1cm4gZnVuYy5jYWxsKHRoaXNBcmcpO1xuICAgIGNhc2UgMTogcmV0dXJuIGZ1bmMuY2FsbCh0aGlzQXJnLCBhcmdzWzBdKTtcbiAgICBjYXNlIDI6IHJldHVybiBmdW5jLmNhbGwodGhpc0FyZywgYXJnc1swXSwgYXJnc1sxXSk7XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuYy5jYWxsKHRoaXNBcmcsIGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pO1xuICB9XG4gIHJldHVybiBmdW5jLmFwcGx5KHRoaXNBcmcsIGFyZ3MpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGFwcGx5O1xuIiwidmFyIGJhc2VUaW1lcyA9IHJlcXVpcmUoJy4vX2Jhc2VUaW1lcycpLFxuICAgIGlzQXJndW1lbnRzID0gcmVxdWlyZSgnLi9pc0FyZ3VtZW50cycpLFxuICAgIGlzQXJyYXkgPSByZXF1aXJlKCcuL2lzQXJyYXknKSxcbiAgICBpc0J1ZmZlciA9IHJlcXVpcmUoJy4vaXNCdWZmZXInKSxcbiAgICBpc0luZGV4ID0gcmVxdWlyZSgnLi9faXNJbmRleCcpLFxuICAgIGlzVHlwZWRBcnJheSA9IHJlcXVpcmUoJy4vaXNUeXBlZEFycmF5Jyk7XG5cbi8qKiBVc2VkIGZvciBidWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcy4gKi9cbnZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKiBVc2VkIHRvIGNoZWNrIG9iamVjdHMgZm9yIG93biBwcm9wZXJ0aWVzLiAqL1xudmFyIGhhc093blByb3BlcnR5ID0gb2JqZWN0UHJvdG8uaGFzT3duUHJvcGVydHk7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBvZiB0aGUgZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiB0aGUgYXJyYXktbGlrZSBgdmFsdWVgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBxdWVyeS5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gaW5oZXJpdGVkIFNwZWNpZnkgcmV0dXJuaW5nIGluaGVyaXRlZCBwcm9wZXJ0eSBuYW1lcy5cbiAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyB0aGUgYXJyYXkgb2YgcHJvcGVydHkgbmFtZXMuXG4gKi9cbmZ1bmN0aW9uIGFycmF5TGlrZUtleXModmFsdWUsIGluaGVyaXRlZCkge1xuICB2YXIgaXNBcnIgPSBpc0FycmF5KHZhbHVlKSxcbiAgICAgIGlzQXJnID0gIWlzQXJyICYmIGlzQXJndW1lbnRzKHZhbHVlKSxcbiAgICAgIGlzQnVmZiA9ICFpc0FyciAmJiAhaXNBcmcgJiYgaXNCdWZmZXIodmFsdWUpLFxuICAgICAgaXNUeXBlID0gIWlzQXJyICYmICFpc0FyZyAmJiAhaXNCdWZmICYmIGlzVHlwZWRBcnJheSh2YWx1ZSksXG4gICAgICBza2lwSW5kZXhlcyA9IGlzQXJyIHx8IGlzQXJnIHx8IGlzQnVmZiB8fCBpc1R5cGUsXG4gICAgICByZXN1bHQgPSBza2lwSW5kZXhlcyA/IGJhc2VUaW1lcyh2YWx1ZS5sZW5ndGgsIFN0cmluZykgOiBbXSxcbiAgICAgIGxlbmd0aCA9IHJlc3VsdC5sZW5ndGg7XG5cbiAgZm9yICh2YXIga2V5IGluIHZhbHVlKSB7XG4gICAgaWYgKChpbmhlcml0ZWQgfHwgaGFzT3duUHJvcGVydHkuY2FsbCh2YWx1ZSwga2V5KSkgJiZcbiAgICAgICAgIShza2lwSW5kZXhlcyAmJiAoXG4gICAgICAgICAgIC8vIFNhZmFyaSA5IGhhcyBlbnVtZXJhYmxlIGBhcmd1bWVudHMubGVuZ3RoYCBpbiBzdHJpY3QgbW9kZS5cbiAgICAgICAgICAga2V5ID09ICdsZW5ndGgnIHx8XG4gICAgICAgICAgIC8vIE5vZGUuanMgMC4xMCBoYXMgZW51bWVyYWJsZSBub24taW5kZXggcHJvcGVydGllcyBvbiBidWZmZXJzLlxuICAgICAgICAgICAoaXNCdWZmICYmIChrZXkgPT0gJ29mZnNldCcgfHwga2V5ID09ICdwYXJlbnQnKSkgfHxcbiAgICAgICAgICAgLy8gUGhhbnRvbUpTIDIgaGFzIGVudW1lcmFibGUgbm9uLWluZGV4IHByb3BlcnRpZXMgb24gdHlwZWQgYXJyYXlzLlxuICAgICAgICAgICAoaXNUeXBlICYmIChrZXkgPT0gJ2J1ZmZlcicgfHwga2V5ID09ICdieXRlTGVuZ3RoJyB8fCBrZXkgPT0gJ2J5dGVPZmZzZXQnKSkgfHxcbiAgICAgICAgICAgLy8gU2tpcCBpbmRleCBwcm9wZXJ0aWVzLlxuICAgICAgICAgICBpc0luZGV4KGtleSwgbGVuZ3RoKVxuICAgICAgICApKSkge1xuICAgICAgcmVzdWx0LnB1c2goa2V5KTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhcnJheUxpa2VLZXlzO1xuIiwiLyoqXG4gKiBBIHNwZWNpYWxpemVkIHZlcnNpb24gb2YgYF8ubWFwYCBmb3IgYXJyYXlzIHdpdGhvdXQgc3VwcG9ydCBmb3IgaXRlcmF0ZWVcbiAqIHNob3J0aGFuZHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7QXJyYXl9IFthcnJheV0gVGhlIGFycmF5IHRvIGl0ZXJhdGUgb3Zlci5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIFRoZSBmdW5jdGlvbiBpbnZva2VkIHBlciBpdGVyYXRpb24uXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIG5ldyBtYXBwZWQgYXJyYXkuXG4gKi9cbmZ1bmN0aW9uIGFycmF5TWFwKGFycmF5LCBpdGVyYXRlZSkge1xuICB2YXIgaW5kZXggPSAtMSxcbiAgICAgIGxlbmd0aCA9IGFycmF5ID09IG51bGwgPyAwIDogYXJyYXkubGVuZ3RoLFxuICAgICAgcmVzdWx0ID0gQXJyYXkobGVuZ3RoKTtcblxuICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgIHJlc3VsdFtpbmRleF0gPSBpdGVyYXRlZShhcnJheVtpbmRleF0sIGluZGV4LCBhcnJheSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhcnJheU1hcDtcbiIsInZhciBiYXNlQXNzaWduVmFsdWUgPSByZXF1aXJlKCcuL19iYXNlQXNzaWduVmFsdWUnKSxcbiAgICBlcSA9IHJlcXVpcmUoJy4vZXEnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBBc3NpZ25zIGB2YWx1ZWAgdG8gYGtleWAgb2YgYG9iamVjdGAgaWYgdGhlIGV4aXN0aW5nIHZhbHVlIGlzIG5vdCBlcXVpdmFsZW50XG4gKiB1c2luZyBbYFNhbWVWYWx1ZVplcm9gXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1zYW1ldmFsdWV6ZXJvKVxuICogZm9yIGVxdWFsaXR5IGNvbXBhcmlzb25zLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gbW9kaWZ5LlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSBUaGUga2V5IG9mIHRoZSBwcm9wZXJ0eSB0byBhc3NpZ24uXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBhc3NpZ24uXG4gKi9cbmZ1bmN0aW9uIGFzc2lnblZhbHVlKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICB2YXIgb2JqVmFsdWUgPSBvYmplY3Rba2V5XTtcbiAgaWYgKCEoaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIGtleSkgJiYgZXEob2JqVmFsdWUsIHZhbHVlKSkgfHxcbiAgICAgICh2YWx1ZSA9PT0gdW5kZWZpbmVkICYmICEoa2V5IGluIG9iamVjdCkpKSB7XG4gICAgYmFzZUFzc2lnblZhbHVlKG9iamVjdCwga2V5LCB2YWx1ZSk7XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBhc3NpZ25WYWx1ZTtcbiIsInZhciBkZWZpbmVQcm9wZXJ0eSA9IHJlcXVpcmUoJy4vX2RlZmluZVByb3BlcnR5Jyk7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYGFzc2lnblZhbHVlYCBhbmQgYGFzc2lnbk1lcmdlVmFsdWVgIHdpdGhvdXRcbiAqIHZhbHVlIGNoZWNrcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIG1vZGlmeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgVGhlIGtleSBvZiB0aGUgcHJvcGVydHkgdG8gYXNzaWduLlxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gYXNzaWduLlxuICovXG5mdW5jdGlvbiBiYXNlQXNzaWduVmFsdWUob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIGlmIChrZXkgPT0gJ19fcHJvdG9fXycgJiYgZGVmaW5lUHJvcGVydHkpIHtcbiAgICBkZWZpbmVQcm9wZXJ0eShvYmplY3QsIGtleSwge1xuICAgICAgJ2NvbmZpZ3VyYWJsZSc6IHRydWUsXG4gICAgICAnZW51bWVyYWJsZSc6IHRydWUsXG4gICAgICAndmFsdWUnOiB2YWx1ZSxcbiAgICAgICd3cml0YWJsZSc6IHRydWVcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUFzc2lnblZhbHVlO1xuIiwidmFyIFN5bWJvbCA9IHJlcXVpcmUoJy4vX1N5bWJvbCcpLFxuICAgIGdldFJhd1RhZyA9IHJlcXVpcmUoJy4vX2dldFJhd1RhZycpLFxuICAgIG9iamVjdFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fb2JqZWN0VG9TdHJpbmcnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIG51bGxUYWcgPSAnW29iamVjdCBOdWxsXScsXG4gICAgdW5kZWZpbmVkVGFnID0gJ1tvYmplY3QgVW5kZWZpbmVkXSc7XG5cbi8qKiBCdWlsdC1pbiB2YWx1ZSByZWZlcmVuY2VzLiAqL1xudmFyIHN5bVRvU3RyaW5nVGFnID0gU3ltYm9sID8gU3ltYm9sLnRvU3RyaW5nVGFnIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBnZXRUYWdgIHdpdGhvdXQgZmFsbGJhY2tzIGZvciBidWdneSBlbnZpcm9ubWVudHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHF1ZXJ5LlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgYHRvU3RyaW5nVGFnYC5cbiAqL1xuZnVuY3Rpb24gYmFzZUdldFRhZyh2YWx1ZSkge1xuICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkVGFnIDogbnVsbFRhZztcbiAgfVxuICByZXR1cm4gKHN5bVRvU3RyaW5nVGFnICYmIHN5bVRvU3RyaW5nVGFnIGluIE9iamVjdCh2YWx1ZSkpXG4gICAgPyBnZXRSYXdUYWcodmFsdWUpXG4gICAgOiBvYmplY3RUb1N0cmluZyh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUdldFRhZztcbiIsInZhciBiYXNlR2V0VGFnID0gcmVxdWlyZSgnLi9fYmFzZUdldFRhZycpLFxuICAgIGlzT2JqZWN0TGlrZSA9IHJlcXVpcmUoJy4vaXNPYmplY3RMaWtlJyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhcmdzVGFnID0gJ1tvYmplY3QgQXJndW1lbnRzXSc7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8uaXNBcmd1bWVudHNgLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGBhcmd1bWVudHNgIG9iamVjdCxcbiAqL1xuZnVuY3Rpb24gYmFzZUlzQXJndW1lbnRzKHZhbHVlKSB7XG4gIHJldHVybiBpc09iamVjdExpa2UodmFsdWUpICYmIGJhc2VHZXRUYWcodmFsdWUpID09IGFyZ3NUYWc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUlzQXJndW1lbnRzO1xuIiwidmFyIGlzRnVuY3Rpb24gPSByZXF1aXJlKCcuL2lzRnVuY3Rpb24nKSxcbiAgICBpc01hc2tlZCA9IHJlcXVpcmUoJy4vX2lzTWFza2VkJyksXG4gICAgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0JyksXG4gICAgdG9Tb3VyY2UgPSByZXF1aXJlKCcuL190b1NvdXJjZScpO1xuXG4vKipcbiAqIFVzZWQgdG8gbWF0Y2ggYFJlZ0V4cGBcbiAqIFtzeW50YXggY2hhcmFjdGVyc10oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtcGF0dGVybnMpLlxuICovXG52YXIgcmVSZWdFeHBDaGFyID0gL1tcXFxcXiQuKis/KClbXFxde318XS9nO1xuXG4vKiogVXNlZCB0byBkZXRlY3QgaG9zdCBjb25zdHJ1Y3RvcnMgKFNhZmFyaSkuICovXG52YXIgcmVJc0hvc3RDdG9yID0gL15cXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXF0kLztcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIGZ1bmNQcm90byA9IEZ1bmN0aW9uLnByb3RvdHlwZSxcbiAgICBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKiBVc2VkIHRvIHJlc29sdmUgdGhlIGRlY29tcGlsZWQgc291cmNlIG9mIGZ1bmN0aW9ucy4gKi9cbnZhciBmdW5jVG9TdHJpbmcgPSBmdW5jUHJvdG8udG9TdHJpbmc7XG5cbi8qKiBVc2VkIHRvIGNoZWNrIG9iamVjdHMgZm9yIG93biBwcm9wZXJ0aWVzLiAqL1xudmFyIGhhc093blByb3BlcnR5ID0gb2JqZWN0UHJvdG8uaGFzT3duUHJvcGVydHk7XG5cbi8qKiBVc2VkIHRvIGRldGVjdCBpZiBhIG1ldGhvZCBpcyBuYXRpdmUuICovXG52YXIgcmVJc05hdGl2ZSA9IFJlZ0V4cCgnXicgK1xuICBmdW5jVG9TdHJpbmcuY2FsbChoYXNPd25Qcm9wZXJ0eSkucmVwbGFjZShyZVJlZ0V4cENoYXIsICdcXFxcJCYnKVxuICAucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXFxcXCgpfCBmb3IgLis/KD89XFxcXFxcXSkvZywgJyQxLio/JykgKyAnJCdcbik7XG5cbi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8uaXNOYXRpdmVgIHdpdGhvdXQgYmFkIHNoaW0gY2hlY2tzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGEgbmF0aXZlIGZ1bmN0aW9uLFxuICogIGVsc2UgYGZhbHNlYC5cbiAqL1xuZnVuY3Rpb24gYmFzZUlzTmF0aXZlKHZhbHVlKSB7XG4gIGlmICghaXNPYmplY3QodmFsdWUpIHx8IGlzTWFza2VkKHZhbHVlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB2YXIgcGF0dGVybiA9IGlzRnVuY3Rpb24odmFsdWUpID8gcmVJc05hdGl2ZSA6IHJlSXNIb3N0Q3RvcjtcbiAgcmV0dXJuIHBhdHRlcm4udGVzdCh0b1NvdXJjZSh2YWx1ZSkpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VJc05hdGl2ZTtcbiIsInZhciBiYXNlR2V0VGFnID0gcmVxdWlyZSgnLi9fYmFzZUdldFRhZycpLFxuICAgIGlzTGVuZ3RoID0gcmVxdWlyZSgnLi9pc0xlbmd0aCcpLFxuICAgIGlzT2JqZWN0TGlrZSA9IHJlcXVpcmUoJy4vaXNPYmplY3RMaWtlJyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhcmdzVGFnID0gJ1tvYmplY3QgQXJndW1lbnRzXScsXG4gICAgYXJyYXlUYWcgPSAnW29iamVjdCBBcnJheV0nLFxuICAgIGJvb2xUYWcgPSAnW29iamVjdCBCb29sZWFuXScsXG4gICAgZGF0ZVRhZyA9ICdbb2JqZWN0IERhdGVdJyxcbiAgICBlcnJvclRhZyA9ICdbb2JqZWN0IEVycm9yXScsXG4gICAgZnVuY1RhZyA9ICdbb2JqZWN0IEZ1bmN0aW9uXScsXG4gICAgbWFwVGFnID0gJ1tvYmplY3QgTWFwXScsXG4gICAgbnVtYmVyVGFnID0gJ1tvYmplY3QgTnVtYmVyXScsXG4gICAgb2JqZWN0VGFnID0gJ1tvYmplY3QgT2JqZWN0XScsXG4gICAgcmVnZXhwVGFnID0gJ1tvYmplY3QgUmVnRXhwXScsXG4gICAgc2V0VGFnID0gJ1tvYmplY3QgU2V0XScsXG4gICAgc3RyaW5nVGFnID0gJ1tvYmplY3QgU3RyaW5nXScsXG4gICAgd2Vha01hcFRhZyA9ICdbb2JqZWN0IFdlYWtNYXBdJztcblxudmFyIGFycmF5QnVmZmVyVGFnID0gJ1tvYmplY3QgQXJyYXlCdWZmZXJdJyxcbiAgICBkYXRhVmlld1RhZyA9ICdbb2JqZWN0IERhdGFWaWV3XScsXG4gICAgZmxvYXQzMlRhZyA9ICdbb2JqZWN0IEZsb2F0MzJBcnJheV0nLFxuICAgIGZsb2F0NjRUYWcgPSAnW29iamVjdCBGbG9hdDY0QXJyYXldJyxcbiAgICBpbnQ4VGFnID0gJ1tvYmplY3QgSW50OEFycmF5XScsXG4gICAgaW50MTZUYWcgPSAnW29iamVjdCBJbnQxNkFycmF5XScsXG4gICAgaW50MzJUYWcgPSAnW29iamVjdCBJbnQzMkFycmF5XScsXG4gICAgdWludDhUYWcgPSAnW29iamVjdCBVaW50OEFycmF5XScsXG4gICAgdWludDhDbGFtcGVkVGFnID0gJ1tvYmplY3QgVWludDhDbGFtcGVkQXJyYXldJyxcbiAgICB1aW50MTZUYWcgPSAnW29iamVjdCBVaW50MTZBcnJheV0nLFxuICAgIHVpbnQzMlRhZyA9ICdbb2JqZWN0IFVpbnQzMkFycmF5XSc7XG5cbi8qKiBVc2VkIHRvIGlkZW50aWZ5IGB0b1N0cmluZ1RhZ2AgdmFsdWVzIG9mIHR5cGVkIGFycmF5cy4gKi9cbnZhciB0eXBlZEFycmF5VGFncyA9IHt9O1xudHlwZWRBcnJheVRhZ3NbZmxvYXQzMlRhZ10gPSB0eXBlZEFycmF5VGFnc1tmbG9hdDY0VGFnXSA9XG50eXBlZEFycmF5VGFnc1tpbnQ4VGFnXSA9IHR5cGVkQXJyYXlUYWdzW2ludDE2VGFnXSA9XG50eXBlZEFycmF5VGFnc1tpbnQzMlRhZ10gPSB0eXBlZEFycmF5VGFnc1t1aW50OFRhZ10gPVxudHlwZWRBcnJheVRhZ3NbdWludDhDbGFtcGVkVGFnXSA9IHR5cGVkQXJyYXlUYWdzW3VpbnQxNlRhZ10gPVxudHlwZWRBcnJheVRhZ3NbdWludDMyVGFnXSA9IHRydWU7XG50eXBlZEFycmF5VGFnc1thcmdzVGFnXSA9IHR5cGVkQXJyYXlUYWdzW2FycmF5VGFnXSA9XG50eXBlZEFycmF5VGFnc1thcnJheUJ1ZmZlclRhZ10gPSB0eXBlZEFycmF5VGFnc1tib29sVGFnXSA9XG50eXBlZEFycmF5VGFnc1tkYXRhVmlld1RhZ10gPSB0eXBlZEFycmF5VGFnc1tkYXRlVGFnXSA9XG50eXBlZEFycmF5VGFnc1tlcnJvclRhZ10gPSB0eXBlZEFycmF5VGFnc1tmdW5jVGFnXSA9XG50eXBlZEFycmF5VGFnc1ttYXBUYWddID0gdHlwZWRBcnJheVRhZ3NbbnVtYmVyVGFnXSA9XG50eXBlZEFycmF5VGFnc1tvYmplY3RUYWddID0gdHlwZWRBcnJheVRhZ3NbcmVnZXhwVGFnXSA9XG50eXBlZEFycmF5VGFnc1tzZXRUYWddID0gdHlwZWRBcnJheVRhZ3Nbc3RyaW5nVGFnXSA9XG50eXBlZEFycmF5VGFnc1t3ZWFrTWFwVGFnXSA9IGZhbHNlO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmlzVHlwZWRBcnJheWAgd2l0aG91dCBOb2RlLmpzIG9wdGltaXphdGlvbnMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB0eXBlZCBhcnJheSwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBiYXNlSXNUeXBlZEFycmF5KHZhbHVlKSB7XG4gIHJldHVybiBpc09iamVjdExpa2UodmFsdWUpICYmXG4gICAgaXNMZW5ndGgodmFsdWUubGVuZ3RoKSAmJiAhIXR5cGVkQXJyYXlUYWdzW2Jhc2VHZXRUYWcodmFsdWUpXTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlSXNUeXBlZEFycmF5O1xuIiwidmFyIGlzUHJvdG90eXBlID0gcmVxdWlyZSgnLi9faXNQcm90b3R5cGUnKSxcbiAgICBuYXRpdmVLZXlzID0gcmVxdWlyZSgnLi9fbmF0aXZlS2V5cycpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmtleXNgIHdoaWNoIGRvZXNuJ3QgdHJlYXQgc3BhcnNlIGFycmF5cyBhcyBkZW5zZS5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIHF1ZXJ5LlxuICogQHJldHVybnMge0FycmF5fSBSZXR1cm5zIHRoZSBhcnJheSBvZiBwcm9wZXJ0eSBuYW1lcy5cbiAqL1xuZnVuY3Rpb24gYmFzZUtleXMob2JqZWN0KSB7XG4gIGlmICghaXNQcm90b3R5cGUob2JqZWN0KSkge1xuICAgIHJldHVybiBuYXRpdmVLZXlzKG9iamVjdCk7XG4gIH1cbiAgdmFyIHJlc3VsdCA9IFtdO1xuICBmb3IgKHZhciBrZXkgaW4gT2JqZWN0KG9iamVjdCkpIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIGtleSkgJiYga2V5ICE9ICdjb25zdHJ1Y3RvcicpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGtleSk7XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZUtleXM7XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0JyksXG4gICAgaXNQcm90b3R5cGUgPSByZXF1aXJlKCcuL19pc1Byb3RvdHlwZScpLFxuICAgIG5hdGl2ZUtleXNJbiA9IHJlcXVpcmUoJy4vX25hdGl2ZUtleXNJbicpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLmtleXNJbmAgd2hpY2ggZG9lc24ndCB0cmVhdCBzcGFyc2UgYXJyYXlzIGFzIGRlbnNlLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICovXG5mdW5jdGlvbiBiYXNlS2V5c0luKG9iamVjdCkge1xuICBpZiAoIWlzT2JqZWN0KG9iamVjdCkpIHtcbiAgICByZXR1cm4gbmF0aXZlS2V5c0luKG9iamVjdCk7XG4gIH1cbiAgdmFyIGlzUHJvdG8gPSBpc1Byb3RvdHlwZShvYmplY3QpLFxuICAgICAgcmVzdWx0ID0gW107XG5cbiAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgIGlmICghKGtleSA9PSAnY29uc3RydWN0b3InICYmIChpc1Byb3RvIHx8ICFoYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwga2V5KSkpKSB7XG4gICAgICByZXN1bHQucHVzaChrZXkpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VLZXlzSW47XG4iLCIvKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnByb3BlcnR5T2ZgIHdpdGhvdXQgc3VwcG9ydCBmb3IgZGVlcCBwYXRocy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iamVjdCBUaGUgb2JqZWN0IHRvIHF1ZXJ5LlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgYWNjZXNzb3IgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIGJhc2VQcm9wZXJ0eU9mKG9iamVjdCkge1xuICByZXR1cm4gZnVuY3Rpb24oa2V5KSB7XG4gICAgcmV0dXJuIG9iamVjdCA9PSBudWxsID8gdW5kZWZpbmVkIDogb2JqZWN0W2tleV07XG4gIH07XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZVByb3BlcnR5T2Y7XG4iLCJ2YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5JyksXG4gICAgb3ZlclJlc3QgPSByZXF1aXJlKCcuL19vdmVyUmVzdCcpLFxuICAgIHNldFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fc2V0VG9TdHJpbmcnKTtcblxuLyoqXG4gKiBUaGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBvZiBgXy5yZXN0YCB3aGljaCBkb2Vzbid0IHZhbGlkYXRlIG9yIGNvZXJjZSBhcmd1bWVudHMuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIGFwcGx5IGEgcmVzdCBwYXJhbWV0ZXIgdG8uXG4gKiBAcGFyYW0ge251bWJlcn0gW3N0YXJ0PWZ1bmMubGVuZ3RoLTFdIFRoZSBzdGFydCBwb3NpdGlvbiBvZiB0aGUgcmVzdCBwYXJhbWV0ZXIuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gYmFzZVJlc3QoZnVuYywgc3RhcnQpIHtcbiAgcmV0dXJuIHNldFRvU3RyaW5nKG92ZXJSZXN0KGZ1bmMsIHN0YXJ0LCBpZGVudGl0eSksIGZ1bmMgKyAnJyk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gYmFzZVJlc3Q7XG4iLCJ2YXIgY29uc3RhbnQgPSByZXF1aXJlKCcuL2NvbnN0YW50JyksXG4gICAgZGVmaW5lUHJvcGVydHkgPSByZXF1aXJlKCcuL19kZWZpbmVQcm9wZXJ0eScpLFxuICAgIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eScpO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBzZXRUb1N0cmluZ2Agd2l0aG91dCBzdXBwb3J0IGZvciBob3QgbG9vcCBzaG9ydGluZy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gbW9kaWZ5LlxuICogQHBhcmFtIHtGdW5jdGlvbn0gc3RyaW5nIFRoZSBgdG9TdHJpbmdgIHJlc3VsdC5cbiAqIEByZXR1cm5zIHtGdW5jdGlvbn0gUmV0dXJucyBgZnVuY2AuXG4gKi9cbnZhciBiYXNlU2V0VG9TdHJpbmcgPSAhZGVmaW5lUHJvcGVydHkgPyBpZGVudGl0eSA6IGZ1bmN0aW9uKGZ1bmMsIHN0cmluZykge1xuICByZXR1cm4gZGVmaW5lUHJvcGVydHkoZnVuYywgJ3RvU3RyaW5nJywge1xuICAgICdjb25maWd1cmFibGUnOiB0cnVlLFxuICAgICdlbnVtZXJhYmxlJzogZmFsc2UsXG4gICAgJ3ZhbHVlJzogY29uc3RhbnQoc3RyaW5nKSxcbiAgICAnd3JpdGFibGUnOiB0cnVlXG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlU2V0VG9TdHJpbmc7XG4iLCIvKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnRpbWVzYCB3aXRob3V0IHN1cHBvcnQgZm9yIGl0ZXJhdGVlIHNob3J0aGFuZHNcbiAqIG9yIG1heCBhcnJheSBsZW5ndGggY2hlY2tzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge251bWJlcn0gbiBUaGUgbnVtYmVyIG9mIHRpbWVzIHRvIGludm9rZSBgaXRlcmF0ZWVgLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gaXRlcmF0ZWUgVGhlIGZ1bmN0aW9uIGludm9rZWQgcGVyIGl0ZXJhdGlvbi5cbiAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyB0aGUgYXJyYXkgb2YgcmVzdWx0cy5cbiAqL1xuZnVuY3Rpb24gYmFzZVRpbWVzKG4sIGl0ZXJhdGVlKSB7XG4gIHZhciBpbmRleCA9IC0xLFxuICAgICAgcmVzdWx0ID0gQXJyYXkobik7XG5cbiAgd2hpbGUgKCsraW5kZXggPCBuKSB7XG4gICAgcmVzdWx0W2luZGV4XSA9IGl0ZXJhdGVlKGluZGV4KTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VUaW1lcztcbiIsInZhciBTeW1ib2wgPSByZXF1aXJlKCcuL19TeW1ib2wnKSxcbiAgICBhcnJheU1hcCA9IHJlcXVpcmUoJy4vX2FycmF5TWFwJyksXG4gICAgaXNBcnJheSA9IHJlcXVpcmUoJy4vaXNBcnJheScpLFxuICAgIGlzU3ltYm9sID0gcmVxdWlyZSgnLi9pc1N5bWJvbCcpO1xuXG4vKiogVXNlZCBhcyByZWZlcmVuY2VzIGZvciB2YXJpb3VzIGBOdW1iZXJgIGNvbnN0YW50cy4gKi9cbnZhciBJTkZJTklUWSA9IDEgLyAwO1xuXG4vKiogVXNlZCB0byBjb252ZXJ0IHN5bWJvbHMgdG8gcHJpbWl0aXZlcyBhbmQgc3RyaW5ncy4gKi9cbnZhciBzeW1ib2xQcm90byA9IFN5bWJvbCA/IFN5bWJvbC5wcm90b3R5cGUgOiB1bmRlZmluZWQsXG4gICAgc3ltYm9sVG9TdHJpbmcgPSBzeW1ib2xQcm90byA/IHN5bWJvbFByb3RvLnRvU3RyaW5nIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnRvU3RyaW5nYCB3aGljaCBkb2Vzbid0IGNvbnZlcnQgbnVsbGlzaFxuICogdmFsdWVzIHRvIGVtcHR5IHN0cmluZ3MuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHByb2Nlc3MuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBzdHJpbmcuXG4gKi9cbmZ1bmN0aW9uIGJhc2VUb1N0cmluZyh2YWx1ZSkge1xuICAvLyBFeGl0IGVhcmx5IGZvciBzdHJpbmdzIHRvIGF2b2lkIGEgcGVyZm9ybWFuY2UgaGl0IGluIHNvbWUgZW52aXJvbm1lbnRzLlxuICBpZiAodHlwZW9mIHZhbHVlID09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgIC8vIFJlY3Vyc2l2ZWx5IGNvbnZlcnQgdmFsdWVzIChzdXNjZXB0aWJsZSB0byBjYWxsIHN0YWNrIGxpbWl0cykuXG4gICAgcmV0dXJuIGFycmF5TWFwKHZhbHVlLCBiYXNlVG9TdHJpbmcpICsgJyc7XG4gIH1cbiAgaWYgKGlzU3ltYm9sKHZhbHVlKSkge1xuICAgIHJldHVybiBzeW1ib2xUb1N0cmluZyA/IHN5bWJvbFRvU3RyaW5nLmNhbGwodmFsdWUpIDogJyc7XG4gIH1cbiAgdmFyIHJlc3VsdCA9ICh2YWx1ZSArICcnKTtcbiAgcmV0dXJuIChyZXN1bHQgPT0gJzAnICYmICgxIC8gdmFsdWUpID09IC1JTkZJTklUWSkgPyAnLTAnIDogcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2VUb1N0cmluZztcbiIsIi8qKlxuICogVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gb2YgYF8udW5hcnlgIHdpdGhvdXQgc3VwcG9ydCBmb3Igc3RvcmluZyBtZXRhZGF0YS5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gY2FwIGFyZ3VtZW50cyBmb3IuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBjYXBwZWQgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIGJhc2VVbmFyeShmdW5jKSB7XG4gIHJldHVybiBmdW5jdGlvbih2YWx1ZSkge1xuICAgIHJldHVybiBmdW5jKHZhbHVlKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlVW5hcnk7XG4iLCJ2YXIgYXJyYXlNYXAgPSByZXF1aXJlKCcuL19hcnJheU1hcCcpO1xuXG4vKipcbiAqIFRoZSBiYXNlIGltcGxlbWVudGF0aW9uIG9mIGBfLnZhbHVlc2AgYW5kIGBfLnZhbHVlc0luYCB3aGljaCBjcmVhdGVzIGFuXG4gKiBhcnJheSBvZiBgb2JqZWN0YCBwcm9wZXJ0eSB2YWx1ZXMgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvcGVydHkgbmFtZXNcbiAqIG9mIGBwcm9wc2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIG9iamVjdCB0byBxdWVyeS5cbiAqIEBwYXJhbSB7QXJyYXl9IHByb3BzIFRoZSBwcm9wZXJ0eSBuYW1lcyB0byBnZXQgdmFsdWVzIGZvci5cbiAqIEByZXR1cm5zIHtPYmplY3R9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gYmFzZVZhbHVlcyhvYmplY3QsIHByb3BzKSB7XG4gIHJldHVybiBhcnJheU1hcChwcm9wcywgZnVuY3Rpb24oa2V5KSB7XG4gICAgcmV0dXJuIG9iamVjdFtrZXldO1xuICB9KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBiYXNlVmFsdWVzO1xuIiwidmFyIGFzc2lnblZhbHVlID0gcmVxdWlyZSgnLi9fYXNzaWduVmFsdWUnKSxcbiAgICBiYXNlQXNzaWduVmFsdWUgPSByZXF1aXJlKCcuL19iYXNlQXNzaWduVmFsdWUnKTtcblxuLyoqXG4gKiBDb3BpZXMgcHJvcGVydGllcyBvZiBgc291cmNlYCB0byBgb2JqZWN0YC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IHNvdXJjZSBUaGUgb2JqZWN0IHRvIGNvcHkgcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHtBcnJheX0gcHJvcHMgVGhlIHByb3BlcnR5IGlkZW50aWZpZXJzIHRvIGNvcHkuXG4gKiBAcGFyYW0ge09iamVjdH0gW29iamVjdD17fV0gVGhlIG9iamVjdCB0byBjb3B5IHByb3BlcnRpZXMgdG8uXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY3VzdG9taXplcl0gVGhlIGZ1bmN0aW9uIHRvIGN1c3RvbWl6ZSBjb3BpZWQgdmFsdWVzLlxuICogQHJldHVybnMge09iamVjdH0gUmV0dXJucyBgb2JqZWN0YC5cbiAqL1xuZnVuY3Rpb24gY29weU9iamVjdChzb3VyY2UsIHByb3BzLCBvYmplY3QsIGN1c3RvbWl6ZXIpIHtcbiAgdmFyIGlzTmV3ID0gIW9iamVjdDtcbiAgb2JqZWN0IHx8IChvYmplY3QgPSB7fSk7XG5cbiAgdmFyIGluZGV4ID0gLTEsXG4gICAgICBsZW5ndGggPSBwcm9wcy5sZW5ndGg7XG5cbiAgd2hpbGUgKCsraW5kZXggPCBsZW5ndGgpIHtcbiAgICB2YXIga2V5ID0gcHJvcHNbaW5kZXhdO1xuXG4gICAgdmFyIG5ld1ZhbHVlID0gY3VzdG9taXplclxuICAgICAgPyBjdXN0b21pemVyKG9iamVjdFtrZXldLCBzb3VyY2Vba2V5XSwga2V5LCBvYmplY3QsIHNvdXJjZSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKG5ld1ZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG5ld1ZhbHVlID0gc291cmNlW2tleV07XG4gICAgfVxuICAgIGlmIChpc05ldykge1xuICAgICAgYmFzZUFzc2lnblZhbHVlKG9iamVjdCwga2V5LCBuZXdWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2lnblZhbHVlKG9iamVjdCwga2V5LCBuZXdWYWx1ZSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBvYmplY3Q7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY29weU9iamVjdDtcbiIsInZhciByb290ID0gcmVxdWlyZSgnLi9fcm9vdCcpO1xuXG4vKiogVXNlZCB0byBkZXRlY3Qgb3ZlcnJlYWNoaW5nIGNvcmUtanMgc2hpbXMuICovXG52YXIgY29yZUpzRGF0YSA9IHJvb3RbJ19fY29yZS1qc19zaGFyZWRfXyddO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGNvcmVKc0RhdGE7XG4iLCJ2YXIgYmFzZVJlc3QgPSByZXF1aXJlKCcuL19iYXNlUmVzdCcpLFxuICAgIGlzSXRlcmF0ZWVDYWxsID0gcmVxdWlyZSgnLi9faXNJdGVyYXRlZUNhbGwnKTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgZnVuY3Rpb24gbGlrZSBgXy5hc3NpZ25gLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBhc3NpZ25lciBUaGUgZnVuY3Rpb24gdG8gYXNzaWduIHZhbHVlcy5cbiAqIEByZXR1cm5zIHtGdW5jdGlvbn0gUmV0dXJucyB0aGUgbmV3IGFzc2lnbmVyIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBjcmVhdGVBc3NpZ25lcihhc3NpZ25lcikge1xuICByZXR1cm4gYmFzZVJlc3QoZnVuY3Rpb24ob2JqZWN0LCBzb3VyY2VzKSB7XG4gICAgdmFyIGluZGV4ID0gLTEsXG4gICAgICAgIGxlbmd0aCA9IHNvdXJjZXMubGVuZ3RoLFxuICAgICAgICBjdXN0b21pemVyID0gbGVuZ3RoID4gMSA/IHNvdXJjZXNbbGVuZ3RoIC0gMV0gOiB1bmRlZmluZWQsXG4gICAgICAgIGd1YXJkID0gbGVuZ3RoID4gMiA/IHNvdXJjZXNbMl0gOiB1bmRlZmluZWQ7XG5cbiAgICBjdXN0b21pemVyID0gKGFzc2lnbmVyLmxlbmd0aCA+IDMgJiYgdHlwZW9mIGN1c3RvbWl6ZXIgPT0gJ2Z1bmN0aW9uJylcbiAgICAgID8gKGxlbmd0aC0tLCBjdXN0b21pemVyKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBpZiAoZ3VhcmQgJiYgaXNJdGVyYXRlZUNhbGwoc291cmNlc1swXSwgc291cmNlc1sxXSwgZ3VhcmQpKSB7XG4gICAgICBjdXN0b21pemVyID0gbGVuZ3RoIDwgMyA/IHVuZGVmaW5lZCA6IGN1c3RvbWl6ZXI7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH1cbiAgICBvYmplY3QgPSBPYmplY3Qob2JqZWN0KTtcbiAgICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgICAgdmFyIHNvdXJjZSA9IHNvdXJjZXNbaW5kZXhdO1xuICAgICAgaWYgKHNvdXJjZSkge1xuICAgICAgICBhc3NpZ25lcihvYmplY3QsIHNvdXJjZSwgaW5kZXgsIGN1c3RvbWl6ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gb2JqZWN0O1xuICB9KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjcmVhdGVBc3NpZ25lcjtcbiIsInZhciBlcSA9IHJlcXVpcmUoJy4vZXEnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBVc2VkIGJ5IGBfLmRlZmF1bHRzYCB0byBjdXN0b21pemUgaXRzIGBfLmFzc2lnbkluYCB1c2UgdG8gYXNzaWduIHByb3BlcnRpZXNcbiAqIG9mIHNvdXJjZSBvYmplY3RzIHRvIHRoZSBkZXN0aW5hdGlvbiBvYmplY3QgZm9yIGFsbCBkZXN0aW5hdGlvbiBwcm9wZXJ0aWVzXG4gKiB0aGF0IHJlc29sdmUgdG8gYHVuZGVmaW5lZGAuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gb2JqVmFsdWUgVGhlIGRlc3RpbmF0aW9uIHZhbHVlLlxuICogQHBhcmFtIHsqfSBzcmNWYWx1ZSBUaGUgc291cmNlIHZhbHVlLlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSBUaGUga2V5IG9mIHRoZSBwcm9wZXJ0eSB0byBhc3NpZ24uXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBwYXJlbnQgb2JqZWN0IG9mIGBvYmpWYWx1ZWAuXG4gKiBAcmV0dXJucyB7Kn0gUmV0dXJucyB0aGUgdmFsdWUgdG8gYXNzaWduLlxuICovXG5mdW5jdGlvbiBjdXN0b21EZWZhdWx0c0Fzc2lnbkluKG9ialZhbHVlLCBzcmNWYWx1ZSwga2V5LCBvYmplY3QpIHtcbiAgaWYgKG9ialZhbHVlID09PSB1bmRlZmluZWQgfHxcbiAgICAgIChlcShvYmpWYWx1ZSwgb2JqZWN0UHJvdG9ba2V5XSkgJiYgIWhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBrZXkpKSkge1xuICAgIHJldHVybiBzcmNWYWx1ZTtcbiAgfVxuICByZXR1cm4gb2JqVmFsdWU7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY3VzdG9tRGVmYXVsdHNBc3NpZ25JbjtcbiIsInZhciBnZXROYXRpdmUgPSByZXF1aXJlKCcuL19nZXROYXRpdmUnKTtcblxudmFyIGRlZmluZVByb3BlcnR5ID0gKGZ1bmN0aW9uKCkge1xuICB0cnkge1xuICAgIHZhciBmdW5jID0gZ2V0TmF0aXZlKE9iamVjdCwgJ2RlZmluZVByb3BlcnR5Jyk7XG4gICAgZnVuYyh7fSwgJycsIHt9KTtcbiAgICByZXR1cm4gZnVuYztcbiAgfSBjYXRjaCAoZSkge31cbn0oKSk7XG5cbm1vZHVsZS5leHBvcnRzID0gZGVmaW5lUHJvcGVydHk7XG4iLCJ2YXIgYmFzZVByb3BlcnR5T2YgPSByZXF1aXJlKCcuL19iYXNlUHJvcGVydHlPZicpO1xuXG4vKiogVXNlZCB0byBtYXAgY2hhcmFjdGVycyB0byBIVE1MIGVudGl0aWVzLiAqL1xudmFyIGh0bWxFc2NhcGVzID0ge1xuICAnJic6ICcmYW1wOycsXG4gICc8JzogJyZsdDsnLFxuICAnPic6ICcmZ3Q7JyxcbiAgJ1wiJzogJyZxdW90OycsXG4gIFwiJ1wiOiAnJiMzOTsnXG59O1xuXG4vKipcbiAqIFVzZWQgYnkgYF8uZXNjYXBlYCB0byBjb252ZXJ0IGNoYXJhY3RlcnMgdG8gSFRNTCBlbnRpdGllcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtzdHJpbmd9IGNociBUaGUgbWF0Y2hlZCBjaGFyYWN0ZXIgdG8gZXNjYXBlLlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgZXNjYXBlZCBjaGFyYWN0ZXIuXG4gKi9cbnZhciBlc2NhcGVIdG1sQ2hhciA9IGJhc2VQcm9wZXJ0eU9mKGh0bWxFc2NhcGVzKTtcblxubW9kdWxlLmV4cG9ydHMgPSBlc2NhcGVIdG1sQ2hhcjtcbiIsIi8qKiBVc2VkIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIGZvciBpbmNsdXNpb24gaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLiAqL1xudmFyIHN0cmluZ0VzY2FwZXMgPSB7XG4gICdcXFxcJzogJ1xcXFwnLFxuICBcIidcIjogXCInXCIsXG4gICdcXG4nOiAnbicsXG4gICdcXHInOiAncicsXG4gICdcXHUyMDI4JzogJ3UyMDI4JyxcbiAgJ1xcdTIwMjknOiAndTIwMjknXG59O1xuXG4vKipcbiAqIFVzZWQgYnkgYF8udGVtcGxhdGVgIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIGZvciBpbmNsdXNpb24gaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hyIFRoZSBtYXRjaGVkIGNoYXJhY3RlciB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBlc2NhcGVkIGNoYXJhY3Rlci5cbiAqL1xuZnVuY3Rpb24gZXNjYXBlU3RyaW5nQ2hhcihjaHIpIHtcbiAgcmV0dXJuICdcXFxcJyArIHN0cmluZ0VzY2FwZXNbY2hyXTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBlc2NhcGVTdHJpbmdDaGFyO1xuIiwiLyoqIERldGVjdCBmcmVlIHZhcmlhYmxlIGBnbG9iYWxgIGZyb20gTm9kZS5qcy4gKi9cbnZhciBmcmVlR2xvYmFsID0gdHlwZW9mIGdsb2JhbCA9PSAnb2JqZWN0JyAmJiBnbG9iYWwgJiYgZ2xvYmFsLk9iamVjdCA9PT0gT2JqZWN0ICYmIGdsb2JhbDtcblxubW9kdWxlLmV4cG9ydHMgPSBmcmVlR2xvYmFsO1xuIiwidmFyIGJhc2VJc05hdGl2ZSA9IHJlcXVpcmUoJy4vX2Jhc2VJc05hdGl2ZScpLFxuICAgIGdldFZhbHVlID0gcmVxdWlyZSgnLi9fZ2V0VmFsdWUnKTtcblxuLyoqXG4gKiBHZXRzIHRoZSBuYXRpdmUgZnVuY3Rpb24gYXQgYGtleWAgb2YgYG9iamVjdGAuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIG9iamVjdCB0byBxdWVyeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgVGhlIGtleSBvZiB0aGUgbWV0aG9kIHRvIGdldC5cbiAqIEByZXR1cm5zIHsqfSBSZXR1cm5zIHRoZSBmdW5jdGlvbiBpZiBpdCdzIG5hdGl2ZSwgZWxzZSBgdW5kZWZpbmVkYC5cbiAqL1xuZnVuY3Rpb24gZ2V0TmF0aXZlKG9iamVjdCwga2V5KSB7XG4gIHZhciB2YWx1ZSA9IGdldFZhbHVlKG9iamVjdCwga2V5KTtcbiAgcmV0dXJuIGJhc2VJc05hdGl2ZSh2YWx1ZSkgPyB2YWx1ZSA6IHVuZGVmaW5lZDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBnZXROYXRpdmU7XG4iLCJ2YXIgb3ZlckFyZyA9IHJlcXVpcmUoJy4vX292ZXJBcmcnKTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgZ2V0UHJvdG90eXBlID0gb3ZlckFyZyhPYmplY3QuZ2V0UHJvdG90eXBlT2YsIE9iamVjdCk7XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0UHJvdG90eXBlO1xuIiwidmFyIFN5bWJvbCA9IHJlcXVpcmUoJy4vX1N5bWJvbCcpO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIFVzZWQgdG8gcmVzb2x2ZSB0aGVcbiAqIFtgdG9TdHJpbmdUYWdgXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1vYmplY3QucHJvdG90eXBlLnRvc3RyaW5nKVxuICogb2YgdmFsdWVzLlxuICovXG52YXIgbmF0aXZlT2JqZWN0VG9TdHJpbmcgPSBvYmplY3RQcm90by50b1N0cmluZztcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgc3ltVG9TdHJpbmdUYWcgPSBTeW1ib2wgPyBTeW1ib2wudG9TdHJpbmdUYWcgOiB1bmRlZmluZWQ7XG5cbi8qKlxuICogQSBzcGVjaWFsaXplZCB2ZXJzaW9uIG9mIGBiYXNlR2V0VGFnYCB3aGljaCBpZ25vcmVzIGBTeW1ib2wudG9TdHJpbmdUYWdgIHZhbHVlcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSByYXcgYHRvU3RyaW5nVGFnYC5cbiAqL1xuZnVuY3Rpb24gZ2V0UmF3VGFnKHZhbHVlKSB7XG4gIHZhciBpc093biA9IGhhc093blByb3BlcnR5LmNhbGwodmFsdWUsIHN5bVRvU3RyaW5nVGFnKSxcbiAgICAgIHRhZyA9IHZhbHVlW3N5bVRvU3RyaW5nVGFnXTtcblxuICB0cnkge1xuICAgIHZhbHVlW3N5bVRvU3RyaW5nVGFnXSA9IHVuZGVmaW5lZDtcbiAgICB2YXIgdW5tYXNrZWQgPSB0cnVlO1xuICB9IGNhdGNoIChlKSB7fVxuXG4gIHZhciByZXN1bHQgPSBuYXRpdmVPYmplY3RUb1N0cmluZy5jYWxsKHZhbHVlKTtcbiAgaWYgKHVubWFza2VkKSB7XG4gICAgaWYgKGlzT3duKSB7XG4gICAgICB2YWx1ZVtzeW1Ub1N0cmluZ1RhZ10gPSB0YWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRlbGV0ZSB2YWx1ZVtzeW1Ub1N0cmluZ1RhZ107XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0UmF3VGFnO1xuIiwiLyoqXG4gKiBHZXRzIHRoZSB2YWx1ZSBhdCBga2V5YCBvZiBgb2JqZWN0YC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtPYmplY3R9IFtvYmplY3RdIFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcGFyYW0ge3N0cmluZ30ga2V5IFRoZSBrZXkgb2YgdGhlIHByb3BlcnR5IHRvIGdldC5cbiAqIEByZXR1cm5zIHsqfSBSZXR1cm5zIHRoZSBwcm9wZXJ0eSB2YWx1ZS5cbiAqL1xuZnVuY3Rpb24gZ2V0VmFsdWUob2JqZWN0LCBrZXkpIHtcbiAgcmV0dXJuIG9iamVjdCA9PSBudWxsID8gdW5kZWZpbmVkIDogb2JqZWN0W2tleV07XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZ2V0VmFsdWU7XG4iLCIvKiogVXNlZCBhcyByZWZlcmVuY2VzIGZvciB2YXJpb3VzIGBOdW1iZXJgIGNvbnN0YW50cy4gKi9cbnZhciBNQVhfU0FGRV9JTlRFR0VSID0gOTAwNzE5OTI1NDc0MDk5MTtcblxuLyoqIFVzZWQgdG8gZGV0ZWN0IHVuc2lnbmVkIGludGVnZXIgdmFsdWVzLiAqL1xudmFyIHJlSXNVaW50ID0gL14oPzowfFsxLTldXFxkKikkLztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhIHZhbGlkIGFycmF5LWxpa2UgaW5kZXguXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHBhcmFtIHtudW1iZXJ9IFtsZW5ndGg9TUFYX1NBRkVfSU5URUdFUl0gVGhlIHVwcGVyIGJvdW5kcyBvZiBhIHZhbGlkIGluZGV4LlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB2YWxpZCBpbmRleCwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc0luZGV4KHZhbHVlLCBsZW5ndGgpIHtcbiAgdmFyIHR5cGUgPSB0eXBlb2YgdmFsdWU7XG4gIGxlbmd0aCA9IGxlbmd0aCA9PSBudWxsID8gTUFYX1NBRkVfSU5URUdFUiA6IGxlbmd0aDtcblxuICByZXR1cm4gISFsZW5ndGggJiZcbiAgICAodHlwZSA9PSAnbnVtYmVyJyB8fFxuICAgICAgKHR5cGUgIT0gJ3N5bWJvbCcgJiYgcmVJc1VpbnQudGVzdCh2YWx1ZSkpKSAmJlxuICAgICAgICAodmFsdWUgPiAtMSAmJiB2YWx1ZSAlIDEgPT0gMCAmJiB2YWx1ZSA8IGxlbmd0aCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNJbmRleDtcbiIsInZhciBlcSA9IHJlcXVpcmUoJy4vZXEnKSxcbiAgICBpc0FycmF5TGlrZSA9IHJlcXVpcmUoJy4vaXNBcnJheUxpa2UnKSxcbiAgICBpc0luZGV4ID0gcmVxdWlyZSgnLi9faXNJbmRleCcpLFxuICAgIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9pc09iamVjdCcpO1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gYXJndW1lbnRzIGFyZSBmcm9tIGFuIGl0ZXJhdGVlIGNhbGwuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHBvdGVudGlhbCBpdGVyYXRlZSB2YWx1ZSBhcmd1bWVudC5cbiAqIEBwYXJhbSB7Kn0gaW5kZXggVGhlIHBvdGVudGlhbCBpdGVyYXRlZSBpbmRleCBvciBrZXkgYXJndW1lbnQuXG4gKiBAcGFyYW0geyp9IG9iamVjdCBUaGUgcG90ZW50aWFsIGl0ZXJhdGVlIG9iamVjdCBhcmd1bWVudC5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgYXJndW1lbnRzIGFyZSBmcm9tIGFuIGl0ZXJhdGVlIGNhbGwsXG4gKiAgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc0l0ZXJhdGVlQ2FsbCh2YWx1ZSwgaW5kZXgsIG9iamVjdCkge1xuICBpZiAoIWlzT2JqZWN0KG9iamVjdCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHR5cGUgPSB0eXBlb2YgaW5kZXg7XG4gIGlmICh0eXBlID09ICdudW1iZXInXG4gICAgICAgID8gKGlzQXJyYXlMaWtlKG9iamVjdCkgJiYgaXNJbmRleChpbmRleCwgb2JqZWN0Lmxlbmd0aCkpXG4gICAgICAgIDogKHR5cGUgPT0gJ3N0cmluZycgJiYgaW5kZXggaW4gb2JqZWN0KVxuICAgICAgKSB7XG4gICAgcmV0dXJuIGVxKG9iamVjdFtpbmRleF0sIHZhbHVlKTtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNJdGVyYXRlZUNhbGw7XG4iLCJ2YXIgY29yZUpzRGF0YSA9IHJlcXVpcmUoJy4vX2NvcmVKc0RhdGEnKTtcblxuLyoqIFVzZWQgdG8gZGV0ZWN0IG1ldGhvZHMgbWFzcXVlcmFkaW5nIGFzIG5hdGl2ZS4gKi9cbnZhciBtYXNrU3JjS2V5ID0gKGZ1bmN0aW9uKCkge1xuICB2YXIgdWlkID0gL1teLl0rJC8uZXhlYyhjb3JlSnNEYXRhICYmIGNvcmVKc0RhdGEua2V5cyAmJiBjb3JlSnNEYXRhLmtleXMuSUVfUFJPVE8gfHwgJycpO1xuICByZXR1cm4gdWlkID8gKCdTeW1ib2woc3JjKV8xLicgKyB1aWQpIDogJyc7XG59KCkpO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgZnVuY2AgaGFzIGl0cyBzb3VyY2UgbWFza2VkLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgZnVuY2AgaXMgbWFza2VkLCBlbHNlIGBmYWxzZWAuXG4gKi9cbmZ1bmN0aW9uIGlzTWFza2VkKGZ1bmMpIHtcbiAgcmV0dXJuICEhbWFza1NyY0tleSAmJiAobWFza1NyY0tleSBpbiBmdW5jKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc01hc2tlZDtcbiIsIi8qKiBVc2VkIGZvciBidWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcy4gKi9cbnZhciBvYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgbGlrZWx5IGEgcHJvdG90eXBlIG9iamVjdC5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBhIHByb3RvdHlwZSwgZWxzZSBgZmFsc2VgLlxuICovXG5mdW5jdGlvbiBpc1Byb3RvdHlwZSh2YWx1ZSkge1xuICB2YXIgQ3RvciA9IHZhbHVlICYmIHZhbHVlLmNvbnN0cnVjdG9yLFxuICAgICAgcHJvdG8gPSAodHlwZW9mIEN0b3IgPT0gJ2Z1bmN0aW9uJyAmJiBDdG9yLnByb3RvdHlwZSkgfHwgb2JqZWN0UHJvdG87XG5cbiAgcmV0dXJuIHZhbHVlID09PSBwcm90bztcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc1Byb3RvdHlwZTtcbiIsInZhciBvdmVyQXJnID0gcmVxdWlyZSgnLi9fb3ZlckFyZycpO1xuXG4vKiBCdWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcyBmb3IgdGhvc2Ugd2l0aCB0aGUgc2FtZSBuYW1lIGFzIG90aGVyIGBsb2Rhc2hgIG1ldGhvZHMuICovXG52YXIgbmF0aXZlS2V5cyA9IG92ZXJBcmcoT2JqZWN0LmtleXMsIE9iamVjdCk7XG5cbm1vZHVsZS5leHBvcnRzID0gbmF0aXZlS2V5cztcbiIsIi8qKlxuICogVGhpcyBmdW5jdGlvbiBpcyBsaWtlXG4gKiBbYE9iamVjdC5rZXlzYF0oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtb2JqZWN0LmtleXMpXG4gKiBleGNlcHQgdGhhdCBpdCBpbmNsdWRlcyBpbmhlcml0ZWQgZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICovXG5mdW5jdGlvbiBuYXRpdmVLZXlzSW4ob2JqZWN0KSB7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgaWYgKG9iamVjdCAhPSBudWxsKSB7XG4gICAgZm9yICh2YXIga2V5IGluIE9iamVjdChvYmplY3QpKSB7XG4gICAgICByZXN1bHQucHVzaChrZXkpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IG5hdGl2ZUtleXNJbjtcbiIsInZhciBmcmVlR2xvYmFsID0gcmVxdWlyZSgnLi9fZnJlZUdsb2JhbCcpO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYGV4cG9ydHNgLiAqL1xudmFyIGZyZWVFeHBvcnRzID0gdHlwZW9mIGV4cG9ydHMgPT0gJ29iamVjdCcgJiYgZXhwb3J0cyAmJiAhZXhwb3J0cy5ub2RlVHlwZSAmJiBleHBvcnRzO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYG1vZHVsZWAuICovXG52YXIgZnJlZU1vZHVsZSA9IGZyZWVFeHBvcnRzICYmIHR5cGVvZiBtb2R1bGUgPT0gJ29iamVjdCcgJiYgbW9kdWxlICYmICFtb2R1bGUubm9kZVR5cGUgJiYgbW9kdWxlO1xuXG4vKiogRGV0ZWN0IHRoZSBwb3B1bGFyIENvbW1vbkpTIGV4dGVuc2lvbiBgbW9kdWxlLmV4cG9ydHNgLiAqL1xudmFyIG1vZHVsZUV4cG9ydHMgPSBmcmVlTW9kdWxlICYmIGZyZWVNb2R1bGUuZXhwb3J0cyA9PT0gZnJlZUV4cG9ydHM7XG5cbi8qKiBEZXRlY3QgZnJlZSB2YXJpYWJsZSBgcHJvY2Vzc2AgZnJvbSBOb2RlLmpzLiAqL1xudmFyIGZyZWVQcm9jZXNzID0gbW9kdWxlRXhwb3J0cyAmJiBmcmVlR2xvYmFsLnByb2Nlc3M7XG5cbi8qKiBVc2VkIHRvIGFjY2VzcyBmYXN0ZXIgTm9kZS5qcyBoZWxwZXJzLiAqL1xudmFyIG5vZGVVdGlsID0gKGZ1bmN0aW9uKCkge1xuICB0cnkge1xuICAgIC8vIFVzZSBgdXRpbC50eXBlc2AgZm9yIE5vZGUuanMgMTArLlxuICAgIHZhciB0eXBlcyA9IGZyZWVNb2R1bGUgJiYgZnJlZU1vZHVsZS5yZXF1aXJlICYmIGZyZWVNb2R1bGUucmVxdWlyZSgndXRpbCcpLnR5cGVzO1xuXG4gICAgaWYgKHR5cGVzKSB7XG4gICAgICByZXR1cm4gdHlwZXM7XG4gICAgfVxuXG4gICAgLy8gTGVnYWN5IGBwcm9jZXNzLmJpbmRpbmcoJ3V0aWwnKWAgZm9yIE5vZGUuanMgPCAxMC5cbiAgICByZXR1cm4gZnJlZVByb2Nlc3MgJiYgZnJlZVByb2Nlc3MuYmluZGluZyAmJiBmcmVlUHJvY2Vzcy5iaW5kaW5nKCd1dGlsJyk7XG4gIH0gY2F0Y2ggKGUpIHt9XG59KCkpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IG5vZGVVdGlsO1xuIiwiLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqXG4gKiBVc2VkIHRvIHJlc29sdmUgdGhlXG4gKiBbYHRvU3RyaW5nVGFnYF0oaHR0cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNy4wLyNzZWMtb2JqZWN0LnByb3RvdHlwZS50b3N0cmluZylcbiAqIG9mIHZhbHVlcy5cbiAqL1xudmFyIG5hdGl2ZU9iamVjdFRvU3RyaW5nID0gb2JqZWN0UHJvdG8udG9TdHJpbmc7XG5cbi8qKlxuICogQ29udmVydHMgYHZhbHVlYCB0byBhIHN0cmluZyB1c2luZyBgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZ2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBjb252ZXJ0ZWQgc3RyaW5nLlxuICovXG5mdW5jdGlvbiBvYmplY3RUb1N0cmluZyh2YWx1ZSkge1xuICByZXR1cm4gbmF0aXZlT2JqZWN0VG9TdHJpbmcuY2FsbCh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gb2JqZWN0VG9TdHJpbmc7XG4iLCIvKipcbiAqIENyZWF0ZXMgYSB1bmFyeSBmdW5jdGlvbiB0aGF0IGludm9rZXMgYGZ1bmNgIHdpdGggaXRzIGFyZ3VtZW50IHRyYW5zZm9ybWVkLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byB3cmFwLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gdHJhbnNmb3JtIFRoZSBhcmd1bWVudCB0cmFuc2Zvcm0uXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gb3ZlckFyZyhmdW5jLCB0cmFuc2Zvcm0pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uKGFyZykge1xuICAgIHJldHVybiBmdW5jKHRyYW5zZm9ybShhcmcpKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBvdmVyQXJnO1xuIiwidmFyIGFwcGx5ID0gcmVxdWlyZSgnLi9fYXBwbHknKTtcblxuLyogQnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMgZm9yIHRob3NlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBvdGhlciBgbG9kYXNoYCBtZXRob2RzLiAqL1xudmFyIG5hdGl2ZU1heCA9IE1hdGgubWF4O1xuXG4vKipcbiAqIEEgc3BlY2lhbGl6ZWQgdmVyc2lvbiBvZiBgYmFzZVJlc3RgIHdoaWNoIHRyYW5zZm9ybXMgdGhlIHJlc3QgYXJyYXkuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIGFwcGx5IGEgcmVzdCBwYXJhbWV0ZXIgdG8uXG4gKiBAcGFyYW0ge251bWJlcn0gW3N0YXJ0PWZ1bmMubGVuZ3RoLTFdIFRoZSBzdGFydCBwb3NpdGlvbiBvZiB0aGUgcmVzdCBwYXJhbWV0ZXIuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSB0cmFuc2Zvcm0gVGhlIHJlc3QgYXJyYXkgdHJhbnNmb3JtLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIG92ZXJSZXN0KGZ1bmMsIHN0YXJ0LCB0cmFuc2Zvcm0pIHtcbiAgc3RhcnQgPSBuYXRpdmVNYXgoc3RhcnQgPT09IHVuZGVmaW5lZCA/IChmdW5jLmxlbmd0aCAtIDEpIDogc3RhcnQsIDApO1xuICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGFyZ3MgPSBhcmd1bWVudHMsXG4gICAgICAgIGluZGV4ID0gLTEsXG4gICAgICAgIGxlbmd0aCA9IG5hdGl2ZU1heChhcmdzLmxlbmd0aCAtIHN0YXJ0LCAwKSxcbiAgICAgICAgYXJyYXkgPSBBcnJheShsZW5ndGgpO1xuXG4gICAgd2hpbGUgKCsraW5kZXggPCBsZW5ndGgpIHtcbiAgICAgIGFycmF5W2luZGV4XSA9IGFyZ3Nbc3RhcnQgKyBpbmRleF07XG4gICAgfVxuICAgIGluZGV4ID0gLTE7XG4gICAgdmFyIG90aGVyQXJncyA9IEFycmF5KHN0YXJ0ICsgMSk7XG4gICAgd2hpbGUgKCsraW5kZXggPCBzdGFydCkge1xuICAgICAgb3RoZXJBcmdzW2luZGV4XSA9IGFyZ3NbaW5kZXhdO1xuICAgIH1cbiAgICBvdGhlckFyZ3Nbc3RhcnRdID0gdHJhbnNmb3JtKGFycmF5KTtcbiAgICByZXR1cm4gYXBwbHkoZnVuYywgdGhpcywgb3RoZXJBcmdzKTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBvdmVyUmVzdDtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVFc2NhcGUgPSAvPCUtKFtcXHNcXFNdKz8pJT4vZztcblxubW9kdWxlLmV4cG9ydHMgPSByZUVzY2FwZTtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVFdmFsdWF0ZSA9IC88JShbXFxzXFxTXSs/KSU+L2c7XG5cbm1vZHVsZS5leHBvcnRzID0gcmVFdmFsdWF0ZTtcbiIsIi8qKiBVc2VkIHRvIG1hdGNoIHRlbXBsYXRlIGRlbGltaXRlcnMuICovXG52YXIgcmVJbnRlcnBvbGF0ZSA9IC88JT0oW1xcc1xcU10rPyklPi9nO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHJlSW50ZXJwb2xhdGU7XG4iLCJ2YXIgZnJlZUdsb2JhbCA9IHJlcXVpcmUoJy4vX2ZyZWVHbG9iYWwnKTtcblxuLyoqIERldGVjdCBmcmVlIHZhcmlhYmxlIGBzZWxmYC4gKi9cbnZhciBmcmVlU2VsZiA9IHR5cGVvZiBzZWxmID09ICdvYmplY3QnICYmIHNlbGYgJiYgc2VsZi5PYmplY3QgPT09IE9iamVjdCAmJiBzZWxmO1xuXG4vKiogVXNlZCBhcyBhIHJlZmVyZW5jZSB0byB0aGUgZ2xvYmFsIG9iamVjdC4gKi9cbnZhciByb290ID0gZnJlZUdsb2JhbCB8fCBmcmVlU2VsZiB8fCBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHJvb3Q7XG4iLCJ2YXIgYmFzZVNldFRvU3RyaW5nID0gcmVxdWlyZSgnLi9fYmFzZVNldFRvU3RyaW5nJyksXG4gICAgc2hvcnRPdXQgPSByZXF1aXJlKCcuL19zaG9ydE91dCcpO1xuXG4vKipcbiAqIFNldHMgdGhlIGB0b1N0cmluZ2AgbWV0aG9kIG9mIGBmdW5jYCB0byByZXR1cm4gYHN0cmluZ2AuXG4gKlxuICogQHByaXZhdGVcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgVGhlIGZ1bmN0aW9uIHRvIG1vZGlmeS5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IHN0cmluZyBUaGUgYHRvU3RyaW5nYCByZXN1bHQuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgYGZ1bmNgLlxuICovXG52YXIgc2V0VG9TdHJpbmcgPSBzaG9ydE91dChiYXNlU2V0VG9TdHJpbmcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHNldFRvU3RyaW5nO1xuIiwiLyoqIFVzZWQgdG8gZGV0ZWN0IGhvdCBmdW5jdGlvbnMgYnkgbnVtYmVyIG9mIGNhbGxzIHdpdGhpbiBhIHNwYW4gb2YgbWlsbGlzZWNvbmRzLiAqL1xudmFyIEhPVF9DT1VOVCA9IDgwMCxcbiAgICBIT1RfU1BBTiA9IDE2O1xuXG4vKiBCdWlsdC1pbiBtZXRob2QgcmVmZXJlbmNlcyBmb3IgdGhvc2Ugd2l0aCB0aGUgc2FtZSBuYW1lIGFzIG90aGVyIGBsb2Rhc2hgIG1ldGhvZHMuICovXG52YXIgbmF0aXZlTm93ID0gRGF0ZS5ub3c7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQnbGwgc2hvcnQgb3V0IGFuZCBpbnZva2UgYGlkZW50aXR5YCBpbnN0ZWFkXG4gKiBvZiBgZnVuY2Agd2hlbiBpdCdzIGNhbGxlZCBgSE9UX0NPVU5UYCBvciBtb3JlIHRpbWVzIGluIGBIT1RfU1BBTmBcbiAqIG1pbGxpc2Vjb25kcy5cbiAqXG4gKiBAcHJpdmF0ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gcmVzdHJpY3QuXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259IFJldHVybnMgdGhlIG5ldyBzaG9ydGFibGUgZnVuY3Rpb24uXG4gKi9cbmZ1bmN0aW9uIHNob3J0T3V0KGZ1bmMpIHtcbiAgdmFyIGNvdW50ID0gMCxcbiAgICAgIGxhc3RDYWxsZWQgPSAwO1xuXG4gIHJldHVybiBmdW5jdGlvbigpIHtcbiAgICB2YXIgc3RhbXAgPSBuYXRpdmVOb3coKSxcbiAgICAgICAgcmVtYWluaW5nID0gSE9UX1NQQU4gLSAoc3RhbXAgLSBsYXN0Q2FsbGVkKTtcblxuICAgIGxhc3RDYWxsZWQgPSBzdGFtcDtcbiAgICBpZiAocmVtYWluaW5nID4gMCkge1xuICAgICAgaWYgKCsrY291bnQgPj0gSE9UX0NPVU5UKSB7XG4gICAgICAgIHJldHVybiBhcmd1bWVudHNbMF07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvdW50ID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIGZ1bmMuYXBwbHkodW5kZWZpbmVkLCBhcmd1bWVudHMpO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHNob3J0T3V0O1xuIiwiLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIGZ1bmNQcm90byA9IEZ1bmN0aW9uLnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gcmVzb2x2ZSB0aGUgZGVjb21waWxlZCBzb3VyY2Ugb2YgZnVuY3Rpb25zLiAqL1xudmFyIGZ1bmNUb1N0cmluZyA9IGZ1bmNQcm90by50b1N0cmluZztcblxuLyoqXG4gKiBDb252ZXJ0cyBgZnVuY2AgdG8gaXRzIHNvdXJjZSBjb2RlLlxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmdW5jIFRoZSBmdW5jdGlvbiB0byBjb252ZXJ0LlxuICogQHJldHVybnMge3N0cmluZ30gUmV0dXJucyB0aGUgc291cmNlIGNvZGUuXG4gKi9cbmZ1bmN0aW9uIHRvU291cmNlKGZ1bmMpIHtcbiAgaWYgKGZ1bmMgIT0gbnVsbCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gZnVuY1RvU3RyaW5nLmNhbGwoZnVuYyk7XG4gICAgfSBjYXRjaCAoZSkge31cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIChmdW5jICsgJycpO1xuICAgIH0gY2F0Y2ggKGUpIHt9XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHRvU291cmNlO1xuIiwidmFyIGNvcHlPYmplY3QgPSByZXF1aXJlKCcuL19jb3B5T2JqZWN0JyksXG4gICAgY3JlYXRlQXNzaWduZXIgPSByZXF1aXJlKCcuL19jcmVhdGVBc3NpZ25lcicpLFxuICAgIGtleXNJbiA9IHJlcXVpcmUoJy4va2V5c0luJyk7XG5cbi8qKlxuICogVGhpcyBtZXRob2QgaXMgbGlrZSBgXy5hc3NpZ25JbmAgZXhjZXB0IHRoYXQgaXQgYWNjZXB0cyBgY3VzdG9taXplcmBcbiAqIHdoaWNoIGlzIGludm9rZWQgdG8gcHJvZHVjZSB0aGUgYXNzaWduZWQgdmFsdWVzLiBJZiBgY3VzdG9taXplcmAgcmV0dXJuc1xuICogYHVuZGVmaW5lZGAsIGFzc2lnbm1lbnQgaXMgaGFuZGxlZCBieSB0aGUgbWV0aG9kIGluc3RlYWQuIFRoZSBgY3VzdG9taXplcmBcbiAqIGlzIGludm9rZWQgd2l0aCBmaXZlIGFyZ3VtZW50czogKG9ialZhbHVlLCBzcmNWYWx1ZSwga2V5LCBvYmplY3QsIHNvdXJjZSkuXG4gKlxuICogKipOb3RlOioqIFRoaXMgbWV0aG9kIG11dGF0ZXMgYG9iamVjdGAuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGFsaWFzIGV4dGVuZFdpdGhcbiAqIEBjYXRlZ29yeSBPYmplY3RcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmplY3QgVGhlIGRlc3RpbmF0aW9uIG9iamVjdC5cbiAqIEBwYXJhbSB7Li4uT2JqZWN0fSBzb3VyY2VzIFRoZSBzb3VyY2Ugb2JqZWN0cy5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtjdXN0b21pemVyXSBUaGUgZnVuY3Rpb24gdG8gY3VzdG9taXplIGFzc2lnbmVkIHZhbHVlcy5cbiAqIEByZXR1cm5zIHtPYmplY3R9IFJldHVybnMgYG9iamVjdGAuXG4gKiBAc2VlIF8uYXNzaWduV2l0aFxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBjdXN0b21pemVyKG9ialZhbHVlLCBzcmNWYWx1ZSkge1xuICogICByZXR1cm4gXy5pc1VuZGVmaW5lZChvYmpWYWx1ZSkgPyBzcmNWYWx1ZSA6IG9ialZhbHVlO1xuICogfVxuICpcbiAqIHZhciBkZWZhdWx0cyA9IF8ucGFydGlhbFJpZ2h0KF8uYXNzaWduSW5XaXRoLCBjdXN0b21pemVyKTtcbiAqXG4gKiBkZWZhdWx0cyh7ICdhJzogMSB9LCB7ICdiJzogMiB9LCB7ICdhJzogMyB9KTtcbiAqIC8vID0+IHsgJ2EnOiAxLCAnYic6IDIgfVxuICovXG52YXIgYXNzaWduSW5XaXRoID0gY3JlYXRlQXNzaWduZXIoZnVuY3Rpb24ob2JqZWN0LCBzb3VyY2UsIHNyY0luZGV4LCBjdXN0b21pemVyKSB7XG4gIGNvcHlPYmplY3Qoc291cmNlLCBrZXlzSW4oc291cmNlKSwgb2JqZWN0LCBjdXN0b21pemVyKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGFzc2lnbkluV2l0aDtcbiIsInZhciBhcHBseSA9IHJlcXVpcmUoJy4vX2FwcGx5JyksXG4gICAgYmFzZVJlc3QgPSByZXF1aXJlKCcuL19iYXNlUmVzdCcpLFxuICAgIGlzRXJyb3IgPSByZXF1aXJlKCcuL2lzRXJyb3InKTtcblxuLyoqXG4gKiBBdHRlbXB0cyB0byBpbnZva2UgYGZ1bmNgLCByZXR1cm5pbmcgZWl0aGVyIHRoZSByZXN1bHQgb3IgdGhlIGNhdWdodCBlcnJvclxuICogb2JqZWN0LiBBbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgYXJlIHByb3ZpZGVkIHRvIGBmdW5jYCB3aGVuIGl0J3MgaW52b2tlZC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDMuMC4wXG4gKiBAY2F0ZWdvcnkgVXRpbFxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyBUaGUgZnVuY3Rpb24gdG8gYXR0ZW1wdC5cbiAqIEBwYXJhbSB7Li4uKn0gW2FyZ3NdIFRoZSBhcmd1bWVudHMgdG8gaW52b2tlIGBmdW5jYCB3aXRoLlxuICogQHJldHVybnMgeyp9IFJldHVybnMgdGhlIGBmdW5jYCByZXN1bHQgb3IgZXJyb3Igb2JqZWN0LlxuICogQGV4YW1wbGVcbiAqXG4gKiAvLyBBdm9pZCB0aHJvd2luZyBlcnJvcnMgZm9yIGludmFsaWQgc2VsZWN0b3JzLlxuICogdmFyIGVsZW1lbnRzID0gXy5hdHRlbXB0KGZ1bmN0aW9uKHNlbGVjdG9yKSB7XG4gKiAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAqIH0sICc+Xz4nKTtcbiAqXG4gKiBpZiAoXy5pc0Vycm9yKGVsZW1lbnRzKSkge1xuICogICBlbGVtZW50cyA9IFtdO1xuICogfVxuICovXG52YXIgYXR0ZW1wdCA9IGJhc2VSZXN0KGZ1bmN0aW9uKGZ1bmMsIGFyZ3MpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXBwbHkoZnVuYywgdW5kZWZpbmVkLCBhcmdzKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBpc0Vycm9yKGUpID8gZSA6IG5ldyBFcnJvcihlKTtcbiAgfVxufSk7XG5cbm1vZHVsZS5leHBvcnRzID0gYXR0ZW1wdDtcbiIsIi8qKlxuICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBgdmFsdWVgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMi40LjBcbiAqIEBjYXRlZ29yeSBVdGlsXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byByZXR1cm4gZnJvbSB0aGUgbmV3IGZ1bmN0aW9uLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBuZXcgY29uc3RhbnQgZnVuY3Rpb24uXG4gKiBAZXhhbXBsZVxuICpcbiAqIHZhciBvYmplY3RzID0gXy50aW1lcygyLCBfLmNvbnN0YW50KHsgJ2EnOiAxIH0pKTtcbiAqXG4gKiBjb25zb2xlLmxvZyhvYmplY3RzKTtcbiAqIC8vID0+IFt7ICdhJzogMSB9LCB7ICdhJzogMSB9XVxuICpcbiAqIGNvbnNvbGUubG9nKG9iamVjdHNbMF0gPT09IG9iamVjdHNbMV0pO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBjb25zdGFudCh2YWx1ZSkge1xuICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNvbnN0YW50O1xuIiwiLyoqXG4gKiBQZXJmb3JtcyBhXG4gKiBbYFNhbWVWYWx1ZVplcm9gXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy1zYW1ldmFsdWV6ZXJvKVxuICogY29tcGFyaXNvbiBiZXR3ZWVuIHR3byB2YWx1ZXMgdG8gZGV0ZXJtaW5lIGlmIHRoZXkgYXJlIGVxdWl2YWxlbnQuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNvbXBhcmUuXG4gKiBAcGFyYW0geyp9IG90aGVyIFRoZSBvdGhlciB2YWx1ZSB0byBjb21wYXJlLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZXMgYXJlIGVxdWl2YWxlbnQsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogdmFyIG9iamVjdCA9IHsgJ2EnOiAxIH07XG4gKiB2YXIgb3RoZXIgPSB7ICdhJzogMSB9O1xuICpcbiAqIF8uZXEob2JqZWN0LCBvYmplY3QpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uZXEob2JqZWN0LCBvdGhlcik7XG4gKiAvLyA9PiBmYWxzZVxuICpcbiAqIF8uZXEoJ2EnLCAnYScpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uZXEoJ2EnLCBPYmplY3QoJ2EnKSk7XG4gKiAvLyA9PiBmYWxzZVxuICpcbiAqIF8uZXEoTmFOLCBOYU4pO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBlcSh2YWx1ZSwgb3RoZXIpIHtcbiAgcmV0dXJuIHZhbHVlID09PSBvdGhlciB8fCAodmFsdWUgIT09IHZhbHVlICYmIG90aGVyICE9PSBvdGhlcik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZXE7XG4iLCJ2YXIgZXNjYXBlSHRtbENoYXIgPSByZXF1aXJlKCcuL19lc2NhcGVIdG1sQ2hhcicpLFxuICAgIHRvU3RyaW5nID0gcmVxdWlyZSgnLi90b1N0cmluZycpO1xuXG4vKiogVXNlZCB0byBtYXRjaCBIVE1MIGVudGl0aWVzIGFuZCBIVE1MIGNoYXJhY3RlcnMuICovXG52YXIgcmVVbmVzY2FwZWRIdG1sID0gL1smPD5cIiddL2csXG4gICAgcmVIYXNVbmVzY2FwZWRIdG1sID0gUmVnRXhwKHJlVW5lc2NhcGVkSHRtbC5zb3VyY2UpO1xuXG4vKipcbiAqIENvbnZlcnRzIHRoZSBjaGFyYWN0ZXJzIFwiJlwiLCBcIjxcIiwgXCI+XCIsICdcIicsIGFuZCBcIidcIiBpbiBgc3RyaW5nYCB0byB0aGVpclxuICogY29ycmVzcG9uZGluZyBIVE1MIGVudGl0aWVzLlxuICpcbiAqICoqTm90ZToqKiBObyBvdGhlciBjaGFyYWN0ZXJzIGFyZSBlc2NhcGVkLiBUbyBlc2NhcGUgYWRkaXRpb25hbFxuICogY2hhcmFjdGVycyB1c2UgYSB0aGlyZC1wYXJ0eSBsaWJyYXJ5IGxpa2UgW19oZV9dKGh0dHBzOi8vbXRocy5iZS9oZSkuXG4gKlxuICogVGhvdWdoIHRoZSBcIj5cIiBjaGFyYWN0ZXIgaXMgZXNjYXBlZCBmb3Igc3ltbWV0cnksIGNoYXJhY3RlcnMgbGlrZVxuICogXCI+XCIgYW5kIFwiL1wiIGRvbid0IG5lZWQgZXNjYXBpbmcgaW4gSFRNTCBhbmQgaGF2ZSBubyBzcGVjaWFsIG1lYW5pbmdcbiAqIHVubGVzcyB0aGV5J3JlIHBhcnQgb2YgYSB0YWcgb3IgdW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlLiBTZWVcbiAqIFtNYXRoaWFzIEJ5bmVucydzIGFydGljbGVdKGh0dHBzOi8vbWF0aGlhc2J5bmVucy5iZS9ub3Rlcy9hbWJpZ3VvdXMtYW1wZXJzYW5kcylcbiAqICh1bmRlciBcInNlbWktcmVsYXRlZCBmdW4gZmFjdFwiKSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFdoZW4gd29ya2luZyB3aXRoIEhUTUwgeW91IHNob3VsZCBhbHdheXNcbiAqIFtxdW90ZSBhdHRyaWJ1dGUgdmFsdWVzXShodHRwOi8vd29ua28uY29tL3Bvc3QvaHRtbC1lc2NhcGluZykgdG8gcmVkdWNlXG4gKiBYU1MgdmVjdG9ycy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBtZW1iZXJPZiBfXG4gKiBAY2F0ZWdvcnkgU3RyaW5nXG4gKiBAcGFyYW0ge3N0cmluZ30gW3N0cmluZz0nJ10gVGhlIHN0cmluZyB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBlc2NhcGVkIHN0cmluZy5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5lc2NhcGUoJ2ZyZWQsIGJhcm5leSwgJiBwZWJibGVzJyk7XG4gKiAvLyA9PiAnZnJlZCwgYmFybmV5LCAmYW1wOyBwZWJibGVzJ1xuICovXG5mdW5jdGlvbiBlc2NhcGUoc3RyaW5nKSB7XG4gIHN0cmluZyA9IHRvU3RyaW5nKHN0cmluZyk7XG4gIHJldHVybiAoc3RyaW5nICYmIHJlSGFzVW5lc2NhcGVkSHRtbC50ZXN0KHN0cmluZykpXG4gICAgPyBzdHJpbmcucmVwbGFjZShyZVVuZXNjYXBlZEh0bWwsIGVzY2FwZUh0bWxDaGFyKVxuICAgIDogc3RyaW5nO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGVzY2FwZTtcbiIsIi8qKlxuICogVGhpcyBtZXRob2QgcmV0dXJucyB0aGUgZmlyc3QgYXJndW1lbnQgaXQgcmVjZWl2ZXMuXG4gKlxuICogQHN0YXRpY1xuICogQHNpbmNlIDAuMS4wXG4gKiBAbWVtYmVyT2YgX1xuICogQGNhdGVnb3J5IFV0aWxcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgQW55IHZhbHVlLlxuICogQHJldHVybnMgeyp9IFJldHVybnMgYHZhbHVlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogdmFyIG9iamVjdCA9IHsgJ2EnOiAxIH07XG4gKlxuICogY29uc29sZS5sb2coXy5pZGVudGl0eShvYmplY3QpID09PSBvYmplY3QpO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBpZGVudGl0eSh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWU7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaWRlbnRpdHk7XG4iLCJ2YXIgYmFzZUlzQXJndW1lbnRzID0gcmVxdWlyZSgnLi9fYmFzZUlzQXJndW1lbnRzJyksXG4gICAgaXNPYmplY3RMaWtlID0gcmVxdWlyZSgnLi9pc09iamVjdExpa2UnKTtcblxuLyoqIFVzZWQgZm9yIGJ1aWx0LWluIG1ldGhvZCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqIEJ1aWx0LWluIHZhbHVlIHJlZmVyZW5jZXMuICovXG52YXIgcHJvcGVydHlJc0VudW1lcmFibGUgPSBvYmplY3RQcm90by5wcm9wZXJ0eUlzRW51bWVyYWJsZTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBsaWtlbHkgYW4gYGFyZ3VtZW50c2Agb2JqZWN0LlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGBhcmd1bWVudHNgIG9iamVjdCxcbiAqICBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNBcmd1bWVudHMoZnVuY3Rpb24oKSB7IHJldHVybiBhcmd1bWVudHM7IH0oKSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FyZ3VtZW50cyhbMSwgMiwgM10pO1xuICogLy8gPT4gZmFsc2VcbiAqL1xudmFyIGlzQXJndW1lbnRzID0gYmFzZUlzQXJndW1lbnRzKGZ1bmN0aW9uKCkgeyByZXR1cm4gYXJndW1lbnRzOyB9KCkpID8gYmFzZUlzQXJndW1lbnRzIDogZnVuY3Rpb24odmFsdWUpIHtcbiAgcmV0dXJuIGlzT2JqZWN0TGlrZSh2YWx1ZSkgJiYgaGFzT3duUHJvcGVydHkuY2FsbCh2YWx1ZSwgJ2NhbGxlZScpICYmXG4gICAgIXByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwodmFsdWUsICdjYWxsZWUnKTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gaXNBcmd1bWVudHM7XG4iLCIvKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGNsYXNzaWZpZWQgYXMgYW4gYEFycmF5YCBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYW4gYXJyYXksIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0FycmF5KFsxLCAyLCAzXSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5KGRvY3VtZW50LmJvZHkuY2hpbGRyZW4pO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzQXJyYXkoJ2FiYycpO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzQXJyYXkoXy5ub29wKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbnZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTtcblxubW9kdWxlLmV4cG9ydHMgPSBpc0FycmF5O1xuIiwidmFyIGlzRnVuY3Rpb24gPSByZXF1aXJlKCcuL2lzRnVuY3Rpb24nKSxcbiAgICBpc0xlbmd0aCA9IHJlcXVpcmUoJy4vaXNMZW5ndGgnKTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhcnJheS1saWtlLiBBIHZhbHVlIGlzIGNvbnNpZGVyZWQgYXJyYXktbGlrZSBpZiBpdCdzXG4gKiBub3QgYSBmdW5jdGlvbiBhbmQgaGFzIGEgYHZhbHVlLmxlbmd0aGAgdGhhdCdzIGFuIGludGVnZXIgZ3JlYXRlciB0aGFuIG9yXG4gKiBlcXVhbCB0byBgMGAgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byBgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4wLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFycmF5LWxpa2UsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0FycmF5TGlrZShbMSwgMiwgM10pO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNBcnJheUxpa2UoZG9jdW1lbnQuYm9keS5jaGlsZHJlbik7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5TGlrZSgnYWJjJyk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0FycmF5TGlrZShfLm5vb3ApO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNBcnJheUxpa2UodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgaXNMZW5ndGgodmFsdWUubGVuZ3RoKSAmJiAhaXNGdW5jdGlvbih2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNBcnJheUxpa2U7XG4iLCJ2YXIgcm9vdCA9IHJlcXVpcmUoJy4vX3Jvb3QnKSxcbiAgICBzdHViRmFsc2UgPSByZXF1aXJlKCcuL3N0dWJGYWxzZScpO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYGV4cG9ydHNgLiAqL1xudmFyIGZyZWVFeHBvcnRzID0gdHlwZW9mIGV4cG9ydHMgPT0gJ29iamVjdCcgJiYgZXhwb3J0cyAmJiAhZXhwb3J0cy5ub2RlVHlwZSAmJiBleHBvcnRzO1xuXG4vKiogRGV0ZWN0IGZyZWUgdmFyaWFibGUgYG1vZHVsZWAuICovXG52YXIgZnJlZU1vZHVsZSA9IGZyZWVFeHBvcnRzICYmIHR5cGVvZiBtb2R1bGUgPT0gJ29iamVjdCcgJiYgbW9kdWxlICYmICFtb2R1bGUubm9kZVR5cGUgJiYgbW9kdWxlO1xuXG4vKiogRGV0ZWN0IHRoZSBwb3B1bGFyIENvbW1vbkpTIGV4dGVuc2lvbiBgbW9kdWxlLmV4cG9ydHNgLiAqL1xudmFyIG1vZHVsZUV4cG9ydHMgPSBmcmVlTW9kdWxlICYmIGZyZWVNb2R1bGUuZXhwb3J0cyA9PT0gZnJlZUV4cG9ydHM7XG5cbi8qKiBCdWlsdC1pbiB2YWx1ZSByZWZlcmVuY2VzLiAqL1xudmFyIEJ1ZmZlciA9IG1vZHVsZUV4cG9ydHMgPyByb290LkJ1ZmZlciA6IHVuZGVmaW5lZDtcblxuLyogQnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMgZm9yIHRob3NlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBvdGhlciBgbG9kYXNoYCBtZXRob2RzLiAqL1xudmFyIG5hdGl2ZUlzQnVmZmVyID0gQnVmZmVyID8gQnVmZmVyLmlzQnVmZmVyIDogdW5kZWZpbmVkO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgYnVmZmVyLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4zLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGEgYnVmZmVyLCBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNCdWZmZXIobmV3IEJ1ZmZlcigyKSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0J1ZmZlcihuZXcgVWludDhBcnJheSgyKSk7XG4gKiAvLyA9PiBmYWxzZVxuICovXG52YXIgaXNCdWZmZXIgPSBuYXRpdmVJc0J1ZmZlciB8fCBzdHViRmFsc2U7XG5cbm1vZHVsZS5leHBvcnRzID0gaXNCdWZmZXI7XG4iLCJ2YXIgYmFzZUdldFRhZyA9IHJlcXVpcmUoJy4vX2Jhc2VHZXRUYWcnKSxcbiAgICBpc09iamVjdExpa2UgPSByZXF1aXJlKCcuL2lzT2JqZWN0TGlrZScpLFxuICAgIGlzUGxhaW5PYmplY3QgPSByZXF1aXJlKCcuL2lzUGxhaW5PYmplY3QnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIGRvbUV4Y1RhZyA9ICdbb2JqZWN0IERPTUV4Y2VwdGlvbl0nLFxuICAgIGVycm9yVGFnID0gJ1tvYmplY3QgRXJyb3JdJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBhbiBgRXJyb3JgLCBgRXZhbEVycm9yYCwgYFJhbmdlRXJyb3JgLCBgUmVmZXJlbmNlRXJyb3JgLFxuICogYFN5bnRheEVycm9yYCwgYFR5cGVFcnJvcmAsIG9yIGBVUklFcnJvcmAgb2JqZWN0LlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgMy4wLjBcbiAqIEBjYXRlZ29yeSBMYW5nXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIHtib29sZWFufSBSZXR1cm5zIGB0cnVlYCBpZiBgdmFsdWVgIGlzIGFuIGVycm9yIG9iamVjdCwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzRXJyb3IobmV3IEVycm9yKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzRXJyb3IoRXJyb3IpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNFcnJvcih2YWx1ZSkge1xuICBpZiAoIWlzT2JqZWN0TGlrZSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHRhZyA9IGJhc2VHZXRUYWcodmFsdWUpO1xuICByZXR1cm4gdGFnID09IGVycm9yVGFnIHx8IHRhZyA9PSBkb21FeGNUYWcgfHxcbiAgICAodHlwZW9mIHZhbHVlLm1lc3NhZ2UgPT0gJ3N0cmluZycgJiYgdHlwZW9mIHZhbHVlLm5hbWUgPT0gJ3N0cmluZycgJiYgIWlzUGxhaW5PYmplY3QodmFsdWUpKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc0Vycm9yO1xuIiwidmFyIGJhc2VHZXRUYWcgPSByZXF1aXJlKCcuL19iYXNlR2V0VGFnJyksXG4gICAgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzT2JqZWN0Jyk7XG5cbi8qKiBgT2JqZWN0I3RvU3RyaW5nYCByZXN1bHQgcmVmZXJlbmNlcy4gKi9cbnZhciBhc3luY1RhZyA9ICdbb2JqZWN0IEFzeW5jRnVuY3Rpb25dJyxcbiAgICBmdW5jVGFnID0gJ1tvYmplY3QgRnVuY3Rpb25dJyxcbiAgICBnZW5UYWcgPSAnW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl0nLFxuICAgIHByb3h5VGFnID0gJ1tvYmplY3QgUHJveHldJztcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBjbGFzc2lmaWVkIGFzIGEgYEZ1bmN0aW9uYCBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSBmdW5jdGlvbiwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzRnVuY3Rpb24oXyk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc0Z1bmN0aW9uKC9hYmMvKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWUpIHtcbiAgaWYgKCFpc09iamVjdCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gVGhlIHVzZSBvZiBgT2JqZWN0I3RvU3RyaW5nYCBhdm9pZHMgaXNzdWVzIHdpdGggdGhlIGB0eXBlb2ZgIG9wZXJhdG9yXG4gIC8vIGluIFNhZmFyaSA5IHdoaWNoIHJldHVybnMgJ29iamVjdCcgZm9yIHR5cGVkIGFycmF5cyBhbmQgb3RoZXIgY29uc3RydWN0b3JzLlxuICB2YXIgdGFnID0gYmFzZUdldFRhZyh2YWx1ZSk7XG4gIHJldHVybiB0YWcgPT0gZnVuY1RhZyB8fCB0YWcgPT0gZ2VuVGFnIHx8IHRhZyA9PSBhc3luY1RhZyB8fCB0YWcgPT0gcHJveHlUYWc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNGdW5jdGlvbjtcbiIsIi8qKiBVc2VkIGFzIHJlZmVyZW5jZXMgZm9yIHZhcmlvdXMgYE51bWJlcmAgY29uc3RhbnRzLiAqL1xudmFyIE1BWF9TQUZFX0lOVEVHRVIgPSA5MDA3MTk5MjU0NzQwOTkxO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgdmFsaWQgYXJyYXktbGlrZSBsZW5ndGguXG4gKlxuICogKipOb3RlOioqIFRoaXMgbWV0aG9kIGlzIGxvb3NlbHkgYmFzZWQgb25cbiAqIFtgVG9MZW5ndGhgXShodHRwOi8vZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi83LjAvI3NlYy10b2xlbmd0aCkuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB2YWxpZCBsZW5ndGgsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc0xlbmd0aCgzKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzTGVuZ3RoKE51bWJlci5NSU5fVkFMVUUpO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzTGVuZ3RoKEluZmluaXR5KTtcbiAqIC8vID0+IGZhbHNlXG4gKlxuICogXy5pc0xlbmd0aCgnMycpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNMZW5ndGgodmFsdWUpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PSAnbnVtYmVyJyAmJlxuICAgIHZhbHVlID4gLTEgJiYgdmFsdWUgJSAxID09IDAgJiYgdmFsdWUgPD0gTUFYX1NBRkVfSU5URUdFUjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc0xlbmd0aDtcbiIsIi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgdGhlXG4gKiBbbGFuZ3VhZ2UgdHlwZV0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLWVjbWFzY3JpcHQtbGFuZ3VhZ2UtdHlwZXMpXG4gKiBvZiBgT2JqZWN0YC4gKGUuZy4gYXJyYXlzLCBmdW5jdGlvbnMsIG9iamVjdHMsIHJlZ2V4ZXMsIGBuZXcgTnVtYmVyKDApYCwgYW5kIGBuZXcgU3RyaW5nKCcnKWApXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAwLjEuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYW4gb2JqZWN0LCBlbHNlIGBmYWxzZWAuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8uaXNPYmplY3Qoe30pO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNPYmplY3QoWzEsIDIsIDNdKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzT2JqZWN0KF8ubm9vcCk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc09iamVjdChudWxsKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbHVlKSB7XG4gIHZhciB0eXBlID0gdHlwZW9mIHZhbHVlO1xuICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiAodHlwZSA9PSAnb2JqZWN0JyB8fCB0eXBlID09ICdmdW5jdGlvbicpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGlzT2JqZWN0O1xuIiwiLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBvYmplY3QtbGlrZS4gQSB2YWx1ZSBpcyBvYmplY3QtbGlrZSBpZiBpdCdzIG5vdCBgbnVsbGBcbiAqIGFuZCBoYXMgYSBgdHlwZW9mYCByZXN1bHQgb2YgXCJvYmplY3RcIi5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDQuMC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBvYmplY3QtbGlrZSwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZSh7fSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc09iamVjdExpa2UoWzEsIDIsIDNdKTtcbiAqIC8vID0+IHRydWVcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZShfLm5vb3ApO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzT2JqZWN0TGlrZShudWxsKTtcbiAqIC8vID0+IGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0TGlrZSh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUgIT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT0gJ29iamVjdCc7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNPYmplY3RMaWtlO1xuIiwidmFyIGJhc2VHZXRUYWcgPSByZXF1aXJlKCcuL19iYXNlR2V0VGFnJyksXG4gICAgZ2V0UHJvdG90eXBlID0gcmVxdWlyZSgnLi9fZ2V0UHJvdG90eXBlJyksXG4gICAgaXNPYmplY3RMaWtlID0gcmVxdWlyZSgnLi9pc09iamVjdExpa2UnKTtcblxuLyoqIGBPYmplY3QjdG9TdHJpbmdgIHJlc3VsdCByZWZlcmVuY2VzLiAqL1xudmFyIG9iamVjdFRhZyA9ICdbb2JqZWN0IE9iamVjdF0nO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgZnVuY1Byb3RvID0gRnVuY3Rpb24ucHJvdG90eXBlLFxuICAgIG9iamVjdFByb3RvID0gT2JqZWN0LnByb3RvdHlwZTtcblxuLyoqIFVzZWQgdG8gcmVzb2x2ZSB0aGUgZGVjb21waWxlZCBzb3VyY2Ugb2YgZnVuY3Rpb25zLiAqL1xudmFyIGZ1bmNUb1N0cmluZyA9IGZ1bmNQcm90by50b1N0cmluZztcblxuLyoqIFVzZWQgdG8gY2hlY2sgb2JqZWN0cyBmb3Igb3duIHByb3BlcnRpZXMuICovXG52YXIgaGFzT3duUHJvcGVydHkgPSBvYmplY3RQcm90by5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqIFVzZWQgdG8gaW5mZXIgdGhlIGBPYmplY3RgIGNvbnN0cnVjdG9yLiAqL1xudmFyIG9iamVjdEN0b3JTdHJpbmcgPSBmdW5jVG9TdHJpbmcuY2FsbChPYmplY3QpO1xuXG4vKipcbiAqIENoZWNrcyBpZiBgdmFsdWVgIGlzIGEgcGxhaW4gb2JqZWN0LCB0aGF0IGlzLCBhbiBvYmplY3QgY3JlYXRlZCBieSB0aGVcbiAqIGBPYmplY3RgIGNvbnN0cnVjdG9yIG9yIG9uZSB3aXRoIGEgYFtbUHJvdG90eXBlXV1gIG9mIGBudWxsYC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDAuOC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgYHZhbHVlYCBpcyBhIHBsYWluIG9iamVjdCwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiB9XG4gKlxuICogXy5pc1BsYWluT2JqZWN0KG5ldyBGb28pO1xuICogLy8gPT4gZmFsc2VcbiAqXG4gKiBfLmlzUGxhaW5PYmplY3QoWzEsIDIsIDNdKTtcbiAqIC8vID0+IGZhbHNlXG4gKlxuICogXy5pc1BsYWluT2JqZWN0KHsgJ3gnOiAwLCAneSc6IDAgfSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc1BsYWluT2JqZWN0KE9iamVjdC5jcmVhdGUobnVsbCkpO1xuICogLy8gPT4gdHJ1ZVxuICovXG5mdW5jdGlvbiBpc1BsYWluT2JqZWN0KHZhbHVlKSB7XG4gIGlmICghaXNPYmplY3RMaWtlKHZhbHVlKSB8fCBiYXNlR2V0VGFnKHZhbHVlKSAhPSBvYmplY3RUYWcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdmFyIHByb3RvID0gZ2V0UHJvdG90eXBlKHZhbHVlKTtcbiAgaWYgKHByb3RvID09PSBudWxsKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgdmFyIEN0b3IgPSBoYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3RvLCAnY29uc3RydWN0b3InKSAmJiBwcm90by5jb25zdHJ1Y3RvcjtcbiAgcmV0dXJuIHR5cGVvZiBDdG9yID09ICdmdW5jdGlvbicgJiYgQ3RvciBpbnN0YW5jZW9mIEN0b3IgJiZcbiAgICBmdW5jVG9TdHJpbmcuY2FsbChDdG9yKSA9PSBvYmplY3RDdG9yU3RyaW5nO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGlzUGxhaW5PYmplY3Q7XG4iLCJ2YXIgYmFzZUdldFRhZyA9IHJlcXVpcmUoJy4vX2Jhc2VHZXRUYWcnKSxcbiAgICBpc09iamVjdExpa2UgPSByZXF1aXJlKCcuL2lzT2JqZWN0TGlrZScpO1xuXG4vKiogYE9iamVjdCN0b1N0cmluZ2AgcmVzdWx0IHJlZmVyZW5jZXMuICovXG52YXIgc3ltYm9sVGFnID0gJ1tvYmplY3QgU3ltYm9sXSc7XG5cbi8qKlxuICogQ2hlY2tzIGlmIGB2YWx1ZWAgaXMgY2xhc3NpZmllZCBhcyBhIGBTeW1ib2xgIHByaW1pdGl2ZSBvciBvYmplY3QuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSA0LjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSBzeW1ib2wsIGVsc2UgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy5pc1N5bWJvbChTeW1ib2wuaXRlcmF0b3IpO1xuICogLy8gPT4gdHJ1ZVxuICpcbiAqIF8uaXNTeW1ib2woJ2FiYycpO1xuICogLy8gPT4gZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTeW1ib2wodmFsdWUpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PSAnc3ltYm9sJyB8fFxuICAgIChpc09iamVjdExpa2UodmFsdWUpICYmIGJhc2VHZXRUYWcodmFsdWUpID09IHN5bWJvbFRhZyk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gaXNTeW1ib2w7XG4iLCJ2YXIgYmFzZUlzVHlwZWRBcnJheSA9IHJlcXVpcmUoJy4vX2Jhc2VJc1R5cGVkQXJyYXknKSxcbiAgICBiYXNlVW5hcnkgPSByZXF1aXJlKCcuL19iYXNlVW5hcnknKSxcbiAgICBub2RlVXRpbCA9IHJlcXVpcmUoJy4vX25vZGVVdGlsJyk7XG5cbi8qIE5vZGUuanMgaGVscGVyIHJlZmVyZW5jZXMuICovXG52YXIgbm9kZUlzVHlwZWRBcnJheSA9IG5vZGVVdGlsICYmIG5vZGVVdGlsLmlzVHlwZWRBcnJheTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYHZhbHVlYCBpcyBjbGFzc2lmaWVkIGFzIGEgdHlwZWQgYXJyYXkuXG4gKlxuICogQHN0YXRpY1xuICogQG1lbWJlck9mIF9cbiAqIEBzaW5jZSAzLjAuMFxuICogQGNhdGVnb3J5IExhbmdcbiAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIGB2YWx1ZWAgaXMgYSB0eXBlZCBhcnJheSwgZWxzZSBgZmFsc2VgLlxuICogQGV4YW1wbGVcbiAqXG4gKiBfLmlzVHlwZWRBcnJheShuZXcgVWludDhBcnJheSk7XG4gKiAvLyA9PiB0cnVlXG4gKlxuICogXy5pc1R5cGVkQXJyYXkoW10pO1xuICogLy8gPT4gZmFsc2VcbiAqL1xudmFyIGlzVHlwZWRBcnJheSA9IG5vZGVJc1R5cGVkQXJyYXkgPyBiYXNlVW5hcnkobm9kZUlzVHlwZWRBcnJheSkgOiBiYXNlSXNUeXBlZEFycmF5O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGlzVHlwZWRBcnJheTtcbiIsInZhciBhcnJheUxpa2VLZXlzID0gcmVxdWlyZSgnLi9fYXJyYXlMaWtlS2V5cycpLFxuICAgIGJhc2VLZXlzID0gcmVxdWlyZSgnLi9fYmFzZUtleXMnKSxcbiAgICBpc0FycmF5TGlrZSA9IHJlcXVpcmUoJy4vaXNBcnJheUxpa2UnKTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuIGFycmF5IG9mIHRoZSBvd24gZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiBgb2JqZWN0YC5cbiAqXG4gKiAqKk5vdGU6KiogTm9uLW9iamVjdCB2YWx1ZXMgYXJlIGNvZXJjZWQgdG8gb2JqZWN0cy4gU2VlIHRoZVxuICogW0VTIHNwZWNdKGh0dHA6Ly9lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLW9iamVjdC5rZXlzKVxuICogZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBtZW1iZXJPZiBfXG4gKiBAY2F0ZWdvcnkgT2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiAgIHRoaXMuYiA9IDI7XG4gKiB9XG4gKlxuICogRm9vLnByb3RvdHlwZS5jID0gMztcbiAqXG4gKiBfLmtleXMobmV3IEZvbyk7XG4gKiAvLyA9PiBbJ2EnLCAnYiddIChpdGVyYXRpb24gb3JkZXIgaXMgbm90IGd1YXJhbnRlZWQpXG4gKlxuICogXy5rZXlzKCdoaScpO1xuICogLy8gPT4gWycwJywgJzEnXVxuICovXG5mdW5jdGlvbiBrZXlzKG9iamVjdCkge1xuICByZXR1cm4gaXNBcnJheUxpa2Uob2JqZWN0KSA/IGFycmF5TGlrZUtleXMob2JqZWN0KSA6IGJhc2VLZXlzKG9iamVjdCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0ga2V5cztcbiIsInZhciBhcnJheUxpa2VLZXlzID0gcmVxdWlyZSgnLi9fYXJyYXlMaWtlS2V5cycpLFxuICAgIGJhc2VLZXlzSW4gPSByZXF1aXJlKCcuL19iYXNlS2V5c0luJyksXG4gICAgaXNBcnJheUxpa2UgPSByZXF1aXJlKCcuL2lzQXJyYXlMaWtlJyk7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBvZiB0aGUgb3duIGFuZCBpbmhlcml0ZWQgZW51bWVyYWJsZSBwcm9wZXJ0eSBuYW1lcyBvZiBgb2JqZWN0YC5cbiAqXG4gKiAqKk5vdGU6KiogTm9uLW9iamVjdCB2YWx1ZXMgYXJlIGNvZXJjZWQgdG8gb2JqZWN0cy5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDMuMC4wXG4gKiBAY2F0ZWdvcnkgT2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcXVlcnkuXG4gKiBAcmV0dXJucyB7QXJyYXl9IFJldHVybnMgdGhlIGFycmF5IG9mIHByb3BlcnR5IG5hbWVzLlxuICogQGV4YW1wbGVcbiAqXG4gKiBmdW5jdGlvbiBGb28oKSB7XG4gKiAgIHRoaXMuYSA9IDE7XG4gKiAgIHRoaXMuYiA9IDI7XG4gKiB9XG4gKlxuICogRm9vLnByb3RvdHlwZS5jID0gMztcbiAqXG4gKiBfLmtleXNJbihuZXcgRm9vKTtcbiAqIC8vID0+IFsnYScsICdiJywgJ2MnXSAoaXRlcmF0aW9uIG9yZGVyIGlzIG5vdCBndWFyYW50ZWVkKVxuICovXG5mdW5jdGlvbiBrZXlzSW4ob2JqZWN0KSB7XG4gIHJldHVybiBpc0FycmF5TGlrZShvYmplY3QpID8gYXJyYXlMaWtlS2V5cyhvYmplY3QsIHRydWUpIDogYmFzZUtleXNJbihvYmplY3QpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGtleXNJbjtcbiIsIi8qKlxuICogVGhpcyBtZXRob2QgcmV0dXJucyBgZmFsc2VgLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAc2luY2UgNC4xMy4wXG4gKiBAY2F0ZWdvcnkgVXRpbFxuICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYGZhbHNlYC5cbiAqIEBleGFtcGxlXG4gKlxuICogXy50aW1lcygyLCBfLnN0dWJGYWxzZSk7XG4gKiAvLyA9PiBbZmFsc2UsIGZhbHNlXVxuICovXG5mdW5jdGlvbiBzdHViRmFsc2UoKSB7XG4gIHJldHVybiBmYWxzZTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBzdHViRmFsc2U7XG4iLCJ2YXIgYXNzaWduSW5XaXRoID0gcmVxdWlyZSgnLi9hc3NpZ25JbldpdGgnKSxcbiAgICBhdHRlbXB0ID0gcmVxdWlyZSgnLi9hdHRlbXB0JyksXG4gICAgYmFzZVZhbHVlcyA9IHJlcXVpcmUoJy4vX2Jhc2VWYWx1ZXMnKSxcbiAgICBjdXN0b21EZWZhdWx0c0Fzc2lnbkluID0gcmVxdWlyZSgnLi9fY3VzdG9tRGVmYXVsdHNBc3NpZ25JbicpLFxuICAgIGVzY2FwZVN0cmluZ0NoYXIgPSByZXF1aXJlKCcuL19lc2NhcGVTdHJpbmdDaGFyJyksXG4gICAgaXNFcnJvciA9IHJlcXVpcmUoJy4vaXNFcnJvcicpLFxuICAgIGlzSXRlcmF0ZWVDYWxsID0gcmVxdWlyZSgnLi9faXNJdGVyYXRlZUNhbGwnKSxcbiAgICBrZXlzID0gcmVxdWlyZSgnLi9rZXlzJyksXG4gICAgcmVJbnRlcnBvbGF0ZSA9IHJlcXVpcmUoJy4vX3JlSW50ZXJwb2xhdGUnKSxcbiAgICB0ZW1wbGF0ZVNldHRpbmdzID0gcmVxdWlyZSgnLi90ZW1wbGF0ZVNldHRpbmdzJyksXG4gICAgdG9TdHJpbmcgPSByZXF1aXJlKCcuL3RvU3RyaW5nJyk7XG5cbi8qKiBVc2VkIHRvIG1hdGNoIGVtcHR5IHN0cmluZyBsaXRlcmFscyBpbiBjb21waWxlZCB0ZW1wbGF0ZSBzb3VyY2UuICovXG52YXIgcmVFbXB0eVN0cmluZ0xlYWRpbmcgPSAvXFxiX19wIFxcKz0gJyc7L2csXG4gICAgcmVFbXB0eVN0cmluZ01pZGRsZSA9IC9cXGIoX19wIFxcKz0pICcnIFxcKy9nLFxuICAgIHJlRW1wdHlTdHJpbmdUcmFpbGluZyA9IC8oX19lXFwoLio/XFwpfFxcYl9fdFxcKSkgXFwrXFxuJyc7L2c7XG5cbi8qKlxuICogVXNlZCB0byBtYXRjaFxuICogW0VTIHRlbXBsYXRlIGRlbGltaXRlcnNdKGh0dHA6Ly9lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzcuMC8jc2VjLXRlbXBsYXRlLWxpdGVyYWwtbGV4aWNhbC1jb21wb25lbnRzKS5cbiAqL1xudmFyIHJlRXNUZW1wbGF0ZSA9IC9cXCRcXHsoW15cXFxcfV0qKD86XFxcXC5bXlxcXFx9XSopKilcXH0vZztcblxuLyoqIFVzZWQgdG8gZW5zdXJlIGNhcHR1cmluZyBvcmRlciBvZiB0ZW1wbGF0ZSBkZWxpbWl0ZXJzLiAqL1xudmFyIHJlTm9NYXRjaCA9IC8oJF4pLztcblxuLyoqIFVzZWQgdG8gbWF0Y2ggdW5lc2NhcGVkIGNoYXJhY3RlcnMgaW4gY29tcGlsZWQgc3RyaW5nIGxpdGVyYWxzLiAqL1xudmFyIHJlVW5lc2NhcGVkU3RyaW5nID0gL1snXFxuXFxyXFx1MjAyOFxcdTIwMjlcXFxcXS9nO1xuXG4vKiogVXNlZCBmb3IgYnVpbHQtaW4gbWV0aG9kIHJlZmVyZW5jZXMuICovXG52YXIgb2JqZWN0UHJvdG8gPSBPYmplY3QucHJvdG90eXBlO1xuXG4vKiogVXNlZCB0byBjaGVjayBvYmplY3RzIGZvciBvd24gcHJvcGVydGllcy4gKi9cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IG9iamVjdFByb3RvLmhhc093blByb3BlcnR5O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjb21waWxlZCB0ZW1wbGF0ZSBmdW5jdGlvbiB0aGF0IGNhbiBpbnRlcnBvbGF0ZSBkYXRhIHByb3BlcnRpZXNcbiAqIGluIFwiaW50ZXJwb2xhdGVcIiBkZWxpbWl0ZXJzLCBIVE1MLWVzY2FwZSBpbnRlcnBvbGF0ZWQgZGF0YSBwcm9wZXJ0aWVzIGluXG4gKiBcImVzY2FwZVwiIGRlbGltaXRlcnMsIGFuZCBleGVjdXRlIEphdmFTY3JpcHQgaW4gXCJldmFsdWF0ZVwiIGRlbGltaXRlcnMuIERhdGFcbiAqIHByb3BlcnRpZXMgbWF5IGJlIGFjY2Vzc2VkIGFzIGZyZWUgdmFyaWFibGVzIGluIHRoZSB0ZW1wbGF0ZS4gSWYgYSBzZXR0aW5nXG4gKiBvYmplY3QgaXMgZ2l2ZW4sIGl0IHRha2VzIHByZWNlZGVuY2Ugb3ZlciBgXy50ZW1wbGF0ZVNldHRpbmdzYCB2YWx1ZXMuXG4gKlxuICogKipOb3RlOioqIEluIHRoZSBkZXZlbG9wbWVudCBidWlsZCBgXy50ZW1wbGF0ZWAgdXRpbGl6ZXNcbiAqIFtzb3VyY2VVUkxzXShodHRwOi8vd3d3Lmh0bWw1cm9ja3MuY29tL2VuL3R1dG9yaWFscy9kZXZlbG9wZXJ0b29scy9zb3VyY2VtYXBzLyN0b2Mtc291cmNldXJsKVxuICogZm9yIGVhc2llciBkZWJ1Z2dpbmcuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gcHJlY29tcGlsaW5nIHRlbXBsYXRlcyBzZWVcbiAqIFtsb2Rhc2gncyBjdXN0b20gYnVpbGRzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vbG9kYXNoLmNvbS9jdXN0b20tYnVpbGRzKS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBDaHJvbWUgZXh0ZW5zaW9uIHNhbmRib3hlcyBzZWVcbiAqIFtDaHJvbWUncyBleHRlbnNpb25zIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGV2ZWxvcGVyLmNocm9tZS5jb20vZXh0ZW5zaW9ucy9zYW5kYm94aW5nRXZhbCkuXG4gKlxuICogQHN0YXRpY1xuICogQHNpbmNlIDAuMS4wXG4gKiBAbWVtYmVyT2YgX1xuICogQGNhdGVnb3J5IFN0cmluZ1xuICogQHBhcmFtIHtzdHJpbmd9IFtzdHJpbmc9JyddIFRoZSB0ZW1wbGF0ZSBzdHJpbmcuXG4gKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnM9e31dIFRoZSBvcHRpb25zIG9iamVjdC5cbiAqIEBwYXJhbSB7UmVnRXhwfSBbb3B0aW9ucy5lc2NhcGU9Xy50ZW1wbGF0ZVNldHRpbmdzLmVzY2FwZV1cbiAqICBUaGUgSFRNTCBcImVzY2FwZVwiIGRlbGltaXRlci5cbiAqIEBwYXJhbSB7UmVnRXhwfSBbb3B0aW9ucy5ldmFsdWF0ZT1fLnRlbXBsYXRlU2V0dGluZ3MuZXZhbHVhdGVdXG4gKiAgVGhlIFwiZXZhbHVhdGVcIiBkZWxpbWl0ZXIuXG4gKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnMuaW1wb3J0cz1fLnRlbXBsYXRlU2V0dGluZ3MuaW1wb3J0c11cbiAqICBBbiBvYmplY3QgdG8gaW1wb3J0IGludG8gdGhlIHRlbXBsYXRlIGFzIGZyZWUgdmFyaWFibGVzLlxuICogQHBhcmFtIHtSZWdFeHB9IFtvcHRpb25zLmludGVycG9sYXRlPV8udGVtcGxhdGVTZXR0aW5ncy5pbnRlcnBvbGF0ZV1cbiAqICBUaGUgXCJpbnRlcnBvbGF0ZVwiIGRlbGltaXRlci5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbb3B0aW9ucy5zb3VyY2VVUkw9J3RlbXBsYXRlU291cmNlc1tuXSddXG4gKiAgVGhlIHNvdXJjZVVSTCBvZiB0aGUgY29tcGlsZWQgdGVtcGxhdGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gW29wdGlvbnMudmFyaWFibGU9J29iaiddXG4gKiAgVGhlIGRhdGEgb2JqZWN0IHZhcmlhYmxlIG5hbWUuXG4gKiBAcGFyYW0tIHtPYmplY3R9IFtndWFyZF0gRW5hYmxlcyB1c2UgYXMgYW4gaXRlcmF0ZWUgZm9yIG1ldGhvZHMgbGlrZSBgXy5tYXBgLlxuICogQHJldHVybnMge0Z1bmN0aW9ufSBSZXR1cm5zIHRoZSBjb21waWxlZCB0ZW1wbGF0ZSBmdW5jdGlvbi5cbiAqIEBleGFtcGxlXG4gKlxuICogLy8gVXNlIHRoZSBcImludGVycG9sYXRlXCIgZGVsaW1pdGVyIHRvIGNyZWF0ZSBhIGNvbXBpbGVkIHRlbXBsYXRlLlxuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGVsbG8gPCU9IHVzZXIgJT4hJyk7XG4gKiBjb21waWxlZCh7ICd1c2VyJzogJ2ZyZWQnIH0pO1xuICogLy8gPT4gJ2hlbGxvIGZyZWQhJ1xuICpcbiAqIC8vIFVzZSB0aGUgSFRNTCBcImVzY2FwZVwiIGRlbGltaXRlciB0byBlc2NhcGUgZGF0YSBwcm9wZXJ0eSB2YWx1ZXMuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8Yj48JS0gdmFsdWUgJT48L2I+Jyk7XG4gKiBjb21waWxlZCh7ICd2YWx1ZSc6ICc8c2NyaXB0PicgfSk7XG4gKiAvLyA9PiAnPGI+Jmx0O3NjcmlwdCZndDs8L2I+J1xuICpcbiAqIC8vIFVzZSB0aGUgXCJldmFsdWF0ZVwiIGRlbGltaXRlciB0byBleGVjdXRlIEphdmFTY3JpcHQgYW5kIGdlbmVyYXRlIEhUTUwuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8JSBfLmZvckVhY2godXNlcnMsIGZ1bmN0aW9uKHVzZXIpIHsgJT48bGk+PCUtIHVzZXIgJT48L2xpPjwlIH0pOyAlPicpO1xuICogY29tcGlsZWQoeyAndXNlcnMnOiBbJ2ZyZWQnLCAnYmFybmV5J10gfSk7XG4gKiAvLyA9PiAnPGxpPmZyZWQ8L2xpPjxsaT5iYXJuZXk8L2xpPidcbiAqXG4gKiAvLyBVc2UgdGhlIGludGVybmFsIGBwcmludGAgZnVuY3Rpb24gaW4gXCJldmFsdWF0ZVwiIGRlbGltaXRlcnMuXG4gKiB2YXIgY29tcGlsZWQgPSBfLnRlbXBsYXRlKCc8JSBwcmludChcImhlbGxvIFwiICsgdXNlcik7ICU+IScpO1xuICogY29tcGlsZWQoeyAndXNlcic6ICdiYXJuZXknIH0pO1xuICogLy8gPT4gJ2hlbGxvIGJhcm5leSEnXG4gKlxuICogLy8gVXNlIHRoZSBFUyB0ZW1wbGF0ZSBsaXRlcmFsIGRlbGltaXRlciBhcyBhbiBcImludGVycG9sYXRlXCIgZGVsaW1pdGVyLlxuICogLy8gRGlzYWJsZSBzdXBwb3J0IGJ5IHJlcGxhY2luZyB0aGUgXCJpbnRlcnBvbGF0ZVwiIGRlbGltaXRlci5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJ2hlbGxvICR7IHVzZXIgfSEnKTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXInOiAncGViYmxlcycgfSk7XG4gKiAvLyA9PiAnaGVsbG8gcGViYmxlcyEnXG4gKlxuICogLy8gVXNlIGJhY2tzbGFzaGVzIHRvIHRyZWF0IGRlbGltaXRlcnMgYXMgcGxhaW4gdGV4dC5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJzwlPSBcIlxcXFw8JS0gdmFsdWUgJVxcXFw+XCIgJT4nKTtcbiAqIGNvbXBpbGVkKHsgJ3ZhbHVlJzogJ2lnbm9yZWQnIH0pO1xuICogLy8gPT4gJzwlLSB2YWx1ZSAlPidcbiAqXG4gKiAvLyBVc2UgdGhlIGBpbXBvcnRzYCBvcHRpb24gdG8gaW1wb3J0IGBqUXVlcnlgIGFzIGBqcWAuXG4gKiB2YXIgdGV4dCA9ICc8JSBqcS5lYWNoKHVzZXJzLCBmdW5jdGlvbih1c2VyKSB7ICU+PGxpPjwlLSB1c2VyICU+PC9saT48JSB9KTsgJT4nO1xuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSh0ZXh0LCB7ICdpbXBvcnRzJzogeyAnanEnOiBqUXVlcnkgfSB9KTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXJzJzogWydmcmVkJywgJ2Jhcm5leSddIH0pO1xuICogLy8gPT4gJzxsaT5mcmVkPC9saT48bGk+YmFybmV5PC9saT4nXG4gKlxuICogLy8gVXNlIHRoZSBgc291cmNlVVJMYCBvcHRpb24gdG8gc3BlY2lmeSBhIGN1c3RvbSBzb3VyY2VVUkwgZm9yIHRoZSB0ZW1wbGF0ZS5cbiAqIHZhciBjb21waWxlZCA9IF8udGVtcGxhdGUoJ2hlbGxvIDwlPSB1c2VyICU+IScsIHsgJ3NvdXJjZVVSTCc6ICcvYmFzaWMvZ3JlZXRpbmcuanN0JyB9KTtcbiAqIGNvbXBpbGVkKGRhdGEpO1xuICogLy8gPT4gRmluZCB0aGUgc291cmNlIG9mIFwiZ3JlZXRpbmcuanN0XCIgdW5kZXIgdGhlIFNvdXJjZXMgdGFiIG9yIFJlc291cmNlcyBwYW5lbCBvZiB0aGUgd2ViIGluc3BlY3Rvci5cbiAqXG4gKiAvLyBVc2UgdGhlIGB2YXJpYWJsZWAgb3B0aW9uIHRvIGVuc3VyZSBhIHdpdGgtc3RhdGVtZW50IGlzbid0IHVzZWQgaW4gdGhlIGNvbXBpbGVkIHRlbXBsYXRlLlxuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGkgPCU9IGRhdGEudXNlciAlPiEnLCB7ICd2YXJpYWJsZSc6ICdkYXRhJyB9KTtcbiAqIGNvbXBpbGVkLnNvdXJjZTtcbiAqIC8vID0+IGZ1bmN0aW9uKGRhdGEpIHtcbiAqIC8vICAgdmFyIF9fdCwgX19wID0gJyc7XG4gKiAvLyAgIF9fcCArPSAnaGkgJyArICgoX190ID0gKCBkYXRhLnVzZXIgKSkgPT0gbnVsbCA/ICcnIDogX190KSArICchJztcbiAqIC8vICAgcmV0dXJuIF9fcDtcbiAqIC8vIH1cbiAqXG4gKiAvLyBVc2UgY3VzdG9tIHRlbXBsYXRlIGRlbGltaXRlcnMuXG4gKiBfLnRlbXBsYXRlU2V0dGluZ3MuaW50ZXJwb2xhdGUgPSAve3soW1xcc1xcU10rPyl9fS9nO1xuICogdmFyIGNvbXBpbGVkID0gXy50ZW1wbGF0ZSgnaGVsbG8ge3sgdXNlciB9fSEnKTtcbiAqIGNvbXBpbGVkKHsgJ3VzZXInOiAnbXVzdGFjaGUnIH0pO1xuICogLy8gPT4gJ2hlbGxvIG11c3RhY2hlISdcbiAqXG4gKiAvLyBVc2UgdGhlIGBzb3VyY2VgIHByb3BlcnR5IHRvIGlubGluZSBjb21waWxlZCB0ZW1wbGF0ZXMgZm9yIG1lYW5pbmdmdWxcbiAqIC8vIGxpbmUgbnVtYmVycyBpbiBlcnJvciBtZXNzYWdlcyBhbmQgc3RhY2sgdHJhY2VzLlxuICogZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgJ2pzdC5qcycpLCAnXFxcbiAqICAgdmFyIEpTVCA9IHtcXFxuICogICAgIFwibWFpblwiOiAnICsgXy50ZW1wbGF0ZShtYWluVGV4dCkuc291cmNlICsgJ1xcXG4gKiAgIH07XFxcbiAqICcpO1xuICovXG5mdW5jdGlvbiB0ZW1wbGF0ZShzdHJpbmcsIG9wdGlvbnMsIGd1YXJkKSB7XG4gIC8vIEJhc2VkIG9uIEpvaG4gUmVzaWcncyBgdG1wbGAgaW1wbGVtZW50YXRpb25cbiAgLy8gKGh0dHA6Ly9lam9obi5vcmcvYmxvZy9qYXZhc2NyaXB0LW1pY3JvLXRlbXBsYXRpbmcvKVxuICAvLyBhbmQgTGF1cmEgRG9rdG9yb3ZhJ3MgZG9ULmpzIChodHRwczovL2dpdGh1Yi5jb20vb2xhZG8vZG9UKS5cbiAgdmFyIHNldHRpbmdzID0gdGVtcGxhdGVTZXR0aW5ncy5pbXBvcnRzLl8udGVtcGxhdGVTZXR0aW5ncyB8fCB0ZW1wbGF0ZVNldHRpbmdzO1xuXG4gIGlmIChndWFyZCAmJiBpc0l0ZXJhdGVlQ2FsbChzdHJpbmcsIG9wdGlvbnMsIGd1YXJkKSkge1xuICAgIG9wdGlvbnMgPSB1bmRlZmluZWQ7XG4gIH1cbiAgc3RyaW5nID0gdG9TdHJpbmcoc3RyaW5nKTtcbiAgb3B0aW9ucyA9IGFzc2lnbkluV2l0aCh7fSwgb3B0aW9ucywgc2V0dGluZ3MsIGN1c3RvbURlZmF1bHRzQXNzaWduSW4pO1xuXG4gIHZhciBpbXBvcnRzID0gYXNzaWduSW5XaXRoKHt9LCBvcHRpb25zLmltcG9ydHMsIHNldHRpbmdzLmltcG9ydHMsIGN1c3RvbURlZmF1bHRzQXNzaWduSW4pLFxuICAgICAgaW1wb3J0c0tleXMgPSBrZXlzKGltcG9ydHMpLFxuICAgICAgaW1wb3J0c1ZhbHVlcyA9IGJhc2VWYWx1ZXMoaW1wb3J0cywgaW1wb3J0c0tleXMpO1xuXG4gIHZhciBpc0VzY2FwaW5nLFxuICAgICAgaXNFdmFsdWF0aW5nLFxuICAgICAgaW5kZXggPSAwLFxuICAgICAgaW50ZXJwb2xhdGUgPSBvcHRpb25zLmludGVycG9sYXRlIHx8IHJlTm9NYXRjaCxcbiAgICAgIHNvdXJjZSA9IFwiX19wICs9ICdcIjtcblxuICAvLyBDb21waWxlIHRoZSByZWdleHAgdG8gbWF0Y2ggZWFjaCBkZWxpbWl0ZXIuXG4gIHZhciByZURlbGltaXRlcnMgPSBSZWdFeHAoXG4gICAgKG9wdGlvbnMuZXNjYXBlIHx8IHJlTm9NYXRjaCkuc291cmNlICsgJ3wnICtcbiAgICBpbnRlcnBvbGF0ZS5zb3VyY2UgKyAnfCcgK1xuICAgIChpbnRlcnBvbGF0ZSA9PT0gcmVJbnRlcnBvbGF0ZSA/IHJlRXNUZW1wbGF0ZSA6IHJlTm9NYXRjaCkuc291cmNlICsgJ3wnICtcbiAgICAob3B0aW9ucy5ldmFsdWF0ZSB8fCByZU5vTWF0Y2gpLnNvdXJjZSArICd8JCdcbiAgLCAnZycpO1xuXG4gIC8vIFVzZSBhIHNvdXJjZVVSTCBmb3IgZWFzaWVyIGRlYnVnZ2luZy5cbiAgLy8gVGhlIHNvdXJjZVVSTCBnZXRzIGluamVjdGVkIGludG8gdGhlIHNvdXJjZSB0aGF0J3MgZXZhbC1lZCwgc28gYmUgY2FyZWZ1bFxuICAvLyB3aXRoIGxvb2t1cCAoaW4gY2FzZSBvZiBlLmcuIHByb3RvdHlwZSBwb2xsdXRpb24pLCBhbmQgc3RyaXAgbmV3bGluZXMgaWYgYW55LlxuICAvLyBBIG5ld2xpbmUgd291bGRuJ3QgYmUgYSB2YWxpZCBzb3VyY2VVUkwgYW55d2F5LCBhbmQgaXQnZCBlbmFibGUgY29kZSBpbmplY3Rpb24uXG4gIHZhciBzb3VyY2VVUkwgPSBoYXNPd25Qcm9wZXJ0eS5jYWxsKG9wdGlvbnMsICdzb3VyY2VVUkwnKVxuICAgID8gKCcvLyMgc291cmNlVVJMPScgK1xuICAgICAgIChvcHRpb25zLnNvdXJjZVVSTCArICcnKS5yZXBsYWNlKC9bXFxyXFxuXS9nLCAnICcpICtcbiAgICAgICAnXFxuJylcbiAgICA6ICcnO1xuXG4gIHN0cmluZy5yZXBsYWNlKHJlRGVsaW1pdGVycywgZnVuY3Rpb24obWF0Y2gsIGVzY2FwZVZhbHVlLCBpbnRlcnBvbGF0ZVZhbHVlLCBlc1RlbXBsYXRlVmFsdWUsIGV2YWx1YXRlVmFsdWUsIG9mZnNldCkge1xuICAgIGludGVycG9sYXRlVmFsdWUgfHwgKGludGVycG9sYXRlVmFsdWUgPSBlc1RlbXBsYXRlVmFsdWUpO1xuXG4gICAgLy8gRXNjYXBlIGNoYXJhY3RlcnMgdGhhdCBjYW4ndCBiZSBpbmNsdWRlZCBpbiBzdHJpbmcgbGl0ZXJhbHMuXG4gICAgc291cmNlICs9IHN0cmluZy5zbGljZShpbmRleCwgb2Zmc2V0KS5yZXBsYWNlKHJlVW5lc2NhcGVkU3RyaW5nLCBlc2NhcGVTdHJpbmdDaGFyKTtcblxuICAgIC8vIFJlcGxhY2UgZGVsaW1pdGVycyB3aXRoIHNuaXBwZXRzLlxuICAgIGlmIChlc2NhcGVWYWx1ZSkge1xuICAgICAgaXNFc2NhcGluZyA9IHRydWU7XG4gICAgICBzb3VyY2UgKz0gXCInICtcXG5fX2UoXCIgKyBlc2NhcGVWYWx1ZSArIFwiKSArXFxuJ1wiO1xuICAgIH1cbiAgICBpZiAoZXZhbHVhdGVWYWx1ZSkge1xuICAgICAgaXNFdmFsdWF0aW5nID0gdHJ1ZTtcbiAgICAgIHNvdXJjZSArPSBcIic7XFxuXCIgKyBldmFsdWF0ZVZhbHVlICsgXCI7XFxuX19wICs9ICdcIjtcbiAgICB9XG4gICAgaWYgKGludGVycG9sYXRlVmFsdWUpIHtcbiAgICAgIHNvdXJjZSArPSBcIicgK1xcbigoX190ID0gKFwiICsgaW50ZXJwb2xhdGVWYWx1ZSArIFwiKSkgPT0gbnVsbCA/ICcnIDogX190KSArXFxuJ1wiO1xuICAgIH1cbiAgICBpbmRleCA9IG9mZnNldCArIG1hdGNoLmxlbmd0aDtcblxuICAgIC8vIFRoZSBKUyBlbmdpbmUgZW1iZWRkZWQgaW4gQWRvYmUgcHJvZHVjdHMgbmVlZHMgYG1hdGNoYCByZXR1cm5lZCBpblxuICAgIC8vIG9yZGVyIHRvIHByb2R1Y2UgdGhlIGNvcnJlY3QgYG9mZnNldGAgdmFsdWUuXG4gICAgcmV0dXJuIG1hdGNoO1xuICB9KTtcblxuICBzb3VyY2UgKz0gXCInO1xcblwiO1xuXG4gIC8vIElmIGB2YXJpYWJsZWAgaXMgbm90IHNwZWNpZmllZCB3cmFwIGEgd2l0aC1zdGF0ZW1lbnQgYXJvdW5kIHRoZSBnZW5lcmF0ZWRcbiAgLy8gY29kZSB0byBhZGQgdGhlIGRhdGEgb2JqZWN0IHRvIHRoZSB0b3Agb2YgdGhlIHNjb3BlIGNoYWluLlxuICAvLyBMaWtlIHdpdGggc291cmNlVVJMLCB3ZSB0YWtlIGNhcmUgdG8gbm90IGNoZWNrIHRoZSBvcHRpb24ncyBwcm90b3R5cGUsXG4gIC8vIGFzIHRoaXMgY29uZmlndXJhdGlvbiBpcyBhIGNvZGUgaW5qZWN0aW9uIHZlY3Rvci5cbiAgdmFyIHZhcmlhYmxlID0gaGFzT3duUHJvcGVydHkuY2FsbChvcHRpb25zLCAndmFyaWFibGUnKSAmJiBvcHRpb25zLnZhcmlhYmxlO1xuICBpZiAoIXZhcmlhYmxlKSB7XG4gICAgc291cmNlID0gJ3dpdGggKG9iaikge1xcbicgKyBzb3VyY2UgKyAnXFxufVxcbic7XG4gIH1cbiAgLy8gQ2xlYW51cCBjb2RlIGJ5IHN0cmlwcGluZyBlbXB0eSBzdHJpbmdzLlxuICBzb3VyY2UgPSAoaXNFdmFsdWF0aW5nID8gc291cmNlLnJlcGxhY2UocmVFbXB0eVN0cmluZ0xlYWRpbmcsICcnKSA6IHNvdXJjZSlcbiAgICAucmVwbGFjZShyZUVtcHR5U3RyaW5nTWlkZGxlLCAnJDEnKVxuICAgIC5yZXBsYWNlKHJlRW1wdHlTdHJpbmdUcmFpbGluZywgJyQxOycpO1xuXG4gIC8vIEZyYW1lIGNvZGUgYXMgdGhlIGZ1bmN0aW9uIGJvZHkuXG4gIHNvdXJjZSA9ICdmdW5jdGlvbignICsgKHZhcmlhYmxlIHx8ICdvYmonKSArICcpIHtcXG4nICtcbiAgICAodmFyaWFibGVcbiAgICAgID8gJydcbiAgICAgIDogJ29iaiB8fCAob2JqID0ge30pO1xcbidcbiAgICApICtcbiAgICBcInZhciBfX3QsIF9fcCA9ICcnXCIgK1xuICAgIChpc0VzY2FwaW5nXG4gICAgICAgPyAnLCBfX2UgPSBfLmVzY2FwZSdcbiAgICAgICA6ICcnXG4gICAgKSArXG4gICAgKGlzRXZhbHVhdGluZ1xuICAgICAgPyAnLCBfX2ogPSBBcnJheS5wcm90b3R5cGUuam9pbjtcXG4nICtcbiAgICAgICAgXCJmdW5jdGlvbiBwcmludCgpIHsgX19wICs9IF9fai5jYWxsKGFyZ3VtZW50cywgJycpIH1cXG5cIlxuICAgICAgOiAnO1xcbidcbiAgICApICtcbiAgICBzb3VyY2UgK1xuICAgICdyZXR1cm4gX19wXFxufSc7XG5cbiAgdmFyIHJlc3VsdCA9IGF0dGVtcHQoZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEZ1bmN0aW9uKGltcG9ydHNLZXlzLCBzb3VyY2VVUkwgKyAncmV0dXJuICcgKyBzb3VyY2UpXG4gICAgICAuYXBwbHkodW5kZWZpbmVkLCBpbXBvcnRzVmFsdWVzKTtcbiAgfSk7XG5cbiAgLy8gUHJvdmlkZSB0aGUgY29tcGlsZWQgZnVuY3Rpb24ncyBzb3VyY2UgYnkgaXRzIGB0b1N0cmluZ2AgbWV0aG9kIG9yXG4gIC8vIHRoZSBgc291cmNlYCBwcm9wZXJ0eSBhcyBhIGNvbnZlbmllbmNlIGZvciBpbmxpbmluZyBjb21waWxlZCB0ZW1wbGF0ZXMuXG4gIHJlc3VsdC5zb3VyY2UgPSBzb3VyY2U7XG4gIGlmIChpc0Vycm9yKHJlc3VsdCkpIHtcbiAgICB0aHJvdyByZXN1bHQ7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB0ZW1wbGF0ZTtcbiIsInZhciBlc2NhcGUgPSByZXF1aXJlKCcuL2VzY2FwZScpLFxuICAgIHJlRXNjYXBlID0gcmVxdWlyZSgnLi9fcmVFc2NhcGUnKSxcbiAgICByZUV2YWx1YXRlID0gcmVxdWlyZSgnLi9fcmVFdmFsdWF0ZScpLFxuICAgIHJlSW50ZXJwb2xhdGUgPSByZXF1aXJlKCcuL19yZUludGVycG9sYXRlJyk7XG5cbi8qKlxuICogQnkgZGVmYXVsdCwgdGhlIHRlbXBsYXRlIGRlbGltaXRlcnMgdXNlZCBieSBsb2Rhc2ggYXJlIGxpa2UgdGhvc2UgaW5cbiAqIGVtYmVkZGVkIFJ1YnkgKEVSQikgYXMgd2VsbCBhcyBFUzIwMTUgdGVtcGxhdGUgc3RyaW5ncy4gQ2hhbmdlIHRoZVxuICogZm9sbG93aW5nIHRlbXBsYXRlIHNldHRpbmdzIHRvIHVzZSBhbHRlcm5hdGl2ZSBkZWxpbWl0ZXJzLlxuICpcbiAqIEBzdGF0aWNcbiAqIEBtZW1iZXJPZiBfXG4gKiBAdHlwZSB7T2JqZWN0fVxuICovXG52YXIgdGVtcGxhdGVTZXR0aW5ncyA9IHtcblxuICAvKipcbiAgICogVXNlZCB0byBkZXRlY3QgYGRhdGFgIHByb3BlcnR5IHZhbHVlcyB0byBiZSBIVE1MLWVzY2FwZWQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge1JlZ0V4cH1cbiAgICovXG4gICdlc2NhcGUnOiByZUVzY2FwZSxcblxuICAvKipcbiAgICogVXNlZCB0byBkZXRlY3QgY29kZSB0byBiZSBldmFsdWF0ZWQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge1JlZ0V4cH1cbiAgICovXG4gICdldmFsdWF0ZSc6IHJlRXZhbHVhdGUsXG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gZGV0ZWN0IGBkYXRhYCBwcm9wZXJ0eSB2YWx1ZXMgdG8gaW5qZWN0LlxuICAgKlxuICAgKiBAbWVtYmVyT2YgXy50ZW1wbGF0ZVNldHRpbmdzXG4gICAqIEB0eXBlIHtSZWdFeHB9XG4gICAqL1xuICAnaW50ZXJwb2xhdGUnOiByZUludGVycG9sYXRlLFxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIHJlZmVyZW5jZSB0aGUgZGF0YSBvYmplY3QgaW4gdGhlIHRlbXBsYXRlIHRleHQuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gICd2YXJpYWJsZSc6ICcnLFxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGltcG9ydCB2YXJpYWJsZXMgaW50byB0aGUgY29tcGlsZWQgdGVtcGxhdGUuXG4gICAqXG4gICAqIEBtZW1iZXJPZiBfLnRlbXBsYXRlU2V0dGluZ3NcbiAgICogQHR5cGUge09iamVjdH1cbiAgICovXG4gICdpbXBvcnRzJzoge1xuXG4gICAgLyoqXG4gICAgICogQSByZWZlcmVuY2UgdG8gdGhlIGBsb2Rhc2hgIGZ1bmN0aW9uLlxuICAgICAqXG4gICAgICogQG1lbWJlck9mIF8udGVtcGxhdGVTZXR0aW5ncy5pbXBvcnRzXG4gICAgICogQHR5cGUge0Z1bmN0aW9ufVxuICAgICAqL1xuICAgICdfJzogeyAnZXNjYXBlJzogZXNjYXBlIH1cbiAgfVxufTtcblxubW9kdWxlLmV4cG9ydHMgPSB0ZW1wbGF0ZVNldHRpbmdzO1xuIiwidmFyIGJhc2VUb1N0cmluZyA9IHJlcXVpcmUoJy4vX2Jhc2VUb1N0cmluZycpO1xuXG4vKipcbiAqIENvbnZlcnRzIGB2YWx1ZWAgdG8gYSBzdHJpbmcuIEFuIGVtcHR5IHN0cmluZyBpcyByZXR1cm5lZCBmb3IgYG51bGxgXG4gKiBhbmQgYHVuZGVmaW5lZGAgdmFsdWVzLiBUaGUgc2lnbiBvZiBgLTBgIGlzIHByZXNlcnZlZC5cbiAqXG4gKiBAc3RhdGljXG4gKiBAbWVtYmVyT2YgX1xuICogQHNpbmNlIDQuMC4wXG4gKiBAY2F0ZWdvcnkgTGFuZ1xuICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIHtzdHJpbmd9IFJldHVybnMgdGhlIGNvbnZlcnRlZCBzdHJpbmcuXG4gKiBAZXhhbXBsZVxuICpcbiAqIF8udG9TdHJpbmcobnVsbCk7XG4gKiAvLyA9PiAnJ1xuICpcbiAqIF8udG9TdHJpbmcoLTApO1xuICogLy8gPT4gJy0wJ1xuICpcbiAqIF8udG9TdHJpbmcoWzEsIDIsIDNdKTtcbiAqIC8vID0+ICcxLDIsMydcbiAqL1xuZnVuY3Rpb24gdG9TdHJpbmcodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlID09IG51bGwgPyAnJyA6IGJhc2VUb1N0cmluZyh2YWx1ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gdG9TdHJpbmc7XG4iLCJtb2R1bGUuZXhwb3J0cyA9IFwiLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBHZW5lcmljIFN0eWxlc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG5hZy1ncmlkLCBhZy1ncmlkLWFuZ3VsYXIsIGFnLWdyaWQtbmcyLCBhZy1ncmlkLXBvbHltZXIsIGFnLWdyaWQtYXVyZWxpYSB7XFxuICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1oaWRkZW4ge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XFxuXFxuLmFnLWludmlzaWJsZSB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsgfVxcblxcbi5hZy1mYWRlZCB7XFxuICBvcGFjaXR5OiAwLjM7IH1cXG5cXG4uYWctd2lkdGgtaGFsZiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7IH1cXG5cXG4uYWctdW5zZWxlY3RhYmxlIHtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDsgfVxcblxcbi5hZy1zZWxlY3RhYmxlIHtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDtcXG4gIC1tcy11c2VyLXNlbGVjdDogdGV4dCAhaW1wb3J0YW50O1xcbiAgdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDsgfVxcblxcbi5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgZmxleDogMSAxIGF1dG87XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1zaGFrZS1sZWZ0LXRvLXJpZ2h0IHtcXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMnM7XFxuICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XFxuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhZy1zaGFrZS1sZWZ0LXRvLXJpZ2h0O1xcbiAgYW5pbWF0aW9uLW5hbWU6IGFnLXNoYWtlLWxlZnQtdG8tcmlnaHQ7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgYWctc2hha2UtbGVmdC10by1yaWdodCB7XFxuICBmcm9tIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgdG8ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDJweDtcXG4gICAgcGFkZGluZy1yaWdodDogNnB4OyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIGFnLXNoYWtlLWxlZnQtdG8tcmlnaHQge1xcbiAgZnJvbSB7XFxuICAgIHBhZGRpbmctbGVmdDogNnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIHRvIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfSB9XFxuXFxuLmFnLXJvb3Qtd3JhcHBlciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gIC5hZy1yb290LXdyYXBwZXIuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLXJvb3Qtd3JhcHBlciAuYWctd2F0ZXJtYXJrIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBib3R0b206IDEwcHg7XFxuICAgIHJpZ2h0OiAyNXB4O1xcbiAgICBvcGFjaXR5OiAwLjU7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dCAzcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dCAzczsgfVxcbiAgICAuYWctcm9vdC13cmFwcGVyIC5hZy13YXRlcm1hcms6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiAnJztcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpVlZSR0xUZ2lQejRLUEhOMlp5QjNhV1IwYUQwaU5EazBjSGdpSUdobGFXZG9kRDBpTWpNNWNIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBME9UUWdNak01SWlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaVBnb2dJQ0FnUENFdExTQkhaVzVsY21GMGIzSTZJRk5yWlhSamFDQTBOeTR4SUNnME5UUXlNaWtnTFNCb2RIUndPaTh2ZDNkM0xtSnZhR1Z0YVdGdVkyOWthVzVuTG1OdmJTOXphMlYwWTJnZ0xTMCtDaUFnSUNBOGRHbDBiR1UrVEc5bmJ6d3ZkR2wwYkdVK0NpQWdJQ0E4WkdWell6NURjbVZoZEdWa0lIZHBkR2dnVTJ0bGRHTm9Mand2WkdWell6NEtJQ0FnSUR4a1pXWnpQZ29nSUNBZ0lDQWdJRHh3WVhSb0lHUTlJazB3TGpZeE1qZzBPVGt6TVN3eE1EZ2dUREF1TmpFeU9EUTVPVE14TERZM0xqUTFPVFl6TnpRZ1REQXVOakV5T0RRNU9UTXhMRFkzTGpRMU9UWXpOelFnUXpBdU5qRXlPRFE1T1RNeExEWXlMakV3TURZMU16WWdNeTQwTnpFNE16TTNPQ3cxTnk0eE5EZzNORGd6SURndU1URXlPRFE1T1RNc05UUXVORFk1TWpVMk5DQk1PVGd1TXpBMk5ESTFMREl1TXprMU9UY3hOVGNnVERrNExqTXdOalF5TlN3eUxqTTVOVGszTVRVM0lFTXhNREl1T1RRM05EUXhMQzB3TGpJNE16VXlNRE0xT0NBeE1EZ3VOalkxTkRBNUxDMHdMakk0TXpVeU1ETTFPQ0F4TVRNdU16QTJOREkxTERJdU16azFPVGN4TlRjZ1RERXhNeTR6TURZME1qVXNNaTR6T1RVNU56RTFOeUJNTWpBekxqVXNOVFF1TkRZNU1qVTJOQ0JNTWpBekxqVXNOVFF1TkRZNU1qVTJOQ0JETWpBNExqRTBNVEF4Tml3MU55NHhORGczTkRneklESXhNU3cyTWk0eE1EQTJOVE0ySURJeE1TdzJOeTQwTlRrMk16YzBJRXd5TVRFc01UTTRJRXd4T0RFc01UTTRJRXd4T0RBdU9UazNNRFF4TERrekxqazVPVGs1T1RnZ1RERTRNQzQ1T1RZd016SXNPVE11T1RrNU9UazVPU0JETVRnd0xqazVOVFEzTlN3NE5TNDNNVFl4TWpJMklERTNOQzR5TnprNU1Ea3NOemt1TURBeE1EQTROeUF4TmpVdU9UazJNRE15TERjNUxqQXdNVEF3T0RjZ1RERXlNaXczT0M0NU9UazVPVGs1SUVNeE1UTXVOekUxTnpJNUxEYzRMams1T1RrNU9Ua2dNVEEzTERnMUxqY3hOVGN5T0RZZ01UQTNMRGt6TGprNU9UazVPVGtnVERFd055d3hNell1TURFMU5qSXpJRXd4TURjc01UTTJMakF4TlRZeU15QkRNVEEzTERFME5DNHlPVGs0T1RVZ01URXpMamN4TlRjeU9Td3hOVEV1TURFMU5qSXpJREV5TWl3eE5URXVNREUxTmpJeklFd3hOamdzTVRVeExqQXhOVFl5TXlCTU1UWTRMREUyTXlCRE1UWTRMREUyTkM0Mk5UWTROVFFnTVRZMkxqWTFOamcxTkN3eE5qWWdNVFkxTERFMk5pQk1NVEl3TERFMk5pQk1NVEl3TERFM09TQk1NVFkxTGprNU5qQXpNaXd4TnprZ1RERTJOUzQ1T1RZd016SXNNVGM0TGprNU56ZzNOeUJETVRjMExqSTNPVFEzTkN3eE56Z3VPVGszT0RjM0lERTRNQzQ1T1RRNE5pd3hOekl1TWpnek5EUXlJREU0TUM0NU9UWXdNeklzTVRZMElFd3hPREVzTVRVd0xqazJNRFUxTkNCTU1qRXhMREUxTUM0NU5qQTFOVFFnVERJeE1Td3hOekV1TmpBMk1qQTNJRXd5TVRFc01UY3hMall3TmpJd055QkRNakV4TERFM05pNDVOalV4T1RFZ01qQTRMakUwTVRBeE5pd3hPREV1T1RFM01EazJJREl3TXk0MUxERTROQzQxT1RZMU9EZ2dUREV4TXk0ek1EWTBNalVzTWpNMkxqWTJPVGczTXlCTU1URXpMak13TmpReU5Td3lNell1TmpZNU9EY3pJRU14TURndU5qWTFOREE1TERJek9TNHpORGt6TmpVZ01UQXlMamswTnpRME1Td3lNemt1TXpRNU16WTFJRGs0TGpNd05qUXlOU3d5TXpZdU5qWTVPRGN6SUV3NExqRXhNamcwT1RrekxERTROQzQxT1RZMU9EZ2dURGd1TVRFeU9EUTVPVE1zTVRnMExqVTVOalU0T0NCRE15NDBOekU0TXpNM09Dd3hPREV1T1RFM01EazJJREF1TmpFeU9EUTVPVE14TERFM05pNDVOalV4T1RFZ01DNDJNVEk0TkRrNU16RXNNVGN4TGpZd05qSXdOeUJNTUM0Mk1USTRORGs1TXpFc01USXhJRXd5Tnl3eE1qRWdUREkzTERFek5pQkRNamNzTVRRMExqSTROREkzTVNBek15NDNNVFUzTWpnM0xERTFNU0EwTWl3eE5URWdURFF5TERFMU1TQk1NVEF3TERFMU1TQk1NVEF3TERrMElFTXhNREFzT0RVdU56RTFOekk0T0NBNU15NHlPRFF5TnpFeUxEYzVJRGcxTERjNUlFd3lOeXczT1NCTU1qY3NPVElnVERnMExEa3lJRU00TlM0Mk5UWTROVFF5TERreUlEZzNMRGt6TGpNME16RTBOVGdnT0Rjc09UVWdURGczTERrMUlFdzROeXd4TURnZ1REQXVOakV5T0RRNU9UTXhMREV3T0NCYUlpQnBaRDBpY0dGMGFDMHhJajQ4TDNCaGRHZytDaUFnSUNBOEwyUmxabk0rQ2lBZ0lDQThaeUJwWkQwaVUzbHRZbTlzY3lJZ2MzUnliMnRsUFNKdWIyNWxJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqRWlJR1pwYkd3OUltNXZibVVpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJK0NpQWdJQ0FnSUNBZ1BHY2dhV1E5SWt4dloyOGlQZ29nSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk5EYzNMRFUxSUV3ME9UUXNOVFVnVERRNU5Dd3hOVEVnVERRek5Td3hOVEVnUXpReU5pNDNNVFUzTWprc01UVXhJRFF5TUN3eE5EUXVNamcwTWpjeElEUXlNQ3d4TXpZZ1REUXlNQ3c1TmlCRE5ESXdMRGczTGpjeE5UY3lPRGdnTkRJMkxqY3hOVGN5T1N3NE1TQTBNelVzT0RFZ1REUXpOU3c0TVNCTU5EYzNMRGd4SUV3ME56Y3NOVFVnV2lCTk5EUXdMRGs0SUVNME16Z3VNelF6TVRRMkxEazRJRFF6Tnl3NU9TNHpORE14TkRVNElEUXpOeXd4TURFZ1REUXpOeXd4TXpFZ1F6UXpOeXd4TXpJdU5qVTJPRFUwSURRek9DNHpORE14TkRZc01UTTBJRFEwTUN3eE16UWdURFEzTnl3eE16UWdURFEzTnl3NU9DQk1ORFF3TERrNElGb2lJR2xrUFNKa0lpQm1hV3hzUFNJalJrWkdSa1pHSWo0OEwzQmhkR2crQ2lBZ0lDQWdJQ0FnSUNBZ0lEeG5JR2xrUFNKcElpQjBjbUZ1YzJadmNtMDlJblJ5WVc1emJHRjBaU2d6T1RZdU1EQXdNREF3TENBMU5TNHdNREF3TURBcElqNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHdiMng1WjI5dUlHbGtQU0pRWVhSb0xUWWlJR1pwYkd3OUlpTkdSa1pHUmtZaUlIQnZhVzUwY3owaU1DQXlOaUF4TnlBeU5pQXhOeUE1TmlBd0lEazJJajQ4TDNCdmJIbG5iMjQrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4Y0c5c2VXZHZiaUJwWkQwaVVHRjBhQzAzSWlCbWFXeHNQU0lqUlRFeFJqSXlJaUJ3YjJsdWRITTlJakFnTVM0eE16WTROamd6T0dVdE1UTWdNVGNnTVM0eE16WTROamd6T0dVdE1UTWdNVGNnTVRjZ01DQXhOeUkrUEM5d2IyeDVaMjl1UGdvZ0lDQWdJQ0FnSUNBZ0lDQThMMmMrQ2lBZ0lDQWdJQ0FnSUNBZ0lEeHdZWFJvSUdROUlrMHpNekVzTVRVeElFd3pORGdzTVRVeElFd3pORGdzTVRBeElFd3pORGdzTVRBeElFTXpORGdzT1RrdU16UXpNVFExT0NBek5Ea3VNelF6TVRRMkxEazRJRE0xTVN3NU9DQk1Nemc1TERrNElFd3pPRGtzT0RFZ1RETTBOaXc0TVNCTU16UTJMRGd4SUVNek16Y3VOekUxTnpJNUxEZ3hJRE16TVN3NE55NDNNVFUzTWpnNElETXpNU3c1TmlCTU16TXhMREUxTVNCYUlpQnBaRDBpY2lJZ1ptbHNiRDBpSTBaR1JrWkdSaUkrUEM5d1lYUm9QZ29nSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk16STBMRGcySUV3ek1qUXNOellnVERNeU5DdzNOaUJETXpJMExEWTNMamN4TlRjeU9EZ2dNekUzTGpJNE5ESTNNU3cyTVNBek1Ea3NOakVnVERJME9TdzJNU0JNTWpRNUxEWXhJRU15TkRBdU56RTFOekk1TERZeElESXpOQ3cyTnk0M01UVTNNamc0SURJek5DdzNOaUJNTWpNMExERXpOaUJNTWpNMExERXpOaUJETWpNMExERTBOQzR5T0RReU56RWdNalF3TGpjeE5UY3lPU3d4TlRFZ01qUTVMREUxTVNCTU16QTVMREUxTVNCTU16QTVMREUxTVNCRE16RTNMakk0TkRJM01Td3hOVEVnTXpJMExERTBOQzR5T0RReU56RWdNekkwTERFek5pQk1NekkwTERFd01DQk1NamczTERFd01DQk1NamczTERFeE55Qk1NekEzTERFeE55Qk1NekEzTERFek1TQk1NekEzTERFek1TQkRNekEzTERFek1pNDJOVFk0TlRRZ016QTFMalkxTmpnMU5Dd3hNelFnTXpBMExERXpOQ0JNTWpVMExERXpOQ0JNTWpVMExERXpOQ0JETWpVeUxqTTBNekUwTml3eE16UWdNalV4TERFek1pNDJOVFk0TlRRZ01qVXhMREV6TVNCTU1qVXhMRGd4SUV3eU5URXNPREVnUXpJMU1TdzNPUzR6TkRNeE5EVTRJREkxTWk0ek5ETXhORFlzTnpnZ01qVTBMRGM0SUV3ek1EUXNOemdnVERNd05DdzNPQ0JETXpBMUxqWTFOamcxTkN3M09DQXpNRGNzTnprdU16UXpNVFExT0NBek1EY3NPREVnVERNd055dzROaUJNTXpJMExEZzJJRm9pSUdsa1BTSkhJaUJtYVd4c1BTSWpSa1pHUmtaR0lqNDhMM0JoZEdnK0NpQWdJQ0FnSUNBZ0lDQWdJRHhuSUdsa1BTSmhaeUkrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4WnlCcFpEMGlRMjl0WW1sdVpXUXRVMmhoY0dVaVBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHh0WVhOcklHbGtQU0p0WVhOckxUSWlJR1pwYkd3OUluZG9hWFJsSWo0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhWelpTQjRiR2x1YXpwb2NtVm1QU0lqY0dGMGFDMHhJajQ4TDNWelpUNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4TDIxaGMycytDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhWelpTQm1hV3hzUFNJalJURXhSakl5SWlCNGJHbHVhenBvY21WbVBTSWpjR0YwYUMweElqNDhMM1Z6WlQ0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHlaV04wSUdsa1BTSm5JaUJtYVd4c1BTSWpSVEV4UmpJeUlpQjRQU0l4TWpBaUlIazlJamt5SWlCM2FXUjBhRDBpTkRnaUlHaGxhV2RvZEQwaU5EWWlJSEo0UFNJeklqNDhMM0psWTNRK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk5EQXNNVEl4SUV3NE55d3hNakVnVERnM0xERXpPQ0JNTkRNc01UTTRJRXcwTXl3eE16Z2dRelF4TGpNME16RTBOVGdzTVRNNElEUXdMREV6Tmk0Mk5UWTROVFFnTkRBc01UTTFJRXcwTUN3eE1qRWdXaUlnYVdROUlrTnZiV0pwYm1Wa0xWTm9ZWEJsSWlCbWFXeHNQU0lqUlRFeFJqSXlJajQ4TDNCaGRHZytDaUFnSUNBZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUNBZ0lDQThMMmMrQ2lBZ0lDQThMMmMrQ2p3dmMzWm5QZz09KTtcXG4gICAgICAtd2Via2l0LWZpbHRlcjogaW52ZXJ0KDUwJSk7XFxuICAgICAgZmlsdGVyOiBpbnZlcnQoNTAlKTtcXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTEwcHggNjBweDtcXG4gICAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgICBoZWlnaHQ6IDYwcHg7XFxuICAgICAgd2lkdGg6IDExMHB4OyB9XFxuICAgIC5hZy1yb290LXdyYXBwZXIgLmFnLXdhdGVybWFyayAuYWctd2F0ZXJtYXJrLXRleHQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBmb250LWZhbWlseTogSW1wYWN0O1xcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfVxcblxcbi5hZy1yb290LXdyYXBwZXItYm9keSB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XFxuICAuYWctcm9vdC13cmFwcGVyLWJvZHkuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIGhlaWdodDogMDtcXG4gICAgbWluLWhlaWdodDogMDsgfVxcblxcbi5hZy1yb290IHtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XFxuICAuYWctcm9vdC5hZy1sYXlvdXQtbm9ybWFsLCAuYWctcm9vdC5hZy1sYXlvdXQtYXV0by1oZWlnaHQge1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB3aWR0aDogMDsgfVxcbiAgLmFnLXJvb3QuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogVmlld3BvcnRzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1oZWFkZXItdmlld3BvcnQsXFxuLmFnLWZsb2F0aW5nLXRvcC12aWV3cG9ydCxcXG4uYWctYm9keS12aWV3cG9ydCxcXG4uYWctcGlubmVkLWxlZnQtY29scy12aWV3cG9ydCxcXG4uYWctY2VudGVyLWNvbHMtdmlld3BvcnQsXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLXZpZXdwb3J0LFxcbi5hZy1mbG9hdGluZy1ib3R0b20tdmlld3BvcnQsXFxuLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwtdmlld3BvcnQsXFxuLmFnLXZpcnR1YWwtbGlzdC12aWV3cG9ydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgZmxleDogMSAxIGF1dG87IH1cXG5cXG4uYWctYm9keS12aWV3cG9ydCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LW5vcm1hbCB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQ6bm90KC5hZy1sYXlvdXQtcHJpbnQpLmFnLWZvcmNlLXZlcnRpY2FsLXNjcm9sbCB7XFxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxcblxcbi5hZy1waW5uZWQtbGVmdC1jb2xzLXZpZXdwb3J0LCAuYWctcGlubmVkLXJpZ2h0LWNvbHMtdmlld3BvcnQge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLWNlbnRlci1jb2xzLXZpZXdwb3J0IHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLXZpZXdwb3J0IHtcXG4gIG92ZXJmbG93LXg6IHNjcm9sbDsgfVxcblxcbi5hZy12aXJ0dWFsLWxpc3Qtdmlld3BvcnQge1xcbiAgb3ZlcmZsb3c6IGF1dG87XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQ29udGFpbmVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctaGVhZGVyLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctdG9wLWNvbnRhaW5lcixcXG4uYWctYm9keS1jb250YWluZXIsXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLWNvbnRhaW5lcixcXG4uYWctY2VudGVyLWNvbHMtY29udGFpbmVyLFxcbi5hZy1waW5uZWQtbGVmdC1jb2xzLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctYm90dG9tLWNvbnRhaW5lcixcXG4uYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbC1jb250YWluZXIsXFxuLmFnLWZ1bGwtd2lkdGgtY29udGFpbmVyLFxcbi5hZy1mbG9hdGluZy1ib3R0b20tZnVsbC13aWR0aC1jb250YWluZXIsXFxuLmFnLXZpcnR1YWwtbGlzdC1jb250YWluZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWhlYWRlci1jb250YWluZXIsIC5hZy1mbG9hdGluZy10b3AtY29udGFpbmVyLCAuYWctZmxvYXRpbmctYm90dG9tLWNvbnRhaW5lciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLWJvZHktdmlld3BvcnQgLmFnLWNlbnRlci1jb2xzLWNsaXBwZXIge1xcbiAgbWluLWhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1ib2R5LXZpZXdwb3J0LmFnLWxheW91dC1hdXRvLWhlaWdodCAuYWctY2VudGVyLWNvbHMtY2xpcHBlciwgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LWF1dG8taGVpZ2h0IC5hZy1jZW50ZXItY29scy1jb250YWluZXIge1xcbiAgbWluLWhlaWdodDogNTBweDsgfVxcblxcbi5hZy1ib2R5LXZpZXdwb3J0IC5hZy1jZW50ZXItY29scy1jb250YWluZXIge1xcbiAgZGlzcGxheTogYmxvY2s7IH1cXG5cXG4uYWctYm9keS12aWV3cG9ydC5hZy1sYXlvdXQtcHJpbnQge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcbiAgLmFnLWJvZHktdmlld3BvcnQuYWctbGF5b3V0LXByaW50IC5hZy1jZW50ZXItY29scy1jbGlwcGVyIHtcXG4gICAgbWluLXdpZHRoOiAxMDAlOyB9XFxuXFxuLmFnLXBpbm5lZC1yaWdodC1jb2xzLWNvbnRhaW5lciB7XFxuICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsLWNvbnRhaW5lciB7XFxuICBoZWlnaHQ6IDEwMCU7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1jb250YWluZXIsXFxuLmFnLWZsb2F0aW5nLXRvcC1mdWxsLXdpZHRoLWNvbnRhaW5lcixcXG4uYWctZmxvYXRpbmctYm90dG9tLWZ1bGwtd2lkdGgtY29udGFpbmVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMHB4O1xcbiAgbGVmdDogMHB4O1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1jb250YWluZXIge1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctZmxvYXRpbmctYm90dG9tLWZ1bGwtd2lkdGgtY29udGFpbmVyLCAuYWctZmxvYXRpbmctdG9wLWZ1bGwtd2lkdGgtY29udGFpbmVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy12aXJ0dWFsLWxpc3QtY29udGFpbmVyIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFNjcm9sbGVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctY2VudGVyLWNvbHMtY2xpcHBlciB7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgLW1zLWZsZXg6IDE7XFxuICBmbGV4OiAxO1xcbiAgbWluLXdpZHRoOiAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsIHtcXG4gIG1pbi1oZWlnaHQ6IDA7XFxuICBtaW4td2lkdGg6IDA7XFxuICB3aWR0aDogMTAwJTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWxheW91dC1wcmludCAuYWctYm9keS1ob3Jpem9udGFsLXNjcm9sbCB7XFxuICBkaXNwbGF5OiBub25lOyB9XFxuXFxuLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIsIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtaW4td2lkdGg6IDA7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxMDAwO1xcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDEwMDA7XFxuICBmbGV4LWdyb3c6IDEwMDA7XFxuICBvdmVyZmxvdy14OiBzY3JvbGw7IH1cXG4gIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciwgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogSGVhZGVyc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctaGVhZGVyLCAuYWctcGlubmVkLWxlZnQtaGVhZGVyLCAuYWctcGlubmVkLXJpZ2h0LWhlYWRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1zb3J0YWJsZSwgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciAuYWctaGVhZGVyLWNlbGwtc29ydGFibGUsIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1zb3J0YWJsZSB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcbi5hZy1oZWFkZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICB3aWR0aDogMTAwJTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctaGVhZGVyLWljb24ge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7IH1cXG5cXG4uYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1oZWFkZXItcm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG5cXG4uYWctaGVhZGVyLW92ZXJsYXkge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cXG5cXG4uYWctaGVhZGVyLWNlbGwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcblxcbi5hZy1oZWFkZXItZ3JvdXAtY2VsbC1sYWJlbCwgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItY2VsbC10ZXh0IHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cXG5cXG4uYWctaGVhZGVyLWdyb3VwLXRleHQge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcblxcbi5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogMTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHdpZHRoOiA0cHg7IH1cXG5cXG4uYWctaGVhZGVyLWV4cGFuZC1pY29uIHtcXG4gIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuXFxuLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIENvbHVtbnNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWNvbHVtbi1tb3ZpbmcgLmFnLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnM7IH1cXG5cXG4uYWctY29sdW1uLW1vdmluZyAuYWctaGVhZGVyLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnM7IH1cXG5cXG4uYWctY29sdW1uLW1vdmluZyAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuMnMsIHdpZHRoIDAuMnM7XFxuICB0cmFuc2l0aW9uOiBsZWZ0IDAuMnMsIHdpZHRoIDAuMnM7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIENvbHVtbiBQYW5lbFxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctY29sdW1uLXBhbmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAtbXMtZmxleDogMSAxIGF1dG87XFxuICBmbGV4OiAxIDEgYXV0bzsgfVxcblxcbi5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDQ7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogNDtcXG4gIGZsZXgtZ3JvdzogNDtcXG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAxO1xcbiAgZmxleC1zaHJpbms6IDE7XFxuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcXG4gIGZsZXgtYmFzaXM6IDA7IH1cXG4gIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgZmxleDogbm9uZTsgfVxcbiAgICAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgICAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWZpbHRlci13cmFwcGVyIHtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgICAgIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIgaW5wdXQge1xcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIG92ZXJmbG93OiBhdXRvOyB9XFxuXFxuLmFnLWNvbHVtbi1kcm9wIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgb3ZlcmZsb3c6IGF1dG87XFxuICB3aWR0aDogMTAwJTsgfVxcbiAgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAgIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC10ZXh0IHtcXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4uYWctY29sdW1uLWRyb3AuYWctY29sdW1uLWRyb3AtdmVydGljYWwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgMHB4O1xcbiAgZmxleDogMSAxIDA7XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcXG4gIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cXG4gIC5hZy1jb2x1bW4tZHJvcC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IGRpdiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWNvbHVtbi1kcm9wLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XFxuICAgIGZsZXgtZ3JvdzogMTtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBvdmVyZmxvdy14OiBhdXRvOyB9XFxuICAuYWctY29sdW1uLWRyb3AuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1jb2x1bW4tZHJvcC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBSb3dzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1yb3ctYW5pbWF0aW9uIC5hZy1yb3cge1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC40cywgaGVpZ2h0IDAuNHMsIGJhY2tncm91bmQtY29sb3IgMC4xcywgb3BhY2l0eSAwLjJzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjRzO1xcbiAgdHJhbnNpdGlvbjogdG9wIDAuNHMsIGhlaWdodCAwLjRzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMsIG9wYWNpdHkgMC4ycywgLXdlYmtpdC10cmFuc2Zvcm0gMC40cztcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzLCB0b3AgMC40cywgaGVpZ2h0IDAuNHMsIGJhY2tncm91bmQtY29sb3IgMC4xcywgb3BhY2l0eSAwLjJzO1xcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMsIHRvcCAwLjRzLCBoZWlnaHQgMC40cywgYmFja2dyb3VuZC1jb2xvciAwLjFzLCBvcGFjaXR5IDAuMnMsIC13ZWJraXQtdHJhbnNmb3JtIDAuNHM7IH1cXG5cXG4uYWctcm93LW5vLWFuaW1hdGlvbiAuYWctcm93IHtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuXFxuLmFnLXJvdyB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctcm93LXBvc2l0aW9uLWFic29sdXRlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxcblxcbi5hZy1yb3ctcG9zaXRpb24tcmVsYXRpdmUge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuXFxuLmFnLWZ1bGwtd2lkdGgtcm93IHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb2ludGVyLWV2ZW50czogYWxsOyB9XFxuXFxuLmFnLXJvdy1pbmxpbmUtZWRpdGluZyB7XFxuICB6LWluZGV4OiAxOyB9XFxuXFxuLmFnLXJvdy1kcmFnZ2luZyB7XFxuICB6LWluZGV4OiAyOyB9XFxuXFxuLmFnLXN0dWItY2VsbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQ2VsbHNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWNlbGwge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcblxcbi5hZy1jZWxsLXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLWNlbGwtd3JhcHBlci5hZy1yb3ctZ3JvdXAge1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy1jZWxsLXdyYXBwZXIgLmFnLWNlbGwtdmFsdWUsIC5hZy1jZWxsLXdyYXBwZXIgLmFnLWdyb3VwLXZhbHVlIHtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cXG5cXG4uYWctZnVsbC13aWR0aC1yb3cuYWctcm93LWdyb3VwIC5hZy1jZWxsLXdyYXBwZXIge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuXFxuLmFnLWNlbGwtd2l0aC1oZWlnaHQge1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWdyb3VwLWNlbGwtZW50aXJlLXJvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctZm9vdGVyLWNlbGwtZW50aXJlLXJvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICB6LWluZGV4OiAxOyB9XFxuICAuYWctY2VsbC1pbmxpbmUtZWRpdGluZyAuYWctY2VsbC1lZGl0LWlucHV0LCAuYWctY2VsbC1pbmxpbmUtZWRpdGluZyAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIEZpbHRlcnNcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLWZpbHRlciAuYWctZmlsdGVyLWNoZWNrYm94IHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuXFxuLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxcblxcbi5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBGbG9hdGluZyBGaWx0ZXJcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1mdWxsLWJvZHkgLmFnLXJlYWN0LWNvbnRhaW5lciwgLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IC5hZy1yZWFjdC1jb250YWluZXIge1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgaGVpZ2h0OiAxMDAlOyB9XFxuICAuYWctZmxvYXRpbmctZmlsdGVyLWJvZHkgaW5wdXQge1xcbiAgICBtYXJnaW46IDA7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7IH1cXG5cXG4uYWctZmxvYXRpbmctZmlsdGVyLWZ1bGwtYm9keSB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHdpZHRoOiAxMDAlOyB9XFxuICAuYWctZmxvYXRpbmctZmlsdGVyLWZ1bGwtYm9keSA+IGRpdiB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy1mbG9hdGluZy1maWx0ZXItZnVsbC1ib2R5IGlucHV0IHtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICB3aWR0aDogMTAwJTsgfVxcbiAgLmFnLWZsb2F0aW5nLWZpbHRlci1mdWxsLWJvZHkgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWZpbHRlci1pbnB1dCB7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItaW5wdXQ6LW1vei1yZWFkLW9ubHkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItaW5wdXQ6cmVhZC1vbmx5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7IH1cXG5cXG4uYWctZmxvYXRpbmctZmlsdGVyLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcblxcbi5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogRHJhZyAmIERyb3BcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLWRuZC1naG9zdCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGJhY2tncm91bmQ6ICNlNWU1ZTU7XFxuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG4gIGN1cnNvcjogbW92ZTtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xcbiAgZm9udC1zaXplOiAxNHB4O1xcbiAgbGluZS1oZWlnaHQ6IDEuNDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwYWRkaW5nOiAzcHg7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB6LWluZGV4OiAxMDsgfVxcblxcbi5hZy1kbmQtZ2hvc3QtaWNvbiB7XFxuICBwYWRkaW5nOiAycHg7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIE92ZXJsYXlcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLW92ZXJsYXkge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbGVmdDogMDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctb3ZlcmxheS1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctb3ZlcmxheS13cmFwcGVyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy1vdmVybGF5LXdyYXBwZXIuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XFxuXFxuLmFnLW92ZXJsYXktbm8tcm93cy13cmFwcGVyLmFnLWxheW91dC1hdXRvLWhlaWdodCB7XFxuICBwYWRkaW5nLXRvcDogMzBweDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogUG9wdXBcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXBvcHVwID4gZGl2IHtcXG4gIHotaW5kZXg6IDU7IH1cXG5cXG4uYWctcG9wdXAtYmFja2Ryb3Age1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbGVmdDogMDtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIHdpZHRoOiAxMDAlOyB9XFxuXFxuLmFnLXBvcHVwLWVkaXRvciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcXG4gIHVzZXItc2VsZWN0OiBub25lO1xcbiAgei1pbmRleDogMTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogVmlydHVhbCBMaXN0c1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG4gIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSBzcGFuOmVtcHR5Om5vdCguYWctaWNvbikge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBGbG9hdGluZyBUb3AgYW5kIEJvdHRvbVxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctZmxvYXRpbmctdG9wIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcblxcbi5hZy1waW5uZWQtbGVmdC1mbG9hdGluZy10b3Age1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1pbi13aWR0aDogMHB4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLXBpbm5lZC1yaWdodC1mbG9hdGluZy10b3Age1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1pbi13aWR0aDogMHB4O1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTAwMDtcXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxMDAwO1xcbiAgZmxleC1ncm93OiAxMDAwOyB9XFxuXFxuLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7IH1cXG5cXG4uYWctcGlubmVkLWxlZnQtZmxvYXRpbmctYm90dG9tIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDEwMDA7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogMTAwMDtcXG4gIGZsZXgtZ3JvdzogMTAwMDsgfVxcblxcbi5hZy1waW5uZWQtcmlnaHQtZmxvYXRpbmctYm90dG9tIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtaW4td2lkdGg6IDBweDtcXG4gIC13ZWJraXQtYm94LWZsZXg6IDEwMDA7XFxuICAtbXMtZmxleC1wb3NpdGl2ZTogMTAwMDtcXG4gIGZsZXgtZ3JvdzogMTAwMDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogRGlhbG9nXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1kaWFsb2csIC5hZy1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICBmbGV4OiBub25lO1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItdGl0bGUsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItdGl0bGUge1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAgIC5hZy1kaWFsb2cgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctZGlhbG9nIC5hZy1wYW5lbC1jb250ZW50LXdyYXBwZXIsIC5hZy1wYW5lbCAuYWctcGFuZWwtY29udGVudC13cmFwcGVyIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcGFuZWwtY29udGVudC13cmFwcGVyID4gZGl2LCAuYWctcGFuZWwgLmFnLXBhbmVsLWNvbnRlbnQtd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgaGVpZ2h0OiAxMDAlOyB9XFxuXFxuLmFnLWRpYWxvZyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cXG4gIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICB6LWluZGV4OiAxOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci10b3BMZWZ0IHtcXG4gICAgICB0b3A6IDA7XFxuICAgICAgbGVmdDogMDtcXG4gICAgICBoZWlnaHQ6IDVweDtcXG4gICAgICB3aWR0aDogNXB4O1xcbiAgICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcmVzaXplci5hZy1yZXNpemVyLXRvcCB7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIGxlZnQ6IDVweDtcXG4gICAgICByaWdodDogNXB4O1xcbiAgICAgIGhlaWdodDogNXB4O1xcbiAgICAgIGN1cnNvcjogbnMtcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci10b3BSaWdodCB7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIHJpZ2h0OiAwO1xcbiAgICAgIGhlaWdodDogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBuZXN3LXJlc2l6ZTsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1yZXNpemVyLmFnLXJlc2l6ZXItcmlnaHQge1xcbiAgICAgIHRvcDogNXB4O1xcbiAgICAgIHJpZ2h0OiAwO1xcbiAgICAgIGJvdHRvbTogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBldy1yZXNpemU7IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctcmVzaXplci5hZy1yZXNpemVyLWJvdHRvbVJpZ2h0IHtcXG4gICAgICBib3R0b206IDA7XFxuICAgICAgcmlnaHQ6IDA7XFxuICAgICAgaGVpZ2h0OiA1cHg7XFxuICAgICAgd2lkdGg6IDVweDtcXG4gICAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci1ib3R0b20ge1xcbiAgICAgIGJvdHRvbTogMDtcXG4gICAgICBsZWZ0OiA1cHg7XFxuICAgICAgcmlnaHQ6IDVweDtcXG4gICAgICBoZWlnaHQ6IDVweDtcXG4gICAgICBjdXJzb3I6IG5zLXJlc2l6ZTsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1yZXNpemVyLmFnLXJlc2l6ZXItYm90dG9tTGVmdCB7XFxuICAgICAgYm90dG9tOiAwO1xcbiAgICAgIGxlZnQ6IDA7XFxuICAgICAgaGVpZ2h0OiA1cHg7XFxuICAgICAgd2lkdGg6IDVweDtcXG4gICAgICBjdXJzb3I6IG5lc3ctcmVzaXplOyB9XFxuICAgIC5hZy1kaWFsb2cgLmFnLXJlc2l6ZXIuYWctcmVzaXplci1sZWZ0IHtcXG4gICAgICBsZWZ0OiAwO1xcbiAgICAgIHRvcDogNXB4O1xcbiAgICAgIGJvdHRvbTogNXB4O1xcbiAgICAgIHdpZHRoOiA1cHg7XFxuICAgICAgY3Vyc29yOiBldy1yZXNpemU7IH1cXG4gIC5hZy1kaWFsb2cgLmFnLW1lc3NhZ2UtYm94IHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cXG4gICAgLmFnLWRpYWxvZyAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWNvbnRlbnQge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctZGlhbG9nIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XFxuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBUb29sdGlwXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy10b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgei1pbmRleDogOTk5OTk7IH1cXG5cXG4uYWctY2hhcnQtdG9vbHRpcCB7XFxuICBkaXNwbGF5OiB0YWJsZTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICB6LWluZGV4OiA5OTk5OTtcXG4gIGZvbnQ6IDEycHggVmVyZGFuYSwgc2Fucy1zZXJpZjtcXG4gIGNvbG9yOiBibGFjaztcXG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XFxuICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgzLCAzLCAzLCAwLjcpLCAwLjV2aCAwLjV2aCAxdmggcmdiYSgzLCAzLCAzLCAwLjI1KTtcXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgzLCAzLCAzLCAwLjcpLCAwLjV2aCAwLjV2aCAxdmggcmdiYSgzLCAzLCAzLCAwLjI1KTtcXG4gIG9wYWNpdHk6IDA7XFxuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XFxuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgLXdlYmtpdC10cmFuc2Zvcm07XFxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCAtd2Via2l0LXRyYW5zZm9ybTtcXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cXG4gIC5hZy1jaGFydC10b29sdGlwLnZpc2libGUge1xcbiAgICBvcGFjaXR5OiAxO1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XFxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cXG4gIC5hZy1jaGFydC10b29sdGlwIC50aXRsZSB7XFxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICBwYWRkaW5nOiA3cHg7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcXG4gICAgY29sb3I6IHdoaXRlO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4OyB9XFxuICAuYWctY2hhcnQtdG9vbHRpcCAuY29udGVudCB7XFxuICAgIHBhZGRpbmc6IDdweDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogQW5pbWF0aW9uc1xcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctdmFsdWUtc2xpZGUtb3V0IHtcXG4gIG1hcmdpbi1yaWdodDogNXB4O1xcbiAgb3BhY2l0eTogMTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzcywgbWFyZ2luLXJpZ2h0IDNzO1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzcywgbWFyZ2luLXJpZ2h0IDNzO1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbi5hZy12YWx1ZS1zbGlkZS1vdXQtZW5kIHtcXG4gIG1hcmdpbi1yaWdodDogMTBweDtcXG4gIG9wYWNpdHk6IDA7IH1cXG5cXG4uYWctb3BhY2l0eS16ZXJvIHtcXG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogTWVudVxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuKi9cXG4uYWctbWVudSB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cXG5cXG4uYWctbWVudS1jb2x1bW4tc2VsZWN0LXdyYXBwZXIge1xcbiAgaGVpZ2h0OiAyNjVweDtcXG4gIG92ZXJmbG93OiBhdXRvO1xcbiAgd2lkdGg6IDIwMHB4OyB9XFxuXFxuLmFnLW1lbnUtbGlzdCB7XFxuICBkaXNwbGF5OiB0YWJsZTsgfVxcblxcbi5hZy1tZW51LW9wdGlvbiwgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxcbiAgLmFnLW1lbnUtb3B0aW9uID4gc3BhbiwgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG5cXG4uYWctbWVudS1vcHRpb24tdGV4dCB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuXFxuLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gIGhlaWdodDogMTAwJTsgfVxcblxcbi8qKlxcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXFxuICogUmljaCBTZWxlY3RcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXJpY2gtc2VsZWN0IHtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIG91dGxpbmU6IG5vbmU7IH1cXG4gIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSA+IHNwYW4ge1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAgICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSA+IHNwYW4uYWctaWNvbiB7XFxuICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xcbiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XFxuICAgICAgICBvcmRlcjogMTtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFBhZ2luYXRpb25cXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiovXFxuLmFnLXBhZ2luZy1wYW5lbCB7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcXG4gIC1tcy1mbGV4LXBhY2s6IGVuZDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cXG5cXG4uYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWRpc2FibGVkIHtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBUb29sIFBhbmVsXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIHdpZHRoOiAyMDBweDsgfVxcbiAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICBsaW5lLWhlaWdodDogMS41O1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG5cXG4uYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLFxcbi5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4sXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4sXFxuICAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxcblxcbi5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4OyB9XFxuXFxuLmFnLXRvb2wtcGFuZWwtaG9yaXpvbnRhbC1yZXNpemUge1xcbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgd2lkdGg6IDVweDtcXG4gIHotaW5kZXg6IDE7IH1cXG5cXG4uYWctcnRsIC5hZy10b29sLXBhbmVsLWhvcml6b250YWwtcmVzaXplIHtcXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2wtcGFuZWwtaG9yaXpvbnRhbC1yZXNpemUge1xcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7IH1cXG5cXG4ubG9hZGluZy1maWx0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBhZGRpbmc6IDVweDtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMzRweDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgei1pbmRleDogMTsgfVxcblxcbi5hZy1kZXRhaWxzLXJvdyB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1kZXRhaWxzLWdyaWQge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgd2lkdGg6IDEwMCU7IH1cXG5cXG4uYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cXG5cXG4uYWctY2VsbC1sYWJlbC1jb250YWluZXIge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTsgfVxcblxcbi5hZy1udW1lcmljLWhlYWRlciAuYWctY2VsbC1sYWJlbC1jb250YWluZXIge1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cXG5cXG4vKipcXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxcbiAqIFNpZGUgQmFyXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1zaWRlLWJhciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cXG4gIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGRpdiBidXR0b24ge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gICAgb3V0bGluZTogbm9uZTtcXG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAgIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGRpdiBidXR0b24gc3Bhbjpub3QoLmFnLWljb24pIHtcXG4gICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdGI7XFxuICAgICAgLW1zLXdyaXRpbmctbW9kZTogdGI7XFxuICAgICAgd3JpdGluZy1tb2RlOiB0YjtcXG4gICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XFxuICAgICAgLW1zLXdyaXRpbmctbW9kZTogdGItbHI7XFxuICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgfVxcbiAgLmFnLXNpZGUtYmFyIC5wYW5lbC1jb250YWluZXIge1xcbiAgICB3aWR0aDogMTgwcHg7IH1cXG4gIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5wYW5lbC1jb250YWluZXIge1xcbiAgICB3aWR0aDogMjAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIGJ1dHRvbiBzcGFuOm5vdCguYWctaWNvbikge1xcbiAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHRiLXJsO1xcbiAgLW1zLXdyaXRpbmctbW9kZTogdGItcmw7XFxuICB3cml0aW5nLW1vZGU6IHRiLXJsO1xcbiAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xcbiAgLW1zLXdyaXRpbmctbW9kZTogdGItcmw7XFxuICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBTdGF0dXMgQmFyXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1zdGF0dXMtYmFyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcXG4gIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctc3RhdHVzLWJhciAuYWctc3RhdHVzLXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuXFxuLmFnLXN0YXR1cy1iYXItbGVmdCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcblxcbi5hZy1zdGF0dXMtYmFyLWNlbnRlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcblxcbi5hZy1zdGF0dXMtYmFyLXJpZ2h0IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuXFxuLyoqXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4gKiBXaWRnZXRzXFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcXG4qL1xcbi5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gIC1tcy1mbGV4OiAxIDEgMTAwJTtcXG4gIGZsZXg6IDEgMSAxMDAlOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdG9vbGJhciB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XFxuICAgIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIgLmFnLWdyb3VwLXN1Ymdyb3VwIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2g7XFxuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWNvbGxhcHNlZCAuYWctZ3JvdXAtY29tcG9uZW50LXRvb2xiYXIsIC5hZy1ncm91cC1jb21wb25lbnQuYWctY29sbGFwc2VkIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgZGlzcGxheTogbm9uZTsgfVxcblxcbi5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgMC4zcztcXG4gIHRyYW5zaXRpb246IHJpZ2h0IDAuM3M7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC0xcHg7IH1cXG5cXG4uYWctaW5wdXQtZmllbGQge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgLmFnLWlucHV0LWZpZWxkIGlucHV0LCAuYWctaW5wdXQtZmllbGQgc2VsZWN0LCAuYWctaW5wdXQtZmllbGQgdGV4dGFyZWEge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgbWluLXdpZHRoOiAwOyB9XFxuXFxuLmFnLXJhbmdlLWZpZWxkIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuXFxuLmFnLXBpY2tlci1maWVsZCA+IC5hZy13cmFwcGVyLCAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIsIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXBpY2tlci1maWVsZCA+IC5hZy13cmFwcGVyID4gZGl2LCAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIgPiBkaXYsIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87IH1cXG5cXG4uYWctYW5nbGUtc2VsZWN0IHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLWNoaWxkLWNpcmNsZSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxcblxcbi5hZy1waWNrZXItZmllbGQge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gIC5hZy1waWNrZXItZmllbGQgPiAuYWctd3JhcHBlciA+IGJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICBtYXJnaW46IDA7IH1cXG5cXG4uYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2g7XFxuICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1jb2xvci1waWNrZXIgYnV0dG9uIHtcXG4gIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcbi5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXJpZ2h0IGxhYmVsIHtcXG4gIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7XFxuICAtbXMtZmxleC1vcmRlcjogMTtcXG4gIG9yZGVyOiAxOyB9XFxuXFxuLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tcmlnaHQgPiBkaXYge1xcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gIC1tcy1mbGV4OiBub25lO1xcbiAgZmxleDogbm9uZTsgfVxcblxcbi5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCB7XFxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XFxuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XFxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxcbiAgLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wID4gZGl2IHtcXG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaDtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxcblxcbi5hZy1jb2xvci1wYW5lbCB7XFxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgZGlzcGxheTogZmxleDtcXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAuYWctY29sb3ItcGFuZWwgLmFnLWZpbGwge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgbGVmdDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCByaWdodCB0b3AsIGxlZnQgdG9wLCBjb2xvci1zdG9wKDMlLCAjZmYwMDAwKSwgY29sb3Itc3RvcCgxNyUsICNmZmZmMDApLCBjb2xvci1zdG9wKDMzJSwgIzAwZmYwMCksIGNvbG9yLXN0b3AoNTAlLCAjMDBmZmZmKSwgY29sb3Itc3RvcCg2NyUsICMwMDAwZmYpLCBjb2xvci1zdG9wKDgzJSwgI2ZmMDBmZiksIHRvKCNmZjAwMDApKTtcXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICNmZjAwMDAgMyUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYSB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUtYmFja2dyb3VuZCB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBoZWlnaHQ6IDEwMCU7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMCkpLCB0byhibGFjaykpO1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMCksIGJsYWNrKTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGhlaWdodDogMTAwJTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgIG91dGxpbmU6IG5vbmU7XFxuICAgIG91dGxpbmUtb2Zmc2V0OiAwOyB9XFxuICAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgcGFkZGluZy1sZWZ0OiA3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgcGFkZGluZy1sZWZ0OiA3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gIHBhZGRpbmctbGVmdDogMTAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDEwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgcGFkZGluZy1sZWZ0OiAxMTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgcGFkZGluZy1yaWdodDogMTEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gIHBhZGRpbmctbGVmdDogMTEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDExMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDEyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgcGFkZGluZy1yaWdodDogMTIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gIHBhZGRpbmctbGVmdDogMTMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDEzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxMzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgcGFkZGluZy1yaWdodDogMTQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gIHBhZGRpbmctbGVmdDogMTQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDE1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgcGFkZGluZy1sZWZ0OiAxNTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gIHBhZGRpbmctbGVmdDogMTYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICBwYWRkaW5nLWxlZnQ6IDE2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgcGFkZGluZy1sZWZ0OiAxNzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgcGFkZGluZy1yaWdodDogMTcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gIHBhZGRpbmctbGVmdDogMTcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICBwYWRkaW5nLWxlZnQ6IDE4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgcGFkZGluZy1yaWdodDogMTgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gIHBhZGRpbmctbGVmdDogMTkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDE5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICBwYWRkaW5nLWxlZnQ6IDE5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxOTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgcGFkZGluZy1sZWZ0OiAyMDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gIHBhZGRpbmctbGVmdDogMjAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICBwYWRkaW5nLWxlZnQ6IDIxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyMTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgcGFkZGluZy1sZWZ0OiAyMTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgcGFkZGluZy1yaWdodDogMjEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gIHBhZGRpbmctbGVmdDogMjIwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIyMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyMjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgcGFkZGluZy1sZWZ0OiAyMzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgcGFkZGluZy1yaWdodDogMjMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gIHBhZGRpbmctbGVmdDogMjMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDIzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgcGFkZGluZy1yaWdodDogMjQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gIHBhZGRpbmctbGVmdDogMjUwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI1MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDI1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gIHBhZGRpbmctbGVmdDogMjYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICBwYWRkaW5nLWxlZnQ6IDI3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgcGFkZGluZy1sZWZ0OiAyNzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgcGFkZGluZy1yaWdodDogMjcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gIHBhZGRpbmctbGVmdDogMjgwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgcGFkZGluZy1sZWZ0OiAyOTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgcGFkZGluZy1yaWdodDogMjkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gIHBhZGRpbmctbGVmdDogMjkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDI5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDMwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgcGFkZGluZy1sZWZ0OiAzMDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgcGFkZGluZy1yaWdodDogMzAwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gIHBhZGRpbmctbGVmdDogMzEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMxMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICBwYWRkaW5nLWxlZnQ6IDMxMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDMzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzMzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgcGFkZGluZy1sZWZ0OiAzMzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgcGFkZGluZy1yaWdodDogMzMwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gIHBhZGRpbmctbGVmdDogMzQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgcGFkZGluZy1sZWZ0OiAzNTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgcGFkZGluZy1yaWdodDogMzUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gIHBhZGRpbmctbGVmdDogMzUwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM1MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICBwYWRkaW5nLWxlZnQ6IDM2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gIHBhZGRpbmctbGVmdDogMzcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICBwYWRkaW5nLWxlZnQ6IDM3MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzNzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgcGFkZGluZy1sZWZ0OiAzODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gIHBhZGRpbmctbGVmdDogMzgwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDM4MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICBwYWRkaW5nLWxlZnQ6IDM5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzOTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgcGFkZGluZy1sZWZ0OiAzOTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgcGFkZGluZy1yaWdodDogMzkwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gIHBhZGRpbmctbGVmdDogNDAwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgcGFkZGluZy1sZWZ0OiA0MTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgcGFkZGluZy1yaWdodDogNDEwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gIHBhZGRpbmctbGVmdDogNDEwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQxMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgcGFkZGluZy1sZWZ0OiA0MjBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgcGFkZGluZy1yaWdodDogNDIwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gIHBhZGRpbmctbGVmdDogNDMwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQzMHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICBwYWRkaW5nLWxlZnQ6IDQzMHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0MzBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgcGFkZGluZy1sZWZ0OiA0NDBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gIHBhZGRpbmctbGVmdDogNDQwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ0MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ1MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0NTBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgcGFkZGluZy1sZWZ0OiA0NTBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgcGFkZGluZy1yaWdodDogNDUwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gIHBhZGRpbmctbGVmdDogNDYwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ2MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0NjBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgcGFkZGluZy1sZWZ0OiA0NzBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgcGFkZGluZy1yaWdodDogNDcwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gIHBhZGRpbmctbGVmdDogNDcwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ3MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcblxcbi5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcblxcbi5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgcGFkZGluZy1yaWdodDogNDgwcHg7IH1cXG5cXG4uYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gIHBhZGRpbmctbGVmdDogNDkwcHg7IH1cXG5cXG4uYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDQ5MHB4OyB9XFxuXFxuLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICBwYWRkaW5nLWxlZnQ6IDQ5MHB4OyB9XFxuXFxuLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICBwYWRkaW5nLXJpZ2h0OiA0OTBweDsgfVxcblxcbi5hZy1sdHIge1xcbiAgZGlyZWN0aW9uOiBsdHI7IH1cXG4gIC5hZy1sdHIgLmFnLWJvZHksIC5hZy1sdHIgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLWx0ciAuYWctZmxvYXRpbmctYm90dG9tLCAuYWctbHRyIC5hZy1oZWFkZXIsIC5hZy1sdHIgLmFnLWJvZHktdmlld3BvcnQsIC5hZy1sdHIgLmFnLWJvZHktaG9yaXpvbnRhbC1zY3JvbGwge1xcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxcbiAgLmFnLWx0ciAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgcmlnaHQ6IC00cHg7IH1cXG4gIC5hZy1sdHIgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGxlZnQ6IC00cHg7IH1cXG5cXG4uYWctcnRsIHtcXG4gIGRpcmVjdGlvbjogcnRsOyB9XFxuICAuYWctcnRsIC5hZy1ib2R5LCAuYWctcnRsIC5hZy1mbG9hdGluZy10b3AsIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWJvdHRvbSwgLmFnLXJ0bCAuYWctaGVhZGVyLCAuYWctcnRsIC5hZy1ib2R5LXZpZXdwb3J0LCAuYWctcnRsIC5hZy1ib2R5LWhvcml6b250YWwtc2Nyb2xsIHtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XFxuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxcbiAgLmFnLXJ0bCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgbGVmdDogLTRweDsgfVxcbiAgLmFnLXJ0bCAuYWctcGlubmVkLWxlZnQtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICByaWdodDogLTRweDsgfVxcblxcbkBtZWRpYSBwcmludCB7XFxuICAuYWctYm9keS12aWV3cG9ydCB7XFxuICAgIGRpc3BsYXk6IGJsb2NrOyB9XFxuICAuYWctcm93IHtcXG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9IH1cXG5cXG4uYWctYm9keSAuYWctcGlubmVkLWxlZnQtY29scy12aWV3cG9ydCwgLmFnLWJvZHkgLmFnLWJvZHktdmlld3BvcnQsIC5hZy1ib2R5IC5hZy1waW5uZWQtcmlnaHQtY29scy12aWV3cG9ydCB7XFxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cXG5cXG4uYWctY2hhcnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7IH1cXG4gIC5hZy1jaGFydCAuYWctY2hhcnQtY29tcG9uZW50cy13cmFwcGVyIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWNoYXJ0IC5hZy1jaGFydC1jb21wb25lbnRzLXdyYXBwZXIgLmFnLWNoYXJ0LWNhbnZhcy13cmFwcGVyIHtcXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcbiAgICAgIC5hZy1jaGFydCAuYWctY2hhcnQtY29tcG9uZW50cy13cmFwcGVyIC5hZy1jaGFydC1jYW52YXMtd3JhcHBlciBjYW52YXMge1xcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cXG4gICAgLmFnLWNoYXJ0IC5hZy1jaGFydC1jb21wb25lbnRzLXdyYXBwZXIgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICB0b3A6IDEwcHg7XFxuICAgICAgcmlnaHQ6IDIwcHg7XFxuICAgICAgd2lkdGg6IDI0cHg7XFxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxcbiAgLmFnLWNoYXJ0Om5vdCguYWctaGFzLW1lbnUpOmhvdmVyIC5hZy1jaGFydC1tZW51IHtcXG4gICAgb3BhY2l0eTogMTtcXG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxcbiAgLmFnLWNoYXJ0IC5hZy1jaGFydC1kb2NrZWQtY29udGFpbmVyIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICB3aWR0aDogMDtcXG4gICAgbWluLXdpZHRoOiAwO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG1pbi13aWR0aCAwLjRzO1xcbiAgICB0cmFuc2l0aW9uOiBtaW4td2lkdGggMC40czsgfVxcbiAgICAuYWctY2hhcnQgLmFnLWNoYXJ0LWRvY2tlZC1jb250YWluZXIgLmFnLXBhbmVsIHtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDFweDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSA+IGRpdiB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWhlYWRlciB7XFxuICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICBmbGV4OiBub25lO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIGN1cnNvcjogZGVmYXVsdDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWJvZHkge1xcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcXG4gICAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcXG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICBvdmVyZmxvdzogaGlkZGVuOyB9XFxuICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLXRhYi1ib2R5ID4gZGl2IHtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgIG92ZXJmbG93LXk6IGF1dG87IH1cXG5cXG4uYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtIHtcXG4gICAgICAgICAgb3BhY2l0eTogMC4yOyB9XFxuICAgICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB9XFxuICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctY2hhcnQtc2V0dGluZ3MtcHJldi1idG4sIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5leHQtYnRuIHtcXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLWNoYXJ0LXNldHRpbmdzLXByZXYtYnRuIGJ1dHRvbiwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctY2hhcnQtc2V0dGluZ3MtbmV4dC1idG4gYnV0dG9uIHtcXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICAgICAgICB0b3A6IDA7XFxuICAgICAgICAgIGxlZnQ6IDA7XFxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxcbiAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIge1xcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgICBvdmVyZmxvdy14OiBoaWRkZW47XFxuICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfVxcbiAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIHtcXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICAgIHRvcDogMDtcXG4gICAgICAgIGxlZnQ6IDA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTsgfVxcbiAgICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS1jaGFydHMtY29udGFpbmVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XFxuICAgICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcXG4gICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxcbiAgICAgICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICAgICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgICAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTsgfVxcbiAgICAgICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3Mtd3JhcHBlciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS1jaGFydHMtY29udGFpbmVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIuYWctYW5pbWF0aW5nLCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlci5hZy1hbmltYXRpbmcge1xcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zcztcXG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjNzO1xcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcXG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cXG4gICAgICAgIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLXdyYXBwZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktY2hhcnRzLWNvbnRhaW5lciAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgICAgICAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy13cmFwcGVyIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLWNoYXJ0cy1jb250YWluZXIgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwgY2FudmFzIHtcXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZGF0YS13cmFwcGVyLCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIHtcXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1kYXRhLXdyYXBwZXIgPiBkaXYsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgPiBkaXYge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZy1ib3R0b206IDJweDsgfVxcbiAgICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWRhdGEtd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIge1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XFxuICAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLXN1Ymdyb3VwIHtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XFxuXFxuLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51IHtcXG4gIG9wYWNpdHk6IDA7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3BhbiB7XFxuICAgIG9wYWNpdHk6IDAuNTtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XFxuICAgIGZvbnQtc2l6ZTogMjRweDtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgbWFyZ2luOiAycHggMDtcXG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAgIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSA+IHNwYW46aG92ZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcblxcbi5hZy1jaGFydCAuYWctY2hhcnQtZG9ja2VkLWNvbnRhaW5lciB7XFxuICBtaW4td2lkdGg6IDA7XFxuICB3aWR0aDogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctdGFiLWJvZHkge1xcbiAgcGFkZGluZzogMDsgfVxcblxcbi5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIge1xcbiAgcGFkZGluZzogMCAxMHB4O1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxcbiAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3Ige1xcbiAgICBwYWRkaW5nOiAwIDEwcHg7IH1cXG4gICAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZEJhbGhhbVxcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpxTXV5M2dBQUFGNEFBQWJER2hsWVdRVm9tT1hBQUFjaEFBQUFEWm9hR1ZoQjhJRCtRQUFITHdBQUFBa2FHMTBlTllBSW5ZQUFCemdBQUFBNEd4dlkySEVtTDRhQUFBZHdBQUFBSEp0WVhod0FFVUFsUUFBSGpRQUFBQWdibUZ0WlpRWHhLUUFBQjVVQUFBQmtuQnZjM1FBQXdBQUFBQWY2QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFEQUQvLy93UEJBNEVBSndCUUFHNEFBQUVlQVJjV0ZSWVVCeFFIRGdFSEJpTUdJaWNpSnk0Qkp5WTFKalEzTkRjK0FUYzJNell5RnpJRklnWUhCZ2NPQVJjVUZ4NEJGeFlYRmpJM05qYytBVGMyTnpZMEp5WW5MZ0VuSmlNaUJnY0dJd0VqTlNFVkhnRVhGZ1lIRGdFVklUVXpGU0UwTmpjK0FTY3VBU2MxSVFNa1Bsd0NBUUVCQVFKY1BrbEpTWkpKU1VrOVhRSUJBUUVCQWx3K1NVbEpra2xKL2dVbE9nRUJBUUVCQVFNQ05TUkpTVXFTU2tsSkpEVUNBd0VCQVFFREFqVWtTVWhKa1VsSVNRSGdRUDhBQVhVWkVBb1lKMVlCQUVEK2dBWWJMV1FnTG1JQ0FZQURnQUpjUGtsSlNaSkpTVWsrWEFJQkFRRUJBbHcrU1VsSmtrbEpTVDVjQWdFQkFVRTRKa2hKU1pKSlNVa2tOUUlEQVFFQkFRTUNOU1JKU1VxU1NrbEpKRFVDQXdFQkFmOEFRQU1nUWlzY1JCY2lQUnBBZ0NaTUdDZEhIeWxITkVVQUFRQlRBQk1EclFOdEFDY0FBQk1YQnljM0hnRVhCeUVSQnljM0hnRVhCeWNSSVNjM0hnRVhCeWMzSVJFM0hnRVhCeWMzRnhITlNpNldsZ3dXREVvQkUwa3VseVpMSmk1SkFSTktMaVZNSlpZdVN2N3RTUXdXREplWExra0JvRWt1bDVjTUZneEpBUk5LTHBZbFRDVXVTdjd0U1M0bVN5YVhMa24rN1VvTUZneVdsaTVLQVJNQUFBRUJLUUNaQXRjQzV3QUtBQUFCQnljM0hnRVhCeWNSSXdIZ2lTN1hObXMyTG9sQUFteUpMZGMyYXpZdGlmNHRBQU1BZ0FCQUE0QURRQUFiQURjQVJnQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KZ2N5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOellUTng0QkZ3Y1hCeWNISnpjbk54Y0NBRTlHUm1rZUhoNGVhVVpHVDA5R1Jta2VIaDRlYVVaR1QwSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83UXFrTUZneXFxaTZwcVM2cXFpNnBBMEFlSG1sR1JrOVBSa1pwSGg0ZUhtbEdSazlQUmtacEhoNUFHUmxYT2p0Q1FqczZWeGtaR1JsWE9qdENRanM2VnhrWi91MnFEQllNcWFrdXFxb3VxYWt1cWdBREFOVUFsUU1yQXVzQUJBQUpBQTBBQUJNekVTTVJOek1SSXhFVE14RWoxWUNBNzNoNDczaDRBamYrWGdHaXRQMnFBbGIrcXY4QUFBTUFBUC9BQkFBRHdBQVBBQ0FBS0FBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lqQndFbk54Y0JIZ0VEU1Axd1RHeHNUQUtRVEd4c1N2MXRMVUZCTFFLVExVRkFMZ3orVk5Bem5RRjVEUnBBYkV3Q2tFeHNiRXo5Y0V4c0E3bEJMZjF0TGtCQUxnS1RMVUgzL2xQUk5KMEJlQTBhQUFNQUFQL0FCQUFEd0FBUEFDQUFKQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWWpBeUUxSVFOSS9YQk1iR3hNQXBCTWJHeEsvVzB0UVVFdEFwTXRRVUF1SmYyMkFrcEFiRXdDa0V4c2JFejljRXhzQTdsQkxmMXRMa0JBTGdLVExVSCtJa29BQWdBQS84QUVBQVBBQUE4QUlBQUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZakEwaE1iR3hNL1hCTWJHeE1BcEw5YlMxQlFTMENreTFCUUM0RHdHeE0vWEJNYkd4TUFwQk1iRWRCTGYxdExrQkFMZ0tUTFVFQUFBQURBSE1BU0FPTkF6Z0FCZ0FLQUJZQUFBa0JCeGNKQWlFM0Z5RUZNQVlWRkJZek1qWTFOQ1lDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBQUlBd0FDZ0FjQUM0QUFEQUFjQUFDVWhFU0VIRVRNUkFjRC9BQUVBd0lDZ0FrQkEva0FCd0FBRUFNQUFvQU5BQXVBQUF3QUhBQXNBRHdBQUpTTVJNeE1qRVRNVEl4RXpBU01STXdIQVFFREFRRURBUUVEOXdFQkFvQUpBL2NBQ1FQM0FBa0Q5d0FKQUFBQUFBQUVCWGdDcEFxSUMxd0FIQUFBQkJ4Y0hDUUVlQVFLaTZla3QvdWtCRndzWEFxbnA2UzRCRndFWERCWUFBd0NnQUVBRFlBTkFBQkFBSUFBekFBQWxJeUltTlJFME5qc0JNaFlWRVJRR0l4TWhJZ1lWRVJRV015RXlOalVSTkNZQkl6d0JOUkUwTmpNaE9nRXpGU0VpQmhVUkFyNzdRMkJnUS90RFgxOURCZjc5SnpjM0p3RURKemMzL2ZkQlgwTUJtZ0VDQWY1ZEpqWkFYMFFCT2tOZ1lFUCt4a1JmQWtBNEp2NjdKemMzSndGRkpqaitBQUVFQWdJWFExOUFOaWI5M0FBQUFBQUJBU2tBNlFMWEFwY0FEZ0FBQVRjZUFSY0hGd2NuQnljM0p6Y1hBZ0NwREJZTXFxb3VxYWt1cXFvdXFRSHRxZ3dXREttcExxcXFMcW1wTHFvQUFBQUFCUUJBQUFBRHdBT0FBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHV0NBaHBTa3BwYVVvVUpSRnBhUkVsRkVwcGFVcEthUWdJYWdFNmh2M1dveVUwTkNVbE5UVWxKVFEwSlNVMU5TVUJEUWtORFFrSkRRMEJNZjd6V1FFNmhnS0RFU1VVU21scFNrcHBDQWhxYWdnSWFVcEthV2xLRkNVUmFmN0hMUUlwRURVbEpUUTBKU1UxL2VjMEpTVTFOU1VsTkFGUURRa0pEUTBKQ1EwQnFmN3pXUUU1TFFBQUJ3Q0dBRllEZWdNcUFBc0FEd0FiQUNnQUxBQTRBRHdBQURjaUJoVVVGak15TmpVMEpnVTFJUlVESWdZVkZCWXpNalkxTkNZSE1oWVZGQVlqSWlZMU5EWXpCU0UxSVFFeUZoVVVCaU1pSmpVME5nVWhOU0hHR2lZbUdoc2xKUUtaL2VhYUdpWW1HaHNsSlJzU0dSa1NFUmtaRVFJSi9wRUJiLzMzR3lVbEd4b21KZ0xPL2VZQ0d0WW1HaHNsSlJzYUptdFZWUUdWSmhvYUppWWFHaVlWR1JJU0dSa1NFaGxXVmdFL0pSc2FKaVlhR3lWcVZRQUFBQUVCS1FDWkF0Y0M1d0FLQUFBQk54NEJGd2NuTnhjUk13SWdpUXdXRE5mWExvbEFBUlNKQ3hjTDE5Y3RpUUhUQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQVVBUXdCekE3MEREUUFzQUVvQWFBQnpBSDBBQUFFK0FUYzZBVE1XRng0QkZ4WVhNQVlIRGdFSEZ3Y25CZ2NHSmljbUp5NEJKeTRCSnpBMk56NEJOeWMzRndjT0FROEJGaGNlQVJjV056NEJOeWNPQVNNaUp5NEJKeVkxTkRZM0p3RStBVDhCSmljdUFTY21CdzRCQnhjK0FUTXlGeDRCRnhZVkZBWUhGd0VPQVJVVUZqTXlOamNuQlQ0Qk5UUW1JeUlHQndFcUwyZzJCd1FIU0VOQ2NpMHRHemt1RUNRVFBpMUxPVUJBZ0Q0OU5TbEVHUW9QQ2lVYkZ6Y2dQaTFLQ2pGT0dBRWROemVKVEV4SUN4WUtIUnhFSmk4b0tUMFNFUmNWTUFIQk1VMFlBUmduS0dVN096NHBVQ1VrSEVRbUxpa3BQUkVTR0JVcS9wME1EbDVDR0MwVDNnRUxEUTVlUWhrc0V3TEVGeHNDQWhnWFVqazRSSFl3RVI0TlBpMUxIQTBNQ0JVVkpoNUtMQkVpR0ZNa0h6WVdQaTFKVVNGWk53SkZOVFUvQndjWEJBZ0ZIUlVZRWhJOEtTa3VKa1FjTWY2WklWbzNBamd1TGtFU0VnRUJFeEVqRlJjUkVqMHBLQzhsUlJ3cUFRZ1RMQmxDWGc0TjNiQVRMUmhEWFE0TUFBUUFRd0NaQTcwQzlnQWtBRU1BWUFCdkFBQUJGaGNlQVJjV0Z6QUdCd1lIRGdFbkppY3VBU2N1QVNjd05qYzJOejRCTnpZM09nRXpCd1lIRGdFSEJnOEJGaGNlQVJjV056WTNQZ0UzTmo4QkppY3VBU2NtSXhjeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZ6VTBKaU1pQmgwQkZCWXpNalkxQWdsSVEwSnlMUzBiT1M0NlRrNm9VMVJGS1VRWkNnOEtKUnNnS1NwZ05UVTNCd1FIRVRzNE4yQW5KaGdCSFRjM2lVeE1TQ29sSmtBYUdoSUJHQ2NvWlRzN1BnZ3RLQ2M3RVJJU0VUc25LQzB0S0NjN0VSSVNFVHNuS0MyZ1hrSkNYbDVDUWw0QzlnSVlGMUk1T0VSMk1EMGpKQkFWRkRJZVNpd1JJaGhUSkNzakl6SU9EZ0pBQWhJVFFDMHNOZ0pGTlRVL0J3Y1hEUllXT3lNaktBTTRMaTFDRWhFZkVSRTdKeWd0TFNnbk94SVJFUkk3SnlndExTZ25PeEVSMkFGQ1hsNUNBa0plWGtJQUFnREFBS0FEUUFNQUFCc0FNd0FBQVFZSERnRUhCZ2NPQVIwQkJ6UTJKelFtSnlZbkxnRW5KaWMxSVFVVUZoY1dGeDRCRnhZWEZUYzFOamMrQVRjMk56NEJOUU5BQVJZVlFTVW1JQVFFd0FJQ0JRTWhKU1pBRmhVQkFvRDl3QVFFSVNVbVFCWVZBVUFCRmhWQkpTWWdCQVFDdWlBZkh6OGdJQ0lGQ3daMWtFS0RRZ1lLQkNJaElrQWVIeDFHUUFjT0JpSWhJa0FlSHgyR01GWWdIeDgvSUNBaUJnNEhBQUFBQWdEMUFLa0RDd0xYQUFjQUN3QUFBUWNYQndrQkhnRWxFU01SQXd2cDZTMys2UUVYQ3hmK05VQUNxZW5wTGdFWEFSY01GZ3YrQUFJQUFBQUFEQURBQU1BRFFBTEFBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQWxJelV6RnlNMU14Y2pOVE1YSXpVekpTTTFNeGNqTlRNWEl6VXpGeU0xTXlVak5UTVhJelV6RnlNMU14Y2pOVE1CQUVCQXdFQkF3RUJBd0VCQS9jQkFRTUJBUU1CQVFNQkFRUDNBUUVEQVFFREFRRURBUUVEQWdJQ0FnSUNBZ0VDQWdJQ0FnSUNBUUlDQWdJQ0FnSUFBQUFnQVAvLy9BOEVEZ1FBbkFGQUFWQUJZQUZ3QVlBQmtBR2dBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SUZJZ1lIQmdjT0FSY1VGeDRCRnhZWEZqSTNOamMrQVRjMk56WTBKeVluTGdFbkppTWlCZ2NHSXhNak5UTUZJVFVoSlNNMU13VWhOU0VsSXpVekJTRTFJUU1rUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWs5WFFJQkFRRUJBbHcrU1VsSmtrbEovZ1VsT2dFQkFRRUJBUU1DTlNSSlNVcVNTa2xKSkRVQ0F3RUJBUUVEQWpVa1NVaEprVWxJU2VDQWdBR0Evc0FCUVA2QWdJQUJnUDdBQVVEK0FJQ0FBZ0QrUUFIQUE0QUNYRDVKU1VtU1NVbEpQbHdDQVFFQkFRSmNQa2xKU1pKSlNVaytYQUlCQVFGQk9DWklTVW1TU1VsSkpEVUNBd0VCQVFFREFqVWtTVWxLa2twSlNTUTFBZ01CQVFIOTRFQkFRRUJBUUVCQVFFQkFBQUFBQUFRQVF3RElBNzBDdUFBa0FFMEFZQUJ3QUFBQkZoY2VBUmNXRnpBR0J3WUhEZ0VIQmljbUp5NEJKeVluTURZM05qYytBVGMyTXpvQkJ5SUdCd1lIRGdFSEJnY3dGaGNXRng0Qk56WTNOamMrQVRjMk56QW1KeVluTGdFbkppTXFBU01YSGdFVkZBWUhEZ0VuTGdFbk5EWTNQZ0V6Qnc0QkJ3WVdGeFkyTnpZbUp5NEJJd0lKUUVKQmRTOHdIVUk3S1M4dll6SXlNRHM1T21ZcEtSbEZQeUVsSlU0b0tDY0hCQW9OR1F3dU1DOVZJeU1WSHg4cU5EUnZPRGd4S2lnb1NCMGRFaDhmSGlVa1R5b3BLQVlFQmhKR2l4Z1pNSHcwUEdjQ0dSd2tVam9USTBnV0d4b3ZQWXdlR3lBd0Z5QW9BcmdCREF3NUx5OUlmU2tkRWhFUkFRRURCQkFQT3kwdFBvRXFGdzRQRVFRRVFBRUJBd3NMS3lFaExqOGNLQlVWRVFJQ0J3WU5EU3dlSGljL0hSd1RFaFFGQkIwQ1JWUWdQUlFtQmdVRlRVRWlRaFlhREVBQkNSa2dYQTBSQnlVaVhBc0dBZ0FDQVBVQXFRTUxBdGNBREFBUUFBQUpBU2MzSnpjV0Z4NEJGeFlYRXlNUk13STUvdWt0NmVrdEl5TWlSaU1qSTlKQVFBSEEvdWt1NmVrdUl5TWpSaUlqSS84QUFnQUFBQUFDQUhrQWt3T0hBdTBBQ3dBV0FBQUJCeUVWSVJjSENRRWVBUmNGRnpjbklUVWhOeWNPQVFJMFFBR1QvbTFBamY3U0FTNGpSeVArb05NeWdBSHUvaEtBTWpWcEFtQkF3RUNOQVMwQkxTTkhJNkRUTTRCQWdETTFhUUFBQUFnQVlBQWdBNkFEWUFBREFBa0FEd0FUQUJjQUhRQWpBQ2NBQUNVakVUTW5CeWMzSGdFRkJ5YzNIZ0UzSVRVaEJTRTFJVGNISnpjZUFTVUhKemNlQVFVakVUTUNJRUJBYzgwdHpRc1hBYXN0elMwelo0Yi9BQUVBL2NEL0FBRUFUUzNOTFRObkFkUE5MYzBMRi83ZVFFQWdBUUFnelMzTkN4ZXJMYzB0TTJmTlFFQkFZQzNOTFRObmJjMHR6UXNYaXdFQUFBQUNBUEVBc1FNUEFzOEFCd0FPQUFBVEh3RW5OeWNISnlVdkFSY0hGemZ4QTk5SGRGTjFSd0llQTk5SGRGTjFBWlBmQTBkMVUzUkhXdDhEUjNWVGRBQUFBd0RBQU9BRFFBS2dBQU1BQndBTEFBQWxJVFVoTlNFMUlUVWhOU0VEUVAyQUFvRDlnQUtBL1lBQ2dPQkFnRUNBUUFBQUFBSUF5d0NLQXpVQzlnQUhBQThBQUNVdkFSY0hGemNYRXg4Qkp6Y25CeWNCMmdUZVIzUlRkVWRNQk41SGRGTjFSN2plQkVoMVUzVkhBaERlQkVoMVUzVkhBQUFBQWdDQUFXQURnQUlnQUFNQUJ3QUFBU0UxSVFVVklUVURnUDBBQXdEOVFBS0FBV0RBUUVCQUFBRUJYZ0NwQXFJQzF3QU1BQUFKQVNjM0p6Y1dGeDRCRnhZWEFxTCs2UzNwNlMwakl5TkZJeU1qQWNEKzZTN3A2UzRqSXlOR0lpTWpBQUFBQUFJQVFBQ2dBOEFDNEFBS0FCWUFBQUUzSGdFWEJ5YzNGeEV6QVNNUkJ5YzNIZ0VYQnljUkFVR1FEQmNNNE9BdmtFSUJ3RUtRTCtBNGNEZ3ZrQUVZaGdzV0M5TFNMSVlCeVAzQUFjaUdMTkkwYVRVc2h2NDRBQUFHQUhZQVFBT0xBMHNBSEFBeUFFRUFVd0JpQUc0QUFBRVdGeDRCRnhZSEJnY09BU2NtSnlZbkxnRTNOamMyTno0Qk56WVhCd1lIRGdFSEJoY1dGeDRCTnpZM05pY3VBU2NtQnhjV0J3NEJCd1luTGdFdkFRRWVBUUVXTno0Qk56WTNOaVluQmdjT0FRY0dCeE15Rmg4QkFTWW5KalkzTmpjNkFRY0dCdzRCQndZWEFTNEJCd0lHWWxWVmF3NE5MU2RPVGJkZFhrY3ZIaDRYQ0FnY0dTY21YemMzT1FwVFIwaGFDZ3NuS0ZOVHVWVlZMU1VLQ1ZoSlNWenpJd2dJVFVCQlRodzBHQ2dCZ3dZTC90Z29LU3BKSEJzTUNBRUpJU0FoUVNFZ0lVTWhRQjBwL24wbEJRWXlPRGhZQkFvR01Db3FOd29LRGdFR0VTSVNBMHNDTlRXa1pXUmdWRGMzSlJVVVF5czVPbjVBUURveUtpazZFQkFCUUFFdExZeFZWRkZUTFMwRUtpdGNURlZWank4dUFjMUFTa2w3SlNZSUFoRU5GZ0dEQ2hUK3JRd0ZCU2NnSHlrZVBSMGdJU0ZCSVNBaEFkWVJFQmIrZkVGTFRJSXVMUVpBQWhrWlRUQXZMZ0VGQlFVQkFBQUFBQU1BZ0FBd0E0QURVQUFXQUNJQU5nQUFBVFFtSXlJR0ZTTWlCaFVSRkJZeklUSTJOUkUwSmlNRk1oWVZGQVlqSWlZMU5EWUJJU0ltTlJFME5qc0JGU0UxTXpJV0ZSRVVCZ0tBT0VoSU9JQTFTMHMxQWdBMVMwczEvd0FTR1JrU0Voa1pBUkwrQUJvbUpocEFBWUJBR2lZbUF2QVlTRWdZU3pYK1FEVkxTelVCd0RWTEVSZ1JFUmdZRVJFWS9aRW1HZ0hBR2lhQWdDWWEva0FhSmdBQUFBQUNBSEFBTUFPUUExQUFLQUJBQUFBQkp6QTJOejRCRnpjbU56NEJOell4RmhjZUFSY1dGdzRCQnc0Qkp3Y2VBUmNXQmc4Qkp3Y25Od0VPQVI4QkJ5WUdCd0UrQVRjMkppYzNNQlkzSnpBR01RRlpsUVlQSVhFd1pRa1FFQ3dVRkNVa0pVa2xKU1FGQ3dVYVJTcHFBUUVDQXlndkdKcnBMZWtCQ0JFYUNoQ2dNR0lUQVNFQ0JBSWVCd2VhT2lUYUFRRkhsU2NWTFE4Sll4d2RIUzRQRHlVbEpFb2xKQ1VIRGdjakx3ZG5DUUViTTJBWURKcnFMdWtCdGc0bUR4ZWZEQUllL3Q4Q0F3SWFWaXlhRVNyWkFRQUFDZ0EvLy84RHdRT0JBQ2NBT3dCSEFHRUFad0J1QUhzQWhnQ01BSklBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SVRJUkVXTXhZMk56WTNQZ0UzTmpjK0FTYzBKd0VVRmhVZUFSY3lGak0xSXdFSEp6Y2VBUmNISnhVT0FRY2pGd2NuTng0QkZ3Y1dOamMxQlJRV0ZUTTFKd1lVQnpNMUl6Y3FBU01pQmdjVUJoVXpOVE1sRlRNMEpqVXVBU2NpSmlVR0lnY1ZNemNtSWlNVk13TWtQbHdDQVFFQkFRSmNQa2xKU1pKSlNVazlYUUlCQVFFQkFsdytTVWxKa2tsSnFQMjZQVDA5ZWowOVBTUTFBZ0lDQVFFQkF2ejhBUUkxSkFnUUNId0NRUWt1VnhZckZpNEpBVncvZHdvdVZsWU1GZ3dMVVlJQi9id0JmbjBCQVg5OXZ4Z3VGeVU2QVFGOFFnSEhmUUVDTlNRSUVQN3pJVUVnZ3NNZ1FTR0NBNEFDWEQ1SlNVbVNTVWxKUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWsrWEFJQkFRSC9BUDI4QWdFQkFRSUNBalVrUFQwOGVqMDlQUDQ4Q1JFSUpEVUNBWDRCRmdvdVZoVXNGUzRLY3o5ZkFna3VWMWNNRmd3S0FSMUZjMVFoUUNDQndpRkFJWUwvT0NZWU1CbEJmMzhKRVFra05RSUJBZ0VCZjRBQmdRQUFBZ0NnQUdBRFlBTWdBQXNBRndBQUFTRVZJUkVqRVNFMUlSRXpCeEVoRlNFUk14RWhOU0VSQW1BQkFQOEF3UDhBQVFEQWdQOEFBUUJBQVFEL0FBSWd3UDhBQVFEQUFRQkEvd0JBL3dBQkFFQUJBQUFBQVFGZUFLa0NvZ0xYQUFjQUFBRUhGd2NKQVI0QkFxTHA2UzMrNlFFWEN4Y0NxZW5wTGdFWEFSY01GZ0FDQUFEL3dBUUFBOEFBR3dBM0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21CeklYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOZ0lBYWwxZGl5a29LQ21MWFYxcWFsMWRpeWtvS0NtTFhWMXFYVkZTZWlNakl5TjZVbEZkWFZGU2VpTWpJeU42VWxFRHdDZ3BpMTFkYW1wZFhZc3BLQ2dwaTExZGFtcGRYWXNwS0VBakkzcFNVVjFkVVZKNkl5TWpJM3BTVVYxZFVWSjZJeU1BQXdBQS84QUVBQVBBQUJzQU53QlRBQUFCSWdjT0FRY0dGUlFYSGdFWEZqTXlOejRCTnpZMU5DY3VBU2NtQnpJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmdFVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTXlGeDRCRnhZQ0FHcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtDZ3BpMTFkYWwxUlVub2pJeU1qZWxKUlhWMVJVbm9qSXlNamVsSlJBWjBaR1ZjNk8wSkNPenBYR1JrWkdWYzZPMEpDT3pwWEdSa0R3Q2dwaTExZGFtcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtFQWpJM3BTVVYxZFVWSjZJeU1qSTNwU1VWMWRVVko2SXlQK1FFSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83QUFBQUFBSUFlUUNUQTRjQzdRQU9BQmtBQUFrQkp6Y2hOU0VuTnhZWEhnRVhGaVVYSVJVaEJ4YzNKdzRCQTRmKzBvMUEvbTBCazBDTkppWWxUQ1VtL3NhQS9oSUI3b0F5MDlNTUdnSEEvdE9OUU1CQWpTVW1Ka3NtSlhxQVFJQXowOU1OR1FBQUFBQUNBSUFBUUFPQUEwQUFEZ0FaQUFBQkVTRVJJeEVVRmpNaE1qWTFFU01GTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeVZmOEFianpWMVR4dVZnSEEvdFVCSy83Vkl6SXlJd0VySFc0ODFkVThiZ0dkL21NQUFRRHBBUjRERndKaUFBY0FBQWtDTnhjM0hnRURGLzdwL3VrdTZla01GZ0kxL3VrQkZ5M3A2UXNYQUFBQkFWNEFxUUtpQXRjQUJ3QUFBUWNYQndrQkhnRUNvdW5wTGY3cEFSY0xGd0twNmVrdUFSY0JGd3dXQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQUVBNlFFZUF4Y0NZZ0FMQUFBQkJ5Y0hKd0VXRng0QkZ4WURGeTdwNlM0QkZ5TWpJa1lqSXdGTExlbnBMUUVYSXlNalJTTWpBQUFBQVFEcEFPNERGd0tTQUFjQUFBa0JKemNYQVI0QkF4ZitpYmN1aVFGSkRCWUNaZjZKdHkySkFVa0xGd0FCQVY0QXFRS2lBdGNBREFBQUNRRW5OeWMzRmhjZUFSY1dGd0tpL3VrdDZla3RJeU1qUlNNakl3SEEvdWt1NmVrdUl5TWpSaUlqSXdBQUFBQUJBTUFCb0FOQUFlQUFBd0FBRXlFVkljQUNnUDJBQWVCQUFBQUFBUURwQVI0REZ3SmlBQWNBQUFrQ054YzNIZ0VERi83cC91a3U2ZWtNRmdJMS91a0JGeTNwNlFzWEFBQUJBQUFBQVFBQUVrdmhlVjhQUFBVQUN3UUFBQUFBQU5sQmo0MEFBQUFBMlVHUGpRQUEvOEFFQUFQQUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFQQS84QUFBQVFBQUFBQUFBUUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQTRCQUFBQUFBQUFBQUFBQUFBQWdBQUFBUUFBRDhFQUFCVEJBQUJLUVFBQUlBRUFBRFZCQUFBQUFRQUFBQUVBQUFBQkFBQWN3UUFBTUFFQUFEQUJBQUJYZ1FBQUtBRUFBRXBCQUFBUUFRQUFJWUVBQUVwQkFBQlhnUUFBRU1FQUFCREJBQUF3QVFBQVBVRUFBREFCQUFBUHdRQUFFTUVBQUQxQkFBQWVRUUFBR0FFQUFEeEJBQUF3QVFBQU1zRUFBQ0FCQUFCWGdRQUFFQUVBQUIyQkFBQWdBUUFBSEFFQUFBL0JBQUFvQVFBQVY0RUFBQUFCQUFBQUFRQUFIa0VBQUNBQkFBQTZRUUFBVjRFQUFGZUJBQUE2UVFBQU9rRUFBRmVCQUFBd0FRQUFPa0FBQUFBQUFvQUZBQWVBTUlCQmdFZUFZd0JxQUhxQWlRQ1dBS0dBcG9DdkFMU0F4NERQZ08yQkJJRUtnUklCUWdGcmdZQ0JpQUdhZ2NNQjdZSDJnZ0lDRklJY2dpTUNLNEl3Z2pnQ1F3SnhBb1VDbndMVkF0K0M1UUw2Z3hxREp3TXlBemVEUFFORWcwdURVUU5ZZzF3RFlZQUFBQUJBQUFBT0FDVEFBd0FBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFDQUFBQUFFQUFBQUFBQUlBQndCcEFBRUFBQUFBQUFNQUNBQTVBQUVBQUFBQUFBUUFDQUIrQUFFQUFBQUFBQVVBQ3dBWUFBRUFBQUFBQUFZQUNBQlJBQUVBQUFBQUFBb0FHZ0NXQUFNQUFRUUpBQUVBRUFBSUFBTUFBUVFKQUFJQURnQndBQU1BQVFRSkFBTUFFQUJCQUFNQUFRUUpBQVFBRUFDR0FBTUFBUVFKQUFVQUZnQWpBQU1BQVFRSkFBWUFFQUJaQUFNQUFRUUpBQW9BTkFDd1FXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Vm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2RDWVd4b1lXMEFRUUJuQUVJQVlRQnNBR2dBWVFCdFFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0VW1WbmRXeGhjZ0JTQUdVQVp3QjFBR3dBWVFCeVFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Um05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJhbGhhbS1kYXJrIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gIGNvbG9yOiAjRjVGNUY1O1xcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgZm9udC1zaXplOiAxMnB4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3QsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDM0MzY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBCMEZGO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzJkMzQzNjtcXG4gICAgYm9yZGVyLWNvbG9yOiAjNDI0MjQyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgKiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAqOmZvY3VzLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgKiAqOmJlZm9yZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrICogKjphZnRlciB7XFxuICAgICAgb3V0bGluZTogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDM2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzcycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogI2U1MzkzNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSksXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2VjZjBmMTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzYsIDI0MCwgMjQxLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWEge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZWNmMGYxOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzYsIDI0MCwgMjQxLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdyB7XFxuICAgIGJvcmRlcjogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM0MjQyNDI7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdzpub3QoLmFnLXJvdy1maXJzdCkge1xcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy5hZy1yb3ctbGFzdCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1vZGQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyYzJlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDQ3NDk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgb3BhY2l0eTogMC44NzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM0MjQyNDI7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMEIwRkY7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1saXN0IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDc0OTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjM0MjQyNDInJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjRweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjMmQzNDM2O1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZzogMCA4cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsuYWctZG5kLWdob3N0IGRpdiB7XFxuICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyay5hZy1kbmQtZ2hvc3QgLmFnLWRuZC1naG9zdC1pY29uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjMWMxZjIwO1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWJvZHkge1xcbiAgICBwYWRkaW5nOiAycHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpmaXJzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3QsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3Qge1xcbiAgICBtYXJnaW46IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICAgIGhlaWdodDogMjhweDtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItaGVhZGVyLWNvbnRhaW5lcjpudGgtY2hpbGQoMikge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBoZWlnaHQ6IDMycHg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIHtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC42NCk7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyIHtcXG4gICAgICAgICAgcGFkZGluZzogMCA1cHg7IH1cXG4gICAgICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIgPiBkaXYge1xcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWFpciB7XFxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWxpc3Qge1xcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC42NCk7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctaWNvbiB7XFxuICAgIHdpZHRoOiAxNnB4O1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbiBidXR0b24ge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ODgwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tIHtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDBCMEZGOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuMik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0NSwgMTY2LCAyNTUsIDAuNSk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI2LCAxNzcsIDc0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC42KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzBmMGYwZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCMEZGOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZpbGwtaGFuZGxlIHtcXG4gICAgY3Vyc29yOiBjZWxsOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiA0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LWxpc3Qge1xcbiAgICAgIHdpZHRoOiAyMDBweDtcXG4gICAgICBoZWlnaHQ6IDE4MnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgICBwYWRkaW5nOiAwIDRweCAwIDEycHg7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDc0OTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU4ODA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNoaWxkLWNvdW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLXJpZ2h0IHtcXG4gICAgICBtYXJnaW46IDAgNHB4O1xcbiAgICAgIG9wYWNpdHk6IDAuNjQ7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzIzOTNjO1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtaW4td2lkdGg6IDE2cHg7XFxuICAgICAgbWFyZ2luOiAwIDJweDtcXG4gICAgICBvcGFjaXR5OiAwLjY0OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBiYWNrZ3JvdW5kOiAjMmQzNDM2O1xcbiAgICBoZWlnaHQ6IDcwcHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMiwgMTYwLCAxMzMsIDAuNSkgIWltcG9ydGFudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLWRhdGEtY2hhbmdlZC1hbmltYXRpb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmxvYXRpbmctdG9wLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1mbG9hdGluZy10b3AgLmFnLXJvdywgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1mbG9hdGluZy1ib3R0b20gLmFnLXJvdyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgY29sb3I6IHJnYmEoMjQ1LCAyNDUsIDI0NSwgMC4zOCk7XFxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1uYW1lLXZhbHVlLXZhbHVlIHtcXG4gICAgY29sb3I6ICNGNUY1RjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc3RhdHVzLWJhci1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zaWRlLWJ1dHRvbiBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXI6IDA7XFxuICAgICAgICBjb2xvcjogI0Y1RjVGNTtcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAwO1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgICBtYXJnaW46IDA7XFxuICAgICAgICBtaW4taGVpZ2h0OiA3MnB4O1xcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMDtcXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNlbGVjdGVkIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2O1xcbiAgICBwYWRkaW5nOiAwcHg7XFxuICAgIGJvcmRlcjogMCBzb2xpZCAjNGY0ZjRmO1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyZjMwO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgIzQyNDI0MjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgICAgbWFyZ2luOiAycHggMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICAgIGhlaWdodDogMThweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbGFiZWxlZC5hZy1sYWJlbC1hbGlnbi10b3AgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctc2xpZGVyID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctcGFyZW50LWNpcmNsZSB7XFxuICAgIHdpZHRoOiAyNHB4O1xcbiAgICBoZWlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLWNoaWxkLWNpcmNsZSB7XFxuICAgIHRvcDogNHB4O1xcbiAgICBsZWZ0OiAxMnB4O1xcbiAgICB3aWR0aDogNnB4O1xcbiAgICBoZWlnaHQ6IDZweDtcXG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XFxuICAgIG1hcmdpbi10b3A6IC00cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjBmMTtcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlY2YwZjE7XFxuICAgICAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjBGRjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6ICMyZDM0MzY7XFxuICAgICAgcmlnaHQ6IC0xcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Q0NzQ5OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRpYWxvZy5hZy1jb2xvci1kaWFsb2cge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tY29sb3Ige1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdG9vbHMge1xcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20oYmxhY2spLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWRyYWdnZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctaHVlLWFscGhhIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xcbiAgICAgIGhlaWdodDogMTFweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZSB7XFxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBkNzdlNDtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2Omxhc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsuYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDM0MzY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNWM1YzVjO1xcbiAgICAgIGNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNjQpO1xcbiAgICAgIGhlaWdodDogMzJweDtcXG4gICAgICBmb250LXNpemU6IDEycHg7XFxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiAuYWctaWNvbiB7XFxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpob3ZlciwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDA1MDU7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIge1xcbiAgICAgIGhlaWdodDogMzBweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIwO1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGNvbG9yOiAjRjVGNUY1O1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzM0MzkzYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbHRpcC5hZy10b29sdGlwLWhpZGluZyB7XFxuICAgICAgb3BhY2l0eTogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogIzJkMzQzNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTkxYTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6ICMwMEIwRkY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjRjVGNUY1O1xcbiAgICBmb250LXNpemU6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICBjb2xvcjogIzAwQjBGRjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRCYWxoYW1cXFwiO1xcbiAgICBzcGVhazogbm9uZTtcXG4gICAgZm9udC1zaXplOiAxNnB4O1xcbiAgICBjb2xvcjogI2VjZjBmMTtcXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1hcnJvd3M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWFzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGFydDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jb2xvci1waWNrZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29sdW1uczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29udHJhY3RlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY3Jvc3M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWN1dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZGVzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZXhwYW5kZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTExXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tZXllOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1maWx0ZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1ncmlwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1ncm91cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbGFzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbWF4aW1pemU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLW1lbnU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1taW51czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbmV4dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tbm90LWFsbG93ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXBhc3RlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXBpdm90OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1wbHVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9mZjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjhcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc2F2ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtZG93bjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tc21hbGwtcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLXNtYWxsLXVwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10cmVlLWNsb3NlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tdHJlZS1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2O1xcbiAgICBsaW5lLWhlaWdodDogMTZweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICMwMEIwRkY7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICMwMEIwRkY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIzMnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyOHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI5OHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTZweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCMEZGICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgIGhlaWdodDogODAlO1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDY2LCA2NiwgNjYsIDAuNSk7XFxuICAgIGNvbnRlbnQ6IFxcXCIgXFxcIjtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdGV4dC1pbmRlbnQ6IC0yMDAwcHg7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1sdHIgLmFnLWhlYWRlci1jZWxsOjphZnRlcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbHRyIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICByaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWhlYWRlci1jZWxsOjphZnRlcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDI0MjQyO1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWx0ciAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcC5hZy13aWR0aC1oYWxmOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcC5hZy13aWR0aC1oYWxmOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcm93IHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjNWM1YzVjOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJvdy1zZWxlY3RlZCB7XFxuICAgIGJvcmRlci1jb2xvcjogIzAwNTg4MDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWluLWhlaWdodDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjA7XFxuICAgIGhlaWdodDogMzJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xcbiAgICAgIHBhZGRpbmctdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhcixcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0MjQyNDI7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1ydGwgLmFnLWljb24tZXhwYW5kZWQsXFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJ0bCAuYWctaWNvbi1jb250cmFjdGVkIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctbWVudS1vcHRpb24ge1xcbiAgICBoZWlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy10YWItYm9keSxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctcG9wdXAtZWRpdG9yLFxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgY29sb3I6ICNGNUY1RjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMzQzNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQyNDI0MjtcXG4gICAgY29sb3I6ICNGNUY1RjU7XFxuICAgIHBhZGRpbmc6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0xOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNzYsIDI1NSwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTM6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTc2LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC00Om5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE3NiwgMjU1LCAwLjYpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0MjQyNDI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayBpbnB1dCxcXG4gIC5hZy10aGVtZS1iYWxoYW0tZGFyayBzZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyYzJlO1xcbiAgICBjb2xvcjogI0Y1RjVGNTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1maWx0ZXItdG9vbHBhbmVsLWJvZHkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQzNDM2OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0YzsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZEJhbGhhbVxcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVpxTXV5M2dBQUFGNEFBQWJER2hsWVdRVm9tT1hBQUFjaEFBQUFEWm9hR1ZoQjhJRCtRQUFITHdBQUFBa2FHMTBlTllBSW5ZQUFCemdBQUFBNEd4dlkySEVtTDRhQUFBZHdBQUFBSEp0WVhod0FFVUFsUUFBSGpRQUFBQWdibUZ0WlpRWHhLUUFBQjVVQUFBQmtuQnZjM1FBQXdBQUFBQWY2QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFEQUQvLy93UEJBNEVBSndCUUFHNEFBQUVlQVJjV0ZSWVVCeFFIRGdFSEJpTUdJaWNpSnk0Qkp5WTFKalEzTkRjK0FUYzJNell5RnpJRklnWUhCZ2NPQVJjVUZ4NEJGeFlYRmpJM05qYytBVGMyTnpZMEp5WW5MZ0VuSmlNaUJnY0dJd0VqTlNFVkhnRVhGZ1lIRGdFVklUVXpGU0UwTmpjK0FTY3VBU2MxSVFNa1Bsd0NBUUVCQVFKY1BrbEpTWkpKU1VrOVhRSUJBUUVCQWx3K1NVbEpra2xKL2dVbE9nRUJBUUVCQVFNQ05TUkpTVXFTU2tsSkpEVUNBd0VCQVFFREFqVWtTVWhKa1VsSVNRSGdRUDhBQVhVWkVBb1lKMVlCQUVEK2dBWWJMV1FnTG1JQ0FZQURnQUpjUGtsSlNaSkpTVWsrWEFJQkFRRUJBbHcrU1VsSmtrbEpTVDVjQWdFQkFVRTRKa2hKU1pKSlNVa2tOUUlEQVFFQkFRTUNOU1JKU1VxU1NrbEpKRFVDQXdFQkFmOEFRQU1nUWlzY1JCY2lQUnBBZ0NaTUdDZEhIeWxITkVVQUFRQlRBQk1EclFOdEFDY0FBQk1YQnljM0hnRVhCeUVSQnljM0hnRVhCeWNSSVNjM0hnRVhCeWMzSVJFM0hnRVhCeWMzRnhITlNpNldsZ3dXREVvQkUwa3VseVpMSmk1SkFSTktMaVZNSlpZdVN2N3RTUXdXREplWExra0JvRWt1bDVjTUZneEpBUk5LTHBZbFRDVXVTdjd0U1M0bVN5YVhMa24rN1VvTUZneVdsaTVLQVJNQUFBRUJLUUNaQXRjQzV3QUtBQUFCQnljM0hnRVhCeWNSSXdIZ2lTN1hObXMyTG9sQUFteUpMZGMyYXpZdGlmNHRBQU1BZ0FCQUE0QURRQUFiQURjQVJnQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KZ2N5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOellUTng0QkZ3Y1hCeWNISnpjbk54Y0NBRTlHUm1rZUhoNGVhVVpHVDA5R1Jta2VIaDRlYVVaR1QwSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83UXFrTUZneXFxaTZwcVM2cXFpNnBBMEFlSG1sR1JrOVBSa1pwSGg0ZUhtbEdSazlQUmtacEhoNUFHUmxYT2p0Q1FqczZWeGtaR1JsWE9qdENRanM2VnhrWi91MnFEQllNcWFrdXFxb3VxYWt1cWdBREFOVUFsUU1yQXVzQUJBQUpBQTBBQUJNekVTTVJOek1SSXhFVE14RWoxWUNBNzNoNDczaDRBamYrWGdHaXRQMnFBbGIrcXY4QUFBTUFBUC9BQkFBRHdBQVBBQ0FBS0FBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lqQndFbk54Y0JIZ0VEU1Axd1RHeHNUQUtRVEd4c1N2MXRMVUZCTFFLVExVRkFMZ3orVk5Bem5RRjVEUnBBYkV3Q2tFeHNiRXo5Y0V4c0E3bEJMZjF0TGtCQUxnS1RMVUgzL2xQUk5KMEJlQTBhQUFNQUFQL0FCQUFEd0FBUEFDQUFKQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWWpBeUUxSVFOSS9YQk1iR3hNQXBCTWJHeEsvVzB0UVVFdEFwTXRRVUF1SmYyMkFrcEFiRXdDa0V4c2JFejljRXhzQTdsQkxmMXRMa0JBTGdLVExVSCtJa29BQWdBQS84QUVBQVBBQUE4QUlBQUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZakEwaE1iR3hNL1hCTWJHeE1BcEw5YlMxQlFTMENreTFCUUM0RHdHeE0vWEJNYkd4TUFwQk1iRWRCTGYxdExrQkFMZ0tUTFVFQUFBQURBSE1BU0FPTkF6Z0FCZ0FLQUJZQUFBa0JCeGNKQWlFM0Z5RUZNQVlWRkJZek1qWTFOQ1lDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBQUlBd0FDZ0FjQUM0QUFEQUFjQUFDVWhFU0VIRVRNUkFjRC9BQUVBd0lDZ0FrQkEva0FCd0FBRUFNQUFvQU5BQXVBQUF3QUhBQXNBRHdBQUpTTVJNeE1qRVRNVEl4RXpBU01STXdIQVFFREFRRURBUUVEOXdFQkFvQUpBL2NBQ1FQM0FBa0Q5d0FKQUFBQUFBQUVCWGdDcEFxSUMxd0FIQUFBQkJ4Y0hDUUVlQVFLaTZla3QvdWtCRndzWEFxbnA2UzRCRndFWERCWUFBd0NnQUVBRFlBTkFBQkFBSUFBekFBQWxJeUltTlJFME5qc0JNaFlWRVJRR0l4TWhJZ1lWRVJRV015RXlOalVSTkNZQkl6d0JOUkUwTmpNaE9nRXpGU0VpQmhVUkFyNzdRMkJnUS90RFgxOURCZjc5SnpjM0p3RURKemMzL2ZkQlgwTUJtZ0VDQWY1ZEpqWkFYMFFCT2tOZ1lFUCt4a1JmQWtBNEp2NjdKemMzSndGRkpqaitBQUVFQWdJWFExOUFOaWI5M0FBQUFBQUJBU2tBNlFMWEFwY0FEZ0FBQVRjZUFSY0hGd2NuQnljM0p6Y1hBZ0NwREJZTXFxb3VxYWt1cXFvdXFRSHRxZ3dXREttcExxcXFMcW1wTHFvQUFBQUFCUUJBQUFBRHdBT0FBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHV0NBaHBTa3BwYVVvVUpSRnBhUkVsRkVwcGFVcEthUWdJYWdFNmh2M1dveVUwTkNVbE5UVWxKVFEwSlNVMU5TVUJEUWtORFFrSkRRMEJNZjd6V1FFNmhnS0RFU1VVU21scFNrcHBDQWhxYWdnSWFVcEthV2xLRkNVUmFmN0hMUUlwRURVbEpUUTBKU1UxL2VjMEpTVTFOU1VsTkFGUURRa0pEUTBKQ1EwQnFmN3pXUUU1TFFBQUJ3Q0dBRllEZWdNcUFBc0FEd0FiQUNnQUxBQTRBRHdBQURjaUJoVVVGak15TmpVMEpnVTFJUlVESWdZVkZCWXpNalkxTkNZSE1oWVZGQVlqSWlZMU5EWXpCU0UxSVFFeUZoVVVCaU1pSmpVME5nVWhOU0hHR2lZbUdoc2xKUUtaL2VhYUdpWW1HaHNsSlJzU0dSa1NFUmtaRVFJSi9wRUJiLzMzR3lVbEd4b21KZ0xPL2VZQ0d0WW1HaHNsSlJzYUptdFZWUUdWSmhvYUppWWFHaVlWR1JJU0dSa1NFaGxXVmdFL0pSc2FKaVlhR3lWcVZRQUFBQUVCS1FDWkF0Y0M1d0FLQUFBQk54NEJGd2NuTnhjUk13SWdpUXdXRE5mWExvbEFBUlNKQ3hjTDE5Y3RpUUhUQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQVVBUXdCekE3MEREUUFzQUVvQWFBQnpBSDBBQUFFK0FUYzZBVE1XRng0QkZ4WVhNQVlIRGdFSEZ3Y25CZ2NHSmljbUp5NEJKeTRCSnpBMk56NEJOeWMzRndjT0FROEJGaGNlQVJjV056NEJOeWNPQVNNaUp5NEJKeVkxTkRZM0p3RStBVDhCSmljdUFTY21CdzRCQnhjK0FUTXlGeDRCRnhZVkZBWUhGd0VPQVJVVUZqTXlOamNuQlQ0Qk5UUW1JeUlHQndFcUwyZzJCd1FIU0VOQ2NpMHRHemt1RUNRVFBpMUxPVUJBZ0Q0OU5TbEVHUW9QQ2lVYkZ6Y2dQaTFLQ2pGT0dBRWROemVKVEV4SUN4WUtIUnhFSmk4b0tUMFNFUmNWTUFIQk1VMFlBUmduS0dVN096NHBVQ1VrSEVRbUxpa3BQUkVTR0JVcS9wME1EbDVDR0MwVDNnRUxEUTVlUWhrc0V3TEVGeHNDQWhnWFVqazRSSFl3RVI0TlBpMUxIQTBNQ0JVVkpoNUtMQkVpR0ZNa0h6WVdQaTFKVVNGWk53SkZOVFUvQndjWEJBZ0ZIUlVZRWhJOEtTa3VKa1FjTWY2WklWbzNBamd1TGtFU0VnRUJFeEVqRlJjUkVqMHBLQzhsUlJ3cUFRZ1RMQmxDWGc0TjNiQVRMUmhEWFE0TUFBUUFRd0NaQTcwQzlnQWtBRU1BWUFCdkFBQUJGaGNlQVJjV0Z6QUdCd1lIRGdFbkppY3VBU2N1QVNjd05qYzJOejRCTnpZM09nRXpCd1lIRGdFSEJnOEJGaGNlQVJjV056WTNQZ0UzTmo4QkppY3VBU2NtSXhjeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZ6VTBKaU1pQmgwQkZCWXpNalkxQWdsSVEwSnlMUzBiT1M0NlRrNm9VMVJGS1VRWkNnOEtKUnNnS1NwZ05UVTNCd1FIRVRzNE4yQW5KaGdCSFRjM2lVeE1TQ29sSmtBYUdoSUJHQ2NvWlRzN1BnZ3RLQ2M3RVJJU0VUc25LQzB0S0NjN0VSSVNFVHNuS0MyZ1hrSkNYbDVDUWw0QzlnSVlGMUk1T0VSMk1EMGpKQkFWRkRJZVNpd1JJaGhUSkNzakl6SU9EZ0pBQWhJVFFDMHNOZ0pGTlRVL0J3Y1hEUllXT3lNaktBTTRMaTFDRWhFZkVSRTdKeWd0TFNnbk94SVJFUkk3SnlndExTZ25PeEVSMkFGQ1hsNUNBa0plWGtJQUFnREFBS0FEUUFNQUFCc0FNd0FBQVFZSERnRUhCZ2NPQVIwQkJ6UTJKelFtSnlZbkxnRW5KaWMxSVFVVUZoY1dGeDRCRnhZWEZUYzFOamMrQVRjMk56NEJOUU5BQVJZVlFTVW1JQVFFd0FJQ0JRTWhKU1pBRmhVQkFvRDl3QVFFSVNVbVFCWVZBVUFCRmhWQkpTWWdCQVFDdWlBZkh6OGdJQ0lGQ3daMWtFS0RRZ1lLQkNJaElrQWVIeDFHUUFjT0JpSWhJa0FlSHgyR01GWWdIeDgvSUNBaUJnNEhBQUFBQWdEMUFLa0RDd0xYQUFjQUN3QUFBUWNYQndrQkhnRWxFU01SQXd2cDZTMys2UUVYQ3hmK05VQUNxZW5wTGdFWEFSY01GZ3YrQUFJQUFBQUFEQURBQU1BRFFBTEFBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQWxJelV6RnlNMU14Y2pOVE1YSXpVekpTTTFNeGNqTlRNWEl6VXpGeU0xTXlVak5UTVhJelV6RnlNMU14Y2pOVE1CQUVCQXdFQkF3RUJBd0VCQS9jQkFRTUJBUU1CQVFNQkFRUDNBUUVEQVFFREFRRURBUUVEQWdJQ0FnSUNBZ0VDQWdJQ0FnSUNBUUlDQWdJQ0FnSUFBQUFnQVAvLy9BOEVEZ1FBbkFGQUFWQUJZQUZ3QVlBQmtBR2dBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SUZJZ1lIQmdjT0FSY1VGeDRCRnhZWEZqSTNOamMrQVRjMk56WTBKeVluTGdFbkppTWlCZ2NHSXhNak5UTUZJVFVoSlNNMU13VWhOU0VsSXpVekJTRTFJUU1rUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWs5WFFJQkFRRUJBbHcrU1VsSmtrbEovZ1VsT2dFQkFRRUJBUU1DTlNSSlNVcVNTa2xKSkRVQ0F3RUJBUUVEQWpVa1NVaEprVWxJU2VDQWdBR0Evc0FCUVA2QWdJQUJnUDdBQVVEK0FJQ0FBZ0QrUUFIQUE0QUNYRDVKU1VtU1NVbEpQbHdDQVFFQkFRSmNQa2xKU1pKSlNVaytYQUlCQVFGQk9DWklTVW1TU1VsSkpEVUNBd0VCQVFFREFqVWtTVWxLa2twSlNTUTFBZ01CQVFIOTRFQkFRRUJBUUVCQVFFQkFBQUFBQUFRQVF3RElBNzBDdUFBa0FFMEFZQUJ3QUFBQkZoY2VBUmNXRnpBR0J3WUhEZ0VIQmljbUp5NEJKeVluTURZM05qYytBVGMyTXpvQkJ5SUdCd1lIRGdFSEJnY3dGaGNXRng0Qk56WTNOamMrQVRjMk56QW1KeVluTGdFbkppTXFBU01YSGdFVkZBWUhEZ0VuTGdFbk5EWTNQZ0V6Qnc0QkJ3WVdGeFkyTnpZbUp5NEJJd0lKUUVKQmRTOHdIVUk3S1M4dll6SXlNRHM1T21ZcEtSbEZQeUVsSlU0b0tDY0hCQW9OR1F3dU1DOVZJeU1WSHg4cU5EUnZPRGd4S2lnb1NCMGRFaDhmSGlVa1R5b3BLQVlFQmhKR2l4Z1pNSHcwUEdjQ0dSd2tVam9USTBnV0d4b3ZQWXdlR3lBd0Z5QW9BcmdCREF3NUx5OUlmU2tkRWhFUkFRRURCQkFQT3kwdFBvRXFGdzRQRVFRRVFBRUJBd3NMS3lFaExqOGNLQlVWRVFJQ0J3WU5EU3dlSGljL0hSd1RFaFFGQkIwQ1JWUWdQUlFtQmdVRlRVRWlRaFlhREVBQkNSa2dYQTBSQnlVaVhBc0dBZ0FDQVBVQXFRTUxBdGNBREFBUUFBQUpBU2MzSnpjV0Z4NEJGeFlYRXlNUk13STUvdWt0NmVrdEl5TWlSaU1qSTlKQVFBSEEvdWt1NmVrdUl5TWpSaUlqSS84QUFnQUFBQUFDQUhrQWt3T0hBdTBBQ3dBV0FBQUJCeUVWSVJjSENRRWVBUmNGRnpjbklUVWhOeWNPQVFJMFFBR1QvbTFBamY3U0FTNGpSeVArb05NeWdBSHUvaEtBTWpWcEFtQkF3RUNOQVMwQkxTTkhJNkRUTTRCQWdETTFhUUFBQUFnQVlBQWdBNkFEWUFBREFBa0FEd0FUQUJjQUhRQWpBQ2NBQUNVakVUTW5CeWMzSGdFRkJ5YzNIZ0UzSVRVaEJTRTFJVGNISnpjZUFTVUhKemNlQVFVakVUTUNJRUJBYzgwdHpRc1hBYXN0elMwelo0Yi9BQUVBL2NEL0FBRUFUUzNOTFRObkFkUE5MYzBMRi83ZVFFQWdBUUFnelMzTkN4ZXJMYzB0TTJmTlFFQkFZQzNOTFRObmJjMHR6UXNYaXdFQUFBQUNBUEVBc1FNUEFzOEFCd0FPQUFBVEh3RW5OeWNISnlVdkFSY0hGemZ4QTk5SGRGTjFSd0llQTk5SGRGTjFBWlBmQTBkMVUzUkhXdDhEUjNWVGRBQUFBd0RBQU9BRFFBS2dBQU1BQndBTEFBQWxJVFVoTlNFMUlUVWhOU0VEUVAyQUFvRDlnQUtBL1lBQ2dPQkFnRUNBUUFBQUFBSUF5d0NLQXpVQzlnQUhBQThBQUNVdkFSY0hGemNYRXg4Qkp6Y25CeWNCMmdUZVIzUlRkVWRNQk41SGRGTjFSN2plQkVoMVUzVkhBaERlQkVoMVUzVkhBQUFBQWdDQUFXQURnQUlnQUFNQUJ3QUFBU0UxSVFVVklUVURnUDBBQXdEOVFBS0FBV0RBUUVCQUFBRUJYZ0NwQXFJQzF3QU1BQUFKQVNjM0p6Y1dGeDRCRnhZWEFxTCs2UzNwNlMwakl5TkZJeU1qQWNEKzZTN3A2UzRqSXlOR0lpTWpBQUFBQUFJQVFBQ2dBOEFDNEFBS0FCWUFBQUUzSGdFWEJ5YzNGeEV6QVNNUkJ5YzNIZ0VYQnljUkFVR1FEQmNNNE9BdmtFSUJ3RUtRTCtBNGNEZ3ZrQUVZaGdzV0M5TFNMSVlCeVAzQUFjaUdMTkkwYVRVc2h2NDRBQUFHQUhZQVFBT0xBMHNBSEFBeUFFRUFVd0JpQUc0QUFBRVdGeDRCRnhZSEJnY09BU2NtSnlZbkxnRTNOamMyTno0Qk56WVhCd1lIRGdFSEJoY1dGeDRCTnpZM05pY3VBU2NtQnhjV0J3NEJCd1luTGdFdkFRRWVBUUVXTno0Qk56WTNOaVluQmdjT0FRY0dCeE15Rmg4QkFTWW5KalkzTmpjNkFRY0dCdzRCQndZWEFTNEJCd0lHWWxWVmF3NE5MU2RPVGJkZFhrY3ZIaDRYQ0FnY0dTY21YemMzT1FwVFIwaGFDZ3NuS0ZOVHVWVlZMU1VLQ1ZoSlNWenpJd2dJVFVCQlRodzBHQ2dCZ3dZTC90Z29LU3BKSEJzTUNBRUpJU0FoUVNFZ0lVTWhRQjBwL24wbEJRWXlPRGhZQkFvR01Db3FOd29LRGdFR0VTSVNBMHNDTlRXa1pXUmdWRGMzSlJVVVF5czVPbjVBUURveUtpazZFQkFCUUFFdExZeFZWRkZUTFMwRUtpdGNURlZWank4dUFjMUFTa2w3SlNZSUFoRU5GZ0dEQ2hUK3JRd0ZCU2NnSHlrZVBSMGdJU0ZCSVNBaEFkWVJFQmIrZkVGTFRJSXVMUVpBQWhrWlRUQXZMZ0VGQlFVQkFBQUFBQU1BZ0FBd0E0QURVQUFXQUNJQU5nQUFBVFFtSXlJR0ZTTWlCaFVSRkJZeklUSTJOUkUwSmlNRk1oWVZGQVlqSWlZMU5EWUJJU0ltTlJFME5qc0JGU0UxTXpJV0ZSRVVCZ0tBT0VoSU9JQTFTMHMxQWdBMVMwczEvd0FTR1JrU0Voa1pBUkwrQUJvbUpocEFBWUJBR2lZbUF2QVlTRWdZU3pYK1FEVkxTelVCd0RWTEVSZ1JFUmdZRVJFWS9aRW1HZ0hBR2lhQWdDWWEva0FhSmdBQUFBQUNBSEFBTUFPUUExQUFLQUJBQUFBQkp6QTJOejRCRnpjbU56NEJOell4RmhjZUFSY1dGdzRCQnc0Qkp3Y2VBUmNXQmc4Qkp3Y25Od0VPQVI4QkJ5WUdCd0UrQVRjMkppYzNNQlkzSnpBR01RRlpsUVlQSVhFd1pRa1FFQ3dVRkNVa0pVa2xKU1FGQ3dVYVJTcHFBUUVDQXlndkdKcnBMZWtCQ0JFYUNoQ2dNR0lUQVNFQ0JBSWVCd2VhT2lUYUFRRkhsU2NWTFE4Sll4d2RIUzRQRHlVbEpFb2xKQ1VIRGdjakx3ZG5DUUViTTJBWURKcnFMdWtCdGc0bUR4ZWZEQUllL3Q4Q0F3SWFWaXlhRVNyWkFRQUFDZ0EvLy84RHdRT0JBQ2NBT3dCSEFHRUFad0J1QUhzQWhnQ01BSklBQUFFZUFSY1dGUllVQnhRSERnRUhCaU1HSWljaUp5NEJKeVkxSmpRM05EYytBVGMyTXpZeUZ6SVRJUkVXTXhZMk56WTNQZ0UzTmpjK0FTYzBKd0VVRmhVZUFSY3lGak0xSXdFSEp6Y2VBUmNISnhVT0FRY2pGd2NuTng0QkZ3Y1dOamMxQlJRV0ZUTTFKd1lVQnpNMUl6Y3FBU01pQmdjVUJoVXpOVE1sRlRNMEpqVXVBU2NpSmlVR0lnY1ZNemNtSWlNVk13TWtQbHdDQVFFQkFRSmNQa2xKU1pKSlNVazlYUUlCQVFFQkFsdytTVWxKa2tsSnFQMjZQVDA5ZWowOVBTUTFBZ0lDQVFFQkF2ejhBUUkxSkFnUUNId0NRUWt1VnhZckZpNEpBVncvZHdvdVZsWU1GZ3dMVVlJQi9id0JmbjBCQVg5OXZ4Z3VGeVU2QVFGOFFnSEhmUUVDTlNRSUVQN3pJVUVnZ3NNZ1FTR0NBNEFDWEQ1SlNVbVNTVWxKUGx3Q0FRRUJBUUpjUGtsSlNaSkpTVWsrWEFJQkFRSC9BUDI4QWdFQkFRSUNBalVrUFQwOGVqMDlQUDQ4Q1JFSUpEVUNBWDRCRmdvdVZoVXNGUzRLY3o5ZkFna3VWMWNNRmd3S0FSMUZjMVFoUUNDQndpRkFJWUwvT0NZWU1CbEJmMzhKRVFra05RSUJBZ0VCZjRBQmdRQUFBZ0NnQUdBRFlBTWdBQXNBRndBQUFTRVZJUkVqRVNFMUlSRXpCeEVoRlNFUk14RWhOU0VSQW1BQkFQOEF3UDhBQVFEQWdQOEFBUUJBQVFEL0FBSWd3UDhBQVFEQUFRQkEvd0JBL3dBQkFFQUJBQUFBQVFGZUFLa0NvZ0xYQUFjQUFBRUhGd2NKQVI0QkFxTHA2UzMrNlFFWEN4Y0NxZW5wTGdFWEFSY01GZ0FDQUFEL3dBUUFBOEFBR3dBM0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21CeklYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOZ0lBYWwxZGl5a29LQ21MWFYxcWFsMWRpeWtvS0NtTFhWMXFYVkZTZWlNakl5TjZVbEZkWFZGU2VpTWpJeU42VWxFRHdDZ3BpMTFkYW1wZFhZc3BLQ2dwaTExZGFtcGRYWXNwS0VBakkzcFNVVjFkVVZKNkl5TWpJM3BTVVYxZFVWSjZJeU1BQXdBQS84QUVBQVBBQUJzQU53QlRBQUFCSWdjT0FRY0dGUlFYSGdFWEZqTXlOejRCTnpZMU5DY3VBU2NtQnpJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmdFVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTXlGeDRCRnhZQ0FHcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtDZ3BpMTFkYWwxUlVub2pJeU1qZWxKUlhWMVJVbm9qSXlNamVsSlJBWjBaR1ZjNk8wSkNPenBYR1JrWkdWYzZPMEpDT3pwWEdSa0R3Q2dwaTExZGFtcGRYWXNwS0NncGkxMWRhbXBkWFlzcEtFQWpJM3BTVVYxZFVWSjZJeU1qSTNwU1VWMWRVVko2SXlQK1FFSTdPbGNaR1JrWlZ6bzdRa0k3T2xjWkdSa1pWem83QUFBQUFBSUFlUUNUQTRjQzdRQU9BQmtBQUFrQkp6Y2hOU0VuTnhZWEhnRVhGaVVYSVJVaEJ4YzNKdzRCQTRmKzBvMUEvbTBCazBDTkppWWxUQ1VtL3NhQS9oSUI3b0F5MDlNTUdnSEEvdE9OUU1CQWpTVW1Ka3NtSlhxQVFJQXowOU1OR1FBQUFBQUNBSUFBUUFPQUEwQUFEZ0FaQUFBQkVTRVJJeEVVRmpNaE1qWTFFU01GTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeVZmOEFianpWMVR4dVZnSEEvdFVCSy83Vkl6SXlJd0VySFc0ODFkVThiZ0dkL21NQUFRRHBBUjRERndKaUFBY0FBQWtDTnhjM0hnRURGLzdwL3VrdTZla01GZ0kxL3VrQkZ5M3A2UXNYQUFBQkFWNEFxUUtpQXRjQUJ3QUFBUWNYQndrQkhnRUNvdW5wTGY3cEFSY0xGd0twNmVrdUFSY0JGd3dXQUFFQlhnQ3BBcUlDMXdBTUFBQUpBU2MzSnpjV0Z4NEJGeFlYQXFMKzZTM3A2UzBqSXlORkl5TWpBY0QrNlM3cDZTNGpJeU5HSWlNakFBQUFBQUVBNlFFZUF4Y0NZZ0FMQUFBQkJ5Y0hKd0VXRng0QkZ4WURGeTdwNlM0QkZ5TWpJa1lqSXdGTExlbnBMUUVYSXlNalJTTWpBQUFBQVFEcEFPNERGd0tTQUFjQUFBa0JKemNYQVI0QkF4ZitpYmN1aVFGSkRCWUNaZjZKdHkySkFVa0xGd0FCQVY0QXFRS2lBdGNBREFBQUNRRW5OeWMzRmhjZUFSY1dGd0tpL3VrdDZla3RJeU1qUlNNakl3SEEvdWt1NmVrdUl5TWpSaUlqSXdBQUFBQUJBTUFCb0FOQUFlQUFBd0FBRXlFVkljQUNnUDJBQWVCQUFBQUFBUURwQVI0REZ3SmlBQWNBQUFrQ054YzNIZ0VERi83cC91a3U2ZWtNRmdJMS91a0JGeTNwNlFzWEFBQUJBQUFBQVFBQUVrdmhlVjhQUFBVQUN3UUFBQUFBQU5sQmo0MEFBQUFBMlVHUGpRQUEvOEFFQUFQQUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFQQS84QUFBQVFBQUFBQUFBUUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQTRCQUFBQUFBQUFBQUFBQUFBQWdBQUFBUUFBRDhFQUFCVEJBQUJLUVFBQUlBRUFBRFZCQUFBQUFRQUFBQUVBQUFBQkFBQWN3UUFBTUFFQUFEQUJBQUJYZ1FBQUtBRUFBRXBCQUFBUUFRQUFJWUVBQUVwQkFBQlhnUUFBRU1FQUFCREJBQUF3QVFBQVBVRUFBREFCQUFBUHdRQUFFTUVBQUQxQkFBQWVRUUFBR0FFQUFEeEJBQUF3QVFBQU1zRUFBQ0FCQUFCWGdRQUFFQUVBQUIyQkFBQWdBUUFBSEFFQUFBL0JBQUFvQVFBQVY0RUFBQUFCQUFBQUFRQUFIa0VBQUNBQkFBQTZRUUFBVjRFQUFGZUJBQUE2UVFBQU9rRUFBRmVCQUFBd0FRQUFPa0FBQUFBQUFvQUZBQWVBTUlCQmdFZUFZd0JxQUhxQWlRQ1dBS0dBcG9DdkFMU0F4NERQZ08yQkJJRUtnUklCUWdGcmdZQ0JpQUdhZ2NNQjdZSDJnZ0lDRklJY2dpTUNLNEl3Z2pnQ1F3SnhBb1VDbndMVkF0K0M1UUw2Z3hxREp3TXlBemVEUFFORWcwdURVUU5ZZzF3RFlZQUFBQUJBQUFBT0FDVEFBd0FBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFDQUFBQUFFQUFBQUFBQUlBQndCcEFBRUFBQUFBQUFNQUNBQTVBQUVBQUFBQUFBUUFDQUIrQUFFQUFBQUFBQVVBQ3dBWUFBRUFBQUFBQUFZQUNBQlJBQUVBQUFBQUFBb0FHZ0NXQUFNQUFRUUpBQUVBRUFBSUFBTUFBUVFKQUFJQURnQndBQU1BQVFRSkFBTUFFQUJCQUFNQUFRUUpBQVFBRUFDR0FBTUFBUVFKQUFVQUZnQWpBQU1BQVFRSkFBWUFFQUJaQUFNQUFRUUpBQW9BTkFDd1FXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Vm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2RDWVd4b1lXMEFRUUJuQUVJQVlRQnNBR2dBWVFCdFFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0VW1WbmRXeGhjZ0JTQUdVQVp3QjFBR3dBWVFCeVFXZENZV3hvWVcwQVFRQm5BRUlBWVFCc0FHZ0FZUUJ0Um05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJhbGhhbSB7XFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xcbiAgY29sb3I6ICMwMDA7XFxuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBmb250LXNpemU6IDEycHg7XFxuICBsaW5lLWhlaWdodDogMTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGhlbWUtYmFsaGFtLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgIG1hcmdpbjogNHB4O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICBwYWRkaW5nOiA0cHggOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA5MUVBO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XFxuICAgIGJvcmRlci1jb2xvcjogI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gKiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gKjpmb2N1cywgLmFnLXRoZW1lLWJhbGhhbSAqICo6YmVmb3JlLCAuYWctdGhlbWUtYmFsaGFtICogKjphZnRlciB7XFxuICAgICAgb3V0bGluZTogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogODRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzkycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDc2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUzMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNjE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNzAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogODEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogODY4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogODk2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTUycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk1MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDM2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA2NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDY0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNzgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA5MnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogODIwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE0OHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTQ4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctbGVmdDogODQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogODgwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIzMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjMycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTAwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkwMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyMHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTQwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTMxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMzE2cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTYwcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTM0NHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk4MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMzcycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hlY2tib3gsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94IGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94IGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwge1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1sZWFmLWluZGVudCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS1kZWx0YSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS1kb3duIHtcXG4gICAgY29sb3I6ICNlNTM5MzU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXZhbHVlLWNoYW5nZS12YWx1ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcHg7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzk1QTVBNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcXG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMTQ5LCAxNjUsIDE2NiwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzk1QTVBNjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNDksIDE2NSwgMTY2LCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y3O1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdyB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI0JEQzNDNztcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdzpub3QoLmFnLXJvdy1maXJzdCkge1xcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93LW9kZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2ZkZmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0YwRjE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjQkRDM0M3O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA5MUVBO1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICB3aWR0aDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1kaXNhYmxlZCB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1zaG9ydGN1dCB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3Ige1xcbiAgICAgIGhlaWdodDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNCREMzQzcnJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgd2lkdGg6IDI0cHg7XFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtLmFnLWRuZC1naG9zdCB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZzogMCA4cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3Qgc3BhbixcXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbS5hZy1kbmQtZ2hvc3QgLmFnLWRuZC1naG9zdC1pY29uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y1ZjdmNztcXG4gICAgbWluLXdpZHRoOiAyMjBweDtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWJvZHkge1xcbiAgICBwYWRkaW5nOiAycHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0IHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3Qge1xcbiAgICBtYXJnaW46IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInJhZGlvXFxcIl0ge1xcbiAgICBtYXJnaW46IDAgM3B4IDAgNnB4O1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxN3B4O1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItbGlzdCB7XFxuICAgIGhlaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYXBwbHktcGFuZWwgYnV0dG9uICsgYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIHtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IGF1dG87XFxuICAgICAgICAgICAgICAgIGZsZXg6IGF1dG87XFxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XFxuICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIgPiBkaXYge1xcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5LXdyYXBwZXIge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCB7XFxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1udW1lcmljLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhZ2luZy1wYW5lbCA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDE2cHg7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbiBidXR0b24ge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCAuYWctaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I3ZTRmZjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3Age1xcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tIHtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDA5MUVBOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtbGVmdCB7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDkxRUE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMik7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgODgsIDI1NSwgMC4xKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI1NSwgMTMyLCAwLjEpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNDUsIDIzNCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE0NSwgMjM0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuNik7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjODY5MTk4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0IHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzg2OTE5ODsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMDA5MUVBOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20uYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM4NjkxOTg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjODY5MTk4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctcmFuZ2UtaGFuZGxlIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB3aWR0aDogNnB4O1xcbiAgICBoZWlnaHQ6IDZweDtcXG4gICAgYm90dG9tOiAtMXB4O1xcbiAgICByaWdodDogLTFweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNzsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgICAgd2lkdGg6IDIwMHB4O1xcbiAgICAgIGhlaWdodDogMTgycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgICBwYWRkaW5nOiAwIDRweCAwIDEycHg7XFxuICAgICAgaGVpZ2h0OiAyOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGhlaWdodDogMjhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbTpob3ZlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNGMEYxOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93LXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjdlNGZmOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNztcXG4gICAgaGVpZ2h0OiAyOHB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAwLjU0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjZGRlNGU2O1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbjogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDAuNTQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAwLjg3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNldC1maWx0ZXItbGlzdCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLWRhdGEtY2hhbmdlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDE2MCwgMTMzLCAwLjUpICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZmxvYXRpbmctdG9wLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtYmFsaGFtIC5hZy1mbG9hdGluZy1ib3R0b20gLmFnLXJvdyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1uYW1lLXZhbHVlLXZhbHVlIHtcXG4gICAgY29sb3I6ICMwMDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7XFxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2lkZS1idXR0b24gYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYm9yZGVyOiAwO1xcbiAgICAgICAgY29sb3I6ICMwMDA7XFxuICAgICAgICBwYWRkaW5nOiA4cHggMCA4cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogNzJweDtcXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDA7XFxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctc2lkZS1iYXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBtaW4taGVpZ2h0OiA1MHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gICAgcGFkZGluZzogMHB4O1xcbiAgICBib3JkZXI6IDAgc29saWQgI2NiZDBkMztcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtbGFiZWwgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZSwgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVlZWY7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBoZWlnaHQ6IDI2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gZGl2IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIgLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgICBkaXNwbGF5OiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRvb2xiYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY1ZjU7XFxuICAgICAgcGFkZGluZzogNHB4O1xcbiAgICAgIGJvcmRlcjogMCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogMnB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1zbGlkZXIgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgdG9wOiA0cHg7XFxuICAgIGxlZnQ6IDEycHg7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcXG4gICAgbWFyZ2luLXRvcDogLTRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM0YzRjOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3RjhDOEQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTZweDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzdGOEM4RDtcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgPiBkaXYge1xcbiAgICAgIHdpZHRoOiAxNnB4O1xcbiAgICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIGJ1dHRvbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWNvbG9yIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdmFsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWUge1xcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2OmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0uYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFuZWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgICAuYWctZHJhZ2dpbmctcmFuZ2UtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsLmFnLWRpYWxvZyB7XFxuICAgICAgb3BhY2l0eTogMC43O1xcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWRjZGU7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgaGVpZ2h0OiAzMnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOmhvdmVyLCAuYWctdGhlbWUtYmFsaGFtIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkN2UwZTI7IH1cXG4gICAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgaGVpZ2h0OiAzMHB4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY3Zjc7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRvb2x0aXAge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2JkMGQzO1xcbiAgICBjb2xvcjogIzAwMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNjYmQwZDM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIG1hcmdpbjogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoMm4gKyAyKTpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoM24pIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwuYWctc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwOTFFQTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjMDAwO1xcbiAgICBmb250LXNpemU6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbS5hZy1zZWxlY3RlZCB7XFxuICAgICAgY29sb3I6ICMwMDkxRUE7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1mb3JtYXQgLmFnLWNoYXJ0LWZvcm1hdC13cmFwcGVyIC5hZy1ncm91cC1pdGVtIHtcXG4gICAgbWFyZ2luOiA0LjhweCAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRCYWxoYW1cXFwiO1xcbiAgICBzcGVhazogbm9uZTtcXG4gICAgZm9udC1zaXplOiAxNnB4O1xcbiAgICBjb2xvcjogIzdGOEM4RDtcXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1hZ2dyZWdhdGlvbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWFzYzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNhbmNlbDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2xvci1waWNrZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2x1bW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY29udHJhY3RlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNvcHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWN1dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWRhdGE6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tZXhwYW5kZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTExXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1leWUtc2xhc2g6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1maWx0ZXI6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1maXJzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1ncm91cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWxvYWRpbmc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW1lbnU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1taW5pbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tbmV4dDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLW5vbmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXBhc3RlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcGluOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1wbHVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcHJldmlvdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tc21hbGwtZG93bjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXNtYWxsLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXNtYWxsLXVwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdGljazpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzBcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdHJlZS1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tdHJlZS1vcGVuOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgb3BhY2l0eTogMC4zODsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICMwMDkxRUE7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaWNvbi1yb3ctZHJhZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiAjMDA5MUVBOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMTJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0JEQzNDNztcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJ0bCAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIzMnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyOHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI5OHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjhweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTZweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTFFQSAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiA4MCU7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctaGVhZGVyLWdyb3VwLWNlbGw6OmFmdGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgxODksIDE5NSwgMTk5LCAwLjUpO1xcbiAgICBjb250ZW50OiBcXFwiIFxcXCI7XFxuICAgIGhlaWdodDogMTZweDtcXG4gICAgbWFyZ2luLXRvcDogOHB4O1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRleHQtaW5kZW50OiAtMjAwMHB4O1xcbiAgICB0b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWx0ciAuYWctaGVhZGVyLWNlbGw6OmFmdGVyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbHRyIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDo6YWZ0ZXIge1xcbiAgICByaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1oZWFkZXItY2VsbDo6YWZ0ZXIsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLWhlYWRlci1ncm91cC1jZWxsOjphZnRlciB7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkRDM0M3O1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1sdHIgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3AuYWctd2lkdGgtaGFsZjpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wLmFnLXdpZHRoLWhhbGY6Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcm93IHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZDlkY2RlOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBib3JkZXItY29sb3I6ICNiN2U0ZmY7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtaW4taGVpZ2h0OiAyNHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y3O1xcbiAgICBoZWlnaHQ6IDMycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtY2VsbC10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0JEQzNDNzsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcXG4gICAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1ydGwgLmFnLXNpZGUtYmFyLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1pY29uLWV4cGFuZGVkLFxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctcnRsIC5hZy1pY29uLWNvbnRyYWN0ZWQge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctbWVudS1vcHRpb24ge1xcbiAgICBoZWlnaHQ6IDI4cHg7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAgIC5hZy10aGVtZS1iYWxoYW0gLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmFsaGFtIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctdGFiLWJvZHksXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1wb3B1cC1lZGl0b3IsXFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1tZW51IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGNvbG9yOiAjMDAwOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcge1xcbiAgICBoZWlnaHQ6IDI4cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWRldGFpbHMtcm93IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLW92ZXJsYXktbG9hZGluZy13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCREMzQzc7XFxuICAgIGNvbG9yOiAjMDAwO1xcbiAgICBwYWRkaW5nOiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNDUsIDIzNCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJhbGhhbSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE0NSwgMjM0LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTQ1LCAyMzQsIDAuNik7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCREMzQzc7IH1cXG4gIC5hZy10aGVtZS1iYWxoYW0gLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQkRDM0M3OyB9XFxuICAuYWctdGhlbWUtYmFsaGFtIC5hZy1maWx0ZXItdG9vbHBhbmVsLWJvZHkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZENsYXNzaWNcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadDZzb2E0QUFBRjRBQUFVNEdobFlXUVZvMk92QUFBV1dBQUFBRFpvYUdWaEI4UUQrQUFBRnBBQUFBQWthRzEwZU5ZQUdGa0FBQmEwQUFBQTRHeHZZMkdhaEpWNkFBQVhsQUFBQUhKdFlYaHdBRVVBWFFBQUdBZ0FBQUFnYm1GdFpSSEJiQ1VBQUJnb0FBQUJubkJ2YzNRQUF3QUFBQUFaeUFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFMWUFRQU5LQTBBQUNnQUFBU0VYQnlFVklSTURJUlVEU3Y2VGVYa0JiZjFzM053Q2xBS1YxZFdyQVlBQmdLc0FBQUFBQVFBQS84QUVBQVBBQUNFQUFBRTFCeWMzRndjbkVTRW5OeGNISnpjaEVUY1hCeWMzRnhFaEZ3Y25OeGNISVJFQnpWSkl6YzFJVWdFSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKQXZNSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKVWtqTnpVaFNBUUFBQUFBQUFRQ1dBQjREYWdOaUFCQUFBQUVISndFV0Z4NEJGeFlYQnljUkl4RXhBYTZ4WndGcUxTNHRXaTR0TFdld3BRSkNzV2NCYWk0dExWc3RMUzFuc1AzZEFpUUFBQUFCQVFBQXdBTUFBc0FBQ3dBQUFRY25CeWMzSnpjWE54Y0hBd0JJdUxoSXVMaEl1TGhJdUFFSVNMaTRTTGk0U0xpNFNMZ0FCUUFCLzc0RC93UEJBQThBSHdBakFDY0FMQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJNeEVqSlRNVkl3TXpFU01SQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDJhVlZVQlZWVlZxMVpXUWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL3F2KzFxcXFBYXIrVmdHcUFBQUFBd0FCLzc0RC93UEJBQThBSHdBcEFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdjQkp6Y1hFeDRCRnpFRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZYlA3by9UV3U2QkltRWdQQlN6WDgvVFZMU3pVREF6VkxWeGdSL1A4UkdSa1JBd0VSR0w3OS9zcERpd0dvQ2hRS0FBQUFBQU1BQWYrK0EvOER3UUFQQUI4QUl3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRElUVWhBMzgxUzBzMS9RSTFTMHMxQXYvOC9oRVlHQkVEQWhFWUdPYitxZ0ZXQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL2dHcUFBQUFBZ0FCLzc0RC93UEJBQThBSHdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVlBQU1BY3dCSUE0MERPQUFHQUFvQUZ3QUFDUUVIRndrQ0lUY1hJUVV3QmhVVUZqTXlOalUwSmpFQy9mNVZQR2IrOXdGRkFVWDk3OHpNL21nQ1RGVXlJeU15VlFHTkFhczhadjczL3JzQlJjM05RR3NxSXpJeUl5cHJBQUFBQWdCVkFCVUJxd05yQUFNQUJ3QUFBUkVoRVFFVklUVUJxLzZxQVZiK3FnSnIvYW9DVmdFQXE2c0FBQUFHQUZVQUZRT3JBMnNBQXdBSEFBc0FEd0FUQUJjQUFDVVZJVFVoRlNFMUF4VWhOU0VWSVRVREZTRTFJUlVoTlFHci9xb0RWdjZxcXY2cUExYitxcXIrcWdOVy9xckFxNnVycXdGVnFxcXFxZ0ZXcTZ1cnF3QUFBd0FCLzc0RC93UEJBQThBSHdBakFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdNVklUVURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWtmNEFBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvcXVxcWdBQUFBQURBS3NBYXdOVkF4VUFCd0FNQUJJQUFBRXpFU0UxSXhFaEV5RVJJUkVuTlNFUk14RUNxNnIrQUtvQ0FGWCtxd0ZWcS82clZRSnIvZ0NxQWdEL0FQNnJBVlZXVmY2ckFRQUFBQUFBQVFCdUFDNERrZ05TQUEwQUFBa0JIZ0VYQ1FFSENRRW5DUUUzQWdBQkdSNDlIdjduQVJsNS91Zis1M2tCR2Y3bmVRSTVBUmtlUFI3KzUvN25lUUVaL3VkNUFSa0JHWGtBQXdCNEFOVURud0xoQURnQVJ3QmFBQUFCTmpjK0FUYzJGeDRCSHdFR0J3NEJCd1lIRmhjZUFSY1dGdzRCSnk0Qkp3NEJCd1luTGdFbkpqYytBVGN1QVRjK0FSY2VBUmNlQVJjSEJnY09BUWNHTno0Qk56QTJCekVuSWdZSERnRUhCaGNlQVJjV0Z6Y3VBU014QWhvbUpTWkdJQ0VkRUJ3Tk55QWdJRUFoSUNBZ0lTQkFJQ0FnTm0xSklrb2hPM3hDSHlVbU93OFBEZzFES0VCTUdCQTlNVDFzTmhBaEVKc25LeXMyQVFJdEkwUWtBd1dPQkFrRkF3VURGdzBNUGljbkhnRWxUaDBDT1NFZUh5OE9EZ0VCQ1FjaEd4c2JOeHdiR3hvWkdqUWFHaG9oRGpZWk54a3NUQjBPQWdJaUhoNHFLemtUSW5BMEl5TUJCRTRtREJnTWtBRVZGVEVURXdJQk5CZzBBZU1DQVFFREFROFVGU1VPRFFFekdqUUFBQUFBQndBeUFDY0R6Z05aQUFzQUR3QWJBQjhBS3dBd0FEMEFBRGNpQmhVVUZqTXlOalUwSmlrQkZTRUJJZ1lWRkJZek1qWTFOQ1loRlNFMUJ6SVdGUlFHSXlJbU5UUTJBUlVoTlNFaE1oWVZGQVlqSWlZMU5EWXpuUzArUGkwc1BqNERCZjFWQXF2OHp5MCtQaTBzUGo0REJmMVZoaDRzTEI0ZkxDd0RVUDFWQXF2OHp5dytQaXd0UGo0dC9ENHNMVDQrTFN3KzFRSUVQeXdzUHo4c0xEL1cxaUFzSHg4c0xCOGZMQUZPMWRVK0xTdytQaXd0UGdBQUFBRUFsZ0FqQTJvRFhRQUpBQUFCRVRNUk54Y0pBVGNYQWEra3NHZitsdjZXWjdJQlF3SWEvZWV3Wi82V0FXcG5zUUFBQUFBREFBSC93UVFCQThFQUVBQWdBQ3dBQUFFeUZoVVJGQVlqSVNJbU5SRTBOak1oRnlFaUJoVVJGQll6SVRJMk5SRTBKZ0V6RlNNVkl6VWpOVE0xTXdPQU5VeE1OZjBCTlV0TE5RTC9BZnorRWhnWUVnTUNFUmdZL3NTcnE2dXJxNnNEd1VzMS9RQTFTMHMxQXdBMVMxY1lFZjBCRVJnWUVRTC9FUmorcktxcXFxcXJBQUFEQUNJQWRnUGVBd29BSWdCSUFGTUFBQUUzRno0Qk14WVhIZ0VYRmhjT0FRY1hCeWMzQVQ0Qk56WXlNeVkwTlNNaUJnY25CeE1tSnk0Qkp5WW5EZ0VIRmhjZUFSY1dOeGNHQndZbUp5WW5KaWN1QVNjbUp6NEJOekVCUGdFM01DWW5EZ0VIRndFb05TY2dRaU5JUWtKM05ETXJLbTlBTjBNaER2N01IajhlQ2hRTEFRczFhekpRTXVzcUpTVTZGQlFISXo0YUpqRXljejgvUHpRdUx5OWZMeTh1SWg0Zk5oa1lGeXRxUHdIakxrd2dQemtMUGl4VEF1RXBNZ2tLQWhjWFVEWTJQejVySjBVMUtRd0Jod2NGQVFFVkt4VUtFR1pLL3RZRkVSSTNKQ1FwR2o4a05Da3FPQXdNQ0VFT0JRVUpFQThiRlJvWk95QWdJajl2S2Y2UUhVc3JVQzAxVmh0cUFBQUFBd0FpQUprRDNnTG9BQnNBT3dCS0FBQUJGaGNlQVJjV0Z3WUhEZ0VuSmljbUp5NEJKeVluTmpjK0FUYzJCdzRCQnhZWEhnRTNOamMrQVRjd0ppY0dCdzRCQndZaklpY3VBU2NtSnpFbEpqUTFJdzRCQnhjK0FUYzZBVE1DQ1VoQ1FuYzBNeXM3VlZYRmFXbGpJaDRmTmhrWUZ5bzFOSHRHUmJjalBob3dSRVNjVWxOTk1WRWlQemtKRnhkREtTb3VMeW9yUWhjWENBRlNBUXRFaHp3bExtWXhDaFFMQXVnQ0Z4ZFBOalpBVjBWRlNBVUVQQlFhR2pvaElDRS9OemRSRnhldkdVQWtRakV5TVFZRkxSeFBMbEFzTENVbE53OFFFQkE1Smljc0F4WXJGUUVSSFUwV0RnSUFBQUFDQUZVQVFBT3JBMEFBQmdBTEFBQVRJUUVSSnhFQkFSVXpOU05WQTFiK3FxcitxZ0ZXcXFvRFFQNnIvbFdyQVFBQlZmNnJWbFlBQUFJQThnREFBdzRDd0FBREFBa0FBQUVSSXhFQkp6Y25DUUVCUjFVQ0hNZkhPZjhBQVFBQ3dQNEFBZ0QrT2NmSE9mOEEvd0FBQUFBQURBQ3IvK3NEVlFPVkFBTUFCd0FMQUE4QUV3QVhBQnNBSHdBakFDY0FLd0F2QUFBM014VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlFak5UT3JxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFhcXFxcFdxcXFxcXFnR3FxcXFxcXFvQnFxcXFxcXFxQWFxcXFxcXFBQUFBQUFVQVZmL3JBNnNEbFFBZkFDTUFLQUFzQURBQUFBRXpOU0VSSVRVakZTTVZJVFVoRVNFMUlSRWhOU0VSSVRVaEVTTVJJUlV4QVNNVk14RWpGVE0xRVNNVk15VWpGVE1CcTZvQlZ2NnFxcXNCVlFGVy9xcitxd0ZWQVZiK3F2NVdWZ0ZXQWFxcXFxcXFxcXIrQUtxcUEwQlYvd0JXVnFwVi93QlYvd0JXL3dCVkFsVUJBRlg5VlZVQnExWldBVlZWVlZVQUFBQURBQmtCRVFQbkFwTUFGZ0F0QUR3QUFBRVdGeDRCRnhZZkFRWUhEZ0VuSmk4Qk5qYytBVGMyQlE0Qkl5SW1KdzRCRHdFV0Z4NEJOelkvQVM0Qkp6RUhKalExSXc0QkJ4YytBVGMyTWpNQ0NENDhQSEl6TkN3a1hucDUvM3g3WXlReE9qbCtSRU1CTFJ5QlVsS0JIQ0U5SEFOS1hsN0ZYMTlNQXh3L0lwa0JDMFNIUENVdVpqRUtGQXNDa3dFTURDMGhJQ3NrWFRVMUR5b3BYeVF5SnlnM0R3K0lSMXhjUnc0bUZ3TS9JQ0VCSUI5QUFoZ29EaU1WS3hVQkVCNU1GZzBDQVFBQUFnRHlBTUFERGdMQUFBTUFDZ0FBSlNNUk13RTNKemNKQVNjRERsVlYvZVRIeHprQkFQOEFPY0FDQVA0NXg4YzUvd0QvQURrQUFBQUJBRXNBVmdPMUF5b0FDd0FBQVJjSENRRWVBUmNISVJVaEFXK3RaLzZXQVdvWk5CcXZBa2o5dWdGcXJXY0JhZ0ZxR2pNYXJxc0FBQUlBVlFBVkE2c0Rhd0FjQUNjQUFBRTNGd2N6RlNNZUFSY0hKeFVqTlFjbk55TTFNeWMzSGdFWE5UTVZBek0zTlNjakJ4VWVBUmNDVlp4NW5OM2RKMDRuZVp5cW5IbWMzZDJjZVNkT0o2cWNqbVJram1RWk1oa0NqcHg1bktvblRpZDVuTjNkbkhtY3FweDVKMDRuM2QzK2gyU09aR1NPR1RJWkFBQUVBQUgvdmdQL0E4RUFEd0FmQUNjQUx3QUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQkJ6Y1hOeGNIRndFM0J4Y0hGemNYQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDNnNDBneW56bWZNQUczU3VVeG9EbWdNVUpMTlFNRE5VdExOZno5TlVzRHJCZ1IvUDhSR1JrUkF3RVJHUDB0U2VReG56bWZNUUczNVVreW9EbWdNUUFEQUZVQUZRT3JBMnNBQXdBSEFBc0FBQ1VWSVRVQkZTRTFBUlVoTlFPci9Lb0RWdnlxQTFiOHFzQ3Jxd0ZWcXFvQlZxdXJBQUFBQUFRQUFmKytBLzhEd1FBUEFCOEFKd0F2QUFBRklTSW1OUkUwTmpNaE1oWVZFUlFHQXlFaUJoVVJGQll6SVRJMk5SRTBKZ0UzQnljSEp6Y25BUWMzSnpjbkJ5Y0RmLzBDTlV0TE5RTCtOVXRMTlB6K0VSZ1lFUU1DRVJnWS9XemtTVEtmT1o4d0FXeEo1REdmT1o4eFFrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9lNUo1REdnT2FBeEFXemtTVEdnT2FBeEFBRUFxd0ZyQTFVQ0ZRQURBQUFUSVJVaHF3S3EvVllDRmFvQUFBQUJBV1FBd0FLY0FzQUFCUUFBSlRjbk53a0JBV1RIeHpnQkFQOEErY2ZIT2Y4QS93QUFBQUFBQVFEUy85WURMZ09xQUJRQUFBRUhKd0VXRng0QkZ4WVhCeWNSTnhjSkFUY1hFUUdsYkdjQkxpWWxKa3dsSmlabmJHeG4vdEwrMG1kc0FvRnNad0V1SmlVbVRDVW1KbWRzL241c1ovN1NBUzVuYkFHQ0FBQUFBQU1BQWYrL0JBQUR3Z0FjQUNvQU9RQUFBVElYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOak1GQVI0Qk16STNQZ0UzTmpVMEppY3VBU01pQnc0QkJ3WVZGQllYQVFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxQVZIOXFUYUdTbGhPVG5RaElqQjBONFpLV0U1T2N5SWhMeXNDVndQQ0tDbUxYbDFxYTExZGpDZ3BLU2lNWFYxcmFsMWVpeWtvKy8ycEtqQWlJWFJPVFZsS2hZRXFNQ0VpZEUxT1dFdUdOZ0pYQUFBQ0FLc0FRQU5WQTBBQUNBQVNBQUFCSVJFaEVTRTFNeFVYSXhVaE5TTVJJUkV4QWxVQkFQMVdBUUNxcTFYK3FsVUNBQUxyL1ZVQ3ExVlZWcXFxL2dBQ0FBQUFBQUVBcXdBVkExVURGUUFQQUFBQkl4RVhJUXNCSVRjMU14RWpOU0VWQXdCVnF2OEFWVlgvQUtwV3F3SUFBc0QrcTFiL0FBRUFWbFVCQUZWVkFBVUFBZisrQS84RHdRQVBBQjRBSmdBOEFFUUFBQVVoSWlZMUVUUTJNeUV5RmhVUkZBWUJOU01pQmhVUkZCWTdBUkVqTlRNRklSRWhNalkxRVE4Qkp6Y2VBUmNISnhVakZ3Y25OeDRCRndjek5URVRJUlVoTlRRbUl3Ti8vUUkxUzBzMUF2NDFTMHY5VElJUkdCZ1JncXVyQXFuOXJBSXJFUmorRFR4ekhUb2RQUXpFRFQxemN4QWVEdzF2MWYzVkFsUVlFVUpMTlFNRE5VdExOZno5TlVzREFxb1lFZnovRVJrQ1ZWVlYvYXNaRVFJcjV3MDljeDA2SEQwTnhBdzlkSE1QSGc4TmJ3SG1xb0VSR0FBQUFBQUJBS3NBYXdOVkF4VUFDd0FBRXlFUk14RWhGU0VSSXhFaHF3RUFxZ0VBL3dDcS93QUNGUUVBL3dDcS93QUJBQUFCQVdRQXdBS2NBc0FBQlFBQUpTYzNKd2tCQXB6SHh6ai9BQUVBK2NmSE9mOEEvd0FBQUFBQUFnQUIvNzhFQUFQQ0FCd0FPUUFBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNVk1oY2VBUmNXRlJRSERnRUhCaU1pSnk0Qkp5WTFORGMrQVRjMk13SUFhbDFkaXlnb0tDaUxYVjFxYWwxZGl5Z3BLU2lMWFYxcVdFNU9kQ0VpSWlGMFRrNVlXRTVPY3lJaElTSnpUazVZQThJb0tZdGVYV3ByWFYyTUtDa3BLSXhkWFd0cVhWNkxLU2hYSVNKMFRVNVlXVTFPZENFaUlpRjBUazFaV0U1TmRDSWhBQUFEQUFIL3Z3UUFBOElBSEFBNUFGWUFBQUV5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6RlNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNQkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpNaGNlQVJjV0ZRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcVdFNU9jeUloSVNKelRrNVlXRTVPZENFaUlpRjBUazVZQVFBVUZFVXZMelUxTHk1R0ZCUVVGRVl1THpVMUx5OUZGQlFEd2lncGkxNWRhbXRkWFl3b0tTa29qRjFkYTJwZFhvc3BLRmNoSW5STlRsaFpUVTUwSVNJaUlYUk9UVmxZVGsxMElpSCtWalV2TDBVVUZCUVVSUzh2TlRVdUwwWVVGQlFVUmk4dU5RQUFBQUVBU3dCV0E3VURLZ0FQQUFBQkp6Y1dGeDRCRnhZWEFTYzNJVFVoQXBLdVp5MHRMVnN0TFM3K2xtZXQvYm9DUndJVnJtY3RMUzVhTFM0dC9wWm5yYXNBQUFBQUFnQ0FBRUFEZ0FOQUFBMEFHQUFBQVJFaEVTTVJGQll6SVRJMk5SRUZOeGNISnpjWEVUTVJNUU1yL2FwVk1pTUNWaU15L3F0dVBOWFZQRzVXQWNEKzFRRXIvdFVqTWpJakFTc2RianpWMVR4dUFaMytZd0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUZWQUdzQ3F3TVZBQU1BQUFrQkVRRUJWUUZXL3FvQndBRlYvVllCVlFBQkFWVUFhd0tyQXhVQUF3QUFDUUlSQVZVQlZ2NnFBeFgrcS82ckFxb0FBQUVBcXdFVkExVUNhd0FEQUFBVENRRWhxd0ZWQVZYOVZnRVZBVmIrcWdBQUFRQkVBR1lEdkFNYkFBa0FBQWtDTnhjQkhnRVhNUU84L2NUK3hIakVBY1FlUEI0Q292M0VBVHg0d3dIRUh6d2VBQUFBQUFFQlZRQnJBcXNERlFBREFBQUpBaEVCVlFGVy9xb0RGZjZyL3FzQ3FnQUFBUUNyQVdzRFZRSVZBQU1BQUJNaEZTR3JBcXI5VmdJVnFnQUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRQUFBQUVBQVBRZmZROWZEenoxQUFzRUFBQUFBQURaUVkrWkFBQUFBTmxCajVrQUFQKytCQUVEd2dBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBLy84RUFRQUJBQUFBQUFBQUFBQUFBQUFBQUFBQU9BUUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQzJCQUFBQUFRQUFKWUVBQUVBQkFBQUFRUUFBQUVFQUFBQkJBQUFBUVFBQUhNRUFBQlZCQUFBVlFRQUFBRUVBQUNyQkFBQWJnUUFBSGdFQUFBeUJBQUFsZ1FBQUFFRUFBQWlCQUFBSWdRQUFGVUVBQUR5QkFBQXF3UUFBRlVFQUFBWkJBQUE4Z1FBQUVzRUFBQlZCQUFBQVFRQUFGVUVBQUFCQkFBQXF3UUFBV1FFQUFEU0JBQUFBUVFBQUtzRUFBQ3JCQUFBQVFRQUFLc0VBQUZrQkFBQUFRUUFBQUVFQUFCTEJBQUFnQVFBQUtzRUFBRlZCQUFCVlFRQUFLc0VBQUJFQkFBQlZRUUFBS3NFQUFDckFBQUFBQUFLQUJRQUhnQTRBSFFBbGdDd0FQZ0JQQUYyQWFnQjFnSHNBaGdDVWdKNEFwd0RMQU9JQTZJRDVBUnFCT0FFL0FVWUJXZ0ZzZ1lVQmpBR1RBYUtCdGdHOUFkQ0IxQUhaQWVRQit3SURnZ3NDSlFJckFqQUNSZ0ptZ204Q2VnSitBb0lDaGdLS0FwQ0NsSUtZQXB3QUFBQUFRQUFBRGdBV3dBTUFBQUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0QXJnQUJBQUFBQUFBQkFBa0FBQUFCQUFBQUFBQUNBQWNBY2dBQkFBQUFBQUFEQUFrQVBBQUJBQUFBQUFBRUFBa0Fod0FCQUFBQUFBQUZBQXNBR3dBQkFBQUFBQUFHQUFrQVZ3QUJBQUFBQUFBS0FCb0FvZ0FEQUFFRUNRQUJBQklBQ1FBREFBRUVDUUFDQUE0QWVRQURBQUVFQ1FBREFCSUFSUUFEQUFFRUNRQUVBQklBa0FBREFBRUVDUUFGQUJZQUpnQURBQUVFQ1FBR0FCSUFZQUFEQUFFRUNRQUtBRFFBdkVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFabGNuTnBiMjRnTVM0d0FGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNRUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMEZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMUpsWjNWc1lYSUFVZ0JsQUdjQWRRQnNBR0VBY2tGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBadmJuUWdaMlZ1WlhKaGRHVmtJR0o1SUVsamIwMXZiMjR1QUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWJsdWUge1xcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gIGNvbG9yOiAjMjIyMjIyO1xcbiAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgZm9udC1zaXplOiAxNHB4O1xcbiAgbGluZS1oZWlnaHQ6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUsIC5hZy10aGVtZS1ibHVlIC5hZy10aGVtZS1ibHVlLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIC5hZy10YWIuYWctdGFiLXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmNmY2ZjYgIWltcG9ydGFudDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAqOmZvY3VzLCAuYWctdGhlbWUtYmx1ZSAqICo6YmVmb3JlLCAuYWctdGhlbWUtYmx1ZSAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWJsdWUgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1ibHVlIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1ibHVlIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmx1ZSAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCwgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1sZWFmLWluZGVudCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtZG93biB7XFxuICAgIGNvbG9yOiBkYXJrcmVkOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFweDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6ZGlzYWJsZWQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGVkZTtcXG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTljZDM7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxuICAgIGNvbG9yOiB3aGl0ZTtcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1waW5uZWQtcmlnaHQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICM5YmMyZTY7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LmFnLXJvdy1sYXN0IHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LW9kZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWViZjc7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ob3Jpem9udGFsLXJpZ2h0LXNwYWNlciB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzliYzJlNjtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlYmViZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSB7XFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICBjdXJzb3I6IGNvbC1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjNweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7XFxuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xcbiAgICBjdXJzb3I6IGdyYWI7XFxuICAgIG1pbi13aWR0aDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1yZXNpemUge1xcbiAgICB3aWR0aDogOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XFxuICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1tZW51IC5hZy1tZW51LXNlcGFyYXRvciB7XFxuICAgICAgaGVpZ2h0OiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjM5QkMyRTYnJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUuYWctZG5kLWdob3N0IHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgY29sb3I6ICMyMjIyMjI7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZS5hZy1kbmQtZ2hvc3Qgc3BhbixcXG4gICAgLmFnLXRoZW1lLWJsdWUuYWctZG5kLWdob3N0IGRpdiB7XFxuICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgbWluLXdpZHRoOiAyMjBweDtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWhlYWRlciAuYWctdGFiIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBoZWlnaHQ6IDE2cHg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0IHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpmaXJzdC1jaGlsZCA+IHNwYW4ge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiAuYWctbWVudS1vcHRpb24tcG9wdXAtcG9pbnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1zZWxlY3QsIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIC5hZy1maWx0ZXItYm9keSB7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1maWx0ZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInJhZGlvXFxcIl0ge1xcbiAgICBtYXJnaW46IDAgM3B4IDAgNnB4O1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxN3B4O1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItbGlzdCB7XFxuICAgIGhlaWdodDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSB7XFxuICAgIGhlaWdodDogMjBweDtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsdGVyIC5hZy1maWx0ZXItaGVhZGVyLWNvbnRhaW5lcjpudGgtY2hpbGQoMikge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciB7XFxuICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIHtcXG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcXG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAgICAgLW1zLWZsZXg6IGF1dG87XFxuICAgICAgICAgICAgICAgIGZsZXg6IGF1dG87XFxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XFxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XFxuICAgICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyIHtcXG4gICAgICAgICAgcGFkZGluZzogMCA1cHg7IH1cXG4gICAgICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5LXdyYXBwZXIge1xcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWFpciB7XFxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtbGlzdCB7XFxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1udW1lcmljLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtbGFiZWwgLmFnLWhlYWRlci1pY29uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmc6IDAgMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMzQsIDM0LCAzNCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIHNwYW4ge1xcbiAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEzNSwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTYwLCAxMDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIwLCAxMjAsIDEyMCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MCwgODAsIDgwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNDk5MGQyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM0OTkwZDI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzQ5OTBkMjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjNDk5MGQyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsbC1oYW5kbGUsIC5hZy10aGVtZS1ibHVlIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiAzN3B4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgcGFkZGluZzogMCA0cHggMCAxMnB4O1xcbiAgICBoZWlnaHQ6IDI1cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXJvdyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M3OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIGJ1dHRvbiB7XFxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgd2lkdGg6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1sZWZ0LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2RkZWJmNztcXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcXG4gICAgbWluLWhlaWdodDogMTZweDtcXG4gICAgcGFkZGluZzogMCAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBoZWlnaHQ6IDcwcHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbTpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNldC1maWx0ZXItbGlzdCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgPiAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jZWxsLWRhdGEtY2hhbmdlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWMgIWltcG9ydGFudDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1yb3ctc3R1YiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc3R1Yi1jZWxsIC5hZy1sb2FkaW5nLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtYmx1ZSAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNSk7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZGV0YWlscy1yb3cge1xcbiAgICBwYWRkaW5nOiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDA7XFxuICAgICAgICB3aWR0aDogMTAwJTtcXG4gICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcycHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6ICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1zaWRlLWJhciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkICNhZmNlZWI7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1sYWJlbCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLCAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgaGVpZ2h0OiAyNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiBkaXYge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdG9vbGJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcXG4gICAgICBwYWRkaW5nOiA0cHg7XFxuICAgICAgYm9yZGVyOiAwIHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIHtcXG4gICAgICBtYXJnaW46IDJweCAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1ibHVlIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XFxuICAgICAgYm9yZGVyLXJhZGl1czogNTAwcmVtO1xcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAxMnB4KTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciA+IGRpdiB7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1kaWFsb2cuYWctY29sb3ItZGlhbG9nIHtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwge1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRvb2xzIHtcXG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2F0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSh3aGl0ZSksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1kcmFnZ2VyIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0taHVlLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLWh1ZS1hbHBoYSB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcXG4gICAgICBoZWlnaHQ6IDExcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tc2xpZGVyIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcXG4gICAgICB3aWR0aDogMTNweDtcXG4gICAgICBoZWlnaHQ6IDEzcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTNweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWU6Zm9jdXMge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZDc3ZTQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdiB7XFxuICAgICAgbWFyZ2luOiAwIDNweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpsYXN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUuYWctcG9wdXAgPiBkaXY6bm90KC5hZy10b29sdGlwLWN1c3RvbSkge1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YmMyZTY7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsLmFnLWRpYWxvZyB7XFxuICAgICAgb3BhY2l0eTogMC43O1xcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU5Y2QzO1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzRkYmYwO1xcbiAgICAgIGNvbG9yOiB3aGl0ZTtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIC5hZy1pY29uIHtcXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzgzYzc7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlOWNkMztcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSA+IHNwYW46aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgybiArIDIpOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbC5hZy1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjMjIyMjIyO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdCAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICBtYXJnaW46IDQuOHB4IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICMzMzM7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHkge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQge1xcbiAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJpZ2h0LWFycm93OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJsdWUgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBkaXYsIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5YmMyZTY7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ibHVlIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5zYXNzLXZhcmlhYmxlczo6YWZ0ZXIge1xcbiAgICBjb250ZW50OiAneyBcXFwiYXV0b1NpemVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwiaGVhZGVySGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JvdXBQYWRkaW5nU2l6ZVxcXCI6IFxcXCIyNHB4XFxcIiwgXFxcImZvb3RlclBhZGRpbmdBZGRpdGlvblxcXCI6IFxcXCIxNnB4XFxcIiwgXFxcInZpcnR1YWxJdGVtSGVpZ2h0XFxcIjogXFxcIjIwcHhcXFwiLCBcXFwiYWdnRnVuY1BvcHVwSGVpZ2h0XFxcIjogXFxcIjcwcHhcXFwiLCBcXFwiY2hlY2tib3hJbmRlbnRXaWR0aFxcXCI6IFxcXCIxNnB4XFxcIiwgXFxcImxlYWZOb2RlUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcInJvd0hlaWdodFxcXCI6IFxcXCIyNXB4XFxcIiwgXFxcImdyaWRTaXplXFxcIjogXFxcIjRweFxcXCIsIFxcXCJpY29uU2l6ZVxcXCI6IFxcXCIxMnB4XFxcIiB9JztcXG4gICAgZGlzcGxheTogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU5Y2QzOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctZmFkZWQge1xcbiAgICBvcGFjaXR5OiAwLjM7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLXJvb3Qge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOWJjMmU2O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZWVuOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzdjNzsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2RkZWJmNztcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgbWluLWhlaWdodDogMThweDsgfVxcbiAgICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcXG4gICAgICBtYXJnaW4tdG9wOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWJjMmU2OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBsaWdodGdyZWVuOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY2VsbC1oaWdobGlnaHQtYW5pbWF0aW9uIHtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXM7XFxuICAgIHRyYW5zaXRpb246IGFsbCAxczsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDIwcHg7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyIHtcXG4gICAgaGVpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbml0aWFsO1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliYzJlNjsgfVxcbiAgLmFnLXRoZW1lLWJsdWUgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJlOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ibHVlIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliYzJlNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcXG4gICAgY29sb3I6IGJsYWNrO1xcbiAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYmx1ZSBpbnB1dCxcXG4gIC5hZy10aGVtZS1ibHVlIHNlbGVjdCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGNvbG9yOiAjMjIyMjIyOyB9XFxuICAuYWctdGhlbWUtYmx1ZSAuYWctcm93IHtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7IH1cXG5cXG5cIiIsIm1vZHVsZS5leHBvcnRzID0gXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbkBmb250LWZhY2Uge1xcbiAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gIHNyYzogdXJsKFxcXCJkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC10dGY7Y2hhcnNldD11dGYtODtiYXNlNjQsQUFFQUFBQUxBSUFBQXdBd1QxTXZNZzhTQmxNQUFBQzhBQUFBWUdOdFlYQVhWdEs2QUFBQkhBQUFBRlJuWVhOd0FBQUFFQUFBQVhBQUFBQUlaMng1WnQ2c29hNEFBQUY0QUFBVTRHaGxZV1FWbzJPdkFBQVdXQUFBQURab2FHVmhCOFFEK0FBQUZwQUFBQUFrYUcxMGVOWUFHRmtBQUJhMEFBQUE0R3h2WTJHYWhKVjZBQUFYbEFBQUFISnRZWGh3QUVVQVhRQUFHQWdBQUFBZ2JtRnRaUkhCYkNVQUFCZ29BQUFCbm5CdmMzUUFBd0FBQUFBWnlBQUFBQ0FBQXdQMkFaQUFCUUFBQXBrQ3pBQUFBSThDbVFMTUFBQUI2d0F6QVFrQUFBQUFBQUFBQUFBQUFBQUFBQUFCRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFEcE13UEEvOEFBUUFQQUFFQUFBQUFCQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFEQUFBQUF3QUFBQndBQVFBREFBQUFIQUFEQUFFQUFBQWNBQVFBT0FBQUFBb0FDQUFDQUFJQUFRQWc2VFAvL2YvL0FBQUFBQUFnNlFELy9mLy9BQUgvNHhjRUFBTUFBUUFBQUFBQUFBQUFBQUFBQVFBQi8vOEFEd0FCQUFBQUFBQUFBQUFBQWdBQU56a0JBQUFBQUFFQUFBQUFBQUFBQUFBQ0FBQTNPUUVBQUFBQUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBTFlBUUFOS0EwQUFDZ0FBQVNFWEJ5RVZJUk1ESVJVRFN2NlRlWGtCYmYxczNOd0NsQUtWMWRXckFZQUJnS3NBQUFBQUFRQUEvOEFFQUFQQUFDRUFBQUUxQnljM0Z3Y25FU0VuTnhjSEp6Y2hFVGNYQnljM0Z4RWhGd2NuTnhjSElSRUJ6VkpJemMxSVVnRUpVVWpOelVoUi92ZFNTTTNOU0ZMKzkxRkl6YzFJVVFFSkF2TUpVVWpOelVoUi92ZFNTTTNOU0ZMKzkxRkl6YzFJVVFFSlVrak56VWhTQVFBQUFBQUFBUUNXQUI0RGFnTmlBQkFBQUFFSEp3RVdGeDRCRnhZWEJ5Y1JJeEV4QWE2eFp3RnFMUzR0V2k0dExXZXdwUUpDc1djQmFpNHRMVnN0TFMxbnNQM2RBaVFBQUFBQkFRQUF3QU1BQXNBQUN3QUFBUWNuQnljM0p6Y1hOeGNIQXdCSXVMaEl1TGhJdUxoSXVBRUlTTGk0U0xpNFNMaTRTTGdBQlFBQi83NEQvd1BCQUE4QUh3QWpBQ2NBTEFBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lCTXhFakpUTVZJd016RVNNUkEzLzlBalZMU3pVQy9qVkxTelQ4L2hFWUdCRURBaEVZR1AyYVZWVUJWVlZWcTFaV1FrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9xdisxcXFxQWFyK1ZnR3FBQUFBQXdBQi83NEQvd1BCQUE4QUh3QXBBQUFCTWhZVkVSUUdJeUVpSmpVUk5EWXpCU0VpQmhVUkZCWXpJVEkyTlJFMEpnY0JKemNYRXg0QkZ6RURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWJQN28vVFd1NkJJbUVnUEJTelg4L1RWTFN6VURBelZMVnhnUi9QOFJHUmtSQXdFUkdMNzkvc3BEaXdHb0NoUUtBQUFBQUFNQUFmKytBLzhEd1FBUEFCOEFJd0FBQVRJV0ZSRVVCaU1oSWlZMUVUUTJNd1VoSWdZVkVSUVdNeUV5TmpVUk5DWURJVFVoQTM4MVMwczEvUUkxUzBzMUF2LzgvaEVZR0JFREFoRVlHT2IrcWdGV0E4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWS9nR3FBQUFBQWdBQi83NEQvd1BCQUE4QUh3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZQUFNQWN3QklBNDBET0FBR0FBb0FGd0FBQ1FFSEZ3a0NJVGNYSVFVd0JoVVVGak15TmpVMEpqRUMvZjVWUEdiKzl3RkZBVVg5Nzh6TS9tZ0NURlV5SXlNeVZRR05BYXM4WnY3My9yc0JSYzNOUUdzcUl6SXlJeXByQUFBQUFnQlZBQlVCcXdOckFBTUFCd0FBQVJFaEVRRVZJVFVCcS82cUFWYitxZ0pyL2FvQ1ZnRUFxNnNBQUFBR0FGVUFGUU9yQTJzQUF3QUhBQXNBRHdBVEFCY0FBQ1VWSVRVaEZTRTFBeFVoTlNFVklUVURGU0UxSVJVaE5RR3IvcW9EVnY2cXF2NnFBMWIrcXFyK3FnTlcvcXJBcTZ1cnF3RlZxcXFxcWdGV3E2dXJxd0FBQXdBQi83NEQvd1BCQUE4QUh3QWpBQUFCTWhZVkVSUUdJeUVpSmpVUk5EWXpCU0VpQmhVUkZCWXpJVEkyTlJFMEpnTVZJVFVEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lrZjRBQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL3F1cXFnQUFBQUFEQUtzQWF3TlZBeFVBQndBTUFCSUFBQUV6RVNFMUl4RWhFeUVSSVJFbk5TRVJNeEVDcTZyK0FLb0NBRlgrcXdGVnEvNnJWUUpyL2dDcUFnRC9BUDZyQVZWV1ZmNnJBUUFBQUFBQUFRQnVBQzREa2dOU0FBMEFBQWtCSGdFWENRRUhDUUVuQ1FFM0FnQUJHUjQ5SHY3bkFSbDUvdWYrNTNrQkdmN25lUUk1QVJrZVBSNys1LzduZVFFWi91ZDVBUmtCR1hrQUF3QjRBTlVEbndMaEFEZ0FSd0JhQUFBQk5qYytBVGMyRng0Qkh3RUdCdzRCQndZSEZoY2VBUmNXRnc0Qkp5NEJKdzRCQndZbkxnRW5KamMrQVRjdUFUYytBUmNlQVJjZUFSY0hCZ2NPQVFjR056NEJOekEyQnpFbklnWUhEZ0VIQmhjZUFSY1dGemN1QVNNeEFob21KU1pHSUNFZEVCd05OeUFnSUVBaElDQWdJU0JBSUNBZ05tMUpJa29oTzN4Q0h5VW1PdzhQRGcxREtFQk1HQkE5TVQxc05oQWhFSnNuS3lzMkFRSXRJMFFrQXdXT0JBa0ZBd1VERncwTVBpY25IZ0VsVGgwQ09TRWVIeThPRGdFQkNRY2hHeHNiTnh3Ykd4b1pHalFhR2hvaERqWVpOeGtzVEIwT0FnSWlIaDRxS3prVEluQTBJeU1CQkU0bURCZ01rQUVWRlRFVEV3SUJOQmcwQWVNQ0FRRURBUThVRlNVT0RRRXpHalFBQUFBQUJ3QXlBQ2NEemdOWkFBc0FEd0FiQUI4QUt3QXdBRDBBQURjaUJoVVVGak15TmpVMEppa0JGU0VCSWdZVkZCWXpNalkxTkNZaEZTRTFCeklXRlJRR0l5SW1OVFEyQVJVaE5TRWhNaFlWRkFZaklpWTFORFl6blMwK1BpMHNQajREQmYxVkFxdjh6eTArUGkwc1BqNERCZjFWaGg0c0xCNGZMQ3dEVVAxVkFxdjh6eXcrUGl3dFBqNHQvRDRzTFQ0K0xTdysxUUlFUHl3c1B6OHNMRC9XMWlBc0h4OHNMQjhmTEFGTzFkVStMU3crUGl3dFBnQUFBQUVBbGdBakEyb0RYUUFKQUFBQkVUTVJOeGNKQVRjWEFhK2tzR2YrbHY2V1o3SUJRd0lhL2Vld1ovNldBV3Buc1FBQUFBQURBQUgvd1FRQkE4RUFFQUFnQUN3QUFBRXlGaFVSRkFZaklTSW1OUkUwTmpNaEZ5RWlCaFVSRkJZeklUSTJOUkUwSmdFekZTTVZJelVqTlRNMU13T0FOVXhNTmYwQk5VdExOUUwvQWZ6K0VoZ1lFZ01DRVJnWS9zU3JxNnVycTZzRHdVczEvUUExUzBzMUF3QTFTMWNZRWYwQkVSZ1lFUUwvRVJqK3JLcXFxcXFyQUFBREFDSUFkZ1BlQXdvQUlnQklBRk1BQUFFM0Z6NEJNeFlYSGdFWEZoY09BUWNYQnljM0FUNEJOell5TXlZME5TTWlCZ2NuQnhNbUp5NEJKeVluRGdFSEZoY2VBUmNXTnhjR0J3WW1KeVluSmljdUFTY21KejRCTnpFQlBnRTNNQ1luRGdFSEZ3RW9OU2NnUWlOSVFrSjNORE1yS205QU4wTWhEdjdNSGo4ZUNoUUxBUXMxYXpKUU11c3FKU1U2RkJRSEl6NGFKakV5Y3o4L1B6UXVMeTlmTHk4dUloNGZOaGtZRnl0cVB3SGpMa3dnUHprTFBpeFRBdUVwTWdrS0FoY1hVRFkyUHo1ckowVTFLUXdCaHdjRkFRRVZLeFVLRUdaSy90WUZFUkkzSkNRcEdqOGtOQ2txT0F3TUNFRU9CUVVKRUE4YkZSb1pPeUFnSWo5dktmNlFIVXNyVUMwMVZodHFBQUFBQXdBaUFKa0QzZ0xvQUJzQU93QktBQUFCRmhjZUFSY1dGd1lIRGdFbkppY21KeTRCSnlZbk5qYytBVGMyQnc0QkJ4WVhIZ0UzTmpjK0FUY3dKaWNHQnc0QkJ3WWpJaWN1QVNjbUp6RWxKalExSXc0QkJ4YytBVGM2QVRNQ0NVaENRbmMwTXlzN1ZWWEZhV2xqSWg0Zk5oa1lGeW8xTkh0R1JiY2pQaG93UkVTY1VsTk5NVkVpUHprSkZ4ZERLU291THlvclFoY1hDQUZTQVF0RWh6d2xMbVl4Q2hRTEF1Z0NGeGRQTmpaQVYwVkZTQVVFUEJRYUdqb2hJQ0UvTnpkUkZ4ZXZHVUFrUWpFeU1RWUZMUnhQTGxBc0xDVWxOdzhRRUJBNUppY3NBeFlyRlFFUkhVMFdEZ0lBQUFBQ0FGVUFRQU9yQTBBQUJnQUxBQUFUSVFFUkp4RUJBUlV6TlNOVkExYitxcXIrcWdGV3Fxb0RRUDZyL2xXckFRQUJWZjZyVmxZQUFBSUE4Z0RBQXc0Q3dBQURBQWtBQUFFUkl4RUJKemNuQ1FFQlIxVUNITWZIT2Y4QUFRQUN3UDRBQWdEK09jZkhPZjhBL3dBQUFBQUFEQUNyLytzRFZRT1ZBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFBQTNNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5RWpOVE9ycXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBYXFxcXBXcXFxcXFxZ0dxcXFxcXFxb0JxcXFxcXFxcUFhcXFxcXFxQUFBQUFBVUFWZi9yQTZzRGxRQWZBQ01BS0FBc0FEQUFBQUV6TlNFUklUVWpGU01WSVRVaEVTRTFJUkVoTlNFUklUVWhFU01SSVJVeEFTTVZNeEVqRlRNMUVTTVZNeVVqRlRNQnE2b0JWdjZxcXFzQlZRRlcvcXIrcXdGVkFWYitxdjVXVmdGV0FhcXFxcXFxcXFyK0FLcXFBMEJWL3dCV1ZxcFYvd0JWL3dCVy93QlZBbFVCQUZYOVZWVUJxMVpXQVZWVlZWVUFBQUFEQUJrQkVRUG5BcE1BRmdBdEFEd0FBQUVXRng0QkZ4WWZBUVlIRGdFbkppOEJOamMrQVRjMkJRNEJJeUltSnc0QkR3RVdGeDRCTnpZL0FTNEJKekVISmpRMUl3NEJCeGMrQVRjMk1qTUNDRDQ4UEhJek5Dd2tYbnA1LzN4N1l5UXhPamwrUkVNQkxSeUJVbEtCSENFOUhBTktYbDdGWDE5TUF4dy9JcGtCQzBTSFBDVXVaakVLRkFzQ2t3RU1EQzBoSUNza1hUVTFEeW9wWHlReUp5ZzNEdytJUjF4Y1J3NG1Gd00vSUNFQklCOUFBaGdvRGlNVkt4VUJFQjVNRmcwQ0FRQUFBZ0R5QU1BRERnTEFBQU1BQ2dBQUpTTVJNd0UzSnpjSkFTY0REbFZWL2VUSHh6a0JBUDhBT2NBQ0FQNDV4OGM1L3dEL0FEa0FBQUFCQUVzQVZnTzFBeW9BQ3dBQUFSY0hDUUVlQVJjSElSVWhBVyt0Wi82V0FXb1pOQnF2QWtqOXVnRnFyV2NCYWdGcUdqTWFycXNBQUFJQVZRQVZBNnNEYXdBY0FDY0FBQUUzRndjekZTTWVBUmNISnhVak5RY25OeU0xTXljM0hnRVhOVE1WQXpNM05TY2pCeFVlQVJjQ1ZaeDVuTjNkSjA0bmVaeXFuSG1jM2QyY2VTZE9KNnFjam1Sa2ptUVpNaGtDanB4NW5Lb25UaWQ1bk4zZG5IbWNxcHg1SjA0bjNkMytoMlNPWkdTT0dUSVpBQUFFQUFIL3ZnUC9BOEVBRHdBZkFDY0FMd0FBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJCemNYTnhjSEZ3RTNCeGNIRnpjWEEzLzlBalZMU3pVQy9qVkxTelQ4L2hFWUdCRURBaEVZR1AzZzQwZ3luem1mTUFHM1N1VXhvRG1nTVVKTE5RTUROVXRMTmZ6OU5Vc0RyQmdSL1A4UkdSa1JBd0VSR1AwdFNlUXhuem1mTVFHMzVVa3lvRG1nTVFBREFGVUFGUU9yQTJzQUF3QUhBQXNBQUNVVklUVUJGU0UxQVJVaE5RT3IvS29EVnZ5cUExYjhxc0NycXdGVnFxb0JWcXVyQUFBQUFBUUFBZisrQS84RHdRQVBBQjhBSndBdkFBQUZJU0ltTlJFME5qTWhNaFlWRVJRR0F5RWlCaFVSRkJZeklUSTJOUkUwSmdFM0J5Y0hKemNuQVFjM0p6Y25CeWNEZi8wQ05VdExOUUwrTlV0TE5QeitFUmdZRVFNQ0VSZ1kvV3prU1RLZk9aOHdBV3hKNURHZk9aOHhRa3MxQXdNMVMwczEvUDAxU3dPc0dCSDgveEVaR1JFREFSRVkvZTVKNURHZ09hQXhBV3prU1RHZ09hQXhBQUVBcXdGckExVUNGUUFEQUFBVElSVWhxd0txL1ZZQ0Zhb0FBQUFCQVdRQXdBS2NBc0FBQlFBQUpUY25Od2tCQVdUSHh6Z0JBUDhBK2NmSE9mOEEvd0FBQUFBQUFRRFMvOVlETGdPcUFCUUFBQUVISndFV0Z4NEJGeFlYQnljUk54Y0pBVGNYRVFHbGJHY0JMaVlsSmt3bEppWm5iR3huL3RMKzBtZHNBb0ZzWndFdUppVW1UQ1VtSm1kcy9uNXNaLzdTQVM1bmJBR0NBQUFBQUFNQUFmKy9CQUFEd2dBY0FDb0FPUUFBQVRJWEhnRVhGaFVVQnc0QkJ3WWpJaWN1QVNjbU5UUTNQZ0UzTmpNRkFSNEJNekkzUGdFM05qVTBKaWN1QVNNaUJ3NEJCd1lWRkJZWEFRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcUFWSDlxVGFHU2xoT1RuUWhJakIwTjRaS1dFNU9jeUloTHlzQ1Z3UENLQ21MWGwxcWExMWRqQ2dwS1NpTVhWMXJhbDFlaXlrbysvMnBLakFpSVhST1RWbEtoWUVxTUNFaWRFMU9XRXVHTmdKWEFBQUNBS3NBUUFOVkEwQUFDQUFTQUFBQklSRWhFU0UxTXhVWEl4VWhOU01SSVJFeEFsVUJBUDFXQVFDcXExWCtxbFVDQUFMci9WVUNxMVZWVnFxcS9nQUNBQUFBQUFFQXF3QVZBMVVERlFBUEFBQUJJeEVYSVFzQklUYzFNeEVqTlNFVkF3QlZxdjhBVlZYL0FLcFdxd0lBQXNEK3ExYi9BQUVBVmxVQkFGVlZBQVVBQWYrK0EvOER3UUFQQUI0QUpnQThBRVFBQUFVaElpWTFFVFEyTXlFeUZoVVJGQVlCTlNNaUJoVVJGQlk3QVJFak5UTUZJUkVoTWpZMUVROEJKemNlQVJjSEp4VWpGd2NuTng0QkZ3Y3pOVEVUSVJVaE5UUW1Jd04vL1FJMVMwczFBdjQxUzB2OVRJSVJHQmdSZ3F1ckFxbjlyQUlyRVJqK0RUeHpIVG9kUFF6RURUMXpjeEFlRHcxdjFmM1ZBbFFZRVVKTE5RTUROVXRMTmZ6OU5Vc0RBcW9ZRWZ6L0VSa0NWVlZWL2FzWkVRSXI1dzA5Y3gwNkhEME54QXc5ZEhNUEhnOE5id0htcW9FUkdBQUFBQUFCQUtzQWF3TlZBeFVBQ3dBQUV5RVJNeEVoRlNFUkl4RWhxd0VBcWdFQS93Q3Evd0FDRlFFQS93Q3Evd0FCQUFBQkFXUUF3QUtjQXNBQUJRQUFKU2MzSndrQkFwekh4emovQUFFQStjZkhPZjhBL3dBQUFBQUFBZ0FCLzc4RUFBUENBQndBT1FBQUFTSUhEZ0VIQmhVVUZ4NEJGeFl6TWpjK0FUYzJOVFFuTGdFbkppTVZNaGNlQVJjV0ZSUUhEZ0VIQmlNaUp5NEJKeVkxTkRjK0FUYzJNd0lBYWwxZGl5Z29LQ2lMWFYxcWFsMWRpeWdwS1NpTFhWMXFXRTVPZENFaUlpRjBUazVZV0U1T2N5SWhJU0p6VGs1WUE4SW9LWXRlWFdwclhWMk1LQ2twS0l4ZFhXdHFYVjZMS1NoWElTSjBUVTVZV1UxT2RDRWlJaUYwVGsxWldFNU5kQ0loQUFBREFBSC92d1FBQThJQUhBQTVBRllBQUFFeUZ4NEJGeFlWRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZekZTSUhEZ0VIQmhVVUZ4NEJGeFl6TWpjK0FUYzJOVFFuTGdFbkppTUJGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6TWhjZUFSY1dGUUlBYWwxZGl5Z3BLU2lMWFYxcWFsMWRpeWdvS0NpTFhWMXFXRTVPY3lJaElTSnpUazVZV0U1T2RDRWlJaUYwVGs1WUFRQVVGRVV2THpVMUx5NUdGQlFVRkVZdUx6VTFMeTlGRkJRRHdpZ3BpMTVkYW10ZFhZd29LU2tvakYxZGEycGRYb3NwS0ZjaEluUk5UbGhaVFU1MElTSWlJWFJPVFZsWVRrMTBJaUgrVmpVdkwwVVVGQlFVUlM4dk5UVXVMMFlVRkJRVVJpOHVOUUFBQUFFQVN3QldBN1VES2dBUEFBQUJKemNXRng0QkZ4WVhBU2MzSVRVaEFwS3VaeTB0TFZzdExTNytsbWV0L2JvQ1J3SVZybWN0TFM1YUxTNHQvcFpucmFzQUFBQUFBZ0NBQUVBRGdBTkFBQTBBR0FBQUFSRWhFU01SRkJZeklUSTJOUkVGTnhjSEp6Y1hFVE1STVFNci9hcFZNaU1DVmlNeS9xdHVQTlhWUEc1V0FjRCsxUUVyL3RVak1qSWpBU3NkYmp6VjFUeHVBWjMrWXdBQUFBRUFxd0VWQTFVQ2F3QURBQUFUSVFrQnF3S3EvcXYrcXdKci9xb0JWZ0FBQVFGVkFHc0Nxd01WQUFNQUFBa0JFUUVCVlFGVy9xb0J3QUZWL1ZZQlZRQUJBVlVBYXdLckF4VUFBd0FBQ1FJUkFWVUJWdjZxQXhYK3EvNnJBcW9BQUFFQXF3RVZBMVVDYXdBREFBQVRDUUVocXdGVkFWWDlWZ0VWQVZiK3FnQUFBUUJFQUdZRHZBTWJBQWtBQUFrQ054Y0JIZ0VYTVFPOC9jVCt4SGpFQWNRZVBCNENvdjNFQVR4NHd3SEVIendlQUFBQUFBRUJWUUJyQXFzREZRQURBQUFKQWhFQlZRRlcvcW9ERmY2ci9xc0NxZ0FBQVFDckFXc0RWUUlWQUFNQUFCTWhGU0dyQXFyOVZnSVZxZ0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUFBQUFFQUFQUWZmUTlmRHp6MUFBc0VBQUFBQUFEWlFZK1pBQUFBQU5sQmo1a0FBUCsrQkFFRHdnQUFBQWdBQWdBQUFBQUFBQUFCQUFBRHdQL0FBQUFFQUFBQS8vOEVBUUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFPQVFBQUFBQUFBQUFBQUFBQUFJQUFBQUVBQUMyQkFBQUFBUUFBSllFQUFFQUJBQUFBUVFBQUFFRUFBQUJCQUFBQVFRQUFITUVBQUJWQkFBQVZRUUFBQUVFQUFDckJBQUFiZ1FBQUhnRUFBQXlCQUFBbGdRQUFBRUVBQUFpQkFBQUlnUUFBRlVFQUFEeUJBQUFxd1FBQUZVRUFBQVpCQUFBOGdRQUFFc0VBQUJWQkFBQUFRUUFBRlVFQUFBQkJBQUFxd1FBQVdRRUFBRFNCQUFBQVFRQUFLc0VBQUNyQkFBQUFRUUFBS3NFQUFGa0JBQUFBUVFBQUFFRUFBQkxCQUFBZ0FRQUFLc0VBQUZWQkFBQlZRUUFBS3NFQUFCRUJBQUJWUVFBQUtzRUFBQ3JBQUFBQUFBS0FCUUFIZ0E0QUhRQWxnQ3dBUGdCUEFGMkFhZ0IxZ0hzQWhnQ1VnSjRBcHdETEFPSUE2SUQ1QVJxQk9BRS9BVVlCV2dGc2dZVUJqQUdUQWFLQnRnRzlBZENCMUFIWkFlUUIrd0lEZ2dzQ0pRSXJBakFDUmdKbWdtOENlZ0orQW9JQ2hnS0tBcENDbElLWUFwd0FBQUFBUUFBQURnQVd3QU1BQUFBQUFBQ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBNEFyZ0FCQUFBQUFBQUJBQWtBQUFBQkFBQUFBQUFDQUFjQWNnQUJBQUFBQUFBREFBa0FQQUFCQUFBQUFBQUVBQWtBaHdBQkFBQUFBQUFGQUFzQUd3QUJBQUFBQUFBR0FBa0FWd0FCQUFBQUFBQUtBQm9Bb2dBREFBRUVDUUFCQUJJQUNRQURBQUVFQ1FBQ0FBNEFlUUFEQUFFRUNRQURBQklBUlFBREFBRUVDUUFFQUJJQWtBQURBQUVFQ1FBRkFCWUFKZ0FEQUFFRUNRQUdBQklBWUFBREFBRUVDUUFLQURRQXZFRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkxWmxjbk5wYjI0Z01TNHdBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFKbFozVnNZWElBVWdCbEFHY0FkUUJzQUdFQWNrRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkwWnZiblFnWjJWdVpYSmhkR1ZrSUdKNUlFbGpiMDF2YjI0dUFFWUFid0J1QUhRQUlBQm5BR1VBYmdCbEFISUFZUUIwQUdVQVpBQWdBR0lBZVFBZ0FFa0FZd0J2QUUwQWJ3QnZBRzRBTGdBQUFBTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9XFxcIikgZm9ybWF0KFxcXCJ0cnVldHlwZVxcXCIpO1xcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxcblxcbi5hZy10aGVtZS1ib290c3RyYXAge1xcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gIGNvbG9yOiBibGFjaztcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTRweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICBtYXJnaW46IDRweDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgcGFkZGluZzogNHB4IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjZmNmY2ICFpbXBvcnRhbnQ7XFxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwICo6Zm9jdXMsIC5hZy10aGVtZS1ib290c3RyYXAgKiAqOmJlZm9yZSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjU2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMzUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDAwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNjI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDk2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNzY4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogODQwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTkycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogOTEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTg0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2ODhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAzMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDMycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNTZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwODBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MzZweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEwNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3ODRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNoZWNrYm94LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveCBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveCBsYWJlbDplbXB0eSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsIHtcXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS1kb3duIHtcXG4gICAgY29sb3I6IGRhcmtyZWQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXZhbHVlLWNoYW5nZS12YWx1ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcHg7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0bztcXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJyYW5nZVxcXCJdIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGlubmVkLXJpZ2h0LWhlYWRlciB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3cge1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1vZGQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCksXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1oZWFkZXItcm93OmZpcnN0LWNoaWxkIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwge1xcbiAgICBsaW5lLWhlaWdodDogMjNweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMXB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1kcmFnZ2luZyAuYWctcm93LWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG4gICAgb3V0bGluZTogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1saXN0IHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcXG4gICAgICB3aWR0aDogMTAwJTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWljb24ge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICBtaW4td2lkdGg6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCc4cHgnJTIwdmlld0JveCUzRCcwJTIwMCUyMDElMjA4cHgnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUzRSUzQ2xpbmUlMjB4MSUzRCcwJyUyMHkxJTNEJzRweCclMjB4MiUzRCcxJyUyMHkyJTNEJzRweCclMjBzdHJva2Utd2lkdGglM0QnMSclMjBzdHJva2UlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVxcXCIpOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCBkaXYge1xcbiAgICAgIGhlaWdodDogMTAwJTtcXG4gICAgICBtYXJnaW46IDA7XFxuICAgICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgaGVpZ2h0OiAxNnB4O1xcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XFxuICAgICAgICAgIC1tcy1mbGV4OiBub25lO1xcbiAgICAgICAgICAgICAgZmxleDogbm9uZTtcXG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItc2VsZWN0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItZmlsdGVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0ge1xcbiAgICBoZWlnaHQ6IDIwcHg7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXI6bnRoLWNoaWxkKDIpIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsdGVyIC5hZy1maWx0ZXItYXBwbHktcGFuZWwgYnV0dG9uICsgYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciB7XFxuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4OyB9XFxuICAgICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci1haXIge1xcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcXG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWxpc3Qge1xcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbnVtZXJpYy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwIDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWljb24ge1xcbiAgICB3aWR0aDogMTJweDtcXG4gICAgaGVpZ2h0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG4gICAgYm90dG9tOiAwO1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkZTJlNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3Age1xcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXJpZ2h0IHtcXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtbGVmdCB7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIwLCAxMjAsIDEyMCwgMC40KTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODAsIDgwLCA4MCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQwLCA0MCwgNDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3AuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkIHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwKTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCByZ2JhKDAsIDAsIDAsIDApOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkIHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbGwtaGFuZGxlLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogMzdweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IHtcXG4gICAgd2lkdGg6IDIwMHB4O1xcbiAgICBoZWlnaHQ6IDE2Mi41cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIHBhZGRpbmc6IDAgNHB4IDAgMTJweDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3cge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1sdHIgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiBidXR0b24ge1xcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBoZWlnaHQ6IDEycHg7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIHdpZHRoOiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tc21hbGwtbGVmdCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XFxuICAgIG1pbi1oZWlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmc6IDAgMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbiB7XFxuICAgICAgbWluLXdpZHRoOiAxNnB4O1xcbiAgICAgIG1hcmdpbjogMCAycHg7XFxuICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgaGVpZ2h0OiA3MHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZXQtZmlsdGVyLWxpc3QsXFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1kYXRhLWNoYW5nZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VjICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvdy1zdHViIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1mbG9hdGluZy10b3AsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmxvYXRpbmctdG9wIC5hZy1yb3csIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWJvdHRvbSAuYWctcm93IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICBmb250LXNpemU6IDE0cHg7XFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7XFxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICAgIHdpZHRoOiAxNnB4O1xcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiBibGFjaztcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAwO1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgICBtYXJnaW46IDA7XFxuICAgICAgICBtaW4taGVpZ2h0OiA3MnB4O1xcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMDtcXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcHJpbWFyeS1jb2xzLWZpbHRlci13cmFwcGVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkIHJnYmEoMTMsIDEzLCAxMywgMCk7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgaGVpZ2h0OiAyNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZ3JvdXAtY29tcG9uZW50ID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSB7XFxuICAgICAgbWFyZ2luOiAycHggMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWxhYmVsZWQgbGFiZWwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbGFiZWxlZC5hZy1sYWJlbC1hbGlnbi10b3AgbGFiZWwge1xcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWFuZ2xlLXNlbGVjdCA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xcbiAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctcGFyZW50LWNpcmNsZSB7XFxuICAgIHdpZHRoOiAyNHB4O1xcbiAgICBoZWlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuOSk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBoZWlnaHQ6IDEycHg7XFxuICAgIHdpZHRoOiA0MHB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwMHJlbTtcXG4gICAgICByaWdodDogY2FsYygxMDAlIC0gMTJweCk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b2dnbGUtYnV0dG9uLmFnLXNlbGVjdGVkIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWRpYWxvZy5hZy1jb2xvci1kaWFsb2cge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdG9vbHMge1xcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWRyYWdnZXIge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIHdpZHRoOiAxMnB4O1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctaHVlLWFscGhhIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xcbiAgICAgIGhlaWdodDogMTFweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZTpmb2N1cyB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBkNzdlNDtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2Omxhc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy1kcmFnZ2luZy1yYW5nZS1oYW5kbGUgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjYsIDI2LCAyNiwgMCk7XFxuICAgICAgY29sb3I6ICMzMzMzMzM7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICBmb250LXdlaWdodDogNDAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOmhvdmVyLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IH1cXG4gICAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciB7XFxuICAgICAgaGVpZ2h0OiAzMHB4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXBhbmVsIC5hZy1tZXNzYWdlLWJveCAuYWctbWVzc2FnZS1ib3gtYnV0dG9uLWJhciBidXR0b24ge1xcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNlYmViZWI7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbDpudGgtY2hpbGQoM24gKyAxKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtIHtcXG4gICAgY29sb3I6IGJsYWNrO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbS5hZy1zZWxlY3RlZCB7XFxuICAgICAgY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbiB7XFxuICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkQ2xhc3NpY1xcXCI7XFxuICAgIHNwZWFrOiBub25lO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGNvbG9yOiAjMzMzO1xcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XFxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tYXJyb3dzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tYXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hhcnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbG9yLXBpY2tlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDhcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNvbHVtbnM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jb250cmFjdGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNyb3NzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY3V0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWRlc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1leHBhbmRlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWV5ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTNcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWZpbHRlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTRcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tZ3JpcDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWdyb3VwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWxhc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW1heGltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbWVudTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MURcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbWludXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1uZXh0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLW5vdC1hbGxvd2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tcGFzdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1waXZvdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjVcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXBsdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vZmY6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yYWRpby1idXR0b24tb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXNhdmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1zbWFsbC1kb3duOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tc21hbGwtdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tdHJlZS1jbG9zZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10cmVlLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBsaW5lLWhlaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ncm91cC1leHBhbmRlZCAuYWctaWNvbi1jb250cmFjdGVkOmVtcHR5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaWNvbi1yYWRpby1idXR0b24tb24ge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJpZ2h0LWFycm93OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLWdyb3VwLWljb25zLFxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWdyb3VwLWNoaWxkLWNvdW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1waXZvdCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLnNhc3MtdmFyaWFibGVzOjphZnRlciB7XFxuICAgIGNvbnRlbnQ6ICd7IFxcXCJhdXRvU2l6ZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJoZWFkZXJIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncm91cFBhZGRpbmdTaXplXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwiZm9vdGVyUGFkZGluZ0FkZGl0aW9uXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwidmlydHVhbEl0ZW1IZWlnaHRcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJhZ2dGdW5jUG9wdXBIZWlnaHRcXFwiOiBcXFwiNzBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiNHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjEycHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctZmFkZWQge1xcbiAgICBvcGFjaXR5OiAwLjM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLXJvb3Qge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkZTJlNTsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctbWVudSAuYWctbWVudS1vcHRpb24ge1xcbiAgICBsaW5lLWhlaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICBtaW4taGVpZ2h0OiAxOHB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uOmhvdmVyIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY2VsbC1oaWdobGlnaHQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyIHtcXG4gICAgaGVpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaXRpYWw7XFxuICAgICAgICAgICAgYm94LXNpemluZzogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctcmljaC1zZWxlY3QtdmFsdWUge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy13cmFwcGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgcGFkZGluZzogMTBweDsgfVxcbiAgLmFnLXRoZW1lLWJvb3RzdHJhcCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1tZW51LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy10aGVtZS1ib290c3RyYXAuYWctZG5kLWdob3N0LCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLWNlbGwuYWctcG9wdXAtZWRpdG9yLCAuYWctdGhlbWUtYm9vdHN0cmFwIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAsIC5hZy10aGVtZS1ib290c3RyYXAgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiQGNoYXJzZXQgXFxcIlVURi04XFxcIjtcXG5AZm9udC1mYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkQ2xhc3NpY1xcXCI7XFxuICBzcmM6IHVybChcXFwiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWc4U0JsTUFBQUM4QUFBQVlHTnRZWEFYVnRLNkFBQUJIQUFBQUZSbllYTndBQUFBRUFBQUFYQUFBQUFJWjJ4NVp0NnNvYTRBQUFGNEFBQVU0R2hsWVdRVm8yT3ZBQUFXV0FBQUFEWm9hR1ZoQjhRRCtBQUFGcEFBQUFBa2FHMTBlTllBR0ZrQUFCYTBBQUFBNEd4dlkyR2FoSlY2QUFBWGxBQUFBSEp0WVhod0FFVUFYUUFBR0FnQUFBQWdibUZ0WlJIQmJDVUFBQmdvQUFBQm5uQnZjM1FBQXdBQUFBQVp5QUFBQUNBQUF3UDJBWkFBQlFBQUFwa0N6QUFBQUk4Q21RTE1BQUFCNndBekFRa0FBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRHBNd1BBLzhBQVFBUEFBRUFBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQURBQUFBSEFBREFBRUFBQUFjQUFRQU9BQUFBQW9BQ0FBQ0FBSUFBUUFnNlRQLy9mLy9BQUFBQUFBZzZRRC8vZi8vQUFILzR4Y0VBQU1BQVFBQUFBQUFBQUFBQUFBQUFRQUIvLzhBRHdBQkFBQUFBQUFBQUFBQUFnQUFOemtCQUFBQUFBRUFBQUFBQUFBQUFBQUNBQUEzT1FFQUFBQUFBUUFBQUFBQUFBQUFBQUlBQURjNUFRQUFBQUFCQUxZQVFBTktBMEFBQ2dBQUFTRVhCeUVWSVJNRElSVURTdjZUZVhrQmJmMXMzTndDbEFLVjFkV3JBWUFCZ0tzQUFBQUFBUUFBLzhBRUFBUEFBQ0VBQUFFMUJ5YzNGd2NuRVNFbk54Y0hKemNoRVRjWEJ5YzNGeEVoRndjbk54Y0hJUkVCelZKSXpjMUlVZ0VKVVVqTnpVaFIvdmRTU00zTlNGTCs5MUZJemMxSVVRRUpBdk1KVVVqTnpVaFIvdmRTU00zTlNGTCs5MUZJemMxSVVRRUpVa2pOelVoU0FRQUFBQUFBQVFDV0FCNERhZ05pQUJBQUFBRUhKd0VXRng0QkZ4WVhCeWNSSXhFeEFhNnhad0ZxTFM0dFdpNHRMV2V3cFFKQ3NXY0JhaTR0TFZzdExTMW5zUDNkQWlRQUFBQUJBUUFBd0FNQUFzQUFDd0FBQVFjbkJ5YzNKemNYTnhjSEF3Qkl1TGhJdUxoSXVMaEl1QUVJU0xpNFNMaTRTTGk0U0xnQUJRQUIvNzREL3dQQkFBOEFId0FqQUNjQUxBQUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQk14RWpKVE1WSXdNekVTTVJBMy85QWpWTFN6VUMvalZMU3pUOC9oRVlHQkVEQWhFWUdQMmFWVlVCVlZWVnExWldRa3MxQXdNMVMwczEvUDAxU3dPc0dCSDgveEVaR1JFREFSRVkvcXYrMXFxcUFhcitWZ0dxQUFBQUF3QUIvNzREL3dQQkFBOEFId0FwQUFBQk1oWVZFUlFHSXlFaUpqVVJORFl6QlNFaUJoVVJGQll6SVRJMk5SRTBKZ2NCSnpjWEV4NEJGekVEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1liUDdvL1RXdTZCSW1FZ1BCU3pYOC9UVkxTelVEQXpWTFZ4Z1IvUDhSR1JrUkF3RVJHTDc5L3NwRGl3R29DaFFLQUFBQUFBTUFBZisrQS84RHdRQVBBQjhBSXdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lESVRVaEEzODFTMHMxL1FJMVMwczFBdi84L2hFWUdCRURBaEVZR09iK3FnRldBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvZ0dxQUFBQUFnQUIvNzREL3dQQkFBOEFId0FBQVRJV0ZSRVVCaU1oSWlZMUVUUTJNd1VoSWdZVkVSUVdNeUV5TmpVUk5DWURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWUE4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWUFBTUFjd0JJQTQwRE9BQUdBQW9BRndBQUNRRUhGd2tDSVRjWElRVXdCaFVVRmpNeU5qVTBKakVDL2Y1VlBHYis5d0ZGQVVYOTc4ek0vbWdDVEZVeUl5TXlWUUdOQWFzOFp2NzMvcnNCUmMzTlFHc3FJekl5SXlwckFBQUFBZ0JWQUJVQnF3TnJBQU1BQndBQUFSRWhFUUVWSVRVQnEvNnFBVmIrcWdKci9hb0NWZ0VBcTZzQUFBQUdBRlVBRlFPckEyc0FBd0FIQUFzQUR3QVRBQmNBQUNVVklUVWhGU0UxQXhVaE5TRVZJVFVERlNFMUlSVWhOUUdyL3FvRFZ2NnFxdjZxQTFiK3FxcitxZ05XL3FyQXE2dXJxd0ZWcXFxcXFnRldxNnVycXdBQUF3QUIvNzREL3dQQkFBOEFId0FqQUFBQk1oWVZFUlFHSXlFaUpqVVJORFl6QlNFaUJoVVJGQll6SVRJMk5SRTBKZ01WSVRVRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZa2Y0QUE4RkxOZno5TlV0TE5RTUROVXRYR0JIOC94RVpHUkVEQVJFWS9xdXFxZ0FBQUFBREFLc0Fhd05WQXhVQUJ3QU1BQklBQUFFekVTRTFJeEVoRXlFUklSRW5OU0VSTXhFQ3E2citBS29DQUZYK3F3RlZxLzZyVlFKci9nQ3FBZ0QvQVA2ckFWVldWZjZyQVFBQUFBQUFBUUJ1QUM0RGtnTlNBQTBBQUFrQkhnRVhDUUVIQ1FFbkNRRTNBZ0FCR1I0OUh2N25BUmw1L3VmKzUza0JHZjduZVFJNUFSa2VQUjcrNS83bmVRRVovdWQ1QVJrQkdYa0FBd0I0QU5VRG53TGhBRGdBUndCYUFBQUJOamMrQVRjMkZ4NEJId0VHQnc0QkJ3WUhGaGNlQVJjV0Z3NEJKeTRCSnc0QkJ3WW5MZ0VuSmpjK0FUY3VBVGMrQVJjZUFSY2VBUmNIQmdjT0FRY0dOejRCTnpBMkJ6RW5JZ1lIRGdFSEJoY2VBUmNXRnpjdUFTTXhBaG9tSlNaR0lDRWRFQndOTnlBZ0lFQWhJQ0FnSVNCQUlDQWdObTFKSWtvaE8zeENIeVVtT3c4UERnMURLRUJNR0JBOU1UMXNOaEFoRUpzbkt5czJBUUl0STBRa0F3V09CQWtGQXdVREZ3ME1QaWNuSGdFbFRoMENPU0VlSHk4T0RnRUJDUWNoR3hzYk54d2JHeG9aR2pRYUdob2hEallaTnhrc1RCME9BZ0lpSGg0cUt6a1RJbkEwSXlNQkJFNG1EQmdNa0FFVkZURVRFd0lCTkJnMEFlTUNBUUVEQVE4VUZTVU9EUUV6R2pRQUFBQUFCd0F5QUNjRHpnTlpBQXNBRHdBYkFCOEFLd0F3QUQwQUFEY2lCaFVVRmpNeU5qVTBKaWtCRlNFQklnWVZGQll6TWpZMU5DWWhGU0UxQnpJV0ZSUUdJeUltTlRRMkFSVWhOU0VoTWhZVkZBWWpJaVkxTkRZem5TMCtQaTBzUGo0REJmMVZBcXY4enkwK1BpMHNQajREQmYxVmhoNHNMQjRmTEN3RFVQMVZBcXY4enl3K1Bpd3RQajR0L0Q0c0xUNCtMU3crMVFJRVB5d3NQejhzTEQvVzFpQXNIeDhzTEI4ZkxBRk8xZFUrTFN3K1Bpd3RQZ0FBQUFFQWxnQWpBMm9EWFFBSkFBQUJFVE1STnhjSkFUY1hBYStrc0dmK2x2NldaN0lCUXdJYS9lZXdaLzZXQVdwbnNRQUFBQUFEQUFIL3dRUUJBOEVBRUFBZ0FDd0FBQUV5RmhVUkZBWWpJU0ltTlJFME5qTWhGeUVpQmhVUkZCWXpJVEkyTlJFMEpnRXpGU01WSXpVak5UTTFNd09BTlV4TU5mMEJOVXRMTlFML0FmeitFaGdZRWdNQ0VSZ1kvc1NycTZ1cnE2c0R3VXMxL1FBMVMwczFBd0ExUzFjWUVmMEJFUmdZRVFML0VSaityS3FxcXFxckFBQURBQ0lBZGdQZUF3b0FJZ0JJQUZNQUFBRTNGejRCTXhZWEhnRVhGaGNPQVFjWEJ5YzNBVDRCTnpZeU15WTBOU01pQmdjbkJ4TW1KeTRCSnlZbkRnRUhGaGNlQVJjV054Y0dCd1ltSnlZbkppY3VBU2NtSno0Qk56RUJQZ0UzTUNZbkRnRUhGd0VvTlNjZ1FpTklRa0ozTkRNckttOUFOME1oRHY3TUhqOGVDaFFMQVFzMWF6SlFNdXNxSlNVNkZCUUhJejRhSmpFeWN6OC9QelF1THk5Zkx5OHVJaDRmTmhrWUZ5dHFQd0hqTGt3Z1B6a0xQaXhUQXVFcE1na0tBaGNYVURZMlB6NXJKMFUxS1F3Qmh3Y0ZBUUVWS3hVS0VHWksvdFlGRVJJM0pDUXBHajhrTkNrcU9Bd01DRUVPQlFVSkVBOGJGUm9aT3lBZ0lqOXZLZjZRSFVzclVDMDFWaHRxQUFBQUF3QWlBSmtEM2dMb0FCc0FPd0JLQUFBQkZoY2VBUmNXRndZSERnRW5KaWNtSnk0Qkp5WW5OamMrQVRjMkJ3NEJCeFlYSGdFM05qYytBVGN3SmljR0J3NEJCd1lqSWljdUFTY21KekVsSmpRMUl3NEJCeGMrQVRjNkFUTUNDVWhDUW5jME15czdWVlhGYVdsakloNGZOaGtZRnlvMU5IdEdSYmNqUGhvd1JFU2NVbE5OTVZFaVB6a0pGeGRES1NvdUx5b3JRaGNYQ0FGU0FRdEVoendsTG1ZeENoUUxBdWdDRnhkUE5qWkFWMFZGU0FVRVBCUWFHam9oSUNFL056ZFJGeGV2R1VBa1FqRXlNUVlGTFJ4UExsQXNMQ1VsTnc4UUVCQTVKaWNzQXhZckZRRVJIVTBXRGdJQUFBQUNBRlVBUUFPckEwQUFCZ0FMQUFBVElRRVJKeEVCQVJVek5TTlZBMWIrcXFyK3FnRldxcW9EUVA2ci9sV3JBUUFCVmY2clZsWUFBQUlBOGdEQUF3NEN3QUFEQUFrQUFBRVJJeEVCSnpjbkNRRUJSMVVDSE1mSE9mOEFBUUFDd1A0QUFnRCtPY2ZIT2Y4QS93QUFBQUFBREFDci8rc0RWUU9WQUFNQUJ3QUxBQThBRXdBWEFCc0FId0FqQUNjQUt3QXZBQUEzTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeUVqTlRPcnFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQWFxcXFwV3FxcXFxcWdHcXFxcXFxcW9CcXFxcXFxcXFBYXFxcXFxcUFBQUFBQVVBVmYvckE2c0RsUUFmQUNNQUtBQXNBREFBQUFFek5TRVJJVFVqRlNNVklUVWhFU0UxSVJFaE5TRVJJVFVoRVNNUklSVXhBU01WTXhFakZUTTFFU01WTXlVakZUTUJxNm9CVnY2cXFxc0JWUUZXL3FyK3F3RlZBVmIrcXY1V1ZnRldBYXFxcXFxcXFxcitBS3FxQTBCVi93QldWcXBWL3dCVi93Qlcvd0JWQWxVQkFGWDlWVlVCcTFaV0FWVlZWVlVBQUFBREFCa0JFUVBuQXBNQUZnQXRBRHdBQUFFV0Z4NEJGeFlmQVFZSERnRW5KaThCTmpjK0FUYzJCUTRCSXlJbUp3NEJEd0VXRng0Qk56WS9BUzRCSnpFSEpqUTFJdzRCQnhjK0FUYzJNak1DQ0Q0OFBISXpOQ3drWG5wNS8zeDdZeVF4T2psK1JFTUJMUnlCVWxLQkhDRTlIQU5LWGw3RlgxOU1BeHcvSXBrQkMwU0hQQ1V1WmpFS0ZBc0Nrd0VNREMwaElDc2tYVFUxRHlvcFh5UXlKeWczRHcrSVIxeGNSdzRtRndNL0lDRUJJQjlBQWhnb0RpTVZLeFVCRUI1TUZnMENBUUFBQWdEeUFNQUREZ0xBQUFNQUNnQUFKU01STXdFM0p6Y0pBU2NERGxWVi9lVEh4emtCQVA4QU9jQUNBUDQ1eDhjNS93RC9BRGtBQUFBQkFFc0FWZ08xQXlvQUN3QUFBUmNIQ1FFZUFSY0hJUlVoQVcrdFovNldBV29aTkJxdkFrajl1Z0ZxcldjQmFnRnFHak1hcnFzQUFBSUFWUUFWQTZzRGF3QWNBQ2NBQUFFM0Z3Y3pGU01lQVJjSEp4VWpOUWNuTnlNMU15YzNIZ0VYTlRNVkF6TTNOU2NqQnhVZUFSY0NWWng1bk4zZEowNG5lWnlxbkhtYzNkMmNlU2RPSjZxY2ptUmtqbVFaTWhrQ2pweDVuS29uVGlkNW5OM2RuSG1jcXB4NUowNG4zZDMraDJTT1pHU09HVElaQUFBRUFBSC92Z1AvQThFQUR3QWZBQ2NBTHdBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdNaElnWVZFUlFXTXlFeU5qVVJOQ1lCQnpjWE54Y0hGd0UzQnhjSEZ6Y1hBMy85QWpWTFN6VUMvalZMU3pUOC9oRVlHQkVEQWhFWUdQM2c0MGd5bnptZk1BRzNTdVV4b0RtZ01VSkxOUU1ETlV0TE5mejlOVXNEckJnUi9QOFJHUmtSQXdFUkdQMHRTZVF4bnptZk1RRzM1VWt5b0RtZ01RQURBRlVBRlFPckEyc0FBd0FIQUFzQUFDVVZJVFVCRlNFMUFSVWhOUU9yL0tvRFZ2eXFBMWI4cXNDcnF3RlZxcW9CVnF1ckFBQUFBQVFBQWYrK0EvOER3UUFQQUI4QUp3QXZBQUFGSVNJbU5SRTBOak1oTWhZVkVSUUdBeUVpQmhVUkZCWXpJVEkyTlJFMEpnRTNCeWNISnpjbkFRYzNKemNuQnljRGYvMENOVXRMTlFMK05VdExOUHorRVJnWUVRTUNFUmdZL1d6a1NUS2ZPWjh3QVd4SjVER2ZPWjh4UWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL2U1SjVER2dPYUF4QVd6a1NUR2dPYUF4QUFFQXF3RnJBMVVDRlFBREFBQVRJUlVocXdLcS9WWUNGYW9BQUFBQkFXUUF3QUtjQXNBQUJRQUFKVGNuTndrQkFXVEh4emdCQVA4QStjZkhPZjhBL3dBQUFBQUFBUURTLzlZRExnT3FBQlFBQUFFSEp3RVdGeDRCRnhZWEJ5Y1JOeGNKQVRjWEVRR2xiR2NCTGlZbEprd2xKaVpuYkd4bi90TCswbWRzQW9Gc1p3RXVKaVVtVENVbUptZHMvbjVzWi83U0FTNW5iQUdDQUFBQUFBTUFBZisvQkFBRHdnQWNBQ29BT1FBQUFUSVhIZ0VYRmhVVUJ3NEJCd1lqSWljdUFTY21OVFEzUGdFM05qTUZBUjRCTXpJM1BnRTNOalUwSmljdUFTTWlCdzRCQndZVkZCWVhBUUlBYWwxZGl5Z3BLU2lMWFYxcWFsMWRpeWdvS0NpTFhWMXFBVkg5cVRhR1NsaE9UblFoSWpCME40WktXRTVPY3lJaEx5c0NWd1BDS0NtTFhsMXFhMTFkakNncEtTaU1YVjFyYWwxZWl5a28rLzJwS2pBaUlYUk9UVmxLaFlFcU1DRWlkRTFPV0V1R05nSlhBQUFDQUtzQVFBTlZBMEFBQ0FBU0FBQUJJUkVoRVNFMU14VVhJeFVoTlNNUklSRXhBbFVCQVAxV0FRQ3FxMVgrcWxVQ0FBTHIvVlVDcTFWVlZxcXEvZ0FDQUFBQUFBRUFxd0FWQTFVREZRQVBBQUFCSXhFWElRc0JJVGMxTXhFak5TRVZBd0JWcXY4QVZWWC9BS3BXcXdJQUFzRCtxMWIvQUFFQVZsVUJBRlZWQUFVQUFmKytBLzhEd1FBUEFCNEFKZ0E4QUVRQUFBVWhJaVkxRVRRMk15RXlGaFVSRkFZQk5TTWlCaFVSRkJZN0FSRWpOVE1GSVJFaE1qWTFFUThCSnpjZUFSY0hKeFVqRndjbk54NEJGd2N6TlRFVElSVWhOVFFtSXdOLy9RSTFTMHMxQXY0MVMwdjlUSUlSR0JnUmdxdXJBcW45ckFJckVSaitEVHh6SFRvZFBRekVEVDF6Y3hBZUR3MXYxZjNWQWxRWUVVSkxOUU1ETlV0TE5mejlOVXNEQXFvWUVmei9FUmtDVlZWVi9hc1pFUUlyNXcwOWN4MDZIRDBOeEF3OWRITVBIZzhOYndIbXFvRVJHQUFBQUFBQkFLc0Fhd05WQXhVQUN3QUFFeUVSTXhFaEZTRVJJeEVocXdFQXFnRUEvd0NxL3dBQ0ZRRUEvd0NxL3dBQkFBQUJBV1FBd0FLY0FzQUFCUUFBSlNjM0p3a0JBcHpIeHpqL0FBRUErY2ZIT2Y4QS93QUFBQUFBQWdBQi83OEVBQVBDQUJ3QU9RQUFBU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KaU1WTWhjZUFSY1dGUlFIRGdFSEJpTWlKeTRCSnlZMU5EYytBVGMyTXdJQWFsMWRpeWdvS0NpTFhWMXFhbDFkaXlncEtTaUxYVjFxV0U1T2RDRWlJaUYwVGs1WVdFNU9jeUloSVNKelRrNVlBOElvS1l0ZVhXcHJYVjJNS0NrcEtJeGRYV3RxWFY2TEtTaFhJU0owVFU1WVdVMU9kQ0VpSWlGMFRrMVpXRTVOZENJaEFBQURBQUgvdndRQUE4SUFIQUE1QUZZQUFBRXlGeDRCRnhZVkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpGU0lIRGdFSEJoVVVGeDRCRnhZek1qYytBVGMyTlRRbkxnRW5KaU1CRkFjT0FRY0dJeUluTGdFbkpqVTBOejRCTnpZek1oY2VBUmNXRlFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxV0U1T2N5SWhJU0p6VGs1WVdFNU9kQ0VpSWlGMFRrNVlBUUFVRkVVdkx6VTFMeTVHRkJRVUZFWXVMelUxTHk5RkZCUUR3aWdwaTE1ZGFtdGRYWXdvS1Nrb2pGMWRhMnBkWG9zcEtGY2hJblJOVGxoWlRVNTBJU0lpSVhST1RWbFlUazEwSWlIK1ZqVXZMMFVVRkJRVVJTOHZOVFV1TDBZVUZCUVVSaTh1TlFBQUFBRUFTd0JXQTdVREtnQVBBQUFCSnpjV0Z4NEJGeFlYQVNjM0lUVWhBcEt1WnkwdExWc3RMUzcrbG1ldC9ib0NSd0lWcm1jdExTNWFMUzR0L3BabnJhc0FBQUFBQWdDQUFFQURnQU5BQUEwQUdBQUFBUkVoRVNNUkZCWXpJVEkyTlJFRk54Y0hKemNYRVRNUk1RTXIvYXBWTWlNQ1ZpTXkvcXR1UE5YVlBHNVdBY0QrMVFFci90VWpNaklqQVNzZGJqelYxVHh1QVozK1l3QUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRRlZBR3NDcXdNVkFBTUFBQWtCRVFFQlZRRlcvcW9Cd0FGVi9WWUJWUUFCQVZVQWF3S3JBeFVBQXdBQUNRSVJBVlVCVnY2cUF4WCtxLzZyQXFvQUFBRUFxd0VWQTFVQ2F3QURBQUFUQ1FFaHF3RlZBVlg5VmdFVkFWYitxZ0FBQVFCRUFHWUR2QU1iQUFrQUFBa0NOeGNCSGdFWE1RTzgvY1QreEhqRUFjUWVQQjRDb3YzRUFUeDR3d0hFSHp3ZUFBQUFBQUVCVlFCckFxc0RGUUFEQUFBSkFoRUJWUUZXL3FvREZmNnIvcXNDcWdBQUFRQ3JBV3NEVlFJVkFBTUFBQk1oRlNHckFxcjlWZ0lWcWdBQUFBRUFxd0VWQTFVQ2F3QURBQUFUSVFrQnF3S3EvcXYrcXdKci9xb0JWZ0FBQVFBQUFBRUFBUFFmZlE5ZkR6ejFBQXNFQUFBQUFBRFpRWStaQUFBQUFObEJqNWtBQVArK0JBRUR3Z0FBQUFnQUFnQUFBQUFBQUFBQkFBQUR3UC9BQUFBRUFBQUEvLzhFQVFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBT0FRQUFBQUFBQUFBQUFBQUFBSUFBQUFFQUFDMkJBQUFBQVFBQUpZRUFBRUFCQUFBQVFRQUFBRUVBQUFCQkFBQUFRUUFBSE1FQUFCVkJBQUFWUVFBQUFFRUFBQ3JCQUFBYmdRQUFIZ0VBQUF5QkFBQWxnUUFBQUVFQUFBaUJBQUFJZ1FBQUZVRUFBRHlCQUFBcXdRQUFGVUVBQUFaQkFBQThnUUFBRXNFQUFCVkJBQUFBUVFBQUZVRUFBQUJCQUFBcXdRQUFXUUVBQURTQkFBQUFRUUFBS3NFQUFDckJBQUFBUVFBQUtzRUFBRmtCQUFBQVFRQUFBRUVBQUJMQkFBQWdBUUFBS3NFQUFGVkJBQUJWUVFBQUtzRUFBQkVCQUFCVlFRQUFLc0VBQUNyQUFBQUFBQUtBQlFBSGdBNEFIUUFsZ0N3QVBnQlBBRjJBYWdCMWdIc0FoZ0NVZ0o0QXB3RExBT0lBNklENUFScUJPQUUvQVVZQldnRnNnWVVCakFHVEFhS0J0Z0c5QWRDQjFBSFpBZVFCK3dJRGdnc0NKUUlyQWpBQ1JnSm1nbThDZWdKK0FvSUNoZ0tLQXBDQ2xJS1lBcHdBQUFBQVFBQUFEZ0FXd0FNQUFBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQTRBcmdBQkFBQUFBQUFCQUFrQUFBQUJBQUFBQUFBQ0FBY0FjZ0FCQUFBQUFBQURBQWtBUEFBQkFBQUFBQUFFQUFrQWh3QUJBQUFBQUFBRkFBc0FHd0FCQUFBQUFBQUdBQWtBVndBQkFBQUFBQUFLQUJvQW9nQURBQUVFQ1FBQkFCSUFDUUFEQUFFRUNRQUNBQTRBZVFBREFBRUVDUUFEQUJJQVJRQURBQUVFQ1FBRUFCSUFrQUFEQUFFRUNRQUZBQllBSmdBREFBRUVDUUFHQUJJQVlBQURBQUVFQ1FBS0FEUUF2RUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMVpsY25OcGIyNGdNUzR3QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1FRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkwRm5RMnhoYzNOcFl3QkJBR2NBUXdCc0FHRUFjd0J6QUdrQVkxSmxaM1ZzWVhJQVVnQmxBR2NBZFFCc0FHRUFja0ZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMFp2Ym5RZ1oyVnVaWEpoZEdWa0lHSjVJRWxqYjAxdmIyNHVBRVlBYndCdUFIUUFJQUJuQUdVQWJnQmxBSElBWVFCMEFHVUFaQUFnQUdJQWVRQWdBRWtBWXdCdkFFMEFid0J2QUc0QUxnQUFBQU1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPVxcXCIpIGZvcm1hdChcXFwidHJ1ZXR5cGVcXFwiKTtcXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICBmb250LXN0eWxlOiBub3JtYWw7IH1cXG5cXG4uYWctdGhlbWUtZGFyayB7XFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7XFxuICBjb2xvcjogI2NjYztcXG4gIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTRweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctYm9keS12aWV3cG9ydCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51LCAuYWctdGhlbWUtZGFyayAuYWctdGhlbWUtZGFyay5hZy1kbmQtZ2hvc3QsIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciwgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCwgLmFnLXRoZW1lLWRhcmsgLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYiB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICBtYXJnaW46IDRweDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgcGFkZGluZzogNHB4IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYi5hZy10YWItc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzMwMmUyZSAhaW1wb3J0YW50O1xcbiAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAqOmZvY3VzLCAuYWctdGhlbWUtZGFyayAqICo6YmVmb3JlLCAuYWctdGhlbWUtZGFyayAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYiB7XFxuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxOTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDIyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUwNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM1MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU1MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ0OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ5NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1MjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3OTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg2NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU5MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4ODhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjg4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDgwcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzM2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTUycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzg0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwgLmFnLWljb24ge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24ge1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsIHtcXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1kYXJrIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIGxhYmVsOmVtcHR5IHtcXG4gICAgICAgIG1hcmdpbjogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZGFyayAuYWctdG9nZ2xlLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCBncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtdXAge1xcbiAgICBjb2xvcjogZ3JlZW55ZWxsb3c7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEtZG93biB7XFxuICAgIGNvbG9yOiByZWQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlO1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0sXFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ4LCA0NiwgNDYsIDAuMyk7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXSB7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInJhbmdlXFxcIl0ge1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6ZGlzYWJsZWQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuNSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0OCwgNDYsIDQ2LCAwLjMpO1xcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgY29sb3I6ICNjY2NjY2M7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93IHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1yb3c6bm90KC5hZy1yb3ctZmlyc3QpIHtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1yb3cuYWctcm93LWxhc3Qge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctb2RkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQwM2UzZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1ldmVuIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlci5hZy1zY3JvbGxlci1jb3JuZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1ob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWdyb3VwLWNlbGw6bm90KC5hZy1oZWFkZXItZ3JvdXAtY2VsbC1uby1ncm91cCkge1xcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgY3Vyc29yOiBjb2wtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiO1xcbiAgICBtaW4td2lkdGg6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcsIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyYWcge1xcbiAgICBjdXJzb3I6IG1vdmU7XFxuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xcbiAgICBjdXJzb3I6IGdyYWI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb3ctZHJhZ2dpbmcge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwsXFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwsXFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsLWZvY3VzLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwuYWctY2VsbC1yYW5nZS1oYW5kbGUge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkNWQ1O1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWljb24ge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICBtaW4td2lkdGg6IDIwcHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3Ige1xcbiAgICAgIGhlaWdodDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCc4cHgnJTIwdmlld0JveCUzRCcwJTIwMCUyMDElMjA4cHgnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUzRSUzQ2xpbmUlMjB4MSUzRCcwJyUyMHkxJTNEJzRweCclMjB4MiUzRCcxJyUyMHkyJTNEJzRweCclMjBzdHJva2Utd2lkdGglM0QnMSclMjBzdHJva2UlM0QnJTIzQTlBOUE5JyUyRiUzRSUzQyUyRnN2ZyUzRVxcXCIpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjBweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1kYXJrLmFnLWRuZC1naG9zdCB7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBjb2xvcjogI2NjY2NjYztcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XFxuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW46IDA7XFxuICAgIHBhZGRpbmc6IDAgOHB4O1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrLmFnLWRuZC1naG9zdCBzcGFuLFxcbiAgICAuYWctdGhlbWUtZGFyay5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsuYWctZG5kLWdob3N0IC5hZy1kbmQtZ2hvc3QtaWNvbiB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgICAgb3BhY2l0eTogMTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IHtcXG4gICAgcGFkZGluZzogMnB4IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2Omxhc3QtY2hpbGQgPiBzcGFuIHtcXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRhYi1ib2R5IC5hZy1tZW51LWxpc3QgPiBkaXY6bGFzdC1jaGlsZCA+IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsdGVyIC5hZy1maWx0ZXItc2VsZWN0IHtcXG4gICAgbWFyZ2luOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIG1hcmdpbjogMCAzcHggMCA2cHg7XFxuICAgIHdpZHRoOiAxMnB4O1xcbiAgICBoZWlnaHQ6IDE3cHg7XFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1saXN0IHtcXG4gICAgaGVpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyMHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtID4gZGl2LCAuYWctdGhlbWUtZGFyayAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWl0ZW0gPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24ge1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4ge1xcbiAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLXByaW1hcnktY29scy1saXN0LXBhbmVsID4gZGl2IHtcXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICAgIG1hcmdpbjogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCB7XFxuICAgICAgd2lkdGg6IDEwMCU7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2Uge1xcbiAgICAgICAgY29sb3I6ICNjY2NjY2M7XFxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgICAgICAtbXMtZmxleDogYXV0bztcXG4gICAgICAgICAgICAgICAgZmxleDogYXV0bztcXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XFxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwgLmFnLWZpbHRlci10b29scGFuZWwtaW5zdGFuY2UgLmFnLWZpbHRlci10b29scGFuZWwtaGVhZGVyID4gZGl2IHtcXG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHktd3JhcHBlciB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIC5hZy1waXZvdC1tb2RlLXNlbGVjdCB7XFxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XFxuICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3Age1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgICBwYWRkaW5nOiA0cHggMDtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgICBmb250LXNpemU6IDE0cHg7XFxuICAgICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wID4gZGl2ID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGNvbG9yOiAjY2NjY2NjO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmc6IDAgMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFnaW5nLXBhbmVsID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uLmFnLWRpc2FibGVkIC5hZy1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMjI4LCAyMjgsIDIyOCwgMC41KTtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIHNwYW4ge1xcbiAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNzA4YjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2Q2ZDVkNTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEzNSwgMTYwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydC5hZy1jZWxsLXJhbmdlLWNoYXJ0LWNhdGVnb3J5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTYwLCAxMDAsIDAuNCk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC40KTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDE2MCwgMTYwLCAwLjYpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZC0zOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMCwgMTYwLCAxNjAsIDAuNyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC44KTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC10b3Age1xcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI2Q2ZDVkNTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1yaWdodC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM3Njc2NzY7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsbC1oYW5kbGUsIC5hZy10aGVtZS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZmlsbC1oYW5kbGUge1xcbiAgICBjdXJzb3I6IGNlbGw7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMTJweDtcXG4gICAgaGVpZ2h0OiAzN3B4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nLCAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjMzAyZTJlO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcG9wdXAtZWRpdG9yIC5hZy1sYXJnZS10ZXh0YXJlYSB0ZXh0YXJlYSB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgIHBhZGRpbmc6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXZhbHVlIHtcXG4gICAgcGFkZGluZzogMCA0cHggMCAxMnB4O1xcbiAgICBoZWlnaHQ6IDI1cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICAgIGhlaWdodDogMjVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmljaC1zZWxlY3QgLmFnLXJpY2gtc2VsZWN0LXJvdyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE3MDhiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbHRyIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIGJ1dHRvbiB7XFxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgd2lkdGg6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb250cmFjdGVkOm5vdCguYWctaGlkZGVuKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSB+IC5hZy1ncm91cC1jaGVja2JveCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY2hlY2tib3g6bm90KC5hZy1pbnZpc2libGUpIH4gLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggc3BhbiB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBoZWlnaHQ6IDI1cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1sZWZ0LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogIzQwM2UzZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcXG4gICAgbWluLWhlaWdodDogMTZweDtcXG4gICAgcGFkZGluZzogMCAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogMTZweDtcXG4gICAgICBtYXJnaW46IDAgMnB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCB7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGE3MDhiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCA+IC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgbWFyZ2luLXRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWRhdGEtY2hhbmdlZC1hbmltYXRpb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcm93LXN0dWIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctc3R1Yi1jZWxsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWJvdHRvbSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLXRvcCAuYWctcm93LCAuYWctdGhlbWUtZGFyayAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYmFja2dyb3VuZDogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuNSk7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogI2NjYzsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXN0YXR1cy1iYXItY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZGV0YWlscy1yb3cge1xcbiAgICBwYWRkaW5nOiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogIzMwMmUyZTtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMge1xcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiAjY2NjO1xcbiAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDA7XFxuICAgICAgICB3aWR0aDogMTAwJTtcXG4gICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcycHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctc2lkZS1iYXIuZnVsbC13aWR0aCAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXByaW1hcnktY29scy1maWx0ZXItd3JhcHBlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzAzMDtcXG4gICAgcGFkZGluZzogMHB4O1xcbiAgICBib3JkZXI6IDAgc29saWQgI2I2YjZiNjtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjI0MjQ7XFxuICAgICAgaGVpZ2h0OiAxMnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBoZWlnaHQ6IDI2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50Om5vdCguYWctY29sbGFwc2libGUpID4gLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZS1iYXIgLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgICBkaXNwbGF5OiBub25lOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQyYzJjO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1pdGVtIHtcXG4gICAgICBtYXJnaW46IDJweCAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sYWJlbGVkIGxhYmVsIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1sYWJlbGVkLmFnLWxhYmVsLWFsaWduLXRvcCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1kYXJrIC5hZy1hbmdsZS1zZWxlY3QgPiAuYWctd3JhcHBlciA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIHtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICB3aWR0aDogNDBweDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDVkNTtcXG4gICAgYm9yZGVyLXJhZGl1czogNTAwcmVtOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDVkNTtcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDEycHgpOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9nZ2xlLWJ1dHRvbi5hZy1zZWxlY3RlZCAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNmQ1ZDU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7XFxuICAgICAgcmlnaHQ6IC0xcHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIGJ1dHRvbiB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwMmUyZTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tY29sb3Ige1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS12YWwge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20oYmxhY2spLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1hbHBoYS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdGV4dC12YWx1ZSB7XFxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgY29sb3I6ICMzMzM7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDJlMmU7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAgIC5hZy1kcmFnZ2luZy1yYW5nZS1oYW5kbGUgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbC5hZy1kaWFsb2cge1xcbiAgICAgIG9wYWNpdHk6IDAuNztcXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MzYzNjMztcXG4gICAgICBjb2xvcjogI2NjY2NjYztcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIC5hZy1pY29uIHtcXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XFxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0OTQ5NDk7IH1cXG4gICAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjtcXG4gICAgICBwYWRkaW5nOiAycHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiAjY2NjO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy10b29sdGlwLmFnLXRvb2x0aXAtaGlkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6ICMzMDJlMmU7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTUxNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWwge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgICBtYXJnaW46IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgybiArIDIpOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDNuKSB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbC5hZy1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiAjY2NjO1xcbiAgICBmb250LXNpemU6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiAjZDZkNWQ1OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LWZvcm1hdCAuYWctY2hhcnQtZm9ybWF0LXdyYXBwZXIgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICBtYXJnaW46IDQuOHB4IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICNkNmQ1ZDU7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWFnZ3JlZ2F0aW9uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2FuY2VsOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNvbHVtbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDlcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY29weTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MENcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZGF0YTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MEZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWZpcnN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24taW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MThcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tbG9hZGluZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW1pbmltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tbm9uZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1waW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1wcmV2aW91czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjdcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tc21hbGwtbGVmdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkRcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi10aWNrOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi10cmVlLW9wZW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xcbiAgICBsaW5lLWhlaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCB7XFxuICAgIGNvbG9yOiAjZDZkNWQ1OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaWNvbi1yb3ctZHJhZzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICNkNmQ1ZDU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctcnRsIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkLFxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwge1xcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cXG4gICAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLXJ0bCAuYWctaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhciAuYWctcGFuZWwtY29udGFpbmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZGFyayAuYWctcnRsIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIxMnB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCIyNXB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiMjRweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCIyMHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCI3MHB4XFxcIiwgXFxcImNoZWNrYm94SW5kZW50V2lkdGhcXFwiOiBcXFwiMTZweFxcXCIsIFxcXCJsZWFmTm9kZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJyb3dIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncmlkU2l6ZVxcXCI6IFxcXCI0cHhcXFwiLCBcXFwiaWNvblNpemVcXFwiOiBcXFwiMTJweFxcXCIgfSc7XFxuICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10YWItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYyNjI2MjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZhZGVkIHtcXG4gICAgb3BhY2l0eTogMC4zOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbC5hZy1jb2x1bW4tZHJvcDpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctaGVhZGVyLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10b29sLXBhbmVsLXdyYXBwZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oYXMtZm9jdXMgLmFnLWNlbGwtZm9jdXM6bm90KC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNzA4YjsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogIzQwM2UzZTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIG1pbi1oZWlnaHQ6IDE4cHg7IH1cXG4gICAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1kYXJrIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAwLCAxNjAsIDE2MCwgMC40KTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGxpZ2h0Z3JlZW47IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1jZWxsLWhpZ2hsaWdodC1hbmltYXRpb24ge1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcztcXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwLFxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xcbiAgICBoZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaXRpYWw7XFxuICAgICAgICAgICAgYm94LXNpemluZzogaW5pdGlhbDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLXNlbGVjdGlvbi1jaGVja2JveCBzcGFuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICB0b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWhlYWRlci1jZWxsLW1vdmluZyAuYWctaGVhZGVyLWNlbGwtbGFiZWwge1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJlOyB9XFxuICAuYWctdGhlbWUtZGFyayAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1kYXJrIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgcGFkZGluZzogMTBweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWNvbHVtbi1uYW1lLWZpbHRlciB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgaW5wdXQsXFxuICAuYWctdGhlbWUtZGFyayBzZWxlY3Qge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzAyZTJlO1xcbiAgICBjb2xvcjogI2NjYzsgfVxcbiAgLmFnLXRoZW1lLWRhcmsgLmFnLWZsb2F0aW5nLWZpbHRlci1ib2R5IGlucHV0W3JlYWRvbmx5XSB7XFxuICAgIGJhY2tncm91bmQ6IHJnYmEoNDgsIDQ2LCA0NiwgMC4zKTsgfVxcblxcblwiIiwibW9kdWxlLmV4cG9ydHMgPSBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuQGZvbnQtZmFjZSB7XFxuICBmb250LWZhbWlseTogXFxcImFnR3JpZENsYXNzaWNcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadDZzb2E0QUFBRjRBQUFVNEdobFlXUVZvMk92QUFBV1dBQUFBRFpvYUdWaEI4UUQrQUFBRnBBQUFBQWthRzEwZU5ZQUdGa0FBQmEwQUFBQTRHeHZZMkdhaEpWNkFBQVhsQUFBQUhKdFlYaHdBRVVBWFFBQUdBZ0FBQUFnYm1GdFpSSEJiQ1VBQUJnb0FBQUJubkJ2YzNRQUF3QUFBQUFaeUFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFMWUFRQU5LQTBBQUNnQUFBU0VYQnlFVklSTURJUlVEU3Y2VGVYa0JiZjFzM053Q2xBS1YxZFdyQVlBQmdLc0FBQUFBQVFBQS84QUVBQVBBQUNFQUFBRTFCeWMzRndjbkVTRW5OeGNISnpjaEVUY1hCeWMzRnhFaEZ3Y25OeGNISVJFQnpWSkl6YzFJVWdFSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKQXZNSlVVak56VWhSL3ZkU1NNM05TRkwrOTFGSXpjMUlVUUVKVWtqTnpVaFNBUUFBQUFBQUFRQ1dBQjREYWdOaUFCQUFBQUVISndFV0Z4NEJGeFlYQnljUkl4RXhBYTZ4WndGcUxTNHRXaTR0TFdld3BRSkNzV2NCYWk0dExWc3RMUzFuc1AzZEFpUUFBQUFCQVFBQXdBTUFBc0FBQ3dBQUFRY25CeWMzSnpjWE54Y0hBd0JJdUxoSXVMaEl1TGhJdUFFSVNMaTRTTGk0U0xpNFNMZ0FCUUFCLzc0RC93UEJBQThBSHdBakFDY0FMQUFBQlNFaUpqVVJORFl6SVRJV0ZSRVVCZ01oSWdZVkVSUVdNeUV5TmpVUk5DWUJNeEVqSlRNVkl3TXpFU01SQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDJhVlZVQlZWVlZxMVpXUWtzMUF3TTFTMHMxL1AwMVN3T3NHQkg4L3hFWkdSRURBUkVZL3F2KzFxcXFBYXIrVmdHcUFBQUFBd0FCLzc0RC93UEJBQThBSHdBcEFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdjQkp6Y1hFeDRCRnpFRGZ6VkxTelg5QWpWTFN6VUMvL3orRVJnWUVRTUNFUmdZYlA3by9UV3U2QkltRWdQQlN6WDgvVFZMU3pVREF6VkxWeGdSL1A4UkdSa1JBd0VSR0w3OS9zcERpd0dvQ2hRS0FBQUFBQU1BQWYrK0EvOER3UUFQQUI4QUl3QUFBVElXRlJFVUJpTWhJaVkxRVRRMk13VWhJZ1lWRVJRV015RXlOalVSTkNZRElUVWhBMzgxUzBzMS9RSTFTMHMxQXYvOC9oRVlHQkVEQWhFWUdPYitxZ0ZXQThGTE5mejlOVXRMTlFNRE5VdFhHQkg4L3hFWkdSRURBUkVZL2dHcUFBQUFBZ0FCLzc0RC93UEJBQThBSHdBQUFUSVdGUkVVQmlNaElpWTFFVFEyTXdVaElnWVZFUlFXTXlFeU5qVVJOQ1lEZnpWTFN6WDlBalZMU3pVQy8veitFUmdZRVFNQ0VSZ1lBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVlBQU1BY3dCSUE0MERPQUFHQUFvQUZ3QUFDUUVIRndrQ0lUY1hJUVV3QmhVVUZqTXlOalUwSmpFQy9mNVZQR2IrOXdGRkFVWDk3OHpNL21nQ1RGVXlJeU15VlFHTkFhczhadjczL3JzQlJjM05RR3NxSXpJeUl5cHJBQUFBQWdCVkFCVUJxd05yQUFNQUJ3QUFBUkVoRVFFVklUVUJxLzZxQVZiK3FnSnIvYW9DVmdFQXE2c0FBQUFHQUZVQUZRT3JBMnNBQXdBSEFBc0FEd0FUQUJjQUFDVVZJVFVoRlNFMUF4VWhOU0VWSVRVREZTRTFJUlVoTlFHci9xb0RWdjZxcXY2cUExYitxcXIrcWdOVy9xckFxNnVycXdGVnFxcXFxZ0ZXcTZ1cnF3QUFBd0FCLzc0RC93UEJBQThBSHdBakFBQUJNaFlWRVJRR0l5RWlKalVSTkRZekJTRWlCaFVSRkJZeklUSTJOUkUwSmdNVklUVURmelZMU3pYOUFqVkxTelVDLy96K0VSZ1lFUU1DRVJnWWtmNEFBOEZMTmZ6OU5VdExOUU1ETlV0WEdCSDgveEVaR1JFREFSRVkvcXVxcWdBQUFBQURBS3NBYXdOVkF4VUFCd0FNQUJJQUFBRXpFU0UxSXhFaEV5RVJJUkVuTlNFUk14RUNxNnIrQUtvQ0FGWCtxd0ZWcS82clZRSnIvZ0NxQWdEL0FQNnJBVlZXVmY2ckFRQUFBQUFBQVFCdUFDNERrZ05TQUEwQUFBa0JIZ0VYQ1FFSENRRW5DUUUzQWdBQkdSNDlIdjduQVJsNS91Zis1M2tCR2Y3bmVRSTVBUmtlUFI3KzUvN25lUUVaL3VkNUFSa0JHWGtBQXdCNEFOVURud0xoQURnQVJ3QmFBQUFCTmpjK0FUYzJGeDRCSHdFR0J3NEJCd1lIRmhjZUFSY1dGdzRCSnk0Qkp3NEJCd1luTGdFbkpqYytBVGN1QVRjK0FSY2VBUmNlQVJjSEJnY09BUWNHTno0Qk56QTJCekVuSWdZSERnRUhCaGNlQVJjV0Z6Y3VBU014QWhvbUpTWkdJQ0VkRUJ3Tk55QWdJRUFoSUNBZ0lTQkFJQ0FnTm0xSklrb2hPM3hDSHlVbU93OFBEZzFES0VCTUdCQTlNVDFzTmhBaEVKc25LeXMyQVFJdEkwUWtBd1dPQkFrRkF3VURGdzBNUGljbkhnRWxUaDBDT1NFZUh5OE9EZ0VCQ1FjaEd4c2JOeHdiR3hvWkdqUWFHaG9oRGpZWk54a3NUQjBPQWdJaUhoNHFLemtUSW5BMEl5TUJCRTRtREJnTWtBRVZGVEVURXdJQk5CZzBBZU1DQVFFREFROFVGU1VPRFFFekdqUUFBQUFBQndBeUFDY0R6Z05aQUFzQUR3QWJBQjhBS3dBd0FEMEFBRGNpQmhVVUZqTXlOalUwSmlrQkZTRUJJZ1lWRkJZek1qWTFOQ1loRlNFMUJ6SVdGUlFHSXlJbU5UUTJBUlVoTlNFaE1oWVZGQVlqSWlZMU5EWXpuUzArUGkwc1BqNERCZjFWQXF2OHp5MCtQaTBzUGo0REJmMVZoaDRzTEI0ZkxDd0RVUDFWQXF2OHp5dytQaXd0UGo0dC9ENHNMVDQrTFN3KzFRSUVQeXdzUHo4c0xEL1cxaUFzSHg4c0xCOGZMQUZPMWRVK0xTdytQaXd0UGdBQUFBRUFsZ0FqQTJvRFhRQUpBQUFCRVRNUk54Y0pBVGNYQWEra3NHZitsdjZXWjdJQlF3SWEvZWV3Wi82V0FXcG5zUUFBQUFBREFBSC93UVFCQThFQUVBQWdBQ3dBQUFFeUZoVVJGQVlqSVNJbU5SRTBOak1oRnlFaUJoVVJGQll6SVRJMk5SRTBKZ0V6RlNNVkl6VWpOVE0xTXdPQU5VeE1OZjBCTlV0TE5RTC9BZnorRWhnWUVnTUNFUmdZL3NTcnE2dXJxNnNEd1VzMS9RQTFTMHMxQXdBMVMxY1lFZjBCRVJnWUVRTC9FUmorcktxcXFxcXJBQUFEQUNJQWRnUGVBd29BSWdCSUFGTUFBQUUzRno0Qk14WVhIZ0VYRmhjT0FRY1hCeWMzQVQ0Qk56WXlNeVkwTlNNaUJnY25CeE1tSnk0Qkp5WW5EZ0VIRmhjZUFSY1dOeGNHQndZbUp5WW5KaWN1QVNjbUp6NEJOekVCUGdFM01DWW5EZ0VIRndFb05TY2dRaU5JUWtKM05ETXJLbTlBTjBNaER2N01IajhlQ2hRTEFRczFhekpRTXVzcUpTVTZGQlFISXo0YUpqRXljejgvUHpRdUx5OWZMeTh1SWg0Zk5oa1lGeXRxUHdIakxrd2dQemtMUGl4VEF1RXBNZ2tLQWhjWFVEWTJQejVySjBVMUtRd0Jod2NGQVFFVkt4VUtFR1pLL3RZRkVSSTNKQ1FwR2o4a05Da3FPQXdNQ0VFT0JRVUpFQThiRlJvWk95QWdJajl2S2Y2UUhVc3JVQzAxVmh0cUFBQUFBd0FpQUprRDNnTG9BQnNBT3dCS0FBQUJGaGNlQVJjV0Z3WUhEZ0VuSmljbUp5NEJKeVluTmpjK0FUYzJCdzRCQnhZWEhnRTNOamMrQVRjd0ppY0dCdzRCQndZaklpY3VBU2NtSnpFbEpqUTFJdzRCQnhjK0FUYzZBVE1DQ1VoQ1FuYzBNeXM3VlZYRmFXbGpJaDRmTmhrWUZ5bzFOSHRHUmJjalBob3dSRVNjVWxOTk1WRWlQemtKRnhkREtTb3VMeW9yUWhjWENBRlNBUXRFaHp3bExtWXhDaFFMQXVnQ0Z4ZFBOalpBVjBWRlNBVUVQQlFhR2pvaElDRS9OemRSRnhldkdVQWtRakV5TVFZRkxSeFBMbEFzTENVbE53OFFFQkE1Smljc0F4WXJGUUVSSFUwV0RnSUFBQUFDQUZVQVFBT3JBMEFBQmdBTEFBQVRJUUVSSnhFQkFSVXpOU05WQTFiK3FxcitxZ0ZXcXFvRFFQNnIvbFdyQVFBQlZmNnJWbFlBQUFJQThnREFBdzRDd0FBREFBa0FBQUVSSXhFQkp6Y25DUUVCUjFVQ0hNZkhPZjhBQVFBQ3dQNEFBZ0QrT2NmSE9mOEEvd0FBQUFBQURBQ3IvK3NEVlFPVkFBTUFCd0FMQUE4QUV3QVhBQnNBSHdBakFDY0FLd0F2QUFBM014VWpKVE1WSXlVekZTTUJNeFVqSlRNVkl5VXpGU01CTXhVakpUTVZJeVV6RlNNQk14VWpKVE1WSXlFak5UT3JxcW9CQUtxcUFRQ3FxdjRBcXFvQkFLcXFBUUNxcXY0QXFxb0JBS3FxQVFDcXF2NEFxcW9CQUtxcUFhcXFxcFdxcXFxcXFnR3FxcXFxcXFvQnFxcXFxcXFxQWFxcXFxcXFBQUFBQUFVQVZmL3JBNnNEbFFBZkFDTUFLQUFzQURBQUFBRXpOU0VSSVRVakZTTVZJVFVoRVNFMUlSRWhOU0VSSVRVaEVTTVJJUlV4QVNNVk14RWpGVE0xRVNNVk15VWpGVE1CcTZvQlZ2NnFxcXNCVlFGVy9xcitxd0ZWQVZiK3F2NVdWZ0ZXQWFxcXFxcXFxcXIrQUtxcUEwQlYvd0JXVnFwVi93QlYvd0JXL3dCVkFsVUJBRlg5VlZVQnExWldBVlZWVlZVQUFBQURBQmtCRVFQbkFwTUFGZ0F0QUR3QUFBRVdGeDRCRnhZZkFRWUhEZ0VuSmk4Qk5qYytBVGMyQlE0Qkl5SW1KdzRCRHdFV0Z4NEJOelkvQVM0Qkp6RUhKalExSXc0QkJ4YytBVGMyTWpNQ0NENDhQSEl6TkN3a1hucDUvM3g3WXlReE9qbCtSRU1CTFJ5QlVsS0JIQ0U5SEFOS1hsN0ZYMTlNQXh3L0lwa0JDMFNIUENVdVpqRUtGQXNDa3dFTURDMGhJQ3NrWFRVMUR5b3BYeVF5SnlnM0R3K0lSMXhjUnc0bUZ3TS9JQ0VCSUI5QUFoZ29EaU1WS3hVQkVCNU1GZzBDQVFBQUFnRHlBTUFERGdMQUFBTUFDZ0FBSlNNUk13RTNKemNKQVNjRERsVlYvZVRIeHprQkFQOEFPY0FDQVA0NXg4YzUvd0QvQURrQUFBQUJBRXNBVmdPMUF5b0FDd0FBQVJjSENRRWVBUmNISVJVaEFXK3RaLzZXQVdvWk5CcXZBa2o5dWdGcXJXY0JhZ0ZxR2pNYXJxc0FBQUlBVlFBVkE2c0Rhd0FjQUNjQUFBRTNGd2N6RlNNZUFSY0hKeFVqTlFjbk55TTFNeWMzSGdFWE5UTVZBek0zTlNjakJ4VWVBUmNDVlp4NW5OM2RKMDRuZVp5cW5IbWMzZDJjZVNkT0o2cWNqbVJram1RWk1oa0NqcHg1bktvblRpZDVuTjNkbkhtY3FweDVKMDRuM2QzK2gyU09aR1NPR1RJWkFBQUVBQUgvdmdQL0E4RUFEd0FmQUNjQUx3QUFCU0VpSmpVUk5EWXpJVElXRlJFVUJnTWhJZ1lWRVJRV015RXlOalVSTkNZQkJ6Y1hOeGNIRndFM0J4Y0hGemNYQTMvOUFqVkxTelVDL2pWTFN6VDgvaEVZR0JFREFoRVlHUDNnNDBneW56bWZNQUczU3VVeG9EbWdNVUpMTlFNRE5VdExOZno5TlVzRHJCZ1IvUDhSR1JrUkF3RVJHUDB0U2VReG56bWZNUUczNVVreW9EbWdNUUFEQUZVQUZRT3JBMnNBQXdBSEFBc0FBQ1VWSVRVQkZTRTFBUlVoTlFPci9Lb0RWdnlxQTFiOHFzQ3Jxd0ZWcXFvQlZxdXJBQUFBQUFRQUFmKytBLzhEd1FBUEFCOEFKd0F2QUFBRklTSW1OUkUwTmpNaE1oWVZFUlFHQXlFaUJoVVJGQll6SVRJMk5SRTBKZ0UzQnljSEp6Y25BUWMzSnpjbkJ5Y0RmLzBDTlV0TE5RTCtOVXRMTlB6K0VSZ1lFUU1DRVJnWS9XemtTVEtmT1o4d0FXeEo1REdmT1o4eFFrczFBd00xUzBzMS9QMDFTd09zR0JIOC94RVpHUkVEQVJFWS9lNUo1REdnT2FBeEFXemtTVEdnT2FBeEFBRUFxd0ZyQTFVQ0ZRQURBQUFUSVJVaHF3S3EvVllDRmFvQUFBQUJBV1FBd0FLY0FzQUFCUUFBSlRjbk53a0JBV1RIeHpnQkFQOEErY2ZIT2Y4QS93QUFBQUFBQVFEUy85WURMZ09xQUJRQUFBRUhKd0VXRng0QkZ4WVhCeWNSTnhjSkFUY1hFUUdsYkdjQkxpWWxKa3dsSmlabmJHeG4vdEwrMG1kc0FvRnNad0V1SmlVbVRDVW1KbWRzL241c1ovN1NBUzVuYkFHQ0FBQUFBQU1BQWYrL0JBQUR3Z0FjQUNvQU9RQUFBVElYSGdFWEZoVVVCdzRCQndZaklpY3VBU2NtTlRRM1BnRTNOak1GQVI0Qk16STNQZ0UzTmpVMEppY3VBU01pQnc0QkJ3WVZGQllYQVFJQWFsMWRpeWdwS1NpTFhWMXFhbDFkaXlnb0tDaUxYVjFxQVZIOXFUYUdTbGhPVG5RaElqQjBONFpLV0U1T2N5SWhMeXNDVndQQ0tDbUxYbDFxYTExZGpDZ3BLU2lNWFYxcmFsMWVpeWtvKy8ycEtqQWlJWFJPVFZsS2hZRXFNQ0VpZEUxT1dFdUdOZ0pYQUFBQ0FLc0FRQU5WQTBBQUNBQVNBQUFCSVJFaEVTRTFNeFVYSXhVaE5TTVJJUkV4QWxVQkFQMVdBUUNxcTFYK3FsVUNBQUxyL1ZVQ3ExVlZWcXFxL2dBQ0FBQUFBQUVBcXdBVkExVURGUUFQQUFBQkl4RVhJUXNCSVRjMU14RWpOU0VWQXdCVnF2OEFWVlgvQUtwV3F3SUFBc0QrcTFiL0FBRUFWbFVCQUZWVkFBVUFBZisrQS84RHdRQVBBQjRBSmdBOEFFUUFBQVVoSWlZMUVUUTJNeUV5RmhVUkZBWUJOU01pQmhVUkZCWTdBUkVqTlRNRklSRWhNalkxRVE4Qkp6Y2VBUmNISnhVakZ3Y25OeDRCRndjek5URVRJUlVoTlRRbUl3Ti8vUUkxUzBzMUF2NDFTMHY5VElJUkdCZ1JncXVyQXFuOXJBSXJFUmorRFR4ekhUb2RQUXpFRFQxemN4QWVEdzF2MWYzVkFsUVlFVUpMTlFNRE5VdExOZno5TlVzREFxb1lFZnovRVJrQ1ZWVlYvYXNaRVFJcjV3MDljeDA2SEQwTnhBdzlkSE1QSGc4TmJ3SG1xb0VSR0FBQUFBQUJBS3NBYXdOVkF4VUFDd0FBRXlFUk14RWhGU0VSSXhFaHF3RUFxZ0VBL3dDcS93QUNGUUVBL3dDcS93QUJBQUFCQVdRQXdBS2NBc0FBQlFBQUpTYzNKd2tCQXB6SHh6ai9BQUVBK2NmSE9mOEEvd0FBQUFBQUFnQUIvNzhFQUFQQ0FCd0FPUUFBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNVk1oY2VBUmNXRlJRSERnRUhCaU1pSnk0Qkp5WTFORGMrQVRjMk13SUFhbDFkaXlnb0tDaUxYVjFxYWwxZGl5Z3BLU2lMWFYxcVdFNU9kQ0VpSWlGMFRrNVlXRTVPY3lJaElTSnpUazVZQThJb0tZdGVYV3ByWFYyTUtDa3BLSXhkWFd0cVhWNkxLU2hYSVNKMFRVNVlXVTFPZENFaUlpRjBUazFaV0U1TmRDSWhBQUFEQUFIL3Z3UUFBOElBSEFBNUFGWUFBQUV5Rng0QkZ4WVZGQWNPQVFjR0l5SW5MZ0VuSmpVME56NEJOell6RlNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNQkZBY09BUWNHSXlJbkxnRW5KalUwTno0Qk56WXpNaGNlQVJjV0ZRSUFhbDFkaXlncEtTaUxYVjFxYWwxZGl5Z29LQ2lMWFYxcVdFNU9jeUloSVNKelRrNVlXRTVPZENFaUlpRjBUazVZQVFBVUZFVXZMelUxTHk1R0ZCUVVGRVl1THpVMUx5OUZGQlFEd2lncGkxNWRhbXRkWFl3b0tTa29qRjFkYTJwZFhvc3BLRmNoSW5STlRsaFpUVTUwSVNJaUlYUk9UVmxZVGsxMElpSCtWalV2TDBVVUZCUVVSUzh2TlRVdUwwWVVGQlFVUmk4dU5RQUFBQUVBU3dCV0E3VURLZ0FQQUFBQkp6Y1dGeDRCRnhZWEFTYzNJVFVoQXBLdVp5MHRMVnN0TFM3K2xtZXQvYm9DUndJVnJtY3RMUzVhTFM0dC9wWm5yYXNBQUFBQUFnQ0FBRUFEZ0FOQUFBMEFHQUFBQVJFaEVTTVJGQll6SVRJMk5SRUZOeGNISnpjWEVUTVJNUU1yL2FwVk1pTUNWaU15L3F0dVBOWFZQRzVXQWNEKzFRRXIvdFVqTWpJakFTc2RianpWMVR4dUFaMytZd0FBQUFFQXF3RVZBMVVDYXdBREFBQVRJUWtCcXdLcS9xditxd0pyL3FvQlZnQUFBUUZWQUdzQ3F3TVZBQU1BQUFrQkVRRUJWUUZXL3FvQndBRlYvVllCVlFBQkFWVUFhd0tyQXhVQUF3QUFDUUlSQVZVQlZ2NnFBeFgrcS82ckFxb0FBQUVBcXdFVkExVUNhd0FEQUFBVENRRWhxd0ZWQVZYOVZnRVZBVmIrcWdBQUFRQkVBR1lEdkFNYkFBa0FBQWtDTnhjQkhnRVhNUU84L2NUK3hIakVBY1FlUEI0Q292M0VBVHg0d3dIRUh6d2VBQUFBQUFFQlZRQnJBcXNERlFBREFBQUpBaEVCVlFGVy9xb0RGZjZyL3FzQ3FnQUFBUUNyQVdzRFZRSVZBQU1BQUJNaEZTR3JBcXI5VmdJVnFnQUFBQUVBcXdFVkExVUNhd0FEQUFBVElRa0Jxd0txL3F2K3F3SnIvcW9CVmdBQUFRQUFBQUVBQVBRZmZROWZEenoxQUFzRUFBQUFBQURaUVkrWkFBQUFBTmxCajVrQUFQKytCQUVEd2dBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFEd1AvQUFBQUVBQUFBLy84RUFRQUJBQUFBQUFBQUFBQUFBQUFBQUFBQU9BUUFBQUFBQUFBQUFBQUFBQUlBQUFBRUFBQzJCQUFBQUFRQUFKWUVBQUVBQkFBQUFRUUFBQUVFQUFBQkJBQUFBUVFBQUhNRUFBQlZCQUFBVlFRQUFBRUVBQUNyQkFBQWJnUUFBSGdFQUFBeUJBQUFsZ1FBQUFFRUFBQWlCQUFBSWdRQUFGVUVBQUR5QkFBQXF3UUFBRlVFQUFBWkJBQUE4Z1FBQUVzRUFBQlZCQUFBQVFRQUFGVUVBQUFCQkFBQXF3UUFBV1FFQUFEU0JBQUFBUVFBQUtzRUFBQ3JCQUFBQVFRQUFLc0VBQUZrQkFBQUFRUUFBQUVFQUFCTEJBQUFnQVFBQUtzRUFBRlZCQUFCVlFRQUFLc0VBQUJFQkFBQlZRUUFBS3NFQUFDckFBQUFBQUFLQUJRQUhnQTRBSFFBbGdDd0FQZ0JQQUYyQWFnQjFnSHNBaGdDVWdKNEFwd0RMQU9JQTZJRDVBUnFCT0FFL0FVWUJXZ0ZzZ1lVQmpBR1RBYUtCdGdHOUFkQ0IxQUhaQWVRQit3SURnZ3NDSlFJckFqQUNSZ0ptZ204Q2VnSitBb0lDaGdLS0FwQ0NsSUtZQXB3QUFBQUFRQUFBRGdBV3dBTUFBQUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE0QXJnQUJBQUFBQUFBQkFBa0FBQUFCQUFBQUFBQUNBQWNBY2dBQkFBQUFBQUFEQUFrQVBBQUJBQUFBQUFBRUFBa0Fod0FCQUFBQUFBQUZBQXNBR3dBQkFBQUFBQUFHQUFrQVZ3QUJBQUFBQUFBS0FCb0FvZ0FEQUFFRUNRQUJBQklBQ1FBREFBRUVDUUFDQUE0QWVRQURBQUVFQ1FBREFCSUFSUUFEQUFFRUNRQUVBQklBa0FBREFBRUVDUUFGQUJZQUpnQURBQUVFQ1FBR0FCSUFZQUFEQUFFRUNRQUtBRFFBdkVGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTFabGNuTnBiMjRnTVM0d0FGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNRUZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMEZuUTJ4aGMzTnBZd0JCQUdjQVF3QnNBR0VBY3dCekFHa0FZMUpsWjNWc1lYSUFVZ0JsQUdjQWRRQnNBR0VBY2tGblEyeGhjM05wWXdCQkFHY0FRd0JzQUdFQWN3QnpBR2tBWTBadmJuUWdaMlZ1WlhKaGRHVmtJR0o1SUVsamIwMXZiMjR1QUVZQWJ3QnVBSFFBSUFCbkFHVUFiZ0JsQUhJQVlRQjBBR1VBWkFBZ0FHSUFlUUFnQUVrQVl3QnZBRTBBYndCdkFHNEFMZ0FBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLWZyZXNoIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XFxuICBjb2xvcjogYmxhY2s7XFxuICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBmb250LXNpemU6IDE0cHg7XFxuICBsaW5lLWhlaWdodDogMTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ib2R5LXZpZXdwb3J0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51LCAuYWctdGhlbWUtZnJlc2ggLmFnLXRoZW1lLWZyZXNoLmFnLWRuZC1naG9zdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3IsIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwLCAuYWctdGhlbWUtZnJlc2ggLmFnLW92ZXJsYXktbG9hZGluZy1jZW50ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gICAgbWFyZ2luOiA0cHg7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICAgIHBhZGRpbmc6IDRweCA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWhlYWRlciAuYWctdGFiLmFnLXRhYi1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjZmNmY2ICFpbXBvcnRhbnQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCBsYWJlbCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAqIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoICo6Zm9jdXMsIC5hZy10aGVtZS1mcmVzaCAqICo6YmVmb3JlLCAuYWctdGhlbWUtZnJlc2ggKiAqOmFmdGVyIHtcXG4gICAgICBvdXRsaW5lOiBub25lO1xcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctbGVmdDogOTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjcycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDMycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0ODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI0IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTc2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYwMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDE2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTI4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTI5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzIwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTMxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc0NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTEycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDUyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNzkycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgxNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNTYwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM2IHtcXG4gICAgcGFkZGluZy1yaWdodDogODY0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTM3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1OTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5MTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOSB7XFxuICAgIHBhZGRpbmctbGVmdDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogOTM2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NDBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogNjU2cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5ODRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY4OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAzMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMzJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA4MHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwODBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDczNnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEwNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEyOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMjhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc2OHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE1MnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4NHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIC5hZy1pY29uIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoZWNrYm94LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJhZGlvLWJ1dHRvbiwgLmFnLXRoZW1lLWZyZXNoIC5hZy10b2dnbGUtYnV0dG9uIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveCBsYWJlbCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYWRpby1idXR0b24gbGFiZWwsIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiBsYWJlbCB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveCBsYWJlbDplbXB0eSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYWRpby1idXR0b24gbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiBsYWJlbDplbXB0eSB7XFxuICAgICAgICBtYXJnaW46IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJhZGlvLWJ1dHRvbjpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIHtcXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgc2lsdmVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgc2lsdmVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctcm93LmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtZmlyc3QtcmlnaHQtcGlubmVkIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhIHtcXG4gICAgcGFkZGluZy1yaWdodDogMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXZhbHVlLWNoYW5nZS1kZWx0YS11cCB7XFxuICAgIGNvbG9yOiBkYXJrZ3JlZW47IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogZGFya3JlZDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWM7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBib3JkZXItd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20od2hpdGUpLCB0byhsaWdodGdyZXkpKTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlLCBsaWdodGdyZXkpO1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBpbm5lZC1sZWZ0LWhlYWRlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1yb3cge1xcbiAgICBib3JkZXI6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcm93IHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy5hZy1yb3ctbGFzdCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctb2RkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZXZlbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhvcml6b250YWwtbGVmdC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctaG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBvcGFjaXR5OiAxOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItZ3JvdXAtY2VsbCB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogZGFya2dyZXk7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLWNlbGwuYWctaGVhZGVyLWNlbGwtbW92aW5nLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlYmViZTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApLFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1ncm91cC1jZWxsOm5vdCguYWctaGVhZGVyLWdyb3VwLWNlbGwtbm8tZ3JvdXApIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWNlbGwsIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLXJvdzpmaXJzdC1jaGlsZCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMTFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMTFweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xcbiAgICBvdXRsaW5lOiBpbml0aWFsOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIHdpZHRoOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICBwYWRkaW5nOiA0cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XFxuICAgICAgbWFyZ2luLXRvcDogNHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLWRpc2FibGVkIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1vcHRpb24taWNvbiB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgIG1pbi13aWR0aDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXNob3J0Y3V0IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbWVudSAuYWctbWVudS1zZXBhcmF0b3IgPiBzcGFuIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJzEnJTIwaGVpZ2h0JTNEJzhweCclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMSUyMDhweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnNHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnNHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNBOUE5QTknJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMjBweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgY29sb3I6ICMzMzMzMzM7XFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogMjVweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogMjVweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDhweDtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2guYWctZG5kLWdob3N0IHNwYW4sXFxuICAgIC5hZy10aGVtZS1mcmVzaC5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICAgIG9wYWNpdHk6IDE7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XFxuICAgIG1pbi13aWR0aDogMjIwcHg7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDJweCAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgbWFyZ2luOiAwIDNweCAwIDZweDtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTdweDtcXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWxpc3Qge1xcbiAgICBoZWlnaHQ6IDEyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiAyMHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgcGFkZGluZy10b3A6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiArIGJ1dHRvbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiB7XFxuICAgIGhlaWdodDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tbGFiZWwsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIHBhZGRpbmctdG9wOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCA+IGRpdiB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi5hZy10b29scGFuZWwtYWRkLWdyb3VwLWluZGVudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwge1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSB7XFxuICAgICAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiBhdXRvO1xcbiAgICAgICAgICAgICAgICBmbGV4OiBhdXRvO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtbXMtZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keS13cmFwcGVyIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgICAgICBwYWRkaW5nOiA0cHggMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCB7XFxuICAgICAgaGVpZ2h0OiAyNXB4O1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcXG4gICAgICAgICAgLW1zLWZsZXg6IG5vbmU7XFxuICAgICAgICAgICAgICBmbGV4OiBub25lOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XFxuICAgICAgcGFkZGluZy10b3A6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgICAgcGFkZGluZzogNHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwIDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFuZWwgPiBzcGFuIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1pY29uIHtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYWdpbmctcGFnZS1zdW1tYXJ5LXBhbmVsIC5hZy1wYWdpbmctYnV0dG9uIGJ1dHRvbiB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG4gICAgYm90dG9tOiAwO1xcbiAgICBsZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24uYWctZGlzYWJsZWQgLmFnLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xcbiAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCBidXR0b24ge1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCBzcGFuIHtcXG4gICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCksIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtdG9wIHtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtYm90dG9tLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20ge1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWxlZnQge1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuNCk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQuYWctY2VsbC1yYW5nZS1jaGFydC1jYXRlZ29yeSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMTpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMjpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MCwgODAsIDgwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtMzpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MCwgNDAsIDQwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQtNDpub3QoLmFnLWNlbGwtZm9jdXMpIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtdG9wIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgYmxhY2s7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM3Njc2NzY7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20sIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20ge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctbHRyIC5hZy1zZWxlY3Rpb24tZmlsbC1ib3R0b20uYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjNzY3Njc2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IGRhc2hlZCBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzc2NzY3NjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWxsLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogY2VsbDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZyB7XFxuICAgIHBhZGRpbmc6IDEycHg7XFxuICAgIGhlaWdodDogMzdweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jZWxsLmFnLWNlbGwtaW5saW5lLWVkaXRpbmcsIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1wb3B1cC1lZGl0b3Ige1xcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wb3B1cC1lZGl0b3IgLmFnLWxhcmdlLXRleHRhcmVhIHRleHRhcmVhIHtcXG4gICAgICBoZWlnaHQ6IGF1dG87XFxuICAgICAgcGFkZGluZzogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3QtbGlzdCB7XFxuICAgIHdpZHRoOiAyMDBweDtcXG4gICAgaGVpZ2h0OiAxNjIuNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIHBhZGRpbmc6IDAgNHB4IDAgMTJweDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgaGVpZ2h0OiAyNXB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1yb3ctc2VsZWN0ZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWx0ciAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24gYnV0dG9uIHtcXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgaGVpZ2h0OiAxMnB4O1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICB3aWR0aDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgfiAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGhlaWdodDogMjVweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLWxlZnQsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBiYWNrZ3JvdW5kOiAjZWNmMGYxO1xcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xcbiAgICBtaW4taGVpZ2h0OiAxNnB4O1xcbiAgICBwYWRkaW5nOiAwIDJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtdGV4dCB7XFxuICAgICAgbWFyZ2luOiAwIDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtaW4td2lkdGg6IDE2cHg7XFxuICAgICAgbWFyZ2luOiAwIDJweDtcXG4gICAgICBvcGFjaXR5OiAxOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbjpob3ZlciB7XFxuICAgICAgICBvcGFjaXR5OiAxOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyYWcge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGhlaWdodDogNzBweDtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW0ge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNlbGVjdC1hZ2ctZnVuYy1wb3B1cCAuYWctdmlydHVhbC1saXN0LWl0ZW06aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZGUyZTU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2V0LWZpbHRlci1saXN0LFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51LWNvbHVtbi1zZWxlY3Qtd3JhcHBlciB7XFxuICAgIHdpZHRoOiBhdXRvOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLXZlcnRpY2FsID4gLmFnLWNvbHVtbi1kcm9wLWNlbGwge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtZGF0YS1jaGFuZ2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlYyAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtZGF0YS1jaGFuZ2VkLWFuaW1hdGlvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcm93LXN0dWIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcXG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy1pY29uIHtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNwaW47XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxcblxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW4ge1xcbiAgZnJvbSB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cXG4gIHRvIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXN0dWItY2VsbCAuYWctbG9hZGluZy10ZXh0IHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi10b3A6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1mbG9hdGluZy10b3Age1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZsb2F0aW5nLXRvcCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1mbG9hdGluZy1ib3R0b20ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctdG9wIC5hZy1yb3csIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctYm90dG9tIC5hZy1yb3cge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogYmxhY2s7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc3RhdHVzLWJhci1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbmFtZS12YWx1ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWRldGFpbHMtcm93IHtcXG4gICAgcGFkZGluZzogMjBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1vdmVybGF5LWxvYWRpbmctd3JhcHBlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1vdmVybGF5LWxvYWRpbmctY2VudGVyIHtcXG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XFxuICAgIHBhZGRpbmc6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XFxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgICAgd2lkdGg6IDE2cHg7XFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zaWRlLWJ1dHRvbiBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBib3JkZXI6IDA7XFxuICAgICAgICBjb2xvcjogYmxhY2s7XFxuICAgICAgICBwYWRkaW5nOiA4cHggMCA4cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogNzJweDtcXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDA7XFxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XFxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtncmV5OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctc2lkZS1iYXIgLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXNpZGUtYmFyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgbWluLWhlaWdodDogNTBweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wcmltYXJ5LWNvbHMtZmlsdGVyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xcbiAgICBwYWRkaW5nOiAwcHg7XFxuICAgIGJvcmRlcjogMCBzb2xpZCAjYjZiNmI2O1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWxhYmVsIC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUsIC5hZy10aGVtZS1mcmVzaCAuYWctZ3JvdXAtY29tcG9uZW50LmFnLWRpc2FibGVkID4gLmFnLWdyb3VwLWNvbXBvbmVudC1jb250YWluZXIge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogNHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xcbiAgICAgIHBhZGRpbmc6IDRweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBwYWRkaW5nOiA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogMnB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctbGFiZWxlZCBsYWJlbCB7XFxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1mcmVzaCAuYWctYW5nbGUtc2VsZWN0ID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctYW5nbGUtc2VsZWN0IC5hZy1hbmdsZS1zZWxlY3QtZmllbGQgLmFnLXBhcmVudC1jaXJjbGUge1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjkpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1jaGlsZC1jaXJjbGUge1xcbiAgICB0b3A6IDRweDtcXG4gICAgbGVmdDogMTJweDtcXG4gICAgd2lkdGg6IDZweDtcXG4gICAgaGVpZ2h0OiA2cHg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9nZ2xlLWJ1dHRvbiAuYWctaW5wdXQtd3JhcHBlciB7XFxuICAgIGhlaWdodDogMTJweDtcXG4gICAgd2lkdGg6IDQwcHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICBib3JkZXItcmFkaXVzOiA1MDByZW07IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDEycHgpOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIgLmFnLWljb24ge1xcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xcbiAgICAgIHJpZ2h0OiAtMXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGlja2VyID4gLmFnLXdyYXBwZXIgYnV0dG9uOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBcXFwiXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1kaWFsb2cuYWctY29sb3ItZGlhbG9nIHtcXG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIHtcXG4gICAgcGFkZGluZzogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWNvbG9yIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRvb2xzIHtcXG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNhdCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20od2hpdGUpLCB0byhyZ2JhKDIwNCwgMTU0LCAxMjksIDApKSk7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tdmFsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1kcmFnZ2VyIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgICAgIGhlaWdodDogMTJweDtcXG4gICAgICB3aWR0aDogMTJweDtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWh1ZS1iYWNrZ3JvdW5kIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tYWxwaGEtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLWh1ZS1hbHBoYSB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcXG4gICAgICBoZWlnaHQ6IDExcHg7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXNsaWRlciB7XFxuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XFxuICAgICAgd2lkdGg6IDEzcHg7XFxuICAgICAgaGVpZ2h0OiAxM3B4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zNyk7XFxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWUge1xcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgIGNvbG9yOiAjMzMzOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXRleHQtdmFsdWU6Zm9jdXMge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZDc3ZTQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXYge1xcbiAgICAgIG1hcmdpbjogMCAzcHg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2OmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpsYXN0LWNoaWxkIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoLmFnLXBvcHVwID4gZGl2Om5vdCguYWctdG9vbHRpcC1jdXN0b20pIHtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gICAgLmFnLWRyYWdnaW5nLXJhbmdlLWhhbmRsZSAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsLmFnLWRpYWxvZywgLmFnLWRyYWdnaW5nLWZpbGwtaGFuZGxlIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwuYWctZGlhbG9nIHtcXG4gICAgICBvcGFjaXR5OiAwLjc7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MzYzNjMztcXG4gICAgICBjb2xvcjogIzMzMzMzMztcXG4gICAgICBoZWlnaHQ6IDI1cHg7XFxuICAgICAgZm9udC1zaXplOiAxNHB4O1xcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIHNhbnMtc2VyaWY7XFxuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uIHtcXG4gICAgICAgIGhlaWdodDogMjBweDtcXG4gICAgICAgIHdpZHRoOiAyMHB4O1xcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24gLmFnLWljb24ge1xcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246aG92ZXIsIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbi5hZy1oYXMtcG9wdXAge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XFxuICAgICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIHtcXG4gICAgICBoZWlnaHQ6IDMwcHg7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgcGFkZGluZzogMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIgYnV0dG9uIHtcXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiBibGFjaztcXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgICBwYWRkaW5nOiA1cHg7XFxuICAgIGJvcmRlci13aWR0aDogMXB4O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItY29sb3I6ICNlYmViZWI7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxczsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXRvb2x0aXAuYWctdG9vbHRpcC1oaWRpbmcge1xcbiAgICAgIG9wYWNpdHk6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUge1xcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XFxuICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQgLmFnLWNoYXJ0LW1lbnUgPiBzcGFuOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0ge1xcbiAgICBjb2xvcjogYmxhY2s7XFxuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbmF2LWJhciAuYWctbmF2LWNhcmQtc2VsZWN0b3IgLmFnLW5hdi1jYXJkLWl0ZW0uYWctc2VsZWN0ZWQge1xcbiAgICAgIGNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogNC44cHggMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRDbGFzc2ljXFxcIjtcXG4gICAgc3BlYWs6IG5vbmU7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgY29sb3I6ICMzMzM7XFxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XFxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1hZ2dyZWdhdGlvbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDBcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tYXJyb3dzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1hc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNhbmNlbDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hhcnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA0XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY29sb3ItcGlja2VyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jb2x1bW46YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvbHVtbnM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvbnRyYWN0ZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNvcHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNyb3NzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jdXQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWRhdGE6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTBGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWRlc2M6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWV4cGFuZGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1leWUtc2xhc2g6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWV5ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZmlsdGVyOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1maXJzdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZ3JpcDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tZ3JvdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxhc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWxvYWRpbmc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW1heGltaXplOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1tZW51OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1taW5pbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tbWludXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5leHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5vbmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLW5vdC1hbGxvd2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1wYXN0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjNcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcGluOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1waXZvdDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjVcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcGx1czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcHJldmlvdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vZmY6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI4XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjlcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tcmlnaHQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNhdmU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJCXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLWRvd246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJDXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLWxlZnQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJEXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXNtYWxsLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1zbWFsbC11cDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkZcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdGljazpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzBcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdHJlZS1jbG9zZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMxXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXRyZWUtaW5kZXRlcm1pbmF0ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzJcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tdHJlZS1vcGVuOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzM1xcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLFxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUsXFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZC1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHksXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHkge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBvcGFjaXR5OiAwLjU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6IGJsYWNrOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgICAgY29udGVudDogXFxcIlxcXFxFOTA1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDdcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWdyb3VwLWV4cGFuZGVkIC5hZy1pY29uLWNvbnRyYWN0ZWQ6ZW1wdHk6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJvdy1kcmFnOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbiB7XFxuICAgIGNvbG9yOiBibGFjazsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkFcXFwiOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1udW1lcmljLWNlbGwge1xcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNoZWNrYm94Om5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvZ2dsZS1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1lbXB0eS1tZXNzYWdlIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4tZ3JvdXAgLmFnLWNvbHVtbi1ncm91cC1pY29ucyxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctaGVhZGVyLXNlbGVjdC1hbGwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCxcXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcXG4gICAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpIHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctZ3JvdXAtY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWdyb3VwLWV4cGFuZGVkICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkICsgLmFnLWdyb3VwLWNoZWNrYm94IHtcXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIHtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tZ3JvdXAsXFxuICAgICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwgLmFnLWljb24tcGl2b3Qge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gZGl2LCAuYWctdGhlbWUtZnJlc2ggLmFnLXJ0bCAuYWctc2V0LWZpbHRlci1pdGVtID4gc3BhbiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLWhlYWRlciAuYWctaGVhZGVyLWNlbGwtcmVzaXplOjphZnRlciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLWZyZXNoIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2dyZXk7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctcnRsIC5hZy1zaWRlLWJhci5mdWxsLXdpZHRoIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLnNhc3MtdmFyaWFibGVzOjphZnRlciB7XFxuICAgIGNvbnRlbnQ6ICd7IFxcXCJhdXRvU2l6ZVBhZGRpbmdcXFwiOiBcXFwiMTJweFxcXCIsIFxcXCJoZWFkZXJIZWlnaHRcXFwiOiBcXFwiMjVweFxcXCIsIFxcXCJncm91cFBhZGRpbmdTaXplXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwiZm9vdGVyUGFkZGluZ0FkZGl0aW9uXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwidmlydHVhbEl0ZW1IZWlnaHRcXFwiOiBcXFwiMjBweFxcXCIsIFxcXCJhZ2dGdW5jUG9wdXBIZWlnaHRcXFwiOiBcXFwiNzBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjE2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjEycHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjI1cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiNHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjEycHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLXRhYi1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZhZGVkIHtcXG4gICAgb3BhY2l0eTogMC4zOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWhvcml6b250YWwuYWctY29sdW1uLWRyb3Age1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsLmFnLWNvbHVtbi1kcm9wOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItbGVmdDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1yZXNpemU6OmFmdGVyIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yb290IHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZGFya2dyZXk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctaGFzLWZvY3VzIC5hZy1jZWxsLWZvY3VzOm5vdCguYWctY2VsbC1yYW5nZS1zZWxlY3RlZCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1hY3RpdmUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRlMmU1OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uIHtcXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIGJhY2tncm91bmQ6ICNlY2YwZjE7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20od2hpdGUpLCB0byhsaWdodGdyZXkpKTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlLCBsaWdodGdyZXkpO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZ3JleTtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgbWluLWhlaWdodDogMThweDsgfVxcbiAgICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcm9wLWNlbGwtYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XFxuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjQpO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgZGFya2dyZWVuOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzO1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgaGVpZ2h0OiAyNXB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAyMHB4OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWZpbHRlciAuYWctZmlsdGVyLWhlYWRlci1jb250YWluZXIge1xcbiAgICBoZWlnaHQ6IDI0cHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctdGFiIHtcXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbml0aWFsO1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIHRvcDogMDsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZ3JleTsgfVxcbiAgLmFnLXRoZW1lLWZyZXNoIC5hZy1oZWFkZXItY2VsbC1tb3ZpbmcgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gICAgb3BhY2l0eTogMC41OyB9XFxuICAuYWctdGhlbWUtZnJlc2ggLmFnLWhlYWRlci1jZWxsLW1vdmluZyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtncmV5O1xcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgICBjb2xvcjogYmxhY2s7XFxuICAgIHBhZGRpbmc6IDEwcHg7IH1cXG4gIC5hZy10aGVtZS1mcmVzaCAuYWctY29sdW1uLW5hbWUtZmlsdGVyIHtcXG4gICAgaGVpZ2h0OiAxNnB4OyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiQGNoYXJzZXQgXFxcIlVURi04XFxcIjtcXG5AZm9udC1mYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiBcXFwiYWdHcmlkTWF0ZXJpYWxcXFwiO1xcbiAgc3JjOiB1cmwoXFxcImRhdGE6YXBwbGljYXRpb24veC1mb250LXR0ZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxBQUVBQUFBTEFJQUFBd0F3VDFNdk1nOFNCbE1BQUFDOEFBQUFZR050WVhBWFZ0SzZBQUFCSEFBQUFGUm5ZWE53QUFBQUVBQUFBWEFBQUFBSVoyeDVadlpOQkJnQUFBRjRBQUFSV0dobFlXUVZhV04zQUFBUzBBQUFBRFpvYUdWaEI0a0QrUUFBRXdnQUFBQWthRzEwZU5ZQUpwOEFBQk1zQUFBQTRHeHZZMkY5U0hqTUFBQVVEQUFBQUhKdFlYaHdBRUlBV1FBQUZJQUFBQUFnYm1GdFpWbThxM0VBQUJTZ0FBQUJxbkJ2YzNRQUF3QUFBQUFXVEFBQUFDQUFBd1AyQVpBQUJRQUFBcGtDekFBQUFJOENtUUxNQUFBQjZ3QXpBUWtBQUFBQUFBQUFBQUFBQUFBQUFBQUJFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQURwTXdQQS84QUFRQVBBQUVBQUFBQUJBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQURBQUFBQXdBQUFCd0FBUUFEQUFBQUhBQURBQUVBQUFBY0FBUUFPQUFBQUFvQUNBQUNBQUlBQVFBZzZUUC8vZi8vQUFBQUFBQWc2UUQvL2YvL0FBSC80eGNFQUFNQUFRQUFBQUFBQUFBQUFBQUFBUUFCLy84QUR3QUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQVFBQUFBQUFBQUFBQUFJQUFEYzVBUUFBQUFBQkFRQUFhd01BQXhVQUN3QUFBU0VWQ1FFVklUVWhOeWNoQXdEK0FBRVYvdXNDQVA3VjF0WUJLd01WVmY4QS93QlZnTlhWQUFBQUFBUUFPZi81QThjRGh3QUlBQThBRndBZkFBQUJNelV6SndjekZURUhJelVIRnpVekpTY1ZJeFV6RlRjRkl4VWpGemNqTlFHcnFuTEh4M0k1Y3NmSGNnSlZ4M0p5eC82T3FuTEh4M0lDVG5MSHgzSTVjc2ZIY2xYSGNxcHl4NDV5eDhkeUFBQUJBS3NBYXdOVkF4VUFDUUFBRXhjM0VUTVJGemNKQWFzODdsYnVQUDZyL3FzQndEenUvZmtDQis4OUFWWCtxd0FDQUZVQUZRT3JBMnNBSEFBb0FBQUJJZ2NPQVFjR0ZSUVhIZ0VYRmpNeU56NEJOelkxTkNjdUFTY21JeE1ISndjbk55YzNGemNYQndJQVdFNU9kQ0VpSWlGMFRrNVlXRTVPZENFaUlpRjBUazVZMVR5Wm1UeVptVHlabVR5WkEyc2lJWFJPVGxoWVRrNTBJU0lpSVhST1RsaFlUazUwSVNMOXZEeVptVHlabVR5Wm1UeVpBQUFBQXdEVkFKVURLd0xyQUFRQUNRQU5BQUFUTXhFakVUY3pFU01SRXpNUkk5V0FnTzk0ZU85NGVBSTMvbDRCb3JUOXFnSlcvcXIvQUFBQ0FJQUFRQU9BQTBBQUR3QVdBQUFCSVNJR0ZSRVVGak1oTWpZMUVUUW1BU2MzRndFWEFRTXIvYW9qTWpJakFsWWpNakwrWGRZOG1nRkVQUDZBQTBBeUkvMnFJekl5SXdKV0l6TDlxOVU4bVFGRVBQNkFBQUFBQWdDQUFFQURnQU5BQUE4QUV3QUFBU0VpQmhVUkZCWXpJVEkyTlJFMEpnTWhOU0VESy8ycUl6SXlJd0pXSXpJeWVmNVdBYW9EUURJai9hb2pNaklqQWxZak12NVZWZ0FBQWdDQUFFQURnQU5BQUFNQUV3QUFBUkVoRVNVaElnWVZFUlFXTXlFeU5qVVJOQ1lESy8ycUFsYjlxaU15TWlNQ1ZpTXlNZ0xyL2FvQ1ZsVXlJLzJxSXpJeUl3SldJeklBQXdCekFFZ0RqUU00QUFZQUNnQVdBQUFKQVFjWENRSWhOeGNoQlRBR0ZSUVdNekkyTlRRbUF2MytWVHhtL3ZjQlJRRkYvZS9NelA1b0FreFZNaU1qTWxVQmpRR3JQR2IrOS82N0FVWE56VUJyS2lNeU1pTXFhd0FBQUFBQ0FLc0Fhd0ZWQXhVQUF3QUhBQUFsSXhFek5SVWpOUUZWcXFxcWF3SC9xMWRYQUFBSkFLc0Fhd05WQXhVQUF3QUlBQXdBRUFBVkFCa0FIZ0FpQUNZQUFCTXpOU01CTXpVakZTRXpOU00xTXpVakJUTTFJeFVCRlRNMUJUTTFJeFVCTXpVakVUTTFJNnVxcWdFQXFxci9BS3FxcXFvQkFLcXFBUUNxL2xhcXFnRUFxcXFxcWdKcnF2MVdxcXFxVnFxcXFxb0JxcXFxcXFxcS93Q3EvbGFxQUFBQUFBRUJZZ0RBQXA0Q3dBQUdBQUFCSndrQk55YzNBcDQ4L3dBQkFEekR3d0tFUFA4QS93QTh4TVFBQUFBQUF3QnIvK3NEbFFPVkFBZ0FHUUFkQUFBQklTSUdGUkV6RVNFWElTSUdGUkVVRmpNaE1qWTFFVFFtSXhFaEVTRUN3UDRBSXpKVkFnQ0EvaXNrTWpJa0FkVWpNaklqL2lzQjFRT1ZNaVA5cXdKVlZUSWsvYXNqTWpJakFsVWtNdjFWQWxVQUFBRUExUUNWQXlzQzZ3QU1BQUFCSndjbkJ4Y0hGemNYTnljM0F5czg3Kzg4Nys4ODcrODg3KzhDcnp6djd6enY3enp2N3p6djd3QUFCUUJWQUJVRHF3TnJBQ1VBTWdBL0FFc0FVUUFBQVQ0Qk5UUW1JeUlHRlJRV016STJOeGNITGdFaklnWVZGQll6TWpZMU5DWW5Od0V6TlFFSElpWTFORFl6TWhZVkZBWWpFU0ltTlRRMk16SVdGUlFHSXdFaUpqVTBOak15RmhVVUJna0JGd0UxSXdHYkNBaGtSMGRrWkVjVEl4QmxaUkFqRTBka1pFZEhaQWdJWlFFcmdQM3dteU15TWlNak1qSWpJekl5SXlNeU1pTUJBQWtNREFrSkRBd0JJdjhBVlFFcmdBSjZFQ01UUjJSa1IwZGtDQWhsWlFnSVpFZEhaR1JIRXlNUVpmN1ZLd0lQRHpFa0pERXhKQ1F4L2dBeEpDUXhNU1FrTVFGQURBa0pEQXdKQ1F3QmxmOEFWUUVxS3dBQUJ3Q1hBTDhEYVFMQkFBd0FFQUFkQUNFQUxRQTZBRDRBQUJNaUJoVVVGak15TmpVMEppTUZOU0VWQXlJR0ZSUVdNekkyTlRRbUl3VWhOU0VGTWhZVkZBWWpJaVkxTkRZM01oWVZGQVlqSWlZMU5EWXpCU0UxSWNJU0dSa1NFaGtaRWdLbi9kZCtFaGtaRWhJWkdSSUIwdjZzQVZUK0xnMFRFdzBORXhNTkVoa1pFaElaR1JJQ3AvM1hBaWtCRlJrU0VSb2FFUklaVlZaV0FTc1pFaElaR1JJU0dWVlZDeE1ORFJNVERRMFQ0Um9SRWhrWkVoRWFWbFVBQUFBQkFLc0Fhd05WQXhVQUNRQUFBU2NIRVNNUkp3Y0pBUU5WUE81Vzdqd0JWUUZWQWNBODdnSUgvZm52UGY2ckFWVUFBQUFBQVFGaUFNQUNuZ0xBQUFZQUFBRUhGd2NYQ1FFQm5qekR3endCQVA4QUFzQTh4TVE4QVFBQkFBQUFBQUFCQUpNQXh3TnRBcmtBUndBQUFTNEJJeUlHQnljK0FUTXlGeDRCRnhZWERnRUhKejRCTnlNT0FRY25JeGNPQVNNaUppY2pIZ0V6TWpZM0Z3NEJJeUluTGdFbkppYytBVGNYRGdFSE15YytBVE15RmhjekFxTUtYRDBpUFJaUEsyTTJQams1WHlRbEZSaFlPVThTR0FWRUJBMElLMUJHQkFrRklqVUpSQXBjUGhNakVFZ2hSeVkrT1RsZkpDVVZFejRvWGdVR0FvWXBEU1FWSWpRSlJBSGRPazhhRjA4WkhCTVNRaTR0Tno1bElVOFNMUm9NRlFrcVJnRUJLUjg2VUFnSVNBME9FeEpDTGkwM01GUWdYZ29VQ3lvTkVDZ2ZBQUFEQUpNQXh3TnRBcmtBSEFBcEFEVUFBQUVpQnc0QkJ3WUhGaGNlQVJjV016STNQZ0UzTmpjbUp5NEJKeVlqRVNJbU5UUTJNeklXRlJRR0l4RWlCaFVVRmpNeU5qVTBKZ0lBUGprNVh5UWxGUlVsSkY4NU9UNCtPVGxmSkNVVkZTVWtYems1UGtWaFlVVkZZV0ZGS1RzN0tTazdPd0s1RXhKQ0xpMDNOeTB1UWhJVEV4SkNMaTAzTnkwdVFoSVQvbUZoUlVWaFlVVkZZUUVLT3lrcE96c3BLVHNBQUFNQWdBREFBNEFDd0FBRUFBZ0FEQUFBSlRNMUl4VUJGU0UxQVNFMUlRR3JxcXIrMVFNQS9ZQUNBUDRBd0ZWVkFnQlZWZjdWVmdBQUFnRDNBTUFEQ1FMQUFBVUFDZ0FBSlNjM0p3a0JBVE1SSXhFRENjVEVQUDhBQVFEK0tsWlcvTVRFUFA4QS93QUNBUDRBQWdBQUFBQUNBS3NCUUFOVkFrQUFBd0FJQUFBQklSVWhCU0UxSVJVRFZmMVdBcXI5VmdLcS9WWUNRRldyVlZVQUFBWUFqZ0NrQTNJQzNBQUhBQXdBRXdBWEFCc0FJUUFBQVNFVUJpc0JOVEVsRlNFMUlTY3lGaFVoTlNFQkl6VXpOU00xTXljak5EWXpGUUpWQVIxREw2c0JIZjdqQVIxeUwwUCtBQUdPL3VSeWNuSnk1SEpETHdFVkwwSng1SEp5NDBJdmNmM0ljWEp5Y2k5Q2NRQUFBQUFDQUpNQXh3TnRBcmtBSEFBcEFBQUJJZ2NPQVFjR0J4WVhIZ0VYRmpNeU56NEJOelkzSmljdUFTY21JeEVpSmpVME5qTXlGaFVVQmlNQ0FENDVPVjhrSlJVVkpTUmZPVGsrUGprNVh5UWxGUlVsSkY4NU9UNUZZV0ZGUldGaFJRSzVFeEpDTGkwM055MHVRaElURXhKQ0xpMDNOeTB1UWhJVC9tRmhSVVZoWVVWRllRQUNBUGNBd0FNSkFzQUFCZ0FLQUFBVEZ3Y1hDUUVISlRNUkkvZkV4RHdCQVA4QVBBRzhWbFlDaE1URVBBRUFBUUE4UFA0QUFBQUFBQUVBcXdCckExVURGUUFKQUFBQklUY25DUUUzSnlFMUExWDkrZTg5L3FzQlZUenVBZ2NCNis0OC9xditxenp1VmdBQUFBQUNBT1FBcEFNY0F0d0FIQUFtQUFBQk54Y0hNeFVqSGdFWEJ5Y1ZJelVISnpjak5UTW5OeDRCRnpVekZRY3pOelVuSXdjVkhnRUNPV2hRYUpPVEdqUWFVR2h5YUZCb2s1Tm9VQm8wR25Kb1hrTkRYa01SSVFKSmFGQm9jaG8wR2xCb2s1Tm9VR2h5YUZBYU5CcVRrL3REWGtORFhoRWhBQUFCQUlBQzZ3T0FBMEFBQXdBQUV5RVZJWUFEQVAwQUEwQlZBQUFBQXdDQUFNQURnQUxBQUFNQUJ3QUxBQUEzSVRVaE5TRTFJVFVWSVRXQUF3RDlBQU1BL1FBREFNQlZnRmJWVlZVQUFRRUFBRUFEQUFDVkFBTUFBQ1VoRlNFQkFBSUEvZ0NWVlFBQUFBRUExUUdWQXlzQjZ3QUVBQUFUSVJVaE5kVUNWdjJxQWV0V1ZnQUJBV0lBd0FLZUFzQUFCZ0FBQVFjWEJ4Y0pBUUdlUE1QRFBBRUEvd0FDd0R6RXhEd0JBQUVBQUFBQUFBTUFnQURBQTRBQ3dBQURBQWNBQ3dBQU55RTFJUkVWSVRVQklUVWhnQUlBL2dBREFQMEFBd0Q5QU1CVkFhdFZWZjdWVmdBREFGVUFGUU9yQTJzQUhBQXJBRG9BQUFFaUJ3NEJCd1lWRkJjZUFSY1dNekkzUGdFM05qVTBKeTRCSnlZakFUUTNQZ0UzTmpNeUZoY0JMZ0UxQVNJbUp3RWVBUlVVQnc0QkJ3WWpBZ0JZVGs1MElTSWlJWFJPVGxoWVRrNTBJU0lpSVhST1RsaitxeG9iWFQ0K1J6dHJLLzRpSWlZQlZUdHJLd0hlSWlZYUcxMCtQa2NEYXlJaGRFNU9XRmhPVG5RaElpSWhkRTVPV0ZoT1RuUWhJdjVWUno0K1hSc2FKaUwrSWl0ck8vNnJKaUlCM2l0ck8wYytQbDBiR2dBQUFBQURBSUQvNndPQUE1VUFHQUFrQUN3QUFBRWpMZ0VqSWdZSEl5SUdGUkVVRmpNaE1qWTFFVFFtSXpFaE1oWVZGQVlqSWlZMU5EWUJJUkV6RlNFMU13TXJzdzFCS2lwQkRiTWpNaklqQWxZak1qSWovdFVTR1JrU0Voa1pBVDM5cWxZQnFsWURRQ1V3TUNVeUkvMVZJekl5SXdLckl6SVpFaEVaR1JFU0dmMEFBcXVBZ0FBQ0FLMEFid05UQXhFQUJRQVNBQUFsQnljM0hnRVRBUWNuQnhjSEp6Y1hOeWMzQVdPT0tJNEtGTVlCTkI4ZTl6NVk5bGc5ZXg0ZS9ZNG9qZ29VQWdyK3pCNGVlejFZOWxnKzl4NGZBQUFBQUFrQU9mLzVBOGNEaHdBUEFCTUFGd0FnQUNRQUxnQXlBRFlBT2dBQUJTRWlKalVSTkRZeklUSVdGUkVVQmdFakZUTUJJUkVoSlFjWEJ5YzNIZ0VYSnlNVk15VUhKd2NuTng0QkZ6RUJJeFV6SlNNVk16Y2pGVE1EVmYxV0wwTkRMd0txTDBORC9kR3FxZ0lBL2prQngvN2NRa0lwYVdrS0ZRcmNxcW9CK0NoQlFpaHFHalVhL2dpcXFnRWQ1T1RqcXFvSFF5OENxaTlEUXkvOVZpOURBUnlxQVk3K2NyTkNRU2hwYWdvVUN0dXJNU2hCUVNocEdqVWFBWmFxcXFxcXFnQUFBQUFCQU5VQWxRTXJBdXNBQ3dBQUFTRVJJeEVoTlNFUk14RWhBeXYvQUZiL0FBRUFWZ0VBQVpYL0FBRUFWZ0VBL3dBQUFBQUFBUUZpQU1BQ25nTEFBQVlBQUFFbkNRRTNKemNDbmp6L0FBRUFQTVBEQW9ROC93RC9BRHpFeEFBQUFBQUNBRlVBRlFPckEyc0FIQUE1QUFBQklnY09BUWNHRlJRWEhnRVhGak15Tno0Qk56WTFOQ2N1QVNjbUl4RWlKeTRCSnlZMU5EYytBVGMyTXpJWEhnRVhGaFVVQnc0QkJ3WWpBZ0JZVGs1MElTSWlJWFJPVGxoWVRrNTBJU0lpSVhST1RsaEhQajVkR3hvYUcxMCtQa2RIUGo1ZEd4b2FHMTArUGtjRGF5SWhkRTVPV0ZoT1RuUWhJaUloZEU1T1dGaE9UblFoSXYwQUdodGRQajVIUno0K1hSc2FHaHRkUGo1SFJ6NCtYUnNhQUFNQVZRQVZBNnNEYXdBY0FEa0FWZ0FBQVNJSERnRUhCaFVVRng0QkZ4WXpNamMrQVRjMk5UUW5MZ0VuSmlNMUlnY09BUWNHRlJRWEhnRVhGak15Tno0Qk56WTFOQ2N1QVNjbUl4RWlKeTRCSnlZMU5EYytBVGMyTXpJWEhnRVhGaFVVQnc0QkJ3WWpBZ0FzSnljNkVSQVFFVG9uSnl3c0p5YzZFUkFRRVRvbkp5eFlUazUwSVNJaUlYUk9UbGhZVGs1MElTSWlJWFJPVGxoSFBqNWRHeG9hRzEwK1BrZEhQajVkR3hvYUcxMCtQa2NDbFJBUk9pY25MQ3duSnpvUkVCQVJPaWNuTEN3bkp6b1JFTllpSVhST1RsaFlUazUwSVNJaUlYUk9UbGhZVGs1MElTTDlBQm9iWFQ0K1IwYytQbDBiR2hvYlhUNCtSMGMrUGwwYkdnQUJBS3NBYXdOVkF4VUFDUUFBQVFjWElSVWhCeGNKQVFJQVBPNzkrUUlIN2p3QlZmNnJBeFU4N2xidVBBRlZBVlVBQUFBQUFnQ0FBRUFEZ0FOQUFBNEFHUUFBQVJFaEVTTVJGQll6SVRJMk5SRWpCVGNYQnljM0Z4RXpFVEVESy8ycVZUSWpBbFlqTWxYL0FHNDgxZFU4YmxZQndQN1ZBU3YrMVNNeU1pTUJLeDF1UE5YVlBHNEJuZjVqQUFFQkt3RlZBdFVDS3dBREFBQUJGemNoQVN2VjFmNVdBaXZXMWdBQkFaVUE2d0pyQXBVQUF3QUFBUWNYRVFKcjF0WUNsZFhWQWFvQUFRR1ZBT3NDYXdLVkFBTUFBQ1UzSnhFQmxkYlc2OVhWL2xZQUFBRUJLd0ZWQXRVQ0t3QURBQUFCTnhjaEFTdlYxZjVXQVZYVzFnQUJBSWtBb2dOM0F0NEFCZ0FBQVNjSEZ3RW5BUUYzc2p6dUFnQTgvandCRzdJOTdnSUFQUDQ5QUFBQUFBRUJZZ0RBQXA0Q3dBQUdBQUFCQnhjSEZ3a0JBWjQ4dzhNOEFRRC9BQUxBUE1URVBBRUFBUUFBQUFBQUFRRFZBWlVES3dIckFBUUFBQk1oRlNFMTFRSlcvYW9CNjFaV0FBRUJBQUVpQXdBQ1hnQUZBQUFCQnljSENRRUN4TVRFUEFFQUFRQUNYc1BEUFA4QUFRQUFBQUFCQUFBQUFRQUFjRkJ6RVY4UFBQVUFDd1FBQUFBQUFObEJqMzBBQUFBQTJVR1BmUUFBLytzRHh3T1ZBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBUEEvOEFBQUFRQUFBQUFBQVBIQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUE0QkFBQUFBQUFBQUFBQUFBQUFnQUFBQVFBQVFBRUFBQTVCQUFBcXdRQUFGVUVBQURWQkFBQWdBUUFBSUFFQUFDQUJBQUFjd1FBQUtzRUFBQ3JCQUFCWWdRQUFHc0VBQURWQkFBQVZRUUFBSmNFQUFDckJBQUJZZ1FBQUpNRUFBQ1RCQUFBZ0FRQUFQY0VBQUNyQkFBQWpnUUFBSk1FQUFEM0JBQUFxd1FBQU9RRUFBQ0FCQUFBZ0FRQUFRQUVBQURWQkFBQllnUUFBSUFFQUFCVkJBQUFnQVFBQUswRUFBQTVCQUFBMVFRQUFXSUVBQUJWQkFBQVZRUUFBS3NFQUFDQUJBQUJLd1FBQVpVRUFBR1ZCQUFCS3dRQUFJa0VBQUZpQkFBQTFRUUFBUUFBQUFBQUFBb0FGQUFlQURvQWJBQ0VBTWdBNUFFUUFUUUJXQUdHQVpnQjJBSHVBaUFDUEFLMEF4SURMQU5DQTY0RUFBUWNCRGdFVGdTR0JNZ0U1QVQrQlRvRlNBVmdCVzRGZkFXU0Jhd0dEQVpPQm5ZRzJBYnlCd2dIWUFmZ0Ivb0lKZ2cwQ0VJSVVBaGVDSFFJaWdpWUNLd0FBQUFCQUFBQU9BQlhBQWtBQUFBQUFBSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEZ0N1QUFFQUFBQUFBQUVBQ2dBQUFBRUFBQUFBQUFJQUJ3QjdBQUVBQUFBQUFBTUFDZ0EvQUFFQUFBQUFBQVFBQ2dDUUFBRUFBQUFBQUFVQUN3QWVBQUVBQUFBQUFBWUFDZ0JkQUFFQUFBQUFBQW9BR2dDdUFBTUFBUVFKQUFFQUZBQUtBQU1BQVFRSkFBSUFEZ0NDQUFNQUFRUUpBQU1BRkFCSkFBTUFBUVFKQUFRQUZBQ2FBQU1BQVFRSkFBVUFGZ0FwQUFNQUFRUUpBQVlBRkFCbkFBTUFBUVFKQUFvQU5BRElRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzVm1WeWMybHZiaUF4TGpBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXdRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzUVdkTllYUmxjbWxoYkFCQkFHY0FUUUJoQUhRQVpRQnlBR2tBWVFCc1VtVm5kV3hoY2dCU0FHVUFad0IxQUd3QVlRQnlRV2ROWVhSbGNtbGhiQUJCQUdjQVRRQmhBSFFBWlFCeUFHa0FZUUJzUm05dWRDQm5aVzVsY21GMFpXUWdZbmtnU1dOdlRXOXZiaTRBUmdCdkFHNEFkQUFnQUdjQVpRQnVBR1VBY2dCaEFIUUFaUUJrQUNBQVlnQjVBQ0FBU1FCakFHOEFUUUJ2QUc4QWJnQXVBQUFBQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBPT1cXFwiKSBmb3JtYXQoXFxcInRydWV0eXBlXFxcIik7XFxuICBmb250LXdlaWdodDogbm9ybWFsO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XFxuXFxuLmFnLXRoZW1lLW1hdGVyaWFsIHtcXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGZvbnQtc2l6ZTogMTNweDtcXG4gIGxpbmUtaGVpZ2h0OiAxOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRhYi1oZWFkZXIgLmFnLXRhYi5hZy10YWItc2VsZWN0ZWQge1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsICoge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgKjpmb2N1cywgLmFnLXRoZW1lLW1hdGVyaWFsICogKjpiZWZvcmUsIC5hZy10aGVtZS1tYXRlcmlhbCAqICo6YWZ0ZXIge1xcbiAgICAgIG91dGxpbmU6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWIge1xcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogNDJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDUycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogODRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTI2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTY4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEzMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjEwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE1NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC02IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjUycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI5NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC03IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjk0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC04IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzM2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIzNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjM0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM3OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC05IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzc4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQyMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjg2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1yaWdodDogMjg2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTExIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0NjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xMiB7XFxuICAgIHBhZGRpbmctbGVmdDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTEyIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTA0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTEzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1ODhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDM5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDM5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xNSB7XFxuICAgIHBhZGRpbmctbGVmdDogNjMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE1IHtcXG4gICAgcGFkZGluZy1yaWdodDogNjMwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE2IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0xNyB7XFxuICAgIHBhZGRpbmctbGVmdDogNDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1yaWdodDogNDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA3MTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTcge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDQ2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDQ2OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0xOCB7XFxuICAgIHBhZGRpbmctbGVmdDogNzU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTE4IHtcXG4gICAgcGFkZGluZy1yaWdodDogNzU2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTE5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiA0OTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMTkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc5OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0xOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc5OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMCB7XFxuICAgIHBhZGRpbmctbGVmdDogNTIwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTIwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIwIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA4NDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDU0NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yMSB7XFxuICAgIHBhZGRpbmctbGVmdDogODgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIxIHtcXG4gICAgcGFkZGluZy1yaWdodDogODgycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTIyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA1NzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC0yMyB7XFxuICAgIHBhZGRpbmctbGVmdDogNTk4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1yaWdodDogNTk4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTIzIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA5NjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtMjMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NjZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDYyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTAwOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwMDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNTBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDY3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDY3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA5MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTEzNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDcyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDcyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE3NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExNzZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMjkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTIxOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0yOSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDc4MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI2MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyNjBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgwNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgwNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTMwMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzMDJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDgzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDgzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTM0NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzNDRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg1OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg1OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTM4NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEzODZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDg4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDg4NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQyOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0MjhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkxMHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTQ3MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE0NzBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDkzNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTUxMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1MTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzcge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk2MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk2MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTU1NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zNyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1NTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDk4OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDk4OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTU5NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC0zOCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE1OTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMTRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtMzkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDE0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNjM4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTM5IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTYzOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTA0MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEwNDBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE2ODBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNjgwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMDY2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQxIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTA2NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTcyMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00MSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE3MjJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEwOTJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDkycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxNzY0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQyIHtcXG4gICAgcGFkZGluZy1yaWdodDogMTc2NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTExOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00MyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MDZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxODA2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMTQ0cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ0IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTE0NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctbGVmdDogMTg0OHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE4NDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDExNzBweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMTcwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxODkwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ1IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTg5MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctbGVmdDogMTE5NnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00NiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDExOTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDE5MzJweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDYge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOTMycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxMjIycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29scGFuZWwtaW5kZW50LTQ3IHtcXG4gICAgcGFkZGluZy1yaWdodDogMTIyMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctbGVmdDogMTk3NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcm93LWdyb3VwLWluZGVudC00NyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDE5NzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEyNDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXRvb2xwYW5lbC1pbmRlbnQtNDgge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjQ4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyMDE2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtaW5kZW50LTQ4IHtcXG4gICAgcGFkZGluZy1yaWdodDogMjAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctbGVmdDogMTI3NHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbHBhbmVsLWluZGVudC00OSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEyNzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDIwNThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy1ncm91cC1pbmRlbnQtNDkge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMDU4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbCAuYWctaWNvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGVja2JveCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYWRpby1idXR0b24sIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9nZ2xlLWJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3ggbGFiZWwsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWwge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3ggbGFiZWw6ZW1wdHksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmFkaW8tYnV0dG9uIGxhYmVsOmVtcHR5LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gbGFiZWw6ZW1wdHkge1xcbiAgICAgICAgbWFyZ2luOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hlY2tib3g6bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYWRpby1idXR0b246bm90KC5hZy1sYWJlbC1hbGlnbi1sZWZ0KSBsYWJlbCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbCB7XFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctcm93LWdyb3VwLWxlYWYtaW5kZW50IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1maXJzdC1yaWdodC1waW5uZWQge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbHRyIC5hZy1yb3cuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtbGFzdC1sZWZ0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1yb3ctZ3JvdXAtbGVhZi1pbmRlbnQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDQycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGw6bm90KC5hZy1jZWxsLWZvY3VzKS5hZy1jZWxsLWZpcnN0LXJpZ2h0LXBpbm5lZCB7XFxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXJvdy5hZy1jZWxsLWxhc3QtbGVmdC1waW5uZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1sYXN0LWxlZnQtcGlubmVkIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy12YWx1ZS1jaGFuZ2UtZGVsdGEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLXVwIHtcXG4gICAgY29sb3I6ICM0M2EwNDc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLWRlbHRhLWRvd24ge1xcbiAgICBjb2xvcjogI2U1MzkzNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy12YWx1ZS1jaGFuZ2UtdmFsdWUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4O1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XFxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdmFsdWUtY2hhbmdlLXZhbHVlLWhpZ2hsaWdodCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFjYzE7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzO1xcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXM7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl0sXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl0ge1xcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XFxuICAgIGhlaWdodDogNDBweDtcXG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06Zm9jdXMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpmb2N1cyxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmZvY3VzLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmZvY3VzLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpmb2N1cyB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgICAgb3V0bGluZTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOjotbW96LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdOjotbW96LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06Oi1tb3otcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTo6LW1vei1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGVcXFwiXTo6LW1vei1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06Oi1tb3otcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwibnVtYmVyXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcImRhdGV0aW1lLWxvY2FsXFxcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0Om5vdChbdHlwZV0pOjpwbGFjZWhvbGRlcixcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZWxcXFwiXTo6cGxhY2Vob2xkZXIsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06OnBsYWNlaG9sZGVyLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTo6cGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dDpub3QoW3R5cGVdKTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRleHRcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcIm51bWJlclxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwidGVsXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRldGltZS1sb2NhbFxcXCJdOmRpc2FibGVkIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlXSk6ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJ0ZXh0XFxcIl06ZGlzYWJsZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJudW1iZXJcXFwiXTpkaXNhYmxlZCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIGlucHV0W3R5cGU9XFxcInRlbFxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdOmRpc2FibGVkLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZXRpbWUtbG9jYWxcXFwiXTpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVxcXCJkYXRlXFxcIl0ge1xcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgaW5wdXRbdHlwZT1cXFwicmFuZ2VcXFwiXSB7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYSB7XFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XFxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcXG4gICAgaGVpZ2h0OiA0MHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xcbiAgICBib3JkZXItd2lkdGg6IDA7XFxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpmb2N1cyB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgICAgb3V0bGluZTogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWlucHV0LXdyYXBwZXIgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaW5wdXQtd3JhcHBlciB0ZXh0YXJlYTpkaXNhYmxlZCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pbnB1dC13cmFwcGVyIHRleHRhcmVhOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBpbm5lZC1yaWdodC1oZWFkZXIge1xcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGlubmVkLWxlZnQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItcm93IHtcXG4gICAgYm9yZGVyOiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdyB7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2UyZTJlMjtcXG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93Om5vdCguYWctcm93LWZpcnN0KSB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93LmFnLXJvdy1sYXN0IHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaG9yaXpvbnRhbC1sZWZ0LXNwYWNlciB7XFxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ob3Jpem9udGFsLWxlZnQtc3BhY2VyLmFnLXNjcm9sbGVyLWNvcm5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhvcml6b250YWwtcmlnaHQtc3BhY2VyIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaG9yaXpvbnRhbC1yaWdodC1zcGFjZXIuYWctc2Nyb2xsZXItY29ybmVyIHtcXG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctaG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW51bWVyaWMtY2VsbCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLWxhYmVsIC5hZy1oZWFkZXItaWNvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG9wYWNpdHk6IDAuODc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGwsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZTJlMmUyO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XFxuICAgIGJvcmRlci13aWR0aDogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLmFnLWhlYWRlci1jZWxsLW1vdmluZyxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbC5hZy1oZWFkZXItY2VsbC1tb3Zpbmcge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWhlYWRlci1ncm91cC1jZWxsLW5vLWdyb3VwKSB7XFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1jZWxsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1yb3c6Zmlyc3QtY2hpbGQgLmFnLWhlYWRlci1ncm91cC1jZWxsIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpub3QoLmFnLWNvbHVtbi1yZXNpemluZykgKyAuYWctaGVhZGVyLWdyb3VwLWNlbGw6aG92ZXIsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWdyb3VwLWNlbGw6bm90KC5hZy1jb2x1bW4tcmVzaXppbmcpICsgLmFnLWhlYWRlci1ncm91cC1jZWxsLmFnLWNvbHVtbi1yZXNpemluZyxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6bm90KC5hZy1jb2x1bW4tcmVzaXppbmcpICsgLmFnLWhlYWRlci1jZWxsOmhvdmVyLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbDpub3QoLmFnLWNvbHVtbi1yZXNpemluZykgKyAuYWctaGVhZGVyLWNlbGwuYWctY29sdW1uLXJlc2l6aW5nLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpmaXJzdC1vZi10eXBlOmhvdmVyLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItZ3JvdXAtY2VsbDpmaXJzdC1vZi10eXBlLmFnLWNvbHVtbi1yZXNpemluZyxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6Zmlyc3Qtb2YtdHlwZTpob3ZlcixcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGw6Zmlyc3Qtb2YtdHlwZS5hZy1jb2x1bW4tcmVzaXppbmcge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZSB7XFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItc2VsZWN0LWFsbCB7XFxuICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsIHtcXG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XFxuICAgIHBhZGRpbmctbGVmdDogMjRweDtcXG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMjNweDtcXG4gICAgcGFkZGluZy1yaWdodDogMjNweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctZHJhZyB7XFxuICAgIGN1cnNvcjogbW92ZTtcXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XFxuICAgIGN1cnNvcjogZ3JhYjtcXG4gICAgbWluLXdpZHRoOiA0MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdy1kcmFnZ2luZywgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yb3ctZHJhZ2dpbmcgLmFnLXJvdy1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgY3Vyc29yOiBtb3ZlO1xcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcXG4gICAgY3Vyc29yOiBncmFiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJvdy1kcmFnZ2luZyB7XFxuICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1czpub3QoLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhhcy1mb2N1cyAuYWctY2VsbC1mb2N1cy5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGwtZm9jdXMuYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbC5hZy1jZWxsLXJhbmdlLWhhbmRsZSB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzZjUxYjU7XFxuICAgIG91dGxpbmU6IGluaXRpYWw7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWNlbGwtcmVzaXplIHtcXG4gICAgd2lkdGg6IDE2cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7XFxuICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LWxpc3Qge1xcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XFxuICAgICAgbWFyZ2luLXRvcDogOHB4O1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tYWN0aXZlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tZGlzYWJsZWQge1xcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtb3B0aW9uLXRleHQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1pY29uIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XFxuICAgICAgbWluLXdpZHRoOiAzNHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbWVudSAuYWctbWVudS1vcHRpb24tc2hvcnRjdXQge1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yIHtcXG4gICAgICBoZWlnaHQ6IDE2cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUgLmFnLW1lbnUtc2VwYXJhdG9yID4gc3BhbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCcxJyUyMGhlaWdodCUzRCcxNnB4JyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxJTIwMTZweCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTNFJTNDbGluZSUyMHgxJTNEJzAnJTIweTElM0QnOHB4JyUyMHgyJTNEJzEnJTIweTIlM0QnOHB4JyUyMHN0cm9rZS13aWR0aCUzRCcxJyUyMHN0cm9rZSUzRCclMjNFMkUyRTInJTJGJTNFJTNDJTJGc3ZnJTNFXFxcIik7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51IC5hZy1tZW51LW9wdGlvbi1wb3B1cC1wb2ludGVyIHtcXG4gICAgICB3aWR0aDogMzRweDtcXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1kbmQtZ2hvc3Qge1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICBmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCIsIHNhbnMtc2VyaWY7XFxuICAgIGhlaWdodDogNTZweCAhaW1wb3J0YW50O1xcbiAgICBsaW5lLWhlaWdodDogNTZweDtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwIDE2cHg7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2cHgpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwuYWctZG5kLWdob3N0IHNwYW4sXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1kbmQtZ2hvc3QgZGl2IHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgbWFyZ2luOiAwO1xcbiAgICAgIHBhZGRpbmc6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsLmFnLWRuZC1naG9zdCAuYWctZG5kLWdob3N0LWljb24ge1xcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICAgIG9wYWNpdHk6IDAuODc7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWhlYWRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNlZWU7XFxuICAgIG1pbi13aWR0aDogMjIwcHg7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItaGVhZGVyIC5hZy10YWIge1xcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICAgIGhlaWdodDogMzJweDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7XFxuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xcbiAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XFxuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XFxuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItYm9keSB7XFxuICAgIHBhZGRpbmc6IDRweCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCB7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10YWItYm9keSAuYWctbWVudS1saXN0ID4gZGl2OmZpcnN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gc3BhbiB7XFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdGFiLWJvZHkgLmFnLW1lbnUtbGlzdCA+IGRpdjpsYXN0LWNoaWxkID4gLmFnLW1lbnUtb3B0aW9uLXBvcHVwLXBvaW50ZXIge1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1ib2R5IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWJvZHkge1xcbiAgICBtYXJnaW4tdG9wOiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWZpbHRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLXNlbGVjdCB7XFxuICAgIG1hcmdpbjogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciBpbnB1dFt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgbWFyZ2luOiAwIDNweCAwIDZweDtcXG4gICAgd2lkdGg6IDEycHg7XFxuICAgIGhlaWdodDogMTdweDtcXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwidGV4dFxcXCJdLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgaW5wdXRbdHlwZT1cXFwiZGF0ZVxcXCJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmlsdGVyIC5hZy1zZXQtZmlsdGVyLWxpc3Qge1xcbiAgICBoZWlnaHQ6IDI0MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctc2V0LWZpbHRlci1pdGVtIHtcXG4gICAgaGVpZ2h0OiA0MHB4O1xcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1oZWFkZXItY29udGFpbmVyOm50aC1jaGlsZCgyKSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMmUyOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIHtcXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XFxuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBwYWRkaW5nLXRvcDogMTZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbHRlciAuYWctZmlsdGVyLWFwcGx5LXBhbmVsIGJ1dHRvbiB7XFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXI6IDA7XFxuICAgICAgY29sb3I6ICMzZjUxYjU7XFxuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XFxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgICBwYWRkaW5nOiAwO1xcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWx0ZXIgLmFnLWZpbHRlci1hcHBseS1wYW5lbCBidXR0b24gKyBidXR0b24ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uIHtcXG4gICAgaGVpZ2h0OiAzMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWxhYmVsLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1ncm91cCAuYWctY29sdW1uLWdyb3VwLWljb25zLFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1zZWxlY3QtcGFuZWwgLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbiAuYWctY29sdW1uLXNlbGVjdC1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi10b29sLXBhbmVsLWNvbHVtbi1sYWJlbCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1wcmltYXJ5LWNvbHMtbGlzdC1wYW5lbCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBwYWRkaW5nLXRvcDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctcHJpbWFyeS1jb2xzLWxpc3QtcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4uYWctdG9vbHBhbmVsLWFkZC1ncm91cC1pbmRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMzRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wcmltYXJ5LWNvbHMtaGVhZGVyLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGhlaWdodDogNTZweDtcXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXByaW1hcnktY29scy1oZWFkZXItcGFuZWwgPiBkaXYge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgICBtYXJnaW46IDAgOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcHJpbWFyeS1jb2xzLWhlYWRlci1wYW5lbCAuYWctZmlsdGVyLWJvZHkge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1maWx0ZXItcGFuZWwge1xcbiAgICAgIHdpZHRoOiAxMDAlOyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XFxuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xcbiAgICAgICAgICAgIC1tcy1mbGV4OiBhdXRvO1xcbiAgICAgICAgICAgICAgICBmbGV4OiBhdXRvO1xcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtbXMtZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxcbiAgICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWZpbHRlci1wYW5lbCAuYWctZmlsdGVyLXRvb2xwYW5lbC1pbnN0YW5jZSAuYWctZmlsdGVyLXRvb2xwYW5lbC1oZWFkZXIge1xcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxcbiAgICAgICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItdG9vbHBhbmVsLWluc3RhbmNlIC5hZy1maWx0ZXItdG9vbHBhbmVsLWhlYWRlciA+IGRpdiB7XFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYm9keS13cmFwcGVyIHtcXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctZmlsdGVyLXBhbmVsIC5hZy1maWx0ZXItYWlyIHtcXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgICAgIHBhZGRpbmc6IDhweCAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1waXZvdC1tb2RlLXBhbmVsIHtcXG4gICAgICBoZWlnaHQ6IDU2cHg7XFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xcbiAgICAgICAgICAtbXMtZmxleDogbm9uZTtcXG4gICAgICAgICAgICAgIGZsZXg6IG5vbmU7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctcGl2b3QtbW9kZS1wYW5lbCAuYWctcGl2b3QtbW9kZS1zZWxlY3Qge1xcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XFxuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xcbiAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XFxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIHtcXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogN3B4O1xcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCB7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgICAgcGFkZGluZzogOHB4IDA7XFxuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3AgLmFnLWNvbHVtbi1kcm9wLWVtcHR5LW1lc3NhZ2Uge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xcbiAgICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNHB4O1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLWNvbHVtbi1kcm9wIC5hZy1jb2x1bW4tZHJvcC1saXN0IHtcXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCA+IGRpdiA+IDpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvb2wtcGFuZWwtd3JhcHBlciAuYWctY29sdW1uLWRyb3A6bGFzdC1jaGlsZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW51bWVyaWMtaGVhZGVyIC5hZy1oZWFkZXItY2VsbC1sYWJlbCAuYWctaGVhZGVyLWljb24ge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFnaW5nLXBhbmVsIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBoZWlnaHQ6IDU2cHg7XFxuICAgIHBhZGRpbmc6IDAgMjRweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYW5lbCA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLWljb24ge1xcbiAgICB3aWR0aDogMThweDtcXG4gICAgaGVpZ2h0OiAxOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24gYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFnaW5nLXBhZ2Utc3VtbWFyeS1wYW5lbCAuYWctcGFnaW5nLWJ1dHRvbi5hZy1kaXNhYmxlZCAuYWctaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBvcGFjaXR5OiAwLjM4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgLmFnLXBhZ2luZy1idXR0b24uYWctZGlzYWJsZWQgYnV0dG9uIHtcXG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhZ2luZy1wYWdlLXN1bW1hcnktcGFuZWwgc3BhbiB7XFxuICAgIG1hcmdpbjogMCA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcm93LXNlbGVjdGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS10b3AsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLXRvcCB7XFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1yaWdodCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtcmFuZ2Utc2luZ2xlLWNlbGwpLmFnLWNlbGwtcmFuZ2UtcmlnaHQge1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1ib3R0b20sIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQ6bm90KC5hZy1jZWxsLXJhbmdlLXNpbmdsZS1jZWxsKS5hZy1jZWxsLXJhbmdlLWJvdHRvbSB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1yYW5nZS1zaW5nbGUtY2VsbCkuYWctY2VsbC1yYW5nZS1sZWZ0IHtcXG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMiwgMTM0LCAyMDMsIDAuMSk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkOm5vdCguYWctY2VsbC1mb2N1cykuYWctY2VsbC1yYW5nZS1jaGFydCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA4OCwgMjU1LCAwLjEpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1yYW5nZS1zZWxlY3RlZDpub3QoLmFnLWNlbGwtZm9jdXMpLmFnLWNlbGwtcmFuZ2UtY2hhcnQuYWctY2VsbC1yYW5nZS1jaGFydC1jYXRlZ29yeSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyNTUsIDEzMiwgMC4xKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTE6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC4yKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTI6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC4zKTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTM6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC40KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLTQ6bm90KC5hZy1jZWxsLWZvY3VzKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIyLCAxMzQsIDIwMywgMC41KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcCB7XFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtdG9wLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLXRvcC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLXJpZ2h0LCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQge1xcbiAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWZpbGwtcmlnaHQuYWctY2VsbC5hZy1jZWxsLXJhbmdlLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbSB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtYm90dG9tLmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1maWxsLWJvdHRvbS5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQge1xcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1sdHIgLmFnLXNlbGVjdGlvbi1maWxsLWxlZnQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0IHtcXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzNmNTFiNTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctc2VsZWN0aW9uLWZpbGwtbGVmdC5hZy1jZWxsLmFnLWNlbGwtcmFuZ2Utc2VsZWN0ZWQsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tZmlsbC1sZWZ0LmFnLWNlbGwuYWctY2VsbC1yYW5nZS1zZWxlY3RlZCB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgI2FmYWZhZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1maWxsLWhhbmRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yYW5nZS1oYW5kbGUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBib3R0b206IC0xcHg7XFxuICAgIHJpZ2h0OiAtMXB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1MWI1OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZpbGwtaGFuZGxlIHtcXG4gICAgY3Vyc29yOiBjZWxsOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJhbmdlLWhhbmRsZSB7XFxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC5hZy1jZWxsLWlubGluZS1lZGl0aW5nIHtcXG4gICAgcGFkZGluZzogMjRweDtcXG4gICAgaGVpZ2h0OiA3MnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwuYWctY2VsbC1pbmxpbmUtZWRpdGluZywgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jZWxsLmFnLXBvcHVwLWVkaXRvciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcG9wdXAtZWRpdG9yIHtcXG4gICAgcGFkZGluZzogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBvcHVwLWVkaXRvciAuYWctbGFyZ2UtdGV4dGFyZWEgdGV4dGFyZWEge1xcbiAgICAgIGhlaWdodDogYXV0bztcXG4gICAgICBwYWRkaW5nOiAyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC1saXN0IHtcXG4gICAgICB3aWR0aDogMjAwcHg7XFxuICAgICAgaGVpZ2h0OiAzMTJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy1yaWNoLXNlbGVjdC12YWx1ZSB7XFxuICAgICAgcGFkZGluZzogMCA4cHggMCAyNHB4O1xcbiAgICAgIGhlaWdodDogNDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJpY2gtc2VsZWN0IC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGhlaWdodDogNDhweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmljaC1zZWxlY3QgLmFnLXZpcnR1YWwtbGlzdC1pdGVtOmhvdmVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93IHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWNoLXNlbGVjdCAuYWctcmljaC1zZWxlY3Qtcm93LXNlbGVjdGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWx0ciAuYWctZmxvYXRpbmctZmlsdGVyLWJ1dHRvbiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWZsb2F0aW5nLWZpbHRlci1idXR0b24gYnV0dG9uIHtcXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgaGVpZ2h0OiAxOHB4O1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICB3aWR0aDogMThweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0aW9uLWNoZWNrYm94Om5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtZXhwYW5kZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWNlbGwtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWV4cGFuZGVkOm5vdCguYWctaGlkZGVuKSArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29udHJhY3RlZDpub3QoLmFnLWhpZGRlbikgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNoZWNrYm94Om5vdCguYWctaW52aXNpYmxlKSB+IC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSkge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3g6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1leHBhbmRlZDpub3QoLmFnLWhpZGRlbikgfiAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQ6bm90KC5hZy1oaWRkZW4pIH4gLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGVja2JveDpub3QoLmFnLWludmlzaWJsZSkgfiAuYWctZ3JvdXAtY2hlY2tib3gge1xcbiAgICBtYXJnaW4tbGVmdDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jaGlsZC1jb3VudCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0aW9uLWNoZWNrYm94IHNwYW4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XFxuICAgIGhlaWdodDogNDhweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1ncm91cCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXNtYWxsLWxlZnQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctaWNvbi1zbWFsbC1yaWdodCB7XFxuICAgICAgbWFyZ2luOiAwIDhweDtcXG4gICAgICBvcGFjaXR5OiAwLjU0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgb3BhY2l0eTogMC4zODsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIHtcXG4gICAgYmFja2dyb3VuZDogI2UyZTJlMjtcXG4gICAgYm9yZGVyLXJhZGl1czogMzJweDtcXG4gICAgbWluLWhlaWdodDogMzJweDtcXG4gICAgcGFkZGluZzogMCA0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLXRleHQge1xcbiAgICAgIG1hcmdpbjogMCA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC1jZWxsIC5hZy1jb2x1bW4tZHJvcC1jZWxsLWJ1dHRvbiB7XFxuICAgICAgbWluLXdpZHRoOiAzMnB4O1xcbiAgICAgIG1hcmdpbjogMCA0cHg7XFxuICAgICAgb3BhY2l0eTogMC41NDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtY2VsbCAuYWctY29sdW1uLWRyb3AtY2VsbC1idXR0b246aG92ZXIge1xcbiAgICAgICAgb3BhY2l0eTogMC44NzsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbHVtbi1kcm9wLWNlbGwgLmFnLWNvbHVtbi1kcmFnIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2x1bW4tZHJvcC12ZXJ0aWNhbCAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi10b3A6IDhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZWxlY3QtYWdnLWZ1bmMtcG9wdXAge1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgcGFkZGluZzogOHB4O1xcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgICBoZWlnaHQ6IDE0MHB4O1xcbiAgICBwYWRkaW5nOiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2VsZWN0LWFnZy1mdW5jLXBvcHVwIC5hZy12aXJ0dWFsLWxpc3QtaXRlbSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zZXQtZmlsdGVyLWxpc3QsXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW1lbnUtY29sdW1uLXNlbGVjdC13cmFwcGVyIHtcXG4gICAgd2lkdGg6IGF1dG87IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sdW1uLWRyb3AtdmVydGljYWwgPiAuYWctY29sdW1uLWRyb3AtY2VsbCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi10b3A6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1kYXRhLWNoYW5nZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhY2MxICFpbXBvcnRhbnQ7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2VsbC1kYXRhLWNoYW5nZWQtYW5pbWF0aW9uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgIHBhZGRpbmctdG9wOiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctaWNvbiB7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3BpbjtcXG4gICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzcGluO1xcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xcbiAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XFxuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XFxuICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cXG5cXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XFxuICBmcm9tIHtcXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxcbiAgdG8ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XFxuXFxuQGtleWZyYW1lcyBzcGluIHtcXG4gIGZyb20ge1xcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XFxuICB0byB7XFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdHViLWNlbGwgLmFnLWxvYWRpbmctdGV4dCB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tdG9wOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmxvYXRpbmctdG9wIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZmxvYXRpbmctYm90dG9tIHtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMmUyZTI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc3RhdHVzLWJhciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgcGFkZGluZy1yaWdodDogMzJweDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLW5hbWUtdmFsdWUtdmFsdWUge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdGF0dXMtYmFyLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1uYW1lLXZhbHVlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XFxuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1kZXRhaWxzLXJvdyB7XFxuICAgIHBhZGRpbmc6IDQwcHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctb3ZlcmxheS1sb2FkaW5nLXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctb3ZlcmxheS1sb2FkaW5nLWNlbnRlciB7XFxuICAgIGJhY2tncm91bmQ6ICNmZmY7XFxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBwYWRkaW5nOiA4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyB7XFxuICAgICAgcGFkZGluZy10b3A6IDMycHg7XFxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcXG4gICAgICB3aWR0aDogMjJweDtcXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgLmFnLXNpZGUtYnV0dG9uIGJ1dHRvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gICAgICAgIGJvcmRlcjogMDtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgcGFkZGluZzogMTZweCAwIDE2cHggMDtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgbWluLWhlaWdodDogMTQ0cHg7XFxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAwO1xcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XFxuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZTJlMmUyOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLWNvbHVtbi1kcm9wIHtcXG4gICAgICBtaW4taGVpZ2h0OiA1MHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXByaW1hcnktY29scy1maWx0ZXItd3JhcHBlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZGZkZmQ7XFxuICAgIHBhZGRpbmc6IDBweDtcXG4gICAgYm9yZGVyOiAwIHNvbGlkICNlZmVmZWY7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudC5hZy1kaXNhYmxlZCA+IC5hZy1ncm91cC1jb21wb25lbnQtbGFiZWwgLmFnLWdyb3VwLWNvbXBvbmVudC10aXRsZSwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQuYWctZGlzYWJsZWQgPiAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgICAgb3BhY2l0eTogMC41OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtY29tcG9uZW50IC5hZy1ncm91cC1jb21wb25lbnQtdGl0bGUtYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xcbiAgICAgIGhlaWdodDogMThweDtcXG4gICAgICBmb250LXNpemU6IDEzcHg7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGhlaWdodDogMjZweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudDpub3QoLmFnLWNvbGxhcHNpYmxlKSA+IGRpdiB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgcGFkZGluZzogOHB4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQ6bm90KC5hZy1jb2xsYXBzaWJsZSkgPiAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciAuYWctY29sdW1uLWdyb3VwLWljb25zIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWNvbXBvbmVudC10b29sYmFyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xcbiAgICAgIHBhZGRpbmc6IDhweDtcXG4gICAgICBib3JkZXI6IDAgc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCA+IC5hZy1ncm91cC1jb21wb25lbnQtY29udGFpbmVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDtcXG4gICAgICBwYWRkaW5nOiA4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ncm91cC1jb21wb25lbnQgLmFnLWdyb3VwLWl0ZW0ge1xcbiAgICAgIG1hcmdpbjogNHB4IDA7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWdyb3VwLWNvbXBvbmVudCAuYWctZ3JvdXAtaXRlbSAuYWctZ3JvdXAtY29tcG9uZW50LXRpdGxlLWJhciB7XFxuICAgICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctbGFiZWxlZCBsYWJlbCB7XFxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWxhYmVsZWQuYWctbGFiZWwtYWxpZ24tdG9wIGxhYmVsIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNsaWRlciA+IC5hZy13cmFwcGVyID4gZGl2Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctYW5nbGUtc2VsZWN0ID4gLmFnLXdyYXBwZXIgPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWFuZ2xlLXNlbGVjdCAuYWctYW5nbGUtc2VsZWN0LWZpZWxkIC5hZy1wYXJlbnQtY2lyY2xlIHtcXG4gICAgd2lkdGg6IDI0cHg7XFxuICAgIGhlaWdodDogMjRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC45KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1hbmdsZS1zZWxlY3QgLmFnLWFuZ2xlLXNlbGVjdC1maWVsZCAuYWctY2hpbGQtY2lyY2xlIHtcXG4gICAgdG9wOiA0cHg7XFxuICAgIGxlZnQ6IDEycHg7XFxuICAgIHdpZHRoOiA2cHg7XFxuICAgIGhlaWdodDogNnB4O1xcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcXG4gICAgbWFyZ2luLXRvcDogLTRweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM0YzRjOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24gLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBoZWlnaHQ6IDE4cHg7XFxuICAgIHdpZHRoOiA0MHB4O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xcbiAgICBib3JkZXItcmFkaXVzOiA1MDByZW07IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy10b2dnbGUtYnV0dG9uIC5hZy1pbnB1dC13cmFwcGVyIC5hZy1pY29uIHtcXG4gICAgICB3aWR0aDogMThweDtcXG4gICAgICBoZWlnaHQ6IDE4cHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcXG4gICAgICBib3JkZXItcmFkaXVzOiA1MDByZW07XFxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDE4cHgpOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXRvZ2dsZS1idXR0b24uYWctc2VsZWN0ZWQgLmFnLWlucHV0LXdyYXBwZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0MDgxOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9nZ2xlLWJ1dHRvbi5hZy1zZWxlY3RlZCAuYWctaW5wdXQtd3JhcHBlciAuYWctaWNvbiB7XFxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcXG4gICAgICByaWdodDogLTFweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBpY2tlciA+IC5hZy13cmFwcGVyID4gZGl2IHtcXG4gICAgICB3aWR0aDogMThweDtcXG4gICAgICBoZWlnaHQ6IDE4cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1waWNrZXIgPiAuYWctd3JhcHBlciBidXR0b246aG92ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZGlhbG9nLmFnLWNvbG9yLWRpYWxvZyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCB7XFxuICAgIHBhZGRpbmc6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1jb2xvciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10b29scyB7XFxuICAgICAgcGFkZGluZzogMTBweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1zYXQge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHdoaXRlKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgd2hpdGUsIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLXZhbCB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShibGFjayksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCAuYWctc3BlY3RydW0tZHJhZ2dlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcXG4gICAgICBoZWlnaHQ6IDEycHg7XFxuICAgICAgd2lkdGg6IDEycHg7XFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XFxuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1odWUtYmFja2dyb3VuZCB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXNwZWN0cnVtLWFscGhhLWJhY2tncm91bmQge1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1odWUtYWxwaGEge1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XFxuICAgICAgaGVpZ2h0OiAxMXB4O1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS1zbGlkZXIge1xcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xcbiAgICAgIHdpZHRoOiAxM3B4O1xcbiAgICAgIGhlaWdodDogMTNweDtcXG4gICAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XFxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMzcpO1xcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjM3KTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlIHtcXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcXG4gICAgICBjb2xvcjogIzMzMzsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1zcGVjdHJ1bS10ZXh0LXZhbHVlOmZvY3VzIHtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGQ3N2U0O1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNvbG9yLXBhbmVsIC5hZy1yZWNlbnQtY29sb3JzID4gZGl2IHtcXG4gICAgICBtYXJnaW46IDAgM3B4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jb2xvci1wYW5lbCAuYWctcmVjZW50LWNvbG9ycyA+IGRpdjpmaXJzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY29sb3ItcGFuZWwgLmFnLXJlY2VudC1jb2xvcnMgPiBkaXY6bGFzdC1jaGlsZCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbC5hZy1wb3B1cCA+IGRpdjpub3QoLmFnLXRvb2x0aXAtY3VzdG9tKSB7XFxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogNXB4IDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcXG4gICAgICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UyZTJlMjsgfVxcbiAgICAuYWctZHJhZ2dpbmctcmFuZ2UtaGFuZGxlIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwuYWctZGlhbG9nLCAuYWctZHJhZ2dpbmctZmlsbC1oYW5kbGUgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbC5hZy1kaWFsb2cge1xcbiAgICAgIG9wYWNpdHk6IDAuNztcXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmY2ZjZmM7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgaGVpZ2h0OiA1NnB4O1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgIGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIiwgc2Fucy1zZXJpZjtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XFxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7IH1cXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXBhbmVsIC5hZy10aXRsZS1iYXIgLmFnLXRpdGxlLWJhci1idXR0b25zIC5hZy1idXR0b24ge1xcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgd2lkdGg6IDIwcHg7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbiAuYWctaWNvbiB7XFxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpob3ZlciwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbCAuYWctdGl0bGUtYmFyIC5hZy10aXRsZS1iYXItYnV0dG9ucyAuYWctYnV0dG9uLmFnLWhhcy1wb3B1cCB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cXG4gICAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLXRpdGxlLWJhciAuYWctdGl0bGUtYmFyLWJ1dHRvbnMgLmFnLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1wYW5lbCAuYWctbWVzc2FnZS1ib3ggLmFnLW1lc3NhZ2UtYm94LWJ1dHRvbi1iYXIge1xcbiAgICAgIGhlaWdodDogMzBweDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICAgIHBhZGRpbmc6IDJweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcGFuZWwgLmFnLW1lc3NhZ2UtYm94IC5hZy1tZXNzYWdlLWJveC1idXR0b24tYmFyIGJ1dHRvbiB7XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbHRpcCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzUzNTM7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XFxuICAgIHBhZGRpbmc6IDVweDtcXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctdG9vbHRpcC5hZy10b29sdGlwLWhpZGluZyB7XFxuICAgICAgb3BhY2l0eTogMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydCAuYWctY2hhcnQtbWVudSB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNoYXJ0IC5hZy1jaGFydC1tZW51ID4gc3Bhbjpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctZ3JvdXAtY29tcG9uZW50LWNvbnRhaW5lciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNoYXJ0LXRhYmJlZC1tZW51IC5hZy1jaGFydC1zZXR0aW5ncyAuYWctY2hhcnQtc2V0dGluZ3MtbWluaS13cmFwcGVyIC5hZy1jaGFydC1taW5pLXRodW1ibmFpbCB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUyZTI7XFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gICAgbWFyZ2luOiA1cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW1pbmktd3JhcHBlciAuYWctY2hhcnQtbWluaS10aHVtYm5haWw6bnRoLWNoaWxkKDJuICsgMik6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbiArIDEpIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsOm50aC1jaGlsZCgzbikge1xcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1taW5pLXdyYXBwZXIgLmFnLWNoYXJ0LW1pbmktdGh1bWJuYWlsLmFnLXNlbGVjdGVkIHtcXG4gICAgICBib3JkZXItY29sb3I6ICMzZjUxYjU7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctY2hhcnQtdGFiYmVkLW1lbnUgLmFnLWNoYXJ0LXNldHRpbmdzIC5hZy1jaGFydC1zZXR0aW5ncy1uYXYtYmFyIC5hZy1uYXYtY2FyZC1zZWxlY3RvciAuYWctbmF2LWNhcmQtaXRlbSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmb250LXNpemU6IDExcHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtc2V0dGluZ3MgLmFnLWNoYXJ0LXNldHRpbmdzLW5hdi1iYXIgLmFnLW5hdi1jYXJkLXNlbGVjdG9yIC5hZy1uYXYtY2FyZC1pdGVtLmFnLXNlbGVjdGVkIHtcXG4gICAgICBjb2xvcjogIzNmNTFiNTsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1jaGFydC10YWJiZWQtbWVudSAuYWctY2hhcnQtZm9ybWF0IC5hZy1jaGFydC1mb3JtYXQtd3JhcHBlciAuYWctZ3JvdXAtaXRlbSB7XFxuICAgIG1hcmdpbjogOS42cHggMDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uIHtcXG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cXG4gICAgZm9udC1mYW1pbHk6IFxcXCJhZ0dyaWRNYXRlcmlhbFxcXCI7XFxuICAgIHNwZWFrOiBub25lO1xcbiAgICBmb250LXNpemU6IDE4cHg7XFxuICAgIGNvbG9yOiAjMzMzO1xcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XFxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XFxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXFxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tYWdncmVnYXRpb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWFycm93czpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tYXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jYW5jZWw6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTAzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoYXJ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwNlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQ6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTA3XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNvbG9yLXBpY2tlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDhcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY29sdW1uOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb2x1bW5zOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb250cmFjdGVkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jb3B5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jcm9zczpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MERcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY3V0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1kYXRhOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1kZXNjOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1leHBhbmRlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tZXllLXNsYXNoOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxMlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1leWU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTEzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWZpbHRlcjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MTRcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tZmlyc3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWdyaXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWdyb3VwOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1pbmRldGVybWluYXRlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sYXN0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxOVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1sb2FkaW5nOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1tYXhpbWl6ZTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tbWVudTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MURcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tbWluaW1pemU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTFFXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLW1pbnVzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkxRlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1uZXh0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1ub25lOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1ub3QtYWxsb3dlZDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjJcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcGFzdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTIzXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXBpbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MjRcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcGl2b3Q6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI1XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXBsdXM6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXByZXZpb3VzOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyOFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb246YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTI5XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXJpZ2h0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zYXZlOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQlxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1kb3duOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyQ1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1sZWZ0OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkyRFxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MkVcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tc21hbGwtdXA6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJGXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRpY2s6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMwXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRyZWUtY2xvc2VkOmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkzMVxcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi10cmVlLWluZGV0ZXJtaW5hdGU6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTMyXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXRyZWUtb3BlbjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBsaW5lLWhlaWdodDogMThweDtcXG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seSxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZC1yZWFkb25seSB7XFxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICAgIG9wYWNpdHk6IDAuMzg7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkIHtcXG4gICAgY29sb3I6ICNmZjQwODE7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LWNoZWNrZWQtcmVhZG9ubHk6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcXEU5MDVcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1yZWFkb25seTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MDZcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtdW5jaGVja2VkLXJlYWRvbmx5OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcRTkwN1xcXCI7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctZ3JvdXAtZXhwYW5kZWQgLmFnLWljb24tY29udHJhY3RlZDplbXB0eTpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MzNcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcm93LWRyYWc6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTE2XFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1yaWdodC1hcnJvdzpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXEU5MUFcXFwiOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tcmFkaW8tYnV0dG9uLW9uIHtcXG4gICAgY29sb3I6ICNmZjQwODE7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcmlnaHQtYXJyb3c6YmVmb3JlIHtcXG4gICAgY29udGVudDogXFxcIlxcXFxFOTJBXFxcIjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctbnVtZXJpYy1jZWxsIHtcXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jaGVja2JveDpub3QoLmFnLWxhYmVsLWFsaWduLWxlZnQpIGxhYmVsLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctcmFkaW8tYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwsIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b2dnbGUtYnV0dG9uOm5vdCguYWctbGFiZWwtYWxpZ24tbGVmdCkgbGFiZWwge1xcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy10b29sLXBhbmVsLXdyYXBwZXIgLmFnLXBpdm90LW1vZGUtcGFuZWwgLmFnLXBpdm90LW1vZGUtc2VsZWN0IHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctdG9vbC1wYW5lbC13cmFwcGVyIC5hZy1jb2x1bW4tZHJvcCAuYWctY29sdW1uLWRyb3AtZW1wdHktbWVzc2FnZSB7XFxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XFxuICAgICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tc2VsZWN0LWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLWdyb3VwIC5hZy1jb2x1bW4tZ3JvdXAtaWNvbnMsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1zZWxlY3QtY2hlY2tib3gsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tc2VsZWN0LXBhbmVsIC5hZy1jb2x1bW4tdG9vbC1wYW5lbC1jb2x1bW4gLmFnLWNvbHVtbi1ncm91cC1pY29ucyB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLXNlbGVjdC1wYW5lbCAuYWctY29sdW1uLXRvb2wtcGFuZWwtY29sdW1uLmFnLXRvb2xwYW5lbC1hZGQtZ3JvdXAtaW5kZW50IHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWhlYWRlci1zZWxlY3QtYWxsIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMjRweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCxcXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQsXFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jb250cmFjdGVkIHtcXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XFxuICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNlbGVjdGlvbi1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLCAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2VsZWN0aW9uLWNoZWNrYm94ICsgLmFnLWdyb3VwLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1jZWxsLXZhbHVlOm5vdCg6ZW1wdHkpLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1jaGVja2JveCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtZXhwYW5kZWQgKyAuYWctZ3JvdXAtdmFsdWU6bm90KDplbXB0eSksXFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNvbnRyYWN0ZWQgKyAuYWctY2VsbC12YWx1ZTpub3QoOmVtcHR5KSxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC12YWx1ZTpub3QoOmVtcHR5KSB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1zZWxlY3Rpb24tY2hlY2tib3ggKyAuYWctZ3JvdXAtY2hlY2tib3gsXFxuICAgICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLWdyb3VwLWNoZWNrYm94ICsgLmFnLWdyb3VwLWNoZWNrYm94LFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1ncm91cC1leHBhbmRlZCArIC5hZy1ncm91cC1jaGVja2JveCxcXG4gICAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY29udHJhY3RlZCArIC5hZy1ncm91cC1jaGVja2JveCB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XFxuICAgICAgICBtYXJnaW4tbGVmdDogaW5pdGlhbDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctZ3JvdXAtY2hpbGQtY291bnQge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctY29sdW1uLWRyb3AtaG9yaXpvbnRhbCB7XFxuICAgICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLWdyb3VwLFxcbiAgICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1jb2x1bW4tZHJvcC1ob3Jpem9udGFsIC5hZy1pY29uLXBpdm90IHtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1mbG9hdGluZy1maWx0ZXItYnV0dG9uIHtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IGRpdiwgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNldC1maWx0ZXItaXRlbSA+IHNwYW4ge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctcnRsIC5hZy1oZWFkZXIgLmFnLWhlYWRlci1jZWxsLXJlc2l6ZTo6YWZ0ZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNpZGUtYmFyIC5hZy1wYW5lbC1jb250YWluZXIge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UyZTJlMjtcXG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1ydGwgLmFnLXNpZGUtYmFyLmZ1bGwtd2lkdGggLmFnLXBhbmVsLWNvbnRhaW5lciB7XFxuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuc2Fzcy12YXJpYWJsZXM6OmFmdGVyIHtcXG4gICAgY29udGVudDogJ3sgXFxcImF1dG9TaXplUGFkZGluZ1xcXCI6IFxcXCIyNHB4XFxcIiwgXFxcImhlYWRlckhlaWdodFxcXCI6IFxcXCI1NnB4XFxcIiwgXFxcImdyb3VwUGFkZGluZ1NpemVcXFwiOiBcXFwiNDJweFxcXCIsIFxcXCJmb290ZXJQYWRkaW5nQWRkaXRpb25cXFwiOiBcXFwiMzJweFxcXCIsIFxcXCJ2aXJ0dWFsSXRlbUhlaWdodFxcXCI6IFxcXCI0MHB4XFxcIiwgXFxcImFnZ0Z1bmNQb3B1cEhlaWdodFxcXCI6IFxcXCIxNDBweFxcXCIsIFxcXCJjaGVja2JveEluZGVudFdpZHRoXFxcIjogXFxcIjI2cHhcXFwiLCBcXFwibGVhZk5vZGVQYWRkaW5nXFxcIjogXFxcIjI0cHhcXFwiLCBcXFwicm93SGVpZ2h0XFxcIjogXFxcIjQ4cHhcXFwiLCBcXFwiZ3JpZFNpemVcXFwiOiBcXFwiOHB4XFxcIiwgXFxcImljb25TaXplXFxcIjogXFxcIjE4cHhcXFwiIH0nO1xcbiAgICBkaXNwbGF5OiBub25lOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1jaGVja2VkLXJlYWRvbmx5LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLWNoZWNrYm94LXVuY2hlY2tlZCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC11bmNoZWNrZWQtcmVhZG9ubHksXFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWljb24tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1jaGVja2JveC1pbmRldGVybWluYXRlLXJlYWRvbmx5LFxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1pY29uLXJhZGlvLWJ1dHRvbi1vbixcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaWNvbi1yYWRpby1idXR0b24tb2ZmIHtcXG4gICAgaGVpZ2h0OiAyNHB4O1xcbiAgICB3aWR0aDogMjRweDtcXG4gICAgZm9udC1zaXplOiAyNHB4O1xcbiAgICBsaW5lLWhlaWdodDogMjRweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1oZWFkZXItY2VsbCxcXG4gIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctaGVhZGVyLWdyb3VwLWNlbGwge1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwtaGlnaGxpZ2h0IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTRlYyAhaW1wb3J0YW50OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLWNlbGwtaGlnaGxpZ2h0LWFuaW1hdGlvbiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxczsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1tZW51LW9wdGlvbiB7XFxuICAgIGhlaWdodDogMzhweDsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zaWRlLWJhciB7XFxuICAgIGJvcmRlci1ib3R0b206IDA7XFxuICAgIGJvcmRlci1yaWdodDogMDtcXG4gICAgYm9yZGVyLXRvcDogMDsgfVxcbiAgICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXNpZGUtYmFyIC5hZy1zaWRlLWJ1dHRvbnMgYnV0dG9uIHtcXG4gICAgICBib3JkZXI6IDA7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgZm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiLCBzYW5zLXNlcmlmO1xcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcXG4gICAgICBmb250LXdlaWdodDogNzAwO1xcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2lkZS1idXR0b24gYnV0dG9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItd2lkdGg6IDA7IH1cXG4gICAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zaWRlLWJhciAuYWctc2lkZS1idXR0b25zIC5hZy1zZWxlY3RlZCBidXR0b24ge1xcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzNmNTFiNTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xcbiAgICAgIHBhZGRpbmctbGVmdDogMXB4OyB9XFxuICAgIC5hZy10aGVtZS1tYXRlcmlhbCAuYWctc2lkZS1iYXIgLmFnLWZpbHRlci10b29scGFuZWwtYm9keSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxcbiAgLmFnLXRoZW1lLW1hdGVyaWFsIC5hZy1zdGF0dXMtYmFyIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XFxuICAuYWctdGhlbWUtbWF0ZXJpYWwgLmFnLXJ0bCAuYWctc2lkZS1iYXIgLmFnLXNpZGUtYnV0dG9ucyAuYWctc2VsZWN0ZWQgYnV0dG9uIHtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XFxuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMzZjUxYjU7XFxuICAgIG1hcmdpbi1yaWdodDogLTJweDtcXG4gICAgcGFkZGluZy1yaWdodDogMXB4OyB9XFxuXFxuXCIiLCJtb2R1bGUuZXhwb3J0cyA9IFwiLypcXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxcbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxcbipcXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXFxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cXG4qL1xcblxcbi5ndy1hbGlnbm1lbnQtY2VsbC1yaWdodCxcXG4uZ3ctYWxpZ25tZW50LWNlbGwtcmlnaHQgLmFnLWNlbGwtdmFsdWUge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcXG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XFxuICAgICAgICAtbXMtZmxleDogMTtcXG4gICAgICAgICAgICBmbGV4OiAxO1xcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWNlbGwtY2VudGVyLFxcbi5ndy1hbGlnbm1lbnQtY2VsbC1jZW50ZXIgLmFnLWNlbGwtdmFsdWUge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcXG4gICAgICAgIC1tcy1mbGV4OiAxO1xcbiAgICAgICAgICAgIGZsZXg6IDE7XFxufVxcblxcbi5ndy1hbGlnbm1lbnQtaGVhZGVyLXJpZ2h0IC5hZy1oZWFkZXItY2VsbC1sYWJlbCB7XFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7ICAgIFxcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWhlYWRlci1jZW50ZXIgLmFnLWhlYWRlci1jZWxsLWxhYmVsIHtcXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG5cXG4uZ3ctYWxpZ25tZW50LWhlYWRlci1yaWdodCAuYWctY2VsbC1sYWJlbC1jb250YWluZXIsXFxuLmd3LWFsaWdubWVudC1oZWFkZXItY2VudGVyIC5hZy1jZWxsLWxhYmVsLWNvbnRhaW5lciB7XFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcXG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XFxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbn1cIiIsIi8qXG5cdE1JVCBMaWNlbnNlIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG5cdEF1dGhvciBUb2JpYXMgS29wcGVycyBAc29rcmFcbiovXG5cbnZhciBzdHlsZXNJbkRvbSA9IHt9O1xuXG52YXJcdG1lbW9pemUgPSBmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW87XG5cblx0cmV0dXJuIGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodHlwZW9mIG1lbW8gPT09IFwidW5kZWZpbmVkXCIpIG1lbW8gPSBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHRcdHJldHVybiBtZW1vO1xuXHR9O1xufTtcblxudmFyIGlzT2xkSUUgPSBtZW1vaXplKGZ1bmN0aW9uICgpIHtcblx0Ly8gVGVzdCBmb3IgSUUgPD0gOSBhcyBwcm9wb3NlZCBieSBCcm93c2VyaGFja3Ncblx0Ly8gQHNlZSBodHRwOi8vYnJvd3NlcmhhY2tzLmNvbS8jaGFjay1lNzFkODY5MmY2NTMzNDE3M2ZlZTcxNWMyMjJjYjgwNVxuXHQvLyBUZXN0cyBmb3IgZXhpc3RlbmNlIG9mIHN0YW5kYXJkIGdsb2JhbHMgaXMgdG8gYWxsb3cgc3R5bGUtbG9hZGVyXG5cdC8vIHRvIG9wZXJhdGUgY29ycmVjdGx5IGludG8gbm9uLXN0YW5kYXJkIGVudmlyb25tZW50c1xuXHQvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJwYWNrLWNvbnRyaWIvc3R5bGUtbG9hZGVyL2lzc3Vlcy8xNzdcblx0cmV0dXJuIHdpbmRvdyAmJiBkb2N1bWVudCAmJiBkb2N1bWVudC5hbGwgJiYgIXdpbmRvdy5hdG9iO1xufSk7XG5cbnZhciBnZXRUYXJnZXQgPSBmdW5jdGlvbiAodGFyZ2V0KSB7XG4gIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG59O1xuXG52YXIgZ2V0RWxlbWVudCA9IChmdW5jdGlvbiAoZm4pIHtcblx0dmFyIG1lbW8gPSB7fTtcblxuXHRyZXR1cm4gZnVuY3Rpb24odGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgcGFzc2luZyBmdW5jdGlvbiBpbiBvcHRpb25zLCB0aGVuIHVzZSBpdCBmb3IgcmVzb2x2ZSBcImhlYWRcIiBlbGVtZW50LlxuICAgICAgICAgICAgICAgIC8vIFVzZWZ1bCBmb3IgU2hhZG93IFJvb3Qgc3R5bGUgaS5lXG4gICAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAgIC8vICAgaW5zZXJ0SW50bzogZnVuY3Rpb24gKCkgeyByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNmb29cIikuc2hhZG93Um9vdCB9XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGFyZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgbWVtb1t0YXJnZXRdID09PSBcInVuZGVmaW5lZFwiKSB7XG5cdFx0XHR2YXIgc3R5bGVUYXJnZXQgPSBnZXRUYXJnZXQuY2FsbCh0aGlzLCB0YXJnZXQpO1xuXHRcdFx0Ly8gU3BlY2lhbCBjYXNlIHRvIHJldHVybiBoZWFkIG9mIGlmcmFtZSBpbnN0ZWFkIG9mIGlmcmFtZSBpdHNlbGZcblx0XHRcdGlmICh3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQgJiYgc3R5bGVUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpIHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGFjY2VzcyB0byBpZnJhbWUgaXMgYmxvY2tlZFxuXHRcdFx0XHRcdC8vIGR1ZSB0byBjcm9zcy1vcmlnaW4gcmVzdHJpY3Rpb25zXG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBzdHlsZVRhcmdldC5jb250ZW50RG9jdW1lbnQuaGVhZDtcblx0XHRcdFx0fSBjYXRjaChlKSB7XG5cdFx0XHRcdFx0c3R5bGVUYXJnZXQgPSBudWxsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRtZW1vW3RhcmdldF0gPSBzdHlsZVRhcmdldDtcblx0XHR9XG5cdFx0cmV0dXJuIG1lbW9bdGFyZ2V0XVxuXHR9O1xufSkoKTtcblxudmFyIHNpbmdsZXRvbiA9IG51bGw7XG52YXJcdHNpbmdsZXRvbkNvdW50ZXIgPSAwO1xudmFyXHRzdHlsZXNJbnNlcnRlZEF0VG9wID0gW107XG5cbnZhclx0Zml4VXJscyA9IHJlcXVpcmUoXCIuL3VybHNcIik7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24obGlzdCwgb3B0aW9ucykge1xuXHRpZiAodHlwZW9mIERFQlVHICE9PSBcInVuZGVmaW5lZFwiICYmIERFQlVHKSB7XG5cdFx0aWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJvYmplY3RcIikgdGhyb3cgbmV3IEVycm9yKFwiVGhlIHN0eWxlLWxvYWRlciBjYW5ub3QgYmUgdXNlZCBpbiBhIG5vbi1icm93c2VyIGVudmlyb25tZW50XCIpO1xuXHR9XG5cblx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cblx0b3B0aW9ucy5hdHRycyA9IHR5cGVvZiBvcHRpb25zLmF0dHJzID09PSBcIm9iamVjdFwiID8gb3B0aW9ucy5hdHRycyA6IHt9O1xuXG5cdC8vIEZvcmNlIHNpbmdsZS10YWcgc29sdXRpb24gb24gSUU2LTksIHdoaWNoIGhhcyBhIGhhcmQgbGltaXQgb24gdGhlICMgb2YgPHN0eWxlPlxuXHQvLyB0YWdzIGl0IHdpbGwgYWxsb3cgb24gYSBwYWdlXG5cdGlmICghb3B0aW9ucy5zaW5nbGV0b24gJiYgdHlwZW9mIG9wdGlvbnMuc2luZ2xldG9uICE9PSBcImJvb2xlYW5cIikgb3B0aW9ucy5zaW5nbGV0b24gPSBpc09sZElFKCk7XG5cblx0Ly8gQnkgZGVmYXVsdCwgYWRkIDxzdHlsZT4gdGFncyB0byB0aGUgPGhlYWQ+IGVsZW1lbnRcbiAgICAgICAgaWYgKCFvcHRpb25zLmluc2VydEludG8pIG9wdGlvbnMuaW5zZXJ0SW50byA9IFwiaGVhZFwiO1xuXG5cdC8vIEJ5IGRlZmF1bHQsIGFkZCA8c3R5bGU+IHRhZ3MgdG8gdGhlIGJvdHRvbSBvZiB0aGUgdGFyZ2V0XG5cdGlmICghb3B0aW9ucy5pbnNlcnRBdCkgb3B0aW9ucy5pbnNlcnRBdCA9IFwiYm90dG9tXCI7XG5cblx0dmFyIHN0eWxlcyA9IGxpc3RUb1N0eWxlcyhsaXN0LCBvcHRpb25zKTtcblxuXHRhZGRTdHlsZXNUb0RvbShzdHlsZXMsIG9wdGlvbnMpO1xuXG5cdHJldHVybiBmdW5jdGlvbiB1cGRhdGUgKG5ld0xpc3QpIHtcblx0XHR2YXIgbWF5UmVtb3ZlID0gW107XG5cblx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHN0eWxlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGl0ZW0gPSBzdHlsZXNbaV07XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdFx0ZG9tU3R5bGUucmVmcy0tO1xuXHRcdFx0bWF5UmVtb3ZlLnB1c2goZG9tU3R5bGUpO1xuXHRcdH1cblxuXHRcdGlmKG5ld0xpc3QpIHtcblx0XHRcdHZhciBuZXdTdHlsZXMgPSBsaXN0VG9TdHlsZXMobmV3TGlzdCwgb3B0aW9ucyk7XG5cdFx0XHRhZGRTdHlsZXNUb0RvbShuZXdTdHlsZXMsIG9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbWF5UmVtb3ZlLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgZG9tU3R5bGUgPSBtYXlSZW1vdmVbaV07XG5cblx0XHRcdGlmKGRvbVN0eWxlLnJlZnMgPT09IDApIHtcblx0XHRcdFx0Zm9yICh2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykgZG9tU3R5bGUucGFydHNbal0oKTtcblxuXHRcdFx0XHRkZWxldGUgc3R5bGVzSW5Eb21bZG9tU3R5bGUuaWRdO1xuXHRcdFx0fVxuXHRcdH1cblx0fTtcbn07XG5cbmZ1bmN0aW9uIGFkZFN0eWxlc1RvRG9tIChzdHlsZXMsIG9wdGlvbnMpIHtcblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBzdHlsZXMubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IHN0eWxlc1tpXTtcblx0XHR2YXIgZG9tU3R5bGUgPSBzdHlsZXNJbkRvbVtpdGVtLmlkXTtcblxuXHRcdGlmKGRvbVN0eWxlKSB7XG5cdFx0XHRkb21TdHlsZS5yZWZzKys7XG5cblx0XHRcdGZvcih2YXIgaiA9IDA7IGogPCBkb21TdHlsZS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRkb21TdHlsZS5wYXJ0c1tqXShpdGVtLnBhcnRzW2pdKTtcblx0XHRcdH1cblxuXHRcdFx0Zm9yKDsgaiA8IGl0ZW0ucGFydHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0ZG9tU3R5bGUucGFydHMucHVzaChhZGRTdHlsZShpdGVtLnBhcnRzW2pdLCBvcHRpb25zKSk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHZhciBwYXJ0cyA9IFtdO1xuXG5cdFx0XHRmb3IodmFyIGogPSAwOyBqIDwgaXRlbS5wYXJ0cy5sZW5ndGg7IGorKykge1xuXHRcdFx0XHRwYXJ0cy5wdXNoKGFkZFN0eWxlKGl0ZW0ucGFydHNbal0sIG9wdGlvbnMpKTtcblx0XHRcdH1cblxuXHRcdFx0c3R5bGVzSW5Eb21baXRlbS5pZF0gPSB7aWQ6IGl0ZW0uaWQsIHJlZnM6IDEsIHBhcnRzOiBwYXJ0c307XG5cdFx0fVxuXHR9XG59XG5cbmZ1bmN0aW9uIGxpc3RUb1N0eWxlcyAobGlzdCwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGVzID0gW107XG5cdHZhciBuZXdTdHlsZXMgPSB7fTtcblxuXHRmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcblx0XHR2YXIgaXRlbSA9IGxpc3RbaV07XG5cdFx0dmFyIGlkID0gb3B0aW9ucy5iYXNlID8gaXRlbVswXSArIG9wdGlvbnMuYmFzZSA6IGl0ZW1bMF07XG5cdFx0dmFyIGNzcyA9IGl0ZW1bMV07XG5cdFx0dmFyIG1lZGlhID0gaXRlbVsyXTtcblx0XHR2YXIgc291cmNlTWFwID0gaXRlbVszXTtcblx0XHR2YXIgcGFydCA9IHtjc3M6IGNzcywgbWVkaWE6IG1lZGlhLCBzb3VyY2VNYXA6IHNvdXJjZU1hcH07XG5cblx0XHRpZighbmV3U3R5bGVzW2lkXSkgc3R5bGVzLnB1c2gobmV3U3R5bGVzW2lkXSA9IHtpZDogaWQsIHBhcnRzOiBbcGFydF19KTtcblx0XHRlbHNlIG5ld1N0eWxlc1tpZF0ucGFydHMucHVzaChwYXJ0KTtcblx0fVxuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbmZ1bmN0aW9uIGluc2VydFN0eWxlRWxlbWVudCAob3B0aW9ucywgc3R5bGUpIHtcblx0dmFyIHRhcmdldCA9IGdldEVsZW1lbnQob3B0aW9ucy5pbnNlcnRJbnRvKVxuXG5cdGlmICghdGFyZ2V0KSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiQ291bGRuJ3QgZmluZCBhIHN0eWxlIHRhcmdldC4gVGhpcyBwcm9iYWJseSBtZWFucyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlICdpbnNlcnRJbnRvJyBwYXJhbWV0ZXIgaXMgaW52YWxpZC5cIik7XG5cdH1cblxuXHR2YXIgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AgPSBzdHlsZXNJbnNlcnRlZEF0VG9wW3N0eWxlc0luc2VydGVkQXRUb3AubGVuZ3RoIC0gMV07XG5cblx0aWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwidG9wXCIpIHtcblx0XHRpZiAoIWxhc3RTdHlsZUVsZW1lbnRJbnNlcnRlZEF0VG9wKSB7XG5cdFx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCB0YXJnZXQuZmlyc3RDaGlsZCk7XG5cdFx0fSBlbHNlIGlmIChsYXN0U3R5bGVFbGVtZW50SW5zZXJ0ZWRBdFRvcC5uZXh0U2libGluZykge1xuXHRcdFx0dGFyZ2V0Lmluc2VydEJlZm9yZShzdHlsZSwgbGFzdFN0eWxlRWxlbWVudEluc2VydGVkQXRUb3AubmV4dFNpYmxpbmcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHRcdH1cblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnB1c2goc3R5bGUpO1xuXHR9IGVsc2UgaWYgKG9wdGlvbnMuaW5zZXJ0QXQgPT09IFwiYm90dG9tXCIpIHtcblx0XHR0YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBvcHRpb25zLmluc2VydEF0ID09PSBcIm9iamVjdFwiICYmIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKSB7XG5cdFx0dmFyIG5leHRTaWJsaW5nID0gZ2V0RWxlbWVudChvcHRpb25zLmluc2VydEludG8gKyBcIiBcIiArIG9wdGlvbnMuaW5zZXJ0QXQuYmVmb3JlKTtcblx0XHR0YXJnZXQuaW5zZXJ0QmVmb3JlKHN0eWxlLCBuZXh0U2libGluZyk7XG5cdH0gZWxzZSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKFwiW1N0eWxlIExvYWRlcl1cXG5cXG4gSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICdpbnNlcnRBdCcgKCdvcHRpb25zLmluc2VydEF0JykgZm91bmQuXFxuIE11c3QgYmUgJ3RvcCcsICdib3R0b20nLCBvciBPYmplY3QuXFxuIChodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3N0eWxlLWxvYWRlciNpbnNlcnRhdClcXG5cIik7XG5cdH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlU3R5bGVFbGVtZW50IChzdHlsZSkge1xuXHRpZiAoc3R5bGUucGFyZW50Tm9kZSA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuXHRzdHlsZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHN0eWxlKTtcblxuXHR2YXIgaWR4ID0gc3R5bGVzSW5zZXJ0ZWRBdFRvcC5pbmRleE9mKHN0eWxlKTtcblx0aWYoaWR4ID49IDApIHtcblx0XHRzdHlsZXNJbnNlcnRlZEF0VG9wLnNwbGljZShpZHgsIDEpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVN0eWxlRWxlbWVudCAob3B0aW9ucykge1xuXHR2YXIgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3R5bGVcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXG5cdGFkZEF0dHJzKHN0eWxlLCBvcHRpb25zLmF0dHJzKTtcblx0aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMsIHN0eWxlKTtcblxuXHRyZXR1cm4gc3R5bGU7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxpbmtFbGVtZW50IChvcHRpb25zKSB7XG5cdHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImxpbmtcIik7XG5cblx0b3B0aW9ucy5hdHRycy50eXBlID0gXCJ0ZXh0L2Nzc1wiO1xuXHRvcHRpb25zLmF0dHJzLnJlbCA9IFwic3R5bGVzaGVldFwiO1xuXG5cdGFkZEF0dHJzKGxpbmssIG9wdGlvbnMuYXR0cnMpO1xuXHRpbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucywgbGluayk7XG5cblx0cmV0dXJuIGxpbms7XG59XG5cbmZ1bmN0aW9uIGFkZEF0dHJzIChlbCwgYXR0cnMpIHtcblx0T2JqZWN0LmtleXMoYXR0cnMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuXHRcdGVsLnNldEF0dHJpYnV0ZShrZXksIGF0dHJzW2tleV0pO1xuXHR9KTtcbn1cblxuZnVuY3Rpb24gYWRkU3R5bGUgKG9iaiwgb3B0aW9ucykge1xuXHR2YXIgc3R5bGUsIHVwZGF0ZSwgcmVtb3ZlLCByZXN1bHQ7XG5cblx0Ly8gSWYgYSB0cmFuc2Zvcm0gZnVuY3Rpb24gd2FzIGRlZmluZWQsIHJ1biBpdCBvbiB0aGUgY3NzXG5cdGlmIChvcHRpb25zLnRyYW5zZm9ybSAmJiBvYmouY3NzKSB7XG5cdCAgICByZXN1bHQgPSBvcHRpb25zLnRyYW5zZm9ybShvYmouY3NzKTtcblxuXHQgICAgaWYgKHJlc3VsdCkge1xuXHQgICAgXHQvLyBJZiB0cmFuc2Zvcm0gcmV0dXJucyBhIHZhbHVlLCB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIHJ1bm5pbmcgcnVudGltZSB0cmFuc2Zvcm1hdGlvbnMgb24gdGhlIGNzcy5cblx0ICAgIFx0b2JqLmNzcyA9IHJlc3VsdDtcblx0ICAgIH0gZWxzZSB7XG5cdCAgICBcdC8vIElmIHRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gcmV0dXJucyBhIGZhbHN5IHZhbHVlLCBkb24ndCBhZGQgdGhpcyBjc3MuXG5cdCAgICBcdC8vIFRoaXMgYWxsb3dzIGNvbmRpdGlvbmFsIGxvYWRpbmcgb2YgY3NzXG5cdCAgICBcdHJldHVybiBmdW5jdGlvbigpIHtcblx0ICAgIFx0XHQvLyBub29wXG5cdCAgICBcdH07XG5cdCAgICB9XG5cdH1cblxuXHRpZiAob3B0aW9ucy5zaW5nbGV0b24pIHtcblx0XHR2YXIgc3R5bGVJbmRleCA9IHNpbmdsZXRvbkNvdW50ZXIrKztcblxuXHRcdHN0eWxlID0gc2luZ2xldG9uIHx8IChzaW5nbGV0b24gPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucykpO1xuXG5cdFx0dXBkYXRlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCBmYWxzZSk7XG5cdFx0cmVtb3ZlID0gYXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsIHN0eWxlLCBzdHlsZUluZGV4LCB0cnVlKTtcblxuXHR9IGVsc2UgaWYgKFxuXHRcdG9iai5zb3VyY2VNYXAgJiZcblx0XHR0eXBlb2YgVVJMID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgVVJMLmNyZWF0ZU9iamVjdFVSTCA9PT0gXCJmdW5jdGlvblwiICYmXG5cdFx0dHlwZW9mIFVSTC5yZXZva2VPYmplY3RVUkwgPT09IFwiZnVuY3Rpb25cIiAmJlxuXHRcdHR5cGVvZiBCbG9iID09PSBcImZ1bmN0aW9uXCIgJiZcblx0XHR0eXBlb2YgYnRvYSA9PT0gXCJmdW5jdGlvblwiXG5cdCkge1xuXHRcdHN0eWxlID0gY3JlYXRlTGlua0VsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gdXBkYXRlTGluay5iaW5kKG51bGwsIHN0eWxlLCBvcHRpb25zKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXG5cdFx0XHRpZihzdHlsZS5ocmVmKSBVUkwucmV2b2tlT2JqZWN0VVJMKHN0eWxlLmhyZWYpO1xuXHRcdH07XG5cdH0gZWxzZSB7XG5cdFx0c3R5bGUgPSBjcmVhdGVTdHlsZUVsZW1lbnQob3B0aW9ucyk7XG5cdFx0dXBkYXRlID0gYXBwbHlUb1RhZy5iaW5kKG51bGwsIHN0eWxlKTtcblx0XHRyZW1vdmUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO1xuXHRcdH07XG5cdH1cblxuXHR1cGRhdGUob2JqKTtcblxuXHRyZXR1cm4gZnVuY3Rpb24gdXBkYXRlU3R5bGUgKG5ld09iaikge1xuXHRcdGlmIChuZXdPYmopIHtcblx0XHRcdGlmIChcblx0XHRcdFx0bmV3T2JqLmNzcyA9PT0gb2JqLmNzcyAmJlxuXHRcdFx0XHRuZXdPYmoubWVkaWEgPT09IG9iai5tZWRpYSAmJlxuXHRcdFx0XHRuZXdPYmouc291cmNlTWFwID09PSBvYmouc291cmNlTWFwXG5cdFx0XHQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHR1cGRhdGUob2JqID0gbmV3T2JqKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVtb3ZlKCk7XG5cdFx0fVxuXHR9O1xufVxuXG52YXIgcmVwbGFjZVRleHQgPSAoZnVuY3Rpb24gKCkge1xuXHR2YXIgdGV4dFN0b3JlID0gW107XG5cblx0cmV0dXJuIGZ1bmN0aW9uIChpbmRleCwgcmVwbGFjZW1lbnQpIHtcblx0XHR0ZXh0U3RvcmVbaW5kZXhdID0gcmVwbGFjZW1lbnQ7XG5cblx0XHRyZXR1cm4gdGV4dFN0b3JlLmZpbHRlcihCb29sZWFuKS5qb2luKCdcXG4nKTtcblx0fTtcbn0pKCk7XG5cbmZ1bmN0aW9uIGFwcGx5VG9TaW5nbGV0b25UYWcgKHN0eWxlLCBpbmRleCwgcmVtb3ZlLCBvYmopIHtcblx0dmFyIGNzcyA9IHJlbW92ZSA/IFwiXCIgOiBvYmouY3NzO1xuXG5cdGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gcmVwbGFjZVRleHQoaW5kZXgsIGNzcyk7XG5cdH0gZWxzZSB7XG5cdFx0dmFyIGNzc05vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpO1xuXHRcdHZhciBjaGlsZE5vZGVzID0gc3R5bGUuY2hpbGROb2RlcztcblxuXHRcdGlmIChjaGlsZE5vZGVzW2luZGV4XSkgc3R5bGUucmVtb3ZlQ2hpbGQoY2hpbGROb2Rlc1tpbmRleF0pO1xuXG5cdFx0aWYgKGNoaWxkTm9kZXMubGVuZ3RoKSB7XG5cdFx0XHRzdHlsZS5pbnNlcnRCZWZvcmUoY3NzTm9kZSwgY2hpbGROb2Rlc1tpbmRleF0pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRzdHlsZS5hcHBlbmRDaGlsZChjc3NOb2RlKTtcblx0XHR9XG5cdH1cbn1cblxuZnVuY3Rpb24gYXBwbHlUb1RhZyAoc3R5bGUsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIG1lZGlhID0gb2JqLm1lZGlhO1xuXG5cdGlmKG1lZGlhKSB7XG5cdFx0c3R5bGUuc2V0QXR0cmlidXRlKFwibWVkaWFcIiwgbWVkaWEpXG5cdH1cblxuXHRpZihzdHlsZS5zdHlsZVNoZWV0KSB7XG5cdFx0c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xuXHR9IGVsc2Uge1xuXHRcdHdoaWxlKHN0eWxlLmZpcnN0Q2hpbGQpIHtcblx0XHRcdHN0eWxlLnJlbW92ZUNoaWxkKHN0eWxlLmZpcnN0Q2hpbGQpO1xuXHRcdH1cblxuXHRcdHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUxpbmsgKGxpbmssIG9wdGlvbnMsIG9iaikge1xuXHR2YXIgY3NzID0gb2JqLmNzcztcblx0dmFyIHNvdXJjZU1hcCA9IG9iai5zb3VyY2VNYXA7XG5cblx0Lypcblx0XHRJZiBjb252ZXJ0VG9BYnNvbHV0ZVVybHMgaXNuJ3QgZGVmaW5lZCwgYnV0IHNvdXJjZW1hcHMgYXJlIGVuYWJsZWRcblx0XHRhbmQgdGhlcmUgaXMgbm8gcHVibGljUGF0aCBkZWZpbmVkIHRoZW4gbGV0cyB0dXJuIGNvbnZlcnRUb0Fic29sdXRlVXJsc1xuXHRcdG9uIGJ5IGRlZmF1bHQuICBPdGhlcndpc2UgZGVmYXVsdCB0byB0aGUgY29udmVydFRvQWJzb2x1dGVVcmxzIG9wdGlvblxuXHRcdGRpcmVjdGx5XG5cdCovXG5cdHZhciBhdXRvRml4VXJscyA9IG9wdGlvbnMuY29udmVydFRvQWJzb2x1dGVVcmxzID09PSB1bmRlZmluZWQgJiYgc291cmNlTWFwO1xuXG5cdGlmIChvcHRpb25zLmNvbnZlcnRUb0Fic29sdXRlVXJscyB8fCBhdXRvRml4VXJscykge1xuXHRcdGNzcyA9IGZpeFVybHMoY3NzKTtcblx0fVxuXG5cdGlmIChzb3VyY2VNYXApIHtcblx0XHQvLyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yNjYwMzg3NVxuXHRcdGNzcyArPSBcIlxcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsXCIgKyBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpICsgXCIgKi9cIjtcblx0fVxuXG5cdHZhciBibG9iID0gbmV3IEJsb2IoW2Nzc10sIHsgdHlwZTogXCJ0ZXh0L2Nzc1wiIH0pO1xuXG5cdHZhciBvbGRTcmMgPSBsaW5rLmhyZWY7XG5cblx0bGluay5ocmVmID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcblxuXHRpZihvbGRTcmMpIFVSTC5yZXZva2VPYmplY3RVUkwob2xkU3JjKTtcbn1cbiIsIlxuLyoqXG4gKiBXaGVuIHNvdXJjZSBtYXBzIGFyZSBlbmFibGVkLCBgc3R5bGUtbG9hZGVyYCB1c2VzIGEgbGluayBlbGVtZW50IHdpdGggYSBkYXRhLXVyaSB0b1xuICogZW1iZWQgdGhlIGNzcyBvbiB0aGUgcGFnZS4gVGhpcyBicmVha3MgYWxsIHJlbGF0aXZlIHVybHMgYmVjYXVzZSBub3cgdGhleSBhcmUgcmVsYXRpdmUgdG8gYVxuICogYnVuZGxlIGluc3RlYWQgb2YgdGhlIGN1cnJlbnQgcGFnZS5cbiAqXG4gKiBPbmUgc29sdXRpb24gaXMgdG8gb25seSB1c2UgZnVsbCB1cmxzLCBidXQgdGhhdCBtYXkgYmUgaW1wb3NzaWJsZS5cbiAqXG4gKiBJbnN0ZWFkLCB0aGlzIGZ1bmN0aW9uIFwiZml4ZXNcIiB0aGUgcmVsYXRpdmUgdXJscyB0byBiZSBhYnNvbHV0ZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgcGFnZSBsb2NhdGlvbi5cbiAqXG4gKiBBIHJ1ZGltZW50YXJ5IHRlc3Qgc3VpdGUgaXMgbG9jYXRlZCBhdCBgdGVzdC9maXhVcmxzLmpzYCBhbmQgY2FuIGJlIHJ1biB2aWEgdGhlIGBucG0gdGVzdGAgY29tbWFuZC5cbiAqXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoY3NzKSB7XG4gIC8vIGdldCBjdXJyZW50IGxvY2F0aW9uXG4gIHZhciBsb2NhdGlvbiA9IHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIgJiYgd2luZG93LmxvY2F0aW9uO1xuXG4gIGlmICghbG9jYXRpb24pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJmaXhVcmxzIHJlcXVpcmVzIHdpbmRvdy5sb2NhdGlvblwiKTtcbiAgfVxuXG5cdC8vIGJsYW5rIG9yIG51bGw/XG5cdGlmICghY3NzIHx8IHR5cGVvZiBjc3MgIT09IFwic3RyaW5nXCIpIHtcblx0ICByZXR1cm4gY3NzO1xuICB9XG5cbiAgdmFyIGJhc2VVcmwgPSBsb2NhdGlvbi5wcm90b2NvbCArIFwiLy9cIiArIGxvY2F0aW9uLmhvc3Q7XG4gIHZhciBjdXJyZW50RGlyID0gYmFzZVVybCArIGxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoL1xcL1teXFwvXSokLywgXCIvXCIpO1xuXG5cdC8vIGNvbnZlcnQgZWFjaCB1cmwoLi4uKVxuXHQvKlxuXHRUaGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBqdXN0IGEgd2F5IHRvIHJlY3Vyc2l2ZWx5IG1hdGNoIGJyYWNrZXRzIHdpdGhpblxuXHRhIHN0cmluZy5cblxuXHQgL3VybFxccypcXCggID0gTWF0Y2ggb24gdGhlIHdvcmQgXCJ1cmxcIiB3aXRoIGFueSB3aGl0ZXNwYWNlIGFmdGVyIGl0IGFuZCB0aGVuIGEgcGFyZW5zXG5cdCAgICggID0gU3RhcnQgYSBjYXB0dXJpbmcgZ3JvdXBcblx0ICAgICAoPzogID0gU3RhcnQgYSBub24tY2FwdHVyaW5nIGdyb3VwXG5cdCAgICAgICAgIFteKShdICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgIFxcKCAgPSBNYXRjaCBhIHN0YXJ0IHBhcmVudGhlc2VzXG5cdCAgICAgICAgICAgICAoPzogID0gU3RhcnQgYW5vdGhlciBub24tY2FwdHVyaW5nIGdyb3Vwc1xuXHQgICAgICAgICAgICAgICAgIFteKShdKyAgPSBNYXRjaCBhbnl0aGluZyB0aGF0IGlzbid0IGEgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICB8ICA9IE9SXG5cdCAgICAgICAgICAgICAgICAgXFwoICA9IE1hdGNoIGEgc3RhcnQgcGFyZW50aGVzZXNcblx0ICAgICAgICAgICAgICAgICAgICAgW14pKF0qICA9IE1hdGNoIGFueXRoaW5nIHRoYXQgaXNuJ3QgYSBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgICAgIFxcKSAgPSBNYXRjaCBhIGVuZCBwYXJlbnRoZXNlc1xuXHQgICAgICAgICAgICAgKSAgPSBFbmQgR3JvdXBcbiAgICAgICAgICAgICAgKlxcKSA9IE1hdGNoIGFueXRoaW5nIGFuZCB0aGVuIGEgY2xvc2UgcGFyZW5zXG4gICAgICAgICAgKSAgPSBDbG9zZSBub24tY2FwdHVyaW5nIGdyb3VwXG4gICAgICAgICAgKiAgPSBNYXRjaCBhbnl0aGluZ1xuICAgICAgICkgID0gQ2xvc2UgY2FwdHVyaW5nIGdyb3VwXG5cdCBcXCkgID0gTWF0Y2ggYSBjbG9zZSBwYXJlbnNcblxuXHQgL2dpICA9IEdldCBhbGwgbWF0Y2hlcywgbm90IHRoZSBmaXJzdC4gIEJlIGNhc2UgaW5zZW5zaXRpdmUuXG5cdCAqL1xuXHR2YXIgZml4ZWRDc3MgPSBjc3MucmVwbGFjZSgvdXJsXFxzKlxcKCgoPzpbXikoXXxcXCgoPzpbXikoXSt8XFwoW14pKF0qXFwpKSpcXCkpKilcXCkvZ2ksIGZ1bmN0aW9uKGZ1bGxNYXRjaCwgb3JpZ1VybCkge1xuXHRcdC8vIHN0cmlwIHF1b3RlcyAoaWYgdGhleSBleGlzdClcblx0XHR2YXIgdW5xdW90ZWRPcmlnVXJsID0gb3JpZ1VybFxuXHRcdFx0LnRyaW0oKVxuXHRcdFx0LnJlcGxhY2UoL15cIiguKilcIiQvLCBmdW5jdGlvbihvLCAkMSl7IHJldHVybiAkMTsgfSlcblx0XHRcdC5yZXBsYWNlKC9eJyguKiknJC8sIGZ1bmN0aW9uKG8sICQxKXsgcmV0dXJuICQxOyB9KTtcblxuXHRcdC8vIGFscmVhZHkgYSBmdWxsIHVybD8gbm8gY2hhbmdlXG5cdFx0aWYgKC9eKCN8ZGF0YTp8aHR0cDpcXC9cXC98aHR0cHM6XFwvXFwvfGZpbGU6XFwvXFwvXFwvfFxccyokKS9pLnRlc3QodW5xdW90ZWRPcmlnVXJsKSkge1xuXHRcdCAgcmV0dXJuIGZ1bGxNYXRjaDtcblx0XHR9XG5cblx0XHQvLyBjb252ZXJ0IHRoZSB1cmwgdG8gYSBmdWxsIHVybFxuXHRcdHZhciBuZXdVcmw7XG5cblx0XHRpZiAodW5xdW90ZWRPcmlnVXJsLmluZGV4T2YoXCIvL1wiKSA9PT0gMCkge1xuXHRcdCAgXHQvL1RPRE86IHNob3VsZCB3ZSBhZGQgcHJvdG9jb2w/XG5cdFx0XHRuZXdVcmwgPSB1bnF1b3RlZE9yaWdVcmw7XG5cdFx0fSBlbHNlIGlmICh1bnF1b3RlZE9yaWdVcmwuaW5kZXhPZihcIi9cIikgPT09IDApIHtcblx0XHRcdC8vIHBhdGggc2hvdWxkIGJlIHJlbGF0aXZlIHRvIHRoZSBiYXNlIHVybFxuXHRcdFx0bmV3VXJsID0gYmFzZVVybCArIHVucXVvdGVkT3JpZ1VybDsgLy8gYWxyZWFkeSBzdGFydHMgd2l0aCAnLydcblx0XHR9IGVsc2Uge1xuXHRcdFx0Ly8gcGF0aCBzaG91bGQgYmUgcmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3Rvcnlcblx0XHRcdG5ld1VybCA9IGN1cnJlbnREaXIgKyB1bnF1b3RlZE9yaWdVcmwucmVwbGFjZSgvXlxcLlxcLy8sIFwiXCIpOyAvLyBTdHJpcCBsZWFkaW5nICcuLydcblx0XHR9XG5cblx0XHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIHVybCguLi4pXG5cdFx0cmV0dXJuIFwidXJsKFwiICsgSlNPTi5zdHJpbmdpZnkobmV3VXJsKSArIFwiKVwiO1xuXHR9KTtcblxuXHQvLyBzZW5kIGJhY2sgdGhlIGZpeGVkIGNzc1xuXHRyZXR1cm4gZml4ZWRDc3M7XG59O1xuIiwidmFyIGc7XG5cbi8vIFRoaXMgd29ya3MgaW4gbm9uLXN0cmljdCBtb2RlXG5nID0gKGZ1bmN0aW9uKCkge1xuXHRyZXR1cm4gdGhpcztcbn0pKCk7XG5cbnRyeSB7XG5cdC8vIFRoaXMgd29ya3MgaWYgZXZhbCBpcyBhbGxvd2VkIChzZWUgQ1NQKVxuXHRnID0gZyB8fCBuZXcgRnVuY3Rpb24oXCJyZXR1cm4gdGhpc1wiKSgpO1xufSBjYXRjaCAoZSkge1xuXHQvLyBUaGlzIHdvcmtzIGlmIHRoZSB3aW5kb3cgcmVmZXJlbmNlIGlzIGF2YWlsYWJsZVxuXHRpZiAodHlwZW9mIHdpbmRvdyA9PT0gXCJvYmplY3RcIikgZyA9IHdpbmRvdztcbn1cblxuLy8gZyBjYW4gc3RpbGwgYmUgdW5kZWZpbmVkLCBidXQgbm90aGluZyB0byBkbyBhYm91dCBpdC4uLlxuLy8gV2UgcmV0dXJuIHVuZGVmaW5lZCwgaW5zdGVhZCBvZiBub3RoaW5nIGhlcmUsIHNvIGl0J3Ncbi8vIGVhc2llciB0byBoYW5kbGUgdGhpcyBjYXNlLiBpZighZ2xvYmFsKSB7IC4uLn1cblxubW9kdWxlLmV4cG9ydHMgPSBnO1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbihtb2R1bGUpIHtcblx0aWYgKCFtb2R1bGUud2VicGFja1BvbHlmaWxsKSB7XG5cdFx0bW9kdWxlLmRlcHJlY2F0ZSA9IGZ1bmN0aW9uKCkge307XG5cdFx0bW9kdWxlLnBhdGhzID0gW107XG5cdFx0Ly8gbW9kdWxlLnBhcmVudCA9IHVuZGVmaW5lZCBieSBkZWZhdWx0XG5cdFx0aWYgKCFtb2R1bGUuY2hpbGRyZW4pIG1vZHVsZS5jaGlsZHJlbiA9IFtdO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwibG9hZGVkXCIsIHtcblx0XHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRyZXR1cm4gbW9kdWxlLmw7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG1vZHVsZSwgXCJpZFwiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0cmV0dXJuIG1vZHVsZS5pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdG1vZHVsZS53ZWJwYWNrUG9seWZpbGwgPSAxO1xuXHR9XG5cdHJldHVybiBtb2R1bGU7XG59O1xuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbi8qKlxuICogU3RhcnQgY2VsbCBlZGl0aW5nXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkIFxuICogQHBhcmFtIHtTdHJpbmd8bnVtYmVyfSByb3cgVGhlIHJvdyBpbmRleFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbEtleSBUaGUgY29sdW1uJ3Mga2V5XG4gKiBAcGFyYW0ge1N0cmluZ3xOdW1iZXJ9IGtleSAgS2V5IHByZXNzXG4gKiBAcGFyYW0ge1N0cmluZ30gY2hhciBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3N0YXJ0RWRpdGluZ0NlbGwoaWQsIHJvdywgY29sS2V5LCBrZXksIGNoYXIpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkuc2V0Rm9jdXNlZENlbGwoTnVtYmVyKHJvdyksIGNvbEtleSk7XG4gIG9wdGlvbnMuYXBpLnN0YXJ0RWRpdGluZ0NlbGwoe1xuICAgIHJvd0luZGV4OiBOdW1iZXIocm93KSxcbiAgICBjb2xLZXk6IGNvbEtleSxcbiAgICBrZXlQcmVzczogTnVtYmVyKGtleSksXG4gICAgY2hhclByZXNzOiBjaGFyXG4gIH0pO1xufVxuXG4vKipcbiAqIFN0b3AgY2VsbCBlZGl0aW5nIFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZCBcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gY2FuY2VsIHdoZW4gdHJ1ZSBjYW5jZWwgZWRpdHMgLCBzYXZlIGVkaXRzIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfc3RvcEVkaXRpbmcoaWQsIGNhbmNlbCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zdG9wRWRpdGluZyhjYW5jZWwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZWRpdE5leHRDZWxsKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnRhYlRvTmV4dENlbGwoKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19lZGl0UHJldmlvdXNDZWxsKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnRhYlRvUHJldmlvdXNDZWxsKCk7XG59XG5cbi8qKlxuICogU2V0IEZvY3VzIG9uIHRoZSBnaXZlbiByb3cgYW5kIGNvbHVtblxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZCBcbiAqIEBwYXJhbSB7U3RyaW5nfE51bWJlcn0gcm93IFRoZSByb3cncyBpbmRleC9pZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbiBUaGUgY29sdW1uIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRGb2N1c2VkQ2VsbChpZCwgcm93LCBjb2x1bW4pIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IHIgPSAhcm93ID8gMCA6IChOdW1iZXIuaXNJbnRlZ2VyKCtyb3cpID8gK3JvdyA6IG9wdGlvbnMuYXBpLmdldFJvd05vZGUocm93KS5yb3dJbmRleCk7XG4gIGNvbnN0IGMgPSBjb2x1bW4gPyBjb2x1bW4gOiBvcHRpb25zLmNvbHVtbkFwaS5nZXRBbGxHcmlkQ29sdW1ucygpWzBdLmNvbElkO1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zZXRGb2N1c2VkQ2VsbChyLCBjKTtcbn0iLCIvKlxyXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxyXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cclxuKlxyXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXHJcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXHJcbiovXHJcblxyXG4vKipcclxuICogUmV0dXJuIHRoZSBjaGFydCB0b29sYmFyIGl0ZW1zIGRlZmluZWQgaW4gdGhlIGdyaWQncyBjb250ZXh0IFxyXG4gKiBcclxuICogQHBhcmFtIHtPYmplY3R9IHBhcmFtcyBcclxuICogQHJldHVybnMge0FycmF5fSBhcnJheSBvZiBzdXBwb3J0ZWQgY2hhcnQgaXRlbXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRDaGFydFRvb2xiYXJJdGVtcyhwYXJhbXMpIHtcclxuICAgIHJldHVybiBwYXJhbXNcclxuICAgICAgICAuYXBpXHJcbiAgICAgICAgLmdyaWRPcHRpb25zV3JhcHBlclxyXG4gICAgICAgIC5ncmlkT3B0aW9uc1xyXG4gICAgICAgIC5jb250ZXh0XHJcbiAgICAgICAgLmNoYXJ0VG9vbGJhckl0ZW1zIHx8IFtdO1xyXG59IiwiLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcbmNvbnN0IHsgZGVlcFBhcnNlSnNvbiB9ID0gcmVxdWlyZShcImRlZXAtcGFyc2UtanNvblwiKTtcblxuLyoqXG4gKiBFeHRlbmQgdGhlIGNvbHVtbiBkZWZpbml0aW9uc1xuICogXG4gKiBFeHRlbmQgdGhlIGNvbHVtbiBkZWZpbml0aW9ucyB3aXRoIG9wdGlvbnMgd2hpY2ggY2FuIG5vdCBiZSBoYW5kbGVkIGluIEJCalxuICogKGV4OiBhdHRhY2hpbmcgY2FsbGJhY2tzKVxuICogXG4gKiBAcGFyYW0ge0FycmF5fSBkZWZpbml0aW9ucyBhcnJheSBvZiBjb2x1bW4gZGVmaW5pdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2V4dGVuZENvbHVtbkRlZmluaXRpb25zKGRlZmluaXRpb25zKSB7XG5cbiAgZm9yIChsZXQgaSBpbiBkZWZpbml0aW9ucykge1xuICAgIGNvbnN0IGRlZiA9IGRlZmluaXRpb25zW2ldO1xuXG4gICAgZGVmLmNoZWNrYm94U2VsZWN0aW9uID0gZGVmLmNoZWNrYm94U2VsZWN0aW9uIHx8IGd3X2lzU2hvd1NlbGVjdGlvbkNoZWNrYm94O1xuICAgIGRlZi5oZWFkZXJDaGVja2JveFNlbGVjdGlvbiA9IGRlZi5oZWFkZXJDaGVja2JveFNlbGVjdGlvbiB8fCBnd19pc0hlYWRlckNoZWNrYm94U2VsZWN0aW9uO1xuICB9XG59XG5cbi8qKlxuICogVXBkYXRlIHRoZSBjb2x1bW4gZGVmaW5pdGlvbnMgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCBpZFxuICogQHBhcmFtIHtBcnJheX0gZGVmaW5pdGlvbnMgYXJyYXkgb2YgY29sdW1uIGRlZmluaXRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRDb2x1bW5EZWZpbml0aW9ucyhpZCwgZGVmaW5pdGlvbnMpIHtcbiAgY29uc3QgZ3JpZCA9IGd3X2dldEdyaWQoaWQpO1xuICBjb25zdCBkZWVwUGFyc2VkRGVmaW5pdGlvbnMgPSBkZWVwUGFyc2VKc29uKEpTT04uc3RyaW5naWZ5KGRlZmluaXRpb25zKSk7XG5cbiAgZ3dfZXh0ZW5kQ29sdW1uRGVmaW5pdGlvbnMoZGVlcFBhcnNlZERlZmluaXRpb25zKTtcblxuICBncmlkLm9wdGlvbnMuYXBpLnNldENvbHVtbkRlZnMoZGVlcFBhcnNlZERlZmluaXRpb25zKTtcbiAgZ3JpZC5vcHRpb25zLmNvbHVtbkRlZnMgPSBkZWVwUGFyc2VkRGVmaW5pdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zaXplQ29sdW1uc1RvRml0KGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnNpemVDb2x1bW5zVG9GaXQoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFZpc2libGVDb2x1bW4oaWQsIGNvbHVtbklkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLmVuc3VyZUNvbHVtblZpc2libGUoY29sdW1uSWQpO1xufVxuXG4vKipcbiAqIFNldCBDb2x1bW4gV2lkdGhcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5JZCBUaGUgY29sdW1uIGlkXG4gKiBAcGFyYW0ge051bWJlcnxTdHJpbmd9IHdpZHRoIFRoZSBuZXcgY29sdW1uIHdpZHRoXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRDb2x1bW5XaWR0aChpZCwgY29sdW1uSWQsIHdpZHRoKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLnNldENvbHVtbldpZHRoKGNvbHVtbklkLCBOdW1iZXIod2lkdGgpKTtcbn1cblxuLyoqXG4gKiBQaW4gQ29sdW1uXG4gKlxuICogUGluIGEgY29sdW1uIHRvIGEgc3BlY2lmaWMgZGlyZWN0aW9uXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1uSWQgVGhlIGNvbHVtbiBpZFxuICogQHBhcmFtIHtTdHJpbmd9IHBpbiBUaGUgcGluIGRpcmVjdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcGluQ29sdW1uKGlkLCBjb2x1bW5JZCwgcGluKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLnNldENvbHVtblBpbm5lZChjb2x1bW5JZCwgcGluKTtcbn1cblxuLyoqXG4gKiBNb3ZlIENvbHVtblxuICpcbiAqIE1vdmUgY29sdW1uIHRvIGEgc3BlY2lmaWMgaW5kZXhcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5JZCBUaGUgY29sdW1uIGlkXG4gKiBAcGFyYW0ge051bWJlcnxTdHJpbmd9IHRvSW5kZXggVGhlIG5ldyBjb2x1bW4gaW5kZXhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X21vdmVDb2x1bW4oaWQsIGNvbHVtbklkLCB0b0luZGV4KSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLm1vdmVDb2x1bW4oY29sdW1uSWQsIHRvSW5kZXgpO1xufVxuXG4vKipcbiAqIFNob3cgLyBIaWRlIHNlbGVjdGlvbiBjaGVja2JveCBiYXNlZCBvbiB0aGUgZmlyc3QgY29sdW1uXG4gKlxuICogVGhlIGZ1bmN0aW9uIG1ha2Ugc3VyZSB0aGF0IHRoZSBzZWxlY3Rpb24gY2hlY2tib3ggaXMgYWx3YXlzIHNob3duIG9uIHRoZVxuICogZmlyc3QgY29sdW1uXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHBhcmFtXG4gKlxuICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSB3aGVuIGZpcnN0IGNvbHVtbiAsIGZhbHNlIGlmIG5vdCB0aGUgZmlyc3QgY29sdW1uIG9yIGlmIHRoZVxuICogICAgICAgICAgICAgICAgICAgZ3JpZCdzIGBDb250ZXh0LnNob3dTZWxlY3Rpb25DaGVja2JveGAgaXMgZmFsc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2lzU2hvd1NlbGVjdGlvbkNoZWNrYm94KHBhcmFtKSB7XG4gIGlmICghcGFyYW0uY29udGV4dC5zaG93U2VsZWN0aW9uQ2hlY2tib3gpIHJldHVybiBmYWxzZTtcblxuICBjb25zdCBjb2x1bW5zID0gcGFyYW0uY29sdW1uQXBpLmdldEFsbERpc3BsYXllZFZpcnR1YWxDb2x1bW5zKCk7XG5cbiAgcmV0dXJuIGNvbHVtbnNbMF0uY29sRGVmLmZpZWxkID09PSBwYXJhbS5jb2xEZWYuZmllbGQ7XG59XG5cbi8qKlxuICogU2hvdyAvIEhpZGUgaGVhZGVyIHNlbGVjdGlvbiBjaGVja2JveCBiYXNlZCBvbiB0aGUgZmlyc3QgY29sdW1uXG4gKlxuICogVGhlIGZ1bmN0aW9uIG1ha2Ugc3VyZSB0aGF0IHRoZSBoZWFkZXIgc2VsZWN0aW9uIGNoZWNrYm94IGlzIGFsd2F5cyBzaG93biBvbiB0aGVcbiAqIGZpcnN0IGNvbHVtblxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbVxuICpcbiAqIEByZXR1cm4ge0Jvb2xlYW59IHRydWUgd2hlbiBmaXJzdCBjb2x1bW4gLCBmYWxzZSBpZiBub3QgdGhlIGZpcnN0IGNvbHVtbiBvciBpZiB0aGVcbiAqICAgICAgICAgICAgICAgICAgIGdyaWQncyBgQ29udGV4dC5zaG93SGVhZGVyU2VsZWN0aW9uQ2hlY2tib3hgIGlzIGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19pc0hlYWRlckNoZWNrYm94U2VsZWN0aW9uKHBhcmFtKSB7XG4gIGNvbnN0IGNvbnRleHQgPSBwYXJhbS5hcGkuZ3JpZE9wdGlvbnNXcmFwcGVyLmdyaWRPcHRpb25zLmNvbnRleHQ7XG5cbiAgaWYgKCFjb250ZXh0LnNob3dIZWFkZXJTZWxlY3Rpb25DaGVja2JveCkgcmV0dXJuIGZhbHNlO1xuXG4gIGNvbnN0IGNvbHVtbnMgPSBwYXJhbS5jb2x1bW5BcGkuZ2V0QWxsRGlzcGxheWVkVmlydHVhbENvbHVtbnMoKTtcblxuICByZXR1cm4gY29sdW1uc1swXS5jb2xEZWYuZmllbGQgPT09IHBhcmFtLmNvbERlZi5maWVsZDtcbn1cblxuLyoqXG4gKiBFbmFibGUgcm93IGdyb3VwaW5nIGZvciBjb2x1bW5zXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbnMgIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiBjb2x1bW5zXG4gKiBAcGFyYW0ge0Jvb2xlYW59IHNldCAgV2hlbiB0cnVlICwgYHNldFJvd0dyb3VwQ29sdW1uc2Agd2lsbCBiZSB1c2VkICwgYGFkZFJvd0dyb3VwQ29sdW1uc2Agb3RoZXJ3aXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19hZGRSb3dHcm91cENvbHVtbihpZCwgY29sdW1ucywgc2V0KSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpW3NldCA/IFwic2V0Um93R3JvdXBDb2x1bW5zXCIgOiBcImFkZFJvd0dyb3VwQ29sdW1uc1wiXShcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG5cbi8qKlxuICogRGlzYWJsZSByb3cgZ3JvdXBpbmcgZm9yIGNvbHVtbnNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1ucyAgYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mIGNvbHVtbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3JlbW92ZVJvd0dyb3VwQ29sdW1uKGlkLCBjb2x1bW5zKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLnJlbW92ZVJvd0dyb3VwQ29sdW1ucyhcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRQaXZvdE1vZGUoaWQpIHtcbiAgcmV0dXJuIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLmlzUGl2b3RNb2RlKCk7XG59XG5cbi8qKlxuICogRW5hYmxlIC8gZGlzYmFsZSBwaXZvdCBtb2RlIFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gbW9kZSB3aGVuIHRydWUgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRQaXZvdE1vZGUoaWQsIG1vZGUpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5jb2x1bW5BcGlcbiAgICAuc2V0UGl2b3RNb2RlKCEhTnVtYmVyKG1vZGUpKTtcbn1cblxuLyoqXG4gKiBFbmFibGUgcGl2b3QgZm9yIGNvbHVtbnNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1ucyAgYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mIGNvbHVtbnNcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gc2V0ICBXaGVuIHRydWUgLCBgYWRkUGl2b3RDb2x1bW5zYCB3aWxsIGJlIHVzZWQgLCBgc2V0UGl2b3RDb2x1bW5zYCBvdGhlcndpc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZFBpdm90Q29sdW1ucyhpZCwgY29sdW1ucywgc2V0KSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpW3NldCA/IFwic2V0UGl2b3RDb2x1bW5zXCIgOiBcImFkZFBpdm90Q29sdW1uc1wiXShcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG5cbi8qKlxuICogRGlzYWJsZSBwaXZvdCBmb3IgY29sdW1uc1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2x1bW5zICBhIGNvbW1hIHNlcGFyYXRlZCBzdHJpbmcgb2YgY29sdW1uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcmVtb3ZlUGl2b3RDb2x1bW5zKGlkLCBjb2x1bW5zKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuY29sdW1uQXBpXG4gICAgLnJlbW92ZVBpdm90Q29sdW1ucyhcbiAgICAgIGNvbHVtbnMuc3BsaXQoXCIsXCIpLm1hcChpID0+IGkudHJpbSgpKVxuICAgICk7XG59XG5cbi8qKlxuICogRW5hYmxlIHZhbHVlIGZvciBjb2x1bW5zXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICogQHBhcmFtIHtTdHJpbmd9IGNvbHVtbnMgIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiBjb2x1bW5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19hZGRWYWx1ZUNvbHVtbnMoaWQsIGNvbHVtbnMsIHNldCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmNvbHVtbkFwaVxuICAgIC5hZGRWYWx1ZUNvbHVtbnMoXG4gICAgICBjb2x1bW5zLnNwbGl0KFwiLFwiKS5tYXAoaSA9PiBpLnRyaW0oKSlcbiAgICApO1xufVxuXG4vKipcbiAqIERpc2FibGUgdmFsdWUgZm9yIGNvbHVtbnNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sdW1ucyAgYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mIGNvbHVtbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3JlbW92ZVZhbHVlQ29sdW1ucyhpZCwgY29sdW1ucykge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmNvbHVtbkFwaVxuICAgIC5yZW1vdmVWYWx1ZUNvbHVtbnMoXG4gICAgICBjb2x1bW5zLnNwbGl0KFwiLFwiKS5tYXAoaSA9PiBpLnRyaW0oKSlcbiAgICApO1xufVxuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbi8qKlxuICogVXBkYXRlIGNvbnRleHQgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkIFxuICogQHBhcmFtIHtTdHJpbmd9IGtleSBUaGUgY29udGV4dCdzIGtleSB0byB1cGRhdGVcbiAqIEBwYXJhbSB7U3RyaW5nfSB2YWx1ZSAgVGhlIG5ldyBjb250ZXh0J3MgdmFsdWUgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd191cGRhdGVDb250ZXh0KGlkLCBrZXksIHZhbHVlKSB7XG5cdGd3X2dldEdyaWQoaWQpXG5cdFx0Lm9wdGlvbnNcblx0XHQuY29udGV4dFtrZXldID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QEJhc2lzLkFnR3JpZENvbXBvbmVudHMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5pdC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbnMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3dzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY2VsbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2xwYW5lbC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXR1c2Jhci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL292ZXJsYXlzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2pzcy5qcyc7IiwiLypcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuICogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5jb20+XG4gKlxuICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuICovXG5cbmltcG9ydCB7IGd3X2V4dGVuZENvbHVtbkRlZmluaXRpb25zIH0gZnJvbSBcIi4vY29sdW1uc1wiO1xuaW1wb3J0IHsgZ3dfbmF2aWdhdGVUb05leHRSb3cgfSAgICAgICBmcm9tIFwiLi9yb3dzXCI7XG5pbXBvcnQgeyBnd19nZXRDb250ZXh0TWVudSB9ICAgICAgICAgIGZyb20gXCIuL21lbnVzXCI7XG5pbXBvcnQgeyBnd19nZXRDaGFydFRvb2xiYXJJdGVtcyB9ICAgIGZyb20gXCIuL2NoYXJ0c1wiO1xuaW1wb3J0IHsgZ3dfZ2V0RG9jdW1lbnQsIGd3X2FkZEdyaWR9ICBmcm9tIFwiLi91dGlsaXRpZXNcIjtcbmltcG9ydCB7XG4gIGd3X29uUm93RG91YmxlQ2xpY2tlZCxcbiAgZ3dfb25TZWxlY3Rpb25DaGFuZ2VkLFxuICBnd19vblJhbmdlU2VsZWN0aW9uQ2hhbmdlZCxcbiAgZ3dfb25DZWxsQ2xpY2tFdmVudCxcbiAgZ3dfb25DZWxsRWRpdGluZ0V2ZW50LFxuICBnd19vblJvd0VkaXRpbmdFdmVudCxcbiAgZ3dfb25SZWFkeUV2ZW50LFxuICBnd19kZWJvdW5jZVxufSBmcm9tIFwiZXZlbnRzXCI7XG5cbmNvbnN0IHsgZGVlcFBhcnNlSnNvbiB9ID0gcmVxdWlyZShcImRlZXAtcGFyc2UtanNvblwiKTtcbmNvbnN0IHRlbXBsYXRlICAgICAgICAgID0gcmVxdWlyZSgnbG9kYXNoL3RlbXBsYXRlJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19pbml0KG9wdGlvbnMsIGxpY2Vuc2UgLCBkYXRhKSB7XG4gIFxuICAvLyBzZXQgdGhlIGxpY2Vuc2Uga2V5IGZvciBlbnRlcnByaXNlIHZlcnNpb25cbiAgaWYgKGFnR3JpZC5MaWNlbnNlTWFuYWdlciAmJiBsaWNlbnNlKVxuICAgIGFnR3JpZC5MaWNlbnNlTWFuYWdlci5zZXRMaWNlbnNlS2V5KGxpY2Vuc2UpO1xuXG4gIGNvbnN0IGlkICAgICAgICAgICAgICA9IG9wdGlvbnMuY29udGV4dC5pZDtcbiAgY29uc3QgY29udGFpbmVyICAgICAgID0gZ3dfZ2V0RG9jdW1lbnQoKS5nZXRFbGVtZW50QnlJZChpZCk7XG4gIC8vIHdlIG1ha2UgdGhlIGdyaWQgb3B0aW9ucyBhdmFpbGFibGUgYXMgc29vbiBhcyBwb3NzaWJsZSBcbiAgY29uc3QgZ3JpZCAgICAgICAgICAgID0gZ3dfYWRkR3JpZChpZCwge1xuICAgIGNvbnRhaW5lcixcbiAgICBvcHRpb25zXG4gIH0pO1xuXG4gIC8vIFRPRE86IHVzZSBhZyBncmlkIGRlc3Ryb3lcbiAgY29udGFpbmVyLmlubmVySFRNTCAgID0gJyc7XG5cbiAgY29uc3QgcGFyc2VkT3B0aW9ucyAgID0gZ3dfcGFyc2VPcHRpb25zKG9wdGlvbnMpO1xuICBwYXJzZWRPcHRpb25zLnJvd0RhdGEgPSBkYXRhO1xuXG4gIGNvbnN0IGluc3RhbmNlICAgICAgICA9IG5ldyBhZ0dyaWQuR3JpZChjb250YWluZXIsIHBhcnNlZE9wdGlvbnMpO1xuICBncmlkLmluc3RhbmNlID0gaW5zdGFuY2U7XG4gIGdyaWQub3B0aW9ucyAgPSBwYXJzZWRPcHRpb25zO1xuXG4gIGNvbnNvbGUubG9nKFxuICAgIGAlYyBHcmlkIFske2lkfV0gc2V0dGluZ3MgOiBgXG4gICAgLCAnYmFja2dyb3VuZDogIzIyMjsgY29sb3I6ICNiYWRhNTUnXG4gICAgLCBwYXJzZWRPcHRpb25zXG4gICk7XG59XG5cbi8qKlxuICogUGFyc2UgT3B0aW9uc1xuICogXG4gKiBQYXJzZSB0aGUgZ3JpZCBvcHRpb25zIGFuZCByZXR1cm4gXG4gKiBhbiBvYmplY3Qgd2hpY2ggY2FuIGJlIHBhc3NlZCB0byB0aGUgZ3JpZFxuICogXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyBHcmlkIG9wdGlvbnMgYXMgSnNvbiBPYmplY3RcbiAqIFxuICogQHJldHVybiB7T2JqZWN0fSBvcHRpb25zIG9iamVjdFxuICovXG5mdW5jdGlvbiBnd19wYXJzZU9wdGlvbnMob3B0aW9ucykge1xuICBjb25zdCBkZWVwUGFyc2VkT3B0aW9ucyAgICAgPSBkZWVwUGFyc2VKc29uKEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpKTtcbiAgY29uc3QgaWQgICAgICAgICAgICAgICAgICAgID0gZGVlcFBhcnNlZE9wdGlvbnMuY29udGV4dC5pZDtcbiAgY29uc3QgZ2V0RGF0YVBhdGhUZW1wbGF0ZSAgID0gZGVlcFBhcnNlZE9wdGlvbnMuY29udGV4dC5nZXREYXRhUGF0aCB8fCBcIlwiO1xuICAvLyBUT0RPOiBkbyB3ZSBuZWVkIHRvIGNvbnRyb2wgdGhpcyBzZXR0aW5nIGZyb20gQkJqID9cbiAgY29uc3QgZGVib3VuY2VEdXJhdGlvbiAgICAgID0gMjUwO1xuICBjb25zdCBmaW5hbE9wdGlvbnMgPSB7XG4gICAgLi4uZGVlcFBhcnNlZE9wdGlvbnMgLFxuICAgIC4uLntcbiAgICAgIGdldERvY3VtZW50OiAgICAgICAgICAgICgpICAgICA9PiAgIGd3X2dldERvY3VtZW50KCksXG4gICAgICBvbkNlbGxFZGl0aW5nU3RhcnRlZDogICBlICAgICAgPT4geyBnd19vbkNlbGxFZGl0aW5nRXZlbnQoaWQsIGUpIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgb25DZWxsRWRpdGluZ1N0b3BwZWQ6ICAgZSAgICAgID0+IHsgZ3dfb25DZWxsRWRpdGluZ0V2ZW50KGlkLCBlKSB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uQ2VsbFZhbHVlQ2hhbmdlZDogICAgIGUgICAgICA9PiB7IGd3X29uQ2VsbEVkaXRpbmdFdmVudChpZCwgZSkgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBvblJvd0VkaXRpbmdTdGFydGVkOiAgICBlICAgICAgPT4geyBnd19vblJvd0VkaXRpbmdFdmVudChpZCwgZSkgIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgb25Sb3dFZGl0aW5nU3RvcHBlZDogICAgZSAgICAgID0+IHsgZ3dfb25Sb3dFZGl0aW5nRXZlbnQoaWQsIGUpICB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uUm93VmFsdWVDaGFuZ2VkOiAgICAgIGUgICAgICA9PiB7IGd3X29uUm93RWRpdGluZ0V2ZW50KGlkLCBlKSAgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBvbkNlbGxDbGlja2VkOiAgICAgICAgICBlICAgICAgPT4geyBnd19vbkNlbGxDbGlja0V2ZW50KGlkLCBlKSAgIH0gICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgb25DZWxsRG91YmxlQ2xpY2tlZDogICAgZSAgICAgID0+IHsgZ3dfb25DZWxsQ2xpY2tFdmVudChpZCwgZSkgICB9ICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIG9uR3JpZFJlYWR5OiAgICAgICAgICAgIGUgICAgICA9PiB7IGd3X29uUmVhZHlFdmVudChpZCwgZSkgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAsXG4gICAgICBnZXRSb3dOb2RlSWQ6ICAgICAgICAgICBkYXRhICAgPT4gICBnd19nZXRSb3dOb2RlSWQoaWQsIGRhdGEpICAgICAgICAgICAgICAgICAgICAgICAgICAgLFxuICAgICAgZ2V0Q29udGV4dE1lbnVJdGVtczogICAgcGFyYW1zID0+ICAgZ3dfZ2V0Q29udGV4dE1lbnUoaWQsIHBhcmFtcykgICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIFwiZ2V0Q2hhcnRUb29sYmFySXRlbXNcIjogICAgICAgICAgICAgZ3dfZ2V0Q2hhcnRUb29sYmFySXRlbXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgIFwicG9wdXBQYXJlbnRcIjogICAgICAgICAgICAgICAgICAgICAgZ3dfZ2V0RG9jdW1lbnQoKS5ib2R5LFxuICAgICAgXCJvblJvd0RvdWJsZUNsaWNrZWRcIjogICAgICAgICAgICAgICBnd19kZWJvdW5jZShnd19vblJvd0RvdWJsZUNsaWNrZWQsIGRlYm91bmNlRHVyYXRpb24pICAgICAgICAgLFxuICAgICAgXCJvblNlbGVjdGlvbkNoYW5nZWRcIjogICAgICAgICAgICAgICBnd19kZWJvdW5jZShnd19vblNlbGVjdGlvbkNoYW5nZWQsIGRlYm91bmNlRHVyYXRpb24pICAgICAgICAgLFxuICAgICAgXCJvblJhbmdlU2VsZWN0aW9uQ2hhbmdlZFwiOiAgICAgICAgICBnd19kZWJvdW5jZShnd19vblJhbmdlU2VsZWN0aW9uQ2hhbmdlZCAsIGRlYm91bmNlRHVyYXRpb24pICAsXG4gICAgICBcImNvbXBvbmVudHNcIjoge1xuICAgICAgICBcIkJhc2ljQm9vbGVhbnNSZW5kZXJlclwiICAgICAgIDogQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5CYXNpY0Jvb2xlYW5zUmVuZGVyZXIsXG4gICAgICAgIFwiQmFzaWNCb29sZWFuc0VkaXRvclwiICAgICAgICAgOiBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLkJhc2ljQm9vbGVhbnNFZGl0b3IgICxcbiAgICAgICAgXCJCYXNpY0Jvb2xlYW5zRmlsdGVyXCIgICAgICAgICA6IEJhc2lzLkFnR3JpZENvbXBvbmVudHMuQmFzaWNCb29sZWFuc0ZpbHRlciAgLFxuICAgICAgICBcIkJhc2ljTnVtYmVyc0VkaXRvclwiICAgICAgICAgIDogQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5CYXNpY051bWJlcnNFZGl0b3IgICAsXG4gICAgICAgIFwiQmFzaWNEYXRlVGltZXNFZGl0b3JcIiAgICAgICAgOiBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLkJhc2ljRGF0ZVRpbWVzRWRpdG9yICxcbiAgICAgICAgXCJCYXNpY0RhdGVUaW1lc0ZpbHRlclwiICAgICAgICA6IEJhc2lzLkFnR3JpZENvbXBvbmVudHMuQmFzaWNEYXRlVGltZXNGaWx0ZXIgLFxuICAgICAgICBcIkJhc2ljSW1hZ2VzUmVuZGVyZXJcIiAgICAgICAgIDogQmFzaXMuQWdHcmlkQ29tcG9uZW50cy5CYXNpY0ltYWdlc1JlbmRlcmVyICAsXG4gICAgICAgIC8vIGxvZGFzaCB0ZW1wbGF0ZSByZW5kZXJcbiAgICAgICAgXCJHV0N1c3RvbUhUTUxUZW1wbGF0ZVJlbmRlcmVyXCI6IHBhcmFtcyA9PiB7XG4gICAgICAgICAgY29uc3QgY29tcGlsZWQgPSB0ZW1wbGF0ZShwYXJhbXMuX19URU1QTEFURV9fKTtcbiAgICAgICAgICByZXR1cm4gY29tcGlsZWQoeyBwYXJhbXM6IHBhcmFtcyB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBpZiAoXG4gICAgZmluYWxPcHRpb25zLmNvbnRleHQuaGFzT3duUHJvcGVydHkoXCJuYXZpZ2F0ZVRvTmV4dENlbGxcIikgJiZcbiAgICBmaW5hbE9wdGlvbnMuY29udGV4dC5uYXZpZ2F0ZVRvTmV4dENlbGxcbiAgKSB7XG4gICAgZmluYWxPcHRpb25zLm5hdmlnYXRlVG9OZXh0Q2VsbCA9IHBhcmFtcyA9PiB7IHJldHVybiBnd19uYXZpZ2F0ZVRvTmV4dFJvdyhpZCwgcGFyYW1zKSB9O1xuICB9XG5cbiAgaWYgKGdldERhdGFQYXRoVGVtcGxhdGUgJiYgZmluYWxPcHRpb25zLnRyZWVEYXRhKSB7XG4gICAgY29uc3QgZ2V0RGF0YVBhdGhUZW1wbGF0ZUNvbXBsaWVkID0gdGVtcGxhdGUoZ2V0RGF0YVBhdGhUZW1wbGF0ZSk7XG4gICAgZmluYWxPcHRpb25zLmdldERhdGFQYXRoID0gZGF0YSA9PiBnZXREYXRhUGF0aFRlbXBsYXRlQ29tcGxpZWQoeyBkYXRhOiBkYXRhIH0pO1xuICB9XG5cbiAgLy8gZXh0ZW5kIHRoZSBjb2x1bW4gZGVmaW5pdGlvbnNcbiAgZ3dfZXh0ZW5kQ29sdW1uRGVmaW5pdGlvbnMoZmluYWxPcHRpb25zLmNvbHVtbkRlZnMpO1xuXG4gIHJldHVybiBmaW5hbE9wdGlvbnM7XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgJ2V4cG9zZS1sb2FkZXI/anNzIWpzcy9qc3MuanMnO1xuaW1wb3J0IHtnd19nZXREb2N1bWVudH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbi8qKlxuICogRm9ybWF0ZSB0aGUgY3NzIHNlbGVjdG9yIFxuICogXG4gKiBDaGVjayBpZiB0aGUgY3NzIHNlbGVjdG9yIHN0YXJ0cyB3aXRoIGRvdCAsIGlmIG5vdCBhZGQgb25lIGFuZCByZXR1cm4gdGhlIFxuICogZm9ybWF0dGVkIG5hbWUgXG4gKiBcbiAqIEBwYXJhbSB7Kn0gc2VsZWN0b3IgXG4gKi9cbmZ1bmN0aW9uIGZvcm1hdFNlbGVjdG9yKHNlbGVjdG9yKXtcbiAgcmV0dXJuIHNlbGVjdG9yLnN0YXJ0c1dpdGgoXCIuXCIpID8gc2VsZWN0b3IgOiBgLiR7c2VsZWN0b3J9YDtcbn1cblxuLyoqXG4gKiBBZGQgbmV3IHN0eWxlIFxuICogXG4gKiBBZGQgbmV3IHN0eWxlIHRvIHRoZSBkb2N1bWVudCBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IHNlbGVjdG9yIGNzcyBzZWxlY3RvclxuICogQHBhcmFtIHtTdHJpbmd9IHJ1bGVzIEpzb24gc3RyaW5nIGZvciBhbiBhcnJheSBvZiBydWxlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0U3R5bGUoc2VsZWN0b3IsIHJ1bGVzKSB7XG4gIGpzcy5mb3JEb2N1bWVudChnd19nZXREb2N1bWVudCgpKS5zZXQoZm9ybWF0U2VsZWN0b3Ioc2VsZWN0b3IpLCBKU09OLnBhcnNlKHJ1bGVzKSk7XG59XG5cbi8qKlxuICogUmVtb3ZlIHN0eWxlXG4gKiBcbiAqIFJlbW92ZSBhZGRlZCBzdHlsZSBmcm9tIHRoZXMgZG9jdW1lbnQgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBzZWxlY3RvciBjc3Mgc2VsZWN0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3JlbW92ZVN0eWxlKHNlbGVjdG9yKSB7XG4gIGpzcy5mb3JEb2N1bWVudChnd19nZXREb2N1bWVudCgpKS5yZW1vdmUoZm9ybWF0U2VsZWN0b3Ioc2VsZWN0b3IpKTtcbn1cbiIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCIuL3V0aWxpdGllc1wiXG5pbXBvcnQge1xuICBnd19wYXJzZU5vZGVGcm9tRXZlbnQsXG4gIGd3X3NlbmRFdmVudFxufSBmcm9tIFwiZXZlbnRzL3V0aWxpdGllc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0Q29udGV4dE1lbnUoZ3JpZElkLCBwYXJhbXMpIHtcblxuICBjb25zdCBidWlsZENvbnRleHRNZW51QWN0aW9uID0gKHBhcmFtcywgaWQpID0+IHtcblxuICAgIHJldHVybiAoKSA9PiB7XG5cbiAgICAgIGNvbnN0IG5vZGUgPSBnd19wYXJzZU5vZGVGcm9tRXZlbnQocGFyYW1zKTtcbiAgICAgIGNvbnN0IGNvbElkID0gcGFyYW1zLmNvbHVtbi5jb2xJZDtcbiAgICAgIGNvbnN0IHZhbHVlID0gcGFyYW1zLnZhbHVlO1xuXG4gICAgICBnd19zZW5kRXZlbnQoZ3dfZ2V0R3JpZChncmlkSWQpLm9wdGlvbnMuY29udGV4dCwge1xuICAgICAgICAndHlwZSc6ICdndy5jb250ZXh0bWVudScsXG4gICAgICAgICdkZXRhaWwnOiBKU09OLnN0cmluZ2lmeSh7IHI6IG5vZGUsIGM6IGNvbElkLCB2OnZhbHVlLCBpOmlkIH0pXG4gICAgICB9LCBpZCk7XG4gICAgfTtcbiAgfTtcblxuICBjb25zdCBwYXJzZU1lbnUgPSAobWVudSkgPT4ge1xuICAgIG1lbnUuZm9yRWFjaChpdGVtID0+IHtcblxuICAgICAgaWYgKHR5cGVvZiBpdGVtID09PSAnc3RyaW5nJykgcmV0dXJuO1xuXG4gICAgICBpdGVtWydhY3Rpb24nXSA9IGJ1aWxkQ29udGV4dE1lbnVBY3Rpb24ocGFyYW1zLCBpdGVtLmlkKTtcblxuICAgICAgaWYgKGl0ZW1bJ2Nzc0NsYXNzZXMnXSAmJiAhQXJyYXkuaXNBcnJheShpdGVtWydjc3NDbGFzc2VzJ10pKVxuICAgICAgICBpdGVtWydjc3NDbGFzc2VzJ10gPSBpdGVtWydjc3NDbGFzc2VzJ10uc3BsaXQoXCIgXCIpO1xuXG4gICAgICBpZiAoaXRlbVsnc3ViTWVudSddKSBpdGVtWydzdWJNZW51J10gPSBwYXJzZU1lbnUoaXRlbVsnc3ViTWVudSddKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBtZW51O1xuICB9O1xuXG4gIHJldHVybiBwYXJzZU1lbnUoZ3dfZ2V0R3JpZChncmlkSWQpLm9wdGlvbnMuY29udGV4dC5jb250ZXh0TWVudSk7XG59XG4iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcblxuLyoqXG4gKiBTaG93IGxvYWRpbmcgb3ZlcmxheVxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3Nob3dMb2FkaW5nT3ZlcmxheShpZCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5zaG93TG9hZGluZ092ZXJsYXkoKTtcbn1cblxuLyoqXG4gKiBTaG93ICdubyByb3dzJyBvdmVybGF5XG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCB0aGUgZ3JpZCBpZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2hvd05vUm93c092ZXJsYXkoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuc2hvd05vUm93c092ZXJsYXkoKTtcbn1cblxuLyoqXG4gKiBDbGVhciBhbGwgb3ZlcmxheXNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19oaWRlT3ZlcmxheShpZCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5oaWRlT3ZlcmxheSgpO1xufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5pbXBvcnQgeyBnd19wYXJzZU5vZGUgfSBmcm9tIFwiZXZlbnRzL3V0aWxpdGllc1wiO1xuXG5jb25zdCB7IGRlZXBQYXJzZUpzb24gfSA9IHJlcXVpcmUoXCJkZWVwLXBhcnNlLWpzb25cIik7XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRRdWlja0ZpbHRlcihpZCwgZmlsdGVyKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnNldFF1aWNrRmlsdGVyKGZpbHRlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19leHBhbmRBbGwoaWQpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuZXhwYW5kQWxsKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19jb2xsYXBzZUFsbChpZCkge1xuICBnd19nZXRHcmlkKGlkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5jb2xsYXBzZUFsbCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0VmlzaWJsZVJvdyhpZCwgaW5kZXgsIHBvc2l0aW9uKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLmVuc3VyZUluZGV4VmlzaWJsZShpbmRleCwgcG9zaXRpb24pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfbmF2aWdhdGVUb05leHRSb3coaWQsIHBhcmFtcykge1xuXG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuICBsZXQgcHJldmlvdXNDZWxsID0gcGFyYW1zLnByZXZpb3VzQ2VsbFBvc2l0aW9uO1xuICBsZXQgc3VnZ2VzdGVkTmV4dENlbGwgPSBwYXJhbXMubmV4dENlbGxQb3NpdGlvbjtcblxuICBjb25zdCBLRVlfVVAgPSAzODtcbiAgY29uc3QgS0VZX0RPV04gPSA0MDtcbiAgY29uc3QgS0VZX0xFRlQgPSAzNztcbiAgY29uc3QgS0VZX1JJR0hUID0gMzk7XG5cbiAgc3dpdGNoIChwYXJhbXMua2V5KSB7XG4gICAgY2FzZSBLRVlfRE9XTjpcbiAgICAgIC8vIHNldCBzZWxlY3RlZCBjZWxsIG9uIGN1cnJlbnQgY2VsbCArIDFcbiAgICAgIG9wdGlvbnMuYXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgIGlmIChwcmV2aW91c0NlbGwucm93SW5kZXggKyAxID09PSBub2RlLnJvd0luZGV4KSB7XG4gICAgICAgICAgbm9kZS5zZXRTZWxlY3RlZCh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3VnZ2VzdGVkTmV4dENlbGw7XG4gICAgY2FzZSBLRVlfVVA6XG4gICAgICAvLyBzZXQgc2VsZWN0ZWQgY2VsbCBvbiBjdXJyZW50IGNlbGwgLSAxXG4gICAgICBvcHRpb25zLmFwaS5mb3JFYWNoTm9kZSgobm9kZSkgPT4ge1xuICAgICAgICBpZiAocHJldmlvdXNDZWxsLnJvd0luZGV4IC0gMSA9PT0gbm9kZS5yb3dJbmRleCkge1xuICAgICAgICAgIG5vZGUuc2V0U2VsZWN0ZWQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN1Z2dlc3RlZE5leHRDZWxsO1xuICAgIGNhc2UgS0VZX0xFRlQ6XG4gICAgY2FzZSBLRVlfUklHSFQ6XG4gICAgICByZXR1cm4gc3VnZ2VzdGVkTmV4dENlbGw7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIllvdSBoYXZlIHN1cGVyIHN0cmFuZ2Uga2V5Ym9hcmRcIik7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldFJvd05vZGVJZChpZCwgZGF0YSkge1xuICByZXR1cm4gZGF0YVtnd19nZXRHcmlkKGlkKS5vcHRpb25zLmNvbnRleHQuZ2V0Um93Tm9kZUlkXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFJvd3NEYXRhKGlkLCBqc29uKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuXG4gIG9wdGlvbnMuYXBpLnNldFJvd0RhdGEoanNvbik7XG4gIG9wdGlvbnMucm93RGF0YSA9IGpzb247XG4gIG9wdGlvbnMuYXBpLnJlZnJlc2hDbGllbnRTaWRlUm93TW9kZWwoJ2dyb3VwJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRSb3dEYXRhKGlkLCByb3cpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkudXBkYXRlUm93RGF0YSh7IHVwZGF0ZTogW3Jvd10gfSk7XG4gIG9wdGlvbnMuYXBpLnJlZnJlc2hDbGllbnRTaWRlUm93TW9kZWwoJ2dyb3VwJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19yZW1vdmVSb3dzKGlkLCBpbmRleGVzKSB7XG4gIGNvbnN0IG9wdGlvbnMgPSBnd19nZXRHcmlkKGlkKS5vcHRpb25zO1xuICBsZXQgaXRlbXMgPSBbXTtcblxuICBpbmRleGVzLmZvckVhY2goaW5kZXggPT4ge1xuICAgIGl0ZW1zLnB1c2gob3B0aW9ucy5hcGkuZ2V0Um93Tm9kZShpbmRleCkuZGF0YSk7XG4gIH0pO1xuXG4gIG9wdGlvbnMuYXBpLnVwZGF0ZVJvd0RhdGEoeyByZW1vdmU6IGl0ZW1zIH0pO1xuICBvcHRpb25zLmFwaS5yZWZyZXNoQ2xpZW50U2lkZVJvd01vZGVsKCdncm91cCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfYWRkUm93cyhpZCwgaW5kZXgsIHJvd3MpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgb3B0aW9ucy5hcGkudXBkYXRlUm93RGF0YSh7IGFkZDogcm93cywgYWRkSW5kZXg6IGluZGV4IH0pO1xuICBvcHRpb25zLmFwaS5yZWZyZXNoQ2xpZW50U2lkZVJvd01vZGVsKCdncm91cCcpO1xufVxuXG4vKipcbiAqIFNldCB0aGUgaGVpZ2h0IG9mIGFsbCByb3dzIFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgdGhlIGdyaWQgaWRcbiAqIEBwYXJhbSB7TnVtYmVyfSBoZWlnaHQgdGhlIHJvdyBoZWlnaHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFJvd3NIZWlnaHQoaWQsIGhlaWdodCkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcblxuICBvcHRpb25zLmFwaS5mb3JFYWNoTm9kZShyb3cgPT4ge1xuICAgIHJvdy5zZXRSb3dIZWlnaHQoaGVpZ2h0KTtcbiAgfSk7XG4gIG9wdGlvbnMuYXBpLm9uUm93SGVpZ2h0Q2hhbmdlZCgpO1xufVxuXG4vKipcbiAqIFNldCB0aGUgZ2l2ZW4gcm93IGhlaWdodCBcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIHRoZSBncmlkIGlkIFxuICogQHBhcmFtIHtOdW1iZXJ9IGluZGV4IHRoZSByb3cgaW5kZXhcbiAqIEBwYXJhbSB7TnVtYmVyfSBoZWlnaHQgdGhlIG5ldyBoZWlnaHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFJvd0hlaWdodChpZCwgaW5kZXgsIGhlaWdodCkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcbiAgY29uc3Qgcm93ID0gb3B0aW9ucy5hcGkuZ2V0RGlzcGxheWVkUm93QXRJbmRleChpbmRleCk7XG5cbiAgaWYgKHJvdykge1xuICAgIHJvdy5zZXRSb3dIZWlnaHQoaGVpZ2h0KTtcbiAgICBvcHRpb25zLmFwaS5vblJvd0hlaWdodENoYW5nZWQoKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zb2xlLndhcm4oYEZhaWxlZCB0byBzZXQgaGVpZ2h0IGZvciByb3cgJHtpbmRleH0uIFJvdyBjYW4gbm90IGJlIGZvdW5kYCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFNlbGVjdGVkUm93cyhpZCwgcm93cykge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcblxuICBvcHRpb25zLmFwaS5mb3JFYWNoTm9kZUFmdGVyRmlsdGVyQW5kU29ydChub2RlID0+IHtcbiAgICBpZiAocm93cy5pbmRleE9mKG5vZGUucm93SW5kZXgpID4gLTEpIHtcbiAgICAgIG5vZGUuc2V0U2VsZWN0ZWQodHJ1ZSk7XG4gICAgICBub2RlLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuICBvcHRpb25zLmFwaS5vbkdyb3VwRXhwYW5kZWRPckNvbGxhcHNlZCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2VsZWN0QWxsKGlkLCBmaWx0ZXJlZCkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcblxuICBpZiAoMSA9PT0gZmlsdGVyZWQpIHtcbiAgICBvcHRpb25zLmFwaS5zZWxlY3RBbGxGaWx0ZXJlZCgpO1xuICB9IGVsc2Uge1xuICAgIG9wdGlvbnMuYXBpLnNlbGVjdEFsbCgpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19kZXNlbGVjdEFsbChpZCwgZmlsdGVyZWQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG5cbiAgaWYgKDEgPT09IGZpbHRlcmVkKSB7XG4gICAgb3B0aW9ucy5hcGkuZGVzZWxlY3RBbGxGaWx0ZXJlZCgpO1xuICB9IGVsc2Uge1xuICAgIG9wdGlvbnMuYXBpLmRlc2VsZWN0QWxsKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgdGhlIGN1cnJlbnQgc2VsZWN0ZWQgcm93c1xuICogXG4gKiBAcGFyYW0ge051bWJlcn0gaWQgZ3JpZCdzIGlkXG4gKiBcbiAqIEByZXR1cm5zIHtTdHJpbmd9ICBzZWxlY3RlZCByb3dzIGFzIEpTT05cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldFNlbGVjdGVkUm93cyhpZCkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcbiAgY29uc3Qgbm9kZXMgPSBvcHRpb25zLmFwaS5nZXRTZWxlY3RlZE5vZGVzKCk7XG4gIGxldCBwYXJzZWQgPSBbXTtcblxuICBub2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xuICAgIHBhcnNlZC5wdXNoKGd3X3BhcnNlTm9kZShub2RlLCBvcHRpb25zLmNvbnRleHQpKTtcbiAgfSk7XG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHBhcnNlZCk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBsYXN0IHNlbGVjdGVkIHJvd1xuICogXG4gKiBAcGFyYW0ge051bWJlcn0gaWQgZ3JpZCdzIGlkXG4gKiBcbiAqIEByZXR1cm5zIHtTdHJpbmd9IHNlbGVjdGVkIHJvdyBhcyBKU09OXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRTZWxlY3RlZFJvdyhpZCkge1xuICBjb25zdCByb3dzID0gSlNPTi5wYXJzZShnd19nZXRTZWxlY3RlZFJvd3MoaWQpKTtcblxuICBpZiAocm93cy5sZW5ndGgpIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkocm93c1tyb3dzLmxlbmd0aCAtIDFdKTtcbiAgfVxuXG4gIHJldHVybiAnJztcbn1cblxuLyoqXG4gKiBHZXQgUmFuZ2UgU2VsZWN0aW9uc1xuICogXG4gKiBUaGUgbWV0aG9kIHdpbGwgY3JlYXRlIGEgcmFuZ2UganNvbiBtb2RlbCBmb3IgZWFjaCByYW5nZSB3aGljaCBjYW4gYmUgcGFyc2VkIGluIEJCaiBzaWRlLlxuICogXG4gKiBAcGFyYW0ge051bWJlcn0gaWQgZ3JpZCdzIGlkXG4gKiBcbiAqIEByZXR1cm5zIHtTdHJpbmd9IHNlbGVjdGVkIHJhbmdlcyBhcyBKU09OXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRSYW5nZVNlbGVjdGlvbnMoaWQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IGNvbnRleHQgPSBvcHRpb25zLmNvbnRleHQ7XG4gIGNvbnN0IGFwaSA9IG9wdGlvbnMuYXBpO1xuICBjb25zdCByYW5nZXMgPSBhcGkuZ2V0Q2VsbFJhbmdlcygpO1xuICBjb25zdCBtb2RlbCA9IGFwaS5nZXRNb2RlbCgpO1xuICBsZXQgcmVzdWx0ID0gW107XG5cbiAgcmFuZ2VzLmZvckVhY2gocmFuZ2UgPT4ge1xuXG4gICAgLy8gY29uc3Qgc3RhcnQgPSBnd19wYXJzZU5vZGUobW9kZWwuZ2V0Um93KHJhbmdlLnN0YXJ0Um93LnJvd0luZGV4KSwgb3B0aW9ucy5jb250ZXh0KTtcbiAgICAvLyBjb25zdCBlbmQgPSBnd19wYXJzZU5vZGUobW9kZWwuZ2V0Um93KHJhbmdlLmVuZFJvdy5yb3dJbmRleCksIG9wdGlvbnMuY29udGV4dCk7XG5cbiAgICAvL2lmIChzdGFydCAhPT0gZmFsc2UgJiYgZW5kICE9PSBmYWxzZSkge1xuICAgIGNvbnN0IGNvbHVtbnMgPSByYW5nZS5jb2x1bW5zLnJlZHVjZSgoYWNjdW11bGF0b3IsIGN1cnJlbnQpID0+IHtcblxuICAgICAgaWYgKFwiYWctR3JpZC1BdXRvQ29sdW1uXCIgIT09IGN1cnJlbnQuY29sSWQpIHtcbiAgICAgICAgYWNjdW11bGF0b3IucHVzaChjdXJyZW50LmNvbElkKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjY3VtdWxhdG9yO1xuICAgIH0sIFtdKS5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICBjb25zdCBzdGFySW5kZXggPSBNYXRoLm1pbihyYW5nZS5zdGFydFJvdy5yb3dJbmRleCwgcmFuZ2UuZW5kUm93LnJvd0luZGV4KTtcbiAgICBjb25zdCBlbmRJbmRleCA9IE1hdGgubWF4KHJhbmdlLnN0YXJ0Um93LnJvd0luZGV4LCByYW5nZS5lbmRSb3cucm93SW5kZXgpO1xuICAgIGNvbnN0IHJvd3MgPSBbXTtcblxuICAgIGZvciAobGV0IHJvd0luZGV4ID0gc3RhckluZGV4OyByb3dJbmRleCA8PSBlbmRJbmRleDsgcm93SW5kZXgrKykge1xuICAgICAgY29uc3Qgbm9kZSA9IG1vZGVsLmdldFJvdyhyb3dJbmRleCk7XG4gICAgICBpZiAobm9kZSkge1xuICAgICAgICBjb25zdCBwYXJzZWROb2RlID0gZ3dfcGFyc2VOb2RlKG5vZGUsIGNvbnRleHQpO1xuICAgICAgICBpZihwYXJzZWROb2RlKSByb3dzLnB1c2gocGFyc2VkTm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHJvd3MubGVuZ3RoICYmIGNvbHVtbnMubGVuZ3RoKSB7XG4gICAgICByZXN1bHQucHVzaCh7IHI6cm93cywgYzpjb2x1bW5zIH0pO1xuICAgIH1cbiAgICAvL31cbiAgfSk7XG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHJlc3VsdCk7XG59XG5cbi8qKlxuICogQWRkIG5ldyBjZWxsIHJhbmdlXG4gKiBcbiAqIEBwYXJhbSB7TnVtYmVyfSBpZCBncmlkJ3MgaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSByYW5nZSAgYm91bmRlZCBvciB1bmJvdW5kZWQgcmFuZ2UgbW9kZWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZENlbGxSYW5nZShpZCwgcmFuZ2UpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGd3X2dldEdyaWQoaWQpLm9wdGlvbnM7XG4gIGNvbnN0IHByID0gZGVlcFBhcnNlSnNvbihKU09OLnN0cmluZ2lmeShyYW5nZSkpO1xuICBjb25zdCBzdGFydCA9ICEocHIuc3RhcnQgfHwgbnVsbCkgP1xuICAgIDAgOiAoTnVtYmVyLmlzSW50ZWdlcigrcHIuc3RhcnQpID8gK3ByLnN0YXJ0IDogb3B0aW9ucy5hcGkuZ2V0Um93Tm9kZShwci5zdGFydCkucm93SW5kZXgpO1xuICBjb25zdCBlbmQgPSAhKHByLmVuZCB8fCBudWxsKSA/XG4gICAgKG9wdGlvbnMucm93RGF0YS5sZW5ndGggLSAxKSA6IChOdW1iZXIuaXNJbnRlZ2VyKCtwci5lbmQpID8gK3ByLmVuZCA6IG9wdGlvbnMuYXBpLmdldFJvd05vZGUocHIuZW5kKS5yb3dJbmRleCk7XG5cbiAgb3B0aW9ucy5hcGkuYWRkQ2VsbFJhbmdlKHtcbiAgICByb3dTdGFydEluZGV4OiBNYXRoLmFicyhzdGFydCksXG4gICAgcm93RW5kSW5kZXg6IE1hdGguYWJzKGVuZCksXG4gICAgY29sdW1uczogcHIuY29sdW1uc1xuICB9KTtcbn1cblxuLyoqXG4gKiBDbGVhcnMgdGhlIHNlbGVjdGVkIHJhbmdlLlxuICogXG4gKiBAcGFyYW0ge051bWJlcn0gaWQgZ3JpZCdzIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19jbGVhclJhbmdlU2VsZWN0aW9uKGlkKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLmNsZWFyUmFuZ2VTZWxlY3Rpb24oKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbmltcG9ydCB7IGd3X2dldEdyaWQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGd3X3NldFN0YXRlKGlkLCBzdGF0ZSkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcblxuICB0cnkge1xuICAgIG9wdGlvbnMuY29sdW1uQXBpLnNldENvbHVtblN0YXRlKHN0YXRlLmNvbHVtbnMpO1xuICAgIG9wdGlvbnMuY29sdW1uQXBpLnNldENvbHVtbkdyb3VwU3RhdGUoc3RhdGUuZ3JvdXBzKTtcbiAgICBvcHRpb25zLmFwaS5zZXRTb3J0TW9kZWwoc3RhdGUuc29ydCk7XG4gICAgb3B0aW9ucy5hcGkuc2V0RmlsdGVyTW9kZWwoc3RhdGUuZmlsdGVycyk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oJ0ZhaWxlZCB0byBwYXJzZSBncmlkIHN0YXRlIGZyb20gSlNPTicsIGUpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXRTdGF0ZShpZCkge1xuICBjb25zdCBvcHRpb25zID0gZ3dfZ2V0R3JpZChpZCkub3B0aW9ucztcbiAgY29uc3QgY29sdW1ucyA9IG9wdGlvbnMuY29sdW1uQXBpLmdldENvbHVtblN0YXRlKCk7XG4gIGNvbnN0IGdyb3VwcyA9IG9wdGlvbnMuY29sdW1uQXBpLmdldENvbHVtbkdyb3VwU3RhdGUoKTtcbiAgY29uc3Qgc29ydCA9IG9wdGlvbnMuYXBpLmdldFNvcnRNb2RlbCgpO1xuICBjb25zdCBmaWx0ZXJzID0gb3B0aW9ucy5hcGkuZ2V0RmlsdGVyTW9kZWwoKTtcblxuICB0cnkge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICBjb2x1bW5zLFxuICAgICAgZ3JvdXBzLFxuICAgICAgc29ydCxcbiAgICAgIGZpbHRlcnNcbiAgICB9KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUud2FybignRmFpbGVkIHRvIGNvbnZlcnQgdGhlIGdyaWQgc3RhdGUgdG8ganNvbicsIGUpO1xuICB9XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXRHcmlkIH0gZnJvbSBcIi4vdXRpbGl0aWVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRTdGF0dXNiYXJDb21wb25lbnRWaXNpYmlsaXR5KGlkLCBrZXksIHZpc2liaWxpdHkpIHtcblx0Z3dfZ2V0R3JpZChpZClcblx0XHQub3B0aW9uc1xuXHRcdC5hcGlcblx0XHQuZ2V0U3RhdHVzUGFuZWwoa2V5KVxuXHRcdC5zZXRWaXNpYmxlKEJvb2xlYW4odmlzaWJpbGl0eSkpO1xufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3dfc2V0U2lkZUJhclZpc2libGUoaWQsIHZhbHVlKSB7XG4gIGd3X2dldEdyaWQoaWQpXG4gICAgLm9wdGlvbnNcbiAgICAuYXBpXG4gICAgLnNldFNpZGVCYXJWaXNpYmxlKEJvb2xlYW4odmFsdWUpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGd3X29wZW5Ub29scGFuZWwoZ3JpZElkLCB0b29scGFuZWxJZCkge1xuICBnd19nZXRHcmlkKGdyaWRJZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAub3BlblRvb2xQYW5lbCh0b29scGFuZWxJZCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19jbG9zZVRvb2xwYW5lbChncmlkSWQsIHRvb2xwYW5lbElkKSB7XG4gIGd3X2dldEdyaWQoZ3JpZElkKVxuICAgIC5vcHRpb25zXG4gICAgLmFwaVxuICAgIC5jbG9zZVRvb2xQYW5lbCh0b29scGFuZWxJZCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnd19zZXRGdW5jdGlvbnNSZWFkT25seShpZCwgcmVhZG9ubHkpIHtcbiAgZ3dfZ2V0R3JpZChpZClcbiAgICAub3B0aW9uc1xuICAgIC5hcGlcbiAgICAuc2V0RnVuY3Rpb25zUmVhZE9ubHkoQm9vbGVhbihyZWFkb25seSkpO1xufSIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBCYXNpcy5BZ0dyaWRDb21wb25lbnRzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG4vKipcbiAqIEdldCBkb2N1bWVudCBcbiAqIFxuICogR2V0IHRoZSBkb2N1bWVudCBpbnN0YW5jZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgQkJqIGVudlxuICogXG4gKiBAcmV0dXJuIHtPYmplY3R9IERvY3VtZW50IGluc3RhbmNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19nZXREb2N1bWVudCgpIHtcbiAgcmV0dXJuIHR5cGVvZiAkZG9jICE9PSAndW5kZWZpbmVkJyA/ICRkb2MgOiBkb2N1bWVudDtcbn1cblxuLyoqXG4gKiBHZXQgd2luZG93IFxuICogXG4gKiBHZXQgdGhlIHdpbmRvdyBpbnN0YW5jZSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgQkJqIGVudlxuICogXG4gKiBAcmV0dXJuIHtPYmplY3R9IFdpbmRvdyBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZ2V0V2luZG93KCkge1xuICByZXR1cm4gdHlwZW9mICR3aW4gIT09ICd1bmRlZmluZWQnID8gJHdpbiA6IHdpbmRvdztcbn1cblxuLyoqXG4gKiBFc2NhcGUgVmFsdWUgXG4gKiBcbiAqIENoYW5nZSBudWxsIGFuZCB1bmRlZmluZWQgdG8gZW1wdHkgc3RyaW5nIFxuICogXG4gKiBAcGFyYW0geyp9IHZhbHVlIFxuICogXG4gKiBAcmV0dXJuIHtTdHJpbmd9IGVzY2FwZWQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2VzY2FwZSh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCA/IHZhbHVlIDogJyc7XG59XG5cbi8qKlxuICogR2V0IEdyaWQgXG4gKiBcbiAqIFJldHJpZXZlIHRoZSBncmlkIGluc3RhbmNlIGZyb20gYHdpbmRvdy5CQmpHcmlkRXhXaWRnZXRgIGFycmF5IFxuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZFxuICogXG4gKiBAcmV0dXJuIHtPYmplY3R8bnVsbH0gVGhlIGdyaWQncyBpbnN0YW5jZSBvZnIgbnVsbFxuICogQHRocm93cyBUeXBlRXJyb3Igd2hlbiB0aGUgZ3JpZCBpbnN0YW5jZSBpcyBub3QgZm91bmRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2dldEdyaWQoaWQpIHtcbiAgd2luZG93LkJCakdyaWRFeFdpZGdldCA9IHdpbmRvdy5CQmpHcmlkRXhXaWRnZXQgfHwge307XG4gIGNvbnN0IGdyaWQgPSAgd2luZG93LkJCakdyaWRFeFdpZGdldFtpZF0gfHwgbnVsbDtcblxuICBpZiAoIWdyaWQpIHtcbiAgICBjb25zdCByZWdpc3RlcmVkR3JpZHMgPSBKU09OLnN0cmluZ2lmeShPYmplY3Qua2V5cyh3aW5kb3cuQkJqR3JpZEV4V2lkZ2V0KSk7XG4gICAgLy9nZXRGdW5jQXJncyhmdW5jKS5mb3JFYWNoKChrZXksIGkpID0+IGFyZ3NPYmpba2V5XSA9IGFyZ3NbaV0pO1xuICAgIFxuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG5gXFxuXFxuW0dyaWQgTm90IEZvdW5kXSBUaGUgbWV0aG9kIGFza2VkIGZvciBub24tZXhpc3RlbnQgZ3JpZCBpbnN0YW5jZS5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblJlcXVpcmVkIEdyaWQgSWQgOiAke2lkfSAgIFxuUmVnaXN0ZXJlZCBHcmlkcyA6ICR7cmVnaXN0ZXJlZEdyaWRzfVxuYCk7XG4gIH1cbiAgXG4gIHJldHVybiBncmlkO1xufVxuXG4vKipcbiAqIEFkZCBHcmlkIFxuICogXG4gKiBTdG9yZSBhIG5ldyBncmlkIGluc3RhbmNlIGJ5IGluIHRoZSBgd2luZG93LkJCakdyaWRFeFdpZGdldGAgYXJyYXkgXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAgVGhlIGdyaWQncyBvcHRpb25zXG4gKiBcbiAqIEByZXR1cm4ge09iamVjdH0gU3RvcmVkIGdyaWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X2FkZEdyaWQoaWQsIG9wdGlvbnMpIHtcbiAgd2luZG93LkJCakdyaWRFeFdpZGdldCA9IHdpbmRvdy5CQmpHcmlkRXhXaWRnZXQgfHwge307XG4gIHdpbmRvdy5CQmpHcmlkRXhXaWRnZXRbaWRdID0gb3B0aW9ucztcbiAgXG4gIHJldHVybiBnd19nZXRHcmlkKGlkKTtcbn0iLCIvKlxuKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQkJqR3JpZEV4V2lkZ2V0IHBsdWdpbi5cbiogKGMpIEJhc2lzIEV1cm9wZSA8ZXVAYmFzaXMuY29tPlxuKlxuKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRVxuKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS5cbiovXG5cbi8vIHNlbGVjdGlvbiBjb25zdGFudHNcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9ST1dfQ0xJQ0sgPSA2OTtcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9ST1dfRE9VQkxFX0NMSUNLID0gNTI7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfQ0VMTF9DTElDSyA9IDUwMDE7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfQ0VMTF9ET1VCTEVfQ0xJQ0sgPSA1MDAyO1xuXG4vLyBlZGl0aW5nIGNvbnN0YW50c1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX0NFTExfRURJVElOR19TVEFSVEVEID0gNTAwMztcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RPUFBFRCA9IDUwMDQ7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfQ0VMTF9WQUxVRV9DSEFOR0VEID0gNTAwNTtcbmV4cG9ydCBjb25zdCBHV19FVkVOVF9ST1dfRURJVElOR19TVEFSVEVEICA9IDUwMDY7XG5leHBvcnQgY29uc3QgR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RPUFBFRCA9IDUwMDc7XG5cbi8vIHN0YXRlIGNvbnN0YW50c1xuZXhwb3J0IGNvbnN0IEdXX0VWRU5UX0dSSURfU1RBVEVfQ0hBTkdFID0gNTAwODtcblxuLy8gcmFuZ2Ugc2VsZWN0aW9uXG5leHBvcnQgY29uc3QgR1dfRVZFTlRfUkFOR0VfU0VMRUNUSU9OX0NIQU5HRUQgPSA1MDA5OyIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfc2VuZEV2ZW50LCBnd19wYXJzZU5vZGVGcm9tRXZlbnQgfSBmcm9tIFwiLi91dGlsaXRpZXNcIjtcbmltcG9ydCB7IGd3X2VzY2FwZSwgZ3dfZ2V0R3JpZCB9IGZyb20gXCJhcGkvdXRpbGl0aWVzXCI7XG5pbXBvcnQge1xuICBHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RBUlRFRCxcbiAgR1dfRVZFTlRfQ0VMTF9FRElUSU5HX1NUT1BQRUQsXG4gIEdXX0VWRU5UX0NFTExfVkFMVUVfQ0hBTkdFRCxcbiAgR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RBUlRFRCxcbiAgR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RPUFBFRFxufSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuY29uc3QgQ0VMTF9FRElUSU5HX0VWRU5UU19NQVAgPSB7XG4gICdjZWxsRWRpdGluZ1N0YXJ0ZWQnICA6IEdXX0VWRU5UX0NFTExfRURJVElOR19TVEFSVEVELFxuICAnY2VsbEVkaXRpbmdTdG9wcGVkJyAgOiBHV19FVkVOVF9DRUxMX0VESVRJTkdfU1RPUFBFRCxcbiAgJ2NlbGxWYWx1ZUNoYW5nZWQnICA6IEdXX0VWRU5UX0NFTExfVkFMVUVfQ0hBTkdFRCxcbn07XG5cbmNvbnN0IFJPV19FRElUSU5HX0VWRU5UU19NQVAgPSB7XG4gICdyb3dFZGl0aW5nU3RhcnRlZCcgIDogR1dfRVZFTlRfUk9XX0VESVRJTkdfU1RBUlRFRCxcbiAgJ3Jvd0VkaXRpbmdTdG9wcGVkJyAgOiBHV19FVkVOVF9ST1dfRURJVElOR19TVE9QUEVELFxufTtcblxuLyoqXG4gKiBBbiBoYW5kbGVyIGZvciB0aGUgZ3JpZCBgY2VsbEVkaXRpbmdTdGFydGVkYCAsIGBjZWxsRWRpdGluZ1N0b3BwZWRgIGFuZCBcbiAqIGBjZWxsVmFsdWVDaGFuZ2VkYCBldmVudHNcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkJ3MgaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBlICBUaGUgZXZlbnQgcGF5bG9hZFxuICogXG4gKiBAbGlzdGVucyBhZ0dyaWQuY2VsbEVkaXRpbmdTdGFydGVkXG4gKiBAbGlzdGVucyBhZ0dyaWQuY2VsbEVkaXRpbmdTdG9wcGVkXG4gKiBAbGlzdGVucyBhZ0dyaWQuY2VsbFZhbHVlQ2hhbmdlZFxuICogXG4gKiBAZmlyZXMgZ3cuY2VsbEVkaXRpbmdTdGFydGVkXG4gKiBAZmlyZXMgZ3cuY2VsbEVkaXRpbmdTdG9wcGVkXG4gKiBAZmlyZXMgZ3cuY2VsbFZhbHVlQ2hhbmdlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfb25DZWxsRWRpdGluZ0V2ZW50KGlkLCBlKSB7XG5cbiAgY29uc3QgdmFsdWUgPSBnd19lc2NhcGUoZS5uZXdWYWx1ZSkgfHwgZ3dfZXNjYXBlKGUudmFsdWUpO1xuICBjb25zdCBvbGRWYWx1ZSA9IGd3X2VzY2FwZShlLm9sZFZhbHVlKSB8fCBnd19lc2NhcGUoZS5uZXdWYWx1ZSkgfHwgZ3dfZXNjYXBlKGUudmFsdWUpO1xuXG4gIC8vaWYgKHZhbHVlID09PSBvbGRWYWx1ZSkgcmV0dXJuO1xuXG4gIGNvbnN0IHBhcnNlZCA9IGd3X3BhcnNlTm9kZUZyb21FdmVudChlKTtcbiAgY29uc3QgdHlwZSA9IGUudHlwZTtcbiAgY29uc3QgY29sSWQgPSBlLmNvbHVtbi5jb2xJZDtcblxuICBpZiAocGFyc2VkKSB7XG4gICAgZ3dfc2VuZEV2ZW50KFxuICAgICAgZ3dfZ2V0R3JpZChpZCkub3B0aW9ucy5jb250ZXh0LFxuICAgICAge1xuICAgICAgICAndHlwZSc6IGBndy4ke3R5cGV9YCxcbiAgICAgICAgJ2RldGFpbCc6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICByOiBwYXJzZWQsIC8vIHJvd1xuICAgICAgICAgIHY6IHZhbHVlLCAvLyBuZXcgdmFsdWVcbiAgICAgICAgICBvOiBvbGRWYWx1ZSwgLy8gb2xkIHZhbHVlXG4gICAgICAgICAgYzogY29sSWQgLy8gY29sdW1uXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgQ0VMTF9FRElUSU5HX0VWRU5UU19NQVBbdHlwZV1cbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogQW4gaGFuZGxlciBmb3IgdGhlIGdyaWQgYHJvd0VkaXRpbmdTdGFydGVkYCAsIGByb3dFZGl0aW5nU3RvcHBlZGAgZXZlbnRzXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gZSAgVGhlIGV2ZW50IHBheWxvYWRcbiAqIFxuICogQGxpc3RlbnMgYWdHcmlkLnJvd0VkaXRpbmdTdGFydGVkXG4gKiBAbGlzdGVucyBhZ0dyaWQucm93RWRpdGluZ1N0b3BwZWRcbiAqIFxuICogQGZpcmVzIGd3LnJvd0VkaXRpbmdTdGFydGVkXG4gKiBAZmlyZXMgZ3cucm93RWRpdGluZ1N0b3BwZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uUm93RWRpdGluZ0V2ZW50KGlkLCBlKSB7XG4gIGNvbnN0IHBhcnNlZCA9IGd3X3BhcnNlTm9kZUZyb21FdmVudChlKTtcblxuICBpZiAocGFyc2VkKSB7XG4gICAgY29uc3QgdHlwZSA9IGUudHlwZTtcbiAgICBnd19zZW5kRXZlbnQoXG4gICAgICBnd19nZXRHcmlkKGlkKS5vcHRpb25zLmNvbnRleHQsXG4gICAgICB7XG4gICAgICAgICd0eXBlJzogYGd3LiR7ZS50eXBlfWAsXG4gICAgICAgICdkZXRhaWwnOiBKU09OLnN0cmluZ2lmeShwYXJzZWQpXG4gICAgICB9LFxuICAgICAgUk9XX0VESVRJTkdfRVZFTlRTX01BUFt0eXBlXVxuICAgICk7XG4gIH1cbn1cblxuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQge1xuXHRnd19vblJvd0RvdWJsZUNsaWNrZWQsXG5cdGd3X29uU2VsZWN0aW9uQ2hhbmdlZCxcblx0Z3dfb25DZWxsQ2xpY2tFdmVudCxcblx0Z3dfb25SYW5nZVNlbGVjdGlvbkNoYW5nZWRcbn0gZnJvbSBcIi4vc2VsZWN0aW9uc1wiO1xuXG5pbXBvcnQge1xuXHRnd19vbkNlbGxFZGl0aW5nRXZlbnQsXG5cdGd3X29uUm93RWRpdGluZ0V2ZW50XG59IGZyb20gXCIuL2VkaXRpbmdcIjtcblxuaW1wb3J0IHtcblx0Z3dfb25SZWFkeUV2ZW50XG59IGZyb20gXCIuL3N0YXRlXCI7XG5cbmltcG9ydCB7XG5cdGd3X2RlYm91bmNlXG59IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuXG5leHBvcnQge1xuXHRnd19vblJvd0RvdWJsZUNsaWNrZWQsXG5cdGd3X29uU2VsZWN0aW9uQ2hhbmdlZCxcblx0Z3dfb25SYW5nZVNlbGVjdGlvbkNoYW5nZWQsXG5cdGd3X29uQ2VsbENsaWNrRXZlbnQsXG5cdGd3X29uQ2VsbEVkaXRpbmdFdmVudCxcblx0Z3dfb25Sb3dFZGl0aW5nRXZlbnQsXG5cdGd3X29uUmVhZHlFdmVudCxcblx0Z3dfZGVib3VuY2Vcbn07IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19zZW5kRXZlbnQsIGd3X3BhcnNlTm9kZUZyb21FdmVudCB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuaW1wb3J0IHsgZ3dfZXNjYXBlLCBnd19nZXRHcmlkIH0gZnJvbSBcImFwaS91dGlsaXRpZXNcIjtcbmltcG9ydCB7XG4gIEdXX0VWRU5UX1JPV19DTElDSyxcbiAgR1dfRVZFTlRfUk9XX0RPVUJMRV9DTElDSyxcbiAgR1dfRVZFTlRfQ0VMTF9DTElDSyxcbiAgR1dfRVZFTlRfQ0VMTF9ET1VCTEVfQ0xJQ0ssXG4gIEdXX0VWRU5UX1JBTkdFX1NFTEVDVElPTl9DSEFOR0VEXG59IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuXG5jb25zdCBDRUxMX0NMSUNLSU5HX0VWRU5UU19NQVAgPSB7XG4gICdjZWxsQ2xpY2tlZCc6IEdXX0VWRU5UX0NFTExfQ0xJQ0ssXG4gICdjZWxsRG91YmxlQ2xpY2tlZCc6IEdXX0VWRU5UX0NFTExfRE9VQkxFX0NMSUNLLFxufTtcblxuLyoqXG4gKiBBbiBoYW5kbGVyIGZvciB0aGUgZ3JpZCBgcm93RG91YmxlQ2xpY2tlZGAgZXZlbnRcbiAqIFxuICogVGhlIGZ1bmN0aW9uIHdpbGwgc2VuZCBhIGJiaiBldmVudCB3aXRoIGBHV19OT0RFYCBhcyBwYXlsb2FkXG4gKiBcbiAqIEBwYXJhbSB7T2JqZWN0fSBlIFRoZSBldmVudCdzIHBheWxvYWRcbiAqIFxuICogQGxpc3RlbnMgYWdHcmlkLnJvd0RvdWJsZUNsaWNrZWRcbiAqIEBmaXJlcyBndy5yb3dEb3VibGVDbGlja1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfb25Sb3dEb3VibGVDbGlja2VkKGUpIHtcbiAgY29uc3QgY29udGV4dCA9IGUuYXBpLmdyaWRPcHRpb25zV3JhcHBlci5ncmlkT3B0aW9ucy5jb250ZXh0O1xuICBnd19zZW5kRXZlbnQoY29udGV4dCwge1xuICAgICd0eXBlJzogJ2d3LnJvd0RvdWJsZUNsaWNrJyxcbiAgICAnZGV0YWlsJzogJydcbiAgfSwgR1dfRVZFTlRfUk9XX0RPVUJMRV9DTElDSyk7XG59XG5cbi8qKlxuICogQSBoYW5kbGVyIGZvciB0aGUgZ3JpZCBgc2VsZWN0aW9uQ2hhbmdlZGAgZXZlbnRcbiAqIFxuICogQHBhcmFtIHtPYmplY3R9IGUgIFRoZSBldmVudCBwYXlsb2FkXG4gKiBcbiAqIEBsaXN0ZW5zIGFnR3JpZC5zZWxlY3Rpb25DaGFuZ2VkXG4gKiBAZmlyZXMgZ3cucm93U2VsZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19vblNlbGVjdGlvbkNoYW5nZWQoZSkge1xuICBjb25zdCBjb250ZXh0ID0gZS5hcGkuZ3JpZE9wdGlvbnNXcmFwcGVyLmdyaWRPcHRpb25zLmNvbnRleHQ7XG4gIGd3X3NlbmRFdmVudChjb250ZXh0LCB7XG4gICAgJ3R5cGUnOiAnZ3cucm93U2VsZWN0JyxcbiAgICAnZGV0YWlsJzogJydcbiAgfSwgR1dfRVZFTlRfUk9XX0NMSUNLKTtcbn1cblxuLyoqXG4gKiBBIGhhbmRsZXIgZm9yIHRoZSBncmlkIGByYW5nZVNlbGVjdGlvbkNoYW5nZWRgIGV2ZW50XG4gKiBcbiAqIEBwYXJhbSB7T2JqZWN0fSBlIFxuICogXG4gKiBAbGlzdGVucyBhZ0dyaWQucmFuZ2VTZWxlY3Rpb25DaGFuZ2VkXG4gKiBAZmlyZXMgZ3cucmFuZ2VTZWxlY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uUmFuZ2VTZWxlY3Rpb25DaGFuZ2VkKGUpIHtcbiAgY29uc3QgY29udGV4dCA9IGUuYXBpLmdyaWRPcHRpb25zV3JhcHBlci5ncmlkT3B0aW9ucy5jb250ZXh0O1xuICBnd19zZW5kRXZlbnQoY29udGV4dCwge1xuICAgICd0eXBlJzogJ2d3LnJhbmdlU2VsZWN0aW9uJyxcbiAgICAnZGV0YWlsJzogJydcbiAgfSwgR1dfRVZFTlRfUkFOR0VfU0VMRUNUSU9OX0NIQU5HRUQpO1xufVxuXG4vKipcbiAqIEEgaGFuZGxlciBmb3IgdGhlIGdyaWQgYGNlbGxDbGlja0V2ZW50YCAmIGBjZWxsRG91YmxlQ2xpY2tlZGAgZXZlbnRcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9IGlkIFRoZSBncmlkJ3MgaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBlICBUaGUgZXZlbnQgcGF5bG9hZFxuICogXG4gKiBAbGlzdGVucyBhZ0dyaWQuY2VsbENsaWNrRXZlbnRcbiAqIEBsaXN0ZW5zIGFnR3JpZC5jZWxsRG91YmxlQ2xpY2tlZFxuICogXG4gKiBAZmlyZXMgZ3cuY2VsbENsaWNrZWRcbiAqIEBmaXJlcyBndy5jZWxsRG91YmxlQ2xpY2tlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfb25DZWxsQ2xpY2tFdmVudChpZCwgZSkge1xuICBjb25zdCBwYXJzZWQgPSBnd19wYXJzZU5vZGVGcm9tRXZlbnQoZSk7XG5cbiAgaWYgKHBhcnNlZCkge1xuICAgIGNvbnN0IHR5cGUgPSBlLnR5cGU7XG4gICAgZ3dfc2VuZEV2ZW50KGd3X2dldEdyaWQoaWQpLm9wdGlvbnMuY29udGV4dCwge1xuICAgICAgJ3R5cGUnOiBgZ3cuJHtlLnR5cGV9YCxcbiAgICAgICdkZXRhaWwnOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHI6IHBhcnNlZCwgLy8gcm93XG4gICAgICAgIHY6IGd3X2VzY2FwZShlLnZhbHVlKSwgIC8vIG5ldyB2YWx1ZVxuICAgICAgICBvOiBnd19lc2NhcGUoZS52YWx1ZSksIC8vIG9kbCB2YWx1ZVxuICAgICAgICBjOiBlLmNvbHVtbi5jb2xJZCAvLyBjb2x1bW5zXG4gICAgICB9KVxuICAgIH0sIENFTExfQ0xJQ0tJTkdfRVZFTlRTX01BUFt0eXBlXSk7XG4gIH1cbn1cbiIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0IHsgZ3dfc2VuZEV2ZW50LCBnd19kZWJvdW5jZSB9IGZyb20gXCIuL3V0aWxpdGllc1wiO1xuaW1wb3J0IHsgZ3dfZ2V0R3JpZCB9IGZyb20gXCJhcGkvdXRpbGl0aWVzXCI7XG5pbXBvcnQge1xuICBHV19FVkVOVF9HUklEX1NUQVRFX0NIQU5HRVxufSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuLyoqXG4gKiBPbiBSZWFkeSBFdmVudCBcbiAqIFxuICogVGhlIG1ldGhvZCB3aWxsIGlnbm9yZSBmaXJzdCByZWFkeSBldmVudCBhbmQgdGhlbiByZWdpc3RlciBhIGRlYm91bmNlZCBzdGF0ZVxuICogY2FsbGJhY2sgdG8gc2VuZCBzdGF0ZSBldmVudHMgdG8gQkJqXG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZ3JpZCdzIGlkXG4gKiBAcGFyYW0ge09iamVjdH0gZSAgVGhlIGV2ZW50IHBheWxvYWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X29uUmVhZHlFdmVudChpZCwgZSkge1xuXG4gIC8vIHJlZ2lzdGVyIHN0YXRlIGRlYm91bmNlIG1vbml0b3IgXG4gIGNvbnN0IHN0YXRlRGVib3VuY2UgPSBnd19kZWJvdW5jZShjaGFuZ2VFdmVudCA9PiB7XG5cbiAgICAvLyBXZSBza2lwIHRoZSBmaXJzdCByZW5kZXIgc3RhdGUgY2hhbmdlc1xuICAgIC8vIGlmICghZ3dfZ2V0R3JpZChpZCkuaGFzT3duUHJvcGVydHkoJ2lzRmlyc3RSZW5kZXInKSkge1xuICAgIC8vIFx0Z3dfZ2V0R3JpZChpZCkuaXNGaXJzdFJlbmRlciA9IHRydWU7XG4gICAgLy8gXHRyZXR1cm47XG4gICAgLy8gfVxuXG4gICAgZ3dfb25TdGF0ZUNoYW5nZWQoaWQsIGNoYW5nZUV2ZW50KTtcbiAgfSwgNTAwKTtcblxuICBbXG4gICAgJ3NvcnRDaGFuZ2VkJyxcbiAgICAnZmlsdGVyQ2hhbmdlZCcsXG4gICAgJ2NvbHVtblZpc2libGUnLFxuICAgICdjb2x1bW5QaW5uZWQnLFxuICAgICdjb2x1bW5SZXNpemVkJyxcbiAgICAnY29sdW1uTW92ZWQnLFxuICAgICduZXdDb2x1bW5zTG9hZGVkJyxcbiAgICAnZ3JpZENvbHVtbnNDaGFuZ2VkJyxcbiAgICAnZGlzcGxheWVkQ29sdW1uc0NoYW5nZWQnLFxuICAgICd2aXJ0dWFsQ29sdW1uc0NoYW5nZWQnLFxuICAgICdjb2x1bW5FdmVyeXRoaW5nQ2hhbmdlZCcsXG4gICAgLy8nZ3JpZFNpemVDaGFuZ2VkJyxcbiAgICAnZXhwYW5kT3JDb2xsYXBzZUFsbCcsXG4gICAgLy8ndG9vbFBhbmVsVmlzaWJsZUNoYW5nZWQnXG4gIF0uZm9yRWFjaChldmVudCA9PiB7XG4gICAgZ3dfZ2V0R3JpZChpZCkub3B0aW9ucy5hcGkuYWRkRXZlbnRMaXN0ZW5lcihldmVudCwgc3RhdGVEZWJvdW5jZSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIEFuIGhhbmRsZXIgZm9yIHRoZSBncmlkIGBzdGF0ZUNoYW5nZWRgIGV2ZW50c1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gaWQgVGhlIGdyaWQncyBpZFxuICogQHBhcmFtIHtPYmplY3R9IGUgIFRoZSBldmVudCBwYXlsb2FkXG4gKiBcbiAqIEBsaXN0ZW5zIGFnR3JpZC5zdGF0ZUNoYW5nZWRcbiAqIEBsaXN0ZW5zIGFnR3JpZC5yb3dFZGl0aW5nU3RvcHBlZFxuICogXG4gKiBAZmlyZXMgZ3cuc3RhdGVDaGFuZ2VkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19vblN0YXRlQ2hhbmdlZChpZCwgZSkge1xuICBnd19zZW5kRXZlbnQoXG4gICAgZ3dfZ2V0R3JpZChpZCkub3B0aW9ucy5jb250ZXh0LFxuICAgIHtcbiAgICAgICd0eXBlJzogJ2d3LnN0YXRlQ2hhbmdlZCcsXG4gICAgICAnZGV0YWlsJzogW11cbiAgICB9LFxuICAgIEdXX0VWRU5UX0dSSURfU1RBVEVfQ0hBTkdFXG4gICk7XG59IiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG5pbXBvcnQgeyBnd19nZXREb2N1bWVudCB9IGZyb20gXCJhcGkvdXRpbGl0aWVzXCI7XG5cbi8qKiBodHRwczovL2Rhdmlkd2Fsc2gubmFtZS9qYXZhc2NyaXB0LWRlYm91bmNlLWZ1bmN0aW9uICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfZGVib3VuY2UoZnVuYywgd2FpdCwgaW1tZWRpYXRlKSB7XG4gIHZhciB0aW1lb3V0O1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHZhciBjb250ZXh0ID0gdGhpcywgYXJncyA9IGFyZ3VtZW50cztcbiAgICB2YXIgbGF0ZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICB0aW1lb3V0ID0gbnVsbDtcbiAgICAgIGlmICghaW1tZWRpYXRlKSBmdW5jLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xuICAgIH07XG4gICAgdmFyIGNhbGxOb3cgPSBpbW1lZGlhdGUgJiYgIXRpbWVvdXQ7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KGxhdGVyLCB3YWl0KTtcbiAgICBpZiAoY2FsbE5vdykgZnVuYy5hcHBseShjb250ZXh0LCBhcmdzKTtcbiAgfTtcbn1cblxuLyoqXG4gKiBTZW5kIGFuIGV2ZW50IHRvIEJCaiBzaWRlIFxuICogXG4gKiBUaGUgZnVuY3Rpb24gd2lsbCB0cmlnZ2VyIGEgY3VzdG9tIGNsaWNrIGV2ZW50IG9uIHRoZSBgZXZlbnQtYnJpZGdlLSR7aWR9YCBkaXZcbiAqIHRoZW4gdGhlIGRpdiB3aWxsIHVzZSBiYXNpc0Rpc3BhdGNoQ3VzdG9tRXZlbnQgdG8gZGlzcGF0Y2ggdGhlIGV2ZW50IHRvIEJCalxuICogXG4gKiBAcGFyYW0ge0FycmF5fSBjb250ZXh0IHRoZSBncmlkJ3MgY29udGV4dFxuICogQHBhcmFtIHsqfSBwYXlsb2FkIHRoZSBldmVudCBwYXlsb2FkXG4gKiBAcGFyYW0ge1N0cmluZ30gZXZlbnRJZCB0aGUgZXZlbnQncyBpZCBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGd3X3NlbmRFdmVudChjb250ZXh0LCBwYXlsb2FkID0ge30sIGV2ZW50SWQgPSBbXSkge1xuICBjb25zdCByZWdpc3RlcmVkSW50ZXJlc3RzID0gY29udGV4dC5pbnRlcmVzdHMgfHwgW107XG5cbiAgaWYgKHJlZ2lzdGVyZWRJbnRlcmVzdHMuaW5jbHVkZXMoZXZlbnRJZCkpIHtcbiAgICBjb25zdCBkaXYgPSBnd19nZXREb2N1bWVudCgpLmdldEVsZW1lbnRCeUlkKGBldmVudC1icmlkZ2UtJHtjb250ZXh0LmlkfWApO1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCdjbGljaycpO1xuXG4gICAgZXZlbnQucGF5bG9hZCA9IHBheWxvYWQ7XG4gICAgZGl2LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICB9XG59XG5cbi8qKlxuICogQHR5cGVkZWYge09iamVjdH0gQkJqR3JpZEV4V2lkZ2V0Um93XG4gKiBcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBpZCBcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBpbmRleCBcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBwYXJlbnRLZXkgXG4gKiBAcHJvcGVydHkge251bWJlcn0gY2hpbGRJbmRleCBcbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gc2VsZWN0ZWQgXG4gKi9cblxuLyoqXG4gKiBQYXJzZSBhIG5vZGUgYXMgQkJqR3JpZEV4V2lkZ2V0Um93XG4gKiBcbiAqIEBwYXJhbSB7T2JqZWN0fSBub2RlIGFnIGdyaWQgbm9kZVxuICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHQgIGFnIGdyaWQgY29udGV4dFxuICogXG4gKiBAcmV0dXJucyB7QkJqR3JpZEV4V2lkZ2V0Um93fEJvb2xlYW59IG9iamVjdCBmb3JtYXR0ZWQgYXMgQkJqR3JpZEV4V2lkZ2V0Um93LlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSBpZiB0aGUgbm9kZSBpcyBmb3IgZ3JvdXAgbm9kZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ3dfcGFyc2VOb2RlKG5vZGUsIGNvbnRleHQpIHtcblxuICBpZiAodHJ1ZSA9PT0gbm9kZS5ncm91cCkgcmV0dXJuIGZhbHNlOyAvLyB3ZSBkbyBub3QgbWFuYWdlIGdyb3Vwc1xuXG4gIGNvbnN0IHJvd05vZGVJZCA9IGNvbnRleHQuaGFzT3duUHJvcGVydHkoJ2dldFJvd05vZGVJZCcpICYmIG5vZGUuZGF0YVtjb250ZXh0LmdldFJvd05vZGVJZF0gP1xuICAgIG5vZGUuZGF0YVtjb250ZXh0LmdldFJvd05vZGVJZF0gOiAnJztcblxuICByZXR1cm4ge1xuICAgIGk6IHJvd05vZGVJZCA/IHJvd05vZGVJZCA6IG5vZGUuaWQsIC8vIGlkXG4gICAgeDogcm93Tm9kZUlkLCAvLyBpbmRleFxuICAgIHA6IG5vZGUuaGFzT3duUHJvcGVydHkoJ3BhcmVudCcpICYmIG5vZGUucGFyZW50Lmhhc093blByb3BlcnR5KCdrZXknKSA/XG4gICAgICBub2RlLnBhcmVudC5rZXkgOiAnJywgLy8gcGFyZW50IGtleVxuICAgIGM6IG5vZGUuY2hpbGRJbmRleCwgLy9jaGlsZEluZGV4XG4gICAgczogQm9vbGVhbihub2RlLnNlbGVjdGVkKSwgLy8gc2VsZWN0ZWQgXG4gIH07XG59XG5cbi8qKlxuICogUGFyc2Ugbm9kZSBmcm9tIGV2ZW50IFxuICogXG4gKiBQYXJzZSBub2RlIGluIHRoZSBwYVNzZWQgZXZlbnQgYXMgQkJqR3JpZEV4V2lkZ2V0Um93XG4gKiBcbiAqIEBwYXJhbSB7T2JqZWN0fSBlXG4gKiBcbiAqIEByZXR1cm5zIHtCQmpHcmlkRXhXaWRnZXRSb3d9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnd19wYXJzZU5vZGVGcm9tRXZlbnQoZSkge1xuICByZXR1cm4gZ3dfcGFyc2VOb2RlKGUubm9kZSwgZS5jb250ZXh0KTtcbn1cbiIsIi8qXG4qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBCQmpHcmlkRXhXaWRnZXQgcGx1Z2luLlxuKiAoYykgQmFzaXMgRXVyb3BlIDxldUBiYXNpcy5jb20+XG4qXG4qIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFXG4qIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLlxuKi9cblxuaW1wb3J0ICdleHBvc2UtbG9hZGVyP0Jhc2lzLkFnR3JpZENvbXBvbmVudHMhYWctZ3JpZC1jb21wb25lbnRzL2Rpc3QvYWdjLWJhc2ljLmJ1bmRsZS5qcyc7XG5cbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLWdyaWQuY3NzJyk7XG5cbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJvb3RzdHJhcC5jc3MnKTtcbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJsdWUuY3NzJyk7XG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1kYXJrLmNzcycpO1xucmVxdWlyZSgnYWctZ3JpZC1jb21tdW5pdHkvZGlzdC9zdHlsZXMvYWctdGhlbWUtZnJlc2guY3NzJyk7XG5yZXF1aXJlKCdhZy1ncmlkLWNvbW11bml0eS9kaXN0L3N0eWxlcy9hZy10aGVtZS1tYXRlcmlhbC5jc3MnKTtcbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS5jc3MnKTtcbnJlcXVpcmUoJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3Qvc3R5bGVzL2FnLXRoZW1lLWJhbGhhbS1kYXJrLmNzcycpO1xuXG5yZXF1aXJlKCcuL3N0eWxlL2NsYXNzZXMuY3NzJyk7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG9seWZpbGxzLmpzJztcbmV4cG9ydCAqIGZyb20gXCIuL2FwaVwiO1xuIiwiLypcbiogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEJCakdyaWRFeFdpZGdldCBwbHVnaW4uXG4qIChjKSBCYXNpcyBFdXJvcGUgPGV1QGJhc2lzLmNvbT5cbipcbiogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0VcbiogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuXG4qL1xuXG4vKiogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0N1c3RvbUV2ZW50L0N1c3RvbUV2ZW50ICAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cuQ3VzdG9tRXZlbnQgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIGZhbHNlOyAvL0lmIG5vdCBJRVxuXG4gIGZ1bmN0aW9uIEN1c3RvbUV2ZW50KGV2ZW50LCBwYXJhbXMpIHtcbiAgICBwYXJhbXMgPSBwYXJhbXMgfHwgeyBidWJibGVzOiBmYWxzZSwgY2FuY2VsYWJsZTogZmFsc2UsIGRldGFpbDogdW5kZWZpbmVkIH07XG4gICAgdmFyIGV2dCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDdXN0b21FdmVudCcpO1xuICAgIGV2dC5pbml0Q3VzdG9tRXZlbnQoZXZlbnQsIHBhcmFtcy5idWJibGVzLCBwYXJhbXMuY2FuY2VsYWJsZSwgcGFyYW1zLmRldGFpbCk7XG4gICAgcmV0dXJuIGV2dDtcbiAgfVxuXG4gIEN1c3RvbUV2ZW50LnByb3RvdHlwZSA9IHdpbmRvdy5FdmVudC5wcm90b3R5cGU7XG5cbiAgd2luZG93LkN1c3RvbUV2ZW50ID0gQ3VzdG9tRXZlbnQ7XG59KSgpO1xuIiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2NsYXNzZXMuY3NzXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gd2luZG93LnRvcC5kb2N1bWVudC5oZWFkIH07XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanMhLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuL2NsYXNzZXMuY3NzXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcyEuLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzIS4vY2xhc3Nlcy5jc3NcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iXSwic291cmNlUm9vdCI6IiJ9 \ No newline at end of file diff --git a/client/dist/bbj-grid-widget.min.js b/client/dist/bbj-grid-widget.min.js index ac18efad..31c7ab7e 100644 --- a/client/dist/bbj-grid-widget.min.js +++ b/client/dist/bbj-grid-widget.min.js @@ -592,7 +592,11 @@ e.exports=function(){"use strict";var e=function(e){return("0"+e).slice(-2)},n=f /*!**************************!*\ !*** ./src/api/cells.js ***! \**************************/ -/*! no static exports found */function(e,n,a){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.gw_startEditingCell=function(e,n,a,r,o){var g=(0,t.gw_getGrid)(e).options;g.api.setFocusedCell(Number(n),a),g.api.startEditingCell({rowIndex:Number(n),colKey:a,keyPress:Number(r),charPress:o})},n.gw_stopEditing=function(e,n){(0,t.gw_getGrid)(e).options.api.stopEditing(n)},n.gw_editNextCell=function(e){(0,t.gw_getGrid)(e).options.api.tabToNextCell()},n.gw_editPreviousCell=function(e){(0,t.gw_getGrid)(e).options.api.tabToPreviousCell()},n.gw_setFocusedCell=function(e,n,a){var r=(0,t.gw_getGrid)(e).options,o=n?Number.isInteger(+n)?+n:r.api.getRowNode(n).rowIndex:0,g=a||r.columnApi.getAllGridColumns()[0].colId;(0,t.gw_getGrid)(e).options.api.setFocusedCell(o,g)};var t=a(/*! ./utilities */"./src/api/utilities.js")},"./src/api/columns.js": +/*! no static exports found */function(e,n,a){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.gw_startEditingCell=function(e,n,a,r,o){var g=(0,t.gw_getGrid)(e).options;g.api.setFocusedCell(Number(n),a),g.api.startEditingCell({rowIndex:Number(n),colKey:a,keyPress:Number(r),charPress:o})},n.gw_stopEditing=function(e,n){(0,t.gw_getGrid)(e).options.api.stopEditing(n)},n.gw_editNextCell=function(e){(0,t.gw_getGrid)(e).options.api.tabToNextCell()},n.gw_editPreviousCell=function(e){(0,t.gw_getGrid)(e).options.api.tabToPreviousCell()},n.gw_setFocusedCell=function(e,n,a){var r=(0,t.gw_getGrid)(e).options,o=n?Number.isInteger(+n)?+n:r.api.getRowNode(n).rowIndex:0,g=a||r.columnApi.getAllGridColumns()[0].colId;(0,t.gw_getGrid)(e).options.api.setFocusedCell(o,g)};var t=a(/*! ./utilities */"./src/api/utilities.js")},"./src/api/charts.js": +/*!***************************!*\ + !*** ./src/api/charts.js ***! + \***************************/ +/*! no static exports found */function(e,n,a){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.gw_getChartToolbarItems=function(e){return e.api.gridOptionsWrapper.gridOptions.context.chartToolbarItems||[]}},"./src/api/columns.js": /*!****************************!*\ !*** ./src/api/columns.js ***! \****************************/ @@ -608,7 +612,7 @@ e.exports=function(){"use strict";var e=function(e){return("0"+e).slice(-2)},n=f /*!*************************!*\ !*** ./src/api/init.js ***! \*************************/ -/*! no static exports found */function(e,n,a){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.gw_init=function(e,n,a){agGrid.LicenseManager&&n&&agGrid.LicenseManager.setLicenseKey(n);var h=e.context.id,s=(0,g.gw_getDocument)().getElementById(h),m=(0,g.gw_addGrid)(h,{container:s,options:e});s.innerHTML="";var A=function(e){var n=p(JSON.stringify(e)),a=n.context.id,h=n.context.getDataPath||"",s=function(e){for(var n=1;n
diff --git a/client/src/api/charts.js b/client/src/api/charts.js new file mode 100644 index 00000000..484f0253 --- /dev/null +++ b/client/src/api/charts.js @@ -0,0 +1,22 @@ +/* +* This file is part of the BBjGridExWidget plugin. +* (c) Basis Europe +* +* For the full copyright and license information, please view the LICENSE +* file that was distributed with this source code. +*/ + +/** + * Return the chart toolbar items defined in the grid's context + * + * @param {Object} params + * @returns {Array} array of supported chart items + */ +export function gw_getChartToolbarItems(params) { + return params + .api + .gridOptionsWrapper + .gridOptions + .context + .chartToolbarItems || []; +} \ No newline at end of file diff --git a/client/src/api/init.js b/client/src/api/init.js index 1b27e883..75690f32 100644 --- a/client/src/api/init.js +++ b/client/src/api/init.js @@ -9,6 +9,7 @@ import { gw_extendColumnDefinitions } from "./columns"; import { gw_navigateToNextRow } from "./rows"; import { gw_getContextMenu } from "./menus"; +import { gw_getChartToolbarItems } from "./charts"; import { gw_getDocument, gw_addGrid} from "./utilities"; import { gw_onRowDoubleClicked, @@ -86,6 +87,7 @@ function gw_parseOptions(options) { onGridReady: e => { gw_onReadyEvent(id, e) } , getRowNodeId: data => gw_getRowNodeId(id, data) , getContextMenuItems: params => gw_getContextMenu(id, params) , + "getChartToolbarItems": gw_getChartToolbarItems , "popupParent": gw_getDocument().body, "onRowDoubleClicked": gw_debounce(gw_onRowDoubleClicked, debounceDuration) , "onSelectionChanged": gw_debounce(gw_onSelectionChanged, debounceDuration) ,