From 5c589a22fa07289260f4b785764ce1442813fb97 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=A7=8B=E4=BA=8E=E5=88=9D=E8=A7=81?= <752204717@qq.com>
Date: Sat, 13 Jul 2024 14:39:17 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E5=8D=93=E5=8F=AF=E4=BB=A5=E6=92=AD?=
=?UTF-8?q?=E6=94=BE=E7=89=88=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../video/AliPlayer copy 2.vue | 772 ++++++++++++
.../commonComponents/video/AliPlayer copy.vue | 1030 +++++++++++++++++
.../commonComponents/video/AliPlayer.vue | 188 +--
.../commonComponents/video/index.vue | 2 +-
unpackage/dist/dev/app-plus/app-service.js | 23 +-
unpackage/dist/dev/app-plus/app-view.js | 717 +++++++++---
6 files changed, 2482 insertions(+), 250 deletions(-)
create mode 100644 pages/component/commonComponents/video/AliPlayer copy 2.vue
create mode 100644 pages/component/commonComponents/video/AliPlayer copy.vue
diff --git a/pages/component/commonComponents/video/AliPlayer copy 2.vue b/pages/component/commonComponents/video/AliPlayer copy 2.vue
new file mode 100644
index 0000000..7e26c1b
--- /dev/null
+++ b/pages/component/commonComponents/video/AliPlayer copy 2.vue
@@ -0,0 +1,772 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/component/commonComponents/video/AliPlayer copy.vue b/pages/component/commonComponents/video/AliPlayer copy.vue
new file mode 100644
index 0000000..1feb7a6
--- /dev/null
+++ b/pages/component/commonComponents/video/AliPlayer copy.vue
@@ -0,0 +1,1030 @@
+
+
+
+
+
+
+
+
diff --git a/pages/component/commonComponents/video/AliPlayer.vue b/pages/component/commonComponents/video/AliPlayer.vue
index 1feb7a6..c024b5f 100644
--- a/pages/component/commonComponents/video/AliPlayer.vue
+++ b/pages/component/commonComponents/video/AliPlayer.vue
@@ -2,7 +2,7 @@
{
this.checkValue();
}, 1000);
} else {
console.log('渲染加载视频开始')
- this.scriptTagStatus = 2;
- this.initAliplayer();
+setTimeout(()=>{
+ _this.initAliplayer();
+},2000)
+
}
},
loadWebPlayerSDK() {
@@ -621,7 +629,9 @@ export default {
const s_tag = document.createElement('script'); // 引入播放器js
s_tag.type = 'text/javascript';
- s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.20.3/aliplayer-min.js';
+ // s_tag.src = 'https://g.alicdn.com/de/prismplayer/2.9.3/aliplayer-min.js';
+ s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.16.3/aliplayer-min.js';
+ // s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.20.3/aliplayer-min.js';
s_tag.charset = 'utf-8';
s_tag.onload = () => {
const s_tag1 = document.createElement('script'); // 引入播放器js
@@ -630,6 +640,7 @@ export default {
'https://player.alicdn.com/aliplayer/presentation/js/aliplayercomponents.min.js';
s_tag1.charset = 'utf-8';
s_tag1.onload = () => {
+ this.scriptTagStatus = 2;
this.checkValue();
resolve();
@@ -674,7 +685,7 @@ export default {
}
_this.initAliplayer();
},
- initAliplayer() {
+ async initAliplayer() {
const _this = this;
// scriptTagStatus 为 2 的时候,说明两个必需引入的 js 文件都已经被引入,且加载完成
if (
@@ -683,67 +694,74 @@ export default {
(_this.instance === null || _this.reloadPlayer)
) {
_this.instance && _this.instance.dispose();
-$("#videoContent").innerHTML= ""
+// $("#" + _this.playerId).innerHTML = "";
// document.querySelector( = "";
// Vue 异步执行 DOM 更新,这样一来代码执行到这里的时候可能 template 里面的 script 标签还没真正创建
// 所以,我们只能在 nextTick 里面初始化 Aliplayer
+ // console.log(_this.playerId,_this.playauth,'98989')
+
_this.$nextTick(() => {
- _this.instance = new Aliplayer({
- id:'videoContent',
- source: _this.source,
+ _this.instance = new Aliplayer({
+ id: "url-player-test",
+ // source: _this.source,
vid: _this.vid,
playauth: _this.playauth,
- width: _this.width,
+ width: '100%',
height: _this.height,
- videoWidth: _this.videoWidth,
- videoHeight: _this.videoHeight,
- preload: _this.preload,
- cover: false,
- isLive: _this.isLive,
- autoplay: _this.autoplay,
- rePlay: _this.rePlay,
- useH5Prism: _this.useH5Prism,
- useFlashPrism: _this.useFlashPrism,
- playsinline: _this.playsinline,
- showBuffer: _this.showBuffer,
- skinRes: _this.skinRes,
+ playsinline: true,
+ controlBarVisibility: "click",
+ // videoWidth: _this.videoWidth,
+ // videoHeight: _this.videoHeight,
+ // preload: _this.preload,
+ cover: "",
+ // isLive: _this.isLive,
+ // autoplay: _this.autoplay,
+ // rePlay: _this.rePlay,
+ // useH5Prism: _this.useH5Prism,
+ // useFlashPrism: _this.useFlashPrism,
+ // playsinline: _this.playsinline,
+ // showBuffer: _this.showBuffer,
+ // skinRes: _this.skinRes,
skinLayout: _this.skinLayout,
- controlBarVisibility: _this.controlBarVisibility,
- showBarTime: _this.showBarTime,
- extraInfo: _this.extraInfo,
- enableSystemMenu: _this.enableSystemMenu,
- format: _this.format,
- mediaType: _this.mediaType,
- qualitySort: _this.qualitySort,
- definition: _this.definition,
- defaultDefinition: _this.defaultDefinition,
- x5_type: _this.x5_type,
- x5_fullscreen: _this.x5_fullscreen,
- x5_video_position: _this.x5_video_position,
- x5_orientation: _this.x5_orientation,
- x5LandscapeAsFullScreen: _this.x5LandscapeAsFullScreen,
- autoPlayDelay: _this.autoPlayDelay,
- autoPlayDelayDisplayText: _this.autoPlayDelayDisplayText,
- language: _this.language,
- languageTexts: _this.languageTexts,
- snapshot: _this.snapshot,
- snapshotWatermark: _this.snapshotWatermark,
- useHlsPluginForSafari: _this.useHlsPluginForSafari,
- enableStashBufferForFlv: _this.enableStashBufferForFlv,
- stashInitialSizeForFlv: _this.stashInitialSizeForFlv,
- loadDataTimeout: _this.loadDataTimeout,
- waitingTimeout: _this.waitingTimeout,
- liveStartTime: _this.liveStartTime,
- liveTimeShiftUrl: _this.liveTimeShiftUrl,
- liveShiftSource: _this.liveShiftSource,
- recreatePlayer: _this.recreatePlayer,
- diagnosisButtonVisible: _this.diagnosisButtonVisible,
- disableSeek: _this.disableSeek,
+ // controlBarVisibility: _this.controlBarVisibility,
+ // showBarTime: _this.showBarTime,
+ // extraInfo: _this.extraInfo,
+ // enableSystemMenu: _this.enableSystemMenu,
+ // format: _this.format,
+ // mediaType: _this.mediaType,
+ // qualitySort: _this.qualitySort,
+ // definition: _this.definition,
+ // defaultDefinition: _this.defaultDefinition,
+ // x5_type: _this.x5_type,
+ // x5_fullscreen: _this.x5_fullscreen,
+ // x5_video_position: _this.x5_video_position,
+ // x5_orientation: _this.x5_orientation,
+ // x5LandscapeAsFullScreen: _this.x5LandscapeAsFullScreen,
+ // autoPlayDelay: _this.autoPlayDelay,
+ // autoPlayDelayDisplayText: _this.autoPlayDelayDisplayText,
+ // language: _this.language,
+ // languageTexts: _this.languageTexts,
+ // snapshot: _this.snapshot,
+ // snapshotWatermark: _this.snapshotWatermark,
+ // useHlsPluginForSafari: _this.useHlsPluginForSafari,
+ // enableStashBufferForFlv: _this.enableStashBufferForFlv,
+ // stashInitialSizeForFlv: _this.stashInitialSizeForFlv,
+ // loadDataTimeout: _this.loadDataTimeout,
+ // waitingTimeout: _this.waitingTimeout,
+ // liveStartTime: _this.liveStartTime,
+ // liveTimeShiftUrl: _this.liveTimeShiftUrl,
+ // liveShiftSource: _this.liveShiftSource,
+ // recreatePlayer: _this.recreatePlayer,
+ // diagnosisButtonVisible: _this.diagnosisButtonVisible,
+ // disableSeek: _this.disableSeek,
encryptType: _this.encryptType,
- progressMarkers: _this.progressMarkers,
- vodRetry: _this.vodRetry,
- liveRetry: _this.liveRetry,
+ "playConfig": {
+ "EncryptType": 'AliyunVoDEncryption'
+ },
+ // progressMarkers: _this.progressMarkers,
+ // vodRetry: _this.vodRetry,
+ // liveRetry: _this.liveRetry,
});
// 绑定事件,当 AliPlayer 初始化完成后,将编辑器实例通过自定义的 ready 事件交出去
@@ -799,30 +817,30 @@ $("#videoContent").innerHTML= ""
this.$emit("error", _this.instance);
});
let start = true;
- let startProgress = 0;
- let endProgress = 0;
- //禁止拖动进度条
- _this.instance.on("startSeek", (e) => {
- if (start) {
- start = false;
- startProgress = _this.instance.getCurrentTime();
- }
- _this.instance.pause();
- // this.$emit("startSeek", _this.instance);
- });
+ // let startProgress = 0;
+ // let endProgress = 0;
+ // //禁止拖动进度条
+ // _this.instance.on("startSeek", (e) => {
+ // if (start) {
+ // start = false;
+ // startProgress = _this.instance.getCurrentTime();
+ // }
+ // _this.instance.pause();
+ // // this.$emit("startSeek", _this.instance);
+ // });
- //禁止拖动进度条
- _this.instance.on("completeSeek", () => {
- start = true;
- endProgress = _this.instance.getCurrentTime();
- if (endProgress < startProgress) {
- _this.instance.seek(endProgress);
- } else {
- _this.instance.seek(startProgress);
- }
- _this.instance.play();
- // this.$emit("completeSeek", _this.instance);
- });
+ // //禁止拖动进度条
+ // _this.instance.on("completeSeek", () => {
+ // start = true;
+ // endProgress = _this.instance.getCurrentTime();
+ // if (endProgress < startProgress) {
+ // _this.instance.seek(endProgress);
+ // } else {
+ // _this.instance.seek(startProgress);
+ // }
+ // _this.instance.play();
+ // // this.$emit("completeSeek", _this.instance);
+ // });
});
}
},
diff --git a/pages/component/commonComponents/video/index.vue b/pages/component/commonComponents/video/index.vue
index b9ab1c8..c68a794 100644
--- a/pages/component/commonComponents/video/index.vue
+++ b/pages/component/commonComponents/video/index.vue
@@ -26,7 +26,7 @@
:showBarTime="true"
:disableSeek="true"
showBarTime="500"
- width="300px"
+
controlBarVisibility="always"
>
diff --git a/unpackage/dist/dev/app-plus/app-service.js b/unpackage/dist/dev/app-plus/app-service.js
index 6448f9f..a33901f 100644
--- a/unpackage/dist/dev/app-plus/app-service.js
+++ b/unpackage/dist/dev/app-plus/app-service.js
@@ -61030,33 +61030,33 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& */ 1042);\n/* harmony import */ var _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=script&lang=js& */ 1044);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 28);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/component/commonComponents/video/AliPlayer.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBOFM7QUFDOVM7QUFDNkQ7QUFDTDs7O0FBR3hEO0FBQytLO0FBQy9LLGdCQUFnQiw2S0FBVTtBQUMxQixFQUFFLCtFQUFNO0FBQ1IsRUFBRSw0UUFBTTtBQUNSLEVBQUUscVJBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsZ1JBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMTA0MS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zLCByZWN5Y2xhYmxlUmVuZGVyLCBjb21wb25lbnRzIH0gZnJvbSBcIi4vQWxpUGxheWVyLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD02NzFiYjc0OCZmaWx0ZXItbW9kdWxlcz1leUp5Wlc1a1pYSlRZM0pwY0hRaU9uc2lkSGx3WlNJNkluSmxibVJsY21weklpd2lZMjl1ZEdWdWRDSTZJaUlzSW5OMFlYSjBJam94TkRreU1Td2lZWFIwY25NaU9uc2liVzlrZFd4bElqb2ljbVZ1WkdWeVUyTnlhWEIwSWl3aWJHRnVaeUk2SW1wekluMHNJbVZ1WkNJNk1qazVOekY5ZlElM0QlM0QmXCJcbnZhciByZW5kZXJqc1xuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9BbGlQbGF5ZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9BbGlQbGF5ZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi/ova/ku7Yv6L2v5Lu2L0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgZmFsc2UsXG4gIGNvbXBvbmVudHMsXG4gIHJlbmRlcmpzXG4pXG5cbmNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwicGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vQWxpUGxheWVyLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///1041\n");
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& */ 1042);\n/* harmony import */ var _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=script&lang=js& */ 1044);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 28);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/component/commonComponents/video/AliPlayer.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBOFM7QUFDOVM7QUFDNkQ7QUFDTDs7O0FBR3hEO0FBQytLO0FBQy9LLGdCQUFnQiw2S0FBVTtBQUMxQixFQUFFLCtFQUFNO0FBQ1IsRUFBRSw0UUFBTTtBQUNSLEVBQUUscVJBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsZ1JBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMTA0MS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zLCByZWN5Y2xhYmxlUmVuZGVyLCBjb21wb25lbnRzIH0gZnJvbSBcIi4vQWxpUGxheWVyLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD02NzFiYjc0OCZmaWx0ZXItbW9kdWxlcz1leUp5Wlc1a1pYSlRZM0pwY0hRaU9uc2lkSGx3WlNJNkluSmxibVJsY21weklpd2lZMjl1ZEdWdWRDSTZJaUlzSW5OMFlYSjBJam94TkRreU5pd2lZWFIwY25NaU9uc2liVzlrZFd4bElqb2ljbVZ1WkdWeVUyTnlhWEIwSWl3aWJHRnVaeUk2SW1wekluMHNJbVZ1WkNJNk16QTNNekI5ZlElM0QlM0QmXCJcbnZhciByZW5kZXJqc1xuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9BbGlQbGF5ZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9BbGlQbGF5ZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi8uLi/ova/ku7Yv6L2v5Lu2L0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL0BkY2xvdWRpby92dWUtY2xpLXBsdWdpbi11bmkvcGFja2FnZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgbnVsbCxcbiAgZmFsc2UsXG4gIGNvbXBvbmVudHMsXG4gIHJlbmRlcmpzXG4pXG5cbmNvbXBvbmVudC5vcHRpb25zLl9fZmlsZSA9IFwicGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vQWxpUGxheWVyLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///1041\n");
/***/ }),
/* 1042 */
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& ***!
+ !*** D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& */ 1043);
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& */ 1043);
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_AliPlayer_vue_vue_type_template_id_671bb748_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"]; });
/***/ }),
/* 1043 */
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& ***!
+ !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -61133,7 +61133,7 @@ var render = function () {
staticClass: _vm._$s(1, "sc", "prism-player"),
style: _vm._$s(1, "s", _vm.playStyle),
attrs: {
- id: "videoContent",
+ id: "url-player-test",
source: _vm._$s(1, "change:source", _vm.source),
vid: _vm._$s(1, "change:vid", _vm.vid),
playauth: _vm._$s(1, "change:playauth", _vm.playauth),
@@ -61275,7 +61275,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default2 = {\n name: \"Aliplayer\",\n props: {\n source: {\n type: String,\n default: \"\"\n },\n //媒体转码服务的媒体Id。\n vid: {\n type: String,\n default: \"\"\n },\n //播放权证\n playauth: {\n type: String,\n default: \"\"\n },\n //容器的大小\n height: {\n type: String,\n default: \"460px\"\n },\n //容器的大小\n width: {\n type: String,\n default: \"100%\"\n },\n //视频的高度大小\n videoWidth: {\n type: String,\n default: \"100%\"\n },\n //视频的宽度大小\n videoHeight: {\n type: String,\n default: \"460px\"\n },\n //播放器自动加载,目前仅h5可用\n preload: {\n type: Boolean,\n default: false\n },\n //播放器默认封面图片,请填写正确的图片url地址。需要autoplay为’false’时,才生效\n cover: {\n type: String,\n default: \"\"\n },\n //播放内容是否为直播,直播时会禁止用户拖动进度条。\n isLive: {\n type: Boolean,\n default: false\n },\n //播放器是否自动播放,在移动端autoplay属性会失效。\n autoplay: {\n type: Boolean,\n default: false\n },\n //播放器自动循环播放。\n rePlay: {\n type: Boolean,\n default: false\n },\n //指定使用H5播放器。\n useH5Prism: {\n type: Boolean,\n default: false\n },\n //指定使用Flash播放器。\n useFlashPrism: {\n type: Boolean,\n default: false\n },\n //H5是否内置播放,有的Android浏览器不起作用。\n playsinline: {\n type: Boolean,\n default: false\n },\n //显示播放时缓冲图标,默认true。\n showBuffer: {\n type: Boolean,\n default: true\n },\n //URL 皮肤图片,不建议随意修改该字段,如要修改,请参照皮肤定制。\n skinRes: {\n type: String,\n default: \"\"\n },\n //进度条\n skinLayout: {\n type: Array,\n default: function _default() {\n return [{\n name: \"bigPlayButton\",\n align: \"cc\",\n x: 30,\n y: 80\n }, {\n name: \"errorDisplay\",\n align: \"tlabs\",\n x: 0,\n y: 0\n }, {\n name: \"infoDisplay\"\n }, {\n name: \"controlBar\",\n align: \"blabs\",\n x: 0,\n y: 0,\n children: [{\n name: \"progress\",\n align: \"blabs\",\n x: 0,\n y: 44\n },\n //播放进度条\n {\n name: \"playButton\",\n align: \"tl\",\n x: 15,\n y: 12\n },\n //播放开始暂停按钮\n {\n name: \"timeDisplay\",\n align: \"tl\",\n x: 10,\n y: 7\n },\n //播放视频时间\n {\n name: \"fullScreenButton\",\n //全屏按钮\n align: \"tr\",\n x: 10,\n y: 10\n }, {\n name: \"volume\",\n //音量\n align: \"tr\",\n x: 5,\n y: 10\n }]\n }];\n }\n },\n //默认为‘hover’。可选的值为:‘click’、‘hover’、‘always’。\n controlBarVisibility: {\n type: String,\n default: \"hover\"\n },\n //控制栏自动隐藏时间(ms)\n showBarTime: {\n type: String,\n default: \"\"\n },\n /***\r\n * JSON串用于定制性接口参数,目前支持:\r\n 1.“fullTitle”:“测试页面”\r\n 全屏时显示视频标题(仅flash支持)。\r\n 2. “m3u8BufferLength”:“30”\r\n 播放m3u8时加载缓存ts文件长度单位(秒)(仅flash支持)。\r\n 3. “liveStartTime”:“2016/08/17 12:00:00”\r\n 直播开始时间,用于提示直播未开始(仅flash支持)。\r\n 4. “liveOverTime”:“2016/08/17 14:00:00”\r\n 直播结束时间,用于提示直播结束(仅flash支持)。\r\n */\n extraInfo: {\n type: String,\n default: \"\"\n },\n /**\r\n *是否允许系统右键菜单显示,默认为false。\r\n */\n enableSystemMenu: {\n type: Boolean,\n default: false\n },\n /***\r\n *\r\n *指定播放地址格式,只有使用vid的播放方式时支持\r\n 可选值为’mp4’、’m3u8’、’flv’、’mp3’,默认为空,仅H5支持。\r\n * */\n format: {\n type: String,\n default: \"m3u8\"\n },\n /***\r\n *\r\n * 指定返回音频还是视频,只有使用vid的播放方式时支持。\r\n 可选值为’video’和’audio’,默认为’video’\r\n ‘audio’主要是针对只包含音频的视频格式,比如音频的mp4,仅H5支持。\r\n * */\n mediaType: {\n type: String,\n default: \"video\"\n },\n /***\r\n * 指定排序方式,只有使用vid + plauth播放方式时支持。\r\n ‘desc’表示按倒序排序(即:从大到小排序)\r\n ‘asc’表示按正序排序(即:从小到大排序)\r\n 默认值:‘asc’,仅H5支持。\r\n * */\n qualitySort: {\n type: String,\n default: \"asc\"\n },\n /***\r\n * 显示视频清晰度,多个用逗号分隔,比如:’FD,LD’,此值是vid对应流清晰度的一个子集,\r\n 取值范围:FD(流畅)LD(标清)SD(高清)HD(超清)OD(原画)2K(2K)4K(4K),仅H5支持。\r\n * */\n definition: {\n type: String,\n default: \"\"\n },\n /**\r\n * 默认视频清晰度,此值是vid对应流的一个清晰度,\r\n 取值范围:FD(流畅)LD(标清)SD(高清)HD(超清)OD(原画)2K(2K)4K(4K),仅H5支持。\r\n * */\n defaultDefinition: {\n type: String,\n default: \"\"\n },\n /**\r\n * 声明启用同层H5播放器,启用时设置的值为‘h5’\r\n * */\n x5_type: {\n type: String,\n default: \"h5\"\n },\n /**\r\n * 声明视频播放时是否进入到TBS的全屏模式,默认为false。\r\n 当需要把视频做为背景时,设置为true\r\n * */\n x5_fullscreen: {\n type: Boolean,\n default: false\n },\n /**\r\n * 声明视频播在界面上的位置,默认为“center”。\r\n 可选值为:“top”,“center”\r\n * */\n x5_video_position: {\n type: String,\n default: \"center\"\n },\n /**\r\n * 声明 TBS 播放器支持的方向,可选值:\r\n landscape:横屏)\r\n portraint:竖屏\r\n landscape\r\n * */\n x5_orientation: {\n type: String,\n default: \"portraint\"\n },\n /**\r\n * 声明TBS全屏播放是否横屏,默认值为true。\r\n * */\n x5LandscapeAsFullScreen: {\n type: String,\n default: \"true\"\n },\n /**\r\n * 延迟播放时间,单位为秒。\r\n * */\n autoPlayDelay: {\n type: Number,\n default: 0\n },\n /**\r\n * 延迟播放提示文本\r\n * */\n autoPlayDelayDisplayText: {\n type: String,\n default: \"正在转码,请稍后......\"\n },\n /**\r\n * 国际化,默认为‘zh-cn’。\r\n 如果未设置,则采用浏览器语言。\r\n 可选值为‘zh-cn’、‘en-us’或其它值。\r\n * */\n language: {\n type: String,\n default: \"zh-cn\"\n },\n /**\r\n * 自定义国际化文本json结构,key的值需要和language属性值对应起来。\r\n 例子:{jp:{Play:”Play”}}\r\n * */\n languageTexts: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n /**\r\n * flash启用截图功能\r\n * */\n snapshot: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5设置截图水印。\r\n * */\n snapshotWatermark: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n /**\r\n * Safari浏览器可以启用Hls插件播放,Safari 11除外。\r\n * */\n useHlsPluginForSafari: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5播放flv时,设置是否启用播放缓存,只在直播下起作用。\r\n * */\n enableStashBufferForFlv: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5播放flv时,初始缓存大小,只在直播下起作用。\r\n * */\n stashInitialSizeForFlv: {\n type: Number,\n default: 10\n },\n /**\r\n * 缓冲多长时间后,提示用户切换低清晰度,默认:20秒。\r\n * */\n loadDataTimeout: {\n type: Number,\n default: 20\n },\n /**\r\n *最大缓冲超时时间,超过这个时间会有错误提示,默认:60秒。\r\n * */\n waitingTimeout: {\n type: Number,\n default: 60\n },\n /**\r\n * 直播开始时间,直播时移功能使用,格式为:“2018/01/04 12:00:00”。\r\n * */\n liveStartTime: {\n type: String,\n default: \"\"\n },\n /**\r\n * 直播结束时间,直播时移功能使用,格式为:“2018/01/04 12:00:00”。\r\n * */\n liveOverTime: {\n type: String,\n default: \"\"\n },\n /**\r\n * 直播可用时移查询地址,详情参见直播时移。\r\n * https://help.aliyun.com/document_detail/65129.html?spm=a2c4g.11186623.2.28.3603bf80LR74sS\r\n * */\n liveTimeShiftUrl: {\n type: String,\n default: \"\"\n },\n /**\r\n * flv直播和hls时移切换是,重新创建播放器方法,详情参见直播时移。\r\n * https://help.aliyun.com/document_detail/65129.html?spm=a2c4g.11186623.2.28.3603bf80LR74sS\r\n * */\n recreatePlayer: {\n type: Function,\n default: function _default() {}\n },\n /**\r\n *是否显示检测按钮,默认为true。\r\n * */\n diagnosisButtonVisible: {\n type: Boolean,\n default: true\n },\n /**\r\n * 禁用进度条的Seek,默认为false,仅Flash支持。\r\n * */\n disableSeek: {\n type: Boolean,\n default: false\n },\n /**\r\n * 加密类型,播放点播私有加密视频时,设置值为1,默认值为0。\r\n * */\n encryptType: {\n type: Number,\n default: 0\n },\n /**\r\n * 进度条打点内容数组,详情参见进度条打点。\r\n * [\r\n {offset:0,text:'阿里视频云端到云到端服务的重要一环'},\r\n {offset:10,text:'除了支持点播和直播的基础播放功能外'},\r\n {offset:20,text:'深度融合视频云业务'},\r\n {offset:30,text:'为用户提供简单、快速、安全、稳定的视频播放服务'},\r\n {offset:40,text:'安装播放器Demo进行体验'},\r\n {offset:50,text:'开发人员请点击SDK下载'}\r\n ]\r\n * https://yq.aliyun.com/articles/686043?spm=a2c4g.11186623.2.31.3603bf80LR74sS\r\n * */\n progressMarkers: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n /**\r\n * 点播失败重试次数,默认3次\r\n * */\n vodRetry: {\n type: Number,\n default: 3\n },\n /**\r\n * 直播播放失败重试次数,默认5次\r\n * */\n liveRetry: {\n type: Number,\n default: 5\n },\n playStyle: {\n type: String,\n default: \"\"\n },\n aliplayerSdkPath: {\n // Aliplayer 代码的路径\n type: String,\n default: \"https://g.alicdn.com/de/prismplayer/2.9.3/aliplayer-min.js\"\n }\n },\n data: function data() {\n return {};\n },\n created: function created() {},\n beforeDestroy: function beforeDestroy() {},\n mounted: function mounted() {},\n methods: {}\n};\nexports.default = _default2;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vQWxpUGxheWVyLnZ1ZSJdLCJuYW1lcyI6WyJuYW1lIiwicHJvcHMiLCJzb3VyY2UiLCJ0eXBlIiwiZGVmYXVsdCIsInZpZCIsInBsYXlhdXRoIiwiaGVpZ2h0Iiwid2lkdGgiLCJ2aWRlb1dpZHRoIiwidmlkZW9IZWlnaHQiLCJwcmVsb2FkIiwiY292ZXIiLCJpc0xpdmUiLCJhdXRvcGxheSIsInJlUGxheSIsInVzZUg1UHJpc20iLCJ1c2VGbGFzaFByaXNtIiwicGxheXNpbmxpbmUiLCJzaG93QnVmZmVyIiwic2tpblJlcyIsInNraW5MYXlvdXQiLCJhbGlnbiIsIngiLCJ5IiwiY2hpbGRyZW4iLCJjb250cm9sQmFyVmlzaWJpbGl0eSIsInNob3dCYXJUaW1lIiwiZXh0cmFJbmZvIiwiZW5hYmxlU3lzdGVtTWVudSIsImZvcm1hdCIsIm1lZGlhVHlwZSIsInF1YWxpdHlTb3J0IiwiZGVmaW5pdGlvbiIsImRlZmF1bHREZWZpbml0aW9uIiwieDVfdHlwZSIsIng1X2Z1bGxzY3JlZW4iLCJ4NV92aWRlb19wb3NpdGlvbiIsIng1X29yaWVudGF0aW9uIiwieDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW4iLCJhdXRvUGxheURlbGF5IiwiYXV0b1BsYXlEZWxheURpc3BsYXlUZXh0IiwibGFuZ3VhZ2UiLCJsYW5ndWFnZVRleHRzIiwic25hcHNob3QiLCJzbmFwc2hvdFdhdGVybWFyayIsInVzZUhsc1BsdWdpbkZvclNhZmFyaSIsImVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2Iiwic3Rhc2hJbml0aWFsU2l6ZUZvckZsdiIsImxvYWREYXRhVGltZW91dCIsIndhaXRpbmdUaW1lb3V0IiwibGl2ZVN0YXJ0VGltZSIsImxpdmVPdmVyVGltZSIsImxpdmVUaW1lU2hpZnRVcmwiLCJyZWNyZWF0ZVBsYXllciIsImRpYWdub3Npc0J1dHRvblZpc2libGUiLCJkaXNhYmxlU2VlayIsImVuY3J5cHRUeXBlIiwicHJvZ3Jlc3NNYXJrZXJzIiwidm9kUmV0cnkiLCJsaXZlUmV0cnkiLCJwbGF5U3R5bGUiLCJhbGlwbGF5ZXJTZGtQYXRoIiwiZGF0YSIsImNyZWF0ZWQiLCJiZWZvcmVEZXN0cm95IiwibW91bnRlZCIsIm1ldGhvZHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dCQWlJQTtFQUNBQTtFQUNBQztJQUNBQztNQUNBQztNQUNBQztJQUNBO0lBQ0E7SUFDQUM7TUFDQUY7TUFDQUM7SUFDQTtJQUNBO0lBQ0FFO01BQ0FIO01BQ0FDO0lBQ0E7SUFDQTtJQUNBRztNQUNBSjtNQUNBQztJQUNBO0lBQ0E7SUFDQUk7TUFDQUw7TUFDQUM7SUFDQTtJQUNBO0lBQ0FLO01BQ0FOO01BQ0FDO0lBQ0E7SUFDQTtJQUNBTTtNQUNBUDtNQUNBQztJQUNBO0lBQ0E7SUFDQU87TUFDQVI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FRO01BQ0FUO01BQ0FDO0lBQ0E7SUFDQTtJQUNBUztNQUNBVjtNQUNBQztJQUNBO0lBQ0E7SUFDQVU7TUFDQVg7TUFDQUM7SUFDQTtJQUNBO0lBQ0FXO01BQ0FaO01BQ0FDO0lBQ0E7SUFDQTtJQUNBWTtNQUNBYjtNQUNBQztJQUNBO0lBQ0E7SUFDQWE7TUFDQWQ7TUFDQUM7SUFDQTtJQUNBO0lBQ0FjO01BQ0FmO01BQ0FDO0lBQ0E7SUFDQTtJQUNBZTtNQUNBaEI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FnQjtNQUNBakI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FpQjtNQUNBbEI7TUFDQUM7UUFDQSxRQUNBO1VBQ0FKO1VBQ0FzQjtVQUNBQztVQUNBQztRQUNBLEdBQ0E7VUFDQXhCO1VBQ0FzQjtVQUNBQztVQUNBQztRQUNBLEdBQ0E7VUFDQXhCO1FBQ0EsR0FDQTtVQUNBQTtVQUNBc0I7VUFDQUM7VUFDQUM7VUFDQUMsV0FDQTtZQUFBekI7WUFBQXNCO1lBQUFDO1lBQUFDO1VBQUE7VUFBQTtVQUNBO1lBQUF4QjtZQUFBc0I7WUFBQUM7WUFBQUM7VUFBQTtVQUFBO1VBQ0E7WUFBQXhCO1lBQUFzQjtZQUFBQztZQUFBQztVQUFBO1VBQUE7VUFDQTtZQUNBeEI7WUFBQTtZQUNBc0I7WUFDQUM7WUFDQUM7VUFDQSxHQUNBO1lBQ0F4QjtZQUFBO1lBQ0FzQjtZQUNBQztZQUNBQztVQUNBO1FBRUEsRUFDQTtNQUNBO0lBQ0E7SUFDQTtJQUNBRTtNQUNBdkI7TUFDQUM7SUFDQTtJQUNBO0lBQ0F1QjtNQUNBeEI7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXdCO01BQ0F6QjtNQUNBQztJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0F5QjtNQUNBMUI7TUFDQUM7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQTBCO01BQ0EzQjtNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0EyQjtNQUNBNUI7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBNEI7TUFDQTdCO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBNkI7TUFDQTlCO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBOEI7TUFDQS9CO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQStCO01BQ0FoQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQWdDO01BQ0FqQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQWlDO01BQ0FsQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0FrQztNQUNBbkM7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBbUM7TUFDQXBDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQW9DO01BQ0FyQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0FxQztNQUNBdEM7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXNDO01BQ0F2QztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXVDO01BQ0F4QztNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBd0M7TUFDQXpDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQXlDO01BQ0ExQztNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBMEM7TUFDQTNDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQTJDO01BQ0E1QztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0E0QztNQUNBN0M7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBNkM7TUFDQTlDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQThDO01BQ0EvQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0ErQztNQUNBaEQ7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBZ0Q7TUFDQWpEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBaUQ7TUFDQWxEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBa0Q7TUFDQW5EO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQW1EO01BQ0FwRDtNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0FvRDtNQUNBckQ7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBcUQ7TUFDQXREO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXNEO01BQ0F2RDtNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBdUQ7TUFDQXhEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQXdEO01BQ0F6RDtNQUNBQztJQUNBO0lBRUF5RDtNQUNBMUQ7TUFDQUM7SUFDQTtJQUNBMEQ7TUFDQTtNQUNBM0Q7TUFDQUM7SUFDQTtFQUNBO0VBQ0EyRDtJQUNBO0VBQ0E7RUFDQUM7RUFDQUM7RUFDQUM7RUFDQUM7QUFDQTtBQUFBIiwiZmlsZSI6IjEwNDUuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgPGRpdj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJwcmlzbS1wbGF5ZXJcIlxyXG4gICAgICBpZD1cInZpZGVvQ29udGVudFwiXHJcbiAgICAgIDpzdHlsZT1cInBsYXlTdHlsZVwiXHJcbiAgICAgIDpzb3VyY2U9XCJzb3VyY2VcIlxyXG4gICAgICA6dmlkPVwidmlkXCJcclxuICAgICAgOnBsYXlhdXRoPVwicGxheWF1dGhcIlxyXG4gICAgICA6aGVpZ2h0PVwiaGVpZ2h0XCJcclxuICAgICAgOndpZHRoPVwid2lkdGhcIlxyXG4gICAgICA6dmlkZW9XaWR0aD1cInZpZGVvV2lkdGhcIlxyXG4gICAgICA6dmlkZW9IZWlnaHQ9XCJ2aWRlb0hlaWdodFwiXHJcbiAgICAgIDpwcmVsb2FkPVwicHJlbG9hZFwiXHJcbiAgICAgIDpjb3Zlcj1cImNvdmVyXCJcclxuICAgICAgOmlzTGl2ZT1cImlzTGl2ZVwiXHJcbiAgICAgIDphdXRvcGxheT1cImF1dG9wbGF5XCJcclxuICAgICAgOnJlUGxheT1cInJlUGxheVwiXHJcbiAgICAgIDp1c2VINVByaXNtPVwidXNlSDVQcmlzbVwiXHJcbiAgICAgIDp1c2VGbGFzaFByaXNtPVwidXNlRmxhc2hQcmlzbVwiXHJcbiAgICAgIDpwbGF5c2lubGluZT1cInBsYXlzaW5saW5lXCJcclxuICAgICAgOnNob3dCdWZmZXI9XCJzaG93QnVmZmVyXCJcclxuICAgICAgOnNraW5SZXM9XCJza2luUmVzXCJcclxuICAgICAgOnNraW5MYXlvdXQ9XCJza2luTGF5b3V0XCJcclxuICAgICAgOmNvbnRyb2xCYXJWaXNpYmlsaXR5PVwiY29udHJvbEJhclZpc2liaWxpdHlcIlxyXG4gICAgICA6c2hvd0JhclRpbWU9XCJzaG93QmFyVGltZVwiXHJcbiAgICAgIDpleHRyYUluZm89XCJleHRyYUluZm9cIlxyXG4gICAgICA6ZW5hYmxlU3lzdGVtTWVudT1cImVuYWJsZVN5c3RlbU1lbnVcIlxyXG4gICAgICA6Zm9ybWF0PVwiZm9ybWF0XCJcclxuICAgICAgOm1lZGlhVHlwZT1cIm1lZGlhVHlwZVwiXHJcbiAgICAgIDpxdWFsaXR5U29ydD1cInF1YWxpdHlTb3J0XCJcclxuICAgICAgOmRlZmluaXRpb249XCJkZWZpbml0aW9uXCJcclxuICAgICAgOng1X3R5cGU9XCJ4NV90eXBlXCJcclxuICAgICAgOng1X2Z1bGxzY3JlZW49XCJ4NV9mdWxsc2NyZWVuXCJcclxuICAgICAgOng1X3ZpZGVvX3Bvc2l0aW9uPVwieDVfdmlkZW9fcG9zaXRpb25cIlxyXG4gICAgICA6eDVfb3JpZW50YXRpb249XCJ4NV9vcmllbnRhdGlvblwiXHJcbiAgICAgIDp4NUxhbmRzY2FwZUFzRnVsbFNjcmVlbj1cIng1TGFuZHNjYXBlQXNGdWxsU2NyZWVuXCJcclxuICAgICAgOmF1dG9QbGF5RGVsYXk9XCJhdXRvUGxheURlbGF5XCJcclxuICAgICAgOmF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dD1cImF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dFwiXHJcbiAgICAgIDpsYW5ndWFnZT1cImxhbmd1YWdlXCJcclxuICAgICAgOmxhbmd1YWdlVGV4dHM9XCJsYW5ndWFnZVRleHRzXCJcclxuICAgICAgOnNuYXBzaG90PVwic25hcHNob3RcIlxyXG4gICAgICA6c25hcHNob3RXYXRlcm1hcms9XCJzbmFwc2hvdFdhdGVybWFya1wiXHJcbiAgICAgIDp1c2VIbHNQbHVnaW5Gb3JTYWZhcmk9XCJ1c2VIbHNQbHVnaW5Gb3JTYWZhcmlcIlxyXG4gICAgICA6ZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHY9XCJlbmFibGVTdGFzaEJ1ZmZlckZvckZsdlwiXHJcbiAgICAgIDpzdGFzaEluaXRpYWxTaXplRm9yRmx2PVwic3Rhc2hJbml0aWFsU2l6ZUZvckZsdlwiXHJcbiAgICAgIDpsb2FkRGF0YVRpbWVvdXQ9XCJsb2FkRGF0YVRpbWVvdXRcIlxyXG4gICAgICA6d2FpdGluZ1RpbWVvdXQ9XCJ3YWl0aW5nVGltZW91dFwiXHJcbiAgICAgIDpsaXZlU3RhcnRUaW1lPVwibGl2ZVN0YXJ0VGltZVwiXHJcbiAgICAgIDpsaXZlT3ZlclRpbWU9XCJsaXZlT3ZlclRpbWVcIlxyXG4gICAgICA6bGl2ZVRpbWVTaGlmdFVybD1cImxpdmVUaW1lU2hpZnRVcmxcIlxyXG4gICAgICA6cmVjcmVhdGVQbGF5ZXI9XCJyZWNyZWF0ZVBsYXllclwiXHJcbiAgICAgIDpkaWFnbm9zaXNCdXR0b25WaXNpYmxlPVwiZGlhZ25vc2lzQnV0dG9uVmlzaWJsZVwiXHJcbiAgICAgIDpkaXNhYmxlU2Vlaz1cImRpc2FibGVTZWVrXCJcclxuICAgICAgOmVuY3J5cHRUeXBlPVwiZW5jcnlwdFR5cGVcIlxyXG4gICAgICA6cHJvZ3Jlc3NNYXJrZXJzPVwicHJvZ3Jlc3NNYXJrZXJzXCJcclxuICAgICAgOnZvZFJldHJ5PVwidm9kUmV0cnlcIlxyXG4gICAgICA6bGl2ZVJldHJ5PVwibGl2ZVJldHJ5XCJcclxuICAgICAgOnBsYXlTdHlsZT1cInBsYXlTdHlsZVwiXHJcbiAgICAgIDphbGlwbGF5ZXJTZGtQYXRoPVwiYWxpcGxheWVyU2RrUGF0aFwiXHJcbiAgICAgIDpjaGFuZ2U6c291cmNlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzb3VyY2VcIlxyXG4gICAgICA6Y2hhbmdlOnZpZD1cInJlbmRlclNjcmlwdC5yZWNlaXZldmlkXCJcclxuICAgICAgOmNoYW5nZTpwbGF5YXV0aD1cInJlbmRlclNjcmlwdC5yZWNlaXZlcGxheWF1dGhcIlxyXG4gICAgICA6Y2hhbmdlOmhlaWdodD1cInJlbmRlclNjcmlwdC5yZWNlaXZlaGVpZ2h0XCJcclxuICAgICAgOmNoYW5nZTp3aWR0aD1cInJlbmRlclNjcmlwdC5yZWNlaXZld2lkdGhcIlxyXG4gICAgICA6Y2hhbmdlOnZpZGVvV2lkdGg9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXZpZGVvV2lkdGhcIlxyXG4gICAgICA6Y2hhbmdlOnZpZGVvSGVpZ2h0PVwicmVuZGVyU2NyaXB0LnJlY2VpdmV2aWRlb0hlaWdodFwiXHJcbiAgICAgIDpjaGFuZ2U6cHJlbG9hZD1cInJlbmRlclNjcmlwdC5yZWNlaXZlcHJlbG9hZFwiXHJcbiAgICAgIDpjaGFuZ2U6Y292ZXI9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWNvdmVyXCJcclxuICAgICAgOmNoYW5nZTppc0xpdmU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWlzTGl2ZVwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b3BsYXk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWF1dG9wbGF5XCJcclxuICAgICAgOmNoYW5nZTpyZVBsYXk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXJlUGxheVwiXHJcbiAgICAgIDpjaGFuZ2U6dXNlSDVQcmlzbT1cInJlbmRlclNjcmlwdC5yZWNlaXZldXNlSDVQcmlzbVwiXHJcbiAgICAgIDpjaGFuZ2U6dXNlRmxhc2hQcmlzbT1cInJlbmRlclNjcmlwdC5yZWNlaXZldXNlRmxhc2hQcmlzbVwiXHJcbiAgICAgIDpjaGFuZ2U6cGxheXNpbmxpbmU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXBsYXlzaW5saW5lXCJcclxuICAgICAgOmNoYW5nZTpzaG93QnVmZmVyPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzaG93QnVmZmVyXCJcclxuICAgICAgOmNoYW5nZTpza2luUmVzPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVza2luUmVzXCJcclxuICAgICAgOmNoYW5nZTpza2luTGF5b3V0PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVza2luTGF5b3V0XCJcclxuICAgICAgOmNoYW5nZTpjb250cm9sQmFyVmlzaWJpbGl0eT1cInJlbmRlclNjcmlwdC5yZWNlaXZlY29udHJvbEJhclZpc2liaWxpdHlcIlxyXG4gICAgICA6Y2hhbmdlOnNob3dCYXJUaW1lPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzaG93QmFyVGltZVwiXHJcbiAgICAgIDpjaGFuZ2U6ZXh0cmFJbmZvPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVleHRyYUluZm9cIlxyXG4gICAgICA6Y2hhbmdlOmVuYWJsZVN5c3RlbU1lbnU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWVuYWJsZVN5c3RlbU1lbnVcIlxyXG4gICAgICA6Y2hhbmdlOmZvcm1hdD1cInJlbmRlclNjcmlwdC5yZWNlaXZlZm9ybWF0XCJcclxuICAgICAgOmNoYW5nZTptZWRpYVR5cGU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZW1lZGlhVHlwZVwiXHJcbiAgICAgIDpjaGFuZ2U6cXVhbGl0eVNvcnQ9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXF1YWxpdHlTb3J0XCJcclxuICAgICAgOmNoYW5nZTpkZWZpbml0aW9uPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVkZWZpbml0aW9uXCJcclxuICAgICAgOmNoYW5nZTp4NV90eXBlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV90eXBlXCJcclxuICAgICAgOmNoYW5nZTp4NV9mdWxsc2NyZWVuPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV9mdWxsc2NyZWVuXCJcclxuICAgICAgOmNoYW5nZTp4NV92aWRlb19wb3NpdGlvbj1cInJlbmRlclNjcmlwdC5yZWNlaXZleDVfdmlkZW9fcG9zaXRpb25cIlxyXG4gICAgICA6Y2hhbmdlOng1X29yaWVudGF0aW9uPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV9vcmllbnRhdGlvblwiXHJcbiAgICAgIDpjaGFuZ2U6eDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW49XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZXg1TGFuZHNjYXBlQXNGdWxsU2NyZWVuXHJcbiAgICAgIFwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b1BsYXlEZWxheT1cInJlbmRlclNjcmlwdC5yZWNlaXZlYXV0b1BsYXlEZWxheVwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b1BsYXlEZWxheURpc3BsYXlUZXh0PVwiXHJcbiAgICAgICAgcmVuZGVyU2NyaXB0LnJlY2VpdmVhdXRvUGxheURlbGF5RGlzcGxheVRleHRcclxuICAgICAgXCJcclxuICAgICAgOmNoYW5nZTpsYW5ndWFnZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlbGFuZ3VhZ2VcIlxyXG4gICAgICA6Y2hhbmdlOmxhbmd1YWdlVGV4dHM9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWxhbmd1YWdlVGV4dHNcIlxyXG4gICAgICA6Y2hhbmdlOnNuYXBzaG90PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzbmFwc2hvdFwiXHJcbiAgICAgIDpjaGFuZ2U6c25hcHNob3RXYXRlcm1hcms9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXNuYXBzaG90V2F0ZXJtYXJrXCJcclxuICAgICAgOmNoYW5nZTp1c2VIbHNQbHVnaW5Gb3JTYWZhcmk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXVzZUhsc1BsdWdpbkZvclNhZmFyaVwiXHJcbiAgICAgIDpjaGFuZ2U6ZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHY9XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZWVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2XHJcbiAgICAgIFwiXHJcbiAgICAgIDpjaGFuZ2U6c3Rhc2hJbml0aWFsU2l6ZUZvckZsdj1cIlxyXG4gICAgICAgIHJlbmRlclNjcmlwdC5yZWNlaXZlc3Rhc2hJbml0aWFsU2l6ZUZvckZsdlxyXG4gICAgICBcIlxyXG4gICAgICA6Y2hhbmdlOmxvYWREYXRhVGltZW91dD1cInJlbmRlclNjcmlwdC5yZWNlaXZlbG9hZERhdGFUaW1lb3V0XCJcclxuICAgICAgOmNoYW5nZTp3YWl0aW5nVGltZW91dD1cInJlbmRlclNjcmlwdC5yZWNlaXZld2FpdGluZ1RpbWVvdXRcIlxyXG4gICAgICA6Y2hhbmdlOmxpdmVTdGFydFRpbWU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWxpdmVTdGFydFRpbWVcIlxyXG4gICAgICA6Y2hhbmdlOmxpdmVPdmVyVGltZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlbGl2ZU92ZXJUaW1lXCJcclxuICAgICAgOmNoYW5nZTpsaXZlVGltZVNoaWZ0VXJsPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVsaXZlVGltZVNoaWZ0VXJsXCJcclxuICAgICAgOmNoYW5nZTpyZWNyZWF0ZVBsYXllcj1cInJlbmRlclNjcmlwdC5yZWNlaXZlcmVjcmVhdGVQbGF5ZXJcIlxyXG4gICAgICA6Y2hhbmdlOmRpYWdub3Npc0J1dHRvblZpc2libGU9XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZWRpYWdub3Npc0J1dHRvblZpc2libGVcclxuICAgICAgXCJcclxuICAgICAgOmNoYW5nZTpkaXNhYmxlU2Vlaz1cInJlbmRlclNjcmlwdC5yZWNlaXZlZGlzYWJsZVNlZWtcIlxyXG4gICAgICA6Y2hhbmdlOmVuY3J5cHRUeXBlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVlbmNyeXB0VHlwZVwiXHJcbiAgICAgIDpjaGFuZ2U6cHJvZ3Jlc3NNYXJrZXJzPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVwcm9ncmVzc01hcmtlcnNcIlxyXG4gICAgICA6Y2hhbmdlOnZvZFJldHJ5PVwicmVuZGVyU2NyaXB0LnJlY2VpdmV2b2RSZXRyeVwiXHJcbiAgICAgIDpjaGFuZ2U6bGl2ZVJldHJ5PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVsaXZlUmV0cnlcIlxyXG4gICAgICA6Y2hhbmdlOnBsYXlTdHlsZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlcGxheVN0eWxlXCJcclxuICAgICAgOmNoYW5nZTphbGlwbGF5ZXJTZGtQYXRoPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVhbGlwbGF5ZXJTZGtQYXRoXCJcclxuICAgID48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC90ZW1wbGF0ZT5cclxuXHJcbjxzY3JpcHQ+XHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBuYW1lOiBcIkFsaXBsYXllclwiLFxyXG4gIHByb3BzOiB7XHJcbiAgICBzb3VyY2U6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8v5aqS5L2T6L2s56CB5pyN5Yqh55qE5aqS5L2TSWTjgIJcclxuICAgIHZpZDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7mnYPor4FcclxuICAgIHBsYXlhdXRoOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvL+WuueWZqOeahOWkp+Wwj1xyXG4gICAgaGVpZ2h0OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCI0NjBweFwiLFxyXG4gICAgfSxcclxuICAgIC8v5a655Zmo55qE5aSn5bCPXHJcbiAgICB3aWR0aDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiMTAwJVwiLFxyXG4gICAgfSxcclxuICAgIC8v6KeG6aKR55qE6auY5bqm5aSn5bCPXHJcbiAgICB2aWRlb1dpZHRoOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCIxMDAlXCIsXHJcbiAgICB9LFxyXG4gICAgLy/op4bpopHnmoTlrr3luqblpKflsI9cclxuICAgIHZpZGVvSGVpZ2h0OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCI0NjBweFwiLFxyXG4gICAgfSxcclxuICAgIC8v5pKt5pS+5Zmo6Ieq5Yqo5Yqg6L2977yM55uu5YmN5LuFaDXlj6/nlKhcclxuICAgIHByZWxvYWQ6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7lmajpu5jorqTlsIHpnaLlm77niYfvvIzor7floavlhpnmraPnoa7nmoTlm77niYd1cmzlnLDlnYDjgILpnIDopoFhdXRvcGxheeS4uuKAmWZhbHNl4oCZ5pe277yM5omN55Sf5pWIXHJcbiAgICBjb3Zlcjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7lhoXlrrnmmK/lkKbkuLrnm7Tmkq3vvIznm7Tmkq3ml7bkvJrnpoHmraLnlKjmiLfmi5bliqjov5vluqbmnaHjgIJcclxuICAgIGlzTGl2ZToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL+aSreaUvuWZqOaYr+WQpuiHquWKqOaSreaUvu+8jOWcqOenu+WKqOerr2F1dG9wbGF55bGe5oCn5Lya5aSx5pWI44CCXHJcbiAgICBhdXRvcGxheToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL+aSreaUvuWZqOiHquWKqOW+queOr+aSreaUvuOAglxyXG4gICAgcmVQbGF5OiB7XHJcbiAgICAgIHR5cGU6IEJvb2xlYW4sXHJcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxyXG4gICAgfSxcclxuICAgIC8v5oyH5a6a5L2/55SoSDXmkq3mlL7lmajjgIJcclxuICAgIHVzZUg1UHJpc206IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mjIflrprkvb/nlKhGbGFzaOaSreaUvuWZqOOAglxyXG4gICAgdXNlRmxhc2hQcmlzbToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL0g15piv5ZCm5YaF572u5pKt5pS+77yM5pyJ55qEQW5kcm9pZOa1j+iniOWZqOS4jei1t+S9nOeUqOOAglxyXG4gICAgcGxheXNpbmxpbmU6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mmL7npLrmkq3mlL7ml7bnvJPlhrLlm77moIfvvIzpu5jorqR0cnVl44CCXHJcbiAgICBzaG93QnVmZmVyOiB7XHJcbiAgICAgIHR5cGU6IEJvb2xlYW4sXHJcbiAgICAgIGRlZmF1bHQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgLy9VUkwg55qu6IKk5Zu+54mH77yM5LiN5bu66K6u6ZqP5oSP5L+u5pS56K+l5a2X5q6177yM5aaC6KaB5L+u5pS577yM6K+35Y+C54Wn55qu6IKk5a6a5Yi244CCXHJcbiAgICBza2luUmVzOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvL+i/m+W6puadoVxyXG4gICAgc2tpbkxheW91dDoge1xyXG4gICAgICB0eXBlOiBBcnJheSxcclxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG5hbWU6IFwiYmlnUGxheUJ1dHRvblwiLFxyXG4gICAgICAgICAgICBhbGlnbjogXCJjY1wiLFxyXG4gICAgICAgICAgICB4OiAzMCxcclxuICAgICAgICAgICAgeTogODAsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBuYW1lOiBcImVycm9yRGlzcGxheVwiLFxyXG4gICAgICAgICAgICBhbGlnbjogXCJ0bGFic1wiLFxyXG4gICAgICAgICAgICB4OiAwLFxyXG4gICAgICAgICAgICB5OiAwLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogXCJpbmZvRGlzcGxheVwiLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogXCJjb250cm9sQmFyXCIsXHJcbiAgICAgICAgICAgIGFsaWduOiBcImJsYWJzXCIsXHJcbiAgICAgICAgICAgIHg6IDAsXHJcbiAgICAgICAgICAgIHk6IDAsXHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInByb2dyZXNzXCIsIGFsaWduOiBcImJsYWJzXCIsIHg6IDAsIHk6IDQ0IH0sIC8v5pKt5pS+6L+b5bqm5p2hXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInBsYXlCdXR0b25cIiwgYWxpZ246IFwidGxcIiwgeDogMTUsIHk6IDEyIH0sIC8v5pKt5pS+5byA5aeL5pqC5YGc5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInRpbWVEaXNwbGF5XCIsIGFsaWduOiBcInRsXCIsIHg6IDEwLCB5OiA3IH0sIC8v5pKt5pS+6KeG6aKR5pe26Ze0XHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJmdWxsU2NyZWVuQnV0dG9uXCIsIC8v5YWo5bGP5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgICBhbGlnbjogXCJ0clwiLFxyXG4gICAgICAgICAgICAgICAgeDogMTAsXHJcbiAgICAgICAgICAgICAgICB5OiAxMCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG5hbWU6IFwidm9sdW1lXCIsIC8v6Z+z6YePXHJcbiAgICAgICAgICAgICAgICBhbGlnbjogXCJ0clwiLFxyXG4gICAgICAgICAgICAgICAgeDogNSxcclxuICAgICAgICAgICAgICAgIHk6IDEwLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF07XHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgLy/pu5jorqTkuLrigJhob3ZlcuKAmeOAguWPr+mAieeahOWAvOS4uu+8muKAmGNsaWNr4oCZ44CB4oCYaG92ZXLigJnjgIHigJhhbHdheXPigJnjgIJcclxuICAgIGNvbnRyb2xCYXJWaXNpYmlsaXR5OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJob3ZlclwiLFxyXG4gICAgfSxcclxuICAgIC8v5o6n5Yi25qCP6Ieq5Yqo6ZqQ6JeP5pe26Ze077yIbXPvvIlcclxuICAgIHNob3dCYXJUaW1lOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvKioqXHJcbiAgICAgICAgICogSlNPTuS4sueUqOS6juWumuWItuaAp+aOpeWPo+WPguaVsO+8jOebruWJjeaUr+aMge+8mlxyXG4gICAgICAgICAxLuKAnGZ1bGxUaXRsZeKAne+8muKAnOa1i+ivlemhtemdouKAnVxyXG4gICAgICAgICDlhajlsY/ml7bmmL7npLrop4bpopHmoIfpopjvvIjku4VmbGFzaOaUr+aMge+8ieOAglxyXG4gICAgICAgICAyLiDigJxtM3U4QnVmZmVyTGVuZ3Ro4oCd77ya4oCcMzDigJ1cclxuICAgICAgICAg5pKt5pS+bTN1OOaXtuWKoOi9vee8k+WtmHRz5paH5Lu26ZW/5bqm5Y2V5L2N77yI56eS77yJ77yI5LuFZmxhc2jmlK/mjIHvvInjgIJcclxuICAgICAgICAgMy4g4oCcbGl2ZVN0YXJ0VGltZeKAne+8muKAnDIwMTYvMDgvMTcgMTI6MDA6MDDigJ1cclxuICAgICAgICAg55u05pKt5byA5aeL5pe26Ze077yM55So5LqO5o+Q56S655u05pKt5pyq5byA5aeLKOS7hWZsYXNo5pSv5oyBKeOAglxyXG4gICAgICAgICA0LiDigJxsaXZlT3ZlclRpbWXigJ3vvJrigJwyMDE2LzA4LzE3IDE0OjAwOjAw4oCdXHJcbiAgICAgICAgIOebtOaSree7k+adn+aXtumXtO+8jOeUqOS6juaPkOekuuebtOaSree7k+adn++8iOS7hWZsYXNo5pSv5oyB77yJ44CCXHJcbiAgICAgICAgICovXHJcbiAgICBleHRyYUluZm86IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuXHJcbiAgICAvKipcclxuICAgICAq5piv5ZCm5YWB6K6457O757uf5Y+z6ZSu6I+c5Y2V5pi+56S677yM6buY6K6k5Li6ZmFsc2XjgIJcclxuICAgICAqL1xyXG4gICAgZW5hYmxlU3lzdGVtTWVudToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcblxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICrmjIflrprmkq3mlL7lnLDlnYDmoLzlvI/vvIzlj6rmnInkvb/nlKh2aWTnmoTmkq3mlL7mlrnlvI/ml7bmlK/mjIFcclxuICAgICAgICAg5Y+v6YCJ5YC85Li64oCZbXA04oCZ44CB4oCZbTN1OOKAmeOAgeKAmWZsduKAmeOAgeKAmW1wM+KAme+8jOm7mOiupOS4uuepuu+8jOS7hUg15pSv5oyB44CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGZvcm1hdDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwibTN1OFwiLFxyXG4gICAgfSxcclxuICAgIC8qKipcclxuICAgICAgICAgKlxyXG4gICAgICAgICAqIOaMh+Wumui/lOWbnumfs+mikei/mOaYr+inhumike+8jOWPquacieS9v+eUqHZpZOeahOaSreaUvuaWueW8j+aXtuaUr+aMgeOAglxyXG4gICAgICAgICDlj6/pgInlgLzkuLrigJl2aWRlb+KAmeWSjOKAmWF1ZGlv4oCZ77yM6buY6K6k5Li64oCZdmlkZW/igJlcclxuICAgICAgICAg4oCYYXVkaW/igJnkuLvopoHmmK/pkojlr7nlj6rljIXlkKvpn7PpopHnmoTop4bpopHmoLzlvI/vvIzmr5TlpoLpn7PpopHnmoRtcDTvvIzku4VINeaUr+aMgeOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBtZWRpYVR5cGU6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcInZpZGVvXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqIOaMh+WumuaOkuW6j+aWueW8j++8jOWPquacieS9v+eUqHZpZCArIHBsYXV0aOaSreaUvuaWueW8j+aXtuaUr+aMgeOAglxyXG4gICAgICAgICDigJhkZXNj4oCZ6KGo56S65oyJ5YCS5bqP5o6S5bqP77yI5Y2z77ya5LuO5aSn5Yiw5bCP5o6S5bqP77yJXHJcbiAgICAgICAgIOKAmGFzY+KAmeihqOekuuaMieato+W6j+aOkuW6j++8iOWNs++8muS7juWwj+WIsOWkp+aOkuW6j++8iVxyXG4gICAgICAgICDpu5jorqTlgLzvvJrigJhhc2PigJnvvIzku4VINeaUr+aMgeOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBxdWFsaXR5U29ydDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiYXNjXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqIOaYvuekuuinhumikea4heaZsOW6pu+8jOWkmuS4queUqOmAl+WPt+WIhumalO+8jOavlOWmgu+8muKAmUZELExE4oCZ77yM5q2k5YC85pivdmlk5a+55bqU5rWB5riF5pmw5bqm55qE5LiA5Liq5a2Q6ZuG77yMXHJcbiAgICAgICAgIOWPluWAvOiMg+WbtO+8mkZE77yI5rWB55WF77yJTETvvIjmoIfmuIXvvIlTRO+8iOmrmOa4he+8iUhE77yI6LaF5riF77yJT0TvvIjljp/nlLvvvIkyS++8iDJL77yJNEvvvIg0S++8ie+8jOS7hUg15pSv5oyB44CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGRlZmluaXRpb246IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICAqIOm7mOiupOinhumikea4heaZsOW6pu+8jOatpOWAvOaYr3ZpZOWvueW6lOa1geeahOS4gOS4qua4heaZsOW6pu+8jFxyXG4gICAgICAgICDlj5blgLzojIPlm7TvvJpGRO+8iOa1geeVhe+8iUxE77yI5qCH5riF77yJU0TvvIjpq5jmuIXvvIlIRO+8iOi2hea4he+8iU9E77yI5Y6f55S777yJMkvvvIgyS++8iTRL77yINEvvvInvvIzku4VINeaUr+aMgeOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBkZWZhdWx0RGVmaW5pdGlvbjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDlo7DmmI7lkK/nlKjlkIzlsYJINeaSreaUvuWZqO+8jOWQr+eUqOaXtuiuvue9rueahOWAvOS4uuKAmGg14oCZXHJcbiAgICAgKiAqL1xyXG4gICAgeDVfdHlwZToge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiaDVcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDlo7DmmI7op4bpopHmkq3mlL7ml7bmmK/lkKbov5vlhaXliLBUQlPnmoTlhajlsY/mqKHlvI/vvIzpu5jorqTkuLpmYWxzZeOAglxyXG4gICAgICAgICDlvZPpnIDopoHmiorop4bpopHlgZrkuLrog4zmma/ml7bvvIzorr7nva7kuLp0cnVlXHJcbiAgICAgICAgICogKi9cclxuICAgIHg1X2Z1bGxzY3JlZW46IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgICog5aOw5piO6KeG6aKR5pKt5Zyo55WM6Z2i5LiK55qE5L2N572u77yM6buY6K6k5Li64oCcY2VudGVy4oCd44CCXHJcbiAgICAgICAgIOWPr+mAieWAvOS4uu+8muKAnHRvcOKAne+8jOKAnGNlbnRlcuKAnVxyXG4gICAgICAgICAqICovXHJcbiAgICB4NV92aWRlb19wb3NpdGlvbjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiY2VudGVyXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgICog5aOw5piOIFRCUyDmkq3mlL7lmajmlK/mjIHnmoTmlrnlkJHvvIzlj6/pgInlgLzvvJpcclxuICAgICAgICAgbGFuZHNjYXBlOuaoquWxj++8iVxyXG4gICAgICAgICBwb3J0cmFpbnQ656uW5bGPXHJcbiAgICAgICAgIGxhbmRzY2FwZVxyXG4gICAgICAgICAqICovXHJcbiAgICB4NV9vcmllbnRhdGlvbjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwicG9ydHJhaW50XCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDlo7DmmI5UQlPlhajlsY/mkq3mlL7mmK/lkKbmqKrlsY/vvIzpu5jorqTlgLzkuLp0cnVl44CCXHJcbiAgICAgKiAqL1xyXG4gICAgeDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW46IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcInRydWVcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOW7tui/n+aSreaUvuaXtumXtO+8jOWNleS9jeS4uuenkuOAglxyXG4gICAgICogKi9cclxuICAgIGF1dG9QbGF5RGVsYXk6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiAwLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog5bu26L+f5pKt5pS+5o+Q56S65paH5pysXHJcbiAgICAgKiAqL1xyXG4gICAgYXV0b1BsYXlEZWxheURpc3BsYXlUZXh0OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCLmraPlnKjovaznoIHvvIzor7fnqI3lkI4uLi4uLi5cIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDlm73pmYXljJbvvIzpu5jorqTkuLrigJh6aC1jbuKAmeOAglxyXG4gICAgICAgICDlpoLmnpzmnKrorr7nva7vvIzliJnph4fnlKjmtY/op4jlmajor63oqIDjgIJcclxuICAgICAgICAg5Y+v6YCJ5YC85Li64oCYemgtY27igJnjgIHigJhlbi11c+KAmeaIluWFtuWug+WAvOOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBsYW5ndWFnZToge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiemgtY25cIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDoh6rlrprkuYnlm73pmYXljJbmlofmnKxqc29u57uT5p6E77yMa2V555qE5YC86ZyA6KaB5ZKMbGFuZ3VhZ2XlsZ7mgKflgLzlr7nlupTotbfmnaXjgIJcclxuICAgICAgICAg5L6L5a2Q77yae2pwOntQbGF5OuKAnVBsYXnigJ19fVxyXG4gICAgICAgICAqICovXHJcbiAgICBsYW5ndWFnZVRleHRzOiB7XHJcbiAgICAgIHR5cGU6IE9iamVjdCxcclxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHJldHVybiB7fTtcclxuICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIGZsYXNo5ZCv55So5oiq5Zu+5Yqf6IO9XHJcbiAgICAgKiAqL1xyXG4gICAgc25hcHNob3Q6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiBINeiuvue9ruaIquWbvuawtOWNsOOAglxyXG4gICAgICogKi9cclxuICAgIHNuYXBzaG90V2F0ZXJtYXJrOiB7XHJcbiAgICAgIHR5cGU6IE9iamVjdCxcclxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHJldHVybiB7fTtcclxuICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIFNhZmFyaea1j+iniOWZqOWPr+S7peWQr+eUqEhsc+aPkuS7tuaSreaUvu+8jFNhZmFyaSAxMemZpOWkluOAglxyXG4gICAgICogKi9cclxuICAgIHVzZUhsc1BsdWdpbkZvclNhZmFyaToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIEg15pKt5pS+Zmx25pe277yM6K6+572u5piv5ZCm5ZCv55So5pKt5pS+57yT5a2Y77yM5Y+q5Zyo55u05pKt5LiL6LW35L2c55So44CCXHJcbiAgICAgKiAqL1xyXG4gICAgZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHY6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiBINeaSreaUvmZsduaXtu+8jOWIneWni+e8k+WtmOWkp+Wwj++8jOWPquWcqOebtOaSreS4i+i1t+S9nOeUqOOAglxyXG4gICAgICogKi9cclxuICAgIHN0YXNoSW5pdGlhbFNpemVGb3JGbHY6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiAxMCxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOe8k+WGsuWkmumVv+aXtumXtOWQju+8jOaPkOekuueUqOaIt+WIh+aNouS9jua4heaZsOW6pu+8jOm7mOiupO+8mjIw56eS44CCXHJcbiAgICAgKiAqL1xyXG4gICAgbG9hZERhdGFUaW1lb3V0OiB7XHJcbiAgICAgIHR5cGU6IE51bWJlcixcclxuICAgICAgZGVmYXVsdDogMjAsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKuacgOWkp+e8k+WGsui2heaXtuaXtumXtO+8jOi2hei/h+i/meS4quaXtumXtOS8muaciemUmeivr+aPkOekuu+8jOm7mOiupO+8mjYw56eS44CCXHJcbiAgICAgKiAqL1xyXG4gICAgd2FpdGluZ1RpbWVvdXQ6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiA2MCxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOebtOaSreW8gOWni+aXtumXtO+8jOebtOaSreaXtuenu+WKn+iDveS9v+eUqO+8jOagvOW8j+S4uu+8muKAnDIwMTgvMDEvMDQgMTI6MDA6MDDigJ3jgIJcclxuICAgICAqICovXHJcbiAgICBsaXZlU3RhcnRUaW1lOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOebtOaSree7k+adn+aXtumXtO+8jOebtOaSreaXtuenu+WKn+iDveS9v+eUqO+8jOagvOW8j+S4uu+8muKAnDIwMTgvMDEvMDQgMTI6MDA6MDDigJ3jgIJcclxuICAgICAqICovXHJcbiAgICBsaXZlT3ZlclRpbWU6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog55u05pKt5Y+v55So5pe256e75p+l6K+i5Zyw5Z2A77yM6K+m5oOF5Y+C6KeB55u05pKt5pe256e744CCXHJcbiAgICAgKiBodHRwczovL2hlbHAuYWxpeXVuLmNvbS9kb2N1bWVudF9kZXRhaWwvNjUxMjkuaHRtbD9zcG09YTJjNGcuMTExODY2MjMuMi4yOC4zNjAzYmY4MExSNzRzU1xyXG4gICAgICogKi9cclxuICAgIGxpdmVUaW1lU2hpZnRVcmw6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICogZmx255u05pKt5ZKMaGxz5pe256e75YiH5o2i5piv77yM6YeN5paw5Yib5bu65pKt5pS+5Zmo5pa55rOV77yM6K+m5oOF5Y+C6KeB55u05pKt5pe256e744CCXHJcbiAgICAgKiBodHRwczovL2hlbHAuYWxpeXVuLmNvbS9kb2N1bWVudF9kZXRhaWwvNjUxMjkuaHRtbD9zcG09YTJjNGcuMTExODY2MjMuMi4yOC4zNjAzYmY4MExSNzRzU1xyXG4gICAgICogKi9cclxuICAgIHJlY3JlYXRlUGxheWVyOiB7XHJcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxyXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiAoKSB7fSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAq5piv5ZCm5pi+56S65qOA5rWL5oyJ6ZKu77yM6buY6K6k5Li6dHJ1ZeOAglxyXG4gICAgICogKi9cclxuICAgIGRpYWdub3Npc0J1dHRvblZpc2libGU6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOemgeeUqOi/m+W6puadoeeahFNlZWvvvIzpu5jorqTkuLpmYWxzZe+8jOS7hUZsYXNo5pSv5oyB44CCXHJcbiAgICAgKiAqL1xyXG4gICAgZGlzYWJsZVNlZWs6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDliqDlr4bnsbvlnovvvIzmkq3mlL7ngrnmkq3np4HmnInliqDlr4bop4bpopHml7bvvIzorr7nva7lgLzkuLox77yM6buY6K6k5YC85Li6MOOAglxyXG4gICAgICogKi9cclxuICAgIGVuY3J5cHRUeXBlOiB7XHJcbiAgICAgIHR5cGU6IE51bWJlcixcclxuICAgICAgZGVmYXVsdDogMCxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDov5vluqbmnaHmiZPngrnlhoXlrrnmlbDnu4TvvIzor6bmg4Xlj4Lop4Hov5vluqbmnaHmiZPngrnjgIJcclxuICAgICAgICAgKiBbXHJcbiAgICAgICAgIHtvZmZzZXQ6MCx0ZXh0OifpmL/ph4zop4bpopHkupHnq6/liLDkupHliLDnq6/mnI3liqHnmoTph43opoHkuIDnjq8nfSxcclxuICAgICAgICAge29mZnNldDoxMCx0ZXh0OifpmaTkuobmlK/mjIHngrnmkq3lkoznm7Tmkq3nmoTln7rnoYDmkq3mlL7lip/og73lpJYnfSxcclxuICAgICAgICAge29mZnNldDoyMCx0ZXh0Oifmt7Hluqbono3lkIjop4bpopHkupHkuJrliqEnfSxcclxuICAgICAgICAge29mZnNldDozMCx0ZXh0OifkuLrnlKjmiLfmj5DkvpvnroDljZXjgIHlv6vpgJ/jgIHlronlhajjgIHnqLPlrprnmoTop4bpopHmkq3mlL7mnI3liqEnfSxcclxuICAgICAgICAge29mZnNldDo0MCx0ZXh0Oiflronoo4Xmkq3mlL7lmahEZW1v6L+b6KGM5L2T6aqMJ30sXHJcbiAgICAgICAgIHtvZmZzZXQ6NTAsdGV4dDon5byA5Y+R5Lq65ZGY6K+354K55Ye7U0RL5LiL6L29J31cclxuICAgICAgICAgXVxyXG4gICAgICAgICAqIGh0dHBzOi8veXEuYWxpeXVuLmNvbS9hcnRpY2xlcy82ODYwNDM/c3BtPWEyYzRnLjExMTg2NjIzLjIuMzEuMzYwM2JmODBMUjc0c1NcclxuICAgICAgICAgKiAqL1xyXG4gICAgcHJvZ3Jlc3NNYXJrZXJzOiB7XHJcbiAgICAgIHR5cGU6IEFycmF5LFxyXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog54K55pKt5aSx6LSl6YeN6K+V5qyh5pWw77yM6buY6K6kM+asoVxyXG4gICAgICogKi9cclxuICAgIHZvZFJldHJ5OiB7XHJcbiAgICAgIHR5cGU6IE51bWJlcixcclxuICAgICAgZGVmYXVsdDogMyxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOebtOaSreaSreaUvuWksei0pemHjeivleasoeaVsO+8jOm7mOiupDXmrKFcclxuICAgICAqICovXHJcbiAgICBsaXZlUmV0cnk6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiA1LFxyXG4gICAgfSxcclxuXHJcbiAgICBwbGF5U3R5bGU6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIGFsaXBsYXllclNka1BhdGg6IHtcclxuICAgICAgLy8gQWxpcGxheWVyIOS7o+eggeeahOi3r+W+hFxyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiaHR0cHM6Ly9nLmFsaWNkbi5jb20vZGUvcHJpc21wbGF5ZXIvMi45LjMvYWxpcGxheWVyLW1pbi5qc1wiLFxyXG4gICAgfSxcclxuICB9LFxyXG4gIGRhdGEoKSB7XHJcbiAgICByZXR1cm4ge307XHJcbiAgfSxcclxuICBjcmVhdGVkKCkge30sXHJcbiAgYmVmb3JlRGVzdHJveSgpIHt9LFxyXG4gIG1vdW50ZWQoKSB7fSxcclxuICBtZXRob2RzOiB7fSxcclxufTtcclxuPC9zY3JpcHQ+XHJcbjxzY3JpcHQgbW9kdWxlPVwicmVuZGVyU2NyaXB0XCIgbGFuZz1cInJlbmRlcmpzXCI+XHJcbmltcG9ydCAkIGZyb20gJ2pxdWVyeSdcclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBuYW1lOiBcIkFsaXBsYXllclwiLFxyXG5cclxuICBkYXRhKCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgcGxheWVySWQ6IFwiYWxpcGxheWVyX1wiICsgTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIpLFxyXG4gICAgICBzY3JpcHRUYWdTdGF0dXM6IDAsXHJcbiAgICAgIGlzUmVsb2FkOiBmYWxzZSxcclxuICAgICAgaW5zdGFuY2U6IG51bGwsXHJcbiAgICB9O1xyXG4gIH0sXHJcbiAgY3JlYXRlZCgpIHtcclxuICAgIHRoaXMubG9hZFdlYlBsYXllclNESygpXHJcblxyXG4gIH0sXHJcbiAgYmVmb3JlRGVzdHJveSgpIHtcclxuXHJcbiAgfSxcclxuICBtb3VudGVkKCkge1xyXG4gICAgLy8gaWYgKHdpbmRvdy5BbGlwbGF5ZXIgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgLy8gICAvLyDlpoLmnpzlhajlsYDlr7nosaHlrZjlnKjvvIzor7TmmI7nvJbovpHlmajku6PnoIHlt7Lnu4/liJ3lp4vljJblrozmiJDvvIznm7TmjqXliqDovb3nvJbovpHlmahcclxuICAgIC8vICAgdGhpcy5zY3JpcHRUYWdTdGF0dXMgPSAyO1xyXG4gICAgLy8gICB0aGlzLmluaXRBbGlwbGF5ZXIoKTtcclxuICAgIC8vIH0gZWxzZSB7XHJcbiAgICAvLyAgIC8vIOWmguaenOWFqOWxgOWvueixoeS4jeWtmOWcqO+8jOivtOaYjue8lui+keWZqOS7o+eggei/mOayoeacieWKoOi9veWujOaIkO+8jOmcgOimgeWKoOi9vee8lui+keWZqOS7o+eggVxyXG4gICAgLy8gICB0aGlzLmluc2VydFNjcmlwdFRhZygpO1xyXG4gICAgLy8gfVxyXG4gIH0sXHJcbiAgbWV0aG9kczoge1xyXG5cclxuICAgIGNoZWNrVmFsdWUoKSB7XHJcbiAgICAgICAgY29uc3QgX3RoaXMgPSB0aGlzO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdjaGVja+aYr+WQpuiOt+WPluWIsOS6huaOiOadgycsX3RoaXMucGxheWF1dGgpO1xyXG5cdFx0XHRcdC8vIGNvbnNvbGUubG9nKHRoaXMudmlkZW9JZCwgdGhpcy5hdXRoSWQsIHRoaXMudmlkZW9EYXRhLCBcIjExMTE4ODg4ODhcIilcclxuXHRcdFx0XHRpZiAoIV90aGlzLnBsYXlhdXRoICkge1xyXG5cdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMuY2hlY2tWYWx1ZSgpO1xyXG5cdFx0XHRcdFx0fSwgMTAwMCk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygn5riy5p+T5Yqg6L296KeG6aKR5byA5aeLJylcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY3JpcHRUYWdTdGF0dXMgPSAyO1xyXG4gICAgICB0aGlzLmluaXRBbGlwbGF5ZXIoKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcbiAgICBsb2FkV2ViUGxheWVyU0RLKCkge1xyXG5cdFx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcblxyXG5cclxuXHJcblx0XHRcdFx0XHRjb25zdCBzX3RhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyAvLyDlvJXlhaXmkq3mlL7lmahqc1xyXG5cdFx0XHRcdFx0c190YWcudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG5cdFx0XHRcdFx0c190YWcuc3JjID0gJ2h0dHBzOi8vZy5hbGljZG4uY29tL2Fwc2FyYS1tZWRpYS1ib3gvaW1wLXdlYi1wbGF5ZXIvMi4yMC4zL2FsaXBsYXllci1taW4uanMnO1xyXG5cdFx0XHRcdFx0c190YWcuY2hhcnNldCA9ICd1dGYtOCc7XHJcblx0XHRcdFx0XHRzX3RhZy5vbmxvYWQgPSAoKSA9PiB7XHJcblx0XHRcdFx0XHRcdGNvbnN0IHNfdGFnMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyAvLyDlvJXlhaXmkq3mlL7lmahqc1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEuc3JjID1cclxuXHRcdFx0XHRcdFx0XHQnaHR0cHM6Ly9wbGF5ZXIuYWxpY2RuLmNvbS9hbGlwbGF5ZXIvcHJlc2VudGF0aW9uL2pzL2FsaXBsYXllcmNvbXBvbmVudHMubWluLmpzJztcclxuXHRcdFx0XHRcdFx0c190YWcxLmNoYXJzZXQgPSAndXRmLTgnO1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEub25sb2FkID0gKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuY2hlY2tWYWx1ZSgpO1xyXG5cdFx0XHRcdFx0XHRcdHJlc29sdmUoKTtcclxuXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzX3RhZzEpO1xyXG5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc190YWcpO1xyXG5cclxuXHJcblxyXG5cdFx0XHRcdFx0Y29uc3QgbF90YWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJyk7IC8vIOW8leWFpeaSreaUvuWZqGNzc1xyXG5cdFx0XHRcdFx0bF90YWcucmVsID0gJ3N0eWxlc2hlZXQnO1xyXG5cdFx0XHRcdFx0bF90YWcuaHJlZiA9XHJcblx0XHRcdFx0XHRcdCdodHRwczovL2cuYWxpY2RuLmNvbS9hcHNhcmEtbWVkaWEtYm94L2ltcC13ZWItcGxheWVyLzIuMjAuMy9za2lucy9kZWZhdWx0L2FsaXBsYXllci1taW4uY3NzJztcclxuXHJcblxyXG5cclxuXHRcdFx0XHRcdGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobF90YWcpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG4gICAgaW5zZXJ0U2NyaXB0VGFnKCkge1xyXG4gICAgICBjb25zdCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBwbGF5ZXJTY3JpcHRUYWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInBsYXllclNjcmlwdFRhZ1wiKTtcclxuICAgICAgLy8g5aaC5p6c6L+Z5LiqdGFn5LiN5a2Y5Zyo77yM5YiZ55Sf5oiQ55u45YWz5Luj56CBdGFn5Lul5Yqg6L295Luj56CBXHJcbiAgICAgIGlmIChwbGF5ZXJTY3JpcHRUYWcgPT09IG51bGwpIHtcclxuICAgICAgICBwbGF5ZXJTY3JpcHRUYWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpO1xyXG4gICAgICAgIHBsYXllclNjcmlwdFRhZy50eXBlID0gXCJ0ZXh0L2phdmFzY3JpcHRcIjtcclxuICAgICAgICBwbGF5ZXJTY3JpcHRUYWcuc3JjID0gdGhpcy5hbGlwbGF5ZXJTZGtQYXRoO1xyXG4gICAgICAgIHBsYXllclNjcmlwdFRhZy5pZCA9IFwicGxheWVyU2NyaXB0VGFnXCI7XHJcbiAgICAgICAgbGV0IHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcImhlYWRcIilbMF07XHJcbiAgICAgICAgcy5hcHBlbmRDaGlsZChwbGF5ZXJTY3JpcHRUYWcpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChwbGF5ZXJTY3JpcHRUYWcubG9hZGVkKSB7XHJcbiAgICAgICAgX3RoaXMuc2NyaXB0VGFnU3RhdHVzKys7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcGxheWVyU2NyaXB0VGFnLmFkZEV2ZW50TGlzdGVuZXIoXCJsb2FkXCIsICgpID0+IHtcclxuICAgICAgICAgIF90aGlzLnNjcmlwdFRhZ1N0YXR1cysrO1xyXG4gICAgICAgICAgcGxheWVyU2NyaXB0VGFnLmxvYWRlZCA9IHRydWU7XHJcbiAgICAgICAgICBfdGhpcy5pbml0QWxpcGxheWVyKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgX3RoaXMuaW5pdEFsaXBsYXllcigpO1xyXG4gICAgfSxcclxuICAgIGluaXRBbGlwbGF5ZXIoKSB7XHJcbiAgICAgIGNvbnN0IF90aGlzID0gdGhpcztcclxuICAgICAgLy8gc2NyaXB0VGFnU3RhdHVzIOS4uiAyIOeahOaXtuWAme+8jOivtOaYjuS4pOS4quW/hemcgOW8leWFpeeahCBqcyDmlofku7bpg73lt7Lnu4/ooqvlvJXlhaXvvIzkuJTliqDovb3lrozmiJBcclxuICAgICAgaWYgKFxyXG4gICAgICAgIF90aGlzLnNjcmlwdFRhZ1N0YXR1cyA9PT0gMiAmJlxyXG5cclxuICAgICAgICAoX3RoaXMuaW5zdGFuY2UgPT09IG51bGwgfHwgX3RoaXMucmVsb2FkUGxheWVyKVxyXG4gICAgICApIHtcclxuICAgICAgICBfdGhpcy5pbnN0YW5jZSAmJiBfdGhpcy5pbnN0YW5jZS5kaXNwb3NlKCk7XHJcbiQoXCIjdmlkZW9Db250ZW50XCIpLmlubmVySFRNTD0gXCJcIlxyXG4gICAgICAgIC8vIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoID0gXCJcIjtcclxuXHJcbiAgICAgICAgLy8gVnVlIOW8guatpeaJp+ihjCBET00g5pu05paw77yM6L+Z5qC35LiA5p2l5Luj56CB5omn6KGM5Yiw6L+Z6YeM55qE5pe25YCZ5Y+v6IO9IHRlbXBsYXRlIOmHjOmdoueahCBzY3JpcHQg5qCH562+6L+Y5rKh55yf5q2j5Yib5bu6XHJcbiAgICAgICAgLy8g5omA5Lul77yM5oiR5Lus5Y+q6IO95ZyoIG5leHRUaWNrIOmHjOmdouWIneWni+WMliBBbGlwbGF5ZXJcclxuICAgICAgICBfdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgX3RoaXMuaW5zdGFuY2UgPSBuZXcgQWxpcGxheWVyKHtcclxuICAgICAgICAgICAgaWQ6J3ZpZGVvQ29udGVudCcsXHJcbiAgICAgICAgICAgIHNvdXJjZTogX3RoaXMuc291cmNlLFxyXG4gICAgICAgICAgICB2aWQ6IF90aGlzLnZpZCxcclxuICAgICAgICAgICAgcGxheWF1dGg6IF90aGlzLnBsYXlhdXRoLFxyXG4gICAgICAgICAgICB3aWR0aDogX3RoaXMud2lkdGgsXHJcbiAgICAgICAgICAgIGhlaWdodDogX3RoaXMuaGVpZ2h0LFxyXG4gICAgICAgICAgICB2aWRlb1dpZHRoOiBfdGhpcy52aWRlb1dpZHRoLFxyXG4gICAgICAgICAgICB2aWRlb0hlaWdodDogX3RoaXMudmlkZW9IZWlnaHQsXHJcbiAgICAgICAgICAgIHByZWxvYWQ6IF90aGlzLnByZWxvYWQsXHJcbiAgICAgICAgICAgIGNvdmVyOiBmYWxzZSxcclxuICAgICAgICAgICAgaXNMaXZlOiBfdGhpcy5pc0xpdmUsXHJcbiAgICAgICAgICAgIGF1dG9wbGF5OiBfdGhpcy5hdXRvcGxheSxcclxuICAgICAgICAgICAgcmVQbGF5OiBfdGhpcy5yZVBsYXksXHJcbiAgICAgICAgICAgIHVzZUg1UHJpc206IF90aGlzLnVzZUg1UHJpc20sXHJcbiAgICAgICAgICAgIHVzZUZsYXNoUHJpc206IF90aGlzLnVzZUZsYXNoUHJpc20sXHJcbiAgICAgICAgICAgIHBsYXlzaW5saW5lOiBfdGhpcy5wbGF5c2lubGluZSxcclxuICAgICAgICAgICAgc2hvd0J1ZmZlcjogX3RoaXMuc2hvd0J1ZmZlcixcclxuICAgICAgICAgICAgc2tpblJlczogX3RoaXMuc2tpblJlcyxcclxuICAgICAgICAgICAgc2tpbkxheW91dDogX3RoaXMuc2tpbkxheW91dCxcclxuICAgICAgICAgICAgY29udHJvbEJhclZpc2liaWxpdHk6IF90aGlzLmNvbnRyb2xCYXJWaXNpYmlsaXR5LFxyXG4gICAgICAgICAgICBzaG93QmFyVGltZTogX3RoaXMuc2hvd0JhclRpbWUsXHJcbiAgICAgICAgICAgIGV4dHJhSW5mbzogX3RoaXMuZXh0cmFJbmZvLFxyXG4gICAgICAgICAgICBlbmFibGVTeXN0ZW1NZW51OiBfdGhpcy5lbmFibGVTeXN0ZW1NZW51LFxyXG4gICAgICAgICAgICBmb3JtYXQ6IF90aGlzLmZvcm1hdCxcclxuICAgICAgICAgICAgbWVkaWFUeXBlOiBfdGhpcy5tZWRpYVR5cGUsXHJcbiAgICAgICAgICAgIHF1YWxpdHlTb3J0OiBfdGhpcy5xdWFsaXR5U29ydCxcclxuICAgICAgICAgICAgZGVmaW5pdGlvbjogX3RoaXMuZGVmaW5pdGlvbixcclxuICAgICAgICAgICAgZGVmYXVsdERlZmluaXRpb246IF90aGlzLmRlZmF1bHREZWZpbml0aW9uLFxyXG4gICAgICAgICAgICB4NV90eXBlOiBfdGhpcy54NV90eXBlLFxyXG4gICAgICAgICAgICB4NV9mdWxsc2NyZWVuOiBfdGhpcy54NV9mdWxsc2NyZWVuLFxyXG4gICAgICAgICAgICB4NV92aWRlb19wb3NpdGlvbjogX3RoaXMueDVfdmlkZW9fcG9zaXRpb24sXHJcbiAgICAgICAgICAgIHg1X29yaWVudGF0aW9uOiBfdGhpcy54NV9vcmllbnRhdGlvbixcclxuICAgICAgICAgICAgeDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW46IF90aGlzLng1TGFuZHNjYXBlQXNGdWxsU2NyZWVuLFxyXG4gICAgICAgICAgICBhdXRvUGxheURlbGF5OiBfdGhpcy5hdXRvUGxheURlbGF5LFxyXG4gICAgICAgICAgICBhdXRvUGxheURlbGF5RGlzcGxheVRleHQ6IF90aGlzLmF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dCxcclxuICAgICAgICAgICAgbGFuZ3VhZ2U6IF90aGlzLmxhbmd1YWdlLFxyXG4gICAgICAgICAgICBsYW5ndWFnZVRleHRzOiBfdGhpcy5sYW5ndWFnZVRleHRzLFxyXG4gICAgICAgICAgICBzbmFwc2hvdDogX3RoaXMuc25hcHNob3QsXHJcbiAgICAgICAgICAgIHNuYXBzaG90V2F0ZXJtYXJrOiBfdGhpcy5zbmFwc2hvdFdhdGVybWFyayxcclxuICAgICAgICAgICAgdXNlSGxzUGx1Z2luRm9yU2FmYXJpOiBfdGhpcy51c2VIbHNQbHVnaW5Gb3JTYWZhcmksXHJcbiAgICAgICAgICAgIGVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2OiBfdGhpcy5lbmFibGVTdGFzaEJ1ZmZlckZvckZsdixcclxuICAgICAgICAgICAgc3Rhc2hJbml0aWFsU2l6ZUZvckZsdjogX3RoaXMuc3Rhc2hJbml0aWFsU2l6ZUZvckZsdixcclxuICAgICAgICAgICAgbG9hZERhdGFUaW1lb3V0OiBfdGhpcy5sb2FkRGF0YVRpbWVvdXQsXHJcbiAgICAgICAgICAgIHdhaXRpbmdUaW1lb3V0OiBfdGhpcy53YWl0aW5nVGltZW91dCxcclxuICAgICAgICAgICAgbGl2ZVN0YXJ0VGltZTogX3RoaXMubGl2ZVN0YXJ0VGltZSxcclxuICAgICAgICAgICAgbGl2ZVRpbWVTaGlmdFVybDogX3RoaXMubGl2ZVRpbWVTaGlmdFVybCxcclxuICAgICAgICAgICAgbGl2ZVNoaWZ0U291cmNlOiBfdGhpcy5saXZlU2hpZnRTb3VyY2UsXHJcbiAgICAgICAgICAgIHJlY3JlYXRlUGxheWVyOiBfdGhpcy5yZWNyZWF0ZVBsYXllcixcclxuICAgICAgICAgICAgZGlhZ25vc2lzQnV0dG9uVmlzaWJsZTogX3RoaXMuZGlhZ25vc2lzQnV0dG9uVmlzaWJsZSxcclxuICAgICAgICAgICAgZGlzYWJsZVNlZWs6IF90aGlzLmRpc2FibGVTZWVrLFxyXG4gICAgICAgICAgICBlbmNyeXB0VHlwZTogX3RoaXMuZW5jcnlwdFR5cGUsXHJcbiAgICAgICAgICAgIHByb2dyZXNzTWFya2VyczogX3RoaXMucHJvZ3Jlc3NNYXJrZXJzLFxyXG4gICAgICAgICAgICB2b2RSZXRyeTogX3RoaXMudm9kUmV0cnksXHJcbiAgICAgICAgICAgIGxpdmVSZXRyeTogX3RoaXMubGl2ZVJldHJ5LFxyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgLy8g57uR5a6a5LqL5Lu277yM5b2TIEFsaVBsYXllciDliJ3lp4vljJblrozmiJDlkI7vvIzlsIbnvJbovpHlmajlrp7kvovpgJrov4foh6rlrprkuYnnmoQgcmVhZHkg5LqL5Lu25Lqk5Ye65Y67XHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInJlYWR5XCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcInJlYWR5XCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwicGxheVwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJwbGF5XCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwicGF1c2VcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwicGF1c2VcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgX3RoaXMuaW5zdGFuY2Uub24oXCJlbmRlZFwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJlbmRlZFwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcImxpdmVTdHJlYW1TdG9wXCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcImxpdmVTdHJlYW1TdG9wXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwibTN1OFJldHJ5XCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcIm0zdThSZXRyeVwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcImhpZGVCYXJcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwiaGlkZUJhclwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcIndhaXRpbmdcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwid2FpdGluZ1wiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInNuYXBzaG90ZWRcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwic25hcHNob3RlZFwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInRpbWV1cGRhdGVcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwidGltZXVwZGF0ZVwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInJlcXVlc3RGdWxsU2NyZWVuXCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcInJlcXVlc3RGdWxsU2NyZWVuXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwiY2FuY2VsRnVsbFNjcmVlblwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJjYW5jZWxGdWxsU2NyZWVuXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwiZXJyb3JcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwiZXJyb3JcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBsZXQgc3RhcnQgPSB0cnVlO1xyXG4gICAgICAgICAgbGV0IHN0YXJ0UHJvZ3Jlc3MgPSAwO1xyXG4gICAgICAgICAgbGV0IGVuZFByb2dyZXNzID0gMDtcclxuICAgICAgICAgIC8v56aB5q2i5ouW5Yqo6L+b5bqm5p2hXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInN0YXJ0U2Vla1wiLCAoZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoc3RhcnQpIHtcclxuICAgICAgICAgICAgICBzdGFydCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHN0YXJ0UHJvZ3Jlc3MgPSBfdGhpcy5pbnN0YW5jZS5nZXRDdXJyZW50VGltZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF90aGlzLmluc3RhbmNlLnBhdXNlKCk7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuJGVtaXQoXCJzdGFydFNlZWtcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgLy/npoHmraLmi5bliqjov5vluqbmnaFcclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwiY29tcGxldGVTZWVrXCIsICgpID0+IHtcclxuICAgICAgICAgICAgc3RhcnQgPSB0cnVlO1xyXG4gICAgICAgICAgICBlbmRQcm9ncmVzcyA9IF90aGlzLmluc3RhbmNlLmdldEN1cnJlbnRUaW1lKCk7XHJcbiAgICAgICAgICAgIGlmIChlbmRQcm9ncmVzcyA8IHN0YXJ0UHJvZ3Jlc3MpIHtcclxuICAgICAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5zZWVrKGVuZFByb2dyZXNzKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5zZWVrKHN0YXJ0UHJvZ3Jlc3MpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF90aGlzLmluc3RhbmNlLnBsYXkoKTtcclxuICAgICAgICAgICAgLy8gdGhpcy4kZW1pdChcImNvbXBsZXRlU2Vla1wiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog5pKt5pS+6KeG6aKRXHJcbiAgICAgKi9cclxuICAgIHBsYXk6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5wbGF5KCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDmmoLlgZzop4bpopFcclxuICAgICAqL1xyXG4gICAgcGF1c2U6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5wYXVzZSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6YeN5pKt6KeG6aKRXHJcbiAgICAgKi9cclxuICAgIHJlcGxheTogZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnJlcGxheSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6Lez6L2s5Yiw5p+Q5Liq5pe25Yi76L+b6KGM5pKt5pS+XHJcbiAgICAgKiBAYXJndW1lbnQgdGltZSDnmoTljZXkvY3kuLrnp5JcclxuICAgICAqL1xyXG4gICAgc2VlazogZnVuY3Rpb24gKHRpbWUpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5zZWVrKHRpbWUpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6I635Y+W5b2T5YmN5pe26Ze0IOWNleS9jeenklxyXG4gICAgICovXHJcbiAgICBnZXRDdXJyZW50VGltZTogZnVuY3Rpb24gKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZS5nZXRDdXJyZW50VGltZSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICrojrflj5bop4bpopHmgLvml7bplb/vvIzov5Tlm57nmoTljZXkvY3kuLrnp5JcclxuICAgICAqIEByZXR1cm5zIOi/lOWbnueahOWNleS9jeS4uuenklxyXG4gICAgICovXHJcbiAgICBnZXREdXJhdGlvbjogZnVuY3Rpb24gKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZS5nZXREdXJhdGlvbigpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICDojrflj5blvZPliY3nmoTpn7Pph4/vvIzov5Tlm57lgLzkuLowLTHnmoTlrp7mlbBpb3Plkozpg6jliIZhbmRyb2lk5Lya5aSx5pWIXHJcbiAgICAgICAgICovXHJcbiAgICBnZXRWb2x1bWU6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaW5zdGFuY2UuZ2V0Vm9sdW1lKCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgIOiuvue9rumfs+mHj++8jHZvbOS4ujAtMeeahOWunuaVsO+8jGlvc+WSjOmDqOWIhmFuZHJvaWTkvJrlpLHmlYhcclxuICAgICAgICAgKi9cclxuICAgIHNldFZvbHVtZTogZnVuY3Rpb24gKHZvbCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnNldFZvbHVtZSh2b2wpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICrnm7TmjqXmkq3mlL7op4bpopF1cmzvvIx0aW1l5Li65Y+v6YCJ5YC877yI5Y2V5L2N56eS77yJ55uu5YmN5Y+q5pSv5oyB5ZCM56eN5qC85byP77yIbXA0L2Zsdi9tM3U477yJ5LmL6Ze05YiH5o2i5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNolxyXG4gICAgICpAYXJndW1lbnQgdXJsIOinhumikeWcsOWdgFxyXG4gICAgICpAYXJndW1lbnQgdGltZSDot7PovazliLDlpJrlsJHnp5JcclxuICAgICAqL1xyXG4gICAgbG9hZEJ5VXJsOiBmdW5jdGlvbiAodXJsLCB0aW1lKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2UubG9hZEJ5VXJsKHVybCwgdGltZSk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDorr7nva7mkq3mlL7pgJ/luqZcclxuICAgICAqQGFyZ3VtZW50IHNwZWVkIOmAn+W6plxyXG4gICAgICovXHJcbiAgICBzZXRTcGVlZDogZnVuY3Rpb24gKHNwZWVkKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0U3BlZWQoc3BlZWQpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6K6+572u5pKt5pS+5Zmo5aSn5bCPdyxo5Y+v5YiG5Yir5Li6NDAwcHjlg4/ntKDmiJY2MCXnmb7liIbmr5RjaHJvbWXmtY/op4jlmajkuItmbGFzaOaSreaUvuWZqOWIhuWIq+S4jeiDveWwj+S6jjM5N3gyOTdcclxuICAgICAqQGFyZ3VtZW50IHcg5pKt5pS+5Zmo5a695bqmXHJcbiAgICAgKkBhcmd1bWVudCBoIOaSreaUvuWZqOmrmOW6plxyXG4gICAgICovXHJcbiAgICBzZXRQbGF5ZXJTaXplOiBmdW5jdGlvbiAodywgaCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnNldFBsYXllclNpemUodywgaCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgICrnm67liY3lj6rmlK/mjIFINeaSreaUvuWZqOOAglxyXG4gICAgICAgICDmmoLkuI3mlK/mjIHkuI3lkIzmoLzlvI/op4bpopHpl7TnmoTkuYvpl7TliIfmjaLjgIJcclxuICAgICAgICAg5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNouOAglxyXG4gICAgICAgICAqL1xyXG4gICAgcmVwbGF5QnlWaWRBbmRQbGF5QXV0aDogZnVuY3Rpb24gKFxyXG4gICAgICB2aWQsXHJcbiAgICAgIGFjY0lkLFxyXG4gICAgICBhY2NTZWNyZXQsXHJcbiAgICAgIHN0c1Rva2VuLFxyXG4gICAgICBhdXRoSW5mbyxcclxuICAgICAgZG9tYWluUmVnaW9uXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5yZXBsYXlCeVZpZEFuZFBsYXlBdXRoKFxyXG4gICAgICAgIHZpZCxcclxuICAgICAgICBhY2NJZCxcclxuICAgICAgICBhY2NTZWNyZXQsXHJcbiAgICAgICAgc3RzVG9rZW4sXHJcbiAgICAgICAgYXV0aEluZm8sXHJcbiAgICAgICAgZG9tYWluUmVnaW9uXHJcbiAgICAgICk7XHJcbiAgICB9LFxyXG5cclxuICAgIC8qKipcclxuICAgICAgICAgKiDph43mlrDorr7nva52aWTlkozmnYPpmZDvvIznm67liY3lj6rmlK/mjIFINeaSreaUvuWZqOOAglxyXG4gICAgICAgICDmmoLkuI3mlK/mjIHkuI3lkIzmoLzlvI/op4bpopHpl7TnmoTkuYvpl7TliIfmjaLjgIJcclxuICAgICAgICAg5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNouOAglxyXG4gICAgICAgICAqIEBwYXJhbSB2aWQg6KeG6aKRSURcclxuICAgICAgICAgKiBAcGFyYW0gcGxheWF1dGgg5pKt5pS+5p2D6ZmQXHJcbiAgICAgICAgICovXHJcbiAgICByZXBsYXlCeVZpZEFuZEF1dGhJbmZvOiBmdW5jdGlvbiAodmlkLCBwbGF5YXV0aCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnJlcGxheUJ5VmlkQW5kQXV0aEluZm8odmlkLCBwbGF5YXV0aCk7XHJcbiAgICB9LFxyXG5cclxuICAgIC8qKlxyXG4gICAgICog55uu5YmN5Y+q5pSv5oyBSFRNTDXnlYzpnaLkuIrnmoTph43ovb3lip/og70s5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNom0zdTjvvInkuYvpl7TliIfmjaIs5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNolxyXG4gICAgICpAYXJndW1lbnQgdmlkIOinhumikWlkXHJcbiAgICAgKkBhcmd1bWVudCBwbGF5YXV0aCDmkq3mlL7lh63or4FcclxuICAgICAqL1xyXG4gICAgcmVsb2FkdXNlclBsYXlJbmZvQW5kVmlkUmVxdWVzdE10czogZnVuY3Rpb24gKHZpZCwgcGxheWF1dGgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5yZWxvYWR1c2VyUGxheUluZm9BbmRWaWRSZXF1ZXN0TXRzKHZpZCwgcGxheWF1dGgpO1xyXG4gICAgfSxcclxuXHJcbiAgICAvKioqXHJcbiAgICAgKuiuvue9ruaIquWbvuWPguaVsFxyXG4gICAgICogQHBhcmFtIHdpZHRoIOWuveW6plxyXG4gICAgICogQHBhcmFtIGhlaWdodCDpq5jluqZcclxuICAgICAqIEBwYXJhbSByYXRlIOaIquWbvui0qOmHj1xyXG4gICAgICovXHJcbiAgICBzZXRTYW5wc2hvdFByb3BlcnRpZXM6IGZ1bmN0aW9uICh3aWR0aCwgaGVpZ2h0LCByYXRlKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0U2FucHNob3RQcm9wZXJ0aWVzKHdpZHRoLCBoZWlnaHQsIHJhdGUpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6K6+572u5bCB6Z2i5Zyw5Z2AXHJcbiAgICAgKiBAcGFyYW0gY292ZXIg5bCB6Z2i5Zyw5Z2AXHJcbiAgICAgKi9cclxuICAgIHNldENvdmVyOiBmdW5jdGlvbiAoY292ZXIpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5zZXRDb3Zlcihjb3Zlcik7XHJcbiAgICB9LFxyXG5cclxuICAgIHJlbG9hZFBsYXllcjogZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGlzLmlzUmVsb2FkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5pbml0QWxpcGxheWVyKCk7XHJcbiAgICAgIHRoaXMuaXNSZWxvYWQgPSBmYWxzZTtcclxuICAgIH0sXHJcblxyXG4gICAgcmVjZWl2ZXNvdXJjZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgcmVjZWl2ZXZpZChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVwbGF5YXV0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlaGVpZ2h0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV3aWR0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXZpZGVvV2lkdGgobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgcmVjZWl2ZXZpZGVvSGVpZ2h0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gIHJlY2VpdmVwcmVsb2FkKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlY292ZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICByZWNlaXZlaXNMaXZlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gIHJlY2VpdmVhdXRvcGxheShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVyZVBsYXkobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbnJlY2VpdmV1c2VINVByaXNtKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV1c2VGbGFzaFByaXNtKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVwbGF5c2lubGluZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgcmVjZWl2ZXNob3dCdWZmZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICByZWNlaXZlc2tpblJlcyhuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlc2tpbkxheW91dChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVjb250cm9sQmFyVmlzaWJpbGl0eShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVzaG93QmFyVGltZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlZXh0cmFJbmZvKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVlbmFibGVTeXN0ZW1NZW51KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWZvcm1hdChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICByZWNlaXZlbWVkaWFUeXBlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgcmVjZWl2ZXF1YWxpdHlTb3J0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICByZWNlaXZlZGVmaW5pdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZleDVfdHlwZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmV4NV9mdWxsc2NyZWVuKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV4NV92aWRlb19wb3NpdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmV4NV9vcmllbnRhdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZleDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW4obmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVhdXRvUGxheURlbGF5KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxucmVjZWl2ZWxhbmd1YWdlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWxhbmd1YWdlVGV4dHMobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgIHJlY2VpdmVzbmFwc2hvdChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXNuYXBzaG90V2F0ZXJtYXJrKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZXVzZUhsc1BsdWdpbkZvclNhZmFyaShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZWVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVzdGFzaEluaXRpYWxTaXplRm9yRmx2KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlbG9hZERhdGFUaW1lb3V0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZld2FpdGluZ1RpbWVvdXQobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVsaXZlU3RhcnRUaW1lKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWxpdmVPdmVyVGltZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlbGl2ZVRpbWVTaGlmdFVybChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlcmVjcmVhdGVQbGF5ZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVkaWFnbm9zaXNCdXR0b25WaXNpYmxlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgcmVjZWl2ZWRpc2FibGVTZWVrKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlZW5jcnlwdFR5cGUobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgIHJlY2VpdmVwcm9ncmVzc01hcmtlcnMobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbnJlY2VpdmV2b2RSZXRyeShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZWxpdmVSZXRyeShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXBsYXlTdHlsZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlYWxpcGxheWVyU2RrUGF0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuXHJcblxyXG4gIH0sXHJcbn07XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlPlxyXG5AaW1wb3J0IHVybChodHRwczovL2cuYWxpY2RuLmNvbS9kZS9wcmlzbXBsYXllci8yLjkuMy9za2lucy9kZWZhdWx0L2FsaXBsYXllci1taW4uY3NzKTtcclxuPC9zdHlsZT5cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///1045\n");
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default2 = {\n name: \"Aliplayer\",\n props: {\n source: {\n type: String,\n default: \"\"\n },\n //媒体转码服务的媒体Id。\n vid: {\n type: String,\n default: \"\"\n },\n //播放权证\n playauth: {\n type: String,\n default: \"\"\n },\n //容器的大小\n height: {\n type: String,\n default: \"200px\"\n },\n //容器的大小\n width: {\n type: String,\n default: \"100%\"\n },\n //视频的高度大小\n videoWidth: {\n type: String,\n default: \"100%\"\n },\n //视频的宽度大小\n videoHeight: {\n type: String,\n default: \"200px\"\n },\n //播放器自动加载,目前仅h5可用\n preload: {\n type: Boolean,\n default: false\n },\n //播放器默认封面图片,请填写正确的图片url地址。需要autoplay为’false’时,才生效\n cover: {\n type: String,\n default: \"\"\n },\n //播放内容是否为直播,直播时会禁止用户拖动进度条。\n isLive: {\n type: Boolean,\n default: false\n },\n //播放器是否自动播放,在移动端autoplay属性会失效。\n autoplay: {\n type: Boolean,\n default: false\n },\n //播放器自动循环播放。\n rePlay: {\n type: Boolean,\n default: false\n },\n //指定使用H5播放器。\n useH5Prism: {\n type: Boolean,\n default: false\n },\n //指定使用Flash播放器。\n useFlashPrism: {\n type: Boolean,\n default: false\n },\n //H5是否内置播放,有的Android浏览器不起作用。\n playsinline: {\n type: Boolean,\n default: false\n },\n //显示播放时缓冲图标,默认true。\n showBuffer: {\n type: Boolean,\n default: true\n },\n //URL 皮肤图片,不建议随意修改该字段,如要修改,请参照皮肤定制。\n skinRes: {\n type: String,\n default: \"\"\n },\n //进度条\n skinLayout: {\n type: Array,\n default: function _default() {\n return [{\n name: \"bigPlayButton\",\n align: \"cc\",\n x: 30,\n y: 80\n }, {\n name: \"errorDisplay\",\n align: \"tlabs\",\n x: 0,\n y: 0\n }, {\n name: \"infoDisplay\"\n }, {\n name: \"controlBar\",\n align: \"blabs\",\n x: 0,\n y: 0,\n children: [{\n name: \"progress\",\n align: \"blabs\",\n x: 0,\n y: 44\n },\n //播放进度条\n {\n name: \"playButton\",\n align: \"tl\",\n x: 15,\n y: 12\n },\n //播放开始暂停按钮\n {\n name: \"timeDisplay\",\n align: \"tl\",\n x: 10,\n y: 7\n },\n //播放视频时间\n {\n name: \"fullScreenButton\",\n //全屏按钮\n align: \"tr\",\n x: 10,\n y: 10\n }, {\n name: \"volume\",\n //音量\n align: \"tr\",\n x: 5,\n y: 10\n }]\n }];\n }\n },\n //默认为‘hover’。可选的值为:‘click’、‘hover’、‘always’。\n controlBarVisibility: {\n type: String,\n default: \"hover\"\n },\n //控制栏自动隐藏时间(ms)\n showBarTime: {\n type: String,\n default: \"\"\n },\n /***\r\n * JSON串用于定制性接口参数,目前支持:\r\n 1.“fullTitle”:“测试页面”\r\n 全屏时显示视频标题(仅flash支持)。\r\n 2. “m3u8BufferLength”:“30”\r\n 播放m3u8时加载缓存ts文件长度单位(秒)(仅flash支持)。\r\n 3. “liveStartTime”:“2016/08/17 12:00:00”\r\n 直播开始时间,用于提示直播未开始(仅flash支持)。\r\n 4. “liveOverTime”:“2016/08/17 14:00:00”\r\n 直播结束时间,用于提示直播结束(仅flash支持)。\r\n */\n extraInfo: {\n type: String,\n default: \"\"\n },\n /**\r\n *是否允许系统右键菜单显示,默认为false。\r\n */\n enableSystemMenu: {\n type: Boolean,\n default: false\n },\n /***\r\n *\r\n *指定播放地址格式,只有使用vid的播放方式时支持\r\n 可选值为’mp4’、’m3u8’、’flv’、’mp3’,默认为空,仅H5支持。\r\n * */\n format: {\n type: String,\n default: \"m3u8\"\n },\n /***\r\n *\r\n * 指定返回音频还是视频,只有使用vid的播放方式时支持。\r\n 可选值为’video’和’audio’,默认为’video’\r\n ‘audio’主要是针对只包含音频的视频格式,比如音频的mp4,仅H5支持。\r\n * */\n mediaType: {\n type: String,\n default: \"video\"\n },\n /***\r\n * 指定排序方式,只有使用vid + plauth播放方式时支持。\r\n ‘desc’表示按倒序排序(即:从大到小排序)\r\n ‘asc’表示按正序排序(即:从小到大排序)\r\n 默认值:‘asc’,仅H5支持。\r\n * */\n qualitySort: {\n type: String,\n default: \"asc\"\n },\n /***\r\n * 显示视频清晰度,多个用逗号分隔,比如:’FD,LD’,此值是vid对应流清晰度的一个子集,\r\n 取值范围:FD(流畅)LD(标清)SD(高清)HD(超清)OD(原画)2K(2K)4K(4K),仅H5支持。\r\n * */\n definition: {\n type: String,\n default: \"OD\"\n },\n /**\r\n * 默认视频清晰度,此值是vid对应流的一个清晰度,\r\n 取值范围:FD(流畅)LD(标清)SD(高清)HD(超清)OD(原画)2K(2K)4K(4K),仅H5支持。\r\n * */\n defaultDefinition: {\n type: String,\n default: \"\"\n },\n /**\r\n * 声明启用同层H5播放器,启用时设置的值为‘h5’\r\n * */\n x5_type: {\n type: String,\n default: \"h5\"\n },\n /**\r\n * 声明视频播放时是否进入到TBS的全屏模式,默认为false。\r\n 当需要把视频做为背景时,设置为true\r\n * */\n x5_fullscreen: {\n type: Boolean,\n default: false\n },\n /**\r\n * 声明视频播在界面上的位置,默认为“center”。\r\n 可选值为:“top”,“center”\r\n * */\n x5_video_position: {\n type: String,\n default: \"center\"\n },\n /**\r\n * 声明 TBS 播放器支持的方向,可选值:\r\n landscape:横屏)\r\n portraint:竖屏\r\n landscape\r\n * */\n x5_orientation: {\n type: String,\n default: \"portraint\"\n },\n /**\r\n * 声明TBS全屏播放是否横屏,默认值为true。\r\n * */\n x5LandscapeAsFullScreen: {\n type: String,\n default: \"true\"\n },\n /**\r\n * 延迟播放时间,单位为秒。\r\n * */\n autoPlayDelay: {\n type: Number,\n default: 0\n },\n /**\r\n * 延迟播放提示文本\r\n * */\n autoPlayDelayDisplayText: {\n type: String,\n default: \"正在转码,请稍后......\"\n },\n /**\r\n * 国际化,默认为‘zh-cn’。\r\n 如果未设置,则采用浏览器语言。\r\n 可选值为‘zh-cn’、‘en-us’或其它值。\r\n * */\n language: {\n type: String,\n default: \"zh-cn\"\n },\n /**\r\n * 自定义国际化文本json结构,key的值需要和language属性值对应起来。\r\n 例子:{jp:{Play:”Play”}}\r\n * */\n languageTexts: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n /**\r\n * flash启用截图功能\r\n * */\n snapshot: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5设置截图水印。\r\n * */\n snapshotWatermark: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n /**\r\n * Safari浏览器可以启用Hls插件播放,Safari 11除外。\r\n * */\n useHlsPluginForSafari: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5播放flv时,设置是否启用播放缓存,只在直播下起作用。\r\n * */\n enableStashBufferForFlv: {\n type: Boolean,\n default: false\n },\n /**\r\n * H5播放flv时,初始缓存大小,只在直播下起作用。\r\n * */\n stashInitialSizeForFlv: {\n type: Number,\n default: 10\n },\n /**\r\n * 缓冲多长时间后,提示用户切换低清晰度,默认:20秒。\r\n * */\n loadDataTimeout: {\n type: Number,\n default: 20\n },\n /**\r\n *最大缓冲超时时间,超过这个时间会有错误提示,默认:60秒。\r\n * */\n waitingTimeout: {\n type: Number,\n default: 60\n },\n /**\r\n * 直播开始时间,直播时移功能使用,格式为:“2018/01/04 12:00:00”。\r\n * */\n liveStartTime: {\n type: String,\n default: \"\"\n },\n /**\r\n * 直播结束时间,直播时移功能使用,格式为:“2018/01/04 12:00:00”。\r\n * */\n liveOverTime: {\n type: String,\n default: \"\"\n },\n /**\r\n * 直播可用时移查询地址,详情参见直播时移。\r\n * https://help.aliyun.com/document_detail/65129.html?spm=a2c4g.11186623.2.28.3603bf80LR74sS\r\n * */\n liveTimeShiftUrl: {\n type: String,\n default: \"\"\n },\n /**\r\n * flv直播和hls时移切换是,重新创建播放器方法,详情参见直播时移。\r\n * https://help.aliyun.com/document_detail/65129.html?spm=a2c4g.11186623.2.28.3603bf80LR74sS\r\n * */\n recreatePlayer: {\n type: Function,\n default: function _default() {}\n },\n /**\r\n *是否显示检测按钮,默认为true。\r\n * */\n diagnosisButtonVisible: {\n type: Boolean,\n default: true\n },\n /**\r\n * 禁用进度条的Seek,默认为false,仅Flash支持。\r\n * */\n disableSeek: {\n type: Boolean,\n default: false\n },\n /**\r\n * 加密类型,播放点播私有加密视频时,设置值为1,默认值为0。\r\n * */\n encryptType: {\n type: Number,\n default: 0\n },\n /**\r\n * 进度条打点内容数组,详情参见进度条打点。\r\n * [\r\n {offset:0,text:'阿里视频云端到云到端服务的重要一环'},\r\n {offset:10,text:'除了支持点播和直播的基础播放功能外'},\r\n {offset:20,text:'深度融合视频云业务'},\r\n {offset:30,text:'为用户提供简单、快速、安全、稳定的视频播放服务'},\r\n {offset:40,text:'安装播放器Demo进行体验'},\r\n {offset:50,text:'开发人员请点击SDK下载'}\r\n ]\r\n * https://yq.aliyun.com/articles/686043?spm=a2c4g.11186623.2.31.3603bf80LR74sS\r\n * */\n progressMarkers: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n /**\r\n * 点播失败重试次数,默认3次\r\n * */\n vodRetry: {\n type: Number,\n default: 3\n },\n /**\r\n * 直播播放失败重试次数,默认5次\r\n * */\n liveRetry: {\n type: Number,\n default: 5\n },\n playStyle: {\n type: String,\n default: \"\"\n },\n aliplayerSdkPath: {\n // Aliplayer 代码的路径\n type: String,\n default: \"https://g.alicdn.com/de/prismplayer/2.9.3/aliplayer-min.js\"\n }\n },\n data: function data() {\n return {};\n },\n created: function created() {},\n beforeDestroy: function beforeDestroy() {},\n mounted: function mounted() {},\n methods: {}\n};\nexports.default = _default2;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vQWxpUGxheWVyLnZ1ZSJdLCJuYW1lcyI6WyJuYW1lIiwicHJvcHMiLCJzb3VyY2UiLCJ0eXBlIiwiZGVmYXVsdCIsInZpZCIsInBsYXlhdXRoIiwiaGVpZ2h0Iiwid2lkdGgiLCJ2aWRlb1dpZHRoIiwidmlkZW9IZWlnaHQiLCJwcmVsb2FkIiwiY292ZXIiLCJpc0xpdmUiLCJhdXRvcGxheSIsInJlUGxheSIsInVzZUg1UHJpc20iLCJ1c2VGbGFzaFByaXNtIiwicGxheXNpbmxpbmUiLCJzaG93QnVmZmVyIiwic2tpblJlcyIsInNraW5MYXlvdXQiLCJhbGlnbiIsIngiLCJ5IiwiY2hpbGRyZW4iLCJjb250cm9sQmFyVmlzaWJpbGl0eSIsInNob3dCYXJUaW1lIiwiZXh0cmFJbmZvIiwiZW5hYmxlU3lzdGVtTWVudSIsImZvcm1hdCIsIm1lZGlhVHlwZSIsInF1YWxpdHlTb3J0IiwiZGVmaW5pdGlvbiIsImRlZmF1bHREZWZpbml0aW9uIiwieDVfdHlwZSIsIng1X2Z1bGxzY3JlZW4iLCJ4NV92aWRlb19wb3NpdGlvbiIsIng1X29yaWVudGF0aW9uIiwieDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW4iLCJhdXRvUGxheURlbGF5IiwiYXV0b1BsYXlEZWxheURpc3BsYXlUZXh0IiwibGFuZ3VhZ2UiLCJsYW5ndWFnZVRleHRzIiwic25hcHNob3QiLCJzbmFwc2hvdFdhdGVybWFyayIsInVzZUhsc1BsdWdpbkZvclNhZmFyaSIsImVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2Iiwic3Rhc2hJbml0aWFsU2l6ZUZvckZsdiIsImxvYWREYXRhVGltZW91dCIsIndhaXRpbmdUaW1lb3V0IiwibGl2ZVN0YXJ0VGltZSIsImxpdmVPdmVyVGltZSIsImxpdmVUaW1lU2hpZnRVcmwiLCJyZWNyZWF0ZVBsYXllciIsImRpYWdub3Npc0J1dHRvblZpc2libGUiLCJkaXNhYmxlU2VlayIsImVuY3J5cHRUeXBlIiwicHJvZ3Jlc3NNYXJrZXJzIiwidm9kUmV0cnkiLCJsaXZlUmV0cnkiLCJwbGF5U3R5bGUiLCJhbGlwbGF5ZXJTZGtQYXRoIiwiZGF0YSIsImNyZWF0ZWQiLCJiZWZvcmVEZXN0cm95IiwibW91bnRlZCIsIm1ldGhvZHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dCQWlJQTtFQUNBQTtFQUNBQztJQUNBQztNQUNBQztNQUNBQztJQUNBO0lBQ0E7SUFDQUM7TUFDQUY7TUFDQUM7SUFDQTtJQUNBO0lBQ0FFO01BQ0FIO01BQ0FDO0lBQ0E7SUFDQTtJQUNBRztNQUNBSjtNQUNBQztJQUNBO0lBQ0E7SUFDQUk7TUFDQUw7TUFDQUM7SUFDQTtJQUNBO0lBQ0FLO01BQ0FOO01BQ0FDO0lBQ0E7SUFDQTtJQUNBTTtNQUNBUDtNQUNBQztJQUNBO0lBQ0E7SUFDQU87TUFDQVI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FRO01BQ0FUO01BQ0FDO0lBQ0E7SUFDQTtJQUNBUztNQUNBVjtNQUNBQztJQUNBO0lBQ0E7SUFDQVU7TUFDQVg7TUFDQUM7SUFDQTtJQUNBO0lBQ0FXO01BQ0FaO01BQ0FDO0lBQ0E7SUFDQTtJQUNBWTtNQUNBYjtNQUNBQztJQUNBO0lBQ0E7SUFDQWE7TUFDQWQ7TUFDQUM7SUFDQTtJQUNBO0lBQ0FjO01BQ0FmO01BQ0FDO0lBQ0E7SUFDQTtJQUNBZTtNQUNBaEI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FnQjtNQUNBakI7TUFDQUM7SUFDQTtJQUNBO0lBQ0FpQjtNQUNBbEI7TUFDQUM7UUFDQSxRQUNBO1VBQ0FKO1VBQ0FzQjtVQUNBQztVQUNBQztRQUNBLEdBQ0E7VUFDQXhCO1VBQ0FzQjtVQUNBQztVQUNBQztRQUNBLEdBQ0E7VUFDQXhCO1FBQ0EsR0FDQTtVQUNBQTtVQUNBc0I7VUFDQUM7VUFDQUM7VUFDQUMsV0FDQTtZQUFBekI7WUFBQXNCO1lBQUFDO1lBQUFDO1VBQUE7VUFBQTtVQUNBO1lBQUF4QjtZQUFBc0I7WUFBQUM7WUFBQUM7VUFBQTtVQUFBO1VBQ0E7WUFBQXhCO1lBQUFzQjtZQUFBQztZQUFBQztVQUFBO1VBQUE7VUFDQTtZQUNBeEI7WUFBQTtZQUNBc0I7WUFDQUM7WUFDQUM7VUFDQSxHQUNBO1lBQ0F4QjtZQUFBO1lBQ0FzQjtZQUNBQztZQUNBQztVQUNBO1FBRUEsRUFDQTtNQUNBO0lBQ0E7SUFDQTtJQUNBRTtNQUNBdkI7TUFDQUM7SUFDQTtJQUNBO0lBQ0F1QjtNQUNBeEI7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXdCO01BQ0F6QjtNQUNBQztJQUNBO0lBRUE7QUFDQTtBQUNBO0lBQ0F5QjtNQUNBMUI7TUFDQUM7SUFDQTtJQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQTBCO01BQ0EzQjtNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0EyQjtNQUNBNUI7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBNEI7TUFDQTdCO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBNkI7TUFDQTlCO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBOEI7TUFDQS9CO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQStCO01BQ0FoQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQWdDO01BQ0FqQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQWlDO01BQ0FsQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBQ0FrQztNQUNBbkM7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBbUM7TUFDQXBDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQW9DO01BQ0FyQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0FxQztNQUNBdEM7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXNDO01BQ0F2QztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXVDO01BQ0F4QztNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBd0M7TUFDQXpDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQXlDO01BQ0ExQztNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBMEM7TUFDQTNDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQTJDO01BQ0E1QztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0E0QztNQUNBN0M7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBNkM7TUFDQTlDO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQThDO01BQ0EvQztNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0ErQztNQUNBaEQ7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBZ0Q7TUFDQWpEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBaUQ7TUFDQWxEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtJQUNBa0Q7TUFDQW5EO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQW1EO01BQ0FwRDtNQUNBQztJQUNBO0lBQ0E7QUFDQTtBQUNBO0lBQ0FvRDtNQUNBckQ7TUFDQUM7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBcUQ7TUFDQXREO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDQXNEO01BQ0F2RDtNQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBdUQ7TUFDQXhEO01BQ0FDO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQXdEO01BQ0F6RDtNQUNBQztJQUNBO0lBRUF5RDtNQUNBMUQ7TUFDQUM7SUFDQTtJQUNBMEQ7TUFDQTtNQUNBM0Q7TUFDQUM7SUFDQTtFQUNBO0VBQ0EyRDtJQUNBO0VBQ0E7RUFDQUM7RUFDQUM7RUFDQUM7RUFDQUM7QUFDQTtBQUFBIiwiZmlsZSI6IjEwNDUuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgPGRpdj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJwcmlzbS1wbGF5ZXJcIlxyXG4gICAgICBpZD1cInVybC1wbGF5ZXItdGVzdFwiXHJcbiAgICAgIDpzdHlsZT1cInBsYXlTdHlsZVwiXHJcbiAgICAgIDpzb3VyY2U9XCJzb3VyY2VcIlxyXG4gICAgICA6dmlkPVwidmlkXCJcclxuICAgICAgOnBsYXlhdXRoPVwicGxheWF1dGhcIlxyXG4gICAgICA6aGVpZ2h0PVwiaGVpZ2h0XCJcclxuICAgICAgOndpZHRoPVwid2lkdGhcIlxyXG4gICAgICA6dmlkZW9XaWR0aD1cInZpZGVvV2lkdGhcIlxyXG4gICAgICA6dmlkZW9IZWlnaHQ9XCJ2aWRlb0hlaWdodFwiXHJcbiAgICAgIDpwcmVsb2FkPVwicHJlbG9hZFwiXHJcbiAgICAgIDpjb3Zlcj1cImNvdmVyXCJcclxuICAgICAgOmlzTGl2ZT1cImlzTGl2ZVwiXHJcbiAgICAgIDphdXRvcGxheT1cImF1dG9wbGF5XCJcclxuICAgICAgOnJlUGxheT1cInJlUGxheVwiXHJcbiAgICAgIDp1c2VINVByaXNtPVwidXNlSDVQcmlzbVwiXHJcbiAgICAgIDp1c2VGbGFzaFByaXNtPVwidXNlRmxhc2hQcmlzbVwiXHJcbiAgICAgIDpwbGF5c2lubGluZT1cInBsYXlzaW5saW5lXCJcclxuICAgICAgOnNob3dCdWZmZXI9XCJzaG93QnVmZmVyXCJcclxuICAgICAgOnNraW5SZXM9XCJza2luUmVzXCJcclxuICAgICAgOnNraW5MYXlvdXQ9XCJza2luTGF5b3V0XCJcclxuICAgICAgOmNvbnRyb2xCYXJWaXNpYmlsaXR5PVwiY29udHJvbEJhclZpc2liaWxpdHlcIlxyXG4gICAgICA6c2hvd0JhclRpbWU9XCJzaG93QmFyVGltZVwiXHJcbiAgICAgIDpleHRyYUluZm89XCJleHRyYUluZm9cIlxyXG4gICAgICA6ZW5hYmxlU3lzdGVtTWVudT1cImVuYWJsZVN5c3RlbU1lbnVcIlxyXG4gICAgICA6Zm9ybWF0PVwiZm9ybWF0XCJcclxuICAgICAgOm1lZGlhVHlwZT1cIm1lZGlhVHlwZVwiXHJcbiAgICAgIDpxdWFsaXR5U29ydD1cInF1YWxpdHlTb3J0XCJcclxuICAgICAgOmRlZmluaXRpb249XCJkZWZpbml0aW9uXCJcclxuICAgICAgOng1X3R5cGU9XCJ4NV90eXBlXCJcclxuICAgICAgOng1X2Z1bGxzY3JlZW49XCJ4NV9mdWxsc2NyZWVuXCJcclxuICAgICAgOng1X3ZpZGVvX3Bvc2l0aW9uPVwieDVfdmlkZW9fcG9zaXRpb25cIlxyXG4gICAgICA6eDVfb3JpZW50YXRpb249XCJ4NV9vcmllbnRhdGlvblwiXHJcbiAgICAgIDp4NUxhbmRzY2FwZUFzRnVsbFNjcmVlbj1cIng1TGFuZHNjYXBlQXNGdWxsU2NyZWVuXCJcclxuICAgICAgOmF1dG9QbGF5RGVsYXk9XCJhdXRvUGxheURlbGF5XCJcclxuICAgICAgOmF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dD1cImF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dFwiXHJcbiAgICAgIDpsYW5ndWFnZT1cImxhbmd1YWdlXCJcclxuICAgICAgOmxhbmd1YWdlVGV4dHM9XCJsYW5ndWFnZVRleHRzXCJcclxuICAgICAgOnNuYXBzaG90PVwic25hcHNob3RcIlxyXG4gICAgICA6c25hcHNob3RXYXRlcm1hcms9XCJzbmFwc2hvdFdhdGVybWFya1wiXHJcbiAgICAgIDp1c2VIbHNQbHVnaW5Gb3JTYWZhcmk9XCJ1c2VIbHNQbHVnaW5Gb3JTYWZhcmlcIlxyXG4gICAgICA6ZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHY9XCJlbmFibGVTdGFzaEJ1ZmZlckZvckZsdlwiXHJcbiAgICAgIDpzdGFzaEluaXRpYWxTaXplRm9yRmx2PVwic3Rhc2hJbml0aWFsU2l6ZUZvckZsdlwiXHJcbiAgICAgIDpsb2FkRGF0YVRpbWVvdXQ9XCJsb2FkRGF0YVRpbWVvdXRcIlxyXG4gICAgICA6d2FpdGluZ1RpbWVvdXQ9XCJ3YWl0aW5nVGltZW91dFwiXHJcbiAgICAgIDpsaXZlU3RhcnRUaW1lPVwibGl2ZVN0YXJ0VGltZVwiXHJcbiAgICAgIDpsaXZlT3ZlclRpbWU9XCJsaXZlT3ZlclRpbWVcIlxyXG4gICAgICA6bGl2ZVRpbWVTaGlmdFVybD1cImxpdmVUaW1lU2hpZnRVcmxcIlxyXG4gICAgICA6cmVjcmVhdGVQbGF5ZXI9XCJyZWNyZWF0ZVBsYXllclwiXHJcbiAgICAgIDpkaWFnbm9zaXNCdXR0b25WaXNpYmxlPVwiZGlhZ25vc2lzQnV0dG9uVmlzaWJsZVwiXHJcbiAgICAgIDpkaXNhYmxlU2Vlaz1cImRpc2FibGVTZWVrXCJcclxuICAgICAgOmVuY3J5cHRUeXBlPVwiZW5jcnlwdFR5cGVcIlxyXG4gICAgICA6cHJvZ3Jlc3NNYXJrZXJzPVwicHJvZ3Jlc3NNYXJrZXJzXCJcclxuICAgICAgOnZvZFJldHJ5PVwidm9kUmV0cnlcIlxyXG4gICAgICA6bGl2ZVJldHJ5PVwibGl2ZVJldHJ5XCJcclxuICAgICAgOnBsYXlTdHlsZT1cInBsYXlTdHlsZVwiXHJcbiAgICAgIDphbGlwbGF5ZXJTZGtQYXRoPVwiYWxpcGxheWVyU2RrUGF0aFwiXHJcbiAgICAgIDpjaGFuZ2U6c291cmNlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzb3VyY2VcIlxyXG4gICAgICA6Y2hhbmdlOnZpZD1cInJlbmRlclNjcmlwdC5yZWNlaXZldmlkXCJcclxuICAgICAgOmNoYW5nZTpwbGF5YXV0aD1cInJlbmRlclNjcmlwdC5yZWNlaXZlcGxheWF1dGhcIlxyXG4gICAgICA6Y2hhbmdlOmhlaWdodD1cInJlbmRlclNjcmlwdC5yZWNlaXZlaGVpZ2h0XCJcclxuICAgICAgOmNoYW5nZTp3aWR0aD1cInJlbmRlclNjcmlwdC5yZWNlaXZld2lkdGhcIlxyXG4gICAgICA6Y2hhbmdlOnZpZGVvV2lkdGg9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXZpZGVvV2lkdGhcIlxyXG4gICAgICA6Y2hhbmdlOnZpZGVvSGVpZ2h0PVwicmVuZGVyU2NyaXB0LnJlY2VpdmV2aWRlb0hlaWdodFwiXHJcbiAgICAgIDpjaGFuZ2U6cHJlbG9hZD1cInJlbmRlclNjcmlwdC5yZWNlaXZlcHJlbG9hZFwiXHJcbiAgICAgIDpjaGFuZ2U6Y292ZXI9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWNvdmVyXCJcclxuICAgICAgOmNoYW5nZTppc0xpdmU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWlzTGl2ZVwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b3BsYXk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWF1dG9wbGF5XCJcclxuICAgICAgOmNoYW5nZTpyZVBsYXk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXJlUGxheVwiXHJcbiAgICAgIDpjaGFuZ2U6dXNlSDVQcmlzbT1cInJlbmRlclNjcmlwdC5yZWNlaXZldXNlSDVQcmlzbVwiXHJcbiAgICAgIDpjaGFuZ2U6dXNlRmxhc2hQcmlzbT1cInJlbmRlclNjcmlwdC5yZWNlaXZldXNlRmxhc2hQcmlzbVwiXHJcbiAgICAgIDpjaGFuZ2U6cGxheXNpbmxpbmU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXBsYXlzaW5saW5lXCJcclxuICAgICAgOmNoYW5nZTpzaG93QnVmZmVyPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzaG93QnVmZmVyXCJcclxuICAgICAgOmNoYW5nZTpza2luUmVzPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVza2luUmVzXCJcclxuICAgICAgOmNoYW5nZTpza2luTGF5b3V0PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVza2luTGF5b3V0XCJcclxuICAgICAgOmNoYW5nZTpjb250cm9sQmFyVmlzaWJpbGl0eT1cInJlbmRlclNjcmlwdC5yZWNlaXZlY29udHJvbEJhclZpc2liaWxpdHlcIlxyXG4gICAgICA6Y2hhbmdlOnNob3dCYXJUaW1lPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzaG93QmFyVGltZVwiXHJcbiAgICAgIDpjaGFuZ2U6ZXh0cmFJbmZvPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVleHRyYUluZm9cIlxyXG4gICAgICA6Y2hhbmdlOmVuYWJsZVN5c3RlbU1lbnU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWVuYWJsZVN5c3RlbU1lbnVcIlxyXG4gICAgICA6Y2hhbmdlOmZvcm1hdD1cInJlbmRlclNjcmlwdC5yZWNlaXZlZm9ybWF0XCJcclxuICAgICAgOmNoYW5nZTptZWRpYVR5cGU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZW1lZGlhVHlwZVwiXHJcbiAgICAgIDpjaGFuZ2U6cXVhbGl0eVNvcnQ9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXF1YWxpdHlTb3J0XCJcclxuICAgICAgOmNoYW5nZTpkZWZpbml0aW9uPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVkZWZpbml0aW9uXCJcclxuICAgICAgOmNoYW5nZTp4NV90eXBlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV90eXBlXCJcclxuICAgICAgOmNoYW5nZTp4NV9mdWxsc2NyZWVuPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV9mdWxsc2NyZWVuXCJcclxuICAgICAgOmNoYW5nZTp4NV92aWRlb19wb3NpdGlvbj1cInJlbmRlclNjcmlwdC5yZWNlaXZleDVfdmlkZW9fcG9zaXRpb25cIlxyXG4gICAgICA6Y2hhbmdlOng1X29yaWVudGF0aW9uPVwicmVuZGVyU2NyaXB0LnJlY2VpdmV4NV9vcmllbnRhdGlvblwiXHJcbiAgICAgIDpjaGFuZ2U6eDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW49XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZXg1TGFuZHNjYXBlQXNGdWxsU2NyZWVuXHJcbiAgICAgIFwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b1BsYXlEZWxheT1cInJlbmRlclNjcmlwdC5yZWNlaXZlYXV0b1BsYXlEZWxheVwiXHJcbiAgICAgIDpjaGFuZ2U6YXV0b1BsYXlEZWxheURpc3BsYXlUZXh0PVwiXHJcbiAgICAgICAgcmVuZGVyU2NyaXB0LnJlY2VpdmVhdXRvUGxheURlbGF5RGlzcGxheVRleHRcclxuICAgICAgXCJcclxuICAgICAgOmNoYW5nZTpsYW5ndWFnZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlbGFuZ3VhZ2VcIlxyXG4gICAgICA6Y2hhbmdlOmxhbmd1YWdlVGV4dHM9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWxhbmd1YWdlVGV4dHNcIlxyXG4gICAgICA6Y2hhbmdlOnNuYXBzaG90PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVzbmFwc2hvdFwiXHJcbiAgICAgIDpjaGFuZ2U6c25hcHNob3RXYXRlcm1hcms9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXNuYXBzaG90V2F0ZXJtYXJrXCJcclxuICAgICAgOmNoYW5nZTp1c2VIbHNQbHVnaW5Gb3JTYWZhcmk9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZXVzZUhsc1BsdWdpbkZvclNhZmFyaVwiXHJcbiAgICAgIDpjaGFuZ2U6ZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHY9XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZWVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2XHJcbiAgICAgIFwiXHJcbiAgICAgIDpjaGFuZ2U6c3Rhc2hJbml0aWFsU2l6ZUZvckZsdj1cIlxyXG4gICAgICAgIHJlbmRlclNjcmlwdC5yZWNlaXZlc3Rhc2hJbml0aWFsU2l6ZUZvckZsdlxyXG4gICAgICBcIlxyXG4gICAgICA6Y2hhbmdlOmxvYWREYXRhVGltZW91dD1cInJlbmRlclNjcmlwdC5yZWNlaXZlbG9hZERhdGFUaW1lb3V0XCJcclxuICAgICAgOmNoYW5nZTp3YWl0aW5nVGltZW91dD1cInJlbmRlclNjcmlwdC5yZWNlaXZld2FpdGluZ1RpbWVvdXRcIlxyXG4gICAgICA6Y2hhbmdlOmxpdmVTdGFydFRpbWU9XCJyZW5kZXJTY3JpcHQucmVjZWl2ZWxpdmVTdGFydFRpbWVcIlxyXG4gICAgICA6Y2hhbmdlOmxpdmVPdmVyVGltZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlbGl2ZU92ZXJUaW1lXCJcclxuICAgICAgOmNoYW5nZTpsaXZlVGltZVNoaWZ0VXJsPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVsaXZlVGltZVNoaWZ0VXJsXCJcclxuICAgICAgOmNoYW5nZTpyZWNyZWF0ZVBsYXllcj1cInJlbmRlclNjcmlwdC5yZWNlaXZlcmVjcmVhdGVQbGF5ZXJcIlxyXG4gICAgICA6Y2hhbmdlOmRpYWdub3Npc0J1dHRvblZpc2libGU9XCJcclxuICAgICAgICByZW5kZXJTY3JpcHQucmVjZWl2ZWRpYWdub3Npc0J1dHRvblZpc2libGVcclxuICAgICAgXCJcclxuICAgICAgOmNoYW5nZTpkaXNhYmxlU2Vlaz1cInJlbmRlclNjcmlwdC5yZWNlaXZlZGlzYWJsZVNlZWtcIlxyXG4gICAgICA6Y2hhbmdlOmVuY3J5cHRUeXBlPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVlbmNyeXB0VHlwZVwiXHJcbiAgICAgIDpjaGFuZ2U6cHJvZ3Jlc3NNYXJrZXJzPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVwcm9ncmVzc01hcmtlcnNcIlxyXG4gICAgICA6Y2hhbmdlOnZvZFJldHJ5PVwicmVuZGVyU2NyaXB0LnJlY2VpdmV2b2RSZXRyeVwiXHJcbiAgICAgIDpjaGFuZ2U6bGl2ZVJldHJ5PVwicmVuZGVyU2NyaXB0LnJlY2VpdmVsaXZlUmV0cnlcIlxyXG4gICAgICA6Y2hhbmdlOnBsYXlTdHlsZT1cInJlbmRlclNjcmlwdC5yZWNlaXZlcGxheVN0eWxlXCJcclxuICAgICAgOmNoYW5nZTphbGlwbGF5ZXJTZGtQYXRoPVwicmVuZGVyU2NyaXB0LnJlY2VpdmVhbGlwbGF5ZXJTZGtQYXRoXCJcclxuICAgID48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC90ZW1wbGF0ZT5cclxuXHJcbjxzY3JpcHQ+XHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBuYW1lOiBcIkFsaXBsYXllclwiLFxyXG4gIHByb3BzOiB7XHJcbiAgICBzb3VyY2U6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8v5aqS5L2T6L2s56CB5pyN5Yqh55qE5aqS5L2TSWTjgIJcclxuICAgIHZpZDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7mnYPor4FcclxuICAgIHBsYXlhdXRoOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvL+WuueWZqOeahOWkp+Wwj1xyXG4gICAgaGVpZ2h0OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCIyMDBweFwiLFxyXG4gICAgfSxcclxuICAgIC8v5a655Zmo55qE5aSn5bCPXHJcbiAgICB3aWR0aDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiMTAwJVwiLFxyXG4gICAgfSxcclxuICAgIC8v6KeG6aKR55qE6auY5bqm5aSn5bCPXHJcbiAgICB2aWRlb1dpZHRoOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCIxMDAlXCIsXHJcbiAgICB9LFxyXG4gICAgLy/op4bpopHnmoTlrr3luqblpKflsI9cclxuICAgIHZpZGVvSGVpZ2h0OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCIyMDBweFwiLFxyXG4gICAgfSxcclxuICAgIC8v5pKt5pS+5Zmo6Ieq5Yqo5Yqg6L2977yM55uu5YmN5LuFaDXlj6/nlKhcclxuICAgIHByZWxvYWQ6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7lmajpu5jorqTlsIHpnaLlm77niYfvvIzor7floavlhpnmraPnoa7nmoTlm77niYd1cmzlnLDlnYDjgILpnIDopoFhdXRvcGxheeS4uuKAmWZhbHNl4oCZ5pe277yM5omN55Sf5pWIXHJcbiAgICBjb3Zlcjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLy/mkq3mlL7lhoXlrrnmmK/lkKbkuLrnm7Tmkq3vvIznm7Tmkq3ml7bkvJrnpoHmraLnlKjmiLfmi5bliqjov5vluqbmnaHjgIJcclxuICAgIGlzTGl2ZToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL+aSreaUvuWZqOaYr+WQpuiHquWKqOaSreaUvu+8jOWcqOenu+WKqOerr2F1dG9wbGF55bGe5oCn5Lya5aSx5pWI44CCXHJcbiAgICBhdXRvcGxheToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL+aSreaUvuWZqOiHquWKqOW+queOr+aSreaUvuOAglxyXG4gICAgcmVQbGF5OiB7XHJcbiAgICAgIHR5cGU6IEJvb2xlYW4sXHJcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxyXG4gICAgfSxcclxuICAgIC8v5oyH5a6a5L2/55SoSDXmkq3mlL7lmajjgIJcclxuICAgIHVzZUg1UHJpc206IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mjIflrprkvb/nlKhGbGFzaOaSreaUvuWZqOOAglxyXG4gICAgdXNlRmxhc2hQcmlzbToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvL0g15piv5ZCm5YaF572u5pKt5pS+77yM5pyJ55qEQW5kcm9pZOa1j+iniOWZqOS4jei1t+S9nOeUqOOAglxyXG4gICAgcGxheXNpbmxpbmU6IHtcclxuICAgICAgdHlwZTogQm9vbGVhbixcclxuICAgICAgZGVmYXVsdDogZmFsc2UsXHJcbiAgICB9LFxyXG4gICAgLy/mmL7npLrmkq3mlL7ml7bnvJPlhrLlm77moIfvvIzpu5jorqR0cnVl44CCXHJcbiAgICBzaG93QnVmZmVyOiB7XHJcbiAgICAgIHR5cGU6IEJvb2xlYW4sXHJcbiAgICAgIGRlZmF1bHQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgLy9VUkwg55qu6IKk5Zu+54mH77yM5LiN5bu66K6u6ZqP5oSP5L+u5pS56K+l5a2X5q6177yM5aaC6KaB5L+u5pS577yM6K+35Y+C54Wn55qu6IKk5a6a5Yi244CCXHJcbiAgICBza2luUmVzOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvL+i/m+W6puadoVxyXG4gICAgc2tpbkxheW91dDoge1xyXG4gICAgICB0eXBlOiBBcnJheSxcclxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG5hbWU6IFwiYmlnUGxheUJ1dHRvblwiLFxyXG4gICAgICAgICAgICBhbGlnbjogXCJjY1wiLFxyXG4gICAgICAgICAgICB4OiAzMCxcclxuICAgICAgICAgICAgeTogODAsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBuYW1lOiBcImVycm9yRGlzcGxheVwiLFxyXG4gICAgICAgICAgICBhbGlnbjogXCJ0bGFic1wiLFxyXG4gICAgICAgICAgICB4OiAwLFxyXG4gICAgICAgICAgICB5OiAwLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogXCJpbmZvRGlzcGxheVwiLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogXCJjb250cm9sQmFyXCIsXHJcbiAgICAgICAgICAgIGFsaWduOiBcImJsYWJzXCIsXHJcbiAgICAgICAgICAgIHg6IDAsXHJcbiAgICAgICAgICAgIHk6IDAsXHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInByb2dyZXNzXCIsIGFsaWduOiBcImJsYWJzXCIsIHg6IDAsIHk6IDQ0IH0sIC8v5pKt5pS+6L+b5bqm5p2hXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInBsYXlCdXR0b25cIiwgYWxpZ246IFwidGxcIiwgeDogMTUsIHk6IDEyIH0sIC8v5pKt5pS+5byA5aeL5pqC5YGc5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgeyBuYW1lOiBcInRpbWVEaXNwbGF5XCIsIGFsaWduOiBcInRsXCIsIHg6IDEwLCB5OiA3IH0sIC8v5pKt5pS+6KeG6aKR5pe26Ze0XHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgbmFtZTogXCJmdWxsU2NyZWVuQnV0dG9uXCIsIC8v5YWo5bGP5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgICBhbGlnbjogXCJ0clwiLFxyXG4gICAgICAgICAgICAgICAgeDogMTAsXHJcbiAgICAgICAgICAgICAgICB5OiAxMCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIG5hbWU6IFwidm9sdW1lXCIsIC8v6Z+z6YePXHJcbiAgICAgICAgICAgICAgICBhbGlnbjogXCJ0clwiLFxyXG4gICAgICAgICAgICAgICAgeDogNSxcclxuICAgICAgICAgICAgICAgIHk6IDEwLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF07XHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgLy/pu5jorqTkuLrigJhob3ZlcuKAmeOAguWPr+mAieeahOWAvOS4uu+8muKAmGNsaWNr4oCZ44CB4oCYaG92ZXLigJnjgIHigJhhbHdheXPigJnjgIJcclxuICAgIGNvbnRyb2xCYXJWaXNpYmlsaXR5OiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJob3ZlclwiLFxyXG4gICAgfSxcclxuICAgIC8v5o6n5Yi25qCP6Ieq5Yqo6ZqQ6JeP5pe26Ze077yIbXPvvIlcclxuICAgIHNob3dCYXJUaW1lOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvKioqXHJcbiAgICAgICAgICogSlNPTuS4sueUqOS6juWumuWItuaAp+aOpeWPo+WPguaVsO+8jOebruWJjeaUr+aMge+8mlxyXG4gICAgICAgICAxLuKAnGZ1bGxUaXRsZeKAne+8muKAnOa1i+ivlemhtemdouKAnVxyXG4gICAgICAgICDlhajlsY/ml7bmmL7npLrop4bpopHmoIfpopjvvIjku4VmbGFzaOaUr+aMge+8ieOAglxyXG4gICAgICAgICAyLiDigJxtM3U4QnVmZmVyTGVuZ3Ro4oCd77ya4oCcMzDigJ1cclxuICAgICAgICAg5pKt5pS+bTN1OOaXtuWKoOi9vee8k+WtmHRz5paH5Lu26ZW/5bqm5Y2V5L2N77yI56eS77yJ77yI5LuFZmxhc2jmlK/mjIHvvInjgIJcclxuICAgICAgICAgMy4g4oCcbGl2ZVN0YXJ0VGltZeKAne+8muKAnDIwMTYvMDgvMTcgMTI6MDA6MDDigJ1cclxuICAgICAgICAg55u05pKt5byA5aeL5pe26Ze077yM55So5LqO5o+Q56S655u05pKt5pyq5byA5aeLKOS7hWZsYXNo5pSv5oyBKeOAglxyXG4gICAgICAgICA0LiDigJxsaXZlT3ZlclRpbWXigJ3vvJrigJwyMDE2LzA4LzE3IDE0OjAwOjAw4oCdXHJcbiAgICAgICAgIOebtOaSree7k+adn+aXtumXtO+8jOeUqOS6juaPkOekuuebtOaSree7k+adn++8iOS7hWZsYXNo5pSv5oyB77yJ44CCXHJcbiAgICAgICAgICovXHJcbiAgICBleHRyYUluZm86IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuXHJcbiAgICAvKipcclxuICAgICAq5piv5ZCm5YWB6K6457O757uf5Y+z6ZSu6I+c5Y2V5pi+56S677yM6buY6K6k5Li6ZmFsc2XjgIJcclxuICAgICAqL1xyXG4gICAgZW5hYmxlU3lzdGVtTWVudToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcblxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICrmjIflrprmkq3mlL7lnLDlnYDmoLzlvI/vvIzlj6rmnInkvb/nlKh2aWTnmoTmkq3mlL7mlrnlvI/ml7bmlK/mjIFcclxuICAgICAgICAg5Y+v6YCJ5YC85Li64oCZbXA04oCZ44CB4oCZbTN1OOKAmeOAgeKAmWZsduKAmeOAgeKAmW1wM+KAme+8jOm7mOiupOS4uuepuu+8jOS7hUg15pSv5oyB44CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGZvcm1hdDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwibTN1OFwiLFxyXG4gICAgfSxcclxuICAgIC8qKipcclxuICAgICAgICAgKlxyXG4gICAgICAgICAqIOaMh+Wumui/lOWbnumfs+mikei/mOaYr+inhumike+8jOWPquacieS9v+eUqHZpZOeahOaSreaUvuaWueW8j+aXtuaUr+aMgeOAglxyXG4gICAgICAgICDlj6/pgInlgLzkuLrigJl2aWRlb+KAmeWSjOKAmWF1ZGlv4oCZ77yM6buY6K6k5Li64oCZdmlkZW/igJlcclxuICAgICAgICAg4oCYYXVkaW/igJnkuLvopoHmmK/pkojlr7nlj6rljIXlkKvpn7PpopHnmoTop4bpopHmoLzlvI/vvIzmr5TlpoLpn7PpopHnmoRtcDTvvIzku4VINeaUr+aMgeOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBtZWRpYVR5cGU6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcInZpZGVvXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqIOaMh+WumuaOkuW6j+aWueW8j++8jOWPquacieS9v+eUqHZpZCArIHBsYXV0aOaSreaUvuaWueW8j+aXtuaUr+aMgeOAglxyXG4gICAgICAgICDigJhkZXNj4oCZ6KGo56S65oyJ5YCS5bqP5o6S5bqP77yI5Y2z77ya5LuO5aSn5Yiw5bCP5o6S5bqP77yJXHJcbiAgICAgICAgIOKAmGFzY+KAmeihqOekuuaMieato+W6j+aOkuW6j++8iOWNs++8muS7juWwj+WIsOWkp+aOkuW6j++8iVxyXG4gICAgICAgICDpu5jorqTlgLzvvJrigJhhc2PigJnvvIzku4VINeaUr+aMgeOAglxyXG4gICAgICAgICAqICovXHJcbiAgICBxdWFsaXR5U29ydDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiYXNjXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqKlxyXG4gICAgICAgICAqIOaYvuekuuinhumikea4heaZsOW6pu+8jOWkmuS4queUqOmAl+WPt+WIhumalO+8jOavlOWmgu+8muKAmUZELExE4oCZ77yM5q2k5YC85pivdmlk5a+55bqU5rWB5riF5pmw5bqm55qE5LiA5Liq5a2Q6ZuG77yMXHJcbiAgICAgICAgIOWPluWAvOiMg+WbtO+8mkZE77yI5rWB55WF77yJTETvvIjmoIfmuIXvvIlTRO+8iOmrmOa4he+8iUhE77yI6LaF5riF77yJT0TvvIjljp/nlLvvvIkyS++8iDJL77yJNEvvvIg0S++8ie+8jOS7hUg15pSv5oyB44CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGRlZmluaXRpb246IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIk9EXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgICog6buY6K6k6KeG6aKR5riF5pmw5bqm77yM5q2k5YC85pivdmlk5a+55bqU5rWB55qE5LiA5Liq5riF5pmw5bqm77yMXHJcbiAgICAgICAgIOWPluWAvOiMg+WbtO+8mkZE77yI5rWB55WF77yJTETvvIjmoIfmuIXvvIlTRO+8iOmrmOa4he+8iUhE77yI6LaF5riF77yJT0TvvIjljp/nlLvvvIkyS++8iDJL77yJNEvvvIg0S++8ie+8jOS7hUg15pSv5oyB44CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGRlZmF1bHREZWZpbml0aW9uOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOWjsOaYjuWQr+eUqOWQjOWxgkg15pKt5pS+5Zmo77yM5ZCv55So5pe26K6+572u55qE5YC85Li64oCYaDXigJlcclxuICAgICAqICovXHJcbiAgICB4NV90eXBlOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJoNVwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICAqIOWjsOaYjuinhumikeaSreaUvuaXtuaYr+WQpui/m+WFpeWIsFRCU+eahOWFqOWxj+aooeW8j++8jOm7mOiupOS4umZhbHNl44CCXHJcbiAgICAgICAgIOW9k+mcgOimgeaKiuinhumikeWBmuS4uuiDjOaZr+aXtu+8jOiuvue9ruS4unRydWVcclxuICAgICAgICAgKiAqL1xyXG4gICAgeDVfZnVsbHNjcmVlbjoge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDlo7DmmI7op4bpopHmkq3lnKjnlYzpnaLkuIrnmoTkvY3nva7vvIzpu5jorqTkuLrigJxjZW50ZXLigJ3jgIJcclxuICAgICAgICAg5Y+v6YCJ5YC85Li677ya4oCcdG9w4oCd77yM4oCcY2VudGVy4oCdXHJcbiAgICAgICAgICogKi9cclxuICAgIHg1X3ZpZGVvX3Bvc2l0aW9uOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJjZW50ZXJcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAgICAgKiDlo7DmmI4gVEJTIOaSreaUvuWZqOaUr+aMgeeahOaWueWQke+8jOWPr+mAieWAvO+8mlxyXG4gICAgICAgICBsYW5kc2NhcGU65qiq5bGP77yJXHJcbiAgICAgICAgIHBvcnRyYWludDrnq5blsY9cclxuICAgICAgICAgbGFuZHNjYXBlXHJcbiAgICAgICAgICogKi9cclxuICAgIHg1X29yaWVudGF0aW9uOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJwb3J0cmFpbnRcIixcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOWjsOaYjlRCU+WFqOWxj+aSreaUvuaYr+WQpuaoquWxj++8jOm7mOiupOWAvOS4unRydWXjgIJcclxuICAgICAqICovXHJcbiAgICB4NUxhbmRzY2FwZUFzRnVsbFNjcmVlbjoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwidHJ1ZVwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog5bu26L+f5pKt5pS+5pe26Ze077yM5Y2V5L2N5Li656eS44CCXHJcbiAgICAgKiAqL1xyXG4gICAgYXV0b1BsYXlEZWxheToge1xyXG4gICAgICB0eXBlOiBOdW1iZXIsXHJcbiAgICAgIGRlZmF1bHQ6IDAsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDlu7bov5/mkq3mlL7mj5DnpLrmlofmnKxcclxuICAgICAqICovXHJcbiAgICBhdXRvUGxheURlbGF5RGlzcGxheVRleHQ6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIuato+WcqOi9rOegge+8jOivt+eojeWQji4uLi4uLlwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICAqIOWbvemZheWMlu+8jOm7mOiupOS4uuKAmHpoLWNu4oCZ44CCXHJcbiAgICAgICAgIOWmguaenOacquiuvue9ru+8jOWImemHh+eUqOa1j+iniOWZqOivreiogOOAglxyXG4gICAgICAgICDlj6/pgInlgLzkuLrigJh6aC1jbuKAmeOAgeKAmGVuLXVz4oCZ5oiW5YW25a6D5YC844CCXHJcbiAgICAgICAgICogKi9cclxuICAgIGxhbmd1YWdlOiB7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJ6aC1jblwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICAqIOiHquWumuS5ieWbvemZheWMluaWh+acrGpzb27nu5PmnoTvvIxrZXnnmoTlgLzpnIDopoHlkoxsYW5ndWFnZeWxnuaAp+WAvOWvueW6lOi1t+adpeOAglxyXG4gICAgICAgICDkvovlrZDvvJp7anA6e1BsYXk64oCdUGxheeKAnX19XHJcbiAgICAgICAgICogKi9cclxuICAgIGxhbmd1YWdlVGV4dHM6IHtcclxuICAgICAgdHlwZTogT2JqZWN0LFxyXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICogZmxhc2jlkK/nlKjmiKrlm77lip/og71cclxuICAgICAqICovXHJcbiAgICBzbmFwc2hvdDoge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIEg16K6+572u5oiq5Zu+5rC05Y2w44CCXHJcbiAgICAgKiAqL1xyXG4gICAgc25hcHNob3RXYXRlcm1hcms6IHtcclxuICAgICAgdHlwZTogT2JqZWN0LFxyXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICogU2FmYXJp5rWP6KeI5Zmo5Y+v5Lul5ZCv55SoSGxz5o+S5Lu25pKt5pS+77yMU2FmYXJpIDEx6Zmk5aSW44CCXHJcbiAgICAgKiAqL1xyXG4gICAgdXNlSGxzUGx1Z2luRm9yU2FmYXJpOiB7XHJcbiAgICAgIHR5cGU6IEJvb2xlYW4sXHJcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICogSDXmkq3mlL5mbHbml7bvvIzorr7nva7mmK/lkKblkK/nlKjmkq3mlL7nvJPlrZjvvIzlj6rlnKjnm7Tmkq3kuIvotbfkvZznlKjjgIJcclxuICAgICAqICovXHJcbiAgICBlbmFibGVTdGFzaEJ1ZmZlckZvckZsdjoge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIEg15pKt5pS+Zmx25pe277yM5Yid5aeL57yT5a2Y5aSn5bCP77yM5Y+q5Zyo55u05pKt5LiL6LW35L2c55So44CCXHJcbiAgICAgKiAqL1xyXG4gICAgc3Rhc2hJbml0aWFsU2l6ZUZvckZsdjoge1xyXG4gICAgICB0eXBlOiBOdW1iZXIsXHJcbiAgICAgIGRlZmF1bHQ6IDEwLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog57yT5Yay5aSa6ZW/5pe26Ze05ZCO77yM5o+Q56S655So5oi35YiH5o2i5L2O5riF5pmw5bqm77yM6buY6K6k77yaMjDnp5LjgIJcclxuICAgICAqICovXHJcbiAgICBsb2FkRGF0YVRpbWVvdXQ6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiAyMCxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAq5pyA5aSn57yT5Yay6LaF5pe25pe26Ze077yM6LaF6L+H6L+Z5Liq5pe26Ze05Lya5pyJ6ZSZ6K+v5o+Q56S677yM6buY6K6k77yaNjDnp5LjgIJcclxuICAgICAqICovXHJcbiAgICB3YWl0aW5nVGltZW91dDoge1xyXG4gICAgICB0eXBlOiBOdW1iZXIsXHJcbiAgICAgIGRlZmF1bHQ6IDYwLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog55u05pKt5byA5aeL5pe26Ze077yM55u05pKt5pe256e75Yqf6IO95L2/55So77yM5qC85byP5Li677ya4oCcMjAxOC8wMS8wNCAxMjowMDowMOKAneOAglxyXG4gICAgICogKi9cclxuICAgIGxpdmVTdGFydFRpbWU6IHtcclxuICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICBkZWZhdWx0OiBcIlwiLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog55u05pKt57uT5p2f5pe26Ze077yM55u05pKt5pe256e75Yqf6IO95L2/55So77yM5qC85byP5Li677ya4oCcMjAxOC8wMS8wNCAxMjowMDowMOKAneOAglxyXG4gICAgICogKi9cclxuICAgIGxpdmVPdmVyVGltZToge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDnm7Tmkq3lj6/nlKjml7bnp7vmn6Xor6LlnLDlnYDvvIzor6bmg4Xlj4Lop4Hnm7Tmkq3ml7bnp7vjgIJcclxuICAgICAqIGh0dHBzOi8vaGVscC5hbGl5dW4uY29tL2RvY3VtZW50X2RldGFpbC82NTEyOS5odG1sP3NwbT1hMmM0Zy4xMTE4NjYyMy4yLjI4LjM2MDNiZjgwTFI3NHNTXHJcbiAgICAgKiAqL1xyXG4gICAgbGl2ZVRpbWVTaGlmdFVybDoge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiBmbHbnm7Tmkq3lkoxobHPml7bnp7vliIfmjaLmmK/vvIzph43mlrDliJvlu7rmkq3mlL7lmajmlrnms5XvvIzor6bmg4Xlj4Lop4Hnm7Tmkq3ml7bnp7vjgIJcclxuICAgICAqIGh0dHBzOi8vaGVscC5hbGl5dW4uY29tL2RvY3VtZW50X2RldGFpbC82NTEyOS5odG1sP3NwbT1hMmM0Zy4xMTE4NjYyMy4yLjI4LjM2MDNiZjgwTFI3NHNTXHJcbiAgICAgKiAqL1xyXG4gICAgcmVjcmVhdGVQbGF5ZXI6IHtcclxuICAgICAgdHlwZTogRnVuY3Rpb24sXHJcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uICgpIHt9LFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICrmmK/lkKbmmL7npLrmo4DmtYvmjInpkq7vvIzpu5jorqTkuLp0cnVl44CCXHJcbiAgICAgKiAqL1xyXG4gICAgZGlhZ25vc2lzQnV0dG9uVmlzaWJsZToge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiB0cnVlLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog56aB55So6L+b5bqm5p2h55qEU2Vla++8jOm7mOiupOS4umZhbHNl77yM5LuFRmxhc2jmlK/mjIHjgIJcclxuICAgICAqICovXHJcbiAgICBkaXNhYmxlU2Vlazoge1xyXG4gICAgICB0eXBlOiBCb29sZWFuLFxyXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICAvKipcclxuICAgICAqIOWKoOWvhuexu+Wei++8jOaSreaUvueCueaSreengeacieWKoOWvhuinhumikeaXtu+8jOiuvue9ruWAvOS4ujHvvIzpu5jorqTlgLzkuLow44CCXHJcbiAgICAgKiAqL1xyXG4gICAgZW5jcnlwdFR5cGU6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiAwLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICAqIOi/m+W6puadoeaJk+eCueWGheWuueaVsOe7hO+8jOivpuaDheWPguingei/m+W6puadoeaJk+eCueOAglxyXG4gICAgICAgICAqIFtcclxuICAgICAgICAge29mZnNldDowLHRleHQ6J+mYv+mHjOinhumikeS6keerr+WIsOS6keWIsOerr+acjeWKoeeahOmHjeimgeS4gOeOryd9LFxyXG4gICAgICAgICB7b2Zmc2V0OjEwLHRleHQ6J+mZpOS6huaUr+aMgeeCueaSreWSjOebtOaSreeahOWfuuehgOaSreaUvuWKn+iDveWklid9LFxyXG4gICAgICAgICB7b2Zmc2V0OjIwLHRleHQ6J+a3seW6puiejeWQiOinhumikeS6keS4muWKoSd9LFxyXG4gICAgICAgICB7b2Zmc2V0OjMwLHRleHQ6J+S4uueUqOaIt+aPkOS+m+eugOWNleOAgeW/q+mAn+OAgeWuieWFqOOAgeeos+WumueahOinhumikeaSreaUvuacjeWKoSd9LFxyXG4gICAgICAgICB7b2Zmc2V0OjQwLHRleHQ6J+WuieijheaSreaUvuWZqERlbW/ov5vooYzkvZPpqownfSxcclxuICAgICAgICAge29mZnNldDo1MCx0ZXh0OiflvIDlj5HkurrlkZjor7fngrnlh7tTREvkuIvovb0nfVxyXG4gICAgICAgICBdXHJcbiAgICAgICAgICogaHR0cHM6Ly95cS5hbGl5dW4uY29tL2FydGljbGVzLzY4NjA0Mz9zcG09YTJjNGcuMTExODY2MjMuMi4zMS4zNjAzYmY4MExSNzRzU1xyXG4gICAgICAgICAqICovXHJcbiAgICBwcm9ncmVzc01hcmtlcnM6IHtcclxuICAgICAgdHlwZTogQXJyYXksXHJcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICByZXR1cm4gW107XHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDngrnmkq3lpLHotKXph43or5XmrKHmlbDvvIzpu5jorqQz5qyhXHJcbiAgICAgKiAqL1xyXG4gICAgdm9kUmV0cnk6IHtcclxuICAgICAgdHlwZTogTnVtYmVyLFxyXG4gICAgICBkZWZhdWx0OiAzLFxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog55u05pKt5pKt5pS+5aSx6LSl6YeN6K+V5qyh5pWw77yM6buY6K6kNeasoVxyXG4gICAgICogKi9cclxuICAgIGxpdmVSZXRyeToge1xyXG4gICAgICB0eXBlOiBOdW1iZXIsXHJcbiAgICAgIGRlZmF1bHQ6IDUsXHJcbiAgICB9LFxyXG5cclxuICAgIHBsYXlTdHlsZToge1xyXG4gICAgICB0eXBlOiBTdHJpbmcsXHJcbiAgICAgIGRlZmF1bHQ6IFwiXCIsXHJcbiAgICB9LFxyXG4gICAgYWxpcGxheWVyU2RrUGF0aDoge1xyXG4gICAgICAvLyBBbGlwbGF5ZXIg5Luj56CB55qE6Lev5b6EXHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgZGVmYXVsdDogXCJodHRwczovL2cuYWxpY2RuLmNvbS9kZS9wcmlzbXBsYXllci8yLjkuMy9hbGlwbGF5ZXItbWluLmpzXCIsXHJcbiAgICB9LFxyXG4gIH0sXHJcbiAgZGF0YSgpIHtcclxuICAgIHJldHVybiB7fTtcclxuICB9LFxyXG4gIGNyZWF0ZWQoKSB7fSxcclxuICBiZWZvcmVEZXN0cm95KCkge30sXHJcbiAgbW91bnRlZCgpIHt9LFxyXG4gIG1ldGhvZHM6IHt9LFxyXG59O1xyXG48L3NjcmlwdD5cclxuPHNjcmlwdCBtb2R1bGU9XCJyZW5kZXJTY3JpcHRcIiBsYW5nPVwicmVuZGVyanNcIj5cclxuaW1wb3J0ICQgZnJvbSAnanF1ZXJ5J1xyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIG5hbWU6IFwiQWxpcGxheWVyXCIsXHJcblxyXG4gIGRhdGEoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBwbGF5ZXJJZDogXCJhbGlwbGF5ZXJfXCIgKyBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHIoMiksXHJcbiAgICAgIHBsYXllcklkOiBcIkpfcHJpc21QbGF5ZXJcIixcclxuICAgICAgc2NyaXB0VGFnU3RhdHVzOiAwLFxyXG4gICAgICBpc1JlbG9hZDogZmFsc2UsXHJcbiAgICAgIGluc3RhbmNlOiBudWxsLFxyXG4gICAgfTtcclxuICB9LFxyXG4gIGNyZWF0ZWQoKSB7XHJcblxyXG4gICAgY29uc29sZS5sb2coJ2F0IGxpbmUgNTg0OicsICfmmK/lkKbotbDkuoYnKVxyXG5cclxuXHJcbiAgfSxcclxuICBiZWZvcmVEZXN0cm95KCkge1xyXG5cclxuICB9LFxyXG4gIG1vdW50ZWQoKSB7XHJcblxyXG5cclxuICAgIHRoaXMubG9hZFdlYlBsYXllclNESygpXHJcbiAgICAvLyBpZiAod2luZG93LkFsaXBsYXllciAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAvLyAgIC8vIOWmguaenOWFqOWxgOWvueixoeWtmOWcqO+8jOivtOaYjue8lui+keWZqOS7o+eggeW3sue7j+WIneWni+WMluWujOaIkO+8jOebtOaOpeWKoOi9vee8lui+keWZqFxyXG4gICAgLy8gICB0aGlzLnNjcmlwdFRhZ1N0YXR1cyA9IDI7XHJcbiAgICAvLyAgIHRoaXMuaW5pdEFsaXBsYXllcigpO1xyXG4gICAgLy8gfSBlbHNlIHtcclxuICAgIC8vICAgLy8g5aaC5p6c5YWo5bGA5a+56LGh5LiN5a2Y5Zyo77yM6K+05piO57yW6L6R5Zmo5Luj56CB6L+Y5rKh5pyJ5Yqg6L295a6M5oiQ77yM6ZyA6KaB5Yqg6L2957yW6L6R5Zmo5Luj56CBXHJcbiAgICAvLyAgIHRoaXMuaW5zZXJ0U2NyaXB0VGFnKCk7XHJcbiAgICAvLyB9XHJcbiAgfSxcclxuICBtZXRob2RzOiB7XHJcblxyXG4gICAgY2hlY2tWYWx1ZSgpIHtcclxuICAgICAgICBjb25zdCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ2NoZWNr5piv5ZCm6I635Y+W5Yiw5LqG5o6I5p2DJyxfdGhpcy5wbGF5YXV0aCk7XHJcblx0XHRcdFx0Ly8gY29uc29sZS5sb2codGhpcy52aWRlb0lkLCB0aGlzLmF1dGhJZCwgdGhpcy52aWRlb0RhdGEsIFwiMTExMTg4ODg4OFwiKVxyXG5cdFx0XHRcdGlmICghX3RoaXMucGxheWF1dGgmJl90aGlzLnNjcmlwdFRhZ1N0YXR1cyE9MiApIHtcclxuXHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmNoZWNrVmFsdWUoKTtcclxuXHRcdFx0XHRcdH0sIDEwMDApO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ+a4suafk+WKoOi9veinhumikeW8gOWniycpXHJcblxyXG5zZXRUaW1lb3V0KCgpPT57XHJcbiAgIF90aGlzLmluaXRBbGlwbGF5ZXIoKTtcclxufSwyMDAwKVxyXG5cclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcbiAgICBsb2FkV2ViUGxheWVyU0RLKCkge1xyXG5cdFx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcblxyXG5cclxuXHJcblx0XHRcdFx0XHRjb25zdCBzX3RhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyAvLyDlvJXlhaXmkq3mlL7lmahqc1xyXG5cdFx0XHRcdFx0c190YWcudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG5cdFx0XHRcdFx0Ly8gc190YWcuc3JjID0gJ2h0dHBzOi8vZy5hbGljZG4uY29tL2RlL3ByaXNtcGxheWVyLzIuOS4zL2FsaXBsYXllci1taW4uanMnO1xyXG5cdFx0XHRcdFx0c190YWcuc3JjID0gJ2h0dHBzOi8vZy5hbGljZG4uY29tL2Fwc2FyYS1tZWRpYS1ib3gvaW1wLXdlYi1wbGF5ZXIvMi4xNi4zL2FsaXBsYXllci1taW4uanMnO1xyXG5cdFx0XHRcdFx0Ly8gc190YWcuc3JjID0gJ2h0dHBzOi8vZy5hbGljZG4uY29tL2Fwc2FyYS1tZWRpYS1ib3gvaW1wLXdlYi1wbGF5ZXIvMi4yMC4zL2FsaXBsYXllci1taW4uanMnO1xyXG5cdFx0XHRcdFx0c190YWcuY2hhcnNldCA9ICd1dGYtOCc7XHJcblx0XHRcdFx0XHRzX3RhZy5vbmxvYWQgPSAoKSA9PiB7XHJcblx0XHRcdFx0XHRcdGNvbnN0IHNfdGFnMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyAvLyDlvJXlhaXmkq3mlL7lmahqc1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEuc3JjID1cclxuXHRcdFx0XHRcdFx0XHQnaHR0cHM6Ly9wbGF5ZXIuYWxpY2RuLmNvbS9hbGlwbGF5ZXIvcHJlc2VudGF0aW9uL2pzL2FsaXBsYXllcmNvbXBvbmVudHMubWluLmpzJztcclxuXHRcdFx0XHRcdFx0c190YWcxLmNoYXJzZXQgPSAndXRmLTgnO1xyXG5cdFx0XHRcdFx0XHRzX3RhZzEub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2NyaXB0VGFnU3RhdHVzID0gMjtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmNoZWNrVmFsdWUoKTtcclxuXHRcdFx0XHRcdFx0XHRyZXNvbHZlKCk7XHJcblxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc190YWcxKTtcclxuXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNfdGFnKTtcclxuXHJcblxyXG5cclxuXHRcdFx0XHRcdGNvbnN0IGxfdGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpOyAvLyDlvJXlhaXmkq3mlL7lmahjc3NcclxuXHRcdFx0XHRcdGxfdGFnLnJlbCA9ICdzdHlsZXNoZWV0JztcclxuXHRcdFx0XHRcdGxfdGFnLmhyZWYgPVxyXG5cdFx0XHRcdFx0XHQnaHR0cHM6Ly9nLmFsaWNkbi5jb20vYXBzYXJhLW1lZGlhLWJveC9pbXAtd2ViLXBsYXllci8yLjIwLjMvc2tpbnMvZGVmYXVsdC9hbGlwbGF5ZXItbWluLmNzcyc7XHJcblxyXG5cclxuXHJcblx0XHRcdFx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxfdGFnKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuICAgIGluc2VydFNjcmlwdFRhZygpIHtcclxuICAgICAgY29uc3QgX3RoaXMgPSB0aGlzO1xyXG4gICAgICBsZXQgcGxheWVyU2NyaXB0VGFnID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJwbGF5ZXJTY3JpcHRUYWdcIik7XHJcbiAgICAgIC8vIOWmguaenOi/meS4qnRhZ+S4jeWtmOWcqO+8jOWImeeUn+aIkOebuOWFs+S7o+eggXRhZ+S7peWKoOi9veS7o+eggVxyXG4gICAgICBpZiAocGxheWVyU2NyaXB0VGFnID09PSBudWxsKSB7XHJcbiAgICAgICAgcGxheWVyU2NyaXB0VGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtcclxuICAgICAgICBwbGF5ZXJTY3JpcHRUYWcudHlwZSA9IFwidGV4dC9qYXZhc2NyaXB0XCI7XHJcbiAgICAgICAgcGxheWVyU2NyaXB0VGFnLnNyYyA9IHRoaXMuYWxpcGxheWVyU2RrUGF0aDtcclxuICAgICAgICBwbGF5ZXJTY3JpcHRUYWcuaWQgPSBcInBsYXllclNjcmlwdFRhZ1wiO1xyXG4gICAgICAgIGxldCBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJoZWFkXCIpWzBdO1xyXG4gICAgICAgIHMuYXBwZW5kQ2hpbGQocGxheWVyU2NyaXB0VGFnKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAocGxheWVyU2NyaXB0VGFnLmxvYWRlZCkge1xyXG4gICAgICAgIF90aGlzLnNjcmlwdFRhZ1N0YXR1cysrO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHBsYXllclNjcmlwdFRhZy5hZGRFdmVudExpc3RlbmVyKFwibG9hZFwiLCAoKSA9PiB7XHJcbiAgICAgICAgICBfdGhpcy5zY3JpcHRUYWdTdGF0dXMrKztcclxuICAgICAgICAgIHBsYXllclNjcmlwdFRhZy5sb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgX3RoaXMuaW5pdEFsaXBsYXllcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIF90aGlzLmluaXRBbGlwbGF5ZXIoKTtcclxuICAgIH0sXHJcbiAgYXN5bmMgIGluaXRBbGlwbGF5ZXIoKSB7XHJcbiAgICAgIGNvbnN0IF90aGlzID0gdGhpcztcclxuICAgICAgLy8gc2NyaXB0VGFnU3RhdHVzIOS4uiAyIOeahOaXtuWAme+8jOivtOaYjuS4pOS4quW/hemcgOW8leWFpeeahCBqcyDmlofku7bpg73lt7Lnu4/ooqvlvJXlhaXvvIzkuJTliqDovb3lrozmiJBcclxuICAgICAgaWYgKFxyXG4gICAgICAgIF90aGlzLnNjcmlwdFRhZ1N0YXR1cyA9PT0gMiAmJlxyXG5cclxuICAgICAgICAoX3RoaXMuaW5zdGFuY2UgPT09IG51bGwgfHwgX3RoaXMucmVsb2FkUGxheWVyKVxyXG4gICAgICApIHtcclxuICAgICAgICBfdGhpcy5pbnN0YW5jZSAmJiBfdGhpcy5pbnN0YW5jZS5kaXNwb3NlKCk7XHJcbi8vICQoXCIjXCIgKyBfdGhpcy5wbGF5ZXJJZCkuaW5uZXJIVE1MID0gXCJcIjtcclxuICAgICAgICAvLyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCA9IFwiXCI7XHJcblxyXG4gICAgICAgIC8vIFZ1ZSDlvILmraXmiafooYwgRE9NIOabtOaWsO+8jOi/meagt+S4gOadpeS7o+eggeaJp+ihjOWIsOi/memHjOeahOaXtuWAmeWPr+iDvSB0ZW1wbGF0ZSDph4zpnaLnmoQgc2NyaXB0IOagh+etvui/mOayoeecn+ato+WIm+W7ulxyXG4gICAgICAgIC8vIOaJgOS7pe+8jOaIkeS7rOWPquiDveWcqCBuZXh0VGljayDph4zpnaLliJ3lp4vljJYgQWxpcGxheWVyXHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coX3RoaXMucGxheWVySWQsX3RoaXMucGxheWF1dGgsJzk4OTg5JylcclxuXHJcbiAgICAgICAgX3RoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlID0gIG5ldyBBbGlwbGF5ZXIoe1xyXG4gICAgICAgICAgICBpZDogXCJ1cmwtcGxheWVyLXRlc3RcIixcclxuICAgICAgICAgICAgLy8gc291cmNlOiBfdGhpcy5zb3VyY2UsXHJcbiAgICAgICAgICAgIHZpZDogX3RoaXMudmlkLFxyXG4gICAgICAgICAgICBwbGF5YXV0aDogX3RoaXMucGxheWF1dGgsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgICAgICAgIGhlaWdodDogX3RoaXMuaGVpZ2h0LFxyXG4gICAgICAgICAgICBwbGF5c2lubGluZTogdHJ1ZSxcclxuXHRcdFx0XHRcdGNvbnRyb2xCYXJWaXNpYmlsaXR5OiBcImNsaWNrXCIsXHJcbiAgICAgICAgICAgIC8vIHZpZGVvV2lkdGg6IF90aGlzLnZpZGVvV2lkdGgsXHJcbiAgICAgICAgICAgIC8vIHZpZGVvSGVpZ2h0OiBfdGhpcy52aWRlb0hlaWdodCxcclxuICAgICAgICAgICAgLy8gcHJlbG9hZDogX3RoaXMucHJlbG9hZCxcclxuICAgICAgICAgICAgY292ZXI6IFwiXCIsXHJcbiAgICAgICAgICAgIC8vIGlzTGl2ZTogX3RoaXMuaXNMaXZlLFxyXG4gICAgICAgICAgICAvLyBhdXRvcGxheTogX3RoaXMuYXV0b3BsYXksXHJcbiAgICAgICAgICAgIC8vIHJlUGxheTogX3RoaXMucmVQbGF5LFxyXG4gICAgICAgICAgICAvLyB1c2VINVByaXNtOiBfdGhpcy51c2VINVByaXNtLFxyXG4gICAgICAgICAgICAvLyB1c2VGbGFzaFByaXNtOiBfdGhpcy51c2VGbGFzaFByaXNtLFxyXG4gICAgICAgICAgICAvLyBwbGF5c2lubGluZTogX3RoaXMucGxheXNpbmxpbmUsXHJcbiAgICAgICAgICAgIC8vIHNob3dCdWZmZXI6IF90aGlzLnNob3dCdWZmZXIsXHJcbiAgICAgICAgICAgIC8vIHNraW5SZXM6IF90aGlzLnNraW5SZXMsXHJcbiAgICAgICAgICAgIHNraW5MYXlvdXQ6IF90aGlzLnNraW5MYXlvdXQsXHJcbiAgICAgICAgICAgIC8vIGNvbnRyb2xCYXJWaXNpYmlsaXR5OiBfdGhpcy5jb250cm9sQmFyVmlzaWJpbGl0eSxcclxuICAgICAgICAgICAgLy8gc2hvd0JhclRpbWU6IF90aGlzLnNob3dCYXJUaW1lLFxyXG4gICAgICAgICAgICAvLyBleHRyYUluZm86IF90aGlzLmV4dHJhSW5mbyxcclxuICAgICAgICAgICAgLy8gZW5hYmxlU3lzdGVtTWVudTogX3RoaXMuZW5hYmxlU3lzdGVtTWVudSxcclxuICAgICAgICAgICAgLy8gZm9ybWF0OiBfdGhpcy5mb3JtYXQsXHJcbiAgICAgICAgICAgIC8vIG1lZGlhVHlwZTogX3RoaXMubWVkaWFUeXBlLFxyXG4gICAgICAgICAgICAvLyBxdWFsaXR5U29ydDogX3RoaXMucXVhbGl0eVNvcnQsXHJcbiAgICAgICAgICAgIC8vIGRlZmluaXRpb246IF90aGlzLmRlZmluaXRpb24sXHJcbiAgICAgICAgICAgIC8vIGRlZmF1bHREZWZpbml0aW9uOiBfdGhpcy5kZWZhdWx0RGVmaW5pdGlvbixcclxuICAgICAgICAgICAgLy8geDVfdHlwZTogX3RoaXMueDVfdHlwZSxcclxuICAgICAgICAgICAgLy8geDVfZnVsbHNjcmVlbjogX3RoaXMueDVfZnVsbHNjcmVlbixcclxuICAgICAgICAgICAgLy8geDVfdmlkZW9fcG9zaXRpb246IF90aGlzLng1X3ZpZGVvX3Bvc2l0aW9uLFxyXG4gICAgICAgICAgICAvLyB4NV9vcmllbnRhdGlvbjogX3RoaXMueDVfb3JpZW50YXRpb24sXHJcbiAgICAgICAgICAgIC8vIHg1TGFuZHNjYXBlQXNGdWxsU2NyZWVuOiBfdGhpcy54NUxhbmRzY2FwZUFzRnVsbFNjcmVlbixcclxuICAgICAgICAgICAgLy8gYXV0b1BsYXlEZWxheTogX3RoaXMuYXV0b1BsYXlEZWxheSxcclxuICAgICAgICAgICAgLy8gYXV0b1BsYXlEZWxheURpc3BsYXlUZXh0OiBfdGhpcy5hdXRvUGxheURlbGF5RGlzcGxheVRleHQsXHJcbiAgICAgICAgICAgIC8vIGxhbmd1YWdlOiBfdGhpcy5sYW5ndWFnZSxcclxuICAgICAgICAgICAgLy8gbGFuZ3VhZ2VUZXh0czogX3RoaXMubGFuZ3VhZ2VUZXh0cyxcclxuICAgICAgICAgICAgLy8gc25hcHNob3Q6IF90aGlzLnNuYXBzaG90LFxyXG4gICAgICAgICAgICAvLyBzbmFwc2hvdFdhdGVybWFyazogX3RoaXMuc25hcHNob3RXYXRlcm1hcmssXHJcbiAgICAgICAgICAgIC8vIHVzZUhsc1BsdWdpbkZvclNhZmFyaTogX3RoaXMudXNlSGxzUGx1Z2luRm9yU2FmYXJpLFxyXG4gICAgICAgICAgICAvLyBlbmFibGVTdGFzaEJ1ZmZlckZvckZsdjogX3RoaXMuZW5hYmxlU3Rhc2hCdWZmZXJGb3JGbHYsXHJcbiAgICAgICAgICAgIC8vIHN0YXNoSW5pdGlhbFNpemVGb3JGbHY6IF90aGlzLnN0YXNoSW5pdGlhbFNpemVGb3JGbHYsXHJcbiAgICAgICAgICAgIC8vIGxvYWREYXRhVGltZW91dDogX3RoaXMubG9hZERhdGFUaW1lb3V0LFxyXG4gICAgICAgICAgICAvLyB3YWl0aW5nVGltZW91dDogX3RoaXMud2FpdGluZ1RpbWVvdXQsXHJcbiAgICAgICAgICAgIC8vIGxpdmVTdGFydFRpbWU6IF90aGlzLmxpdmVTdGFydFRpbWUsXHJcbiAgICAgICAgICAgIC8vIGxpdmVUaW1lU2hpZnRVcmw6IF90aGlzLmxpdmVUaW1lU2hpZnRVcmwsXHJcbiAgICAgICAgICAgIC8vIGxpdmVTaGlmdFNvdXJjZTogX3RoaXMubGl2ZVNoaWZ0U291cmNlLFxyXG4gICAgICAgICAgICAvLyByZWNyZWF0ZVBsYXllcjogX3RoaXMucmVjcmVhdGVQbGF5ZXIsXHJcbiAgICAgICAgICAgIC8vIGRpYWdub3Npc0J1dHRvblZpc2libGU6IF90aGlzLmRpYWdub3Npc0J1dHRvblZpc2libGUsXHJcbiAgICAgICAgICAgIC8vIGRpc2FibGVTZWVrOiBfdGhpcy5kaXNhYmxlU2VlayxcclxuICAgICAgICAgICAgZW5jcnlwdFR5cGU6IF90aGlzLmVuY3J5cHRUeXBlLFxyXG4gICAgICAgICAgICBcInBsYXlDb25maWdcIjoge1xyXG5cdFx0XHRcdFx0XHRcdFwiRW5jcnlwdFR5cGVcIjogJ0FsaXl1blZvREVuY3J5cHRpb24nXHJcblx0XHRcdFx0XHRcdH0sXHJcbiAgICAgICAgICAgIC8vIHByb2dyZXNzTWFya2VyczogX3RoaXMucHJvZ3Jlc3NNYXJrZXJzLFxyXG4gICAgICAgICAgICAvLyB2b2RSZXRyeTogX3RoaXMudm9kUmV0cnksXHJcbiAgICAgICAgICAgIC8vIGxpdmVSZXRyeTogX3RoaXMubGl2ZVJldHJ5LFxyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgLy8g57uR5a6a5LqL5Lu277yM5b2TIEFsaVBsYXllciDliJ3lp4vljJblrozmiJDlkI7vvIzlsIbnvJbovpHlmajlrp7kvovpgJrov4foh6rlrprkuYnnmoQgcmVhZHkg5LqL5Lu25Lqk5Ye65Y67XHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInJlYWR5XCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcInJlYWR5XCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwicGxheVwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJwbGF5XCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwicGF1c2VcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwicGF1c2VcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgX3RoaXMuaW5zdGFuY2Uub24oXCJlbmRlZFwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJlbmRlZFwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcImxpdmVTdHJlYW1TdG9wXCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcImxpdmVTdHJlYW1TdG9wXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwibTN1OFJldHJ5XCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcIm0zdThSZXRyeVwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcImhpZGVCYXJcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwiaGlkZUJhclwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcIndhaXRpbmdcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwid2FpdGluZ1wiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInNuYXBzaG90ZWRcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwic25hcHNob3RlZFwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInRpbWV1cGRhdGVcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwidGltZXVwZGF0ZVwiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBfdGhpcy5pbnN0YW5jZS5vbihcInJlcXVlc3RGdWxsU2NyZWVuXCIsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy4kZW1pdChcInJlcXVlc3RGdWxsU2NyZWVuXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwiY2FuY2VsRnVsbFNjcmVlblwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoXCJjYW5jZWxGdWxsU2NyZWVuXCIsIF90aGlzLmluc3RhbmNlKTtcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIF90aGlzLmluc3RhbmNlLm9uKFwiZXJyb3JcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KFwiZXJyb3JcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBsZXQgc3RhcnQgPSB0cnVlO1xyXG4gICAgICAgICAgLy8gbGV0IHN0YXJ0UHJvZ3Jlc3MgPSAwO1xyXG4gICAgICAgICAgLy8gbGV0IGVuZFByb2dyZXNzID0gMDtcclxuICAgICAgICAgIC8vIC8v56aB5q2i5ouW5Yqo6L+b5bqm5p2hXHJcbiAgICAgICAgICAvLyBfdGhpcy5pbnN0YW5jZS5vbihcInN0YXJ0U2Vla1wiLCAoZSkgPT4ge1xyXG4gICAgICAgICAgLy8gICBpZiAoc3RhcnQpIHtcclxuICAgICAgICAgIC8vICAgICBzdGFydCA9IGZhbHNlO1xyXG4gICAgICAgICAgLy8gICAgIHN0YXJ0UHJvZ3Jlc3MgPSBfdGhpcy5pbnN0YW5jZS5nZXRDdXJyZW50VGltZSgpO1xyXG4gICAgICAgICAgLy8gICB9XHJcbiAgICAgICAgICAvLyAgIF90aGlzLmluc3RhbmNlLnBhdXNlKCk7XHJcbiAgICAgICAgICAvLyAgIC8vIHRoaXMuJGVtaXQoXCJzdGFydFNlZWtcIiwgX3RoaXMuaW5zdGFuY2UpO1xyXG4gICAgICAgICAgLy8gfSk7XHJcblxyXG4gICAgICAgICAgLy8gLy/npoHmraLmi5bliqjov5vluqbmnaFcclxuICAgICAgICAgIC8vIF90aGlzLmluc3RhbmNlLm9uKFwiY29tcGxldGVTZWVrXCIsICgpID0+IHtcclxuICAgICAgICAgIC8vICAgc3RhcnQgPSB0cnVlO1xyXG4gICAgICAgICAgLy8gICBlbmRQcm9ncmVzcyA9IF90aGlzLmluc3RhbmNlLmdldEN1cnJlbnRUaW1lKCk7XHJcbiAgICAgICAgICAvLyAgIGlmIChlbmRQcm9ncmVzcyA8IHN0YXJ0UHJvZ3Jlc3MpIHtcclxuICAgICAgICAgIC8vICAgICBfdGhpcy5pbnN0YW5jZS5zZWVrKGVuZFByb2dyZXNzKTtcclxuICAgICAgICAgIC8vICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vICAgICBfdGhpcy5pbnN0YW5jZS5zZWVrKHN0YXJ0UHJvZ3Jlc3MpO1xyXG4gICAgICAgICAgLy8gICB9XHJcbiAgICAgICAgICAvLyAgIF90aGlzLmluc3RhbmNlLnBsYXkoKTtcclxuICAgICAgICAgIC8vICAgLy8gdGhpcy4kZW1pdChcImNvbXBsZXRlU2Vla1wiLCBfdGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgICAgICAvLyB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog5pKt5pS+6KeG6aKRXHJcbiAgICAgKi9cclxuICAgIHBsYXk6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5wbGF5KCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDmmoLlgZzop4bpopFcclxuICAgICAqL1xyXG4gICAgcGF1c2U6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5wYXVzZSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6YeN5pKt6KeG6aKRXHJcbiAgICAgKi9cclxuICAgIHJlcGxheTogZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnJlcGxheSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6Lez6L2s5Yiw5p+Q5Liq5pe25Yi76L+b6KGM5pKt5pS+XHJcbiAgICAgKiBAYXJndW1lbnQgdGltZSDnmoTljZXkvY3kuLrnp5JcclxuICAgICAqL1xyXG4gICAgc2VlazogZnVuY3Rpb24gKHRpbWUpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5zZWVrKHRpbWUpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6I635Y+W5b2T5YmN5pe26Ze0IOWNleS9jeenklxyXG4gICAgICovXHJcbiAgICBnZXRDdXJyZW50VGltZTogZnVuY3Rpb24gKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZS5nZXRDdXJyZW50VGltZSgpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICrojrflj5bop4bpopHmgLvml7bplb/vvIzov5Tlm57nmoTljZXkvY3kuLrnp5JcclxuICAgICAqIEByZXR1cm5zIOi/lOWbnueahOWNleS9jeS4uuenklxyXG4gICAgICovXHJcbiAgICBnZXREdXJhdGlvbjogZnVuY3Rpb24gKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZS5nZXREdXJhdGlvbigpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICAgICDojrflj5blvZPliY3nmoTpn7Pph4/vvIzov5Tlm57lgLzkuLowLTHnmoTlrp7mlbBpb3Plkozpg6jliIZhbmRyb2lk5Lya5aSx5pWIXHJcbiAgICAgICAgICovXHJcbiAgICBnZXRWb2x1bWU6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaW5zdGFuY2UuZ2V0Vm9sdW1lKCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgIOiuvue9rumfs+mHj++8jHZvbOS4ujAtMeeahOWunuaVsO+8jGlvc+WSjOmDqOWIhmFuZHJvaWTkvJrlpLHmlYhcclxuICAgICAgICAgKi9cclxuICAgIHNldFZvbHVtZTogZnVuY3Rpb24gKHZvbCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnNldFZvbHVtZSh2b2wpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICrnm7TmjqXmkq3mlL7op4bpopF1cmzvvIx0aW1l5Li65Y+v6YCJ5YC877yI5Y2V5L2N56eS77yJ55uu5YmN5Y+q5pSv5oyB5ZCM56eN5qC85byP77yIbXA0L2Zsdi9tM3U477yJ5LmL6Ze05YiH5o2i5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNolxyXG4gICAgICpAYXJndW1lbnQgdXJsIOinhumikeWcsOWdgFxyXG4gICAgICpAYXJndW1lbnQgdGltZSDot7PovazliLDlpJrlsJHnp5JcclxuICAgICAqL1xyXG4gICAgbG9hZEJ5VXJsOiBmdW5jdGlvbiAodXJsLCB0aW1lKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2UubG9hZEJ5VXJsKHVybCwgdGltZSk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDorr7nva7mkq3mlL7pgJ/luqZcclxuICAgICAqQGFyZ3VtZW50IHNwZWVkIOmAn+W6plxyXG4gICAgICovXHJcbiAgICBzZXRTcGVlZDogZnVuY3Rpb24gKHNwZWVkKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0U3BlZWQoc3BlZWQpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6K6+572u5pKt5pS+5Zmo5aSn5bCPdyxo5Y+v5YiG5Yir5Li6NDAwcHjlg4/ntKDmiJY2MCXnmb7liIbmr5RjaHJvbWXmtY/op4jlmajkuItmbGFzaOaSreaUvuWZqOWIhuWIq+S4jeiDveWwj+S6jjM5N3gyOTdcclxuICAgICAqQGFyZ3VtZW50IHcg5pKt5pS+5Zmo5a695bqmXHJcbiAgICAgKkBhcmd1bWVudCBoIOaSreaUvuWZqOmrmOW6plxyXG4gICAgICovXHJcbiAgICBzZXRQbGF5ZXJTaXplOiBmdW5jdGlvbiAodywgaCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnNldFBsYXllclNpemUodywgaCk7XHJcbiAgICB9LFxyXG4gICAgLyoqXHJcbiAgICAgICAgICrnm67liY3lj6rmlK/mjIFINeaSreaUvuWZqOOAglxyXG4gICAgICAgICDmmoLkuI3mlK/mjIHkuI3lkIzmoLzlvI/op4bpopHpl7TnmoTkuYvpl7TliIfmjaLjgIJcclxuICAgICAgICAg5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNouOAglxyXG4gICAgICAgICAqL1xyXG4gICAgcmVwbGF5QnlWaWRBbmRQbGF5QXV0aDogZnVuY3Rpb24gKFxyXG4gICAgICB2aWQsXHJcbiAgICAgIGFjY0lkLFxyXG4gICAgICBhY2NTZWNyZXQsXHJcbiAgICAgIHN0c1Rva2VuLFxyXG4gICAgICBhdXRoSW5mbyxcclxuICAgICAgZG9tYWluUmVnaW9uXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5yZXBsYXlCeVZpZEFuZFBsYXlBdXRoKFxyXG4gICAgICAgIHZpZCxcclxuICAgICAgICBhY2NJZCxcclxuICAgICAgICBhY2NTZWNyZXQsXHJcbiAgICAgICAgc3RzVG9rZW4sXHJcbiAgICAgICAgYXV0aEluZm8sXHJcbiAgICAgICAgZG9tYWluUmVnaW9uXHJcbiAgICAgICk7XHJcbiAgICB9LFxyXG5cclxuICAgIC8qKipcclxuICAgICAgICAgKiDph43mlrDorr7nva52aWTlkozmnYPpmZDvvIznm67liY3lj6rmlK/mjIFINeaSreaUvuWZqOOAglxyXG4gICAgICAgICDmmoLkuI3mlK/mjIHkuI3lkIzmoLzlvI/op4bpopHpl7TnmoTkuYvpl7TliIfmjaLjgIJcclxuICAgICAgICAg5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNouOAglxyXG4gICAgICAgICAqIEBwYXJhbSB2aWQg6KeG6aKRSURcclxuICAgICAgICAgKiBAcGFyYW0gcGxheWF1dGgg5pKt5pS+5p2D6ZmQXHJcbiAgICAgICAgICovXHJcbiAgICByZXBsYXlCeVZpZEFuZEF1dGhJbmZvOiBmdW5jdGlvbiAodmlkLCBwbGF5YXV0aCkge1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnJlcGxheUJ5VmlkQW5kQXV0aEluZm8odmlkLCBwbGF5YXV0aCk7XHJcbiAgICB9LFxyXG5cclxuICAgIC8qKlxyXG4gICAgICog55uu5YmN5Y+q5pSv5oyBSFRNTDXnlYzpnaLkuIrnmoTph43ovb3lip/og70s5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNom0zdTjvvInkuYvpl7TliIfmjaIs5pqC5LiN5pSv5oyB55u05pKtcnRtcOa1geWIh+aNolxyXG4gICAgICpAYXJndW1lbnQgdmlkIOinhumikWlkXHJcbiAgICAgKkBhcmd1bWVudCBwbGF5YXV0aCDmkq3mlL7lh63or4FcclxuICAgICAqL1xyXG4gICAgcmVsb2FkdXNlclBsYXlJbmZvQW5kVmlkUmVxdWVzdE10czogZnVuY3Rpb24gKHZpZCwgcGxheWF1dGgpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5yZWxvYWR1c2VyUGxheUluZm9BbmRWaWRSZXF1ZXN0TXRzKHZpZCwgcGxheWF1dGgpO1xyXG4gICAgfSxcclxuXHJcbiAgICAvKioqXHJcbiAgICAgKuiuvue9ruaIquWbvuWPguaVsFxyXG4gICAgICogQHBhcmFtIHdpZHRoIOWuveW6plxyXG4gICAgICogQHBhcmFtIGhlaWdodCDpq5jluqZcclxuICAgICAqIEBwYXJhbSByYXRlIOaIquWbvui0qOmHj1xyXG4gICAgICovXHJcbiAgICBzZXRTYW5wc2hvdFByb3BlcnRpZXM6IGZ1bmN0aW9uICh3aWR0aCwgaGVpZ2h0LCByYXRlKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0U2FucHNob3RQcm9wZXJ0aWVzKHdpZHRoLCBoZWlnaHQsIHJhdGUpO1xyXG4gICAgfSxcclxuICAgIC8qKlxyXG4gICAgICog6K6+572u5bCB6Z2i5Zyw5Z2AXHJcbiAgICAgKiBAcGFyYW0gY292ZXIg5bCB6Z2i5Zyw5Z2AXHJcbiAgICAgKi9cclxuICAgIHNldENvdmVyOiBmdW5jdGlvbiAoY292ZXIpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5zZXRDb3Zlcihjb3Zlcik7XHJcbiAgICB9LFxyXG5cclxuICAgIHJlbG9hZFBsYXllcjogZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGlzLmlzUmVsb2FkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5pbml0QWxpcGxheWVyKCk7XHJcbiAgICAgIHRoaXMuaXNSZWxvYWQgPSBmYWxzZTtcclxuICAgIH0sXHJcblxyXG4gICAgcmVjZWl2ZXNvdXJjZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgcmVjZWl2ZXZpZChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVwbGF5YXV0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlaGVpZ2h0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV3aWR0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXZpZGVvV2lkdGgobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgcmVjZWl2ZXZpZGVvSGVpZ2h0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gIHJlY2VpdmVwcmVsb2FkKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlY292ZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICByZWNlaXZlaXNMaXZlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gIHJlY2VpdmVhdXRvcGxheShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVyZVBsYXkobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbnJlY2VpdmV1c2VINVByaXNtKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV1c2VGbGFzaFByaXNtKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVwbGF5c2lubGluZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgcmVjZWl2ZXNob3dCdWZmZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICByZWNlaXZlc2tpblJlcyhuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlc2tpbkxheW91dChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVjb250cm9sQmFyVmlzaWJpbGl0eShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmVzaG93QmFyVGltZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlZXh0cmFJbmZvKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVlbmFibGVTeXN0ZW1NZW51KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWZvcm1hdChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICByZWNlaXZlbWVkaWFUeXBlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgcmVjZWl2ZXF1YWxpdHlTb3J0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICByZWNlaXZlZGVmaW5pdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZleDVfdHlwZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmV4NV9mdWxsc2NyZWVuKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmV4NV92aWRlb19wb3NpdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgIHJlY2VpdmV4NV9vcmllbnRhdGlvbihuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZleDVMYW5kc2NhcGVBc0Z1bGxTY3JlZW4obmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVhdXRvUGxheURlbGF5KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWF1dG9QbGF5RGVsYXlEaXNwbGF5VGV4dChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxucmVjZWl2ZWxhbmd1YWdlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWxhbmd1YWdlVGV4dHMobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgIHJlY2VpdmVzbmFwc2hvdChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXNuYXBzaG90V2F0ZXJtYXJrKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZXVzZUhsc1BsdWdpbkZvclNhZmFyaShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZWVuYWJsZVN0YXNoQnVmZmVyRm9yRmx2KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgIHJlY2VpdmVzdGFzaEluaXRpYWxTaXplRm9yRmx2KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlbG9hZERhdGFUaW1lb3V0KG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZld2FpdGluZ1RpbWVvdXQobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVsaXZlU3RhcnRUaW1lKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gcmVjZWl2ZWxpdmVPdmVyVGltZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlbGl2ZVRpbWVTaGlmdFVybChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlcmVjcmVhdGVQbGF5ZXIobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgICAgIHJlY2VpdmVkaWFnbm9zaXNCdXR0b25WaXNpYmxlKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgcmVjZWl2ZWRpc2FibGVTZWVrKG5ld1ZhbHVlLCBvbGRWYWx1ZSwgb3duZXJWbSwgdm0pIHt9LFxyXG4gICAgICByZWNlaXZlZW5jcnlwdFR5cGUobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbiAgIHJlY2VpdmVwcm9ncmVzc01hcmtlcnMobmV3VmFsdWUsIG9sZFZhbHVlLCBvd25lclZtLCB2bSkge30sXHJcbnJlY2VpdmV2b2RSZXRyeShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZWxpdmVSZXRyeShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICAgcmVjZWl2ZXBsYXlTdHlsZShuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuICAgICByZWNlaXZlYWxpcGxheWVyU2RrUGF0aChuZXdWYWx1ZSwgb2xkVmFsdWUsIG93bmVyVm0sIHZtKSB7fSxcclxuXHJcblxyXG4gIH0sXHJcbn07XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlPlxyXG5AaW1wb3J0IHVybChodHRwczovL2cuYWxpY2RuLmNvbS9kZS9wcmlzbXBsYXllci8yLjkuMy9za2lucy9kZWZhdWx0L2FsaXBsYXllci1taW4uY3NzKTtcclxuPC9zdHlsZT5cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///1045\n");
/***/ }),
/* 1046 */
@@ -61350,7 +61350,6 @@ var render = function () {
showBarTime: true,
disableSeek: true,
showBarTime: "500",
- width: "300px",
controlBarVisibility: "always",
_i: 2,
},
@@ -61388,7 +61387,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 2);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 24));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 26));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 3));\nvar _index = _interopRequireDefault(__webpack_require__(/*! @/store/index.js */ 161));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 134));\nvar _vuex = __webpack_require__(/*! vuex */ 70);\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; }\n// importScripts('@/static/aliplayer/aliplayer-min.js')\nvar _default = {\n props: [\"currentVideo\", \"currentVideoList\"],\n data: function data() {\n return {\n platform: null,\n //当前是否是全屏模式\n isFullScreen: false,\n isfresh: false,\n isChange: false,\n isControl: true,\n timer: null,\n videoTitle: \"\",\n videoList: [],\n firstTime: 0,\n options: {},\n playAuth: \"\",\n currentTime: \"\",\n videoId: \"\",\n videoData: {},\n isSetFirstTime: false,\n screenType: null,\n videoUrl: null\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)([\"videoOssList\"])),\n watch: {\n currentVideo: {\n immediate: true,\n handler: function handler(newRoute) {}\n },\n timer: function timer(newValue) {\n this.$emit(\"child-event\", newValue);\n }\n },\n // //页面显示\n mounted: function mounted() {},\n beforeDestroy: function beforeDestroy() {\n this.handleEnd();\n __f__(\"log\", \"是否走啦习销毁\", \" at pages/component/commonComponents/video/index.vue:85\");\n clearInterval(this.$store.state.videoTimer);\n // this.timer = null;\n // store.commit(\"setLoadingShow\", null);\n plus.screen.lockOrientation(\"portrait-primary\");\n __f__(\"log\", \"是否走啦习销毁定时器\", this.timer, \" at pages/component/commonComponents/video/index.vue:91\");\n },\n onUnload: function onUnload() {\n var _this = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n uni.navigateTo({\n url: \"/pages/curriculum/order/curriculum/back\"\n });\n plus.screen.lockOrientation(\"portrait-primary\"); //锁死屏幕方向为竖屏\n\n // plus.screen.lockOrientation(\"portrait-primary\");\n _context.next = 4;\n return _this.setVideoTime();\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n //第一次加载\n onLoad: function onLoad(options) {},\n methods: {\n changeVideoData: function changeVideoData() {\n this.isChange = false;\n },\n changeVideo: function changeVideo(data) {\n var _this2 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _this2.currentTime = \"\";\n _this2.firstTime = 0;\n _this2.isSetFirstTime = false;\n _this2.isChange = false;\n _context2.next = 6;\n return _this2.init(data, true);\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n screenChange: function screenChange(data) {\n __f__(\"log\", \"status at line 这是当前的状态158:\", data.status, data.primary, \" at pages/component/commonComponents/video/index.vue:122\");\n this.isFullScreen = !data.status;\n this.$emit(\"changeScreen\", this.isFullScreen);\n // let fullScreen = e.detail.fullScreen; // 值true为进入全屏,false为退出全屏\n // if (!fullScreen) {\n // //退出全屏\n // this.isFullScreen = false;\n // } else {\n // this.isFullScreen = true;\n // }\n },\n // 控制器的显示隐藏\n controlChange: function controlChange(e) {\n this.isControl = e.detail.show;\n },\n quitScreen: function quitScreen() {\n // 退出全屏\n var ctx = this.$refs.myVideo;\n ctx.exitFullScreen();\n },\n // 播放进度改变\n videoTimeUpdateEvent: function videoTimeUpdateEvent(e) {\n this.playTime = parseInt(e.detail.currentTime);\n this.currentTime = parseInt(e.detail.currentTime);\n this.allTime = parseInt(e.detail.duration);\n this.recordTime({\n time: this.playTime\n });\n },\n init: function init(data, isChange) {\n var _this3 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _this3.platform = _this3.$platform;\n _this3.isfresh = true;\n __f__(\"log\", \"at line 59:\", \"是否先走init这里\", _this3.platform, \" at pages/component/commonComponents/video/index.vue:160\");\n if (uni.getStorageSync(\"videoOssList\")) {\n _this3.videoList = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n }\n _this3.options = data.currentVideo;\n _this3.videoId = _this3.options.video;\n __f__(\"log\", \"这是苹果视屏id\", _this3.videoId, \" at pages/component/commonComponents/video/index.vue:167\");\n _context3.next = 9;\n return _this3.getLive(isChange);\n case 9:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n getData: function getData(data, isChange) {\n var _this4 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n var netWork, list, index;\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n if (!_this4.isSetFirstTime) {\n netWork = data.userCourseVideoPositionEntity ? data.userCourseVideoPositionEntity.position : 0;\n list = [];\n if (uni.getStorageSync(\"videoOssList\")) {\n list = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n index = list.findIndex(function (e) {\n return e.id == data.id;\n });\n if (netWork) {\n if (index >= 0) {\n _this4.firstTime = list[index].time > netWork ? list[index].time : netWork;\n } else {\n _this4.firstTime = netWork ? netWork : 0;\n }\n } else {\n if (index >= 0) {\n _this4.firstTime = list[index].time ? list[index].time : 0;\n } else {\n _this4.firstTime = 0;\n }\n }\n } else {\n _this4.firstTime = 0;\n }\n _this4.videoData = _objectSpread({}, data);\n _this4.isChange = isChange ? isChange : false;\n // this.currentTime = this.firstTime;\n __f__(\"log\", _this4.firstTime, \"这是第一次播放时长222\", \" at pages/component/commonComponents/video/index.vue:204\");\n // await this.setVideoTime();\n uni.setStorageSync(\"videoOssList\", JSON.stringify(list));\n\n // if (this.currentVideo.type == 0 || this.currentVideo.type == 2) {\n // await this.playVideo();\n // }\n __f__(\"log\", _this4.firstTime, \"这是第一次播放时长\", \" at pages/component/commonComponents/video/index.vue:211\");\n _this4.isSetFirstTime = true;\n }\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n },\n playVideo: function playVideo(e) {\n var _this5 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {\n return _regenerator.default.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _this5.videoContext = uni.createVideoContext(\"videoId\", _this5);\n _this5.videoContext.seek(_this5.firstTime);\n\n // this.videoContext.requestFullScreen();\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }))();\n },\n recordTime: function recordTime(data) {\n var _this6 = this;\n this.currentTime = data.time;\n var list = [];\n if (uni.getStorageSync(\"videoOssList\")) {\n list = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n }\n var index = list.findIndex(function (e) {\n return e.id == _this6.videoData.id;\n });\n if (list.length > 0 && index >= 0) {\n list[index] = _objectSpread(_objectSpread({}, this.videoData), {}, {\n time: data.time\n });\n } else {\n list.push(_objectSpread(_objectSpread({}, this.videoData), {}, {\n time: data.time\n }));\n }\n uni.setStorageSync(\"videoOssList\", JSON.stringify(list));\n },\n // 获取数据\n getLive: function getLive(isChange) {\n var _this7 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {\n var that, data;\n return _regenerator.default.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n that = _this7;\n _this7.isfresh = false;\n data = _objectSpread({}, _this7.options);\n _context7.next = 5;\n return _requestConfig.default.request({\n url: \"sociology/course/checkVideo\",\n method: \"Post\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: data,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(res) {\n var data, playAuth;\n return _regenerator.default.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n data = _objectSpread({}, res.video);\n if (!(_this7.currentVideo.type == 1)) {\n _context6.next = 10;\n break;\n }\n playAuth = res.video.playAuth.replace(/=/g, \"\");\n __f__(\"log\", \"这是接口获取的视屏凭证111\", playAuth, \" at pages/component/commonComponents/video/index.vue:270\");\n data = _objectSpread(_objectSpread({}, data), {}, {\n videoId: res.video.video,\n playAuth: playAuth\n });\n _this7.playAuth = playAuth;\n _context6.next = 8;\n return that.getData(data, isChange);\n case 8:\n _context6.next = 14;\n break;\n case 10:\n __f__(\"log\", \"这是接口获取的视屏凭证222\", res.video, data, \" at pages/component/commonComponents/video/index.vue:280\");\n data = _objectSpread(_objectSpread({}, data), {}, {\n playAuth: new Date().getTime()\n });\n _context6.next = 14;\n return that.getData(data, isChange);\n case 14:\n __f__(\"log\", \"是否获取到初始播放值\", data, \" at pages/component/commonComponents/video/index.vue:287\");\n that.$forceUpdate();\n case 16:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }());\n case 5:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }))();\n },\n handleEnd: function handleEnd() {\n var _this8 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {\n var list, data;\n return _regenerator.default.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n list = JSON.parse(JSON.stringify(uni.getStorageSync(\"videoOssList\")));\n data = list.find(function (e) {\n return e.id == _this8.videoData.id;\n });\n _this8.currentTime = data.time;\n __f__(\"log\", \"this.currentTime at line 这是结束的时候掉的存储视频:\", _this8.currentTime, \" at pages/component/commonComponents/video/index.vue:296\");\n clearInterval(_this8.$store.state.videoTimer);\n _this8.timer = null;\n _context8.next = 8;\n return _this8.setVideoTime();\n case 8:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }))();\n },\n setVideoTime: function setVideoTime(time) {\n var _this9 = this;\n var data = {};\n // var list = uni.getStorageSync(\"videoOssList\");\n\n // data = list.find((e) => e.id == this.videoData.id);\n // console.log(\"这是再走生命周期哦\", this.currentTime);\n __f__(\"log\", \"是否走了存储视屏,\" + this.videoData.id, this.currentTime, \" at pages/component/commonComponents/video/index.vue:311\");\n var data = {\n videoId: this.videoData.id,\n position: this.currentTime //秒数\n };\n\n _requestConfig.default.request({\n url: \"sociology/course/saveCoursePosition\",\n method: \"Post\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: data,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n __f__(\"log\", \"存储视屏时长接口返回信息\", res, \" at pages/component/commonComponents/video/index.vue:328\");\n _this9.$forceUpdate();\n });\n },\n changePlayerTime: function changePlayerTime(player) {\n __f__(\"log\", \"this.firstTime at line 106:\", this.firstTime, \" at pages/component/commonComponents/video/index.vue:333\");\n player.seek(this.firstTime);\n },\n goBack: function goBack() {\n uni.navigateBack({\n delta: 1\n });\n },\n setVideoFirtsetTime: function setVideoFirtsetTime(time) {\n var _this10 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {\n return _regenerator.default.wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _this10.currentTime = _this10.firstTime;\n __f__(\"log\", \"这里准备开始设置播放时间:\", _this10.currentTime, \" at pages/component/commonComponents/video/index.vue:344\");\n // await this.setVideoTime();\n // setTimeout(() => {\n // clearInterval(this.$store.state.videoTimer);\n\n _index.default.commit(\"setVideoTimer\", setInterval( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {\n return _regenerator.default.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return _this10.setVideoTime();\n case 2:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9);\n })), 60000));\n // }, 5000);\n case 3:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10);\n }))();\n }\n },\n created: function created() {}\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vaW5kZXgudnVlIl0sIm5hbWVzIjpbInByb3BzIiwiZGF0YSIsInBsYXRmb3JtIiwiaXNGdWxsU2NyZWVuIiwiaXNmcmVzaCIsImlzQ2hhbmdlIiwiaXNDb250cm9sIiwidGltZXIiLCJ2aWRlb1RpdGxlIiwidmlkZW9MaXN0IiwiZmlyc3RUaW1lIiwib3B0aW9ucyIsInBsYXlBdXRoIiwiY3VycmVudFRpbWUiLCJ2aWRlb0lkIiwidmlkZW9EYXRhIiwiaXNTZXRGaXJzdFRpbWUiLCJzY3JlZW5UeXBlIiwidmlkZW9VcmwiLCJjb21wdXRlZCIsIndhdGNoIiwiY3VycmVudFZpZGVvIiwiaW1tZWRpYXRlIiwiaGFuZGxlciIsIm1vdW50ZWQiLCJiZWZvcmVEZXN0cm95IiwiY2xlYXJJbnRlcnZhbCIsInBsdXMiLCJvblVubG9hZCIsInVuaSIsInVybCIsIm9uTG9hZCIsIm1ldGhvZHMiLCJjaGFuZ2VWaWRlb0RhdGEiLCJjaGFuZ2VWaWRlbyIsInNjcmVlbkNoYW5nZSIsImNvbnRyb2xDaGFuZ2UiLCJxdWl0U2NyZWVuIiwiY3R4IiwidmlkZW9UaW1lVXBkYXRlRXZlbnQiLCJ0aW1lIiwiaW5pdCIsImdldERhdGEiLCJuZXRXb3JrIiwibGlzdCIsImluZGV4IiwicGxheVZpZGVvIiwicmVjb3JkVGltZSIsImdldExpdmUiLCJ0aGF0IiwiJGh0dHAiLCJyZXF1ZXN0IiwibWV0aG9kIiwiaGVhZGVyIiwidGhlbiIsInJlcyIsImhhbmRsZUVuZCIsInNldFZpZGVvVGltZSIsInBvc2l0aW9uIiwiY2hhbmdlUGxheWVyVGltZSIsInBsYXllciIsImdvQmFjayIsImRlbHRhIiwic2V0VmlkZW9GaXJ0c2V0VGltZSIsInN0b3JlIiwic2V0SW50ZXJ2YWwiLCJjcmVhdGVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBcUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFFQTtBQUFBLGVBQ0E7RUFDQUE7RUFDQUM7SUFDQTtNQUNBQztNQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUNBQyw0QkFDQSxzQ0FDQTtFQUVBQztJQUNBQztNQUNBQztNQUNBQztJQUNBO0lBQ0FoQjtNQUNBO0lBQ0E7RUFDQTtFQUVBO0VBQ0FpQjtFQUNBQztJQUNBO0lBQ0E7SUFDQUM7SUFDQTtJQUNBO0lBQ0FDO0lBRUE7RUFDQTtFQUNBQztJQUFBO0lBQUE7TUFBQTtRQUFBO1VBQUE7WUFBQTtjQUNBQztnQkFDQUM7Y0FDQTtjQUVBSDs7Y0FFQTtjQUFBO2NBQUEsT0FHQTtZQUFBO1lBQUE7Y0FBQTtVQUFBO1FBQUE7TUFBQTtJQUFBO0VBRUE7RUFFQTtFQUNBSTtFQUVBQztJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQUE7Z0JBQUEsT0FDQTtjQUFBO2NBQUE7Z0JBQUE7WUFBQTtVQUFBO1FBQUE7TUFBQTtJQUNBO0lBQ0FDO01BQ0EsYUFDQSw4QkFDQWxDLGFBQ0FBO01BRUE7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQTtJQUNBbUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBQztJQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BRUE7TUFFQTtRQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7a0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBRUE7Z0JBQ0E7Z0JBQUE7Z0JBQUEsT0FDQTtjQUFBO2NBQUE7Z0JBQUE7WUFBQTtVQUFBO1FBQUE7TUFBQTtJQUVBO0lBQ0FDO01BQUE7TUFBQTtRQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7a0JBQ0FDLCtDQUNBMUMsOENBQ0E7a0JBQ0EyQztrQkFDQTtvQkFDQUE7b0JBQ0FDO3NCQUFBO29CQUFBO29CQUVBO3NCQUNBO3dCQUNBLG1CQUNBRDtzQkFDQTt3QkFDQTtzQkFDQTtvQkFDQTtzQkFDQTt3QkFDQTtzQkFDQTt3QkFDQTtzQkFDQTtvQkFDQTtrQkFDQTtvQkFDQTtrQkFDQTtrQkFFQSxxQ0FDQTNDLEtBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E0Qjs7a0JBRUE7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBRUE7Z0JBQ0E7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtJQUNBaUI7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7O2dCQUVBO2NBQUE7Y0FBQTtnQkFBQTtZQUFBO1VBQUE7UUFBQTtNQUFBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO01BRUE7TUFDQTtRQUNBSDtNQUNBO01BRUE7UUFBQTtNQUFBO01BQ0E7UUFDQUEsOENBQ0E7VUFFQUo7UUFBQSxFQUNBO01BQ0E7UUFDQUksMENBQ0E7VUFDQUo7UUFBQSxHQUNBO01BQ0E7TUFFQVg7SUFDQTtJQUNBO0lBQ0FtQjtNQUFBO01BQUE7UUFBQTtRQUFBO1VBQUE7WUFBQTtjQUFBO2dCQUNBQztnQkFDQTtnQkFDQWhELHlCQUNBO2dCQUFBO2dCQUFBLE9BR0FpRCx1QkFDQUM7a0JBQ0FyQjtrQkFDQXNCO2tCQUFBO2tCQUNBbkQ7a0JBQ0FvRDtvQkFDQTtvQkFDQTtrQkFDQTtnQkFDQSxHQUNBQztrQkFBQTtvQkFBQTtvQkFBQTtzQkFBQTt3QkFBQTswQkFBQTs0QkFDQXJELHlCQUNBc0Q7NEJBQUEsTUFFQTs4QkFBQTs4QkFBQTs0QkFBQTs0QkFDQTNDOzRCQUNBOzRCQUNBWCx1Q0FDQUE7OEJBQ0FhOzhCQUNBRjs0QkFBQSxFQUNBOzRCQUNBOzRCQUFBOzRCQUFBLE9BRUFxQzswQkFBQTs0QkFBQTs0QkFBQTswQkFBQTs0QkFFQTs0QkFDQWhELHVDQUNBQTs4QkFDQVc7NEJBQUEsRUFDQTs0QkFBQTs0QkFBQSxPQUNBcUM7MEJBQUE7NEJBRUE7NEJBRUFBOzBCQUFBOzBCQUFBOzRCQUFBO3dCQUFBO3NCQUFBO29CQUFBO2tCQUFBLENBQ0E7a0JBQUE7b0JBQUE7a0JBQUE7Z0JBQUE7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtJQUNBTztNQUFBO01BQUE7UUFBQTtRQUFBO1VBQUE7WUFBQTtjQUFBO2dCQUNBWjtnQkFDQTNDO2tCQUFBO2dCQUFBO2dCQUNBO2dCQUNBLGFBQ0EsMkNBQ0E7Z0JBRUF5QjtnQkFDQTtnQkFBQTtnQkFBQSxPQUVBO2NBQUE7Y0FBQTtnQkFBQTtZQUFBO1VBQUE7UUFBQTtNQUFBO0lBQ0E7SUFDQStCO01BQUE7TUFDQTtNQUNBOztNQUVBO01BQ0E7TUFDQTtNQUNBO1FBQ0EzQztRQUNBNEM7TUFDQTs7TUFFQVIsdUJBQ0FDO1FBQ0FyQjtRQUNBc0I7UUFBQTtRQUNBbkQ7UUFDQW9EO1VBQ0E7VUFDQTtRQUNBO01BQ0EsR0FDQUM7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBSztNQUNBO01BQ0FDO0lBQ0E7SUFDQUM7TUFDQWhDO1FBQ0FpQztNQUNBO0lBQ0E7SUFFQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7O2dCQUVBQyxzQkFDQSxpQkFDQUM7a0JBQUE7b0JBQUE7c0JBQUE7d0JBQUE7MEJBQUE7MEJBQUEsT0FFQTt3QkFBQTt3QkFBQTswQkFBQTtzQkFBQTtvQkFBQTtrQkFBQTtnQkFBQSxDQUVBLFdBQ0E7Z0JBQ0E7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtFQUNBO0VBRUFDO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDUwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gIDx2aWV3IGNsYXNzPVwiY29udGFpbmVyXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBwb3NpdGlvbjogcmVsYXRpdmVcIj5cclxuICAgIDwhLS0gPHUtaWNvblxyXG5cdFx0QGNsaWNrPVwiZ29CYWNrXCJcclxuXHRcdG5hbWU9XCJhcnJvdy1sZWZ0XCJcclxuXHRcdGNvbG9yPVwiIzNhYjNhZVwiXHJcblx0XHRzaXplPVwiMjBcIlxyXG5cdFx0OnN0eWxlPVwiYGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6ICR7XHJcblx0XHQgIHN0YXR1c0JhckhlaWdodCArIDJcclxuXHRcdH1weDsgbGVmdDogJHsxMH1weDt6LWluZGV4OiA5OTk7YFwiXHJcblx0ICA+PC91LWljb24+LS0+XHJcbiAgXHJcbiAgICA8dmlldyBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XHJcbiAgICBcclxuICAgICAgPGNvbW1vbi1saXN0LWFsaXl1blxyXG4gICAgICAgIHYtaWY9XCJpc1NldEZpcnN0VGltZSAmJiB2aWRlb0RhdGEucGxheUF1dGhcIlxyXG4gICAgICAgIDplbmNyeXB0VHlwZT1cIjFcIlxyXG4gICAgICAgIDp2aWQ9XCJ2aWRlb0RhdGEudmlkZW9cIlxyXG4gICAgICAgIDpwbGF5YXV0aD1cInZpZGVvRGF0YS5wbGF5QXV0aFwiXHJcbiAgICAgICAgcmVmPVwicGxheWVyXCJcclxuICAgICAgICA6dXNlRmxhc2hQcmlzbT1cImZhbHNlXCJcclxuICAgICAgICA6YXV0b3BsYXk9XCJ0cnVlXCJcclxuICAgICAgICA6aXNMaXZlPVwiZmFsc2VcIlxyXG4gICAgICAgIDpzaG93QnVmZmVyPVwidHJ1ZVwiXHJcbiAgICAgICAgOmNvdmVyPVwiY292ZXJcIlxyXG4gICAgICAgIDpzaG93QmFyVGltZT1cInRydWVcIlxyXG4gICAgICAgIDpkaXNhYmxlU2Vlaz1cInRydWVcIlxyXG4gICAgICAgIHNob3dCYXJUaW1lPVwiNTAwXCJcclxuICAgICAgICB3aWR0aD1cIjMwMHB4XCJcclxuICAgICAgICBjb250cm9sQmFyVmlzaWJpbGl0eT1cImFsd2F5c1wiXHJcbiAgICAgID5cclxuICAgICAgPC9jb21tb24tbGlzdC1hbGl5dW4+XHJcbiAgXHJcbiAgICA8L3ZpZXc+XHJcbiAgPC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG48c2NyaXB0PlxyXG5pbXBvcnQgc3RvcmUgZnJvbSBcIkAvc3RvcmUvaW5kZXguanNcIjtcclxuaW1wb3J0ICRodHRwIGZyb20gXCJAL2NvbmZpZy9yZXF1ZXN0Q29uZmlnLmpzXCI7XHJcbmltcG9ydCB7IG1hcFN0YXRlLCBtYXBNdXRhdGlvbnMgfSBmcm9tIFwidnVleFwiO1xyXG5cclxuLy8gaW1wb3J0U2NyaXB0cygnQC9zdGF0aWMvYWxpcGxheWVyL2FsaXBsYXllci1taW4uanMnKVxyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgcHJvcHM6IFtcImN1cnJlbnRWaWRlb1wiLCBcImN1cnJlbnRWaWRlb0xpc3RcIl0sXHJcbiAgZGF0YSgpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHBsYXRmb3JtOiBudWxsLFxyXG4gICAgICAvL+W9k+WJjeaYr+WQpuaYr+WFqOWxj+aooeW8j1xyXG4gICAgICBpc0Z1bGxTY3JlZW46IGZhbHNlLFxyXG4gICAgICBpc2ZyZXNoOiBmYWxzZSxcclxuICAgICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgICBpc0NvbnRyb2w6IHRydWUsXHJcbiAgICAgIHRpbWVyOiBudWxsLFxyXG4gICAgICB2aWRlb1RpdGxlOiBcIlwiLFxyXG4gICAgICB2aWRlb0xpc3Q6IFtdLFxyXG4gICAgICBmaXJzdFRpbWU6IDAsXHJcbiAgICAgIG9wdGlvbnM6IHt9LFxyXG4gICAgICBwbGF5QXV0aDogXCJcIixcclxuICAgICAgY3VycmVudFRpbWU6IFwiXCIsXHJcbiAgICAgIHZpZGVvSWQ6IFwiXCIsXHJcbiAgICAgIHZpZGVvRGF0YToge30sXHJcbiAgICAgIGlzU2V0Rmlyc3RUaW1lOiBmYWxzZSxcclxuICAgICAgc2NyZWVuVHlwZTogbnVsbCxcclxuICAgICAgdmlkZW9Vcmw6IG51bGwsXHJcbiAgICB9O1xyXG4gIH0sXHJcbiAgY29tcHV0ZWQ6IHtcclxuICAgIC4uLm1hcFN0YXRlKFtcInZpZGVvT3NzTGlzdFwiXSksXHJcbiAgfSxcclxuXHJcbiAgd2F0Y2g6IHtcclxuICAgIGN1cnJlbnRWaWRlbzoge1xyXG4gICAgICBpbW1lZGlhdGU6IHRydWUsXHJcbiAgICAgIGhhbmRsZXIobmV3Um91dGUpIHt9LFxyXG4gICAgfSxcclxuICAgIHRpbWVyKG5ld1ZhbHVlKSB7XHJcbiAgICAgIHRoaXMuJGVtaXQoXCJjaGlsZC1ldmVudFwiLCBuZXdWYWx1ZSk7XHJcbiAgICB9LFxyXG4gIH0sXHJcblxyXG4gIC8vIC8v6aG16Z2i5pi+56S6XHJcbiAgbW91bnRlZCgpIHt9LFxyXG4gIGJlZm9yZURlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmhhbmRsZUVuZCgpO1xyXG4gICAgY29uc29sZS5sb2coXCLmmK/lkKbotbDllabkuaDplIDmr4FcIik7XHJcbiAgICBjbGVhckludGVydmFsKHRoaXMuJHN0b3JlLnN0YXRlLnZpZGVvVGltZXIpO1xyXG4gICAgLy8gdGhpcy50aW1lciA9IG51bGw7XHJcbiAgICAvLyBzdG9yZS5jb21taXQoXCJzZXRMb2FkaW5nU2hvd1wiLCBudWxsKTtcclxuICAgIHBsdXMuc2NyZWVuLmxvY2tPcmllbnRhdGlvbihcInBvcnRyYWl0LXByaW1hcnlcIik7XHJcblxyXG4gICAgY29uc29sZS5sb2coXCLmmK/lkKbotbDllabkuaDplIDmr4Hlrprml7blmahcIiwgdGhpcy50aW1lcik7XHJcbiAgfSxcclxuICBhc3luYyBvblVubG9hZCgpIHtcclxuICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgdXJsOiBcIi9wYWdlcy9jdXJyaWN1bHVtL29yZGVyL2N1cnJpY3VsdW0vYmFja1wiLFxyXG4gICAgfSk7XHJcbiAgICAvLyAjaWZkZWYgQVBQLVBMVVNcclxuICAgIHBsdXMuc2NyZWVuLmxvY2tPcmllbnRhdGlvbihcInBvcnRyYWl0LXByaW1hcnlcIik7IC8v6ZSB5q275bGP5bmV5pa55ZCR5Li656uW5bGPXHJcblxyXG4gICAgLy8gcGx1cy5zY3JlZW4ubG9ja09yaWVudGF0aW9uKFwicG9ydHJhaXQtcHJpbWFyeVwiKTtcclxuICAgIC8vICNlbmRpZlxyXG5cclxuICAgIGF3YWl0IHRoaXMuc2V0VmlkZW9UaW1lKCk7XHJcbiAgICAvLyB0aGlzLnBsYXllci5kaXNwb3NlKCk7XHJcbiAgfSxcclxuXHJcbiAgLy/nrKzkuIDmrKHliqDovb1cclxuICBvbkxvYWQob3B0aW9ucykge30sXHJcblxyXG4gIG1ldGhvZHM6IHtcclxuICAgIGNoYW5nZVZpZGVvRGF0YSgpIHtcclxuICAgICAgdGhpcy5pc0NoYW5nZSA9IGZhbHNlO1xyXG4gICAgfSxcclxuICAgIGFzeW5jIGNoYW5nZVZpZGVvKGRhdGEpIHtcclxuICAgICAgdGhpcy5jdXJyZW50VGltZSA9IFwiXCI7XHJcbiAgICAgIHRoaXMuZmlyc3RUaW1lID0gMDtcclxuICAgICAgdGhpcy5pc1NldEZpcnN0VGltZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmlzQ2hhbmdlID0gZmFsc2U7XHJcbiAgICAgIGF3YWl0IHRoaXMuaW5pdChkYXRhLCB0cnVlKTtcclxuICAgIH0sXHJcbiAgICBzY3JlZW5DaGFuZ2UoZGF0YSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcclxuICAgICAgICBcInN0YXR1cyBhdCBsaW5lIOi/meaYr+W9k+WJjeeahOeKtuaAgTE1ODpcIixcclxuICAgICAgICBkYXRhLnN0YXR1cyxcclxuICAgICAgICBkYXRhLnByaW1hcnlcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5pc0Z1bGxTY3JlZW4gPSAhZGF0YS5zdGF0dXM7XHJcbiAgICAgIHRoaXMuJGVtaXQoXCJjaGFuZ2VTY3JlZW5cIiwgdGhpcy5pc0Z1bGxTY3JlZW4pO1xyXG4gICAgICAvLyBsZXQgZnVsbFNjcmVlbiA9IGUuZGV0YWlsLmZ1bGxTY3JlZW47IC8vIOWAvHRydWXkuLrov5vlhaXlhajlsY/vvIxmYWxzZeS4uumAgOWHuuWFqOWxj1xyXG4gICAgICAvLyBpZiAoIWZ1bGxTY3JlZW4pIHtcclxuICAgICAgLy8gICAvL+mAgOWHuuWFqOWxj1xyXG4gICAgICAvLyAgIHRoaXMuaXNGdWxsU2NyZWVuID0gZmFsc2U7XHJcbiAgICAgIC8vIH0gZWxzZSB7XHJcbiAgICAgIC8vICAgdGhpcy5pc0Z1bGxTY3JlZW4gPSB0cnVlO1xyXG4gICAgICAvLyB9XHJcbiAgICB9LFxyXG4gICAgLy8g5o6n5Yi25Zmo55qE5pi+56S66ZqQ6JePXHJcbiAgICBjb250cm9sQ2hhbmdlKGUpIHtcclxuICAgICAgdGhpcy5pc0NvbnRyb2wgPSBlLmRldGFpbC5zaG93O1xyXG4gICAgfSxcclxuICAgIHF1aXRTY3JlZW4oKSB7XHJcbiAgICAgIC8vIOmAgOWHuuWFqOWxj1xyXG4gICAgICBjb25zdCBjdHggPSB0aGlzLiRyZWZzLm15VmlkZW87XHJcbiAgICAgIGN0eC5leGl0RnVsbFNjcmVlbigpO1xyXG4gICAgfSxcclxuICAgIC8vIOaSreaUvui/m+W6puaUueWPmFxyXG4gICAgdmlkZW9UaW1lVXBkYXRlRXZlbnQoZSkge1xyXG4gICAgICB0aGlzLnBsYXlUaW1lID0gcGFyc2VJbnQoZS5kZXRhaWwuY3VycmVudFRpbWUpO1xyXG4gICAgICB0aGlzLmN1cnJlbnRUaW1lID0gcGFyc2VJbnQoZS5kZXRhaWwuY3VycmVudFRpbWUpO1xyXG5cclxuICAgICAgdGhpcy5hbGxUaW1lID0gcGFyc2VJbnQoZS5kZXRhaWwuZHVyYXRpb24pO1xyXG5cclxuICAgICAgdGhpcy5yZWNvcmRUaW1lKHtcclxuICAgICAgICB0aW1lOiB0aGlzLnBsYXlUaW1lLFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBpbml0KGRhdGEsIGlzQ2hhbmdlKSB7XHJcbiAgICAgIHRoaXMucGxhdGZvcm0gPSB0aGlzLiRwbGF0Zm9ybTtcclxuICAgICAgdGhpcy5pc2ZyZXNoID0gdHJ1ZTtcclxuICAgICAgY29uc29sZS5sb2coXCJhdCBsaW5lIDU5OlwiLCBcIuaYr+WQpuWFiOi1sGluaXTov5nph4xcIiwgdGhpcy5wbGF0Zm9ybSk7XHJcbiAgICAgIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIikpIHtcclxuICAgICAgICB0aGlzLnZpZGVvTGlzdCA9IEpTT04ucGFyc2UodW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9wdGlvbnMgPSBkYXRhLmN1cnJlbnRWaWRlbztcclxuXHJcbiAgICAgIHRoaXMudmlkZW9JZCA9IHRoaXMub3B0aW9ucy52aWRlbztcclxuICAgICAgY29uc29sZS5sb2coXCLov5nmmK/oi7nmnpzop4blsY9pZFwiLCB0aGlzLnZpZGVvSWQpO1xyXG4gICAgICBhd2FpdCB0aGlzLmdldExpdmUoaXNDaGFuZ2UpO1xyXG4gICAgICAvLyAgIHRoaXMuJGVtaXQoXCJjaGlsZC1ldmVudFwiLCB0aGlzLnRpbWVyKTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBnZXREYXRhKGRhdGEsIGlzQ2hhbmdlKSB7XHJcbiAgICAgIGlmICghdGhpcy5pc1NldEZpcnN0VGltZSkge1xyXG4gICAgICAgIHZhciBuZXRXb3JrID0gZGF0YS51c2VyQ291cnNlVmlkZW9Qb3NpdGlvbkVudGl0eVxyXG4gICAgICAgICAgPyBkYXRhLnVzZXJDb3Vyc2VWaWRlb1Bvc2l0aW9uRW50aXR5LnBvc2l0aW9uXHJcbiAgICAgICAgICA6IDA7XHJcbiAgICAgICAgdmFyIGxpc3QgPSBbXTtcclxuICAgICAgICBpZiAodW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpKSB7XHJcbiAgICAgICAgICBsaXN0ID0gSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIikpO1xyXG4gICAgICAgICAgdmFyIGluZGV4ID0gbGlzdC5maW5kSW5kZXgoKGUpID0+IGUuaWQgPT0gZGF0YS5pZCk7XHJcblxyXG4gICAgICAgICAgaWYgKG5ldFdvcmspIHtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmZpcnN0VGltZSA9XHJcbiAgICAgICAgICAgICAgICBsaXN0W2luZGV4XS50aW1lID4gbmV0V29yayA/IGxpc3RbaW5kZXhdLnRpbWUgOiBuZXRXb3JrO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuZmlyc3RUaW1lID0gbmV0V29yayA/IG5ldFdvcmsgOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZmlyc3RUaW1lID0gbGlzdFtpbmRleF0udGltZSA/IGxpc3RbaW5kZXhdLnRpbWUgOiAwO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuZmlyc3RUaW1lID0gMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmZpcnN0VGltZSA9IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnZpZGVvRGF0YSA9IHtcclxuICAgICAgICAgIC4uLmRhdGEsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmlzQ2hhbmdlID0gaXNDaGFuZ2UgPyBpc0NoYW5nZSA6IGZhbHNlO1xyXG4gICAgICAgIC8vIHRoaXMuY3VycmVudFRpbWUgPSB0aGlzLmZpcnN0VGltZTtcclxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmZpcnN0VGltZSwgXCLov5nmmK/nrKzkuIDmrKHmkq3mlL7ml7bplb8yMjJcIik7XHJcbiAgICAgICAgLy8gYXdhaXQgdGhpcy5zZXRWaWRlb1RpbWUoKTtcclxuICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIiwgSlNPTi5zdHJpbmdpZnkobGlzdCkpO1xyXG5cclxuICAgICAgICAvLyBpZiAodGhpcy5jdXJyZW50VmlkZW8udHlwZSA9PSAwIHx8IHRoaXMuY3VycmVudFZpZGVvLnR5cGUgPT0gMikge1xyXG4gICAgICAgIC8vICAgYXdhaXQgdGhpcy5wbGF5VmlkZW8oKTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5maXJzdFRpbWUsIFwi6L+Z5piv56ys5LiA5qyh5pKt5pS+5pe26ZW/XCIpO1xyXG5cclxuICAgICAgICB0aGlzLmlzU2V0Rmlyc3RUaW1lID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGFzeW5jIHBsYXlWaWRlbyhlKSB7XHJcbiAgICAgIHRoaXMudmlkZW9Db250ZXh0ID0gdW5pLmNyZWF0ZVZpZGVvQ29udGV4dChcInZpZGVvSWRcIiwgdGhpcyk7XHJcbiAgICAgIHRoaXMudmlkZW9Db250ZXh0LnNlZWsodGhpcy5maXJzdFRpbWUpO1xyXG5cclxuICAgICAgLy8gICB0aGlzLnZpZGVvQ29udGV4dC5yZXF1ZXN0RnVsbFNjcmVlbigpO1xyXG4gICAgfSxcclxuICAgIHJlY29yZFRpbWUoZGF0YSkge1xyXG4gICAgICB0aGlzLmN1cnJlbnRUaW1lID0gZGF0YS50aW1lO1xyXG5cclxuICAgICAgdmFyIGxpc3QgPSBbXTtcclxuICAgICAgaWYgKHVuaS5nZXRTdG9yYWdlU3luYyhcInZpZGVvT3NzTGlzdFwiKSkge1xyXG4gICAgICAgIGxpc3QgPSBKU09OLnBhcnNlKHVuaS5nZXRTdG9yYWdlU3luYyhcInZpZGVvT3NzTGlzdFwiKSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBpbmRleCA9IGxpc3QuZmluZEluZGV4KChlKSA9PiBlLmlkID09IHRoaXMudmlkZW9EYXRhLmlkKTtcclxuICAgICAgaWYgKGxpc3QubGVuZ3RoID4gMCAmJiBpbmRleCA+PSAwKSB7XHJcbiAgICAgICAgbGlzdFtpbmRleF0gPSB7XHJcbiAgICAgICAgICAuLi50aGlzLnZpZGVvRGF0YSxcclxuXHJcbiAgICAgICAgICB0aW1lOiBkYXRhLnRpbWUsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsaXN0LnB1c2goe1xyXG4gICAgICAgICAgLi4udGhpcy52aWRlb0RhdGEsXHJcbiAgICAgICAgICB0aW1lOiBkYXRhLnRpbWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcInZpZGVvT3NzTGlzdFwiLCBKU09OLnN0cmluZ2lmeShsaXN0KSk7XHJcbiAgICB9LFxyXG4gICAgLy8g6I635Y+W5pWw5o2uXHJcbiAgICBhc3luYyBnZXRMaXZlKGlzQ2hhbmdlKSB7XHJcbiAgICAgIHZhciB0aGF0ID0gdGhpcztcclxuICAgICAgdGhpcy5pc2ZyZXNoID0gZmFsc2U7XHJcbiAgICAgIHZhciBkYXRhID0ge1xyXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcclxuICAgICAgfTtcclxuXHJcbiAgICAgIGF3YWl0ICRodHRwXHJcbiAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgdXJsOiBgc29jaW9sb2d5L2NvdXJzZS9jaGVja1ZpZGVvYCxcclxuICAgICAgICAgIG1ldGhvZDogXCJQb3N0XCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICBoZWFkZXI6IHtcclxuICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxyXG4gICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbihhc3luYyAocmVzKSA9PiB7XHJcbiAgICAgICAgICB2YXIgZGF0YSA9IHtcclxuICAgICAgICAgICAgLi4ucmVzLnZpZGVvLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRWaWRlby50eXBlID09IDEpIHtcclxuICAgICAgICAgICAgdmFyIHBsYXlBdXRoID0gcmVzLnZpZGVvLnBsYXlBdXRoLnJlcGxhY2UoLz0vZywgXCJcIik7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi6L+Z5piv5o6l5Y+j6I635Y+W55qE6KeG5bGP5Yet6K+BMTExXCIsIHBsYXlBdXRoKTtcclxuICAgICAgICAgICAgZGF0YSA9IHtcclxuICAgICAgICAgICAgICAuLi5kYXRhLFxyXG4gICAgICAgICAgICAgIHZpZGVvSWQ6IHJlcy52aWRlby52aWRlbyxcclxuICAgICAgICAgICAgICBwbGF5QXV0aDogcGxheUF1dGgsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHRoaXMucGxheUF1dGggPSBwbGF5QXV0aDtcclxuXHJcbiAgICAgICAgICAgIGF3YWl0IHRoYXQuZ2V0RGF0YShkYXRhLCBpc0NoYW5nZSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIui/meaYr+aOpeWPo+iOt+WPlueahOinhuWxj+WHreivgTIyMlwiLCByZXMudmlkZW8sIGRhdGEpO1xyXG4gICAgICAgICAgICBkYXRhID0ge1xyXG4gICAgICAgICAgICAgIC4uLmRhdGEsXHJcbiAgICAgICAgICAgICAgcGxheUF1dGg6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBhd2FpdCB0aGF0LmdldERhdGEoZGF0YSwgaXNDaGFuZ2UpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29uc29sZS5sb2coXCLmmK/lkKbojrflj5bliLDliJ3lp4vmkq3mlL7lgLxcIiwgZGF0YSk7XHJcblxyXG4gICAgICAgICAgdGhhdC4kZm9yY2VVcGRhdGUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBoYW5kbGVFbmQoKSB7XHJcbiAgICAgIHZhciBsaXN0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIikpKTtcclxuICAgICAgdmFyIGRhdGEgPSBsaXN0LmZpbmQoKGUpID0+IGUuaWQgPT0gdGhpcy52aWRlb0RhdGEuaWQpO1xyXG4gICAgICB0aGlzLmN1cnJlbnRUaW1lID0gZGF0YS50aW1lO1xyXG4gICAgICBjb25zb2xlLmxvZyhcclxuICAgICAgICBcInRoaXMuY3VycmVudFRpbWUgYXQgbGluZSDov5nmmK/nu5PmnZ/nmoTml7blgJnmjonnmoTlrZjlgqjop4bpopE6XCIsXHJcbiAgICAgICAgdGhpcy5jdXJyZW50VGltZVxyXG4gICAgICApO1xyXG4gICAgICBjbGVhckludGVydmFsKHRoaXMuJHN0b3JlLnN0YXRlLnZpZGVvVGltZXIpO1xyXG4gICAgICB0aGlzLnRpbWVyID0gbnVsbDtcclxuXHJcbiAgICAgIGF3YWl0IHRoaXMuc2V0VmlkZW9UaW1lKCk7XHJcbiAgICB9LFxyXG4gICAgc2V0VmlkZW9UaW1lKHRpbWUpIHtcclxuICAgICAgdmFyIGRhdGEgPSB7fTtcclxuICAgICAgLy8gdmFyIGxpc3QgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIik7XHJcblxyXG4gICAgICAvLyBkYXRhID0gbGlzdC5maW5kKChlKSA9PiBlLmlkID09IHRoaXMudmlkZW9EYXRhLmlkKTtcclxuICAgICAgLy8gY29uc29sZS5sb2coXCLov5nmmK/lho3otbDnlJ/lkb3lkajmnJ/lk6ZcIiwgdGhpcy5jdXJyZW50VGltZSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwi5piv5ZCm6LWw5LqG5a2Y5YKo6KeG5bGPLFwiICsgdGhpcy52aWRlb0RhdGEuaWQsIHRoaXMuY3VycmVudFRpbWUpO1xyXG4gICAgICB2YXIgZGF0YSA9IHtcclxuICAgICAgICB2aWRlb0lkOiB0aGlzLnZpZGVvRGF0YS5pZCxcclxuICAgICAgICBwb3NpdGlvbjogdGhpcy5jdXJyZW50VGltZSwgLy/np5LmlbBcclxuICAgICAgfTtcclxuXHJcbiAgICAgICRodHRwXHJcbiAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgdXJsOiBgc29jaW9sb2d5L2NvdXJzZS9zYXZlQ291cnNlUG9zaXRpb25gLFxyXG4gICAgICAgICAgbWV0aG9kOiBcIlBvc3RcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xyXG4gICAgICAgICAgZGF0YSxcclxuICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XHJcbiAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwi5a2Y5YKo6KeG5bGP5pe26ZW/5o6l5Y+j6L+U5Zue5L+h5oGvXCIsIHJlcyk7XHJcbiAgICAgICAgICB0aGlzLiRmb3JjZVVwZGF0ZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIGNoYW5nZVBsYXllclRpbWUocGxheWVyKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwidGhpcy5maXJzdFRpbWUgYXQgbGluZSAxMDY6XCIsIHRoaXMuZmlyc3RUaW1lKTtcclxuICAgICAgcGxheWVyLnNlZWsodGhpcy5maXJzdFRpbWUpO1xyXG4gICAgfSxcclxuICAgIGdvQmFjaygpIHtcclxuICAgICAgdW5pLm5hdmlnYXRlQmFjayh7XHJcbiAgICAgICAgZGVsdGE6IDEsXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuXHJcbiAgICBhc3luYyBzZXRWaWRlb0ZpcnRzZXRUaW1lKHRpbWUpIHtcclxuICAgICAgdGhpcy5jdXJyZW50VGltZSA9IHRoaXMuZmlyc3RUaW1lO1xyXG4gICAgICBjb25zb2xlLmxvZyhcIui/memHjOWHhuWkh+W8gOWni+iuvue9ruaSreaUvuaXtumXtDpcIiwgdGhpcy5jdXJyZW50VGltZSk7XHJcbiAgICAgIC8vIGF3YWl0IHRoaXMuc2V0VmlkZW9UaW1lKCk7XHJcbiAgICAgIC8vIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvLyBjbGVhckludGVydmFsKHRoaXMuJHN0b3JlLnN0YXRlLnZpZGVvVGltZXIpO1xyXG5cclxuICAgICAgc3RvcmUuY29tbWl0KFxyXG4gICAgICAgIFwic2V0VmlkZW9UaW1lclwiLFxyXG4gICAgICAgIHNldEludGVydmFsKGFzeW5jICgpID0+IHtcclxuICAgICAgICAgIC8vIGlmICh0aGlzLmN1cnJlbnRUaW1lKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLnNldFZpZGVvVGltZSgpO1xyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgIH0sIDYwMDAwKVxyXG4gICAgICApO1xyXG4gICAgICAvLyB9LCA1MDAwKTtcclxuICAgIH0sXHJcbiAgfSxcclxuXHJcbiAgY3JlYXRlZCgpIHt9LFxyXG59O1xyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZT5cclxuLmNvbnRhaW5lciB7XHJcbiAgd2lkdGg6IDEwMHZ3O1xyXG4gIGhlaWdodDogYXV0bztcclxuXHJcbiAgL2RlZXAvLnBhdXNlIHtcclxuICAgIHdpZHRoOiA2MHJweCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiA2MHJweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLmZkcyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcclxuICBoZWlnaHQ6IDYwMHJweDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiA2MHJweDtcclxufVxyXG5cclxuLnJldHVybkJhY2sge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgaGVpZ2h0OiA4OHJweDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcnB4O1xyXG59XHJcblxyXG4udHh0IHtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnJpZ2h0X3RpdGxlIHtcclxuICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gIGhlaWdodDogOTZycHg7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLnJldHVybiB7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4ucmlnaHRfaGFuZGxlIHtcclxuICB3aWR0aDogMjAwcnB4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHJweDtcclxufVxyXG5cclxuY292ZXItdmlldyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbn1cclxuXHJcbmNvdmVyLXZpZXcge1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuY292ZXItaW1hZ2Uge1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZ1bGxTY3JlZW5CdXR0b24tY29udGFpbmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgaGVpZ2h0OiAzNXB4O1xyXG4gIG1hcmdpbi10b3A6IDZweDtcclxuICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBpIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJiArIGkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogM3B4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAmOmhvdmVyICsgLnBsYXllci10b29sdGlwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBsYXllci10b29sdGlwIHtcclxuICAgICYucHJldiB7XHJcbiAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYubGlzdCB7XHJcbiAgICAgIGxlZnQ6IDVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLm5leHQge1xyXG4gICAgICByaWdodDogLTEycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucGxheWxpc3QtY29udGVudCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHdpZHRoOiAwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzhzIGVhc2UtaW4tb3V0O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIC5saXN0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuXHJcbiAgICAudmlkZW8taXRlbSB7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBwYWRkaW5nOiAwcHggMTBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgICAgIGNvbG9yOiAjMDBkZGZmO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICBjb2xvcjogIzAwZGRmZjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wbGF5ZXItdG9vbHRpcCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kOiAjM2MzYzNjO1xyXG4gIGJveC1zaGFkb3c6IDAgMCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgaGVpZ2h0OiAyOHB4O1xyXG4gIHRvcDogLTQ4cHg7XHJcbiAgcGFkZGluZzogMCA1cHg7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnBsYXlsaXN0LXNraXAtdGlwIHtcclxuICBwYWRkaW5nOiA1cHggMTVweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHotaW5kZXg6IDMwO1xyXG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuI3JvdGF0aW5nLWRpdiB7XHJcbiAgd2lkdGg6IDEwMHZ3O1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0OThkYjtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgLyog5peL6L2sOTDluqYgKi9cclxuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gIC8qIOiuvue9ruaXi+i9rOS4reW/g+eCueWcqGRpduS4reW/gyAqL1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICAvKiDlm7rlrprlrprkvY3vvIzlhajlsY/mmL7npLogKi9cclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBib3R0b206IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbn1cclxuPC9zdHlsZT5cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///1050\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 2);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 24));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 26));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 3));\nvar _index = _interopRequireDefault(__webpack_require__(/*! @/store/index.js */ 161));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 134));\nvar _vuex = __webpack_require__(/*! vuex */ 70);\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; }\n// importScripts('@/static/aliplayer/aliplayer-min.js')\nvar _default = {\n props: [\"currentVideo\", \"currentVideoList\"],\n data: function data() {\n return {\n platform: null,\n //当前是否是全屏模式\n isFullScreen: false,\n isfresh: false,\n isChange: false,\n isControl: true,\n timer: null,\n videoTitle: \"\",\n videoList: [],\n firstTime: 0,\n options: {},\n playAuth: \"\",\n currentTime: \"\",\n videoId: \"\",\n videoData: {},\n isSetFirstTime: false,\n screenType: null,\n videoUrl: null\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)([\"videoOssList\"])),\n watch: {\n currentVideo: {\n immediate: true,\n handler: function handler(newRoute) {}\n },\n timer: function timer(newValue) {\n this.$emit(\"child-event\", newValue);\n }\n },\n // //页面显示\n mounted: function mounted() {},\n beforeDestroy: function beforeDestroy() {\n this.handleEnd();\n __f__(\"log\", \"是否走啦习销毁\", \" at pages/component/commonComponents/video/index.vue:85\");\n clearInterval(this.$store.state.videoTimer);\n // this.timer = null;\n // store.commit(\"setLoadingShow\", null);\n plus.screen.lockOrientation(\"portrait-primary\");\n __f__(\"log\", \"是否走啦习销毁定时器\", this.timer, \" at pages/component/commonComponents/video/index.vue:91\");\n },\n onUnload: function onUnload() {\n var _this = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n uni.navigateTo({\n url: \"/pages/curriculum/order/curriculum/back\"\n });\n plus.screen.lockOrientation(\"portrait-primary\"); //锁死屏幕方向为竖屏\n\n // plus.screen.lockOrientation(\"portrait-primary\");\n _context.next = 4;\n return _this.setVideoTime();\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n //第一次加载\n onLoad: function onLoad(options) {},\n methods: {\n changeVideoData: function changeVideoData() {\n this.isChange = false;\n },\n changeVideo: function changeVideo(data) {\n var _this2 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _this2.currentTime = \"\";\n _this2.firstTime = 0;\n _this2.isSetFirstTime = false;\n _this2.isChange = false;\n _context2.next = 6;\n return _this2.init(data, true);\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n screenChange: function screenChange(data) {\n __f__(\"log\", \"status at line 这是当前的状态158:\", data.status, data.primary, \" at pages/component/commonComponents/video/index.vue:122\");\n this.isFullScreen = !data.status;\n this.$emit(\"changeScreen\", this.isFullScreen);\n // let fullScreen = e.detail.fullScreen; // 值true为进入全屏,false为退出全屏\n // if (!fullScreen) {\n // //退出全屏\n // this.isFullScreen = false;\n // } else {\n // this.isFullScreen = true;\n // }\n },\n // 控制器的显示隐藏\n controlChange: function controlChange(e) {\n this.isControl = e.detail.show;\n },\n quitScreen: function quitScreen() {\n // 退出全屏\n var ctx = this.$refs.myVideo;\n ctx.exitFullScreen();\n },\n // 播放进度改变\n videoTimeUpdateEvent: function videoTimeUpdateEvent(e) {\n this.playTime = parseInt(e.detail.currentTime);\n this.currentTime = parseInt(e.detail.currentTime);\n this.allTime = parseInt(e.detail.duration);\n this.recordTime({\n time: this.playTime\n });\n },\n init: function init(data, isChange) {\n var _this3 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _this3.platform = _this3.$platform;\n _this3.isfresh = true;\n __f__(\"log\", \"at line 59:\", \"是否先走init这里\", _this3.platform, \" at pages/component/commonComponents/video/index.vue:160\");\n if (uni.getStorageSync(\"videoOssList\")) {\n _this3.videoList = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n }\n _this3.options = data.currentVideo;\n _this3.videoId = _this3.options.video;\n __f__(\"log\", \"这是苹果视屏id\", _this3.videoId, \" at pages/component/commonComponents/video/index.vue:167\");\n _context3.next = 9;\n return _this3.getLive(isChange);\n case 9:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n getData: function getData(data, isChange) {\n var _this4 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n var netWork, list, index;\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n if (!_this4.isSetFirstTime) {\n netWork = data.userCourseVideoPositionEntity ? data.userCourseVideoPositionEntity.position : 0;\n list = [];\n if (uni.getStorageSync(\"videoOssList\")) {\n list = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n index = list.findIndex(function (e) {\n return e.id == data.id;\n });\n if (netWork) {\n if (index >= 0) {\n _this4.firstTime = list[index].time > netWork ? list[index].time : netWork;\n } else {\n _this4.firstTime = netWork ? netWork : 0;\n }\n } else {\n if (index >= 0) {\n _this4.firstTime = list[index].time ? list[index].time : 0;\n } else {\n _this4.firstTime = 0;\n }\n }\n } else {\n _this4.firstTime = 0;\n }\n _this4.videoData = _objectSpread({}, data);\n _this4.isChange = isChange ? isChange : false;\n // this.currentTime = this.firstTime;\n __f__(\"log\", _this4.firstTime, \"这是第一次播放时长222\", \" at pages/component/commonComponents/video/index.vue:204\");\n // await this.setVideoTime();\n uni.setStorageSync(\"videoOssList\", JSON.stringify(list));\n\n // if (this.currentVideo.type == 0 || this.currentVideo.type == 2) {\n // await this.playVideo();\n // }\n __f__(\"log\", _this4.firstTime, \"这是第一次播放时长\", \" at pages/component/commonComponents/video/index.vue:211\");\n _this4.isSetFirstTime = true;\n }\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n },\n playVideo: function playVideo(e) {\n var _this5 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {\n return _regenerator.default.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _this5.videoContext = uni.createVideoContext(\"videoId\", _this5);\n _this5.videoContext.seek(_this5.firstTime);\n\n // this.videoContext.requestFullScreen();\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }))();\n },\n recordTime: function recordTime(data) {\n var _this6 = this;\n this.currentTime = data.time;\n var list = [];\n if (uni.getStorageSync(\"videoOssList\")) {\n list = JSON.parse(uni.getStorageSync(\"videoOssList\"));\n }\n var index = list.findIndex(function (e) {\n return e.id == _this6.videoData.id;\n });\n if (list.length > 0 && index >= 0) {\n list[index] = _objectSpread(_objectSpread({}, this.videoData), {}, {\n time: data.time\n });\n } else {\n list.push(_objectSpread(_objectSpread({}, this.videoData), {}, {\n time: data.time\n }));\n }\n uni.setStorageSync(\"videoOssList\", JSON.stringify(list));\n },\n // 获取数据\n getLive: function getLive(isChange) {\n var _this7 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {\n var that, data;\n return _regenerator.default.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n that = _this7;\n _this7.isfresh = false;\n data = _objectSpread({}, _this7.options);\n _context7.next = 5;\n return _requestConfig.default.request({\n url: \"sociology/course/checkVideo\",\n method: \"Post\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: data,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(res) {\n var data, playAuth;\n return _regenerator.default.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n data = _objectSpread({}, res.video);\n if (!(_this7.currentVideo.type == 1)) {\n _context6.next = 10;\n break;\n }\n playAuth = res.video.playAuth.replace(/=/g, \"\");\n __f__(\"log\", \"这是接口获取的视屏凭证111\", playAuth, \" at pages/component/commonComponents/video/index.vue:270\");\n data = _objectSpread(_objectSpread({}, data), {}, {\n videoId: res.video.video,\n playAuth: playAuth\n });\n _this7.playAuth = playAuth;\n _context6.next = 8;\n return that.getData(data, isChange);\n case 8:\n _context6.next = 14;\n break;\n case 10:\n __f__(\"log\", \"这是接口获取的视屏凭证222\", res.video, data, \" at pages/component/commonComponents/video/index.vue:280\");\n data = _objectSpread(_objectSpread({}, data), {}, {\n playAuth: new Date().getTime()\n });\n _context6.next = 14;\n return that.getData(data, isChange);\n case 14:\n __f__(\"log\", \"是否获取到初始播放值\", data, \" at pages/component/commonComponents/video/index.vue:287\");\n that.$forceUpdate();\n case 16:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }());\n case 5:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }))();\n },\n handleEnd: function handleEnd() {\n var _this8 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {\n var list, data;\n return _regenerator.default.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n list = JSON.parse(JSON.stringify(uni.getStorageSync(\"videoOssList\")));\n data = list.find(function (e) {\n return e.id == _this8.videoData.id;\n });\n _this8.currentTime = data.time;\n __f__(\"log\", \"this.currentTime at line 这是结束的时候掉的存储视频:\", _this8.currentTime, \" at pages/component/commonComponents/video/index.vue:296\");\n clearInterval(_this8.$store.state.videoTimer);\n _this8.timer = null;\n _context8.next = 8;\n return _this8.setVideoTime();\n case 8:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }))();\n },\n setVideoTime: function setVideoTime(time) {\n var _this9 = this;\n var data = {};\n // var list = uni.getStorageSync(\"videoOssList\");\n\n // data = list.find((e) => e.id == this.videoData.id);\n // console.log(\"这是再走生命周期哦\", this.currentTime);\n __f__(\"log\", \"是否走了存储视屏,\" + this.videoData.id, this.currentTime, \" at pages/component/commonComponents/video/index.vue:311\");\n var data = {\n videoId: this.videoData.id,\n position: this.currentTime //秒数\n };\n\n _requestConfig.default.request({\n url: \"sociology/course/saveCoursePosition\",\n method: \"Post\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: data,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n __f__(\"log\", \"存储视屏时长接口返回信息\", res, \" at pages/component/commonComponents/video/index.vue:328\");\n _this9.$forceUpdate();\n });\n },\n changePlayerTime: function changePlayerTime(player) {\n __f__(\"log\", \"this.firstTime at line 106:\", this.firstTime, \" at pages/component/commonComponents/video/index.vue:333\");\n player.seek(this.firstTime);\n },\n goBack: function goBack() {\n uni.navigateBack({\n delta: 1\n });\n },\n setVideoFirtsetTime: function setVideoFirtsetTime(time) {\n var _this10 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {\n return _regenerator.default.wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _this10.currentTime = _this10.firstTime;\n __f__(\"log\", \"这里准备开始设置播放时间:\", _this10.currentTime, \" at pages/component/commonComponents/video/index.vue:344\");\n // await this.setVideoTime();\n // setTimeout(() => {\n // clearInterval(this.$store.state.videoTimer);\n\n _index.default.commit(\"setVideoTimer\", setInterval( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {\n return _regenerator.default.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return _this10.setVideoTime();\n case 2:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9);\n })), 60000));\n // }, 5000);\n case 3:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10);\n }))();\n }\n },\n created: function created() {}\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvY29tcG9uZW50L2NvbW1vbkNvbXBvbmVudHMvdmlkZW8vaW5kZXgudnVlIl0sIm5hbWVzIjpbInByb3BzIiwiZGF0YSIsInBsYXRmb3JtIiwiaXNGdWxsU2NyZWVuIiwiaXNmcmVzaCIsImlzQ2hhbmdlIiwiaXNDb250cm9sIiwidGltZXIiLCJ2aWRlb1RpdGxlIiwidmlkZW9MaXN0IiwiZmlyc3RUaW1lIiwib3B0aW9ucyIsInBsYXlBdXRoIiwiY3VycmVudFRpbWUiLCJ2aWRlb0lkIiwidmlkZW9EYXRhIiwiaXNTZXRGaXJzdFRpbWUiLCJzY3JlZW5UeXBlIiwidmlkZW9VcmwiLCJjb21wdXRlZCIsIndhdGNoIiwiY3VycmVudFZpZGVvIiwiaW1tZWRpYXRlIiwiaGFuZGxlciIsIm1vdW50ZWQiLCJiZWZvcmVEZXN0cm95IiwiY2xlYXJJbnRlcnZhbCIsInBsdXMiLCJvblVubG9hZCIsInVuaSIsInVybCIsIm9uTG9hZCIsIm1ldGhvZHMiLCJjaGFuZ2VWaWRlb0RhdGEiLCJjaGFuZ2VWaWRlbyIsInNjcmVlbkNoYW5nZSIsImNvbnRyb2xDaGFuZ2UiLCJxdWl0U2NyZWVuIiwiY3R4IiwidmlkZW9UaW1lVXBkYXRlRXZlbnQiLCJ0aW1lIiwiaW5pdCIsImdldERhdGEiLCJuZXRXb3JrIiwibGlzdCIsImluZGV4IiwicGxheVZpZGVvIiwicmVjb3JkVGltZSIsImdldExpdmUiLCJ0aGF0IiwiJGh0dHAiLCJyZXF1ZXN0IiwibWV0aG9kIiwiaGVhZGVyIiwidGhlbiIsInJlcyIsImhhbmRsZUVuZCIsInNldFZpZGVvVGltZSIsInBvc2l0aW9uIiwiY2hhbmdlUGxheWVyVGltZSIsInBsYXllciIsImdvQmFjayIsImRlbHRhIiwic2V0VmlkZW9GaXJ0c2V0VGltZSIsInN0b3JlIiwic2V0SW50ZXJ2YWwiLCJjcmVhdGVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBcUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFFQTtBQUFBLGVBQ0E7RUFDQUE7RUFDQUM7SUFDQTtNQUNBQztNQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUNBQyw0QkFDQSxzQ0FDQTtFQUVBQztJQUNBQztNQUNBQztNQUNBQztJQUNBO0lBQ0FoQjtNQUNBO0lBQ0E7RUFDQTtFQUVBO0VBQ0FpQjtFQUNBQztJQUNBO0lBQ0E7SUFDQUM7SUFDQTtJQUNBO0lBQ0FDO0lBRUE7RUFDQTtFQUNBQztJQUFBO0lBQUE7TUFBQTtRQUFBO1VBQUE7WUFBQTtjQUNBQztnQkFDQUM7Y0FDQTtjQUVBSDs7Y0FFQTtjQUFBO2NBQUEsT0FHQTtZQUFBO1lBQUE7Y0FBQTtVQUFBO1FBQUE7TUFBQTtJQUFBO0VBRUE7RUFFQTtFQUNBSTtFQUVBQztJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQUE7Z0JBQUEsT0FDQTtjQUFBO2NBQUE7Z0JBQUE7WUFBQTtVQUFBO1FBQUE7TUFBQTtJQUNBO0lBQ0FDO01BQ0EsYUFDQSw4QkFDQWxDLGFBQ0FBO01BRUE7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQTtJQUNBbUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBQztJQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BRUE7TUFFQTtRQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7a0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBRUE7Z0JBQ0E7Z0JBQUE7Z0JBQUEsT0FDQTtjQUFBO2NBQUE7Z0JBQUE7WUFBQTtVQUFBO1FBQUE7TUFBQTtJQUVBO0lBQ0FDO01BQUE7TUFBQTtRQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7a0JBQ0FDLCtDQUNBMUMsOENBQ0E7a0JBQ0EyQztrQkFDQTtvQkFDQUE7b0JBQ0FDO3NCQUFBO29CQUFBO29CQUVBO3NCQUNBO3dCQUNBLG1CQUNBRDtzQkFDQTt3QkFDQTtzQkFDQTtvQkFDQTtzQkFDQTt3QkFDQTtzQkFDQTt3QkFDQTtzQkFDQTtvQkFDQTtrQkFDQTtvQkFDQTtrQkFDQTtrQkFFQSxxQ0FDQTNDLEtBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBQ0E0Qjs7a0JBRUE7a0JBQ0E7a0JBQ0E7a0JBQ0E7a0JBRUE7Z0JBQ0E7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtJQUNBaUI7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7O2dCQUVBO2NBQUE7Y0FBQTtnQkFBQTtZQUFBO1VBQUE7UUFBQTtNQUFBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO01BRUE7TUFDQTtRQUNBSDtNQUNBO01BRUE7UUFBQTtNQUFBO01BQ0E7UUFDQUEsOENBQ0E7VUFFQUo7UUFBQSxFQUNBO01BQ0E7UUFDQUksMENBQ0E7VUFDQUo7UUFBQSxHQUNBO01BQ0E7TUFFQVg7SUFDQTtJQUNBO0lBQ0FtQjtNQUFBO01BQUE7UUFBQTtRQUFBO1VBQUE7WUFBQTtjQUFBO2dCQUNBQztnQkFDQTtnQkFDQWhELHlCQUNBO2dCQUFBO2dCQUFBLE9BR0FpRCx1QkFDQUM7a0JBQ0FyQjtrQkFDQXNCO2tCQUFBO2tCQUNBbkQ7a0JBQ0FvRDtvQkFDQTtvQkFDQTtrQkFDQTtnQkFDQSxHQUNBQztrQkFBQTtvQkFBQTtvQkFBQTtzQkFBQTt3QkFBQTswQkFBQTs0QkFDQXJELHlCQUNBc0Q7NEJBQUEsTUFFQTs4QkFBQTs4QkFBQTs0QkFBQTs0QkFDQTNDOzRCQUNBOzRCQUNBWCx1Q0FDQUE7OEJBQ0FhOzhCQUNBRjs0QkFBQSxFQUNBOzRCQUNBOzRCQUFBOzRCQUFBLE9BRUFxQzswQkFBQTs0QkFBQTs0QkFBQTswQkFBQTs0QkFFQTs0QkFDQWhELHVDQUNBQTs4QkFDQVc7NEJBQUEsRUFDQTs0QkFBQTs0QkFBQSxPQUNBcUM7MEJBQUE7NEJBRUE7NEJBRUFBOzBCQUFBOzBCQUFBOzRCQUFBO3dCQUFBO3NCQUFBO29CQUFBO2tCQUFBLENBQ0E7a0JBQUE7b0JBQUE7a0JBQUE7Z0JBQUE7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtJQUNBTztNQUFBO01BQUE7UUFBQTtRQUFBO1VBQUE7WUFBQTtjQUFBO2dCQUNBWjtnQkFDQTNDO2tCQUFBO2dCQUFBO2dCQUNBO2dCQUNBLGFBQ0EsMkNBQ0E7Z0JBRUF5QjtnQkFDQTtnQkFBQTtnQkFBQSxPQUVBO2NBQUE7Y0FBQTtnQkFBQTtZQUFBO1VBQUE7UUFBQTtNQUFBO0lBQ0E7SUFDQStCO01BQUE7TUFDQTtNQUNBOztNQUVBO01BQ0E7TUFDQTtNQUNBO1FBQ0EzQztRQUNBNEM7TUFDQTs7TUFFQVIsdUJBQ0FDO1FBQ0FyQjtRQUNBc0I7UUFBQTtRQUNBbkQ7UUFDQW9EO1VBQ0E7VUFDQTtRQUNBO01BQ0EsR0FDQUM7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBSztNQUNBO01BQ0FDO0lBQ0E7SUFDQUM7TUFDQWhDO1FBQ0FpQztNQUNBO0lBQ0E7SUFFQUM7TUFBQTtNQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7Z0JBQ0E7O2dCQUVBQyxzQkFDQSxpQkFDQUM7a0JBQUE7b0JBQUE7c0JBQUE7d0JBQUE7MEJBQUE7MEJBQUEsT0FFQTt3QkFBQTt3QkFBQTswQkFBQTtzQkFBQTtvQkFBQTtrQkFBQTtnQkFBQSxDQUVBLFdBQ0E7Z0JBQ0E7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtFQUNBO0VBRUFDO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDUwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gIDx2aWV3IGNsYXNzPVwiY29udGFpbmVyXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBwb3NpdGlvbjogcmVsYXRpdmVcIj5cclxuICAgIDwhLS0gPHUtaWNvblxyXG5cdFx0QGNsaWNrPVwiZ29CYWNrXCJcclxuXHRcdG5hbWU9XCJhcnJvdy1sZWZ0XCJcclxuXHRcdGNvbG9yPVwiIzNhYjNhZVwiXHJcblx0XHRzaXplPVwiMjBcIlxyXG5cdFx0OnN0eWxlPVwiYGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6ICR7XHJcblx0XHQgIHN0YXR1c0JhckhlaWdodCArIDJcclxuXHRcdH1weDsgbGVmdDogJHsxMH1weDt6LWluZGV4OiA5OTk7YFwiXHJcblx0ICA+PC91LWljb24+LS0+XHJcbiAgXHJcbiAgICA8dmlldyBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XHJcbiAgICBcclxuICAgICAgPGNvbW1vbi1saXN0LWFsaXl1blxyXG4gICAgICAgIHYtaWY9XCJpc1NldEZpcnN0VGltZSAmJiB2aWRlb0RhdGEucGxheUF1dGhcIlxyXG4gICAgICAgIDplbmNyeXB0VHlwZT1cIjFcIlxyXG4gICAgICAgIDp2aWQ9XCJ2aWRlb0RhdGEudmlkZW9cIlxyXG4gICAgICAgIDpwbGF5YXV0aD1cInZpZGVvRGF0YS5wbGF5QXV0aFwiXHJcbiAgICAgICAgcmVmPVwicGxheWVyXCJcclxuICAgICAgICA6dXNlRmxhc2hQcmlzbT1cImZhbHNlXCJcclxuICAgICAgICA6YXV0b3BsYXk9XCJ0cnVlXCJcclxuICAgICAgICA6aXNMaXZlPVwiZmFsc2VcIlxyXG4gICAgICAgIDpzaG93QnVmZmVyPVwidHJ1ZVwiXHJcbiAgICAgICAgOmNvdmVyPVwiY292ZXJcIlxyXG4gICAgICAgIDpzaG93QmFyVGltZT1cInRydWVcIlxyXG4gICAgICAgIDpkaXNhYmxlU2Vlaz1cInRydWVcIlxyXG4gICAgICAgIHNob3dCYXJUaW1lPVwiNTAwXCJcclxuICAgICAgXHJcbiAgICAgICAgY29udHJvbEJhclZpc2liaWxpdHk9XCJhbHdheXNcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvY29tbW9uLWxpc3QtYWxpeXVuPlxyXG4gIFxyXG4gICAgPC92aWV3PlxyXG4gIDwvdmlldz5cclxuPC90ZW1wbGF0ZT5cclxuPHNjcmlwdD5cclxuaW1wb3J0IHN0b3JlIGZyb20gXCJAL3N0b3JlL2luZGV4LmpzXCI7XHJcbmltcG9ydCAkaHR0cCBmcm9tIFwiQC9jb25maWcvcmVxdWVzdENvbmZpZy5qc1wiO1xyXG5pbXBvcnQgeyBtYXBTdGF0ZSwgbWFwTXV0YXRpb25zIH0gZnJvbSBcInZ1ZXhcIjtcclxuXHJcbi8vIGltcG9ydFNjcmlwdHMoJ0Avc3RhdGljL2FsaXBsYXllci9hbGlwbGF5ZXItbWluLmpzJylcclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIHByb3BzOiBbXCJjdXJyZW50VmlkZW9cIiwgXCJjdXJyZW50VmlkZW9MaXN0XCJdLFxyXG4gIGRhdGEoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBwbGF0Zm9ybTogbnVsbCxcclxuICAgICAgLy/lvZPliY3mmK/lkKbmmK/lhajlsY/mqKHlvI9cclxuICAgICAgaXNGdWxsU2NyZWVuOiBmYWxzZSxcclxuICAgICAgaXNmcmVzaDogZmFsc2UsXHJcbiAgICAgIGlzQ2hhbmdlOiBmYWxzZSxcclxuICAgICAgaXNDb250cm9sOiB0cnVlLFxyXG4gICAgICB0aW1lcjogbnVsbCxcclxuICAgICAgdmlkZW9UaXRsZTogXCJcIixcclxuICAgICAgdmlkZW9MaXN0OiBbXSxcclxuICAgICAgZmlyc3RUaW1lOiAwLFxyXG4gICAgICBvcHRpb25zOiB7fSxcclxuICAgICAgcGxheUF1dGg6IFwiXCIsXHJcbiAgICAgIGN1cnJlbnRUaW1lOiBcIlwiLFxyXG4gICAgICB2aWRlb0lkOiBcIlwiLFxyXG4gICAgICB2aWRlb0RhdGE6IHt9LFxyXG4gICAgICBpc1NldEZpcnN0VGltZTogZmFsc2UsXHJcbiAgICAgIHNjcmVlblR5cGU6IG51bGwsXHJcbiAgICAgIHZpZGVvVXJsOiBudWxsLFxyXG4gICAgfTtcclxuICB9LFxyXG4gIGNvbXB1dGVkOiB7XHJcbiAgICAuLi5tYXBTdGF0ZShbXCJ2aWRlb09zc0xpc3RcIl0pLFxyXG4gIH0sXHJcblxyXG4gIHdhdGNoOiB7XHJcbiAgICBjdXJyZW50VmlkZW86IHtcclxuICAgICAgaW1tZWRpYXRlOiB0cnVlLFxyXG4gICAgICBoYW5kbGVyKG5ld1JvdXRlKSB7fSxcclxuICAgIH0sXHJcbiAgICB0aW1lcihuZXdWYWx1ZSkge1xyXG4gICAgICB0aGlzLiRlbWl0KFwiY2hpbGQtZXZlbnRcIiwgbmV3VmFsdWUpO1xyXG4gICAgfSxcclxuICB9LFxyXG5cclxuICAvLyAvL+mhtemdouaYvuekulxyXG4gIG1vdW50ZWQoKSB7fSxcclxuICBiZWZvcmVEZXN0cm95KCkge1xyXG4gICAgdGhpcy5oYW5kbGVFbmQoKTtcclxuICAgIGNvbnNvbGUubG9nKFwi5piv5ZCm6LWw5ZWm5Lmg6ZSA5q+BXCIpO1xyXG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLiRzdG9yZS5zdGF0ZS52aWRlb1RpbWVyKTtcclxuICAgIC8vIHRoaXMudGltZXIgPSBudWxsO1xyXG4gICAgLy8gc3RvcmUuY29tbWl0KFwic2V0TG9hZGluZ1Nob3dcIiwgbnVsbCk7XHJcbiAgICBwbHVzLnNjcmVlbi5sb2NrT3JpZW50YXRpb24oXCJwb3J0cmFpdC1wcmltYXJ5XCIpO1xyXG5cclxuICAgIGNvbnNvbGUubG9nKFwi5piv5ZCm6LWw5ZWm5Lmg6ZSA5q+B5a6a5pe25ZmoXCIsIHRoaXMudGltZXIpO1xyXG4gIH0sXHJcbiAgYXN5bmMgb25VbmxvYWQoKSB7XHJcbiAgICB1bmkubmF2aWdhdGVUbyh7XHJcbiAgICAgIHVybDogXCIvcGFnZXMvY3VycmljdWx1bS9vcmRlci9jdXJyaWN1bHVtL2JhY2tcIixcclxuICAgIH0pO1xyXG4gICAgLy8gI2lmZGVmIEFQUC1QTFVTXHJcbiAgICBwbHVzLnNjcmVlbi5sb2NrT3JpZW50YXRpb24oXCJwb3J0cmFpdC1wcmltYXJ5XCIpOyAvL+mUgeatu+Wxj+W5leaWueWQkeS4uuerluWxj1xyXG5cclxuICAgIC8vIHBsdXMuc2NyZWVuLmxvY2tPcmllbnRhdGlvbihcInBvcnRyYWl0LXByaW1hcnlcIik7XHJcbiAgICAvLyAjZW5kaWZcclxuXHJcbiAgICBhd2FpdCB0aGlzLnNldFZpZGVvVGltZSgpO1xyXG4gICAgLy8gdGhpcy5wbGF5ZXIuZGlzcG9zZSgpO1xyXG4gIH0sXHJcblxyXG4gIC8v56ys5LiA5qyh5Yqg6L29XHJcbiAgb25Mb2FkKG9wdGlvbnMpIHt9LFxyXG5cclxuICBtZXRob2RzOiB7XHJcbiAgICBjaGFuZ2VWaWRlb0RhdGEoKSB7XHJcbiAgICAgIHRoaXMuaXNDaGFuZ2UgPSBmYWxzZTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBjaGFuZ2VWaWRlbyhkYXRhKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudFRpbWUgPSBcIlwiO1xyXG4gICAgICB0aGlzLmZpcnN0VGltZSA9IDA7XHJcbiAgICAgIHRoaXMuaXNTZXRGaXJzdFRpbWUgPSBmYWxzZTtcclxuICAgICAgdGhpcy5pc0NoYW5nZSA9IGZhbHNlO1xyXG4gICAgICBhd2FpdCB0aGlzLmluaXQoZGF0YSwgdHJ1ZSk7XHJcbiAgICB9LFxyXG4gICAgc2NyZWVuQ2hhbmdlKGRhdGEpIHtcclxuICAgICAgY29uc29sZS5sb2coXHJcbiAgICAgICAgXCJzdGF0dXMgYXQgbGluZSDov5nmmK/lvZPliY3nmoTnirbmgIExNTg6XCIsXHJcbiAgICAgICAgZGF0YS5zdGF0dXMsXHJcbiAgICAgICAgZGF0YS5wcmltYXJ5XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuaXNGdWxsU2NyZWVuID0gIWRhdGEuc3RhdHVzO1xyXG4gICAgICB0aGlzLiRlbWl0KFwiY2hhbmdlU2NyZWVuXCIsIHRoaXMuaXNGdWxsU2NyZWVuKTtcclxuICAgICAgLy8gbGV0IGZ1bGxTY3JlZW4gPSBlLmRldGFpbC5mdWxsU2NyZWVuOyAvLyDlgLx0cnVl5Li66L+b5YWl5YWo5bGP77yMZmFsc2XkuLrpgIDlh7rlhajlsY9cclxuICAgICAgLy8gaWYgKCFmdWxsU2NyZWVuKSB7XHJcbiAgICAgIC8vICAgLy/pgIDlh7rlhajlsY9cclxuICAgICAgLy8gICB0aGlzLmlzRnVsbFNjcmVlbiA9IGZhbHNlO1xyXG4gICAgICAvLyB9IGVsc2Uge1xyXG4gICAgICAvLyAgIHRoaXMuaXNGdWxsU2NyZWVuID0gdHJ1ZTtcclxuICAgICAgLy8gfVxyXG4gICAgfSxcclxuICAgIC8vIOaOp+WItuWZqOeahOaYvuekuumakOiXj1xyXG4gICAgY29udHJvbENoYW5nZShlKSB7XHJcbiAgICAgIHRoaXMuaXNDb250cm9sID0gZS5kZXRhaWwuc2hvdztcclxuICAgIH0sXHJcbiAgICBxdWl0U2NyZWVuKCkge1xyXG4gICAgICAvLyDpgIDlh7rlhajlsY9cclxuICAgICAgY29uc3QgY3R4ID0gdGhpcy4kcmVmcy5teVZpZGVvO1xyXG4gICAgICBjdHguZXhpdEZ1bGxTY3JlZW4oKTtcclxuICAgIH0sXHJcbiAgICAvLyDmkq3mlL7ov5vluqbmlLnlj5hcclxuICAgIHZpZGVvVGltZVVwZGF0ZUV2ZW50KGUpIHtcclxuICAgICAgdGhpcy5wbGF5VGltZSA9IHBhcnNlSW50KGUuZGV0YWlsLmN1cnJlbnRUaW1lKTtcclxuICAgICAgdGhpcy5jdXJyZW50VGltZSA9IHBhcnNlSW50KGUuZGV0YWlsLmN1cnJlbnRUaW1lKTtcclxuXHJcbiAgICAgIHRoaXMuYWxsVGltZSA9IHBhcnNlSW50KGUuZGV0YWlsLmR1cmF0aW9uKTtcclxuXHJcbiAgICAgIHRoaXMucmVjb3JkVGltZSh7XHJcbiAgICAgICAgdGltZTogdGhpcy5wbGF5VGltZSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgYXN5bmMgaW5pdChkYXRhLCBpc0NoYW5nZSkge1xyXG4gICAgICB0aGlzLnBsYXRmb3JtID0gdGhpcy4kcGxhdGZvcm07XHJcbiAgICAgIHRoaXMuaXNmcmVzaCA9IHRydWU7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiYXQgbGluZSA1OTpcIiwgXCLmmK/lkKblhYjotbBpbml06L+Z6YeMXCIsIHRoaXMucGxhdGZvcm0pO1xyXG4gICAgICBpZiAodW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpKSB7XHJcbiAgICAgICAgdGhpcy52aWRlb0xpc3QgPSBKU09OLnBhcnNlKHVuaS5nZXRTdG9yYWdlU3luYyhcInZpZGVvT3NzTGlzdFwiKSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5vcHRpb25zID0gZGF0YS5jdXJyZW50VmlkZW87XHJcblxyXG4gICAgICB0aGlzLnZpZGVvSWQgPSB0aGlzLm9wdGlvbnMudmlkZW87XHJcbiAgICAgIGNvbnNvbGUubG9nKFwi6L+Z5piv6Iu55p6c6KeG5bGPaWRcIiwgdGhpcy52aWRlb0lkKTtcclxuICAgICAgYXdhaXQgdGhpcy5nZXRMaXZlKGlzQ2hhbmdlKTtcclxuICAgICAgLy8gICB0aGlzLiRlbWl0KFwiY2hpbGQtZXZlbnRcIiwgdGhpcy50aW1lcik7XHJcbiAgICB9LFxyXG4gICAgYXN5bmMgZ2V0RGF0YShkYXRhLCBpc0NoYW5nZSkge1xyXG4gICAgICBpZiAoIXRoaXMuaXNTZXRGaXJzdFRpbWUpIHtcclxuICAgICAgICB2YXIgbmV0V29yayA9IGRhdGEudXNlckNvdXJzZVZpZGVvUG9zaXRpb25FbnRpdHlcclxuICAgICAgICAgID8gZGF0YS51c2VyQ291cnNlVmlkZW9Qb3NpdGlvbkVudGl0eS5wb3NpdGlvblxyXG4gICAgICAgICAgOiAwO1xyXG4gICAgICAgIHZhciBsaXN0ID0gW107XHJcbiAgICAgICAgaWYgKHVuaS5nZXRTdG9yYWdlU3luYyhcInZpZGVvT3NzTGlzdFwiKSkge1xyXG4gICAgICAgICAgbGlzdCA9IEpTT04ucGFyc2UodW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpKTtcclxuICAgICAgICAgIHZhciBpbmRleCA9IGxpc3QuZmluZEluZGV4KChlKSA9PiBlLmlkID09IGRhdGEuaWQpO1xyXG5cclxuICAgICAgICAgIGlmIChuZXRXb3JrKSB7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5maXJzdFRpbWUgPVxyXG4gICAgICAgICAgICAgICAgbGlzdFtpbmRleF0udGltZSA+IG5ldFdvcmsgPyBsaXN0W2luZGV4XS50aW1lIDogbmV0V29yaztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmZpcnN0VGltZSA9IG5ldFdvcmsgPyBuZXRXb3JrIDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgICB0aGlzLmZpcnN0VGltZSA9IGxpc3RbaW5kZXhdLnRpbWUgPyBsaXN0W2luZGV4XS50aW1lIDogMDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmZpcnN0VGltZSA9IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5maXJzdFRpbWUgPSAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy52aWRlb0RhdGEgPSB7XHJcbiAgICAgICAgICAuLi5kYXRhLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5pc0NoYW5nZSA9IGlzQ2hhbmdlID8gaXNDaGFuZ2UgOiBmYWxzZTtcclxuICAgICAgICAvLyB0aGlzLmN1cnJlbnRUaW1lID0gdGhpcy5maXJzdFRpbWU7XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5maXJzdFRpbWUsIFwi6L+Z5piv56ys5LiA5qyh5pKt5pS+5pe26ZW/MjIyXCIpO1xyXG4gICAgICAgIC8vIGF3YWl0IHRoaXMuc2V0VmlkZW9UaW1lKCk7XHJcbiAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIsIEpTT04uc3RyaW5naWZ5KGxpc3QpKTtcclxuXHJcbiAgICAgICAgLy8gaWYgKHRoaXMuY3VycmVudFZpZGVvLnR5cGUgPT0gMCB8fCB0aGlzLmN1cnJlbnRWaWRlby50eXBlID09IDIpIHtcclxuICAgICAgICAvLyAgIGF3YWl0IHRoaXMucGxheVZpZGVvKCk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMuZmlyc3RUaW1lLCBcIui/meaYr+esrOS4gOasoeaSreaUvuaXtumVv1wiKTtcclxuXHJcbiAgICAgICAgdGhpcy5pc1NldEZpcnN0VGltZSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBhc3luYyBwbGF5VmlkZW8oZSkge1xyXG4gICAgICB0aGlzLnZpZGVvQ29udGV4dCA9IHVuaS5jcmVhdGVWaWRlb0NvbnRleHQoXCJ2aWRlb0lkXCIsIHRoaXMpO1xyXG4gICAgICB0aGlzLnZpZGVvQ29udGV4dC5zZWVrKHRoaXMuZmlyc3RUaW1lKTtcclxuXHJcbiAgICAgIC8vICAgdGhpcy52aWRlb0NvbnRleHQucmVxdWVzdEZ1bGxTY3JlZW4oKTtcclxuICAgIH0sXHJcbiAgICByZWNvcmRUaW1lKGRhdGEpIHtcclxuICAgICAgdGhpcy5jdXJyZW50VGltZSA9IGRhdGEudGltZTtcclxuXHJcbiAgICAgIHZhciBsaXN0ID0gW107XHJcbiAgICAgIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIikpIHtcclxuICAgICAgICBsaXN0ID0gSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIikpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB2YXIgaW5kZXggPSBsaXN0LmZpbmRJbmRleCgoZSkgPT4gZS5pZCA9PSB0aGlzLnZpZGVvRGF0YS5pZCk7XHJcbiAgICAgIGlmIChsaXN0Lmxlbmd0aCA+IDAgJiYgaW5kZXggPj0gMCkge1xyXG4gICAgICAgIGxpc3RbaW5kZXhdID0ge1xyXG4gICAgICAgICAgLi4udGhpcy52aWRlb0RhdGEsXHJcblxyXG4gICAgICAgICAgdGltZTogZGF0YS50aW1lLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGlzdC5wdXNoKHtcclxuICAgICAgICAgIC4uLnRoaXMudmlkZW9EYXRhLFxyXG4gICAgICAgICAgdGltZTogZGF0YS50aW1lLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXCJ2aWRlb09zc0xpc3RcIiwgSlNPTi5zdHJpbmdpZnkobGlzdCkpO1xyXG4gICAgfSxcclxuICAgIC8vIOiOt+WPluaVsOaNrlxyXG4gICAgYXN5bmMgZ2V0TGl2ZShpc0NoYW5nZSkge1xyXG4gICAgICB2YXIgdGhhdCA9IHRoaXM7XHJcbiAgICAgIHRoaXMuaXNmcmVzaCA9IGZhbHNlO1xyXG4gICAgICB2YXIgZGF0YSA9IHtcclxuICAgICAgICAuLi50aGlzLm9wdGlvbnMsXHJcbiAgICAgIH07XHJcblxyXG4gICAgICBhd2FpdCAkaHR0cFxyXG4gICAgICAgIC5yZXF1ZXN0KHtcclxuICAgICAgICAgIHVybDogYHNvY2lvbG9neS9jb3Vyc2UvY2hlY2tWaWRlb2AsXHJcbiAgICAgICAgICBtZXRob2Q6IFwiUG9zdFwiLCAvLyBQT1NU44CBR0VU44CBUFVU44CBREVMRVRF77yM5YW35L2T6K+05piO5p+l55yL5a6Y5pa55paH5qGjXHJcbiAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgaGVhZGVyOiB7XHJcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcclxuICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgdmFyIGRhdGEgPSB7XHJcbiAgICAgICAgICAgIC4uLnJlcy52aWRlbyxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBpZiAodGhpcy5jdXJyZW50VmlkZW8udHlwZSA9PSAxKSB7XHJcbiAgICAgICAgICAgIHZhciBwbGF5QXV0aCA9IHJlcy52aWRlby5wbGF5QXV0aC5yZXBsYWNlKC89L2csIFwiXCIpO1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIui/meaYr+aOpeWPo+iOt+WPlueahOinhuWxj+WHreivgTExMVwiLCBwbGF5QXV0aCk7XHJcbiAgICAgICAgICAgIGRhdGEgPSB7XHJcbiAgICAgICAgICAgICAgLi4uZGF0YSxcclxuICAgICAgICAgICAgICB2aWRlb0lkOiByZXMudmlkZW8udmlkZW8sXHJcbiAgICAgICAgICAgICAgcGxheUF1dGg6IHBsYXlBdXRoLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGlzLnBsYXlBdXRoID0gcGxheUF1dGg7XHJcblxyXG4gICAgICAgICAgICBhd2FpdCB0aGF0LmdldERhdGEoZGF0YSwgaXNDaGFuZ2UpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCLov5nmmK/mjqXlj6Pojrflj5bnmoTop4blsY/lh63or4EyMjJcIiwgcmVzLnZpZGVvLCBkYXRhKTtcclxuICAgICAgICAgICAgZGF0YSA9IHtcclxuICAgICAgICAgICAgICAuLi5kYXRhLFxyXG4gICAgICAgICAgICAgIHBsYXlBdXRoOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgYXdhaXQgdGhhdC5nZXREYXRhKGRhdGEsIGlzQ2hhbmdlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwi5piv5ZCm6I635Y+W5Yiw5Yid5aeL5pKt5pS+5YC8XCIsIGRhdGEpO1xyXG5cclxuICAgICAgICAgIHRoYXQuJGZvcmNlVXBkYXRlKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgYXN5bmMgaGFuZGxlRW5kKCkge1xyXG4gICAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpKSk7XHJcbiAgICAgIHZhciBkYXRhID0gbGlzdC5maW5kKChlKSA9PiBlLmlkID09IHRoaXMudmlkZW9EYXRhLmlkKTtcclxuICAgICAgdGhpcy5jdXJyZW50VGltZSA9IGRhdGEudGltZTtcclxuICAgICAgY29uc29sZS5sb2coXHJcbiAgICAgICAgXCJ0aGlzLmN1cnJlbnRUaW1lIGF0IGxpbmUg6L+Z5piv57uT5p2f55qE5pe25YCZ5o6J55qE5a2Y5YKo6KeG6aKROlwiLFxyXG4gICAgICAgIHRoaXMuY3VycmVudFRpbWVcclxuICAgICAgKTtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLiRzdG9yZS5zdGF0ZS52aWRlb1RpbWVyKTtcclxuICAgICAgdGhpcy50aW1lciA9IG51bGw7XHJcblxyXG4gICAgICBhd2FpdCB0aGlzLnNldFZpZGVvVGltZSgpO1xyXG4gICAgfSxcclxuICAgIHNldFZpZGVvVGltZSh0aW1lKSB7XHJcbiAgICAgIHZhciBkYXRhID0ge307XHJcbiAgICAgIC8vIHZhciBsaXN0ID0gdW5pLmdldFN0b3JhZ2VTeW5jKFwidmlkZW9Pc3NMaXN0XCIpO1xyXG5cclxuICAgICAgLy8gZGF0YSA9IGxpc3QuZmluZCgoZSkgPT4gZS5pZCA9PSB0aGlzLnZpZGVvRGF0YS5pZCk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwi6L+Z5piv5YaN6LWw55Sf5ZG95ZGo5pyf5ZOmXCIsIHRoaXMuY3VycmVudFRpbWUpO1xyXG4gICAgICBjb25zb2xlLmxvZyhcIuaYr+WQpui1sOS6huWtmOWCqOinhuWxjyxcIiArIHRoaXMudmlkZW9EYXRhLmlkLCB0aGlzLmN1cnJlbnRUaW1lKTtcclxuICAgICAgdmFyIGRhdGEgPSB7XHJcbiAgICAgICAgdmlkZW9JZDogdGhpcy52aWRlb0RhdGEuaWQsXHJcbiAgICAgICAgcG9zaXRpb246IHRoaXMuY3VycmVudFRpbWUsIC8v56eS5pWwXHJcbiAgICAgIH07XHJcblxyXG4gICAgICAkaHR0cFxyXG4gICAgICAgIC5yZXF1ZXN0KHtcclxuICAgICAgICAgIHVybDogYHNvY2lvbG9neS9jb3Vyc2Uvc2F2ZUNvdXJzZVBvc2l0aW9uYCxcclxuICAgICAgICAgIG1ldGhvZDogXCJQb3N0XCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICBoZWFkZXI6IHtcclxuICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxyXG4gICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIuWtmOWCqOinhuWxj+aXtumVv+aOpeWPo+i/lOWbnuS/oeaBr1wiLCByZXMpO1xyXG4gICAgICAgICAgdGhpcy4kZm9yY2VVcGRhdGUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH0sXHJcbiAgICBjaGFuZ2VQbGF5ZXJUaW1lKHBsYXllcikge1xyXG4gICAgICBjb25zb2xlLmxvZyhcInRoaXMuZmlyc3RUaW1lIGF0IGxpbmUgMTA2OlwiLCB0aGlzLmZpcnN0VGltZSk7XHJcbiAgICAgIHBsYXllci5zZWVrKHRoaXMuZmlyc3RUaW1lKTtcclxuICAgIH0sXHJcbiAgICBnb0JhY2soKSB7XHJcbiAgICAgIHVuaS5uYXZpZ2F0ZUJhY2soe1xyXG4gICAgICAgIGRlbHRhOiAxLFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcblxyXG4gICAgYXN5bmMgc2V0VmlkZW9GaXJ0c2V0VGltZSh0aW1lKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudFRpbWUgPSB0aGlzLmZpcnN0VGltZTtcclxuICAgICAgY29uc29sZS5sb2coXCLov5nph4zlh4blpIflvIDlp4vorr7nva7mkq3mlL7ml7bpl7Q6XCIsIHRoaXMuY3VycmVudFRpbWUpO1xyXG4gICAgICAvLyBhd2FpdCB0aGlzLnNldFZpZGVvVGltZSgpO1xyXG4gICAgICAvLyBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgLy8gY2xlYXJJbnRlcnZhbCh0aGlzLiRzdG9yZS5zdGF0ZS52aWRlb1RpbWVyKTtcclxuXHJcbiAgICAgIHN0b3JlLmNvbW1pdChcclxuICAgICAgICBcInNldFZpZGVvVGltZXJcIixcclxuICAgICAgICBzZXRJbnRlcnZhbChhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICAvLyBpZiAodGhpcy5jdXJyZW50VGltZSkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5zZXRWaWRlb1RpbWUoKTtcclxuICAgICAgICAgIC8vIH1cclxuICAgICAgICB9LCA2MDAwMClcclxuICAgICAgKTtcclxuICAgICAgLy8gfSwgNTAwMCk7XHJcbiAgICB9LFxyXG4gIH0sXHJcblxyXG4gIGNyZWF0ZWQoKSB7fSxcclxufTtcclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGU+XHJcbi5jb250YWluZXIge1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gIC9kZWVwLy5wYXVzZSB7XHJcbiAgICB3aWR0aDogNjBycHggIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogNjBycHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5mZHMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XHJcbiAgaGVpZ2h0OiA2MDBycHg7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNjBycHg7XHJcbn1cclxuXHJcbi5yZXR1cm5CYWNrIHtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGhlaWdodDogODhycHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHJweDtcclxufVxyXG5cclxuLnR4dCB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5yaWdodF90aXRsZSB7XHJcbiAgYmFja2dyb3VuZDogIzAwMDtcclxuICBoZWlnaHQ6IDk2cnB4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi5yZXR1cm4ge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnJpZ2h0X2hhbmRsZSB7XHJcbiAgd2lkdGg6IDIwMHJweDtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgcGFkZGluZy1yaWdodDogMjBycHg7XHJcbn1cclxuXHJcbmNvdmVyLXZpZXcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG59XHJcblxyXG5jb3Zlci12aWV3IHtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmNvdmVyLWltYWdlIHtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mdWxsU2NyZWVuQnV0dG9uLWNvbnRhaW5lciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIGhlaWdodDogMzVweDtcclxuICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgaSB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogN3B4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICYgKyBpIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgJjpob3ZlciArIC5wbGF5ZXItdG9vbHRpcCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wbGF5ZXItdG9vbHRpcCB7XHJcbiAgICAmLnByZXYge1xyXG4gICAgICBsZWZ0OiAtMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmxpc3Qge1xyXG4gICAgICBsZWZ0OiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5uZXh0IHtcclxuICAgICAgcmlnaHQ6IC0xMnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnBsYXlsaXN0LWNvbnRlbnQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB3aWR0aDogMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiA0OHB4O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjM4cyBlYXNlLWluLW91dDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAubGlzdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcblxyXG4gICAgLnZpZGVvLWl0ZW0ge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgcGFkZGluZzogMHB4IDEwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgICAgICBjb2xvcjogIzAwZGRmZjtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgY29sb3I6ICMwMGRkZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucGxheWVyLXRvb2x0aXAge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBsaW5lLWhlaWdodDogMjhweDtcclxuICBsZXR0ZXItc3BhY2luZzogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZDogIzNjM2MzYztcclxuICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gIGhlaWdodDogMjhweDtcclxuICB0b3A6IC00OHB4O1xyXG4gIHBhZGRpbmc6IDAgNXB4O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5wbGF5bGlzdC1za2lwLXRpcCB7XHJcbiAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB6LWluZGV4OiAzMDtcclxuICBsaW5lLWhlaWdodDogMzBweDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICBjb2xvcjogIzAwMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbiNyb3RhdGluZy1kaXYge1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDk4ZGI7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gIC8qIOaXi+i9rDkw5bqmICovXHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuICAvKiDorr7nva7ml4vovazkuK3lv4PngrnlnKhkaXbkuK3lv4MgKi9cclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgLyog5Zu65a6a5a6a5L2N77yM5YWo5bGP5pi+56S6ICovXHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcbjwvc3R5bGU+XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///1050\n");
/***/ }),
/* 1051 */
diff --git a/unpackage/dist/dev/app-plus/app-view.js b/unpackage/dist/dev/app-plus/app-view.js
index 300ee1a..e508fc3 100644
--- a/unpackage/dist/dev/app-plus/app-view.js
+++ b/unpackage/dist/dev/app-plus/app-view.js
@@ -52279,7 +52279,7 @@ module.exports = exports;
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& */ 1149);
+/* harmony import */ var _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& */ 1149);
/* harmony import */ var _AliPlayer_vue_vue_type_renderjs_module_renderScript_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=renderjs&module=renderScript&lang=js& */ 1151);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _AliPlayer_vue_vue_type_renderjs_module_renderScript_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _AliPlayer_vue_vue_type_renderjs_module_renderScript_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AliPlayer.vue?vue&type=script&lang=js& */ 1156);
@@ -52299,14 +52299,14 @@ _AliPlayer_vue_vue_type_renderjs_module_renderScript_lang_js___WEBPACK_IMPORTED_
var component = Object(_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__["default"])(
_AliPlayer_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_2__["default"],
- _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"],
- _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
"671bb748",
null,
false,
- _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"],
+ _AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"],
_AliPlayer_vue_vue_type_renderjs_module_renderScript_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"]
)
@@ -52316,28 +52316,28 @@ component.options.__file = "pages/component/commonComponents/video/AliPlayer.vue
/***/ }),
/* 1149 */
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& ***!
+ !*** D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& */ 1150);
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../软件/软件/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& */ 1150);
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["render"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_AliPlayer_vue_vue_type_template_id_671bb748_scoped_true_filter_modules_eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ_3D_3D___WEBPACK_IMPORTED_MODULE_0__["components"]; });
/***/ }),
/* 1150 */
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyMSwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6Mjk5NzF9fQ%3D%3D& ***!
+ !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!D:/0--------------------xulu/sociology_app/pages/component/commonComponents/video/AliPlayer.vue?vue&type=template&id=671bb748&scoped=true&filter-modules=eyJyZW5kZXJTY3JpcHQiOnsidHlwZSI6InJlbmRlcmpzIiwiY29udGVudCI6IiIsInN0YXJ0IjoxNDkyNiwiYXR0cnMiOnsibW9kdWxlIjoicmVuZGVyU2NyaXB0IiwibGFuZyI6ImpzIn0sImVuZCI6MzA3MzB9fQ%3D%3D& ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -52417,7 +52417,7 @@ var render = function () {
staticClass: _vm._$g(1, "sc"),
style: _vm._$g(1, "s"),
attrs: {
- id: "videoContent",
+ id: "url-player-test",
source: _vm._$gc(1, "change:source"),
vid: _vm._$gc(1, "change:vid"),
playauth: _vm._$gc(1, "change:playauth"),
@@ -52586,22 +52586,26 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
+var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 1273));
+var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 1275));
var _jquery = _interopRequireDefault(__webpack_require__(/*! jquery */ 1153));
var _default = {
name: "Aliplayer",
data: function data() {
return {
- playerId: "aliplayer_" + Math.random().toString(36).substr(2),
+ // playerId: "aliplayer_" + Math.random().toString(36).substr(2),
+ playerId: "J_prismPlayer",
scriptTagStatus: 0,
isReload: false,
instance: null
};
},
created: function created() {
- this.loadWebPlayerSDK();
+ __f__("log", 'at line 584:', '是否走了', " at pages/component/commonComponents/video/AliPlayer.vue:17");
},
beforeDestroy: function beforeDestroy() {},
mounted: function mounted() {
+ this.loadWebPlayerSDK();
// if (window.Aliplayer !== undefined) {
// // 如果全局对象存在,说明编辑器代码已经初始化完成,直接加载编辑器
// this.scriptTagStatus = 2;
@@ -52611,20 +52615,22 @@ var _default = {
// this.insertScriptTag();
// }
},
+
methods: {
checkValue: function checkValue() {
var _this2 = this;
var _this = this;
- __f__("log", 'check是否获取到了授权', _this.playauth, " at pages/component/commonComponents/video/AliPlayer.vue:35");
+ __f__("log", 'check是否获取到了授权', _this.playauth, " at pages/component/commonComponents/video/AliPlayer.vue:41");
// console.log(this.videoId, this.authId, this.videoData, "1111888888")
- if (!_this.playauth) {
+ if (!_this.playauth && _this.scriptTagStatus != 2) {
setTimeout(function () {
_this2.checkValue();
}, 1000);
} else {
- __f__("log", '渲染加载视频开始', " at pages/component/commonComponents/video/AliPlayer.vue:42");
- this.scriptTagStatus = 2;
- this.initAliplayer();
+ __f__("log", '渲染加载视频开始', " at pages/component/commonComponents/video/AliPlayer.vue:48");
+ setTimeout(function () {
+ _this.initAliplayer();
+ }, 2000);
}
},
loadWebPlayerSDK: function loadWebPlayerSDK() {
@@ -52632,7 +52638,9 @@ var _default = {
return new Promise(function (resolve, reject) {
var s_tag = document.createElement('script'); // 引入播放器js
s_tag.type = 'text/javascript';
- s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.20.3/aliplayer-min.js';
+ // s_tag.src = 'https://g.alicdn.com/de/prismplayer/2.9.3/aliplayer-min.js';
+ s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.16.3/aliplayer-min.js';
+ // s_tag.src = 'https://g.alicdn.com/apsara-media-box/imp-web-player/2.20.3/aliplayer-min.js';
s_tag.charset = 'utf-8';
s_tag.onload = function () {
var s_tag1 = document.createElement('script'); // 引入播放器js
@@ -52640,6 +52648,7 @@ var _default = {
s_tag1.src = 'https://player.alicdn.com/aliplayer/presentation/js/aliplayercomponents.min.js';
s_tag1.charset = 'utf-8';
s_tag1.onload = function () {
+ _this3.scriptTagStatus = 2;
_this3.checkValue();
resolve();
};
@@ -52677,142 +52686,160 @@ var _default = {
},
initAliplayer: function initAliplayer() {
var _this4 = this;
- var _this = this;
- // scriptTagStatus 为 2 的时候,说明两个必需引入的 js 文件都已经被引入,且加载完成
- if (_this.scriptTagStatus === 2 && (_this.instance === null || _this.reloadPlayer)) {
- _this.instance && _this.instance.dispose();
- (0, _jquery.default)("#videoContent").innerHTML = "";
- // document.querySelector( = "";
+ return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
+ var _this;
+ return _regenerator.default.wrap(function _callee$(_context) {
+ while (1) {
+ switch (_context.prev = _context.next) {
+ case 0:
+ _this = _this4; // scriptTagStatus 为 2 的时候,说明两个必需引入的 js 文件都已经被引入,且加载完成
+ if (_this.scriptTagStatus === 2 && (_this.instance === null || _this.reloadPlayer)) {
+ _this.instance && _this.instance.dispose();
+ // $("#" + _this.playerId).innerHTML = "";
+ // document.querySelector( = "";
- // Vue 异步执行 DOM 更新,这样一来代码执行到这里的时候可能 template 里面的 script 标签还没真正创建
- // 所以,我们只能在 nextTick 里面初始化 Aliplayer
- _this.$nextTick(function () {
- _this.instance = new Aliplayer({
- id: 'videoContent',
- source: _this.source,
- vid: _this.vid,
- playauth: _this.playauth,
- width: _this.width,
- height: _this.height,
- videoWidth: _this.videoWidth,
- videoHeight: _this.videoHeight,
- preload: _this.preload,
- cover: false,
- isLive: _this.isLive,
- autoplay: _this.autoplay,
- rePlay: _this.rePlay,
- useH5Prism: _this.useH5Prism,
- useFlashPrism: _this.useFlashPrism,
- playsinline: _this.playsinline,
- showBuffer: _this.showBuffer,
- skinRes: _this.skinRes,
- skinLayout: _this.skinLayout,
- controlBarVisibility: _this.controlBarVisibility,
- showBarTime: _this.showBarTime,
- extraInfo: _this.extraInfo,
- enableSystemMenu: _this.enableSystemMenu,
- format: _this.format,
- mediaType: _this.mediaType,
- qualitySort: _this.qualitySort,
- definition: _this.definition,
- defaultDefinition: _this.defaultDefinition,
- x5_type: _this.x5_type,
- x5_fullscreen: _this.x5_fullscreen,
- x5_video_position: _this.x5_video_position,
- x5_orientation: _this.x5_orientation,
- x5LandscapeAsFullScreen: _this.x5LandscapeAsFullScreen,
- autoPlayDelay: _this.autoPlayDelay,
- autoPlayDelayDisplayText: _this.autoPlayDelayDisplayText,
- language: _this.language,
- languageTexts: _this.languageTexts,
- snapshot: _this.snapshot,
- snapshotWatermark: _this.snapshotWatermark,
- useHlsPluginForSafari: _this.useHlsPluginForSafari,
- enableStashBufferForFlv: _this.enableStashBufferForFlv,
- stashInitialSizeForFlv: _this.stashInitialSizeForFlv,
- loadDataTimeout: _this.loadDataTimeout,
- waitingTimeout: _this.waitingTimeout,
- liveStartTime: _this.liveStartTime,
- liveTimeShiftUrl: _this.liveTimeShiftUrl,
- liveShiftSource: _this.liveShiftSource,
- recreatePlayer: _this.recreatePlayer,
- diagnosisButtonVisible: _this.diagnosisButtonVisible,
- disableSeek: _this.disableSeek,
- encryptType: _this.encryptType,
- progressMarkers: _this.progressMarkers,
- vodRetry: _this.vodRetry,
- liveRetry: _this.liveRetry
- });
+ // Vue 异步执行 DOM 更新,这样一来代码执行到这里的时候可能 template 里面的 script 标签还没真正创建
+ // 所以,我们只能在 nextTick 里面初始化 Aliplayer
+ // console.log(_this.playerId,_this.playauth,'98989')
- // 绑定事件,当 AliPlayer 初始化完成后,将编辑器实例通过自定义的 ready 事件交出去
- _this.instance.on("ready", function () {
- _this4.$emit("ready", _this.instance);
- });
- _this.instance.on("play", function () {
- _this4.$emit("play", _this.instance);
- });
- _this.instance.on("pause", function () {
- _this4.$emit("pause", _this.instance);
- });
- _this.instance.on("ended", function () {
- _this4.$emit("ended", _this.instance);
- });
- _this.instance.on("liveStreamStop", function () {
- _this4.$emit("liveStreamStop", _this.instance);
- });
- _this.instance.on("m3u8Retry", function () {
- _this4.$emit("m3u8Retry", _this.instance);
- });
- _this.instance.on("hideBar", function () {
- _this4.$emit("hideBar", _this.instance);
- });
- _this.instance.on("waiting", function () {
- _this4.$emit("waiting", _this.instance);
- });
- _this.instance.on("snapshoted", function () {
- _this4.$emit("snapshoted", _this.instance);
- });
- _this.instance.on("timeupdate", function () {
- _this4.$emit("timeupdate", _this.instance);
- });
- _this.instance.on("requestFullScreen", function () {
- _this4.$emit("requestFullScreen", _this.instance);
- });
- _this.instance.on("cancelFullScreen", function () {
- _this4.$emit("cancelFullScreen", _this.instance);
- });
- _this.instance.on("error", function () {
- _this4.$emit("error", _this.instance);
- });
- var start = true;
- var startProgress = 0;
- var endProgress = 0;
- //禁止拖动进度条
- _this.instance.on("startSeek", function (e) {
- if (start) {
- start = false;
- startProgress = _this.instance.getCurrentTime();
+ _this.$nextTick(function () {
+ _this.instance = new Aliplayer({
+ id: "url-player-test",
+ // source: _this.source,
+ vid: _this.vid,
+ playauth: _this.playauth,
+ width: '100%',
+ height: _this.height,
+ playsinline: true,
+ controlBarVisibility: "click",
+ // videoWidth: _this.videoWidth,
+ // videoHeight: _this.videoHeight,
+ // preload: _this.preload,
+ cover: "",
+ // isLive: _this.isLive,
+ // autoplay: _this.autoplay,
+ // rePlay: _this.rePlay,
+ // useH5Prism: _this.useH5Prism,
+ // useFlashPrism: _this.useFlashPrism,
+ // playsinline: _this.playsinline,
+ // showBuffer: _this.showBuffer,
+ // skinRes: _this.skinRes,
+ skinLayout: _this.skinLayout,
+ // controlBarVisibility: _this.controlBarVisibility,
+ // showBarTime: _this.showBarTime,
+ // extraInfo: _this.extraInfo,
+ // enableSystemMenu: _this.enableSystemMenu,
+ // format: _this.format,
+ // mediaType: _this.mediaType,
+ // qualitySort: _this.qualitySort,
+ // definition: _this.definition,
+ // defaultDefinition: _this.defaultDefinition,
+ // x5_type: _this.x5_type,
+ // x5_fullscreen: _this.x5_fullscreen,
+ // x5_video_position: _this.x5_video_position,
+ // x5_orientation: _this.x5_orientation,
+ // x5LandscapeAsFullScreen: _this.x5LandscapeAsFullScreen,
+ // autoPlayDelay: _this.autoPlayDelay,
+ // autoPlayDelayDisplayText: _this.autoPlayDelayDisplayText,
+ // language: _this.language,
+ // languageTexts: _this.languageTexts,
+ // snapshot: _this.snapshot,
+ // snapshotWatermark: _this.snapshotWatermark,
+ // useHlsPluginForSafari: _this.useHlsPluginForSafari,
+ // enableStashBufferForFlv: _this.enableStashBufferForFlv,
+ // stashInitialSizeForFlv: _this.stashInitialSizeForFlv,
+ // loadDataTimeout: _this.loadDataTimeout,
+ // waitingTimeout: _this.waitingTimeout,
+ // liveStartTime: _this.liveStartTime,
+ // liveTimeShiftUrl: _this.liveTimeShiftUrl,
+ // liveShiftSource: _this.liveShiftSource,
+ // recreatePlayer: _this.recreatePlayer,
+ // diagnosisButtonVisible: _this.diagnosisButtonVisible,
+ // disableSeek: _this.disableSeek,
+ encryptType: _this.encryptType,
+ "playConfig": {
+ "EncryptType": 'AliyunVoDEncryption'
+ }
+ // progressMarkers: _this.progressMarkers,
+ // vodRetry: _this.vodRetry,
+ // liveRetry: _this.liveRetry,
+ });
+
+ // 绑定事件,当 AliPlayer 初始化完成后,将编辑器实例通过自定义的 ready 事件交出去
+ _this.instance.on("ready", function () {
+ _this4.$emit("ready", _this.instance);
+ });
+ _this.instance.on("play", function () {
+ _this4.$emit("play", _this.instance);
+ });
+ _this.instance.on("pause", function () {
+ _this4.$emit("pause", _this.instance);
+ });
+ _this.instance.on("ended", function () {
+ _this4.$emit("ended", _this.instance);
+ });
+ _this.instance.on("liveStreamStop", function () {
+ _this4.$emit("liveStreamStop", _this.instance);
+ });
+ _this.instance.on("m3u8Retry", function () {
+ _this4.$emit("m3u8Retry", _this.instance);
+ });
+ _this.instance.on("hideBar", function () {
+ _this4.$emit("hideBar", _this.instance);
+ });
+ _this.instance.on("waiting", function () {
+ _this4.$emit("waiting", _this.instance);
+ });
+ _this.instance.on("snapshoted", function () {
+ _this4.$emit("snapshoted", _this.instance);
+ });
+ _this.instance.on("timeupdate", function () {
+ _this4.$emit("timeupdate", _this.instance);
+ });
+ _this.instance.on("requestFullScreen", function () {
+ _this4.$emit("requestFullScreen", _this.instance);
+ });
+ _this.instance.on("cancelFullScreen", function () {
+ _this4.$emit("cancelFullScreen", _this.instance);
+ });
+ _this.instance.on("error", function () {
+ _this4.$emit("error", _this.instance);
+ });
+ var start = true;
+ // let startProgress = 0;
+ // let endProgress = 0;
+ // //禁止拖动进度条
+ // _this.instance.on("startSeek", (e) => {
+ // if (start) {
+ // start = false;
+ // startProgress = _this.instance.getCurrentTime();
+ // }
+ // _this.instance.pause();
+ // // this.$emit("startSeek", _this.instance);
+ // });
+
+ // //禁止拖动进度条
+ // _this.instance.on("completeSeek", () => {
+ // start = true;
+ // endProgress = _this.instance.getCurrentTime();
+ // if (endProgress < startProgress) {
+ // _this.instance.seek(endProgress);
+ // } else {
+ // _this.instance.seek(startProgress);
+ // }
+ // _this.instance.play();
+ // // this.$emit("completeSeek", _this.instance);
+ // });
+ });
+ }
+ case 2:
+ case "end":
+ return _context.stop();
}
- _this.instance.pause();
- // this.$emit("startSeek", _this.instance);
- });
-
- //禁止拖动进度条
- _this.instance.on("completeSeek", function () {
- start = true;
- endProgress = _this.instance.getCurrentTime();
- if (endProgress < startProgress) {
- _this.instance.seek(endProgress);
- } else {
- _this.instance.seek(startProgress);
- }
- _this.instance.play();
- // this.$emit("completeSeek", _this.instance);
- });
- });
- }
+ }
+ }, _callee);
+ }))();
},
-
/**
* 播放视频
*/
@@ -66087,5 +66114,391 @@ exports.push([module.i, "@charset \"UTF-8\";\n/**\n * 这里是uni-app内置的
module.exports = exports;
+/***/ }),
+/* 1273 */
+/*!**********************************************************!*\
+ !*** ./node_modules/@babel/runtime/regenerator/index.js ***!
+ \**********************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 1155);
+// TODO(Babel 8): Remove this file.
+
+var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ 1274)();
+module.exports = runtime;
+
+// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
+try {
+ regeneratorRuntime = runtime;
+} catch (accidentalStrictMode) {
+ if ((typeof globalThis === "undefined" ? "undefined" : _typeof(globalThis)) === "object") {
+ globalThis.regeneratorRuntime = runtime;
+ } else {
+ Function("r", "regeneratorRuntime = r")(runtime);
+ }
+}
+
+/***/ }),
+/* 1274 */
+/*!*******************************************************************!*\
+ !*** ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var _typeof = __webpack_require__(/*! ./typeof.js */ 1155)["default"];
+function _regeneratorRuntime() {
+ "use strict";
+
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
+ module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
+ return e;
+ }, module.exports.__esModule = true, module.exports["default"] = module.exports;
+ var t,
+ e = {},
+ r = Object.prototype,
+ n = r.hasOwnProperty,
+ o = Object.defineProperty || function (t, e, r) {
+ t[e] = r.value;
+ },
+ i = "function" == typeof Symbol ? Symbol : {},
+ a = i.iterator || "@@iterator",
+ c = i.asyncIterator || "@@asyncIterator",
+ u = i.toStringTag || "@@toStringTag";
+ function define(t, e, r) {
+ return Object.defineProperty(t, e, {
+ value: r,
+ enumerable: !0,
+ configurable: !0,
+ writable: !0
+ }), t[e];
+ }
+ try {
+ define({}, "");
+ } catch (t) {
+ define = function define(t, e, r) {
+ return t[e] = r;
+ };
+ }
+ function wrap(t, e, r, n) {
+ var i = e && e.prototype instanceof Generator ? e : Generator,
+ a = Object.create(i.prototype),
+ c = new Context(n || []);
+ return o(a, "_invoke", {
+ value: makeInvokeMethod(t, r, c)
+ }), a;
+ }
+ function tryCatch(t, e, r) {
+ try {
+ return {
+ type: "normal",
+ arg: t.call(e, r)
+ };
+ } catch (t) {
+ return {
+ type: "throw",
+ arg: t
+ };
+ }
+ }
+ e.wrap = wrap;
+ var h = "suspendedStart",
+ l = "suspendedYield",
+ f = "executing",
+ s = "completed",
+ y = {};
+ function Generator() {}
+ function GeneratorFunction() {}
+ function GeneratorFunctionPrototype() {}
+ var p = {};
+ define(p, a, function () {
+ return this;
+ });
+ var d = Object.getPrototypeOf,
+ v = d && d(d(values([])));
+ v && v !== r && n.call(v, a) && (p = v);
+ var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
+ function defineIteratorMethods(t) {
+ ["next", "throw", "return"].forEach(function (e) {
+ define(t, e, function (t) {
+ return this._invoke(e, t);
+ });
+ });
+ }
+ function AsyncIterator(t, e) {
+ function invoke(r, o, i, a) {
+ var c = tryCatch(t[r], t, o);
+ if ("throw" !== c.type) {
+ var u = c.arg,
+ h = u.value;
+ return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
+ invoke("next", t, i, a);
+ }, function (t) {
+ invoke("throw", t, i, a);
+ }) : e.resolve(h).then(function (t) {
+ u.value = t, i(u);
+ }, function (t) {
+ return invoke("throw", t, i, a);
+ });
+ }
+ a(c.arg);
+ }
+ var r;
+ o(this, "_invoke", {
+ value: function value(t, n) {
+ function callInvokeWithMethodAndArg() {
+ return new e(function (e, r) {
+ invoke(t, n, e, r);
+ });
+ }
+ return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
+ }
+ });
+ }
+ function makeInvokeMethod(e, r, n) {
+ var o = h;
+ return function (i, a) {
+ if (o === f) throw Error("Generator is already running");
+ if (o === s) {
+ if ("throw" === i) throw a;
+ return {
+ value: t,
+ done: !0
+ };
+ }
+ for (n.method = i, n.arg = a;;) {
+ var c = n.delegate;
+ if (c) {
+ var u = maybeInvokeDelegate(c, n);
+ if (u) {
+ if (u === y) continue;
+ return u;
+ }
+ }
+ if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
+ if (o === h) throw o = s, n.arg;
+ n.dispatchException(n.arg);
+ } else "return" === n.method && n.abrupt("return", n.arg);
+ o = f;
+ var p = tryCatch(e, r, n);
+ if ("normal" === p.type) {
+ if (o = n.done ? s : l, p.arg === y) continue;
+ return {
+ value: p.arg,
+ done: n.done
+ };
+ }
+ "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
+ }
+ };
+ }
+ function maybeInvokeDelegate(e, r) {
+ var n = r.method,
+ o = e.iterator[n];
+ if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
+ var i = tryCatch(o, e.iterator, r.arg);
+ if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
+ var a = i.arg;
+ return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
+ }
+ function pushTryEntry(t) {
+ var e = {
+ tryLoc: t[0]
+ };
+ 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
+ }
+ function resetTryEntry(t) {
+ var e = t.completion || {};
+ e.type = "normal", delete e.arg, t.completion = e;
+ }
+ function Context(t) {
+ this.tryEntries = [{
+ tryLoc: "root"
+ }], t.forEach(pushTryEntry, this), this.reset(!0);
+ }
+ function values(e) {
+ if (e || "" === e) {
+ var r = e[a];
+ if (r) return r.call(e);
+ if ("function" == typeof e.next) return e;
+ if (!isNaN(e.length)) {
+ var o = -1,
+ i = function next() {
+ for (; ++o < e.length;) {
+ if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
+ }
+ return next.value = t, next.done = !0, next;
+ };
+ return i.next = i;
+ }
+ }
+ throw new TypeError(_typeof(e) + " is not iterable");
+ }
+ return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
+ value: GeneratorFunctionPrototype,
+ configurable: !0
+ }), o(GeneratorFunctionPrototype, "constructor", {
+ value: GeneratorFunction,
+ configurable: !0
+ }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
+ var e = "function" == typeof t && t.constructor;
+ return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
+ }, e.mark = function (t) {
+ return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
+ }, e.awrap = function (t) {
+ return {
+ __await: t
+ };
+ }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
+ return this;
+ }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
+ void 0 === i && (i = Promise);
+ var a = new AsyncIterator(wrap(t, r, n, o), i);
+ return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
+ return t.done ? t.value : a.next();
+ });
+ }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
+ return this;
+ }), define(g, "toString", function () {
+ return "[object Generator]";
+ }), e.keys = function (t) {
+ var e = Object(t),
+ r = [];
+ for (var n in e) {
+ r.push(n);
+ }
+ return r.reverse(), function next() {
+ for (; r.length;) {
+ var t = r.pop();
+ if (t in e) return next.value = t, next.done = !1, next;
+ }
+ return next.done = !0, next;
+ };
+ }, e.values = values, Context.prototype = {
+ constructor: Context,
+ reset: function reset(e) {
+ if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) {
+ "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
+ }
+ },
+ stop: function stop() {
+ this.done = !0;
+ var t = this.tryEntries[0].completion;
+ if ("throw" === t.type) throw t.arg;
+ return this.rval;
+ },
+ dispatchException: function dispatchException(e) {
+ if (this.done) throw e;
+ var r = this;
+ function handle(n, o) {
+ return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
+ }
+ for (var o = this.tryEntries.length - 1; o >= 0; --o) {
+ var i = this.tryEntries[o],
+ a = i.completion;
+ if ("root" === i.tryLoc) return handle("end");
+ if (i.tryLoc <= this.prev) {
+ var c = n.call(i, "catchLoc"),
+ u = n.call(i, "finallyLoc");
+ if (c && u) {
+ if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
+ if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
+ } else if (c) {
+ if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
+ } else {
+ if (!u) throw Error("try statement without catch or finally");
+ if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
+ }
+ }
+ }
+ },
+ abrupt: function abrupt(t, e) {
+ for (var r = this.tryEntries.length - 1; r >= 0; --r) {
+ var o = this.tryEntries[r];
+ if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
+ var i = o;
+ break;
+ }
+ }
+ i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
+ var a = i ? i.completion : {};
+ return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
+ },
+ complete: function complete(t, e) {
+ if ("throw" === t.type) throw t.arg;
+ return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
+ },
+ finish: function finish(t) {
+ for (var e = this.tryEntries.length - 1; e >= 0; --e) {
+ var r = this.tryEntries[e];
+ if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
+ }
+ },
+ "catch": function _catch(t) {
+ for (var e = this.tryEntries.length - 1; e >= 0; --e) {
+ var r = this.tryEntries[e];
+ if (r.tryLoc === t) {
+ var n = r.completion;
+ if ("throw" === n.type) {
+ var o = n.arg;
+ resetTryEntry(r);
+ }
+ return o;
+ }
+ }
+ throw Error("illegal catch attempt");
+ },
+ delegateYield: function delegateYield(e, r, n) {
+ return this.delegate = {
+ iterator: values(e),
+ resultName: r,
+ nextLoc: n
+ }, "next" === this.method && (this.arg = t), y;
+ }
+ }, e;
+}
+module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
+
+/***/ }),
+/* 1275 */
+/*!*****************************************************************!*\
+ !*** ./node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
+ \*****************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
+ try {
+ var info = gen[key](arg);
+ var value = info.value;
+ } catch (error) {
+ reject(error);
+ return;
+ }
+ if (info.done) {
+ resolve(value);
+ } else {
+ Promise.resolve(value).then(_next, _throw);
+ }
+}
+function _asyncToGenerator(fn) {
+ return function () {
+ var self = this,
+ args = arguments;
+ return new Promise(function (resolve, reject) {
+ var gen = fn.apply(self, args);
+ function _next(value) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
+ }
+ function _throw(err) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
+ }
+ _next(undefined);
+ });
+ };
+}
+module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
+
/***/ })
/******/ ]);
\ No newline at end of file