From 861d047eb5e512653e16fc4fd80e33356a03393f Mon Sep 17 00:00:00 2001
From: liuyuan <582976274@qq.com>
Date: Tue, 22 Apr 2025 15:06:23 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95=E5=B1=95?=
=?UTF-8?q?=E7=A4=BA=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pages/bookShop/orderLCont.vue | 1 +
pages/bookShop/orderList.vue | 36 +-
.../commonComponents/orderSubmit.vue | 10 +-
pages/order/index.vue | 3 +-
unpackage/dist/dev/app-plus/app-service.js | 553 ++++++++++--------
unpackage/dist/dev/app-plus/app-view.js | 546 +++++++++--------
6 files changed, 639 insertions(+), 510 deletions(-)
diff --git a/pages/bookShop/orderLCont.vue b/pages/bookShop/orderLCont.vue
index 075ed29..64f085a 100644
--- a/pages/bookShop/orderLCont.vue
+++ b/pages/bookShop/orderLCont.vue
@@ -367,6 +367,7 @@
+ ¥0
¥
- {{ item2.product.price ? item2.product.price : "" }}
+ {{item2.product.price}}
@@ -368,22 +368,26 @@
{{ slotProps.row.bookBuyConfigEntity.realMoney }}
-
- ¥{{ slotProps.row.realMoney }}
-
-
- +
-
+
+
+ ¥{{ slotProps.row.realMoney }}
+
+
+ ¥0
+
+
+
+ +
+
+
- {{ slotProps.row.jfDeduction }} 积分
+ {{ slotProps.row.jfDeduction }} 积分
diff --git a/pages/component/commonComponents/orderSubmit.vue b/pages/component/commonComponents/orderSubmit.vue
index 8c629e2..5b25c27 100644
--- a/pages/component/commonComponents/orderSubmit.vue
+++ b/pages/component/commonComponents/orderSubmit.vue
@@ -406,12 +406,10 @@
合计:
-
-
-
- ¥{{ Number(actualPayment).toFixed(2) }}
-
+ >合计:
+ {{jfNumber}}积分
+
+ ¥{{ Number(actualPayment).toFixed(2) }}
{
// 1. 只允许数字字符,并去掉小数点后的部分
value = value.replace(/[^0-9.]/g, ""); // 删除非数字和小数点字符
@@ -362,7 +362,6 @@ export default {
},
//获取总金额
getTotalPrice(userInfo) {
- console.log(userInfo,'22222222222222222')
if (userInfo.jf >= this.options.price) {
this.jfNumber = this.options.price;
this.jfNumberMax = this.options.price;
diff --git a/unpackage/dist/dev/app-plus/app-service.js b/unpackage/dist/dev/app-plus/app-service.js
index 5a6b896..69ad8bc 100644
--- a/unpackage/dist/dev/app-plus/app-service.js
+++ b/unpackage/dist/dev/app-plus/app-service.js
@@ -38671,23 +38671,41 @@ var render = function () {
},
[_vm._v("¥")]
),
- _vm._v(
- _svm._$s(
- "58-" +
- _si +
- $30,
- "t1-0",
- _vm._s(
- item2
- .product
- .price
- ? item2
- .product
- .price
- : ""
+ _svm._$s(
+ "60-" +
+ _si +
+ $30,
+ "i",
+ item2.product
+ .price >= 0
+ )
+ ? _c(
+ "text",
+ {
+ attrs: {
+ _i:
+ "60-" +
+ _si +
+ $30,
+ },
+ },
+ [
+ _vm._v(
+ _svm._$s(
+ "60-" +
+ _si +
+ $30,
+ "t0-0",
+ _vm._s(
+ item2
+ .product
+ .price
+ )
+ )
+ ),
+ ]
)
- )
- ),
+ : _vm._e(),
]
),
]
@@ -38696,7 +38714,7 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "60-" + _si + $30,
+ "61-" + _si + $30,
"sc",
"btns flexbox"
),
@@ -38706,14 +38724,14 @@ var render = function () {
},
attrs: {
_i:
- "60-" + _si + $30,
+ "61-" + _si + $30,
},
},
[
_c("view", {
staticClass:
_svm._$s(
- "61-" +
+ "62-" +
_si +
$30,
"sc",
@@ -38724,7 +38742,7 @@ var render = function () {
},
attrs: {
_i:
- "61-" +
+ "62-" +
_si +
$30,
},
@@ -38734,7 +38752,7 @@ var render = function () {
{
staticClass:
_svm._$s(
- "62-" +
+ "63-" +
_si +
$30,
"sc",
@@ -38746,7 +38764,7 @@ var render = function () {
},
attrs: {
_i:
- "62-" +
+ "63-" +
_si +
$30,
},
@@ -38754,7 +38772,7 @@ var render = function () {
[
_vm._v(
_svm._$s(
- "62-" +
+ "63-" +
_si +
$30,
"t0-0",
@@ -38775,30 +38793,30 @@ var render = function () {
"view",
{
attrs: {
- _i: "63-" + $30,
+ _i: "64-" + $30,
},
},
[
_c("view", {
staticClass: _svm._$s(
- "64-" + $30,
+ "65-" + $30,
"sc",
"feng"
),
attrs: {
- _i: "64-" + $30,
+ _i: "65-" + $30,
},
}),
_c(
"view",
{
staticClass: _svm._$s(
- "65-" + $30,
+ "66-" + $30,
"sc",
"btns flexbox"
),
attrs: {
- _i: "65-" + $30,
+ _i: "66-" + $30,
},
},
[
@@ -38807,7 +38825,7 @@ var render = function () {
{
staticClass:
_svm._$s(
- "66-" + $30,
+ "67-" + $30,
"sc",
"booknameleft"
),
@@ -38816,7 +38834,7 @@ var render = function () {
"#181818",
},
attrs: {
- _i: "66-" + $30,
+ _i: "67-" + $30,
},
},
[_vm._v("未知商品")]
@@ -38826,18 +38844,18 @@ var render = function () {
{
staticClass:
_svm._$s(
- "67-" + $30,
+ "68-" + $30,
"sc",
"right flexbox opbtns product_quantity"
),
attrs: {
- _i: "67-" + $30,
+ _i: "68-" + $30,
},
},
[
_vm._v(
_svm._$s(
- "67-" +
+ "68-" +
$30 +
_si,
"t0-0",
@@ -38868,14 +38886,14 @@ var render = function () {
"margin-top": "10rpx",
overflow: "hidden",
},
- attrs: { _i: "68-" + _si },
+ attrs: { _i: "69-" + _si },
},
[
_c(
"view",
{
staticClass: _svm._$s(
- "69-" + _si,
+ "70-" + _si,
"sc",
"btns flexbox"
),
@@ -38883,14 +38901,14 @@ var render = function () {
float: "right",
width: "auto !important",
},
- attrs: { _i: "69-" + _si },
+ attrs: { _i: "70-" + _si },
},
[
_c(
"view",
{
staticClass: _svm._$s(
- "70-" + _si,
+ "71-" + _si,
"sc",
"right flexbox opbtns"
),
@@ -38901,7 +38919,7 @@ var render = function () {
display: "flex",
"align-items": "center",
},
- attrs: { _i: "70-" + _si },
+ attrs: { _i: "71-" + _si },
},
[
_c(
@@ -38914,7 +38932,7 @@ var render = function () {
"font-weight": "500",
"margin-right": "10rpx",
},
- attrs: { _i: "71-" + _si },
+ attrs: { _i: "72-" + _si },
},
[_vm._v("实付款")]
),
@@ -38929,43 +38947,14 @@ var render = function () {
"font-size": "30rpx",
"font-weight": "700",
},
- attrs: { _i: "72-" + _si },
+ attrs: { _i: "73-" + _si },
},
[
_svm._$s(
- "73-" + _si,
+ "74-" + _si,
"i",
slotProps.row.orderType ==
"point"
- )
- ? _c(
- "text",
- {
- attrs: {
- _i: "73-" + _si,
- },
- },
- [
- _vm._v(
- _svm._$s(
- "73-" + _si,
- "t0-0",
- _vm._s(
- slotProps.row
- .bookBuyConfigEntity
- .realMoney
- )
- )
- ),
- ]
- )
- : _vm._e(),
- _svm._$s(
- "74-" + _si,
- "i",
- slotProps.row.realMoney > 0 &&
- slotProps.row.orderType !=
- "point"
)
? _c(
"text",
@@ -38981,6 +38970,7 @@ var render = function () {
"t0-0",
_vm._s(
slotProps.row
+ .bookBuyConfigEntity
.realMoney
)
)
@@ -38991,44 +38981,109 @@ var render = function () {
_svm._$s(
"75-" + _si,
"i",
- slotProps.row.realMoney > 0 &&
- slotProps.row.jfDeduction >
- 0 &&
- slotProps.row.orderType !=
- "point"
+ slotProps.row.orderType !=
+ "point"
)
? _c(
"text",
{
- staticStyle: {
- margin: "0 4rpx",
- },
attrs: {
_i: "75-" + _si,
},
},
- [_vm._v("+")]
+ [
+ _svm._$s(
+ "76-" + _si,
+ "i",
+ slotProps.row
+ .realMoney &&
+ slotProps.row
+ .realMoney > 0
+ )
+ ? _c(
+ "text",
+ {
+ attrs: {
+ _i:
+ "76-" + _si,
+ },
+ },
+ [
+ _vm._v(
+ _svm._$s(
+ "76-" + _si,
+ "t0-0",
+ _vm._s(
+ slotProps
+ .row
+ .realMoney
+ )
+ )
+ ),
+ ]
+ )
+ : _vm._e(),
+ _svm._$s(
+ "77-" + _si,
+ "i",
+ slotProps.row
+ .realMoney == 0 &&
+ slotProps.row
+ .jfDeduction == 0
+ )
+ ? _c(
+ "text",
+ {
+ attrs: {
+ _i:
+ "77-" + _si,
+ },
+ },
+ [_vm._v("¥0")]
+ )
+ : _vm._e(),
+ _svm._$s(
+ "78-" + _si,
+ "i",
+ slotProps.row
+ .realMoney > 0 &&
+ slotProps.row
+ .jfDeduction > 0
+ )
+ ? _c(
+ "text",
+ {
+ staticStyle: {
+ margin:
+ "0 4rpx",
+ },
+ attrs: {
+ _i:
+ "78-" + _si,
+ },
+ },
+ [_vm._v("+")]
+ )
+ : _vm._e(),
+ ]
)
: _vm._e(),
_svm._$s(
- "76-" + _si,
+ "79-" + _si,
"i",
- slotProps.row.jfDeduction >
- 0 &&
- slotProps.row.orderType !=
- "point"
+ slotProps.row.jfDeduction > 0
)
? _c(
"text",
{
attrs: {
- _i: "76-" + _si,
+ _i: "79-" + _si,
},
},
[
_vm._v(
_svm._$s(
- "76-" + _si,
+ "79-" + _si,
"t0-0",
_vm._s(
slotProps.row
@@ -39048,7 +39103,7 @@ var render = function () {
]
),
_svm._$s(
- "77-" + _si,
+ "80-" + _si,
"i",
slotProps.row.isShowMore == true
)
@@ -39056,22 +39111,22 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "77-" + _si,
+ "80-" + _si,
"sc",
"operation_box boxShadow"
),
- attrs: { _i: "77-" + _si },
+ attrs: { _i: "80-" + _si },
},
[
_svm._$s(
- "78-" + _si,
+ "81-" + _si,
"i",
slotProps.row.orderStatus == 0
)
? _c(
"view",
{
- attrs: { _i: "78-" + _si },
+ attrs: { _i: "81-" + _si },
nativeOn: {
click: function ($event) {
$event.stopPropagation()
@@ -39091,24 +39146,24 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "79-" + _si,
+ "82-" + _si,
"sc",
"btns flexbox"
),
staticStyle: { "margin-top": "10rpx" },
- attrs: { _i: "79-" + _si },
+ attrs: { _i: "82-" + _si },
},
[
_c(
"view",
{
staticClass: _svm._$s(
- "80-" + _si,
+ "83-" + _si,
"sc",
"left"
),
staticStyle: { color: "#c0c4cc" },
- attrs: { _i: "80-" + _si },
+ attrs: { _i: "83-" + _si },
nativeOn: {
click: function ($event) {
$event.stopPropagation()
@@ -39125,15 +39180,15 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "81-" + _si,
+ "84-" + _si,
"sc",
"right flexbox opbtns"
),
- attrs: { _i: "81-" + _si },
+ attrs: { _i: "84-" + _si },
},
[
_svm._$s(
- "82-" + _si,
+ "85-" + _si,
"i",
slotProps.row.orderStatus == 0 &&
slotProps.row.paymentMethod != 3
@@ -39142,11 +39197,11 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "82-" + _si,
+ "85-" + _si,
"sc",
"orderstatusbtn orderstatusbtn_success"
),
- attrs: { _i: "82-" + _si },
+ attrs: { _i: "85-" + _si },
on: {
click: function ($event) {
$event.stopPropagation()
@@ -39160,7 +39215,7 @@ var render = function () {
)
: _vm._e(),
_svm._$s(
- "83-" + _si,
+ "86-" + _si,
"i",
slotProps.row.orderStatus == 1
)
@@ -39168,17 +39223,17 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "83-" + _si,
+ "86-" + _si,
"sc",
"orderstatusbtn"
),
- attrs: { _i: "83-" + _si },
+ attrs: { _i: "86-" + _si },
},
[_vm._v("催发货")]
)
: _vm._e(),
_svm._$s(
- "84-" + _si,
+ "87-" + _si,
"i",
slotProps.row.orderStatus == 2
)
@@ -39186,11 +39241,11 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "84-" + _si,
+ "87-" + _si,
"sc",
"orderstatusbtn"
),
- attrs: { _i: "84-" + _si },
+ attrs: { _i: "87-" + _si },
nativeOn: {
click: function ($event) {
$event.stopPropagation()
@@ -39204,7 +39259,7 @@ var render = function () {
)
: _vm._e(),
_svm._$s(
- "85-" + _si,
+ "88-" + _si,
"i",
slotProps.row.orderStatus == 2
)
@@ -39212,11 +39267,11 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "85-" + _si,
+ "88-" + _si,
"sc",
"orderstatusbtn"
),
- attrs: { _i: "85-" + _si },
+ attrs: { _i: "88-" + _si },
nativeOn: {
click: function ($event) {
$event.stopPropagation()
@@ -39230,7 +39285,7 @@ var render = function () {
)
: _vm._e(),
_svm._$s(
- "86-" + _si,
+ "89-" + _si,
"i",
slotProps.row.orderStatus == 3
)
@@ -39238,11 +39293,11 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "86-" + _si,
+ "89-" + _si,
"sc",
"orderstatusbtn"
),
- attrs: { _i: "86-" + _si },
+ attrs: { _i: "89-" + _si },
},
[_vm._v("申请售后")]
)
@@ -39252,7 +39307,7 @@ var render = function () {
]
),
_svm._$s(
- "87-" + _si,
+ "90-" + _si,
"i",
slotProps.rowIndex < slotProps.row.length - 1
)
@@ -39261,7 +39316,7 @@ var render = function () {
"border-bottom": "2rpx solid #e9e9e9",
height: "50rpx",
},
- attrs: { _i: "87-" + _si },
+ attrs: { _i: "90-" + _si },
})
: _vm._e(),
]
@@ -39281,54 +39336,54 @@ var render = function () {
_c(
"u-popup",
{
- attrs: { show: _vm.pingjiaShow, round: 10, _i: 88 },
+ attrs: { show: _vm.pingjiaShow, round: 10, _i: 91 },
on: { close: _vm.closePingjia },
},
[
_c(
"view",
- { staticClass: _vm._$s(89, "sc", "tanchu"), attrs: { _i: 89 } },
+ { staticClass: _vm._$s(92, "sc", "tanchu"), attrs: { _i: 92 } },
[
- _vm._$s(90, "i", _vm.pjType != "zhuiping")
+ _vm._$s(93, "i", _vm.pjType != "zhuiping")
? _c("view", {
- staticClass: _vm._$s(90, "sc", "dp_title"),
- attrs: { _i: 90 },
+ staticClass: _vm._$s(93, "sc", "dp_title"),
+ attrs: { _i: 93 },
})
: _c("view", {
- staticClass: _vm._$s(91, "sc", "dp_title"),
- attrs: { _i: 91 },
+ staticClass: _vm._$s(94, "sc", "dp_title"),
+ attrs: { _i: 94 },
}),
_c(
"view",
[
- _c("uni-forms", { attrs: { modelValue: _vm.Pform, _i: 93 } }),
+ _c("uni-forms", { attrs: { modelValue: _vm.Pform, _i: 96 } }),
_c(
"view",
{
staticClass: _vm._$s(
- 94,
+ 97,
"sc",
"padding-bottom-sm flex padding-lr-sm"
),
- attrs: { _i: 94 },
+ attrs: { _i: 97 },
},
[
- _vm._$s(95, "i", _vm.pjType != "zhuiping")
+ _vm._$s(98, "i", _vm.pjType != "zhuiping")
? _c(
"view",
{
- staticClass: _vm._$s(95, "sc", "mb30"),
- attrs: { _i: 95 },
+ staticClass: _vm._$s(98, "sc", "mb30"),
+ attrs: { _i: 98 },
},
[
_c("view", {
- class: _vm._$s(96, "c", [
+ class: _vm._$s(99, "c", [
"star",
_vm.Pform.star >= 1
? "starLight"
: "starGray",
]),
- attrs: { _i: 96 },
+ attrs: { _i: 99 },
on: {
click: function ($event) {
return _vm.getStar(1)
@@ -39336,13 +39391,13 @@ var render = function () {
},
}),
_c("view", {
- class: _vm._$s(97, "c", [
+ class: _vm._$s(100, "c", [
"star",
_vm.Pform.star >= 2
? "starLight"
: "starGray",
]),
- attrs: { _i: 97 },
+ attrs: { _i: 100 },
on: {
click: function ($event) {
return _vm.getStar(2)
@@ -39350,13 +39405,13 @@ var render = function () {
},
}),
_c("view", {
- class: _vm._$s(98, "c", [
+ class: _vm._$s(101, "c", [
"star",
_vm.Pform.star >= 3
? "starLight"
: "starGray",
]),
- attrs: { _i: 98 },
+ attrs: { _i: 101 },
on: {
click: function ($event) {
return _vm.getStar(3)
@@ -39364,13 +39419,13 @@ var render = function () {
},
}),
_c("view", {
- class: _vm._$s(99, "c", [
+ class: _vm._$s(102, "c", [
"star",
_vm.Pform.star >= 4
? "starLight"
: "starGray",
]),
- attrs: { _i: 99 },
+ attrs: { _i: 102 },
on: {
click: function ($event) {
return _vm.getStar(4)
@@ -39378,13 +39433,13 @@ var render = function () {
},
}),
_c("view", {
- class: _vm._$s(100, "c", [
+ class: _vm._$s(103, "c", [
"star",
_vm.Pform.star >= 5
? "starLight"
: "starGray",
]),
- attrs: { _i: 100 },
+ attrs: { _i: 103 },
on: {
click: function ($event) {
return _vm.getStar(5)
@@ -39394,12 +39449,12 @@ var render = function () {
]
)
: _vm._e(),
- _vm._$s(101, "i", _vm.pjType != "zhuiping")
+ _vm._$s(104, "i", _vm.pjType != "zhuiping")
? _c(
"view",
{
- staticClass: _vm._$s(101, "sc", "mb30"),
- attrs: { _i: 101 },
+ staticClass: _vm._$s(104, "sc", "mb30"),
+ attrs: { _i: 104 },
},
[
_c("u-upload", {
@@ -39410,7 +39465,7 @@ var render = function () {
width: "80",
height: "80",
previewFullImage: true,
- _i: 102,
+ _i: 105,
},
on: {
afterRead: _vm.afterRead,
@@ -39424,13 +39479,13 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(103, "sc", "flex-sub flexbox"),
- attrs: { _i: 103 },
+ staticClass: _vm._$s(106, "sc", "flex-sub flexbox"),
+ attrs: { _i: 106 },
},
[
_c("i", {
- class: _vm._$s(104, "c", _vm.emojiIcon),
- attrs: { _i: 104 },
+ class: _vm._$s(107, "c", _vm.emojiIcon),
+ attrs: { _i: 107 },
on: {
click: function ($event) {
return _vm.showEmj()
@@ -39446,10 +39501,10 @@ var render = function () {
expression: "Pform.comment",
},
],
- staticClass: _vm._$s(105, "sc", "textarea"),
- attrs: { _i: 105 },
+ staticClass: _vm._$s(108, "sc", "textarea"),
+ attrs: { _i: 108 },
domProps: {
- value: _vm._$s(105, "v-model", _vm.Pform.comment),
+ value: _vm._$s(108, "v-model", _vm.Pform.comment),
},
on: {
focus: _vm.InputFocus,
@@ -39474,11 +39529,11 @@ var render = function () {
_c(
"view",
[
- _vm._$s(107, "i", _vm.pjType != "zhuiping")
+ _vm._$s(110, "i", _vm.pjType != "zhuiping")
? _c(
"u-button",
{
- attrs: { type: "success", _i: 107 },
+ attrs: { type: "success", _i: 110 },
on: { click: _vm.submitPJ },
},
[_vm._v("")]
@@ -39486,7 +39541,7 @@ var render = function () {
: _c(
"u-button",
{
- attrs: { type: "success", _i: 108 },
+ attrs: { type: "success", _i: 111 },
on: { click: _vm.zhuiping },
},
[_vm._v("")]
@@ -39499,12 +39554,12 @@ var render = function () {
_c(
"view",
[
- _vm._$s(110, "i", _vm.isShowEmj)
+ _vm._$s(113, "i", _vm.isShowEmj)
? _c("emotion", {
attrs: {
height: 220,
windowWidth: _vm.windowWidth,
- _i: 110,
+ _i: 113,
},
on: { emotion: _vm.handleEmj },
})
@@ -39519,7 +39574,7 @@ var render = function () {
),
]
),
- _c("z-navigation", { attrs: { _i: 111 } }),
+ _c("z-navigation", { attrs: { _i: 114 } }),
_c("u-action-sheet", {
attrs: {
closeOnClickAction: true,
@@ -39527,7 +39582,7 @@ var render = function () {
actions: _vm.moreList,
show: _vm.isShowMore,
cancelText: "关闭",
- _i: 112,
+ _i: 115,
},
on: {
close: function ($event) {
@@ -40138,7 +40193,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _D_s
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 47));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 49));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 95));\nvar _bkhumorEmojiplus = _interopRequireDefault(__webpack_require__(/*! @/bkhumor-emojiplus/components/bkhumor-emojiplus/bkhumor-emojiplus.vue */ 513));\nvar _utils = __webpack_require__(/*! @/config/utils */ 246);\nvar _vuex = __webpack_require__(/*! vuex */ 63);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n isShowMore: false,\n come: \"2\",\n isShowTab: false,\n isLoadingHide: false,\n moreList: [{\n name: \"取消订单\",\n key: \"false\"\n }],\n currentCateIndex: 0,\n pagination: {\n // 请求参数\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n },\n\n // loadingNow : false,\n playData: {},\n options: {},\n emojiIcon: \"cuIcon-emoji\",\n windowWidth: 0,\n bookid: null,\n booklistpage: 1,\n productList: [],\n productInfo: {},\n emoji: [],\n Files: [],\n page: 1,\n pageSize: 10,\n total: 0,\n status: 3,\n shupingList: [],\n bfaid: null,\n ordersTabs: [{\n name: \"全部\",\n value: -1,\n badge: {}\n }, {\n name: \"待付款\",\n value: 0,\n badge: {}\n }, {\n name: \"待发货\",\n value: 1,\n badge: {}\n }, {\n name: \"待收货\",\n value: 2,\n badge: {}\n }, {\n name: \"已完成\",\n value: 3,\n badge: {}\n }],\n selectOrderInfo: {},\n ordersListTab: 1,\n newestpage: 1,\n // hotestpage: 1,\n // booksetpage: 1,\n newList: [],\n // hotList:[],\n // bookList:[],\n map: {},\n userRecordid: null,\n // 用户的评价状态\n pingjiaShow: false,\n //添加评价\n Pform: {\n // 评价表单\n star: 0,\n comment: \"\",\n img: [],\n html: \"\"\n },\n isShowEmj: false,\n pjType: \"\"\n };\n },\n onPullDownRefresh: function onPullDownRefresh() {\n uni.stopPullDownRefresh();\n this.newestpage = 1;\n this.newList = [];\n this.getBookList(this.ordersListTab, false);\n },\n onReachBottom: function onReachBottom() {\n this.newestpage++;\n this.getBookList(this.ordersListTab, false);\n },\n onLoad: function onLoad(e) {\n this.windowWidth = uni.getSystemInfoSync().windowWidth;\n this.options = e;\n // 隐藏原生的tabbar\n uni.hideTabBar();\n },\n onShow: function onShow() {\n var _this = 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 _this.newList = [];\n _this.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n\n _this.$nextTick( /*#__PURE__*/(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 _context.next = 2;\n return _this.ordersTabCLi(_this.ordersTabs[0], 0);\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })));\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n onTabItemTap: function onTabItemTap() {\n var _this2 = 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 _this2.newList = [];\n _this2.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n onReady: function onReady() {},\n computed: _objectSpread({}, (0, _vuex.mapState)([\"userInfo\"])),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapMutations)([\"setLoadingShow\"])), {}, {\n getImageUrl: function getImageUrl(url) {\n // 通过在URL后面添加时间戳来避免缓存\n return \"\".concat(url, \"?timestamp=\").concat(Date.now());\n },\n selectClick: function selectClick(index) {\n __f__(\"log\", \"index at line 609:\", index, \" at pages/bookShop/orderList.vue:742\");\n if (index.key == \"false\") {\n this.isShowMore = false;\n this.canceOrder(this.selectOrderInfo);\n }\n },\n openMore: function openMore(row, index) {\n this.selectOrderInfo = row;\n this.isShowMore = true;\n },\n handleCopy: function handleCopy(value, title) {\n this.$commonJS.handleCopy(value, title);\n },\n onReachBottom1: function onReachBottom1() {\n // 上拉加载\n // 当列表数量不大于或等于总数量,则再次调用接口请求数据\n if (this.newList.length >= this.pagination.total) return;\n this.pagination.page++;\n this.getBookList(this.ordersListTab, false);\n },\n goHome: function goHome() {\n if (this.options.type == \"order\") {\n uni.switchTab({\n url: \"/pages/homePage/index/index\"\n });\n } else {\n uni.navigateBack({\n delta: 1\n });\n }\n },\n // 切换tab状态\n ordersTabCLi: function ordersTabCLi(data, index) {\n this.currentCateIndex = index;\n this.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n\n __f__(\"log\", \"data at line 454:\", data, \" at pages/bookShop/orderList.vue:781\");\n this.ordersListTab = data.value;\n this.newestpage = 1;\n // this.hotestpage = 1\n // this.booksetpage = 1\n this.newList = [];\n // this.hotList = []\n // this.bookList = []\n this.getBookList(this.ordersListTab, false);\n },\n // 查看本书更多书评\n toMore: function toMore(val) {\n __f__(\"log\", val, \"val\", \" at pages/bookShop/orderList.vue:793\");\n uni.navigateTo({\n url: \"../comments/comments?bookid=\" + val.id\n });\n },\n // 订单详情\n toDetail: function toDetail(val) {\n __f__(\"log\", val, \"val\", \" at pages/bookShop/orderList.vue:800\");\n // uni.navigateTo({\n // \turl:'../bookShop/commentsDetail?bookid='+val.bookid+'&bfa_id='+val.id\n // })\n uni.navigateTo({\n url: \"/pages/bookShop/orderLCont?orderId=\" + val.orderId + \"&orderType=\" + val.orderStatus + \"&orderSn=\" + val.orderSn\n });\n },\n getBookList: function getBookList(flag, refreshflag) {\n var _this3 = this;\n this.isLoadingHide = false;\n var that = this;\n // 根据tab不同,获取最新书评、最热书评、书集列表\n // uni.showLoading({\n // \ttitle: '加载中'\n // });\n\n // 顶部红点数量\n _requestConfig.default.request({\n url: \"common/buyOrder/getBuyOrderNumByStatus\",\n method: \"POST\",\n data: {\n userId: that.userInfo.id,\n come: this.come\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n // 订单状态\n // * 0: 待付款\n // * 1: 待发货\n // * 2: 已发货\n // * 3:已完成\n // * 4: 交易失败\n // * 5: 已过期\n\n __f__(\"log\", \"res at line 757:\", res, \" at pages/bookShop/orderList.vue:845\");\n that.map = res.data;\n that.ordersTabs.map(function (e) {\n if (e.value == 0 || e.value == 1 || e.value == 2) {\n var numList = that.map.filter(function (v) {\n return v.order_status == e.value;\n });\n __f__(\"log\", \"num at line 771:\", numList, \" at pages/bookShop/orderList.vue:851\");\n if (numList.length > 0) {\n e.badge = {\n value: numList[0].num\n };\n } else {\n e.badge = {};\n }\n } else {\n e.badge = {};\n }\n });\n // this.$set('this.ordersTabs',)\n that.$forceUpdate();\n }).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderList.vue:867\");\n });\n var params = _objectSpread({\n userId: this.userInfo.id,\n come: this.come,\n orderStatus: flag == -1 ? \"\" : flag\n }, this.pagination);\n this.$http.request({\n url: \"common/buyOrder/commonBuyOrderList\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: params,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n __f__(\"log\", \"订单列表内容获取成功\", res, \" at pages/bookShop/orderList.vue:889\");\n that.pagination.total = res.data.total;\n if (res.data.total == 0) {\n _this3.isLoadingHide = true;\n }\n if (res.code == 0 && res.data && res.data.records.length > 0) {\n that.newList = that.newList.concat(res.data.records);\n } else {\n //\n }\n if (res.data.records.length != 10) {\n that.status = 1;\n } else {\n that.status = 0;\n }\n }).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderList.vue:906\");\n });\n },\n // 支付\n goPay: function goPay(payItem) {\n var _this4 = this;\n __f__(\"log\", payItem, \"订单数据\", \" at pages/bookShop/orderList.vue:911\");\n if (payItem.paymentMethod == 2) {\n __f__(\"log\", \"阿里支付\", \" at pages/bookShop/orderList.vue:913\");\n (0, _utils.setPay)({\n typePay: \"alipay\",\n subject: \"order\",\n totalAmount: payItem.realMoney,\n type: 2,\n relevanceoid: payItem.orderSn,\n customerId: this.userInfo.id\n }, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n _this4.getOrderList();\n });\n } else if (payItem.paymentMethod == 1) {\n __f__(\"log\", \"微信支付\", \" at pages/bookShop/orderList.vue:939\");\n var data1 = {\n orderSn: payItem.orderSn,\n buyOrderId: null,\n totalAmount: payItem.realMoney\n };\n __f__(\"log\", data1, \"data1\", \" at pages/bookShop/orderList.vue:946\");\n (0, _utils.setWXPay)(data1, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n __f__(\"log\", res, \" at pages/bookShop/orderList.vue:953\");\n if (res.data.errMsg.indexOf(\"User canceled\") != -1) {\n uni.showToast({\n title: \"用户取消支付\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n }\n });\n } else if (payItem.paymentMethod == 3 && this.ordersListTab == 0) {\n // 苹果充值\n __f__(\"log\", \"苹果二次支付\", \" at pages/bookShop/orderList.vue:971\");\n uni.showModal({\n content: \"apple内购订单不支持继续支付,请重新发起支付申请并完成支付\",\n confirmText: \"好的\",\n showCancel: false\n });\n } else if (payItem.paymentMethod == 4) {\n __f__(\"log\", \"天医币二次支付\", \" at pages/bookShop/orderList.vue:978\");\n }\n },\n // 取消订单\n canceOrder: function canceOrder(item) {\n var _this5 = this;\n __f__(\"log\", \"item.orderSn\", item, \" at pages/bookShop/orderList.vue:983\");\n uni.showModal({\n title: \"提示\",\n content: \"确定要取消订单吗?\",\n confirmText: \"取消订单\",\n cancelText: \"考虑一下\",\n confirmColor: \"#c96713\",\n cancelColor: \"#555\",\n success: function success(res) {\n if (res.confirm) {\n _this5.$http.post(\"book/buyOrder/appDelete?orderId=\" + item.orderId).then(function (res) {\n if (res.code == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"取消订单成功\"\n });\n // uni.switchTab({\n // \turl: './orderList'\n // });\n\n _this5.newestpage = 1;\n _this5.newList = [];\n _this5.getBookList(_this5.ordersListTab, false);\n }\n });\n }\n }\n });\n },\n // canceOrder(item) {\n // \tuni.showModal({\n // \t\ttitle: '提示',\n // \t\tcontent: '确定要取消订单吗?',\n // \t\tconfirmText: \"取消订单\",\n // \t\tcancelText: \"考虑一下\",\n // \t\tconfirmColor: '#c96713',\n // \t\tcancelColor: '#555',\n // \t\tsuccess: res => {\n // \t\t\tif (res.confirm) {\n // \t\t\t\tuni.showLoading()\n // \t\t\t\t$http.request({\n // \t\t\t\t\turl: \"book/buyOrder/cancelOrder\",\n // \t\t\t\t\tmethod: \"GET\", // POST、GET、PUT、DELETE,具体说明查看官方文档\n // \t\t\t\t\tdata,\n // \t\t\t\t\theader: { //默认 无 说明:请求头\n // \t\t\t\t\t\t'Content-Type': 'application/json'\n // \t\t\t\t\t},\n // \t\t\t\t}).then(res => {\n // \t\t\t\t\tif (res.code == 0) {\n // \t\t\t\t\t\tuni.hideLoading()\n // \t\t\t\t\t\tuni.showToast({\n // \t\t\t\t\t\t\ttitle: '订单已取消',\n // \t\t\t\t\t\t\ticon: 'success',\n // \t\t\t\t\t\t\tduration: 1000\n // \t\t\t\t\t\t})\n // \t\t\t\t\t\tthis.getBookList(this.ordersListTab, false)\n // \t\t\t\t\t}\n // \t\t\t\t})\n // \t\t\t} else if (res.cancel) {}\n // \t\t}\n // \t});\n // },\n // 查看物流\n seeExpressDetail: function seeExpressDetail(item) {\n // console.log(item, this.sheetList.length)\n // if(this.sheetList.length > 1){\n // \tthis.sheetListShow = true\n // }else if(this.sheetList.length == 1){\n // 直接展示详情\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + item.orderSn + \"&expressOrderSn=\" + item.expressList[0].expressOrderSn\n });\n // }\n },\n // 确认收货\n OverOrder: function OverOrder(item) {\n var _this6 = this;\n uni.showModal({\n title: \"提示\",\n content: \"确认收货?\",\n success: function success(res) {\n var data = {\n orderId: item.orderId,\n orderStatus: \"3\"\n };\n if (res.confirm) {\n uni.showLoading();\n _requestConfig.default.request({\n url: \"book/buyOrder/update\",\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 if (res.code == 0) {\n uni.hideLoading();\n uni.showToast({\n title: \"收货成功\",\n icon: \"success\",\n duration: 1000\n });\n _this6.newestpage = 1;\n _this6.newList = [];\n _this6.getBookList(_this6.ordersListTab, false);\n }\n });\n } else if (res.cancel) {}\n }\n });\n },\n closePingjia: function closePingjia() {\n this.pingjiaShow = false;\n this.Pform.comment = \"\";\n this.Pform.html = \"\";\n this.emoji = [];\n },\n // 提交评价\n submitPJ: function submitPJ() {\n var _this7 = this;\n if (this.Pform.comment != \"\") {\n var data = {\n userid: this.userInfo.id,\n orderSn: this.orderSn,\n bookid: this.productID,\n // 'content': this.Pform.html,\n content: this.Pform.comment,\n starLevel: this.Pform.star,\n images: this.Pform.img\n // 'emoji':this.emoji // 表情数组\n };\n // console.log(data,'data')\n _requestConfig.default.request({\n url: \"buy/record/UserRecordcomment\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"评价成功!\",\n icon: \"success\"\n });\n _this7.pingjiaShow = false;\n _this7.Pform.comment = \"\";\n _this7.Pform.html = \"\";\n _this7.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n } else {\n uni.showToast({\n title: \"请先输入您的评价内容 !\",\n icon: \"none\"\n });\n }\n },\n // 添加评价\n pingji: function pingji(id) {\n __f__(\"log\", id, \" at pages/bookShop/orderList.vue:1160\");\n this.pjType = \"\";\n this.productID = id;\n this.pingjiaShow = true;\n },\n getStar: function getStar(i) {\n this.Pform.star = i;\n },\n InputBlur: function InputBlur(e) {},\n InputFocus: function InputFocus(e) {\n this.isShowEmj = false;\n this.emojiIcon = \"cuIcon-emoji\";\n this.$emit(\"foc\");\n },\n textareaBInput: function textareaBInput(e) {\n __f__(\"log\", e, \"e\", \" at pages/bookShop/orderList.vue:1175\");\n this.Pform.comment = e.detail.value;\n /// this.Pform.html = e.detail.value\n },\n showEmj: function showEmj() {\n var bool = !this.isShowEmj;\n if (bool) {\n this.emojiIcon = \"cuIcon-keyboard\";\n } else {\n this.emojiIcon = \"cuIcon-emoji\";\n }\n this.isShowEmj = bool;\n this.$emit(\"show\");\n },\n deletePic: function deletePic() {\n var that = this;\n that.Pform.img.splice(0, 1);\n //console.log(that.Pform.img)\n },\n afterRead: function afterRead(e) {\n //console.log(e)\n var that = this;\n for (var i = 0; i < e.file.length; i++) {\n //console.log(i,e.file[i].url)\n uni.uploadFile({\n url: this.$baseUrl + \"oss/fileoss\",\n filePath: e.file[i].url,\n //files:e.file,\n name: \"file\",\n formData: {},\n success: function success(res) {\n that.Pform.img.push({\n url: JSON.parse(res.data).url\n });\n }\n });\n }\n },\n // 获得输入的表情数组\n handleEmj: function handleEmj(i) {\n __f__(\"log\", i, \"i---------\", \" at pages/bookShop/orderList.vue:1216\");\n this.inputValue = i;\n // console.log(this.inputValue);\n if (i.emotioni == \"[em_98]\") {\n //匹配最后一个表情符号并删除11。\n this.Pform.comment = this.Pform.comment.replace(/(\\[[^\\]]+\\]|[\\s\\S])$/, \"\");\n if (this.emoji.length > 0) {\n this.emoji = this.emoji.slice(0, -1);\n }\n } else {\n this.emoji.push({\n tag: i.emotion,\n name: i.emotioni\n });\n // console.log(this.emoji,'this.emoji')\n this.Pform.comment += i.emotioni;\n /// this.Pform.html += i.emotion\n }\n }\n }),\n\n components: {\n // musicPlay,\n emotion: _bkhumorEmojiplus.default\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 62)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvYm9va1Nob3Avb3JkZXJMaXN0LnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwiaXNTaG93TW9yZSIsImNvbWUiLCJpc1Nob3dUYWIiLCJpc0xvYWRpbmdIaWRlIiwibW9yZUxpc3QiLCJuYW1lIiwia2V5IiwiY3VycmVudENhdGVJbmRleCIsInBhZ2luYXRpb24iLCJwYWdlIiwibGltaXQiLCJ0b3RhbCIsInBsYXlEYXRhIiwib3B0aW9ucyIsImVtb2ppSWNvbiIsIndpbmRvd1dpZHRoIiwiYm9va2lkIiwiYm9va2xpc3RwYWdlIiwicHJvZHVjdExpc3QiLCJwcm9kdWN0SW5mbyIsImVtb2ppIiwiRmlsZXMiLCJwYWdlU2l6ZSIsInN0YXR1cyIsInNodXBpbmdMaXN0IiwiYmZhaWQiLCJvcmRlcnNUYWJzIiwidmFsdWUiLCJiYWRnZSIsInNlbGVjdE9yZGVySW5mbyIsIm9yZGVyc0xpc3RUYWIiLCJuZXdlc3RwYWdlIiwibmV3TGlzdCIsIm1hcCIsInVzZXJSZWNvcmRpZCIsInBpbmdqaWFTaG93IiwiUGZvcm0iLCJzdGFyIiwiY29tbWVudCIsImltZyIsImh0bWwiLCJpc1Nob3dFbWoiLCJwalR5cGUiLCJvblB1bGxEb3duUmVmcmVzaCIsInVuaSIsIm9uUmVhY2hCb3R0b20iLCJvbkxvYWQiLCJvblNob3ciLCJvblRhYkl0ZW1UYXAiLCJvblJlYWR5IiwiY29tcHV0ZWQiLCJtZXRob2RzIiwiZ2V0SW1hZ2VVcmwiLCJzZWxlY3RDbGljayIsIm9wZW5Nb3JlIiwiaGFuZGxlQ29weSIsIm9uUmVhY2hCb3R0b20xIiwiZ29Ib21lIiwidXJsIiwiZGVsdGEiLCJvcmRlcnNUYWJDTGkiLCJ0b01vcmUiLCJ0b0RldGFpbCIsInZhbCIsImdldEJvb2tMaXN0IiwiJGh0dHAiLCJyZXF1ZXN0IiwibWV0aG9kIiwidXNlcklkIiwiaGVhZGVyIiwidGhlbiIsInRoYXQiLCJlIiwiY2F0Y2giLCJvcmRlclN0YXR1cyIsImdvUGF5IiwidHlwZVBheSIsInN1YmplY3QiLCJ0b3RhbEFtb3VudCIsInR5cGUiLCJyZWxldmFuY2VvaWQiLCJjdXN0b21lcklkIiwidGl0bGUiLCJpY29uIiwiaW1hZ2UiLCJvcmRlclNuIiwiYnV5T3JkZXJJZCIsImNvbnRlbnQiLCJjb25maXJtVGV4dCIsInNob3dDYW5jZWwiLCJjYW5jZU9yZGVyIiwiY2FuY2VsVGV4dCIsImNvbmZpcm1Db2xvciIsImNhbmNlbENvbG9yIiwic3VjY2VzcyIsInBvc3QiLCJzZWVFeHByZXNzRGV0YWlsIiwiaXRlbSIsIk92ZXJPcmRlciIsIm9yZGVySWQiLCJkdXJhdGlvbiIsImNsb3NlUGluZ2ppYSIsInN1Ym1pdFBKIiwidXNlcmlkIiwic3RhckxldmVsIiwiaW1hZ2VzIiwic2V0VGltZW91dCIsInBpbmdqaSIsImdldFN0YXIiLCJJbnB1dEJsdXIiLCJJbnB1dEZvY3VzIiwidGV4dGFyZWFCSW5wdXQiLCJzaG93RW1qIiwiZGVsZXRlUGljIiwiYWZ0ZXJSZWFkIiwiZmlsZVBhdGgiLCJmb3JtRGF0YSIsImhhbmRsZUVtaiIsInRhZyIsImNvbXBvbmVudHMiLCJlbW90aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBMGxCQTtBQUNBO0FBRUE7QUFFQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUMsV0FDQTtRQUNBQztRQUNBQztNQUNBLEVBQ0E7TUFDQUM7TUFDQUM7UUFDQTtRQUNBQztRQUFBO1FBQ0FDO1FBQUE7UUFDQUM7TUFDQTs7TUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBWjtNQUNBYTtNQUNBWDtNQUNBWTtNQUNBQztNQUNBQztNQUNBQyxhQUNBO1FBQ0FyQjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNB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QUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBO1VBQ0FDO1VBQ0FsQjtVQUNBckU7VUFDQTtVQUNBdUU7VUFDQWlCO1VBQ0FDO1VBQ0E7UUFDQTtRQUNBO1FBQ0F4Qyx1QkFDQUM7VUFDQVI7VUFDQVM7VUFBQTtVQUNBcEU7VUFDQXNFO1lBQ0E7WUFDQTtVQUNBO1FBQ0EsR0FDQUM7VUFDQTtZQUNBMUI7Y0FDQXNDO2NBQ0FDO1lBQ0E7WUFFQTtZQUNBO1lBQ0E7WUFDQTtZQUNBdUI7Y0FDQTlEO2dCQUNBZTtjQUNBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQWY7VUFDQXNDO1VBQ0FDO1FBQ0E7TUFDQTtJQUNBO0lBQ0E7SUFDQXdCO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7SUFDQUM7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO01BRUE7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTFDO01BQ0E7SUFDQTtJQUNBMkM7TUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBdEU7VUFDQWM7VUFDQXlEO1VBQ0E7VUFDQTlHO1VBQ0ErRztVQUNBdEI7WUFDQXZCO2NBQ0FiO1lBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBO0lBQ0EyRDtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQSxnREFDQSx3QkFDQSxHQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtVQUNBQztVQUNBakg7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFBQSxFQUNBOztFQUNBa0g7SUFDQTtJQUNBQztFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiI1MTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG4gIDx2aWV3XG4gICAgY2xhc3M9XCJjb250YWluZXIgY29tbW9uUGFnZUJveCBjb21tb25EZXRhaWxQYWdlXCJcbiAgICBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNmNmY3ZmJcIlxuICA+XG4gICAgPCEtLSDlhazlhbHnu4Tku7Yt5q+P5Liq6aG16Z2i5b+F6aG75byV5YWlIC0tPlxuICAgIDxwdWJsaWMtbW9kdWxlPjwvcHVibGljLW1vZHVsZT5cbiAgICA8ei1uYXYtYmFyXG4gICAgICB0aXRsZT1cIuaIkeeahOiuouWNlVwiXG4gICAgICBiZ0NvbG9yPVwiIzI1OGZlYlwiXG4gICAgICBmb250Q29sb3I9XCIjZmZmXCJcbiAgICAgIDpiYWNrU3RhdGU9XCIyMDAwXCJcbiAgICA+XG4gICAgPC96LW5hdi1iYXI+XG4gICAgPHZpZXcgY2xhc3M9XCJjYXRlTGlzdCBmbGV4Ym94XCI+XG4gICAgICA8Y29tbW9uLXN0aWNreVxuICAgICAgICBpdGVtU3R5bGU9XCJ3aWR0aDoyMCU7IGhlaWdodDogNjhycHg7Zm9udC1zaXplOjI0cnB4O1wiXG4gICAgICAgIDpsaXN0PVwib3JkZXJzVGFic1wiXG4gICAgICAgIGxhYmVsPVwibmFtZVwiXG4gICAgICAgIDpjdXJyZW50Q2F0ZUluZGV4PVwiY3VycmVudENhdGVJbmRleFwiXG4gICAgICAgIEBoYW5kbGVzZWxlY3RDYXRlPVwib3JkZXJzVGFiQ0xpXCJcbiAgICAgID48L2NvbW1vbi1zdGlja3k+XG4gICAgPC92aWV3PlxuXG4gICAgPCEtLSDnq5nkvY0gLS0+XG5cbiAgICA8IS0tIDx2aWV3IHYtaWY9XCJvcmRlcnNMaXN0VGFiID09IDFcIj4gLS0+XG4gICAgPHZpZXdcbiAgICAgIGNsYXNzPVwib3JkZXJfYm94XCJcbiAgICAgIDpzdHlsZT1cImBoZWlnaHQ6IGNhbGMoMTAwJSAtICR7KDgwICsgc3RhdHVzQmFySGVpZ2h0KSAqIDJ9cnB4KTtgXCJcbiAgICAgIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMlwiXG4gICAgPlxuICAgICAgPGNvbW1vbi1saXN0XG4gICAgICAgIGltZ1VybD1cInVybFwiXG4gICAgICAgIGluZGV4S2V5PVwib3JkZXJTblwiXG4gICAgICAgIG5vRGF0YUljb249XCJkYXRhXCJcbiAgICAgICAgOmlzU2Nyb2xsPVwidHJ1ZVwiXG4gICAgICAgIDppc0xvYWRpbmdIaWRlPVwiaXNMb2FkaW5nSGlkZVwiXG4gICAgICAgIDppc05vSWNvbj1cInRydWVcIlxuICAgICAgICA6aXNDb25kaXRpb249XCJ0cnVlXCJcbiAgICAgICAgOmRhdGFMaXN0PVwibmV3TGlzdFwiXG4gICAgICAgIEBoYW5jbGVDbGljaz1cInRvRGV0YWlsXCJcbiAgICAgICAgQGxvd2VyPVwib25SZWFjaEJvdHRvbTFcIlxuICAgICAgICA6cGFnaW5hdGlvbj1cInBhZ2luYXRpb25cIlxuICAgICAgICBsYWJlbD1cInRpdGxlXCJcbiAgICAgID5cbiAgICAgICAgPHZpZXcgc2xvdD1cImxhYmVsU2xvdFwiIHNsb3Qtc2NvcGU9XCJzbG90UHJvcHNcIj5cbiAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVySW5mbyBjb2xvcl9zaGFuZG93XCI+XG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm1haW5Db250ZW50XCI+XG4gICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRuc1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMHJweFwiPlxuICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleGJveCBvcGJ0bnNcIiBzdHlsZT1cImxldHRlci1zcGFjaW5nOiAxcnB4XCI+XG4gICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcnB4O1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliO1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPnt7IHNsb3RQcm9wcy5yb3cub3JkZXJTbiB9fVxuXG4gICAgICAgICAgICAgICAgICAgIDx1LXRhZ1xuICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cImhhbmRsZUNvcHkoc2xvdFByb3BzLnJvdy5vcmRlclNuLCAn6K6i5Y2V57yW5Y+3JylcIlxuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yPVwiIzI1OGZlYlwiXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCIjMjU4ZmViXCJcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0PVwi5aSN5Yi2XCJcbiAgICAgICAgICAgICAgICAgICAgICBwbGFpblxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibWluaVwiXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Y2Nlc3NcIlxuICAgICAgICAgICAgICAgICAgICA+PC91LXRhZz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cIml0ZW1cIj5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpdGVtX3RvcFwiXG4gICAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcnB4OyBtYXJnaW4tYm90dG9tOiAwXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cInNvdXJjZV9hcHBcIj48L3ZpZXc+XG4gICAgICAgICAgICAgICAgICA8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LXNob3c9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDBcIlxuICAgICAgICAgICAgICAgICAgICAgID7mnKrku5jmrL48L3RleHRcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNcIlxuICAgICAgICAgICAgICAgICAgICAgIHYtc2hvdz1cInNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gMVwiXG4gICAgICAgICAgICAgICAgICAgICAgPuW+heWPkei0pzwvdGV4dFxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgdi1zaG93PVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAyXCJcbiAgICAgICAgICAgICAgICAgICAgICA+5bey5Y+R6LSnPC90ZXh0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LXNob3c9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDNcIlxuICAgICAgICAgICAgICAgICAgICAgID7kuqTmmJPmiJDlip88L3RleHRcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNcIlxuICAgICAgICAgICAgICAgICAgICAgIHYtc2hvdz1cInNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gNFwiXG4gICAgICAgICAgICAgICAgICAgICAgPuS6pOaYk+Wksei0pTwvdGV4dFxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgdi1zaG93PVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSA1XCJcbiAgICAgICAgICAgICAgICAgICAgICA+5bey6L+H5pyfPC90ZXh0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJUeXBlID09ICd0cmFpbmluZ0NsYXNzJ1wiIGNsYXNzPVwiYm9va2luZm9saXN0XCI+XHJcblx0XHRcdFx0XHQ8aW1hZ2VcclxuXHRcdFx0XHRcdCAgY2xhc3M9XCJmZW5nIGZlbmdQb2ludFwiXHJcblx0XHRcdFx0XHQgIHNyYz1cIi9zdGF0aWMvaWNvbi9pY29uX3B4Yi5wbmdcIlxyXG5cdFx0XHRcdFx0ICBtb2RlPVwiYXNwZWN0RmlsbFwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHQ8L2ltYWdlPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIj5cclxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj5cclxuXHRcdFx0XHRcdFx0XHR7eyBzbG90UHJvcHMucm93LnJlbWFyayB9fVxyXG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwiXHJcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDU4cnB4O1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzO1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRcdFx0XHRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImZvbnQtc2l6ZTogMjBycHhcIj48L3RleHQ+XHJcblx0XHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHQ8L3ZpZXc+XG4gICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyVHlwZSA9PSAncmVsZWFybidcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJib29raW5mb2xpc3RcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpbWFnZVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZlbmcgZmVuZ1BvaW50XCJcbiAgICAgICAgICAgICAgICAgICAgc3JjPVwiL3N0YXRpYy9pY29uL2Z1Z291LnBuZ1wiXG4gICAgICAgICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaWxsXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDwvaW1hZ2U+XG4gICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiZGVzY3JpcHRpb25cIiA+6K++56iL5aSN6K+76K6i5Y2VXG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PiAtLT5cbiAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRucyBmbGV4Ym94XCI+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYm9va25hbWVsZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAge3sgc2xvdFByb3BzLnJvdy5yZW1hcmsgfX1cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPjwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPCEtLSA8dmlld1xuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bnMgZmxleGJveFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICM5ZjlmOWY7IG1hcmdpbi10b3A6IDEwcnB4OyBmb250LXNpemU6IDI0cnB4XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAg5LiL5Y2V5pe26Ze077yae3sgc2xvdFByb3BzLnJvdy5jcmVhdGVUaW1lIH19XG4gICAgICAgICAgICAgICAgICA8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJUeXBlID09ICd2aXAnXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYm9va2luZm9saXN0XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZW5nIGZlbmdQb2ludFwiXG4gICAgICAgICAgICAgICAgICAgIHNyYz1cIi9zdGF0aWMvaWNvbi92aXAucG5nXCJcbiAgICAgICAgICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpbGxcIlxuICAgICAgICAgICAgICAgICAgPjwvaW1hZ2U+XG4gICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiZGVzY3JpcHRpb25cIiB2LWh0bWw9XCJpdGVtLmNvbnRlbnRcIj5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgc2xvdFByb3BzLnJvdy52aXBCdXlDb25maWdFbnRpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzbG90UHJvcHMucm93LnZpcEJ1eUNvbmZpZ0VudGl0eS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiIFwiXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2aXBfeWVhclwiXG4gICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy52aXBCdXlDb25maWdFbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPih7eyBzbG90UHJvcHMucm93LnZpcEJ1eUNvbmZpZ0VudGl0eS55ZWFyIH195bm0KTwvdGV4dFxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPjwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5zIGZsZXhib3hcIlxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjOWY5ZjlmOyBtYXJnaW4tdG9wOiAxMHJweDsgZm9udC1zaXplOiAyNHJweFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIOS4i+WNleaXtumXtO+8mnt7IHNsb3RQcm9wcy5yb3cuY3JlYXRlVGltZSB9fVxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclR5cGUgPT0gJ3BvaW50J1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImJvb2tpbmZvbGlzdFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGltYWdlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZyBmZW5nUG9pbnRcIlxuICAgICAgICAgICAgICAgICAgICBzcmM9XCIvc3RhdGljL2ljb24vcGF5XzMucG5nXCJcbiAgICAgICAgICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPC9pbWFnZT5cbiAgICAgICAgICAgICAgICAgIDwhLS0gPHZpZXcgY2xhc3M9XCJkZXNjcmlwdGlvblwiIHYtaHRtbD1cIml0ZW0uY29udGVudFwiPlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz4gLS0+XG4gICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bnMgZmxleGJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJvb2tuYW1lbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgIOWFheWAvFxuICAgICAgICAgICAgICAgICAgICAgIHt7IHNsb3RQcm9wcy5yb3cuYm9va0J1eUNvbmZpZ0VudGl0eS5tb25leSB9feWkqeWMu+W4gVxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU4cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRucyBmbGV4Ym94XCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJjb2xvcjogIzlmOWY5ZjsgbWFyZ2luLXRvcDogMTBycHg7IGZvbnQtc2l6ZTogMjRycHhcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICDkuIvljZXml7bpl7TvvJp7eyBzbG90UHJvcHMucm93LmNyZWF0ZVRpbWUgfX1cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICA8dmlldyB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclR5cGUgPT0gJ29yZGVyJ1wiPlxuICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgdi1mb3I9XCIoaXRlbTIsIGluZGV4MikgaW4gc2xvdFByb3BzLnJvdy5wcm9kdWN0TGlzdFwiXG4gICAgICAgICAgICAgICAgICAgIDprZXk9XCJzbG90UHJvcHMucm93Lm9yZGVySWRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJvb2tpbmZvbGlzdFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3IHYtaWY9XCJpdGVtMi5wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwiaXRlbTIucHJvZHVjdCAmJiBpdGVtMi5wcm9kdWN0LnByb2R1Y3RJbWFnZXNcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWFnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICA6a2V5PVwiRGF0ZS5ub3coKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA6c3JjPVwiaXRlbTIucHJvZHVjdC5wcm9kdWN0SW1hZ2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2ltYWdlPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICB2LWVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2MwYzRjYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0MHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID7mmoLml6DlsIHpnaLlm748L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSA8dmlldyBjbGFzcz1cImRlc2NyaXB0aW9uXCIgdi1odG1sPVwiaXRlbS5jb250ZW50XCI+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bnMgZmxleGJveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtMi5wcm9kdWN0ICYmIGl0ZW0yLnByb2R1Y3QucHJvZHVjdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGl0ZW0yLnByb2R1Y3QucHJvZHVjdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19PC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPu+/pTwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbTIucHJvZHVjdC5wcmljZSA/IGl0ZW0yLnByb2R1Y3QucHJpY2UgOiBcIlwiIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRucyBmbGV4Ym94XCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHJweFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJsZWZ0XCIgc3R5bGU9XCJjb2xvcjogI2MwYzRjY1wiPjwvdmlldz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicmlnaHQgZmxleGJveCBvcGJ0bnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjYzBjNGNjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgw5d7eyBpdGVtMi5xdWFudGl0eSA/IGl0ZW0yLnF1YW50aXR5IDogXCJcIiB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICA8dmlldyB2LWVsc2U+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJmZW5nXCI+PC92aWV3PlxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRucyBmbGV4Ym94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJvb2tuYW1lbGVmdFwiIHN0eWxlPVwiY29sb3I6ICMxODE4MThcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA+5pyq55+l5ZWG5ZOBPC92aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicmlnaHQgZmxleGJveCBvcGJ0bnMgcHJvZHVjdF9xdWFudGl0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIMOXe3sgaXRlbTIucXVhbnRpdHkgPyBpdGVtMi5xdWFudGl0eSA6IFwiXCIgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICA8dmlldyBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcnB4OyBvdmVyZmxvdzogaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bnMgZmxleGJveFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0OyB3aWR0aDogYXV0byAhaW1wb3J0YW50XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJpZ2h0IGZsZXhib3ggb3BidG5zXCJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDRycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+5a6e5LuY5qy+PC92aWV3XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBtYXJnaW4tdG9wOiA4cnB4OyAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDZycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPu+/pTwvdGV4dD4gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclR5cGUgPT0gJ3BvaW50J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBzbG90UHJvcHMucm93LmJvb2tCdXlDb25maWdFbnRpdHkucmVhbE1vbmV5IH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCB2LWlmPVwic2xvdFByb3BzLnJvdy5yZWFsTW9uZXkgPiAwICYmc2xvdFByb3BzLnJvdy5vcmRlclR5cGUgIT0gJ3BvaW50J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICDvv6V7eyBzbG90UHJvcHMucm93LnJlYWxNb25leSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW46IDAgNHJweFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbG90UHJvcHMucm93LnJlYWxNb25leSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbG90UHJvcHMucm93LmpmRGVkdWN0aW9uID4gMCAgJiZzbG90UHJvcHMucm93Lm9yZGVyVHlwZSAhPSAncG9pbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICtcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGV4dD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgdi1pZj1cInNsb3RQcm9wcy5yb3cuamZEZWR1Y3Rpb24gPiAwICAmJnNsb3RQcm9wcy5yb3cub3JkZXJUeXBlICE9ICdwb2ludCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgc2xvdFByb3BzLnJvdy5qZkRlZHVjdGlvbiB9fSDnp6/liIY8L3RleHRcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcGVyYXRpb25fYm94IGJveFNoYWRvd1wiXG4gICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5pc1Nob3dNb3JlID09IHRydWVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDBcIlxuICAgICAgICAgICAgICAgICAgICBAY2xpY2submF0aXZlLnN0b3A9XCJjYW5jZU9yZGVyKHNsb3RQcm9wcy5yb3cpXCJcbiAgICAgICAgICAgICAgICAgICAgPuWPlua2iOiuouWNlTwvdmlld1xuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bnMgZmxleGJveFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBycHhcIj5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVmdFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICNjMGM0Y2NcIlxuICAgICAgICAgICAgICAgICAgICBAY2xpY2submF0aXZlLnN0b3A9XCJcbiAgICAgICAgICAgICAgICAgICAgICBvcGVuTW9yZShzbG90UHJvcHMucm93LCBzbG90UHJvcHMucm93SW5kZXgpXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgID7mm7TlpJo8L3ZpZXdcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwicmlnaHQgZmxleGJveCBvcGJ0bnNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzYnRuIG9yZGVyc3RhdHVzYnRuX3N1Y2Nlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gMCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgc2xvdFByb3BzLnJvdy5wYXltZW50TWV0aG9kICE9IDNcbiAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljay5zdG9wPVwiZ29QYXkoc2xvdFByb3BzLnJvdylcIlxuICAgICAgICAgICAgICAgICAgICAgID7nu6fnu63ku5jmrL48L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNidG5cIlxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDFcIlxuICAgICAgICAgICAgICAgICAgICAgID7lgqzlj5HotKc8L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNidG5cIlxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDJcIlxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljay5uYXRpdmUuc3RvcD1cInNlZUV4cHJlc3NEZXRhaWwoc2xvdFByb3BzLnJvdylcIlxuICAgICAgICAgICAgICAgICAgICAgID7mn6XnnIvnianmtYE8L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNidG5cIlxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDJcIlxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljay5uYXRpdmUuc3RvcD1cIk92ZXJPcmRlcihzbG90UHJvcHMucm93KVwiXG4gICAgICAgICAgICAgICAgICAgICAgPuehruiupOaUtui0pzwvdmlld1xuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c2J0blwiXG4gICAgICAgICAgICAgICAgICAgICAgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gM1wiXG4gICAgICAgICAgICAgICAgICAgICAgPueUs+ivt+WUruWQjjwvdmlld1xuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwiaXRlbS5vcmRlclN0YXR1cyA9PSAzICYmIHVzZXJSZWNvcmRpZCA9PSBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICBAY2xpY2submF0aXZlLnN0b3A9XCJwaW5namkoaXRlbS5wcm9kdWN0SWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICA+6K+E5Lu3PC92aWV3XG4gICAgICAgICAgICAgICAgICAgID4gLS0+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPHZpZXcgY2xhc3M9XCJvcmRlcnN0YXR1c2J0blwiIHYtaWY9XCJpdGVtLm9yZGVyU3RhdHVzID09IDMgJiYgdXNlclJlY29yZGlkICE9IG51bGxcIiBAY2xpY2suc3RvcD1cInNob3daaHVpcGluZyhpdGVtLnByb2R1Y3RJZClcIj7ov73or4Q8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICBzdHlsZT1cImJvcmRlci1ib3R0b206IDJycHggc29saWQgI2U5ZTllOTsgaGVpZ2h0OiA1MHJweFwiXG4gICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvd0luZGV4IDwgc2xvdFByb3BzLnJvdy5sZW5ndGggLSAxXCJcbiAgICAgICAgICAgICAgICA+PC92aWV3PlxuICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgIDwhLS0gPHZpZXcgY2xhc3M9XCJidG5zXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHJweFwiPlxuICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleGJveCBvcGJ0bnNcIiBzdHlsZT1cIlwiPlxuICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhycHg7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM5YjliOWI7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+PHUtaWNvblxuICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjbG9ja1wiXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCIjOWI5YjliXCJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi1yaWdodDogMTBycHhcIlxuICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCIyMFwiXG4gICAgICAgICAgICAgICAgICAgID48L3UtaWNvblxuICAgICAgICAgICAgICAgICAgICA+e3sgc2xvdFByb3BzLnJvdy5jcmVhdGVUaW1lIH19PC92aWV3XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICA8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgIDwhLS0gPHRleHQgdi1pZj1cInNsb3RQcm9wcy5yb3cuY29uZGl0aW9ucyE9JzAzJ1wiPuOAkOivleWQrOOAkTwvdGV4dD4gLS0+XG4gICAgICAgIDwvdmlldz5cbiAgICAgIDwvY29tbW9uLWxpc3Q+XG4gICAgPC92aWV3PlxuXG4gICAgPCEtLSDlr7nor53moYYgLS0+XG4gICAgPHUtcG9wdXAgOnNob3c9XCJwaW5namlhU2hvd1wiIDpyb3VuZD1cIjEwXCIgQGNsb3NlPVwiY2xvc2VQaW5namlhXCI+XG4gICAgICA8dmlldyBjbGFzcz1cInRhbmNodVwiPlxuICAgICAgICA8dmlldyBjbGFzcz1cImRwX3RpdGxlXCIgdi1pZj1cInBqVHlwZSAhPSAnemh1aXBpbmcnXCI+5re75Yqg6K+E5Lu3PC92aWV3PlxuICAgICAgICA8dmlldyBjbGFzcz1cImRwX3RpdGxlXCIgdi1lbHNlPua3u+WKoOi/veivhDwvdmlldz5cblxuICAgICAgICA8dmlldyBzdHlsZT1cIm1heC1oZWlnaHQ6IDEwMDBycHg7IG92ZXJmbG93LXk6IHNjcm9sbFwiPlxuICAgICAgICAgIDx1bmktZm9ybXMgOm1vZGVsVmFsdWU9XCJQZm9ybVwiPlxuICAgICAgICAgICAgPCEtLSDor4Tku7flm77niYcgLS0+XG4gICAgICAgICAgICA8IS0tIGVuZCAtLT5cbiAgICAgICAgICAgIDwhLS0gPHVuaS1mb3Jtcy1pdGVtIG5hbWU9XCJjb21tZW50XCIgbGFiZWwtd2lkdGg9XCIwXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dW5pLWVhc3lpbnB1dCB0eXBlPVwidGV4dGFyZWFcIiB2LW1vZGVsPVwiUGZvcm0uY29tbWVudFwiIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5oKo55qE5ZWG5ZOB6K+E5Lu3XCIgIC8+XG5cdFx0XHRcdFx0XHRcdFx0PC91bmktZm9ybXMtaXRlbT5cdFx0IC0tPlxuICAgICAgICAgIDwvdW5pLWZvcm1zPlxuICAgICAgICAgIDwhLS0gPHUtYnV0dG9uIHR5cGU9XCJzdWNjZXNzXCIgQGNsaWNrPVwic3VibWl0UEpcIj7mj5DkuqTor4Tku7c8L3UtYnV0dG9uPiAtLT5cbiAgICAgICAgICA8IS0tIOaPkOS6pCAtLT5cbiAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgY2xhc3M9XCJwYWRkaW5nLWJvdHRvbS1zbSBmbGV4IHBhZGRpbmctbHItc21cIlxuICAgICAgICAgICAgc3R5bGU9XCJib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJtYjMwXCIgdi1pZj1cInBqVHlwZSAhPSAnemh1aXBpbmcnXCI+XG4gICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiWydzdGFyJywgUGZvcm0uc3RhciA+PSAxID8gJ3N0YXJMaWdodCcgOiAnc3RhckdyYXknXVwiXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwiZ2V0U3RhcigxKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gMiA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoMilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbJ3N0YXInLCBQZm9ybS5zdGFyID49IDMgPyAnc3RhckxpZ2h0JyA6ICdzdGFyR3JheSddXCJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZXRTdGFyKDMpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiWydzdGFyJywgUGZvcm0uc3RhciA+PSA0ID8gJ3N0YXJMaWdodCcgOiAnc3RhckdyYXknXVwiXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwiZ2V0U3Rhcig0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gNSA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoNSlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwibWIzMFwiIHYtaWY9XCJwalR5cGUgIT0gJ3podWlwaW5nJ1wiPlxuICAgICAgICAgICAgICA8IS0tIDx1bmktZmlsZS1waWNrZXIgOmF1dG8tdXBsb2FkPVwiZmFsc2VcIiByZWY9XCJmaWxlc1wiIEBkZWxldGU9XCJkZWxldGVJbWdcIiBsaW1pdD1cIjVcIiBAc3VjY2Vzcz1cInVwU3VjY2Vzc1wiIEBzZWxlY3Q9XCJzZWxlY3RcIiB2LW1vZGVsPVwiUGZvcm0uaW1nXCIgZmlsZU1lZGlhdHlwZT1cImltYWdlXCIgOmltYWdlLXN0eWxlcz1cImltYWdlU3R5bGVzXCIvPiAtLT5cbiAgICAgICAgICAgICAgPHUtdXBsb2FkXG4gICAgICAgICAgICAgICAgOmZpbGVMaXN0PVwiUGZvcm0uaW1nXCJcbiAgICAgICAgICAgICAgICBAYWZ0ZXJSZWFkPVwiYWZ0ZXJSZWFkXCJcbiAgICAgICAgICAgICAgICBAZGVsZXRlPVwiZGVsZXRlUGljXCJcbiAgICAgICAgICAgICAgICBtdWx0aXBsZVxuICAgICAgICAgICAgICAgIDptYXhDb3VudD1cIjRcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiODBcIlxuICAgICAgICAgICAgICAgIGhlaWdodD1cIjgwXCJcbiAgICAgICAgICAgICAgICA6cHJldmlld0Z1bGxJbWFnZT1cInRydWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvdS11cGxvYWQ+XG4gICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cImZsZXgtc3ViIGZsZXhib3hcIj5cbiAgICAgICAgICAgICAgPGkgQGNsaWNrPVwic2hvd0VtaigpXCIgOmNsYXNzPVwiZW1vamlJY29uXCI+PC9pPlxuICAgICAgICAgICAgICA8IS0tIDxpbnB1dCB0eXBlPVwidGV4dFwiIEBmb2N1cz1cIklucHV0Rm9jdXNcIiBAYmx1cj1cIklucHV0Qmx1clwiIHYtbW9kZWw9XCJtZXNzYWdlXCIgIEBpbnB1dD1cInRleHRhcmVhQklucHV0XCIgIHBsYWNlaG9sZGVyLXN0eWxlPVwiZm9udC1zaXplOjI0cnB4O2NvbG9yOiNhYWFhYWE7XCIgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5oKo6KaB5Y+R6YCB55qE5YaF5a65XCI+PC9pbnB1dD4gLS0+XG4gICAgICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dGFyZWFcIlxuICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJQZm9ybS5jb21tZW50XCJcbiAgICAgICAgICAgICAgICBAZm9jdXM9XCJJbnB1dEZvY3VzXCJcbiAgICAgICAgICAgICAgICBAYmx1cj1cIklucHV0Qmx1clwiXG4gICAgICAgICAgICAgICAgQGlucHV0PVwidGV4dGFyZWFCSW5wdXRcIlxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLXN0eWxlPVwiZm9udC1zaXplOjI0cnB4O2NvbG9yOiNhYWFhYWE7XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaCqOimgeWPkemAgeeahOWGheWuuVwiXG4gICAgICAgICAgICAgID48L3RleHRhcmVhPlxuICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJcIj5cbiAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uIGNsYXNzPVwiY3UtYnRuIGJnLWdyYWR1YWwtYmx1ZSBzaGFkb3ctYmx1clwiPuWPkemAgTwvYnV0dG9uPiAtLT5cbiAgICAgICAgICAgICAgPHUtYnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cInN1Y2Nlc3NcIlxuICAgICAgICAgICAgICAgIEBjbGljaz1cInN1Ym1pdFBKXCJcbiAgICAgICAgICAgICAgICB2LWlmPVwicGpUeXBlICE9ICd6aHVpcGluZydcIlxuICAgICAgICAgICAgICAgID7mj5DkuqTor4Tku7c8L3UtYnV0dG9uXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHUtYnV0dG9uIHR5cGU9XCJzdWNjZXNzXCIgQGNsaWNrPVwiemh1aXBpbmdcIiB2LWVsc2VcbiAgICAgICAgICAgICAgICA+5o+Q5Lqk6L+96K+EPC91LWJ1dHRvblxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgPHZpZXcgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmVcIj5cbiAgICAgICAgICAgIDxlbW90aW9uXG4gICAgICAgICAgICAgIEBlbW90aW9uPVwiaGFuZGxlRW1qXCJcbiAgICAgICAgICAgICAgOmhlaWdodD1cIjIyMFwiXG4gICAgICAgICAgICAgIHYtaWY9XCJpc1Nob3dFbWpcIlxuICAgICAgICAgICAgICA6d2luZG93V2lkdGg9XCJ3aW5kb3dXaWR0aFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2Vtb3Rpb24+XG4gICAgICAgICAgPC92aWV3PlxuICAgICAgICA8L3ZpZXc+XG4gICAgICA8L3ZpZXc+XG4gICAgPC91LXBvcHVwPlxuICAgIDx6LW5hdmlnYXRpb24+PC96LW5hdmlnYXRpb24+XG4gICAgPHUtYWN0aW9uLXNoZWV0XG4gICAgICA6Y2xvc2VPbkNsaWNrQWN0aW9uPVwidHJ1ZVwiXG4gICAgICA6Y2xvc2VPbkNsaWNrT3ZlcmxheT1cInRydWVcIlxuICAgICAgOmFjdGlvbnM9XCJtb3JlTGlzdFwiXG4gICAgICA6c2hvdz1cImlzU2hvd01vcmVcIlxuICAgICAgY2FuY2VsVGV4dD1cIuWFs+mXrVwiXG4gICAgICBAY2xvc2U9XCJpc1Nob3dNb3JlID0gZmFsc2VcIlxuICAgICAgQHNlbGVjdD1cInNlbGVjdENsaWNrXCJcbiAgICA+PC91LWFjdGlvbi1zaGVldD5cbiAgPC92aWV3PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCAkaHR0cCBmcm9tIFwiQC9jb25maWcvcmVxdWVzdENvbmZpZy5qc1wiO1xuaW1wb3J0IGVtb3Rpb24gZnJvbSBcIkAvYmtodW1vci1lbW9qaXBsdXMvY29tcG9uZW50cy9ia2h1bW9yLWVtb2ppcGx1cy9ia2h1bW9yLWVtb2ppcGx1cy52dWVcIjtcbi8vIGltcG9ydCBtdXNpY1BsYXkgZnJvbSBcIkAvY29tcG9uZW50cy9tdXNpYy52dWVcIjtcbmltcG9ydCB7IHNldFBheSwgc2V0UGF5QXNzaWduLCBzZXRXWFBheSB9IGZyb20gXCJAL2NvbmZpZy91dGlsc1wiO1xuLy8gaW1wb3J0IHsgZGF0YSB9IGZyb20gJ2pxdWVyeSc7XG5pbXBvcnQgeyBtYXBTdGF0ZSwgbWFwTXV0YXRpb25zIH0gZnJvbSBcInZ1ZXhcIjtcbmV4cG9ydCBkZWZhdWx0IHtcbiAgZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNTaG93TW9yZTogZmFsc2UsXG4gICAgICBjb21lOiBcIjJcIixcbiAgICAgIGlzU2hvd1RhYjogZmFsc2UsXG4gICAgICBpc0xvYWRpbmdIaWRlOiBmYWxzZSxcbiAgICAgIG1vcmVMaXN0OiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIuWPlua2iOiuouWNlVwiLFxuICAgICAgICAgIGtleTogXCJmYWxzZVwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGN1cnJlbnRDYXRlSW5kZXg6IDAsXG4gICAgICBwYWdpbmF0aW9uOiB7XG4gICAgICAgIC8vIOivt+axguWPguaVsFxuICAgICAgICBwYWdlOiAxLCAvL+mhteeggVxuICAgICAgICBsaW1pdDogMjAsIC8v5q+P6aG15pi+56S6XG4gICAgICAgIHRvdGFsOiAwLCAvL+aAu+adoeaVsFxuICAgICAgfSxcbiAgICAgIC8vIGxvYWRpbmdOb3cgOiBmYWxzZSxcbiAgICAgIHBsYXlEYXRhOiB7fSxcbiAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgZW1vamlJY29uOiBcImN1SWNvbi1lbW9qaVwiLFxuICAgICAgd2luZG93V2lkdGg6IDAsXG4gICAgICBib29raWQ6IG51bGwsXG4gICAgICBib29rbGlzdHBhZ2U6IDEsXG4gICAgICBwcm9kdWN0TGlzdDogW10sXG4gICAgICBwcm9kdWN0SW5mbzoge30sXG4gICAgICBlbW9qaTogW10sXG4gICAgICBGaWxlczogW10sXG4gICAgICBwYWdlOiAxLFxuICAgICAgcGFnZVNpemU6IDEwLFxuICAgICAgdG90YWw6IDAsXG4gICAgICBzdGF0dXM6IDMsXG4gICAgICBzaHVwaW5nTGlzdDogW10sXG4gICAgICBiZmFpZDogbnVsbCxcbiAgICAgIG9yZGVyc1RhYnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwi5YWo6YOoXCIsXG4gICAgICAgICAgdmFsdWU6IC0xLFxuICAgICAgICAgIGJhZGdlOiB7fSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwi5b6F5LuY5qy+XCIsXG4gICAgICAgICAgdmFsdWU6IDAsXG4gICAgICAgICAgYmFkZ2U6IHt9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCLlvoXlj5HotKdcIixcbiAgICAgICAgICB2YWx1ZTogMSxcbiAgICAgICAgICBiYWRnZToge30sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIuW+heaUtui0p1wiLFxuICAgICAgICAgIHZhbHVlOiAyLFxuICAgICAgICAgIGJhZGdlOiB7fSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwi5bey5a6M5oiQXCIsXG4gICAgICAgICAgdmFsdWU6IDMsXG4gICAgICAgICAgYmFkZ2U6IHt9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHNlbGVjdE9yZGVySW5mbzoge30sXG4gICAgICBvcmRlcnNMaXN0VGFiOiAxLFxuICAgICAgbmV3ZXN0cGFnZTogMSxcbiAgICAgIC8vIGhvdGVzdHBhZ2U6IDEsXG4gICAgICAvLyBib29rc2V0cGFnZTogMSxcbiAgICAgIG5ld0xpc3Q6IFtdLFxuICAgICAgLy8gaG90TGlzdDpbXSxcbiAgICAgIC8vIGJvb2tMaXN0OltdLFxuICAgICAgbWFwOiB7fSxcbiAgICAgIHVzZXJSZWNvcmRpZDogbnVsbCwgLy8g55So5oi355qE6K+E5Lu354q25oCBXG4gICAgICBwaW5namlhU2hvdzogZmFsc2UsIC8v5re75Yqg6K+E5Lu3XG4gICAgICBQZm9ybToge1xuICAgICAgICAvLyDor4Tku7fooajljZVcbiAgICAgICAgc3RhcjogMCxcbiAgICAgICAgY29tbWVudDogXCJcIixcbiAgICAgICAgaW1nOiBbXSxcbiAgICAgICAgaHRtbDogXCJcIixcbiAgICAgIH0sXG4gICAgICBpc1Nob3dFbWo6IGZhbHNlLFxuICAgICAgcGpUeXBlOiBcIlwiLFxuICAgIH07XG4gIH0sXG4gIG9uUHVsbERvd25SZWZyZXNoKCkge1xuICAgIHVuaS5zdG9wUHVsbERvd25SZWZyZXNoKCk7XG5cbiAgICB0aGlzLm5ld2VzdHBhZ2UgPSAxO1xuICAgIHRoaXMubmV3TGlzdCA9IFtdO1xuICAgIHRoaXMuZ2V0Qm9va0xpc3QodGhpcy5vcmRlcnNMaXN0VGFiLCBmYWxzZSk7XG4gIH0sXG4gIG9uUmVhY2hCb3R0b20oKSB7XG4gICAgdGhpcy5uZXdlc3RwYWdlKys7XG4gICAgdGhpcy5nZXRCb29rTGlzdCh0aGlzLm9yZGVyc0xpc3RUYWIsIGZhbHNlKTtcbiAgfSxcbiAgb25Mb2FkKGUpIHtcbiAgICB0aGlzLndpbmRvd1dpZHRoID0gdW5pLmdldFN5c3RlbUluZm9TeW5jKCkud2luZG93V2lkdGg7XG4gICAgdGhpcy5vcHRpb25zID0gZTtcbiAgICAvLyDpmpDol4/ljp/nlJ/nmoR0YWJiYXJcbiAgICB1bmkuaGlkZVRhYkJhcigpO1xuICB9LFxuICBhc3luYyBvblNob3coKSB7XG4gICAgdGhpcy5uZXdMaXN0ID0gW107XG4gICAgdGhpcy5wYWdpbmF0aW9uID0ge1xuICAgICAgcGFnZTogMSwgLy/pobXnoIFcbiAgICAgIGxpbWl0OiAyMCwgLy/mr4/pobXmmL7npLpcbiAgICAgIHRvdGFsOiAwLCAvL+aAu+adoeaVsFxuICAgIH07XG4gICAgdGhpcy4kbmV4dFRpY2soYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgdGhpcy5vcmRlcnNUYWJDTGkodGhpcy5vcmRlcnNUYWJzWzBdLCAwKTtcbiAgICB9KTtcbiAgfSxcbiAgYXN5bmMgb25UYWJJdGVtVGFwKCkge1xuICAgIHRoaXMubmV3TGlzdCA9IFtdO1xuICAgIHRoaXMucGFnaW5hdGlvbiA9IHtcbiAgICAgIHBhZ2U6IDEsIC8v6aG156CBXG4gICAgICBsaW1pdDogMjAsIC8v5q+P6aG15pi+56S6XG4gICAgICB0b3RhbDogMCwgLy/mgLvmnaHmlbBcbiAgICB9O1xuICB9LFxuICBvblJlYWR5KCkge30sXG4gIGNvbXB1dGVkOiB7XG4gICAgLi4ubWFwU3RhdGUoW1widXNlckluZm9cIl0pLFxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgLi4ubWFwTXV0YXRpb25zKFtcInNldExvYWRpbmdTaG93XCJdKSxcbiAgICBnZXRJbWFnZVVybCh1cmwpIHtcbiAgICAgIC8vIOmAmui/h+WcqFVSTOWQjumdoua3u+WKoOaXtumXtOaIs+adpemBv+WFjee8k+WtmFxuICAgICAgcmV0dXJuIGAke3VybH0/dGltZXN0YW1wPSR7RGF0ZS5ub3coKX1gO1xuICAgIH0sXG4gICAgc2VsZWN0Q2xpY2soaW5kZXgpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiaW5kZXggYXQgbGluZSA2MDk6XCIsIGluZGV4KTtcbiAgICAgIGlmIChpbmRleC5rZXkgPT0gXCJmYWxzZVwiKSB7XG4gICAgICAgIHRoaXMuaXNTaG93TW9yZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNhbmNlT3JkZXIodGhpcy5zZWxlY3RPcmRlckluZm8pO1xuICAgICAgfVxuICAgIH0sXG4gICAgb3Blbk1vcmUocm93LCBpbmRleCkge1xuICAgICAgdGhpcy5zZWxlY3RPcmRlckluZm8gPSByb3c7XG4gICAgICB0aGlzLmlzU2hvd01vcmUgPSB0cnVlO1xuICAgIH0sXG4gICAgaGFuZGxlQ29weSh2YWx1ZSwgdGl0bGUpIHtcbiAgICAgIHRoaXMuJGNvbW1vbkpTLmhhbmRsZUNvcHkodmFsdWUsIHRpdGxlKTtcbiAgICB9LFxuICAgIG9uUmVhY2hCb3R0b20xKCkge1xuICAgICAgLy8g5LiK5ouJ5Yqg6L29XG4gICAgICAvLyDlvZPliJfooajmlbDph4/kuI3lpKfkuo7miJbnrYnkuo7mgLvmlbDph4/vvIzliJnlho3mrKHosIPnlKjmjqXlj6Por7fmsYLmlbDmja5cbiAgICAgIGlmICh0aGlzLm5ld0xpc3QubGVuZ3RoID49IHRoaXMucGFnaW5hdGlvbi50b3RhbCkgcmV0dXJuO1xuICAgICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2UrKztcbiAgICAgIHRoaXMuZ2V0Qm9va0xpc3QodGhpcy5vcmRlcnNMaXN0VGFiLCBmYWxzZSk7XG4gICAgfSxcbiAgICBnb0hvbWUoKSB7XG4gICAgICBpZiAodGhpcy5vcHRpb25zLnR5cGUgPT0gXCJvcmRlclwiKSB7XG4gICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xuICAgICAgICAgIHVybDogXCIvcGFnZXMvaG9tZVBhZ2UvaW5kZXgvaW5kZXhcIixcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB1bmkubmF2aWdhdGVCYWNrKHtcbiAgICAgICAgICBkZWx0YTogMSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICAvLyDliIfmjaJ0YWLnirbmgIFcbiAgICBvcmRlcnNUYWJDTGkoZGF0YSwgaW5kZXgpIHtcbiAgICAgIHRoaXMuY3VycmVudENhdGVJbmRleCA9IGluZGV4O1xuICAgICAgdGhpcy5wYWdpbmF0aW9uID0ge1xuICAgICAgICBwYWdlOiAxLCAvL+mhteeggVxuICAgICAgICBsaW1pdDogMjAsIC8v5q+P6aG15pi+56S6XG4gICAgICAgIHRvdGFsOiAwLCAvL+aAu+adoeaVsFxuICAgICAgfTtcbiAgICAgIGNvbnNvbGUubG9nKFwiZGF0YSBhdCBsaW5lIDQ1NDpcIiwgZGF0YSk7XG4gICAgICB0aGlzLm9yZGVyc0xpc3RUYWIgPSBkYXRhLnZhbHVlO1xuICAgICAgdGhpcy5uZXdlc3RwYWdlID0gMTtcbiAgICAgIC8vIHRoaXMuaG90ZXN0cGFnZSA9IDFcbiAgICAgIC8vIHRoaXMuYm9va3NldHBhZ2UgPSAxXG4gICAgICB0aGlzLm5ld0xpc3QgPSBbXTtcbiAgICAgIC8vIHRoaXMuaG90TGlzdCA9IFtdXG4gICAgICAvLyB0aGlzLmJvb2tMaXN0ID0gW11cbiAgICAgIHRoaXMuZ2V0Qm9va0xpc3QodGhpcy5vcmRlcnNMaXN0VGFiLCBmYWxzZSk7XG4gICAgfSxcbiAgICAvLyDmn6XnnIvmnKzkuabmm7TlpJrkuabor4RcbiAgICB0b01vcmUodmFsKSB7XG4gICAgICBjb25zb2xlLmxvZyh2YWwsIFwidmFsXCIpO1xuICAgICAgdW5pLm5hdmlnYXRlVG8oe1xuICAgICAgICB1cmw6IFwiLi4vY29tbWVudHMvY29tbWVudHM/Ym9va2lkPVwiICsgdmFsLmlkLFxuICAgICAgfSk7XG4gICAgfSxcbiAgICAvLyDorqLljZXor6bmg4VcbiAgICB0b0RldGFpbCh2YWwpIHtcbiAgICAgIGNvbnNvbGUubG9nKHZhbCwgXCJ2YWxcIik7XG4gICAgICAvLyB1bmkubmF2aWdhdGVUbyh7XG4gICAgICAvLyBcdHVybDonLi4vYm9va1Nob3AvY29tbWVudHNEZXRhaWw/Ym9va2lkPScrdmFsLmJvb2tpZCsnJmJmYV9pZD0nK3ZhbC5pZFxuICAgICAgLy8gfSlcbiAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcbiAgICAgICAgdXJsOlxuICAgICAgICAgIFwiL3BhZ2VzL2Jvb2tTaG9wL29yZGVyTENvbnQ/b3JkZXJJZD1cIiArXG4gICAgICAgICAgdmFsLm9yZGVySWQgK1xuICAgICAgICAgIFwiJm9yZGVyVHlwZT1cIiArXG4gICAgICAgICAgdmFsLm9yZGVyU3RhdHVzICtcbiAgICAgICAgICBcIiZvcmRlclNuPVwiICtcbiAgICAgICAgICB2YWwub3JkZXJTbixcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2V0Qm9va0xpc3QoZmxhZywgcmVmcmVzaGZsYWcpIHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nSGlkZSA9IGZhbHNlO1xuICAgICAgdmFyIHRoYXQgPSB0aGlzO1xuICAgICAgLy8g5qC55o2udGFi5LiN5ZCM77yM6I635Y+W5pyA5paw5Lmm6K+E44CB5pyA54Ot5Lmm6K+E44CB5Lmm6ZuG5YiX6KGoXG4gICAgICAvLyB1bmkuc2hvd0xvYWRpbmcoe1xuICAgICAgLy8gXHR0aXRsZTogJ+WKoOi9veS4rSdcbiAgICAgIC8vIH0pO1xuXG4gICAgICAvLyDpobbpg6jnuqLngrnmlbDph49cbiAgICAgICRodHRwXG4gICAgICAgIC5yZXF1ZXN0KHtcbiAgICAgICAgICB1cmw6IFwiY29tbW9uL2J1eU9yZGVyL2dldEJ1eU9yZGVyTnVtQnlTdGF0dXNcIixcbiAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHVzZXJJZDogdGhhdC51c2VySW5mby5pZCxcbiAgICAgICAgICAgIGNvbWU6IHRoaXMuY29tZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxuICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgIC8vICAgICAgICAgICDorqLljZXnirbmgIFcbiAgICAgICAgICAvLyAqIDA6IOW+heS7mOasvlxuICAgICAgICAgIC8vICogMTog5b6F5Y+R6LSnXG4gICAgICAgICAgLy8gKiAyOiDlt7Llj5HotKdcbiAgICAgICAgICAvLyAqIDPvvJrlt7LlrozmiJBcbiAgICAgICAgICAvLyAqIDQ6IOS6pOaYk+Wksei0pVxuICAgICAgICAgIC8vICogNTog5bey6L+H5pyfXG5cbiAgICAgICAgICBjb25zb2xlLmxvZyhcInJlcyBhdCBsaW5lIDc1NzpcIiwgcmVzKTtcbiAgICAgICAgICB0aGF0Lm1hcCA9IHJlcy5kYXRhO1xuXG4gICAgICAgICAgdGhhdC5vcmRlcnNUYWJzLm1hcCgoZSkgPT4ge1xuICAgICAgICAgICAgaWYgKGUudmFsdWUgPT0gMCB8fCBlLnZhbHVlID09IDEgfHwgZS52YWx1ZSA9PSAyKSB7XG4gICAgICAgICAgICAgIHZhciBudW1MaXN0ID0gdGhhdC5tYXAuZmlsdGVyKCh2KSA9PiB2Lm9yZGVyX3N0YXR1cyA9PSBlLnZhbHVlKTtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJudW0gYXQgbGluZSA3NzE6XCIsIG51bUxpc3QpO1xuICAgICAgICAgICAgICBpZiAobnVtTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgZS5iYWRnZSA9IHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBudW1MaXN0WzBdLm51bSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGUuYmFkZ2UgPSB7fTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZS5iYWRnZSA9IHt9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIC8vIHRoaXMuJHNldCgndGhpcy5vcmRlcnNUYWJzJywpXG4gICAgICAgICAgdGhhdC4kZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICB2YXIgcGFyYW1zID0ge1xuICAgICAgICB1c2VySWQ6IHRoaXMudXNlckluZm8uaWQsXG4gICAgICAgIGNvbWU6IHRoaXMuY29tZSxcbiAgICAgICAgb3JkZXJTdGF0dXM6IGZsYWcgPT0gLTEgPyBcIlwiIDogZmxhZywgLy/kvKBudWxs5Li65YWo6YOo77yM6K6i5Y2V54q25oCBICAwLeacquS7mOasviAxLeW+heWPkei0pyAyLeW3suWPkei0pyAzLeS6pOaYk+aIkOWKnyA0LeS6pOaYk+Wksei0pSA1Lei/h+acn1xuICAgICAgICAuLi50aGlzLnBhZ2luYXRpb24sXG4gICAgICAgIC8vIGxpbWl0OiAxMCxcbiAgICAgICAgLy8gcGFnZTogdGhpcy5uZXdlc3RwYWdlLFxuICAgICAgfTtcbiAgICAgIHRoaXMuJGh0dHBcbiAgICAgICAgLnJlcXVlc3Qoe1xuICAgICAgICAgIHVybDogXCJjb21tb24vYnV5T3JkZXIvY29tbW9uQnV5T3JkZXJMaXN0XCIsXG4gICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xuICAgICAgICAgIGRhdGE6IHBhcmFtcyxcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcbiAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIuiuouWNleWIl+ihqOWGheWuueiOt+WPluaIkOWKn1wiLCByZXMpO1xuICAgICAgICAgIHRoYXQucGFnaW5hdGlvbi50b3RhbCA9IHJlcy5kYXRhLnRvdGFsO1xuICAgICAgICAgIGlmIChyZXMuZGF0YS50b3RhbCA9PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZ0hpZGUgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMCAmJiByZXMuZGF0YSAmJiByZXMuZGF0YS5yZWNvcmRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoYXQubmV3TGlzdCA9IHRoYXQubmV3TGlzdC5jb25jYXQocmVzLmRhdGEucmVjb3Jkcyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChyZXMuZGF0YS5yZWNvcmRzLmxlbmd0aCAhPSAxMCkge1xuICAgICAgICAgICAgdGhhdC5zdGF0dXMgPSAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGF0LnN0YXR1cyA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgfSk7XG4gICAgfSxcbiAgICAvLyDmlK/ku5hcbiAgICBnb1BheShwYXlJdGVtKSB7XG4gICAgICBjb25zb2xlLmxvZyhwYXlJdGVtLCBcIuiuouWNleaVsOaNrlwiKTtcbiAgICAgIGlmIChwYXlJdGVtLnBheW1lbnRNZXRob2QgPT0gMikge1xuICAgICAgICBjb25zb2xlLmxvZyhcIumYv+mHjOaUr+S7mFwiKTtcbiAgICAgICAgc2V0UGF5KFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGVQYXk6IFwiYWxpcGF5XCIsXG4gICAgICAgICAgICBzdWJqZWN0OiBcIm9yZGVyXCIsXG4gICAgICAgICAgICB0b3RhbEFtb3VudDogcGF5SXRlbS5yZWFsTW9uZXksXG4gICAgICAgICAgICB0eXBlOiAyLFxuICAgICAgICAgICAgcmVsZXZhbmNlb2lkOiBwYXlJdGVtLm9yZGVyU24sXG4gICAgICAgICAgICBjdXN0b21lcklkOiB0aGlzLnVzZXJJbmZvLmlkLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgKHJlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHJlcy5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuaUr+S7mOaIkOWKn1wiLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuaUr+S7mOWksei0pVwiLFxuICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIGltYWdlOiBcIi4uLy4uL3N0YXRpYy9pY29uL2ljX2Nsb3NlLnBuZ1wiLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZ2V0T3JkZXJMaXN0KCk7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChwYXlJdGVtLnBheW1lbnRNZXRob2QgPT0gMSkge1xuICAgICAgICBjb25zb2xlLmxvZyhcIuW+ruS/oeaUr+S7mFwiKTtcblxuICAgICAgICBsZXQgZGF0YTEgPSB7XG4gICAgICAgICAgb3JkZXJTbjogcGF5SXRlbS5vcmRlclNuLFxuICAgICAgICAgIGJ1eU9yZGVySWQ6IG51bGwsXG4gICAgICAgICAgdG90YWxBbW91bnQ6IHBheUl0ZW0ucmVhbE1vbmV5LFxuICAgICAgICB9O1xuICAgICAgICBjb25zb2xlLmxvZyhkYXRhMSwgXCJkYXRhMVwiKTtcbiAgICAgICAgc2V0V1hQYXkoZGF0YTEsIChyZXMpID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jmiJDlip9cIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xuICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmVyck1zZy5pbmRleE9mKFwiVXNlciBjYW5jZWxlZFwiKSAhPSAtMSkge1xuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLnlKjmiLflj5bmtojmlK/ku5hcIixcbiAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jlpLHotKVcIixcbiAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDMgJiYgdGhpcy5vcmRlcnNMaXN0VGFiID09IDApIHtcbiAgICAgICAgLy8g6Iu55p6c5YWF5YC8XG4gICAgICAgIGNvbnNvbGUubG9nKFwi6Iu55p6c5LqM5qyh5pSv5LuYXCIpO1xuICAgICAgICB1bmkuc2hvd01vZGFsKHtcbiAgICAgICAgICBjb250ZW50OiBcImFwcGxl5YaF6LSt6K6i5Y2V5LiN5pSv5oyB57un57ut5pSv5LuY77yM6K+36YeN5paw5Y+R6LW35pSv5LuY55Sz6K+35bm25a6M5oiQ5pSv5LuYXCIsXG4gICAgICAgICAgY29uZmlybVRleHQ6IFwi5aW955qEXCIsXG4gICAgICAgICAgc2hvd0NhbmNlbDogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChwYXlJdGVtLnBheW1lbnRNZXRob2QgPT0gNCkge1xuICAgICAgICBjb25zb2xlLmxvZyhcIuWkqeWMu+W4geS6jOasoeaUr+S7mFwiKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIC8vIOWPlua2iOiuouWNlVxuICAgIGNhbmNlT3JkZXIoaXRlbSkge1xuICAgICAgY29uc29sZS5sb2coXCJpdGVtLm9yZGVyU25cIiwgaXRlbSk7XG4gICAgICB1bmkuc2hvd01vZGFsKHtcbiAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsXG4gICAgICAgIGNvbnRlbnQ6IFwi56Gu5a6a6KaB5Y+W5raI6K6i5Y2V5ZCX77yfXCIsXG4gICAgICAgIGNvbmZpcm1UZXh0OiBcIuWPlua2iOiuouWNlVwiLFxuICAgICAgICBjYW5jZWxUZXh0OiBcIuiAg+iZkeS4gOS4i1wiLFxuICAgICAgICBjb25maXJtQ29sb3I6IFwiI2M5NjcxM1wiLFxuICAgICAgICBjYW5jZWxDb2xvcjogXCIjNTU1XCIsXG4gICAgICAgIHN1Y2Nlc3M6IChyZXMpID0+IHtcbiAgICAgICAgICBpZiAocmVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMuJGh0dHBcbiAgICAgICAgICAgICAgLnBvc3QoXCJib29rL2J1eU9yZGVyL2FwcERlbGV0ZT9vcmRlcklkPVwiICsgaXRlbS5vcmRlcklkKVxuICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlcy5jb2RlID09IDApIHtcbiAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5Y+W5raI6K6i5Y2V5oiQ5YqfXCIsXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIC8vIHVuaS5zd2l0Y2hUYWIoe1xuICAgICAgICAgICAgICAgICAgLy8gXHR1cmw6ICcuL29yZGVyTGlzdCdcbiAgICAgICAgICAgICAgICAgIC8vIH0pO1xuXG4gICAgICAgICAgICAgICAgICB0aGlzLm5ld2VzdHBhZ2UgPSAxO1xuICAgICAgICAgICAgICAgICAgdGhpcy5uZXdMaXN0ID0gW107XG4gICAgICAgICAgICAgICAgICB0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSxcbiAgICAvLyBjYW5jZU9yZGVyKGl0ZW0pIHtcbiAgICAvLyBcdHVuaS5zaG93TW9kYWwoe1xuICAgIC8vIFx0XHR0aXRsZTogJ+aPkOekuicsXG4gICAgLy8gXHRcdGNvbnRlbnQ6ICfnoa7lrpropoHlj5bmtojorqLljZXlkJfvvJ8nLFxuICAgIC8vIFx0XHRjb25maXJtVGV4dDogXCLlj5bmtojorqLljZVcIixcbiAgICAvLyBcdFx0Y2FuY2VsVGV4dDogXCLogIPomZHkuIDkuItcIixcbiAgICAvLyBcdFx0Y29uZmlybUNvbG9yOiAnI2M5NjcxMycsXG4gICAgLy8gXHRcdGNhbmNlbENvbG9yOiAnIzU1NScsXG4gICAgLy8gXHRcdHN1Y2Nlc3M6IHJlcyA9PiB7XG4gICAgLy8gXHRcdFx0aWYgKHJlcy5jb25maXJtKSB7XG4gICAgLy8gXHRcdFx0XHR1bmkuc2hvd0xvYWRpbmcoKVxuICAgIC8vIFx0XHRcdFx0JGh0dHAucmVxdWVzdCh7XG4gICAgLy8gXHRcdFx0XHRcdHVybDogXCJib29rL2J1eU9yZGVyL2NhbmNlbE9yZGVyXCIsXG4gICAgLy8gXHRcdFx0XHRcdG1ldGhvZDogXCJHRVRcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xuICAgIC8vIFx0XHRcdFx0XHRkYXRhLFxuICAgIC8vIFx0XHRcdFx0XHRoZWFkZXI6IHsgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxuICAgIC8vIFx0XHRcdFx0XHRcdCdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAvLyBcdFx0XHRcdFx0fSxcbiAgICAvLyBcdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcbiAgICAvLyBcdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09IDApIHtcbiAgICAvLyBcdFx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKVxuICAgIC8vIFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuICAgIC8vIFx0XHRcdFx0XHRcdFx0dGl0bGU6ICforqLljZXlt7Llj5bmtognLFxuICAgIC8vIFx0XHRcdFx0XHRcdFx0aWNvbjogJ3N1Y2Nlc3MnLFxuICAgIC8vIFx0XHRcdFx0XHRcdFx0ZHVyYXRpb246IDEwMDBcbiAgICAvLyBcdFx0XHRcdFx0XHR9KVxuICAgIC8vIFx0XHRcdFx0XHRcdHRoaXMuZ2V0Qm9va0xpc3QodGhpcy5vcmRlcnNMaXN0VGFiLCBmYWxzZSlcbiAgICAvLyBcdFx0XHRcdFx0fVxuICAgIC8vIFx0XHRcdFx0fSlcbiAgICAvLyBcdFx0XHR9IGVsc2UgaWYgKHJlcy5jYW5jZWwpIHt9XG4gICAgLy8gXHRcdH1cbiAgICAvLyBcdH0pO1xuICAgIC8vIH0sXG4gICAgLy8g5p+l55yL54mp5rWBXG4gICAgc2VlRXhwcmVzc0RldGFpbChpdGVtKSB7XG4gICAgICAvLyBjb25zb2xlLmxvZyhpdGVtLCB0aGlzLnNoZWV0TGlzdC5sZW5ndGgpXG4gICAgICAvLyBpZih0aGlzLnNoZWV0TGlzdC5sZW5ndGggPiAxKXtcbiAgICAgIC8vIFx0dGhpcy5zaGVldExpc3RTaG93ID0gdHJ1ZVxuICAgICAgLy8gfWVsc2UgaWYodGhpcy5zaGVldExpc3QubGVuZ3RoID09IDEpe1xuICAgICAgLy8g55u05o6l5bGV56S66K+m5oOFXG4gICAgICB1bmkubmF2aWdhdGVUbyh7XG4gICAgICAgIHVybDpcbiAgICAgICAgICBcIi4vZGVsaXZlckRldGFpbD9vcmRlclNuPVwiICtcbiAgICAgICAgICBpdGVtLm9yZGVyU24gK1xuICAgICAgICAgIFwiJmV4cHJlc3NPcmRlclNuPVwiICtcbiAgICAgICAgICBpdGVtLmV4cHJlc3NMaXN0WzBdLmV4cHJlc3NPcmRlclNuLFxuICAgICAgfSk7XG4gICAgICAvLyB9XG4gICAgfSxcbiAgICAvLyDnoa7orqTmlLbotKdcbiAgICBPdmVyT3JkZXIoaXRlbSkge1xuICAgICAgdW5pLnNob3dNb2RhbCh7XG4gICAgICAgIHRpdGxlOiBcIuaPkOekulwiLFxuICAgICAgICBjb250ZW50OiBcIuehruiupOaUtui0p++8n1wiLFxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XG4gICAgICAgICAgbGV0IGRhdGEgPSB7XG4gICAgICAgICAgICBvcmRlcklkOiBpdGVtLm9yZGVySWQsXG4gICAgICAgICAgICBvcmRlclN0YXR1czogXCIzXCIsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBpZiAocmVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHVuaS5zaG93TG9hZGluZygpO1xuICAgICAgICAgICAgJGh0dHBcbiAgICAgICAgICAgICAgLnJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgIHVybDogXCJib29rL2J1eU9yZGVyL3VwZGF0ZVwiLFxuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcbiAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxuICAgICAgICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcbiAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLmlLbotKfmiJDlip9cIixcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXG4gICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiAxMDAwLFxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICB0aGlzLm5ld2VzdHBhZ2UgPSAxO1xuICAgICAgICAgICAgICAgICAgdGhpcy5uZXdMaXN0ID0gW107XG4gICAgICAgICAgICAgICAgICB0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChyZXMuY2FuY2VsKSB7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSxcbiAgICBjbG9zZVBpbmdqaWEoKSB7XG4gICAgICB0aGlzLnBpbmdqaWFTaG93ID0gZmFsc2U7XG4gICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBcIlwiO1xuICAgICAgdGhpcy5QZm9ybS5odG1sID0gXCJcIjtcbiAgICAgIHRoaXMuZW1vamkgPSBbXTtcbiAgICB9LFxuICAgIC8vIOaPkOS6pOivhOS7t1xuICAgIHN1Ym1pdFBKKCkge1xuICAgICAgaWYgKHRoaXMuUGZvcm0uY29tbWVudCAhPSBcIlwiKSB7XG4gICAgICAgIGxldCBkYXRhID0ge1xuICAgICAgICAgIHVzZXJpZDogdGhpcy51c2VySW5mby5pZCxcbiAgICAgICAgICBvcmRlclNuOiB0aGlzLm9yZGVyU24sXG4gICAgICAgICAgYm9va2lkOiB0aGlzLnByb2R1Y3RJRCxcbiAgICAgICAgICAvLyAnY29udGVudCc6IHRoaXMuUGZvcm0uaHRtbCxcbiAgICAgICAgICBjb250ZW50OiB0aGlzLlBmb3JtLmNvbW1lbnQsXG4gICAgICAgICAgc3RhckxldmVsOiB0aGlzLlBmb3JtLnN0YXIsXG4gICAgICAgICAgaW1hZ2VzOiB0aGlzLlBmb3JtLmltZyxcbiAgICAgICAgICAvLyAnZW1vamknOnRoaXMuZW1vamkgIC8vIOihqOaDheaVsOe7hFxuICAgICAgICB9O1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhkYXRhLCdkYXRhJylcbiAgICAgICAgJGh0dHBcbiAgICAgICAgICAucmVxdWVzdCh7XG4gICAgICAgICAgICB1cmw6IFwiYnV5L3JlY29yZC9Vc2VyUmVjb3JkY29tbWVudFwiLFxuICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XG4gICAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KVxuICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAwKSB7XG4gICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuivhOS7t+aIkOWKn++8gVwiLFxuICAgICAgICAgICAgICAgIGljb246IFwic3VjY2Vzc1wiLFxuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICB0aGlzLnBpbmdqaWFTaG93ID0gZmFsc2U7XG4gICAgICAgICAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IFwiXCI7XG4gICAgICAgICAgICAgIHRoaXMuUGZvcm0uaHRtbCA9IFwiXCI7XG4gICAgICAgICAgICAgIHRoaXMuZW1vamkgPSBbXTtcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdW5pLm5hdmlnYXRlQmFjayh7XG4gICAgICAgICAgICAgICAgICBkZWx0YTogMSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSwgMjAwMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICB0aXRsZTogXCLor7flhYjovpPlhaXmgqjnmoTor4Tku7flhoXlrrkg77yBXCIsXG4gICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgLy8g5re75Yqg6K+E5Lu3XG4gICAgcGluZ2ppKGlkKSB7XG4gICAgICBjb25zb2xlLmxvZyhpZCk7XG4gICAgICB0aGlzLnBqVHlwZSA9IFwiXCI7XG4gICAgICB0aGlzLnByb2R1Y3RJRCA9IGlkO1xuICAgICAgdGhpcy5waW5namlhU2hvdyA9IHRydWU7XG4gICAgfSxcbiAgICBnZXRTdGFyKGkpIHtcbiAgICAgIHRoaXMuUGZvcm0uc3RhciA9IGk7XG4gICAgfSxcbiAgICBJbnB1dEJsdXIoZSkge30sXG4gICAgSW5wdXRGb2N1cyhlKSB7XG4gICAgICB0aGlzLmlzU2hvd0VtaiA9IGZhbHNlO1xuICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1lbW9qaVwiO1xuICAgICAgdGhpcy4kZW1pdChcImZvY1wiKTtcbiAgICB9LFxuICAgIHRleHRhcmVhQklucHV0KGUpIHtcbiAgICAgIGNvbnNvbGUubG9nKGUsIFwiZVwiKTtcbiAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IGUuZGV0YWlsLnZhbHVlO1xuICAgICAgLy8vIHRoaXMuUGZvcm0uaHRtbCA9IGUuZGV0YWlsLnZhbHVlXG4gICAgfSxcbiAgICBzaG93RW1qKCkge1xuICAgICAgbGV0IGJvb2wgPSAhdGhpcy5pc1Nob3dFbWo7XG4gICAgICBpZiAoYm9vbCkge1xuICAgICAgICB0aGlzLmVtb2ppSWNvbiA9IFwiY3VJY29uLWtleWJvYXJkXCI7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmVtb2ppSWNvbiA9IFwiY3VJY29uLWVtb2ppXCI7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaXNTaG93RW1qID0gYm9vbDtcbiAgICAgIHRoaXMuJGVtaXQoXCJzaG93XCIpO1xuICAgIH0sXG4gICAgZGVsZXRlUGljKCkge1xuICAgICAgbGV0IHRoYXQgPSB0aGlzO1xuICAgICAgdGhhdC5QZm9ybS5pbWcuc3BsaWNlKDAsIDEpO1xuICAgICAgLy9jb25zb2xlLmxvZyh0aGF0LlBmb3JtLmltZylcbiAgICB9LFxuICAgIGFmdGVyUmVhZChlKSB7XG4gICAgICAvL2NvbnNvbGUubG9nKGUpXG4gICAgICBsZXQgdGhhdCA9IHRoaXM7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGUuZmlsZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAvL2NvbnNvbGUubG9nKGksZS5maWxlW2ldLnVybClcbiAgICAgICAgdW5pLnVwbG9hZEZpbGUoe1xuICAgICAgICAgIHVybDogdGhpcy4kYmFzZVVybCArIFwib3NzL2ZpbGVvc3NcIixcbiAgICAgICAgICBmaWxlUGF0aDogZS5maWxlW2ldLnVybCxcbiAgICAgICAgICAvL2ZpbGVzOmUuZmlsZSxcbiAgICAgICAgICBuYW1lOiBcImZpbGVcIixcbiAgICAgICAgICBmb3JtRGF0YToge30sXG4gICAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xuICAgICAgICAgICAgdGhhdC5QZm9ybS5pbWcucHVzaCh7XG4gICAgICAgICAgICAgIHVybDogSlNPTi5wYXJzZShyZXMuZGF0YSkudXJsLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICAvLyDojrflvpfovpPlhaXnmoTooajmg4XmlbDnu4RcbiAgICBoYW5kbGVFbWooaSkge1xuICAgICAgY29uc29sZS5sb2coaSwgXCJpLS0tLS0tLS0tXCIpO1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gaTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICBpZiAoaS5lbW90aW9uaSA9PSBcIltlbV85OF1cIikge1xuICAgICAgICAvL+WMuemFjeacgOWQjuS4gOS4quihqOaDheespuWPt+W5tuWIoOmZpDEx44CCXG4gICAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IHRoaXMuUGZvcm0uY29tbWVudC5yZXBsYWNlKFxuICAgICAgICAgIC8oXFxbW15cXF1dK1xcXXxbXFxzXFxTXSkkLyxcbiAgICAgICAgICBcIlwiXG4gICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLmVtb2ppLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLmVtb2ppID0gdGhpcy5lbW9qaS5zbGljZSgwLCAtMSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZW1vamkucHVzaCh7XG4gICAgICAgICAgdGFnOiBpLmVtb3Rpb24sXG4gICAgICAgICAgbmFtZTogaS5lbW90aW9uaSxcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZW1vamksJ3RoaXMuZW1vamknKVxuICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgKz0gaS5lbW90aW9uaTtcbiAgICAgICAgLy8vIHRoaXMuUGZvcm0uaHRtbCArPSBpLmVtb3Rpb25cbiAgICAgIH1cbiAgICB9LFxuICB9LFxuICBjb21wb25lbnRzOiB7XG4gICAgLy8gbXVzaWNQbGF5LFxuICAgIGVtb3Rpb24sXG4gIH0sXG59O1xuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbkBpbXBvcnQgXCJAL3N0eWxlL21peGluLnNjc3NcIjtcblxuLm9yZGVyc1RhYnMge1xuICAvLyBtYXJnaW46IDcwcnB4IDAgMCAwO1xuICB3aWR0aDogNzMwcnB4O1xuICAvLyBwYWRkaW5nOiAwIDMlIDMlIDMlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIC8vIHRvcDogODBycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2ZhZjk7XG4gIHotaW5kZXg6IDEwMDtcblxuICAub3JkZXJzZGVmaW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMjBycHggMCAyMHJweCAwO1xuICAgIC8vIG1hcmdpbjogNDBycHggMCAxNXJweCAwO1xuICAgIHdpZHRoOiAxNDBycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMzBycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLm9yZGVyc251bSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDhycHg7XG4gICAgICByaWdodDogMHJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgIC8vIGJvcmRlcjoxcnB4IHNvbGlkICNhM2EzYTM7XG4gICAgICBib3JkZXItcmFkaXVzOiA0MHJweDtcbiAgICAgIHdpZHRoOiAyOHJweDtcbiAgICAgIGhlaWdodDogMjhycHg7XG4gICAgICBmb250LXNpemU6IDIwcnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgfVxuICB9XG5cbiAgLm9yZFN0eWxlIHtcbiAgICAvLyBib3JkZXItYm90dG9tOiA0cnB4IHNvbGlkICM1NGE5NjY7XG4gICAgLy8gY29sb3I6ICM1NGE5NjY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLm9yZGVyc3RhdHVzYnRuIHtcbiAgd2lkdGg6IDE2MHJweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDYwcnB4O1xuICBsaW5lLWhlaWdodDogNTVycHggIWltcG9ydGFudDtcbiAgY29sb3I6ICMxZDFkMWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhMGEwYTA7XG4gIGJvcmRlci1yYWRpdXM6IDMwcnB4O1xuICAvLyBwYWRkaW5nOiAwIDEwcnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAyMHJweDtcbiAgZm9udC1zaXplOiAyOHJweDtcbn1cblxuLm9yZGVyc3RhdHVzYnRuX3N1Y2Nlc3Mge1xuICBjb2xvcjogI2Y1MzQyYjtcbiAgYm9yZGVyLWNvbG9yOiAjZjUzNDJiO1xufVxuXG4uZmxleGJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG5cbi5zdGFyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcnB4O1xufVxuXG4uc3RhckdyYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vc3RhdGljL2ljb24vc3Rhcl9ncmVleS5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4uc3RhckxpZ2h0IHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL3N0YXRpYy9pY29uL3N0YXJfbGlnaHQucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLmN1SWNvbi1lbW9qaSB7XG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9zdGF0aWMvYmlhb3FpbmcucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMjBycHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4uY3VJY29uLWtleWJvYXJkIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL3N0YXRpYy9iaWFvcWluZy5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG59XG5cbi50YW5jaHUge1xuICBwYWRkaW5nOiA0MHJweCAzMHJweCA0MHJweCAzMHJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5kcF90aXRsZSB7XG4gICAgZm9udC1zaXplOiAzMnJweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHJweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAuZHBfYWRkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MHJweDtcbiAgICByaWdodDogMzBycHg7XG4gICAgZm9udC1zaXplOiAyMnJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmQ2MDA0O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcnB4O1xuICAgIHBhZGRpbmc6IDVycHggMTBycHg7XG5cbiAgICAudS1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogNXJweDtcbiAgICB9XG4gIH1cbn1cblxuLnF1ZXNoZW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxMDBycHg7XG4gIGNvbG9yOiAjOGI4YTkxO1xuICBwYWRkaW5nLWJvdHRvbTogMjBycHg7XG4gIHBhZGRpbmctdG9wOiAyMHJweDtcbn1cblxuLmdlbmdkdW9zaHVwaW5nIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGNvbG9yOiAjMDA0NGZmO1xuICBwYWRkaW5nLWJvdHRvbTogMjBycHg7XG4gIHBhZGRpbmctdG9wOiAyMHJweDtcbn1cblxuLm9yZGVySW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAvLyBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAyMHJweCAyMHJweDtcbiAgYm9yZGVyOiAxcHggc3BsaWQgIzk5OTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLy8gcGFkZGluZy1ib3R0b206IDIwcnB4O1xuICBib3JkZXItcmFkaXVzOiAyMHJweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBycHg7XG5cbiAgLmJvb2tpbmZvbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyBoZWlnaHQ6IDE4MHJweDtcbiAgfVxuXG4gIC5ib29raW5mb2xpc3Q6bnRoLWxhc3QtY2hpbGQoMSkge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcGVyYXRpb25fYm94IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAyMHJweDtcbiAgICBsZWZ0OiA0MHJweDtcbiAgfVxufVxuXG4ubWFpbkNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gIC5pdGVtIHtcbiAgICAvLyBwYWRkaW5nOiAxMHB4O1xuICAgIC8vIG1hcmdpbi1ib3R0b206IDMwcnB4O1xuICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvLyBwYWRkaW5nLWJvdHRvbTogMjBycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBycHg7XG4gICAgLy8gbWFyZ2luLWJvdHRvbTogMjBycHg7XG4gIH1cblxuICAuZmVuZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICBtYXJnaW46IDBycHggMjJycHggMCAwO1xuICAgIGhlaWdodDogMTQwcnB4O1xuICAgIHdpZHRoOiAxNDBycHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTRycHg7XG4gICAgLy8gYm9yZGVyOiAxcnB4IHNvbGlkICNlOWU5ZTk7XG4gIH1cblxuICAucG9pbnRfYm94IHtcbiAgICAuYm9va25hbWVsZWZ0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA3MHJweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5mZW5nUG9pbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiAxMDBycHg7XG4gICAgd2lkdGg6IDEwMHJweDtcbiAgfVxuXG4gIC5pdGVtX3RvcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIG1hcmdpbi1ib3R0b206IDI1cnB4O1xuXG4gICAgLnNvdXJjZV9hcHAge1xuICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cnB4O1xuICAgIH1cbiAgfVxuXG4gIC5vcmRlcnN0YXR1cyB7XG4gICAgbGluZS1oZWlnaHQ6IDI0cnB4O1xuICAgIGZvbnQtc2l6ZTogMjRycHg7XG4gICAgY29sb3I6ICNlNTVmMTg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJycHg7XG4gIH1cblxuICAvZGVlcC8uZGVzY3JpcHRpb24ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6ICM2NjY7XG4gICAgdGV4dC1vdmVyZmxvdzogLW8tZWxsaXBzaXMtbGFzdGxpbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDU7XG4gICAgbGluZS1jbGFtcDogNTtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIGZvbnQtc2l6ZTogMjZycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBycHg7XG4gICAgbWFyZ2luLXRvcDogMTBycHg7XG4gICAgaGVpZ2h0OiAxNzJycHg7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuYnRucyB7XG4gICAgZm9udC1zaXplOiAyOHJweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5ib29rbmFtZWxlZnQge1xuICAgICAgZm9udC1zaXplOiAzMnJweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMDBycHgpO1xuICAgICAgY29sb3I6ICMwNzA3MDc7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41cnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAubGVmdCB7XG4gICAgICB3aWR0aDogMzAwcnB4O1xuICAgICAgY29sb3I6ICNhMWExYTE7XG4gICAgfVxuXG4gICAgLnJpZ2h0IHtcbiAgICAgIHdpZHRoOiAzNTBycHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnByaWNlIHtcbiAgICAgIHdpZHRoOiAxMjBycHg7XG4gICAgfVxuXG4gICAgLmd6aWNvbiB7XG4gICAgICBtYXJnaW46IDAgMCAwIDIwcnB4O1xuICAgICAgaGVpZ2h0OiA0MHJweDtcbiAgICAgIHdpZHRoOiA0MHJweDtcbiAgICAgIC8vIGZsb2F0OmxlZnQ7XG4gICAgICAvLyBib3JkZXItcmFkaXVzOiAyMHJweDtcbiAgICAgIC8vIGJvcmRlcjoxcnB4IHNvbGlkICNlOWU5ZTk7XG4gICAgfVxuXG4gICAgLm9wYnRucyB7XG4gICAgICAucGluZ2ppYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWIzMCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubXl0YWJzIHtcbiAgLy8gYmFja2dyb3VuZDogdXJsKCdAL3N0YXRpYy9pY29uL2JndHVzaHUucG5nJykgbm8tcmVwZWF0IGxlZnQgdG9wO1xuICBoZWlnaHQ6IDgwcnB4O1xuICAvLyBtYXJnaW4tYm90dG9tOiAzMHJweDtcblxuICAuaXRlbSB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZWFkMDtcbiAgICB3aWR0aDogNDglO1xuICAgIC8vIG1hcmdpbjogMCAxMHJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICMzYzdmNTY7XG4gICAgZm9udC1zaXplOiAzNnJweDtcbiAgICBsaW5lLWhlaWdodDogODBycHg7XG4gIH1cblxuICAuaXRlbS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYzdmNTY7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAuaXRlbTIge1xuICAgIG1hcmdpbi1yaWdodDogMjBycHg7XG4gIH1cbn1cblxuL2RlZXAvLnUtdGFic19fd3JhcHBlcl9fbmF2X19pdGVtX190ZXh0IHtcbiAgLy8gZm9udC1zaXplOiAzMnJweCAhaW1wb3J0YW50O1xufVxuXG4uY2F0ZUxpc3Qge1xuICB3aWR0aDogMTAwJTtcbn1cblxuL2RlZXAvLnUtdGFic19fd3JhcHBlcl9fbmF2X19pdGVtIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uY29tbW9uRGV0YWlsUGFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZUJnQ29sb3I7XG4gIGhlaWdodDogY2FsYygxMDB2aCk7XG59XG5cbi5vcmRlcl9ib3gge1xuICBwYWRkaW5nOiAyMHJweDtcbn1cblxuL2RlZXAvLm9yZGVyX2JveCAubGlzdF9pdGVtIHtcbiAgLy8gYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucHJvZHVjdF9xdWFudGl0eSB7XG4gIHdpZHRoOiBhdXRvO1xuICBjb2xvcjogIzliOWI5YjtcbiAgZm9udC1zaXplOiAyNnJweDtcbn1cblxuLnZpcF95ZWFyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHJweDtcbiAgY29sb3I6ICNmNTM0MmI7XG4gIGZvbnQtc2l6ZTogMzBycHg7XG59XG5cbi9kZWVwLy5jb21tb25EZXRhaWxQYWdlIHtcbiAgLnVuaS1hcHAtLXNob3d0YWJiYXIgdW5pLXBhZ2Utd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG48L3N0eWxlPlxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///512\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 47));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 49));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 95));\nvar _bkhumorEmojiplus = _interopRequireDefault(__webpack_require__(/*! @/bkhumor-emojiplus/components/bkhumor-emojiplus/bkhumor-emojiplus.vue */ 513));\nvar _utils = __webpack_require__(/*! @/config/utils */ 246);\nvar _vuex = __webpack_require__(/*! vuex */ 63);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n isShowMore: false,\n come: \"2\",\n isShowTab: false,\n isLoadingHide: false,\n moreList: [{\n name: \"取消订单\",\n key: \"false\"\n }],\n currentCateIndex: 0,\n pagination: {\n // 请求参数\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n },\n\n // loadingNow : false,\n playData: {},\n options: {},\n emojiIcon: \"cuIcon-emoji\",\n windowWidth: 0,\n bookid: null,\n booklistpage: 1,\n productList: [],\n productInfo: {},\n emoji: [],\n Files: [],\n page: 1,\n pageSize: 10,\n total: 0,\n status: 3,\n shupingList: [],\n bfaid: null,\n ordersTabs: [{\n name: \"全部\",\n value: -1,\n badge: {}\n }, {\n name: \"待付款\",\n value: 0,\n badge: {}\n }, {\n name: \"待发货\",\n value: 1,\n badge: {}\n }, {\n name: \"待收货\",\n value: 2,\n badge: {}\n }, {\n name: \"已完成\",\n value: 3,\n badge: {}\n }],\n selectOrderInfo: {},\n ordersListTab: 1,\n newestpage: 1,\n // hotestpage: 1,\n // booksetpage: 1,\n newList: [],\n // hotList:[],\n // bookList:[],\n map: {},\n userRecordid: null,\n // 用户的评价状态\n pingjiaShow: false,\n //添加评价\n Pform: {\n // 评价表单\n star: 0,\n comment: \"\",\n img: [],\n html: \"\"\n },\n isShowEmj: false,\n pjType: \"\"\n };\n },\n onPullDownRefresh: function onPullDownRefresh() {\n uni.stopPullDownRefresh();\n this.newestpage = 1;\n this.newList = [];\n this.getBookList(this.ordersListTab, false);\n },\n onReachBottom: function onReachBottom() {\n this.newestpage++;\n this.getBookList(this.ordersListTab, false);\n },\n onLoad: function onLoad(e) {\n this.windowWidth = uni.getSystemInfoSync().windowWidth;\n this.options = e;\n // 隐藏原生的tabbar\n uni.hideTabBar();\n },\n onShow: function onShow() {\n var _this = 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 _this.newList = [];\n _this.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n\n _this.$nextTick( /*#__PURE__*/(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 _context.next = 2;\n return _this.ordersTabCLi(_this.ordersTabs[0], 0);\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })));\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n onTabItemTap: function onTabItemTap() {\n var _this2 = 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 _this2.newList = [];\n _this2.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n onReady: function onReady() {},\n computed: _objectSpread({}, (0, _vuex.mapState)([\"userInfo\"])),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapMutations)([\"setLoadingShow\"])), {}, {\n getImageUrl: function getImageUrl(url) {\n // 通过在URL后面添加时间戳来避免缓存\n return \"\".concat(url, \"?timestamp=\").concat(Date.now());\n },\n selectClick: function selectClick(index) {\n __f__(\"log\", \"index at line 609:\", index, \" at pages/bookShop/orderList.vue:746\");\n if (index.key == \"false\") {\n this.isShowMore = false;\n this.canceOrder(this.selectOrderInfo);\n }\n },\n openMore: function openMore(row, index) {\n this.selectOrderInfo = row;\n this.isShowMore = true;\n },\n handleCopy: function handleCopy(value, title) {\n this.$commonJS.handleCopy(value, title);\n },\n onReachBottom1: function onReachBottom1() {\n // 上拉加载\n // 当列表数量不大于或等于总数量,则再次调用接口请求数据\n if (this.newList.length >= this.pagination.total) return;\n this.pagination.page++;\n this.getBookList(this.ordersListTab, false);\n },\n goHome: function goHome() {\n if (this.options.type == \"order\") {\n uni.switchTab({\n url: \"/pages/homePage/index/index\"\n });\n } else {\n uni.navigateBack({\n delta: 1\n });\n }\n },\n // 切换tab状态\n ordersTabCLi: function ordersTabCLi(data, index) {\n this.currentCateIndex = index;\n this.pagination = {\n page: 1,\n //页码\n limit: 20,\n //每页显示\n total: 0 //总条数\n };\n\n __f__(\"log\", \"data at line 454:\", data, \" at pages/bookShop/orderList.vue:785\");\n this.ordersListTab = data.value;\n this.newestpage = 1;\n // this.hotestpage = 1\n // this.booksetpage = 1\n this.newList = [];\n // this.hotList = []\n // this.bookList = []\n this.getBookList(this.ordersListTab, false);\n },\n // 查看本书更多书评\n toMore: function toMore(val) {\n __f__(\"log\", val, \"val\", \" at pages/bookShop/orderList.vue:797\");\n uni.navigateTo({\n url: \"../comments/comments?bookid=\" + val.id\n });\n },\n // 订单详情\n toDetail: function toDetail(val) {\n __f__(\"log\", val, \"val\", \" at pages/bookShop/orderList.vue:804\");\n // uni.navigateTo({\n // \turl:'../bookShop/commentsDetail?bookid='+val.bookid+'&bfa_id='+val.id\n // })\n uni.navigateTo({\n url: \"/pages/bookShop/orderLCont?orderId=\" + val.orderId + \"&orderType=\" + val.orderStatus + \"&orderSn=\" + val.orderSn\n });\n },\n getBookList: function getBookList(flag, refreshflag) {\n var _this3 = this;\n this.isLoadingHide = false;\n var that = this;\n // 根据tab不同,获取最新书评、最热书评、书集列表\n // uni.showLoading({\n // \ttitle: '加载中'\n // });\n\n // 顶部红点数量\n _requestConfig.default.request({\n url: \"common/buyOrder/getBuyOrderNumByStatus\",\n method: \"POST\",\n data: {\n userId: that.userInfo.id,\n come: this.come\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n // 订单状态\n // * 0: 待付款\n // * 1: 待发货\n // * 2: 已发货\n // * 3:已完成\n // * 4: 交易失败\n // * 5: 已过期\n\n __f__(\"log\", \"res at line 757:\", res, \" at pages/bookShop/orderList.vue:849\");\n that.map = res.data;\n that.ordersTabs.map(function (e) {\n if (e.value == 0 || e.value == 1 || e.value == 2) {\n var numList = that.map.filter(function (v) {\n return v.order_status == e.value;\n });\n __f__(\"log\", \"num at line 771:\", numList, \" at pages/bookShop/orderList.vue:855\");\n if (numList.length > 0) {\n e.badge = {\n value: numList[0].num\n };\n } else {\n e.badge = {};\n }\n } else {\n e.badge = {};\n }\n });\n // this.$set('this.ordersTabs',)\n that.$forceUpdate();\n }).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderList.vue:871\");\n });\n var params = _objectSpread({\n userId: this.userInfo.id,\n come: this.come,\n orderStatus: flag == -1 ? \"\" : flag\n }, this.pagination);\n this.$http.request({\n url: \"common/buyOrder/commonBuyOrderList\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: params,\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then(function (res) {\n __f__(\"log\", \"订单列表内容获取成功\", res, \" at pages/bookShop/orderList.vue:893\");\n that.pagination.total = res.data.total;\n if (res.data.total == 0) {\n _this3.isLoadingHide = true;\n }\n if (res.code == 0 && res.data && res.data.records.length > 0) {\n that.newList = that.newList.concat(res.data.records);\n } else {\n //\n }\n if (res.data.records.length != 10) {\n that.status = 1;\n } else {\n that.status = 0;\n }\n }).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderList.vue:910\");\n });\n },\n // 支付\n goPay: function goPay(payItem) {\n var _this4 = this;\n __f__(\"log\", payItem, \"订单数据\", \" at pages/bookShop/orderList.vue:915\");\n if (payItem.paymentMethod == 2) {\n __f__(\"log\", \"阿里支付\", \" at pages/bookShop/orderList.vue:917\");\n (0, _utils.setPay)({\n typePay: \"alipay\",\n subject: \"order\",\n totalAmount: payItem.realMoney,\n type: 2,\n relevanceoid: payItem.orderSn,\n customerId: this.userInfo.id\n }, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n _this4.getOrderList();\n });\n } else if (payItem.paymentMethod == 1) {\n __f__(\"log\", \"微信支付\", \" at pages/bookShop/orderList.vue:943\");\n var data1 = {\n orderSn: payItem.orderSn,\n buyOrderId: null,\n totalAmount: payItem.realMoney\n };\n __f__(\"log\", data1, \"data1\", \" at pages/bookShop/orderList.vue:950\");\n (0, _utils.setWXPay)(data1, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n __f__(\"log\", res, \" at pages/bookShop/orderList.vue:957\");\n if (res.data.errMsg.indexOf(\"User canceled\") != -1) {\n uni.showToast({\n title: \"用户取消支付\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n }\n });\n } else if (payItem.paymentMethod == 3 && this.ordersListTab == 0) {\n // 苹果充值\n __f__(\"log\", \"苹果二次支付\", \" at pages/bookShop/orderList.vue:975\");\n uni.showModal({\n content: \"apple内购订单不支持继续支付,请重新发起支付申请并完成支付\",\n confirmText: \"好的\",\n showCancel: false\n });\n } else if (payItem.paymentMethod == 4) {\n __f__(\"log\", \"天医币二次支付\", \" at pages/bookShop/orderList.vue:982\");\n }\n },\n // 取消订单\n canceOrder: function canceOrder(item) {\n var _this5 = this;\n __f__(\"log\", \"item.orderSn\", item, \" at pages/bookShop/orderList.vue:987\");\n uni.showModal({\n title: \"提示\",\n content: \"确定要取消订单吗?\",\n confirmText: \"取消订单\",\n cancelText: \"考虑一下\",\n confirmColor: \"#c96713\",\n cancelColor: \"#555\",\n success: function success(res) {\n if (res.confirm) {\n _this5.$http.post(\"book/buyOrder/appDelete?orderId=\" + item.orderId).then(function (res) {\n if (res.code == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"取消订单成功\"\n });\n // uni.switchTab({\n // \turl: './orderList'\n // });\n\n _this5.newestpage = 1;\n _this5.newList = [];\n _this5.getBookList(_this5.ordersListTab, false);\n }\n });\n }\n }\n });\n },\n // canceOrder(item) {\n // \tuni.showModal({\n // \t\ttitle: '提示',\n // \t\tcontent: '确定要取消订单吗?',\n // \t\tconfirmText: \"取消订单\",\n // \t\tcancelText: \"考虑一下\",\n // \t\tconfirmColor: '#c96713',\n // \t\tcancelColor: '#555',\n // \t\tsuccess: res => {\n // \t\t\tif (res.confirm) {\n // \t\t\t\tuni.showLoading()\n // \t\t\t\t$http.request({\n // \t\t\t\t\turl: \"book/buyOrder/cancelOrder\",\n // \t\t\t\t\tmethod: \"GET\", // POST、GET、PUT、DELETE,具体说明查看官方文档\n // \t\t\t\t\tdata,\n // \t\t\t\t\theader: { //默认 无 说明:请求头\n // \t\t\t\t\t\t'Content-Type': 'application/json'\n // \t\t\t\t\t},\n // \t\t\t\t}).then(res => {\n // \t\t\t\t\tif (res.code == 0) {\n // \t\t\t\t\t\tuni.hideLoading()\n // \t\t\t\t\t\tuni.showToast({\n // \t\t\t\t\t\t\ttitle: '订单已取消',\n // \t\t\t\t\t\t\ticon: 'success',\n // \t\t\t\t\t\t\tduration: 1000\n // \t\t\t\t\t\t})\n // \t\t\t\t\t\tthis.getBookList(this.ordersListTab, false)\n // \t\t\t\t\t}\n // \t\t\t\t})\n // \t\t\t} else if (res.cancel) {}\n // \t\t}\n // \t});\n // },\n // 查看物流\n seeExpressDetail: function seeExpressDetail(item) {\n // console.log(item, this.sheetList.length)\n // if(this.sheetList.length > 1){\n // \tthis.sheetListShow = true\n // }else if(this.sheetList.length == 1){\n // 直接展示详情\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + item.orderSn + \"&expressOrderSn=\" + item.expressList[0].expressOrderSn\n });\n // }\n },\n // 确认收货\n OverOrder: function OverOrder(item) {\n var _this6 = this;\n uni.showModal({\n title: \"提示\",\n content: \"确认收货?\",\n success: function success(res) {\n var data = {\n orderId: item.orderId,\n orderStatus: \"3\"\n };\n if (res.confirm) {\n uni.showLoading();\n _requestConfig.default.request({\n url: \"book/buyOrder/update\",\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 if (res.code == 0) {\n uni.hideLoading();\n uni.showToast({\n title: \"收货成功\",\n icon: \"success\",\n duration: 1000\n });\n _this6.newestpage = 1;\n _this6.newList = [];\n _this6.getBookList(_this6.ordersListTab, false);\n }\n });\n } else if (res.cancel) {}\n }\n });\n },\n closePingjia: function closePingjia() {\n this.pingjiaShow = false;\n this.Pform.comment = \"\";\n this.Pform.html = \"\";\n this.emoji = [];\n },\n // 提交评价\n submitPJ: function submitPJ() {\n var _this7 = this;\n if (this.Pform.comment != \"\") {\n var data = {\n userid: this.userInfo.id,\n orderSn: this.orderSn,\n bookid: this.productID,\n // 'content': this.Pform.html,\n content: this.Pform.comment,\n starLevel: this.Pform.star,\n images: this.Pform.img\n // 'emoji':this.emoji // 表情数组\n };\n // console.log(data,'data')\n _requestConfig.default.request({\n url: \"buy/record/UserRecordcomment\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"评价成功!\",\n icon: \"success\"\n });\n _this7.pingjiaShow = false;\n _this7.Pform.comment = \"\";\n _this7.Pform.html = \"\";\n _this7.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n } else {\n uni.showToast({\n title: \"请先输入您的评价内容 !\",\n icon: \"none\"\n });\n }\n },\n // 添加评价\n pingji: function pingji(id) {\n __f__(\"log\", id, \" at pages/bookShop/orderList.vue:1164\");\n this.pjType = \"\";\n this.productID = id;\n this.pingjiaShow = true;\n },\n getStar: function getStar(i) {\n this.Pform.star = i;\n },\n InputBlur: function InputBlur(e) {},\n InputFocus: function InputFocus(e) {\n this.isShowEmj = false;\n this.emojiIcon = \"cuIcon-emoji\";\n this.$emit(\"foc\");\n },\n textareaBInput: function textareaBInput(e) {\n __f__(\"log\", e, \"e\", \" at pages/bookShop/orderList.vue:1179\");\n this.Pform.comment = e.detail.value;\n /// this.Pform.html = e.detail.value\n },\n showEmj: function showEmj() {\n var bool = !this.isShowEmj;\n if (bool) {\n this.emojiIcon = \"cuIcon-keyboard\";\n } else {\n this.emojiIcon = \"cuIcon-emoji\";\n }\n this.isShowEmj = bool;\n this.$emit(\"show\");\n },\n deletePic: function deletePic() {\n var that = this;\n that.Pform.img.splice(0, 1);\n //console.log(that.Pform.img)\n },\n afterRead: function afterRead(e) {\n //console.log(e)\n var that = this;\n for (var i = 0; i < e.file.length; i++) {\n //console.log(i,e.file[i].url)\n uni.uploadFile({\n url: this.$baseUrl + \"oss/fileoss\",\n filePath: e.file[i].url,\n //files:e.file,\n name: \"file\",\n formData: {},\n success: function success(res) {\n that.Pform.img.push({\n url: JSON.parse(res.data).url\n });\n }\n });\n }\n },\n // 获得输入的表情数组\n handleEmj: function handleEmj(i) {\n __f__(\"log\", i, \"i---------\", \" at pages/bookShop/orderList.vue:1220\");\n this.inputValue = i;\n // console.log(this.inputValue);\n if (i.emotioni == \"[em_98]\") {\n //匹配最后一个表情符号并删除11。\n this.Pform.comment = this.Pform.comment.replace(/(\\[[^\\]]+\\]|[\\s\\S])$/, \"\");\n if (this.emoji.length > 0) {\n this.emoji = this.emoji.slice(0, -1);\n }\n } else {\n this.emoji.push({\n tag: i.emotion,\n name: i.emotioni\n });\n // console.log(this.emoji,'this.emoji')\n this.Pform.comment += i.emotioni;\n /// this.Pform.html += i.emotion\n }\n }\n }),\n\n components: {\n // musicPlay,\n emotion: _bkhumorEmojiplus.default\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 62)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvYm9va1Nob3Avb3JkZXJMaXN0LnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwiaXNTaG93TW9yZSIsImNvbWUiLCJpc1Nob3dUYWIiLCJpc0xvYWRpbmdIaWRlIiwibW9yZUxpc3QiLCJuYW1lIiwia2V5IiwiY3VycmVudENhdGVJbmRleCIsInBhZ2luYXRpb24iLCJwYWdlIiwibGltaXQiLCJ0b3RhbCIsInBsYXlEYXRhIiwib3B0aW9ucyIsImVtb2ppSWNvbiIsIndpbmRvd1dpZHRoIiwiYm9va2lkIiwiYm9va2xpc3RwYWdlIiwicHJvZHVjdExpc3QiLCJwcm9kdWN0SW5mbyIsImVtb2ppIiwiRmlsZXMiLCJwYWdlU2l6ZSIsInN0YXR1cyIsInNodXBpbmdMaXN0IiwiYmZhaWQiLCJvcmRlcnNUYWJzIiwidmFsdWUiLCJiYWRnZSIsInNlbGVjdE9yZGVySW5mbyIsIm9yZGVyc0xpc3RUYWIiLCJuZXdlc3RwYWdlIiwibmV3TGlzdCIsIm1hcCIsInVzZXJSZWNvcmRpZCIsInBpbmdqaWFTaG93IiwiUGZvcm0iLCJzdGFyIiwiY29tbWVudCIsImltZyIsImh0bWwiLCJpc1Nob3dFbWoiLCJwalR5cGUiLCJvblB1bGxEb3duUmVmcmVzaCIsInVuaSIsIm9uUmVhY2hCb3R0b20iLCJvbkxvYWQiLCJvblNob3ciLCJvblRhYkl0ZW1UYXAiLCJvblJlYWR5IiwiY29tcHV0ZWQiLCJtZXRob2RzIiwiZ2V0SW1hZ2VVcmwiLCJzZWxlY3RDbGljayIsIm9wZW5Nb3JlIiwiaGFuZGxlQ29weSIsIm9uUmVhY2hCb3R0b20xIiwiZ29Ib21lIiwidXJsIiwiZGVsdGEiLCJvcmRlcnNUYWJDTGkiLCJ0b01vcmUiLCJ0b0RldGFpbCIsInZhbCIsImdldEJvb2tMaXN0IiwiJGh0dHAiLCJyZXF1ZXN0IiwibWV0aG9kIiwidXNlcklkIiwiaGVhZGVyIiwidGhlbiIsInRoYXQiLCJlIiwiY2F0Y2giLCJvcmRlclN0YXR1cyIsImdvUGF5IiwidHlwZVBheSIsInN1YmplY3QiLCJ0b3RhbEFtb3VudCIsInR5cGUiLCJyZWxldmFuY2VvaWQiLCJjdXN0b21lcklkIiwidGl0bGUiLCJpY29uIiwiaW1hZ2UiLCJvcmRlclNuIiwiYnV5T3JkZXJJZCIsImNvbnRlbnQiLCJjb25maXJtVGV4dCIsInNob3dDYW5jZWwiLCJjYW5jZU9yZGVyIiwiY2FuY2VsVGV4dCIsImNvbmZpcm1Db2xvciIsImNhbmNlbENvbG9yIiwic3VjY2VzcyIsInBvc3QiLCJzZWVFeHByZXNzRGV0YWlsIiwiaXRlbSIsIk92ZXJPcmRlciIsIm9yZGVySWQiLCJkdXJhdGlvbiIsImNsb3NlUGluZ2ppYSIsInN1Ym1pdFBKIiwidXNlcmlkIiwic3RhckxldmVsIiwiaW1hZ2VzIiwic2V0VGltZW91dCIsInBpbmdqaSIsImdldFN0YXIiLCJJbnB1dEJsdXIiLCJJbnB1dEZvY3VzIiwidGV4dGFyZWFCSW5wdXQiLCJzaG93RW1qIiwiZGVsZXRlUGljIiwiYWZ0ZXJSZWFkIiwiZmlsZVBhdGgiLCJmb3JtRGF0YSIsImhhbmRsZUVtaiIsInRhZyIsImNvbXBvbmVudHMiLCJlbW90aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBOGxCQTtBQUNBO0FBRUE7QUFFQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUMsV0FDQTtRQUNBQztRQUNBQztNQUNBLEVBQ0E7TUFDQUM7TUFDQUM7UUFDQTtRQUNBQztRQUFBO1FBQ0FDO1FBQUE7UUFDQUM7TUFDQTs7TUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBWjtNQUNBYTtNQUNBWDtNQUNBWTtNQUNBQztNQUNBQztNQUNBQyxhQUNBO1FBQ0FyQjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNBc0I7UUFDQUM7TUFDQSxHQUNBO1FBQ0F2QjtRQUNB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QUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBO1VBQ0FDO1VBQ0FsQjtVQUNBckU7VUFDQTtVQUNBdUU7VUFDQWlCO1VBQ0FDO1VBQ0E7UUFDQTtRQUNBO1FBQ0F4Qyx1QkFDQUM7VUFDQVI7VUFDQVM7VUFBQTtVQUNBcEU7VUFDQXNFO1lBQ0E7WUFDQTtVQUNBO1FBQ0EsR0FDQUM7VUFDQTtZQUNBMUI7Y0FDQXNDO2NBQ0FDO1lBQ0E7WUFFQTtZQUNBO1lBQ0E7WUFDQTtZQUNBdUI7Y0FDQTlEO2dCQUNBZTtjQUNBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQWY7VUFDQXNDO1VBQ0FDO1FBQ0E7TUFDQTtJQUNBO0lBQ0E7SUFDQXdCO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7SUFDQUM7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO01BRUE7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTFDO01BQ0E7SUFDQTtJQUNBMkM7TUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBdEU7VUFDQWM7VUFDQXlEO1VBQ0E7VUFDQTlHO1VBQ0ErRztVQUNBdEI7WUFDQXZCO2NBQ0FiO1lBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBO0lBQ0EyRDtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQSxnREFDQSx3QkFDQSxHQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtVQUNBQztVQUNBakg7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFBQSxFQUNBOztFQUNBa0g7SUFDQTtJQUNBQztFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiI1MTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG4gIDx2aWV3XG4gICAgY2xhc3M9XCJjb250YWluZXIgY29tbW9uUGFnZUJveCBjb21tb25EZXRhaWxQYWdlXCJcbiAgICBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNmNmY3ZmJcIlxuICA+XG4gICAgPCEtLSDlhazlhbHnu4Tku7Yt5q+P5Liq6aG16Z2i5b+F6aG75byV5YWlIC0tPlxuICAgIDxwdWJsaWMtbW9kdWxlPjwvcHVibGljLW1vZHVsZT5cbiAgICA8ei1uYXYtYmFyXG4gICAgICB0aXRsZT1cIuaIkeeahOiuouWNlVwiXG4gICAgICBiZ0NvbG9yPVwiIzI1OGZlYlwiXG4gICAgICBmb250Q29sb3I9XCIjZmZmXCJcbiAgICAgIDpiYWNrU3RhdGU9XCIyMDAwXCJcbiAgICA+XG4gICAgPC96LW5hdi1iYXI+XG4gICAgPHZpZXcgY2xhc3M9XCJjYXRlTGlzdCBmbGV4Ym94XCI+XG4gICAgICA8Y29tbW9uLXN0aWNreVxuICAgICAgICBpdGVtU3R5bGU9XCJ3aWR0aDoyMCU7IGhlaWdodDogNjhycHg7Zm9udC1zaXplOjI0cnB4O1wiXG4gICAgICAgIDpsaXN0PVwib3JkZXJzVGFic1wiXG4gICAgICAgIGxhYmVsPVwibmFtZVwiXG4gICAgICAgIDpjdXJyZW50Q2F0ZUluZGV4PVwiY3VycmVudENhdGVJbmRleFwiXG4gICAgICAgIEBoYW5kbGVzZWxlY3RDYXRlPVwib3JkZXJzVGFiQ0xpXCJcbiAgICAgID48L2NvbW1vbi1zdGlja3k+XG4gICAgPC92aWV3PlxuXG4gICAgPCEtLSDnq5nkvY0gLS0+XG5cbiAgICA8IS0tIDx2aWV3IHYtaWY9XCJvcmRlcnNMaXN0VGFiID09IDFcIj4gLS0+XG4gICAgPHZpZXdcbiAgICAgIGNsYXNzPVwib3JkZXJfYm94XCJcbiAgICAgIDpzdHlsZT1cImBoZWlnaHQ6IGNhbGMoMTAwJSAtICR7KDgwICsgc3RhdHVzQmFySGVpZ2h0KSAqIDJ9cnB4KTtgXCJcbiAgICAgIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMlwiXG4gICAgPlxuICAgICAgPGNvbW1vbi1saXN0XG4gICAgICAgIGltZ1VybD1cInVybFwiXG4gICAgICAgIGluZGV4S2V5PVwib3JkZXJTblwiXG4gICAgICAgIG5vRGF0YUljb249XCJkYXRhXCJcbiAgICAgICAgOmlzU2Nyb2xsPVwidHJ1ZVwiXG4gICAgICAgIDppc0xvYWRpbmdIaWRlPVwiaXNMb2FkaW5nSGlkZVwiXG4gICAgICAgIDppc05vSWNvbj1cInRydWVcIlxuICAgICAgICA6aXNDb25kaXRpb249XCJ0cnVlXCJcbiAgICAgICAgOmRhdGFMaXN0PVwibmV3TGlzdFwiXG4gICAgICAgIEBoYW5jbGVDbGljaz1cInRvRGV0YWlsXCJcbiAgICAgICAgQGxvd2VyPVwib25SZWFjaEJvdHRvbTFcIlxuICAgICAgICA6cGFnaW5hdGlvbj1cInBhZ2luYXRpb25cIlxuICAgICAgICBsYWJlbD1cInRpdGxlXCJcbiAgICAgID5cbiAgICAgICAgPHZpZXcgc2xvdD1cImxhYmVsU2xvdFwiIHNsb3Qtc2NvcGU9XCJzbG90UHJvcHNcIj5cbiAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVySW5mbyBjb2xvcl9zaGFuZG93XCI+XG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm1haW5Db250ZW50XCI+XG4gICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRuc1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMHJweFwiPlxuICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleGJveCBvcGJ0bnNcIiBzdHlsZT1cImxldHRlci1zcGFjaW5nOiAxcnB4XCI+XG4gICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcnB4O1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliO1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPnt7IHNsb3RQcm9wcy5yb3cub3JkZXJTbiB9fVxuXG4gICAgICAgICAgICAgICAgICAgIDx1LXRhZ1xuICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cImhhbmRsZUNvcHkoc2xvdFByb3BzLnJvdy5vcmRlclNuLCAn6K6i5Y2V57yW5Y+3JylcIlxuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yPVwiIzI1OGZlYlwiXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCIjMjU4ZmViXCJcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0PVwi5aSN5Yi2XCJcbiAgICAgICAgICAgICAgICAgICAgICBwbGFpblxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibWluaVwiXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Y2Nlc3NcIlxuICAgICAgICAgICAgICAgICAgICA+PC91LXRhZz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cIml0ZW1cIj5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpdGVtX3RvcFwiXG4gICAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcnB4OyBtYXJnaW4tYm90dG9tOiAwXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cInNvdXJjZV9hcHBcIj48L3ZpZXc+XG4gICAgICAgICAgICAgICAgICA8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LXNob3c9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDBcIlxuICAgICAgICAgICAgICAgICAgICAgID7mnKrku5jmrL48L3RleHRcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNcIlxuICAgICAgICAgICAgICAgICAgICAgIHYtc2hvdz1cInNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gMVwiXG4gICAgICAgICAgICAgICAgICAgICAgPuW+heWPkei0pzwvdGV4dFxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgdi1zaG93PVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAyXCJcbiAgICAgICAgICAgICAgICAgICAgICA+5bey5Y+R6LSnPC90ZXh0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LXNob3c9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDNcIlxuICAgICAgICAgICAgICAgICAgICAgID7kuqTmmJPmiJDlip88L3RleHRcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNcIlxuICAgICAgICAgICAgICAgICAgICAgIHYtc2hvdz1cInNsb3RQcm9wcy5yb3cub3JkZXJTdGF0dXMgPT0gNFwiXG4gICAgICAgICAgICAgICAgICAgICAgPuS6pOaYk+Wksei0pTwvdGV4dFxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgdi1zaG93PVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSA1XCJcbiAgICAgICAgICAgICAgICAgICAgICA+5bey6L+H5pyfPC90ZXh0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcblx0XHRcdFx0PHZpZXcgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJUeXBlID09ICd0cmFpbmluZ0NsYXNzJ1wiIGNsYXNzPVwiYm9va2luZm9saXN0XCI+XHJcblx0XHRcdFx0XHQ8aW1hZ2VcclxuXHRcdFx0XHRcdCAgY2xhc3M9XCJmZW5nIGZlbmdQb2ludFwiXHJcblx0XHRcdFx0XHQgIHNyYz1cIi9zdGF0aWMvaWNvbi9pY29uX3B4Yi5wbmdcIlxyXG5cdFx0XHRcdFx0ICBtb2RlPVwiYXNwZWN0RmlsbFwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHQ8L2ltYWdlPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIj5cclxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj5cclxuXHRcdFx0XHRcdFx0XHR7eyBzbG90UHJvcHMucm93LnJlbWFyayB9fVxyXG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwiXHJcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDU4cnB4O1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzO1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRcdFx0XHRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImZvbnQtc2l6ZTogMjBycHhcIj48L3RleHQ+XHJcblx0XHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHQ8L3ZpZXc+XG4gICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyVHlwZSA9PSAncmVsZWFybidcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJib29raW5mb2xpc3RcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpbWFnZVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZlbmcgZmVuZ1BvaW50XCJcbiAgICAgICAgICAgICAgICAgICAgc3JjPVwiL3N0YXRpYy9pY29uL2Z1Z291LnBuZ1wiXG4gICAgICAgICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaWxsXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDwvaW1hZ2U+XG4gICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiZGVzY3JpcHRpb25cIiA+6K++56iL5aSN6K+76K6i5Y2VXG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PiAtLT5cbiAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYnRucyBmbGV4Ym94XCI+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYm9va25hbWVsZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAge3sgc2xvdFByb3BzLnJvdy5yZW1hcmsgfX1cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPjwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPCEtLSA8dmlld1xuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bnMgZmxleGJveFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICM5ZjlmOWY7IG1hcmdpbi10b3A6IDEwcnB4OyBmb250LXNpemU6IDI0cnB4XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAg5LiL5Y2V5pe26Ze077yae3sgc2xvdFByb3BzLnJvdy5jcmVhdGVUaW1lIH19XG4gICAgICAgICAgICAgICAgICA8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJUeXBlID09ICd2aXAnXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYm9va2luZm9saXN0XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZW5nIGZlbmdQb2ludFwiXG4gICAgICAgICAgICAgICAgICAgIHNyYz1cIi9zdGF0aWMvaWNvbi92aXAucG5nXCJcbiAgICAgICAgICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpbGxcIlxuICAgICAgICAgICAgICAgICAgPjwvaW1hZ2U+XG4gICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiZGVzY3JpcHRpb25cIiB2LWh0bWw9XCJpdGVtLmNvbnRlbnRcIj5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+IC0tPlxuICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgc2xvdFByb3BzLnJvdy52aXBCdXlDb25maWdFbnRpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzbG90UHJvcHMucm93LnZpcEJ1eUNvbmZpZ0VudGl0eS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiIFwiXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2aXBfeWVhclwiXG4gICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy52aXBCdXlDb25maWdFbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPih7eyBzbG90UHJvcHMucm93LnZpcEJ1eUNvbmZpZ0VudGl0eS55ZWFyIH195bm0KTwvdGV4dFxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPjwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5zIGZsZXhib3hcIlxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjOWY5ZjlmOyBtYXJnaW4tdG9wOiAxMHJweDsgZm9udC1zaXplOiAyNHJweFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIOS4i+WNleaXtumXtO+8mnt7IHNsb3RQcm9wcy5yb3cuY3JlYXRlVGltZSB9fVxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclR5cGUgPT0gJ3BvaW50J1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImJvb2tpbmZvbGlzdFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGltYWdlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZyBmZW5nUG9pbnRcIlxuICAgICAgICAgICAgICAgICAgICBzcmM9XCIvc3RhdGljL2ljb24vcGF5XzMucG5nXCJcbiAgICAgICAgICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPC9pbWFnZT5cbiAgICAgICAgICAgICAgICAgIDwhLS0gPHZpZXcgY2xhc3M9XCJkZXNjcmlwdGlvblwiIHYtaHRtbD1cIml0ZW0uY29udGVudFwiPlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz4gLS0+XG4gICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bnMgZmxleGJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJvb2tuYW1lbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgIOWFheWAvFxuICAgICAgICAgICAgICAgICAgICAgIHt7IHNsb3RQcm9wcy5yb3cuYm9va0J1eUNvbmZpZ0VudGl0eS5tb25leSB9feWkqeWMu+W4gVxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU4cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRucyBmbGV4Ym94XCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJjb2xvcjogIzlmOWY5ZjsgbWFyZ2luLXRvcDogMTBycHg7IGZvbnQtc2l6ZTogMjRycHhcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICDkuIvljZXml7bpl7TvvJp7eyBzbG90UHJvcHMucm93LmNyZWF0ZVRpbWUgfX1cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICA8dmlldyB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclR5cGUgPT0gJ29yZGVyJ1wiPlxuICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgdi1mb3I9XCIoaXRlbTIsIGluZGV4MikgaW4gc2xvdFByb3BzLnJvdy5wcm9kdWN0TGlzdFwiXG4gICAgICAgICAgICAgICAgICAgIDprZXk9XCJzbG90UHJvcHMucm93Lm9yZGVySWRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJvb2tpbmZvbGlzdFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3IHYtaWY9XCJpdGVtMi5wcm9kdWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwiaXRlbTIucHJvZHVjdCAmJiBpdGVtMi5wcm9kdWN0LnByb2R1Y3RJbWFnZXNcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWFnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICA6a2V5PVwiRGF0ZS5ub3coKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA6c3JjPVwiaXRlbTIucHJvZHVjdC5wcm9kdWN0SW1hZ2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2ltYWdlPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICB2LWVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmVuZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2MwYzRjYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0MHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID7mmoLml6DlsIHpnaLlm748L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSA8dmlldyBjbGFzcz1cImRlc2NyaXB0aW9uXCIgdi1odG1sPVwiaXRlbS5jb250ZW50XCI+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJ0bnMgZmxleGJveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtMi5wcm9kdWN0ICYmIGl0ZW0yLnByb2R1Y3QucHJvZHVjdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGl0ZW0yLnByb2R1Y3QucHJvZHVjdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19PC92aWV3PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyMHJweFwiPu+/pTwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgdi1pZj1cIml0ZW0yLnByb2R1Y3QucHJpY2U+PTBcIj57e2l0ZW0yLnByb2R1Y3QucHJpY2V9fTwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcnB4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImxlZnRcIiBzdHlsZT1cImNvbG9yOiAjYzBjNGNjXCI+PC92aWV3PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyaWdodCBmbGV4Ym94IG9wYnRuc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICNjMGM0Y2NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICDDl3t7IGl0ZW0yLnF1YW50aXR5ID8gaXRlbTIucXVhbnRpdHkgOiBcIlwiIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3IHYtZWxzZT5cbiAgICAgICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImZlbmdcIj48L3ZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiYm9va25hbWVsZWZ0XCIgc3R5bGU9XCJjb2xvcjogIzE4MTgxOFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID7mnKrnn6XllYblk4E8L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyaWdodCBmbGV4Ym94IG9wYnRucyBwcm9kdWN0X3F1YW50aXR5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgw5d7eyBpdGVtMi5xdWFudGl0eSA/IGl0ZW0yLnF1YW50aXR5IDogXCJcIiB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgICAgICAgIDx2aWV3IHN0eWxlPVwibWFyZ2luLXRvcDogMTBycHg7IG92ZXJmbG93OiBoaWRkZW5cIj5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRucyBmbGV4Ym94XCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJmbG9hdDogcmlnaHQ7IHdpZHRoOiBhdXRvICFpbXBvcnRhbnRcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicmlnaHQgZmxleGJveCBvcGJ0bnNcIlxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NHJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDZycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID7lrp7ku5jmrL48L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG1hcmdpbi10b3A6IDhycHg7ICovXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NnJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHRleHQgc3R5bGU9XCJmb250LXNpemU6IDIwcnB4XCI+77+lPC90ZXh0PiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyVHlwZSA9PSAncG9pbnQnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHNsb3RQcm9wcy5yb3cuYm9va0J1eUNvbmZpZ0VudGl0eS5yZWFsTW9uZXkgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgdi1pZj1cInNsb3RQcm9wcy5yb3cub3JkZXJUeXBlICE9ICdwb2ludCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICBcdDx0ZXh0IHYtaWY9XCJzbG90UHJvcHMucm93LnJlYWxNb25leSAmJiBzbG90UHJvcHMucm93LnJlYWxNb25leSA+IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICBcdCAg77+le3sgc2xvdFByb3BzLnJvdy5yZWFsTW9uZXkgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICBcdDwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICBcdDx0ZXh0IHYtaWY9XCJzbG90UHJvcHMucm93LnJlYWxNb25leT09MCYmc2xvdFByb3BzLnJvdy5qZkRlZHVjdGlvbj09MFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFx0ICDvv6UwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHQ8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHRcclxuICAgICAgICAgICAgICAgICAgICAgICBcdDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHQgIHN0eWxlPVwibWFyZ2luOiAwIDRycHhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFx0ICB2LWlmPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHQgICAgc2xvdFByb3BzLnJvdy5yZWFsTW9uZXkgPiAwICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHQgICAgc2xvdFByb3BzLnJvdy5qZkRlZHVjdGlvbiA+IDBcclxuICAgICAgICAgICAgICAgICAgICAgICBcdCAgXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBcdD5cclxuICAgICAgICAgICAgICAgICAgICAgICBcdCAgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgIFx0PC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDwvdGV4dD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgdi1pZj1cInNsb3RQcm9wcy5yb3cuamZEZWR1Y3Rpb24gPiAwXCI+e3sgc2xvdFByb3BzLnJvdy5qZkRlZHVjdGlvbiB9fSDnp6/liIY8L3RleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgPC92aWV3PlxuXG4gICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3BlcmF0aW9uX2JveCBib3hTaGFkb3dcIlxuICAgICAgICAgICAgICAgICAgdi1pZj1cInNsb3RQcm9wcy5yb3cuaXNTaG93TW9yZSA9PSB0cnVlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAwXCJcbiAgICAgICAgICAgICAgICAgICAgQGNsaWNrLm5hdGl2ZS5zdG9wPVwiY2FuY2VPcmRlcihzbG90UHJvcHMucm93KVwiXG4gICAgICAgICAgICAgICAgICAgID7lj5bmtojorqLljZU8L3ZpZXdcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJidG5zIGZsZXhib3hcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcnB4XCI+XG4gICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlZnRcIlxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjYzBjNGNjXCJcbiAgICAgICAgICAgICAgICAgICAgQGNsaWNrLm5hdGl2ZS5zdG9wPVwiXG4gICAgICAgICAgICAgICAgICAgICAgb3Blbk1vcmUoc2xvdFByb3BzLnJvdywgc2xvdFByb3BzLnJvd0luZGV4KVxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+5pu05aSaPC92aWV3XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cInJpZ2h0IGZsZXhib3ggb3BidG5zXCI+XG4gICAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c2J0biBvcmRlcnN0YXR1c2J0bl9zdWNjZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RQcm9wcy5yb3cucGF5bWVudE1ldGhvZCAhPSAzXG4gICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICBAY2xpY2suc3RvcD1cImdvUGF5KHNsb3RQcm9wcy5yb3cpXCJcbiAgICAgICAgICAgICAgICAgICAgICA+57un57ut5LuY5qy+PC92aWV3XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAxXCJcbiAgICAgICAgICAgICAgICAgICAgICA+5YKs5Y+R6LSnPC92aWV3XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAyXCJcbiAgICAgICAgICAgICAgICAgICAgICBAY2xpY2submF0aXZlLnN0b3A9XCJzZWVFeHByZXNzRGV0YWlsKHNsb3RQcm9wcy5yb3cpXCJcbiAgICAgICAgICAgICAgICAgICAgICA+5p+l55yL54mp5rWBPC92aWV3XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyc3RhdHVzYnRuXCJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwic2xvdFByb3BzLnJvdy5vcmRlclN0YXR1cyA9PSAyXCJcbiAgICAgICAgICAgICAgICAgICAgICBAY2xpY2submF0aXZlLnN0b3A9XCJPdmVyT3JkZXIoc2xvdFByb3BzLnJvdylcIlxuICAgICAgICAgICAgICAgICAgICAgID7noa7orqTmlLbotKc8L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJzdGF0dXNidG5cIlxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJzbG90UHJvcHMucm93Lm9yZGVyU3RhdHVzID09IDNcIlxuICAgICAgICAgICAgICAgICAgICAgID7nlLPor7fllK7lkI48L3ZpZXdcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlcnN0YXR1c2J0blwiXG4gICAgICAgICAgICAgICAgICAgICAgdi1pZj1cIml0ZW0ub3JkZXJTdGF0dXMgPT0gMyAmJiB1c2VyUmVjb3JkaWQgPT0gbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgQGNsaWNrLm5hdGl2ZS5zdG9wPVwicGluZ2ppKGl0ZW0ucHJvZHVjdElkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgPuivhOS7tzwvdmlld1xuICAgICAgICAgICAgICAgICAgICA+IC0tPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwib3JkZXJzdGF0dXNidG5cIiB2LWlmPVwiaXRlbS5vcmRlclN0YXR1cyA9PSAzICYmIHVzZXJSZWNvcmRpZCAhPSBudWxsXCIgQGNsaWNrLnN0b3A9XCJzaG93Wmh1aXBpbmcoaXRlbS5wcm9kdWN0SWQpXCI+6L+96K+EPC92aWV3PiAtLT5cbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJib3JkZXItYm90dG9tOiAycnB4IHNvbGlkICNlOWU5ZTk7IGhlaWdodDogNTBycHhcIlxuICAgICAgICAgICAgICAgICAgdi1pZj1cInNsb3RQcm9wcy5yb3dJbmRleCA8IHNsb3RQcm9wcy5yb3cubGVuZ3RoIC0gMVwiXG4gICAgICAgICAgICAgICAgPjwvdmlldz5cbiAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiYnRuc1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBycHhcIj5cbiAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImZsZXhib3ggb3BidG5zXCIgc3R5bGU9XCJcIj5cbiAgICAgICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cnB4O1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOWI5YjliO1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPjx1LWljb25cbiAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY2xvY2tcIlxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwiIzliOWI5YlwiXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDEwcnB4XCJcbiAgICAgICAgICAgICAgICAgICAgICBzaXplPVwiMjBcIlxuICAgICAgICAgICAgICAgICAgICA+PC91LWljb25cbiAgICAgICAgICAgICAgICAgICAgPnt7IHNsb3RQcm9wcy5yb3cuY3JlYXRlVGltZSB9fTwvdmlld1xuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgPC92aWV3PiAtLT5cbiAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICA8L3ZpZXc+XG5cbiAgICAgICAgICA8IS0tIDx0ZXh0IHYtaWY9XCJzbG90UHJvcHMucm93LmNvbmRpdGlvbnMhPScwMydcIj7jgJDor5XlkKzjgJE8L3RleHQ+IC0tPlxuICAgICAgICA8L3ZpZXc+XG4gICAgICA8L2NvbW1vbi1saXN0PlxuICAgIDwvdmlldz5cblxuICAgIDwhLS0g5a+56K+d5qGGIC0tPlxuICAgIDx1LXBvcHVwIDpzaG93PVwicGluZ2ppYVNob3dcIiA6cm91bmQ9XCIxMFwiIEBjbG9zZT1cImNsb3NlUGluZ2ppYVwiPlxuICAgICAgPHZpZXcgY2xhc3M9XCJ0YW5jaHVcIj5cbiAgICAgICAgPHZpZXcgY2xhc3M9XCJkcF90aXRsZVwiIHYtaWY9XCJwalR5cGUgIT0gJ3podWlwaW5nJ1wiPua3u+WKoOivhOS7tzwvdmlldz5cbiAgICAgICAgPHZpZXcgY2xhc3M9XCJkcF90aXRsZVwiIHYtZWxzZT7mt7vliqDov73or4Q8L3ZpZXc+XG5cbiAgICAgICAgPHZpZXcgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMDAwcnB4OyBvdmVyZmxvdy15OiBzY3JvbGxcIj5cbiAgICAgICAgICA8dW5pLWZvcm1zIDptb2RlbFZhbHVlPVwiUGZvcm1cIj5cbiAgICAgICAgICAgIDwhLS0g6K+E5Lu35Zu+54mHIC0tPlxuICAgICAgICAgICAgPCEtLSBlbmQgLS0+XG4gICAgICAgICAgICA8IS0tIDx1bmktZm9ybXMtaXRlbSBuYW1lPVwiY29tbWVudFwiIGxhYmVsLXdpZHRoPVwiMFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHVuaS1lYXN5aW5wdXQgdHlwZT1cInRleHRhcmVhXCIgdi1tb2RlbD1cIlBmb3JtLmNvbW1lbnRcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaCqOeahOWVhuWTgeivhOS7t1wiICAvPlxuXHRcdFx0XHRcdFx0XHRcdDwvdW5pLWZvcm1zLWl0ZW0+XHRcdCAtLT5cbiAgICAgICAgICA8L3VuaS1mb3Jtcz5cbiAgICAgICAgICA8IS0tIDx1LWJ1dHRvbiB0eXBlPVwic3VjY2Vzc1wiIEBjbGljaz1cInN1Ym1pdFBKXCI+5o+Q5Lqk6K+E5Lu3PC91LWJ1dHRvbj4gLS0+XG4gICAgICAgICAgPCEtLSDmj5DkuqQgLS0+XG4gICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgIGNsYXNzPVwicGFkZGluZy1ib3R0b20tc20gZmxleCBwYWRkaW5nLWxyLXNtXCJcbiAgICAgICAgICAgIHN0eWxlPVwiYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwibWIzMFwiIHYtaWY9XCJwalR5cGUgIT0gJ3podWlwaW5nJ1wiPlxuICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gMSA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoMSlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbJ3N0YXInLCBQZm9ybS5zdGFyID49IDIgPyAnc3RhckxpZ2h0JyA6ICdzdGFyR3JheSddXCJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZXRTdGFyKDIpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICAgIDx2aWV3XG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiWydzdGFyJywgUGZvcm0uc3RhciA+PSAzID8gJ3N0YXJMaWdodCcgOiAnc3RhckdyYXknXVwiXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwiZ2V0U3RhcigzKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgICA8dmlld1xuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gNCA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoNClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgICAgPHZpZXdcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbJ3N0YXInLCBQZm9ybS5zdGFyID49IDUgPyAnc3RhckxpZ2h0JyA6ICdzdGFyR3JheSddXCJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZXRTdGFyKDUpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICA8L3ZpZXc+XG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm1iMzBcIiB2LWlmPVwicGpUeXBlICE9ICd6aHVpcGluZydcIj5cbiAgICAgICAgICAgICAgPCEtLSA8dW5pLWZpbGUtcGlja2VyIDphdXRvLXVwbG9hZD1cImZhbHNlXCIgcmVmPVwiZmlsZXNcIiBAZGVsZXRlPVwiZGVsZXRlSW1nXCIgbGltaXQ9XCI1XCIgQHN1Y2Nlc3M9XCJ1cFN1Y2Nlc3NcIiBAc2VsZWN0PVwic2VsZWN0XCIgdi1tb2RlbD1cIlBmb3JtLmltZ1wiIGZpbGVNZWRpYXR5cGU9XCJpbWFnZVwiIDppbWFnZS1zdHlsZXM9XCJpbWFnZVN0eWxlc1wiLz4gLS0+XG4gICAgICAgICAgICAgIDx1LXVwbG9hZFxuICAgICAgICAgICAgICAgIDpmaWxlTGlzdD1cIlBmb3JtLmltZ1wiXG4gICAgICAgICAgICAgICAgQGFmdGVyUmVhZD1cImFmdGVyUmVhZFwiXG4gICAgICAgICAgICAgICAgQGRlbGV0ZT1cImRlbGV0ZVBpY1wiXG4gICAgICAgICAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgICAgICAgICA6bWF4Q291bnQ9XCI0XCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjgwXCJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCI4MFwiXG4gICAgICAgICAgICAgICAgOnByZXZpZXdGdWxsSW1hZ2U9XCJ0cnVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L3UtdXBsb2FkPlxuICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJmbGV4LXN1YiBmbGV4Ym94XCI+XG4gICAgICAgICAgICAgIDxpIEBjbGljaz1cInNob3dFbWooKVwiIDpjbGFzcz1cImVtb2ppSWNvblwiPjwvaT5cbiAgICAgICAgICAgICAgPCEtLSA8aW5wdXQgdHlwZT1cInRleHRcIiBAZm9jdXM9XCJJbnB1dEZvY3VzXCIgQGJsdXI9XCJJbnB1dEJsdXJcIiB2LW1vZGVsPVwibWVzc2FnZVwiICBAaW5wdXQ9XCJ0ZXh0YXJlYUJJbnB1dFwiICBwbGFjZWhvbGRlci1zdHlsZT1cImZvbnQtc2l6ZToyNHJweDtjb2xvcjojYWFhYWFhO1wiICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaCqOimgeWPkemAgeeahOWGheWuuVwiPjwvaW5wdXQ+IC0tPlxuICAgICAgICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRleHRhcmVhXCJcbiAgICAgICAgICAgICAgICB2LW1vZGVsPVwiUGZvcm0uY29tbWVudFwiXG4gICAgICAgICAgICAgICAgQGZvY3VzPVwiSW5wdXRGb2N1c1wiXG4gICAgICAgICAgICAgICAgQGJsdXI9XCJJbnB1dEJsdXJcIlxuICAgICAgICAgICAgICAgIEBpbnB1dD1cInRleHRhcmVhQklucHV0XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlci1zdHlsZT1cImZvbnQtc2l6ZToyNHJweDtjb2xvcjojYWFhYWFhO1wiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXmgqjopoHlj5HpgIHnmoTlhoXlrrlcIlxuICAgICAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgIDwhLS0gPGJ1dHRvbiBjbGFzcz1cImN1LWJ0biBiZy1ncmFkdWFsLWJsdWUgc2hhZG93LWJsdXJcIj7lj5HpgIE8L2J1dHRvbj4gLS0+XG4gICAgICAgICAgICAgIDx1LWJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJzdWNjZXNzXCJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzdWJtaXRQSlwiXG4gICAgICAgICAgICAgICAgdi1pZj1cInBqVHlwZSAhPSAnemh1aXBpbmcnXCJcbiAgICAgICAgICAgICAgICA+5o+Q5Lqk6K+E5Lu3PC91LWJ1dHRvblxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDx1LWJ1dHRvbiB0eXBlPVwic3VjY2Vzc1wiIEBjbGljaz1cInpodWlwaW5nXCIgdi1lbHNlXG4gICAgICAgICAgICAgICAgPuaPkOS6pOi/veivhDwvdS1idXR0b25cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC92aWV3PlxuICAgICAgICAgIDwvdmlldz5cblxuICAgICAgICAgIDx2aWV3IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlXCI+XG4gICAgICAgICAgICA8ZW1vdGlvblxuICAgICAgICAgICAgICBAZW1vdGlvbj1cImhhbmRsZUVtalwiXG4gICAgICAgICAgICAgIDpoZWlnaHQ9XCIyMjBcIlxuICAgICAgICAgICAgICB2LWlmPVwiaXNTaG93RW1qXCJcbiAgICAgICAgICAgICAgOndpbmRvd1dpZHRoPVwid2luZG93V2lkdGhcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9lbW90aW9uPlxuICAgICAgICAgIDwvdmlldz5cbiAgICAgICAgPC92aWV3PlxuICAgICAgPC92aWV3PlxuICAgIDwvdS1wb3B1cD5cbiAgICA8ei1uYXZpZ2F0aW9uPjwvei1uYXZpZ2F0aW9uPlxuICAgIDx1LWFjdGlvbi1zaGVldFxuICAgICAgOmNsb3NlT25DbGlja0FjdGlvbj1cInRydWVcIlxuICAgICAgOmNsb3NlT25DbGlja092ZXJsYXk9XCJ0cnVlXCJcbiAgICAgIDphY3Rpb25zPVwibW9yZUxpc3RcIlxuICAgICAgOnNob3c9XCJpc1Nob3dNb3JlXCJcbiAgICAgIGNhbmNlbFRleHQ9XCLlhbPpl61cIlxuICAgICAgQGNsb3NlPVwiaXNTaG93TW9yZSA9IGZhbHNlXCJcbiAgICAgIEBzZWxlY3Q9XCJzZWxlY3RDbGlja1wiXG4gICAgPjwvdS1hY3Rpb24tc2hlZXQ+XG4gIDwvdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgJGh0dHAgZnJvbSBcIkAvY29uZmlnL3JlcXVlc3RDb25maWcuanNcIjtcbmltcG9ydCBlbW90aW9uIGZyb20gXCJAL2JraHVtb3ItZW1vamlwbHVzL2NvbXBvbmVudHMvYmtodW1vci1lbW9qaXBsdXMvYmtodW1vci1lbW9qaXBsdXMudnVlXCI7XG4vLyBpbXBvcnQgbXVzaWNQbGF5IGZyb20gXCJAL2NvbXBvbmVudHMvbXVzaWMudnVlXCI7XG5pbXBvcnQgeyBzZXRQYXksIHNldFBheUFzc2lnbiwgc2V0V1hQYXkgfSBmcm9tIFwiQC9jb25maWcvdXRpbHNcIjtcbi8vIGltcG9ydCB7IGRhdGEgfSBmcm9tICdqcXVlcnknO1xuaW1wb3J0IHsgbWFwU3RhdGUsIG1hcE11dGF0aW9ucyB9IGZyb20gXCJ2dWV4XCI7XG5leHBvcnQgZGVmYXVsdCB7XG4gIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzU2hvd01vcmU6IGZhbHNlLFxuICAgICAgY29tZTogXCIyXCIsXG4gICAgICBpc1Nob3dUYWI6IGZhbHNlLFxuICAgICAgaXNMb2FkaW5nSGlkZTogZmFsc2UsXG4gICAgICBtb3JlTGlzdDogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCLlj5bmtojorqLljZVcIixcbiAgICAgICAgICBrZXk6IFwiZmFsc2VcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBjdXJyZW50Q2F0ZUluZGV4OiAwLFxuICAgICAgcGFnaW5hdGlvbjoge1xuICAgICAgICAvLyDor7fmsYLlj4LmlbBcbiAgICAgICAgcGFnZTogMSwgLy/pobXnoIFcbiAgICAgICAgbGltaXQ6IDIwLCAvL+avj+mhteaYvuekulxuICAgICAgICB0b3RhbDogMCwgLy/mgLvmnaHmlbBcbiAgICAgIH0sXG4gICAgICAvLyBsb2FkaW5nTm93IDogZmFsc2UsXG4gICAgICBwbGF5RGF0YToge30sXG4gICAgICBvcHRpb25zOiB7fSxcbiAgICAgIGVtb2ppSWNvbjogXCJjdUljb24tZW1vamlcIixcbiAgICAgIHdpbmRvd1dpZHRoOiAwLFxuICAgICAgYm9va2lkOiBudWxsLFxuICAgICAgYm9va2xpc3RwYWdlOiAxLFxuICAgICAgcHJvZHVjdExpc3Q6IFtdLFxuICAgICAgcHJvZHVjdEluZm86IHt9LFxuICAgICAgZW1vamk6IFtdLFxuICAgICAgRmlsZXM6IFtdLFxuICAgICAgcGFnZTogMSxcbiAgICAgIHBhZ2VTaXplOiAxMCxcbiAgICAgIHRvdGFsOiAwLFxuICAgICAgc3RhdHVzOiAzLFxuICAgICAgc2h1cGluZ0xpc3Q6IFtdLFxuICAgICAgYmZhaWQ6IG51bGwsXG4gICAgICBvcmRlcnNUYWJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIuWFqOmDqFwiLFxuICAgICAgICAgIHZhbHVlOiAtMSxcbiAgICAgICAgICBiYWRnZToge30sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIuW+heS7mOasvlwiLFxuICAgICAgICAgIHZhbHVlOiAwLFxuICAgICAgICAgIGJhZGdlOiB7fSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwi5b6F5Y+R6LSnXCIsXG4gICAgICAgICAgdmFsdWU6IDEsXG4gICAgICAgICAgYmFkZ2U6IHt9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCLlvoXmlLbotKdcIixcbiAgICAgICAgICB2YWx1ZTogMixcbiAgICAgICAgICBiYWRnZToge30sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIuW3suWujOaIkFwiLFxuICAgICAgICAgIHZhbHVlOiAzLFxuICAgICAgICAgIGJhZGdlOiB7fSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBzZWxlY3RPcmRlckluZm86IHt9LFxuICAgICAgb3JkZXJzTGlzdFRhYjogMSxcbiAgICAgIG5ld2VzdHBhZ2U6IDEsXG4gICAgICAvLyBob3Rlc3RwYWdlOiAxLFxuICAgICAgLy8gYm9va3NldHBhZ2U6IDEsXG4gICAgICBuZXdMaXN0OiBbXSxcbiAgICAgIC8vIGhvdExpc3Q6W10sXG4gICAgICAvLyBib29rTGlzdDpbXSxcbiAgICAgIG1hcDoge30sXG4gICAgICB1c2VyUmVjb3JkaWQ6IG51bGwsIC8vIOeUqOaIt+eahOivhOS7t+eKtuaAgVxuICAgICAgcGluZ2ppYVNob3c6IGZhbHNlLCAvL+a3u+WKoOivhOS7t1xuICAgICAgUGZvcm06IHtcbiAgICAgICAgLy8g6K+E5Lu36KGo5Y2VXG4gICAgICAgIHN0YXI6IDAsXG4gICAgICAgIGNvbW1lbnQ6IFwiXCIsXG4gICAgICAgIGltZzogW10sXG4gICAgICAgIGh0bWw6IFwiXCIsXG4gICAgICB9LFxuICAgICAgaXNTaG93RW1qOiBmYWxzZSxcbiAgICAgIHBqVHlwZTogXCJcIixcbiAgICB9O1xuICB9LFxuICBvblB1bGxEb3duUmVmcmVzaCgpIHtcbiAgICB1bmkuc3RvcFB1bGxEb3duUmVmcmVzaCgpO1xuXG4gICAgdGhpcy5uZXdlc3RwYWdlID0gMTtcbiAgICB0aGlzLm5ld0xpc3QgPSBbXTtcbiAgICB0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpO1xuICB9LFxuICBvblJlYWNoQm90dG9tKCkge1xuICAgIHRoaXMubmV3ZXN0cGFnZSsrO1xuICAgIHRoaXMuZ2V0Qm9va0xpc3QodGhpcy5vcmRlcnNMaXN0VGFiLCBmYWxzZSk7XG4gIH0sXG4gIG9uTG9hZChlKSB7XG4gICAgdGhpcy53aW5kb3dXaWR0aCA9IHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpLndpbmRvd1dpZHRoO1xuICAgIHRoaXMub3B0aW9ucyA9IGU7XG4gICAgLy8g6ZqQ6JeP5Y6f55Sf55qEdGFiYmFyXG4gICAgdW5pLmhpZGVUYWJCYXIoKTtcbiAgfSxcbiAgYXN5bmMgb25TaG93KCkge1xuICAgIHRoaXMubmV3TGlzdCA9IFtdO1xuICAgIHRoaXMucGFnaW5hdGlvbiA9IHtcbiAgICAgIHBhZ2U6IDEsIC8v6aG156CBXG4gICAgICBsaW1pdDogMjAsIC8v5q+P6aG15pi+56S6XG4gICAgICB0b3RhbDogMCwgLy/mgLvmnaHmlbBcbiAgICB9O1xuICAgIHRoaXMuJG5leHRUaWNrKGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IHRoaXMub3JkZXJzVGFiQ0xpKHRoaXMub3JkZXJzVGFic1swXSwgMCk7XG4gICAgfSk7XG4gIH0sXG4gIGFzeW5jIG9uVGFiSXRlbVRhcCgpIHtcbiAgICB0aGlzLm5ld0xpc3QgPSBbXTtcbiAgICB0aGlzLnBhZ2luYXRpb24gPSB7XG4gICAgICBwYWdlOiAxLCAvL+mhteeggVxuICAgICAgbGltaXQ6IDIwLCAvL+avj+mhteaYvuekulxuICAgICAgdG90YWw6IDAsIC8v5oC75p2h5pWwXG4gICAgfTtcbiAgfSxcbiAgb25SZWFkeSgpIHt9LFxuICBjb21wdXRlZDoge1xuICAgIC4uLm1hcFN0YXRlKFtcInVzZXJJbmZvXCJdKSxcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIC4uLm1hcE11dGF0aW9ucyhbXCJzZXRMb2FkaW5nU2hvd1wiXSksXG4gICAgZ2V0SW1hZ2VVcmwodXJsKSB7XG4gICAgICAvLyDpgJrov4flnKhVUkzlkI7pnaLmt7vliqDml7bpl7TmiLPmnaXpgb/lhY3nvJPlrZhcbiAgICAgIHJldHVybiBgJHt1cmx9P3RpbWVzdGFtcD0ke0RhdGUubm93KCl9YDtcbiAgICB9LFxuICAgIHNlbGVjdENsaWNrKGluZGV4KSB7XG4gICAgICBjb25zb2xlLmxvZyhcImluZGV4IGF0IGxpbmUgNjA5OlwiLCBpbmRleCk7XG4gICAgICBpZiAoaW5kZXgua2V5ID09IFwiZmFsc2VcIikge1xuICAgICAgICB0aGlzLmlzU2hvd01vcmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jYW5jZU9yZGVyKHRoaXMuc2VsZWN0T3JkZXJJbmZvKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9wZW5Nb3JlKHJvdywgaW5kZXgpIHtcbiAgICAgIHRoaXMuc2VsZWN0T3JkZXJJbmZvID0gcm93O1xuICAgICAgdGhpcy5pc1Nob3dNb3JlID0gdHJ1ZTtcbiAgICB9LFxuICAgIGhhbmRsZUNvcHkodmFsdWUsIHRpdGxlKSB7XG4gICAgICB0aGlzLiRjb21tb25KUy5oYW5kbGVDb3B5KHZhbHVlLCB0aXRsZSk7XG4gICAgfSxcbiAgICBvblJlYWNoQm90dG9tMSgpIHtcbiAgICAgIC8vIOS4iuaLieWKoOi9vVxuICAgICAgLy8g5b2T5YiX6KGo5pWw6YeP5LiN5aSn5LqO5oiW562J5LqO5oC75pWw6YeP77yM5YiZ5YaN5qyh6LCD55So5o6l5Y+j6K+35rGC5pWw5o2uXG4gICAgICBpZiAodGhpcy5uZXdMaXN0Lmxlbmd0aCA+PSB0aGlzLnBhZ2luYXRpb24udG90YWwpIHJldHVybjtcbiAgICAgIHRoaXMucGFnaW5hdGlvbi5wYWdlKys7XG4gICAgICB0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpO1xuICAgIH0sXG4gICAgZ29Ib21lKCkge1xuICAgICAgaWYgKHRoaXMub3B0aW9ucy50eXBlID09IFwib3JkZXJcIikge1xuICAgICAgICB1bmkuc3dpdGNoVGFiKHtcbiAgICAgICAgICB1cmw6IFwiL3BhZ2VzL2hvbWVQYWdlL2luZGV4L2luZGV4XCIsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdW5pLm5hdmlnYXRlQmFjayh7XG4gICAgICAgICAgZGVsdGE6IDEsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgLy8g5YiH5o2idGFi54q25oCBXG4gICAgb3JkZXJzVGFiQ0xpKGRhdGEsIGluZGV4KSB7XG4gICAgICB0aGlzLmN1cnJlbnRDYXRlSW5kZXggPSBpbmRleDtcbiAgICAgIHRoaXMucGFnaW5hdGlvbiA9IHtcbiAgICAgICAgcGFnZTogMSwgLy/pobXnoIFcbiAgICAgICAgbGltaXQ6IDIwLCAvL+avj+mhteaYvuekulxuICAgICAgICB0b3RhbDogMCwgLy/mgLvmnaHmlbBcbiAgICAgIH07XG4gICAgICBjb25zb2xlLmxvZyhcImRhdGEgYXQgbGluZSA0NTQ6XCIsIGRhdGEpO1xuICAgICAgdGhpcy5vcmRlcnNMaXN0VGFiID0gZGF0YS52YWx1ZTtcbiAgICAgIHRoaXMubmV3ZXN0cGFnZSA9IDE7XG4gICAgICAvLyB0aGlzLmhvdGVzdHBhZ2UgPSAxXG4gICAgICAvLyB0aGlzLmJvb2tzZXRwYWdlID0gMVxuICAgICAgdGhpcy5uZXdMaXN0ID0gW107XG4gICAgICAvLyB0aGlzLmhvdExpc3QgPSBbXVxuICAgICAgLy8gdGhpcy5ib29rTGlzdCA9IFtdXG4gICAgICB0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpO1xuICAgIH0sXG4gICAgLy8g5p+l55yL5pys5Lmm5pu05aSa5Lmm6K+EXG4gICAgdG9Nb3JlKHZhbCkge1xuICAgICAgY29uc29sZS5sb2codmFsLCBcInZhbFwiKTtcbiAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcbiAgICAgICAgdXJsOiBcIi4uL2NvbW1lbnRzL2NvbW1lbnRzP2Jvb2tpZD1cIiArIHZhbC5pZCxcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgLy8g6K6i5Y2V6K+m5oOFXG4gICAgdG9EZXRhaWwodmFsKSB7XG4gICAgICBjb25zb2xlLmxvZyh2YWwsIFwidmFsXCIpO1xuICAgICAgLy8gdW5pLm5hdmlnYXRlVG8oe1xuICAgICAgLy8gXHR1cmw6Jy4uL2Jvb2tTaG9wL2NvbW1lbnRzRGV0YWlsP2Jvb2tpZD0nK3ZhbC5ib29raWQrJyZiZmFfaWQ9Jyt2YWwuaWRcbiAgICAgIC8vIH0pXG4gICAgICB1bmkubmF2aWdhdGVUbyh7XG4gICAgICAgIHVybDpcbiAgICAgICAgICBcIi9wYWdlcy9ib29rU2hvcC9vcmRlckxDb250P29yZGVySWQ9XCIgK1xuICAgICAgICAgIHZhbC5vcmRlcklkICtcbiAgICAgICAgICBcIiZvcmRlclR5cGU9XCIgK1xuICAgICAgICAgIHZhbC5vcmRlclN0YXR1cyArXG4gICAgICAgICAgXCImb3JkZXJTbj1cIiArXG4gICAgICAgICAgdmFsLm9yZGVyU24sXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdldEJvb2tMaXN0KGZsYWcsIHJlZnJlc2hmbGFnKSB7XG4gICAgICB0aGlzLmlzTG9hZGluZ0hpZGUgPSBmYWxzZTtcbiAgICAgIHZhciB0aGF0ID0gdGhpcztcbiAgICAgIC8vIOagueaNrnRhYuS4jeWQjO+8jOiOt+WPluacgOaWsOS5puivhOOAgeacgOeDreS5puivhOOAgeS5pumbhuWIl+ihqFxuICAgICAgLy8gdW5pLnNob3dMb2FkaW5nKHtcbiAgICAgIC8vIFx0dGl0bGU6ICfliqDovb3kuK0nXG4gICAgICAvLyB9KTtcblxuICAgICAgLy8g6aG26YOo57qi54K55pWw6YePXG4gICAgICAkaHR0cFxuICAgICAgICAucmVxdWVzdCh7XG4gICAgICAgICAgdXJsOiBcImNvbW1vbi9idXlPcmRlci9nZXRCdXlPcmRlck51bUJ5U3RhdHVzXCIsXG4gICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB1c2VySWQ6IHRoYXQudXNlckluZm8uaWQsXG4gICAgICAgICAgICBjb21lOiB0aGlzLmNvbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcbiAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAvLyAgICAgICAgICAg6K6i5Y2V54q25oCBXG4gICAgICAgICAgLy8gKiAwOiDlvoXku5jmrL5cbiAgICAgICAgICAvLyAqIDE6IOW+heWPkei0p1xuICAgICAgICAgIC8vICogMjog5bey5Y+R6LSnXG4gICAgICAgICAgLy8gKiAz77ya5bey5a6M5oiQXG4gICAgICAgICAgLy8gKiA0OiDkuqTmmJPlpLHotKVcbiAgICAgICAgICAvLyAqIDU6IOW3sui/h+acn1xuXG4gICAgICAgICAgY29uc29sZS5sb2coXCJyZXMgYXQgbGluZSA3NTc6XCIsIHJlcyk7XG4gICAgICAgICAgdGhhdC5tYXAgPSByZXMuZGF0YTtcblxuICAgICAgICAgIHRoYXQub3JkZXJzVGFicy5tYXAoKGUpID0+IHtcbiAgICAgICAgICAgIGlmIChlLnZhbHVlID09IDAgfHwgZS52YWx1ZSA9PSAxIHx8IGUudmFsdWUgPT0gMikge1xuICAgICAgICAgICAgICB2YXIgbnVtTGlzdCA9IHRoYXQubWFwLmZpbHRlcigodikgPT4gdi5vcmRlcl9zdGF0dXMgPT0gZS52YWx1ZSk7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwibnVtIGF0IGxpbmUgNzcxOlwiLCBudW1MaXN0KTtcbiAgICAgICAgICAgICAgaWYgKG51bUxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGUuYmFkZ2UgPSB7XG4gICAgICAgICAgICAgICAgICB2YWx1ZTogbnVtTGlzdFswXS5udW0sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBlLmJhZGdlID0ge307XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGUuYmFkZ2UgPSB7fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICAvLyB0aGlzLiRzZXQoJ3RoaXMub3JkZXJzVGFicycsKVxuICAgICAgICAgIHRoYXQuJGZvcmNlVXBkYXRlKCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgICB9KTtcblxuICAgICAgdmFyIHBhcmFtcyA9IHtcbiAgICAgICAgdXNlcklkOiB0aGlzLnVzZXJJbmZvLmlkLFxuICAgICAgICBjb21lOiB0aGlzLmNvbWUsXG4gICAgICAgIG9yZGVyU3RhdHVzOiBmbGFnID09IC0xID8gXCJcIiA6IGZsYWcsIC8v5LygbnVsbOS4uuWFqOmDqO+8jOiuouWNleeKtuaAgSAgMC3mnKrku5jmrL4gMS3lvoXlj5HotKcgMi3lt7Llj5HotKcgMy3kuqTmmJPmiJDlip8gNC3kuqTmmJPlpLHotKUgNS3ov4fmnJ9cbiAgICAgICAgLi4udGhpcy5wYWdpbmF0aW9uLFxuICAgICAgICAvLyBsaW1pdDogMTAsXG4gICAgICAgIC8vIHBhZ2U6IHRoaXMubmV3ZXN0cGFnZSxcbiAgICAgIH07XG4gICAgICB0aGlzLiRodHRwXG4gICAgICAgIC5yZXF1ZXN0KHtcbiAgICAgICAgICB1cmw6IFwiY29tbW9uL2J1eU9yZGVyL2NvbW1vbkJ1eU9yZGVyTGlzdFwiLFxuICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcbiAgICAgICAgICBkYXRhOiBwYXJhbXMsXG4gICAgICAgICAgaGVhZGVyOiB7XG4gICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XG4gICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coXCLorqLljZXliJfooajlhoXlrrnojrflj5bmiJDlip9cIiwgcmVzKTtcbiAgICAgICAgICB0aGF0LnBhZ2luYXRpb24udG90YWwgPSByZXMuZGF0YS50b3RhbDtcbiAgICAgICAgICBpZiAocmVzLmRhdGEudG90YWwgPT0gMCkge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmdIaWRlID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHJlcy5jb2RlID09IDAgJiYgcmVzLmRhdGEgJiYgcmVzLmRhdGEucmVjb3Jkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGF0Lm5ld0xpc3QgPSB0aGF0Lm5ld0xpc3QuY29uY2F0KHJlcy5kYXRhLnJlY29yZHMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvL1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocmVzLmRhdGEucmVjb3Jkcy5sZW5ndGggIT0gMTApIHtcbiAgICAgICAgICAgIHRoYXQuc3RhdHVzID0gMTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhhdC5zdGF0dXMgPSAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgIH0pO1xuICAgIH0sXG4gICAgLy8g5pSv5LuYXG4gICAgZ29QYXkocGF5SXRlbSkge1xuICAgICAgY29uc29sZS5sb2cocGF5SXRlbSwgXCLorqLljZXmlbDmja5cIik7XG4gICAgICBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDIpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCLpmL/ph4zmlK/ku5hcIik7XG4gICAgICAgIHNldFBheShcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlUGF5OiBcImFsaXBheVwiLFxuICAgICAgICAgICAgc3ViamVjdDogXCJvcmRlclwiLFxuICAgICAgICAgICAgdG90YWxBbW91bnQ6IHBheUl0ZW0ucmVhbE1vbmV5LFxuICAgICAgICAgICAgdHlwZTogMixcbiAgICAgICAgICAgIHJlbGV2YW5jZW9pZDogcGF5SXRlbS5vcmRlclNuLFxuICAgICAgICAgICAgY3VzdG9tZXJJZDogdGhpcy51c2VySW5mby5pZCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIChyZXMpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXMuc3VjY2Vzcykge1xuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jmiJDlip9cIixcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jlpLHotKVcIixcbiAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmdldE9yZGVyTGlzdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDEpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCLlvq7kv6HmlK/ku5hcIik7XG5cbiAgICAgICAgbGV0IGRhdGExID0ge1xuICAgICAgICAgIG9yZGVyU246IHBheUl0ZW0ub3JkZXJTbixcbiAgICAgICAgICBidXlPcmRlcklkOiBudWxsLFxuICAgICAgICAgIHRvdGFsQW1vdW50OiBwYXlJdGVtLnJlYWxNb25leSxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc29sZS5sb2coZGF0YTEsIFwiZGF0YTFcIik7XG4gICAgICAgIHNldFdYUGF5KGRhdGExLCAocmVzKSA9PiB7XG4gICAgICAgICAgaWYgKHJlcy5zdWNjZXNzKSB7XG4gICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgdGl0bGU6IFwi5pSv5LuY5oiQ5YqfXCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgIGlmIChyZXMuZGF0YS5lcnJNc2cuaW5kZXhPZihcIlVzZXIgY2FuY2VsZWRcIikgIT0gLTEpIHtcbiAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IFwi55So5oi35Y+W5raI5pSv5LuYXCIsXG4gICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgaW1hZ2U6IFwiLi4vLi4vc3RhdGljL2ljb24vaWNfY2xvc2UucG5nXCIsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IFwi5pSv5LuY5aSx6LSlXCIsXG4gICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgaW1hZ2U6IFwiLi4vLi4vc3RhdGljL2ljb24vaWNfY2xvc2UucG5nXCIsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKHBheUl0ZW0ucGF5bWVudE1ldGhvZCA9PSAzICYmIHRoaXMub3JkZXJzTGlzdFRhYiA9PSAwKSB7XG4gICAgICAgIC8vIOiLueaenOWFheWAvFxuICAgICAgICBjb25zb2xlLmxvZyhcIuiLueaenOS6jOasoeaUr+S7mFwiKTtcbiAgICAgICAgdW5pLnNob3dNb2RhbCh7XG4gICAgICAgICAgY29udGVudDogXCJhcHBsZeWGhei0reiuouWNleS4jeaUr+aMgee7p+e7reaUr+S7mO+8jOivt+mHjeaWsOWPkei1t+aUr+S7mOeUs+ivt+W5tuWujOaIkOaUr+S7mFwiLFxuICAgICAgICAgIGNvbmZpcm1UZXh0OiBcIuWlveeahFwiLFxuICAgICAgICAgIHNob3dDYW5jZWw6IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDQpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCLlpKnljLvluIHkuozmrKHmlK/ku5hcIik7XG4gICAgICB9XG4gICAgfSxcbiAgICAvLyDlj5bmtojorqLljZVcbiAgICBjYW5jZU9yZGVyKGl0ZW0pIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiaXRlbS5vcmRlclNuXCIsIGl0ZW0pO1xuICAgICAgdW5pLnNob3dNb2RhbCh7XG4gICAgICAgIHRpdGxlOiBcIuaPkOekulwiLFxuICAgICAgICBjb250ZW50OiBcIuehruWumuimgeWPlua2iOiuouWNleWQl++8n1wiLFxuICAgICAgICBjb25maXJtVGV4dDogXCLlj5bmtojorqLljZVcIixcbiAgICAgICAgY2FuY2VsVGV4dDogXCLogIPomZHkuIDkuItcIixcbiAgICAgICAgY29uZmlybUNvbG9yOiBcIiNjOTY3MTNcIixcbiAgICAgICAgY2FuY2VsQ29sb3I6IFwiIzU1NVwiLFxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XG4gICAgICAgICAgaWYgKHJlcy5jb25maXJtKSB7XG4gICAgICAgICAgICB0aGlzLiRodHRwXG4gICAgICAgICAgICAgIC5wb3N0KFwiYm9vay9idXlPcmRlci9hcHBEZWxldGU/b3JkZXJJZD1cIiArIGl0ZW0ub3JkZXJJZClcbiAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuWPlua2iOiuouWNleaIkOWKn1wiLFxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAvLyB1bmkuc3dpdGNoVGFiKHtcbiAgICAgICAgICAgICAgICAgIC8vIFx0dXJsOiAnLi9vcmRlckxpc3QnXG4gICAgICAgICAgICAgICAgICAvLyB9KTtcblxuICAgICAgICAgICAgICAgICAgdGhpcy5uZXdlc3RwYWdlID0gMTtcbiAgICAgICAgICAgICAgICAgIHRoaXMubmV3TGlzdCA9IFtdO1xuICAgICAgICAgICAgICAgICAgdGhpcy5nZXRCb29rTGlzdCh0aGlzLm9yZGVyc0xpc3RUYWIsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgLy8gY2FuY2VPcmRlcihpdGVtKSB7XG4gICAgLy8gXHR1bmkuc2hvd01vZGFsKHtcbiAgICAvLyBcdFx0dGl0bGU6ICfmj5DnpLonLFxuICAgIC8vIFx0XHRjb250ZW50OiAn56Gu5a6a6KaB5Y+W5raI6K6i5Y2V5ZCX77yfJyxcbiAgICAvLyBcdFx0Y29uZmlybVRleHQ6IFwi5Y+W5raI6K6i5Y2VXCIsXG4gICAgLy8gXHRcdGNhbmNlbFRleHQ6IFwi6ICD6JmR5LiA5LiLXCIsXG4gICAgLy8gXHRcdGNvbmZpcm1Db2xvcjogJyNjOTY3MTMnLFxuICAgIC8vIFx0XHRjYW5jZWxDb2xvcjogJyM1NTUnLFxuICAgIC8vIFx0XHRzdWNjZXNzOiByZXMgPT4ge1xuICAgIC8vIFx0XHRcdGlmIChyZXMuY29uZmlybSkge1xuICAgIC8vIFx0XHRcdFx0dW5pLnNob3dMb2FkaW5nKClcbiAgICAvLyBcdFx0XHRcdCRodHRwLnJlcXVlc3Qoe1xuICAgIC8vIFx0XHRcdFx0XHR1cmw6IFwiYm9vay9idXlPcmRlci9jYW5jZWxPcmRlclwiLFxuICAgIC8vIFx0XHRcdFx0XHRtZXRob2Q6IFwiR0VUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcbiAgICAvLyBcdFx0XHRcdFx0ZGF0YSxcbiAgICAvLyBcdFx0XHRcdFx0aGVhZGVyOiB7IC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcbiAgICAvLyBcdFx0XHRcdFx0XHQnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgLy8gXHRcdFx0XHRcdH0sXG4gICAgLy8gXHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG4gICAgLy8gXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PSAwKSB7XG4gICAgLy8gXHRcdFx0XHRcdFx0dW5pLmhpZGVMb2FkaW5nKClcbiAgICAvLyBcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcbiAgICAvLyBcdFx0XHRcdFx0XHRcdHRpdGxlOiAn6K6i5Y2V5bey5Y+W5raIJyxcbiAgICAvLyBcdFx0XHRcdFx0XHRcdGljb246ICdzdWNjZXNzJyxcbiAgICAvLyBcdFx0XHRcdFx0XHRcdGR1cmF0aW9uOiAxMDAwXG4gICAgLy8gXHRcdFx0XHRcdFx0fSlcbiAgICAvLyBcdFx0XHRcdFx0XHR0aGlzLmdldEJvb2tMaXN0KHRoaXMub3JkZXJzTGlzdFRhYiwgZmFsc2UpXG4gICAgLy8gXHRcdFx0XHRcdH1cbiAgICAvLyBcdFx0XHRcdH0pXG4gICAgLy8gXHRcdFx0fSBlbHNlIGlmIChyZXMuY2FuY2VsKSB7fVxuICAgIC8vIFx0XHR9XG4gICAgLy8gXHR9KTtcbiAgICAvLyB9LFxuICAgIC8vIOafpeeci+eJqea1gVxuICAgIHNlZUV4cHJlc3NEZXRhaWwoaXRlbSkge1xuICAgICAgLy8gY29uc29sZS5sb2coaXRlbSwgdGhpcy5zaGVldExpc3QubGVuZ3RoKVxuICAgICAgLy8gaWYodGhpcy5zaGVldExpc3QubGVuZ3RoID4gMSl7XG4gICAgICAvLyBcdHRoaXMuc2hlZXRMaXN0U2hvdyA9IHRydWVcbiAgICAgIC8vIH1lbHNlIGlmKHRoaXMuc2hlZXRMaXN0Lmxlbmd0aCA9PSAxKXtcbiAgICAgIC8vIOebtOaOpeWxleekuuivpuaDhVxuICAgICAgdW5pLm5hdmlnYXRlVG8oe1xuICAgICAgICB1cmw6XG4gICAgICAgICAgXCIuL2RlbGl2ZXJEZXRhaWw/b3JkZXJTbj1cIiArXG4gICAgICAgICAgaXRlbS5vcmRlclNuICtcbiAgICAgICAgICBcIiZleHByZXNzT3JkZXJTbj1cIiArXG4gICAgICAgICAgaXRlbS5leHByZXNzTGlzdFswXS5leHByZXNzT3JkZXJTbixcbiAgICAgIH0pO1xuICAgICAgLy8gfVxuICAgIH0sXG4gICAgLy8g56Gu6K6k5pS26LSnXG4gICAgT3Zlck9yZGVyKGl0ZW0pIHtcbiAgICAgIHVuaS5zaG93TW9kYWwoe1xuICAgICAgICB0aXRsZTogXCLmj5DnpLpcIixcbiAgICAgICAgY29udGVudDogXCLnoa7orqTmlLbotKfvvJ9cIixcbiAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xuICAgICAgICAgIGxldCBkYXRhID0ge1xuICAgICAgICAgICAgb3JkZXJJZDogaXRlbS5vcmRlcklkLFxuICAgICAgICAgICAgb3JkZXJTdGF0dXM6IFwiM1wiLFxuICAgICAgICAgIH07XG4gICAgICAgICAgaWYgKHJlcy5jb25maXJtKSB7XG4gICAgICAgICAgICB1bmkuc2hvd0xvYWRpbmcoKTtcbiAgICAgICAgICAgICRodHRwXG4gICAgICAgICAgICAgIC5yZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICB1cmw6IFwiYm9vay9idXlPcmRlci91cGRhdGVcIixcbiAgICAgICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLCAvLyBQT1NU44CBR0VU44CBUFVU44CBREVMRVRF77yM5YW35L2T6K+05piO5p+l55yL5a6Y5pa55paH5qGjXG4gICAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcbiAgICAgICAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMCkge1xuICAgICAgICAgICAgICAgICAgdW5pLmhpZGVMb2FkaW5nKCk7XG4gICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5pS26LSn5oiQ5YqfXCIsXG4gICAgICAgICAgICAgICAgICAgIGljb246IFwic3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbjogMTAwMCxcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgdGhpcy5uZXdlc3RwYWdlID0gMTtcbiAgICAgICAgICAgICAgICAgIHRoaXMubmV3TGlzdCA9IFtdO1xuICAgICAgICAgICAgICAgICAgdGhpcy5nZXRCb29rTGlzdCh0aGlzLm9yZGVyc0xpc3RUYWIsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSBpZiAocmVzLmNhbmNlbCkge1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgY2xvc2VQaW5namlhKCkge1xuICAgICAgdGhpcy5waW5namlhU2hvdyA9IGZhbHNlO1xuICAgICAgdGhpcy5QZm9ybS5jb21tZW50ID0gXCJcIjtcbiAgICAgIHRoaXMuUGZvcm0uaHRtbCA9IFwiXCI7XG4gICAgICB0aGlzLmVtb2ppID0gW107XG4gICAgfSxcbiAgICAvLyDmj5DkuqTor4Tku7dcbiAgICBzdWJtaXRQSigpIHtcbiAgICAgIGlmICh0aGlzLlBmb3JtLmNvbW1lbnQgIT0gXCJcIikge1xuICAgICAgICBsZXQgZGF0YSA9IHtcbiAgICAgICAgICB1c2VyaWQ6IHRoaXMudXNlckluZm8uaWQsXG4gICAgICAgICAgb3JkZXJTbjogdGhpcy5vcmRlclNuLFxuICAgICAgICAgIGJvb2tpZDogdGhpcy5wcm9kdWN0SUQsXG4gICAgICAgICAgLy8gJ2NvbnRlbnQnOiB0aGlzLlBmb3JtLmh0bWwsXG4gICAgICAgICAgY29udGVudDogdGhpcy5QZm9ybS5jb21tZW50LFxuICAgICAgICAgIHN0YXJMZXZlbDogdGhpcy5QZm9ybS5zdGFyLFxuICAgICAgICAgIGltYWdlczogdGhpcy5QZm9ybS5pbWcsXG4gICAgICAgICAgLy8gJ2Vtb2ppJzp0aGlzLmVtb2ppICAvLyDooajmg4XmlbDnu4RcbiAgICAgICAgfTtcbiAgICAgICAgLy8gY29uc29sZS5sb2coZGF0YSwnZGF0YScpXG4gICAgICAgICRodHRwXG4gICAgICAgICAgLnJlcXVlc3Qoe1xuICAgICAgICAgICAgdXJsOiBcImJ1eS9yZWNvcmQvVXNlclJlY29yZGNvbW1lbnRcIixcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxuICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSlcbiAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMCkge1xuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLor4Tku7fmiJDlip/vvIFcIixcbiAgICAgICAgICAgICAgICBpY29uOiBcInN1Y2Nlc3NcIixcbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgdGhpcy5waW5namlhU2hvdyA9IGZhbHNlO1xuICAgICAgICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBcIlwiO1xuICAgICAgICAgICAgICB0aGlzLlBmb3JtLmh0bWwgPSBcIlwiO1xuICAgICAgICAgICAgICB0aGlzLmVtb2ppID0gW107XG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHVuaS5uYXZpZ2F0ZUJhY2soe1xuICAgICAgICAgICAgICAgICAgZGVsdGE6IDEsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0sIDIwMDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgdGl0bGU6IFwi6K+35YWI6L6T5YWl5oKo55qE6K+E5Lu35YaF5a65IO+8gVwiLFxuICAgICAgICAgIGljb246IFwibm9uZVwiLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIC8vIOa3u+WKoOivhOS7t1xuICAgIHBpbmdqaShpZCkge1xuICAgICAgY29uc29sZS5sb2coaWQpO1xuICAgICAgdGhpcy5walR5cGUgPSBcIlwiO1xuICAgICAgdGhpcy5wcm9kdWN0SUQgPSBpZDtcbiAgICAgIHRoaXMucGluZ2ppYVNob3cgPSB0cnVlO1xuICAgIH0sXG4gICAgZ2V0U3RhcihpKSB7XG4gICAgICB0aGlzLlBmb3JtLnN0YXIgPSBpO1xuICAgIH0sXG4gICAgSW5wdXRCbHVyKGUpIHt9LFxuICAgIElucHV0Rm9jdXMoZSkge1xuICAgICAgdGhpcy5pc1Nob3dFbWogPSBmYWxzZTtcbiAgICAgIHRoaXMuZW1vamlJY29uID0gXCJjdUljb24tZW1vamlcIjtcbiAgICAgIHRoaXMuJGVtaXQoXCJmb2NcIik7XG4gICAgfSxcbiAgICB0ZXh0YXJlYUJJbnB1dChlKSB7XG4gICAgICBjb25zb2xlLmxvZyhlLCBcImVcIik7XG4gICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBlLmRldGFpbC52YWx1ZTtcbiAgICAgIC8vLyB0aGlzLlBmb3JtLmh0bWwgPSBlLmRldGFpbC52YWx1ZVxuICAgIH0sXG4gICAgc2hvd0VtaigpIHtcbiAgICAgIGxldCBib29sID0gIXRoaXMuaXNTaG93RW1qO1xuICAgICAgaWYgKGJvb2wpIHtcbiAgICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1rZXlib2FyZFwiO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1lbW9qaVwiO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmlzU2hvd0VtaiA9IGJvb2w7XG4gICAgICB0aGlzLiRlbWl0KFwic2hvd1wiKTtcbiAgICB9LFxuICAgIGRlbGV0ZVBpYygpIHtcbiAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgIHRoYXQuUGZvcm0uaW1nLnNwbGljZSgwLCAxKTtcbiAgICAgIC8vY29uc29sZS5sb2codGhhdC5QZm9ybS5pbWcpXG4gICAgfSxcbiAgICBhZnRlclJlYWQoZSkge1xuICAgICAgLy9jb25zb2xlLmxvZyhlKVxuICAgICAgbGV0IHRoYXQgPSB0aGlzO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlLmZpbGUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhpLGUuZmlsZVtpXS51cmwpXG4gICAgICAgIHVuaS51cGxvYWRGaWxlKHtcbiAgICAgICAgICB1cmw6IHRoaXMuJGJhc2VVcmwgKyBcIm9zcy9maWxlb3NzXCIsXG4gICAgICAgICAgZmlsZVBhdGg6IGUuZmlsZVtpXS51cmwsXG4gICAgICAgICAgLy9maWxlczplLmZpbGUsXG4gICAgICAgICAgbmFtZTogXCJmaWxlXCIsXG4gICAgICAgICAgZm9ybURhdGE6IHt9LFxuICAgICAgICAgIHN1Y2Nlc3M6IChyZXMpID0+IHtcbiAgICAgICAgICAgIHRoYXQuUGZvcm0uaW1nLnB1c2goe1xuICAgICAgICAgICAgICB1cmw6IEpTT04ucGFyc2UocmVzLmRhdGEpLnVybCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgLy8g6I635b6X6L6T5YWl55qE6KGo5oOF5pWw57uEXG4gICAgaGFuZGxlRW1qKGkpIHtcbiAgICAgIGNvbnNvbGUubG9nKGksIFwiaS0tLS0tLS0tLVwiKTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGk7XG4gICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmlucHV0VmFsdWUpO1xuICAgICAgaWYgKGkuZW1vdGlvbmkgPT0gXCJbZW1fOThdXCIpIHtcbiAgICAgICAgLy/ljLnphY3mnIDlkI7kuIDkuKrooajmg4XnrKblj7flubbliKDpmaQxMeOAglxuICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSB0aGlzLlBmb3JtLmNvbW1lbnQucmVwbGFjZShcbiAgICAgICAgICAvKFxcW1teXFxdXStcXF18W1xcc1xcU10pJC8sXG4gICAgICAgICAgXCJcIlxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5lbW9qaS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgdGhpcy5lbW9qaSA9IHRoaXMuZW1vamkuc2xpY2UoMCwgLTEpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmVtb2ppLnB1c2goe1xuICAgICAgICAgIHRhZzogaS5lbW90aW9uLFxuICAgICAgICAgIG5hbWU6IGkuZW1vdGlvbmksXG4gICAgICAgIH0pO1xuICAgICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmVtb2ppLCd0aGlzLmVtb2ppJylcbiAgICAgICAgdGhpcy5QZm9ybS5jb21tZW50ICs9IGkuZW1vdGlvbmk7XG4gICAgICAgIC8vLyB0aGlzLlBmb3JtLmh0bWwgKz0gaS5lbW90aW9uXG4gICAgICB9XG4gICAgfSxcbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIC8vIG11c2ljUGxheSxcbiAgICBlbW90aW9uLFxuICB9LFxufTtcbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5AaW1wb3J0IFwiQC9zdHlsZS9taXhpbi5zY3NzXCI7XG5cbi5vcmRlcnNUYWJzIHtcbiAgLy8gbWFyZ2luOiA3MHJweCAwIDAgMDtcbiAgd2lkdGg6IDczMHJweDtcbiAgLy8gcGFkZGluZzogMCAzJSAzJSAzJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICAvLyB0b3A6IDgwcnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmYWY5O1xuICB6LWluZGV4OiAxMDA7XG5cbiAgLm9yZGVyc2RlZmluZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDIwcnB4IDAgMjBycHggMDtcbiAgICAvLyBtYXJnaW46IDQwcnB4IDAgMTVycHggMDtcbiAgICB3aWR0aDogMTQwcnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDMwcnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5vcmRlcnNudW0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA4cnB4O1xuICAgICAgcmlnaHQ6IDBycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAvLyBib3JkZXI6MXJweCBzb2xpZCAjYTNhM2EzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDBycHg7XG4gICAgICB3aWR0aDogMjhycHg7XG4gICAgICBoZWlnaHQ6IDI4cnB4O1xuICAgICAgZm9udC1zaXplOiAyMHJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgIH1cbiAgfVxuXG4gIC5vcmRTdHlsZSB7XG4gICAgLy8gYm9yZGVyLWJvdHRvbTogNHJweCBzb2xpZCAjNTRhOTY2O1xuICAgIC8vIGNvbG9yOiAjNTRhOTY2O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5vcmRlcnN0YXR1c2J0biB7XG4gIHdpZHRoOiAxNjBycHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA2MHJweDtcbiAgbGluZS1oZWlnaHQ6IDU1cnB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMWQxZDFkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYTBhMGEwO1xuICBib3JkZXItcmFkaXVzOiAzMHJweDtcbiAgLy8gcGFkZGluZzogMCAxMHJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMjBycHg7XG4gIGZvbnQtc2l6ZTogMjhycHg7XG59XG5cbi5vcmRlcnN0YXR1c2J0bl9zdWNjZXNzIHtcbiAgY29sb3I6ICNmNTM0MmI7XG4gIGJvcmRlci1jb2xvcjogI2Y1MzQyYjtcbn1cblxuLmZsZXhib3gge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uY29udGFpbmVyIHtcbiAgcGFkZGluZzogMCAxMHB4O1xufVxuXG4uc3RhciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHJweDtcbn1cblxuLnN0YXJHcmF5IHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL3N0YXRpYy9pY29uL3N0YXJfZ3JlZXkucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLnN0YXJMaWdodCB7XG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9zdGF0aWMvaWNvbi9zdGFyX2xpZ2h0LnBuZykgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbi5jdUljb24tZW1vamkge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vc3RhdGljL2JpYW9xaW5nLnBuZykgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIwcnB4O1xuICB3aWR0aDogMzBweDtcbn1cblxuLmN1SWNvbi1rZXlib2FyZCB7XG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9zdGF0aWMvYmlhb3FpbmcucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4udGFuY2h1IHtcbiAgcGFkZGluZzogNDBycHggMzBycHggNDBycHggMzBycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuZHBfdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzJycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBycHg7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmRwX2FkZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDBycHg7XG4gICAgcmlnaHQ6IDMwcnB4O1xuICAgIGZvbnQtc2l6ZTogMjJycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZkNjAwNDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHJweDtcbiAgICBwYWRkaW5nOiA1cnB4IDEwcnB4O1xuXG4gICAgLnUtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVycHg7XG4gICAgfVxuICB9XG59XG5cbi5xdWVzaGVuZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTAwcnB4O1xuICBjb2xvcjogIzhiOGE5MTtcbiAgcGFkZGluZy1ib3R0b206IDIwcnB4O1xuICBwYWRkaW5nLXRvcDogMjBycHg7XG59XG5cbi5nZW5nZHVvc2h1cGluZyB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogIzAwNDRmZjtcbiAgcGFkZGluZy1ib3R0b206IDIwcnB4O1xuICBwYWRkaW5nLXRvcDogMjBycHg7XG59XG5cbi5vcmRlckluZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgLy8gbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMjBycHggMjBycHg7XG4gIGJvcmRlcjogMXB4IHNwbGlkICM5OTk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8vIHBhZGRpbmctYm90dG9tOiAyMHJweDtcbiAgYm9yZGVyLXJhZGl1czogMjBycHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcnB4O1xuXG4gIC5ib29raW5mb2xpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gaGVpZ2h0OiAxODBycHg7XG4gIH1cblxuICAuYm9va2luZm9saXN0Om50aC1sYXN0LWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3BlcmF0aW9uX2JveCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjBycHg7XG4gICAgbGVmdDogNDBycHg7XG4gIH1cbn1cblxuLm1haW5Db250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAuaXRlbSB7XG4gICAgLy8gcGFkZGluZzogMTBweDtcbiAgICAvLyBtYXJnaW4tYm90dG9tOiAzMHJweDtcbiAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLy8gcGFkZGluZy1ib3R0b206IDIwcnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcnB4O1xuICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcnB4O1xuICB9XG5cbiAgLmZlbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgbWFyZ2luOiAwcnB4IDIycnB4IDAgMDtcbiAgICBoZWlnaHQ6IDE0MHJweDtcbiAgICB3aWR0aDogMTQwcnB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cnB4O1xuICAgIC8vIGJvcmRlcjogMXJweCBzb2xpZCAjZTllOWU5O1xuICB9XG5cbiAgLnBvaW50X2JveCB7XG4gICAgLmJvb2tuYW1lbGVmdCB7XG4gICAgICBsaW5lLWhlaWdodDogNzBycHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuZmVuZ1BvaW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogMTAwcnB4O1xuICAgIHdpZHRoOiAxMDBycHg7XG4gIH1cblxuICAuaXRlbV90b3Age1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBtYXJnaW4tYm90dG9tOiAyNXJweDtcblxuICAgIC5zb3VyY2VfYXBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZycHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnJweDtcbiAgICB9XG4gIH1cblxuICAub3JkZXJzdGF0dXMge1xuICAgIGxpbmUtaGVpZ2h0OiAyNHJweDtcbiAgICBmb250LXNpemU6IDI0cnB4O1xuICAgIGNvbG9yOiAjZTU1ZjE4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGxldHRlci1zcGFjaW5nOiAycnB4O1xuICB9XG5cbiAgL2RlZXAvLmRlc2NyaXB0aW9uIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIHRleHQtb3ZlcmZsb3c6IC1vLWVsbGlwc2lzLWxhc3RsaW5lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiA1O1xuICAgIGxpbmUtY2xhbXA6IDU7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICBmb250LXNpemU6IDI2cnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcnB4O1xuICAgIG1hcmdpbi10b3A6IDEwcnB4O1xuICAgIGhlaWdodDogMTcycnB4O1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmJ0bnMge1xuICAgIGZvbnQtc2l6ZTogMjhycHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuYm9va25hbWVsZWZ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMzJycHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjAwcnB4KTtcbiAgICAgIGNvbG9yOiAjMDcwNzA3O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLmxlZnQge1xuICAgICAgd2lkdGg6IDMwMHJweDtcbiAgICAgIGNvbG9yOiAjYTFhMWExO1xuICAgIH1cblxuICAgIC5yaWdodCB7XG4gICAgICB3aWR0aDogMzUwcnB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5wcmljZSB7XG4gICAgICB3aWR0aDogMTIwcnB4O1xuICAgIH1cblxuICAgIC5nemljb24ge1xuICAgICAgbWFyZ2luOiAwIDAgMCAyMHJweDtcbiAgICAgIGhlaWdodDogNDBycHg7XG4gICAgICB3aWR0aDogNDBycHg7XG4gICAgICAvLyBmbG9hdDpsZWZ0O1xuICAgICAgLy8gYm9yZGVyLXJhZGl1czogMjBycHg7XG4gICAgICAvLyBib3JkZXI6MXJweCBzb2xpZCAjZTllOWU5O1xuICAgIH1cblxuICAgIC5vcGJ0bnMge1xuICAgICAgLnBpbmdqaWEge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm1iMzAge1xuICBtYXJnaW4tYm90dG9tOiAzMHJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm15dGFicyB7XG4gIC8vIGJhY2tncm91bmQ6IHVybCgnQC9zdGF0aWMvaWNvbi9iZ3R1c2h1LnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcDtcbiAgaGVpZ2h0OiA4MHJweDtcbiAgLy8gbWFyZ2luLWJvdHRvbTogMzBycHg7XG5cbiAgLml0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNmVhZDA7XG4gICAgd2lkdGg6IDQ4JTtcbiAgICAvLyBtYXJnaW46IDAgMTBycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjM2M3ZjU2O1xuICAgIGZvbnQtc2l6ZTogMzZycHg7XG4gICAgbGluZS1oZWlnaHQ6IDgwcnB4O1xuICB9XG5cbiAgLml0ZW0uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M3ZjU2O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLml0ZW0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcnB4O1xuICB9XG59XG5cbi9kZWVwLy51LXRhYnNfX3dyYXBwZXJfX25hdl9faXRlbV9fdGV4dCB7XG4gIC8vIGZvbnQtc2l6ZTogMzJycHggIWltcG9ydGFudDtcbn1cblxuLmNhdGVMaXN0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi9kZWVwLy51LXRhYnNfX3dyYXBwZXJfX25hdl9faXRlbSB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmNvbW1vbkRldGFpbFBhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWVCZ0NvbG9yO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmgpO1xufVxuXG4ub3JkZXJfYm94IHtcbiAgcGFkZGluZzogMjBycHg7XG59XG5cbi9kZWVwLy5vcmRlcl9ib3ggLmxpc3RfaXRlbSB7XG4gIC8vIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnByb2R1Y3RfcXVhbnRpdHkge1xuICB3aWR0aDogYXV0bztcbiAgY29sb3I6ICM5YjliOWI7XG4gIGZvbnQtc2l6ZTogMjZycHg7XG59XG5cbi52aXBfeWVhciB7XG4gIHBhZGRpbmctbGVmdDogMjBycHg7XG4gIGNvbG9yOiAjZjUzNDJiO1xuICBmb250LXNpemU6IDMwcnB4O1xufVxuXG4vZGVlcC8uY29tbW9uRGV0YWlsUGFnZSB7XG4gIC51bmktYXBwLS1zaG93dGFiYmFyIHVuaS1wYWdlLXdyYXBwZXI6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///512\n");
/***/ }),
/* 513 */
@@ -41610,20 +41665,28 @@ var render = function () {
_vm._$s(
103,
"i",
+ _vm.orderContet.realMoney == 0 &&
+ _vm.orderContet.jfDeduction == 0
+ )
+ ? void 0
+ : _vm._e(),
+ _vm._$s(
+ 104,
+ "i",
_vm.orderContet.realMoney > 0 &&
_vm.orderContet.jfDeduction > 0
)
? _c("text")
: _vm._e(),
_vm._$s(
- 104,
+ 105,
"i",
_vm.orderContet.jfDeduction > 0
)
- ? _c("text", { attrs: { _i: 104 } }, [
+ ? _c("text", { attrs: { _i: 105 } }, [
_vm._v(
_vm._$s(
- 104,
+ 105,
"t0-0",
_vm._s(
_vm.orderContet.jfDeduction
@@ -41643,22 +41706,22 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(105, "sc", "order_item"),
- attrs: { _i: 105 },
+ staticClass: _vm._$s(106, "sc", "order_item"),
+ attrs: { _i: 106 },
},
[
_c(
"view",
{
- staticClass: _vm._$s(106, "sc", "orderYunf"),
- attrs: { _i: 106 },
+ staticClass: _vm._$s(107, "sc", "orderYunf"),
+ attrs: { _i: 107 },
},
[
_c("span"),
_c("text", [
_vm._v(
_vm._$s(
- 108,
+ 109,
"t0-0",
_vm._s(_vm.orderContet.orderSn)
)
@@ -41672,7 +41735,7 @@ var render = function () {
plain: true,
size: "mini",
type: "success",
- _i: 109,
+ _i: 110,
},
on: {
click: function ($event) {
@@ -41689,15 +41752,15 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(110, "sc", "orderReal"),
- attrs: { _i: 110 },
+ staticClass: _vm._$s(111, "sc", "orderReal"),
+ attrs: { _i: 111 },
},
[
_c("span"),
_c("text", [
_vm._v(
_vm._$s(
- 112,
+ 113,
"t0-0",
_vm._s(_vm.orderContet.createTime)
)
@@ -41706,7 +41769,7 @@ var render = function () {
]
),
_vm._$s(
- 113,
+ 114,
"i",
_vm.orderContet.orderStatus >= 1 &&
_vm.orderContet.orderStatus != 5 &&
@@ -41715,15 +41778,15 @@ var render = function () {
? _c(
"view",
{
- staticClass: _vm._$s(113, "sc", "orderReal"),
- attrs: { _i: 113 },
+ staticClass: _vm._$s(114, "sc", "orderReal"),
+ attrs: { _i: 114 },
},
[
_c("span"),
_c("text", [
_vm._v(
_vm._$s(
- 115,
+ 116,
"t0-0",
_vm._s(_vm.orderContet.paymentDate)
)
@@ -41739,7 +41802,7 @@ var render = function () {
),
_c("view", [
_c("text", {
- attrs: { _i: 117 },
+ attrs: { _i: 118 },
on: { click: _vm.gotoWorkOrder },
}),
]),
@@ -41750,15 +41813,15 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(118, "sc", "goods_nav_box"),
- attrs: { _i: 118 },
+ staticClass: _vm._$s(119, "sc", "goods_nav_box"),
+ attrs: { _i: 119 },
},
[
_c("common-goods-nav", {
attrs: {
iconList: _vm.iconList,
customButton: _vm.customButton,
- _i: 119,
+ _i: 120,
},
on: { submit: _vm.goBuyJie, clickIcon: _vm.clickIcon },
scopedSlots: _vm._u([
@@ -41767,7 +41830,7 @@ var render = function () {
fn: function (slotProps, _svm, _si) {
return [
_svm._$s(
- "121-" + _si,
+ "122-" + _si,
"i",
_vm.orderContet.orderStatus == 0
)
@@ -41775,27 +41838,27 @@ var render = function () {
"view",
{
staticClass: _svm._$s(
- "121-" + _si,
+ "122-" + _si,
"sc",
"price_box order_bottom_box"
),
- attrs: { _i: "121-" + _si },
+ attrs: { _i: "122-" + _si },
},
[
_c(
"text",
{
staticClass: _svm._$s(
- "122-" + _si,
+ "123-" + _si,
"sc",
"price"
),
- attrs: { _i: "122-" + _si },
+ attrs: { _i: "123-" + _si },
},
[
_vm._v("合计:"),
_svm._$s(
- "123-" + _si,
+ "124-" + _si,
"i",
_vm.orderContet.orderType == "point"
)
@@ -41803,16 +41866,16 @@ var render = function () {
"text",
{
staticClass: _svm._$s(
- "123-" + _si,
+ "124-" + _si,
"sc",
"total"
),
- attrs: { _i: "123-" + _si },
+ attrs: { _i: "124-" + _si },
},
[
_vm._v(
_svm._$s(
- "123-" + _si,
+ "124-" + _si,
"t0-0",
_vm._s(
_vm.orderContet
@@ -41826,16 +41889,16 @@ var render = function () {
"text",
{
staticClass: _svm._$s(
- 124,
+ 125,
"sc",
"total"
),
- attrs: { _i: 124 },
+ attrs: { _i: 125 },
},
[
_vm._v(
_svm._$s(
- "124-" + _si,
+ "125-" + _si,
"t0-0",
_vm._s(_vm.orderContet.realMoney)
)
@@ -41858,56 +41921,56 @@ var render = function () {
_c(
"u-popup",
{
- attrs: { show: _vm.pingjiaShow, round: 10, _i: 125 },
+ attrs: { show: _vm.pingjiaShow, round: 10, _i: 126 },
on: { close: _vm.closePingjia },
},
[
_c(
"view",
- { staticClass: _vm._$s(126, "sc", "tanchu"), attrs: { _i: 126 } },
+ { staticClass: _vm._$s(127, "sc", "tanchu"), attrs: { _i: 127 } },
[
- _vm._$s(127, "i", _vm.pjType != "zhuiping")
+ _vm._$s(128, "i", _vm.pjType != "zhuiping")
? _c("view", {
- staticClass: _vm._$s(127, "sc", "dp_title"),
- attrs: { _i: 127 },
- })
- : _c("view", {
staticClass: _vm._$s(128, "sc", "dp_title"),
attrs: { _i: 128 },
+ })
+ : _c("view", {
+ staticClass: _vm._$s(129, "sc", "dp_title"),
+ attrs: { _i: 129 },
}),
_c(
"view",
[
_c("uni-forms", {
- attrs: { modelValue: _vm.Pform, _i: 130 },
+ attrs: { modelValue: _vm.Pform, _i: 131 },
}),
_c(
"view",
{
staticClass: _vm._$s(
- 131,
+ 132,
"sc",
"padding-bottom-sm flex padding-lr-sm"
),
- attrs: { _i: 131 },
+ attrs: { _i: 132 },
},
[
- _vm._$s(132, "i", _vm.pjType != "zhuiping")
+ _vm._$s(133, "i", _vm.pjType != "zhuiping")
? _c(
"view",
{
- staticClass: _vm._$s(132, "sc", "mb30"),
- attrs: { _i: 132 },
+ staticClass: _vm._$s(133, "sc", "mb30"),
+ attrs: { _i: 133 },
},
[
_c("span", {
- class: _vm._$s(133, "c", [
+ class: _vm._$s(134, "c", [
"star",
_vm.Pform.star >= 1
? "starLight"
: "starGray",
]),
- attrs: { _i: 133 },
+ attrs: { _i: 134 },
on: {
click: function ($event) {
return _vm.getStar(1)
@@ -41915,13 +41978,13 @@ var render = function () {
},
}),
_c("span", {
- class: _vm._$s(134, "c", [
+ class: _vm._$s(135, "c", [
"star",
_vm.Pform.star >= 2
? "starLight"
: "starGray",
]),
- attrs: { _i: 134 },
+ attrs: { _i: 135 },
on: {
click: function ($event) {
return _vm.getStar(2)
@@ -41929,13 +41992,13 @@ var render = function () {
},
}),
_c("span", {
- class: _vm._$s(135, "c", [
+ class: _vm._$s(136, "c", [
"star",
_vm.Pform.star >= 3
? "starLight"
: "starGray",
]),
- attrs: { _i: 135 },
+ attrs: { _i: 136 },
on: {
click: function ($event) {
return _vm.getStar(3)
@@ -41943,13 +42006,13 @@ var render = function () {
},
}),
_c("span", {
- class: _vm._$s(136, "c", [
+ class: _vm._$s(137, "c", [
"star",
_vm.Pform.star >= 4
? "starLight"
: "starGray",
]),
- attrs: { _i: 136 },
+ attrs: { _i: 137 },
on: {
click: function ($event) {
return _vm.getStar(4)
@@ -41957,13 +42020,13 @@ var render = function () {
},
}),
_c("span", {
- class: _vm._$s(137, "c", [
+ class: _vm._$s(138, "c", [
"star",
_vm.Pform.star >= 5
? "starLight"
: "starGray",
]),
- attrs: { _i: 137 },
+ attrs: { _i: 138 },
on: {
click: function ($event) {
return _vm.getStar(5)
@@ -41973,12 +42036,12 @@ var render = function () {
]
)
: _vm._e(),
- _vm._$s(138, "i", _vm.pjType != "zhuiping")
+ _vm._$s(139, "i", _vm.pjType != "zhuiping")
? _c(
"view",
{
- staticClass: _vm._$s(138, "sc", "mb30"),
- attrs: { _i: 138 },
+ staticClass: _vm._$s(139, "sc", "mb30"),
+ attrs: { _i: 139 },
},
[
_c("u-upload", {
@@ -41989,7 +42052,7 @@ var render = function () {
width: "80",
height: "80",
previewFullImage: true,
- _i: 139,
+ _i: 140,
},
on: {
afterRead: _vm.afterRead,
@@ -42003,13 +42066,13 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(140, "sc", "flex-sub flexbox"),
- attrs: { _i: 140 },
+ staticClass: _vm._$s(141, "sc", "flex-sub flexbox"),
+ attrs: { _i: 141 },
},
[
_c("i", {
- class: _vm._$s(141, "c", _vm.emojiIcon),
- attrs: { _i: 141 },
+ class: _vm._$s(142, "c", _vm.emojiIcon),
+ attrs: { _i: 142 },
on: {
click: function ($event) {
return _vm.showEmj()
@@ -42025,10 +42088,10 @@ var render = function () {
expression: "Pform.comment",
},
],
- staticClass: _vm._$s(142, "sc", "textarea"),
- attrs: { _i: 142 },
+ staticClass: _vm._$s(143, "sc", "textarea"),
+ attrs: { _i: 143 },
domProps: {
- value: _vm._$s(142, "v-model", _vm.Pform.comment),
+ value: _vm._$s(143, "v-model", _vm.Pform.comment),
},
on: {
focus: _vm.InputFocus,
@@ -42053,11 +42116,11 @@ var render = function () {
_c(
"view",
[
- _vm._$s(144, "i", _vm.pjType != "zhuiping")
+ _vm._$s(145, "i", _vm.pjType != "zhuiping")
? _c(
"u-button",
{
- attrs: { type: "success", _i: 144 },
+ attrs: { type: "success", _i: 145 },
on: { click: _vm.submitPJ },
},
[_vm._v("")]
@@ -42065,7 +42128,7 @@ var render = function () {
: _c(
"u-button",
{
- attrs: { type: "success", _i: 145 },
+ attrs: { type: "success", _i: 146 },
on: { click: _vm.zhuiping },
},
[_vm._v("")]
@@ -42078,12 +42141,12 @@ var render = function () {
_c(
"view",
[
- _vm._$s(147, "i", _vm.isShowEmj)
+ _vm._$s(148, "i", _vm.isShowEmj)
? _c("emotion", {
attrs: {
height: 220,
windowWidth: _vm.windowWidth,
- _i: 147,
+ _i: 148,
},
on: { emotion: _vm.handleEmj },
})
@@ -42105,7 +42168,7 @@ var render = function () {
mode: "bottom",
show: _vm.sheetListShow,
round: 10,
- _i: 148,
+ _i: 149,
},
on: {
close: function ($event) {
@@ -42117,29 +42180,29 @@ var render = function () {
_c(
"view",
{
- staticClass: _vm._$s(149, "sc", "tanchu expresslist"),
- attrs: { _i: 149 },
+ staticClass: _vm._$s(150, "sc", "tanchu expresslist"),
+ attrs: { _i: 150 },
},
[
_c("view", {
- staticClass: _vm._$s(150, "sc", "title"),
- attrs: { _i: 150 },
+ staticClass: _vm._$s(151, "sc", "title"),
+ attrs: { _i: 151 },
}),
_c(
"view",
- { staticClass: _vm._$s(151, "sc", "list"), attrs: { _i: 151 } },
+ { staticClass: _vm._$s(152, "sc", "list"), attrs: { _i: 152 } },
_vm._l(
- _vm._$s(152, "f", { forItems: _vm.sheetList }),
+ _vm._$s(153, "f", { forItems: _vm.sheetList }),
function (item, index, $21, $31) {
return _c(
"view",
{
- key: _vm._$s(152, "f", {
+ key: _vm._$s(153, "f", {
forIndex: $21,
- key: 152 + "-" + $31,
+ key: 153 + "-" + $31,
}),
- staticClass: _vm._$s("152-" + $31, "sc", "item"),
- attrs: { _i: "152-" + $31 },
+ staticClass: _vm._$s("153-" + $31, "sc", "item"),
+ attrs: { _i: "153-" + $31 },
on: {
click: function ($event) {
return _vm.seeExpressDetails(item)
@@ -42149,7 +42212,7 @@ var render = function () {
[
_c("h4", [
_vm._v(
- _vm._$s("153-" + $31, "t0-0", _vm._s(index + 1))
+ _vm._$s("154-" + $31, "t0-0", _vm._s(index + 1))
),
]),
_c(
@@ -42157,14 +42220,14 @@ var render = function () {
[
_vm._v(
_vm._$s(
- "154-" + $31,
+ "155-" + $31,
"t0-0",
_vm._s(item.expressOrderSn)
)
),
_c("u-tag", {
staticClass: _vm._$s(
- "155-" + $31,
+ "156-" + $31,
"sc",
"copyCode"
),
@@ -42173,7 +42236,7 @@ var render = function () {
text: "复制单号",
plain: true,
type: "success",
- _i: "155-" + $31,
+ _i: "156-" + $31,
},
on: {
click: function ($event) {
@@ -42187,7 +42250,7 @@ var render = function () {
_c("view", [
_vm._v(
_vm._$s(
- "156-" + $31,
+ "157-" + $31,
"t0-0",
_vm._s(item.createTime)
)
@@ -42203,7 +42266,7 @@ var render = function () {
),
]
),
- _c("music-play", { attrs: { playData: _vm.playData, _i: 157 } }),
+ _c("music-play", { attrs: { playData: _vm.playData, _i: 158 } }),
],
1
)
@@ -42234,7 +42297,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _D_s
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 47));\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 125));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 49));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _music = _interopRequireDefault(__webpack_require__(/*! @/components/music.vue */ 89));\nvar _bkhumorEmojiplus = _interopRequireDefault(__webpack_require__(/*! @/bkhumor-emojiplus/components/bkhumor-emojiplus/bkhumor-emojiplus.vue */ 513));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 95));\nvar _utils = __webpack_require__(/*! @/config/utils */ 246);\nvar _vuex = __webpack_require__(/*! vuex */ 63);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n A: {\n orderId: 15316,\n orderSn: \"20241209141541253186600376645070\",\n userId: 13487,\n userName: null,\n statusNum: null,\n shippingUser: null,\n userPhone: \"18834844847\",\n province: null,\n city: null,\n district: null,\n address: null,\n come: 2,\n paymentMethod: \"3\",\n orderMoney: 39,\n districtMoney: 0,\n realMoney: 39,\n shippingMoney: null,\n shippingCompName: null,\n shippingSn: null,\n jfDeduction: 0,\n createTime: \"2024-12-09 14:15:41\",\n shippingTime: null,\n orderStatus: \"0\",\n successTime: null,\n couponId: null,\n couponName: null,\n delFlag: 0,\n products: null,\n productList: null,\n buyType: null,\n orderType: \"point\",\n expNo: null,\n isSend: null,\n vipBuyConfigId: 0,\n addressId: null,\n remark: null,\n orderCode: null,\n paymentDate: null,\n productId: \"21\",\n recordId: null,\n timestamp: null,\n user: null,\n expressList: null,\n addressModified: 0,\n consigneeVo: null,\n appName: null,\n bookBuyConfigEntity: {\n priceTypeId: 21,\n type: \"point\",\n qudao: \"IOS\",\n realMoney: \"45\",\n money: \"39\",\n givejf: \"0\",\n month: null,\n description: \"\",\n effective: 0,\n startTime: null,\n endTime: null\n },\n vipBuyConfigEntity: null\n },\n iconList: [{\n text: \"联系客服\",\n iconType: 1,\n icon: \"server-fill\",\n infoColor: \"#666\"\n }],\n userRecordid: null,\n // 用户的评价状态\n playData: {},\n title: \"Hello\",\n isShowEmj: false,\n emojiIcon: \"cuIcon-emoji\",\n message: \"\",\n windowWidth: 0,\n windowHeight: 500,\n Pform: {\n // 评价表单\n star: 0,\n comment: \"\",\n img: [],\n html: \"\"\n },\n pingID: null,\n productID: null,\n // 订单商品id\n imageStyles: {\n width: 64,\n height: 64,\n border: {\n color: \"#89aa7d\",\n width: 2,\n style: \"dashed\",\n radius: \"2px\"\n }\n },\n pingjiaShow: false,\n logisticsData: [],\n // 快递信息列表\n titleStat: \"\",\n orderID: 0,\n orderSn: \"\",\n orderType: \"\",\n orderContet: {},\n goodsList: [],\n deliverDetails: [{\n Traces: []\n }],\n // 物流详情信息全部\n deliverDetailsLength: null,\n emoji: [],\n Files: [],\n pjType: \"\",\n sheetList: [],\n // 面单数据\n consigneeShow: false,\n sheetListShow: false,\n customButton: []\n };\n },\n onLoad: function onLoad(e) {\n this.windowWidth = uni.getSystemInfoSync().windowWidth;\n this.orderID = e.orderId;\n this.orderType = e.orderType;\n this.orderSn = e.orderSn;\n __f__(\"log\", this.orderID, \"this.orderID\", \" at pages/bookShop/orderLCont.vue:734\");\n },\n onHide: function onHide() {\n this.sheetList = [];\n },\n onShow: function onShow() {\n this.getOrderList();\n },\n components: {\n emotion: _bkhumorEmojiplus.default,\n musicPlay: _music.default\n },\n computed: _objectSpread({}, (0, _vuex.mapState)([\"userInfo\"])),\n methods: {\n gotoWorkOrder: function gotoWorkOrder() {\n uni.navigateTo({\n url: \"/pages/user/workOrder?name=order\"\n });\n },\n goBuyJie: function goBuyJie(data) {\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 __f__(\"log\", \"index at line 532:\", data, \" at pages/bookShop/orderLCont.vue:757\");\n if (data.text == \"继续付款\") {\n _this.goPay(_this.orderContet);\n } else if (data.text == \"取消订单\") {\n _this.canceOrder();\n } else if (data.text == \"确认收货\") {\n _this.OverOrder();\n } else if (data.text == \"查看物流\") {\n _this.seeExpressDetail(_this.orderContet);\n }\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n clickIcon: function clickIcon(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 __f__(\"log\", \"index at line 532:\", data, \" at pages/bookShop/orderLCont.vue:769\");\n if (data.text == \"联系客服\") {\n _this2.kefu();\n }\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n // 复制到剪切板\n copyData: function copyData(data) {\n uni.setClipboardData({\n data: data,\n success: function success() {\n __f__(\"log\", \"success\", \" at pages/bookShop/orderLCont.vue:779\");\n }\n });\n },\n seeExpressDetails: function seeExpressDetails(item) {\n __f__(\"log\", item, \"item\", \" at pages/bookShop/orderLCont.vue:784\");\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + this.orderContet.orderSn + \"&expressOrderSn=\" + item.expressOrderSn + \"&expressCompanyCode=\" + item.expressCompanyCode + \"&expressCompanyName=\" + item.expressCompanyName\n });\n },\n // 倒计时回调\n countDown: function countDown() {\n __f__(\"log\", \"重新刷新订单\", \" at pages/bookShop/orderLCont.vue:799\");\n this.getOrderList();\n },\n // 获得输入的表情数组\n handleEmj: function handleEmj(i) {\n __f__(\"log\", i, \"i---------\", \" at pages/bookShop/orderLCont.vue:804\");\n this.inputValue = i;\n // console.log(this.inputValue);\n if (i.emotioni == \"[em_98]\") {\n //匹配最后一个表情符号并删除11。\n this.Pform.comment = this.Pform.comment.replace(/(\\[[^\\]]+\\]|[\\s\\S])$/, \"\");\n if (this.emoji.length > 0) {\n this.emoji = this.emoji.slice(0, -1);\n }\n } else {\n this.emoji.push({\n tag: i.emotion,\n name: i.emotioni\n });\n // console.log(this.emoji,'this.emoji')\n this.Pform.comment += i.emotioni;\n /// this.Pform.html += i.emotion\n }\n },\n showZhuiping: function showZhuiping(val) {\n this.pjType = \"zhuiping\";\n this.pingjiaShow = true;\n this.productID = val;\n this.pingID = pingid;\n },\n // 追加评论\n zhuiping: function zhuiping() {\n var _this3 = this;\n var data = {\n oid: this.userRecordid,\n userId: this.userInfo.id,\n bookid: this.productID,\n conTent: this.Pform.comment\n };\n __f__(\"log\", data, \"data\", \" at pages/bookShop/orderLCont.vue:837\");\n _requestConfig.default.request({\n url: \"user/followUp/userFollowUp\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"追评成功!\",\n icon: \"success\"\n });\n _this3.pingjiaShow = false;\n _this3.pjType = \"\";\n _this3.productID = null, _this3.userRecordid = null;\n _this3.Pform.comment = \"\";\n _this3.Pform.html = \"\";\n _this3.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n },\n textareaBInput: function textareaBInput(e) {\n __f__(\"log\", e, \"e\", \" at pages/bookShop/orderLCont.vue:869\");\n this.Pform.comment = e.detail.value;\n /// this.Pform.html = e.detail.value\n },\n showEmj: function showEmj() {\n var bool = !this.isShowEmj;\n if (bool) {\n this.emojiIcon = \"cuIcon-keyboard\";\n } else {\n this.emojiIcon = \"cuIcon-emoji\";\n }\n this.isShowEmj = bool;\n this.$emit(\"show\");\n },\n InputBlur: function InputBlur(e) {},\n InputFocus: function InputFocus(e) {\n this.isShowEmj = false;\n this.emojiIcon = \"cuIcon-emoji\";\n this.$emit(\"foc\");\n },\n // end\n deleteImg: function deleteImg(e) {\n // var arr = this.Pform.img.slice(0,-1)\n this.Pform.img.pop();\n // console.log('删除文件',arr)\n __f__(\"log\", this.Pform, \" at pages/bookShop/orderLCont.vue:896\");\n },\n getStar: function getStar(i) {\n this.Pform.star = i;\n },\n select: function select(e) {\n var _this$Pform$img;\n __f__(\"log\", \"选择文件:\", e, \" at pages/bookShop/orderLCont.vue:902\");\n var arr = e.tempFiles.map(function (item) {\n return {\n url: item.url,\n name: item.name\n };\n });\n this.Pform.img = (_this$Pform$img = this.Pform.img).concat.apply(_this$Pform$img, (0, _toConsumableArray2.default)(arr));\n //this.Pform.img = arr\n __f__(\"log\", this.Pform, \"img\", \" at pages/bookShop/orderLCont.vue:908\");\n },\n upSuccess: function upSuccess(e) {\n __f__(\"log\", e, \" at pages/bookShop/orderLCont.vue:911\");\n },\n // 获取html格式的评论1\n getHtmlComment: function getHtmlComment() {\n // 格式化html\n var ss = this.Pform.comment;\n if (this.emoji.length > 0) {\n for (var i = 0; i < this.emoji.length; i++) {\n if (this.Pform.comment.indexOf(this.emoji[i].name) !== -1) {\n //var re = new RegExp(this.emoji[0].name,\"g\"); //定义正则表达式\n //第一个参数是要替换掉的内容,第二个参数\"g\"表示替换全部(global)。\n // ss = ss.replace(re, ); //第一个参数是正则表达式。\n ss = ss.replace(this.emoji[i].name, this.emoji[i].tag);\n // console.log(ss)\n }\n }\n\n this.Pform.html = ss;\n } else {\n this.Pform.html = this.Pform.comment;\n }\n //console.log(this.Pform.html,'this.Pform.html')\n },\n deletePic: function deletePic() {\n var that = this;\n that.Pform.img.splice(0, 1);\n //console.log(that.Pform.img)\n },\n afterRead: function afterRead(e) {\n //console.log(e)\n var that = this;\n for (var i = 0; i < e.file.length; i++) {\n //console.log(i,e.file[i].url)\n uni.uploadFile({\n url: this.$baseUrl + \"oss/fileoss\",\n filePath: e.file[i].url,\n //files:e.file,\n name: \"file\",\n formData: {},\n success: function success(res) {\n that.Pform.img.push({\n url: JSON.parse(res.data).url\n });\n }\n });\n }\n },\n closePingjia: function closePingjia() {\n this.pingjiaShow = false;\n this.Pform.comment = \"\";\n this.Pform.html = \"\";\n this.emoji = [];\n },\n // 提交评价\n submitPJ: function submitPJ() {\n var _this4 = this;\n if (this.Pform.comment != \"\") {\n var data = {\n userid: this.userInfo.id,\n orderSn: this.orderSn,\n bookid: this.productID,\n // 'content': this.Pform.html,\n content: this.Pform.comment,\n starLevel: this.Pform.star,\n images: this.Pform.img\n // 'emoji':this.emoji // 表情数组\n };\n // console.log(data,'data')\n _requestConfig.default.request({\n url: \"buy/record/UserRecordcomment\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"评价成功!\",\n icon: \"success\"\n });\n _this4.pingjiaShow = false;\n _this4.Pform.comment = \"\";\n _this4.Pform.html = \"\";\n _this4.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n } else {\n uni.showToast({\n title: \"请先输入您的评价内容 !\",\n icon: \"none\"\n });\n }\n },\n // 添加评价\n pingji: function pingji(id) {\n __f__(\"log\", id, \" at pages/bookShop/orderLCont.vue:1014\");\n this.pjType = \"\";\n this.productID = id;\n this.pingjiaShow = true;\n },\n // 联系客服\n kefu: function kefu() {\n uni.showModal({\n title: \"提示\",\n content: \"微信号:yilujiankangkefu\"\n // success: function (res) {\n // \tif (res.confirm) {\n // \t\tuni.makePhoneCall({\n // \t\t\tphoneNumber: '022-24142321' //仅为示例\n // \t\t});\n // \t} else if (res.cancel) {\n\n // \t}\n // }\n });\n },\n // 查看物流\n seeExpressDetail: function seeExpressDetail(item) {\n if (this.sheetList.length > 1) {\n this.sheetListShow = true;\n } else if (this.sheetList.length == 1) {\n // 直接展示详情\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + item.orderSn + \"&expressOrderSn=\" + this.sheetList[0].expressOrderSn\n });\n }\n },\n handleCopy: function handleCopy(value, title) {\n this.$commonJS.handleCopy(value, title);\n },\n onPageJump: function onPageJump(item) {\n uni.navigateTo({\n url: \"./deliverDetail?objId=\" + item\n });\n },\n OverOrder: function OverOrder() {\n var _this5 = this;\n // 确认收货\n uni.showModal({\n title: \"提示\",\n content: \"确认收货?\",\n success: function success(res) {\n var data = {\n orderId: _this5.orderID,\n orderStatus: \"3\"\n };\n if (res.confirm) {\n uni.showLoading();\n _requestConfig.default.request({\n url: \"book/buyOrder/update\",\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 if (res.code == 0) {\n uni.hideLoading();\n uni.showToast({\n title: \"收货成功\",\n icon: \"success\",\n duration: 1000\n });\n _this5.getOrderList();\n }\n });\n } else if (res.cancel) {}\n }\n });\n },\n // 切换订单状态\n orderTabCLi: function orderTabCLi(e) {\n this.orderListTab = e;\n },\n getCouponDetail: function getCouponDetail(id) {\n var _this6 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return _this6.$http.request({\n url: \"common/coupon/getCouponHistoryInfo\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: {\n id: id\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(res) {\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n if (!(res.code != 0)) {\n _context3.next = 2;\n break;\n }\n return _context3.abrupt(\"return\", _this6.$commonJS.showToast(res.errMsg));\n case 2:\n _this6.orderContet.couponAmount = res.couponHistory.couponEntity.couponAmount;\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }()).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderLCont.vue:1119\");\n _this6.$commonJS.showToast(e.errMsg);\n });\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n },\n // 获取订单详情\n getOrderList: function getOrderList() {\n var _this7 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {\n return _regenerator.default.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n __f__(\"log\", \"this.orderType\", _this7.orderType, \" at pages/bookShop/orderLCont.vue:1125\");\n _context6.next = 3;\n return _this7.$http.request({\n url: \"common/buyOrder/commonOrderDetail\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: {\n orderId: _this7.orderID\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(res) {\n return _regenerator.default.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _this7.customButton = [];\n __f__(\"log\", \"订单详情\", res, \" at pages/bookShop/orderLCont.vue:1141\");\n _this7.orderContet = res.data.buyOrder;\n _this7.goodsList = res.data.productInfo;\n _this7.consigneeShow = true;\n // 存在优惠券信息,就查询优惠券集体金额\n if (!(_this7.orderContet.couponId && _this7.orderContet.couponId != null)) {\n _context5.next = 8;\n break;\n }\n _context5.next = 8;\n return _this7.getCouponDetail(_this7.orderContet.couponId);\n case 8:\n if (_this7.orderContet.orderStatus == 2 && _this7.sheetList.length > 0 && _this7.orderContet.orderStatus != 5) {\n _this7.customButton.push((0, _defineProperty2.default)({\n width: \"160rpx\",\n text: \"查看物流\",\n color: \"#333\",\n backgroundColor: \"#f0f0f0\"\n }, \"color\", \"#fff\"));\n }\n if (_this7.orderContet.orderStatus == 2) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"确认收货\",\n color: \"#fff\"\n });\n }\n if (_this7.orderContet.orderStatus == 0 && _this7.orderContet.paymentMethod != 3) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"继续付款\"\n });\n }\n if (_this7.orderContet.orderStatus == 0) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"取消订单\",\n color: \"#333\",\n backgroundColor: \"#f0f0f0\"\n });\n }\n\n // var seconds = res.result.timestamp + 30 * 60 + 2 // 过期时间\n // var nowSeconds = Math.floor(new Date().getTime() / 1000);\n // res.result.overTime = seconds - nowSeconds\n\n //this.userRecordid = res.userRecordid\n // this.productIDs = res.data.goodsList.map((item) => {\n // return item.buyOrderProductId;\n // });\n // console.log(this.orderContet,'this.orderContet')\n if (_this7.orderContet.orderStatus == 0) {\n _this7.titleStat = \"待支付\";\n } else if (_this7.orderContet.orderStatus == 1) {\n _this7.titleStat = \"待发货\";\n } else if (_this7.orderContet.orderStatus == 2) {\n _this7.titleStat = \"待收货\";\n } else if (_this7.orderContet.orderStatus == 3) {\n _this7.titleStat = \"已完成\";\n }\n if (_this7.orderContet.orderStatus >= 2 && _this7.orderContet.orderType == \"order\" && _this7.orderContet.expressOrders) {\n _this7.sheetList = _this7.orderContet.expressOrders;\n } else {\n _this7.sheetList = [];\n }\n __f__(\"log\", _this7.orderContet, \"订单详情\", \" at pages/bookShop/orderLCont.vue:1215\");\n case 15:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n return function (_x2) {\n return _ref2.apply(this, arguments);\n };\n }());\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }))();\n },\n // 取消订单\n canceOrder: function canceOrder() {\n var _this8 = this;\n uni.showModal({\n title: \"提示\",\n content: \"确定要取消订单吗?\",\n confirmText: \"取消订单\",\n cancelText: \"考虑一下\",\n confirmColor: \"#c96713\",\n cancelColor: \"#555\",\n success: function success(res) {\n if (res.confirm) {\n _this8.$http.post(\"book/buyOrder/appDelete?orderId=\" + _this8.orderContet.orderId).then(function (res) {\n uni.showToast({\n icon: \"none\",\n title: \"取消订单成功\"\n });\n uni.switchTab({\n url: \"./orderList\"\n });\n });\n }\n }\n });\n },\n // 支付\n goPay: function goPay(payItem) {\n var _this9 = this;\n __f__(\"log\", payItem, \"订单数据\", \" at pages/bookShop/orderLCont.vue:1250\");\n if (payItem.paymentMethod == 2) {\n __f__(\"log\", \"阿里支付\", \" at pages/bookShop/orderLCont.vue:1252\");\n (0, _utils.setPay)({\n typePay: \"alipay\",\n subject: \"order\",\n totalAmount: payItem.realMoney,\n type: 2,\n relevanceoid: payItem.orderSn,\n customerId: this.userInfo.id\n }, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n _this9.getOrderList();\n });\n } else if (payItem.paymentMethod == 1) {\n __f__(\"log\", \"微信支付\", \" at pages/bookShop/orderLCont.vue:1278\");\n // console.log(this.isAndorid)\n if (this.isAndorid == false) {\n uni.showModal({\n title: \"提示\",\n content: \"很抱歉,苹果系统暂不支持微信支付\",\n showCancel: false\n });\n return false;\n } else {\n var data1 = {\n orderSn: payItem.orderSn,\n buyOrderId: null,\n totalAmount: payItem.realMoney\n };\n __f__(\"log\", data1, \"data1\", \" at pages/bookShop/orderLCont.vue:1293\");\n (0, _utils.setWXPay)(data1, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n __f__(\"log\", res, \" at pages/bookShop/orderLCont.vue:1300\");\n if (res.data.errMsg.indexOf(\"User canceled\") != -1) {\n uni.showToast({\n title: \"用户取消支付\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n }\n });\n }\n } else if (payItem.paymentMethod == 3) {\n // 苹果充值\n __f__(\"log\", \"苹果二次支付\", \" at pages/bookShop/orderLCont.vue:1319\");\n uni.showModal({\n content: \"apple内购订单不支持继续支付,请重新发起支付申请并完成支付\",\n confirmText: \"好的\",\n showCancel: false\n });\n }\n },\n // 商品内容跳转\n goDetail: function goDetail(id, data) {\n __f__(\"log\", \"data at line 1277:订单详情参数\", data, \" at pages/bookShop/orderLCont.vue:1330\");\n if (data.delFlag == -1) {\n this.$commonJS.showToast(\"商品已下架\");\n } else if (data.goodsType == \"05\") {\n if (data.courseIds && data.courseIds.length > 0) {\n uni.navigateTo({\n url: \"/pages/course/courseDetail?id=\".concat(data.courseIds[0].courseId)\n });\n } else {\n uni.showToast({\n title: \"课程数据出错\",\n icon: \"none\"\n });\n }\n } else {\n uni.navigateTo({\n // url: '../bookShop/commodityDetail?id=' + item.id\n url: \"/pages/goods/index/index?navTitle=''&title=''&id=\".concat(id)\n });\n }\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 62)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvYm9va1Nob3Avb3JkZXJMQ29udC52dWUiXSwibmFtZXMiOlsiZGF0YSIsIkEiLCJvcmRlcklkIiwib3JkZXJTbiIsInVzZXJJZCIsInVzZXJOYW1lIiwic3RhdHVzTnVtIiwic2hpcHBpbmdVc2VyIiwidXNlclBob25lIiwicHJvdmluY2UiLCJjaXR5IiwiZGlzdHJpY3QiLCJhZGRyZXNzIiwiY29tZSIsInBheW1lbnRNZXRob2QiLCJvcmRlck1vbmV5IiwiZGlzdHJpY3RNb25leSIsInJlYWxNb25leSIsInNoaXBwaW5nTW9uZXkiLCJzaGlwcGluZ0NvbXBOYW1lIiwic2hpcHBpbmdTbiIsImpmRGVkdWN0aW9uIiwiY3JlYXRlVGltZSIsInNoaXBwaW5nVGltZSIsIm9yZGVyU3RhdHVzIiwic3VjY2Vzc1RpbWUiLCJjb3Vwb25JZCIsImNvdXBvbk5hbWUiLCJkZWxGbGFnIiwicHJvZHVjdHMiLCJwcm9kdWN0TGlzdCIsImJ1eVR5cGUiLCJvcmRlclR5cGUiLCJleHBObyIsImlzU2VuZCIsInZpcEJ1eUNvbmZpZ0lkIiwiYWRkcmVzc0lkIiwicmVtYXJrIiwib3JkZXJDb2RlIiwicGF5bWVudERhdGUiLCJwcm9kdWN0SWQiLCJyZWNvcmRJZCIsInRpbWVzdGFtcCIsInVzZXIiLCJleHByZXNzTGlzdCIsImFkZHJlc3NNb2RpZmllZCIsImNvbnNpZ25lZVZvIiwiYXBwTmFtZSIsImJvb2tCdXlDb25maWdFbnRpdHkiLCJwcmljZVR5cGVJZCIsInR5cGUiLCJxdWRhbyIsIm1vbmV5IiwiZ2l2ZWpmIiwibW9udGgiLCJkZXNjcmlwdGlvbiIsImVmZmVjdGl2ZSIsInN0YXJ0VGltZSIsImVuZFRpbWUiLCJ2aXBCdXlDb25maWdFbnRpdHkiLCJpY29uTGlzdCIsInRleHQiLCJpY29uVHlwZSIsImljb24iLCJpbmZvQ29sb3IiLCJ1c2VyUmVjb3JkaWQiLCJwbGF5RGF0YSIsInRpdGxlIiwiaXNTaG93RW1qIiwiZW1vamlJY29uIiwibWVzc2FnZSIsIndpbmRvd1dpZHRoIiwid2luZG93SGVpZ2h0IiwiUGZvcm0iLCJzdGFyIiwiY29tbWVudCIsImltZyIsImh0bWwiLCJwaW5nSUQiLCJwcm9kdWN0SUQiLCJpbWFnZVN0eWxlcyIsIndpZHRoIiwiaGVpZ2h0IiwiYm9yZGVyIiwiY29sb3IiLCJzdHlsZSIsInJhZGl1cyIsInBpbmdqaWFTaG93IiwibG9naXN0aWNzRGF0YSIsInRpdGxlU3RhdCIsIm9yZGVySUQiLCJvcmRlckNvbnRldCIsImdvb2RzTGlzdCIsImRlbGl2ZXJEZXRhaWxzIiwiVHJhY2VzIiwiZGVsaXZlckRldGFpbHNMZW5ndGgiLCJlbW9qaSIsIkZpbGVzIiwicGpUeXBlIiwic2hlZXRMaXN0IiwiY29uc2lnbmVlU2hvdyIsInNoZWV0TGlzdFNob3ciLCJjdXN0b21CdXR0b24iLCJvbkxvYWQiLCJvbkhpZGUiLCJvblNob3ciLCJjb21wb25lbnRzIiwiZW1vdGlvbiIsIm11c2ljUGxheSIsImNvbXB1dGVkIiwibWV0aG9kcyIsImdvdG9Xb3JrT3JkZXIiLCJ1bmkiLCJ1cmwiLCJnb0J1eUppZSIsImNsaWNrSWNvbiIsImNvcHlEYXRhIiwic3VjY2VzcyIsInNlZUV4cHJlc3NEZXRhaWxzIiwiaXRlbSIsImNvdW50RG93biIsImhhbmRsZUVtaiIsInRhZyIsIm5hbWUiLCJzaG93Wmh1aXBpbmciLCJ6aHVpcGluZyIsIm9pZCIsImJvb2tpZCIsImNvblRlbnQiLCIkaHR0cCIsInJlcXVlc3QiLCJtZXRob2QiLCJoZWFkZXIiLCJ0aGVuIiwic2V0VGltZW91dCIsImRlbHRhIiwidGV4dGFyZWFCSW5wdXQiLCJzaG93RW1qIiwiSW5wdXRCbHVyIiwiSW5wdXRGb2N1cyIsImRlbGV0ZUltZyIsImdldFN0YXIiLCJzZWxlY3QiLCJ1cFN1Y2Nlc3MiLCJnZXRIdG1sQ29tbWVudCIsInNzIiwiZGVsZXRlUGljIiwidGhhdCIsImFmdGVyUmVhZCIsImZpbGVQYXRoIiwiZm9ybURhdGEiLCJjbG9zZVBpbmdqaWEiLCJzdWJtaXRQSiIsInVzZXJpZCIsImNvbnRlbnQiLCJzdGFyTGV2ZWwiLCJpbWFnZXMiLCJwaW5namkiLCJrZWZ1Iiwic2VlRXhwcmVzc0RldGFpbCIsImhhbmRsZUNvcHkiLCJvblBhZ2VKdW1wIiwiT3Zlck9yZGVyIiwiZHVyYXRpb24iLCJvcmRlclRhYkNMaSIsImdldENvdXBvbkRldGFpbCIsImlkIiwicmVzIiwiY2F0Y2giLCJnZXRPcmRlckxpc3QiLCJiYWNrZ3JvdW5kQ29sb3IiLCJjYW5jZU9yZGVyIiwiY29uZmlybVRleHQiLCJjYW5jZWxUZXh0IiwiY29uZmlybUNvbG9yIiwiY2FuY2VsQ29sb3IiLCJwb3N0IiwiZ29QYXkiLCJ0eXBlUGF5Iiwic3ViamVjdCIsInRvdGFsQW1vdW50IiwicmVsZXZhbmNlb2lkIiwiY3VzdG9tZXJJZCIsImltYWdlIiwic2hvd0NhbmNlbCIsImJ1eU9yZGVySWQiLCJnb0RldGFpbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUF1bEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUEsZUFDQTtFQUNBQTtJQUNBO01BQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FDO1VBQ0FDO1VBQ0FDO1VBQ0FDO1VBQ0FsQztVQUNBbUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtRQUNBQztNQUNBO01BQ0FDLFdBQ0E7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7TUFDQSxFQUNB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QUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiNTI3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gIDx2aWV3XHJcbiAgICBjbGFzcz1cImNvbnRhaW5lciBjb21tb25QYWdlQm94IGNvbW1vbkRldGFpbFBhZ2VcIlxyXG4gICAgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmN2ZiXCJcclxuICA+XHJcbiAgICA8IS0tIOWFrOWFsee7hOS7ti3mr4/kuKrpobXpnaLlv4XpobvlvJXlhaUgLS0+XHJcbiAgICA8cHVibGljLW1vZHVsZT48L3B1YmxpYy1tb2R1bGU+XHJcbiAgICA8ei1uYXYtYmFyIHRpdGxlPVwi6K6i5Y2V6K+m5oOFXCIgYmdDb2xvcj1cIiMyNThmZWJcIiBmb250Q29sb3I9XCIjZmZmXCI+IDwvei1uYXYtYmFyPlxyXG5cclxuICAgIDx2aWV3PlxyXG4gICAgICA8dmlldyBzdHlsZT1cInBhZGRpbmc6IDIwcnB4XCI+XHJcbiAgICAgICAgPHZpZXdcclxuICAgICAgICAgIHYtaWY9XCJcclxuICAgICAgICAgICAgb3JkZXJDb250ZXQub3JkZXJUeXBlICE9ICdwb2ludCcgJiZcclxuICAgICAgICAgICAgb3JkZXJDb250ZXQuYWRkcmVzc0lkICE9IDAgJiZcclxuICAgICAgICAgICAgb3JkZXJDb250ZXQuYWRkcmVzc0lkICE9IG51bGxcclxuICAgICAgICAgIFwiXHJcbiAgICAgICAgICBjbGFzcz1cIm9yZGVyX3RvcCBjb21tb25fcmFkaXVzX2JveCBjb2xvcl9zaGFuZG93IGdvb2RzX2JveCBhZGRyZXNzX2JveFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHUtaWNvblxyXG4gICAgICAgICAgICBuYW1lPVwibWFwLWZpbGxcIlxyXG4gICAgICAgICAgICBjb2xvcj1cIiMyNThmZWJcIlxyXG4gICAgICAgICAgICBzaXplPVwiMjNcIlxyXG4gICAgICAgICAgICBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLXJpZ2h0OiAxMHJweFwiXHJcbiAgICAgICAgICA+PC91LWljb24+XHJcbiAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiY3Vycml1bHVtX3RpdGxlX2JveCBnb29kc19pdGVtXCI+IC0tPlxyXG5cclxuICAgICAgICAgIDx2aWV3IGNsYXNzPVwibm9ybWFsX2JveFwiPlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm5vcm1hbF9ib3hfdG9wXCI+XHJcbiAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJjdXJyaXVsdW1fdGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgPnt7IG9yZGVyQ29udGV0LnByb3ZpbmNlIH19XHJcbiAgICAgICAgICAgICAgICB7eyBvcmRlckNvbnRldC5jaXR5IH19XHJcbiAgICAgICAgICAgICAgICB7eyBvcmRlckNvbnRldC5jb3VudHkgfX1cclxuICAgICAgICAgICAgICAgIHt7IG9yZGVyQ29udGV0LmFkZHJlc3MgfX08L3ZpZXdcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJ1c2VyX2luZm9cIj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0IGNsYXNzPVwibmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBvcmRlckNvbnRldC5zaGlwcGluZ1VzZXIgfX1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0IGNsYXNzPVwidGVsXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7IG9yZGVyQ29udGV0LnVzZXJQaG9uZSB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgPC92aWV3PlxyXG5cclxuICAgICAgICAgIDwhLS0gPC92aWV3PiAtLT5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgIDwvdmlldz5cclxuXHJcbiAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJMaXN0XCIgdi1pZj1cImNvbnNpZ25lZVNob3dcIj5cclxuICAgICAgICA8dmlld1xyXG4gICAgICAgICAgY2xhc3M9XCJcIlxyXG4gICAgICAgICAgdi1pZj1cInNoZWV0TGlzdC5sZW5ndGggPiAxICYmIG9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDJcIlxyXG4gICAgICAgICAgc3R5bGU9XCJcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDExMywgMjEzLCAxNjEpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHJweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHJweDtcclxuICAgICAgICAgIFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg6K6i5Y2V5bey6KKr5ouG5YiG5oiQIHt7IHNoZWV0TGlzdC5sZW5ndGggfX0g5Liq5YyF6KO5XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJJdGVtXCI+XHJcbiAgICAgICAgICA8dmlldyBjbGFzcz1cIlwiIHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDYwcnB4XCI+XHJcbiAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclN0YXRlIG9yZGVyU3RhdGUwXCJcclxuICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMFwiXHJcbiAgICAgICAgICAgICAgPuW+heaUr+S7mDwvdGV4dFxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclN0YXRlIG9yZGVyU3RhdGUxXCJcclxuICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMVwiXHJcbiAgICAgICAgICAgICAgPuW+heWPkei0pzwvdGV4dFxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclN0YXRlIG9yZGVyU3RhdGUyXCJcclxuICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMlwiXHJcbiAgICAgICAgICAgICAgPuW+heaUtui0pzwvdGV4dFxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclN0YXRlIG9yZGVyU3RhdGUzXCJcclxuICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gM1wiXHJcbiAgICAgICAgICAgICAgPuW3suWujOaIkDwvdGV4dFxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclN0YXRlIG9yZGVyU3RhdGU1XCJcclxuICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gNVwiXHJcbiAgICAgICAgICAgICAgPuW3sui2heaXtjwvdGV4dFxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICBjbGFzcz1cIm9yZGVyQ29udGVudFwiXHJcbiAgICAgICAgICAgIHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBnb29kc0xpc3RcIlxyXG4gICAgICAgICAgICA6a2V5PVwiaW5kZXhcIlxyXG4gICAgICAgICAgICBAY2xpY2s9XCJnb0RldGFpbChpdGVtLnByb2R1Y3RJZCwgaXRlbSlcIlxyXG4gICAgICAgICAgICB2LWlmPVwiZ29vZHNMaXN0Lmxlbmd0aCA+IDBcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8IS0tIDxpbWFnZSA6c3JjPVwiaXRlbS5wcm9kdWN0SW1hZ2VcIiBtb2RlPVwiXCIgPjwvaW1hZ2U+IC0tPlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cImZlbmdcIiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgIDx2aWV3IHYtaWY9XCJpdGVtLmRlbEZsYWcgPT0gLTFcIiBjbGFzcz1cImRlbGlzdGVkXCIgc3R5bGU9XCJcIlxyXG4gICAgICAgICAgICAgICAgPuW3suS4i+aetjwvdmlld1xyXG4gICAgICAgICAgICAgID5cclxuXHJcbiAgICAgICAgICAgICAgPCEtLSA8aW1hZ2VcclxuICAgICAgICAgICAgOnNyYz1cInNlbGVjdEdvb2RzRGF0YS5wcm9kdWN0SW1hZ2VzXCJcclxuICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpdFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZ29vZHNfaW1hZ2VcIlxyXG4gICAgICAgICAgPjwvaW1hZ2U+IC0tPlxyXG4gICAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlXCJcclxuICAgICAgICAgICAgICAgIHYtaWY9XCJpdGVtLnByb2R1Y3RJbWFnZXNcIlxyXG4gICAgICAgICAgICAgICAgOnNyYz1cIml0ZW0ucHJvZHVjdEltYWdlc1wiXHJcbiAgICAgICAgICAgICAgICBtb2RlPVwiYXNwZWN0Rml0XCJcclxuICAgICAgICAgICAgICA+PC9pbWFnZT5cclxuICAgICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgdi1lbHNlXHJcbiAgICAgICAgICAgICAgICBzdHlsZT1cIlxyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogI2MwYzRjYztcclxuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnJweDtcclxuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0MHJweDtcclxuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgID7mmoLml6DlsIHpnaLlm748L3ZpZXdcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuXHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZ29vZHNfaW5mb1wiPlxyXG4gICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleGJveCBpdGVtSmlhblwiPlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJib29rbmFtZWxlZnRcIj5cclxuICAgICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgICA6c3R5bGU9XCJgJHtpdGVtLmRlbEZsYWcgPT0gLTEgPyAnY29sb3I6I2MwYzRjYzsnIDogJyd9YFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPnt7IGl0ZW0ucHJvZHVjdE5hbWUgfX08L3RleHRcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJjb2xvcjogI2U5NzUxMjsgZm9udC1zaXplOiAyNnJweDsgZm9udC13ZWlnaHQ6IDcwMFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHJweDtcclxuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICDvv6V7eyBpdGVtLnByaWNlIH19XHJcbiAgICAgICAgICAgICAgICAgIDwvdmlldz5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDx2aWV3IHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHQ7IGNvbG9yOiAjMzMzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgw5d7eyBpdGVtLnF1YW50aXR5ID8gaXRlbS5xdWFudGl0eSA6IFwiXCIgfX1cclxuICAgICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiYnRucyBmbGV4Ym94XCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHJweFwiPlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJsZWZ0XCIgc3R5bGU9XCJjb2xvcjogI2MwYzRjY1wiPjwvdmlldz5cclxuICAgICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwicmlnaHQgZmxleGJveCBvcGJ0bnNcIiBzdHlsZT1cImNvbG9yOiAjYzBjNGNjXCI+XHJcbiAgICAgICAgICAgICAgICAgIMOXe3sgaXRlbS5xdWFudGl0eSA/IGl0ZW0ucXVhbnRpdHkgOiBcIlwiIH19XHJcbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgPC92aWV3PiAtLT5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG5cclxuICAgICAgICAgICAgPCEtLSA8dmlldyBjbGFzcz1cIm9yZGVyT3BlclwiIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclN0YXR1cz09JzMnXCI+IC0tPlxyXG4gICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwib3JkZXJPcGVyXCIgdi1pZj1cIml0ZW0ub3JkZXJTdGF0dXMgPT0gM1wiPlxyXG4gICAgICAgICAgICAgIDx2aWV3IHN0eWxlPVwid2lkdGg6IDEwMCU7IHRleHQtYWxpZ246IHJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgICB2LWlmPVwidXNlclJlY29yZGlkID09IG51bGxcIlxyXG4gICAgICAgICAgICAgICAgICBAY2xpY2suc3RvcD1cInBpbmdqaShpdGVtLnByb2R1Y3RJZClcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm9wQ2FuXCJcclxuICAgICAgICAgICAgICAgICAgPuivhOS7tzwvdmlld1xyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICAgICAgdi1lbHNlXHJcbiAgICAgICAgICAgICAgICAgIEBjbGljay5zdG9wPVwic2hvd1podWlwaW5nKGl0ZW0ucHJvZHVjdElkKVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwib3BDYW5cIlxyXG4gICAgICAgICAgICAgICAgICA+6L+96K+EPC92aWV3XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8L3ZpZXc+IC0tPlxyXG5cclxuICAgICAgICAgICAgPGJyIGNsZWFyPVwiYm90aFwiIC8+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyQ29udGVudFwiIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ3JlbGVhcm4nXCI+XHJcbiAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgIHNyYz1cIi9zdGF0aWMvaWNvbi9mdWdvdS5wbmdcIlxyXG4gICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaWxsXCJcclxuICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDBycHg7IGhlaWdodDogMTAwcnB4XCJcclxuICAgICAgICAgICAgPjwvaW1hZ2U+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiaXRlbUppYW5cIj5cclxuICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyVGl0bGVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMDBycHhcIj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0Pnt7IG9yZGVyQ29udGV0LnJlbWFyayB9fTwvdGV4dD5cclxuICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJvcmRlclByaWNlXCI+XHJcbiAgICAgICAgICAgICAgICA8dGV4dCBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkXCI+PC90ZXh0PlxyXG4gICAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgICA8YnIgY2xlYXI9XCJib3RoXCIgLz5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8YnIgY2xlYXI9XCJib3RoXCIgLz5cclxuICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJDb250ZW50XCIgdi1pZj1cIm9yZGVyQ29udGV0Lm9yZGVyVHlwZSA9PSAndmlwJ1wiPlxyXG4gICAgICAgICAgICA8aW1hZ2VcclxuICAgICAgICAgICAgICBzcmM9XCIvc3RhdGljL2ljb24vdmlwLnBuZ1wiXHJcbiAgICAgICAgICAgICAgbW9kZT1cImFzcGVjdEZpbGxcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IDEwMHJweDsgaGVpZ2h0OiAxMDBycHhcIlxyXG4gICAgICAgICAgICA+PC9pbWFnZT5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJpdGVtSmlhblwiPlxyXG4gICAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJUaXRsZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwMHJweFwiPlxyXG4gICAgICAgICAgICAgICAgPHRleHQ+e3sgb3JkZXJDb250ZXQudmlwQnV5Q29uZmlnRW50aXR5LnRpdGxlIH19PC90ZXh0PlxyXG4gICAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyUHJpY2VcIj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGRcIj48L3RleHQ+XHJcbiAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgIDxiciBjbGVhcj1cImJvdGhcIiAvPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDxiciBjbGVhcj1cImJvdGhcIiAvPlxyXG4gICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgY2xhc3M9XCJvcmRlckNvbnRlbnRcIlxyXG4gICAgICAgICAgICB2LWVsc2UtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ3BvaW50J1wiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgIHNyYz1cIi9zdGF0aWMvaWNvbi9wYXlfMy5wbmdcIlxyXG4gICAgICAgICAgICAgIG1vZGU9XCJhc3BlY3RGaWxsXCJcclxuICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDBycHg7IGhlaWdodDogMTAwcnB4XCJcclxuICAgICAgICAgICAgPjwvaW1hZ2U+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiaXRlbUppYW5cIj5cclxuICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyVGl0bGVcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxMDBycHhcIj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgID7lhYXlgLwge3sgb3JkZXJDb250ZXQuYm9va0J1eUNvbmZpZ0VudGl0eS5tb25leSB9feWkqeWMu+W4gTwvdGV4dFxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDwvdmlldz5cclxuXHJcbiAgICAgICAgICAgICAgPGJyIGNsZWFyPVwiYm90aFwiIC8+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPGJyIGNsZWFyPVwiYm90aFwiIC8+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcblx0XHQgIDx2aWV3XHJcblx0XHQgICAgY2xhc3M9XCJvcmRlckNvbnRlbnRcIlxyXG5cdFx0ICAgIHYtZWxzZS1pZj1cIm9yZGVyQ29udGV0Lm9yZGVyVHlwZSA9PSAndHJhaW5pbmdDbGFzcydcIlxyXG5cdFx0ICA+XHJcblx0XHQgICAgPGltYWdlXHJcblx0XHQgICAgICBzcmM9XCIvc3RhdGljL2ljb24vaWNvbl9weGIucG5nXCJcclxuXHRcdCAgICAgIG1vZGU9XCJhc3BlY3RGaWxsXCJcclxuXHRcdCAgICAgIHN0eWxlPVwid2lkdGg6IDEwMHJweDsgaGVpZ2h0OiAxMDBycHhcIlxyXG5cdFx0ICAgID48L2ltYWdlPlxyXG5cdFx0ICAgIDx2aWV3IGNsYXNzPVwiaXRlbUppYW5cIj5cclxuXHRcdCAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJUaXRsZVwiIHN0eWxlPVwibGluZS1oZWlnaHQ6IDEwMHJweFwiPlxyXG5cdFx0ICAgICAgICA8dGV4dD57e29yZGVyQ29udGV0LnJlbWFya319PC90ZXh0PlxyXG5cdFx0ICAgICAgPC92aWV3PlxyXG5cdFx0ICBcclxuXHRcdCAgICAgIDxiciBjbGVhcj1cImJvdGhcIiAvPlxyXG5cdFx0ICAgIDwvdmlldz5cclxuXHRcdCAgICA8YnIgY2xlYXI9XCJib3RoXCIgLz5cclxuXHRcdCAgPC92aWV3PlxyXG5cclxuICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJfaXRlbVwiIHN0eWxlPVwiXCI+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJhbGxwcmlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBzdHlsZT1cImNvbG9yOiAjNjY2OyBtYXJnaW4tcmlnaHQ6IDEwcnB4OyBmbG9hdDogbGVmdFwiXHJcbiAgICAgICAgICAgICAgICA+5ZWG5ZOB5oC75Lu3IDpcclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ3BvaW50J1wiXHJcbiAgICAgICAgICAgICAgICA+77+lIHt7IG9yZGVyQ29udGV0LmJvb2tCdXlDb25maWdFbnRpdHkucmVhbE1vbmV5IH19PC9zcGFuXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHYtZWxzZT7vv6Uge3sgb3JkZXJDb250ZXQub3JkZXJNb25leSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyUmVhbFwiIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ29yZGVyJ1wiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IG1hcmdpbi1yaWdodDogMTBycHg7IGZsb2F0OiBsZWZ0XCJcclxuICAgICAgICAgICAgICAgID7ov5DotLkgOlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3Bhbj7vv6U8L3NwYW4+e3sgb3JkZXJDb250ZXQuc2hpcHBpbmdNb25leSB9fVxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcmRlclJlYWxcIlxyXG4gICAgICAgICAgICAgIHYtaWY9XCJvcmRlckNvbnRldC5kaXN0cmljdE1vbmV5ICYmIG9yZGVyQ29udGV0LmRpc3RyaWN0TW9uZXkgPiAwXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IG1hcmdpbi1yaWdodDogMTBycHg7IGZsb2F0OiBsZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICDmtLvliqjnq4vlh486XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIlxyXG4gICAgICAgICAgICAgICAgPi0g77+le3sgb3JkZXJDb250ZXQuZGlzdHJpY3RNb25leSB9fTwvc3BhblxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgIGNsYXNzPVwib3JkZXJSZWFsXCJcclxuICAgICAgICAgICAgICB2LWlmPVwiXHJcbiAgICAgICAgICAgICAgICBvcmRlckNvbnRldC52aXBEaXNjb3VudEFtb3VudCAmJlxyXG4gICAgICAgICAgICAgICAgb3JkZXJDb250ZXQudmlwRGlzY291bnRBbW91bnQgPiAwXHJcbiAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IG1hcmdpbi1yaWdodDogMTBycHg7IGZsb2F0OiBsZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICBzdHlsZT1cImNvbG9yOiAjZjk0ZjA0OyBmb250LXdlaWdodDogYm9sZDsgbWFyZ2luLXJpZ2h0OiAycHhcIlxyXG4gICAgICAgICAgICAgICAgICA+VklQPC9zcGFuXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICDkuJPkuqvnq4vlh486XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIlxyXG4gICAgICAgICAgICAgICAgPi0g77+le3sgb3JkZXJDb250ZXQudmlwRGlzY291bnRBbW91bnQgfX08L3NwYW5cclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyUmVhbFwiXHJcbiAgICAgICAgICAgICAgdi1pZj1cIm9yZGVyQ29udGV0LmNvdXBvbklkICYmIG9yZGVyQ29udGV0LmNvdXBvbklkICE9IG51bGxcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogIzY2NjsgbWFyZ2luLXJpZ2h0OiAxMHJweDsgZmxvYXQ6IGxlZnRcIlxyXG4gICAgICAgICAgICAgICAgPuS8mOaDoOWIuCA6XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuPi0g77+lPC9zcGFuPnt7IG9yZGVyQ29udGV0LmNvdXBvbkFtb3VudCB9fVxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJSZWFsXCIgdi1pZj1cIm9yZGVyQ29udGV0LmpmRGVkdWN0aW9uID4gMFwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IG1hcmdpbi1yaWdodDogMTBycHg7IGZsb2F0OiBsZWZ0XCJcclxuICAgICAgICAgICAgICAgID7np6/liIbmirXmiaM6XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIiB2LWlmPVwib3JkZXJDb250ZXQuamZEZWR1Y3Rpb24gPiAwXCJcclxuICAgICAgICAgICAgICAgID4tJm5ic3A7Jm5ic3A7PC9zcGFuXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIj4ge3sgb3JkZXJDb250ZXQuamZEZWR1Y3Rpb24gfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyUmVhbFwiXHJcbiAgICAgICAgICAgICAgdi1pZj1cIm9yZGVyQ29udGV0LnBheW1lbnRNZXRob2QgPT0gNCAmJiBvcmRlckNvbnRldC5yZWFsTW9uZXkgPiAwXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IG1hcmdpbi1yaWdodDogMTBycHg7IGZsb2F0OiBsZWZ0XCJcclxuICAgICAgICAgICAgICAgID7lpKnljLvluIHmirXmiaM6XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIj4tJm5ic3A7Jm5ic3A7PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmYTJkMTJcIj7vv6V7eyBvcmRlckNvbnRldC5yZWFsTW9uZXkgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyUmVhbFwiXHJcbiAgICAgICAgICAgICAgdi1pZj1cIm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzICE9IDBcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMjBycHhcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogIzY2NjsgbWFyZ2luLXJpZ2h0OiAxMHJweDsgZmxvYXQ6IGxlZnRcIlxyXG4gICAgICAgICAgICAgICAgPuWunuS7mOasviA6XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxiIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ3BvaW50J1wiIHN0eWxlPVwiY29sb3I6ICNkZDNjMGNcIlxyXG4gICAgICAgICAgICAgICAgPu+/pSB7eyBvcmRlckNvbnRldC5ib29rQnV5Q29uZmlnRW50aXR5LnJlYWxNb25leSB9fTwvYlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8YiBzdHlsZT1cImNvbG9yOiAjZGQzYzBjXCIgdi1lbHNlPlxyXG4gICAgICAgICAgICAgICAgPHRlbXBsYXRlIHYtaWY9XCJvcmRlckNvbnRldC5yZWFsTW9uZXkgPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgIO+/pXt7IG9yZGVyQ29udGV0LnJlYWxNb25leSB9fVxyXG5cclxuICAgICAgICAgICAgICAgICAgPHRleHQgc3R5bGU9XCJmb250LXNpemU6IDI0cnB4O21hcmdpbi1sZWZ0OiAxMHJweDtcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdi1pZj1cIm9yZGVyQ29udGV0LnBheW1lbnRNZXRob2QgPT0gMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICA+5b6u5L+h5pSv5LuYPC9zcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQucGF5bWVudE1ldGhvZCA9PSAyXCJcclxuICAgICAgICAgICAgICAgICAgICAgID7mlK/ku5jlrp3mlK/ku5g8L3NwYW5cclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXCJcclxuICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJvcmRlckNvbnRldC5wYXltZW50TWV0aG9kID09IDNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgPuiLueaenOaUr+S7mDwvc3BhblxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdi1pZj1cIm9yZGVyQ29udGV0LnBheW1lbnRNZXRob2QgPT0gNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAg5aSp5Yy75biB5pSv5LuYXHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvdGV4dFxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8L3RlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW46IDAgNHJweFwiXHJcbiAgICAgICAgICAgICAgICAgIHYtaWY9XCJcclxuICAgICAgICAgICAgICAgICAgICBvcmRlckNvbnRldC5yZWFsTW9uZXkgPiAwICYmIG9yZGVyQ29udGV0LmpmRGVkdWN0aW9uID4gMFxyXG4gICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICArXHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcblxyXG4gICAgICAgICAgICAgICAgPHRleHQgdi1pZj1cIm9yZGVyQ29udGV0LmpmRGVkdWN0aW9uID4gMFwiXHJcbiAgICAgICAgICAgICAgICAgID57eyBvcmRlckNvbnRldC5qZkRlZHVjdGlvbiB9fSDnp6/liIY8L3RleHRcclxuICAgICAgICAgICAgICAgID48L2JcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgIDx2aWV3IGNsYXNzPVwib3JkZXJfaXRlbVwiPlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm9yZGVyWXVuZlwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM2NjY7IGZsb2F0OiBsZWZ0XCI+6K6i5Y2V57yW5Y+3IDogPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyNHJweDsgY29sb3I6ICM2NjZcIlxyXG4gICAgICAgICAgICAgICAgPnt7IG9yZGVyQ29udGV0Lm9yZGVyU24gfX1cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgPHUtdGFnXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJoYW5kbGVDb3B5KG9yZGVyQ29udGV0Lm9yZGVyU24sICforqLljZXnvJblj7cnKVwiXHJcbiAgICAgICAgICAgICAgICBib3JkZXJDb2xvcj1cIiMyNThmZWJcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9XCIjMjU4ZmViXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCLlpI3liLZcIlxyXG4gICAgICAgICAgICAgICAgcGxhaW5cclxuICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxvYXQ6IHJpZ2h0OyBtYXJnaW4tbGVmdDogNXJweFwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwibWluaVwiXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwic3VjY2Vzc1wiXHJcbiAgICAgICAgICAgICAgPjwvdS10YWc+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJvcmRlclJlYWxcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBzdHlsZT1cImNvbG9yOiAjNjY2OyBtYXJnaW4tcmlnaHQ6IDEwcnB4OyBmbG9hdDogbGVmdFwiXHJcbiAgICAgICAgICAgICAgICA+5Yib5bu65pe26Ze0IDpcclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHRleHQgc3R5bGU9XCJmb250LXNpemU6IDI0cnB4OyBjb2xvcjogIzY2NlwiPnt7XHJcbiAgICAgICAgICAgICAgICBvcmRlckNvbnRldC5jcmVhdGVUaW1lXHJcbiAgICAgICAgICAgICAgfX08L3RleHQ+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICBjbGFzcz1cIm9yZGVyUmVhbFwiXHJcbiAgICAgICAgICAgICAgdi1pZj1cIlxyXG4gICAgICAgICAgICAgICAgb3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPj0gMSAmJlxyXG4gICAgICAgICAgICAgICAgb3JkZXJDb250ZXQub3JkZXJTdGF0dXMgIT0gNSAmJlxyXG4gICAgICAgICAgICAgICAgb3JkZXJDb250ZXQucGF5bWVudERhdGVcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJjb2xvcjogIzY2NjsgbWFyZ2luLXJpZ2h0OiAxMHJweDsgZmxvYXQ6IGxlZnRcIlxyXG4gICAgICAgICAgICAgICAgPuS7mOasvuaXtumXtCA6XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDx0ZXh0IHN0eWxlPVwiZm9udC1zaXplOiAyNHJweDsgY29sb3I6ICM2NjZcIj57e1xyXG4gICAgICAgICAgICAgICAgb3JkZXJDb250ZXQucGF5bWVudERhdGVcclxuICAgICAgICAgICAgICB9fTwvdGV4dD5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgPC92aWV3PlxyXG5cclxuICAgICAgICAgIDwhLS0gPHZpZXcgY2xhc3M9XCJvcmRlclJlYWxcIiB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPj0gMiAmJiBvcmRlckNvbnRldC5vcmRlclN0YXR1cyAhPSA1XCI+XHJcblx0XHRcdFx0XHQ8c3BhbiBzdHlsZT1cImNvbG9yOiAjNjY2O21hcmdpbi1yaWdodDogMTBycHg7ZmxvYXQ6IGxlZnQ7XCI+5Y+R6LSn5pe26Ze0IDogPC9zcGFuPlxyXG5cdFx0XHRcdFx0PHRleHQgc3R5bGU9XCJmb250LXNpemU6IDI0cnB4O2NvbG9yOiAjNjY2O1wiPnt7b3JkZXJDb250ZXQuc2hpcHBpbmdUaW1lfX08L3RleHQ+XHJcblx0XHRcdFx0PC92aWV3PiAtLT5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJcIiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6IDEwMCVcIj5cclxuICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgIEBjbGljaz1cImdvdG9Xb3JrT3JkZXJcIlxyXG4gICAgICAgICAgICBzdHlsZT1cImNvbG9yOiBjYWRldGJsdWU7IGZvbnQtc2l6ZTogMjZycHhcIlxyXG4gICAgICAgICAgICA+6K6i5Y2V5pyJ6Zeu6aKY77yf5Y6755Sz6K+JPC90ZXh0XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICA8L3ZpZXc+XHJcbiAgICA8L3ZpZXc+XHJcbiAgICA8dmlldyBjbGFzcz1cImdvb2RzX25hdl9ib3hcIj5cclxuICAgICAgPGNvbW1vbi1nb29kcy1uYXZcclxuICAgICAgICA6aWNvbkxpc3Q9XCJpY29uTGlzdFwiXHJcbiAgICAgICAgOmN1c3RvbUJ1dHRvbj1cImN1c3RvbUJ1dHRvblwiXHJcbiAgICAgICAgQHN1Ym1pdD1cImdvQnV5SmllXCJcclxuICAgICAgICBAY2xpY2tJY29uPVwiY2xpY2tJY29uXCJcclxuICAgICAgPlxyXG4gICAgICAgIDwhLS0gbGVmdFNsb3QgLS0+XHJcbiAgICAgICAgPHRlbXBsYXRlIHNsb3Q9XCJsZWZ0U2xvdFwiIHNsb3Qtc2NvcGU9XCJzbG90UHJvcHNcIj5cclxuICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgIGNsYXNzPVwicHJpY2VfYm94IG9yZGVyX2JvdHRvbV9ib3hcIlxyXG4gICAgICAgICAgICB2LWlmPVwib3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx0ZXh0IGNsYXNzPVwicHJpY2VcIlxyXG4gICAgICAgICAgICAgID7lkIjorqE6XHJcbiAgICAgICAgICAgICAgPHRleHQgY2xhc3M9XCJ0b3RhbFwiIHYtaWY9XCJvcmRlckNvbnRldC5vcmRlclR5cGUgPT0gJ3BvaW50J1wiPlxyXG4gICAgICAgICAgICAgICAg77+lIHt7IG9yZGVyQ29udGV0LmJvb2tCdXlDb25maWdFbnRpdHkucmVhbE1vbmV5IH19XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgIDx0ZXh0IGNsYXNzPVwidG90YWxcIiB2LWVsc2U+77+le3sgb3JkZXJDb250ZXQucmVhbE1vbmV5IH19PC90ZXh0PlxyXG4gICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC90ZW1wbGF0ZT5cclxuICAgICAgPC9jb21tb24tZ29vZHMtbmF2PlxyXG5cclxuICAgICAgPCEtLSA8dW5pLWdvb2RzLW5hdiA6ZmlsbD1cInRydWVcIiA6b3B0aW9ucz1cImJ1eU9wdGlvbnNcIiA6YnV0dG9uLWdyb3VwPVwiY3VzdG9tQnV0dG9uR3JvdXAxXCIgQGNsaWNrPVwib25DbGlja1wiXHJcbiAgICAgICAgICAgICAgICBAYnV0dG9uQ2xpY2s9XCJidXR0b25DbGlja1wiIC8+IC0tPlxyXG4gICAgPC92aWV3PlxyXG4gICAgPCEtLSDlr7nor53moYYgLS0+XHJcbiAgICA8dS1wb3B1cCA6c2hvdz1cInBpbmdqaWFTaG93XCIgOnJvdW5kPVwiMTBcIiBAY2xvc2U9XCJjbG9zZVBpbmdqaWFcIj5cclxuICAgICAgPHZpZXcgY2xhc3M9XCJ0YW5jaHVcIj5cclxuICAgICAgICA8dmlldyBjbGFzcz1cImRwX3RpdGxlXCIgdi1pZj1cInBqVHlwZSAhPSAnemh1aXBpbmcnXCI+5re75Yqg6K+E5Lu3PC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwiZHBfdGl0bGVcIiB2LWVsc2U+5re75Yqg6L+96K+EPC92aWV3PlxyXG5cclxuICAgICAgICA8dmlldyBzdHlsZT1cIm1heC1oZWlnaHQ6IDEwMDBycHg7IG92ZXJmbG93LXk6IHNjcm9sbFwiPlxyXG4gICAgICAgICAgPHVuaS1mb3JtcyA6bW9kZWxWYWx1ZT1cIlBmb3JtXCI+XHJcbiAgICAgICAgICAgIDwhLS0g6K+E5Lu35Zu+54mHIC0tPlxyXG4gICAgICAgICAgICA8IS0tIGVuZCAtLT5cclxuICAgICAgICAgICAgPCEtLSA8dW5pLWZvcm1zLWl0ZW0gbmFtZT1cImNvbW1lbnRcIiBsYWJlbC13aWR0aD1cIjBcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PHVuaS1lYXN5aW5wdXQgdHlwZT1cInRleHRhcmVhXCIgdi1tb2RlbD1cIlBmb3JtLmNvbW1lbnRcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaCqOeahOWVhuWTgeivhOS7t1wiICAvPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC91bmktZm9ybXMtaXRlbT5cdFx0IC0tPlxyXG4gICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgICA8IS0tIDx1LWJ1dHRvbiB0eXBlPVwic3VjY2Vzc1wiIEBjbGljaz1cInN1Ym1pdFBKXCI+5o+Q5Lqk6K+E5Lu3PC91LWJ1dHRvbj4gLS0+XHJcbiAgICAgICAgICA8IS0tIOaPkOS6pCAtLT5cclxuICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgIGNsYXNzPVwicGFkZGluZy1ib3R0b20tc20gZmxleCBwYWRkaW5nLWxyLXNtXCJcclxuICAgICAgICAgICAgc3R5bGU9XCJib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwibWIzMFwiIHYtaWY9XCJwalR5cGUgIT0gJ3podWlwaW5nJ1wiPlxyXG4gICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbJ3N0YXInLCBQZm9ybS5zdGFyID49IDEgPyAnc3RhckxpZ2h0JyA6ICdzdGFyR3JheSddXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoMSlcIlxyXG4gICAgICAgICAgICAgID48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gMiA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxyXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwiZ2V0U3RhcigyKVwiXHJcbiAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiWydzdGFyJywgUGZvcm0uc3RhciA+PSAzID8gJ3N0YXJMaWdodCcgOiAnc3RhckdyYXknXVwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZXRTdGFyKDMpXCJcclxuICAgICAgICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbJ3N0YXInLCBQZm9ybS5zdGFyID49IDQgPyAnc3RhckxpZ2h0JyA6ICdzdGFyR3JheSddXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cImdldFN0YXIoNClcIlxyXG4gICAgICAgICAgICAgID48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlsnc3RhcicsIFBmb3JtLnN0YXIgPj0gNSA/ICdzdGFyTGlnaHQnIDogJ3N0YXJHcmF5J11cIlxyXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwiZ2V0U3Rhcig1KVwiXHJcbiAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cIm1iMzBcIiB2LWlmPVwicGpUeXBlICE9ICd6aHVpcGluZydcIj5cclxuICAgICAgICAgICAgICA8IS0tIDx1bmktZmlsZS1waWNrZXIgOmF1dG8tdXBsb2FkPVwiZmFsc2VcIiByZWY9XCJmaWxlc1wiIEBkZWxldGU9XCJkZWxldGVJbWdcIiBsaW1pdD1cIjVcIiBAc3VjY2Vzcz1cInVwU3VjY2Vzc1wiIEBzZWxlY3Q9XCJzZWxlY3RcIiB2LW1vZGVsPVwiUGZvcm0uaW1nXCIgZmlsZU1lZGlhdHlwZT1cImltYWdlXCIgOmltYWdlLXN0eWxlcz1cImltYWdlU3R5bGVzXCIvPiAtLT5cclxuICAgICAgICAgICAgICA8dS11cGxvYWRcclxuICAgICAgICAgICAgICAgIDpmaWxlTGlzdD1cIlBmb3JtLmltZ1wiXHJcbiAgICAgICAgICAgICAgICBAYWZ0ZXJSZWFkPVwiYWZ0ZXJSZWFkXCJcclxuICAgICAgICAgICAgICAgIEBkZWxldGU9XCJkZWxldGVQaWNcIlxyXG4gICAgICAgICAgICAgICAgbXVsdGlwbGVcclxuICAgICAgICAgICAgICAgIDptYXhDb3VudD1cIjRcIlxyXG4gICAgICAgICAgICAgICAgd2lkdGg9XCI4MFwiXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCI4MFwiXHJcbiAgICAgICAgICAgICAgICA6cHJldmlld0Z1bGxJbWFnZT1cInRydWVcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8L3UtdXBsb2FkPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleC1zdWIgZmxleGJveFwiPlxyXG4gICAgICAgICAgICAgIDxpIEBjbGljaz1cInNob3dFbWooKVwiIDpjbGFzcz1cImVtb2ppSWNvblwiPjwvaT5cclxuICAgICAgICAgICAgICA8IS0tIDxpbnB1dCB0eXBlPVwidGV4dFwiIEBmb2N1cz1cIklucHV0Rm9jdXNcIiBAYmx1cj1cIklucHV0Qmx1clwiIHYtbW9kZWw9XCJtZXNzYWdlXCIgIEBpbnB1dD1cInRleHRhcmVhQklucHV0XCIgIHBsYWNlaG9sZGVyLXN0eWxlPVwiZm9udC1zaXplOjI0cnB4O2NvbG9yOiNhYWFhYWE7XCIgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl5oKo6KaB5Y+R6YCB55qE5YaF5a65XCI+PC9pbnB1dD4gLS0+XHJcbiAgICAgICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRleHRhcmVhXCJcclxuICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJQZm9ybS5jb21tZW50XCJcclxuICAgICAgICAgICAgICAgIEBmb2N1cz1cIklucHV0Rm9jdXNcIlxyXG4gICAgICAgICAgICAgICAgQGJsdXI9XCJJbnB1dEJsdXJcIlxyXG4gICAgICAgICAgICAgICAgQGlucHV0PVwidGV4dGFyZWFCSW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXItc3R5bGU9XCJmb250LXNpemU6MjRycHg7Y29sb3I6I2FhYWFhYTtcIlxyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXmgqjopoHlj5HpgIHnmoTlhoXlrrlcIlxyXG4gICAgICAgICAgICAgID48L3RleHRhcmVhPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiXCI+XHJcbiAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uIGNsYXNzPVwiY3UtYnRuIGJnLWdyYWR1YWwtYmx1ZSBzaGFkb3ctYmx1clwiPuWPkemAgTwvYnV0dG9uPiAtLT5cclxuICAgICAgICAgICAgICA8dS1idXR0b25cclxuICAgICAgICAgICAgICAgIHR5cGU9XCJzdWNjZXNzXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cInN1Ym1pdFBKXCJcclxuICAgICAgICAgICAgICAgIHYtaWY9XCJwalR5cGUgIT0gJ3podWlwaW5nJ1wiXHJcbiAgICAgICAgICAgICAgICA+5o+Q5Lqk6K+E5Lu3PC91LWJ1dHRvblxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8dS1idXR0b24gdHlwZT1cInN1Y2Nlc3NcIiBAY2xpY2s9XCJ6aHVpcGluZ1wiIHYtZWxzZVxyXG4gICAgICAgICAgICAgICAgPuaPkOS6pOi/veivhDwvdS1idXR0b25cclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgIDwvdmlldz5cclxuXHJcbiAgICAgICAgICA8dmlldyBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICA8ZW1vdGlvblxyXG4gICAgICAgICAgICAgIEBlbW90aW9uPVwiaGFuZGxlRW1qXCJcclxuICAgICAgICAgICAgICA6aGVpZ2h0PVwiMjIwXCJcclxuICAgICAgICAgICAgICB2LWlmPVwiaXNTaG93RW1qXCJcclxuICAgICAgICAgICAgICA6d2luZG93V2lkdGg9XCJ3aW5kb3dXaWR0aFwiXHJcbiAgICAgICAgICAgID48L2Vtb3Rpb24+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICA8L3ZpZXc+XHJcbiAgICA8L3UtcG9wdXA+XHJcbiAgICA8dS1wb3B1cFxyXG4gICAgICBtb2RlPVwiYm90dG9tXCJcclxuICAgICAgOnNob3c9XCJzaGVldExpc3RTaG93XCJcclxuICAgICAgOnJvdW5kPVwiMTBcIlxyXG4gICAgICBAY2xvc2U9XCJzaGVldExpc3RTaG93ID0gZmFsc2VcIlxyXG4gICAgPlxyXG4gICAgICA8dmlld1xyXG4gICAgICAgIGNsYXNzPVwidGFuY2h1IGV4cHJlc3NsaXN0XCJcclxuICAgICAgICBzdHlsZT1cImhlaWdodDogNTAwcnB4OyBvdmVyZmxvdy15OiBzY3JvbGxcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJ0aXRsZVwiPiDor7fpgInmi6nopoHmn6XnnIvljIXoo7kgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwibGlzdFwiPlxyXG4gICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgY2xhc3M9XCJpdGVtXCJcclxuICAgICAgICAgICAgdi1mb3I9XCIoaXRlbSwgaW5kZXgpIGluIHNoZWV0TGlzdFwiXHJcbiAgICAgICAgICAgIEBjbGljaz1cInNlZUV4cHJlc3NEZXRhaWxzKGl0ZW0pXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGg0IHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMTBycHhcIj7ljIXoo7kge3sgaW5kZXggKyAxIH19PC9oND5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJcIlxyXG4gICAgICAgICAgICAgID7ov5DljZXlj7fvvJp7eyBpdGVtLmV4cHJlc3NPcmRlclNuIH19XHJcbiAgICAgICAgICAgICAgPHUtdGFnXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJjb3B5RGF0YShpdGVtLmV4cHJlc3NPcmRlclNuKVwiXHJcbiAgICAgICAgICAgICAgICBzaXplPVwibWluaVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNvcHlDb2RlXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCLlpI3liLbljZXlj7dcIlxyXG4gICAgICAgICAgICAgICAgcGxhaW5cclxuICAgICAgICAgICAgICAgIHR5cGU9XCJzdWNjZXNzXCJcclxuICAgICAgICAgICAgLz48L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiXCI+5Y+R6LSn5pe26Ze077yae3sgaXRlbS5jcmVhdGVUaW1lIH19PC92aWV3PlxyXG4gICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDwvdmlldz5cclxuICAgICAgPC92aWV3PlxyXG4gICAgPC91LXBvcHVwPlxyXG4gICAgPG11c2ljLXBsYXkgOnBsYXlEYXRhPVwicGxheURhdGFcIj48L211c2ljLXBsYXk+XHJcbiAgPC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuaW1wb3J0IG11c2ljUGxheSBmcm9tIFwiQC9jb21wb25lbnRzL211c2ljLnZ1ZVwiO1xyXG5pbXBvcnQgZW1vdGlvbiBmcm9tIFwiQC9ia2h1bW9yLWVtb2ppcGx1cy9jb21wb25lbnRzL2JraHVtb3ItZW1vamlwbHVzL2JraHVtb3ItZW1vamlwbHVzLnZ1ZVwiO1xyXG5pbXBvcnQgJGh0dHAgZnJvbSBcIkAvY29uZmlnL3JlcXVlc3RDb25maWcuanNcIjtcclxuaW1wb3J0IHsgc2V0UGF5LCBzZXRQYXlBc3NpZ24sIHNldFdYUGF5IH0gZnJvbSBcIkAvY29uZmlnL3V0aWxzXCI7XHJcbmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSBcInZ1ZXhcIjtcclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGRhdGEoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBBOiB7XHJcbiAgICAgICAgb3JkZXJJZDogMTUzMTYsXHJcbiAgICAgICAgb3JkZXJTbjogXCIyMDI0MTIwOTE0MTU0MTI1MzE4NjYwMDM3NjY0NTA3MFwiLFxyXG4gICAgICAgIHVzZXJJZDogMTM0ODcsXHJcbiAgICAgICAgdXNlck5hbWU6IG51bGwsXHJcbiAgICAgICAgc3RhdHVzTnVtOiBudWxsLFxyXG4gICAgICAgIHNoaXBwaW5nVXNlcjogbnVsbCxcclxuICAgICAgICB1c2VyUGhvbmU6IFwiMTg4MzQ4NDQ4NDdcIixcclxuICAgICAgICBwcm92aW5jZTogbnVsbCxcclxuICAgICAgICBjaXR5OiBudWxsLFxyXG4gICAgICAgIGRpc3RyaWN0OiBudWxsLFxyXG4gICAgICAgIGFkZHJlc3M6IG51bGwsXHJcbiAgICAgICAgY29tZTogMixcclxuICAgICAgICBwYXltZW50TWV0aG9kOiBcIjNcIixcclxuICAgICAgICBvcmRlck1vbmV5OiAzOSxcclxuICAgICAgICBkaXN0cmljdE1vbmV5OiAwLFxyXG4gICAgICAgIHJlYWxNb25leTogMzksXHJcbiAgICAgICAgc2hpcHBpbmdNb25leTogbnVsbCxcclxuICAgICAgICBzaGlwcGluZ0NvbXBOYW1lOiBudWxsLFxyXG4gICAgICAgIHNoaXBwaW5nU246IG51bGwsXHJcbiAgICAgICAgamZEZWR1Y3Rpb246IDAsXHJcbiAgICAgICAgY3JlYXRlVGltZTogXCIyMDI0LTEyLTA5IDE0OjE1OjQxXCIsXHJcbiAgICAgICAgc2hpcHBpbmdUaW1lOiBudWxsLFxyXG4gICAgICAgIG9yZGVyU3RhdHVzOiBcIjBcIixcclxuICAgICAgICBzdWNjZXNzVGltZTogbnVsbCxcclxuICAgICAgICBjb3Vwb25JZDogbnVsbCxcclxuICAgICAgICBjb3Vwb25OYW1lOiBudWxsLFxyXG4gICAgICAgIGRlbEZsYWc6IDAsXHJcbiAgICAgICAgcHJvZHVjdHM6IG51bGwsXHJcbiAgICAgICAgcHJvZHVjdExpc3Q6IG51bGwsXHJcbiAgICAgICAgYnV5VHlwZTogbnVsbCxcclxuICAgICAgICBvcmRlclR5cGU6IFwicG9pbnRcIixcclxuICAgICAgICBleHBObzogbnVsbCxcclxuICAgICAgICBpc1NlbmQ6IG51bGwsXHJcbiAgICAgICAgdmlwQnV5Q29uZmlnSWQ6IDAsXHJcbiAgICAgICAgYWRkcmVzc0lkOiBudWxsLFxyXG4gICAgICAgIHJlbWFyazogbnVsbCxcclxuICAgICAgICBvcmRlckNvZGU6IG51bGwsXHJcbiAgICAgICAgcGF5bWVudERhdGU6IG51bGwsXHJcbiAgICAgICAgcHJvZHVjdElkOiBcIjIxXCIsXHJcbiAgICAgICAgcmVjb3JkSWQ6IG51bGwsXHJcbiAgICAgICAgdGltZXN0YW1wOiBudWxsLFxyXG4gICAgICAgIHVzZXI6IG51bGwsXHJcbiAgICAgICAgZXhwcmVzc0xpc3Q6IG51bGwsXHJcbiAgICAgICAgYWRkcmVzc01vZGlmaWVkOiAwLFxyXG4gICAgICAgIGNvbnNpZ25lZVZvOiBudWxsLFxyXG4gICAgICAgIGFwcE5hbWU6IG51bGwsXHJcbiAgICAgICAgYm9va0J1eUNvbmZpZ0VudGl0eToge1xyXG4gICAgICAgICAgcHJpY2VUeXBlSWQ6IDIxLFxyXG4gICAgICAgICAgdHlwZTogXCJwb2ludFwiLFxyXG4gICAgICAgICAgcXVkYW86IFwiSU9TXCIsXHJcbiAgICAgICAgICByZWFsTW9uZXk6IFwiNDVcIixcclxuICAgICAgICAgIG1vbmV5OiBcIjM5XCIsXHJcbiAgICAgICAgICBnaXZlamY6IFwiMFwiLFxyXG4gICAgICAgICAgbW9udGg6IG51bGwsXHJcbiAgICAgICAgICBkZXNjcmlwdGlvbjogXCJcIixcclxuICAgICAgICAgIGVmZmVjdGl2ZTogMCxcclxuICAgICAgICAgIHN0YXJ0VGltZTogbnVsbCxcclxuICAgICAgICAgIGVuZFRpbWU6IG51bGwsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB2aXBCdXlDb25maWdFbnRpdHk6IG51bGwsXHJcbiAgICAgIH0sXHJcbiAgICAgIGljb25MaXN0OiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGV4dDogXCLogZTns7vlrqLmnI1cIixcclxuICAgICAgICAgIGljb25UeXBlOiAxLFxyXG4gICAgICAgICAgaWNvbjogXCJzZXJ2ZXItZmlsbFwiLFxyXG4gICAgICAgICAgaW5mb0NvbG9yOiBcIiM2NjZcIixcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgICB1c2VyUmVjb3JkaWQ6IG51bGwsIC8vIOeUqOaIt+eahOivhOS7t+eKtuaAgVxyXG4gICAgICBwbGF5RGF0YToge30sXHJcbiAgICAgIHRpdGxlOiBcIkhlbGxvXCIsXHJcbiAgICAgIGlzU2hvd0VtajogZmFsc2UsXHJcbiAgICAgIGVtb2ppSWNvbjogXCJjdUljb24tZW1vamlcIixcclxuICAgICAgbWVzc2FnZTogXCJcIixcclxuXHJcbiAgICAgIHdpbmRvd1dpZHRoOiAwLFxyXG4gICAgICB3aW5kb3dIZWlnaHQ6IDUwMCxcclxuICAgICAgUGZvcm06IHtcclxuICAgICAgICAvLyDor4Tku7fooajljZVcclxuICAgICAgICBzdGFyOiAwLFxyXG4gICAgICAgIGNvbW1lbnQ6IFwiXCIsXHJcbiAgICAgICAgaW1nOiBbXSxcclxuICAgICAgICBodG1sOiBcIlwiLFxyXG4gICAgICB9LFxyXG4gICAgICBwaW5nSUQ6IG51bGwsXHJcbiAgICAgIHByb2R1Y3RJRDogbnVsbCwgLy8g6K6i5Y2V5ZWG5ZOBaWRcclxuICAgICAgaW1hZ2VTdHlsZXM6IHtcclxuICAgICAgICB3aWR0aDogNjQsXHJcbiAgICAgICAgaGVpZ2h0OiA2NCxcclxuICAgICAgICBib3JkZXI6IHtcclxuICAgICAgICAgIGNvbG9yOiBcIiM4OWFhN2RcIixcclxuICAgICAgICAgIHdpZHRoOiAyLFxyXG4gICAgICAgICAgc3R5bGU6IFwiZGFzaGVkXCIsXHJcbiAgICAgICAgICByYWRpdXM6IFwiMnB4XCIsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgcGluZ2ppYVNob3c6IGZhbHNlLFxyXG4gICAgICBsb2dpc3RpY3NEYXRhOiBbXSwgLy8g5b+r6YCS5L+h5oGv5YiX6KGoXHJcbiAgICAgIHRpdGxlU3RhdDogXCJcIixcclxuICAgICAgb3JkZXJJRDogMCxcclxuICAgICAgb3JkZXJTbjogXCJcIixcclxuICAgICAgb3JkZXJUeXBlOiBcIlwiLFxyXG4gICAgICBvcmRlckNvbnRldDoge30sXHJcbiAgICAgIGdvb2RzTGlzdDogW10sXHJcbiAgICAgIGRlbGl2ZXJEZXRhaWxzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgVHJhY2VzOiBbXSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLCAvLyDnianmtYHor6bmg4Xkv6Hmga/lhajpg6hcclxuICAgICAgZGVsaXZlckRldGFpbHNMZW5ndGg6IG51bGwsXHJcbiAgICAgIGVtb2ppOiBbXSxcclxuICAgICAgRmlsZXM6IFtdLFxyXG4gICAgICBwalR5cGU6IFwiXCIsXHJcbiAgICAgIHNoZWV0TGlzdDogW10sIC8vIOmdouWNleaVsOaNrlxyXG4gICAgICBjb25zaWduZWVTaG93OiBmYWxzZSxcclxuICAgICAgc2hlZXRMaXN0U2hvdzogZmFsc2UsXHJcbiAgICAgIGN1c3RvbUJ1dHRvbjogW10sXHJcbiAgICB9O1xyXG4gIH0sXHJcbiAgb25Mb2FkKGUpIHtcclxuICAgIHRoaXMud2luZG93V2lkdGggPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKS53aW5kb3dXaWR0aDtcclxuICAgIHRoaXMub3JkZXJJRCA9IGUub3JkZXJJZDtcclxuICAgIHRoaXMub3JkZXJUeXBlID0gZS5vcmRlclR5cGU7XHJcbiAgICB0aGlzLm9yZGVyU24gPSBlLm9yZGVyU247XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLm9yZGVySUQsIFwidGhpcy5vcmRlcklEXCIpO1xyXG4gIH0sXHJcbiAgb25IaWRlKCkge1xyXG4gICAgdGhpcy5zaGVldExpc3QgPSBbXTtcclxuICB9LFxyXG4gIG9uU2hvdygpIHtcclxuICAgIHRoaXMuZ2V0T3JkZXJMaXN0KCk7XHJcbiAgfSxcclxuICBjb21wb25lbnRzOiB7XHJcbiAgICBlbW90aW9uLFxyXG4gICAgbXVzaWNQbGF5LFxyXG4gIH0sXHJcbiAgY29tcHV0ZWQ6IHtcclxuICAgIC4uLm1hcFN0YXRlKFtcInVzZXJJbmZvXCJdKSxcclxuICB9LFxyXG5cclxuICBtZXRob2RzOiB7XHJcbiAgICBnb3RvV29ya09yZGVyKCkge1xyXG4gICAgICB1bmkubmF2aWdhdGVUbyh7XHJcbiAgICAgICAgdXJsOiBgL3BhZ2VzL3VzZXIvd29ya09yZGVyP25hbWU9b3JkZXJgLFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBnb0J1eUppZShkYXRhKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaW5kZXggYXQgbGluZSA1MzI6XCIsIGRhdGEpO1xyXG4gICAgICBpZiAoZGF0YS50ZXh0ID09IFwi57un57ut5LuY5qy+XCIpIHtcclxuICAgICAgICB0aGlzLmdvUGF5KHRoaXMub3JkZXJDb250ZXQpO1xyXG4gICAgICB9IGVsc2UgaWYgKGRhdGEudGV4dCA9PSBcIuWPlua2iOiuouWNlVwiKSB7XHJcbiAgICAgICAgdGhpcy5jYW5jZU9yZGVyKCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoZGF0YS50ZXh0ID09IFwi56Gu6K6k5pS26LSnXCIpIHtcclxuICAgICAgICB0aGlzLk92ZXJPcmRlcigpO1xyXG4gICAgICB9IGVsc2UgaWYgKGRhdGEudGV4dCA9PSBcIuafpeeci+eJqea1gVwiKSB7XHJcbiAgICAgICAgdGhpcy5zZWVFeHByZXNzRGV0YWlsKHRoaXMub3JkZXJDb250ZXQpO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgYXN5bmMgY2xpY2tJY29uKGRhdGEpIHtcclxuICAgICAgY29uc29sZS5sb2coXCJpbmRleCBhdCBsaW5lIDUzMjpcIiwgZGF0YSk7XHJcbiAgICAgIGlmIChkYXRhLnRleHQgPT0gXCLogZTns7vlrqLmnI1cIikge1xyXG4gICAgICAgIHRoaXMua2VmdSgpO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgLy8g5aSN5Yi25Yiw5Ymq5YiH5p2/XHJcbiAgICBjb3B5RGF0YShkYXRhKSB7XHJcbiAgICAgIHVuaS5zZXRDbGlwYm9hcmREYXRhKHtcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwic3VjY2Vzc1wiKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcbiAgICBzZWVFeHByZXNzRGV0YWlscyhpdGVtKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKGl0ZW0sIFwiaXRlbVwiKTtcclxuICAgICAgdW5pLm5hdmlnYXRlVG8oe1xyXG4gICAgICAgIHVybDpcclxuICAgICAgICAgIFwiLi9kZWxpdmVyRGV0YWlsP29yZGVyU249XCIgK1xyXG4gICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5vcmRlclNuICtcclxuICAgICAgICAgIFwiJmV4cHJlc3NPcmRlclNuPVwiICtcclxuICAgICAgICAgIGl0ZW0uZXhwcmVzc09yZGVyU24gK1xyXG4gICAgICAgICAgXCImZXhwcmVzc0NvbXBhbnlDb2RlPVwiICtcclxuICAgICAgICAgIGl0ZW0uZXhwcmVzc0NvbXBhbnlDb2RlICtcclxuICAgICAgICAgIFwiJmV4cHJlc3NDb21wYW55TmFtZT1cIiArXHJcbiAgICAgICAgICBpdGVtLmV4cHJlc3NDb21wYW55TmFtZSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgLy8g5YCS6K6h5pe25Zue6LCDXHJcbiAgICBjb3VudERvd24oKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwi6YeN5paw5Yi35paw6K6i5Y2VXCIpO1xyXG4gICAgICB0aGlzLmdldE9yZGVyTGlzdCgpO1xyXG4gICAgfSxcclxuICAgIC8vIOiOt+W+l+i+k+WFpeeahOihqOaDheaVsOe7hFxyXG4gICAgaGFuZGxlRW1qKGkpIHtcclxuICAgICAgY29uc29sZS5sb2coaSwgXCJpLS0tLS0tLS0tXCIpO1xyXG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBpO1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmlucHV0VmFsdWUpO1xyXG4gICAgICBpZiAoaS5lbW90aW9uaSA9PSBcIltlbV85OF1cIikge1xyXG4gICAgICAgIC8v5Yy56YWN5pyA5ZCO5LiA5Liq6KGo5oOF56ym5Y+35bm25Yig6ZmkMTHjgIJcclxuICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSB0aGlzLlBmb3JtLmNvbW1lbnQucmVwbGFjZShcclxuICAgICAgICAgIC8oXFxbW15cXF1dK1xcXXxbXFxzXFxTXSkkLyxcclxuICAgICAgICAgIFwiXCJcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmICh0aGlzLmVtb2ppLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuZW1vamkgPSB0aGlzLmVtb2ppLnNsaWNlKDAsIC0xKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5lbW9qaS5wdXNoKHsgdGFnOiBpLmVtb3Rpb24sIG5hbWU6IGkuZW1vdGlvbmkgfSk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5lbW9qaSwndGhpcy5lbW9qaScpXHJcbiAgICAgICAgdGhpcy5QZm9ybS5jb21tZW50ICs9IGkuZW1vdGlvbmk7XHJcbiAgICAgICAgLy8vIHRoaXMuUGZvcm0uaHRtbCArPSBpLmVtb3Rpb25cclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIHNob3daaHVpcGluZyh2YWwpIHtcclxuICAgICAgdGhpcy5walR5cGUgPSBcInpodWlwaW5nXCI7XHJcbiAgICAgIHRoaXMucGluZ2ppYVNob3cgPSB0cnVlO1xyXG4gICAgICB0aGlzLnByb2R1Y3RJRCA9IHZhbDtcclxuICAgICAgdGhpcy5waW5nSUQgPSBwaW5naWQ7XHJcbiAgICB9LFxyXG4gICAgLy8g6L+95Yqg6K+E6K66XHJcbiAgICB6aHVpcGluZygpIHtcclxuICAgICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgICAgb2lkOiB0aGlzLnVzZXJSZWNvcmRpZCxcclxuICAgICAgICB1c2VySWQ6IHRoaXMudXNlckluZm8uaWQsXHJcbiAgICAgICAgYm9va2lkOiB0aGlzLnByb2R1Y3RJRCxcclxuICAgICAgICBjb25UZW50OiB0aGlzLlBmb3JtLmNvbW1lbnQsXHJcbiAgICAgIH07XHJcbiAgICAgIGNvbnNvbGUubG9nKGRhdGEsIFwiZGF0YVwiKTtcclxuICAgICAgJGh0dHBcclxuICAgICAgICAucmVxdWVzdCh7XHJcbiAgICAgICAgICB1cmw6IFwidXNlci9mb2xsb3dVcC91c2VyRm9sbG93VXBcIixcclxuICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICBoZWFkZXI6IHtcclxuICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxyXG4gICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMCkge1xyXG4gICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICB0aXRsZTogXCLov73or4TmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICBpY29uOiBcInN1Y2Nlc3NcIixcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMucGluZ2ppYVNob3cgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5walR5cGUgPSBcIlwiO1xyXG4gICAgICAgICAgICAodGhpcy5wcm9kdWN0SUQgPSBudWxsKSwgKHRoaXMudXNlclJlY29yZGlkID0gbnVsbCk7XHJcbiAgICAgICAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IFwiXCI7XHJcbiAgICAgICAgICAgIHRoaXMuUGZvcm0uaHRtbCA9IFwiXCI7XHJcbiAgICAgICAgICAgIHRoaXMuZW1vamkgPSBbXTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdW5pLm5hdmlnYXRlQmFjayh7XHJcbiAgICAgICAgICAgICAgICBkZWx0YTogMSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSwgMjAwMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgdGV4dGFyZWFCSW5wdXQoZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhlLCBcImVcIik7XHJcbiAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IGUuZGV0YWlsLnZhbHVlO1xyXG4gICAgICAvLy8gdGhpcy5QZm9ybS5odG1sID0gZS5kZXRhaWwudmFsdWVcclxuICAgIH0sXHJcbiAgICBzaG93RW1qKCkge1xyXG4gICAgICBsZXQgYm9vbCA9ICF0aGlzLmlzU2hvd0VtajtcclxuICAgICAgaWYgKGJvb2wpIHtcclxuICAgICAgICB0aGlzLmVtb2ppSWNvbiA9IFwiY3VJY29uLWtleWJvYXJkXCI7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1lbW9qaVwiO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmlzU2hvd0VtaiA9IGJvb2w7XHJcbiAgICAgIHRoaXMuJGVtaXQoXCJzaG93XCIpO1xyXG4gICAgfSxcclxuICAgIElucHV0Qmx1cihlKSB7fSxcclxuICAgIElucHV0Rm9jdXMoZSkge1xyXG4gICAgICB0aGlzLmlzU2hvd0VtaiA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmVtb2ppSWNvbiA9IFwiY3VJY29uLWVtb2ppXCI7XHJcbiAgICAgIHRoaXMuJGVtaXQoXCJmb2NcIik7XHJcbiAgICB9LFxyXG5cclxuICAgIC8vIGVuZFxyXG4gICAgZGVsZXRlSW1nKGUpIHtcclxuICAgICAgLy8gdmFyIGFyciA9IHRoaXMuUGZvcm0uaW1nLnNsaWNlKDAsLTEpXHJcbiAgICAgIHRoaXMuUGZvcm0uaW1nLnBvcCgpO1xyXG4gICAgICAvLyAgY29uc29sZS5sb2coJ+WIoOmZpOaWh+S7ticsYXJyKVxyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLlBmb3JtKTtcclxuICAgIH0sXHJcbiAgICBnZXRTdGFyKGkpIHtcclxuICAgICAgdGhpcy5QZm9ybS5zdGFyID0gaTtcclxuICAgIH0sXHJcbiAgICBzZWxlY3QoZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIumAieaLqeaWh+S7tu+8mlwiLCBlKTtcclxuICAgICAgbGV0IGFyciA9IGUudGVtcEZpbGVzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7IHVybDogaXRlbS51cmwsIG5hbWU6IGl0ZW0ubmFtZSB9O1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5QZm9ybS5pbWcgPSB0aGlzLlBmb3JtLmltZy5jb25jYXQoLi4uYXJyKTtcclxuICAgICAgLy90aGlzLlBmb3JtLmltZyA9IGFyclxyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLlBmb3JtLCBcImltZ1wiKTtcclxuICAgIH0sXHJcbiAgICB1cFN1Y2Nlc3MoZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhlKTtcclxuICAgIH0sXHJcbiAgICAvLyDojrflj5ZodG1s5qC85byP55qE6K+E6K66MVxyXG4gICAgZ2V0SHRtbENvbW1lbnQoKSB7XHJcbiAgICAgIC8vIOagvOW8j+WMlmh0bWxcclxuICAgICAgdmFyIHNzID0gdGhpcy5QZm9ybS5jb21tZW50O1xyXG4gICAgICBpZiAodGhpcy5lbW9qaS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmVtb2ppLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5QZm9ybS5jb21tZW50LmluZGV4T2YodGhpcy5lbW9qaVtpXS5uYW1lKSAhPT0gLTEpIHtcclxuICAgICAgICAgICAgLy92YXIgcmUgPSBuZXcgUmVnRXhwKHRoaXMuZW1vamlbMF0ubmFtZSxcImdcIik7IC8v5a6a5LmJ5q2j5YiZ6KGo6L6+5byPXHJcbiAgICAgICAgICAgIC8v56ys5LiA5Liq5Y+C5pWw5piv6KaB5pu/5o2i5o6J55qE5YaF5a6577yM56ys5LqM5Liq5Y+C5pWwXCJnXCLooajnpLrmm7/mjaLlhajpg6jvvIhnbG9iYWzvvInjgIJcclxuICAgICAgICAgICAgLy8gc3MgPSBzcy5yZXBsYWNlKHJlLCApOyAvL+esrOS4gOS4quWPguaVsOaYr+ato+WImeihqOi+vuW8j+OAglxyXG4gICAgICAgICAgICBzcyA9IHNzLnJlcGxhY2UodGhpcy5lbW9qaVtpXS5uYW1lLCB0aGlzLmVtb2ppW2ldLnRhZyk7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHNzKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlBmb3JtLmh0bWwgPSBzcztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLlBmb3JtLmh0bWwgPSB0aGlzLlBmb3JtLmNvbW1lbnQ7XHJcbiAgICAgIH1cclxuICAgICAgLy9jb25zb2xlLmxvZyh0aGlzLlBmb3JtLmh0bWwsJ3RoaXMuUGZvcm0uaHRtbCcpXHJcbiAgICB9LFxyXG4gICAgZGVsZXRlUGljKCkge1xyXG4gICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgIHRoYXQuUGZvcm0uaW1nLnNwbGljZSgwLCAxKTtcclxuICAgICAgLy9jb25zb2xlLmxvZyh0aGF0LlBmb3JtLmltZylcclxuICAgIH0sXHJcbiAgICBhZnRlclJlYWQoZSkge1xyXG4gICAgICAvL2NvbnNvbGUubG9nKGUpXHJcbiAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlLmZpbGUubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKGksZS5maWxlW2ldLnVybClcclxuICAgICAgICB1bmkudXBsb2FkRmlsZSh7XHJcbiAgICAgICAgICB1cmw6IHRoaXMuJGJhc2VVcmwgKyBcIm9zcy9maWxlb3NzXCIsXHJcbiAgICAgICAgICBmaWxlUGF0aDogZS5maWxlW2ldLnVybCxcclxuICAgICAgICAgIC8vZmlsZXM6ZS5maWxlLFxyXG4gICAgICAgICAgbmFtZTogXCJmaWxlXCIsXHJcbiAgICAgICAgICBmb3JtRGF0YToge30sXHJcbiAgICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIHRoYXQuUGZvcm0uaW1nLnB1c2goe1xyXG4gICAgICAgICAgICAgIHVybDogSlNPTi5wYXJzZShyZXMuZGF0YSkudXJsLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBjbG9zZVBpbmdqaWEoKSB7XHJcbiAgICAgIHRoaXMucGluZ2ppYVNob3cgPSBmYWxzZTtcclxuICAgICAgdGhpcy5QZm9ybS5jb21tZW50ID0gXCJcIjtcclxuICAgICAgdGhpcy5QZm9ybS5odG1sID0gXCJcIjtcclxuICAgICAgdGhpcy5lbW9qaSA9IFtdO1xyXG4gICAgfSxcclxuICAgIC8vIOaPkOS6pOivhOS7t1xyXG4gICAgc3VibWl0UEooKSB7XHJcbiAgICAgIGlmICh0aGlzLlBmb3JtLmNvbW1lbnQgIT0gXCJcIikge1xyXG4gICAgICAgIGxldCBkYXRhID0ge1xyXG4gICAgICAgICAgdXNlcmlkOiB0aGlzLnVzZXJJbmZvLmlkLFxyXG4gICAgICAgICAgb3JkZXJTbjogdGhpcy5vcmRlclNuLFxyXG4gICAgICAgICAgYm9va2lkOiB0aGlzLnByb2R1Y3RJRCxcclxuICAgICAgICAgIC8vICdjb250ZW50JzogdGhpcy5QZm9ybS5odG1sLFxyXG4gICAgICAgICAgY29udGVudDogdGhpcy5QZm9ybS5jb21tZW50LFxyXG4gICAgICAgICAgc3RhckxldmVsOiB0aGlzLlBmb3JtLnN0YXIsXHJcbiAgICAgICAgICBpbWFnZXM6IHRoaXMuUGZvcm0uaW1nLFxyXG4gICAgICAgICAgLy8gJ2Vtb2ppJzp0aGlzLmVtb2ppICAvLyDooajmg4XmlbDnu4RcclxuICAgICAgICB9O1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGRhdGEsJ2RhdGEnKVxyXG4gICAgICAgICRodHRwXHJcbiAgICAgICAgICAucmVxdWVzdCh7XHJcbiAgICAgICAgICAgIHVybDogXCJidXkvcmVjb3JkL1VzZXJSZWNvcmRjb21tZW50XCIsXHJcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgaGVhZGVyOiB7XHJcbiAgICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxyXG4gICAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcy5jb2RlID09IDApIHtcclxuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuivhOS7t+aIkOWKn++8gVwiLFxyXG4gICAgICAgICAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMucGluZ2ppYVNob3cgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBcIlwiO1xyXG4gICAgICAgICAgICAgIHRoaXMuUGZvcm0uaHRtbCA9IFwiXCI7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbW9qaSA9IFtdO1xyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdW5pLm5hdmlnYXRlQmFjayh7XHJcbiAgICAgICAgICAgICAgICAgIGRlbHRhOiAxLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgfSwgMjAwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgdGl0bGU6IFwi6K+35YWI6L6T5YWl5oKo55qE6K+E5Lu35YaF5a65IO+8gVwiLFxyXG4gICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICAvLyDmt7vliqDor4Tku7dcclxuICAgIHBpbmdqaShpZCkge1xyXG4gICAgICBjb25zb2xlLmxvZyhpZCk7XHJcbiAgICAgIHRoaXMucGpUeXBlID0gXCJcIjtcclxuICAgICAgdGhpcy5wcm9kdWN0SUQgPSBpZDtcclxuICAgICAgdGhpcy5waW5namlhU2hvdyA9IHRydWU7XHJcbiAgICB9LFxyXG4gICAgLy8g6IGU57O75a6i5pyNXHJcbiAgICBrZWZ1KCkge1xyXG4gICAgICB1bmkuc2hvd01vZGFsKHtcclxuICAgICAgICB0aXRsZTogXCLmj5DnpLpcIixcclxuICAgICAgICBjb250ZW50OiBcIuW+ruS/oeWPt++8mnlpbHVqaWFua2FuZ2tlZnVcIixcclxuICAgICAgICAvLyBzdWNjZXNzOiBmdW5jdGlvbiAocmVzKSB7XHJcbiAgICAgICAgLy8gXHRpZiAocmVzLmNvbmZpcm0pIHtcclxuICAgICAgICAvLyBcdFx0dW5pLm1ha2VQaG9uZUNhbGwoe1xyXG4gICAgICAgIC8vIFx0XHRcdHBob25lTnVtYmVyOiAnMDIyLTI0MTQyMzIxJyAvL+S7heS4uuekuuS+i1xyXG4gICAgICAgIC8vIFx0XHR9KTtcclxuICAgICAgICAvLyBcdH0gZWxzZSBpZiAocmVzLmNhbmNlbCkge1xyXG5cclxuICAgICAgICAvLyBcdH1cclxuICAgICAgICAvLyB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIC8vIOafpeeci+eJqea1gVxyXG4gICAgc2VlRXhwcmVzc0RldGFpbChpdGVtKSB7XHJcbiAgICAgIGlmICh0aGlzLnNoZWV0TGlzdC5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgdGhpcy5zaGVldExpc3RTaG93ID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIGlmICh0aGlzLnNoZWV0TGlzdC5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIC8vIOebtOaOpeWxleekuuivpuaDhVxyXG4gICAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICAgIHVybDpcclxuICAgICAgICAgICAgXCIuL2RlbGl2ZXJEZXRhaWw/b3JkZXJTbj1cIiArXHJcbiAgICAgICAgICAgIGl0ZW0ub3JkZXJTbiArXHJcbiAgICAgICAgICAgIFwiJmV4cHJlc3NPcmRlclNuPVwiICtcclxuICAgICAgICAgICAgdGhpcy5zaGVldExpc3RbMF0uZXhwcmVzc09yZGVyU24sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBoYW5kbGVDb3B5KHZhbHVlLCB0aXRsZSkge1xyXG4gICAgICB0aGlzLiRjb21tb25KUy5oYW5kbGVDb3B5KHZhbHVlLCB0aXRsZSk7XHJcbiAgICB9LFxyXG4gICAgb25QYWdlSnVtcChpdGVtKSB7XHJcbiAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICB1cmw6IFwiLi9kZWxpdmVyRGV0YWlsP29iaklkPVwiICsgaXRlbSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgT3Zlck9yZGVyKCkge1xyXG4gICAgICAvLyDnoa7orqTmlLbotKdcclxuICAgICAgdW5pLnNob3dNb2RhbCh7XHJcbiAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsXHJcbiAgICAgICAgY29udGVudDogXCLnoa7orqTmlLbotKfvvJ9cIixcclxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XHJcbiAgICAgICAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgICAgICAgb3JkZXJJZDogdGhpcy5vcmRlcklELFxyXG4gICAgICAgICAgICBvcmRlclN0YXR1czogXCIzXCIsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgaWYgKHJlcy5jb25maXJtKSB7XHJcbiAgICAgICAgICAgIHVuaS5zaG93TG9hZGluZygpO1xyXG4gICAgICAgICAgICAkaHR0cFxyXG4gICAgICAgICAgICAgIC5yZXF1ZXN0KHtcclxuICAgICAgICAgICAgICAgIHVybDogXCJib29rL2J1eU9yZGVyL3VwZGF0ZVwiLFxyXG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xyXG4gICAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XHJcbiAgICAgICAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgIHVuaS5oaWRlTG9hZGluZygpO1xyXG4gICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLmlLbotKfmiJDlip9cIixcclxuICAgICAgICAgICAgICAgICAgICBpY29uOiBcInN1Y2Nlc3NcIixcclxuICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbjogMTAwMCxcclxuICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0T3JkZXJMaXN0KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlcy5jYW5jZWwpIHtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcbiAgICAvLyDliIfmjaLorqLljZXnirbmgIFcclxuICAgIG9yZGVyVGFiQ0xpKGUpIHtcclxuICAgICAgdGhpcy5vcmRlckxpc3RUYWIgPSBlO1xyXG4gICAgfSxcclxuICAgIGFzeW5jIGdldENvdXBvbkRldGFpbChpZCkge1xyXG4gICAgICBhd2FpdCB0aGlzLiRodHRwXHJcbiAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgdXJsOiBcImNvbW1vbi9jb3Vwb24vZ2V0Q291cG9uSGlzdG9yeUluZm9cIixcclxuICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaGVhZGVyOiB7XHJcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcclxuICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcy5jb2RlICE9IDApIHJldHVybiB0aGlzLiRjb21tb25KUy5zaG93VG9hc3QocmVzLmVyck1zZyk7XHJcbiAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0LmNvdXBvbkFtb3VudCA9XHJcbiAgICAgICAgICAgIHJlcy5jb3Vwb25IaXN0b3J5LmNvdXBvbkVudGl0eS5jb3Vwb25BbW91bnQ7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goKGUpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKGUpO1xyXG4gICAgICAgICAgdGhpcy4kY29tbW9uSlMuc2hvd1RvYXN0KGUuZXJyTXNnKTtcclxuICAgICAgICB9KTtcclxuICAgIH0sXHJcbiAgICAvLyDojrflj5borqLljZXor6bmg4VcclxuICAgIGFzeW5jIGdldE9yZGVyTGlzdCgpIHtcclxuICAgICAgY29uc29sZS5sb2coXCJ0aGlzLm9yZGVyVHlwZVwiLCB0aGlzLm9yZGVyVHlwZSk7XHJcblxyXG4gICAgICBhd2FpdCB0aGlzLiRodHRwXHJcbiAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgdXJsOiBcImNvbW1vbi9idXlPcmRlci9jb21tb25PcmRlckRldGFpbFwiLFxyXG4gICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIiwgLy8gUE9TVOOAgUdFVOOAgVBVVOOAgURFTEVURe+8jOWFt+S9k+ivtOaYjuafpeeci+WumOaWueaWh+aho1xyXG4gICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICBvcmRlcklkOiB0aGlzLm9yZGVySUQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaGVhZGVyOiB7XHJcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcclxuICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jdXN0b21CdXR0b24gPSBbXTtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwi6K6i5Y2V6K+m5oOFXCIsIHJlcyk7XHJcbiAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0ID0gcmVzLmRhdGEuYnV5T3JkZXI7XHJcbiAgICAgICAgICB0aGlzLmdvb2RzTGlzdCA9IHJlcy5kYXRhLnByb2R1Y3RJbmZvO1xyXG4gICAgICAgICAgdGhpcy5jb25zaWduZWVTaG93ID0gdHJ1ZTtcclxuICAgICAgICAgIC8vIOWtmOWcqOS8mOaDoOWIuOS/oeaBr++8jOWwseafpeivouS8mOaDoOWIuOmbhuS9k+mHkeminVxyXG4gICAgICAgICAgaWYgKHRoaXMub3JkZXJDb250ZXQuY291cG9uSWQgJiYgdGhpcy5vcmRlckNvbnRldC5jb3Vwb25JZCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZ2V0Q291cG9uRGV0YWlsKHRoaXMub3JkZXJDb250ZXQuY291cG9uSWQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDIgJiZcclxuICAgICAgICAgICAgdGhpcy5zaGVldExpc3QubGVuZ3RoID4gMCAmJlxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzICE9IDVcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbUJ1dHRvbi5wdXNoKHtcclxuICAgICAgICAgICAgICB3aWR0aDogXCIxNjBycHhcIixcclxuICAgICAgICAgICAgICB0ZXh0OiBcIuafpeeci+eJqea1gVwiLFxyXG4gICAgICAgICAgICAgIGNvbG9yOiBcIiMzMzNcIixcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IFwiI2YwZjBmMFwiLFxyXG4gICAgICAgICAgICAgIGNvbG9yOiBcIiNmZmZcIixcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tQnV0dG9uLnB1c2goe1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBcIjE2MHJweFwiLFxyXG4gICAgICAgICAgICAgIHRleHQ6IFwi56Gu6K6k5pS26LSnXCIsXHJcblxyXG4gICAgICAgICAgICAgIGNvbG9yOiBcIiNmZmZcIixcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIHRoaXMub3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMCAmJlxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0LnBheW1lbnRNZXRob2QgIT0gM1xyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tQnV0dG9uLnB1c2goe1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBcIjE2MHJweFwiLFxyXG4gICAgICAgICAgICAgIHRleHQ6IFwi57un57ut5LuY5qy+XCIsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMub3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbUJ1dHRvbi5wdXNoKHtcclxuICAgICAgICAgICAgICB3aWR0aDogXCIxNjBycHhcIixcclxuICAgICAgICAgICAgICB0ZXh0OiBcIuWPlua2iOiuouWNlVwiLFxyXG4gICAgICAgICAgICAgIGNvbG9yOiBcIiMzMzNcIixcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IFwiI2YwZjBmMFwiLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAvLyB2YXIgc2Vjb25kcyA9IHJlcy5yZXN1bHQudGltZXN0YW1wICsgMzAgKiA2MCArIDIgICAgLy8g6L+H5pyf5pe26Ze0XHJcbiAgICAgICAgICAvLyB2YXIgbm93U2Vjb25kcyA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwKTtcclxuICAgICAgICAgIC8vIHJlcy5yZXN1bHQub3ZlclRpbWUgPSBzZWNvbmRzIC0gbm93U2Vjb25kc1xyXG5cclxuICAgICAgICAgIC8vdGhpcy51c2VyUmVjb3JkaWQgPSByZXMudXNlclJlY29yZGlkXHJcbiAgICAgICAgICAvLyB0aGlzLnByb2R1Y3RJRHMgPSByZXMuZGF0YS5nb29kc0xpc3QubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAvLyAgIHJldHVybiBpdGVtLmJ1eU9yZGVyUHJvZHVjdElkO1xyXG4gICAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLm9yZGVyQ29udGV0LCd0aGlzLm9yZGVyQ29udGV0JylcclxuICAgICAgICAgIGlmICh0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDApIHtcclxuICAgICAgICAgICAgdGhpcy50aXRsZVN0YXQgPSBcIuW+heaUr+S7mFwiO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDEpIHtcclxuICAgICAgICAgICAgdGhpcy50aXRsZVN0YXQgPSBcIuW+heWPkei0p1wiO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDIpIHtcclxuICAgICAgICAgICAgdGhpcy50aXRsZVN0YXQgPSBcIuW+heaUtui0p1wiO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDMpIHtcclxuICAgICAgICAgICAgdGhpcy50aXRsZVN0YXQgPSBcIuW3suWujOaIkFwiO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID49IDIgJiZcclxuICAgICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5vcmRlclR5cGUgPT0gXCJvcmRlclwiICYmXHJcbiAgICAgICAgICAgIHRoaXMub3JkZXJDb250ZXQuZXhwcmVzc09yZGVyc1xyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hlZXRMaXN0ID0gdGhpcy5vcmRlckNvbnRldC5leHByZXNzT3JkZXJzO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5zaGVldExpc3QgPSBbXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMub3JkZXJDb250ZXQsIFwi6K6i5Y2V6K+m5oOFXCIpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSxcclxuXHJcbiAgICAvLyDlj5bmtojorqLljZVcclxuICAgIGNhbmNlT3JkZXIoKSB7XHJcbiAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgIHRpdGxlOiBcIuaPkOekulwiLFxyXG4gICAgICAgIGNvbnRlbnQ6IFwi56Gu5a6a6KaB5Y+W5raI6K6i5Y2V5ZCX77yfXCIsXHJcbiAgICAgICAgY29uZmlybVRleHQ6IFwi5Y+W5raI6K6i5Y2VXCIsXHJcbiAgICAgICAgY2FuY2VsVGV4dDogXCLogIPomZHkuIDkuItcIixcclxuICAgICAgICBjb25maXJtQ29sb3I6IFwiI2M5NjcxM1wiLFxyXG4gICAgICAgIGNhbmNlbENvbG9yOiBcIiM1NTVcIixcclxuICAgICAgICBzdWNjZXNzOiAocmVzKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzLmNvbmZpcm0pIHtcclxuICAgICAgICAgICAgdGhpcy4kaHR0cFxyXG4gICAgICAgICAgICAgIC5wb3N0KFxyXG4gICAgICAgICAgICAgICAgXCJib29rL2J1eU9yZGVyL2FwcERlbGV0ZT9vcmRlcklkPVwiICsgdGhpcy5vcmRlckNvbnRldC5vcmRlcklkXHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5Y+W5raI6K6i5Y2V5oiQ5YqfXCIsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xyXG4gICAgICAgICAgICAgICAgICB1cmw6IFwiLi9vcmRlckxpc3RcIixcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuXHJcbiAgICAvLyDmlK/ku5hcclxuICAgIGdvUGF5KHBheUl0ZW0pIHtcclxuICAgICAgY29uc29sZS5sb2cocGF5SXRlbSwgXCLorqLljZXmlbDmja5cIik7XHJcbiAgICAgIGlmIChwYXlJdGVtLnBheW1lbnRNZXRob2QgPT0gMikge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwi6Zi/6YeM5pSv5LuYXCIpO1xyXG4gICAgICAgIHNldFBheShcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZVBheTogXCJhbGlwYXlcIixcclxuICAgICAgICAgICAgc3ViamVjdDogXCJvcmRlclwiLFxyXG4gICAgICAgICAgICB0b3RhbEFtb3VudDogcGF5SXRlbS5yZWFsTW9uZXksXHJcbiAgICAgICAgICAgIHR5cGU6IDIsXHJcbiAgICAgICAgICAgIHJlbGV2YW5jZW9pZDogcGF5SXRlbS5vcmRlclNuLFxyXG4gICAgICAgICAgICBjdXN0b21lcklkOiB0aGlzLnVzZXJJbmZvLmlkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jmiJDlip9cIixcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuaUr+S7mOWksei0pVwiLFxyXG4gICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmdldE9yZGVyTGlzdCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDEpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuW+ruS/oeaUr+S7mFwiKTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmlzQW5kb3JpZClcclxuICAgICAgICBpZiAodGhpcy5pc0FuZG9yaWQgPT0gZmFsc2UpIHtcclxuICAgICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgICB0aXRsZTogXCLmj5DnpLpcIixcclxuICAgICAgICAgICAgY29udGVudDogXCLlvojmirHmrYnvvIzoi7nmnpzns7vnu5/mmoLkuI3mlK/mjIHlvq7kv6HmlK/ku5hcIixcclxuICAgICAgICAgICAgc2hvd0NhbmNlbDogZmFsc2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbGV0IGRhdGExID0ge1xyXG4gICAgICAgICAgICBvcmRlclNuOiBwYXlJdGVtLm9yZGVyU24sXHJcbiAgICAgICAgICAgIGJ1eU9yZGVySWQ6IG51bGwsXHJcbiAgICAgICAgICAgIHRvdGFsQW1vdW50OiBwYXlJdGVtLnJlYWxNb25leSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhkYXRhMSwgXCJkYXRhMVwiKTtcclxuICAgICAgICAgIHNldFdYUGF5KGRhdGExLCAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMuc3VjY2Vzcykge1xyXG4gICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwi5pSv5LuY5oiQ5YqfXCIsXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuZXJyTXNnLmluZGV4T2YoXCJVc2VyIGNhbmNlbGVkXCIpICE9IC0xKSB7XHJcbiAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi55So5oi35Y+W5raI5pSv5LuYXCIsXHJcbiAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5pSv5LuY5aSx6LSlXCIsXHJcbiAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICBpbWFnZTogXCIuLi8uLi9zdGF0aWMvaWNvbi9pY19jbG9zZS5wbmdcIixcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKHBheUl0ZW0ucGF5bWVudE1ldGhvZCA9PSAzKSB7XHJcbiAgICAgICAgLy8g6Iu55p6c5YWF5YC8XHJcbiAgICAgICAgY29uc29sZS5sb2coXCLoi7nmnpzkuozmrKHmlK/ku5hcIik7XHJcbiAgICAgICAgdW5pLnNob3dNb2RhbCh7XHJcbiAgICAgICAgICBjb250ZW50OiBcImFwcGxl5YaF6LSt6K6i5Y2V5LiN5pSv5oyB57un57ut5pSv5LuY77yM6K+36YeN5paw5Y+R6LW35pSv5LuY55Sz6K+35bm25a6M5oiQ5pSv5LuYXCIsXHJcbiAgICAgICAgICBjb25maXJtVGV4dDogXCLlpb3nmoRcIixcclxuICAgICAgICAgIHNob3dDYW5jZWw6IGZhbHNlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG5cclxuICAgIC8vIOWVhuWTgeWGheWuuei3s+i9rFxyXG4gICAgZ29EZXRhaWwoaWQsIGRhdGEpIHtcclxuICAgICAgY29uc29sZS5sb2coXCJkYXRhIGF0IGxpbmUgMTI3NzrorqLljZXor6bmg4Xlj4LmlbBcIiwgZGF0YSk7XHJcbiAgICAgIGlmIChkYXRhLmRlbEZsYWcgPT0gLTEpIHtcclxuICAgICAgICB0aGlzLiRjb21tb25KUy5zaG93VG9hc3QoXCLllYblk4Hlt7LkuIvmnrZcIik7XHJcbiAgICAgIH0gZWxzZSBpZiAoZGF0YS5nb29kc1R5cGUgPT0gXCIwNVwiKSB7XHJcbiAgICAgICAgaWYgKGRhdGEuY291cnNlSWRzICYmIGRhdGEuY291cnNlSWRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICAgICAgdXJsOiBgL3BhZ2VzL2NvdXJzZS9jb3Vyc2VEZXRhaWw/aWQ9JHtkYXRhLmNvdXJzZUlkc1swXS5jb3Vyc2VJZH1gLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICB0aXRsZTogXCLor77nqIvmlbDmja7lh7rplJlcIixcclxuICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdW5pLm5hdmlnYXRlVG8oe1xyXG4gICAgICAgICAgLy8gdXJsOiAnLi4vYm9va1Nob3AvY29tbW9kaXR5RGV0YWlsP2lkPScgKyBpdGVtLmlkXHJcbiAgICAgICAgICB1cmw6IGAvcGFnZXMvZ29vZHMvaW5kZXgvaW5kZXg/bmF2VGl0bGU9JycmdGl0bGU9JycmaWQ9JHtpZH1gLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gIH0sXHJcbn07XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxyXG4uZXhwcmVzc2xpc3Qge1xyXG4gIGZvbnQtc2l6ZTogMjhycHg7XHJcbiAgY29sb3I6ICM2NjY7XHJcbiAgLnRpdGxlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLml0ZW0ge1xyXG4gICAgcGFkZGluZzogMzBycHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcclxuICB9XHJcbn1cclxuLm9yZGVyU3RhdGUge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG5cclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDBycHg7XHJcbiAgcGFkZGluZzogNnJweCAxMHJweDtcclxuICBib3JkZXItcmFkaXVzOiAwIDI0cnB4IDI0cnB4IDA7XHJcbiAgZm9udC1zaXplOiAyNnJweDtcclxuICAvLyBmb250LXdlaWdodDogYm9sZDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4ub3JkZXJTdGF0ZTAge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmEyM2M7XHJcbn1cclxuLm9yZGVyU3RhdGUxIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA5ZWZmO1xyXG59XHJcbi5vcmRlclN0YXRlMiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1NmM2YztcclxufVxyXG4ub3JkZXJTdGF0ZTMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM2N2MyM2E7XHJcbn1cclxuLm9yZGVyU3RhdGU1IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzg3ODc4O1xyXG59XHJcbi5ndW9xaSB7XHJcbiAgZm9udC1zaXplOiAyOHJweDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGNvbG9yOiByZWQ7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHJweDtcclxufVxyXG4uc3RhciB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIGhlaWdodDogMjBweDtcclxuICBtYXJnaW4tcmlnaHQ6IDEwcnB4O1xyXG59XHJcbi5zdGFyR3JheSB7XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL3N0YXRpYy9pY29uL3N0YXJfZ3JlZXkucG5nKSBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG59XHJcbi5zdGFyTGlnaHQge1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9zdGF0aWMvaWNvbi9zdGFyX2xpZ2h0LnBuZykgbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxufVxyXG4uY3VJY29uLWVtb2ppIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vc3RhdGljL2JpYW9xaW5nLnBuZykgbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tcmlnaHQ6IDIwcnB4O1xyXG4gIHdpZHRoOiAzMHB4O1xyXG59XHJcbi5jdUljb24ta2V5Ym9hcmQge1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9zdGF0aWMvYmlhb3FpbmcucG5nKSBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAzMHB4O1xyXG59XHJcbi5tYjMwIHtcclxuICBtYXJnaW4tYm90dG9tOiAzMHJweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi50YW5jaHUge1xyXG4gIHBhZGRpbmc6IDQwcnB4IDMwcnB4IDQwcnB4IDMwcnB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLmRwX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMzJycHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHJweDtcclxuICAgIGNvbG9yOiAjNTU1O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG5cclxuICAuZHBfYWRkIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNDBycHg7XHJcbiAgICByaWdodDogMzBycHg7XHJcbiAgICBmb250LXNpemU6IDIycnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZkNjAwNDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBycHg7XHJcbiAgICBwYWRkaW5nOiA1cnB4IDEwcnB4O1xyXG5cclxuICAgIC51LWljb24ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNXJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5hZGRyZXNzSXRlbSB7XHJcbiAgICBib3JkZXI6IDJweCBkYXNoZWQgI2Q5ZDlkOTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcnB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgcGFkZGluZzogMjBycHggMTBycHg7XHJcbiAgICBtYXJnaW46IDI1cnB4IDAgMCAwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblxyXG4gICAgLmFkZHJDb250ZW50IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDQwcnB4O1xyXG4gICAgICBmbGV4OiAxO1xyXG5cclxuICAgICAgLmFkZHJDb250ZW50VG9wIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxNXJweCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLnVzZXJOYW1lIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzVycHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudXNlclRlbCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDI1cnB4O1xyXG4gICAgICAgICAgY29sb3I6ICM4ODg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudXNlck1vcmVuIHtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZDYwMDQ7XHJcbiAgICAgICAgICBjb2xvcjogI2ZkNjAwNDtcclxuICAgICAgICAgIHBhZGRpbmc6IDNycHggMTBycHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIycnB4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBycHg7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNob29zZUNoZWNrIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogM3JweDtcclxuICAgICAgICAgIHJpZ2h0OiA2cnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmFkZHJDb250ZW50Qm90dG9tIHtcclxuICAgICAgICBmb250LXNpemU6IDMycnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWRkcmVzc0l0ZW0uYWRkSXRlbV9zdHlsZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICNmZDYwMDQ7XHJcbiAgfVxyXG5cclxuICAueW91aHVpSXRlbSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBycHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwYWRkaW5nOiAyMHJweCAxMHJweDtcclxuICAgIG1hcmdpbjogMjVycHggMCAwIDA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMzBycHg7XHJcbiAgfVxyXG5cclxuICAueW91aHVpSXRlbSA+IHZpZXcge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAueW91aHVpSXRlbS55b3VJdGVtX3N0eWxlIHtcclxuICAgIGJvcmRlci1jb2xvcjogI2ZkNjAwNDtcclxuICB9XHJcbn1cclxuLm9wU2hvdSB7XHJcbiAgYm9yZGVyLWNvbG9yOiAkdW5pLWNvbG9yLXN1Y2Nlc3MgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFkRGVmYXVsdCB7XHJcbiAgcGFkZGluZzogMzBycHggNTBycHggMzBycHggMTAwcnB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XHJcbiAgYm9yZGVyLWJvdHRvbTogMnB4IGRhc2hlZCAjYjJlOWQ3O1xyXG4gIG1hcmdpbjogMCAwIDVycHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5kZWZhbFRvcCB7XHJcbiAgICAudXNlck5hbWUge1xyXG4gICAgICBmb250LXNpemU6IDM1cnB4O1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHJweDtcclxuICAgIH1cclxuXHJcbiAgICAudXNlclRlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjVycHg7XHJcbiAgICAgIGNvbG9yOiAjODg4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRlZmFsQm90dG9tIHtcclxuICAgIC51c2VyQWRkcmVzcyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzJycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kZWZhbExlZnQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMzBycHg7XHJcbiAgICB0b3A6IDU1cnB4O1xyXG4gIH1cclxufVxyXG5cclxuLm9yZGVyTGlzdCB7XHJcbiAgcGFkZGluZzogMjBycHg7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcblxyXG4gIC5vcmRlckl0ZW0ge1xyXG4gICAgcGFkZGluZzogMzBycHggMHJweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHJweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcnB4O1xyXG5cclxuICAgIC5vcmRlckNvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiAyMHJweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBycHg7XHJcblxyXG4gICAgICBpbWFnZSB7XHJcbiAgICAgICAgd2lkdGg6IDE1MHJweDtcclxuICAgICAgICBoZWlnaHQ6IDE4MHJweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcnB4O1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICAgIC5nb29kc19pbmZvIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTgwcnB4KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgfVxyXG4gICAgICAuaXRlbUppYW4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAub3JkZXJUaXRsZSB7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzBycHg7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHJweCAwO1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICB3aWR0aDogNDEwcnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm9yZGVyUHJpY2Uge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyOHJweDtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgIHdpZHRoOiA2MHJweDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcmFsbHByaSB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgbWFyZ2luOiAxMHJweCAwO1xyXG4gICAgICAvLyBwYWRkaW5nOiAzMHJweCAwIDAgMDtcclxuICAgICAgZm9udC1zaXplOiAyOHJweDtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJSZWFsIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjhycHg7XHJcbiAgICAgIG1hcmdpbjogMTBycHggMDtcclxuICAgICAgLy8gcGFkZGluZzogMjhycHggMCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVyWXVuZiB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgZm9udC1zaXplOiAyOHJweDtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJPcGVyIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbjogNDBycHggMjBycHggMCAwO1xyXG5cclxuICAgICAgdmlldyB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcnB4IDA7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxNjBycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXJweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcEZpeCB7XHJcbiAgICAgICAgY29sb3I6ICM1NTU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHJweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm9wQ2FuIHtcclxuICAgICAgICBjb2xvcjogI2M5NjcxMztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJhMDBiO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcnB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5rZWZ1IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uY29weUNvZGUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW4tbGVmdDogMjBycHg7XHJcbn1cclxuLmRlbGl2ZXJDbnRlbnQge1xyXG4gIHBhZGRpbmc6IDMycnB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcnB4O1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xyXG4gIGZvbnQtc2l6ZTogMjhycHg7XHJcbn1cclxuXHJcbi5mbGV4Ym94IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uaW1nX2ljb24ge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLm1vcmVCdG5GIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDMwcnB4O1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gIC8vIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LDI1NSwyNTUsMSkwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuNSk2NiUsIHJnYmEoMjU1LDI1NSwyNTUsMjU1KTk5JSk7LyogU2FmYXJp44CBQ2hyb21lICovXHJcblxyXG4gIC8vIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LDI1NSwyNTUsMjU1KSxyZ2JhKDI1NSwyNTUsMjU1LDEpKTsvKiDpu5jorqTmuJDlj5jkvY3nva7ku47kuIrlvoDkuIsgKi9cclxufVxyXG5cclxuLnd1bGl1IHtcclxuICAudGltZSB7XHJcbiAgICBjb2xvcjogIzg4ODtcclxuICB9XHJcblxyXG4gIC5tb3JlQnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gIH1cclxufVxyXG4uYWRkcmVzc19ib3gge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgLy8gcGFkZGluZzogMjBycHg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIC5vcmRlcl90b3Age1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcnB4O1xyXG4gIH1cclxuXHJcbiAgLnVzZXJfaW5mbyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi10b3A6IDEwcnB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAubmFtZSB7XHJcbiAgICAgIGNvbG9yOiAjODM4MjgyO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC50ZWwge1xyXG4gICAgICBjb2xvcjogIzgzODI4MjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXJyaXVsdW1fdGl0bGUge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBmb250LXNpemU6IDM0cnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHJweDtcclxuICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgbGluZS1oZWlnaHQ6IDUwcnB4O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDJycHg7XHJcbiAgfVxyXG5cclxuICAubm9ybWFsX2JveCB7XHJcbiAgICBtYXJnaW4tbGVmdDogNXJweDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBycHgpO1xyXG4gIH1cclxuXHJcbiAgLmdvb2RzX2JveCB7XHJcbiAgICBwYWRkaW5nOiAyMHJweCAyMHJweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLnJpZ2h0QXJyb3cge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDQwcnB4O1xyXG4gICAgd2lkdGg6IDQwcnB4O1xyXG4gICAgaGVpZ2h0OiA0MHJweDtcclxuICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIC8vIHJpZ2h0OiAzMHJweDtcclxuICB9XHJcbn1cclxuLmZlbmcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XHJcbiAgbWFyZ2luOiAwcnB4IDIycnB4IDAgMDtcclxuICBoZWlnaHQ6IDE0MHJweCAhaW1wb3J0YW50O1xyXG4gIHdpZHRoOiAxNDBycHggIWltcG9ydGFudDtcclxuICBmbG9hdDogbGVmdDtcclxuICBib3JkZXItcmFkaXVzOiAxNHJweDtcclxuICAvLyBib3JkZXI6IDFycHggc29saWQgI2U5ZTllOTtcclxufVxyXG4uYm9va25hbWVsZWZ0IHtcclxuICBmb250LXNpemU6IDMycnB4O1xyXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBycHgpO1xyXG4gIGNvbG9yOiAjMDcwNzA3O1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjVycHg7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4ub3JkZXJfaXRlbSB7XHJcbiAgcGFkZGluZzogMjBycHggMjBycHg7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XHJcbn1cclxuL2RlZXAvLmdvb2RzX25hdl9ib3gge1xyXG4gIC5sZWZ0IHtcclxuICAgIG1hcmdpbi10b3A6IC0xMHJweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbn1cclxuLmRlbGlzdGVkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgLy8gcGFkZGluZzogMnJweCA0cnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3JkZXItcmFkaXVzOiA0cnB4O1xyXG4gIGZvbnQtc2l6ZTogMjJycHg7XHJcbiAgd2lkdGg6IDEwMHJweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgaGVpZ2h0OiA0MHJweDtcclxuICBsaW5lLWhlaWdodDogNDBycHg7XHJcbiAgbGVmdDogY2FsYygoMTAwJSAtIDEwMHJweCkgLyAyKTtcclxuICB0b3A6IGNhbGMoKDEwMCUgLSA0MHJweCkgLyAyKTtcclxufVxyXG4ub3JkZXJfYm90dG9tX2JveCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDIwcnB4O1xyXG5cclxuICAubnVtYmVyIHtcclxuICAgIGZvbnQtc2l6ZTogMjhycHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cnB4O1xyXG4gICAgbWFyZ2luLXRvcDogNXJweDtcclxuICB9XHJcblxyXG4gIC5wcmljZSB7XHJcbiAgICAudG90YWwge1xyXG4gICAgICBmb250LXNpemU6IDM4cnB4O1xyXG4gICAgICBjb2xvcjogcmVkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG48L3N0eWxlPlxyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///527\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 47));\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 125));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 49));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _music = _interopRequireDefault(__webpack_require__(/*! @/components/music.vue */ 89));\nvar _bkhumorEmojiplus = _interopRequireDefault(__webpack_require__(/*! @/bkhumor-emojiplus/components/bkhumor-emojiplus/bkhumor-emojiplus.vue */ 513));\nvar _requestConfig = _interopRequireDefault(__webpack_require__(/*! @/config/requestConfig.js */ 95));\nvar _utils = __webpack_require__(/*! @/config/utils */ 246);\nvar _vuex = __webpack_require__(/*! vuex */ 63);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n data: function data() {\n return {\n A: {\n orderId: 15316,\n orderSn: \"20241209141541253186600376645070\",\n userId: 13487,\n userName: null,\n statusNum: null,\n shippingUser: null,\n userPhone: \"18834844847\",\n province: null,\n city: null,\n district: null,\n address: null,\n come: 2,\n paymentMethod: \"3\",\n orderMoney: 39,\n districtMoney: 0,\n realMoney: 39,\n shippingMoney: null,\n shippingCompName: null,\n shippingSn: null,\n jfDeduction: 0,\n createTime: \"2024-12-09 14:15:41\",\n shippingTime: null,\n orderStatus: \"0\",\n successTime: null,\n couponId: null,\n couponName: null,\n delFlag: 0,\n products: null,\n productList: null,\n buyType: null,\n orderType: \"point\",\n expNo: null,\n isSend: null,\n vipBuyConfigId: 0,\n addressId: null,\n remark: null,\n orderCode: null,\n paymentDate: null,\n productId: \"21\",\n recordId: null,\n timestamp: null,\n user: null,\n expressList: null,\n addressModified: 0,\n consigneeVo: null,\n appName: null,\n bookBuyConfigEntity: {\n priceTypeId: 21,\n type: \"point\",\n qudao: \"IOS\",\n realMoney: \"45\",\n money: \"39\",\n givejf: \"0\",\n month: null,\n description: \"\",\n effective: 0,\n startTime: null,\n endTime: null\n },\n vipBuyConfigEntity: null\n },\n iconList: [{\n text: \"联系客服\",\n iconType: 1,\n icon: \"server-fill\",\n infoColor: \"#666\"\n }],\n userRecordid: null,\n // 用户的评价状态\n playData: {},\n title: \"Hello\",\n isShowEmj: false,\n emojiIcon: \"cuIcon-emoji\",\n message: \"\",\n windowWidth: 0,\n windowHeight: 500,\n Pform: {\n // 评价表单\n star: 0,\n comment: \"\",\n img: [],\n html: \"\"\n },\n pingID: null,\n productID: null,\n // 订单商品id\n imageStyles: {\n width: 64,\n height: 64,\n border: {\n color: \"#89aa7d\",\n width: 2,\n style: \"dashed\",\n radius: \"2px\"\n }\n },\n pingjiaShow: false,\n logisticsData: [],\n // 快递信息列表\n titleStat: \"\",\n orderID: 0,\n orderSn: \"\",\n orderType: \"\",\n orderContet: {},\n goodsList: [],\n deliverDetails: [{\n Traces: []\n }],\n // 物流详情信息全部\n deliverDetailsLength: null,\n emoji: [],\n Files: [],\n pjType: \"\",\n sheetList: [],\n // 面单数据\n consigneeShow: false,\n sheetListShow: false,\n customButton: []\n };\n },\n onLoad: function onLoad(e) {\n this.windowWidth = uni.getSystemInfoSync().windowWidth;\n this.orderID = e.orderId;\n this.orderType = e.orderType;\n this.orderSn = e.orderSn;\n __f__(\"log\", this.orderID, \"this.orderID\", \" at pages/bookShop/orderLCont.vue:735\");\n },\n onHide: function onHide() {\n this.sheetList = [];\n },\n onShow: function onShow() {\n this.getOrderList();\n },\n components: {\n emotion: _bkhumorEmojiplus.default,\n musicPlay: _music.default\n },\n computed: _objectSpread({}, (0, _vuex.mapState)([\"userInfo\"])),\n methods: {\n gotoWorkOrder: function gotoWorkOrder() {\n uni.navigateTo({\n url: \"/pages/user/workOrder?name=order\"\n });\n },\n goBuyJie: function goBuyJie(data) {\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 __f__(\"log\", \"index at line 532:\", data, \" at pages/bookShop/orderLCont.vue:758\");\n if (data.text == \"继续付款\") {\n _this.goPay(_this.orderContet);\n } else if (data.text == \"取消订单\") {\n _this.canceOrder();\n } else if (data.text == \"确认收货\") {\n _this.OverOrder();\n } else if (data.text == \"查看物流\") {\n _this.seeExpressDetail(_this.orderContet);\n }\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n clickIcon: function clickIcon(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 __f__(\"log\", \"index at line 532:\", data, \" at pages/bookShop/orderLCont.vue:770\");\n if (data.text == \"联系客服\") {\n _this2.kefu();\n }\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n // 复制到剪切板\n copyData: function copyData(data) {\n uni.setClipboardData({\n data: data,\n success: function success() {\n __f__(\"log\", \"success\", \" at pages/bookShop/orderLCont.vue:780\");\n }\n });\n },\n seeExpressDetails: function seeExpressDetails(item) {\n __f__(\"log\", item, \"item\", \" at pages/bookShop/orderLCont.vue:785\");\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + this.orderContet.orderSn + \"&expressOrderSn=\" + item.expressOrderSn + \"&expressCompanyCode=\" + item.expressCompanyCode + \"&expressCompanyName=\" + item.expressCompanyName\n });\n },\n // 倒计时回调\n countDown: function countDown() {\n __f__(\"log\", \"重新刷新订单\", \" at pages/bookShop/orderLCont.vue:800\");\n this.getOrderList();\n },\n // 获得输入的表情数组\n handleEmj: function handleEmj(i) {\n __f__(\"log\", i, \"i---------\", \" at pages/bookShop/orderLCont.vue:805\");\n this.inputValue = i;\n // console.log(this.inputValue);\n if (i.emotioni == \"[em_98]\") {\n //匹配最后一个表情符号并删除11。\n this.Pform.comment = this.Pform.comment.replace(/(\\[[^\\]]+\\]|[\\s\\S])$/, \"\");\n if (this.emoji.length > 0) {\n this.emoji = this.emoji.slice(0, -1);\n }\n } else {\n this.emoji.push({\n tag: i.emotion,\n name: i.emotioni\n });\n // console.log(this.emoji,'this.emoji')\n this.Pform.comment += i.emotioni;\n /// this.Pform.html += i.emotion\n }\n },\n showZhuiping: function showZhuiping(val) {\n this.pjType = \"zhuiping\";\n this.pingjiaShow = true;\n this.productID = val;\n this.pingID = pingid;\n },\n // 追加评论\n zhuiping: function zhuiping() {\n var _this3 = this;\n var data = {\n oid: this.userRecordid,\n userId: this.userInfo.id,\n bookid: this.productID,\n conTent: this.Pform.comment\n };\n __f__(\"log\", data, \"data\", \" at pages/bookShop/orderLCont.vue:838\");\n _requestConfig.default.request({\n url: \"user/followUp/userFollowUp\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"追评成功!\",\n icon: \"success\"\n });\n _this3.pingjiaShow = false;\n _this3.pjType = \"\";\n _this3.productID = null, _this3.userRecordid = null;\n _this3.Pform.comment = \"\";\n _this3.Pform.html = \"\";\n _this3.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n },\n textareaBInput: function textareaBInput(e) {\n __f__(\"log\", e, \"e\", \" at pages/bookShop/orderLCont.vue:870\");\n this.Pform.comment = e.detail.value;\n /// this.Pform.html = e.detail.value\n },\n showEmj: function showEmj() {\n var bool = !this.isShowEmj;\n if (bool) {\n this.emojiIcon = \"cuIcon-keyboard\";\n } else {\n this.emojiIcon = \"cuIcon-emoji\";\n }\n this.isShowEmj = bool;\n this.$emit(\"show\");\n },\n InputBlur: function InputBlur(e) {},\n InputFocus: function InputFocus(e) {\n this.isShowEmj = false;\n this.emojiIcon = \"cuIcon-emoji\";\n this.$emit(\"foc\");\n },\n // end\n deleteImg: function deleteImg(e) {\n // var arr = this.Pform.img.slice(0,-1)\n this.Pform.img.pop();\n // console.log('删除文件',arr)\n __f__(\"log\", this.Pform, \" at pages/bookShop/orderLCont.vue:897\");\n },\n getStar: function getStar(i) {\n this.Pform.star = i;\n },\n select: function select(e) {\n var _this$Pform$img;\n __f__(\"log\", \"选择文件:\", e, \" at pages/bookShop/orderLCont.vue:903\");\n var arr = e.tempFiles.map(function (item) {\n return {\n url: item.url,\n name: item.name\n };\n });\n this.Pform.img = (_this$Pform$img = this.Pform.img).concat.apply(_this$Pform$img, (0, _toConsumableArray2.default)(arr));\n //this.Pform.img = arr\n __f__(\"log\", this.Pform, \"img\", \" at pages/bookShop/orderLCont.vue:909\");\n },\n upSuccess: function upSuccess(e) {\n __f__(\"log\", e, \" at pages/bookShop/orderLCont.vue:912\");\n },\n // 获取html格式的评论1\n getHtmlComment: function getHtmlComment() {\n // 格式化html\n var ss = this.Pform.comment;\n if (this.emoji.length > 0) {\n for (var i = 0; i < this.emoji.length; i++) {\n if (this.Pform.comment.indexOf(this.emoji[i].name) !== -1) {\n //var re = new RegExp(this.emoji[0].name,\"g\"); //定义正则表达式\n //第一个参数是要替换掉的内容,第二个参数\"g\"表示替换全部(global)。\n // ss = ss.replace(re, ); //第一个参数是正则表达式。\n ss = ss.replace(this.emoji[i].name, this.emoji[i].tag);\n // console.log(ss)\n }\n }\n\n this.Pform.html = ss;\n } else {\n this.Pform.html = this.Pform.comment;\n }\n //console.log(this.Pform.html,'this.Pform.html')\n },\n deletePic: function deletePic() {\n var that = this;\n that.Pform.img.splice(0, 1);\n //console.log(that.Pform.img)\n },\n afterRead: function afterRead(e) {\n //console.log(e)\n var that = this;\n for (var i = 0; i < e.file.length; i++) {\n //console.log(i,e.file[i].url)\n uni.uploadFile({\n url: this.$baseUrl + \"oss/fileoss\",\n filePath: e.file[i].url,\n //files:e.file,\n name: \"file\",\n formData: {},\n success: function success(res) {\n that.Pform.img.push({\n url: JSON.parse(res.data).url\n });\n }\n });\n }\n },\n closePingjia: function closePingjia() {\n this.pingjiaShow = false;\n this.Pform.comment = \"\";\n this.Pform.html = \"\";\n this.emoji = [];\n },\n // 提交评价\n submitPJ: function submitPJ() {\n var _this4 = this;\n if (this.Pform.comment != \"\") {\n var data = {\n userid: this.userInfo.id,\n orderSn: this.orderSn,\n bookid: this.productID,\n // 'content': this.Pform.html,\n content: this.Pform.comment,\n starLevel: this.Pform.star,\n images: this.Pform.img\n // 'emoji':this.emoji // 表情数组\n };\n // console.log(data,'data')\n _requestConfig.default.request({\n url: \"buy/record/UserRecordcomment\",\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 if (res.code == 0) {\n uni.showToast({\n title: \"评价成功!\",\n icon: \"success\"\n });\n _this4.pingjiaShow = false;\n _this4.Pform.comment = \"\";\n _this4.Pform.html = \"\";\n _this4.emoji = [];\n setTimeout(function () {\n uni.navigateBack({\n delta: 1\n });\n }, 2000);\n }\n });\n } else {\n uni.showToast({\n title: \"请先输入您的评价内容 !\",\n icon: \"none\"\n });\n }\n },\n // 添加评价\n pingji: function pingji(id) {\n __f__(\"log\", id, \" at pages/bookShop/orderLCont.vue:1015\");\n this.pjType = \"\";\n this.productID = id;\n this.pingjiaShow = true;\n },\n // 联系客服\n kefu: function kefu() {\n uni.showModal({\n title: \"提示\",\n content: \"微信号:yilujiankangkefu\"\n // success: function (res) {\n // \tif (res.confirm) {\n // \t\tuni.makePhoneCall({\n // \t\t\tphoneNumber: '022-24142321' //仅为示例\n // \t\t});\n // \t} else if (res.cancel) {\n\n // \t}\n // }\n });\n },\n // 查看物流\n seeExpressDetail: function seeExpressDetail(item) {\n if (this.sheetList.length > 1) {\n this.sheetListShow = true;\n } else if (this.sheetList.length == 1) {\n // 直接展示详情\n uni.navigateTo({\n url: \"./deliverDetail?orderSn=\" + item.orderSn + \"&expressOrderSn=\" + this.sheetList[0].expressOrderSn\n });\n }\n },\n handleCopy: function handleCopy(value, title) {\n this.$commonJS.handleCopy(value, title);\n },\n onPageJump: function onPageJump(item) {\n uni.navigateTo({\n url: \"./deliverDetail?objId=\" + item\n });\n },\n OverOrder: function OverOrder() {\n var _this5 = this;\n // 确认收货\n uni.showModal({\n title: \"提示\",\n content: \"确认收货?\",\n success: function success(res) {\n var data = {\n orderId: _this5.orderID,\n orderStatus: \"3\"\n };\n if (res.confirm) {\n uni.showLoading();\n _requestConfig.default.request({\n url: \"book/buyOrder/update\",\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 if (res.code == 0) {\n uni.hideLoading();\n uni.showToast({\n title: \"收货成功\",\n icon: \"success\",\n duration: 1000\n });\n _this5.getOrderList();\n }\n });\n } else if (res.cancel) {}\n }\n });\n },\n // 切换订单状态\n orderTabCLi: function orderTabCLi(e) {\n this.orderListTab = e;\n },\n getCouponDetail: function getCouponDetail(id) {\n var _this6 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return _this6.$http.request({\n url: \"common/coupon/getCouponHistoryInfo\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: {\n id: id\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(res) {\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n if (!(res.code != 0)) {\n _context3.next = 2;\n break;\n }\n return _context3.abrupt(\"return\", _this6.$commonJS.showToast(res.errMsg));\n case 2:\n _this6.orderContet.couponAmount = res.couponHistory.couponEntity.couponAmount;\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }()).catch(function (e) {\n __f__(\"log\", e, \" at pages/bookShop/orderLCont.vue:1120\");\n _this6.$commonJS.showToast(e.errMsg);\n });\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n },\n // 获取订单详情\n getOrderList: function getOrderList() {\n var _this7 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {\n return _regenerator.default.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n __f__(\"log\", \"this.orderType\", _this7.orderType, \" at pages/bookShop/orderLCont.vue:1126\");\n _context6.next = 3;\n return _this7.$http.request({\n url: \"common/buyOrder/commonOrderDetail\",\n method: \"POST\",\n // POST、GET、PUT、DELETE,具体说明查看官方文档\n data: {\n orderId: _this7.orderID\n },\n header: {\n //默认 无 说明:请求头\n \"Content-Type\": \"application/json\"\n }\n }).then( /*#__PURE__*/function () {\n var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(res) {\n return _regenerator.default.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _this7.customButton = [];\n __f__(\"log\", \"订单详情\", res, \" at pages/bookShop/orderLCont.vue:1142\");\n _this7.orderContet = res.data.buyOrder;\n _this7.goodsList = res.data.productInfo;\n _this7.consigneeShow = true;\n // 存在优惠券信息,就查询优惠券集体金额\n if (!(_this7.orderContet.couponId && _this7.orderContet.couponId != null)) {\n _context5.next = 8;\n break;\n }\n _context5.next = 8;\n return _this7.getCouponDetail(_this7.orderContet.couponId);\n case 8:\n if (_this7.orderContet.orderStatus == 2 && _this7.sheetList.length > 0 && _this7.orderContet.orderStatus != 5) {\n _this7.customButton.push((0, _defineProperty2.default)({\n width: \"160rpx\",\n text: \"查看物流\",\n color: \"#333\",\n backgroundColor: \"#f0f0f0\"\n }, \"color\", \"#fff\"));\n }\n if (_this7.orderContet.orderStatus == 2) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"确认收货\",\n color: \"#fff\"\n });\n }\n if (_this7.orderContet.orderStatus == 0 && _this7.orderContet.paymentMethod != 3) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"继续付款\"\n });\n }\n if (_this7.orderContet.orderStatus == 0) {\n _this7.customButton.push({\n width: \"160rpx\",\n text: \"取消订单\",\n color: \"#333\",\n backgroundColor: \"#f0f0f0\"\n });\n }\n\n // var seconds = res.result.timestamp + 30 * 60 + 2 // 过期时间\n // var nowSeconds = Math.floor(new Date().getTime() / 1000);\n // res.result.overTime = seconds - nowSeconds\n\n //this.userRecordid = res.userRecordid\n // this.productIDs = res.data.goodsList.map((item) => {\n // return item.buyOrderProductId;\n // });\n // console.log(this.orderContet,'this.orderContet')\n if (_this7.orderContet.orderStatus == 0) {\n _this7.titleStat = \"待支付\";\n } else if (_this7.orderContet.orderStatus == 1) {\n _this7.titleStat = \"待发货\";\n } else if (_this7.orderContet.orderStatus == 2) {\n _this7.titleStat = \"待收货\";\n } else if (_this7.orderContet.orderStatus == 3) {\n _this7.titleStat = \"已完成\";\n }\n if (_this7.orderContet.orderStatus >= 2 && _this7.orderContet.orderType == \"order\" && _this7.orderContet.expressOrders) {\n _this7.sheetList = _this7.orderContet.expressOrders;\n } else {\n _this7.sheetList = [];\n }\n __f__(\"log\", _this7.orderContet, \"订单详情\", \" at pages/bookShop/orderLCont.vue:1216\");\n case 15:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n return function (_x2) {\n return _ref2.apply(this, arguments);\n };\n }());\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }))();\n },\n // 取消订单\n canceOrder: function canceOrder() {\n var _this8 = this;\n uni.showModal({\n title: \"提示\",\n content: \"确定要取消订单吗?\",\n confirmText: \"取消订单\",\n cancelText: \"考虑一下\",\n confirmColor: \"#c96713\",\n cancelColor: \"#555\",\n success: function success(res) {\n if (res.confirm) {\n _this8.$http.post(\"book/buyOrder/appDelete?orderId=\" + _this8.orderContet.orderId).then(function (res) {\n uni.showToast({\n icon: \"none\",\n title: \"取消订单成功\"\n });\n uni.switchTab({\n url: \"./orderList\"\n });\n });\n }\n }\n });\n },\n // 支付\n goPay: function goPay(payItem) {\n var _this9 = this;\n __f__(\"log\", payItem, \"订单数据\", \" at pages/bookShop/orderLCont.vue:1251\");\n if (payItem.paymentMethod == 2) {\n __f__(\"log\", \"阿里支付\", \" at pages/bookShop/orderLCont.vue:1253\");\n (0, _utils.setPay)({\n typePay: \"alipay\",\n subject: \"order\",\n totalAmount: payItem.realMoney,\n type: 2,\n relevanceoid: payItem.orderSn,\n customerId: this.userInfo.id\n }, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n _this9.getOrderList();\n });\n } else if (payItem.paymentMethod == 1) {\n __f__(\"log\", \"微信支付\", \" at pages/bookShop/orderLCont.vue:1279\");\n // console.log(this.isAndorid)\n if (this.isAndorid == false) {\n uni.showModal({\n title: \"提示\",\n content: \"很抱歉,苹果系统暂不支持微信支付\",\n showCancel: false\n });\n return false;\n } else {\n var data1 = {\n orderSn: payItem.orderSn,\n buyOrderId: null,\n totalAmount: payItem.realMoney\n };\n __f__(\"log\", data1, \"data1\", \" at pages/bookShop/orderLCont.vue:1294\");\n (0, _utils.setWXPay)(data1, function (res) {\n if (res.success) {\n uni.showToast({\n title: \"支付成功\"\n });\n } else {\n __f__(\"log\", res, \" at pages/bookShop/orderLCont.vue:1301\");\n if (res.data.errMsg.indexOf(\"User canceled\") != -1) {\n uni.showToast({\n title: \"用户取消支付\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n } else {\n uni.showToast({\n title: \"支付失败\",\n icon: \"none\",\n image: \"../../static/icon/ic_close.png\"\n });\n }\n }\n });\n }\n } else if (payItem.paymentMethod == 3) {\n // 苹果充值\n __f__(\"log\", \"苹果二次支付\", \" at pages/bookShop/orderLCont.vue:1320\");\n uni.showModal({\n content: \"apple内购订单不支持继续支付,请重新发起支付申请并完成支付\",\n confirmText: \"好的\",\n showCancel: false\n });\n }\n },\n // 商品内容跳转\n goDetail: function goDetail(id, data) {\n __f__(\"log\", \"data at line 1277:订单详情参数\", data, \" at pages/bookShop/orderLCont.vue:1331\");\n if (data.delFlag == -1) {\n this.$commonJS.showToast(\"商品已下架\");\n } else if (data.goodsType == \"05\") {\n if (data.courseIds && data.courseIds.length > 0) {\n uni.navigateTo({\n url: \"/pages/course/courseDetail?id=\".concat(data.courseIds[0].courseId)\n });\n } else {\n uni.showToast({\n title: \"课程数据出错\",\n icon: \"none\"\n });\n }\n } else {\n uni.navigateTo({\n // url: '../bookShop/commodityDetail?id=' + item.id\n url: \"/pages/goods/index/index?navTitle=''&title=''&id=\".concat(id)\n });\n }\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 62)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvYm9va1Nob3Avb3JkZXJMQ29udC52dWUiXSwibmFtZXMiOlsiZGF0YSIsIkEiLCJvcmRlcklkIiwib3JkZXJTbiIsInVzZXJJZCIsInVzZXJOYW1lIiwic3RhdHVzTnVtIiwic2hpcHBpbmdVc2VyIiwidXNlclBob25lIiwicHJvdmluY2UiLCJjaXR5IiwiZGlzdHJpY3QiLCJhZGRyZXNzIiwiY29tZSIsInBheW1lbnRNZXRob2QiLCJvcmRlck1vbmV5IiwiZGlzdHJpY3RNb25leSIsInJlYWxNb25leSIsInNoaXBwaW5nTW9uZXkiLCJzaGlwcGluZ0NvbXBOYW1lIiwic2hpcHBpbmdTbiIsImpmRGVkdWN0aW9uIiwiY3JlYXRlVGltZSIsInNoaXBwaW5nVGltZSIsIm9yZGVyU3RhdHVzIiwic3VjY2Vzc1RpbWUiLCJjb3Vwb25JZCIsImNvdXBvbk5hbWUiLCJkZWxGbGFnIiwicHJvZHVjdHMiLCJwcm9kdWN0TGlzdCIsImJ1eVR5cGUiLCJvcmRlclR5cGUiLCJleHBObyIsImlzU2VuZCIsInZpcEJ1eUNvbmZpZ0lkIiwiYWRkcmVzc0lkIiwicmVtYXJrIiwib3JkZXJDb2RlIiwicGF5bWVudERhdGUiLCJwcm9kdWN0SWQiLCJyZWNvcmRJZCIsInRpbWVzdGFtcCIsInVzZXIiLCJleHByZXNzTGlzdCIsImFkZHJlc3NNb2RpZmllZCIsImNvbnNpZ25lZVZvIiwiYXBwTmFtZSIsImJvb2tCdXlDb25maWdFbnRpdHkiLCJwcmljZVR5cGVJZCIsInR5cGUiLCJxdWRhbyIsIm1vbmV5IiwiZ2l2ZWpmIiwibW9udGgiLCJkZXNjcmlwdGlvbiIsImVmZmVjdGl2ZSIsInN0YXJ0VGltZSIsImVuZFRpbWUiLCJ2aXBCdXlDb25maWdFbnRpdHkiLCJpY29uTGlzdCIsInRleHQiLCJpY29uVHlwZSIsImljb24iLCJpbmZvQ29sb3IiLCJ1c2VyUmVjb3JkaWQiLCJwbGF5RGF0YSIsInRpdGxlIiwiaXNTaG93RW1qIiwiZW1vamlJY29uIiwibWVzc2FnZSIsIndpbmRvd1dpZHRoIiwid2luZG93SGVpZ2h0IiwiUGZvcm0iLCJzdGFyIiwiY29tbWVudCIsImltZyIsImh0bWwiLCJwaW5nSUQiLCJwcm9kdWN0SUQiLCJpbWFnZVN0eWxlcyIsIndpZHRoIiwiaGVpZ2h0IiwiYm9yZGVyIiwiY29sb3IiLCJzdHlsZSIsInJhZGl1cyIsInBpbmdqaWFTaG93IiwibG9naXN0aWNzRGF0YSIsInRpdGxlU3RhdCIsIm9yZGVySUQiLCJvcmRlckNvbnRldCIsImdvb2RzTGlzdCIsImRlbGl2ZXJEZXRhaWxzIiwiVHJhY2VzIiwiZGVsaXZlckRldGFpbHNMZW5ndGgiLCJlbW9qaSIsIkZpbGVzIiwicGpUeXBlIiwic2hlZXRMaXN0IiwiY29uc2lnbmVlU2hvdyIsInNoZWV0TGlzdFNob3ciLCJjdXN0b21CdXR0b24iLCJvbkxvYWQiLCJlIiwidW5pIiwiZ2V0U3lzdGVtSW5mb1N5bmMiLCJvbkhpZGUiLCJvblNob3ciLCJnZXRPcmRlckxpc3QiLCJjb21wb25lbnRzIiwiZW1vdGlvbiIsIm11c2ljUGxheSIsImNvbXB1dGVkIiwibWFwU3RhdGUiLCJtZXRob2RzIiwiZ290b1dvcmtPcmRlciIsIm5hdmlnYXRlVG8iLCJ1cmwiLCJnb0J1eUppZSIsImdvUGF5IiwiY2FuY2VPcmRlciIsIk92ZXJPcmRlciIsInNlZUV4cHJlc3NEZXRhaWwiLCJjbGlja0ljb24iLCJrZWZ1IiwiY29weURhdGEiLCJzZXRDbGlwYm9hcmREYXRhIiwic3VjY2VzcyIsInNlZUV4cHJlc3NEZXRhaWxzIiwiaXRlbSIsImV4cHJlc3NPcmRlclNuIiwiZXhwcmVzc0NvbXBhbnlDb2RlIiwiZXhwcmVzc0NvbXBhbnlOYW1lIiwiY291bnREb3duIiwiaGFuZGxlRW1qIiwiaSIsImlucHV0VmFsdWUiLCJlbW90aW9uaSIsInJlcGxhY2UiLCJsZW5ndGgiLCJzbGljZSIsInB1c2giLCJ0YWciLCJuYW1lIiwic2hvd1podWlwaW5nIiwidmFsIiwicGluZ2lkIiwiemh1aXBpbmciLCJvaWQiLCJ1c2VySW5mbyIsImlkIiwiYm9va2lkIiwiY29uVGVudCIsIiRodHRwIiwicmVxdWVzdCIsIm1ldGhvZCIsImhlYWRlciIsInRoZW4iLCJyZXMiLCJjb2RlIiwic2hvd1RvYXN0Iiwic2V0VGltZW91dCIsIm5hdmlnYXRlQmFjayIsImRlbHRhIiwidGV4dGFyZWFCSW5wdXQiLCJkZXRhaWwiLCJ2YWx1ZSIsInNob3dFbWoiLCJib29sIiwiJGVtaXQiLCJJbnB1dEJsdXIiLCJJbnB1dEZvY3VzIiwiZGVsZXRlSW1nIiwicG9wIiwiZ2V0U3RhciIsInNlbGVjdCIsImFyciIsInRlbXBGaWxlcyIsIm1hcCIsImNvbmNhdCIsInVwU3VjY2VzcyIsImdldEh0bWxDb21tZW50Iiwic3MiLCJpbmRleE9mIiwiZGVsZXRlUGljIiwidGhhdCIsInNwbGljZSIsImFmdGVyUmVhZCIsImZpbGUiLCJ1cGxvYWRGaWxlIiwiJGJhc2VVcmwiLCJmaWxlUGF0aCIsImZvcm1EYXRhIiwiSlNPTiIsInBhcnNlIiwiY2xvc2VQaW5namlhIiwic3VibWl0UEoiLCJ1c2VyaWQiLCJjb250ZW50Iiwic3RhckxldmVsIiwiaW1hZ2VzIiwicGluZ2ppIiwic2hvd01vZGFsIiwiaGFuZGxlQ29weSIsIiRjb21tb25KUyIsIm9uUGFnZUp1bXAiLCJjb25maXJtIiwic2hvd0xvYWRpbmciLCJoaWRlTG9hZGluZyIsImR1cmF0aW9uIiwiY2FuY2VsIiwib3JkZXJUYWJDTGkiLCJvcmRlckxpc3RUYWIiLCJnZXRDb3Vwb25EZXRhaWwiLCJlcnJNc2ciLCJjb3Vwb25BbW91bnQiLCJjb3Vwb25IaXN0b3J5IiwiY291cG9uRW50aXR5IiwiY2F0Y2giLCJidXlPcmRlciIsInByb2R1Y3RJbmZvIiwiYmFja2dyb3VuZENvbG9yIiwiZXhwcmVzc09yZGVycyIsImNvbmZpcm1UZXh0IiwiY2FuY2VsVGV4dCIsImNvbmZpcm1Db2xvciIsImNhbmNlbENvbG9yIiwicG9zdCIsInN3aXRjaFRhYiIsInBheUl0ZW0iLCJzZXRQYXkiLCJ0eXBlUGF5Iiwic3ViamVjdCIsInRvdGFsQW1vdW50IiwicmVsZXZhbmNlb2lkIiwiY3VzdG9tZXJJZCIsImltYWdlIiwiaXNBbmRvcmlkIiwic2hvd0NhbmNlbCIsImRhdGExIiwiYnV5T3JkZXJJZCIsInNldFdYUGF5IiwiZ29EZXRhaWwiLCJnb29kc1R5cGUiLCJjb3Vyc2VJZHMiLCJjb3Vyc2VJZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUF3bEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBZ0M7QUFBQTtBQUFBLGVBQ2pCO0VBQ2JBLElBQUksa0JBQUc7SUFDTCxPQUFPO01BQ0xDLENBQUMsRUFBRTtRQUNEQyxPQUFPLEVBQUUsS0FBSztRQUNkQyxPQUFPLEVBQUUsa0NBQWtDO1FBQzNDQyxNQUFNLEVBQUUsS0FBSztRQUNiQyxRQUFRLEVBQUUsSUFBSTtRQUNkQyxTQUFTLEVBQUUsSUFBSTtRQUNmQyxZQUFZLEVBQUUsSUFBSTtRQUNsQkMsU0FBUyxFQUFFLGFBQWE7UUFDeEJDLFFBQVEsRUFBRSxJQUFJO1FBQ2RDLElBQUksRUFBRSxJQUFJO1FBQ1ZDLFFBQVEsRUFBRSxJQUFJO1FBQ2RDLE9BQU8sRUFBRSxJQUFJO1FBQ2JDLElBQUksRUFBRSxDQUFDO1FBQ1BDLGFBQWEsRUFBRSxHQUFHO1FBQ2xCQyxVQUFVLEVBQUUsRUFBRTtRQUNkQyxhQUFhLEVBQUUsQ0FBQztRQUNoQkMsU0FBUyxFQUFFLEVBQUU7UUFDYkMsYUFBYSxFQUFFLElBQUk7UUFDbkJDLGdCQUFnQixFQUFFLElBQUk7UUFDdEJDLFVBQVUsRUFBRSxJQUFJO1FBQ2hCQyxXQUFXLEVBQUUsQ0FBQztRQUNkQyxVQUFVLEVBQUUscUJBQXFCO1FBQ2pDQyxZQUFZLEVBQUUsSUFBSTtRQUNsQkMsV0FBVyxFQUFFLEdBQUc7UUFDaEJDLFdBQVcsRUFBRSxJQUFJO1FBQ2pCQyxRQUFRLEVBQUUsSUFBSTtRQUNkQyxVQUFVLEVBQUUsSUFBSTtRQUNoQkMsT0FBTyxFQUFFLENBQUM7UUFDVkMsUUFBUSxFQUFFLElBQUk7UUFDZEMsV0FBVyxF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RSxRQUFRO1lBQ2ZKLElBQUksRUFBRTtVQUNSLENBQUMsQ0FBQztRQUNKO01BQ0YsQ0FBQyxNQUFNO1FBQ0wwQyxHQUFHLENBQUNZLFVBQVUsQ0FBQztVQUNiO1VBQ0FDLEdBQUcsNkRBQXNEaUMsRUFBRTtRQUM3RCxDQUFDLENBQUM7TUFDSjtJQUNGO0VBQ0Y7QUFDRixDQUFDO0FBQUEsMkIiLCJmaWxlIjoiNTI3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuLy9cclxuXHJcbmltcG9ydCBtdXNpY1BsYXkgZnJvbSBcIkAvY29tcG9uZW50cy9tdXNpYy52dWVcIjtcclxuaW1wb3J0IGVtb3Rpb24gZnJvbSBcIkAvYmtodW1vci1lbW9qaXBsdXMvY29tcG9uZW50cy9ia2h1bW9yLWVtb2ppcGx1cy9ia2h1bW9yLWVtb2ppcGx1cy52dWVcIjtcclxuaW1wb3J0ICRodHRwIGZyb20gXCJAL2NvbmZpZy9yZXF1ZXN0Q29uZmlnLmpzXCI7XHJcbmltcG9ydCB7IHNldFBheSwgc2V0UGF5QXNzaWduLCBzZXRXWFBheSB9IGZyb20gXCJAL2NvbmZpZy91dGlsc1wiO1xyXG5pbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gXCJ2dWV4XCI7XHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBkYXRhKCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgQToge1xyXG4gICAgICAgIG9yZGVySWQ6IDE1MzE2LFxyXG4gICAgICAgIG9yZGVyU246IFwiMjAyNDEyMDkxNDE1NDEyNTMxODY2MDAzNzY2NDUwNzBcIixcclxuICAgICAgICB1c2VySWQ6IDEzNDg3LFxyXG4gICAgICAgIHVzZXJOYW1lOiBudWxsLFxyXG4gICAgICAgIHN0YXR1c051bTogbnVsbCxcclxuICAgICAgICBzaGlwcGluZ1VzZXI6IG51bGwsXHJcbiAgICAgICAgdXNlclBob25lOiBcIjE4ODM0ODQ0ODQ3XCIsXHJcbiAgICAgICAgcHJvdmluY2U6IG51bGwsXHJcbiAgICAgICAgY2l0eTogbnVsbCxcclxuICAgICAgICBkaXN0cmljdDogbnVsbCxcclxuICAgICAgICBhZGRyZXNzOiBudWxsLFxyXG4gICAgICAgIGNvbWU6IDIsXHJcbiAgICAgICAgcGF5bWVudE1ldGhvZDogXCIzXCIsXHJcbiAgICAgICAgb3JkZXJNb25leTogMzksXHJcbiAgICAgICAgZGlzdHJpY3RNb25leTogMCxcclxuICAgICAgICByZWFsTW9uZXk6IDM5LFxyXG4gICAgICAgIHNoaXBwaW5nTW9uZXk6IG51bGwsXHJcbiAgICAgICAgc2hpcHBpbmdDb21wTmFtZTogbnVsbCxcclxuICAgICAgICBzaGlwcGluZ1NuOiBudWxsLFxyXG4gICAgICAgIGpmRGVkdWN0aW9uOiAwLFxyXG4gICAgICAgIGNyZWF0ZVRpbWU6IFwiMjAyNC0xMi0wOSAxNDoxNTo0MVwiLFxyXG4gICAgICAgIHNoaXBwaW5nVGltZTogbnVsbCxcclxuICAgICAgICBvcmRlclN0YXR1czogXCIwXCIsXHJcbiAgICAgICAgc3VjY2Vzc1RpbWU6IG51bGwsXHJcbiAgICAgICAgY291cG9uSWQ6IG51bGwsXHJcbiAgICAgICAgY291cG9uTmFtZTogbnVsbCxcclxuICAgICAgICBkZWxGbGFnOiAwLFxyXG4gICAgICAgIHByb2R1Y3RzOiBudWxsLFxyXG4gICAgICAgIHByb2R1Y3RMaXN0OiBudWxsLFxyXG4gICAgICAgIGJ1eVR5cGU6IG51bGwsXHJcbiAgICAgICAgb3JkZXJUeXBlOiBcInBvaW50XCIsXHJcbiAgICAgICAgZXhwTm86IG51bGwsXHJcbiAgICAgICAgaXNTZW5kOiBudWxsLFxyXG4gICAgICAgIHZpcEJ1eUNvbmZpZ0lkOiAwLFxyXG4gICAgICAgIGFkZHJlc3NJZDogbnVsbCxcclxuICAgICAgICByZW1hcms6IG51bGwsXHJcbiAgICAgICAgb3JkZXJDb2RlOiBudWxsLFxyXG4gICAgICAgIHBheW1lbnREYXRlOiBudWxsLFxyXG4gICAgICAgIHByb2R1Y3RJZDogXCIyMVwiLFxyXG4gICAgICAgIHJlY29yZElkOiBudWxsLFxyXG4gICAgICAgIHRpbWVzdGFtcDogbnVsbCxcclxuICAgICAgICB1c2VyOiBudWxsLFxyXG4gICAgICAgIGV4cHJlc3NMaXN0OiBudWxsLFxyXG4gICAgICAgIGFkZHJlc3NNb2RpZmllZDogMCxcclxuICAgICAgICBjb25zaWduZWVWbzogbnVsbCxcclxuICAgICAgICBhcHBOYW1lOiBudWxsLFxyXG4gICAgICAgIGJvb2tCdXlDb25maWdFbnRpdHk6IHtcclxuICAgICAgICAgIHByaWNlVHlwZUlkOiAyMSxcclxuICAgICAgICAgIHR5cGU6IFwicG9pbnRcIixcclxuICAgICAgICAgIHF1ZGFvOiBcIklPU1wiLFxyXG4gICAgICAgICAgcmVhbE1vbmV5OiBcIjQ1XCIsXHJcbiAgICAgICAgICBtb25leTogXCIzOVwiLFxyXG4gICAgICAgICAgZ2l2ZWpmOiBcIjBcIixcclxuICAgICAgICAgIG1vbnRoOiBudWxsLFxyXG4gICAgICAgICAgZGVzY3JpcHRpb246IFwiXCIsXHJcbiAgICAgICAgICBlZmZlY3RpdmU6IDAsXHJcbiAgICAgICAgICBzdGFydFRpbWU6IG51bGwsXHJcbiAgICAgICAgICBlbmRUaW1lOiBudWxsLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdmlwQnV5Q29uZmlnRW50aXR5OiBudWxsLFxyXG4gICAgICB9LFxyXG4gICAgICBpY29uTGlzdDogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRleHQ6IFwi6IGU57O75a6i5pyNXCIsXHJcbiAgICAgICAgICBpY29uVHlwZTogMSxcclxuICAgICAgICAgIGljb246IFwic2VydmVyLWZpbGxcIixcclxuICAgICAgICAgIGluZm9Db2xvcjogXCIjNjY2XCIsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgICAgdXNlclJlY29yZGlkOiBudWxsLCAvLyDnlKjmiLfnmoTor4Tku7fnirbmgIFcclxuICAgICAgcGxheURhdGE6IHt9LFxyXG4gICAgICB0aXRsZTogXCJIZWxsb1wiLFxyXG4gICAgICBpc1Nob3dFbWo6IGZhbHNlLFxyXG4gICAgICBlbW9qaUljb246IFwiY3VJY29uLWVtb2ppXCIsXHJcbiAgICAgIG1lc3NhZ2U6IFwiXCIsXHJcblxyXG4gICAgICB3aW5kb3dXaWR0aDogMCxcclxuICAgICAgd2luZG93SGVpZ2h0OiA1MDAsXHJcbiAgICAgIFBmb3JtOiB7XHJcbiAgICAgICAgLy8g6K+E5Lu36KGo5Y2VXHJcbiAgICAgICAgc3RhcjogMCxcclxuICAgICAgICBjb21tZW50OiBcIlwiLFxyXG4gICAgICAgIGltZzogW10sXHJcbiAgICAgICAgaHRtbDogXCJcIixcclxuICAgICAgfSxcclxuICAgICAgcGluZ0lEOiBudWxsLFxyXG4gICAgICBwcm9kdWN0SUQ6IG51bGwsIC8vIOiuouWNleWVhuWTgWlkXHJcbiAgICAgIGltYWdlU3R5bGVzOiB7XHJcbiAgICAgICAgd2lkdGg6IDY0LFxyXG4gICAgICAgIGhlaWdodDogNjQsXHJcbiAgICAgICAgYm9yZGVyOiB7XHJcbiAgICAgICAgICBjb2xvcjogXCIjODlhYTdkXCIsXHJcbiAgICAgICAgICB3aWR0aDogMixcclxuICAgICAgICAgIHN0eWxlOiBcImRhc2hlZFwiLFxyXG4gICAgICAgICAgcmFkaXVzOiBcIjJweFwiLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHBpbmdqaWFTaG93OiBmYWxzZSxcclxuICAgICAgbG9naXN0aWNzRGF0YTogW10sIC8vIOW/q+mAkuS/oeaBr+WIl+ihqFxyXG4gICAgICB0aXRsZVN0YXQ6IFwiXCIsXHJcbiAgICAgIG9yZGVySUQ6IDAsXHJcbiAgICAgIG9yZGVyU246IFwiXCIsXHJcbiAgICAgIG9yZGVyVHlwZTogXCJcIixcclxuICAgICAgb3JkZXJDb250ZXQ6IHt9LFxyXG4gICAgICBnb29kc0xpc3Q6IFtdLFxyXG4gICAgICBkZWxpdmVyRGV0YWlsczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIFRyYWNlczogW10sXHJcbiAgICAgICAgfSxcclxuICAgICAgXSwgLy8g54mp5rWB6K+m5oOF5L+h5oGv5YWo6YOoXHJcbiAgICAgIGRlbGl2ZXJEZXRhaWxzTGVuZ3RoOiBudWxsLFxyXG4gICAgICBlbW9qaTogW10sXHJcbiAgICAgIEZpbGVzOiBbXSxcclxuICAgICAgcGpUeXBlOiBcIlwiLFxyXG4gICAgICBzaGVldExpc3Q6IFtdLCAvLyDpnaLljZXmlbDmja5cclxuICAgICAgY29uc2lnbmVlU2hvdzogZmFsc2UsXHJcbiAgICAgIHNoZWV0TGlzdFNob3c6IGZhbHNlLFxyXG4gICAgICBjdXN0b21CdXR0b246IFtdLFxyXG4gICAgfTtcclxuICB9LFxyXG4gIG9uTG9hZChlKSB7XHJcbiAgICB0aGlzLndpbmRvd1dpZHRoID0gdW5pLmdldFN5c3RlbUluZm9TeW5jKCkud2luZG93V2lkdGg7XHJcbiAgICB0aGlzLm9yZGVySUQgPSBlLm9yZGVySWQ7XHJcbiAgICB0aGlzLm9yZGVyVHlwZSA9IGUub3JkZXJUeXBlO1xyXG4gICAgdGhpcy5vcmRlclNuID0gZS5vcmRlclNuO1xyXG4gICAgY29uc29sZS5sb2codGhpcy5vcmRlcklELCBcInRoaXMub3JkZXJJRFwiKTtcclxuICB9LFxyXG4gIG9uSGlkZSgpIHtcclxuICAgIHRoaXMuc2hlZXRMaXN0ID0gW107XHJcbiAgfSxcclxuICBvblNob3coKSB7XHJcbiAgICB0aGlzLmdldE9yZGVyTGlzdCgpO1xyXG4gIH0sXHJcbiAgY29tcG9uZW50czoge1xyXG4gICAgZW1vdGlvbixcclxuICAgIG11c2ljUGxheSxcclxuICB9LFxyXG4gIGNvbXB1dGVkOiB7XHJcbiAgICAuLi5tYXBTdGF0ZShbXCJ1c2VySW5mb1wiXSksXHJcbiAgfSxcclxuXHJcbiAgbWV0aG9kczoge1xyXG4gICAgZ290b1dvcmtPcmRlcigpIHtcclxuICAgICAgdW5pLm5hdmlnYXRlVG8oe1xyXG4gICAgICAgIHVybDogYC9wYWdlcy91c2VyL3dvcmtPcmRlcj9uYW1lPW9yZGVyYCxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgYXN5bmMgZ29CdXlKaWUoZGF0YSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcImluZGV4IGF0IGxpbmUgNTMyOlwiLCBkYXRhKTtcclxuICAgICAgaWYgKGRhdGEudGV4dCA9PSBcIue7p+e7reS7mOasvlwiKSB7XHJcbiAgICAgICAgdGhpcy5nb1BheSh0aGlzLm9yZGVyQ29udGV0KTtcclxuICAgICAgfSBlbHNlIGlmIChkYXRhLnRleHQgPT0gXCLlj5bmtojorqLljZVcIikge1xyXG4gICAgICAgIHRoaXMuY2FuY2VPcmRlcigpO1xyXG4gICAgICB9IGVsc2UgaWYgKGRhdGEudGV4dCA9PSBcIuehruiupOaUtui0p1wiKSB7XHJcbiAgICAgICAgdGhpcy5PdmVyT3JkZXIoKTtcclxuICAgICAgfSBlbHNlIGlmIChkYXRhLnRleHQgPT0gXCLmn6XnnIvnianmtYFcIikge1xyXG4gICAgICAgIHRoaXMuc2VlRXhwcmVzc0RldGFpbCh0aGlzLm9yZGVyQ29udGV0KTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGFzeW5jIGNsaWNrSWNvbihkYXRhKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaW5kZXggYXQgbGluZSA1MzI6XCIsIGRhdGEpO1xyXG4gICAgICBpZiAoZGF0YS50ZXh0ID09IFwi6IGU57O75a6i5pyNXCIpIHtcclxuICAgICAgICB0aGlzLmtlZnUoKTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8vIOWkjeWItuWIsOWJquWIh+adv1xyXG4gICAgY29weURhdGEoZGF0YSkge1xyXG4gICAgICB1bmkuc2V0Q2xpcGJvYXJkRGF0YSh7XHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcInN1Y2Nlc3NcIik7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgc2VlRXhwcmVzc0RldGFpbHMoaXRlbSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhpdGVtLCBcIml0ZW1cIik7XHJcbiAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICB1cmw6XHJcbiAgICAgICAgICBcIi4vZGVsaXZlckRldGFpbD9vcmRlclNuPVwiICtcclxuICAgICAgICAgIHRoaXMub3JkZXJDb250ZXQub3JkZXJTbiArXHJcbiAgICAgICAgICBcIiZleHByZXNzT3JkZXJTbj1cIiArXHJcbiAgICAgICAgICBpdGVtLmV4cHJlc3NPcmRlclNuICtcclxuICAgICAgICAgIFwiJmV4cHJlc3NDb21wYW55Q29kZT1cIiArXHJcbiAgICAgICAgICBpdGVtLmV4cHJlc3NDb21wYW55Q29kZSArXHJcbiAgICAgICAgICBcIiZleHByZXNzQ29tcGFueU5hbWU9XCIgK1xyXG4gICAgICAgICAgaXRlbS5leHByZXNzQ29tcGFueU5hbWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIC8vIOWAkuiuoeaXtuWbnuiwg1xyXG4gICAgY291bnREb3duKCkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIumHjeaWsOWIt+aWsOiuouWNlVwiKTtcclxuICAgICAgdGhpcy5nZXRPcmRlckxpc3QoKTtcclxuICAgIH0sXHJcbiAgICAvLyDojrflvpfovpPlhaXnmoTooajmg4XmlbDnu4RcclxuICAgIGhhbmRsZUVtaihpKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKGksIFwiaS0tLS0tLS0tLVwiKTtcclxuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gaTtcclxuICAgICAgLy8gY29uc29sZS5sb2codGhpcy5pbnB1dFZhbHVlKTtcclxuICAgICAgaWYgKGkuZW1vdGlvbmkgPT0gXCJbZW1fOThdXCIpIHtcclxuICAgICAgICAvL+WMuemFjeacgOWQjuS4gOS4quihqOaDheespuWPt+W5tuWIoOmZpDEx44CCXHJcbiAgICAgICAgdGhpcy5QZm9ybS5jb21tZW50ID0gdGhpcy5QZm9ybS5jb21tZW50LnJlcGxhY2UoXHJcbiAgICAgICAgICAvKFxcW1teXFxdXStcXF18W1xcc1xcU10pJC8sXHJcbiAgICAgICAgICBcIlwiXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAodGhpcy5lbW9qaS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLmVtb2ppID0gdGhpcy5lbW9qaS5zbGljZSgwLCAtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZW1vamkucHVzaCh7IHRhZzogaS5lbW90aW9uLCBuYW1lOiBpLmVtb3Rpb25pIH0pO1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZW1vamksJ3RoaXMuZW1vamknKVxyXG4gICAgICAgIHRoaXMuUGZvcm0uY29tbWVudCArPSBpLmVtb3Rpb25pO1xyXG4gICAgICAgIC8vLyB0aGlzLlBmb3JtLmh0bWwgKz0gaS5lbW90aW9uXHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBzaG93Wmh1aXBpbmcodmFsKSB7XHJcbiAgICAgIHRoaXMucGpUeXBlID0gXCJ6aHVpcGluZ1wiO1xyXG4gICAgICB0aGlzLnBpbmdqaWFTaG93ID0gdHJ1ZTtcclxuICAgICAgdGhpcy5wcm9kdWN0SUQgPSB2YWw7XHJcbiAgICAgIHRoaXMucGluZ0lEID0gcGluZ2lkO1xyXG4gICAgfSxcclxuICAgIC8vIOi/veWKoOivhOiuulxyXG4gICAgemh1aXBpbmcoKSB7XHJcbiAgICAgIGxldCBkYXRhID0ge1xyXG4gICAgICAgIG9pZDogdGhpcy51c2VyUmVjb3JkaWQsXHJcbiAgICAgICAgdXNlcklkOiB0aGlzLnVzZXJJbmZvLmlkLFxyXG4gICAgICAgIGJvb2tpZDogdGhpcy5wcm9kdWN0SUQsXHJcbiAgICAgICAgY29uVGVudDogdGhpcy5QZm9ybS5jb21tZW50LFxyXG4gICAgICB9O1xyXG4gICAgICBjb25zb2xlLmxvZyhkYXRhLCBcImRhdGFcIik7XHJcbiAgICAgICRodHRwXHJcbiAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgdXJsOiBcInVzZXIvZm9sbG93VXAvdXNlckZvbGxvd1VwXCIsXHJcbiAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLCAvLyBQT1NU44CBR0VU44CBUFVU44CBREVMRVRF77yM5YW35L2T6K+05piO5p+l55yL5a6Y5pa55paH5qGjXHJcbiAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgaGVhZGVyOiB7XHJcbiAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcclxuICAgICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcy5jb2RlID09IDApIHtcclxuICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgdGl0bGU6IFwi6L+96K+E5oiQ5Yqf77yBXCIsXHJcbiAgICAgICAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLnBpbmdqaWFTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMucGpUeXBlID0gXCJcIjtcclxuICAgICAgICAgICAgKHRoaXMucHJvZHVjdElEID0gbnVsbCksICh0aGlzLnVzZXJSZWNvcmRpZCA9IG51bGwpO1xyXG4gICAgICAgICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBcIlwiO1xyXG4gICAgICAgICAgICB0aGlzLlBmb3JtLmh0bWwgPSBcIlwiO1xyXG4gICAgICAgICAgICB0aGlzLmVtb2ppID0gW107XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHVuaS5uYXZpZ2F0ZUJhY2soe1xyXG4gICAgICAgICAgICAgICAgZGVsdGE6IDEsXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sIDIwMDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIHRleHRhcmVhQklucHV0KGUpIHtcclxuICAgICAgY29uc29sZS5sb2coZSwgXCJlXCIpO1xyXG4gICAgICB0aGlzLlBmb3JtLmNvbW1lbnQgPSBlLmRldGFpbC52YWx1ZTtcclxuICAgICAgLy8vIHRoaXMuUGZvcm0uaHRtbCA9IGUuZGV0YWlsLnZhbHVlXHJcbiAgICB9LFxyXG4gICAgc2hvd0VtaigpIHtcclxuICAgICAgbGV0IGJvb2wgPSAhdGhpcy5pc1Nob3dFbWo7XHJcbiAgICAgIGlmIChib29sKSB7XHJcbiAgICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1rZXlib2FyZFwiO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZW1vamlJY29uID0gXCJjdUljb24tZW1vamlcIjtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5pc1Nob3dFbWogPSBib29sO1xyXG4gICAgICB0aGlzLiRlbWl0KFwic2hvd1wiKTtcclxuICAgIH0sXHJcbiAgICBJbnB1dEJsdXIoZSkge30sXHJcbiAgICBJbnB1dEZvY3VzKGUpIHtcclxuICAgICAgdGhpcy5pc1Nob3dFbWogPSBmYWxzZTtcclxuICAgICAgdGhpcy5lbW9qaUljb24gPSBcImN1SWNvbi1lbW9qaVwiO1xyXG4gICAgICB0aGlzLiRlbWl0KFwiZm9jXCIpO1xyXG4gICAgfSxcclxuXHJcbiAgICAvLyBlbmRcclxuICAgIGRlbGV0ZUltZyhlKSB7XHJcbiAgICAgIC8vIHZhciBhcnIgPSB0aGlzLlBmb3JtLmltZy5zbGljZSgwLC0xKVxyXG4gICAgICB0aGlzLlBmb3JtLmltZy5wb3AoKTtcclxuICAgICAgLy8gIGNvbnNvbGUubG9nKCfliKDpmaTmlofku7YnLGFycilcclxuICAgICAgY29uc29sZS5sb2codGhpcy5QZm9ybSk7XHJcbiAgICB9LFxyXG4gICAgZ2V0U3RhcihpKSB7XHJcbiAgICAgIHRoaXMuUGZvcm0uc3RhciA9IGk7XHJcbiAgICB9LFxyXG4gICAgc2VsZWN0KGUpIHtcclxuICAgICAgY29uc29sZS5sb2coXCLpgInmi6nmlofku7bvvJpcIiwgZSk7XHJcbiAgICAgIGxldCBhcnIgPSBlLnRlbXBGaWxlcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICByZXR1cm4geyB1cmw6IGl0ZW0udXJsLCBuYW1lOiBpdGVtLm5hbWUgfTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuUGZvcm0uaW1nID0gdGhpcy5QZm9ybS5pbWcuY29uY2F0KC4uLmFycik7XHJcbiAgICAgIC8vdGhpcy5QZm9ybS5pbWcgPSBhcnJcclxuICAgICAgY29uc29sZS5sb2codGhpcy5QZm9ybSwgXCJpbWdcIik7XHJcbiAgICB9LFxyXG4gICAgdXBTdWNjZXNzKGUpIHtcclxuICAgICAgY29uc29sZS5sb2coZSk7XHJcbiAgICB9LFxyXG4gICAgLy8g6I635Y+WaHRtbOagvOW8j+eahOivhOiuujFcclxuICAgIGdldEh0bWxDb21tZW50KCkge1xyXG4gICAgICAvLyDmoLzlvI/ljJZodG1sXHJcbiAgICAgIHZhciBzcyA9IHRoaXMuUGZvcm0uY29tbWVudDtcclxuICAgICAgaWYgKHRoaXMuZW1vamkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5lbW9qaS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaWYgKHRoaXMuUGZvcm0uY29tbWVudC5pbmRleE9mKHRoaXMuZW1vamlbaV0ubmFtZSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgIC8vdmFyIHJlID0gbmV3IFJlZ0V4cCh0aGlzLmVtb2ppWzBdLm5hbWUsXCJnXCIpOyAvL+WumuS5ieato+WImeihqOi+vuW8j1xyXG4gICAgICAgICAgICAvL+esrOS4gOS4quWPguaVsOaYr+imgeabv+aNouaOieeahOWGheWuue+8jOesrOS6jOS4quWPguaVsFwiZ1wi6KGo56S65pu/5o2i5YWo6YOo77yIZ2xvYmFs77yJ44CCXHJcbiAgICAgICAgICAgIC8vIHNzID0gc3MucmVwbGFjZShyZSwgKTsgLy/nrKzkuIDkuKrlj4LmlbDmmK/mraPliJnooajovr7lvI/jgIJcclxuICAgICAgICAgICAgc3MgPSBzcy5yZXBsYWNlKHRoaXMuZW1vamlbaV0ubmFtZSwgdGhpcy5lbW9qaVtpXS50YWcpO1xyXG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhzcylcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5QZm9ybS5odG1sID0gc3M7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5QZm9ybS5odG1sID0gdGhpcy5QZm9ybS5jb21tZW50O1xyXG4gICAgICB9XHJcbiAgICAgIC8vY29uc29sZS5sb2codGhpcy5QZm9ybS5odG1sLCd0aGlzLlBmb3JtLmh0bWwnKVxyXG4gICAgfSxcclxuICAgIGRlbGV0ZVBpYygpIHtcclxuICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICB0aGF0LlBmb3JtLmltZy5zcGxpY2UoMCwgMSk7XHJcbiAgICAgIC8vY29uc29sZS5sb2codGhhdC5QZm9ybS5pbWcpXHJcbiAgICB9LFxyXG4gICAgYWZ0ZXJSZWFkKGUpIHtcclxuICAgICAgLy9jb25zb2xlLmxvZyhlKVxyXG4gICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZS5maWxlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhpLGUuZmlsZVtpXS51cmwpXHJcbiAgICAgICAgdW5pLnVwbG9hZEZpbGUoe1xyXG4gICAgICAgICAgdXJsOiB0aGlzLiRiYXNlVXJsICsgXCJvc3MvZmlsZW9zc1wiLFxyXG4gICAgICAgICAgZmlsZVBhdGg6IGUuZmlsZVtpXS51cmwsXHJcbiAgICAgICAgICAvL2ZpbGVzOmUuZmlsZSxcclxuICAgICAgICAgIG5hbWU6IFwiZmlsZVwiLFxyXG4gICAgICAgICAgZm9ybURhdGE6IHt9LFxyXG4gICAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xyXG4gICAgICAgICAgICB0aGF0LlBmb3JtLmltZy5wdXNoKHtcclxuICAgICAgICAgICAgICB1cmw6IEpTT04ucGFyc2UocmVzLmRhdGEpLnVybCxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgY2xvc2VQaW5namlhKCkge1xyXG4gICAgICB0aGlzLnBpbmdqaWFTaG93ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuUGZvcm0uY29tbWVudCA9IFwiXCI7XHJcbiAgICAgIHRoaXMuUGZvcm0uaHRtbCA9IFwiXCI7XHJcbiAgICAgIHRoaXMuZW1vamkgPSBbXTtcclxuICAgIH0sXHJcbiAgICAvLyDmj5DkuqTor4Tku7dcclxuICAgIHN1Ym1pdFBKKCkge1xyXG4gICAgICBpZiAodGhpcy5QZm9ybS5jb21tZW50ICE9IFwiXCIpIHtcclxuICAgICAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgICAgIHVzZXJpZDogdGhpcy51c2VySW5mby5pZCxcclxuICAgICAgICAgIG9yZGVyU246IHRoaXMub3JkZXJTbixcclxuICAgICAgICAgIGJvb2tpZDogdGhpcy5wcm9kdWN0SUQsXHJcbiAgICAgICAgICAvLyAnY29udGVudCc6IHRoaXMuUGZvcm0uaHRtbCxcclxuICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuUGZvcm0uY29tbWVudCxcclxuICAgICAgICAgIHN0YXJMZXZlbDogdGhpcy5QZm9ybS5zdGFyLFxyXG4gICAgICAgICAgaW1hZ2VzOiB0aGlzLlBmb3JtLmltZyxcclxuICAgICAgICAgIC8vICdlbW9qaSc6dGhpcy5lbW9qaSAgLy8g6KGo5oOF5pWw57uEXHJcbiAgICAgICAgfTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyhkYXRhLCdkYXRhJylcclxuICAgICAgICAkaHR0cFxyXG4gICAgICAgICAgLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgICB1cmw6IFwiYnV5L3JlY29yZC9Vc2VyUmVjb3JkY29tbWVudFwiLFxyXG4gICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLCAvLyBQT1NU44CBR0VU44CBUFVU44CBREVMRVRF77yM5YW35L2T6K+05piO5p+l55yL5a6Y5pa55paH5qGjXHJcbiAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICAgIC8v6buY6K6kIOaXoCDor7TmmI7vvJror7fmsYLlpLRcclxuICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLor4Tku7fmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICAgIGljb246IFwic3VjY2Vzc1wiLFxyXG4gICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLnBpbmdqaWFTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5QZm9ybS5jb21tZW50ID0gXCJcIjtcclxuICAgICAgICAgICAgICB0aGlzLlBmb3JtLmh0bWwgPSBcIlwiO1xyXG4gICAgICAgICAgICAgIHRoaXMuZW1vamkgPSBbXTtcclxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHVuaS5uYXZpZ2F0ZUJhY2soe1xyXG4gICAgICAgICAgICAgICAgICBkZWx0YTogMSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0sIDIwMDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgIHRpdGxlOiBcIuivt+WFiOi+k+WFpeaCqOeahOivhOS7t+WGheWuuSDvvIFcIixcclxuICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgLy8g5re75Yqg6K+E5Lu3XHJcbiAgICBwaW5namkoaWQpIHtcclxuICAgICAgY29uc29sZS5sb2coaWQpO1xyXG4gICAgICB0aGlzLnBqVHlwZSA9IFwiXCI7XHJcbiAgICAgIHRoaXMucHJvZHVjdElEID0gaWQ7XHJcbiAgICAgIHRoaXMucGluZ2ppYVNob3cgPSB0cnVlO1xyXG4gICAgfSxcclxuICAgIC8vIOiBlOezu+WuouacjVxyXG4gICAga2VmdSgpIHtcclxuICAgICAgdW5pLnNob3dNb2RhbCh7XHJcbiAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsXHJcbiAgICAgICAgY29udGVudDogXCLlvq7kv6Hlj7fvvJp5aWx1amlhbmthbmdrZWZ1XCIsXHJcbiAgICAgICAgLy8gc3VjY2VzczogZnVuY3Rpb24gKHJlcykge1xyXG4gICAgICAgIC8vIFx0aWYgKHJlcy5jb25maXJtKSB7XHJcbiAgICAgICAgLy8gXHRcdHVuaS5tYWtlUGhvbmVDYWxsKHtcclxuICAgICAgICAvLyBcdFx0XHRwaG9uZU51bWJlcjogJzAyMi0yNDE0MjMyMScgLy/ku4XkuLrnpLrkvotcclxuICAgICAgICAvLyBcdFx0fSk7XHJcbiAgICAgICAgLy8gXHR9IGVsc2UgaWYgKHJlcy5jYW5jZWwpIHtcclxuXHJcbiAgICAgICAgLy8gXHR9XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcbiAgICAvLyDmn6XnnIvnianmtYFcclxuICAgIHNlZUV4cHJlc3NEZXRhaWwoaXRlbSkge1xyXG4gICAgICBpZiAodGhpcy5zaGVldExpc3QubGVuZ3RoID4gMSkge1xyXG4gICAgICAgIHRoaXMuc2hlZXRMaXN0U2hvdyA9IHRydWU7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5zaGVldExpc3QubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAvLyDnm7TmjqXlsZXnpLror6bmg4VcclxuICAgICAgICB1bmkubmF2aWdhdGVUbyh7XHJcbiAgICAgICAgICB1cmw6XHJcbiAgICAgICAgICAgIFwiLi9kZWxpdmVyRGV0YWlsP29yZGVyU249XCIgK1xyXG4gICAgICAgICAgICBpdGVtLm9yZGVyU24gK1xyXG4gICAgICAgICAgICBcIiZleHByZXNzT3JkZXJTbj1cIiArXHJcbiAgICAgICAgICAgIHRoaXMuc2hlZXRMaXN0WzBdLmV4cHJlc3NPcmRlclNuLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgaGFuZGxlQ29weSh2YWx1ZSwgdGl0bGUpIHtcclxuICAgICAgdGhpcy4kY29tbW9uSlMuaGFuZGxlQ29weSh2YWx1ZSwgdGl0bGUpO1xyXG4gICAgfSxcclxuICAgIG9uUGFnZUp1bXAoaXRlbSkge1xyXG4gICAgICB1bmkubmF2aWdhdGVUbyh7XHJcbiAgICAgICAgdXJsOiBcIi4vZGVsaXZlckRldGFpbD9vYmpJZD1cIiArIGl0ZW0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIE92ZXJPcmRlcigpIHtcclxuICAgICAgLy8g56Gu6K6k5pS26LSnXHJcbiAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgIHRpdGxlOiBcIuaPkOekulwiLFxyXG4gICAgICAgIGNvbnRlbnQ6IFwi56Gu6K6k5pS26LSn77yfXCIsXHJcbiAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xyXG4gICAgICAgICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgICAgICAgIG9yZGVySWQ6IHRoaXMub3JkZXJJRCxcclxuICAgICAgICAgICAgb3JkZXJTdGF0dXM6IFwiM1wiLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICAgIGlmIChyZXMuY29uZmlybSkge1xyXG4gICAgICAgICAgICB1bmkuc2hvd0xvYWRpbmcoKTtcclxuICAgICAgICAgICAgJGh0dHBcclxuICAgICAgICAgICAgICAucmVxdWVzdCh7XHJcbiAgICAgICAgICAgICAgICB1cmw6IFwiYm9vay9idXlPcmRlci91cGRhdGVcIixcclxuICAgICAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgICBoZWFkZXI6IHtcclxuICAgICAgICAgICAgICAgICAgLy/pu5jorqQg5pegIOivtOaYju+8muivt+axguWktFxyXG4gICAgICAgICAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICB1bmkuaGlkZUxvYWRpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5pS26LSn5oiQ5YqfXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgZHVyYXRpb246IDEwMDAsXHJcbiAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmdldE9yZGVyTGlzdCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXMuY2FuY2VsKSB7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgLy8g5YiH5o2i6K6i5Y2V54q25oCBXHJcbiAgICBvcmRlclRhYkNMaShlKSB7XHJcbiAgICAgIHRoaXMub3JkZXJMaXN0VGFiID0gZTtcclxuICAgIH0sXHJcbiAgICBhc3luYyBnZXRDb3Vwb25EZXRhaWwoaWQpIHtcclxuICAgICAgYXdhaXQgdGhpcy4kaHR0cFxyXG4gICAgICAgIC5yZXF1ZXN0KHtcclxuICAgICAgICAgIHVybDogXCJjb21tb24vY291cG9uL2dldENvdXBvbkhpc3RvcnlJbmZvXCIsXHJcbiAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLCAvLyBQT1NU44CBR0VU44CBUFVU44CBREVMRVRF77yM5YW35L2T6K+05piO5p+l55yL5a6Y5pa55paH5qGjXHJcbiAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGlkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XHJcbiAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMuY29kZSAhPSAwKSByZXR1cm4gdGhpcy4kY29tbW9uSlMuc2hvd1RvYXN0KHJlcy5lcnJNc2cpO1xyXG4gICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5jb3Vwb25BbW91bnQgPVxyXG4gICAgICAgICAgICByZXMuY291cG9uSGlzdG9yeS5jb3Vwb25FbnRpdHkuY291cG9uQW1vdW50O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmNhdGNoKChlKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcclxuICAgICAgICAgIHRoaXMuJGNvbW1vbkpTLnNob3dUb2FzdChlLmVyck1zZyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgLy8g6I635Y+W6K6i5Y2V6K+m5oOFXHJcbiAgICBhc3luYyBnZXRPcmRlckxpc3QoKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwidGhpcy5vcmRlclR5cGVcIiwgdGhpcy5vcmRlclR5cGUpO1xyXG5cclxuICAgICAgYXdhaXQgdGhpcy4kaHR0cFxyXG4gICAgICAgIC5yZXF1ZXN0KHtcclxuICAgICAgICAgIHVybDogXCJjb21tb24vYnV5T3JkZXIvY29tbW9uT3JkZXJEZXRhaWxcIixcclxuICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCIsIC8vIFBPU1TjgIFHRVTjgIFQVVTjgIFERUxFVEXvvIzlhbfkvZPor7TmmI7mn6XnnIvlrpjmlrnmlofmoaNcclxuICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgb3JkZXJJZDogdGhpcy5vcmRlcklELFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGhlYWRlcjoge1xyXG4gICAgICAgICAgICAvL+m7mOiupCDml6Ag6K+05piO77ya6K+35rGC5aS0XHJcbiAgICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHtcclxuICAgICAgICAgIHRoaXMuY3VzdG9tQnV0dG9uID0gW107XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIuiuouWNleivpuaDhVwiLCByZXMpO1xyXG4gICAgICAgICAgdGhpcy5vcmRlckNvbnRldCA9IHJlcy5kYXRhLmJ1eU9yZGVyO1xyXG4gICAgICAgICAgdGhpcy5nb29kc0xpc3QgPSByZXMuZGF0YS5wcm9kdWN0SW5mbztcclxuICAgICAgICAgIHRoaXMuY29uc2lnbmVlU2hvdyA9IHRydWU7XHJcbiAgICAgICAgICAvLyDlrZjlnKjkvJjmg6DliLjkv6Hmga/vvIzlsLHmn6Xor6LkvJjmg6DliLjpm4bkvZPph5Hpop1cclxuICAgICAgICAgIGlmICh0aGlzLm9yZGVyQ29udGV0LmNvdXBvbklkICYmIHRoaXMub3JkZXJDb250ZXQuY291cG9uSWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmdldENvdXBvbkRldGFpbCh0aGlzLm9yZGVyQ29udGV0LmNvdXBvbklkKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAyICYmXHJcbiAgICAgICAgICAgIHRoaXMuc2hlZXRMaXN0Lmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyAhPSA1XHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21CdXR0b24ucHVzaCh7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IFwiMTYwcnB4XCIsXHJcbiAgICAgICAgICAgICAgdGV4dDogXCLmn6XnnIvnianmtYFcIixcclxuICAgICAgICAgICAgICBjb2xvcjogXCIjMzMzXCIsXHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBcIiNmMGYwZjBcIixcclxuICAgICAgICAgICAgICBjb2xvcjogXCIjZmZmXCIsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMub3JkZXJDb250ZXQub3JkZXJTdGF0dXMgPT0gMikge1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbUJ1dHRvbi5wdXNoKHtcclxuICAgICAgICAgICAgICB3aWR0aDogXCIxNjBycHhcIixcclxuICAgICAgICAgICAgICB0ZXh0OiBcIuehruiupOaUtui0p1wiLFxyXG5cclxuICAgICAgICAgICAgICBjb2xvcjogXCIjZmZmXCIsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDAgJiZcclxuICAgICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5wYXltZW50TWV0aG9kICE9IDNcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbUJ1dHRvbi5wdXNoKHtcclxuICAgICAgICAgICAgICB3aWR0aDogXCIxNjBycHhcIixcclxuICAgICAgICAgICAgICB0ZXh0OiBcIue7p+e7reS7mOasvlwiLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLm9yZGVyQ29udGV0Lm9yZGVyU3RhdHVzID09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21CdXR0b24ucHVzaCh7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IFwiMTYwcnB4XCIsXHJcbiAgICAgICAgICAgICAgdGV4dDogXCLlj5bmtojorqLljZVcIixcclxuICAgICAgICAgICAgICBjb2xvcjogXCIjMzMzXCIsXHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBcIiNmMGYwZjBcIixcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLy8gdmFyIHNlY29uZHMgPSByZXMucmVzdWx0LnRpbWVzdGFtcCArIDMwICogNjAgKyAyICAgIC8vIOi/h+acn+aXtumXtFxyXG4gICAgICAgICAgLy8gdmFyIG5vd1NlY29uZHMgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCk7XHJcbiAgICAgICAgICAvLyByZXMucmVzdWx0Lm92ZXJUaW1lID0gc2Vjb25kcyAtIG5vd1NlY29uZHNcclxuXHJcbiAgICAgICAgICAvL3RoaXMudXNlclJlY29yZGlkID0gcmVzLnVzZXJSZWNvcmRpZFxyXG4gICAgICAgICAgLy8gdGhpcy5wcm9kdWN0SURzID0gcmVzLmRhdGEuZ29vZHNMaXN0Lm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgLy8gICByZXR1cm4gaXRlbS5idXlPcmRlclByb2R1Y3RJZDtcclxuICAgICAgICAgIC8vIH0pO1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5vcmRlckNvbnRldCwndGhpcy5vcmRlckNvbnRldCcpXHJcbiAgICAgICAgICBpZiAodGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGl0bGVTdGF0ID0gXCLlvoXmlK/ku5hcIjtcclxuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAxKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGl0bGVTdGF0ID0gXCLlvoXlj5HotKdcIjtcclxuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAyKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGl0bGVTdGF0ID0gXCLlvoXmlLbotKdcIjtcclxuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA9PSAzKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGl0bGVTdGF0ID0gXCLlt7LlrozmiJBcIjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5vcmRlckNvbnRldC5vcmRlclN0YXR1cyA+PSAyICYmXHJcbiAgICAgICAgICAgIHRoaXMub3JkZXJDb250ZXQub3JkZXJUeXBlID09IFwib3JkZXJcIiAmJlxyXG4gICAgICAgICAgICB0aGlzLm9yZGVyQ29udGV0LmV4cHJlc3NPcmRlcnNcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLnNoZWV0TGlzdCA9IHRoaXMub3JkZXJDb250ZXQuZXhwcmVzc09yZGVycztcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hlZXRMaXN0ID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyh0aGlzLm9yZGVyQ29udGV0LCBcIuiuouWNleivpuaDhVwiKTtcclxuICAgICAgICB9KTtcclxuICAgIH0sXHJcblxyXG4gICAgLy8g5Y+W5raI6K6i5Y2VXHJcbiAgICBjYW5jZU9yZGVyKCkge1xyXG4gICAgICB1bmkuc2hvd01vZGFsKHtcclxuICAgICAgICB0aXRsZTogXCLmj5DnpLpcIixcclxuICAgICAgICBjb250ZW50OiBcIuehruWumuimgeWPlua2iOiuouWNleWQl++8n1wiLFxyXG4gICAgICAgIGNvbmZpcm1UZXh0OiBcIuWPlua2iOiuouWNlVwiLFxyXG4gICAgICAgIGNhbmNlbFRleHQ6IFwi6ICD6JmR5LiA5LiLXCIsXHJcbiAgICAgICAgY29uZmlybUNvbG9yOiBcIiNjOTY3MTNcIixcclxuICAgICAgICBjYW5jZWxDb2xvcjogXCIjNTU1XCIsXHJcbiAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcy5jb25maXJtKSB7XHJcbiAgICAgICAgICAgIHRoaXMuJGh0dHBcclxuICAgICAgICAgICAgICAucG9zdChcclxuICAgICAgICAgICAgICAgIFwiYm9vay9idXlPcmRlci9hcHBEZWxldGU/b3JkZXJJZD1cIiArIHRoaXMub3JkZXJDb250ZXQub3JkZXJJZFxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuWPlua2iOiuouWNleaIkOWKn1wiLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB1bmkuc3dpdGNoVGFiKHtcclxuICAgICAgICAgICAgICAgICAgdXJsOiBcIi4vb3JkZXJMaXN0XCIsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0sXHJcblxyXG4gICAgLy8g5pSv5LuYXHJcbiAgICBnb1BheShwYXlJdGVtKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKHBheUl0ZW0sIFwi6K6i5Y2V5pWw5o2uXCIpO1xyXG4gICAgICBpZiAocGF5SXRlbS5wYXltZW50TWV0aG9kID09IDIpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIumYv+mHjOaUr+S7mFwiKTtcclxuICAgICAgICBzZXRQYXkoXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHR5cGVQYXk6IFwiYWxpcGF5XCIsXHJcbiAgICAgICAgICAgIHN1YmplY3Q6IFwib3JkZXJcIixcclxuICAgICAgICAgICAgdG90YWxBbW91bnQ6IHBheUl0ZW0ucmVhbE1vbmV5LFxyXG4gICAgICAgICAgICB0eXBlOiAyLFxyXG4gICAgICAgICAgICByZWxldmFuY2VvaWQ6IHBheUl0ZW0ub3JkZXJTbixcclxuICAgICAgICAgICAgY3VzdG9tZXJJZDogdGhpcy51c2VySW5mby5pZCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMuc3VjY2Vzcykge1xyXG4gICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwi5pSv5LuY5oiQ5YqfXCIsXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogXCLmlK/ku5jlpLHotKVcIixcclxuICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgaW1hZ2U6IFwiLi4vLi4vc3RhdGljL2ljb24vaWNfY2xvc2UucG5nXCIsXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5nZXRPcmRlckxpc3QoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2UgaWYgKHBheUl0ZW0ucGF5bWVudE1ldGhvZCA9PSAxKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCLlvq7kv6HmlK/ku5hcIik7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5pc0FuZG9yaWQpXHJcbiAgICAgICAgaWYgKHRoaXMuaXNBbmRvcmlkID09IGZhbHNlKSB7XHJcbiAgICAgICAgICB1bmkuc2hvd01vZGFsKHtcclxuICAgICAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsXHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi5b6I5oqx5q2J77yM6Iu55p6c57O757uf5pqC5LiN5pSv5oyB5b6u5L+h5pSv5LuYXCIsXHJcbiAgICAgICAgICAgIHNob3dDYW5jZWw6IGZhbHNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGxldCBkYXRhMSA9IHtcclxuICAgICAgICAgICAgb3JkZXJTbjogcGF5SXRlbS5vcmRlclNuLFxyXG4gICAgICAgICAgICBidXlPcmRlcklkOiBudWxsLFxyXG4gICAgICAgICAgICB0b3RhbEFtb3VudDogcGF5SXRlbS5yZWFsTW9uZXksXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgY29uc29sZS5sb2coZGF0YTEsIFwiZGF0YTFcIik7XHJcbiAgICAgICAgICBzZXRXWFBheShkYXRhMSwgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzLnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIuaUr+S7mOaIkOWKn1wiLFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmVyck1zZy5pbmRleE9mKFwiVXNlciBjYW5jZWxlZFwiKSAhPSAtMSkge1xyXG4gICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIueUqOaIt+WPlua2iOaUr+S7mFwiLFxyXG4gICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgaW1hZ2U6IFwiLi4vLi4vc3RhdGljL2ljb24vaWNfY2xvc2UucG5nXCIsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuaUr+S7mOWksei0pVwiLFxyXG4gICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgaW1hZ2U6IFwiLi4vLi4vc3RhdGljL2ljb24vaWNfY2xvc2UucG5nXCIsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmIChwYXlJdGVtLnBheW1lbnRNZXRob2QgPT0gMykge1xyXG4gICAgICAgIC8vIOiLueaenOWFheWAvFxyXG4gICAgICAgIGNvbnNvbGUubG9nKFwi6Iu55p6c5LqM5qyh5pSv5LuYXCIpO1xyXG4gICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgY29udGVudDogXCJhcHBsZeWGhei0reiuouWNleS4jeaUr+aMgee7p+e7reaUr+S7mO+8jOivt+mHjeaWsOWPkei1t+aUr+S7mOeUs+ivt+W5tuWujOaIkOaUr+S7mFwiLFxyXG4gICAgICAgICAgY29uZmlybVRleHQ6IFwi5aW955qEXCIsXHJcbiAgICAgICAgICBzaG93Q2FuY2VsOiBmYWxzZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICAvLyDllYblk4HlhoXlrrnot7PovaxcclxuICAgIGdvRGV0YWlsKGlkLCBkYXRhKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiZGF0YSBhdCBsaW5lIDEyNzc66K6i5Y2V6K+m5oOF5Y+C5pWwXCIsIGRhdGEpO1xyXG4gICAgICBpZiAoZGF0YS5kZWxGbGFnID09IC0xKSB7XHJcbiAgICAgICAgdGhpcy4kY29tbW9uSlMuc2hvd1RvYXN0KFwi5ZWG5ZOB5bey5LiL5p62XCIpO1xyXG4gICAgICB9IGVsc2UgaWYgKGRhdGEuZ29vZHNUeXBlID09IFwiMDVcIikge1xyXG4gICAgICAgIGlmIChkYXRhLmNvdXJzZUlkcyAmJiBkYXRhLmNvdXJzZUlkcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB1bmkubmF2aWdhdGVUbyh7XHJcbiAgICAgICAgICAgIHVybDogYC9wYWdlcy9jb3Vyc2UvY291cnNlRGV0YWlsP2lkPSR7ZGF0YS5jb3Vyc2VJZHNbMF0uY291cnNlSWR9YCxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgdGl0bGU6IFwi6K++56iL5pWw5o2u5Ye66ZSZXCIsXHJcbiAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHVuaS5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICAgIC8vIHVybDogJy4uL2Jvb2tTaG9wL2NvbW1vZGl0eURldGFpbD9pZD0nICsgaXRlbS5pZFxyXG4gICAgICAgICAgdXJsOiBgL3BhZ2VzL2dvb2RzL2luZGV4L2luZGV4P25hdlRpdGxlPScnJnRpdGxlPScnJmlkPSR7aWR9YCxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICB9LFxyXG59O1xyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///527\n");
/***/ }),
/* 528 */
diff --git a/unpackage/dist/dev/app-plus/app-view.js b/unpackage/dist/dev/app-plus/app-view.js
index 76fa709..b2ce6d9 100644
--- a/unpackage/dist/dev/app-plus/app-view.js
+++ b/unpackage/dist/dev/app-plus/app-view.js
@@ -29509,14 +29509,34 @@ var render = function () {
},
[_vm._v("¥")]
),
- _vm._v(
- _svm._$g(
- "58-" +
- _si +
- $30,
- "t1-0"
- )
- ),
+ _svm._$g(
+ "60-" +
+ _si +
+ $30,
+ "i"
+ )
+ ? _c(
+ "v-uni-text",
+ {
+ attrs: {
+ _i:
+ "60-" +
+ _si +
+ $30,
+ },
+ },
+ [
+ _vm._v(
+ _svm._$g(
+ "60-" +
+ _si +
+ $30,
+ "t0-0"
+ )
+ ),
+ ]
+ )
+ : _vm._e(),
],
1
),
@@ -29528,7 +29548,7 @@ var render = function () {
{
staticClass:
_svm._$g(
- "60-" +
+ "61-" +
_si +
$30,
"sc"
@@ -29539,7 +29559,7 @@ var render = function () {
},
attrs: {
_i:
- "60-" +
+ "61-" +
_si +
$30,
},
@@ -29548,7 +29568,7 @@ var render = function () {
_c("uni-view", {
staticClass:
_svm._$g(
- "61-" +
+ "62-" +
_si +
$30,
"sc"
@@ -29559,7 +29579,7 @@ var render = function () {
},
attrs: {
_i:
- "61-" +
+ "62-" +
_si +
$30,
},
@@ -29569,7 +29589,7 @@ var render = function () {
{
staticClass:
_svm._$g(
- "62-" +
+ "63-" +
_si +
$30,
"sc"
@@ -29580,7 +29600,7 @@ var render = function () {
},
attrs: {
_i:
- "62-" +
+ "63-" +
_si +
$30,
},
@@ -29589,7 +29609,7 @@ var render = function () {
_vm._v(
"×" +
_svm._$g(
- "62-" +
+ "63-" +
_si +
$30,
"t0-0"
@@ -29607,17 +29627,17 @@ var render = function () {
"uni-view",
{
attrs: {
- _i: "63-" + $30,
+ _i: "64-" + $30,
},
},
[
_c("uni-view", {
staticClass: _svm._$g(
- "64-" + $30,
+ "65-" + $30,
"sc"
),
attrs: {
- _i: "64-" + $30,
+ _i: "65-" + $30,
},
}),
_c(
@@ -29625,11 +29645,11 @@ var render = function () {
{
staticClass:
_svm._$g(
- "65-" + $30,
+ "66-" + $30,
"sc"
),
attrs: {
- _i: "65-" + $30,
+ _i: "66-" + $30,
},
},
[
@@ -29638,7 +29658,7 @@ var render = function () {
{
staticClass:
_svm._$g(
- "66-" + $30,
+ "67-" + $30,
"sc"
),
staticStyle: {
@@ -29647,7 +29667,7 @@ var render = function () {
},
attrs: {
_i:
- "66-" + $30,
+ "67-" + $30,
},
},
[
@@ -29661,19 +29681,19 @@ var render = function () {
{
staticClass:
_svm._$g(
- "67-" + $30,
+ "68-" + $30,
"sc"
),
attrs: {
_i:
- "67-" + $30,
+ "68-" + $30,
},
},
[
_vm._v(
"×" +
_svm._$g(
- "67-" +
+ "68-" +
$30 +
_si,
"t0-0"
@@ -29702,28 +29722,28 @@ var render = function () {
"margin-top": "10rpx",
overflow: "hidden",
},
- attrs: { _i: "68-" + _si },
+ attrs: { _i: "69-" + _si },
},
[
_c(
"uni-view",
{
staticClass: _svm._$g(
- "69-" + _si,
+ "70-" + _si,
"sc"
),
staticStyle: {
float: "right",
width: "auto !important",
},
- attrs: { _i: "69-" + _si },
+ attrs: { _i: "70-" + _si },
},
[
_c(
"uni-view",
{
staticClass: _svm._$g(
- "70-" + _si,
+ "71-" + _si,
"sc"
),
staticStyle: {
@@ -29733,7 +29753,7 @@ var render = function () {
display: "flex",
"align-items": "center",
},
- attrs: { _i: "70-" + _si },
+ attrs: { _i: "71-" + _si },
},
[
_c(
@@ -29746,7 +29766,7 @@ var render = function () {
"font-weight": "500",
"margin-right": "10rpx",
},
- attrs: { _i: "71-" + _si },
+ attrs: { _i: "72-" + _si },
},
[_vm._v("实付款")]
),
@@ -29761,27 +29781,9 @@ var render = function () {
"font-size": "30rpx",
"font-weight": "700",
},
- attrs: { _i: "72-" + _si },
+ attrs: { _i: "73-" + _si },
},
[
- _svm._$g("73-" + _si, "i")
- ? _c(
- "v-uni-text",
- {
- attrs: {
- _i: "73-" + _si,
- },
- },
- [
- _vm._v(
- _svm._$g(
- "73-" + _si,
- "t0-0"
- )
- ),
- ]
- )
- : _vm._e(),
_svm._$g("74-" + _si, "i")
? _c(
"v-uni-text",
@@ -29792,11 +29794,10 @@ var render = function () {
},
[
_vm._v(
- "¥" +
- _svm._$g(
- "74-" + _si,
- "t0-0"
- )
+ _svm._$g(
+ "74-" + _si,
+ "t0-0"
+ )
),
]
)
@@ -29805,28 +29806,88 @@ var render = function () {
? _c(
"v-uni-text",
{
- staticStyle: {
- margin: "0 4rpx",
- },
attrs: {
_i: "75-" + _si,
},
},
- [_vm._v("+")]
+ [
+ _svm._$g(
+ "76-" + _si,
+ "i"
+ )
+ ? _c(
+ "v-uni-text",
+ {
+ attrs: {
+ _i:
+ "76-" +
+ _si,
+ },
+ },
+ [
+ _vm._v(
+ "¥" +
+ _svm._$g(
+ "76-" +
+ _si,
+ "t0-0"
+ )
+ ),
+ ]
+ )
+ : _vm._e(),
+ _svm._$g(
+ "77-" + _si,
+ "i"
+ )
+ ? _c(
+ "v-uni-text",
+ {
+ attrs: {
+ _i:
+ "77-" +
+ _si,
+ },
+ },
+ [_vm._v("¥0")]
+ )
+ : _vm._e(),
+ _svm._$g(
+ "78-" + _si,
+ "i"
+ )
+ ? _c(
+ "v-uni-text",
+ {
+ staticStyle: {
+ margin:
+ "0 4rpx",
+ },
+ attrs: {
+ _i:
+ "78-" +
+ _si,
+ },
+ },
+ [_vm._v("+")]
+ )
+ : _vm._e(),
+ ],
+ 1
)
: _vm._e(),
- _svm._$g("76-" + _si, "i")
+ _svm._$g("79-" + _si, "i")
? _c(
"v-uni-text",
{
attrs: {
- _i: "76-" + _si,
+ _i: "79-" + _si,
},
},
[
_vm._v(
_svm._$g(
- "76-" + _si,
+ "79-" + _si,
"t0-0"
) + " 积分"
),
@@ -29845,22 +29906,22 @@ var render = function () {
],
1
),
- _svm._$g("77-" + _si, "i")
+ _svm._$g("80-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "77-" + _si,
+ "80-" + _si,
"sc"
),
- attrs: { _i: "77-" + _si },
+ attrs: { _i: "80-" + _si },
},
[
- _svm._$g("78-" + _si, "i")
+ _svm._$g("81-" + _si, "i")
? _c(
"uni-view",
{
- attrs: { _i: "78-" + _si },
+ attrs: { _i: "81-" + _si },
nativeOn: {
click: function ($event) {
return _vm.$handleViewEvent(
@@ -29880,20 +29941,20 @@ var render = function () {
_c(
"uni-view",
{
- staticClass: _svm._$g("79-" + _si, "sc"),
+ staticClass: _svm._$g("82-" + _si, "sc"),
staticStyle: { "margin-top": "10rpx" },
- attrs: { _i: "79-" + _si },
+ attrs: { _i: "82-" + _si },
},
[
_c(
"uni-view",
{
staticClass: _svm._$g(
- "80-" + _si,
+ "83-" + _si,
"sc"
),
staticStyle: { color: "#c0c4cc" },
- attrs: { _i: "80-" + _si },
+ attrs: { _i: "83-" + _si },
nativeOn: {
click: function ($event) {
return _vm.$handleViewEvent(
@@ -29909,21 +29970,21 @@ var render = function () {
"uni-view",
{
staticClass: _svm._$g(
- "81-" + _si,
+ "84-" + _si,
"sc"
),
- attrs: { _i: "81-" + _si },
+ attrs: { _i: "84-" + _si },
},
[
- _svm._$g("82-" + _si, "i")
+ _svm._$g("85-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "82-" + _si,
+ "85-" + _si,
"sc"
),
- attrs: { _i: "82-" + _si },
+ attrs: { _i: "85-" + _si },
on: {
click: function ($event) {
return _vm.$handleViewEvent(
@@ -29936,28 +29997,28 @@ var render = function () {
[_vm._v("继续付款")]
)
: _vm._e(),
- _svm._$g("83-" + _si, "i")
+ _svm._$g("86-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "83-" + _si,
+ "86-" + _si,
"sc"
),
- attrs: { _i: "83-" + _si },
+ attrs: { _i: "86-" + _si },
},
[_vm._v("催发货")]
)
: _vm._e(),
- _svm._$g("84-" + _si, "i")
+ _svm._$g("87-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "84-" + _si,
+ "87-" + _si,
"sc"
),
- attrs: { _i: "84-" + _si },
+ attrs: { _i: "87-" + _si },
nativeOn: {
click: function ($event) {
return _vm.$handleViewEvent(
@@ -29970,15 +30031,15 @@ var render = function () {
[_vm._v("查看物流")]
)
: _vm._e(),
- _svm._$g("85-" + _si, "i")
+ _svm._$g("88-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "85-" + _si,
+ "88-" + _si,
"sc"
),
- attrs: { _i: "85-" + _si },
+ attrs: { _i: "88-" + _si },
nativeOn: {
click: function ($event) {
return _vm.$handleViewEvent(
@@ -29991,15 +30052,15 @@ var render = function () {
[_vm._v("确认收货")]
)
: _vm._e(),
- _svm._$g("86-" + _si, "i")
+ _svm._$g("89-" + _si, "i")
? _c(
"uni-view",
{
staticClass: _svm._$g(
- "86-" + _si,
+ "89-" + _si,
"sc"
),
- attrs: { _i: "86-" + _si },
+ attrs: { _i: "89-" + _si },
},
[_vm._v("申请售后")]
)
@@ -30010,13 +30071,13 @@ var render = function () {
],
1
),
- _svm._$g("87-" + _si, "i")
+ _svm._$g("90-" + _si, "i")
? _c("uni-view", {
staticStyle: {
"border-bottom": "2rpx solid #e9e9e9",
height: "50rpx",
},
- attrs: { _i: "87-" + _si },
+ attrs: { _i: "90-" + _si },
})
: _vm._e(),
],
@@ -30041,7 +30102,7 @@ var render = function () {
_c(
"u-popup",
{
- attrs: { _i: 88 },
+ attrs: { _i: 91 },
on: {
close: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30051,17 +30112,17 @@ var render = function () {
[
_c(
"uni-view",
- { staticClass: _vm._$g(89, "sc"), attrs: { _i: 89 } },
+ { staticClass: _vm._$g(92, "sc"), attrs: { _i: 92 } },
[
- _vm._$g(90, "i")
+ _vm._$g(93, "i")
? _c(
"uni-view",
- { staticClass: _vm._$g(90, "sc"), attrs: { _i: 90 } },
+ { staticClass: _vm._$g(93, "sc"), attrs: { _i: 93 } },
[_vm._v("添加评价")]
)
: _c(
"uni-view",
- { staticClass: _vm._$g(91, "sc"), attrs: { _i: 91 } },
+ { staticClass: _vm._$g(94, "sc"), attrs: { _i: 94 } },
[_vm._v("添加追评")]
),
_c(
@@ -30071,53 +30132,26 @@ var render = function () {
"max-height": "1000rpx",
"overflow-y": "scroll",
},
- attrs: { _i: 92 },
+ attrs: { _i: 95 },
},
[
- _c("uni-forms", { attrs: { _i: 93 } }),
+ _c("uni-forms", { attrs: { _i: 96 } }),
_c(
"uni-view",
{
- staticClass: _vm._$g(94, "sc"),
+ staticClass: _vm._$g(97, "sc"),
staticStyle: { "border-bottom": "1px solid #eeeeee" },
- attrs: { _i: 94 },
+ attrs: { _i: 97 },
},
[
- _vm._$g(95, "i")
+ _vm._$g(98, "i")
? _c(
"uni-view",
{
- staticClass: _vm._$g(95, "sc"),
- attrs: { _i: 95 },
+ staticClass: _vm._$g(98, "sc"),
+ attrs: { _i: 98 },
},
[
- _c("uni-view", {
- class: _vm._$g(96, "c"),
- attrs: { _i: 96 },
- on: {
- click: function ($event) {
- return _vm.$handleViewEvent($event)
- },
- },
- }),
- _c("uni-view", {
- class: _vm._$g(97, "c"),
- attrs: { _i: 97 },
- on: {
- click: function ($event) {
- return _vm.$handleViewEvent($event)
- },
- },
- }),
- _c("uni-view", {
- class: _vm._$g(98, "c"),
- attrs: { _i: 98 },
- on: {
- click: function ($event) {
- return _vm.$handleViewEvent($event)
- },
- },
- }),
_c("uni-view", {
class: _vm._$g(99, "c"),
attrs: { _i: 99 },
@@ -30136,20 +30170,47 @@ var render = function () {
},
},
}),
+ _c("uni-view", {
+ class: _vm._$g(101, "c"),
+ attrs: { _i: 101 },
+ on: {
+ click: function ($event) {
+ return _vm.$handleViewEvent($event)
+ },
+ },
+ }),
+ _c("uni-view", {
+ class: _vm._$g(102, "c"),
+ attrs: { _i: 102 },
+ on: {
+ click: function ($event) {
+ return _vm.$handleViewEvent($event)
+ },
+ },
+ }),
+ _c("uni-view", {
+ class: _vm._$g(103, "c"),
+ attrs: { _i: 103 },
+ on: {
+ click: function ($event) {
+ return _vm.$handleViewEvent($event)
+ },
+ },
+ }),
],
1
)
: _vm._e(),
- _vm._$g(101, "i")
+ _vm._$g(104, "i")
? _c(
"uni-view",
{
- staticClass: _vm._$g(101, "sc"),
- attrs: { _i: 101 },
+ staticClass: _vm._$g(104, "sc"),
+ attrs: { _i: 104 },
},
[
_c("u-upload", {
- attrs: { _i: 102 },
+ attrs: { _i: 105 },
on: {
afterRead: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30165,11 +30226,11 @@ var render = function () {
: _vm._e(),
_c(
"uni-view",
- { staticClass: _vm._$g(103, "sc"), attrs: { _i: 103 } },
+ { staticClass: _vm._$g(106, "sc"), attrs: { _i: 106 } },
[
_c("i", {
- class: _vm._$g(104, "c"),
- attrs: { _i: 104 },
+ class: _vm._$g(107, "c"),
+ attrs: { _i: 107 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30177,12 +30238,12 @@ var render = function () {
},
}),
_c("v-uni-textarea", {
- staticClass: _vm._$g(105, "sc"),
+ staticClass: _vm._$g(108, "sc"),
attrs: {
"placeholder-style":
"font-size:24rpx;color:#aaaaaa;",
placeholder: "请输入您要发送的内容",
- _i: 105,
+ _i: 108,
},
on: {
focus: function ($event) {
@@ -30196,7 +30257,7 @@ var render = function () {
},
},
model: {
- value: _vm._$g(105, "v-model"),
+ value: _vm._$g(108, "v-model"),
callback: function () {},
expression: "Pform.comment",
},
@@ -30206,13 +30267,13 @@ var render = function () {
),
_c(
"uni-view",
- { attrs: { _i: 106 } },
+ { attrs: { _i: 109 } },
[
- _vm._$g(107, "i")
+ _vm._$g(110, "i")
? _c(
"u-button",
{
- attrs: { _i: 107 },
+ attrs: { _i: 110 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30224,7 +30285,7 @@ var render = function () {
: _c(
"u-button",
{
- attrs: { _i: 108 },
+ attrs: { _i: 111 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30243,12 +30304,12 @@ var render = function () {
"uni-view",
{
staticStyle: { position: "relative" },
- attrs: { _i: 109 },
+ attrs: { _i: 112 },
},
[
- _vm._$g(110, "i")
+ _vm._$g(113, "i")
? _c("emotion", {
- attrs: { _i: 110 },
+ attrs: { _i: 113 },
on: {
emotion: function ($event) {
return _vm.$handleViewEvent($event)
@@ -30268,9 +30329,9 @@ var render = function () {
],
1
),
- _c("z-navigation", { attrs: { _i: 111 } }),
+ _c("z-navigation", { attrs: { _i: 114 } }),
_c("u-action-sheet", {
- attrs: { _i: 112 },
+ attrs: { _i: 115 },
on: {
close: function ($event) {
return _vm.$handleViewEvent($event)
@@ -32918,24 +32979,27 @@ var render = function () {
]
: _vm._e(),
_vm._$g(103, "i")
+ ? [_vm._v("¥0")]
+ : _vm._e(),
+ _vm._$g(104, "i")
? _c(
"v-uni-text",
{
staticStyle: {
margin: "0 4rpx",
},
- attrs: { _i: 103 },
+ attrs: { _i: 104 },
},
[_vm._v("+")]
)
: _vm._e(),
- _vm._$g(104, "i")
+ _vm._$g(105, "i")
? _c(
"v-uni-text",
- { attrs: { _i: 104 } },
+ { attrs: { _i: 105 } },
[
_vm._v(
- _vm._$g(104, "t0-0") +
+ _vm._$g(105, "t0-0") +
" 积分"
),
]
@@ -32953,20 +33017,20 @@ var render = function () {
),
_c(
"uni-view",
- { staticClass: _vm._$g(105, "sc"), attrs: { _i: 105 } },
+ { staticClass: _vm._$g(106, "sc"), attrs: { _i: 106 } },
[
_c(
"uni-view",
{
- staticClass: _vm._$g(106, "sc"),
- attrs: { _i: 106 },
+ staticClass: _vm._$g(107, "sc"),
+ attrs: { _i: 107 },
},
[
_c(
"span",
{
staticStyle: { color: "#666", float: "left" },
- attrs: { _i: 107 },
+ attrs: { _i: 108 },
},
[_vm._v("订单编号 :")]
),
@@ -32977,16 +33041,16 @@ var render = function () {
"font-size": "24rpx",
color: "#666",
},
- attrs: { _i: 108 },
+ attrs: { _i: 109 },
},
- [_vm._v(_vm._$g(108, "t0-0"))]
+ [_vm._v(_vm._$g(109, "t0-0"))]
),
_c("u-tag", {
staticStyle: {
float: "right",
"margin-left": "5rpx",
},
- attrs: { _i: 109 },
+ attrs: { _i: 110 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -32999,8 +33063,8 @@ var render = function () {
_c(
"uni-view",
{
- staticClass: _vm._$g(110, "sc"),
- attrs: { _i: 110 },
+ staticClass: _vm._$g(111, "sc"),
+ attrs: { _i: 111 },
},
[
_c(
@@ -33011,7 +33075,7 @@ var render = function () {
"margin-right": "10rpx",
float: "left",
},
- attrs: { _i: 111 },
+ attrs: { _i: 112 },
},
[_vm._v("创建时间 :")]
),
@@ -33022,19 +33086,19 @@ var render = function () {
"font-size": "24rpx",
color: "#666",
},
- attrs: { _i: 112 },
+ attrs: { _i: 113 },
},
- [_vm._v(_vm._$g(112, "t0-0"))]
+ [_vm._v(_vm._$g(113, "t0-0"))]
),
],
1
),
- _vm._$g(113, "i")
+ _vm._$g(114, "i")
? _c(
"uni-view",
{
- staticClass: _vm._$g(113, "sc"),
- attrs: { _i: 113 },
+ staticClass: _vm._$g(114, "sc"),
+ attrs: { _i: 114 },
},
[
_c(
@@ -33045,7 +33109,7 @@ var render = function () {
"margin-right": "10rpx",
float: "left",
},
- attrs: { _i: 114 },
+ attrs: { _i: 115 },
},
[_vm._v("付款时间 :")]
),
@@ -33056,9 +33120,9 @@ var render = function () {
"font-size": "24rpx",
color: "#666",
},
- attrs: { _i: 115 },
+ attrs: { _i: 116 },
},
- [_vm._v(_vm._$g(115, "t0-0"))]
+ [_vm._v(_vm._$g(116, "t0-0"))]
),
],
1
@@ -33074,7 +33138,7 @@ var render = function () {
"uni-view",
{
staticStyle: { "text-align": "center", width: "100%" },
- attrs: { _i: 116 },
+ attrs: { _i: 117 },
},
[
_c(
@@ -33084,7 +33148,7 @@ var render = function () {
color: "cadetblue",
"font-size": "26rpx",
},
- attrs: { _i: 117 },
+ attrs: { _i: 118 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33105,10 +33169,10 @@ var render = function () {
),
_c(
"uni-view",
- { staticClass: _vm._$g(118, "sc"), attrs: { _i: 118 } },
+ { staticClass: _vm._$g(119, "sc"), attrs: { _i: 119 } },
[
_c("common-goods-nav", {
- attrs: { _i: 119 },
+ attrs: { _i: 120 },
on: {
submit: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33122,47 +33186,47 @@ var render = function () {
key: "leftSlot",
fn: function (slotProps, _svm, _si) {
return [
- _svm._$g("121-" + _si, "i")
+ _svm._$g("122-" + _si, "i")
? _c(
"uni-view",
{
- staticClass: _svm._$g("121-" + _si, "sc"),
- attrs: { _i: "121-" + _si },
+ staticClass: _svm._$g("122-" + _si, "sc"),
+ attrs: { _i: "122-" + _si },
},
[
_c(
"v-uni-text",
{
- staticClass: _svm._$g("122-" + _si, "sc"),
- attrs: { _i: "122-" + _si },
+ staticClass: _svm._$g("123-" + _si, "sc"),
+ attrs: { _i: "123-" + _si },
},
[
_vm._v("合计:"),
- _svm._$g("123-" + _si, "i")
+ _svm._$g("124-" + _si, "i")
? _c(
"v-uni-text",
{
staticClass: _svm._$g(
- "123-" + _si,
+ "124-" + _si,
"sc"
),
- attrs: { _i: "123-" + _si },
+ attrs: { _i: "124-" + _si },
},
[
_vm._v(
- "¥ " + _svm._$g("123-" + _si, "t0-0")
+ "¥ " + _svm._$g("124-" + _si, "t0-0")
),
]
)
: _c(
"v-uni-text",
{
- staticClass: _svm._$g(124, "sc"),
- attrs: { _i: 124 },
+ staticClass: _svm._$g(125, "sc"),
+ attrs: { _i: 125 },
},
[
_vm._v(
- "¥" + _svm._$g("124-" + _si, "t0-0")
+ "¥" + _svm._$g("125-" + _si, "t0-0")
),
]
),
@@ -33184,7 +33248,7 @@ var render = function () {
_c(
"u-popup",
{
- attrs: { _i: 125 },
+ attrs: { _i: 126 },
on: {
close: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33194,17 +33258,17 @@ var render = function () {
[
_c(
"uni-view",
- { staticClass: _vm._$g(126, "sc"), attrs: { _i: 126 } },
+ { staticClass: _vm._$g(127, "sc"), attrs: { _i: 127 } },
[
- _vm._$g(127, "i")
+ _vm._$g(128, "i")
? _c(
"uni-view",
- { staticClass: _vm._$g(127, "sc"), attrs: { _i: 127 } },
+ { staticClass: _vm._$g(128, "sc"), attrs: { _i: 128 } },
[_vm._v("添加评价")]
)
: _c(
"uni-view",
- { staticClass: _vm._$g(128, "sc"), attrs: { _i: 128 } },
+ { staticClass: _vm._$g(129, "sc"), attrs: { _i: 129 } },
[_vm._v("添加追评")]
),
_c(
@@ -33214,35 +33278,26 @@ var render = function () {
"max-height": "1000rpx",
"overflow-y": "scroll",
},
- attrs: { _i: 129 },
+ attrs: { _i: 130 },
},
[
- _c("uni-forms", { attrs: { _i: 130 } }),
+ _c("uni-forms", { attrs: { _i: 131 } }),
_c(
"uni-view",
{
- staticClass: _vm._$g(131, "sc"),
+ staticClass: _vm._$g(132, "sc"),
staticStyle: { "border-bottom": "1px solid #eeeeee" },
- attrs: { _i: 131 },
+ attrs: { _i: 132 },
},
[
- _vm._$g(132, "i")
+ _vm._$g(133, "i")
? _c(
"uni-view",
{
- staticClass: _vm._$g(132, "sc"),
- attrs: { _i: 132 },
+ staticClass: _vm._$g(133, "sc"),
+ attrs: { _i: 133 },
},
[
- _c("span", {
- class: _vm._$g(133, "c"),
- attrs: { _i: 133 },
- on: {
- click: function ($event) {
- return _vm.$handleViewEvent($event)
- },
- },
- }),
_c("span", {
class: _vm._$g(134, "c"),
attrs: { _i: 134 },
@@ -33279,20 +33334,29 @@ var render = function () {
},
},
}),
+ _c("span", {
+ class: _vm._$g(138, "c"),
+ attrs: { _i: 138 },
+ on: {
+ click: function ($event) {
+ return _vm.$handleViewEvent($event)
+ },
+ },
+ }),
],
1
)
: _vm._e(),
- _vm._$g(138, "i")
+ _vm._$g(139, "i")
? _c(
"uni-view",
{
- staticClass: _vm._$g(138, "sc"),
- attrs: { _i: 138 },
+ staticClass: _vm._$g(139, "sc"),
+ attrs: { _i: 139 },
},
[
_c("u-upload", {
- attrs: { _i: 139 },
+ attrs: { _i: 140 },
on: {
afterRead: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33308,11 +33372,11 @@ var render = function () {
: _vm._e(),
_c(
"uni-view",
- { staticClass: _vm._$g(140, "sc"), attrs: { _i: 140 } },
+ { staticClass: _vm._$g(141, "sc"), attrs: { _i: 141 } },
[
_c("i", {
- class: _vm._$g(141, "c"),
- attrs: { _i: 141 },
+ class: _vm._$g(142, "c"),
+ attrs: { _i: 142 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33320,12 +33384,12 @@ var render = function () {
},
}),
_c("v-uni-textarea", {
- staticClass: _vm._$g(142, "sc"),
+ staticClass: _vm._$g(143, "sc"),
attrs: {
"placeholder-style":
"font-size:24rpx;color:#aaaaaa;",
placeholder: "请输入您要发送的内容",
- _i: 142,
+ _i: 143,
},
on: {
focus: function ($event) {
@@ -33339,7 +33403,7 @@ var render = function () {
},
},
model: {
- value: _vm._$g(142, "v-model"),
+ value: _vm._$g(143, "v-model"),
callback: function () {},
expression: "Pform.comment",
},
@@ -33349,13 +33413,13 @@ var render = function () {
),
_c(
"uni-view",
- { attrs: { _i: 143 } },
+ { attrs: { _i: 144 } },
[
- _vm._$g(144, "i")
+ _vm._$g(145, "i")
? _c(
"u-button",
{
- attrs: { _i: 144 },
+ attrs: { _i: 145 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33367,7 +33431,7 @@ var render = function () {
: _c(
"u-button",
{
- attrs: { _i: 145 },
+ attrs: { _i: 146 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33386,12 +33450,12 @@ var render = function () {
"uni-view",
{
staticStyle: { position: "relative" },
- attrs: { _i: 146 },
+ attrs: { _i: 147 },
},
[
- _vm._$g(147, "i")
+ _vm._$g(148, "i")
? _c("emotion", {
- attrs: { _i: 147 },
+ attrs: { _i: 148 },
on: {
emotion: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33414,7 +33478,7 @@ var render = function () {
_c(
"u-popup",
{
- attrs: { _i: 148 },
+ attrs: { _i: 149 },
on: {
close: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33425,26 +33489,26 @@ var render = function () {
_c(
"uni-view",
{
- staticClass: _vm._$g(149, "sc"),
+ staticClass: _vm._$g(150, "sc"),
staticStyle: { height: "500rpx", "overflow-y": "scroll" },
- attrs: { _i: 149 },
+ attrs: { _i: 150 },
},
[
_c(
"uni-view",
- { staticClass: _vm._$g(150, "sc"), attrs: { _i: 150 } },
+ { staticClass: _vm._$g(151, "sc"), attrs: { _i: 151 } },
[_vm._v("请选择要查看包裹")]
),
_c(
"uni-view",
- { staticClass: _vm._$g(151, "sc"), attrs: { _i: 151 } },
- _vm._l(_vm._$g(152, "f"), function (item, index, $21, $31) {
+ { staticClass: _vm._$g(152, "sc"), attrs: { _i: 152 } },
+ _vm._l(_vm._$g(153, "f"), function (item, index, $21, $31) {
return _c(
"uni-view",
{
key: item,
- staticClass: _vm._$g("152-" + $31, "sc"),
- attrs: { _i: "152-" + $31 },
+ staticClass: _vm._$g("153-" + $31, "sc"),
+ attrs: { _i: "153-" + $31 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33456,18 +33520,18 @@ var render = function () {
"h4",
{
staticStyle: { "margin-bottom": "10rpx" },
- attrs: { _i: "153-" + $31 },
+ attrs: { _i: "154-" + $31 },
},
- [_vm._v("包裹 " + _vm._$g("153-" + $31, "t0-0"))]
+ [_vm._v("包裹 " + _vm._$g("154-" + $31, "t0-0"))]
),
_c(
"uni-view",
- { attrs: { _i: "154-" + $31 } },
+ { attrs: { _i: "155-" + $31 } },
[
- _vm._v("运单号:" + _vm._$g("154-" + $31, "t0-0")),
+ _vm._v("运单号:" + _vm._$g("155-" + $31, "t0-0")),
_c("u-tag", {
- staticClass: _vm._$g("155-" + $31, "sc"),
- attrs: { _i: "155-" + $31 },
+ staticClass: _vm._$g("156-" + $31, "sc"),
+ attrs: { _i: "156-" + $31 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -33477,8 +33541,8 @@ var render = function () {
],
1
),
- _c("uni-view", { attrs: { _i: "156-" + $31 } }, [
- _vm._v("发货时间:" + _vm._$g("156-" + $31, "t0-0")),
+ _c("uni-view", { attrs: { _i: "157-" + $31 } }, [
+ _vm._v("发货时间:" + _vm._$g("157-" + $31, "t0-0")),
]),
],
1
@@ -33492,7 +33556,7 @@ var render = function () {
],
1
),
- _c("music-play", { attrs: { _i: 157 } }),
+ _c("music-play", { attrs: { _i: 158 } }),
],
1
)