From 28a2f7a48f508970a10413c8aa2367a4e4790b1b Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期二, 28 四月 2026 16:08:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
app/unpackage/dist/dev/app-plus/app-service.js | 109 +++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 82 insertions(+), 27 deletions(-)
diff --git a/app/unpackage/dist/dev/app-plus/app-service.js b/app/unpackage/dist/dev/app-plus/app-service.js
index b7e278d..4c6bf1e 100644
--- a/app/unpackage/dist/dev/app-plus/app-service.js
+++ b/app/unpackage/dist/dev/app-plus/app-service.js
@@ -8570,7 +8570,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 13);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n tts: null,\n show: false,\n show1: false,\n showGrabModal: false,\n selectedGrabOrder: null,\n selectedCancelOrder: null,\n cancelRemain: 0,\n selectedPickupOrder: null,\n showPhotoDeliverPopup: false,\n routeInfo: null,\n statusBarHeight: 0,\n headerHeight: 0,\n tabbarHeight: 0,\n scrollHeight: 0,\n showFilterPopup: false,\n acceptingStatus: 0,\n showStatusPicker: false,\n statusOptions: [{\n text: '涓婄嚎',\n value: 1\n }, {\n text: '涓嬬嚎',\n value: 0\n }],\n centerUserInfo: {},\n activeTab: 'hall',\n categoryList: [],\n filterSections: [{\n key: 'sort',\n title: '鎺掑簭',\n options: ['缁煎悎鎺掑簭', '璺濈鏈�杩�']\n }, {\n key: 'level',\n title: '鐗╁搧绛夌骇',\n options: ['涓嶉檺']\n }, {\n key: 'distance',\n title: '浣嶇疆鑼冨洿',\n options: ['涓嶉檺', '500m', '1km', '2km', '3km', '4km', '5km', '6km', '7km']\n }],\n selectedFilters: {\n sort: '缁煎悎鎺掑簭',\n level: '涓嶉檺',\n distance: '涓嶉檺'\n },\n stats: [{\n value: '-',\n label: '鏈嶅姟鍒�'\n }, {\n value: '-',\n label: '浠婃棩棰勮浣i噾'\n }, {\n value: '-',\n label: '浠婃棩鎺ュ崟'\n }],\n tabs: [{\n label: '鎶㈠崟澶у巺',\n value: 'hall'\n }, {\n label: '寰呭彇璐�',\n value: 'pickup'\n }, {\n label: '閰嶉�佷腑',\n value: 'delivering'\n }],\n orderList: [],\n pickupOrderList: [],\n deliveringOrderList: [],\n hallPage: 1,\n hallPageSize: 10,\n hallLoading: false,\n hallHasMore: true,\n pickupLoading: false,\n deliveringLoading: false,\n activeOrderCount: null\n };\n },\n watch: {\n activeTab: function activeTab(newVal) {\n this.loadOrdersByTab(newVal);\n }\n },\n onLoad: function onLoad() {\n var systemInfo = uni.getSystemInfoSync();\n var safeBottom = systemInfo.safeAreaInsets ? systemInfo.safeAreaInsets.bottom || 0 : 0;\n var windowHeight = systemInfo.windowHeight || 0;\n this.statusBarHeight = systemInfo.statusBarHeight || 0;\n this.headerHeight = this.statusBarHeight + uni.upx2px(308);\n this.tabbarHeight = uni.upx2px(100) + safeBottom;\n this.scrollHeight = Math.max(windowHeight - this.headerHeight, 0);\n if (this.userInfo.auditStatus === 99) return;\n this.acceptingStatus = this.userInfo.acceptingStatus || 0;\n this.loadOrdersByTab(this.activeTab);\n },\n onShow: function onShow() {\n this.getCenterInfo();\n this.getCategoryListData();\n this.getActiveOrderCount();\n },\n onReachBottom: function onReachBottom() {\n if (this.acceptingStatus === 0) return;\n if (this.activeTab === 'hall') {\n this.hallPage++;\n this.getHallOrders();\n }\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])), {}, {\n displayTabs: function displayTabs() {\n var _this = this;\n return this.tabs.map(function (tab) {\n if (tab.value === 'pickup') {\n var _this$activeOrderCoun;\n return _objectSpread(_objectSpread({}, tab), {}, {\n count: (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount\n });\n } else if (tab.value === 'delivering') {\n var _this$activeOrderCoun2;\n return _objectSpread(_objectSpread({}, tab), {}, {\n count: (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount\n });\n }\n return tab;\n });\n },\n currentOrderList: function currentOrderList() {\n var orderMap = {\n hall: this.orderList,\n pickup: this.pickupOrderList,\n delivering: this.deliveringOrderList\n };\n return orderMap[this.activeTab] || [];\n },\n bodyStyle: function bodyStyle() {\n return {\n marginTop: this.headerHeight + 'px',\n height: this.scrollHeight + 'px'\n };\n }\n }),\n onReady: function onReady() {\n this.initTTS(); // 椤甸潰娓叉煋瀹屾垚鍒濆鍖栬闊砛n },\n\n methods: {\n formatRemainTime: function formatRemainTime(minutes) {\n if (!minutes) return 0;\n if (minutes >= 60) {\n return (minutes / 60).toFixed(2) + '灏忔椂鍐�';\n }\n return minutes + '鍒嗛挓鍐�';\n },\n navigateToAddress: function navigateToAddress(item, type) {\n var latitude, longitude, name, address;\n if (type === 'deposit') {\n latitude = item.depositLat;\n longitude = item.depositLng;\n name = item.depositShopName;\n address = item.depositShopAddress;\n } else {\n latitude = item.takeLat;\n longitude = item.takeLng;\n name = item.takeName;\n address = item.takeAddress;\n }\n if (!latitude || !longitude) {\n uni.showToast({\n title: '鍦板潃鍧愭爣缂哄け',\n icon: 'none'\n });\n return;\n }\n uni.openLocation({\n latitude: latitude,\n longitude: longitude,\n name: name,\n address: address,\n success: function success() {},\n fail: function fail(err) {\n uni.showToast({\n title: '鎵撳紑鍦板浘澶辫触',\n icon: 'none'\n });\n __f__(\"error\", 'openLocation fail:', err, \" at pages/index/index.vue:418\");\n }\n });\n },\n handleUserClick: function handleUserClick() {\n uni.navigateTo({\n url: '/pages/test/test'\n });\n },\n getActiveOrderCount: function getActiveOrderCount() {\n var _this2 = this;\n this.$u.api.activeOrderCount().then(function (res) {\n if (res.code === 200) {\n _this2.activeOrderCount = res.data;\n }\n }).catch(function (err) {\n _this2.activeOrderCount = null;\n });\n },\n handleGrabOrder: function handleGrabOrder(item) {\n this.selectedGrabOrder = item;\n this.showGrabModal = true;\n },\n confirmGrabOrder: function confirmGrabOrder() {\n var _this3 = this;\n if (!this.selectedGrabOrder) return;\n this.$u.api.grabOrder({\n orderId: this.selectedGrabOrder.id\n }).then(function (res) {\n _this3.showGrabModal = false;\n if (res.code === 200) {\n uni.showToast({\n title: '鎶㈠崟鎴愬姛',\n icon: 'success'\n });\n _this3.hallPage = 1;\n _this3.hallHasMore = true;\n _this3.orderList = [];\n _this3.getHallOrders();\n _this3.getActiveOrderCount();\n _this3.getCenterInfo();\n } else {\n uni.showToast({\n title: res.message || '鎶㈠崟澶辫触',\n icon: 'none'\n });\n }\n }).catch(function () {\n _this3.showGrabModal = false;\n });\n },\n handleCancelOrder: function handleCancelOrder(item) {\n var _this4 = this;\n this.selectedCancelOrder = item;\n this.$u.api.cancelLimit().then(function (res) {\n if (res.code === 200) {\n _this4.cancelRemain = res.data.remain;\n }\n }).finally(function () {\n _this4.show = true;\n });\n },\n confirmCancelOrder: function confirmCancelOrder() {\n var _this5 = this;\n if (!this.selectedCancelOrder) return;\n this.$u.api.cancelOrder({\n orderId: this.selectedCancelOrder.id\n }).then(function (res) {\n _this5.show = false;\n if (res.code === 200) {\n uni.showToast({\n title: '鍙栨秷鎴愬姛',\n icon: 'success'\n });\n _this5.getPickupOrders();\n _this5.getCenterInfo();\n _this5.getActiveOrderCount();\n } else {\n uni.showToast({\n title: res.message || '鍙栨秷澶辫触',\n icon: 'none'\n });\n }\n }).catch(function () {\n _this5.show = false;\n });\n },\n handleCall: function handleCall(item) {\n if (item.contactPhone) {\n uni.makePhoneCall({\n phoneNumber: item.contactPhone\n });\n }\n },\n handleShowPickupCode: function handleShowPickupCode(item) {\n this.selectedPickupOrder = item;\n this.show1 = true;\n },\n goToOrderDetail: function goToOrderDetail(item, index) {\n var url = \"/pages/order-detail/order-detail?id=\".concat(item.id);\n if (this.activeTab === 'pickup' || this.activeTab === 'delivering') {\n url += \"&index=\".concat(index + 1);\n }\n uni.navigateTo({\n url: url\n });\n },\n getCenterInfo: function getCenterInfo() {\n var _this6 = this;\n this.$u.api.centerInfo().then(function (res) {\n if (res.code === 200) {\n _this6.acceptingStatus = res.data.acceptingStatus;\n _this6.centerUserInfo = {\n fullImgUrl: res.data.fullImgUrl,\n name: res.data.name\n };\n _this6.stats = [{\n value: res.data.score,\n label: '鏈嶅姟鍒�'\n }, {\n value: res.data.todayCommission,\n label: '浠婃棩棰勮浣i噾'\n }, {\n value: res.data.todayOrderCount,\n label: '浠婃棩鎺ュ崟'\n }];\n }\n });\n },\n getCategoryListData: function getCategoryListData() {\n var _this7 = this;\n this.$u.api.getCategoryList({\n type: 3\n }).then(function (res) {\n if (res.code === 200) {\n _this7.categoryList = res.data || [];\n _this7.filterSections.forEach(function (section) {\n if (section.key === 'level') {\n section.options = ['涓嶉檺'].concat((0, _toConsumableArray2.default)(_this7.categoryList.map(function (item) {\n return item.name;\n })));\n }\n });\n }\n });\n },\n loadOrdersByTab: function loadOrdersByTab(tab) {\n if (this.userInfo.auditStatus === 99) return;\n if (this.acceptingStatus === 0) return;\n if (tab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n } else if (tab === 'pickup') {\n this.pickupOrderList = [];\n this.getPickupOrders();\n } else if (tab === 'delivering') {\n this.deliveringOrderList = [];\n this.getDeliveringOrders();\n }\n },\n getHallOrders: function getHallOrders() {\n var _this8 = this;\n if (this.acceptingStatus === 0) return;\n if (this.hallLoading || !this.hallHasMore) {\n return;\n }\n this.hallLoading = true;\n var distance = null;\n if (this.selectedFilters.distance !== '涓嶉檺') {\n var distanceText = this.selectedFilters.distance;\n if (distanceText.includes('km')) {\n distance = parseInt(distanceText) * 1000;\n } else {\n distance = parseInt(distanceText);\n }\n }\n var sortTypeMap = {\n '缁煎悎鎺掑簭': 1,\n '璺濈鏈�杩�': 2\n };\n var sortType = this.selectedFilters.sort !== '涓嶉檺' ? sortTypeMap[this.selectedFilters.sort] || null : null;\n var gradeId = null;\n if (this.selectedFilters.level !== '涓嶉檺') {\n var selectedCategory = this.categoryList.find(function (item) {\n return item.name === _this8.selectedFilters.level;\n });\n if (selectedCategory) {\n gradeId = selectedCategory.id;\n }\n }\n __f__(\"log\", '鎺ュ崟澶у巺:', {\n distance: distance,\n gradeId: gradeId,\n sortType: sortType\n }, \" at pages/index/index.vue:590\");\n this.$u.api.grabOrderHall({\n capacity: this.hallPageSize,\n page: this.hallPage,\n model: {\n distance: distance,\n gradeId: gradeId,\n sortType: sortType\n }\n }).then(function (res) {\n __f__(\"log\", '鎺ュ崟澶у巺', res, \" at pages/index/index.vue:600\");\n _this8.hallLoading = false;\n if (res.code === 200) {\n var list = res.data.records || [];\n _this8.orderList = _this8.hallPage === 1 ? list : _this8.orderList.concat(list);\n _this8.hallHasMore = list.length >= _this8.hallPageSize;\n }\n }).catch(function (err) {\n _this8.hallLoading = false;\n });\n },\n getPickupOrders: function getPickupOrders() {\n var _this9 = this;\n if (this.acceptingStatus === 0) return;\n if (this.pickupLoading) return;\n this.pickupLoading = true;\n this.$u.api.activeOrders({\n status: 3\n }).then(function (res) {\n __f__(\"log\", '寰呭彇璐�:', res, \" at pages/index/index.vue:617\");\n _this9.pickupLoading = false;\n if (res.code === 200) {\n _this9.pickupOrderList = res.data.records || res.data || [];\n }\n }).catch(function (err) {\n _this9.pickupLoading = false;\n });\n },\n getDeliveringOrders: function getDeliveringOrders() {\n var _this10 = this;\n if (this.acceptingStatus === 0) return;\n if (this.deliveringLoading) return;\n this.deliveringLoading = true;\n this.$u.api.activeOrders({\n status: 4\n }).then(function (res) {\n __f__(\"log\", '閰嶉�佷腑:', res, \" at pages/index/index.vue:632\");\n _this10.deliveringLoading = false;\n if (res.code === 200) {\n _this10.deliveringOrderList = res.data || [];\n }\n }).catch(function (err) {\n _this10.deliveringLoading = false;\n });\n },\n openStatusPicker: function openStatusPicker() {\n this.showStatusPicker = true;\n },\n confirmStatus: function confirmStatus(e) {\n var _this11 = this;\n this.showStatusPicker = false;\n var selectedValue = e.value[0];\n this.$u.api.updateAcceptingStatus({\n status: selectedValue.value\n }).then(function (res) {\n if (res.code === 200) {\n _this11.acceptingStatus = selectedValue.value;\n _this11.getCenterInfo();\n if (_this11.acceptingStatus === 0) {\n _this11.orderList = [];\n _this11.pickupOrderList = [];\n _this11.deliveringOrderList = [];\n } else {\n if (_this11.activeTab === 'pickup') {\n _this11.getPickupOrders();\n } else if (_this11.activeTab === 'delivering') {\n _this11.getDeliveringOrders();\n } else {\n _this11.hallPage = 1;\n _this11.hallHasMore = true;\n _this11.orderList = [];\n _this11.getHallOrders();\n }\n }\n }\n });\n },\n toDriverCertification: function toDriverCertification() {\n uni.navigateTo({\n url: '/pages/driver-certification/driver-certification'\n });\n },\n toggleFilterPopup: function toggleFilterPopup(show) {\n this.showFilterPopup = show;\n },\n selectFilter: function selectFilter(key, option) {\n this.selectedFilters = _objectSpread(_objectSpread({}, this.selectedFilters), {}, (0, _defineProperty2.default)({}, key, option));\n },\n resetFilters: function resetFilters() {\n this.showFilterPopup = false;\n if (this.userInfo.auditStatus === 99) return;\n this.selectedFilters = {\n sort: '缁煎悎鎺掑簭',\n level: '涓嶉檺',\n distance: '涓嶉檺'\n };\n if (this.activeTab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n }\n },\n confirmFilters: function confirmFilters() {\n this.showFilterPopup = false;\n if (this.userInfo.auditStatus === 99) {\n this.hallHasMore = true;\n return;\n }\n if (this.activeTab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n }\n },\n initTTS: function initTTS() {\n var _this12 = this;\n if (uni.getSystemInfoSync().platform !== 'android') {\n __f__(\"log\", '浠呮敮鎸佸畨鍗�', \" at pages/index/index.vue:722\");\n return;\n }\n try {\n // 瀵煎叆瀹夊崜鍘熺敓绫籠n var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n var Locale = plus.android.importClass('java.util.Locale');\n\n // 鍒涘缓TTS\n this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n onInit: function onInit(status) {\n if (status == 0) {\n // 璁剧疆涓枃\n _this12.tts.setLanguage(Locale.CHINA);\n __f__(\"log\", '璇煶鍒濆鍖栨垚鍔�', \" at pages/index/index.vue:737\");\n }\n }\n });\n } catch (e) {\n __f__(\"log\", '鍒濆鍖栧け璐�', e, \" at pages/index/index.vue:742\");\n }\n },\n speak: function speak(text) {\n if (!this.tts) {\n uni.showToast({\n title: '璇煶鏈噯澶囧ソ',\n icon: 'none'\n });\n return;\n }\n try {\n // 瀹夊崜鍘熺敓鎾姤锛圦UEUE_FLUSH = 绔嬪嵆鎾姤锛屾墦鏂笂涓�鏉★級\n this.tts.speak(text, 0, null);\n } catch (err) {\n __f__(\"log\", '鎾姤澶辫触', err, \" at pages/index/index.vue:759\");\n }\n },\n stopSpeak: function stopSpeak() {\n if (this.tts) this.tts.stop();\n }\n },\n onUnload: function onUnload() {\n if (this.tts) {\n this.tts.stop();\n this.tts.shutdown();\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 12)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJ0dHMiLCJzaG93Iiwic2hvdzEiLCJzaG93R3JhYk1vZGFsIiwic2VsZWN0ZWRHcmFiT3JkZXIiLCJzZWxlY3RlZENhbmNlbE9yZGVyIiwiY2FuY2VsUmVtYWluIiwic2VsZWN0ZWRQaWNrdXBPcmRlciIsInNob3dQaG90b0RlbGl2ZXJQb3B1cCIsInJvdXRlSW5mbyIsInN0YXR1c0JhckhlaWdodCIsImhlYWRlckhlaWdodCIsInRhYmJhckhlaWdodCIsInNjcm9sbEhlaWdodCIsInNob3dGaWx0ZXJQb3B1cCIsImFjY2VwdGluZ1N0YXR1cyIsInNob3dTdGF0dXNQaWNrZXIiLCJzdGF0dXNPcHRpb25zIiwidGV4dCIsInZhbHVlIiwiY2VudGVyVXNlckluZm8iLCJhY3RpdmVUYWIiLCJjYXRlZ29yeUxpc3QiLCJmaWx0ZXJTZWN0aW9ucyIsImtleSIsInRpdGxlIiwib3B0aW9ucyIsInNlbGVjdGVkRmlsdGVycyIsInNvcnQiLCJsZXZlbCIsImRpc3RhbmNlIiwic3RhdHMiLCJsYWJlbCIsInRhYnMiLCJvcmRlckxpc3QiLCJwaWNrdXBPcmRlckxpc3QiLCJkZWxpdmVyaW5nT3JkZXJMaXN0IiwiaGFsbFBhZ2UiLCJoYWxsUGFnZVNpemUiLCJoYWxsTG9hZGluZyIsImhhbGxIYXNNb3JlIiwicGlja3VwTG9hZGluZyIsImRlbGl2ZXJpbmdMb2FkaW5nIiwiYWN0aXZlT3JkZXJDb3VudCIsIndhdGNoIiwibmV3VmFsIiwibG9hZE9yZGVyc0J5VGFiIiwib25Mb2FkIiwic3lzdGVtSW5mbyIsInVuaSIsImdldFN5c3RlbUluZm9TeW5jIiwic2FmZUJvdHRvbSIsInNhZmVBcmVhSW5zZXRzIiwiYm90dG9tIiwid2luZG93SGVpZ2h0IiwidXB4MnB4IiwiTWF0aCIsIm1heCIsInVzZXJJbmZvIiwiYXVkaXRTdGF0dXMiLCJvblNob3ciLCJnZXRDZW50ZXJJbmZvIiwiZ2V0Q2F0ZWdvcnlMaXN0RGF0YSIsImdldEFjdGl2ZU9yZGVyQ291bnQiLCJvblJlYWNoQm90dG9tIiwiZ2V0SGFsbE9yZGVycyIsImNvbXB1dGVkIiwibWFwU3RhdGUiLCJkaXNwbGF5VGFicyIsIm1hcCIsInRhYiIsImNvdW50IiwiZ3JhYmJlZENvdW50IiwiZGVsaXZlcmluZ0NvdW50IiwiY3VycmVudE9yZGVyTGlzdCIsIm9yZGVyTWFwIiwiaGFsbCIsInBpY2t1cCIsImRlbGl2ZXJpbmciLCJib2R5U3R5bGUiLCJtYXJnaW5Ub3AiLCJoZWlnaHQiLCJvblJlYWR5IiwiaW5pdFRUUyIsIm1ldGhvZHMiLCJmb3JtYXRSZW1haW5UaW1lIiwibWludXRlcyIsInRvRml4ZWQiLCJuYXZpZ2F0ZVRvQWRkcmVzcyIsIml0ZW0iLCJ0eXBlIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJuYW1lIiwiYWRkcmVzcyIsImRlcG9zaXRMYXQiLCJkZXBvc2l0TG5nIiwiZGVwb3NpdFNob3BOYW1lIiwiZGVwb3NpdFNob3BBZGRyZXNzIiwidGFrZUxhdCIsInRha2VMbmciLCJ0YWtlTmFtZSIsInRha2VBZGRyZXNzIiwic2hvd1RvYXN0IiwiaWNvbiIsIm9wZW5Mb2NhdGlvbiIsInN1Y2Nlc3MiLCJmYWlsIiwiZXJyIiwiaGFuZGxlVXNlckNsaWNrIiwibmF2aWdhdGVUbyIsInVybCIsIiR1IiwiYXBpIiwidGhlbiIsInJlcyIsImNvZGUiLCJjYXRjaCIsImhhbmRsZUdyYWJPcmRlciIsImNvbmZpcm1HcmFiT3JkZXIiLCJncmFiT3JkZXIiLCJvcmRlcklkIiwiaWQiLCJtZXNzYWdlIiwiaGFuZGxlQ2FuY2VsT3JkZXIiLCJjYW5jZWxMaW1pdCIsInJlbWFpbiIsImZpbmFsbHkiLCJjb25maXJtQ2FuY2VsT3JkZXIiLCJjYW5jZWxPcmRlciIsImdldFBpY2t1cE9yZGVycyIsImhhbmRsZUNhbGwiLCJjb250YWN0UGhvbmUiLCJtYWtlUGhvbmVDYWxsIiwicGhvbmVOdW1iZXIiLCJoYW5kbGVTaG93UGlja3VwQ29kZSIsImdvVG9PcmRlckRldGFpbCIsImluZGV4IiwiY2VudGVySW5mbyIsImZ1bGxJbWdVcmwiLCJzY29yZSIsInRvZGF5Q29tbWlzc2lvbiIsInRvZGF5T3JkZXJDb3VudCIsImdldENhdGVnb3J5TGlzdCIsImZvckVhY2giLCJzZWN0aW9uIiwiZ2V0RGVsaXZlcmluZ09yZGVycyIsImRpc3RhbmNlVGV4dCIsImluY2x1ZGVzIiwicGFyc2VJbnQiLCJzb3J0VHlwZU1hcCIsInNvcnRUeXBlIiwiZ3JhZGVJZCIsInNlbGVjdGVkQ2F0ZWdvcnkiLCJmaW5kIiwiZ3JhYk9yZGVySGFsbCIsImNhcGFjaXR5IiwicGFnZSIsIm1vZGVsIiwibGlzdCIsInJlY29yZHMiLCJjb25jYXQiLCJsZW5ndGgiLCJhY3RpdmVPcmRlcnMiLCJzdGF0dXMiLCJvcGVuU3RhdHVzUGlja2VyIiwiY29uZmlybVN0YXR1cyIsImUiLCJzZWxlY3RlZFZhbHVlIiwidXBkYXRlQWNjZXB0aW5nU3RhdHVzIiwidG9Ecml2ZXJDZXJ0aWZpY2F0aW9uIiwidG9nZ2xlRmlsdGVyUG9wdXAiLCJzZWxlY3RGaWx0ZXIiLCJvcHRpb24iLCJyZXNldEZpbHRlcnMiLCJjb25maXJtRmlsdGVycyIsInBsYXRmb3JtIiwiVGV4dFRvU3BlZWNoIiwicGx1cyIsImFuZHJvaWQiLCJpbXBvcnRDbGFzcyIsIkxvY2FsZSIsInJ1bnRpbWVNYWluQWN0aXZpdHkiLCJvbkluaXQiLCJzZXRMYW5ndWFnZSIsIkNISU5BIiwic3BlYWsiLCJzdG9wU3BlYWsiLCJzdG9wIiwib25VbmxvYWQiLCJzaHV0ZG93biJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBNlBBO0FBQStCO0FBQUE7QUFBQSxlQUNoQjtFQUNkQSxJQUFJLGtCQUFHO0lBQ04sT0FBTztNQUNOQyxHQUFHLEVBQUUsSUFBSTtNQUNUQyxJQUFJLEVBQUUsS0FBSztNQUNYQyxLQUFLLEVBQUUsS0FBSztNQUNaQyxhQUFhLEVBQUUsS0FBSztNQUNwQkMsaUJBQWlCLEVBQUUsSUFBSTtNQUN2QkMsbUJB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QUNELENBQUMsQ0FBQztNQUNILENBQUMsQ0FBQyxPQUFPbEIsQ0FBQyxFQUFFO1FBQ1gsYUFBWSxPQUFPLEVBQUVBLENBQUM7TUFDdkI7SUFDRCxDQUFDO0lBRURtQixLQUFLLGlCQUFDeEssSUFBSSxFQUFFO01BQ1gsSUFBSSxDQUFDLElBQUksQ0FBQ2xCLEdBQUcsRUFBRTtRQUNkaUQsR0FBRyxDQUFDc0QsU0FBUyxDQUFDO1VBQ2I5RSxLQUFLLEVBQUUsUUFBUTtVQUNmK0UsSUFBSSxFQUFFO1FBQ1AsQ0FBQyxDQUFDO1FBQ0Y7TUFDRDtNQUVBLElBQUk7UUFDSDtRQUNBLElBQUksQ0FBQ3hHLEdBQUcsQ0FBQzBMLEtBQUssQ0FBQ3hLLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDO01BQzlCLENBQUMsQ0FBQyxPQUFPMEYsR0FBRyxFQUFFO1FBQ2IsYUFBWSxNQUFNLEVBQUVBLEdBQUc7TUFDeEI7SUFDRCxDQUFDO0lBRUQrRSxTQUFTLHVCQUFHO01BQ1gsSUFBSSxJQUFJLENBQUMzTCxHQUFHLEVBQUUsSUFBSSxDQUFDQSxHQUFHLENBQUM0TCxJQUFJLEVBQUU7SUFDOUI7RUFDRCxDQUFDO0VBRURDLFFBQVEsc0JBQUc7SUFDVixJQUFJLElBQUksQ0FBQzdMLEdBQUcsRUFBRTtNQUNiLElBQUksQ0FBQ0EsR0FBRyxDQUFDNEwsSUFBSSxFQUFFO01BQ2YsSUFBSSxDQUFDNUwsR0FBRyxDQUFDOEwsUUFBUSxFQUFFO0lBQ3BCO0VBQ0Q7QUFDRCxDQUFDO0FBQUEsMkIiLCJmaWxlIjoiOTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG5cbmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCdcbmV4cG9ydCBkZWZhdWx0IHtcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0dHRzOiBudWxsLFxuXHRcdFx0c2hvdzogZmFsc2UsXG5cdFx0XHRzaG93MTogZmFsc2UsXG5cdFx0XHRzaG93R3JhYk1vZGFsOiBmYWxzZSxcblx0XHRcdHNlbGVjdGVkR3JhYk9yZGVyOiBudWxsLFxuXHRcdFx0c2VsZWN0ZWRDYW5jZWxPcmRlcjogbnVsbCxcblx0XHRcdGNhbmNlbFJlbWFpbjogMCxcblx0XHRcdHNlbGVjdGVkUGlja3VwT3JkZXI6IG51bGwsXG5cdFx0XHRzaG93UGhvdG9EZWxpdmVyUG9wdXA6IGZhbHNlLFxuXHRcdFx0cm91dGVJbmZvOiBudWxsLFxuXHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0aGVhZGVySGVpZ2h0OiAwLFxuXHRcdFx0dGFiYmFySGVpZ2h0OiAwLFxuXHRcdFx0c2Nyb2xsSGVpZ2h0OiAwLFxuXHRcdFx0c2hvd0ZpbHRlclBvcHVwOiBmYWxzZSxcblx0XHRcdGFjY2VwdGluZ1N0YXR1czogMCxcblx0XHRcdHNob3dTdGF0dXNQaWNrZXI6IGZhbHNlLFxuXHRcdFx0c3RhdHVzT3B0aW9uczogW1xuXHRcdFx0XHR7IHRleHQ6ICfkuIrnur8nLCB2YWx1ZTogMSB9LFxuXHRcdFx0XHR7IHRleHQ6ICfkuIvnur8nLCB2YWx1ZTogMCB9XG5cdFx0XHRdLFxuXHRcdFx0Y2VudGVyVXNlckluZm86IHt9LFxuXHRcdFx0YWN0aXZlVGFiOiAnaGFsbCcsXG5cdFx0XHRjYXRlZ29yeUxpc3Q6IFtdLFxuXHRcdFx0ZmlsdGVyU2VjdGlvbnM6IFtcblx0XHRcdFx0eyBrZXk6ICdzb3J0JywgdGl0bGU6ICfmjpLluo8nLCBvcHRpb25zOiBbJ+e7vOWQiOaOkuW6jycsICfot53nprvmnIDov5EnXSB9LFxuXHRcdFx0XHR7IGtleTogJ2xldmVsJywgdGl0bGU6ICfnianlk4HnrYnnuqcnLCBvcHRpb25zOiBbJ+S4jemZkCddIH0sXG5cdFx0XHRcdHsga2V5OiAnZGlzdGFuY2UnLCB0aXRsZTogJ+S9jee9ruiMg+WbtCcsIG9wdGlvbnM6IFsn5LiN6ZmQJywgJzUwMG0nLCAnMWttJywgJzJrbScsICcza20nLCAnNGttJywgJzVrbScsICc2a20nLCAnN2ttJ10gfVxuXHRcdFx0XSxcblx0XHRcdHNlbGVjdGVkRmlsdGVyczoge1xuXHRcdFx0XHRzb3J0OiAn57u85ZCI5o6S5bqPJyxcblx0XHRcdFx0bGV2ZWw6ICfkuI3pmZAnLFxuXHRcdFx0XHRkaXN0YW5jZTogJ+S4jemZkCdcblx0XHRcdH0sXG5cdFx0XHRzdGF0czogW1xuXHRcdFx0XHR7IHZhbHVlOiAnLScsIGxhYmVsOiAn5pyN5Yqh5YiGJyB9LFxuXHRcdFx0XHR7IHZhbHVlOiAnLScsIGxhYmVsOiAn5LuK5pel6aKE6K6h5L2j6YeRJyB9LFxuXHRcdFx0XHR7IHZhbHVlOiAnLScsIGxhYmVsOiAn5LuK5pel5o6l5Y2VJyB9XG5cdFx0XHRdLFxuXHRcdFx0dGFiczogW1xuXHRcdFx0XHR7IGxhYmVsOiAn5oqi5Y2V5aSn5Y6FJywgdmFsdWU6ICdoYWxsJyB9LFxuXHRcdFx0XHR7IGxhYmVsOiAn5b6F5Y+W6LSnJywgdmFsdWU6ICdwaWNrdXAnIH0sXG5cdFx0XHRcdHsgbGFiZWw6ICfphY3pgIHkuK0nLCB2YWx1ZTogJ2RlbGl2ZXJpbmcnIH1cblx0XHRcdF0sXG5cdFx0XHRvcmRlckxpc3Q6IFtdLFxuXHRcdFx0cGlja3VwT3JkZXJMaXN0OiBbXSxcblx0XHRcdGRlbGl2ZXJpbmdPcmRlckxpc3Q6IFtdLFxuXHRcdFx0aGFsbFBhZ2U6IDEsXG5cdFx0XHRoYWxsUGFnZVNpemU6IDEwLFxuXHRcdFx0aGFsbExvYWRpbmc6IGZhbHNlLFxuXHRcdFx0aGFsbEhhc01vcmU6IHRydWUsXG5cdFx0XHRwaWNrdXBMb2FkaW5nOiBmYWxzZSxcblx0XHRcdGRlbGl2ZXJpbmdMb2FkaW5nOiBmYWxzZSxcblx0XHRcdGFjdGl2ZU9yZGVyQ291bnQ6IG51bGxcblx0XHR9XG5cdH0sXG5cblx0d2F0Y2g6IHtcblx0XHRhY3RpdmVUYWIobmV3VmFsKSB7XG5cdFx0XHR0aGlzLmxvYWRPcmRlcnNCeVRhYihuZXdWYWwpXG5cdFx0fVxuXHR9LFxuXG5cdG9uTG9hZCgpIHtcblx0XHRjb25zdCBzeXN0ZW1JbmZvID0gdW5pLmdldFN5c3RlbUluZm9TeW5jKClcblx0XHRjb25zdCBzYWZlQm90dG9tID0gc3lzdGVtSW5mby5zYWZlQXJlYUluc2V0cyA/IHN5c3RlbUluZm8uc2FmZUFyZWFJbnNldHMuYm90dG9tIHx8IDAgOiAwXG5cdFx0Y29uc3Qgd2luZG93SGVpZ2h0ID0gc3lzdGVtSW5mby53aW5kb3dIZWlnaHQgfHwgMFxuXHRcdHRoaXMuc3RhdHVzQmFySGVpZ2h0ID0gc3lzdGVtSW5mby5zdGF0dXNCYXJIZWlnaHQgfHwgMFxuXHRcdHRoaXMuaGVhZGVySGVpZ2h0ID0gdGhpcy5zdGF0dXNCYXJIZWlnaHQgKyB1bmkudXB4MnB4KDMwOClcblx0XHR0aGlzLnRhYmJhckhlaWdodCA9IHVuaS51cHgycHgoMTAwKSArIHNhZmVCb3R0b21cblx0XHR0aGlzLnNjcm9sbEhlaWdodCA9IE1hdGgubWF4KHdpbmRvd0hlaWdodCAtIHRoaXMuaGVhZGVySGVpZ2h0LCAwKVxuXHRcdGlmICh0aGlzLnVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OSkgcmV0dXJuO1xuXHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gdGhpcy51c2VySW5mby5hY2NlcHRpbmdTdGF0dXMgfHwgMFxuXHRcdHRoaXMubG9hZE9yZGVyc0J5VGFiKHRoaXMuYWN0aXZlVGFiKVxuXHR9LFxuXG5cdG9uU2hvdygpIHtcblx0XHR0aGlzLmdldENlbnRlckluZm8oKVxuXHRcdHRoaXMuZ2V0Q2F0ZWdvcnlMaXN0RGF0YSgpXG5cdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0fSxcblxuXHRvblJlYWNoQm90dG9tKCkge1xuXHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2hhbGwnKSB7XG5cdFx0XHR0aGlzLmhhbGxQYWdlKytcblx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0fVxuXHR9LFxuXG5cdGNvbXB1dGVkOiB7XG5cdFx0Li4ubWFwU3RhdGUoWyd1c2VySW5mbycsICd0b2tlbiddKSxcblxuXHRcdGRpc3BsYXlUYWJzKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMudGFicy5tYXAodGFiID0+IHtcblx0XHRcdFx0aWYgKHRhYi52YWx1ZSA9PT0gJ3BpY2t1cCcpIHtcblx0XHRcdFx0XHRyZXR1cm4geyAuLi50YWIsIGNvdW50OiB0aGlzLmFjdGl2ZU9yZGVyQ291bnQ/LmdyYWJiZWRDb3VudCB9XG5cdFx0XHRcdH0gZWxzZSBpZiAodGFiLnZhbHVlID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHRyZXR1cm4geyAuLi50YWIsIGNvdW50OiB0aGlzLmFjdGl2ZU9yZGVyQ291bnQ/LmRlbGl2ZXJpbmdDb3VudCB9XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIHRhYlxuXHRcdFx0fSlcblx0XHR9LFxuXHRcdFxuXHRcdGN1cnJlbnRPcmRlckxpc3QoKSB7XG5cdFx0XHRjb25zdCBvcmRlck1hcCA9IHtcblx0XHRcdFx0aGFsbDogdGhpcy5vcmRlckxpc3QsXG5cdFx0XHRcdHBpY2t1cDogdGhpcy5waWNrdXBPcmRlckxpc3QsXG5cdFx0XHRcdGRlbGl2ZXJpbmc6IHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdFxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gb3JkZXJNYXBbdGhpcy5hY3RpdmVUYWJdIHx8IFtdXG5cdFx0fSxcblxuXHRcdGJvZHlTdHlsZSgpIHtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdG1hcmdpblRvcDogdGhpcy5oZWFkZXJIZWlnaHQgKyAncHgnLFxuXHRcdFx0XHRoZWlnaHQ6IHRoaXMuc2Nyb2xsSGVpZ2h0ICsgJ3B4J1xuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHRvblJlYWR5KCkge1xuXHRcdHRoaXMuaW5pdFRUUygpIC8vIOmhtemdoua4suafk+WujOaIkOWIneWni+WMluivremfs1xuXHR9LFxuXG5cdG1ldGhvZHM6IHtcblx0XHRmb3JtYXRSZW1haW5UaW1lKG1pbnV0ZXMpIHtcblx0XHRcdGlmICghbWludXRlcykgcmV0dXJuIDBcblx0XHRcdGlmIChtaW51dGVzID49IDYwKSB7XG5cdFx0XHRcdHJldHVybiAobWludXRlcyAvIDYwKS50b0ZpeGVkKDIpICsgJ+Wwj+aXtuWGhSdcblx0XHRcdH1cblx0XHRcdHJldHVybiBtaW51dGVzICsgJ+WIhumSn+WGhSdcblx0XHR9LFxuXG5cdFx0bmF2aWdhdGVUb0FkZHJlc3MoaXRlbSwgdHlwZSkge1xuXHRcdFx0bGV0IGxhdGl0dWRlLCBsb25naXR1ZGUsIG5hbWUsIGFkZHJlc3Ncblx0XHRcdGlmICh0eXBlID09PSAnZGVwb3NpdCcpIHtcblx0XHRcdFx0bGF0aXR1ZGUgPSBpdGVtLmRlcG9zaXRMYXRcblx0XHRcdFx0bG9uZ2l0dWRlID0gaXRlbS5kZXBvc2l0TG5nXG5cdFx0XHRcdG5hbWUgPSBpdGVtLmRlcG9zaXRTaG9wTmFtZVxuXHRcdFx0XHRhZGRyZXNzID0gaXRlbS5kZXBvc2l0U2hvcEFkZHJlc3Ncblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGxhdGl0dWRlID0gaXRlbS50YWtlTGF0XG5cdFx0XHRcdGxvbmdpdHVkZSA9IGl0ZW0udGFrZUxuZ1xuXHRcdFx0XHRuYW1lID0gaXRlbS50YWtlTmFtZVxuXHRcdFx0XHRhZGRyZXNzID0gaXRlbS50YWtlQWRkcmVzc1xuXHRcdFx0fVxuXHRcdFx0aWYgKCFsYXRpdHVkZSB8fCAhbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+WcsOWdgOWdkOagh+e8uuWksScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRyZXR1cm5cblx0XHRcdH1cblx0XHRcdHVuaS5vcGVuTG9jYXRpb24oe1xuXHRcdFx0XHRsYXRpdHVkZSxcblx0XHRcdFx0bG9uZ2l0dWRlLFxuXHRcdFx0XHRuYW1lLFxuXHRcdFx0XHRhZGRyZXNzLFxuXHRcdFx0XHRzdWNjZXNzOiAoKSA9PiB7fSxcblx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+aJk+W8gOWcsOWbvuWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ29wZW5Mb2NhdGlvbiBmYWlsOicsIGVycilcblx0XHRcdFx0fVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0aGFuZGxlVXNlckNsaWNrKCkge1xuXHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHR1cmw6ICcvcGFnZXMvdGVzdC90ZXN0J1xuXHRcdFx0fSlcblx0XHR9LFxuXHRcdGdldEFjdGl2ZU9yZGVyQ291bnQoKSB7XG5cdFx0XHR0aGlzLiR1LmFwaS5hY3RpdmVPcmRlckNvdW50KCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMuYWN0aXZlT3JkZXJDb3VudCA9IHJlcy5kYXRhXG5cdFx0XHRcdH1cblx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0dGhpcy5hY3RpdmVPcmRlckNvdW50ID0gbnVsbFxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0aGFuZGxlR3JhYk9yZGVyKGl0ZW0pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIgPSBpdGVtXG5cdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSB0cnVlXG5cdFx0fSxcblxuXHRcdGNvbmZpcm1HcmFiT3JkZXIoKSB7XG5cdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIpIHJldHVyblxuXHRcdFx0dGhpcy4kdS5hcGkuZ3JhYk9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZEdyYWJPcmRlci5pZCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvd0dyYWJNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5oqi5Y2V5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pXG5cdFx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlT3JkZXJDb3VudCgpXG5cdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICfmiqLljZXlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0fVxuXHRcdFx0fSkuY2F0Y2goKCkgPT4ge1xuXHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0aGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSkge1xuXHRcdFx0dGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyID0gaXRlbVxuXHRcdFx0dGhpcy4kdS5hcGkuY2FuY2VsTGltaXQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dGhpcy5jYW5jZWxSZW1haW4gPSByZXMuZGF0YS5yZW1haW5cblx0XHRcdFx0fVxuXHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvdyA9IHRydWVcblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdGNvbmZpcm1DYW5jZWxPcmRlcigpIHtcblx0XHRcdGlmICghdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyKSByZXR1cm5cblx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0dGhpcy5zaG93ID0gZmFsc2Vcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflj5bmtojmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogcmVzLm1lc3NhZ2UgfHwgJ+WPlua2iOWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHR9XG5cdFx0XHR9KS5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvdyA9IGZhbHNlXG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRoYW5kbGVDYWxsKGl0ZW0pIHtcblx0XHRcdGlmIChpdGVtLmNvbnRhY3RQaG9uZSkge1xuXHRcdFx0XHR1bmkubWFrZVBob25lQ2FsbCh7XG5cdFx0XHRcdFx0cGhvbmVOdW1iZXI6IGl0ZW0uY29udGFjdFBob25lXG5cdFx0XHRcdH0pXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGhhbmRsZVNob3dQaWNrdXBDb2RlKGl0ZW0pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRQaWNrdXBPcmRlciA9IGl0ZW1cblx0XHRcdHRoaXMuc2hvdzEgPSB0cnVlXG5cdFx0fSxcblxuXHRcdGdvVG9PcmRlckRldGFpbChpdGVtLCBpbmRleCkge1xuXHRcdFx0bGV0IHVybCA9IGAvcGFnZXMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbD9pZD0ke2l0ZW0uaWR9YFxuXHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAncGlja3VwJyB8fCB0aGlzLmFjdGl2ZVRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdHVybCArPSBgJmluZGV4PSR7aW5kZXggKyAxfWBcblx0XHRcdH1cblx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHsgdXJsIH0pXG5cdFx0fSxcblxuXHRcdGdldENlbnRlckluZm8oKSB7XG5cdFx0XHR0aGlzLiR1LmFwaS5jZW50ZXJJbmZvKCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gcmVzLmRhdGEuYWNjZXB0aW5nU3RhdHVzXG5cdFx0XHRcdFx0dGhpcy5jZW50ZXJVc2VySW5mbyA9IHtcblx0XHRcdFx0XHRcdGZ1bGxJbWdVcmw6IHJlcy5kYXRhLmZ1bGxJbWdVcmwsXG5cdFx0XHRcdFx0XHRuYW1lOiByZXMuZGF0YS5uYW1lXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRoaXMuc3RhdHMgPSBbXG5cdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS5zY29yZSwgbGFiZWw6ICfmnI3liqHliIYnIH0sXG5cdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS50b2RheUNvbW1pc3Npb24sIGxhYmVsOiAn5LuK5pel6aKE6K6h5L2j6YeRJyB9LFxuXHRcdFx0XHRcdFx0eyB2YWx1ZTogcmVzLmRhdGEudG9kYXlPcmRlckNvdW50LCBsYWJlbDogJ+S7iuaXpeaOpeWNlScgfVxuXHRcdFx0XHRcdF1cblx0XHRcdFx0fVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0Z2V0Q2F0ZWdvcnlMaXN0RGF0YSgpIHtcblx0XHRcdHRoaXMuJHUuYXBpLmdldENhdGVnb3J5TGlzdCh7IHR5cGU6IDMgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMuY2F0ZWdvcnlMaXN0ID0gcmVzLmRhdGEgfHwgW11cblx0XHRcdFx0XHR0aGlzLmZpbHRlclNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XG5cdFx0XHRcdFx0XHRpZiAoc2VjdGlvbi5rZXkgPT09ICdsZXZlbCcpIHtcblx0XHRcdFx0XHRcdFx0c2VjdGlvbi5vcHRpb25zID0gWyfkuI3pmZAnLCAuLi50aGlzLmNhdGVnb3J5TGlzdC5tYXAoaXRlbSA9PiBpdGVtLm5hbWUpXVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdGxvYWRPcmRlcnNCeVRhYih0YWIpIHtcblx0XHRcdGlmICh0aGlzLnVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OSkgcmV0dXJuO1xuXHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRpZiAodGFiID09PSAnaGFsbCcpIHtcblx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0fSBlbHNlIGlmICh0YWIgPT09ICdwaWNrdXAnKSB7XG5cdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0dGhpcy5nZXRQaWNrdXBPcmRlcnMoKVxuXHRcdFx0fSBlbHNlIGlmICh0YWIgPT09ICdkZWxpdmVyaW5nJykge1xuXHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3QgPSBbXVxuXHRcdFx0XHR0aGlzLmdldERlbGl2ZXJpbmdPcmRlcnMoKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRnZXRIYWxsT3JkZXJzKCkge1xuXHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRpZiAodGhpcy5oYWxsTG9hZGluZyB8fCAhdGhpcy5oYWxsSGFzTW9yZSkge1xuXHRcdFx0XHRyZXR1cm5cblx0XHRcdH1cblx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSB0cnVlXG5cblx0XHRcdGxldCBkaXN0YW5jZSA9IG51bGxcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkRmlsdGVycy5kaXN0YW5jZSAhPT0gJ+S4jemZkCcpIHtcblx0XHRcdFx0Y29uc3QgZGlzdGFuY2VUZXh0ID0gdGhpcy5zZWxlY3RlZEZpbHRlcnMuZGlzdGFuY2Vcblx0XHRcdFx0aWYgKGRpc3RhbmNlVGV4dC5pbmNsdWRlcygna20nKSkge1xuXHRcdFx0XHRcdGRpc3RhbmNlID0gcGFyc2VJbnQoZGlzdGFuY2VUZXh0KSAqIDEwMDBcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRkaXN0YW5jZSA9IHBhcnNlSW50KGRpc3RhbmNlVGV4dClcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRjb25zdCBzb3J0VHlwZU1hcCA9IHtcblx0XHRcdFx0J+e7vOWQiOaOkuW6jyc6IDEsXG5cdFx0XHRcdCfot53nprvmnIDov5EnOiAyXG5cdFx0XHR9XG5cdFx0XHRjb25zdCBzb3J0VHlwZSA9IHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLnNvcnQgIT09ICfkuI3pmZAnID8gKHNvcnRUeXBlTWFwW3RoaXMuc2VsZWN0ZWRGaWx0ZXJzLnNvcnRdIHx8IG51bGwpIDogbnVsbFxuXG5cdFx0XHRsZXQgZ3JhZGVJZCA9IG51bGxcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkRmlsdGVycy5sZXZlbCAhPT0gJ+S4jemZkCcpIHtcblx0XHRcdFx0Y29uc3Qgc2VsZWN0ZWRDYXRlZ29yeSA9IHRoaXMuY2F0ZWdvcnlMaXN0LmZpbmQoaXRlbSA9PiBpdGVtLm5hbWUgPT09IHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLmxldmVsKVxuXHRcdFx0XHRpZiAoc2VsZWN0ZWRDYXRlZ29yeSkge1xuXHRcdFx0XHRcdGdyYWRlSWQgPSBzZWxlY3RlZENhdGVnb3J5LmlkXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Y29uc29sZS5sb2coJ+aOpeWNleWkp+WOhTonLCB7IGRpc3RhbmNlLCBncmFkZUlkLCBzb3J0VHlwZSB9KVxuXHRcdFx0dGhpcy4kdS5hcGkuZ3JhYk9yZGVySGFsbCh7XG5cdFx0XHRcdGNhcGFjaXR5OiB0aGlzLmhhbGxQYWdlU2l6ZSxcblx0XHRcdFx0cGFnZTogdGhpcy5oYWxsUGFnZSxcblx0XHRcdFx0bW9kZWw6IHtcblx0XHRcdFx0XHRkaXN0YW5jZTogZGlzdGFuY2UsXG5cdFx0XHRcdFx0Z3JhZGVJZDogZ3JhZGVJZCxcblx0XHRcdFx0XHRzb3J0VHlwZTogc29ydFR5cGVcblx0XHRcdFx0fVxuXHRcdFx0fSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5o6l5Y2V5aSn5Y6FJywgcmVzKVxuXHRcdFx0XHR0aGlzLmhhbGxMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRjb25zdCBsaXN0ID0gcmVzLmRhdGEucmVjb3JkcyB8fCBbXVxuXHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gdGhpcy5oYWxsUGFnZSA9PT0gMSA/IGxpc3QgOiB0aGlzLm9yZGVyTGlzdC5jb25jYXQobGlzdClcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gbGlzdC5sZW5ndGggPj0gdGhpcy5oYWxsUGFnZVNpemVcblx0XHRcdFx0fVxuXHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHR0aGlzLmhhbGxMb2FkaW5nID0gZmFsc2Vcblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdGdldFBpY2t1cE9yZGVycygpIHtcblx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0aWYgKHRoaXMucGlja3VwTG9hZGluZykgcmV0dXJuXG5cdFx0XHR0aGlzLnBpY2t1cExvYWRpbmcgPSB0cnVlXG5cdFx0XHR0aGlzLiR1LmFwaS5hY3RpdmVPcmRlcnMoeyBzdGF0dXM6IDMgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5b6F5Y+W6LSnOicsIHJlcylcblx0XHRcdFx0dGhpcy5waWNrdXBMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHR0aGlzLnBpY2t1cE9yZGVyTGlzdCA9IHJlcy5kYXRhLnJlY29yZHMgfHwgcmVzLmRhdGEgfHwgW11cblx0XHRcdFx0fVxuXHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHR0aGlzLnBpY2t1cExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0Z2V0RGVsaXZlcmluZ09yZGVycygpIHtcblx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0aWYgKHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcpIHJldHVyblxuXHRcdFx0dGhpcy5kZWxpdmVyaW5nTG9hZGluZyA9IHRydWVcblx0XHRcdHRoaXMuJHUuYXBpLmFjdGl2ZU9yZGVycyh7IHN0YXR1czogNCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCfphY3pgIHkuK06JywgcmVzKVxuXHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3QgPSByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHR9XG5cdFx0XHR9KS5jYXRjaCgoZXJyKSA9PiB7XG5cdFx0XHRcdHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcgPSBmYWxzZVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0b3BlblN0YXR1c1BpY2tlcigpIHtcblx0XHRcdHRoaXMuc2hvd1N0YXR1c1BpY2tlciA9IHRydWVcblx0XHR9LFxuXG5cdFx0Y29uZmlybVN0YXR1cyhlKSB7XG5cdFx0XHR0aGlzLnNob3dTdGF0dXNQaWNrZXIgPSBmYWxzZVxuXHRcdFx0Y29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IGUudmFsdWVbMF1cblx0XHRcdHRoaXMuJHUuYXBpLnVwZGF0ZUFjY2VwdGluZ1N0YXR1cyh7IHN0YXR1czogc2VsZWN0ZWRWYWx1ZS52YWx1ZSB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dGhpcy5hY2NlcHRpbmdTdGF0dXMgPSBzZWxlY3RlZFZhbHVlLnZhbHVlXG5cdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHtcblx0XHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ3BpY2t1cCcpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5nZXRQaWNrdXBPcmRlcnMoKVxuXHRcdFx0XHRcdFx0fSBlbHNlIGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuZ2V0RGVsaXZlcmluZ09yZGVycygpXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHR0aGlzLmhhbGxQYWdlID0gMVxuXHRcdFx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHR0b0RyaXZlckNlcnRpZmljYXRpb24oKSB7XG5cdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdHVybDogJy9wYWdlcy9kcml2ZXItY2VydGlmaWNhdGlvbi9kcml2ZXItY2VydGlmaWNhdGlvbidcblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdHRvZ2dsZUZpbHRlclBvcHVwKHNob3cpIHtcblx0XHRcdHRoaXMuc2hvd0ZpbHRlclBvcHVwID0gc2hvd1xuXHRcdH0sXG5cblx0XHRzZWxlY3RGaWx0ZXIoa2V5LCBvcHRpb24pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRGaWx0ZXJzID0ge1xuXHRcdFx0XHQuLi50aGlzLnNlbGVjdGVkRmlsdGVycyxcblx0XHRcdFx0W2tleV06IG9wdGlvblxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRyZXNldEZpbHRlcnMoKSB7XG5cdFx0XHR0aGlzLnNob3dGaWx0ZXJQb3B1cCA9IGZhbHNlXG5cdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHJldHVybjtcblx0XHRcdHRoaXMuc2VsZWN0ZWRGaWx0ZXJzID0ge1xuXHRcdFx0XHRzb3J0OiAn57u85ZCI5o6S5bqPJyxcblx0XHRcdFx0bGV2ZWw6ICfkuI3pmZAnLFxuXHRcdFx0XHRkaXN0YW5jZTogJ+S4jemZkCdcblx0XHRcdH1cblx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2hhbGwnKSB7XG5cdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSB0cnVlXG5cdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0Y29uZmlybUZpbHRlcnMoKSB7XG5cdFx0XHR0aGlzLnNob3dGaWx0ZXJQb3B1cCA9IGZhbHNlXG5cdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHtcblx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0cmV0dXJuXG5cdFx0XHR9XG5cdFx0XHRpZiAodGhpcy5hY3RpdmVUYWIgPT09ICdoYWxsJykge1xuXHRcdFx0XHR0aGlzLmhhbGxQYWdlID0gMVxuXHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGluaXRUVFMoKSB7XG5cdFx0XHRpZiAodW5pLmdldFN5c3RlbUluZm9TeW5jKCkucGxhdGZvcm0gIT09ICdhbmRyb2lkJykge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5LuF5pSv5oyB5a6J5Y2TJylcblx0XHRcdFx0cmV0dXJuXG5cdFx0XHR9XG5cblx0XHRcdHRyeSB7XG5cdFx0XHRcdC8vIOWvvOWFpeWuieWNk+WOn+eUn+exu1xuXHRcdFx0XHRjb25zdCBUZXh0VG9TcGVlY2ggPSBwbHVzLmFuZHJvaWQuaW1wb3J0Q2xhc3MoJ2FuZHJvaWQuc3BlZWNoLnR0cy5UZXh0VG9TcGVlY2gnKVxuXHRcdFx0XHRjb25zdCBMb2NhbGUgPSBwbHVzLmFuZHJvaWQuaW1wb3J0Q2xhc3MoJ2phdmEudXRpbC5Mb2NhbGUnKVxuXG5cdFx0XHRcdC8vIOWIm+W7ulRUU1xuXHRcdFx0XHR0aGlzLnR0cyA9IG5ldyBUZXh0VG9TcGVlY2gocGx1cy5hbmRyb2lkLnJ1bnRpbWVNYWluQWN0aXZpdHkoKSwge1xuXHRcdFx0XHRcdG9uSW5pdDogKHN0YXR1cykgPT4ge1xuXHRcdFx0XHRcdFx0aWYgKHN0YXR1cyA9PSAwKSB7XG5cdFx0XHRcdFx0XHRcdC8vIOiuvue9ruS4reaWh1xuXHRcdFx0XHRcdFx0XHR0aGlzLnR0cy5zZXRMYW5ndWFnZShMb2NhbGUuQ0hJTkEpXG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfor63pn7PliJ3lp4vljJbmiJDlip8nKVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0Y29uc29sZS5sb2coJ+WIneWni+WMluWksei0pScsIGUpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdHNwZWFrKHRleHQpIHtcblx0XHRcdGlmICghdGhpcy50dHMpIHtcblx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0dGl0bGU6ICfor63pn7PmnKrlh4blpIflpb0nLFxuXHRcdFx0XHRcdGljb246ICdub25lJ1xuXHRcdFx0XHR9KVxuXHRcdFx0XHRyZXR1cm5cblx0XHRcdH1cblxuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Ly8g5a6J5Y2T5Y6f55Sf5pKt5oql77yIUVVFVUVfRkxVU0ggPSDnq4vljbPmkq3miqXvvIzmiZPmlq3kuIrkuIDmnaHvvIlcblx0XHRcdFx0dGhpcy50dHMuc3BlYWsodGV4dCwgMCwgbnVsbClcblx0XHRcdH0gY2F0Y2ggKGVycikge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5pKt5oql5aSx6LSlJywgZXJyKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRzdG9wU3BlYWsoKSB7XG5cdFx0XHRpZiAodGhpcy50dHMpIHRoaXMudHRzLnN0b3AoKVxuXHRcdH1cblx0fSxcblxuXHRvblVubG9hZCgpIHtcblx0XHRpZiAodGhpcy50dHMpIHtcblx0XHRcdHRoaXMudHRzLnN0b3AoKVxuXHRcdFx0dGhpcy50dHMuc2h1dGRvd24oKVxuXHRcdH1cblx0fVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///92\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 13);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n tts: null,\n show: false,\n show1: false,\n showGrabModal: false,\n selectedGrabOrder: null,\n selectedCancelOrder: null,\n cancelRemain: 0,\n selectedPickupOrder: null,\n showPhotoDeliverPopup: false,\n routeInfo: null,\n statusBarHeight: 0,\n headerHeight: 0,\n tabbarHeight: 0,\n scrollHeight: 0,\n showFilterPopup: false,\n acceptingStatus: 0,\n showStatusPicker: false,\n statusOptions: [{\n text: '涓婄嚎',\n value: 1\n }, {\n text: '涓嬬嚎',\n value: 0\n }],\n centerUserInfo: {},\n activeTab: 'hall',\n categoryList: [],\n filterSections: [{\n key: 'sort',\n title: '鎺掑簭',\n options: ['缁煎悎鎺掑簭', '璺濈鏈�杩�']\n }, {\n key: 'level',\n title: '鐗╁搧绛夌骇',\n options: ['涓嶉檺']\n }, {\n key: 'distance',\n title: '浣嶇疆鑼冨洿',\n options: ['涓嶉檺', '500m', '1km', '2km', '3km', '4km', '5km', '6km', '7km']\n }],\n selectedFilters: {\n sort: '缁煎悎鎺掑簭',\n level: '涓嶉檺',\n distance: '涓嶉檺'\n },\n stats: [{\n value: '-',\n label: '鏈嶅姟鍒�'\n }, {\n value: '-',\n label: '浠婃棩棰勮浣i噾'\n }, {\n value: '-',\n label: '浠婃棩鎺ュ崟'\n }],\n tabs: [{\n label: '鎶㈠崟澶у巺',\n value: 'hall'\n }, {\n label: '寰呭彇璐�',\n value: 'pickup'\n }, {\n label: '閰嶉�佷腑',\n value: 'delivering'\n }],\n orderList: [],\n pickupOrderList: [],\n deliveringOrderList: [],\n hallPage: 1,\n hallPageSize: 10,\n hallLoading: false,\n hallHasMore: true,\n pickupLoading: false,\n deliveringLoading: false,\n activeOrderCount: null\n };\n },\n watch: {\n activeTab: function activeTab(newVal) {\n this.loadOrdersByTab(newVal);\n }\n },\n onLoad: function onLoad() {\n var systemInfo = uni.getSystemInfoSync();\n var safeBottom = systemInfo.safeAreaInsets ? systemInfo.safeAreaInsets.bottom || 0 : 0;\n var windowHeight = systemInfo.windowHeight || 0;\n this.statusBarHeight = systemInfo.statusBarHeight || 0;\n this.headerHeight = this.statusBarHeight + uni.upx2px(308);\n this.tabbarHeight = uni.upx2px(100) + safeBottom;\n this.scrollHeight = Math.max(windowHeight - this.headerHeight, 0);\n if (this.userInfo.auditStatus === 99) return;\n this.acceptingStatus = this.userInfo.acceptingStatus || 0;\n this.loadOrdersByTab(this.activeTab);\n },\n onShow: function onShow() {\n this.getCenterInfo();\n this.getCategoryListData();\n this.getActiveOrderCount();\n },\n onReachBottom: function onReachBottom() {\n if (this.acceptingStatus === 0) return;\n if (this.activeTab === 'hall') {\n this.hallPage++;\n this.getHallOrders();\n }\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])), {}, {\n displayTabs: function displayTabs() {\n var _this = this;\n return this.tabs.map(function (tab) {\n if (tab.value === 'pickup') {\n var _this$activeOrderCoun;\n return _objectSpread(_objectSpread({}, tab), {}, {\n count: (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount\n });\n } else if (tab.value === 'delivering') {\n var _this$activeOrderCoun2;\n return _objectSpread(_objectSpread({}, tab), {}, {\n count: (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount\n });\n }\n return tab;\n });\n },\n currentOrderList: function currentOrderList() {\n var orderMap = {\n hall: this.orderList,\n pickup: this.pickupOrderList,\n delivering: this.deliveringOrderList\n };\n return orderMap[this.activeTab] || [];\n },\n bodyStyle: function bodyStyle() {\n return {\n marginTop: this.headerHeight + 'px',\n height: this.scrollHeight + 'px'\n };\n }\n }),\n onReady: function onReady() {\n this.initTTS(); // 椤甸潰娓叉煋瀹屾垚鍒濆鍖栬闊砛n },\n\n methods: {\n formatRemainTime: function formatRemainTime(minutes) {\n if (!minutes) return 0;\n if (minutes >= 60) {\n return (minutes / 60).toFixed(2) + '灏忔椂鍐�';\n }\n return minutes + '鍒嗛挓鍐�';\n },\n navigateToAddress: function navigateToAddress(item, type) {\n var latitude, longitude, name, address;\n if (type === 'deposit') {\n latitude = item.depositLat;\n longitude = item.depositLng;\n name = item.depositShopName;\n address = item.depositShopAddress;\n } else {\n latitude = item.takeLat;\n longitude = item.takeLng;\n name = item.takeName;\n address = item.takeAddress;\n }\n if (!latitude || !longitude) {\n uni.showToast({\n title: '鍦板潃鍧愭爣缂哄け',\n icon: 'none'\n });\n return;\n }\n uni.openLocation({\n latitude: latitude,\n longitude: longitude,\n name: name,\n address: address,\n success: function success() {},\n fail: function fail(err) {\n uni.showToast({\n title: '鎵撳紑鍦板浘澶辫触',\n icon: 'none'\n });\n __f__(\"error\", 'openLocation fail:', err, \" at pages/index/index.vue:418\");\n }\n });\n },\n handleUserClick: function handleUserClick() {\n uni.navigateTo({\n url: '/pages/test/test'\n });\n },\n getActiveOrderCount: function getActiveOrderCount() {\n var _this2 = this;\n this.$u.api.activeOrderCount().then(function (res) {\n if (res.code === 200) {\n _this2.activeOrderCount = res.data;\n }\n }).catch(function (err) {\n _this2.activeOrderCount = null;\n });\n },\n handleGrabOrder: function handleGrabOrder(item) {\n this.selectedGrabOrder = item;\n this.showGrabModal = true;\n },\n confirmGrabOrder: function confirmGrabOrder() {\n var _this3 = this;\n if (!this.selectedGrabOrder) return;\n this.$u.api.grabOrder({\n orderId: this.selectedGrabOrder.id\n }).then(function (res) {\n _this3.showGrabModal = false;\n if (res.code === 200) {\n uni.showToast({\n title: '鎶㈠崟鎴愬姛',\n icon: 'success'\n });\n _this3.hallPage = 1;\n _this3.hallHasMore = true;\n _this3.orderList = [];\n _this3.getHallOrders();\n _this3.getActiveOrderCount();\n _this3.getCenterInfo();\n } else {\n uni.showToast({\n title: res.message || '鎶㈠崟澶辫触',\n icon: 'none'\n });\n }\n }).catch(function () {\n _this3.showGrabModal = false;\n });\n },\n handleCancelOrder: function handleCancelOrder(item) {\n var _this4 = this;\n this.selectedCancelOrder = item;\n this.$u.api.cancelLimit().then(function (res) {\n if (res.code === 200) {\n _this4.cancelRemain = res.data.remain;\n }\n }).finally(function () {\n _this4.show = true;\n });\n },\n confirmCancelOrder: function confirmCancelOrder() {\n var _this5 = this;\n if (!this.selectedCancelOrder) return;\n this.$u.api.cancelOrder({\n orderId: this.selectedCancelOrder.id\n }).then(function (res) {\n _this5.show = false;\n if (res.code === 200) {\n uni.showToast({\n title: '鍙栨秷鎴愬姛',\n icon: 'success'\n });\n _this5.getPickupOrders();\n _this5.getCenterInfo();\n _this5.getActiveOrderCount();\n } else {\n uni.showToast({\n title: res.message || '鍙栨秷澶辫触',\n icon: 'none'\n });\n }\n }).catch(function () {\n _this5.show = false;\n });\n },\n handleCall: function handleCall(item) {\n if (item.contactPhone) {\n uni.makePhoneCall({\n phoneNumber: item.contactPhone\n });\n }\n },\n handleShowPickupCode: function handleShowPickupCode(item) {\n this.selectedPickupOrder = item;\n this.show1 = true;\n },\n goToOrderDetail: function goToOrderDetail(item, index) {\n var url = \"/pages/order-detail/order-detail?id=\".concat(item.id);\n if (this.activeTab === 'pickup' || this.activeTab === 'delivering') {\n url += \"&index=\".concat(index + 1);\n }\n uni.navigateTo({\n url: url\n });\n },\n getCenterInfo: function getCenterInfo() {\n var _this6 = this;\n this.$u.api.centerInfo().then(function (res) {\n if (res.code === 200) {\n _this6.acceptingStatus = res.data.acceptingStatus;\n _this6.centerUserInfo = {\n fullImgUrl: res.data.fullImgUrl,\n name: res.data.name\n };\n _this6.stats = [{\n value: res.data.score,\n label: '鏈嶅姟鍒�'\n }, {\n value: res.data.todayCommission,\n label: '浠婃棩棰勮浣i噾'\n }, {\n value: res.data.todayOrderCount,\n label: '浠婃棩鎺ュ崟'\n }];\n }\n });\n },\n getCategoryListData: function getCategoryListData() {\n var _this7 = this;\n this.$u.api.getCategoryList({\n type: 3\n }).then(function (res) {\n if (res.code === 200) {\n _this7.categoryList = res.data || [];\n _this7.filterSections.forEach(function (section) {\n if (section.key === 'level') {\n section.options = ['涓嶉檺'].concat((0, _toConsumableArray2.default)(_this7.categoryList.map(function (item) {\n return item.name;\n })));\n }\n });\n }\n });\n },\n loadOrdersByTab: function loadOrdersByTab(tab) {\n if (this.userInfo.auditStatus === 99) return;\n if (this.acceptingStatus === 0) return;\n if (tab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n } else if (tab === 'pickup') {\n this.pickupOrderList = [];\n this.getPickupOrders();\n } else if (tab === 'delivering') {\n this.deliveringOrderList = [];\n this.getDeliveringOrders();\n }\n },\n getHallOrders: function getHallOrders() {\n var _this8 = this;\n if (this.acceptingStatus === 0) return;\n if (this.hallLoading || !this.hallHasMore) {\n return;\n }\n this.hallLoading = true;\n var distance = null;\n if (this.selectedFilters.distance !== '涓嶉檺') {\n var distanceText = this.selectedFilters.distance;\n if (distanceText.includes('km')) {\n distance = parseInt(distanceText) * 1000;\n } else {\n distance = parseInt(distanceText);\n }\n }\n var sortTypeMap = {\n '缁煎悎鎺掑簭': 1,\n '璺濈鏈�杩�': 2\n };\n var sortType = this.selectedFilters.sort !== '涓嶉檺' ? sortTypeMap[this.selectedFilters.sort] || null : null;\n var gradeId = null;\n if (this.selectedFilters.level !== '涓嶉檺') {\n var selectedCategory = this.categoryList.find(function (item) {\n return item.name === _this8.selectedFilters.level;\n });\n if (selectedCategory) {\n gradeId = selectedCategory.id;\n }\n }\n __f__(\"log\", '鎺ュ崟澶у巺:', {\n distance: distance,\n gradeId: gradeId,\n sortType: sortType\n }, \" at pages/index/index.vue:590\");\n this.$u.api.grabOrderHall({\n capacity: this.hallPageSize,\n page: this.hallPage,\n model: {\n distance: distance,\n gradeId: gradeId,\n sortType: sortType\n }\n }).then(function (res) {\n __f__(\"log\", '鎺ュ崟澶у巺', res, \" at pages/index/index.vue:600\");\n _this8.hallLoading = false;\n if (res.code === 200) {\n var list = res.data.records || [];\n _this8.orderList = _this8.hallPage === 1 ? list : _this8.orderList.concat(list);\n _this8.hallHasMore = list.length >= _this8.hallPageSize;\n }\n }).catch(function (err) {\n _this8.hallLoading = false;\n });\n },\n getPickupOrders: function getPickupOrders() {\n var _this9 = this;\n if (this.acceptingStatus === 0) return;\n if (this.pickupLoading) return;\n this.pickupLoading = true;\n this.$u.api.activeOrders({\n status: 3\n }).then(function (res) {\n __f__(\"log\", '寰呭彇璐�:', res, \" at pages/index/index.vue:617\");\n _this9.pickupLoading = false;\n if (res.code === 200) {\n _this9.pickupOrderList = res.data.records || res.data || [];\n }\n }).catch(function (err) {\n _this9.pickupLoading = false;\n });\n },\n getDeliveringOrders: function getDeliveringOrders() {\n var _this10 = this;\n if (this.acceptingStatus === 0) return;\n if (this.deliveringLoading) return;\n this.deliveringLoading = true;\n this.$u.api.activeOrders({\n status: 4\n }).then(function (res) {\n __f__(\"log\", '閰嶉�佷腑:', res, \" at pages/index/index.vue:632\");\n _this10.deliveringLoading = false;\n if (res.code === 200) {\n _this10.deliveringOrderList = res.data || [];\n }\n }).catch(function (err) {\n _this10.deliveringLoading = false;\n });\n },\n openStatusPicker: function openStatusPicker() {\n this.showStatusPicker = true;\n },\n confirmStatus: function confirmStatus(e) {\n var _this11 = this;\n this.showStatusPicker = false;\n var selectedValue = e.value[0];\n this.$u.api.updateAcceptingStatus({\n status: selectedValue.value\n }).then(function (res) {\n if (res.code === 200) {\n _this11.acceptingStatus = selectedValue.value;\n _this11.getCenterInfo();\n if (_this11.acceptingStatus === 0) {\n _this11.orderList = [];\n _this11.pickupOrderList = [];\n _this11.deliveringOrderList = [];\n } else {\n if (_this11.activeTab === 'pickup') {\n _this11.getPickupOrders();\n } else if (_this11.activeTab === 'delivering') {\n _this11.getDeliveringOrders();\n } else {\n _this11.hallPage = 1;\n _this11.hallHasMore = true;\n _this11.orderList = [];\n _this11.getHallOrders();\n }\n }\n }\n });\n },\n toDriverCertification: function toDriverCertification() {\n uni.navigateTo({\n url: '/pages/driver-certification/driver-certification'\n });\n },\n toggleFilterPopup: function toggleFilterPopup(show) {\n this.showFilterPopup = show;\n },\n selectFilter: function selectFilter(key, option) {\n this.selectedFilters = _objectSpread(_objectSpread({}, this.selectedFilters), {}, (0, _defineProperty2.default)({}, key, option));\n },\n resetFilters: function resetFilters() {\n this.showFilterPopup = false;\n if (this.userInfo.auditStatus === 99) return;\n this.selectedFilters = {\n sort: '缁煎悎鎺掑簭',\n level: '涓嶉檺',\n distance: '涓嶉檺'\n };\n if (this.activeTab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n }\n },\n confirmFilters: function confirmFilters() {\n this.showFilterPopup = false;\n if (this.userInfo.auditStatus === 99) {\n this.hallHasMore = true;\n return;\n }\n if (this.activeTab === 'hall') {\n this.hallPage = 1;\n this.hallHasMore = true;\n this.orderList = [];\n this.getHallOrders();\n }\n },\n initTTS: function initTTS() {\n var _this12 = this;\n if (uni.getSystemInfoSync().platform !== 'android') {\n __f__(\"log\", '浠呮敮鎸佸畨鍗�', \" at pages/index/index.vue:722\");\n return;\n }\n try {\n // 瀵煎叆瀹夊崜鍘熺敓绫籠n var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n var Locale = plus.android.importClass('java.util.Locale');\n\n // 鍒涘缓TTS\n this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n onInit: function onInit(status) {\n if (status == 0) {\n // 璁剧疆涓枃\n _this12.tts.setLanguage(Locale.CHINA);\n __f__(\"log\", '璇煶鍒濆鍖栨垚鍔�', \" at pages/index/index.vue:737\");\n }\n }\n });\n } catch (e) {\n __f__(\"log\", '鍒濆鍖栧け璐�', e, \" at pages/index/index.vue:742\");\n }\n },\n speak: function speak(text) {\n if (!this.tts) {\n uni.showToast({\n title: '璇煶鏈噯澶囧ソ',\n icon: 'none'\n });\n return;\n }\n try {\n // 瀹夊崜鍘熺敓鎾姤锛圦UEUE_FLUSH = 绔嬪嵆鎾姤锛屾墦鏂笂涓�鏉★級\n this.tts.speak(text, 0, null);\n } catch (err) {\n __f__(\"log\", '鎾姤澶辫触', err, \" at pages/index/index.vue:759\");\n }\n },\n stopSpeak: function stopSpeak() {\n if (this.tts) this.tts.stop();\n }\n },\n onUnload: function onUnload() {\n if (this.tts) {\n this.tts.stop();\n this.tts.shutdown();\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 12)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJ0dHMiLCJzaG93Iiwic2hvdzEiLCJzaG93R3JhYk1vZGFsIiwic2VsZWN0ZWRHcmFiT3JkZXIiLCJzZWxlY3RlZENhbmNlbE9yZGVyIiwiY2FuY2VsUmVtYWluIiwic2VsZWN0ZWRQaWNrdXBPcmRlciIsInNob3dQaG90b0RlbGl2ZXJQb3B1cCIsInJvdXRlSW5mbyIsInN0YXR1c0JhckhlaWdodCIsImhlYWRlckhlaWdodCIsInRhYmJhckhlaWdodCIsInNjcm9sbEhlaWdodCIsInNob3dGaWx0ZXJQb3B1cCIsImFjY2VwdGluZ1N0YXR1cyIsInNob3dTdGF0dXNQaWNrZXIiLCJzdGF0dXNPcHRpb25zIiwidGV4dCIsInZhbHVlIiwiY2VudGVyVXNlckluZm8iLCJhY3RpdmVUYWIiLCJjYXRlZ29yeUxpc3QiLCJmaWx0ZXJTZWN0aW9ucyIsImtleSIsInRpdGxlIiwib3B0aW9ucyIsInNlbGVjdGVkRmlsdGVycyIsInNvcnQiLCJsZXZlbCIsImRpc3RhbmNlIiwic3RhdHMiLCJsYWJlbCIsInRhYnMiLCJvcmRlckxpc3QiLCJwaWNrdXBPcmRlckxpc3QiLCJkZWxpdmVyaW5nT3JkZXJMaXN0IiwiaGFsbFBhZ2UiLCJoYWxsUGFnZVNpemUiLCJoYWxsTG9hZGluZyIsImhhbGxIYXNNb3JlIiwicGlja3VwTG9hZGluZyIsImRlbGl2ZXJpbmdMb2FkaW5nIiwiYWN0aXZlT3JkZXJDb3VudCIsIndhdGNoIiwib25Mb2FkIiwib25TaG93Iiwib25SZWFjaEJvdHRvbSIsImNvbXB1dGVkIiwiZGlzcGxheVRhYnMiLCJjb3VudCIsImN1cnJlbnRPcmRlckxpc3QiLCJoYWxsIiwicGlja3VwIiwiZGVsaXZlcmluZyIsImJvZHlTdHlsZSIsIm1hcmdpblRvcCIsImhlaWdodCIsIm9uUmVhZHkiLCJtZXRob2RzIiwiZm9ybWF0UmVtYWluVGltZSIsIm5hdmlnYXRlVG9BZGRyZXNzIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJuYW1lIiwiYWRkcmVzcyIsInVuaSIsImljb24iLCJzdWNjZXNzIiwiZmFpbCIsImhhbmRsZVVzZXJDbGljayIsInVybCIsImdldEFjdGl2ZU9yZGVyQ291bnQiLCJoYW5kbGVHcmFiT3JkZXIiLCJjb25maXJtR3JhYk9yZGVyIiwib3JkZXJJZCIsImhhbmRsZUNhbmNlbE9yZGVyIiwiY29uZmlybUNhbmNlbE9yZGVyIiwiaGFuZGxlQ2FsbCIsInBob25lTnVtYmVyIiwiaGFuZGxlU2hvd1BpY2t1cENvZGUiLCJnb1RvT3JkZXJEZXRhaWwiLCJnZXRDZW50ZXJJbmZvIiwiZnVsbEltZ1VybCIsImdldENhdGVnb3J5TGlzdERhdGEiLCJ0eXBlIiwic2VjdGlvbiIsImxvYWRPcmRlcnNCeVRhYiIsImdldEhhbGxPcmRlcnMiLCJncmFkZUlkIiwic29ydFR5cGUiLCJjYXBhY2l0eSIsInBhZ2UiLCJtb2RlbCIsImdldFBpY2t1cE9yZGVycyIsInN0YXR1cyIsImdldERlbGl2ZXJpbmdPcmRlcnMiLCJvcGVuU3RhdHVzUGlja2VyIiwiY29uZmlybVN0YXR1cyIsInRvRHJpdmVyQ2VydGlmaWNhdGlvbiIsInRvZ2dsZUZpbHRlclBvcHVwIiwic2VsZWN0RmlsdGVyIiwicmVzZXRGaWx0ZXJzIiwiY29uZmlybUZpbHRlcnMiLCJpbml0VFRTIiwib25Jbml0Iiwic3BlYWsiLCJzdG9wU3BlYWsiLCJvblVubG9hZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBNlBBO0FBQUE7QUFBQTtBQUFBLGVBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQyxnQkFDQTtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7TUFBQSxFQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDLGlCQUNBO1FB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SUFFQUM7TUFBQTtNQUNBO01BQ0E7UUFDQTtNQUNBO01BQ0E7TUFFQTtNQUNBO1FBQ0E7UUFDQTtVQUNBMUQ7UUFDQTtVQUNBQTtRQUNBO01BQ0E7TUFFQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO01BRUE7TUFDQTtRQUNBO1VBQUE7UUFBQTtRQUNBO1VBQ0EyRDtRQUNBO01BQ0E7TUFFQTtRQUFBM0Q7UUFBQTJEO1FBQUFDO01BQUE7TUFDQTtRQUNBQztRQUNBQztRQUNBQztVQUNBL0Q7VUFDQTJEO1VBQ0FDO1FBQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtVQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUk7TUFBQTtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQUFDO01BQUE7UUFDQTtRQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFBQTtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQUFEO01BQUE7UUFDQTtRQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUU7TUFDQTtJQUNBO0lBRUFDO01BQUE7TUFDQTtNQUNBO01BQ0E7UUFBQUg7TUFBQTtRQUNBO1VBQ0E7VUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBO1VBQ0E7WUFDQTtjQUNBO1lBQ0E7Y0FDQTtZQUNBO2NBQ0E7Y0FDQTtjQUNBO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFJO01BQ0FqQztRQUNBSztNQUNBO0lBQ0E7SUFFQTZCO01BQ0E7SUFDQTtJQUVBQztNQUNBLHVEQUNBLDZEQUNBN0UsYUFDQTtJQUNBO0lBRUE4RTtNQUNBO01BQ0E7TUFDQTtRQUNBMUU7UUFDQUM7UUFDQUM7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUF5RTtNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFFQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1VBQ0FDO1lBQ0E7Y0FDQTtjQUNBO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUNBO1FBQ0F4QztVQUNBekM7VUFDQTBDO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQXdDO01BQ0E7SUFDQTtFQUNBO0VBRUFDO0lBQ0E7TUFDQTtNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiOTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlXCI+XG5cdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX2hlYWRlclwiIDpzdHlsZT1cInsgcGFkZGluZ1RvcDogc3RhdHVzQmFySGVpZ2h0ICsgJ3B4JyB9XCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9fdXNlci1yb3dcIiBAY2xpY2s9XCJoYW5kbGVVc2VyQ2xpY2tcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3VzZXJcIj5cblx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJoYWxsLXBhZ2VfX2F2YXRhclwiIDpzcmM9XCJjZW50ZXJVc2VySW5mby5mdWxsSW1nVXJsIHx8ICcvc3RhdGljL2ltYWdlL2ljX3BpY0AyeC5wbmcnXCIgbW9kZT1cImFzcGVjdEZpbGxcIj48L2ltYWdlPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaGFsbC1wYWdlX19uYW1lXCI+e3sgY2VudGVyVXNlckluZm8ubmFtZSB9fTwvdGV4dD5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9fc3RhdHVzXCIgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAzXCIgQGNsaWNrPVwib3BlblN0YXR1c1BpY2tlclwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0dXMtZG90XCIgOmNsYXNzPVwieyAnaGFsbC1wYWdlX19zdGF0dXMtZG90LS1vZmZsaW5lJzogYWNjZXB0aW5nU3RhdHVzID09PSAwIH1cIj48L3ZpZXc+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJoYWxsLXBhZ2VfX3N0YXR1cy10ZXh0XCI+e3sgYWNjZXB0aW5nU3RhdHVzID09PSAxID8gJ+aOpeWNleS4rScgOiAn5bey5LiL57q/JyB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fc3RhdHVzLWFycm93XCI+4pa8PC90ZXh0PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX191c2VyXCIgc3R5bGU9XCJvcGFjaXR5OiAwO1wiPlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cImhhbGwtcGFnZV9fYXZhdGFyXCIgOnNyYz1cImNlbnRlclVzZXJJbmZvLmZ1bGxJbWdVcmwgfHwgJy9zdGF0aWMvaW1hZ2UvaWNfcGljQDJ4LnBuZydcIiBtb2RlPVwiYXNwZWN0RmlsbFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJoYWxsLXBhZ2VfX25hbWVcIj57eyBjZW50ZXJVc2VySW5mby5uYW1lIH19PC90ZXh0PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0c1wiPlxuXHRcdFx0XHQ8dmlldyB2LWZvcj1cIml0ZW0gaW4gc3RhdHNcIiA6a2V5PVwiaXRlbS5sYWJlbFwiIGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0LWl0ZW1cIj5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fc3RhdC12YWx1ZVwiPnt7IHVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAzID8gaXRlbS52YWx1ZSA6ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fc3RhdC1sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfX08L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblxuXHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3RhYnNcIj5cblx0XHRcdFx0PHZpZXcgdi1mb3I9XCJ0YWIgaW4gZGlzcGxheVRhYnNcIiA6a2V5PVwidGFiLnZhbHVlXCIgY2xhc3M9XCJoYWxsLXBhZ2VfX3RhYlwiIDpjbGFzcz1cInsgJ2hhbGwtcGFnZV9fdGFiLS1hY3RpdmUnOiBhY3RpdmVUYWIgPT09IHRhYi52YWx1ZSB9XCIgQGNsaWNrPVwiYWN0aXZlVGFiID0gdGFiLnZhbHVlXCI+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJoYWxsLXBhZ2VfX3RhYi10ZXh0XCI+e3sgdGFiLmxhYmVsIH19PC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJ0YWIuY291bnRcIiBjbGFzcz1cImhhbGwtcGFnZV9fdGFiLWNvdW50XCI+e3sgdXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDMgPyB0YWIuY291bnQgOiAnJyB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiYWN0aXZlVGFiID09PSB0YWIudmFsdWVcIiBjbGFzcz1cImhhbGwtcGFnZV9fdGFiLWxpbmVcIj48L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cdFxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9fZmlsdGVyXCIgQGNsaWNrPVwidG9nZ2xlRmlsdGVyUG9wdXAodHJ1ZSlcIj5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fZmlsdGVyLXRleHRcIiA6Y2xhc3M9XCJ7ICdoYWxsLXBhZ2VfX2ZpbHRlci10ZXh0LS1hY3RpdmUnOiBzaG93RmlsdGVyUG9wdXAgfVwiPuetm+mAiTwvdGV4dD5cblx0XHRcdFx0XHQ8aW1hZ2UgOnNyYz1cInNob3dGaWx0ZXJQb3B1cCA/ICcvc3RhdGljL2ltYWdlL2ljX3NoYWl4dWFuX3NlbEAyeC5wbmcnIDogJy9zdGF0aWMvaW1hZ2UvaWNfc2hhaXh1YW5AMngucG5nJ1wiIG1vZGU9XCJ3aWR0aEZpeFwiIGNsYXNzPVwiaGFsbC1wYWdlX19maWx0ZXItaWNvblwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8dmlldyB2LWlmPVwic2hvd0ZpbHRlclBvcHVwXCIgY2xhc3M9XCJmaWx0ZXItcG9wdXBcIiA6c3R5bGU9XCJ7IHRvcDogaGVhZGVySGVpZ2h0ICsgJ3B4JywgYm90dG9tOiB0YWJiYXJIZWlnaHQgKyAncHgnIH1cIiBAY2xpY2s9XCJ0b2dnbGVGaWx0ZXJQb3B1cChmYWxzZSlcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiZmlsdGVyLXBvcHVwX19wYW5lbFwiIEBjbGljay5zdG9wPlxuXHRcdFx0XHQ8c2Nyb2xsLXZpZXcgY2xhc3M9XCJmaWx0ZXItcG9wdXBfX2NvbnRlbnRcIiBzY3JvbGwteT5cblx0XHRcdFx0XHQ8dmlldyB2LWZvcj1cInNlY3Rpb24gaW4gZmlsdGVyU2VjdGlvbnNcIiA6a2V5PVwic2VjdGlvbi5rZXlcIiBjbGFzcz1cImZpbHRlci1wb3B1cF9fc2VjdGlvblwiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJmaWx0ZXItcG9wdXBfX3RpdGxlXCI+e3sgc2VjdGlvbi50aXRsZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiZmlsdGVyLXBvcHVwX19vcHRpb25zXCI+XG5cdFx0XHRcdFx0XHRcdDx2aWV3XG5cdFx0XHRcdFx0XHRcdFx0di1mb3I9XCJvcHRpb24gaW4gc2VjdGlvbi5vcHRpb25zXCJcblx0XHRcdFx0XHRcdFx0XHQ6a2V5PVwib3B0aW9uXCJcblx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZpbHRlci1wb3B1cF9fb3B0aW9uXCJcblx0XHRcdFx0XHRcdFx0XHQ6Y2xhc3M9XCJ7ICdmaWx0ZXItcG9wdXBfX29wdGlvbi0tYWN0aXZlJzogc2VsZWN0ZWRGaWx0ZXJzW3NlY3Rpb24ua2V5XSA9PT0gb3B0aW9uIH1cIlxuXHRcdFx0XHRcdFx0XHRcdEBjbGljaz1cInNlbGVjdEZpbHRlcihzZWN0aW9uLmtleSwgb3B0aW9uKVwiXG5cdFx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImZpbHRlci1wb3B1cF9fb3B0aW9uLXRleHRcIj57eyBvcHRpb24gfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvc2Nyb2xsLXZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmaWx0ZXItcG9wdXBfX2FjdGlvbnNcIj5cblx0XHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwiZmlsdGVyLXBvcHVwX19idXR0b24gZmlsdGVyLXBvcHVwX19idXR0b24tLXJlc2V0XCIgaG92ZXItY2xhc3M9XCJmaWx0ZXItcG9wdXBfX2J1dHRvbi0taG92ZXJcIiBAY2xpY2s9XCJyZXNldEZpbHRlcnNcIj7ph43nva48L2J1dHRvbj5cblx0XHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwiZmlsdGVyLXBvcHVwX19idXR0b24gZmlsdGVyLXBvcHVwX19idXR0b24tLWNvbmZpcm1cIiBob3Zlci1jbGFzcz1cImZpbHRlci1wb3B1cF9fYnV0dG9uLS1ob3ZlclwiIEBjbGljaz1cImNvbmZpcm1GaWx0ZXJzXCI+56Gu6K6kPC9idXR0b24+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8c2Nyb2xsLXZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX2JvZHlcIiBzY3JvbGwteSA6c3R5bGU9XCJib2R5U3R5bGVcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX192ZXJpZmllZFwiIHYtaWY9XCJ1c2VySW5mby5hdWRpdFN0YXR1cyAhPT0gM1wiPlxuXHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9kZWZhdWx0X3VudmVyaWZpZWRAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0PGJ1dHRvbiBAY2xpY2s9XCJ0b0RyaXZlckNlcnRpZmljYXRpb25cIj7ljrvorqTor4E8L2J1dHRvbj5cblx0XHRcdDwvdmlldz5cblx0XHRcdDx2aWV3IHYtZWxzZS1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAzICYmIGFjY2VwdGluZ1N0YXR1cyA9PT0gMSAmJiBjdXJyZW50T3JkZXJMaXN0Lmxlbmd0aFwiIGNsYXNzPVwiaGFsbC1wYWdlX19saXN0XCI+XG5cdFx0XHRcdDx2aWV3IHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBjdXJyZW50T3JkZXJMaXN0XCIgOmtleT1cIml0ZW0uaWRcIiBjbGFzcz1cIm9yZGVyLWNhcmRcIiBAY2xpY2s9XCJnb1RvT3JkZXJEZXRhaWwoaXRlbSwgaW5kZXgpXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19oZWFkXCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3RpbWVcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX190aW1lLW1haW5cIj57eyBmb3JtYXRSZW1haW5UaW1lKGl0ZW0ucmVtYWluTWludXRlcykgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fdGltZS1zdWJcIj7pgIHovr48L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiYWN0aXZlVGFiID09PSAnaGFsbCdcIiBjbGFzcz1cIm9yZGVyLWNhcmRfX3ByaWNlLXdyYXBcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19wcmljZVwiPsKle3sgaXRlbS5wbGF0Zm9ybVJld2FyZEFtb3VudCA/IChpdGVtLmRyaXZlckZlZSArIGl0ZW0ucGxhdGZvcm1SZXdhcmRBbW91bnQpIC8gMTAwIDogKGl0ZW0uZHJpdmVyRmVlIC8gMTAwKS50b0ZpeGVkKDIpIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1lbHNlIGNsYXNzPVwib3JkZXItY2FyZF9fcHJpY2Utd3JhcCBvcmRlci1jYXJkX19wcmljZS13cmFwLS1zZXJpYWwtb25seVwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwiaXRlbS5jb2RlXCIgY2xhc3M9XCJvcmRlci1jYXJkX19zZXJpYWxcIj4je3sgaW5kZXggKyAxIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fbWV0YVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX190YWdzXCI+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSB2LWlmPVwiaXRlbS5pc1VyZ2VudCA9PT0gMVwiIGNsYXNzPVwib3JkZXItY2FyZF9fdGFnLWltZ1wiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfamlzdWRhQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSB2LWVsc2UgY2xhc3M9XCJvcmRlci1jYXJkX190YWctaW1nXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19iaWFvc3VkYUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwiaXRlbS5pc1ZhbHVhYmxlID09PSB0cnVlXCIgY2xhc3M9XCJvcmRlci1jYXJkX190YWcgb3JkZXItY2FyZF9fdGFnLS1vcmFuZ2VcIj7otLXph43nianlk4E8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtZWxzZSBjbGFzcz1cIm9yZGVyLWNhcmRfX3RhZyBvcmRlci1jYXJkX190YWctLWJsdWVcIj57eyBpdGVtLmdvb2RMZXZlbE5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwiYWN0aXZlVGFiID09PSAnaGFsbCcgJiYgaXRlbS5wbGF0Zm9ybVJld2FyZEFtb3VudFwiIGNsYXNzPVwib3JkZXItY2FyZF9fZXh0cmFcIj7lkKvliqDmgKXCpXt7IChpdGVtLnBsYXRmb3JtUmV3YXJkQW1vdW50IC8gMTAwKS50b0ZpeGVkKDIpIH19PC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGVcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtc2lkZVwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2Rpc3RhbmNlLXRvcFwiPnt7IGl0ZW0uZGVwb3NpdERpc3RhbmNlIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2xpbmVcIj48L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fZGlzdGFuY2UtYm90dG9tXCI+e3sgaXRlbS50YWtlRGlzdGFuY2UgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLW1haW5cIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10ZXh0c1wiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10aXRsZVwiPnt7IGl0ZW0uZGVwb3NpdFNob3BOYW1lIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS1kZXNjXCI+e3sgaXRlbS5kZXBvc2l0U2hvcEFkZHJlc3MgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2Rhb2hhbmdAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCIgY2xhc3M9XCJvcmRlci1jYXJkX19uYXZcIiBAY2xpY2suc3RvcD1cIm5hdmlnYXRlVG9BZGRyZXNzKGl0ZW0sICdkZXBvc2l0JylcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtaXRlbSBvcmRlci1jYXJkX19yb3V0ZS1pdGVtLS1kZXN0aW5hdGlvblwiPlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGV4dHNcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiaXRlbS50YWtlU2hvcElkXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGl0bGVcIj57eyBpdGVtLnRha2VOYW1lIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWRlc2NcIj57eyBpdGVtLnRha2VBZGRyZXNzIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0PC90ZW1wbGF0ZT5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IHYtZWxzZSBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLXRpdGxlXCI+e3sgaXRlbS50YWtlQWRkcmVzcyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfZGFvaGFuZ0AyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBjbGFzcz1cIm9yZGVyLWNhcmRfX25hdlwiIEBjbGljay5zdG9wPVwibmF2aWdhdGVUb0FkZHJlc3MoaXRlbSwgJ3Rha2UnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2dvb2RzXCIgdi1pZj1cIml0ZW0uaXRlbXMgJiYgaXRlbS5pdGVtcy5sZW5ndGggPiAwXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2dvb2RzLXRleHRcIj57eyBpdGVtLml0ZW1zID8gaXRlbS5pdGVtcy5tYXAoaSA9PiBgJHtpLm5hbWV9KiR7aS5xdWFudGl0eX1gKS5qb2luKCfjgIEnKSA6ICfml6AnIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19nb29kcy1hcnJvd1wiPuKMhDwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbnNcIiA6Y2xhc3M9XCInb3JkZXItY2FyZF9fYWN0aW9ucy0tJyArIGFjdGl2ZVRhYlwiPlxuXHRcdFx0XHRcdFx0PHRlbXBsYXRlIHYtaWY9XCJhY3RpdmVUYWIgPT09ICdwaWNrdXAnXCI+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9faWNvbi1hY3Rpb25zXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19pY29uLWFjdGlvblwiIEBjbGljay5zdG9wPVwiaGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSlcIj5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24taWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2FuY2xlQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24tdGV4dFwiPuWPlua2iDwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19pY29uLWFjdGlvblwiIEBjbGljay5zdG9wPVwiaGFuZGxlQ2FsbChpdGVtKVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uLWljb25cIiBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2NhbGxAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi10ZXh0XCI+6IGU57O7PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwib3JkZXItY2FyZF9fYnV0dG9uIG9yZGVyLWNhcmRfX2J1dHRvbi0tY29kZVwiIGhvdmVyLWNsYXNzPVwib3JkZXItY2FyZF9fYnV0dG9uLS1ob3ZlclwiIEBjbGljay5zdG9wPVwiaGFuZGxlU2hvd1BpY2t1cENvZGUoaXRlbSlcIj7lj5botKfnoIE8L2J1dHRvbj5cblx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHQ8dGVtcGxhdGUgdi1lbHNlLWlmPVwiYWN0aXZlVGFiID09PSAnZGVsaXZlcmluZydcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19pY29uLWFjdGlvbnMgb3JkZXItY2FyZF9faWNvbi1hY3Rpb25zLS1zaW5nbGVcIj5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2ljb24tYWN0aW9uXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVDYWxsKGl0ZW0pXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24taWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2FsbEAyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uLXRleHRcIj7ogZTns7s8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDxidXR0b24gY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b24gb3JkZXItY2FyZF9fYnV0dG9uLS1jb2RlXCIgaG92ZXItY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b24tLWhvdmVyXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVTaG93UGlja3VwQ29kZShpdGVtKVwiPuWtmOS7tueggTwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0PC90ZW1wbGF0ZT5cblx0XHRcdFx0XHRcdDxidXR0b24gdi1lbHNlIGNsYXNzPVwib3JkZXItY2FyZF9fYnV0dG9uXCIgaG92ZXItY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b24tLWhvdmVyXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVHcmFiT3JkZXIoaXRlbSlcIj7nq4vljbPmiqLljZU8L2J1dHRvbj5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblxuXHRcdFx0PHZpZXcgdi1lbHNlIGNsYXNzPVwiaGFsbC1wYWdlX19lbXB0eVwiPlxuXHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJoYWxsLXBhZ2VfX2VtcHR5LWljb25cIiA6c3JjPVwiYWNjZXB0aW5nU3RhdHVzID09PSAwID8gJy9zdGF0aWMvaW1hZ2UvZGVmYXVsdF9ub2RhdGFfZ3JleUAyeC5wbmcnIDogJy9zdGF0aWMvaW1hZ2UvZGVmYXVsdF9ub2RhdGFAMngucG5nJ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvc2Nyb2xsLXZpZXc+XG5cdFx0XG5cdFx0PCEtLSDlj5bmtojorqLljZUgLS0+XG5cdFx0PHUtbW9kYWxcblx0XHRcdDpzaG93PVwic2hvd1wiXG5cdFx0XHRzaG93Q2FuY2VsQnV0dG9uXG5cdFx0XHRAY2FuY2VsPVwic2hvdyA9IGZhbHNlXCJcblx0XHRcdGNhbmNlbENvbG9yPVwiIzY2NjY2NlwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMDA1NUZGXCJcblx0XHRcdHRpdGxlPVwi5Y+W5raI6K6i5Y2V56Gu6K6kXCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybUNhbmNlbE9yZGVyXCI+XG5cdFx0XHQ8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzMzMzMzMztmb250LXNpemU6IDI4cnB4O2ZvbnQtd2VpZ2h0OiA0MDA7XCI+XG5cdFx0XHRcdOaCqOS7iuaXpei/mOWPr+WPlua2iCB7eyBjYW5jZWxSZW1haW4gfX0g5qyh6K6i5Y2V77yM5qyh5pWw55So5bC95ZCO5LuK5pel5bCG5peg5rOV5o6l5Y2V77yM5piv5ZCm56Gu6K6k5Y+W5raI77yfXG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LW1vZGFsPlxuXG5cdFx0PCEtLSDnq4vljbPmiqLljZUgLS0+XG5cdFx0PHUtbW9kYWxcblx0XHRcdDpzaG93PVwic2hvd0dyYWJNb2RhbFwiXG5cdFx0XHRzaG93Q2FuY2VsQnV0dG9uXG5cdFx0XHRAY2FuY2VsPVwic2hvd0dyYWJNb2RhbCA9IGZhbHNlXCJcblx0XHRcdGNhbmNlbENvbG9yPVwiIzY2NjY2NlwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMDA1NUZGXCJcblx0XHRcdHRpdGxlPVwi5rip6aao5o+Q56S6XCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybUdyYWJPcmRlclwiPlxuXHRcdFx0PHZpZXcgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICMzMzMzMzM7Zm9udC1zaXplOiAyOHJweDtmb250LXdlaWdodDogNDAwO1wiPlxuXHRcdFx0XHR7eyBzZWxlY3RlZEdyYWJPcmRlciAmJiBzZWxlY3RlZEdyYWJPcmRlci5oYXNPdmVyc2l6ZWQgPT09IDEgPyAn5pys6K6i5Y2V5pyJ54m55aSn5Lu25bC65a+46KGM5p2O77yM6K+356Gu6K6k5piv5ZCm57un57ut5oqi5Y2V77yfJyA6ICfmmK/lkKbnoa7orqTmjqXljZXvvJ8nIH19XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LW1vZGFsPlxuXHRcdFxuXHRcdDwhLS0g5Y+W6LSn56CBL+WtmOS7tueggSAtLT5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3cxXCIgcm91bmQ9XCIyMFwiIG1vZGU9XCJib3R0b21cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwicXJjb2RlXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicXJjb2RlLXRpdGxlXCI+XG5cdFx0XHRcdFx0PGltYWdlIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2xvc2VAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCIgc3R5bGU9XCJvcGFjaXR5OiAwO1wiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0PHRleHQ+e3sgYWN0aXZlVGFiID09PSAnZGVsaXZlcmluZycgPyAn5a2Y5Lu256CBJyA6ICflj5botKfnoIEnIH19PC90ZXh0PlxuXHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2Nsb3NlQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiIEBjbGljaz1cInNob3cxID0gZmFsc2VcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicXJjb2RlLWltYWdlXCI+XG5cdFx0XHRcdFx0PGltYWdlIHYtaWY9XCJzZWxlY3RlZFBpY2t1cE9yZGVyICYmIHNlbGVjdGVkUGlja3VwT3JkZXIuZHJpdmVyVmVyaWZ5Q29kZVwiIDpzcmM9XCInaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTIwMHgyMDAmZGF0YT0nICsgc2VsZWN0ZWRQaWNrdXBPcmRlci5kcml2ZXJWZXJpZnlDb2RlXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInFyY29kZS1idG5cIiBob3Zlci1jbGFzcz1cInFyY29kZS1idG4tLWhvdmVyXCIgQGNsaWNrPVwic2hvdzEgPSBmYWxzZVwiPuWFs+mXrTwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3dQaG90b0RlbGl2ZXJQb3B1cFwiIHJvdW5kPVwiMjBcIiBtb2RlPVwiYm90dG9tXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19oZWFkZXJcIj5cblx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1kZWxpdmVyX19jbG9zZS1wbGFjZWhvbGRlclwiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fdGl0bGVcIj7mi43nhafpgIHovr48L3RleHQ+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fY2xvc2VcIiBtb2RlPVwiYXNwZWN0Rml0XCIgQGNsaWNrPVwic2hvd1Bob3RvRGVsaXZlclBvcHVwID0gZmFsc2VcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19zZWN0aW9uXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19sYWJlbC1yb3dcIj5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fbGFiZWxcIj7mi43mkYTpgIHovr7nhafniYc8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3JlcXVpcmVkXCI+KjwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9faGludFwiPuacgOWkmjPlvKDnhafniYc8L3RleHQ+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19waG90b3NcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fdXBsb2FkLWNhcmRcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fdXBsb2FkLWljb25cIiBtb2RlPVwiYXNwZWN0Rml0XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1kZWxpdmVyX191cGxvYWQtdGV4dFwiPueCueWHu+aLjeeFpzwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19wcmV2aWV3LWNhcmRcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fcHJldmlldy1pbWFnZVwiIG1vZGU9XCJhc3BlY3RGaWxsXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19wcmV2aWV3LW1hc2tcIj5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3ByZXZpZXctZGVsZXRlXCI+5Yig6ZmkPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX19zZWN0aW9uIHBob3RvLWRlbGl2ZXJfX3NlY3Rpb24tLXJlbWFya1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fcmVtYXJrLXRpdGxlXCI+5aSH5rOo5L+h5oGvPC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0YXJlYSBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3RleHRhcmVhXCIgbWF4bGVuZ3RoPVwiMjAwXCIgcGxhY2Vob2xkZXI9XCLor7fovpPlhaVcIiBwbGFjZWhvbGRlci1zdHlsZT1cImNvbG9yOiAjYzdjYmQzO1wiIC8+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fc3VibWl0XCIgaG92ZXItY2xhc3M9XCJwaG90by1kZWxpdmVyX19zdWJtaXQtLWhvdmVyXCIgQGNsaWNrPVwic2hvd1Bob3RvRGVsaXZlclBvcHVwID0gZmFsc2VcIj7noa7orqTpgIHovr48L2J1dHRvbj5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cblx0XHQ8dS1waWNrZXJcblx0XHRcdDpzaG93PVwic2hvd1N0YXR1c1BpY2tlclwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMTBCMkZBXCJcblx0XHRcdGtleU5hbWU9XCJ0ZXh0XCJcblx0XHRcdDpjb2x1bW5zPVwiW3N0YXR1c09wdGlvbnNdXCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybVN0YXR1c1wiXG5cdFx0XHRAY2FuY2VsPVwic2hvd1N0YXR1c1BpY2tlciA9IGZhbHNlXCIgLz5cblx0PC92aWV3PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0ZGF0YSgpIHtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHR0czogbnVsbCxcblx0XHRcdFx0c2hvdzogZmFsc2UsXG5cdFx0XHRcdHNob3cxOiBmYWxzZSxcblx0XHRcdFx0c2hvd0dyYWJNb2RhbDogZmFsc2UsXG5cdFx0XHRcdHNlbGVjdGVkR3JhYk9yZGVyOiBudWxsLFxuXHRcdFx0XHRzZWxlY3RlZENhbmNlbE9yZGVyOiBudWxsLFxuXHRcdFx0XHRjYW5jZWxSZW1haW46IDAsXG5cdFx0XHRcdHNlbGVjdGVkUGlja3VwT3JkZXI6IG51bGwsXG5cdFx0XHRcdHNob3dQaG90b0RlbGl2ZXJQb3B1cDogZmFsc2UsXG5cdFx0XHRcdHJvdXRlSW5mbzogbnVsbCxcblx0XHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0XHRoZWFkZXJIZWlnaHQ6IDAsXG5cdFx0XHRcdHRhYmJhckhlaWdodDogMCxcblx0XHRcdFx0c2Nyb2xsSGVpZ2h0OiAwLFxuXHRcdFx0XHRzaG93RmlsdGVyUG9wdXA6IGZhbHNlLFxuXHRcdFx0XHRhY2NlcHRpbmdTdGF0dXM6IDAsXG5cdFx0XHRcdHNob3dTdGF0dXNQaWNrZXI6IGZhbHNlLFxuXHRcdFx0XHRzdGF0dXNPcHRpb25zOiBbXG5cdFx0XHRcdFx0eyB0ZXh0OiAn5LiK57q/JywgdmFsdWU6IDEgfSxcblx0XHRcdFx0XHR7IHRleHQ6ICfkuIvnur8nLCB2YWx1ZTogMCB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdGNlbnRlclVzZXJJbmZvOiB7fSxcblx0XHRcdFx0YWN0aXZlVGFiOiAnaGFsbCcsXG5cdFx0XHRcdGNhdGVnb3J5TGlzdDogW10sXG5cdFx0XHRcdGZpbHRlclNlY3Rpb25zOiBbXG5cdFx0XHRcdFx0eyBrZXk6ICdzb3J0JywgdGl0bGU6ICfmjpLluo8nLCBvcHRpb25zOiBbJ+e7vOWQiOaOkuW6jycsICfot53nprvmnIDov5EnXSB9LFxuXHRcdFx0XHRcdHsga2V5OiAnbGV2ZWwnLCB0aXRsZTogJ+eJqeWTgeetiee6pycsIG9wdGlvbnM6IFsn5LiN6ZmQJ10gfSxcblx0XHRcdFx0XHR7IGtleTogJ2Rpc3RhbmNlJywgdGl0bGU6ICfkvY3nva7ojIPlm7QnLCBvcHRpb25zOiBbJ+S4jemZkCcsICc1MDBtJywgJzFrbScsICcya20nLCAnM2ttJywgJzRrbScsICc1a20nLCAnNmttJywgJzdrbSddIH1cblx0XHRcdFx0XSxcblx0XHRcdFx0c2VsZWN0ZWRGaWx0ZXJzOiB7XG5cdFx0XHRcdFx0c29ydDogJ+e7vOWQiOaOkuW6jycsXG5cdFx0XHRcdFx0bGV2ZWw6ICfkuI3pmZAnLFxuXHRcdFx0XHRcdGRpc3RhbmNlOiAn5LiN6ZmQJ1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzdGF0czogW1xuXHRcdFx0XHRcdHsgdmFsdWU6ICctJywgbGFiZWw6ICfmnI3liqHliIYnIH0sXG5cdFx0XHRcdFx0eyB2YWx1ZTogJy0nLCBsYWJlbDogJ+S7iuaXpemihOiuoeS9o+mHkScgfSxcblx0XHRcdFx0XHR7IHZhbHVlOiAnLScsIGxhYmVsOiAn5LuK5pel5o6l5Y2VJyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdHRhYnM6IFtcblx0XHRcdFx0XHR7IGxhYmVsOiAn5oqi5Y2V5aSn5Y6FJywgdmFsdWU6ICdoYWxsJyB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflvoXlj5botKcnLCB2YWx1ZTogJ3BpY2t1cCcgfSxcblx0XHRcdFx0XHR7IGxhYmVsOiAn6YWN6YCB5LitJywgdmFsdWU6ICdkZWxpdmVyaW5nJyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdG9yZGVyTGlzdDogW10sXG5cdFx0XHRcdHBpY2t1cE9yZGVyTGlzdDogW10sXG5cdFx0XHRcdGRlbGl2ZXJpbmdPcmRlckxpc3Q6IFtdLFxuXHRcdFx0XHRoYWxsUGFnZTogMSxcblx0XHRcdFx0aGFsbFBhZ2VTaXplOiAxMCxcblx0XHRcdFx0aGFsbExvYWRpbmc6IGZhbHNlLFxuXHRcdFx0XHRoYWxsSGFzTW9yZTogdHJ1ZSxcblx0XHRcdFx0cGlja3VwTG9hZGluZzogZmFsc2UsXG5cdFx0XHRcdGRlbGl2ZXJpbmdMb2FkaW5nOiBmYWxzZSxcblx0XHRcdFx0YWN0aXZlT3JkZXJDb3VudDogbnVsbFxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHR3YXRjaDoge1xuXHRcdFx0YWN0aXZlVGFiKG5ld1ZhbCkge1xuXHRcdFx0XHR0aGlzLmxvYWRPcmRlcnNCeVRhYihuZXdWYWwpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdG9uTG9hZCgpIHtcblx0XHRcdGNvbnN0IHN5c3RlbUluZm8gPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKVxuXHRcdFx0Y29uc3Qgc2FmZUJvdHRvbSA9IHN5c3RlbUluZm8uc2FmZUFyZWFJbnNldHMgPyBzeXN0ZW1JbmZvLnNhZmVBcmVhSW5zZXRzLmJvdHRvbSB8fCAwIDogMFxuXHRcdFx0Y29uc3Qgd2luZG93SGVpZ2h0ID0gc3lzdGVtSW5mby53aW5kb3dIZWlnaHQgfHwgMFxuXHRcdFx0dGhpcy5zdGF0dXNCYXJIZWlnaHQgPSBzeXN0ZW1JbmZvLnN0YXR1c0JhckhlaWdodCB8fCAwXG5cdFx0XHR0aGlzLmhlYWRlckhlaWdodCA9IHRoaXMuc3RhdHVzQmFySGVpZ2h0ICsgdW5pLnVweDJweCgzMDgpXG5cdFx0XHR0aGlzLnRhYmJhckhlaWdodCA9IHVuaS51cHgycHgoMTAwKSArIHNhZmVCb3R0b21cblx0XHRcdHRoaXMuc2Nyb2xsSGVpZ2h0ID0gTWF0aC5tYXgod2luZG93SGVpZ2h0IC0gdGhpcy5oZWFkZXJIZWlnaHQsIDApXG5cdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHJldHVybjtcblx0XHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gdGhpcy51c2VySW5mby5hY2NlcHRpbmdTdGF0dXMgfHwgMFxuXHRcdFx0dGhpcy5sb2FkT3JkZXJzQnlUYWIodGhpcy5hY3RpdmVUYWIpXG5cdFx0fSxcblxuXHRcdG9uU2hvdygpIHtcblx0XHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0XHR0aGlzLmdldENhdGVnb3J5TGlzdERhdGEoKVxuXHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHR9LFxuXG5cdFx0b25SZWFjaEJvdHRvbSgpIHtcblx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAnaGFsbCcpIHtcblx0XHRcdFx0dGhpcy5oYWxsUGFnZSsrXG5cdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGNvbXB1dGVkOiB7XG5cdFx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJywgJ3Rva2VuJ10pLFxuXG5cdFx0XHRkaXNwbGF5VGFicygpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMudGFicy5tYXAodGFiID0+IHtcblx0XHRcdFx0XHRpZiAodGFiLnZhbHVlID09PSAncGlja3VwJykge1xuXHRcdFx0XHRcdFx0cmV0dXJuIHsgLi4udGFiLCBjb3VudDogdGhpcy5hY3RpdmVPcmRlckNvdW50Py5ncmFiYmVkQ291bnQgfVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAodGFiLnZhbHVlID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHRcdHJldHVybiB7IC4uLnRhYiwgY291bnQ6IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZGVsaXZlcmluZ0NvdW50IH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHRhYlxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdFxuXHRcdFx0Y3VycmVudE9yZGVyTGlzdCgpIHtcblx0XHRcdFx0Y29uc3Qgb3JkZXJNYXAgPSB7XG5cdFx0XHRcdFx0aGFsbDogdGhpcy5vcmRlckxpc3QsXG5cdFx0XHRcdFx0cGlja3VwOiB0aGlzLnBpY2t1cE9yZGVyTGlzdCxcblx0XHRcdFx0XHRkZWxpdmVyaW5nOiB0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3Rcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiBvcmRlck1hcFt0aGlzLmFjdGl2ZVRhYl0gfHwgW11cblx0XHRcdH0sXG5cblx0XHRcdGJvZHlTdHlsZSgpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRtYXJnaW5Ub3A6IHRoaXMuaGVhZGVySGVpZ2h0ICsgJ3B4Jyxcblx0XHRcdFx0XHRoZWlnaHQ6IHRoaXMuc2Nyb2xsSGVpZ2h0ICsgJ3B4J1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdG9uUmVhZHkoKSB7XG5cdFx0XHR0aGlzLmluaXRUVFMoKSAvLyDpobXpnaLmuLLmn5PlrozmiJDliJ3lp4vljJbor63pn7Ncblx0XHR9LFxuXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0Zm9ybWF0UmVtYWluVGltZShtaW51dGVzKSB7XG5cdFx0XHRcdGlmICghbWludXRlcykgcmV0dXJuIDBcblx0XHRcdFx0aWYgKG1pbnV0ZXMgPj0gNjApIHtcblx0XHRcdFx0XHRyZXR1cm4gKG1pbnV0ZXMgLyA2MCkudG9GaXhlZCgyKSArICflsI/ml7blhoUnXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIG1pbnV0ZXMgKyAn5YiG6ZKf5YaFJ1xuXHRcdFx0fSxcblxuXHRcdFx0bmF2aWdhdGVUb0FkZHJlc3MoaXRlbSwgdHlwZSkge1xuXHRcdFx0XHRsZXQgbGF0aXR1ZGUsIGxvbmdpdHVkZSwgbmFtZSwgYWRkcmVzc1xuXHRcdFx0XHRpZiAodHlwZSA9PT0gJ2RlcG9zaXQnKSB7XG5cdFx0XHRcdFx0bGF0aXR1ZGUgPSBpdGVtLmRlcG9zaXRMYXRcblx0XHRcdFx0XHRsb25naXR1ZGUgPSBpdGVtLmRlcG9zaXRMbmdcblx0XHRcdFx0XHRuYW1lID0gaXRlbS5kZXBvc2l0U2hvcE5hbWVcblx0XHRcdFx0XHRhZGRyZXNzID0gaXRlbS5kZXBvc2l0U2hvcEFkZHJlc3Ncblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRsYXRpdHVkZSA9IGl0ZW0udGFrZUxhdFxuXHRcdFx0XHRcdGxvbmdpdHVkZSA9IGl0ZW0udGFrZUxuZ1xuXHRcdFx0XHRcdG5hbWUgPSBpdGVtLnRha2VOYW1lXG5cdFx0XHRcdFx0YWRkcmVzcyA9IGl0ZW0udGFrZUFkZHJlc3Ncblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoIWxhdGl0dWRlIHx8ICFsb25naXR1ZGUpIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflnLDlnYDlnZDmoIfnvLrlpLEnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR1bmkub3BlbkxvY2F0aW9uKHtcblx0XHRcdFx0XHRsYXRpdHVkZSxcblx0XHRcdFx0XHRsb25naXR1ZGUsXG5cdFx0XHRcdFx0bmFtZSxcblx0XHRcdFx0XHRhZGRyZXNzLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6ICgpID0+IHt9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+aJk+W8gOWcsOWbvuWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcignb3BlbkxvY2F0aW9uIGZhaWw6JywgZXJyKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGhhbmRsZVVzZXJDbGljaygpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogJy9wYWdlcy90ZXN0L3Rlc3QnXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QWN0aXZlT3JkZXJDb3VudCgpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuYWN0aXZlT3JkZXJDb3VudCgpLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5hY3RpdmVPcmRlckNvdW50ID0gcmVzLmRhdGFcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZU9yZGVyQ291bnQgPSBudWxsXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRoYW5kbGVHcmFiT3JkZXIoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkR3JhYk9yZGVyID0gaXRlbVxuXHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSB0cnVlXG5cdFx0XHR9LFxuXG5cdFx0XHRjb25maXJtR3JhYk9yZGVyKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIpIHJldHVyblxuXHRcdFx0XHR0aGlzLiR1LmFwaS5ncmFiT3JkZXIoeyBvcmRlcklkOiB0aGlzLnNlbGVjdGVkR3JhYk9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmiqLljZXmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlT3JkZXJDb3VudCgpXG5cdFx0XHRcdFx0XHR0aGlzLmdldENlbnRlckluZm8oKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICfmiqLljZXlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0aGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkQ2FuY2VsT3JkZXIgPSBpdGVtXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbExpbWl0KCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmNhbmNlbFJlbWFpbiA9IHJlcy5kYXRhLnJlbWFpblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93ID0gdHJ1ZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Y29uZmlybUNhbmNlbE9yZGVyKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRDYW5jZWxPcmRlcikgcmV0dXJuXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3cgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflj5bmtojmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuZ2V0UGlja3VwT3JkZXJzKClcblx0XHRcdFx0XHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICflj5bmtojlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3cgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0aGFuZGxlQ2FsbChpdGVtKSB7XG5cdFx0XHRcdGlmIChpdGVtLmNvbnRhY3RQaG9uZSkge1xuXHRcdFx0XHRcdHVuaS5tYWtlUGhvbmVDYWxsKHtcblx0XHRcdFx0XHRcdHBob25lTnVtYmVyOiBpdGVtLmNvbnRhY3RQaG9uZVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdGhhbmRsZVNob3dQaWNrdXBDb2RlKGl0ZW0pIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFBpY2t1cE9yZGVyID0gaXRlbVxuXHRcdFx0XHR0aGlzLnNob3cxID0gdHJ1ZVxuXHRcdFx0fSxcblxuXHRcdFx0Z29Ub09yZGVyRGV0YWlsKGl0ZW0sIGluZGV4KSB7XG5cdFx0XHRcdGxldCB1cmwgPSBgL3BhZ2VzL29yZGVyLWRldGFpbC9vcmRlci1kZXRhaWw/aWQ9JHtpdGVtLmlkfWBcblx0XHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAncGlja3VwJyB8fCB0aGlzLmFjdGl2ZVRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdFx0dXJsICs9IGAmaW5kZXg9JHtpbmRleCArIDF9YFxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHsgdXJsIH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRDZW50ZXJJbmZvKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5jZW50ZXJJbmZvKCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmFjY2VwdGluZ1N0YXR1cyA9IHJlcy5kYXRhLmFjY2VwdGluZ1N0YXR1c1xuXHRcdFx0XHRcdFx0dGhpcy5jZW50ZXJVc2VySW5mbyA9IHtcblx0XHRcdFx0XHRcdFx0ZnVsbEltZ1VybDogcmVzLmRhdGEuZnVsbEltZ1VybCxcblx0XHRcdFx0XHRcdFx0bmFtZTogcmVzLmRhdGEubmFtZVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0dGhpcy5zdGF0cyA9IFtcblx0XHRcdFx0XHRcdFx0eyB2YWx1ZTogcmVzLmRhdGEuc2NvcmUsIGxhYmVsOiAn5pyN5Yqh5YiGJyB9LFxuXHRcdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS50b2RheUNvbW1pc3Npb24sIGxhYmVsOiAn5LuK5pel6aKE6K6h5L2j6YeRJyB9LFxuXHRcdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS50b2RheU9yZGVyQ291bnQsIGxhYmVsOiAn5LuK5pel5o6l5Y2VJyB9XG5cdFx0XHRcdFx0XHRdXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0Q2F0ZWdvcnlMaXN0RGF0YSgpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuZ2V0Q2F0ZWdvcnlMaXN0KHsgdHlwZTogMyB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuY2F0ZWdvcnlMaXN0ID0gcmVzLmRhdGEgfHwgW11cblx0XHRcdFx0XHRcdHRoaXMuZmlsdGVyU2VjdGlvbnMuZm9yRWFjaChzZWN0aW9uID0+IHtcblx0XHRcdFx0XHRcdFx0aWYgKHNlY3Rpb24ua2V5ID09PSAnbGV2ZWwnKSB7XG5cdFx0XHRcdFx0XHRcdFx0c2VjdGlvbi5vcHRpb25zID0gWyfkuI3pmZAnLCAuLi50aGlzLmNhdGVnb3J5TGlzdC5tYXAoaXRlbSA9PiBpdGVtLm5hbWUpXVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGxvYWRPcmRlcnNCeVRhYih0YWIpIHtcblx0XHRcdFx0aWYgKHRoaXMudXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDk5KSByZXR1cm47XG5cdFx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0XHRpZiAodGFiID09PSAnaGFsbCcpIHtcblx0XHRcdFx0XHR0aGlzLmhhbGxQYWdlID0gMVxuXHRcdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSB0cnVlXG5cdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHRcdH0gZWxzZSBpZiAodGFiID09PSAncGlja3VwJykge1xuXHRcdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHRcdH0gZWxzZSBpZiAodGFiID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdHRoaXMuZ2V0RGVsaXZlcmluZ09yZGVycygpXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdGdldEhhbGxPcmRlcnMoKSB7XG5cdFx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0XHRpZiAodGhpcy5oYWxsTG9hZGluZyB8fCAhdGhpcy5oYWxsSGFzTW9yZSkge1xuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSB0cnVlXG5cblx0XHRcdFx0bGV0IGRpc3RhbmNlID0gbnVsbFxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZEZpbHRlcnMuZGlzdGFuY2UgIT09ICfkuI3pmZAnKSB7XG5cdFx0XHRcdFx0Y29uc3QgZGlzdGFuY2VUZXh0ID0gdGhpcy5zZWxlY3RlZEZpbHRlcnMuZGlzdGFuY2Vcblx0XHRcdFx0XHRpZiAoZGlzdGFuY2VUZXh0LmluY2x1ZGVzKCdrbScpKSB7XG5cdFx0XHRcdFx0XHRkaXN0YW5jZSA9IHBhcnNlSW50KGRpc3RhbmNlVGV4dCkgKiAxMDAwXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdGRpc3RhbmNlID0gcGFyc2VJbnQoZGlzdGFuY2VUZXh0KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGNvbnN0IHNvcnRUeXBlTWFwID0ge1xuXHRcdFx0XHRcdCfnu7zlkIjmjpLluo8nOiAxLFxuXHRcdFx0XHRcdCfot53nprvmnIDov5EnOiAyXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29uc3Qgc29ydFR5cGUgPSB0aGlzLnNlbGVjdGVkRmlsdGVycy5zb3J0ICE9PSAn5LiN6ZmQJyA/IChzb3J0VHlwZU1hcFt0aGlzLnNlbGVjdGVkRmlsdGVycy5zb3J0XSB8fCBudWxsKSA6IG51bGxcblxuXHRcdFx0XHRsZXQgZ3JhZGVJZCA9IG51bGxcblx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLmxldmVsICE9PSAn5LiN6ZmQJykge1xuXHRcdFx0XHRcdGNvbnN0IHNlbGVjdGVkQ2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3J5TGlzdC5maW5kKGl0ZW0gPT4gaXRlbS5uYW1lID09PSB0aGlzLnNlbGVjdGVkRmlsdGVycy5sZXZlbClcblx0XHRcdFx0XHRpZiAoc2VsZWN0ZWRDYXRlZ29yeSkge1xuXHRcdFx0XHRcdFx0Z3JhZGVJZCA9IHNlbGVjdGVkQ2F0ZWdvcnkuaWRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRjb25zb2xlLmxvZygn5o6l5Y2V5aSn5Y6FOicsIHsgZGlzdGFuY2UsIGdyYWRlSWQsIHNvcnRUeXBlIH0pXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmdyYWJPcmRlckhhbGwoe1xuXHRcdFx0XHRcdGNhcGFjaXR5OiB0aGlzLmhhbGxQYWdlU2l6ZSxcblx0XHRcdFx0XHRwYWdlOiB0aGlzLmhhbGxQYWdlLFxuXHRcdFx0XHRcdG1vZGVsOiB7XG5cdFx0XHRcdFx0XHRkaXN0YW5jZTogZGlzdGFuY2UsXG5cdFx0XHRcdFx0XHRncmFkZUlkOiBncmFkZUlkLFxuXHRcdFx0XHRcdFx0c29ydFR5cGU6IHNvcnRUeXBlXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+aOpeWNleWkp+WOhScsIHJlcylcblx0XHRcdFx0XHR0aGlzLmhhbGxMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0Y29uc3QgbGlzdCA9IHJlcy5kYXRhLnJlY29yZHMgfHwgW11cblx0XHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gdGhpcy5oYWxsUGFnZSA9PT0gMSA/IGxpc3QgOiB0aGlzLm9yZGVyTGlzdC5jb25jYXQobGlzdClcblx0XHRcdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSBsaXN0Lmxlbmd0aCA+PSB0aGlzLmhhbGxQYWdlU2l6ZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0UGlja3VwT3JkZXJzKCkge1xuXHRcdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHJldHVybjtcblx0XHRcdFx0aWYgKHRoaXMucGlja3VwTG9hZGluZykgcmV0dXJuXG5cdFx0XHRcdHRoaXMucGlja3VwTG9hZGluZyA9IHRydWVcblx0XHRcdFx0dGhpcy4kdS5hcGkuYWN0aXZlT3JkZXJzKHsgc3RhdHVzOiAzIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5b6F5Y+W6LSnOicsIHJlcylcblx0XHRcdFx0XHR0aGlzLnBpY2t1cExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLnBpY2t1cE9yZGVyTGlzdCA9IHJlcy5kYXRhLnJlY29yZHMgfHwgcmVzLmRhdGEgfHwgW11cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0XHR0aGlzLnBpY2t1cExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0RGVsaXZlcmluZ09yZGVycygpIHtcblx0XHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRcdGlmICh0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nKSByZXR1cm5cblx0XHRcdFx0dGhpcy5kZWxpdmVyaW5nTG9hZGluZyA9IHRydWVcblx0XHRcdFx0dGhpcy4kdS5hcGkuYWN0aXZlT3JkZXJzKHsgc3RhdHVzOiA0IH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn6YWN6YCB5LitOicsIHJlcylcblx0XHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5kZWxpdmVyaW5nT3JkZXJMaXN0ID0gcmVzLmRhdGEgfHwgW11cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdG9wZW5TdGF0dXNQaWNrZXIoKSB7XG5cdFx0XHRcdHRoaXMuc2hvd1N0YXR1c1BpY2tlciA9IHRydWVcblx0XHRcdH0sXG5cblx0XHRcdGNvbmZpcm1TdGF0dXMoZSkge1xuXHRcdFx0XHR0aGlzLnNob3dTdGF0dXNQaWNrZXIgPSBmYWxzZVxuXHRcdFx0XHRjb25zdCBzZWxlY3RlZFZhbHVlID0gZS52YWx1ZVswXVxuXHRcdFx0XHR0aGlzLiR1LmFwaS51cGRhdGVBY2NlcHRpbmdTdGF0dXMoeyBzdGF0dXM6IHNlbGVjdGVkVmFsdWUudmFsdWUgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmFjY2VwdGluZ1N0YXR1cyA9IHNlbGVjdGVkVmFsdWUudmFsdWVcblx0XHRcdFx0XHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0XHRcdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdFx0XHR0aGlzLnBpY2t1cE9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRpZiAodGhpcy5hY3RpdmVUYWIgPT09ICdwaWNrdXAnKSB7XG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5nZXRQaWNrdXBPcmRlcnMoKVxuXHRcdFx0XHRcdFx0XHR9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVGFiID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmdldERlbGl2ZXJpbmdPcmRlcnMoKVxuXHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHRvRHJpdmVyQ2VydGlmaWNhdGlvbigpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogJy9wYWdlcy9kcml2ZXItY2VydGlmaWNhdGlvbi9kcml2ZXItY2VydGlmaWNhdGlvbidcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHRvZ2dsZUZpbHRlclBvcHVwKHNob3cpIHtcblx0XHRcdFx0dGhpcy5zaG93RmlsdGVyUG9wdXAgPSBzaG93XG5cdFx0XHR9LFxuXG5cdFx0XHRzZWxlY3RGaWx0ZXIoa2V5LCBvcHRpb24pIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbHRlcnMgPSB7XG5cdFx0XHRcdFx0Li4udGhpcy5zZWxlY3RlZEZpbHRlcnMsXG5cdFx0XHRcdFx0W2tleV06IG9wdGlvblxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHRyZXNldEZpbHRlcnMoKSB7XG5cdFx0XHRcdHRoaXMuc2hvd0ZpbHRlclBvcHVwID0gZmFsc2Vcblx0XHRcdFx0aWYgKHRoaXMudXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDk5KSByZXR1cm47XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWx0ZXJzID0ge1xuXHRcdFx0XHRcdHNvcnQ6ICfnu7zlkIjmjpLluo8nLFxuXHRcdFx0XHRcdGxldmVsOiAn5LiN6ZmQJyxcblx0XHRcdFx0XHRkaXN0YW5jZTogJ+S4jemZkCdcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodGhpcy5hY3RpdmVUYWIgPT09ICdoYWxsJykge1xuXHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0fVxuXHRcdFx0fSxcblxuXHRcdFx0Y29uZmlybUZpbHRlcnMoKSB7XG5cdFx0XHRcdHRoaXMuc2hvd0ZpbHRlclBvcHVwID0gZmFsc2Vcblx0XHRcdFx0aWYgKHRoaXMudXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDk5KSB7XG5cdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodGhpcy5hY3RpdmVUYWIgPT09ICdoYWxsJykge1xuXHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0fVxuXHRcdFx0fSxcblxuXHRcdFx0aW5pdFRUUygpIHtcblx0XHRcdFx0aWYgKHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpLnBsYXRmb3JtICE9PSAnYW5kcm9pZCcpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5LuF5pSv5oyB5a6J5Y2TJylcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Ly8g5a+85YWl5a6J5Y2T5Y6f55Sf57G7XG5cdFx0XHRcdFx0Y29uc3QgVGV4dFRvU3BlZWNoID0gcGx1cy5hbmRyb2lkLmltcG9ydENsYXNzKCdhbmRyb2lkLnNwZWVjaC50dHMuVGV4dFRvU3BlZWNoJylcblx0XHRcdFx0XHRjb25zdCBMb2NhbGUgPSBwbHVzLmFuZHJvaWQuaW1wb3J0Q2xhc3MoJ2phdmEudXRpbC5Mb2NhbGUnKVxuXG5cdFx0XHRcdFx0Ly8g5Yib5bu6VFRTXG5cdFx0XHRcdFx0dGhpcy50dHMgPSBuZXcgVGV4dFRvU3BlZWNoKHBsdXMuYW5kcm9pZC5ydW50aW1lTWFpbkFjdGl2aXR5KCksIHtcblx0XHRcdFx0XHRcdG9uSW5pdDogKHN0YXR1cykgPT4ge1xuXHRcdFx0XHRcdFx0XHRpZiAoc3RhdHVzID09IDApIHtcblx0XHRcdFx0XHRcdFx0XHQvLyDorr7nva7kuK3mlodcblx0XHRcdFx0XHRcdFx0XHR0aGlzLnR0cy5zZXRMYW5ndWFnZShMb2NhbGUuQ0hJTkEpXG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+ivremfs+WIneWni+WMluaIkOWKnycpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+WIneWni+WMluWksei0pScsIGUpXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdHNwZWFrKHRleHQpIHtcblx0XHRcdFx0aWYgKCF0aGlzLnR0cykge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdFx0dGl0bGU6ICfor63pn7PmnKrlh4blpIflpb0nLFxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Ly8g5a6J5Y2T5Y6f55Sf5pKt5oql77yIUVVFVUVfRkxVU0ggPSDnq4vljbPmkq3miqXvvIzmiZPmlq3kuIrkuIDmnaHvvIlcblx0XHRcdFx0XHR0aGlzLnR0cy5zcGVhayh0ZXh0LCAwLCBudWxsKVxuXHRcdFx0XHR9IGNhdGNoIChlcnIpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5pKt5oql5aSx6LSlJywgZXJyKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHRzdG9wU3BlYWsoKSB7XG5cdFx0XHRcdGlmICh0aGlzLnR0cykgdGhpcy50dHMuc3RvcCgpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdG9uVW5sb2FkKCkge1xuXHRcdFx0aWYgKHRoaXMudHRzKSB7XG5cdFx0XHRcdHRoaXMudHRzLnN0b3AoKVxuXHRcdFx0XHR0aGlzLnR0cy5zaHV0ZG93bigpXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuXHQuaGFsbC1wYWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRiYWNrZ3JvdW5kOiAjZjVmNmY4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHQucXJjb2RlIHtcblx0XHRcdHBhZGRpbmc6IDM2cnB4IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC5xcmNvZGUtdGl0bGUge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRpbWFnZSB7XG5cdFx0XHRcdFx0d2lkdGg6IDI4cnB4O1xuXHRcdFx0XHRcdGhlaWdodDogMjhycHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0XHRcdGNvbG9yOiAjMTExMTExO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQucXJjb2RlLWltYWdlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2MHJweDtcblx0XHRcdFx0aW1hZ2Uge1xuXHRcdFx0XHRcdHdpZHRoOiA0MDBycHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA0MDBycHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5xcmNvZGUtYnRuIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMTA2RUZBO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MHJweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2OHJweDtcblxuXHRcdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMC45Mjtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnJweCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQucGhvdG8tZGVsaXZlciB7XG5cdFx0XHRwYWRkaW5nOiAzMnJweCAyOHJweCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDI4cnB4KTtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMjBycHg7XG5cdFx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMjBycHg7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHQmX19oZWFkZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHR9XG5cblx0XHRcdCZfX3RpdGxlIHtcblx0XHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHR9XG5cblx0XHRcdCZfX2Nsb3NlLFxuXHRcdFx0Jl9fY2xvc2UtcGxhY2Vob2xkZXIge1xuXHRcdFx0XHR3aWR0aDogMzZycHg7XG5cdFx0XHRcdGhlaWdodDogMzZycHg7XG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19jbG9zZS1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3NlY3Rpb24ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA1NnJweDtcblxuXHRcdFx0XHQmLS1yZW1hcmsge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDQ2cnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX2xhYmVsLXJvdyB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdH1cblxuXHRcdFx0Jl9fbGFiZWwsXG5cdFx0XHQmX19yZW1hcmstdGl0bGUge1xuXHRcdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRjb2xvcjogIzIzMjYyZDtcblx0XHRcdH1cblxuXHRcdFx0Jl9fcmVxdWlyZWQge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogNHJweDtcblx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0Y29sb3I6ICNmZjNiMzA7XG5cdFx0XHR9XG5cblx0XHRcdCZfX2hpbnQge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTJycHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRcdGNvbG9yOiAjYThhZGI3O1xuXHRcdFx0fVxuXG5cdFx0XHQmX19waG90b3Mge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRnYXA6IDE4cnB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcblx0XHRcdH1cblxuXHRcdFx0Jl9fdXBsb2FkLWNhcmQsXG5cdFx0XHQmX19wcmV2aWV3LWNhcmQge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHdpZHRoOiAxNjBycHg7XG5cdFx0XHRcdGhlaWdodDogMTYwcnB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0fVxuXG5cdFx0XHQmX191cGxvYWQtY2FyZCB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRib3JkZXI6IDJycHggZGFzaGVkICNjOWNlZDY7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3VwbG9hZC1pY29uIHtcblx0XHRcdFx0d2lkdGg6IDUycnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDUycnB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmX191cGxvYWQtdGV4dCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDE0cnB4O1xuXHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRjb2xvcjogIzlkYTNhZTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fcHJldmlldy1jYXJkIHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2VlZjFmNTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fcHJldmlldy1pbWFnZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3ByZXZpZXctbWFzayB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGhlaWdodDogNDhycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40Nik7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3ByZXZpZXctZGVsZXRlIHtcblx0XHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3RleHRhcmVhIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTEwcnB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyNHJweDtcblx0XHRcdFx0cGFkZGluZzogMjhycHggMjRycHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEycnB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZjdmOGZhO1xuXHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRmb250LXNpemU6IDMwcnB4O1xuXHRcdFx0XHRjb2xvcjogIzJjMzEzOTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fc3VibWl0IHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogODZycHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwcnB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMTA2ZWZhO1xuXHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMC45Mjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2hlYWRlciB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMyNDczZjUgMCUsICMxZTZmZWYgMTAwJSk7XG5cdFx0XHRib3gtc2hhZG93OiAwIDEycnB4IDI0cnB4IHJnYmEoMzYsIDExNSwgMjQ1LCAwLjA4KTtcblx0XHR9XG5cblx0XHQmX191c2VyLXJvdyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDIwcnB4IDI0cnB4IDA7XG5cdFx0fVxuXG5cdFx0Jl9fdXNlciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTRycHg7XG5cdFx0fVxuXG5cdFx0Jl9fYXZhdGFyIHtcblx0XHRcdHdpZHRoOiA0MnJweDtcblx0XHRcdGhlaWdodDogNDJycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRib3JkZXI6IDJycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuXHRcdH1cblxuXHRcdCZfX25hbWUge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX19zdGF0dXMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nOiAxMHJweCAxNnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDk5OXJweDtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG5cdFx0XHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBycHgpO1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy1kb3Qge1xuXHRcdFx0d2lkdGg6IDE0cnB4O1xuXHRcdFx0aGVpZ2h0OiAxNHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdGJhY2tncm91bmQ6ICMzMmQ3NGI7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcnB4O1xuXG5cdFx0XHQmLS1vZmZsaW5lIHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmM2IzMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19zdGF0dXMtdGV4dCxcblx0XHQmX19zdGF0dXMtYXJyb3cge1xuXHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy1hcnJvdyB7XG5cdFx0XHRmb250LXNpemU6IDE4cnB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdHBhZGRpbmc6IDM0cnB4IDM2cnB4IDI4cnB4O1xuXHRcdH1cblxuXHRcdCZfX3N0YXQtaXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtaW4td2lkdGg6IDE2MHJweDtcblx0XHR9XG5cblx0XHQmX19zdGF0LXZhbHVlIHtcblx0XHRcdGZvbnQtc2l6ZTogNTJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX19zdGF0LWxhYmVsIHtcblx0XHRcdG1hcmdpbi10b3A6IDEycnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODYpO1xuXHRcdH1cblxuXHRcdCZfX3RhYnMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0cGFkZGluZzogMCAxOHJweDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fdGFiIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAwIDE4cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdGNvbG9yOiAjOGI5MDk5O1xuXHRcdH1cblxuXHRcdCZfX3RhYi0tYWN0aXZlIHtcblx0XHRcdGNvbG9yOiAjMjQyOTMzO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHR9XG5cblx0XHQmX190YWItdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHR9XG5cblx0XHQmX190YWItY291bnQge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDZycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM4YjkwOTk7XG5cdFx0fVxuXG5cdFx0Jl9fdGFiLWxpbmUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMThycHg7XG5cdFx0XHRyaWdodDogMThycHg7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRoZWlnaHQ6IDVycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA5OTlycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMjQ3M2Y1O1xuXHRcdH1cblxuXHRcdCZfX2ZpbHRlciB7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiA2cnB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fZmlsdGVyLXRleHQge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjOWFhMWFiO1xuXG5cdFx0XHQmLS1hY3RpdmUge1xuXHRcdFx0XHRjb2xvcjogIzEwNmVmYTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Jl9fZmlsdGVyLWljb24ge1xuXHRcdFx0d2lkdGg6IDI4cnB4O1xuXHRcdFx0aGVpZ2h0OiAyOHJweDtcblx0XHR9XG5cblx0XHQmX19ib2R5IHtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGOUZGO1xuXHRcdH1cblxuXHRcdCZfX2xpc3Qge1xuXHRcdFx0cGFkZGluZzogMzBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fdmVyaWZpZWQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGltYWdlIHtcblx0XHRcdFx0d2lkdGg6IDMyMHJweDtcblx0XHRcdFx0aGVpZ2h0OiAzMjBycHg7XG5cdFx0XHR9XG5cdFx0XHRidXR0b24ge1xuXHRcdFx0XHR3aWR0aDogMTYwcnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDY0cnB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNjRycHg7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRib3JkZXI6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0YmFja2dyb3VuZDogIzEwNkVGQTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTBycHg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQwcnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19lbXB0eSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0fVxuXG5cdFx0Jl9fZW1wdHktaWNvbiB7XG5cdFx0XHR3aWR0aDogMzIwcnB4O1xuXHRcdFx0aGVpZ2h0OiAzMjBycHg7XG5cdFx0fVxuXHR9XG5cblx0LmZpbHRlci1wb3B1cCB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0ei1pbmRleDogMjA7XG5cblx0XHQmX19wYW5lbCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAyOHJweDtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAyOHJweDtcblx0XHR9XG5cblx0XHQmX19jb250ZW50IHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXHRcdFx0cGFkZGluZzogMjJycHggMThycHggMDtcblx0XHR9XG5cblx0XHQmX19zZWN0aW9uIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDI4cnB4O1xuXHRcdH1cblxuXHRcdCZfX3RpdGxlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMjUyYjMzO1xuXHRcdH1cblxuXHRcdCZfX29wdGlvbnMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdGdhcDogMThycHggMjBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fb3B0aW9uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogMjI2cnB4O1xuXHRcdFx0aGVpZ2h0OiA3NHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEwcnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y1ZjVmNTtcblx0XHRcdGJvcmRlcjogMnJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cblx0XHRcdCYtLWFjdGl2ZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNlZGY1ZmY7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogIzNkOGNmZjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19vcHRpb24tdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM0YjUxNWE7XG5cblx0XHRcdC5maWx0ZXItcG9wdXBfX29wdGlvbi0tYWN0aXZlICYge1xuXHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRjb2xvcjogIzI2NzhmZjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19hY3Rpb25zIHtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogMjRycHg7XG5cdFx0XHRwYWRkaW5nOiA4cnB4IDE4cnB4IDI2cnB4O1xuXHRcdH1cblxuXHRcdCZfX2J1dHRvbiB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0aGVpZ2h0OiA5MnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA5MnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDk5OXJweDtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXJlc2V0IHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ViZWJlYjtcblx0XHRcdFx0Y29sb3I6ICM3NzdkODY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWNvbmZpcm0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMmQ4MmZmIDAlLCAjMjA2ZWY2IDEwMCUpO1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5vcmRlci1jYXJkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHJweDtcblx0XHRwYWRkaW5nOiAyMHJweDtcblx0XHRib3JkZXItcmFkaXVzOiAyNHJweDtcblx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdGJveC1zaGFkb3c6IDAgMTBycHggMjRycHggcmdiYSgyNiwgNDQsIDgxLCAwLjA0KTtcblxuXHRcdCZfX2hlYWQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdH1cblxuXHRcdCZfX3RpbWUtbWFpbiB7XG5cdFx0XHRmb250LXNpemU6IDQycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmY4ZDI3O1xuXHRcdH1cblxuXHRcdCZfX3RpbWUtc3ViIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiA4cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjYTNhOGIyO1xuXHRcdH1cblxuXHRcdCZfX3ByaWNlLXdyYXAge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiA4cnB4O1xuXG5cdFx0XHQmLS1zZXJpYWwtb25seSB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0bWluLXdpZHRoOiA1NHJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19zZXJpYWwge1xuXHRcdFx0Zm9udC1zaXplOiAzOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGNvbG9yOiAjMmMzMTM5O1xuXHRcdH1cblxuXHRcdCZfX3ByaWNlIHtcblx0XHRcdGZvbnQtc2l6ZTogNDRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZjNiMzA7XG5cdFx0fVxuXG5cdFx0Jl9fbWV0YSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTZycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHR9XG5cblx0XHQmX19leHRyYSB7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRjb2xvcjogI2EwYTVhZjtcblx0XHR9XG5cblx0XHQmX190YWdzIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX190YWctd3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR9XG5cblx0XHQmX190YWctaWNvbiB7XG5cdFx0XHR3aWR0aDogMTA4cnB4O1xuXHRcdFx0aGVpZ2h0OiA0MHJweDtcblx0XHR9XG5cblx0XHQmX190YWctaW1nIHtcblx0XHRcdHdpZHRoOiAxMDhycHg7XG5cdFx0XHRoZWlnaHQ6IDQwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3RhZyB7XG5cdFx0XHRwYWRkaW5nOiA0cnB4IDEwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjMjQ3M2Y1O1xuXHRcdFx0Y29sb3I6ICMyNDczZjU7XG5cblx0XHRcdCYtLW9yYW5nZSB7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDMxOWRlZywgI0VFOUQwRSAwJSwgI0ZGNEU0RSAxMDAlKTtcblx0XHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXJlZCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogI2ZmNmM1Nztcblx0XHRcdFx0Y29sb3I6ICNmZjZjNTc7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWJsdWUtbGlnaHQge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICM3NGE5ZmY7XG5cdFx0XHRcdGNvbG9yOiAjNzRhOWZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ibHVlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgxNiwxNzgsMjUwLDAuMDgpO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAxNXJweDtcblx0XHRcdFx0Ym9yZGVyOiAycnB4IHNvbGlkICMxMDZFRkE7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRcdGNvbG9yOiAjMTA2RUZBO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3JvdXRlIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHR9XG5cblx0XHQmX19yb3V0ZS1zaWRlIHtcblx0XHRcdHdpZHRoOiA2NHJweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblxuXHRcdCZfX2Rpc3RhbmNlLXRvcCxcblx0XHQmX19kaXN0YW5jZS1ib3R0b20ge1xuXHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogIzU1NWI2Njtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cblx0XHQmX19saW5lIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHdpZHRoOiA0cnB4O1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdG1pbi1oZWlnaHQ6IDg2cnB4O1xuXHRcdFx0bWFyZ2luOiAxMHJweCAwO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Q4ZGJlMTtcblxuXHRcdFx0Jjo6YmVmb3JlLFxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRcdFx0d2lkdGg6IDE0cnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDE0cnB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICM2YTZmNzk7XG5cdFx0XHR9XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdHRvcDogLTRycHg7XG5cdFx0XHR9XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Ym90dG9tOiAtNHJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS1tYWluIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtaXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRnYXA6IDE2cnB4O1xuXG5cdFx0XHQmLS1kZXN0aW5hdGlvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3JvdXRlLXRleHRzIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtdGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IDQwcnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMmQzMTM5O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHR9XG5cblx0XHQmX19yb3V0ZS1kZXNjIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogOHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzllYTRhZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2IHtcblx0XHRcdHdpZHRoOiA0OHJweDtcblx0XHRcdGhlaWdodDogNDhycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX19nb29kcyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogNzBycHg7XG5cdFx0XHRwYWRkaW5nOiAwIDIwcnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxNnJweDtcblx0XHRcdGJhY2tncm91bmQ6ICNmNGY1Zjc7XG5cdFx0fVxuXG5cdFx0Jl9fZ29vZHMtdGV4dCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjN2E4MThkO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0XHR9XG5cblx0XHQmX19nb29kcy1hcnJvdyB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTJycHg7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICNhNGE5YjE7XG5cdFx0fVxuXG5cdFx0Jl9fYnV0dG9uIHtcblx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzJiN2ZmZiAwJSwgIzFmNmZmMyAxMDAlKTtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2FjdGlvbnMge1xuXHRcdFx0bWFyZ2luLXRvcDogMjRycHg7XG5cblx0XHRcdCYtLXBpY2t1cCxcblx0XHRcdCYtLWRlbGl2ZXJpbmcge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRnYXA6IDIycnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ljb24tYWN0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMjBycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblxuXHRcdFx0Ji0tc2luZ2xlIHtcblx0XHRcdFx0Z2FwOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ljb24tYWN0aW9uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0d2lkdGg6IDc0cnB4O1xuXHRcdH1cblxuXHRcdCZfX2FjdGlvbi1pY29uIHtcblx0XHRcdHdpZHRoOiA0MHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y3ZjhmYTtcblx0XHR9XG5cblx0XHQmX19hY3Rpb24tdGV4dCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA4cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Y29sb3I6ICM1YjYxNmI7XG5cdFx0fVxuXG5cdFx0Jl9fYnV0dG9uLS1jb2RlIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///92\n");
/***/ }),
/* 93 */
@@ -18315,32 +18315,87 @@
attrs: { _i: 9 },
},
[
- _c("image", { attrs: { _i: 10 } }),
- _c("text", [
- _vm._v(_vm._$s(11, "t0-0", _vm._s(_vm.form.aliAccount))),
- ]),
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.form.aliAccount,
+ expression: "form.aliAccount",
+ },
+ ],
+ attrs: { _i: 10 },
+ domProps: {
+ value: _vm._$s(10, "v-model", _vm.form.aliAccount),
+ },
+ on: {
+ input: function ($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.form, "aliAccount", $event.target.value)
+ },
+ },
+ }),
+ ]
+ ),
+ ]
+ ),
+ _c(
+ "view",
+ { staticClass: _vm._$s(11, "sc", "form-a"), attrs: { _i: 11 } },
+ [
+ _c("view", {
+ staticClass: _vm._$s(12, "sc", "form-a-label"),
+ attrs: { _i: 12 },
+ }),
+ _c(
+ "view",
+ {
+ staticClass: _vm._$s(13, "sc", "form-a-val"),
+ attrs: { _i: 13 },
+ },
+ [
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.form.aliName,
+ expression: "form.aliName",
+ },
+ ],
+ attrs: { _i: 14 },
+ domProps: {
+ value: _vm._$s(14, "v-model", _vm.form.aliName),
+ },
+ on: {
+ input: function ($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.form, "aliName", $event.target.value)
+ },
+ },
+ }),
]
),
]
),
_c("view", {
- staticClass: _vm._$s(12, "sc", "form-xian"),
- attrs: { _i: 12 },
- }),
- _c("view", {
- staticClass: _vm._$s(13, "sc", "form-title"),
- attrs: { _i: 13 },
+ staticClass: _vm._$s(15, "sc", "form-title"),
+ attrs: { _i: 15 },
}),
_c(
"view",
{
- staticClass: _vm._$s(14, "sc", "form-input"),
- attrs: { _i: 14 },
+ staticClass: _vm._$s(16, "sc", "form-input"),
+ attrs: { _i: 16 },
},
[
_c("view", {
- staticClass: _vm._$s(15, "sc", "form-input-dw"),
- attrs: { _i: 15 },
+ staticClass: _vm._$s(17, "sc", "form-input-dw"),
+ attrs: { _i: 17 },
}),
_c("input", {
directives: [
@@ -18351,11 +18406,11 @@
expression: "form.amount",
},
],
- style: _vm._$s(16, "s", {
+ style: _vm._$s(18, "s", {
color: _vm.isAmountExceeded ? "#FF0020" : "#111111",
}),
- attrs: { focus: _vm._$s(16, "a-focus", _vm.focus), _i: 16 },
- domProps: { value: _vm._$s(16, "v-model", _vm.form.amount) },
+ attrs: { focus: _vm._$s(18, "a-focus", _vm.focus), _i: 18 },
+ domProps: { value: _vm._$s(18, "v-model", _vm.form.amount) },
on: {
blur: function ($event) {
_vm.focus = false
@@ -18369,24 +18424,24 @@
},
}),
_c("view", {
- staticClass: _vm._$s(17, "sc", "form-input-tx"),
- attrs: { _i: 17 },
+ staticClass: _vm._$s(19, "sc", "form-input-tx"),
+ attrs: { _i: 19 },
on: { click: _vm.inputAll },
}),
]
),
- _vm._$s(18, "i", _vm.isAmountExceeded)
+ _vm._$s(20, "i", _vm.isAmountExceeded)
? _c("view", {
- staticClass: _vm._$s(18, "sc", "form-error"),
- attrs: { _i: 18 },
+ staticClass: _vm._$s(20, "sc", "form-error"),
+ attrs: { _i: 20 },
})
: _vm._e(),
_c("view", {
- staticClass: _vm._$s(19, "sc", "form-btn"),
- class: _vm._$s(19, "c", {
+ staticClass: _vm._$s(21, "sc", "form-btn"),
+ class: _vm._$s(21, "c", {
"form-btn--disabled": !_vm.isSubmitEnabled,
}),
- attrs: { _i: 19 },
+ attrs: { _i: 21 },
on: {
click: function ($event) {
_vm.isSubmitEnabled && _vm.confirm()
@@ -18425,7 +18480,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 13);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n balance: function balance() {\n return this.countData ? this.countData.balance / 100 : 0;\n },\n amount: function amount() {\n return parseFloat(this.form.amount) || 0;\n },\n isAmountExceeded: function isAmountExceeded() {\n return this.form.amount && this.amount > this.balance;\n },\n isSubmitEnabled: function isSubmitEnabled() {\n return this.form.amount && this.amount > 0 && !this.isAmountExceeded;\n }\n }),\n data: function data() {\n return {\n tips: '',\n focus: false,\n valid: false,\n bankList: [],\n form: {\n amount: null,\n aliAccount: null\n },\n shop: {},\n info: {},\n countData: null\n };\n },\n onLoad: function onLoad(options) {\n this.focus = false;\n this.form.aliAccount = this.userInfo.aliAccount;\n this.getShopStatistics();\n },\n methods: {\n // 鑾峰彇鍙告満閽卞寘缁熻\n getShopStatistics: function getShopStatistics() {\n var _this = this;\n this.$u.api.driverStatistics({}).then(function (res) {\n if (res.code == 200) {\n _this.countData = res.data;\n }\n });\n },\n confirm: function confirm() {\n var _this2 = this;\n if (!this.form.amount) {\n this.tips = '璇疯緭鍏ユ彁鐜伴噾棰�';\n this.focus = true;\n return;\n }\n if (this.form.amount > (this.countData.balance / 100 || 0)) {\n this.tips = '杈撳叆鐨勯噾棰濆凡缁忚秴杩囧彲鎻愮幇閲戦';\n this.focus = true;\n return;\n }\n uni.showModal({\n title: '鎿嶄綔鎻愮ず',\n content: '鎮ㄧ‘璁ゅ彂璧锋娆℃彁鐜扮敵璇峰悧锛�',\n confirmColor: '#004096',\n success: function success(res) {\n if (res.confirm) {\n _this2.applyDo();\n }\n }\n });\n },\n applyDo: function applyDo() {\n var that = this;\n this.$u.api.driverApply(this.form).then(function (res) {\n if (res.code === 200) {\n uni.showToast({\n title: '鎿嶄綔鎴愬姛',\n icon: 'success'\n });\n uni.$emit('accountListReload');\n uni.redirectTo({\n url: \"/pages/withdraw-success/withdraw-success?id=\" + res.data\n });\n }\n });\n },\n inputAll: function inputAll() {\n this.form.amount = this.countData.balance ? this.countData.balance / 100 || 0 : 0;\n }\n }\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvd2l0aGRyYXcvd2l0aGRyYXcudnVlIl0sIm5hbWVzIjpbImNvbXB1dGVkIiwiYmFsYW5jZSIsImFtb3VudCIsImlzQW1vdW50RXhjZWVkZWQiLCJpc1N1Ym1pdEVuYWJsZWQiLCJkYXRhIiwidGlwcyIsImZvY3VzIiwidmFsaWQiLCJiYW5rTGlzdCIsImZvcm0iLCJhbGlBY2NvdW50Iiwic2hvcCIsImluZm8iLCJjb3VudERhdGEiLCJvbkxvYWQiLCJtZXRob2RzIiwiZ2V0U2hvcFN0YXRpc3RpY3MiLCJjb25maXJtIiwidW5pIiwidGl0bGUiLCJjb250ZW50IiwiY29uZmlybUNvbG9yIiwic3VjY2VzcyIsImFwcGx5RG8iLCJ0aGVuIiwiaWNvbiIsInVybCIsImlucHV0QWxsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQStCQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBLDBDQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtFQUFBLEVBQ0E7RUFDQUM7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztRQUFBUjtRQUFBUztNQUFBO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0lBQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7VUFDQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBLG1DQUNBQztRQUNBO1VBQ0FOO1lBQUFDO1lBQUFNO1VBQUE7VUFDQVA7VUFDQUE7WUFBQVE7VUFBQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEiLCJmaWxlIjoiMTY1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG5cdDx2aWV3IGNsYXNzPVwiYm94XCI+XHJcblx0XHQ8dmlldyBjbGFzcz1cImJnXCI+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiYmctYVwiPuWPr+aPkOeOsOS9meminSjlhYMpPC92aWV3PlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cImJnLWJcIj5cclxuXHRcdFx0XHQ8dGV4dD57eyhjb3VudERhdGEuYmFsYW5jZSAvIDEwMCB8fCAwKS50b0ZpeGVkKDIpfX08L3RleHQ+XHJcblx0XHRcdFx0PHRleHQ+PC90ZXh0PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybVwiPlxyXG4gXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0tYVwiPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWEtbGFiZWxcIj7mj5DnjrDoh7M8L3ZpZXc+XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0tYS12YWxcIj5cclxuXHRcdFx0XHRcdFx0PGltYWdlIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfYWxpcGF5QDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XHJcblx0XHRcdFx0XHRcdDx0ZXh0PuaUr+S7mOWunSB7e2Zvcm0uYWxpQWNjb3VudH19PC90ZXh0PlxyXG5cdFx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0teGlhblwiPjwvdmlldz5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0tdGl0bGVcIj7mj5DnjrDph5Hpop08L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWlucHV0XCI+XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0taW5wdXQtZHdcIj7vv6U8L3ZpZXc+XHJcblx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImRpZ2l0XCIgcGxhY2Vob2xkZXI9XCIwXCIgdi1tb2RlbD1cImZvcm0uYW1vdW50XCIgOmZvY3VzPSdmb2N1cycgQGJsdXI9XCJmb2N1cyA9IGZhbHNlXCIgOnN0eWxlPVwieyBjb2xvcjogaXNBbW91bnRFeGNlZWRlZCA/ICcjRkYwMDIwJyA6ICcjMTExMTExJyB9XCIvPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWlucHV0LXR4XCIgQGNsaWNrPVwiaW5wdXRBbGxcIj7lhajpg6jmj5DnjrA8L3ZpZXc+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDx2aWV3IHYtaWY9XCJpc0Ftb3VudEV4Y2VlZGVkXCIgY2xhc3M9XCJmb3JtLWVycm9yXCI+6L6T5YWl55qE6YeR6aKd5bey57uP6LaF6L+H5Y+v5o+Q546w6YeR6aKdPC92aWV3PlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybS1idG5cIiA6Y2xhc3M9XCJ7ICdmb3JtLWJ0bi0tZGlzYWJsZWQnOiAhaXNTdWJtaXRFbmFibGVkIH1cIiBAY2xpY2s9XCJpc1N1Ym1pdEVuYWJsZWQgJiYgY29uZmlybSgpXCI+5o+Q5Lqk55Sz6K+3PC92aWV3PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHQ8L3ZpZXc+XHJcblx0PC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXHJcblx0ZXhwb3J0IGRlZmF1bHQge1xyXG5cdFx0Y29tcHV0ZWQ6IHtcclxuXHRcdFx0Li4ubWFwU3RhdGUoWyd1c2VySW5mbyddKSxcclxuXHRcdFx0YmFsYW5jZSgpIHtcclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5jb3VudERhdGEgPyB0aGlzLmNvdW50RGF0YS5iYWxhbmNlIC8gMTAwIDogMFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRhbW91bnQoKSB7XHJcblx0XHRcdFx0cmV0dXJuIHBhcnNlRmxvYXQodGhpcy5mb3JtLmFtb3VudCkgfHwgMFxyXG5cdFx0XHR9LFxyXG5cdFx0XHRpc0Ftb3VudEV4Y2VlZGVkKCkge1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmZvcm0uYW1vdW50ICYmIHRoaXMuYW1vdW50ID4gdGhpcy5iYWxhbmNlXHJcblx0XHRcdH0sXHJcblx0XHRcdGlzU3VibWl0RW5hYmxlZCgpIHtcclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5mb3JtLmFtb3VudCAmJiB0aGlzLmFtb3VudCA+IDAgJiYgIXRoaXMuaXNBbW91bnRFeGNlZWRlZFxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0ZGF0YSgpIHtcclxuXHRcdFx0cmV0dXJuIHsgXHJcblx0XHRcdFx0dGlwczonJyxcclxuXHRcdFx0XHRmb2N1czpmYWxzZSxcclxuXHRcdFx0XHR2YWxpZDpmYWxzZSxcclxuXHRcdFx0XHRiYW5rTGlzdDpbXSxcclxuXHRcdFx0XHRmb3JtOiB7IGFtb3VudDogbnVsbCwgYWxpQWNjb3VudDogbnVsbCB9LFxyXG5cdFx0XHRcdHNob3A6e30sXHJcblx0XHRcdFx0aW5mbzp7fSxcclxuXHRcdFx0XHRjb3VudERhdGE6IG51bGxcclxuXHRcdFx0fVxyXG5cdFx0fSwgXHJcblx0XHRvbkxvYWQob3B0aW9ucykge1xyXG5cdFx0XHR0aGlzLmZvY3VzID0gZmFsc2VcclxuXHRcdFx0dGhpcy5mb3JtLmFsaUFjY291bnQgPSB0aGlzLnVzZXJJbmZvLmFsaUFjY291bnRcclxuXHRcdFx0dGhpcy5nZXRTaG9wU3RhdGlzdGljcygpXHJcblx0XHR9LFxyXG5cdFx0bWV0aG9kczp7ICBcclxuXHRcdFx0Ly8g6I635Y+W5Y+45py66ZKx5YyF57uf6K6hXHJcblx0XHRcdGdldFNob3BTdGF0aXN0aWNzKCl7XHJcblx0XHRcdFx0dGhpcy4kdS5hcGkuZHJpdmVyU3RhdGlzdGljcyh7fSkudGhlbihyZXM9PntcclxuXHRcdFx0XHRcdGlmKHJlcy5jb2RlID09IDIwMCl7XHJcblx0XHRcdFx0XHRcdHRoaXMuY291bnREYXRhID0gcmVzLmRhdGFcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRjb25maXJtKCl7XHJcblx0XHRcdFx0aWYoIXRoaXMuZm9ybS5hbW91bnQpe1xyXG5cdFx0XHRcdFx0dGhpcy50aXBzID0n6K+36L6T5YWl5o+Q546w6YeR6aKdJ1xyXG5cdFx0XHRcdFx0dGhpcy5mb2N1cyA9IHRydWVcclxuXHRcdFx0XHRcdHJldHVyblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpZih0aGlzLmZvcm0uYW1vdW50ID4gKHRoaXMuY291bnREYXRhLmJhbGFuY2UgLyAxMDAgfHwgMCkpe1xyXG5cdFx0XHRcdFx0dGhpcy50aXBzID0n6L6T5YWl55qE6YeR6aKd5bey57uP6LaF6L+H5Y+v5o+Q546w6YeR6aKdJ1xyXG5cdFx0XHRcdFx0dGhpcy5mb2N1cyA9IHRydWVcclxuXHRcdFx0XHRcdHJldHVyblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn5pON5L2c5o+Q56S6JyxcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICfmgqjnoa7orqTlj5HotbfmraTmrKHmj5DnjrDnlLPor7flkJfvvJ8nLFxyXG5cdFx0XHRcdFx0Y29uZmlybUNvbG9yOiAnIzAwNDA5NicsXHJcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdGlmIChyZXMuY29uZmlybSkge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuYXBwbHlEbygpXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRhcHBseURvKCl7XHJcblx0XHRcdFx0dmFyIHRoYXQgPXRoaXNcclxuXHRcdFx0XHR0aGlzLiR1LmFwaS5kcml2ZXJBcHBseSh0aGlzLmZvcm0pXHJcblx0XHRcdFx0XHQudGhlbihyZXMgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkgeyBcclxuXHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6J+aTjeS9nOaIkOWKnycsIGljb246J3N1Y2Nlc3MnIH0pXHJcblx0XHRcdFx0XHRcdFx0dW5pLiRlbWl0KCdhY2NvdW50TGlzdFJlbG9hZCcpXHJcblx0XHRcdFx0XHRcdFx0dW5pLnJlZGlyZWN0VG8oeyB1cmw6IFwiL3BhZ2VzL3dpdGhkcmF3LXN1Y2Nlc3Mvd2l0aGRyYXctc3VjY2Vzcz9pZD1cIiArIHJlcy5kYXRhIH0pXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdH0sXHJcblx0XHRcdGlucHV0QWxsKCl7XHJcblx0XHRcdFx0dGhpcy5mb3JtLmFtb3VudCA9IHRoaXMuY291bnREYXRhLmJhbGFuY2UgPyAodGhpcy5jb3VudERhdGEuYmFsYW5jZSAvIDEwMCB8fCAwKSA6IDBcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGU+XHJcblx0cGFnZSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGOUZCO1xyXG5cdH1cclxuPC9zdHlsZT5cclxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxyXG5cdC5ib3gge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHQuYmcge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0cGFkZGluZzogMzBycHg7XHJcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRcdGhlaWdodDogMjQwcnB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjMDA0MDk2O1xyXG5cdFx0XHQuYmctYSB7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xyXG5cdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5iZy1iIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAxNHJweDtcclxuXHRcdFx0XHR0ZXh0IHtcclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiA0OHJweDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuZm9ybSB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI0ZGRkZGRjtcclxuXHRcdFx0XHRib3gtc2hhZG93OiAwcnB4IDJycHggMjBycHggMHJweCByZ2JhKDAsMCwwLDAuMDgpO1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDIwcnB4O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDMwcnB4O1xyXG5cdFx0XHRcdHBhZGRpbmc6IDQ4cnB4IDMwcnB4O1xyXG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRcdFx0LmZvcm0tYSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0LmZvcm0tYS1sYWJlbCB7XHJcblx0XHRcdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDMwcnB4O1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDMwcnB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogIzY2NjY2NjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5mb3JtLWEtdmFsIHtcclxuXHRcdFx0XHRcdFx0ZmxleDogMTtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRcdFx0XHRcdFx0dGV4dCB7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI4cnB4O1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGltYWdlIHtcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMzJycHg7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAzMnJweDtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcnB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5mb3JtLXhpYW4ge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDFycHg7XHJcblx0XHRcdFx0XHRtYXJnaW46IDMwcnB4IDA7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRTVFNUU1O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZm9ybS10aXRsZSB7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzNHJweDtcclxuXHRcdFx0XHRcdGNvbG9yOiAjMTExMTExO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZm9ybS1pbnB1dCB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGhlaWdodDogMTE2cnB4O1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcnB4IHNvbGlkICNFNUU1RTU7XHJcblx0XHRcdFx0XHQuZm9ybS1pbnB1dC1kdyB7XHJcblx0XHRcdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGlucHV0IHtcclxuXHRcdFx0XHRcdFx0ZmxleDogMTtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDQwcnB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogIzExMTExMTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIDMwcnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LmZvcm0taW5wdXQtdHgge1xyXG5cdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5mb3JtLWVycm9yIHtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNFNDAwMUQ7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmRpc2FibGUge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNDQ0NDQ0MgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNFRkVGRUYgIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmZvcm0tYnRuIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMDQwOTY7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA0NHJweDtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA0OHJweDtcclxuXHJcblx0XHRcdFx0XHQmLS1kaXNhYmxlZCB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNDQ0NDQ0M7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuPC9zdHlsZT4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///165\n");
+eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 13);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n balance: function balance() {\n return this.countData ? this.countData.balance / 100 : 0;\n },\n amount: function amount() {\n return parseFloat(this.form.amount) || 0;\n },\n isAmountExceeded: function isAmountExceeded() {\n return this.form.amount && this.amount > this.balance;\n },\n isSubmitEnabled: function isSubmitEnabled() {\n return this.form.amount && this.amount > 0 && !this.isAmountExceeded;\n }\n }),\n data: function data() {\n return {\n tips: '',\n focus: false,\n valid: false,\n bankList: [],\n form: {\n amount: null,\n aliAccount: null,\n aliName: null\n },\n shop: {},\n info: {},\n countData: null\n };\n },\n onLoad: function onLoad(options) {\n this.focus = false;\n this.form.aliAccount = this.userInfo.aliAccount;\n this.form.aliName = this.userInfo.aliName;\n this.getShopStatistics();\n },\n methods: {\n // 鑾峰彇鍙告満閽卞寘缁熻\n getShopStatistics: function getShopStatistics() {\n var _this = this;\n this.$u.api.driverStatistics({}).then(function (res) {\n if (res.code == 200) {\n _this.countData = res.data;\n }\n });\n },\n confirm: function confirm() {\n var _this2 = this;\n if (!this.form.amount) {\n this.tips = '璇疯緭鍏ユ彁鐜伴噾棰�';\n this.focus = true;\n return;\n }\n if (this.form.amount > (this.countData.balance / 100 || 0)) {\n this.tips = '杈撳叆鐨勯噾棰濆凡缁忚秴杩囧彲鎻愮幇閲戦';\n this.focus = true;\n return;\n }\n uni.showModal({\n title: '鎿嶄綔鎻愮ず',\n content: '鎮ㄧ‘璁ゅ彂璧锋娆℃彁鐜扮敵璇峰悧锛�',\n confirmColor: '#004096',\n success: function success(res) {\n if (res.confirm) {\n _this2.applyDo();\n }\n }\n });\n },\n applyDo: function applyDo() {\n var that = this;\n this.$u.api.driverApply(this.form).then(function (res) {\n if (res.code === 200) {\n uni.showToast({\n title: '鎿嶄綔鎴愬姛',\n icon: 'success'\n });\n uni.$emit('accountListReload');\n uni.redirectTo({\n url: \"/pages/withdraw-success/withdraw-success?id=\" + res.data\n });\n }\n });\n },\n inputAll: function inputAll() {\n this.form.amount = this.countData.balance ? this.countData.balance / 100 || 0 : 0;\n }\n }\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvd2l0aGRyYXcvd2l0aGRyYXcudnVlIl0sIm5hbWVzIjpbImNvbXB1dGVkIiwiYmFsYW5jZSIsImFtb3VudCIsImlzQW1vdW50RXhjZWVkZWQiLCJpc1N1Ym1pdEVuYWJsZWQiLCJkYXRhIiwidGlwcyIsImZvY3VzIiwidmFsaWQiLCJiYW5rTGlzdCIsImZvcm0iLCJhbGlBY2NvdW50IiwiYWxpTmFtZSIsInNob3AiLCJpbmZvIiwiY291bnREYXRhIiwib25Mb2FkIiwibWV0aG9kcyIsImdldFNob3BTdGF0aXN0aWNzIiwiY29uZmlybSIsInVuaSIsInRpdGxlIiwiY29udGVudCIsImNvbmZpcm1Db2xvciIsInN1Y2Nlc3MiLCJhcHBseURvIiwidGhlbiIsImljb24iLCJ1cmwiLCJpbnB1dEFsbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFtQ0E7QUFBQTtBQUFBO0FBQUEsZUFDQTtFQUNBQSwwQ0FDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7RUFBQSxFQUNBO0VBQ0FDO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7UUFBQVI7UUFBQVM7UUFBQUM7TUFBQTtNQUNBQztNQUNBQztNQUNBQztJQUNBO0VBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7VUFDQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBLG1DQUNBQztRQUNBO1VBQ0FOO1lBQUFDO1lBQUFNO1VBQUE7VUFDQVA7VUFDQUE7WUFBQVE7VUFBQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEiLCJmaWxlIjoiMTY1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG5cdDx2aWV3IGNsYXNzPVwiYm94XCI+XHJcblx0XHQ8dmlldyBjbGFzcz1cImJnXCI+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiYmctYVwiPuWPr+aPkOeOsOS9meminSjlhYMpPC92aWV3PlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cImJnLWJcIj5cclxuXHRcdFx0XHQ8dGV4dD57eyhjb3VudERhdGEuYmFsYW5jZSAvIDEwMCB8fCAwKS50b0ZpeGVkKDIpfX08L3RleHQ+XHJcblx0XHRcdFx0PHRleHQ+PC90ZXh0PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybVwiPlxyXG4gXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0tYVwiPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWEtbGFiZWxcIj7mj5DnjrDoh7PmlK/ku5jlrp3otKblj7c8L3ZpZXc+XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0tYS12YWxcIj5cclxuXHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXmj5DnjrDotKblj7dcIiB2LW1vZGVsPVwiZm9ybS5hbGlBY2NvdW50XCIgLz5cclxuXHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWFcIj5cclxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybS1hLWxhYmVsXCI+6LSm5Y+35aeT5ZCNPC92aWV3PlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWEtdmFsXCI+XHJcblx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl6LSm5Y+35aeT5ZCNXCIgdi1tb2RlbD1cImZvcm0uYWxpTmFtZVwiIC8+XHJcblx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybS10aXRsZVwiPuaPkOeOsOmHkeminTwvdmlldz5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0taW5wdXRcIj5cclxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiZm9ybS1pbnB1dC1kd1wiPu+/pTwvdmlldz5cclxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiZGlnaXRcIiBwbGFjZWhvbGRlcj1cIjBcIiB2LW1vZGVsPVwiZm9ybS5hbW91bnRcIiA6Zm9jdXM9J2ZvY3VzJyBAYmx1cj1cImZvY3VzID0gZmFsc2VcIiA6c3R5bGU9XCJ7IGNvbG9yOiBpc0Ftb3VudEV4Y2VlZGVkID8gJyNGRjAwMjAnIDogJyMxMTExMTEnIH1cIi8+XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImZvcm0taW5wdXQtdHhcIiBAY2xpY2s9XCJpbnB1dEFsbFwiPuWFqOmDqOaPkOeOsDwvdmlldz5cclxuXHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgdi1pZj1cImlzQW1vdW50RXhjZWVkZWRcIiBjbGFzcz1cImZvcm0tZXJyb3JcIj7ovpPlhaXnmoTph5Hpop3lt7Lnu4/otoXov4flj6/mj5DnjrDph5Hpop08L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmb3JtLWJ0blwiIDpjbGFzcz1cInsgJ2Zvcm0tYnRuLS1kaXNhYmxlZCc6ICFpc1N1Ym1pdEVuYWJsZWQgfVwiIEBjbGljaz1cImlzU3VibWl0RW5hYmxlZCAmJiBjb25maXJtKClcIj7mj5DkuqTnlLPor7c8L3ZpZXc+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdDwvdmlldz5cclxuXHQ8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG5cdGltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCdcclxuXHRleHBvcnQgZGVmYXVsdCB7XHJcblx0XHRjb21wdXRlZDoge1xyXG5cdFx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJ10pLFxyXG5cdFx0XHRiYWxhbmNlKCkge1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmNvdW50RGF0YSA/IHRoaXMuY291bnREYXRhLmJhbGFuY2UgLyAxMDAgOiAwXHJcblx0XHRcdH0sXHJcblx0XHRcdGFtb3VudCgpIHtcclxuXHRcdFx0XHRyZXR1cm4gcGFyc2VGbG9hdCh0aGlzLmZvcm0uYW1vdW50KSB8fCAwXHJcblx0XHRcdH0sXHJcblx0XHRcdGlzQW1vdW50RXhjZWVkZWQoKSB7XHJcblx0XHRcdFx0cmV0dXJuIHRoaXMuZm9ybS5hbW91bnQgJiYgdGhpcy5hbW91bnQgPiB0aGlzLmJhbGFuY2VcclxuXHRcdFx0fSxcclxuXHRcdFx0aXNTdWJtaXRFbmFibGVkKCkge1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmZvcm0uYW1vdW50ICYmIHRoaXMuYW1vdW50ID4gMCAmJiAhdGhpcy5pc0Ftb3VudEV4Y2VlZGVkXHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRkYXRhKCkge1xyXG5cdFx0XHRyZXR1cm4geyBcclxuXHRcdFx0XHR0aXBzOicnLFxyXG5cdFx0XHRcdGZvY3VzOmZhbHNlLFxyXG5cdFx0XHRcdHZhbGlkOmZhbHNlLFxyXG5cdFx0XHRcdGJhbmtMaXN0OltdLFxyXG5cdFx0XHRcdGZvcm06IHsgYW1vdW50OiBudWxsLCBhbGlBY2NvdW50OiBudWxsLCBhbGlOYW1lOiBudWxsIH0sXHJcblx0XHRcdFx0c2hvcDp7fSxcclxuXHRcdFx0XHRpbmZvOnt9LFxyXG5cdFx0XHRcdGNvdW50RGF0YTogbnVsbFxyXG5cdFx0XHR9XHJcblx0XHR9LCBcclxuXHRcdG9uTG9hZChvcHRpb25zKSB7XHJcblx0XHRcdHRoaXMuZm9jdXMgPSBmYWxzZVxyXG5cdFx0XHR0aGlzLmZvcm0uYWxpQWNjb3VudCA9IHRoaXMudXNlckluZm8uYWxpQWNjb3VudFxyXG5cdFx0XHR0aGlzLmZvcm0uYWxpTmFtZSA9IHRoaXMudXNlckluZm8uYWxpTmFtZVxyXG5cdFx0XHR0aGlzLmdldFNob3BTdGF0aXN0aWNzKClcclxuXHRcdH0sXHJcblx0XHRtZXRob2RzOnsgIFxyXG5cdFx0XHQvLyDojrflj5blj7jmnLrpkrHljIXnu5/orqFcclxuXHRcdFx0Z2V0U2hvcFN0YXRpc3RpY3MoKXtcclxuXHRcdFx0XHR0aGlzLiR1LmFwaS5kcml2ZXJTdGF0aXN0aWNzKHt9KS50aGVuKHJlcz0+e1xyXG5cdFx0XHRcdFx0aWYocmVzLmNvZGUgPT0gMjAwKXtcclxuXHRcdFx0XHRcdFx0dGhpcy5jb3VudERhdGEgPSByZXMuZGF0YVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0sXHJcblx0XHRcdGNvbmZpcm0oKXtcclxuXHRcdFx0XHRpZighdGhpcy5mb3JtLmFtb3VudCl7XHJcblx0XHRcdFx0XHR0aGlzLnRpcHMgPSfor7fovpPlhaXmj5DnjrDph5Hpop0nXHJcblx0XHRcdFx0XHR0aGlzLmZvY3VzID0gdHJ1ZVxyXG5cdFx0XHRcdFx0cmV0dXJuXHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGlmKHRoaXMuZm9ybS5hbW91bnQgPiAodGhpcy5jb3VudERhdGEuYmFsYW5jZSAvIDEwMCB8fCAwKSl7XHJcblx0XHRcdFx0XHR0aGlzLnRpcHMgPSfovpPlhaXnmoTph5Hpop3lt7Lnu4/otoXov4flj6/mj5DnjrDph5Hpop0nXHJcblx0XHRcdFx0XHR0aGlzLmZvY3VzID0gdHJ1ZVxyXG5cdFx0XHRcdFx0cmV0dXJuXHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHVuaS5zaG93TW9kYWwoe1xyXG5cdFx0XHRcdFx0dGl0bGU6ICfmk43kvZzmj5DnpLonLFxyXG5cdFx0XHRcdFx0Y29udGVudDogJ+aCqOehruiupOWPkei1t+atpOasoeaPkOeOsOeUs+ivt+WQl++8nycsXHJcblx0XHRcdFx0XHRjb25maXJtQ29sb3I6ICcjMDA0MDk2JyxcclxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0aWYgKHJlcy5jb25maXJtKSB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5hcHBseURvKClcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0sXHJcblx0XHRcdGFwcGx5RG8oKXtcclxuXHRcdFx0XHR2YXIgdGhhdCA9dGhpc1xyXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmRyaXZlckFwcGx5KHRoaXMuZm9ybSlcclxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiB7XHJcblx0XHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7IFxyXG5cdFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTon5pON5L2c5oiQ5YqfJywgaWNvbjonc3VjY2VzcycgfSlcclxuXHRcdFx0XHRcdFx0XHR1bmkuJGVtaXQoJ2FjY291bnRMaXN0UmVsb2FkJylcclxuXHRcdFx0XHRcdFx0XHR1bmkucmVkaXJlY3RUbyh7IHVybDogXCIvcGFnZXMvd2l0aGRyYXctc3VjY2Vzcy93aXRoZHJhdy1zdWNjZXNzP2lkPVwiICsgcmVzLmRhdGEgfSlcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0fSxcclxuXHRcdFx0aW5wdXRBbGwoKXtcclxuXHRcdFx0XHR0aGlzLmZvcm0uYW1vdW50ID0gdGhpcy5jb3VudERhdGEuYmFsYW5jZSA/ICh0aGlzLmNvdW50RGF0YS5iYWxhbmNlIC8gMTAwIHx8IDApIDogMFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZT5cclxuXHRwYWdlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGOUY5RkI7XHJcblx0fVxyXG48L3N0eWxlPlxyXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XHJcblx0LmJveCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdC5iZyB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRwYWRkaW5nOiAzMHJweDtcclxuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0aGVpZ2h0OiAyNDBycHg7XHJcblx0XHRcdGJhY2tncm91bmQ6ICMwMDQwOTY7XHJcblx0XHRcdC5iZy1hIHtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XHJcblx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XHJcblx0XHRcdH1cclxuXHRcdFx0LmJnLWIge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDE0cnB4O1xyXG5cdFx0XHRcdHRleHQge1xyXG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoMSkge1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDQ4cnB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNnJweDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5mb3JtIHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDBycHggMnJweCAyMHJweCAwcnB4IHJnYmEoMCwwLDAsMC4wOCk7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMjBycHg7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XHJcblx0XHRcdFx0cGFkZGluZzogNDhycHggMzBycHg7XHJcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdFx0XHQuZm9ybS1hIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDJycHg7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcnB4IHNvbGlkICNFNUU1RTU7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRcdC5mb3JtLWEtbGFiZWwge1xyXG5cdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAzMHJweDtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICM2NjY2NjY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuZm9ybS1hLXZhbCB7XHJcblx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0XHRcdFx0aW5wdXQge1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAzMDBycHg7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjogIzMzMzMzMztcclxuXHRcdFx0XHRcdFx0XHQvLyBtYXJnaW46IDAgMzBycHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Ly8gdGV4dCB7XHJcblx0XHRcdFx0XHRcdC8vIFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0Ly8gXHRmb250LXNpemU6IDI4cnB4O1xyXG5cdFx0XHRcdFx0XHQvLyBcdGNvbG9yOiAjMzMzMzMzO1xyXG5cdFx0XHRcdFx0XHQvLyB9XHJcblx0XHRcdFx0XHRcdC8vIGltYWdlIHtcclxuXHRcdFx0XHRcdFx0Ly8gXHR3aWR0aDogMzJycHg7XHJcblx0XHRcdFx0XHRcdC8vIFx0aGVpZ2h0OiAzMnJweDtcclxuXHRcdFx0XHRcdFx0Ly8gXHRtYXJnaW4tcmlnaHQ6IDEwcnB4O1xyXG5cdFx0XHRcdFx0XHQvLyB9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5mb3JtLXhpYW4ge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDFycHg7XHJcblx0XHRcdFx0XHRtYXJnaW46IDMwcnB4IDA7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRTVFNUU1O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZm9ybS10aXRsZSB7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzNHJweDtcclxuXHRcdFx0XHRcdGNvbG9yOiAjMTExMTExO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZm9ybS1pbnB1dCB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGhlaWdodDogMTE2cnB4O1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcnB4IHNvbGlkICNFNUU1RTU7XHJcblx0XHRcdFx0XHQuZm9ybS1pbnB1dC1kdyB7XHJcblx0XHRcdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGlucHV0IHtcclxuXHRcdFx0XHRcdFx0ZmxleDogMTtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDQwcnB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogIzExMTExMTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIDMwcnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LmZvcm0taW5wdXQtdHgge1xyXG5cdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHJweDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5mb3JtLWVycm9yIHtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNFNDAwMUQ7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmRpc2FibGUge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNDQ0NDQ0MgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNFRkVGRUYgIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmZvcm0tYnRuIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMDQwOTY7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA0NHJweDtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA0OHJweDtcclxuXHJcblx0XHRcdFx0XHQmLS1kaXNhYmxlZCB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNDQ0NDQ0M7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuPC9zdHlsZT4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///165\n");
/***/ }),
/* 166 */
--
Gitblit v1.9.3