diff --git a/apis/http.js b/apis/http.js
index e57ca76..fdbb4b9 100644
--- a/apis/http.js
+++ b/apis/http.js
@@ -18,7 +18,7 @@ class HttpConfig {
// baseUrl = "https://z.csgmall.com.cn/gl"
// baseUrl = "http://192.168.2.160:39080" // 梁超
// baseUrl = "http://192.168.2.218:39080" // 福
- target = "http://192.168.43.200:39080"; // 开发阶段后台ip
+ target = "http://192.168.0.56:21627"; // 开发阶段后台ip
// #endif
// 基地址 (部署时使用 需要加 dev-api)
// authPath = `${this.baseUrl}/dev-api/auth`
diff --git a/pages/exitMaterialSelect/exitMaterialSelect.vue b/pages/exitMaterialSelect/exitMaterialSelect.vue
index dcafb20..b06db03 100644
--- a/pages/exitMaterialSelect/exitMaterialSelect.vue
+++ b/pages/exitMaterialSelect/exitMaterialSelect.vue
@@ -1,417 +1,438 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 类型名称:{{item.typeName}}
- 规格编号:{{item.typeCode}}
- 当前在用量:{{item.num}}
- 退料数量:
-
-
-
-
-
-
-
-
-
-
- 全选
-
-
-
-
- 提交
-
-
-
-
+
+
+
+
+
+
+
+ 全选
+
+
+
+
+ 提交
+
+
+
+
-
-
+
\ No newline at end of file
+ body {
+ box-sizing: border-box;
+ padding-bottom: 10vh;
+ }
+
+ .search-bar {
+ width: 95%;
+ margin: 20rpx auto;
+ }
+
+ /deep/uni-checkbox .uni-checkbox-input {
+ border-radius: 50%;
+ }
+
+ /deep/uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked {
+ border-color: #ddd;
+ color: #fff !important;
+ background-color: #2dcf8c !important;
+ }
+
+ /deep/uni-checkbox .uni-checkbox-input {
+ border-color: #ddd;
+ }
+
+ /deep/uni-checkbox .uni-checkbox-input:hover {
+ border-color: #ddd;
+ }
+
+ .search {
+ padding-top: 20rpx;
+ }
+
+ .search .searchIput {
+ background-color: #e6e6e6;
+ width: 95%;
+ margin: 0 auto;
+ height: 72rpx;
+ line-height: 72rpx;
+ border-radius: 50rpx;
+ padding: 0 32rpx;
+ box-sizing: border-box;
+ display: flex;
+ align-items: center;
+ }
+
+ .search .searchIput input {
+ font-size: 26rpx;
+ width: 100%;
+ color: grey;
+ }
+
+ .search .searchIput image {
+ width: 34rpx;
+ height: 34rpx;
+ }
+
+ .dataInfo {
+ width: 95%;
+ margin: 0 auto;
+ }
+
+ .dataInfo .dataList {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ border-bottom: 2px solid #f1f1f1;
+ padding: 25rpx 0;
+ }
+
+ .dataInfo .dataList .details {
+ display: flex;
+ align-items: center;
+ flex: 1;
+ font-size: 0;
+ }
+
+ .dataInfo .dataList .details .img image {
+ width: 200rpx;
+ height: 140rpx;
+ padding: 0 20rpx;
+ }
+
+ .dataInfo .dataList .details .text text {
+ color: #000;
+ font-size: 23rpx;
+ display: block;
+ padding: 10rpx 0;
+ }
+
+ .dataInfo .dataList .details .text {
+ color: red;
+ font-size: 25rpx;
+ }
+
+ .dataInfo .dataList .action text {
+ font-size: 25rpx;
+ color: #000;
+ border: 1px solid #c8c7cc;
+ display: inline-block;
+ line-height: 50rpx;
+ width: 60rpx;
+ text-align: center;
+ box-sizing: border-box;
+ }
+
+ .dataInfo .dataList .action text:nth-child(2) {
+ border-left: none;
+ border-right: none;
+ }
+
+ .buy {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ position: fixed;
+ left: 50%;
+ bottom: 0;
+ width: 95%;
+ transform: translate(-50%, 0);
+ }
+
+ .buy .checked {
+ display: flex;
+ align-items: center;
+ }
+
+ .buy .checked text {
+ font-size: 25rpx;
+ color: #000;
+ padding: 0 12rpx;
+ }
+
+ .buy .total {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ }
+
+ .buy .total .price {
+ padding-right: 20rpx;
+ }
+
+ .buy .total .price text {
+ font-size: 27rpx;
+ color: #c8c7cc;
+ display: inline-block;
+ }
+
+ .buy .total .price text:last-child {
+ color: red;
+ font-weight: bold;
+ }
+
+ .buy .total .bill text {
+ font-size: 25rpx;
+ color: #fff;
+ display: inline-block;
+ background-color: red;
+ line-height: 70rpx;
+ width: 150rpx;
+ text-align: center;
+ }
+
diff --git a/unpackage/dist/dev/app-plus/app-service.js b/unpackage/dist/dev/app-plus/app-service.js
index b2cdd77..4583899 100644
--- a/unpackage/dist/dev/app-plus/app-service.js
+++ b/unpackage/dist/dev/app-plus/app-service.js
@@ -3810,10 +3810,9 @@ var render = function () {
],
1
),
- _c("text"),
_c("button", {
- staticClass: _vm._$s(15, "sc", "submit-btn"),
- attrs: { _i: 15 },
+ staticClass: _vm._$s(14, "sc", "submit-btn"),
+ attrs: { _i: 14 },
on: { click: _vm.accountSubmit },
}),
],
@@ -3826,17 +3825,17 @@ var render = function () {
{
name: "show",
rawName: "v-show",
- value: _vm._$s(16, "v-show", _vm.switchStatus == 2),
- expression: "_$s(16,'v-show',switchStatus == 2)",
+ value: _vm._$s(15, "v-show", _vm.switchStatus == 2),
+ expression: "_$s(15,'v-show',switchStatus == 2)",
},
],
ref: "veriForm",
- staticClass: _vm._$s(16, "sc", "form-area"),
+ staticClass: _vm._$s(15, "sc", "form-area"),
attrs: {
modelValue: _vm.veriFormData,
rules: _vm.veriRules,
"label-position": "top",
- _i: 16,
+ _i: 15,
},
},
[
@@ -3848,7 +3847,7 @@ var render = function () {
required: true,
label: "手机号码",
"label-width": "100",
- _i: 17,
+ _i: 16,
},
},
[
@@ -3857,10 +3856,10 @@ var render = function () {
placeholder: "请输入手机号码",
type: "number",
maxlength: "11",
- _i: 18,
+ _i: 17,
},
model: {
- value: _vm._$s(18, "v-model", _vm.veriFormData.phone),
+ value: _vm._$s(17, "v-model", _vm.veriFormData.phone),
callback: function ($$v) {
_vm.$set(_vm.veriFormData, "phone", $$v)
},
@@ -3878,7 +3877,7 @@ var render = function () {
required: true,
label: "验证码",
"label-width": "100",
- _i: 19,
+ _i: 18,
},
},
[
@@ -3887,10 +3886,10 @@ var render = function () {
type: "number",
maxlength: "6",
placeholder: "请输入验证码",
- _i: 20,
+ _i: 19,
},
model: {
- value: _vm._$s(20, "v-model", _vm.veriFormData.code),
+ value: _vm._$s(19, "v-model", _vm.veriFormData.code),
callback: function ($$v) {
_vm.$set(_vm.veriFormData, "code", $$v)
},
@@ -3900,20 +3899,20 @@ var render = function () {
_c(
"button",
{
- staticClass: _vm._$s(21, "sc", "count-down"),
+ staticClass: _vm._$s(20, "sc", "count-down"),
attrs: {
- disabled: _vm._$s(21, "a-disabled", _vm.sendDisabled),
- _i: 21,
+ disabled: _vm._$s(20, "a-disabled", _vm.sendDisabled),
+ _i: 20,
},
on: { click: _vm.sendVeriCode },
},
[
- _vm._$s(22, "i", _vm.countDownStatus == 0)
+ _vm._$s(21, "i", _vm.countDownStatus == 0)
? _c("span")
: _vm._e(),
- _vm._$s(23, "i", _vm.countDownStatus == 1)
+ _vm._$s(22, "i", _vm.countDownStatus == 1)
? _c("span", [
- _vm._v(_vm._$s(23, "t0-0", _vm._s(_vm.countDown))),
+ _vm._v(_vm._$s(22, "t0-0", _vm._s(_vm.countDown))),
])
: _vm._e(),
]
@@ -3922,8 +3921,8 @@ var render = function () {
1
),
_c("button", {
- staticClass: _vm._$s(24, "sc", "submit-btn"),
- attrs: { _i: 24 },
+ staticClass: _vm._$s(23, "sc", "submit-btn"),
+ attrs: { _i: 23 },
on: { click: _vm.veriSubmit },
}),
],
@@ -3937,7 +3936,7 @@ var render = function () {
loading: _vm.showLoading,
color: "#000",
"loading-text": "登录中,请稍后...",
- _i: 25,
+ _i: 24,
},
}),
],
@@ -4657,7 +4656,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 20));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\nvar _user = _interopRequireDefault(__webpack_require__(/*! ../../store/user */ 38));\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n showLoading: false,\n accountFormData: {\n username: \"\",\n password: \"\"\n },\n veriFormData: {\n phone: \"\",\n code: \"\"\n },\n switchStatus: 1,\n countDown: 60,\n countDownStatus: 0,\n sendDisabled: false,\n givenCode: \"\",\n accountRules: {\n username: {\n rules: [{\n required: true,\n errorMessage: \"请输入用户名称!\"\n }]\n },\n password: {\n rules: [{\n required: true,\n errorMessage: \"请输入密码!\"\n }]\n }\n },\n veriRules: {\n phone: {\n rules: [{\n required: true,\n errorMessage: \"请输入手机号码!\"\n }]\n },\n code: {\n rules: [{\n required: true,\n errorMessage: \"请输入验证码!\"\n }]\n }\n }\n };\n },\n methods: {\n switchUpper: function switchUpper(count) {\n this.switchStatus = count;\n },\n sendVeriCode: function sendVeriCode() {\n var that = this;\n var phoneReg = /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/;\n if (!phoneReg.test(that.veriFormData.phone)) {\n uni.showToast({\n icon: \"none\",\n title: \"请输入正确格式的手机号!\"\n });\n } else {\n that.$api.login.codeLogin({\n phone: String(that.veriFormData.phone)\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/login/login.vue:187\");\n if (res.data.code !== 200) {\n // uni.showToast({\n // \ticon:'none',\n // \ttitle:res.data.msg\n // })\n uni.showModal({\n title: \"提示\",\n //标题\n content: res.data.msg,\n //提示内容\n showCancel: false //不显示取消按钮\n });\n } else {\n that.countDownStatus = 1;\n that.sendDisabled = true;\n var timeInterval = setInterval(function () {\n that.countDown -= 1;\n }, 1000);\n var timeOut = setTimeout(function () {\n that.countDownStatus = 0;\n that.countDown = 60;\n that.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:214\");\n uni.showToast({\n icon: \"error\",\n title: \"验证码获取失败\"\n });\n });\n }\n },\n veriSubmit: function veriSubmit() {\n var _this = this;\n var that = this;\n that.$refs.veriForm.validate().then(function (formRes) {\n that.showLoading = true;\n __f__(\"log\", formRes, \" at pages/login/login.vue:226\");\n that.$api.login.checkCode(formRes).then(function (res) {\n __f__(\"log\", res, \" at pages/login/login.vue:230\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var res;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n that.showLoading = false;\n _context.next = 3;\n return _this.$api.index.getUserInfo();\n case 3:\n res = _context.sent;\n __f__(\"log\", res, \"用户权限----\", \" at pages/login/login.vue:257\");\n // uni.switchTab({\n // \turl: '/pages/index/index'\n // })\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n function success() {\n return _success.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:274\");\n });\n });\n },\n accountSubmit: function accountSubmit() {\n var _this2 = this;\n var that = this;\n that.$refs.accountForm.validate().then(function (formData) {\n that.showLoading = true;\n __f__(\"log\", formData, \" at pages/login/login.vue:282\");\n that.$api.login.log(formData).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 __f__(\"log\", res, \" at pages/login/login.vue:286\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.setStorageSync(\"pwd\", formData.password);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _yield$_this2$$api$in, res;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n that.showLoading = false;\n _context2.next = 3;\n return _this2.$api.index.getUserInfo();\n case 3:\n _yield$_this2$$api$in = _context2.sent;\n res = _yield$_this2$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", res.permissions);\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n case 7:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n function success() {\n return _success2.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n case 2:\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 (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:335\");\n });\n });\n }\n },\n onShow: function onShow() {\n if (uni.getStorageSync(\"pwd\")) {\n this.accountFormData.password = uni.getStorageSync(\"pwd\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbG9naW4vbG9naW4udnVlIl0sIm5hbWVzIjpbImRhdGEiLCJzaG93TG9hZGluZyIsImFjY291bnRGb3JtRGF0YSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJ2ZXJpRm9ybURhdGEiLCJwaG9uZSIsImNvZGUiLCJzd2l0Y2hTdGF0dXMiLCJjb3VudERvd24iLCJjb3VudERvd25TdGF0dXMiLCJzZW5kRGlzYWJsZWQiLCJnaXZlbkNvZGUiLCJhY2NvdW50UnVsZXMiLCJydWxlcyIsInJlcXVpcmVkIiwiZXJyb3JNZXNzYWdlIiwidmVyaVJ1bGVzIiwibWV0aG9kcyIsInN3aXRjaFVwcGVyIiwic2VuZFZlcmlDb2RlIiwidW5pIiwiaWNvbiIsInRpdGxlIiwidGhhdCIsImNvZGVMb2dpbiIsInRoZW4iLCJjb250ZW50Iiwic2hvd0NhbmNlbCIsImNsZWFySW50ZXJ2YWwiLCJjbGVhclRpbWVvdXQiLCJjYXRjaCIsInZlcmlTdWJtaXQiLCJjaGVja0NvZGUiLCJyZXMiLCJzdWNjZXNzIiwiYWNjb3VudFN1Ym1pdCIsImxvZyIsInN0b3JlIiwidXJsIiwib25TaG93Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUErR0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2VBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUNBQztRQUNBQztRQUNBQztNQUNBO01BQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7UUFDQVY7VUFDQVcsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7UUFDQVo7VUFDQVUsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7TUFDQTtNQUNBQztRQUNBWDtVQUNBUSxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtRQUNBVDtVQUNBTyxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtNQUNBO0lBQ0E7RUFDQTtFQUNBRTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7UUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtNQUNBO1FBQ0FDLGdCQUNBQztVQUNBbkI7UUFDQSxHQUNBb0I7VUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBO1lBQ0E7WUFDQUw7Y0FDQUU7Y0FBQTtjQUNBSTtjQUFBO2NBQ0FDO1lBQ0E7VUFDQTtZQUNBSjtZQUNBQTtZQUNBO2NBQ0FBO1lBQ0E7WUFDQTtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBSztjQUNBQztZQUNBO1VBQ0E7UUFDQSxHQUNBQztVQUNBO1VBQ0FWO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQVM7TUFBQTtNQUNBO01BQ0FSO1FBQ0FBO1FBQ0E7UUFDQUEsZ0JBQ0FTLG1CQUNBUDtVQUNBO1VBQ0E7WUFDQUwsbUJBQ0EsWUFDQWEseUJBQ0E7WUFDQWIsbUJBQ0EsU0FDQWEsMkJBQ0E7WUFDQWIsbUJBQ0EsU0FDQWEsK0JBQ0E7WUFDQWIsbUJBQ0EsVUFDQWEsNkNBQ0E7WUFDQWI7Y0FDQUM7Y0FDQUM7Y0FDQVk7Z0JBQUE7a0JBQUE7a0JBQUE7b0JBQUE7c0JBQUE7d0JBQUE7MEJBQ0FYOzBCQUFBOzBCQUFBLE9BR0E7d0JBQUE7MEJBREFVOzBCQUdBOzBCQUNBOzBCQUNBOzBCQUNBO3dCQUFBO3dCQUFBOzBCQUFBO3NCQUFBO29CQUFBO2tCQUFBO2dCQUFBLENBQ0E7Z0JBQUE7a0JBQUE7Z0JBQUE7Z0JBQUE7Y0FBQTtZQUNBO1VBQ0E7WUFDQWI7Y0FDQUM7Y0FDQUM7Y0FDQVk7Z0JBQ0FYO2NBQ0E7WUFDQTtVQUNBO1FBQ0EsR0FDQU87VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBSztNQUFBO01BQ0E7TUFDQVo7UUFDQUE7UUFDQTtRQUNBQSxnQkFDQWEsY0FDQVg7VUFBQTtZQUFBO2NBQUE7Z0JBQUE7a0JBQUE7b0JBQ0E7b0JBQ0E7c0JBQ0FMLG1CQUNBLFlBQ0FhLHlCQUNBO3NCQUNBYixtQkFDQSxTQUNBYSwyQkFDQTtzQkFDQWIsbUJBQ0EsU0FDQWEsK0JBQ0E7c0JBQ0FiLG1CQUNBLFVBQ0FhLDZDQUNBO3NCQUNBYjtzQkFFQUE7d0JBQ0FDO3dCQUNBQzt3QkFDQVk7MEJBQUE7NEJBQUE7NEJBQUE7OEJBQUE7Z0NBQUE7a0NBQUE7b0NBQ0FYO29DQUFBO29DQUFBLE9BR0E7a0NBQUE7b0NBQUE7b0NBREFVO29DQUdBSSxxQkFDQSxtQkFDQUosZ0JBQ0E7b0NBQ0FiO3NDQUNBa0I7b0NBQ0E7a0NBQUE7a0NBQUE7b0NBQUE7Z0NBQUE7OEJBQUE7NEJBQUE7MEJBQUEsQ0FDQTswQkFBQTs0QkFBQTswQkFBQTswQkFBQTt3QkFBQTtzQkFDQTtvQkFDQTtzQkFDQWxCO3dCQUNBQzt3QkFDQUM7d0JBQ0FZOzBCQUNBWDt3QkFDQTtzQkFDQTtvQkFDQTtrQkFBQTtrQkFBQTtvQkFBQTtnQkFBQTtjQUFBO1lBQUE7VUFBQSxDQUNBO1VBQUE7WUFBQTtVQUFBO1FBQUEsS0FDQU87VUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FTO0lBQ0E7TUFDQTtJQUNBO0VBQ0E7QUFDQTtBQUFBLDJCIiwiZmlsZSI6Ijg3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gICAgPHZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJ1cHBlci1iZ2RcIj5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJsb2dvXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1hZ2Ugc3JjPVwiLi4vLi4vc3RhdGljL2xvZ28ucG5nXCIgbW9kZT1cIlwiPjwvaW1hZ2U+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJ0aXRcIj4g5pm65oWn5LuT5YKo566h55CG5bmz5Y+wIDwvdmlldz5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJzd2l0Y2gtbG9nXCI+XHJcbiAgICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbeyBhY3RpdmU6IHN3aXRjaFN0YXR1cyA9PSAxIH1dXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cInN3aXRjaFVwcGVyKDEpXCI+XHJcbiAgICAgICAgICAgICAgICDotKblj7fnmbvlvZVcclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiW3sgYWN0aXZlOiBzd2l0Y2hTdGF0dXMgPT0gMiB9XVwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzd2l0Y2hVcHBlcigyKVwiPlxyXG4gICAgICAgICAgICAgICAg5omL5py655m75b2VXHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJsb2dpbi1hcmVhXCI+XHJcbiAgICAgICAgICAgIDx1bmktZm9ybXNcclxuICAgICAgICAgICAgICAgIHYtc2hvdz1cInN3aXRjaFN0YXR1cyA9PSAxXCJcclxuICAgICAgICAgICAgICAgIHJlZj1cImFjY291bnRGb3JtXCJcclxuICAgICAgICAgICAgICAgIDptb2RlbFZhbHVlPVwiYWNjb3VudEZvcm1EYXRhXCJcclxuICAgICAgICAgICAgICAgIDpydWxlcz1cImFjY291bnRSdWxlc1wiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tYXJlYVwiXHJcbiAgICAgICAgICAgICAgICBsYWJlbC1wb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi55So5oi35ZCNXCJcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl55So5oi35ZCN56ewXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiNjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwiYWNjb3VudEZvcm1EYXRhLnVzZXJuYW1lXCI+PC91bmktZWFzeWlucHV0PlxyXG4gICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwYXNzd29yZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuWvhueggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWvhueggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImFjY291bnRGb3JtRGF0YS5wYXNzd29yZFwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzM2ODlmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIOW/mOiusOWvhueggVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInN1Ym1pdC1idG5cIiBAY2xpY2s9XCJhY2NvdW50U3VibWl0XCI+55m75b2VPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvdW5pLWZvcm1zPlxyXG4gICAgICAgICAgICA8dW5pLWZvcm1zXHJcbiAgICAgICAgICAgICAgICB2LXNob3c9XCJzd2l0Y2hTdGF0dXMgPT0gMlwiXHJcbiAgICAgICAgICAgICAgICByZWY9XCJ2ZXJpRm9ybVwiXHJcbiAgICAgICAgICAgICAgICA6bW9kZWxWYWx1ZT1cInZlcmlGb3JtRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6cnVsZXM9XCJ2ZXJpUnVsZXNcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWFyZWFcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWwtcG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwaG9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuaJi+acuuWPt+eggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaJi+acuuWPt+eggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLnBob25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTFcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLpqozor4HnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpemqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJ2ZXJpRm9ybURhdGEuY29kZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY291bnQtZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpkaXNhYmxlZD1cInNlbmREaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cInNlbmRWZXJpQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxNHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJjb3VudERvd25TdGF0dXMgPT0gMFwiPuWPkemAgemqjOivgeeggTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImNvdW50RG93blN0YXR1cyA9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb3VudERvd24gfX1zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIEBjbGljaz1cInZlcmlTdWJtaXRcIj7nmbvlvZU8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx1LWxvYWRpbmctcGFnZVxyXG4gICAgICAgICAgICA6bG9hZGluZz1cInNob3dMb2FkaW5nXCJcclxuICAgICAgICAgICAgY29sb3I9XCIjMDAwXCJcclxuICAgICAgICAgICAgbG9hZGluZy10ZXh0PVwi55m75b2V5LitLOivt+eojeWQji4uLlwiPjwvdS1sb2FkaW5nLXBhZ2U+XHJcbiAgICA8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG4gICAgaW1wb3J0IHsgYXV0aFBhdGgsIHB1YmxpY1BhdGgsIHN5c3RlbVBhdGggfSBmcm9tIFwiLi4vLi4vcHVibGljXCI7XHJcbiAgICBpbXBvcnQgc3RvcmUgZnJvbSBcIi4uLy4uL3N0b3JlL3VzZXJcIjtcclxuICAgIGV4cG9ydCBkZWZhdWx0IHtcclxuICAgICAgICBkYXRhKCkge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgc2hvd0xvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgYWNjb3VudEZvcm1EYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgdmVyaUZvcm1EYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGhvbmU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgY29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBzd2l0Y2hTdGF0dXM6IDEsXHJcbiAgICAgICAgICAgICAgICBjb3VudERvd246IDYwLFxyXG4gICAgICAgICAgICAgICAgY291bnREb3duU3RhdHVzOiAwLFxyXG4gICAgICAgICAgICAgICAgc2VuZERpc2FibGVkOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGdpdmVuQ29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgIGFjY291bnRSdWxlczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHVzZXJuYW1lOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeeUqOaIt+WQjeensO+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeWvhuegge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHZlcmlSdWxlczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHBob25lOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeaJi+acuuWPt+egge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGNvZGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl6aqM6K+B56CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWV0aG9kczoge1xyXG4gICAgICAgICAgICBzd2l0Y2hVcHBlcihjb3VudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zd2l0Y2hTdGF0dXMgPSBjb3VudDtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc2VuZFZlcmlDb2RlKCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBob25lUmVnID0gL14oPzooPzpcXCt8MDApODYpPzFbMy05XVxcZHs5fSQvO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFwaG9uZVJlZy50ZXN0KHRoYXQudmVyaUZvcm1EYXRhLnBob25lKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6K+36L6T5YWl5q2j56Gu5qC85byP55qE5omL5py65Y+377yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY29kZUxvZ2luKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBob25lOiBTdHJpbmcodGhhdC52ZXJpRm9ybURhdGEucGhvbmUpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgIT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFx0aWNvbjonbm9uZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gXHR0aXRsZTpyZXMuZGF0YS5tc2dcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLmj5DnpLpcIiwgLy/moIfpophcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogcmVzLmRhdGEubXNnLCAvL+aPkOekuuWGheWuuVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q2FuY2VsOiBmYWxzZSwgLy/kuI3mmL7npLrlj5bmtojmjInpkq5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd25TdGF0dXMgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2VuZERpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZUludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmNvdW50RG93biAtPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duU3RhdHVzID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd24gPSA2MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZW5kRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aW1lSW50ZXJ2YWwpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZU91dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTAwMCAqIDYwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcImVycm9yXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6aqM6K+B56CB6I635Y+W5aSx6LSlXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHZlcmlTdWJtaXQoKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLnZlcmlGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybVJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1SZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hlY2tDb2RlKGZvcm1SZXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidXNlckluZm9cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidG9rZW5cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5hY2Nlc3NfdG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb2xlc1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIucm9sZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZXB0SWRcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyLnN5c1VzZXIuZGVwdC5kZXB0SWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi55m75b2V5oiQ5Yqf77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXMgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcywgXCLnlKjmiLfmnYPpmZAtLS0tXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5pLnN3aXRjaFRhYih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYWNjb3VudFN1Ym1pdCgpIHtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMuYWNjb3VudEZvcm0udmFsaWRhdGUoKS50aGVuKChmb3JtRGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1EYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZyhmb3JtRGF0YSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ1c2VySW5mb1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b2tlblwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmFjY2Vzc190b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJvbGVzXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhLmRhdGEubG9naW5fdXNlci5yb2xlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlcHRJZFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIuc3lzVXNlci5kZXB0LmRlcHRJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwicHdkXCIsIGZvcm1EYXRhLnBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLnmbvlvZXmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzIH0gPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlNFVF9QRVJNSVNTSU9OU1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5wZXJtaXNzaW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvaW5kZXgvaW5kZXhcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICBvblNob3coKSB7XHJcbiAgICAgICAgICAgIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJwd2RcIikpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEZvcm1EYXRhLnBhc3N3b3JkID0gdW5pLmdldFN0b3JhZ2VTeW5jKFwicHdkXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgIH07XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlIGxhbmc9XCJzY3NzXCI+XHJcbiAgICBib2R5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvc3RhdGljL2xvZy1iZ2QucG5nXCIpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnVwcGVyLWJnZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAyNXZoO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwdmg7XHJcblxyXG4gICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHZoO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnZoO1xyXG5cclxuICAgICAgICAgICAgaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjM2M4N2YzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3dpdGNoLWxvZyB7XHJcbiAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMHJweDtcclxuICAgICAgICBtYXJnaW46IDZ2aCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDF2aDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnJweDtcclxuXHJcbiAgICAgICAgLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjYjRkMGZmO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxNXJweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubG9naW4tYXJlYSB7XHJcbiAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHBhZGRpbmc6IDN2aDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcnB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDVweCAjZTZlZWZlO1xyXG5cclxuICAgICAgICAudW5pLWZvcm1zLWl0ZW1fX2NvbnRlbnRbZGF0YS12LTYxZGZjMGQwXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3VibWl0LWJ0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzODg4ZmY7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTB2aCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJweDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG48L3N0eWxlPlxyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///87\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 */ 20));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\nvar _user = _interopRequireDefault(__webpack_require__(/*! ../../store/user */ 38));\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n showLoading: false,\n accountFormData: {\n username: \"\",\n password: \"\"\n },\n veriFormData: {\n phone: \"\",\n code: \"\"\n },\n switchStatus: 1,\n countDown: 60,\n countDownStatus: 0,\n sendDisabled: false,\n givenCode: \"\",\n accountRules: {\n username: {\n rules: [{\n required: true,\n errorMessage: \"请输入用户名称!\"\n }]\n },\n password: {\n rules: [{\n required: true,\n errorMessage: \"请输入密码!\"\n }]\n }\n },\n veriRules: {\n phone: {\n rules: [{\n required: true,\n errorMessage: \"请输入手机号码!\"\n }]\n },\n code: {\n rules: [{\n required: true,\n errorMessage: \"请输入验证码!\"\n }]\n }\n }\n };\n },\n methods: {\n switchUpper: function switchUpper(count) {\n this.switchStatus = count;\n },\n sendVeriCode: function sendVeriCode() {\n var that = this;\n var phoneReg = /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/;\n if (!phoneReg.test(that.veriFormData.phone)) {\n uni.showToast({\n icon: \"none\",\n title: \"请输入正确格式的手机号!\"\n });\n } else {\n that.$api.login.codeLogin({\n phone: String(that.veriFormData.phone)\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/login/login.vue:187\");\n if (res.data.code !== 200) {\n // uni.showToast({\n // \ticon:'none',\n // \ttitle:res.data.msg\n // })\n uni.showModal({\n title: \"提示\",\n //标题\n content: res.data.msg,\n //提示内容\n showCancel: false //不显示取消按钮\n });\n } else {\n that.countDownStatus = 1;\n that.sendDisabled = true;\n var timeInterval = setInterval(function () {\n that.countDown -= 1;\n }, 1000);\n var timeOut = setTimeout(function () {\n that.countDownStatus = 0;\n that.countDown = 60;\n that.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:214\");\n uni.showToast({\n icon: \"error\",\n title: \"验证码获取失败\"\n });\n });\n }\n },\n veriSubmit: function veriSubmit() {\n var _this = this;\n var that = this;\n that.$refs.veriForm.validate().then(function (formRes) {\n that.showLoading = true;\n __f__(\"log\", formRes, \" at pages/login/login.vue:226\");\n that.$api.login.checkCode(formRes).then(function (res) {\n __f__(\"log\", res, \" at pages/login/login.vue:230\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var res;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n that.showLoading = false;\n _context.next = 3;\n return _this.$api.index.getUserInfo();\n case 3:\n res = _context.sent;\n __f__(\"log\", res, \"用户权限----\", \" at pages/login/login.vue:257\");\n // uni.switchTab({\n // \turl: '/pages/index/index'\n // })\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n function success() {\n return _success.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:274\");\n });\n });\n },\n accountSubmit: function accountSubmit() {\n var _this2 = this;\n var that = this;\n that.$refs.accountForm.validate().then(function (formData) {\n that.showLoading = true;\n __f__(\"log\", formData, \" at pages/login/login.vue:282\");\n that.$api.login.log(formData).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 __f__(\"log\", res, \" at pages/login/login.vue:286\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.setStorageSync(\"pwd\", formData.password);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _yield$_this2$$api$in, res;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n that.showLoading = false;\n _context2.next = 3;\n return _this2.$api.index.getUserInfo();\n case 3:\n _yield$_this2$$api$in = _context2.sent;\n res = _yield$_this2$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", res.permissions);\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n case 7:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n function success() {\n return _success2.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n case 2:\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 (err) {\n __f__(\"log\", err, \" at pages/login/login.vue:335\");\n });\n });\n }\n },\n onShow: function onShow() {\n if (uni.getStorageSync(\"pwd\")) {\n this.accountFormData.password = uni.getStorageSync(\"pwd\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbG9naW4vbG9naW4udnVlIl0sIm5hbWVzIjpbImRhdGEiLCJzaG93TG9hZGluZyIsImFjY291bnRGb3JtRGF0YSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJ2ZXJpRm9ybURhdGEiLCJwaG9uZSIsImNvZGUiLCJzd2l0Y2hTdGF0dXMiLCJjb3VudERvd24iLCJjb3VudERvd25TdGF0dXMiLCJzZW5kRGlzYWJsZWQiLCJnaXZlbkNvZGUiLCJhY2NvdW50UnVsZXMiLCJydWxlcyIsInJlcXVpcmVkIiwiZXJyb3JNZXNzYWdlIiwidmVyaVJ1bGVzIiwibWV0aG9kcyIsInN3aXRjaFVwcGVyIiwic2VuZFZlcmlDb2RlIiwidW5pIiwiaWNvbiIsInRpdGxlIiwidGhhdCIsImNvZGVMb2dpbiIsInRoZW4iLCJjb250ZW50Iiwic2hvd0NhbmNlbCIsImNsZWFySW50ZXJ2YWwiLCJjbGVhclRpbWVvdXQiLCJjYXRjaCIsInZlcmlTdWJtaXQiLCJjaGVja0NvZGUiLCJyZXMiLCJzdWNjZXNzIiwiYWNjb3VudFN1Ym1pdCIsImxvZyIsInN0b3JlIiwidXJsIiwib25TaG93Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUErR0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2VBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUNBQztRQUNBQztRQUNBQztNQUNBO01BQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7UUFDQVY7VUFDQVcsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7UUFDQVo7VUFDQVUsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7TUFDQTtNQUNBQztRQUNBWDtVQUNBUSxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtRQUNBVDtVQUNBTyxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtNQUNBO0lBQ0E7RUFDQTtFQUNBRTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7UUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtNQUNBO1FBQ0FDLGdCQUNBQztVQUNBbkI7UUFDQSxHQUNBb0I7VUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBO1lBQ0E7WUFDQUw7Y0FDQUU7Y0FBQTtjQUNBSTtjQUFBO2NBQ0FDO1lBQ0E7VUFDQTtZQUNBSjtZQUNBQTtZQUNBO2NBQ0FBO1lBQ0E7WUFDQTtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBSztjQUNBQztZQUNBO1VBQ0E7UUFDQSxHQUNBQztVQUNBO1VBQ0FWO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQVM7TUFBQTtNQUNBO01BQ0FSO1FBQ0FBO1FBQ0E7UUFDQUEsZ0JBQ0FTLG1CQUNBUDtVQUNBO1VBQ0E7WUFDQUwsbUJBQ0EsWUFDQWEseUJBQ0E7WUFDQWIsbUJBQ0EsU0FDQWEsMkJBQ0E7WUFDQWIsbUJBQ0EsU0FDQWEsK0JBQ0E7WUFDQWIsbUJBQ0EsVUFDQWEsNkNBQ0E7WUFDQWI7Y0FDQUM7Y0FDQUM7Y0FDQVk7Z0JBQUE7a0JBQUE7a0JBQUE7b0JBQUE7c0JBQUE7d0JBQUE7MEJBQ0FYOzBCQUFBOzBCQUFBLE9BR0E7d0JBQUE7MEJBREFVOzBCQUdBOzBCQUNBOzBCQUNBOzBCQUNBO3dCQUFBO3dCQUFBOzBCQUFBO3NCQUFBO29CQUFBO2tCQUFBO2dCQUFBLENBQ0E7Z0JBQUE7a0JBQUE7Z0JBQUE7Z0JBQUE7Y0FBQTtZQUNBO1VBQ0E7WUFDQWI7Y0FDQUM7Y0FDQUM7Y0FDQVk7Z0JBQ0FYO2NBQ0E7WUFDQTtVQUNBO1FBQ0EsR0FDQU87VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBSztNQUFBO01BQ0E7TUFDQVo7UUFDQUE7UUFDQTtRQUNBQSxnQkFDQWEsY0FDQVg7VUFBQTtZQUFBO2NBQUE7Z0JBQUE7a0JBQUE7b0JBQ0E7b0JBQ0E7c0JBQ0FMLG1CQUNBLFlBQ0FhLHlCQUNBO3NCQUNBYixtQkFDQSxTQUNBYSwyQkFDQTtzQkFDQWIsbUJBQ0EsU0FDQWEsK0JBQ0E7c0JBQ0FiLG1CQUNBLFVBQ0FhLDZDQUNBO3NCQUNBYjtzQkFFQUE7d0JBQ0FDO3dCQUNBQzt3QkFDQVk7MEJBQUE7NEJBQUE7NEJBQUE7OEJBQUE7Z0NBQUE7a0NBQUE7b0NBQ0FYO29DQUFBO29DQUFBLE9BR0E7a0NBQUE7b0NBQUE7b0NBREFVO29DQUdBSSxxQkFDQSxtQkFDQUosZ0JBQ0E7b0NBQ0FiO3NDQUNBa0I7b0NBQ0E7a0NBQUE7a0NBQUE7b0NBQUE7Z0NBQUE7OEJBQUE7NEJBQUE7MEJBQUEsQ0FDQTswQkFBQTs0QkFBQTswQkFBQTswQkFBQTt3QkFBQTtzQkFDQTtvQkFDQTtzQkFDQWxCO3dCQUNBQzt3QkFDQUM7d0JBQ0FZOzBCQUNBWDt3QkFDQTtzQkFDQTtvQkFDQTtrQkFBQTtrQkFBQTtvQkFBQTtnQkFBQTtjQUFBO1lBQUE7VUFBQSxDQUNBO1VBQUE7WUFBQTtVQUFBO1FBQUEsS0FDQU87VUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FTO0lBQ0E7TUFDQTtJQUNBO0VBQ0E7QUFDQTtBQUFBLDJCIiwiZmlsZSI6Ijg3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gICAgPHZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJ1cHBlci1iZ2RcIj5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJsb2dvXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1hZ2Ugc3JjPVwiLi4vLi4vc3RhdGljL2xvZ28ucG5nXCIgbW9kZT1cIlwiPjwvaW1hZ2U+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJ0aXRcIj4g5pm65oWn5LuT5YKo566h55CG5bmz5Y+wIDwvdmlldz5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJzd2l0Y2gtbG9nXCI+XHJcbiAgICAgICAgICAgIDx2aWV3XHJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJbeyBhY3RpdmU6IHN3aXRjaFN0YXR1cyA9PSAxIH1dXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cInN3aXRjaFVwcGVyKDEpXCI+XHJcbiAgICAgICAgICAgICAgICDotKblj7fnmbvlvZVcclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiW3sgYWN0aXZlOiBzd2l0Y2hTdGF0dXMgPT0gMiB9XVwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzd2l0Y2hVcHBlcigyKVwiPlxyXG4gICAgICAgICAgICAgICAg5omL5py655m75b2VXHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJsb2dpbi1hcmVhXCI+XHJcbiAgICAgICAgICAgIDx1bmktZm9ybXNcclxuICAgICAgICAgICAgICAgIHYtc2hvdz1cInN3aXRjaFN0YXR1cyA9PSAxXCJcclxuICAgICAgICAgICAgICAgIHJlZj1cImFjY291bnRGb3JtXCJcclxuICAgICAgICAgICAgICAgIDptb2RlbFZhbHVlPVwiYWNjb3VudEZvcm1EYXRhXCJcclxuICAgICAgICAgICAgICAgIDpydWxlcz1cImFjY291bnRSdWxlc1wiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tYXJlYVwiXHJcbiAgICAgICAgICAgICAgICBsYWJlbC1wb3NpdGlvbj1cInRvcFwiPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi55So5oi35ZCNXCJcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWl55So5oi35ZCN56ewXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiNjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwiYWNjb3VudEZvcm1EYXRhLnVzZXJuYW1lXCI+PC91bmktZWFzeWlucHV0PlxyXG4gICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwYXNzd29yZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuWvhueggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWvhueggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImFjY291bnRGb3JtRGF0YS5wYXNzd29yZFwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzY4OWZmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAg5b+Y6K6w5a+G56CBXHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+IC0tPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInN1Ym1pdC1idG5cIiBAY2xpY2s9XCJhY2NvdW50U3VibWl0XCI+55m75b2VPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvdW5pLWZvcm1zPlxyXG4gICAgICAgICAgICA8dW5pLWZvcm1zXHJcbiAgICAgICAgICAgICAgICB2LXNob3c9XCJzd2l0Y2hTdGF0dXMgPT0gMlwiXHJcbiAgICAgICAgICAgICAgICByZWY9XCJ2ZXJpRm9ybVwiXHJcbiAgICAgICAgICAgICAgICA6bW9kZWxWYWx1ZT1cInZlcmlGb3JtRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6cnVsZXM9XCJ2ZXJpUnVsZXNcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWFyZWFcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWwtcG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwaG9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuaJi+acuuWPt+eggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeaJi+acuuWPt+eggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLnBob25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTFcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLpqozor4HnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpemqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJ2ZXJpRm9ybURhdGEuY29kZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY291bnQtZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpkaXNhYmxlZD1cInNlbmREaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cInNlbmRWZXJpQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxNHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJjb3VudERvd25TdGF0dXMgPT0gMFwiPuWPkemAgemqjOivgeeggTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImNvdW50RG93blN0YXR1cyA9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb3VudERvd24gfX1zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIEBjbGljaz1cInZlcmlTdWJtaXRcIj7nmbvlvZU8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx1LWxvYWRpbmctcGFnZVxyXG4gICAgICAgICAgICA6bG9hZGluZz1cInNob3dMb2FkaW5nXCJcclxuICAgICAgICAgICAgY29sb3I9XCIjMDAwXCJcclxuICAgICAgICAgICAgbG9hZGluZy10ZXh0PVwi55m75b2V5LitLOivt+eojeWQji4uLlwiPjwvdS1sb2FkaW5nLXBhZ2U+XHJcbiAgICA8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG4gICAgaW1wb3J0IHsgYXV0aFBhdGgsIHB1YmxpY1BhdGgsIHN5c3RlbVBhdGggfSBmcm9tIFwiLi4vLi4vcHVibGljXCI7XHJcbiAgICBpbXBvcnQgc3RvcmUgZnJvbSBcIi4uLy4uL3N0b3JlL3VzZXJcIjtcclxuICAgIGV4cG9ydCBkZWZhdWx0IHtcclxuICAgICAgICBkYXRhKCkge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgc2hvd0xvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgYWNjb3VudEZvcm1EYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgdmVyaUZvcm1EYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGhvbmU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgY29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBzd2l0Y2hTdGF0dXM6IDEsXHJcbiAgICAgICAgICAgICAgICBjb3VudERvd246IDYwLFxyXG4gICAgICAgICAgICAgICAgY291bnREb3duU3RhdHVzOiAwLFxyXG4gICAgICAgICAgICAgICAgc2VuZERpc2FibGVkOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGdpdmVuQ29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgIGFjY291bnRSdWxlczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHVzZXJuYW1lOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeeUqOaIt+WQjeensO+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeWvhuegge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHZlcmlSdWxlczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHBob25lOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeaJi+acuuWPt+egge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGNvZGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl6aqM6K+B56CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWV0aG9kczoge1xyXG4gICAgICAgICAgICBzd2l0Y2hVcHBlcihjb3VudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zd2l0Y2hTdGF0dXMgPSBjb3VudDtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc2VuZFZlcmlDb2RlKCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBob25lUmVnID0gL14oPzooPzpcXCt8MDApODYpPzFbMy05XVxcZHs5fSQvO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFwaG9uZVJlZy50ZXN0KHRoYXQudmVyaUZvcm1EYXRhLnBob25lKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6K+36L6T5YWl5q2j56Gu5qC85byP55qE5omL5py65Y+377yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY29kZUxvZ2luKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBob25lOiBTdHJpbmcodGhhdC52ZXJpRm9ybURhdGEucGhvbmUpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgIT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFx0aWNvbjonbm9uZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gXHR0aXRsZTpyZXMuZGF0YS5tc2dcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLmj5DnpLpcIiwgLy/moIfpophcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogcmVzLmRhdGEubXNnLCAvL+aPkOekuuWGheWuuVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q2FuY2VsOiBmYWxzZSwgLy/kuI3mmL7npLrlj5bmtojmjInpkq5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd25TdGF0dXMgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2VuZERpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZUludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmNvdW50RG93biAtPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duU3RhdHVzID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd24gPSA2MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZW5kRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aW1lSW50ZXJ2YWwpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZU91dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTAwMCAqIDYwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcImVycm9yXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6aqM6K+B56CB6I635Y+W5aSx6LSlXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHZlcmlTdWJtaXQoKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLnZlcmlGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybVJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1SZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hlY2tDb2RlKGZvcm1SZXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidXNlckluZm9cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidG9rZW5cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5hY2Nlc3NfdG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb2xlc1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIucm9sZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZXB0SWRcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyLnN5c1VzZXIuZGVwdC5kZXB0SWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi55m75b2V5oiQ5Yqf77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXMgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcywgXCLnlKjmiLfmnYPpmZAtLS0tXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5pLnN3aXRjaFRhYih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYWNjb3VudFN1Ym1pdCgpIHtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMuYWNjb3VudEZvcm0udmFsaWRhdGUoKS50aGVuKChmb3JtRGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1EYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZyhmb3JtRGF0YSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ1c2VySW5mb1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b2tlblwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmFjY2Vzc190b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJvbGVzXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhLmRhdGEubG9naW5fdXNlci5yb2xlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlcHRJZFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIuc3lzVXNlci5kZXB0LmRlcHRJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwicHdkXCIsIGZvcm1EYXRhLnBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLnmbvlvZXmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzIH0gPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlNFVF9QRVJNSVNTSU9OU1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5wZXJtaXNzaW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvaW5kZXgvaW5kZXhcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICBvblNob3coKSB7XHJcbiAgICAgICAgICAgIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJwd2RcIikpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEZvcm1EYXRhLnBhc3N3b3JkID0gdW5pLmdldFN0b3JhZ2VTeW5jKFwicHdkXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgIH07XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlIGxhbmc9XCJzY3NzXCI+XHJcbiAgICBib2R5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvc3RhdGljL2xvZy1iZ2QucG5nXCIpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnVwcGVyLWJnZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAyNXZoO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwdmg7XHJcblxyXG4gICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHZoO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnZoO1xyXG5cclxuICAgICAgICAgICAgaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjM2M4N2YzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3dpdGNoLWxvZyB7XHJcbiAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMHJweDtcclxuICAgICAgICBtYXJnaW46IDZ2aCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDF2aDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnJweDtcclxuXHJcbiAgICAgICAgLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjYjRkMGZmO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxNXJweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubG9naW4tYXJlYSB7XHJcbiAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHBhZGRpbmc6IDN2aDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcnB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDVweCAjZTZlZWZlO1xyXG5cclxuICAgICAgICAudW5pLWZvcm1zLWl0ZW1fX2NvbnRlbnRbZGF0YS12LTYxZGZjMGQwXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3VibWl0LWJ0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzODg4ZmY7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTB2aCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJweDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG48L3N0eWxlPlxyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///87\n");
/***/ }),
/* 88 */
@@ -4883,10 +4882,9 @@ var render = function () {
],
1
),
- _c("text"),
_c("button", {
- staticClass: _vm._$s(15, "sc", "submit-btn"),
- attrs: { _i: 15 },
+ staticClass: _vm._$s(14, "sc", "submit-btn"),
+ attrs: { _i: 14 },
on: { click: _vm.accountSubmit },
}),
],
@@ -4899,17 +4897,17 @@ var render = function () {
{
name: "show",
rawName: "v-show",
- value: _vm._$s(16, "v-show", _vm.switchStatus == 2),
- expression: "_$s(16,'v-show',switchStatus == 2)",
+ value: _vm._$s(15, "v-show", _vm.switchStatus == 2),
+ expression: "_$s(15,'v-show',switchStatus == 2)",
},
],
ref: "veriForm",
- staticClass: _vm._$s(16, "sc", "form-area"),
+ staticClass: _vm._$s(15, "sc", "form-area"),
attrs: {
modelValue: _vm.veriFormData,
rules: _vm.veriRules,
"label-position": "top",
- _i: 16,
+ _i: 15,
},
},
[
@@ -4921,7 +4919,7 @@ var render = function () {
required: true,
label: "手机号码",
"label-width": "100",
- _i: 17,
+ _i: 16,
},
},
[
@@ -4929,10 +4927,10 @@ var render = function () {
attrs: {
placeholder: "请输入手机号码",
maxlength: "11",
- _i: 18,
+ _i: 17,
},
model: {
- value: _vm._$s(18, "v-model", _vm.veriFormData.phone),
+ value: _vm._$s(17, "v-model", _vm.veriFormData.phone),
callback: function ($$v) {
_vm.$set(_vm.veriFormData, "phone", $$v)
},
@@ -4950,22 +4948,22 @@ var render = function () {
label: "图形验证码",
"label-width": "100",
name: "imgCode",
- _i: 19,
+ _i: 18,
},
},
[
_c(
"view",
{
- staticClass: _vm._$s(20, "sc", "code-img-wrapper"),
- attrs: { _i: 20 },
+ staticClass: _vm._$s(19, "sc", "code-img-wrapper"),
+ attrs: { _i: 19 },
},
[
_c("uni-easyinput", {
- attrs: { placeholder: "请输入图形验证码", _i: 21 },
+ attrs: { placeholder: "请输入图形验证码", _i: 20 },
model: {
value: _vm._$s(
- 21,
+ 20,
"v-model",
_vm.veriFormData.imgCode
),
@@ -4977,8 +4975,8 @@ var render = function () {
}),
_c("img", {
attrs: {
- src: _vm._$s(22, "a-src", _vm.phoneCodeUrlNew),
- _i: 22,
+ src: _vm._$s(21, "a-src", _vm.phoneCodeUrlNew),
+ _i: 21,
},
on: {
click: function () {
@@ -4999,7 +4997,7 @@ var render = function () {
required: true,
label: "验证码",
"label-width": "100",
- _i: 23,
+ _i: 22,
},
},
[
@@ -5007,10 +5005,10 @@ var render = function () {
attrs: {
maxlength: "6",
placeholder: "请输入短信验证码",
- _i: 24,
+ _i: 23,
},
model: {
- value: _vm._$s(24, "v-model", _vm.veriFormData.code),
+ value: _vm._$s(23, "v-model", _vm.veriFormData.code),
callback: function ($$v) {
_vm.$set(_vm.veriFormData, "code", $$v)
},
@@ -5020,20 +5018,20 @@ var render = function () {
_c(
"button",
{
- staticClass: _vm._$s(25, "sc", "count-down"),
+ staticClass: _vm._$s(24, "sc", "count-down"),
attrs: {
- disabled: _vm._$s(25, "a-disabled", _vm.sendDisabled),
- _i: 25,
+ disabled: _vm._$s(24, "a-disabled", _vm.sendDisabled),
+ _i: 24,
},
on: { click: _vm.sendVeriCode },
},
[
- _vm._$s(26, "i", _vm.countDownStatus == 0)
+ _vm._$s(25, "i", _vm.countDownStatus == 0)
? _c("span")
: _vm._e(),
- _vm._$s(27, "i", _vm.countDownStatus == 1)
+ _vm._$s(26, "i", _vm.countDownStatus == 1)
? _c("span", [
- _vm._v(_vm._$s(27, "t0-0", _vm._s(_vm.countDown))),
+ _vm._v(_vm._$s(26, "t0-0", _vm._s(_vm.countDown))),
])
: _vm._e(),
]
@@ -5042,8 +5040,8 @@ var render = function () {
1
),
_c("button", {
- staticClass: _vm._$s(28, "sc", "submit-btn"),
- attrs: { _i: 28 },
+ staticClass: _vm._$s(27, "sc", "submit-btn"),
+ attrs: { _i: 27 },
on: { click: _vm.veriSubmit },
}),
],
@@ -5057,7 +5055,7 @@ var render = function () {
loading: _vm.showLoading,
color: "#000",
"loading-text": "登录中,请稍后...",
- _i: 29,
+ _i: 28,
},
}),
],
@@ -5090,7 +5088,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 20));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\nvar _user = _interopRequireDefault(__webpack_require__(/*! ../../store/user */ 38));\nvar _mcaptcha = __webpack_require__(/*! ../../utils/mcaptcha */ 93);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n showLoading: false,\n accountFormData: {\n username: \"\",\n password: \"\"\n },\n veriFormData: {\n phone: \"\",\n code: \"\",\n imgCode: \"\",\n uuid: \"\"\n },\n switchStatus: 1,\n phoneCodeUrlNew: \"\",\n countDown: 60,\n countDownStatus: 0,\n sendDisabled: false,\n givenCode: \"\",\n accountRules: {\n username: {\n rules: [{\n required: true,\n errorMessage: \"请输入用户名称!\"\n }]\n },\n password: {\n rules: [{\n required: true,\n errorMessage: \"请输入密码!\"\n }]\n }\n },\n veriRules: {\n phone: {\n rules: [{\n required: true,\n errorMessage: \"请输入手机号码!\"\n }, {\n pattern: /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/,\n errorMessage: \"请输入正确的手机号码!\"\n }]\n },\n code: {\n rules: [{\n required: true,\n errorMessage: \"请输入短信验证码\"\n }]\n },\n imgCode: {\n rules: [{\n required: true,\n errorMessage: \"请输入图形验证码!\"\n }]\n }\n },\n mcaptcha: null\n };\n },\n methods: {\n switchUpper: function switchUpper(count) {\n this.getImgCode();\n this.switchStatus = count;\n },\n /** 发送短信验证码按钮 */sendVeriCode: function sendVeriCode() {\n var _this = this;\n // 1. 先校验手机号是否正确 和图形验证码是否输入\n this.$refs.veriForm.validateField([\"phone\", \"imgCode\"]).then( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var params, _yield$_this$$api$log, messageRes, timeInterval, timeOut;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // 2. 校验通过调后台接口获取图形验证码\n params = {\n phone: _this.veriFormData.phone,\n code: _this.veriFormData.imgCode,\n uuid: _this.veriFormData.uuid\n };\n _context.next = 3;\n return _this.$api.login.getMessageCode(params);\n case 3:\n _yield$_this$$api$log = _context.sent;\n messageRes = _yield$_this$$api$log.data;\n if (messageRes.code === 200) {\n uni.showToast({\n icon: \"none\",\n title: \"验证码已发送\"\n });\n _this.countDownStatus = 1;\n _this.sendDisabled = true;\n timeInterval = setInterval(function () {\n _this.countDown -= 1;\n }, 1000);\n timeOut = setTimeout(function () {\n _this.countDownStatus = 0;\n _this.countDown = 60;\n _this.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n } else {\n uni.showToast({\n icon: \"none\",\n title: \"\".concat(messageRes.msg)\n });\n // 接口调取失败后刷新图形验证码\n _this.getImgCode();\n }\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))).catch(function (err) {});\n if (true) return;\n var that = this;\n var phoneReg = /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/;\n if (!phoneReg.test(that.veriFormData.phone)) {\n uni.showToast({\n icon: \"none\",\n title: \"请输入正确格式的手机号!\"\n });\n } else {\n that.$api.login.codeLogin({\n phone: String(that.veriFormData.phone)\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/nwLogin/index.vue:265\");\n if (res.data.code !== 200) {\n // uni.showToast({\n // \ticon:'none',\n // \ttitle:res.data.msg\n // })\n uni.showModal({\n title: \"提示\",\n //标题\n content: res.data.msg,\n //提示内容\n showCancel: false //不显示取消按钮\n });\n } else {\n that.countDownStatus = 1;\n that.sendDisabled = true;\n var timeInterval = setInterval(function () {\n that.countDown -= 1;\n }, 1000);\n var timeOut = setTimeout(function () {\n that.countDownStatus = 0;\n that.countDown = 60;\n that.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:292\");\n uni.showToast({\n icon: \"error\",\n title: \"验证码获取失败\"\n });\n });\n }\n },\n veriSubmit: function veriSubmit() {\n var _this2 = this;\n // 1. 先校验手机号码和短信验证码\n this.$refs.veriForm.validateField([\"phone\", \"code\"]).then( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _this2$veriFormData, code, phone, _yield$_this2$$api$lo, res, _yield$_this2$$api$in, resS;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // 2. 校验通过调登录接口\n _this2$veriFormData = _this2.veriFormData, code = _this2$veriFormData.code, phone = _this2$veriFormData.phone;\n _context2.next = 3;\n return _this2.$api.login.checkCode({\n code: code,\n phone: phone\n });\n case 3:\n _yield$_this2$$api$lo = _context2.sent;\n res = _yield$_this2$$api$lo.data;\n if (!(res.code === 200)) {\n _context2.next = 17;\n break;\n }\n uni.setStorageSync(\"userInfo\", res.data.login_user);\n uni.setStorageSync(\"token\", res.data.access_token);\n uni.setStorageSync(\"roles\", res.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.login_user.sysUser.dept.deptId);\n _context2.next = 12;\n return _this2.$api.index.getUserInfo();\n case 12:\n _yield$_this2$$api$in = _context2.sent;\n resS = _yield$_this2$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", resS.permissions);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功\"\n });\n setTimeout(function () {\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n }, 500);\n case 17:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n })));\n if (true) return;\n var that = this;\n that.$refs.veriForm.validate().then(function (formRes) {\n that.showLoading = true;\n __f__(\"log\", formRes, \" at pages/nwLogin/index.vue:339\");\n that.$api.login.checkCode(formRes).then(function (res) {\n __f__(\"log\", res, \" at pages/nwLogin/index.vue:343\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n var res;\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n that.showLoading = false;\n _context3.next = 3;\n return _this2.$api.index.getUserInfo();\n case 3:\n res = _context3.sent;\n __f__(\"log\", res, \"用户权限----\", \" at pages/nwLogin/index.vue:370\");\n // uni.switchTab({\n // \turl: '/pages/index/index'\n // })\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n function success() {\n return _success.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:387\");\n });\n });\n },\n accountSubmit: function accountSubmit() {\n var _this3 = this;\n var that = this;\n that.$refs.accountForm.validate().then(function (formData) {\n that.showLoading = true;\n __f__(\"log\", formData, \" at pages/nwLogin/index.vue:395\");\n that.$api.login.log(formData).then( /*#__PURE__*/function () {\n var _ref3 = (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 __f__(\"log\", res, \" at pages/nwLogin/index.vue:399\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.setStorageSync(\"pwd\", formData.password);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n var _yield$_this3$$api$in, res;\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n that.showLoading = false;\n _context4.next = 3;\n return _this3.$api.index.getUserInfo();\n case 3:\n _yield$_this3$$api$in = _context4.sent;\n res = _yield$_this3$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", res.permissions);\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n case 7:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n function success() {\n return _success2.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n return function (_x) {\n return _ref3.apply(this, arguments);\n };\n }()).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:448\");\n });\n });\n },\n /** 获取图形验证码 */getImgCode: function getImgCode() {\n var _this4 = this;\n var url = false ? undefined : \"本地调试ip\";\n uni.request({\n url: \"http://192.168.2.135:49080/code\",\n method: \"GET\"\n }).then(function (res) {\n _this4.phoneCodeUrlNew = \"data:image/gif;base64,\" + res.data.img;\n _this4.veriFormData.uuid = res.data.uuid;\n });\n }\n },\n onShow: function onShow() {\n if (uni.getStorageSync(\"pwd\")) {\n this.accountFormData.password = uni.getStorageSync(\"pwd\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbndMb2dpbi9pbmRleC52dWUiXSwibmFtZXMiOlsiZGF0YSIsInNob3dMb2FkaW5nIiwiYWNjb3VudEZvcm1EYXRhIiwidXNlcm5hbWUiLCJwYXNzd29yZCIsInZlcmlGb3JtRGF0YSIsInBob25lIiwiY29kZSIsImltZ0NvZGUiLCJ1dWlkIiwic3dpdGNoU3RhdHVzIiwicGhvbmVDb2RlVXJsTmV3IiwiY291bnREb3duIiwiY291bnREb3duU3RhdHVzIiwic2VuZERpc2FibGVkIiwiZ2l2ZW5Db2RlIiwiYWNjb3VudFJ1bGVzIiwicnVsZXMiLCJyZXF1aXJlZCIsImVycm9yTWVzc2FnZSIsInZlcmlSdWxlcyIsInBhdHRlcm4iLCJtY2FwdGNoYSIsIm1ldGhvZHMiLCJzd2l0Y2hVcHBlciIsInNlbmRWZXJpQ29kZSIsInZhbGlkYXRlRmllbGQiLCJ0aGVuIiwicGFyYW1zIiwibWVzc2FnZVJlcyIsInVuaSIsImljb24iLCJ0aXRsZSIsInRpbWVJbnRlcnZhbCIsInRpbWVPdXQiLCJjbGVhckludGVydmFsIiwiY2xlYXJUaW1lb3V0IiwiY2F0Y2giLCJ0aGF0IiwiY29kZUxvZ2luIiwiY29udGVudCIsInNob3dDYW5jZWwiLCJ2ZXJpU3VibWl0IiwicmVzIiwicmVzUyIsInN0b3JlIiwic2V0VGltZW91dCIsInVybCIsImNoZWNrQ29kZSIsInN1Y2Nlc3MiLCJhY2NvdW50U3VibWl0IiwibG9nIiwiZ2V0SW1nQ29kZSIsInByb2Nlc3MiLCJtZXRob2QiLCJvblNob3ciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQStIQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7ZUFDQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO1FBQ0FDO1FB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Q0E7SUFDQTtJQUNBYTtNQUFBO01BQ0E7TUFDQVo7UUFDQUE7UUFDQTtRQUNBQSxnQkFDQWEsY0FDQXhCO1VBQUE7WUFBQTtjQUFBO2dCQUFBO2tCQUFBO29CQUNBO29CQUNBO3NCQUNBRyxtQkFDQSxZQUNBYSx5QkFDQTtzQkFDQWIsbUJBQ0EsU0FDQWEsMkJBQ0E7c0JBQ0FiLG1CQUNBLFNBQ0FhLCtCQUNBO3NCQUNBYixtQkFDQSxVQUNBYSw2Q0FDQTtzQkFDQWI7c0JBRUFBO3dCQUNBQzt3QkFDQUM7d0JBQ0FpQjswQkFBQTs0QkFBQTs0QkFBQTs4QkFBQTtnQ0FBQTtrQ0FBQTtvQ0FDQVg7b0NBQUE7b0NBQUEsT0FHQTtrQ0FBQTtvQ0FBQTtvQ0FEQUs7b0NBR0FFLHFCQUNBLG1CQUNBRixnQkFDQTtvQ0FDQWI7c0NBQ0FpQjtvQ0FDQTtrQ0FBQTtrQ0FBQTtvQ0FBQTtnQ0FBQTs4QkFBQTs0QkFBQTswQkFBQSxDQUNBOzBCQUFBOzRCQUFBOzBCQUFBOzBCQUFBO3dCQUFBO3NCQUNBO29CQUNBO3NCQUNBakI7d0JBQ0FDO3dCQUNBQzt3QkFDQWlCOzBCQUNBWDt3QkFDQTtzQkFDQTtvQkFDQTtrQkFBQTtrQkFBQTtvQkFBQTtnQkFBQTtjQUFBO1lBQUE7VUFBQSxDQUNBO1VBQUE7WUFBQTtVQUFBO1FBQUEsS0FDQUQ7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBLGNBQ0FlO01BQUE7TUFDQSxVQUNBQyxTQUNBLFlBQ0E7TUFDQXZCO1FBQ0FpQjtRQUNBTztNQUNBO1FBQ0EseUJBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiI5Mi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cclxuICAgIDx2aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwidXBwZXItYmdkXCI+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwibG9nb1wiPlxyXG4gICAgICAgICAgICAgICAgPGltYWdlIHNyYz1cIi4uLy4uL3N0YXRpYy9sb2dvLnBuZ1wiIG1vZGU9XCJcIj48L2ltYWdlPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwidGl0XCI+IOaZuuaFp+S7k+WCqOeuoeeQhuW5s+WPsCA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwic3dpdGNoLWxvZ1wiPlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiW3sgYWN0aXZlOiBzd2l0Y2hTdGF0dXMgPT0gMSB9XVwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzd2l0Y2hVcHBlcigxKVwiPlxyXG4gICAgICAgICAgICAgICAg6LSm5Y+355m75b2VXHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlt7IGFjdGl2ZTogc3dpdGNoU3RhdHVzID09IDIgfV1cIlxyXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwic3dpdGNoVXBwZXIoMilcIj5cclxuICAgICAgICAgICAgICAgIOaJi+acuueZu+W9lVxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwibG9naW4tYXJlYVwiPlxyXG4gICAgICAgICAgICA8dW5pLWZvcm1zXHJcbiAgICAgICAgICAgICAgICB2LXNob3c9XCJzd2l0Y2hTdGF0dXMgPT0gMVwiXHJcbiAgICAgICAgICAgICAgICByZWY9XCJhY2NvdW50Rm9ybVwiXHJcbiAgICAgICAgICAgICAgICA6bW9kZWxWYWx1ZT1cImFjY291bnRGb3JtRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6cnVsZXM9XCJhY2NvdW50UnVsZXNcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWFyZWFcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWwtcG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJ1c2VybmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIueUqOaIt+WQjVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeeUqOaIt+WQjeensFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImFjY291bnRGb3JtRGF0YS51c2VybmFtZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8dW5pLWZvcm1zLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwicGFzc3dvcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLlr4bnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInBhc3N3b3JkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlr4bnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCI2MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJhY2NvdW50Rm9ybURhdGEucGFzc3dvcmRcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzNjg5ZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICBcIj5cclxuICAgICAgICAgICAgICAgICAgICDlv5jorrDlr4bnoIFcclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXQtYnRuXCIgQGNsaWNrPVwiYWNjb3VudFN1Ym1pdFwiPueZu+W9lTwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L3VuaS1mb3Jtcz5cclxuICAgICAgICAgICAgPHVuaS1mb3Jtc1xyXG4gICAgICAgICAgICAgICAgdi1zaG93PVwic3dpdGNoU3RhdHVzID09IDJcIlxyXG4gICAgICAgICAgICAgICAgcmVmPVwidmVyaUZvcm1cIlxyXG4gICAgICAgICAgICAgICAgOm1vZGVsVmFsdWU9XCJ2ZXJpRm9ybURhdGFcIlxyXG4gICAgICAgICAgICAgICAgOnJ1bGVzPVwidmVyaVJ1bGVzXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1hcmVhXCJcclxuICAgICAgICAgICAgICAgIGxhYmVsLXBvc2l0aW9uPVwidG9wXCI+XHJcbiAgICAgICAgICAgICAgICA8dW5pLWZvcm1zLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwicGhvbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLmiYvmnLrlj7fnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXmiYvmnLrlj7fnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLnBob25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTFcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuWbvuW9oumqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpbWdDb2RlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJjb2RlLWltZy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWbvuW9oumqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLmltZ0NvZGVcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpzcmM9XCJwaG9uZUNvZGVVcmxOZXdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQHRhcD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0SW1nQ29kZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi6aqM6K+B56CBXCJcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeefreS/oemqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJ2ZXJpRm9ybURhdGEuY29kZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY291bnQtZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpkaXNhYmxlZD1cInNlbmREaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cInNlbmRWZXJpQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxNHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJjb3VudERvd25TdGF0dXMgPT0gMFwiPuWPkemAgemqjOivgeeggTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImNvdW50RG93blN0YXR1cyA9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb3VudERvd24gfX1zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIEBjbGljaz1cInZlcmlTdWJtaXRcIj7nmbvlvZU8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx1LWxvYWRpbmctcGFnZVxyXG4gICAgICAgICAgICA6bG9hZGluZz1cInNob3dMb2FkaW5nXCJcclxuICAgICAgICAgICAgY29sb3I9XCIjMDAwXCJcclxuICAgICAgICAgICAgbG9hZGluZy10ZXh0PVwi55m75b2V5LitLOivt+eojeWQji4uLlwiPjwvdS1sb2FkaW5nLXBhZ2U+XHJcbiAgICA8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG4gICAgaW1wb3J0IHsgYXV0aFBhdGgsIHB1YmxpY1BhdGgsIHN5c3RlbVBhdGggfSBmcm9tIFwiLi4vLi4vcHVibGljXCI7XHJcbiAgICBpbXBvcnQgc3RvcmUgZnJvbSBcIi4uLy4uL3N0b3JlL3VzZXJcIjtcclxuICAgIGltcG9ydCB7IE1jYXB0Y2hhIH0gZnJvbSBcIi4uLy4uL3V0aWxzL21jYXB0Y2hhXCI7XHJcbiAgICBleHBvcnQgZGVmYXVsdCB7XHJcbiAgICAgICAgZGF0YSgpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIHNob3dMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGFjY291bnRGb3JtRGF0YToge1xyXG4gICAgICAgICAgICAgICAgICAgIHVzZXJuYW1lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHZlcmlGb3JtRGF0YToge1xyXG4gICAgICAgICAgICAgICAgICAgIHBob25lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvZGU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgaW1nQ29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgICAgICB1dWlkOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHN3aXRjaFN0YXR1czogMSxcclxuICAgICAgICAgICAgICAgIHBob25lQ29kZVVybE5ldzogXCJcIixcclxuICAgICAgICAgICAgICAgIGNvdW50RG93bjogNjAsXHJcbiAgICAgICAgICAgICAgICBjb3VudERvd25TdGF0dXM6IDAsXHJcbiAgICAgICAgICAgICAgICBzZW5kRGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgZ2l2ZW5Db2RlOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgYWNjb3VudFJ1bGVzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl55So5oi35ZCN56ew77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5a+G56CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgdmVyaVJ1bGVzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGhvbmU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5omL5py65Y+356CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm46IC9eKD86KD86XFwrfDAwKTg2KT8xWzMtOV1cXGR7OX0kLyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5q2j56Gu55qE5omL5py65Y+356CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY29kZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBydWxlczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogXCLor7fovpPlhaXnn63kv6Hpqozor4HnoIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBpbWdDb2RlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeWbvuW9oumqjOivgeegge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG1jYXB0Y2hhOiBudWxsLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWV0aG9kczoge1xyXG4gICAgICAgICAgICBzd2l0Y2hVcHBlcihjb3VudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRJbWdDb2RlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnN3aXRjaFN0YXR1cyA9IGNvdW50O1xyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgLyoqIOWPkemAgeefreS/oemqjOivgeeggeaMiemSriAqL1xyXG4gICAgICAgICAgICBzZW5kVmVyaUNvZGUoKSB7XHJcbiAgICAgICAgICAgICAgICAvLyAxLiDlhYjmoKHpqozmiYvmnLrlj7fmmK/lkKbmraPnoa4g5ZKM5Zu+5b2i6aqM6K+B56CB5piv5ZCm6L6T5YWlXHJcbiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzLnZlcmlGb3JtXHJcbiAgICAgICAgICAgICAgICAgICAgLnZhbGlkYXRlRmllbGQoW1wicGhvbmVcIiwgXCJpbWdDb2RlXCJdKVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gMi4g5qCh6aqM6YCa6L+H6LCD5ZCO5Y+w5o6l5Y+j6I635Y+W5Zu+5b2i6aqM6K+B56CBXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBob25lOiB0aGlzLnZlcmlGb3JtRGF0YS5waG9uZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6IHRoaXMudmVyaUZvcm1EYXRhLmltZ0NvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1dWlkOiB0aGlzLnZlcmlGb3JtRGF0YS51dWlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGE6IG1lc3NhZ2VSZXMgfSA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLiRhcGkubG9naW4uZ2V0TWVzc2FnZUNvZGUocGFyYW1zKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtZXNzYWdlUmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6aqM6K+B56CB5bey5Y+R6YCBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY291bnREb3duU3RhdHVzID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VuZERpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lSW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3VudERvd24gLT0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWVPdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvdW50RG93blN0YXR1cyA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3VudERvd24gPSA2MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbmREaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGltZUludGVydmFsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZU91dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxMDAwICogNjApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGAke21lc3NhZ2VSZXMubXNnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOaOpeWPo+iwg+WPluWksei0peWQjuWIt+aWsOWbvuW9oumqjOivgeeggVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRJbWdDb2RlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7fSk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRydWUpIHJldHVybjtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIGxldCBwaG9uZVJlZyA9IC9eKD86KD86XFwrfDAwKTg2KT8xWzMtOV1cXGR7OX0kLztcclxuICAgICAgICAgICAgICAgIGlmICghcGhvbmVSZWcudGVzdCh0aGF0LnZlcmlGb3JtRGF0YS5waG9uZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuivt+i+k+WFpeato+ehruagvOW8j+eahOaJi+acuuWPt++8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvZGVMb2dpbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaG9uZTogU3RyaW5nKHRoYXQudmVyaUZvcm1EYXRhLnBob25lKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlICE9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdGljb246J25vbmUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFx0dGl0bGU6cmVzLmRhdGEubXNnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd01vZGFsKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsIC8v5qCH6aKYXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHJlcy5kYXRhLm1zZywgLy/mj5DnpLrlhoXlrrlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd0NhbmNlbDogZmFsc2UsIC8v5LiN5pi+56S65Y+W5raI5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duU3RhdHVzID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnNlbmREaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWVJbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd24gLT0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZU91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmNvdW50RG93blN0YXR1cyA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duID0gNjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2VuZERpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGltZUludGVydmFsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVPdXQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDAgKiA2MCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIumqjOivgeeggeiOt+WPluWksei0pVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB2ZXJpU3VibWl0KCkge1xyXG4gICAgICAgICAgICAgICAgLy8gMS4g5YWI5qCh6aqM5omL5py65Y+356CB5ZKM55+t5L+h6aqM6K+B56CBXHJcbiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzLnZlcmlGb3JtXHJcbiAgICAgICAgICAgICAgICAgICAgLnZhbGlkYXRlRmllbGQoW1wicGhvbmVcIiwgXCJjb2RlXCJdKVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gMi4g5qCh6aqM6YCa6L+H6LCD55m75b2V5o6l5Y+jXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgY29kZSwgcGhvbmUgfSA9IHRoaXMudmVyaUZvcm1EYXRhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGE6IHJlcyB9ID0gYXdhaXQgdGhpcy4kYXBpLmxvZ2luLmNoZWNrQ29kZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGhvbmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIiwgcmVzLmRhdGEubG9naW5fdXNlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXCJ0b2tlblwiLCByZXMuZGF0YS5hY2Nlc3NfdG9rZW4pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicm9sZXNcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5sb2dpbl91c2VyLnJvbGVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVwdElkXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEubG9naW5fdXNlci5zeXNVc2VyLmRlcHQuZGVwdElkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzUyB9ID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLiRhcGkuaW5kZXguZ2V0VXNlckluZm8oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcIlNFVF9QRVJNSVNTSU9OU1wiLCByZXNTLnBlcm1pc3Npb25zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3QoeyBpY29uOiBcIm5vbmVcIiwgdGl0bGU6IFwi55m75b2V5oiQ5YqfXCIgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc3dpdGNoVGFiKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBcIi9wYWdlcy9pbmRleC9pbmRleFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0cnVlKSByZXR1cm47XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLnZlcmlGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybVJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1SZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hlY2tDb2RlKGZvcm1SZXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidXNlckluZm9cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidG9rZW5cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5hY2Nlc3NfdG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb2xlc1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIucm9sZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZXB0SWRcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyLnN5c1VzZXIuZGVwdC5kZXB0SWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi55m75b2V5oiQ5Yqf77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXMgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcywgXCLnlKjmiLfmnYPpmZAtLS0tXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5pLnN3aXRjaFRhYih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYWNjb3VudFN1Ym1pdCgpIHtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMuYWNjb3VudEZvcm0udmFsaWRhdGUoKS50aGVuKChmb3JtRGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1EYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZyhmb3JtRGF0YSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ1c2VySW5mb1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b2tlblwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmFjY2Vzc190b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJvbGVzXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhLmRhdGEubG9naW5fdXNlci5yb2xlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlcHRJZFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIuc3lzVXNlci5kZXB0LmRlcHRJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwicHdkXCIsIGZvcm1EYXRhLnBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLnmbvlvZXmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzIH0gPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlNFVF9QRVJNSVNTSU9OU1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5wZXJtaXNzaW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvaW5kZXgvaW5kZXhcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIC8qKiDojrflj5blm77lvaLpqozor4HnoIEgKi9cclxuICAgICAgICAgICAgZ2V0SW1nQ29kZSgpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwicHJvZHVjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID8gXCLmtYvor5Xnjq/looPmiJbogIXnur/kuIppcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogXCLmnKzlnLDosIPor5VpcFwiO1xyXG4gICAgICAgICAgICAgICAgdW5pLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgIHVybDogXCJodHRwOi8vMTkyLjE2OC4yLjEzNTo0OTA4MC9jb2RlXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiBcIkdFVFwiLFxyXG4gICAgICAgICAgICAgICAgfSkudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5waG9uZUNvZGVVcmxOZXcgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxcIiArIHJlcy5kYXRhLmltZztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcmlGb3JtRGF0YS51dWlkID0gcmVzLmRhdGEudXVpZDtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb25TaG93KCkge1xyXG4gICAgICAgICAgICBpZiAodW5pLmdldFN0b3JhZ2VTeW5jKFwicHdkXCIpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjY291bnRGb3JtRGF0YS5wYXNzd29yZCA9IHVuaS5nZXRTdG9yYWdlU3luYyhcInB3ZFwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZSBsYW5nPVwic2Nzc1wiPlxyXG4gICAgYm9keSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL3N0YXRpYy9sb2ctYmdkLnBuZ1wiKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC51cHBlci1iZ2Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMjV2aDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHZoO1xyXG5cclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTB2aDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJ2aDtcclxuXHJcbiAgICAgICAgICAgIGltYWdlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogIzNjODdmMztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXRjaC1sb2cge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBycHg7XHJcbiAgICAgICAgbWFyZ2luOiA2dmggYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxdmg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcblxyXG4gICAgICAgIC5hY3RpdmUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2I0ZDBmZjtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ2luLWFyZWEge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwYWRkaW5nOiAzdmg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHJweDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDNweCA1cHggI2U2ZWVmZTtcclxuXHJcbiAgICAgICAgLnVuaS1mb3Jtcy1pdGVtX19jb250ZW50W2RhdGEtdi02MWRmYzBkMF0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN1Ym1pdC1idG4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg4OGZmO1xyXG4gICAgICAgICAgICBtYXJnaW46IDJ2aCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJweDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb2RlLWltZy13cmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDgwcnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuPC9zdHlsZT5cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///92\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 20));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\nvar _user = _interopRequireDefault(__webpack_require__(/*! ../../store/user */ 38));\nvar _mcaptcha = __webpack_require__(/*! ../../utils/mcaptcha */ 93);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n showLoading: false,\n accountFormData: {\n username: \"\",\n password: \"\"\n },\n veriFormData: {\n phone: \"\",\n code: \"\",\n imgCode: \"\",\n uuid: \"\"\n },\n switchStatus: 1,\n phoneCodeUrlNew: \"\",\n countDown: 60,\n countDownStatus: 0,\n sendDisabled: false,\n givenCode: \"\",\n accountRules: {\n username: {\n rules: [{\n required: true,\n errorMessage: \"请输入用户名称!\"\n }]\n },\n password: {\n rules: [{\n required: true,\n errorMessage: \"请输入密码!\"\n }]\n }\n },\n veriRules: {\n phone: {\n rules: [{\n required: true,\n errorMessage: \"请输入手机号码!\"\n }, {\n pattern: /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/,\n errorMessage: \"请输入正确的手机号码!\"\n }]\n },\n code: {\n rules: [{\n required: true,\n errorMessage: \"请输入短信验证码\"\n }]\n },\n imgCode: {\n rules: [{\n required: true,\n errorMessage: \"请输入图形验证码!\"\n }]\n }\n },\n mcaptcha: null\n };\n },\n methods: {\n switchUpper: function switchUpper(count) {\n this.getImgCode();\n this.switchStatus = count;\n },\n /** 发送短信验证码按钮 */sendVeriCode: function sendVeriCode() {\n var _this = this;\n // 1. 先校验手机号是否正确 和图形验证码是否输入\n this.$refs.veriForm.validateField([\"phone\", \"imgCode\"]).then( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var params, _yield$_this$$api$log, messageRes, timeInterval, timeOut;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // 2. 校验通过调后台接口获取图形验证码\n params = {\n phone: _this.veriFormData.phone,\n code: _this.veriFormData.imgCode,\n uuid: _this.veriFormData.uuid\n };\n _context.next = 3;\n return _this.$api.login.getMessageCode(params);\n case 3:\n _yield$_this$$api$log = _context.sent;\n messageRes = _yield$_this$$api$log.data;\n if (messageRes.code === 200) {\n uni.showToast({\n icon: \"none\",\n title: \"验证码已发送\"\n });\n _this.countDownStatus = 1;\n _this.sendDisabled = true;\n timeInterval = setInterval(function () {\n _this.countDown -= 1;\n }, 1000);\n timeOut = setTimeout(function () {\n _this.countDownStatus = 0;\n _this.countDown = 60;\n _this.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n } else {\n uni.showToast({\n icon: \"none\",\n title: \"\".concat(messageRes.msg)\n });\n // 接口调取失败后刷新图形验证码\n _this.getImgCode();\n }\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))).catch(function (err) {});\n if (true) return;\n var that = this;\n var phoneReg = /^(?:(?:\\+|00)86)?1[3-9]\\d{9}$/;\n if (!phoneReg.test(that.veriFormData.phone)) {\n uni.showToast({\n icon: \"none\",\n title: \"请输入正确格式的手机号!\"\n });\n } else {\n that.$api.login.codeLogin({\n phone: String(that.veriFormData.phone)\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/nwLogin/index.vue:265\");\n if (res.data.code !== 200) {\n // uni.showToast({\n // \ticon:'none',\n // \ttitle:res.data.msg\n // })\n uni.showModal({\n title: \"提示\",\n //标题\n content: res.data.msg,\n //提示内容\n showCancel: false //不显示取消按钮\n });\n } else {\n that.countDownStatus = 1;\n that.sendDisabled = true;\n var timeInterval = setInterval(function () {\n that.countDown -= 1;\n }, 1000);\n var timeOut = setTimeout(function () {\n that.countDownStatus = 0;\n that.countDown = 60;\n that.sendDisabled = false;\n clearInterval(timeInterval);\n clearTimeout(timeOut);\n }, 1000 * 60);\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:292\");\n uni.showToast({\n icon: \"error\",\n title: \"验证码获取失败\"\n });\n });\n }\n },\n veriSubmit: function veriSubmit() {\n var _this2 = this;\n // 1. 先校验手机号码和短信验证码\n this.$refs.veriForm.validateField([\"phone\", \"code\"]).then( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _this2$veriFormData, code, phone, _yield$_this2$$api$lo, res, _yield$_this2$$api$in, resS;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // 2. 校验通过调登录接口\n _this2$veriFormData = _this2.veriFormData, code = _this2$veriFormData.code, phone = _this2$veriFormData.phone;\n _context2.next = 3;\n return _this2.$api.login.checkCode({\n code: code,\n phone: phone\n });\n case 3:\n _yield$_this2$$api$lo = _context2.sent;\n res = _yield$_this2$$api$lo.data;\n if (!(res.code === 200)) {\n _context2.next = 17;\n break;\n }\n uni.setStorageSync(\"userInfo\", res.data.login_user);\n uni.setStorageSync(\"token\", res.data.access_token);\n uni.setStorageSync(\"roles\", res.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.login_user.sysUser.dept.deptId);\n _context2.next = 12;\n return _this2.$api.index.getUserInfo();\n case 12:\n _yield$_this2$$api$in = _context2.sent;\n resS = _yield$_this2$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", resS.permissions);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功\"\n });\n setTimeout(function () {\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n }, 500);\n case 17:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n })));\n if (true) return;\n var that = this;\n that.$refs.veriForm.validate().then(function (formRes) {\n that.showLoading = true;\n __f__(\"log\", formRes, \" at pages/nwLogin/index.vue:339\");\n that.$api.login.checkCode(formRes).then(function (res) {\n __f__(\"log\", res, \" at pages/nwLogin/index.vue:343\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n var res;\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n that.showLoading = false;\n _context3.next = 3;\n return _this2.$api.index.getUserInfo();\n case 3:\n res = _context3.sent;\n __f__(\"log\", res, \"用户权限----\", \" at pages/nwLogin/index.vue:370\");\n // uni.switchTab({\n // \turl: '/pages/index/index'\n // })\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n function success() {\n return _success.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:387\");\n });\n });\n },\n accountSubmit: function accountSubmit() {\n var _this3 = this;\n var that = this;\n that.$refs.accountForm.validate().then(function (formData) {\n that.showLoading = true;\n __f__(\"log\", formData, \" at pages/nwLogin/index.vue:395\");\n that.$api.login.log(formData).then( /*#__PURE__*/function () {\n var _ref3 = (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 __f__(\"log\", res, \" at pages/nwLogin/index.vue:399\");\n if (res.data.code == 200) {\n uni.setStorageSync(\"userInfo\", res.data.data.login_user);\n uni.setStorageSync(\"token\", res.data.data.access_token);\n uni.setStorageSync(\"roles\", res.data.data.login_user.roles);\n uni.setStorageSync(\"deptId\", res.data.data.login_user.sysUser.dept.deptId);\n uni.setStorageSync(\"pwd\", formData.password);\n uni.showToast({\n icon: \"none\",\n title: \"登录成功!\",\n success: function () {\n var _success2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {\n var _yield$_this3$$api$in, res;\n return _regenerator.default.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n that.showLoading = false;\n _context4.next = 3;\n return _this3.$api.index.getUserInfo();\n case 3:\n _yield$_this3$$api$in = _context4.sent;\n res = _yield$_this3$$api$in.data;\n _user.default.commit(\"SET_PERMISSIONS\", res.permissions);\n uni.switchTab({\n url: \"/pages/index/index\"\n });\n case 7:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n function success() {\n return _success2.apply(this, arguments);\n }\n return success;\n }()\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n that.showLoading = false;\n }\n });\n }\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n return function (_x) {\n return _ref3.apply(this, arguments);\n };\n }()).catch(function (err) {\n __f__(\"log\", err, \" at pages/nwLogin/index.vue:448\");\n });\n });\n },\n /** 获取图形验证码 */getImgCode: function getImgCode() {\n var _this4 = this;\n var url = false ? undefined : \"本地调试ip\";\n uni.request({\n url: \"http://192.168.2.135:49080/code\",\n method: \"GET\"\n }).then(function (res) {\n _this4.phoneCodeUrlNew = \"data:image/gif;base64,\" + res.data.img;\n _this4.veriFormData.uuid = res.data.uuid;\n });\n }\n },\n onShow: function onShow() {\n if (uni.getStorageSync(\"pwd\")) {\n this.accountFormData.password = uni.getStorageSync(\"pwd\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbndMb2dpbi9pbmRleC52dWUiXSwibmFtZXMiOlsiZGF0YSIsInNob3dMb2FkaW5nIiwiYWNjb3VudEZvcm1EYXRhIiwidXNlcm5hbWUiLCJwYXNzd29yZCIsInZlcmlGb3JtRGF0YSIsInBob25lIiwiY29kZSIsImltZ0NvZGUiLCJ1dWlkIiwic3dpdGNoU3RhdHVzIiwicGhvbmVDb2RlVXJsTmV3IiwiY291bnREb3duIiwiY291bnREb3duU3RhdHVzIiwic2VuZERpc2FibGVkIiwiZ2l2ZW5Db2RlIiwiYWNjb3VudFJ1bGVzIiwicnVsZXMiLCJyZXF1aXJlZCIsImVycm9yTWVzc2FnZSIsInZlcmlSdWxlcyIsInBhdHRlcm4iLCJtY2FwdGNoYSIsIm1ldGhvZHMiLCJzd2l0Y2hVcHBlciIsInNlbmRWZXJpQ29kZSIsInZhbGlkYXRlRmllbGQiLCJ0aGVuIiwicGFyYW1zIiwibWVzc2FnZVJlcyIsInVuaSIsImljb24iLCJ0aXRsZSIsInRpbWVJbnRlcnZhbCIsInRpbWVPdXQiLCJjbGVhckludGVydmFsIiwiY2xlYXJUaW1lb3V0IiwiY2F0Y2giLCJ0aGF0IiwiY29kZUxvZ2luIiwiY29udGVudCIsInNob3dDYW5jZWwiLCJ2ZXJpU3VibWl0IiwicmVzIiwicmVzUyIsInN0b3JlIiwic2V0VGltZW91dCIsInVybCIsImNoZWNrQ29kZSIsInN1Y2Nlc3MiLCJhY2NvdW50U3VibWl0IiwibG9nIiwiZ2V0SW1nQ29kZSIsInByb2Nlc3MiLCJtZXRob2QiLCJvblNob3ciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQStIQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7ZUFDQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7TUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7TUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztRQUNBYjtVQUNBYyxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtRQUNBZjtVQUNBYSxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtNQUNBO01BQ0FDO1FBQ0FkO1VBQ0FXLFFBQ0E7WUFDQUM7WUFDQUM7VUFDQSxHQUNBO1lBQ0FFO1lBQ0FGO1VBQ0E7UUFFQTtRQUNBWjtVQUNBVSxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtRQUNBWDtVQUNBUyxRQUNBO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFFQTtNQUNBO01BQ0FHO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUNBO01BQ0E7SUFDQTtJQUVBLGdCQUNBQztNQUFBO01BQ0E7TUFDQSxvQkFDQUMsb0NBQ0FDO1FBQUE7UUFBQTtVQUFBO1lBQUE7Y0FBQTtnQkFDQTtnQkFDQUM7a0JBQ0F0QjtrQkFDQUM7a0JBQ0FFO2dCQUNBO2dCQUFBO2dCQUFBLE9BRUE7Y0FBQTtnQkFBQTtnQkFEQW9CO2dCQUdBO2tCQUNBQztvQkFDQUM7b0JBQ0FDO2tCQUNBO2tCQUNBO2tCQUNBO2tCQUNBQztvQkFDQTtrQkFDQTtrQkFDQUM7b0JBQ0E7b0JBQ0E7b0JBQ0E7b0JBQ0FDO29CQUNBQztrQkFDQTtnQkFDQTtrQkFDQU47b0JBQ0FDO29CQUNBQztrQkFDQTtrQkFDQTtrQkFDQTtnQkFDQTtjQUFBO2NBQUE7Z0JBQUE7WUFBQTtVQUFBO1FBQUE7TUFBQSxDQUNBLElBQ0FLO01BRUE7TUFDQTtNQUNBO01BQ0E7UUFDQVA7VUFDQUM7VUFDQUM7UUFDQTtNQUNBO1FBQ0FNLGdCQUNBQztVQUNBakM7UUFDQSxHQUNBcUI7VUFDQTtVQUNBO1lBQ0E7WUFDQTtZQUNBO1lBQ0E7WUFDQUc7Y0FDQUU7Y0FBQTtjQUNBUTtjQUFBO2NBQ0FDO1lBQ0E7VUFDQTtZQUNBSDtZQUNBQTtZQUNBO2NBQ0FBO1lBQ0E7WUFDQTtjQUNBQTtjQUNBQTtjQUNBQTtjQUNBSDtjQUNBQztZQUNBO1VBQ0E7UUFDQSxHQUNBQztVQUNBO1VBQ0FQO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQVU7TUFBQTtNQUNBO01BQ0Esb0JBQ0FoQixpQ0FDQUM7UUFBQTtRQUFBO1VBQUE7WUFBQTtjQUFBO2dCQUNBO2dCQUFBLHNCQUNBO2dCQUFBO2dCQUFBLE9BQ0E7a0JBQ0FwQjtrQkFDQUQ7Z0JBQ0E7Y0FBQTtnQkFBQTtnQkFIQXFDO2dCQUFBLE1BSUFBO2tCQUFBO2tCQUFBO2dCQUFBO2dCQUNBYjtnQkFDQUE7Z0JBQ0FBLG1CQUNBLFNBQ0FhLDBCQUNBO2dCQUNBYixtQkFDQSxVQUNBYSx3Q0FDQTtnQkFBQTtnQkFBQSxPQUdBO2NBQUE7Z0JBQUE7Z0JBREFDO2dCQUVBQztnQkFDQWY7a0JBQUFDO2tCQUFBQztnQkFBQTtnQkFDQWM7a0JBQ0FoQjtvQkFDQWlCO2tCQUNBO2dCQUNBO2NBQUE7Y0FBQTtnQkFBQTtZQUFBO1VBQUE7UUFBQTtNQUFBLENBRUE7TUFFQTtNQUNBO01BQ0FUO1FBQ0FBO1FBQ0E7UUFDQUEsZ0JBQ0FVLG1CQUNBckI7VUFDQTtVQUNBO1lBQ0FHLG1CQUNBLFlBQ0FhLHlCQUNBO1lBQ0FiLG1CQUNBLFNBQ0FhLDJCQUNBO1lBQ0FiLG1CQUNBLFNBQ0FhLCtCQUNBO1lBQ0FiLG1CQUNBLFVBQ0FhLDZDQUNBO1lBQ0FiO2NBQ0FDO2NBQ0FDO2NBQ0FpQjtnQkFBQTtrQkFBQTtrQkFBQTtvQkFBQTtzQkFBQTt3QkFBQTswQkFDQVg7MEJBQUE7MEJBQUEsT0FHQTt3QkFBQTswQkFEQUs7MEJBR0E7MEJBQ0E7MEJBQ0E7MEJBQ0E7d0JBQUE7d0JBQUE7MEJBQUE7c0JBQUE7b0JBQUE7a0JBQUE7Z0JBQUEsQ0FDQTtnQkFBQTtrQkFBQTtnQkFBQTtnQkFBQTtjQUFBO1lBQ0E7VUFDQTtZQUNBYjtjQUNBQztjQUNBQztjQUNBaUI7Z0JBQ0FYO2NBQ0E7WUFDQTtVQUNBO1FBQ0EsR0FDQUQ7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBYTtNQUFBO01BQ0E7TUFDQVo7UUFDQUE7UUFDQTtRQUNBQSxnQkFDQWEsY0FDQXhCO1VBQUE7WUFBQTtjQUFBO2dCQUFBO2tCQUFBO29CQUNBO29CQUNBO3NCQUNBRyxtQkFDQSxZQUNBYSx5QkFDQTtzQkFDQWIsbUJBQ0EsU0FDQWEsMkJBQ0E7c0JBQ0FiLG1CQUNBLFNBQ0FhLCtCQUNBO3NCQUNBYixtQkFDQSxVQUNBYSw2Q0FDQTtzQkFDQWI7c0JBRUFBO3dCQUNBQzt3QkFDQUM7d0JBQ0FpQjswQkFBQTs0QkFBQTs0QkFBQTs4QkFBQTtnQ0FBQTtrQ0FBQTtvQ0FDQVg7b0NBQUE7b0NBQUEsT0FHQTtrQ0FBQTtvQ0FBQTtvQ0FEQUs7b0NBR0FFLHFCQUNBLG1CQUNBRixnQkFDQTtvQ0FDQWI7c0NBQ0FpQjtvQ0FDQTtrQ0FBQTtrQ0FBQTtvQ0FBQTtnQ0FBQTs4QkFBQTs0QkFBQTswQkFBQSxDQUNBOzBCQUFBOzRCQUFBOzBCQUFBOzBCQUFBO3dCQUFBO3NCQUNBO29CQUNBO3NCQUNBakI7d0JBQ0FDO3dCQUNBQzt3QkFDQWlCOzBCQUNBWDt3QkFDQTtzQkFDQTtvQkFDQTtrQkFBQTtrQkFBQTtvQkFBQTtnQkFBQTtjQUFBO1lBQUE7VUFBQSxDQUNBO1VBQUE7WUFBQTtVQUFBO1FBQUEsS0FDQUQ7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBLGNBQ0FlO01BQUE7TUFDQSxVQUNBQyxTQUNBLFlBQ0E7TUFDQXZCO1FBQ0FpQjtRQUNBTztNQUNBO1FBQ0EseUJBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiI5Mi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cclxuICAgIDx2aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwidXBwZXItYmdkXCI+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwibG9nb1wiPlxyXG4gICAgICAgICAgICAgICAgPGltYWdlIHNyYz1cIi4uLy4uL3N0YXRpYy9sb2dvLnBuZ1wiIG1vZGU9XCJcIj48L2ltYWdlPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwidGl0XCI+IOaZuuaFp+S7k+WCqOeuoeeQhuW5s+WPsCA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwic3dpdGNoLWxvZ1wiPlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwiW3sgYWN0aXZlOiBzd2l0Y2hTdGF0dXMgPT0gMSB9XVwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzd2l0Y2hVcHBlcigxKVwiPlxyXG4gICAgICAgICAgICAgICAg6LSm5Y+355m75b2VXHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXdcclxuICAgICAgICAgICAgICAgIDpjbGFzcz1cIlt7IGFjdGl2ZTogc3dpdGNoU3RhdHVzID09IDIgfV1cIlxyXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwic3dpdGNoVXBwZXIoMilcIj5cclxuICAgICAgICAgICAgICAgIOaJi+acuueZu+W9lVxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwibG9naW4tYXJlYVwiPlxyXG4gICAgICAgICAgICA8dW5pLWZvcm1zXHJcbiAgICAgICAgICAgICAgICB2LXNob3c9XCJzd2l0Y2hTdGF0dXMgPT0gMVwiXHJcbiAgICAgICAgICAgICAgICByZWY9XCJhY2NvdW50Rm9ybVwiXHJcbiAgICAgICAgICAgICAgICA6bW9kZWxWYWx1ZT1cImFjY291bnRGb3JtRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6cnVsZXM9XCJhY2NvdW50UnVsZXNcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWFyZWFcIlxyXG4gICAgICAgICAgICAgICAgbGFiZWwtcG9zaXRpb249XCJ0b3BcIj5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJ1c2VybmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIueUqOaIt+WQjVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWVhc3lpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeeUqOaIt+WQjeensFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImFjY291bnRGb3JtRGF0YS51c2VybmFtZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8dW5pLWZvcm1zLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwicGFzc3dvcmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLlr4bnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInBhc3N3b3JkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlr4bnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCI2MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJhY2NvdW50Rm9ybURhdGEucGFzc3dvcmRcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPCEtLSA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzM2ODlmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIOW/mOiusOWvhueggVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PiAtLT5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXQtYnRuXCIgQGNsaWNrPVwiYWNjb3VudFN1Ym1pdFwiPueZu+W9lTwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L3VuaS1mb3Jtcz5cclxuICAgICAgICAgICAgPHVuaS1mb3Jtc1xyXG4gICAgICAgICAgICAgICAgdi1zaG93PVwic3dpdGNoU3RhdHVzID09IDJcIlxyXG4gICAgICAgICAgICAgICAgcmVmPVwidmVyaUZvcm1cIlxyXG4gICAgICAgICAgICAgICAgOm1vZGVsVmFsdWU9XCJ2ZXJpRm9ybURhdGFcIlxyXG4gICAgICAgICAgICAgICAgOnJ1bGVzPVwidmVyaVJ1bGVzXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1hcmVhXCJcclxuICAgICAgICAgICAgICAgIGxhYmVsLXBvc2l0aW9uPVwidG9wXCI+XHJcbiAgICAgICAgICAgICAgICA8dW5pLWZvcm1zLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwicGhvbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLmiYvmnLrlj7fnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXmiYvmnLrlj7fnoIFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLnBob25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTFcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICA8L3VuaS1mb3Jtcy1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuWbvuW9oumqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwtd2lkdGg9XCIxMDBcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpbWdDb2RlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJjb2RlLWltZy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWbvuW9oumqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidmVyaUZvcm1EYXRhLmltZ0NvZGVcIj48L3VuaS1lYXN5aW5wdXQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpzcmM9XCJwaG9uZUNvZGVVcmxOZXdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQHRhcD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0SW1nQ29kZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgIDx1bmktZm9ybXMtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi6aqM6K+B56CBXCJcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeefreS/oemqjOivgeeggVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJ2ZXJpRm9ybURhdGEuY29kZVwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY291bnQtZG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpkaXNhYmxlZD1cInNlbmREaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz1cInNlbmRWZXJpQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxNHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJjb3VudERvd25TdGF0dXMgPT0gMFwiPuWPkemAgemqjOivgeeggTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImNvdW50RG93blN0YXR1cyA9PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb3VudERvd24gfX1zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvdW5pLWZvcm1zLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIEBjbGljaz1cInZlcmlTdWJtaXRcIj7nmbvlvZU8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx1LWxvYWRpbmctcGFnZVxyXG4gICAgICAgICAgICA6bG9hZGluZz1cInNob3dMb2FkaW5nXCJcclxuICAgICAgICAgICAgY29sb3I9XCIjMDAwXCJcclxuICAgICAgICAgICAgbG9hZGluZy10ZXh0PVwi55m75b2V5LitLOivt+eojeWQji4uLlwiPjwvdS1sb2FkaW5nLXBhZ2U+XHJcbiAgICA8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG4gICAgaW1wb3J0IHsgYXV0aFBhdGgsIHB1YmxpY1BhdGgsIHN5c3RlbVBhdGggfSBmcm9tIFwiLi4vLi4vcHVibGljXCI7XHJcbiAgICBpbXBvcnQgc3RvcmUgZnJvbSBcIi4uLy4uL3N0b3JlL3VzZXJcIjtcclxuICAgIGltcG9ydCB7IE1jYXB0Y2hhIH0gZnJvbSBcIi4uLy4uL3V0aWxzL21jYXB0Y2hhXCI7XHJcbiAgICBleHBvcnQgZGVmYXVsdCB7XHJcbiAgICAgICAgZGF0YSgpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIHNob3dMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGFjY291bnRGb3JtRGF0YToge1xyXG4gICAgICAgICAgICAgICAgICAgIHVzZXJuYW1lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHZlcmlGb3JtRGF0YToge1xyXG4gICAgICAgICAgICAgICAgICAgIHBob25lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvZGU6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgaW1nQ29kZTogXCJcIixcclxuICAgICAgICAgICAgICAgICAgICB1dWlkOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHN3aXRjaFN0YXR1czogMSxcclxuICAgICAgICAgICAgICAgIHBob25lQ29kZVVybE5ldzogXCJcIixcclxuICAgICAgICAgICAgICAgIGNvdW50RG93bjogNjAsXHJcbiAgICAgICAgICAgICAgICBjb3VudERvd25TdGF0dXM6IDAsXHJcbiAgICAgICAgICAgICAgICBzZW5kRGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgZ2l2ZW5Db2RlOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgYWNjb3VudFJ1bGVzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl55So5oi35ZCN56ew77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5a+G56CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgdmVyaVJ1bGVzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGhvbmU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5omL5py65Y+356CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm46IC9eKD86KD86XFwrfDAwKTg2KT8xWzMtOV1cXGR7OX0kLyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36L6T5YWl5q2j56Gu55qE5omL5py65Y+356CB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY29kZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBydWxlczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogXCLor7fovpPlhaXnn63kv6Hpqozor4HnoIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBpbWdDb2RlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+i+k+WFpeWbvuW9oumqjOivgeegge+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG1jYXB0Y2hhOiBudWxsLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWV0aG9kczoge1xyXG4gICAgICAgICAgICBzd2l0Y2hVcHBlcihjb3VudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRJbWdDb2RlKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnN3aXRjaFN0YXR1cyA9IGNvdW50O1xyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgLyoqIOWPkemAgeefreS/oemqjOivgeeggeaMiemSriAqL1xyXG4gICAgICAgICAgICBzZW5kVmVyaUNvZGUoKSB7XHJcbiAgICAgICAgICAgICAgICAvLyAxLiDlhYjmoKHpqozmiYvmnLrlj7fmmK/lkKbmraPnoa4g5ZKM5Zu+5b2i6aqM6K+B56CB5piv5ZCm6L6T5YWlXHJcbiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzLnZlcmlGb3JtXHJcbiAgICAgICAgICAgICAgICAgICAgLnZhbGlkYXRlRmllbGQoW1wicGhvbmVcIiwgXCJpbWdDb2RlXCJdKVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gMi4g5qCh6aqM6YCa6L+H6LCD5ZCO5Y+w5o6l5Y+j6I635Y+W5Zu+5b2i6aqM6K+B56CBXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBob25lOiB0aGlzLnZlcmlGb3JtRGF0YS5waG9uZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6IHRoaXMudmVyaUZvcm1EYXRhLmltZ0NvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1dWlkOiB0aGlzLnZlcmlGb3JtRGF0YS51dWlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGE6IG1lc3NhZ2VSZXMgfSA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLiRhcGkubG9naW4uZ2V0TWVzc2FnZUNvZGUocGFyYW1zKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtZXNzYWdlUmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6aqM6K+B56CB5bey5Y+R6YCBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY291bnREb3duU3RhdHVzID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VuZERpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lSW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3VudERvd24gLT0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWVPdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvdW50RG93blN0YXR1cyA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb3VudERvd24gPSA2MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbmREaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGltZUludGVydmFsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZU91dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxMDAwICogNjApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGAke21lc3NhZ2VSZXMubXNnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOaOpeWPo+iwg+WPluWksei0peWQjuWIt+aWsOWbvuW9oumqjOivgeeggVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRJbWdDb2RlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7fSk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRydWUpIHJldHVybjtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIGxldCBwaG9uZVJlZyA9IC9eKD86KD86XFwrfDAwKTg2KT8xWzMtOV1cXGR7OX0kLztcclxuICAgICAgICAgICAgICAgIGlmICghcGhvbmVSZWcudGVzdCh0aGF0LnZlcmlGb3JtRGF0YS5waG9uZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuivt+i+k+WFpeato+ehruagvOW8j+eahOaJi+acuuWPt++8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvZGVMb2dpbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaG9uZTogU3RyaW5nKHRoYXQudmVyaUZvcm1EYXRhLnBob25lKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlICE9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdGljb246J25vbmUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFx0dGl0bGU6cmVzLmRhdGEubXNnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd01vZGFsKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5o+Q56S6XCIsIC8v5qCH6aKYXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHJlcy5kYXRhLm1zZywgLy/mj5DnpLrlhoXlrrlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd0NhbmNlbDogZmFsc2UsIC8v5LiN5pi+56S65Y+W5raI5oyJ6ZKuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duU3RhdHVzID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnNlbmREaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWVJbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5jb3VudERvd24gLT0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZU91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmNvdW50RG93blN0YXR1cyA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY291bnREb3duID0gNjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2VuZERpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGltZUludGVydmFsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVPdXQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDAgKiA2MCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIumqjOivgeeggeiOt+WPluWksei0pVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB2ZXJpU3VibWl0KCkge1xyXG4gICAgICAgICAgICAgICAgLy8gMS4g5YWI5qCh6aqM5omL5py65Y+356CB5ZKM55+t5L+h6aqM6K+B56CBXHJcbiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzLnZlcmlGb3JtXHJcbiAgICAgICAgICAgICAgICAgICAgLnZhbGlkYXRlRmllbGQoW1wicGhvbmVcIiwgXCJjb2RlXCJdKVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gMi4g5qCh6aqM6YCa6L+H6LCD55m75b2V5o6l5Y+jXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgY29kZSwgcGhvbmUgfSA9IHRoaXMudmVyaUZvcm1EYXRhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGE6IHJlcyB9ID0gYXdhaXQgdGhpcy4kYXBpLmxvZ2luLmNoZWNrQ29kZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGhvbmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIiwgcmVzLmRhdGEubG9naW5fdXNlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXCJ0b2tlblwiLCByZXMuZGF0YS5hY2Nlc3NfdG9rZW4pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicm9sZXNcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5sb2dpbl91c2VyLnJvbGVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVwdElkXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEubG9naW5fdXNlci5zeXNVc2VyLmRlcHQuZGVwdElkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzUyB9ID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLiRhcGkuaW5kZXguZ2V0VXNlckluZm8oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcIlNFVF9QRVJNSVNTSU9OU1wiLCByZXNTLnBlcm1pc3Npb25zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3QoeyBpY29uOiBcIm5vbmVcIiwgdGl0bGU6IFwi55m75b2V5oiQ5YqfXCIgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc3dpdGNoVGFiKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBcIi9wYWdlcy9pbmRleC9pbmRleFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0cnVlKSByZXR1cm47XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLnZlcmlGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybVJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1SZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5sb2dpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hlY2tDb2RlKGZvcm1SZXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidXNlckluZm9cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2V0U3RvcmFnZVN5bmMoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidG9rZW5cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5hY2Nlc3NfdG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb2xlc1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIucm9sZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZXB0SWRcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YS5sb2dpbl91c2VyLnN5c1VzZXIuZGVwdC5kZXB0SWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi55m75b2V5oiQ5Yqf77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGFzeW5jICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXMgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcywgXCLnlKjmiLfmnYPpmZAtLS0tXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5pLnN3aXRjaFRhYih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYWNjb3VudFN1Ym1pdCgpIHtcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMuYWNjb3VudEZvcm0udmFsaWRhdGUoKS50aGVuKChmb3JtRGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGZvcm1EYXRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LiRhcGkubG9naW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZyhmb3JtRGF0YSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ1c2VySW5mb1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zZXRTdG9yYWdlU3luYyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b2tlblwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmFjY2Vzc190b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJvbGVzXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhLmRhdGEubG9naW5fdXNlci5yb2xlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlcHRJZFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhLmxvZ2luX3VzZXIuc3lzVXNlci5kZXB0LmRlcHRJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNldFN0b3JhZ2VTeW5jKFwicHdkXCIsIGZvcm1EYXRhLnBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLnmbvlvZXmiJDlip/vvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zaG93TG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YTogcmVzIH0gPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5pbmRleC5nZXRVc2VySW5mbygpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLmNvbW1pdChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlNFVF9QRVJNSVNTSU9OU1wiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5wZXJtaXNzaW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zd2l0Y2hUYWIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvaW5kZXgvaW5kZXhcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuc2hvd0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIC8qKiDojrflj5blm77lvaLpqozor4HnoIEgKi9cclxuICAgICAgICAgICAgZ2V0SW1nQ29kZSgpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwicHJvZHVjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID8gXCLmtYvor5Xnjq/looPmiJbogIXnur/kuIppcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogXCLmnKzlnLDosIPor5VpcFwiO1xyXG4gICAgICAgICAgICAgICAgdW5pLnJlcXVlc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgIHVybDogXCJodHRwOi8vMTkyLjE2OC4yLjEzNTo0OTA4MC9jb2RlXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiBcIkdFVFwiLFxyXG4gICAgICAgICAgICAgICAgfSkudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5waG9uZUNvZGVVcmxOZXcgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxcIiArIHJlcy5kYXRhLmltZztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZlcmlGb3JtRGF0YS51dWlkID0gcmVzLmRhdGEudXVpZDtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb25TaG93KCkge1xyXG4gICAgICAgICAgICBpZiAodW5pLmdldFN0b3JhZ2VTeW5jKFwicHdkXCIpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFjY291bnRGb3JtRGF0YS5wYXNzd29yZCA9IHVuaS5nZXRTdG9yYWdlU3luYyhcInB3ZFwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZSBsYW5nPVwic2Nzc1wiPlxyXG4gICAgYm9keSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiL3N0YXRpYy9sb2ctYmdkLnBuZ1wiKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC51cHBlci1iZ2Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMjV2aDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHZoO1xyXG5cclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTB2aDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJ2aDtcclxuXHJcbiAgICAgICAgICAgIGltYWdlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogIzNjODdmMztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXRjaC1sb2cge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBycHg7XHJcbiAgICAgICAgbWFyZ2luOiA2dmggYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxdmg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcblxyXG4gICAgICAgIC5hY3RpdmUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2I0ZDBmZjtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ2luLWFyZWEge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwYWRkaW5nOiAzdmg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHJweDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDNweCA1cHggI2U2ZWVmZTtcclxuXHJcbiAgICAgICAgLnVuaS1mb3Jtcy1pdGVtX19jb250ZW50W2RhdGEtdi02MWRmYzBkMF0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN1Ym1pdC1idG4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg4OGZmO1xyXG4gICAgICAgICAgICBtYXJnaW46IDJ2aCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJweDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb2RlLWltZy13cmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDgwcnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuPC9zdHlsZT5cclxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///92\n");
/***/ }),
/* 93 */
@@ -20186,7 +20184,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 20));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\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 allChecked: false,\n inputs: \"\",\n list: [],\n delList: [],\n delArr: [],\n totalFine: \"\",\n totalGoods: [],\n sendData: {},\n deptFormData: {\n deptName: \"\",\n projName: \"\",\n agreementId: null,\n agreementCode: null,\n leaseType: 0,\n costBearingParty: \"\",\n unitId: \"\"\n },\n deptRange: [],\n leaseTypeRange: [{\n text: \"工程租赁\",\n value: 0\n }, {\n text: \"长期领用\",\n value: 1\n }],\n costBearingPartyRange: [{\n text: \"01\",\n value: \"01\"\n }, {\n text: \"03\",\n value: \"03\"\n }],\n projRange: [],\n rules: {\n deptName: {\n rules: [{\n required: true,\n errorMessage: \"请选择部门!\"\n }]\n },\n leaseType: {\n rules: [{\n required: true,\n errorMessage: \"请选择租赁方式!\"\n }]\n },\n projName: {\n rules: [{\n required: true,\n errorMessage: \"请选择工程!\"\n }]\n }\n }\n };\n },\n computed: {\n totalPrice: function totalPrice() {\n //总计金额\n var str = 0;\n for (var i = 0; i < this.searchData.length; i++) {\n if (this.searchData[i].checked) {\n str += this.searchData[i].num * this.searchData[i].price;\n }\n }\n this.totalFine = str;\n return str;\n },\n searchData: function searchData() {\n var _this = this;\n //模糊查询\n if (!this.inputs) {\n return this.list;\n }\n return this.list.filter(function (item) {\n return item.name.includes(_this.inputs);\n });\n }\n },\n methods: {\n projChange: function projChange(e) {\n var _this2 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var _yield$_this2$$api$ex, res;\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 _this2.$api.exitMaterial.ifAgreementNew({\n projectId: e,\n unitId: _this2.deptFormData.unitId\n });\n case 2:\n _yield$_this2$$api$ex = _context.sent;\n res = _yield$_this2$$api$ex.data;\n _this2.deptFormData.agreementCode = res.data.agreementCode;\n _this2.deptFormData.agreementId = res.data.agreementId;\n __f__(\"log\", res, \"获取协议id\", \" at pages/orderCart/orderCart.vue:207\");\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n add: function add(item) {\n //加加\n var that = this;\n var num = item.bookNum;\n item.bookNum = num + 1;\n that.$api.fetchMaterial.itemNumChange({\n id: item.id,\n bookNum: item.bookNum\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:220\");\n });\n },\n reduce: function reduce(item) {\n //减减\n var that = this;\n var num = item.bookNum;\n if (num > 1) {\n num -= 1;\n } else if (num = 1) {\n uni.showToast({\n icon: \"none\",\n title: \"该器具无法再减少\"\n });\n }\n item.bookNum = num;\n that.$api.fetchMaterial.itemNumChange({\n id: item.id,\n bookNum: item.bookNum\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:242\");\n });\n },\n // 单个商品的选择\n checkClick: function checkClick(item) {\n item.checked = !item.checked;\n if (!item.checked) {\n this.allChecked = false;\n } else {\n // 判断每一个商品是否是被选择的状态\n var goods = this.list.every(function (item) {\n return item.checked === true;\n });\n if (goods) {\n this.allChecked = true;\n } else {\n this.allChecked = false;\n }\n }\n },\n //全选、全不选\n checkAll: function checkAll() {\n this.allChecked = !this.allChecked;\n if (this.allChecked) {\n this.list.map(function (item) {\n item.checked = true;\n });\n } else {\n this.list.map(function (item) {\n item.checked = false;\n });\n }\n },\n finishCart: function finishCart() {\n var that = this;\n that.totalGoods = that.list.filter(function (item) {\n return item.checked == true;\n });\n if (that.totalGoods.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"未选择任何商品!\"\n });\n } else {\n that.$refs.popup.open();\n }\n },\n formatDate: function formatDate(value) {\n if (typeof value == \"undefined\") {\n return \"\";\n } else {\n var date = new Date(parseInt(value));\n var y = date.getFullYear();\n var MM = date.getMonth() + 1;\n MM = MM < 10 ? \"0\" + MM : MM;\n var d = date.getDate();\n d = d < 10 ? \"0\" + d : d;\n var h = date.getHours();\n h = h < 10 ? \"0\" + h : h;\n var m = date.getMinutes();\n m = m < 10 ? \"0\" + m : m;\n var s = date.getSeconds();\n s = s < 10 ? \"0\" + s : s;\n return y + \"-\" + MM + \"-\" + d + \" \" + h + \":\" + m + \":\" + s;\n }\n },\n closePopup: function closePopup() {\n this.$refs.popup.close();\n },\n getgreementId: function getgreementId() {\n var _this3 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var params, res;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n params = {\n unitId: _this3.deptFormData.deptName,\n projectId: _this3.deptFormData.projName\n };\n _context2.next = 3;\n return _this3.$api.exitMaterial.ifAgreement(params);\n case 3:\n res = _context2.sent;\n if (res.data.code == 200) {\n _this3.deptFormData = _objectSpread(_objectSpread({}, _this3.deptFormData), res.data.data);\n } else {\n _this3.deptFormData.deptName = \"\";\n _this3.deptFormData.projName = \"\";\n uni.showToast({\n duration: 1000,\n title: \"当前单位和工程未上传协议\"\n });\n }\n __f__(\"log\", \"getgreementId ==============\", res, \" at pages/orderCart/orderCart.vue:332\");\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n formSubmit: function formSubmit() {\n var _this4 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n var that;\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // await this.getgreementId();\n // if ((this.deptFormData.deptName = \"\")) {\n // return;\n // }\n that = _this4;\n that.$refs.deptForm.validate().then(function (formData) {\n __f__(\"log\", formData, that.totalGoods, \" at pages/orderCart/orderCart.vue:342\");\n that.totalGoods = that.totalGoods.map(function (item) {\n return {\n id: item[\"id\"],\n createBy: uni.getStorageSync(\"userInfo\").sysUser.userName,\n companyId: item[\"companyId\"],\n status: \"0\",\n // createTime: that.formatDate(new Date().getTime()),\n typeId: item[\"typeId\"],\n preNum: item[\"bookNum\"]\n };\n });\n that.sendData = {\n companyId: uni.getStorageSync(\"userInfo\").sysUser.companyId,\n createBy: uni.getStorageSync(\"userInfo\").sysUser.userName,\n unitId: formData.deptName,\n projectId: formData.projName,\n agreementId: that.deptFormData.agreementId,\n agreementCode: that.deptFormData.agreementCode,\n leaseType: that.deptFormData.leaseType,\n costBearingParty: that.deptFormData.costBearingParty,\n taskType: 29,\n types: 2,\n taskStatus: 31,\n // createTime: that.formatDate(new Date().getTime()),\n leaseApplyInfo: {\n leasePerson: uni.getStorageSync(\"userInfo\").sysUser.userName,\n phone: uni.getStorageSync(\"userInfo\").sysUser.phonenumber\n },\n leaseApplyDetails: that.totalGoods\n };\n __f__(\"log\", \"that.sendData =================== \", that.sendData, \" at pages/orderCart/orderCart.vue:378\");\n // 提交预约商品\n that.$api.fetchMaterial.subCart(that.sendData).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:386\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n uni.redirectTo({\n url: \"/pages/orderCart/orderCart\"\n });\n }\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:405\");\n });\n that.$refs.popup.close();\n });\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n deptChange: function deptChange(e) {\n this.deptFormData.unitId = e;\n var that = this;\n __f__(\"log\", e, \" at pages/orderCart/orderCart.vue:413\");\n // 切换部门时展示工程\n this.$api.fetchMaterial.getProjList({\n id: e\n }, null).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:423\");\n if (res.data.code == 200) {\n that.projRange = res.data.data.map(function (item) {\n return {\n text: item[\"name\"],\n value: item[\"id\"]\n };\n });\n }\n }).catch(function (err) {});\n }\n },\n onNavigationBarButtonTap: function onNavigationBarButtonTap() {\n var that = this;\n that.delArr = [];\n var isChecked = that.list.every(function (item) {\n return item.checked == false;\n });\n if (that.list.length != 0 && isChecked == false) {\n uni.showModal({\n title: \"删除商品\",\n content: \"确认删除商品吗?\",\n success: function success(res) {\n if (res.confirm) {\n that.delList = that.list.filter(function (item) {\n return item.checked != false;\n });\n /* that.list = that.list.filter((item) => {\n return item.checked == false\n }) */\n /* uni.showToast({\n icon: 'none',\n title: '商品删除成功!'\n }) */\n for (var i = 0; i < that.delList.length; i++) {\n that.delArr.push(that.delList[i].id);\n }\n that.$api.fetchMaterial.delCart(JSON.stringify(that.delArr)).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:465\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n uni.redirectTo({\n url: \"/pages/orderCart/orderCart\"\n });\n }\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: \"删除商品失败!\"\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:484\");\n });\n }\n }\n });\n }\n },\n onShow: function onShow() {\n var that = this;\n /* if (uni.getStorageSync('goodList').length != 0) {\n that.list = uni.getStorageSync('goodList')\n } else {\n uni.showToast({\n icon: 'none',\n title: '预约车内暂无设备!'\n })\n } */\n // 初始化查询全部部门\n that.$api.fetchMaterial.getDeptList().then(function (res) {\n if (res.data.code == 200) {\n that.deptRange = res.data.data.map(function (item) {\n return {\n text: item[\"name\"],\n value: item[\"id\"]\n };\n });\n __f__(\"log\", that.deptRange, \" at pages/orderCart/orderCart.vue:512\");\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:516\");\n });\n // 初始化查询预约车内所有商品\n that.$api.fetchMaterial.getCartDetail().then(function (res) {\n if (res.data.code == 200) {\n for (var i = 0; i < res.data.data.length; i++) {\n res.data.data[i].checked = false;\n }\n that.list = res.data.data;\n }\n __f__(\"log\", that.list, \" at pages/orderCart/orderCart.vue:528\");\n if (that.list.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"预约车内暂无商品!\"\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:537\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXJDYXJ0L29yZGVyQ2FydC52dWUiXSwibmFtZXMiOlsiZGF0YSIsImFsbENoZWNrZWQiLCJpbnB1dHMiLCJsaXN0IiwiZGVsTGlzdCIsImRlbEFyciIsInRvdGFsRmluZSIsInRvdGFsR29vZHMiLCJzZW5kRGF0YSIsImRlcHRGb3JtRGF0YSIsImRlcHROYW1lIiwicHJvak5hbWUiLCJhZ3JlZW1lbnRJZCIsImFncmVlbWVudENvZGUiLCJsZWFzZVR5cGUiLCJjb3N0QmVhcmluZ1BhcnR5IiwidW5pdElkIiwiZGVwdFJhbmdlIiwibGVhc2VUeXBlUmFuZ2UiLCJ0ZXh0IiwidmFsdWUiLCJjb3N0QmVhcmluZ1BhcnR5UmFuZ2UiLCJwcm9qUmFuZ2UiLCJydWxlcyIsInJlcXVpcmVkIiwiZXJyb3JNZXNzYWdlIiwiY29tcHV0ZWQiLCJ0b3RhbFByaWNlIiwic3RyIiwiaSIsInNlYXJjaERhdGEiLCJsZW5ndGgiLCJjaGVja2VkIiwibnVtIiwicHJpY2UiLCJmaWx0ZXIiLCJpdGVtIiwibmFtZSIsImluY2x1ZGVzIiwibWV0aG9kcyIsInByb2pDaGFuZ2UiLCJlIiwiJGFwaSIsImV4aXRNYXRlcmlhbCIsImlmQWdyZWVtZW50TmV3IiwicHJvamVjdElkIiwicmVzIiwiYWRkIiwidGhhdCIsImJvb2tOdW0iLCJmZXRjaE1hdGVyaWFsIiwiaXRlbU51bUNoYW5nZSIsImlkIiwidGhlbiIsInJlZHVjZSIsInVuaSIsInNob3dUb2FzdCIsImljb24iLCJ0aXRsZSIsImNoZWNrQ2xpY2siLCJnb29kcyIsImV2ZXJ5IiwiY2hlY2tBbGwiLCJtYXAiLCJmaW5pc2hDYXJ0IiwiJHJlZnMiLCJwb3B1cCIsIm9wZW4iLCJmb3JtYXREYXRlIiwiZGF0ZSIsIkRhdGUiLCJwYXJzZUludCIsInkiLCJnZXRGdWxsWWVhciIsIk1NIiwiZ2V0TW9udGgiLCJkIiwiZ2V0RGF0ZSIsImgiLCJnZXRIb3VycyIsIm0iLCJnZXRNaW51dGVzIiwicyIsImdldFNlY29uZHMiLCJjbG9zZVBvcHVwIiwiY2xvc2UiLCJnZXRncmVlbWVudElkIiwicGFyYW1zIiwiaWZBZ3JlZW1lbnQiLCJjb2RlIiwiZHVyYXRpb24iLCJmb3JtU3VibWl0IiwiZGVwdEZvcm0iLCJ2YWxpZGF0ZSIsImZvcm1EYXRhIiwiY3JlYXRlQnkiLCJnZXRTdG9yYWdlU3luYyIsInN5c1VzZXIiLCJ1c2VyTmFtZSIsImNvbXBhbnlJZCIsInN0YXR1cyIsInR5cGVJZCIsInByZU51bSIsInRhc2tUeXBlIiwidHlwZXMiLCJ0YXNrU3RhdHVzIiwibGVhc2VBcHBseUluZm8iLCJsZWFzZVBlcnNvbiIsInBob25lIiwicGhvbmVudW1iZXIiLCJsZWFzZUFwcGx5RGV0YWlscyIsInN1YkNhcnQiLCJtc2ciLCJzdWNjZXNzIiwicmVkaXJlY3RUbyIsInVybCIsImNhdGNoIiwiZXJyIiwiZGVwdENoYW5nZSIsImdldFByb2pMaXN0Iiwib25OYXZpZ2F0aW9uQmFyQnV0dG9uVGFwIiwiaXNDaGVja2VkIiwic2hvd01vZGFsIiwiY29udGVudCIsImNvbmZpcm0iLCJwdXNoIiwiZGVsQ2FydCIsIkpTT04iLCJzdHJpbmdpZnkiLCJvblNob3ciLCJnZXREZXB0TGlzdCIsImdldENhcnREZXRhaWwiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFnSEk7QUFBd0M7QUFBQTtBQUFBLGVBQ3pCO0VBQ1hBLElBQUksa0JBQUc7SUFDSCxPQUFPO01BQ0hDLFVBQVUsRUFBRSxLQUFLO01BQ2pCQyxNQUFNLEVBQUUsRUFBRTtNQUNWQyxJQUFJLEVBQUUsRUFBRTtNQUNSQyxPQUFPLEVBQUUsRUFBRTtNQUNYQyxNQUFNLEVBQUUsRUFBRTtNQUNWQyxTQUFTLEVBQUUsRUFBRTtNQUNiQyxVQUFVLEVBQUUsRUFBRTtNQUNkQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO01BQ1pDLFlBQVksRUFBRTtRQUNWQyxRQUFRLEVBQUUsRUFBRTtRQUNaQyxRQUFRLEVBQUUsRUFBRTtRQUNaQyxXQUFXLEVBQUUsSUFBSTtRQUNqQkMs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QUFDO01BQ047SUFDSixDQUFDLENBQUMsQ0FDRDBELEtBQUssQ0FBQyxVQUFDQyxHQUFHLEVBQUs7TUFDWixhQUFZQSxHQUFHO0lBQ25CLENBQUMsQ0FBQztFQUNWO0FBQ0osQ0FBQztBQUFBLDJCIiwiZmlsZSI6IjE5My5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cblxuICAgIGltcG9ydCB7IGJhc2VQYXRoIH0gZnJvbSBcIi4uLy4uL3B1YmxpY1wiO1xuICAgIGV4cG9ydCBkZWZhdWx0IHtcbiAgICAgICAgZGF0YSgpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgYWxsQ2hlY2tlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW5wdXRzOiBcIlwiLFxuICAgICAgICAgICAgICAgIGxpc3Q6IFtdLFxuICAgICAgICAgICAgICAgIGRlbExpc3Q6IFtdLFxuICAgICAgICAgICAgICAgIGRlbEFycjogW10sXG4gICAgICAgICAgICAgICAgdG90YWxGaW5lOiBcIlwiLFxuICAgICAgICAgICAgICAgIHRvdGFsR29vZHM6IFtdLFxuICAgICAgICAgICAgICAgIHNlbmREYXRhOiB7fSxcbiAgICAgICAgICAgICAgICBkZXB0Rm9ybURhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgZGVwdE5hbWU6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgIHByb2pOYW1lOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRJZDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgYWdyZWVtZW50Q29kZTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgbGVhc2VUeXBlOiAwLFxuICAgICAgICAgICAgICAgICAgICBjb3N0QmVhcmluZ1BhcnR5OiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICB1bml0SWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBkZXB0UmFuZ2U6IFtdLFxuICAgICAgICAgICAgICAgIGxlYXNlVHlwZVJhbmdlOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgdGV4dDogXCLlt6XnqIvnp5/otYFcIiwgdmFsdWU6IDAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiBcIumVv+acn+mihueUqFwiLCB2YWx1ZTogMSB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgY29zdEJlYXJpbmdQYXJ0eVJhbmdlOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgdGV4dDogXCIwMVwiLCB2YWx1ZTogXCIwMVwiIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgdGV4dDogXCIwM1wiLCB2YWx1ZTogXCIwM1wiIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBwcm9qUmFuZ2U6IFtdLFxuICAgICAgICAgICAgICAgIHJ1bGVzOiB7XG4gICAgICAgICAgICAgICAgICAgIGRlcHROYW1lOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBydWxlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogXCLor7fpgInmi6npg6jpl6jvvIFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbGVhc2VUeXBlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBydWxlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogXCLor7fpgInmi6nnp5/otYHmlrnlvI/vvIFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgcHJvak5hbWU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBcIuivt+mAieaLqeW3peeoi++8gVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgdG90YWxQcmljZSgpIHtcbiAgICAgICAgICAgICAgICAvL+aAu+iuoemHkeminVxuICAgICAgICAgICAgICAgIHZhciBzdHIgPSAwO1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zZWFyY2hEYXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnNlYXJjaERhdGFbaV0uY2hlY2tlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWFyY2hEYXRhW2ldLm51bSAqIHRoaXMuc2VhcmNoRGF0YVtpXS5wcmljZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnRvdGFsRmluZSA9IHN0cjtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RyO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNlYXJjaERhdGE6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAvL+aooeeziuafpeivolxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pbnB1dHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubGlzdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0ubmFtZS5pbmNsdWRlcyh0aGlzLmlucHV0cyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBtZXRob2RzOiB7XG4gICAgICAgICAgICBhc3luYyBwcm9qQ2hhbmdlKGUpIHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhlLCBcIuWNleS9jeWPmOabtOaXtj09PT1cIik7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhOiByZXMgfSA9XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuJGFwaS5leGl0TWF0ZXJpYWwuaWZBZ3JlZW1lbnROZXcoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdElkOiBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgdW5pdElkOiB0aGlzLmRlcHRGb3JtRGF0YS51bml0SWQsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5kZXB0Rm9ybURhdGEuYWdyZWVtZW50Q29kZSA9IHJlcy5kYXRhLmFncmVlbWVudENvZGU7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXB0Rm9ybURhdGEuYWdyZWVtZW50SWQgPSByZXMuZGF0YS5hZ3JlZW1lbnRJZDtcblxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcywgXCLojrflj5bljY/orq5pZFwiKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBhZGQoaXRlbSkge1xuICAgICAgICAgICAgICAgIC8v5Yqg5YqgXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgICAgIGxldCBudW0gPSBpdGVtLmJvb2tOdW07XG4gICAgICAgICAgICAgICAgaXRlbS5ib29rTnVtID0gbnVtICsgMTtcbiAgICAgICAgICAgICAgICB0aGF0LiRhcGkuZmV0Y2hNYXRlcmlhbFxuICAgICAgICAgICAgICAgICAgICAuaXRlbU51bUNoYW5nZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvb2tOdW06IGl0ZW0uYm9va051bSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVkdWNlKGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAvL+WHj+WHj1xuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBsZXQgbnVtID0gaXRlbS5ib29rTnVtO1xuICAgICAgICAgICAgICAgIGlmIChudW0gPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgIG51bSAtPSAxO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoKG51bSA9IDEpKSB7XG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLor6Xlmajlhbfml6Dms5Xlho3lh4/lsJFcIixcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGl0ZW0uYm9va051bSA9IG51bTtcbiAgICAgICAgICAgICAgICB0aGF0LiRhcGkuZmV0Y2hNYXRlcmlhbFxuICAgICAgICAgICAgICAgICAgICAuaXRlbU51bUNoYW5nZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvb2tOdW06IGl0ZW0uYm9va051bSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy8g5Y2V5Liq5ZWG5ZOB55qE6YCJ5oupXG4gICAgICAgICAgICBjaGVja0NsaWNrKGl0ZW0pIHtcbiAgICAgICAgICAgICAgICBpdGVtLmNoZWNrZWQgPSAhaXRlbS5jaGVja2VkO1xuICAgICAgICAgICAgICAgIGlmICghaXRlbS5jaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIOWIpOaWreavj+S4gOS4quWVhuWTgeaYr+WQpuaYr+iiq+mAieaLqeeahOeKtuaAgVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBnb29kcyA9IHRoaXMubGlzdC5ldmVyeSgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uY2hlY2tlZCA9PT0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChnb29kcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGxDaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8v5YWo6YCJ44CB5YWo5LiN6YCJXG4gICAgICAgICAgICBjaGVja0FsbCgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFsbENoZWNrZWQgPSAhdGhpcy5hbGxDaGVja2VkO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmFsbENoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0Lm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0Lm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmaW5pc2hDYXJ0KCkge1xuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LnRvdGFsR29vZHMgPSB0aGF0Lmxpc3QuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmNoZWNrZWQgPT0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAodGhhdC50b3RhbEdvb2RzLmxlbmd0aCA9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLmnKrpgInmi6nku7vkvZXllYblk4HvvIFcIixcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kcmVmcy5wb3B1cC5vcGVuKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvcm1hdERhdGUodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZShwYXJzZUludCh2YWx1ZSkpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgeSA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IE1NID0gZGF0ZS5nZXRNb250aCgpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgTU0gPSBNTSA8IDEwID8gXCIwXCIgKyBNTSA6IE1NO1xuICAgICAgICAgICAgICAgICAgICBsZXQgZCA9IGRhdGUuZ2V0RGF0ZSgpO1xuICAgICAgICAgICAgICAgICAgICBkID0gZCA8IDEwID8gXCIwXCIgKyBkIDogZDtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGggPSBkYXRlLmdldEhvdXJzKCk7XG4gICAgICAgICAgICAgICAgICAgIGggPSBoIDwgMTAgPyBcIjBcIiArIGggOiBoO1xuICAgICAgICAgICAgICAgICAgICBsZXQgbSA9IGRhdGUuZ2V0TWludXRlcygpO1xuICAgICAgICAgICAgICAgICAgICBtID0gbSA8IDEwID8gXCIwXCIgKyBtIDogbTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHMgPSBkYXRlLmdldFNlY29uZHMoKTtcbiAgICAgICAgICAgICAgICAgICAgcyA9IHMgPCAxMCA/IFwiMFwiICsgcyA6IHM7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB5ICsgXCItXCIgKyBNTSArIFwiLVwiICsgZCArIFwiIFwiICsgaCArIFwiOlwiICsgbSArIFwiOlwiICsgcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2xvc2VQb3B1cCgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiRyZWZzLnBvcHVwLmNsb3NlKCk7XG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICBhc3luYyBnZXRncmVlbWVudElkKCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgICAgICAgICAgICAgICAgdW5pdElkOiB0aGlzLmRlcHRGb3JtRGF0YS5kZXB0TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgcHJvamVjdElkOiB0aGlzLmRlcHRGb3JtRGF0YS5wcm9qTmFtZSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuJGFwaS5leGl0TWF0ZXJpYWwuaWZBZ3JlZW1lbnQocGFyYW1zKTtcbiAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXB0Rm9ybURhdGEgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmRlcHRGb3JtRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnJlcy5kYXRhLmRhdGEsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXB0Rm9ybURhdGEuZGVwdE5hbWUgPSBcIlwiO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlcHRGb3JtRGF0YS5wcm9qTmFtZSA9IFwiXCI7XG5cbiAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbjogMTAwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuW9k+WJjeWNleS9jeWSjOW3peeoi+acquS4iuS8oOWNj+iurlwiLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJnZXRncmVlbWVudElkID09PT09PT09PT09PT09XCIsIHJlcyk7XG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICBhc3luYyBmb3JtU3VibWl0KCkge1xuICAgICAgICAgICAgICAgIC8vIGF3YWl0IHRoaXMuZ2V0Z3JlZW1lbnRJZCgpO1xuICAgICAgICAgICAgICAgIC8vIGlmICgodGhpcy5kZXB0Rm9ybURhdGEuZGVwdE5hbWUgPSBcIlwiKSkge1xuICAgICAgICAgICAgICAgIC8vICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLmRlcHRGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybURhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZm9ybURhdGEsIHRoYXQudG90YWxHb29kcyk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQudG90YWxHb29kcyA9IHRoYXQudG90YWxHb29kcy5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGl0ZW1bXCJpZFwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVCeTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLmdldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIikuc3lzVXNlci51c2VyTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wYW55SWQ6IGl0ZW1bXCJjb21wYW55SWRcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBcIjBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBjcmVhdGVUaW1lOiB0aGF0LmZvcm1hdERhdGUobmV3IERhdGUoKS5nZXRUaW1lKCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVJZDogaXRlbVtcInR5cGVJZFwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVOdW06IGl0ZW1bXCJib29rTnVtXCJdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuc2VuZERhdGEgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wYW55SWQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLmdldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIikuc3lzVXNlci5jb21wYW55SWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVCeTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKS5zeXNVc2VyLnVzZXJOYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgdW5pdElkOiBmb3JtRGF0YS5kZXB0TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2plY3RJZDogZm9ybURhdGEucHJvak5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRJZDogdGhhdC5kZXB0Rm9ybURhdGEuYWdyZWVtZW50SWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRDb2RlOiB0aGF0LmRlcHRGb3JtRGF0YS5hZ3JlZW1lbnRDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGVhc2VUeXBlOiB0aGF0LmRlcHRGb3JtRGF0YS5sZWFzZVR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb3N0QmVhcmluZ1BhcnR5OiB0aGF0LmRlcHRGb3JtRGF0YS5jb3N0QmVhcmluZ1BhcnR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFza1R5cGU6IDI5LFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZXM6IDIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXNrU3RhdHVzOiAzMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNyZWF0ZVRpbWU6IHRoYXQuZm9ybWF0RGF0ZShuZXcgRGF0ZSgpLmdldFRpbWUoKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWFzZUFwcGx5SW5mbzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlYXNlUGVyc29uOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKS5zeXNVc2VyLnVzZXJOYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBob25lOiB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKS5zeXNVc2VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5waG9uZW51bWJlcixcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWFzZUFwcGx5RGV0YWlsczogdGhhdC50b3RhbEdvb2RzLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidGhhdC5zZW5kRGF0YSA9PT09PT09PT09PT09PT09PT09IFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZW5kRGF0YVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAvLyDmj5DkuqTpooTnuqbllYblk4FcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kYXBpLmZldGNoTWF0ZXJpYWxcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJDYXJ0KHRoYXQuc2VuZERhdGEpXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnJlZGlyZWN0VG8oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IFwiL3BhZ2VzL29yZGVyQ2FydC9vcmRlckNhcnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogcmVzLmRhdGEubXNnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMucG9wdXAuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkZXB0Q2hhbmdlKGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlcHRGb3JtRGF0YS51bml0SWQgPSBlO1xuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgICAgICAgICAvLyDliIfmjaLpg6jpl6jml7blsZXnpLrlt6XnqItcbiAgICAgICAgICAgICAgICB0aGlzLiRhcGkuZmV0Y2hNYXRlcmlhbFxuICAgICAgICAgICAgICAgICAgICAuZ2V0UHJvakxpc3QoXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGUsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgbnVsbFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnByb2pSYW5nZSA9IHJlcy5kYXRhLmRhdGEubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBpdGVtW1wibmFtZVwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtW1wiaWRcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7fSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuXG4gICAgICAgIG9uTmF2aWdhdGlvbkJhckJ1dHRvblRhcCgpIHtcbiAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcbiAgICAgICAgICAgIHRoYXQuZGVsQXJyID0gW107XG4gICAgICAgICAgICBsZXQgaXNDaGVja2VkID0gdGhhdC5saXN0LmV2ZXJ5KChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uY2hlY2tlZCA9PSBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHRoYXQubGlzdC5sZW5ndGggIT0gMCAmJiBpc0NoZWNrZWQgPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICB1bmkuc2hvd01vZGFsKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5Yig6Zmk5ZWG5ZOBXCIsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi56Gu6K6k5Yig6Zmk5ZWG5ZOB5ZCX77yfXCIsXG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuY29uZmlybSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuZGVsTGlzdCA9IHRoYXQubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uY2hlY2tlZCAhPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0aGF0Lmxpc3QgPSB0aGF0Lmxpc3QuZmlsdGVyKChpdGVtKSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuIGl0ZW0uY2hlY2tlZCA9PSBmYWxzZVxuXHRcdFx0XHRcdFx0XHR9KSAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdFx0XHRcdGljb246ICdub25lJyxcblx0XHRcdFx0XHRcdFx0XHR0aXRsZTogJ+WVhuWTgeWIoOmZpOaIkOWKn++8gSdcblx0XHRcdFx0XHRcdFx0fSkgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoYXQuZGVsTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmRlbEFyci5wdXNoKHRoYXQuZGVsTGlzdFtpXS5pZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuJGFwaS5mZXRjaE1hdGVyaWFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZWxDYXJ0KEpTT04uc3RyaW5naWZ5KHRoYXQuZGVsQXJyKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnJlZGlyZWN0VG8oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvb3JkZXJDYXJ0L29yZGVyQ2FydFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5Yig6Zmk5ZWG5ZOB5aSx6LSl77yBXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25TaG93KCkge1xuICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xuICAgICAgICAgICAgLyogaWYgKHVuaS5nZXRTdG9yYWdlU3luYygnZ29vZExpc3QnKS5sZW5ndGggIT0gMCkge1xuXHRcdFx0XHR0aGF0Lmxpc3QgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2dvb2RMaXN0Jylcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdGljb246ICdub25lJyxcblx0XHRcdFx0XHR0aXRsZTogJ+mihOe6pui9puWGheaaguaXoOiuvuWkh++8gSdcblx0XHRcdFx0fSlcblx0XHRcdH0gKi9cbiAgICAgICAgICAgIC8vIOWIneWni+WMluafpeivouWFqOmDqOmDqOmXqFxuICAgICAgICAgICAgdGhhdC4kYXBpLmZldGNoTWF0ZXJpYWxcbiAgICAgICAgICAgICAgICAuZ2V0RGVwdExpc3QoKVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmRlcHRSYW5nZSA9IHJlcy5kYXRhLmRhdGEubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogaXRlbVtcIm5hbWVcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtW1wiaWRcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhhdC5kZXB0UmFuZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8g5Yid5aeL5YyW5p+l6K+i6aKE57qm6L2m5YaF5omA5pyJ5ZWG5ZOBXG4gICAgICAgICAgICB0aGF0LiRhcGkuZmV0Y2hNYXRlcmlhbFxuICAgICAgICAgICAgICAgIC5nZXRDYXJ0RGV0YWlsKClcbiAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXMuZGF0YS5kYXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YVtpXS5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0Lmxpc3QgPSByZXMuZGF0YS5kYXRhO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoYXQubGlzdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGF0Lmxpc3QubGVuZ3RoID09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIumihOe6pui9puWGheaaguaXoOWVhuWTge+8gVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgfTtcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///193\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 */ 20));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 22));\nvar _public = __webpack_require__(/*! ../../public */ 37);\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 allChecked: false,\n inputs: \"\",\n list: [],\n delList: [],\n delArr: [],\n totalFine: \"\",\n totalGoods: [],\n sendData: {},\n deptFormData: {\n deptName: \"\",\n projName: \"\",\n agreementId: null,\n agreementCode: null,\n leaseType: 0,\n costBearingParty: \"\",\n unitId: \"\"\n },\n deptRange: [],\n leaseTypeRange: [{\n text: \"工程租赁\",\n value: 0\n }, {\n text: \"长期领用\",\n value: 1\n }],\n costBearingPartyRange: [{\n text: \"01\",\n value: \"01\"\n }, {\n text: \"03\",\n value: \"03\"\n }],\n projRange: [],\n rules: {\n deptName: {\n rules: [{\n required: true,\n errorMessage: \"请选择部门!\"\n }]\n },\n leaseType: {\n rules: [{\n required: true,\n errorMessage: \"请选择租赁方式!\"\n }]\n },\n projName: {\n rules: [{\n required: true,\n errorMessage: \"请选择工程!\"\n }]\n }\n }\n };\n },\n computed: {\n totalPrice: function totalPrice() {\n //总计金额\n var str = 0;\n for (var i = 0; i < this.searchData.length; i++) {\n if (this.searchData[i].checked) {\n str += this.searchData[i].num * this.searchData[i].price;\n }\n }\n this.totalFine = str;\n return str;\n },\n searchData: function searchData() {\n var _this = this;\n //模糊查询\n if (!this.inputs) {\n return this.list;\n }\n return this.list.filter(function (item) {\n return item.name.includes(_this.inputs);\n });\n }\n },\n methods: {\n projChange: function projChange(e) {\n var _this2 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var _yield$_this2$$api$ex, res;\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 _this2.$api.exitMaterial.ifAgreementNew({\n projectId: e,\n unitId: _this2.deptFormData.unitId\n });\n case 2:\n _yield$_this2$$api$ex = _context.sent;\n res = _yield$_this2$$api$ex.data;\n _this2.deptFormData.agreementCode = res.data.agreementCode;\n _this2.deptFormData.agreementId = res.data.agreementId;\n __f__(\"log\", res, \"获取协议id\", \" at pages/orderCart/orderCart.vue:207\");\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n add: function add(item) {\n //加加\n var that = this;\n var num = item.bookNum;\n item.bookNum = num + 1;\n that.$api.fetchMaterial.itemNumChange({\n id: item.id,\n bookNum: item.bookNum\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:220\");\n });\n },\n reduce: function reduce(item) {\n //减减\n var that = this;\n var num = item.bookNum;\n if (num > 1) {\n num -= 1;\n } else if (num = 1) {\n uni.showToast({\n icon: \"none\",\n title: \"该器具无法再减少\"\n });\n }\n item.bookNum = num;\n that.$api.fetchMaterial.itemNumChange({\n id: item.id,\n bookNum: item.bookNum\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:242\");\n });\n },\n // 单个商品的选择\n checkClick: function checkClick(item) {\n item.checked = !item.checked;\n if (!item.checked) {\n this.allChecked = false;\n } else {\n // 判断每一个商品是否是被选择的状态\n var goods = this.list.every(function (item) {\n return item.checked === true;\n });\n if (goods) {\n this.allChecked = true;\n } else {\n this.allChecked = false;\n }\n }\n },\n //全选、全不选\n checkAll: function checkAll() {\n this.allChecked = !this.allChecked;\n if (this.allChecked) {\n this.list.map(function (item) {\n item.checked = true;\n });\n } else {\n this.list.map(function (item) {\n item.checked = false;\n });\n }\n },\n finishCart: function finishCart() {\n var that = this;\n that.totalGoods = that.list.filter(function (item) {\n return item.checked == true;\n });\n if (that.totalGoods.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"未选择任何商品!\"\n });\n } else {\n that.$refs.popup.open();\n }\n },\n formatDate: function formatDate(value) {\n if (typeof value == \"undefined\") {\n return \"\";\n } else {\n var date = new Date(parseInt(value));\n var y = date.getFullYear();\n var MM = date.getMonth() + 1;\n MM = MM < 10 ? \"0\" + MM : MM;\n var d = date.getDate();\n d = d < 10 ? \"0\" + d : d;\n var h = date.getHours();\n h = h < 10 ? \"0\" + h : h;\n var m = date.getMinutes();\n m = m < 10 ? \"0\" + m : m;\n var s = date.getSeconds();\n s = s < 10 ? \"0\" + s : s;\n return y + \"-\" + MM + \"-\" + d + \" \" + h + \":\" + m + \":\" + s;\n }\n },\n closePopup: function closePopup() {\n this.$refs.popup.close();\n },\n getgreementId: function getgreementId() {\n var _this3 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var params, res;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n params = {\n unitId: _this3.deptFormData.deptName,\n projectId: _this3.deptFormData.projName\n };\n _context2.next = 3;\n return _this3.$api.exitMaterial.ifAgreement(params);\n case 3:\n res = _context2.sent;\n if (res.data.code == 200) {\n _this3.deptFormData = _objectSpread(_objectSpread({}, _this3.deptFormData), res.data.data);\n } else {\n _this3.deptFormData.deptName = \"\";\n _this3.deptFormData.projName = \"\";\n uni.showToast({\n duration: 1000,\n title: \"当前单位和工程未上传协议\"\n });\n }\n __f__(\"log\", \"getgreementId ==============\", res, \" at pages/orderCart/orderCart.vue:332\");\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n formSubmit: function formSubmit() {\n var _this4 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {\n var that;\n return _regenerator.default.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // await this.getgreementId();\n // if ((this.deptFormData.deptName = \"\")) {\n // return;\n // }\n that = _this4;\n that.$refs.deptForm.validate().then(function (formData) {\n __f__(\"log\", formData, that.totalGoods, \" at pages/orderCart/orderCart.vue:342\");\n that.totalGoods = that.totalGoods.map(function (item) {\n return {\n id: item[\"id\"],\n createBy: uni.getStorageSync(\"userInfo\").sysUser.userName,\n companyId: item[\"companyId\"],\n status: \"0\",\n // createTime: that.formatDate(new Date().getTime()),\n typeId: item[\"typeId\"],\n preNum: item[\"bookNum\"]\n };\n });\n that.sendData = {\n companyId: uni.getStorageSync(\"userInfo\").sysUser.companyId,\n createBy: uni.getStorageSync(\"userInfo\").sysUser.userName,\n unitId: formData.deptName,\n projectId: formData.projName,\n agreementId: that.deptFormData.agreementId,\n agreementCode: that.deptFormData.agreementCode,\n leaseType: that.deptFormData.leaseType,\n costBearingParty: that.deptFormData.costBearingParty,\n taskType: 29,\n types: 2,\n taskStatus: 31,\n // createTime: that.formatDate(new Date().getTime()),\n leaseApplyInfo: {\n leasePerson: uni.getStorageSync(\"userInfo\").sysUser.userName,\n phone: uni.getStorageSync(\"userInfo\").sysUser.phonenumber\n },\n leaseApplyDetails: that.totalGoods\n };\n __f__(\"log\", \"that.sendData =================== \", that.sendData, \" at pages/orderCart/orderCart.vue:378\");\n // 提交预约商品\n that.$api.fetchMaterial.subCart(that.sendData).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:386\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n uni.redirectTo({\n url: \"/pages/orderCart/orderCart\"\n });\n }\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:405\");\n });\n that.$refs.popup.close();\n });\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n deptChange: function deptChange(e) {\n this.deptFormData.unitId = e;\n var that = this;\n __f__(\"log\", e, \" at pages/orderCart/orderCart.vue:413\");\n // 切换部门时展示工程\n this.$api.fetchMaterial.getProjList({\n id: e\n }, null).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:423\");\n if (res.data.code == 200) {\n that.projRange = res.data.data.map(function (item) {\n return {\n text: item[\"name\"],\n value: item[\"id\"]\n };\n });\n }\n }).catch(function (err) {});\n }\n },\n onNavigationBarButtonTap: function onNavigationBarButtonTap() {\n var that = this;\n that.delArr = [];\n var isChecked = that.list.every(function (item) {\n return item.checked == false;\n });\n if (that.list.length != 0 && isChecked == false) {\n uni.showModal({\n title: \"删除商品\",\n content: \"确认删除商品吗?\",\n success: function success(res) {\n if (res.confirm) {\n that.delList = that.list.filter(function (item) {\n return item.checked != false;\n });\n /* that.list = that.list.filter((item) => {\n return item.checked == false\n }) */\n /* uni.showToast({\n icon: 'none',\n title: '商品删除成功!'\n }) */\n for (var i = 0; i < that.delList.length; i++) {\n that.delArr.push(that.delList[i].id);\n }\n that.$api.fetchMaterial.delCart(JSON.stringify(that.delArr)).then(function (res) {\n __f__(\"log\", res, \" at pages/orderCart/orderCart.vue:465\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n uni.redirectTo({\n url: \"/pages/orderCart/orderCart\"\n });\n }\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: \"删除商品失败!\"\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:484\");\n });\n }\n }\n });\n }\n },\n onShow: function onShow() {\n var that = this;\n /* if (uni.getStorageSync('goodList').length != 0) {\n that.list = uni.getStorageSync('goodList')\n } else {\n uni.showToast({\n icon: 'none',\n title: '预约车内暂无设备!'\n })\n } */\n // 初始化查询全部部门\n that.$api.fetchMaterial.getDeptList().then(function (res) {\n if (res.data.code == 200) {\n that.deptRange = res.data.data.map(function (item) {\n return {\n text: item[\"name\"],\n value: item[\"id\"]\n };\n });\n __f__(\"log\", that.deptRange, \" at pages/orderCart/orderCart.vue:512\");\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:516\");\n });\n // 初始化查询预约车内所有商品\n that.$api.fetchMaterial.getCartDetail().then(function (res) {\n if (res.data.code == 200) {\n for (var i = 0; i < res.data.data.length; i++) {\n res.data.data[i].checked = false;\n }\n that.list = res.data.data;\n }\n __f__(\"log\", that.list, \" at pages/orderCart/orderCart.vue:528\");\n if (that.list.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"预约车内暂无商品!\"\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/orderCart/orderCart.vue:537\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXJDYXJ0L29yZGVyQ2FydC52dWUiXSwibmFtZXMiOlsiZGF0YSIsImFsbENoZWNrZWQiLCJpbnB1dHMiLCJsaXN0IiwiZGVsTGlzdCIsImRlbEFyciIsInRvdGFsRmluZSIsInRvdGFsR29vZHMiLCJzZW5kRGF0YSIsImRlcHRGb3JtRGF0YSIsImRlcHROYW1lIiwicHJvak5hbWUiLCJhZ3JlZW1lbnRJZCIsImFncmVlbWVudENvZGUiLCJsZWFzZVR5cGUiLCJjb3N0QmVhcmluZ1BhcnR5IiwidW5pdElkIiwiZGVwdFJhbmdlIiwibGVhc2VUeXBlUmFuZ2UiLCJ0ZXh0IiwidmFsdWUiLCJjb3N0QmVhcmluZ1BhcnR5UmFuZ2UiLCJwcm9qUmFuZ2UiLCJydWxlcyIsInJlcXVpcmVkIiwiZXJyb3JNZXNzYWdlIiwiY29tcHV0ZWQiLCJ0b3RhbFByaWNlIiwic3RyIiwic2VhcmNoRGF0YSIsIm1ldGhvZHMiLCJwcm9qQ2hhbmdlIiwicHJvamVjdElkIiwicmVzIiwiYWRkIiwiaXRlbSIsInRoYXQiLCJpdGVtTnVtQ2hhbmdlIiwiaWQiLCJib29rTnVtIiwidGhlbiIsInJlZHVjZSIsIm51bSIsInVuaSIsImljb24iLCJ0aXRsZSIsImNoZWNrQ2xpY2siLCJjaGVja0FsbCIsImZpbmlzaENhcnQiLCJmb3JtYXREYXRlIiwiTU0iLCJkIiwiaCIsIm0iLCJzIiwiY2xvc2VQb3B1cCIsImdldGdyZWVtZW50SWQiLCJwYXJhbXMiLCJkdXJhdGlvbiIsImZvcm1TdWJtaXQiLCJjcmVhdGVCeSIsImNvbXBhbnlJZCIsInN0YXR1cyIsInR5cGVJZCIsInByZU51bSIsInRhc2tUeXBlIiwidHlwZXMiLCJ0YXNrU3RhdHVzIiwibGVhc2VBcHBseUluZm8iLCJsZWFzZVBlcnNvbiIsInBob25lIiwicGhvbmVudW1iZXIiLCJsZWFzZUFwcGx5RGV0YWlscyIsInN1YkNhcnQiLCJzdWNjZXNzIiwidXJsIiwiY2F0Y2giLCJkZXB0Q2hhbmdlIiwiZ2V0UHJvakxpc3QiLCJvbk5hdmlnYXRpb25CYXJCdXR0b25UYXAiLCJjb250ZW50IiwiZGVsQ2FydCIsIm9uU2hvdyIsImdldERlcHRMaXN0IiwiZ2V0Q2FydERldGFpbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQWdIQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7TUFDQTtNQUNBQztNQUNBQyxpQkFDQTtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7TUFBQSxFQUNBO01BQ0FDLHdCQUNBO1FBQUFGO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEVBQ0E7TUFDQUU7TUFDQUM7UUFDQWI7VUFDQWEsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7UUFDQVg7VUFDQVMsUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7UUFDQWQ7VUFDQVksUUFDQTtZQUNBQztZQUNBQztVQUNBO1FBRUE7TUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQUM7TUFDQTtNQUNBO01BQ0E7UUFDQTtVQUNBQyxPQUNBO1FBQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0FDO01BQUE7TUFBQTtRQUFBO1FBQUE7VUFBQTtZQUFBO2NBQUE7Z0JBQUE7Z0JBQUEsT0FHQTtrQkFDQUM7a0JBQ0FoQjtnQkFDQTtjQUFBO2dCQUFBO2dCQUpBaUI7Z0JBTUE7Z0JBQ0E7Z0JBRUE7Y0FBQTtjQUFBO2dCQUFBO1lBQUE7VUFBQTtRQUFBO01BQUE7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtNQUNBQztNQUNBQyx3QkFDQUM7UUFDQUM7UUFDQUM7TUFDQSxHQUNBQztRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNB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O01BQ0E7UUFDQUo7VUFDQTtZQUNBakI7WUFDQUM7VUFDQTtRQUNBO1FBQ0E7TUFDQTtJQUNBLEdBQ0F3RDtNQUNBO0lBQ0E7SUFDQTtJQUNBeEMsd0JBQ0FnRCxnQkFDQTVDO01BQ0E7UUFDQTtVQUNBUDtRQUNBO1FBQ0FHO01BQ0E7TUFDQTtNQUNBO1FBQ0FPO1VBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtJQUNBLEdBQ0ErQjtNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiMTkzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG4gICAgPHZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJkYXRhSW5mb1wiPlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkYXRhTGlzdFwiXHJcbiAgICAgICAgICAgICAgICB2LWZvcj1cIihpdGVtLCBpbmRleCkgaW4gc2VhcmNoRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6a2V5PVwiaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDxjaGVja2JveC1ncm91cCBAY2hhbmdlPVwiY2hlY2tDbGljayhpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjaGVja2JveCA6Y2hlY2tlZD1cIml0ZW0uY2hlY2tlZFwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2NoZWNrYm94LWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJkZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJpbWdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltYWdlIDpzcmM9XCJpdGVtLnBob3RvVXJsXCI+PC9pbWFnZT5cclxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJ0ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0Pnt7IGl0ZW0ucGFyZW50TmFtZSB9fTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQ+6KeE5qC877yae3sgaXRlbS50eXBlTmFtZSB9fTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8dGV4dD7vv6V7e2l0ZW0ucHJpY2V9fTwvdGV4dD4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJhY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICA8dGV4dCBAY2xpY2s9XCJyZWR1Y2UoaXRlbSlcIj4tPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0Pnt7IGl0ZW0uYm9va051bSB9fTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICA8dGV4dCBAY2xpY2s9XCJhZGQoaXRlbSlcIj4rPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDwhLS0gPGJ1dHRvbiBAY2xpY2s9XCJkZWxDYXJ0XCI+5Yig6ZmkPC9idXR0b24+IC0tPlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwiYnV5XCI+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiY2hlY2tlZFwiPlxyXG4gICAgICAgICAgICAgICAgPGNoZWNrYm94LWdyb3VwIEB0YXA9XCJjaGVja0FsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjaGVja2JveCA6Y2hlY2tlZD1cImFsbENoZWNrZWRcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9jaGVja2JveC1ncm91cD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0PuWFqOmAiTwvdGV4dD5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cInRvdGFsXCI+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwicHJpY2VcIj5cclxuXHRcdFx0XHRcdDx0ZXh0PuaAu+iuoe+8mjwvdGV4dD5cclxuXHRcdFx0XHRcdDx0ZXh0Pu+/pXt7dG90YWxQcmljZX19PC90ZXh0PlxyXG5cdFx0XHRcdDwvdmlldz4gLS0+XHJcbiAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cImJpbGxcIiBAY2xpY2s9XCJmaW5pc2hDYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRleHQ+56Gu6K6k55Sz6K+3PC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx1bmktcG9wdXAgcmVmPVwicG9wdXBcIiB0eXBlPVwiY2VudGVyXCIgOm1hc2stY2xpY2s9XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cInBvcHVwXCI+XHJcbiAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cInBvcC10b3BcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDQ+6YOo6Zeo5bel56iL6YCJ5oupPC9oND5cclxuICAgICAgICAgICAgICAgICAgICA8dW5pLWljb25zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiY29sb3I6ICNhYWFhYWE7IGZvbnQtd2VpZ2h0OiBib2xkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNsb3NlZW1wdHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwiMzJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9XCJjbG9zZVBvcHVwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bmktaWNvbnM+XHJcbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgICA8dmlldyBjbGFzcz1cInNlbGVjdC1hcmVhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVuaS1mb3Jtc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY9XCJkZXB0Rm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDptb2RlbFZhbHVlPVwiZGVwdEZvcm1EYXRhXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgOnJ1bGVzPVwicnVsZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibGVhc2VUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIumihueUqOexu+Wei1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1kYXRhLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJkZXB0Rm9ybURhdGEubGVhc2VUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6bG9jYWxkYXRhPVwibGVhc2VUeXBlUmFuZ2VcIj48L3VuaS1kYXRhLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwiZGVwdEZvcm1EYXRhLmxlYXNlVHlwZSA9PSAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjb3N0QmVhcmluZ1BhcnR5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIui0ueeUqOaJv+aLheaWuVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbC13aWR0aD1cIjEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1kYXRhLXNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJkZXB0Rm9ybURhdGEuY29zdEJlYXJpbmdQYXJ0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmxvY2FsZGF0YT1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3N0QmVhcmluZ1BhcnR5UmFuZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIj48L3VuaS1kYXRhLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGVwdE5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi6YCJ5oup6YOo6ZeoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dW5pLWRhdGEtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImRlcHRGb3JtRGF0YS5kZXB0TmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmxvY2FsZGF0YT1cImRlcHRSYW5nZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGNoYW5nZT1cImRlcHRDaGFuZ2VcIj48L3VuaS1kYXRhLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVuaS1mb3Jtcy1pdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHJvak5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi6YCJ5oup5bel56iLXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsLXdpZHRoPVwiMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dW5pLWRhdGEtc2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImRlcHRGb3JtRGF0YS5wcm9qTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmxvY2FsZGF0YT1cInByb2pSYW5nZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGNoYW5nZT1cInByb2pDaGFuZ2VcIj48L3VuaS1kYXRhLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bmktZm9ybXMtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInN1Ym1pdC1idG5cIiBAY2xpY2s9XCJmb3JtU3VibWl0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICDkv53lrZhcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bmktZm9ybXM+XHJcbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICA8L3VuaS1wb3B1cD5cclxuICAgIDwvdmlldz5cclxuPC90ZW1wbGF0ZT5cclxuPHNjcmlwdD5cclxuICAgIGltcG9ydCB7IGJhc2VQYXRoIH0gZnJvbSBcIi4uLy4uL3B1YmxpY1wiO1xyXG4gICAgZXhwb3J0IGRlZmF1bHQge1xyXG4gICAgICAgIGRhdGEoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBhbGxDaGVja2VkOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGlucHV0czogXCJcIixcclxuICAgICAgICAgICAgICAgIGxpc3Q6IFtdLFxyXG4gICAgICAgICAgICAgICAgZGVsTGlzdDogW10sXHJcbiAgICAgICAgICAgICAgICBkZWxBcnI6IFtdLFxyXG4gICAgICAgICAgICAgICAgdG90YWxGaW5lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgdG90YWxHb29kczogW10sXHJcbiAgICAgICAgICAgICAgICBzZW5kRGF0YToge30sXHJcbiAgICAgICAgICAgICAgICBkZXB0Rm9ybURhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICBkZXB0TmFtZTogXCJcIixcclxuICAgICAgICAgICAgICAgICAgICBwcm9qTmFtZTogXCJcIixcclxuICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRJZDogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRDb2RlOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgIGxlYXNlVHlwZTogMCxcclxuICAgICAgICAgICAgICAgICAgICBjb3N0QmVhcmluZ1BhcnR5OiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIHVuaXRJZDogXCJcIixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkZXB0UmFuZ2U6IFtdLFxyXG4gICAgICAgICAgICAgICAgbGVhc2VUeXBlUmFuZ2U6IFtcclxuICAgICAgICAgICAgICAgICAgICB7IHRleHQ6IFwi5bel56iL56ef6LWBXCIsIHZhbHVlOiAwIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiBcIumVv+acn+mihueUqFwiLCB2YWx1ZTogMSB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgIGNvc3RCZWFyaW5nUGFydHlSYW5nZTogW1xyXG4gICAgICAgICAgICAgICAgICAgIHsgdGV4dDogXCIwMVwiLCB2YWx1ZTogXCIwMVwiIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiBcIjAzXCIsIHZhbHVlOiBcIjAzXCIgfSxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICBwcm9qUmFuZ2U6IFtdLFxyXG4gICAgICAgICAgICAgICAgcnVsZXM6IHtcclxuICAgICAgICAgICAgICAgICAgICBkZXB0TmFtZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBydWxlczogW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogXCLor7fpgInmi6npg6jpl6jvvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBsZWFzZVR5cGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36YCJ5oup56ef6LWB5pa55byP77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgcHJvak5hbWU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IFwi6K+36YCJ5oup5bel56iL77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcHV0ZWQ6IHtcclxuICAgICAgICAgICAgdG90YWxQcmljZSgpIHtcclxuICAgICAgICAgICAgICAgIC8v5oC76K6h6YeR6aKdXHJcbiAgICAgICAgICAgICAgICB2YXIgc3RyID0gMDtcclxuICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zZWFyY2hEYXRhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VhcmNoRGF0YVtpXS5jaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWFyY2hEYXRhW2ldLm51bSAqIHRoaXMuc2VhcmNoRGF0YVtpXS5wcmljZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvdGFsRmluZSA9IHN0cjtcclxuICAgICAgICAgICAgICAgIHJldHVybiBzdHI7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHNlYXJjaERhdGE6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgIC8v5qih57OK5p+l6K+iXHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaW5wdXRzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubGlzdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxpc3QuZmlsdGVyKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0ubmFtZS5pbmNsdWRlcyh0aGlzLmlucHV0cyk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG1ldGhvZHM6IHtcclxuICAgICAgICAgICAgYXN5bmMgcHJvakNoYW5nZShlKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhlLCBcIuWNleS9jeWPmOabtOaXtj09PT1cIik7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGE6IHJlcyB9ID1cclxuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLiRhcGkuZXhpdE1hdGVyaWFsLmlmQWdyZWVtZW50TmV3KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdElkOiBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1bml0SWQ6IHRoaXMuZGVwdEZvcm1EYXRhLnVuaXRJZCxcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmRlcHRGb3JtRGF0YS5hZ3JlZW1lbnRDb2RlID0gcmVzLmRhdGEuYWdyZWVtZW50Q29kZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVwdEZvcm1EYXRhLmFncmVlbWVudElkID0gcmVzLmRhdGEuYWdyZWVtZW50SWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzLCBcIuiOt+WPluWNj+iurmlkXCIpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBhZGQoaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgLy/liqDliqBcclxuICAgICAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgICAgIGxldCBudW0gPSBpdGVtLmJvb2tOdW07XHJcbiAgICAgICAgICAgICAgICBpdGVtLmJvb2tOdW0gPSBudW0gKyAxO1xyXG4gICAgICAgICAgICAgICAgdGhhdC4kYXBpLmZldGNoTWF0ZXJpYWxcclxuICAgICAgICAgICAgICAgICAgICAuaXRlbU51bUNoYW5nZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBpdGVtLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib29rTnVtOiBpdGVtLmJvb2tOdW0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHJlZHVjZShpdGVtKSB7XHJcbiAgICAgICAgICAgICAgICAvL+WHj+WHj1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgbGV0IG51bSA9IGl0ZW0uYm9va051bTtcclxuICAgICAgICAgICAgICAgIGlmIChudW0gPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbnVtIC09IDE7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKChudW0gPSAxKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6K+l5Zmo5YW35peg5rOV5YaN5YeP5bCRXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpdGVtLmJvb2tOdW0gPSBudW07XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRhcGkuZmV0Y2hNYXRlcmlhbFxyXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtTnVtQ2hhbmdlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGl0ZW0uaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvb2tOdW06IGl0ZW0uYm9va051bSxcclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLy8g5Y2V5Liq5ZWG5ZOB55qE6YCJ5oupXHJcbiAgICAgICAgICAgIGNoZWNrQ2xpY2soaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgaXRlbS5jaGVja2VkID0gIWl0ZW0uY2hlY2tlZDtcclxuICAgICAgICAgICAgICAgIGlmICghaXRlbS5jaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGxDaGVja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIOWIpOaWreavj+S4gOS4quWVhuWTgeaYr+WQpuaYr+iiq+mAieaLqeeahOeKtuaAgVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdvb2RzID0gdGhpcy5saXN0LmV2ZXJ5KChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmNoZWNrZWQgPT09IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdvb2RzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGxDaGVja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAvL+WFqOmAieOAgeWFqOS4jemAiVxyXG4gICAgICAgICAgICBjaGVja0FsbCgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9ICF0aGlzLmFsbENoZWNrZWQ7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5hbGxDaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0Lm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmNoZWNrZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxpc3QubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBmaW5pc2hDYXJ0KCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgdGhhdC50b3RhbEdvb2RzID0gdGhhdC5saXN0LmZpbHRlcigoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmNoZWNrZWQgPT0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoYXQudG90YWxHb29kcy5sZW5ndGggPT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5pyq6YCJ5oup5Lu75L2V5ZWG5ZOB77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMucG9wdXAub3BlbigpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBmb3JtYXREYXRlKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09IFwidW5kZWZpbmVkXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZShwYXJzZUludCh2YWx1ZSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB5ID0gZGF0ZS5nZXRGdWxsWWVhcigpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBNTSA9IGRhdGUuZ2V0TW9udGgoKSArIDE7XHJcbiAgICAgICAgICAgICAgICAgICAgTU0gPSBNTSA8IDEwID8gXCIwXCIgKyBNTSA6IE1NO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBkID0gZGF0ZS5nZXREYXRlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZCA9IGQgPCAxMCA/IFwiMFwiICsgZCA6IGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGggPSBkYXRlLmdldEhvdXJzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaCA9IGggPCAxMCA/IFwiMFwiICsgaCA6IGg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IG0gPSBkYXRlLmdldE1pbnV0ZXMoKTtcclxuICAgICAgICAgICAgICAgICAgICBtID0gbSA8IDEwID8gXCIwXCIgKyBtIDogbTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgcyA9IGRhdGUuZ2V0U2Vjb25kcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIHMgPSBzIDwgMTAgPyBcIjBcIiArIHMgOiBzO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB5ICsgXCItXCIgKyBNTSArIFwiLVwiICsgZCArIFwiIFwiICsgaCArIFwiOlwiICsgbSArIFwiOlwiICsgcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgY2xvc2VQb3B1cCgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMucG9wdXAuY2xvc2UoKTtcclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIGFzeW5jIGdldGdyZWVtZW50SWQoKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdW5pdElkOiB0aGlzLmRlcHRGb3JtRGF0YS5kZXB0TmFtZSxcclxuICAgICAgICAgICAgICAgICAgICBwcm9qZWN0SWQ6IHRoaXMuZGVwdEZvcm1EYXRhLnByb2pOYW1lLFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuJGFwaS5leGl0TWF0ZXJpYWwuaWZBZ3JlZW1lbnQocGFyYW1zKTtcclxuICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVwdEZvcm1EYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmRlcHRGb3JtRGF0YSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4ucmVzLmRhdGEuZGF0YSxcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlcHRGb3JtRGF0YS5kZXB0TmFtZSA9IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXB0Rm9ybURhdGEucHJvak5hbWUgPSBcIlwiO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZHVyYXRpb246IDEwMDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuW9k+WJjeWNleS9jeWSjOW3peeoi+acquS4iuS8oOWNj+iurlwiLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJnZXRncmVlbWVudElkID09PT09PT09PT09PT09XCIsIHJlcyk7XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBhc3luYyBmb3JtU3VibWl0KCkge1xyXG4gICAgICAgICAgICAgICAgLy8gYXdhaXQgdGhpcy5nZXRncmVlbWVudElkKCk7XHJcbiAgICAgICAgICAgICAgICAvLyBpZiAoKHRoaXMuZGVwdEZvcm1EYXRhLmRlcHROYW1lID0gXCJcIikpIHtcclxuICAgICAgICAgICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICB0aGF0LiRyZWZzLmRlcHRGb3JtLnZhbGlkYXRlKCkudGhlbigoZm9ybURhdGEpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhmb3JtRGF0YSwgdGhhdC50b3RhbEdvb2RzKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LnRvdGFsR29vZHMgPSB0aGF0LnRvdGFsR29vZHMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogaXRlbVtcImlkXCJdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlQnk6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLmdldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIikuc3lzVXNlci51c2VyTmFtZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhbnlJZDogaXRlbVtcImNvbXBhbnlJZFwiXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1czogXCIwXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBjcmVhdGVUaW1lOiB0aGF0LmZvcm1hdERhdGUobmV3IERhdGUoKS5nZXRUaW1lKCkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZUlkOiBpdGVtW1widHlwZUlkXCJdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlTnVtOiBpdGVtW1wiYm9va051bVwiXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB0aGF0LnNlbmREYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wYW55SWQ6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKS5zeXNVc2VyLmNvbXBhbnlJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlQnk6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKS5zeXNVc2VyLnVzZXJOYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1bml0SWQ6IGZvcm1EYXRhLmRlcHROYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9qZWN0SWQ6IGZvcm1EYXRhLnByb2pOYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhZ3JlZW1lbnRJZDogdGhhdC5kZXB0Rm9ybURhdGEuYWdyZWVtZW50SWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFncmVlbWVudENvZGU6IHRoYXQuZGVwdEZvcm1EYXRhLmFncmVlbWVudENvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlYXNlVHlwZTogdGhhdC5kZXB0Rm9ybURhdGEubGVhc2VUeXBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb3N0QmVhcmluZ1BhcnR5OiB0aGF0LmRlcHRGb3JtRGF0YS5jb3N0QmVhcmluZ1BhcnR5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXNrVHlwZTogMjksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVzOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXNrU3RhdHVzOiAzMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY3JlYXRlVGltZTogdGhhdC5mb3JtYXREYXRlKG5ldyBEYXRlKCkuZ2V0VGltZSgpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVhc2VBcHBseUluZm86IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlYXNlUGVyc29uOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5nZXRTdG9yYWdlU3luYyhcInVzZXJJbmZvXCIpLnN5c1VzZXIudXNlck5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaG9uZTogdW5pLmdldFN0b3JhZ2VTeW5jKFwidXNlckluZm9cIikuc3lzVXNlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5waG9uZW51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVhc2VBcHBseURldGFpbHM6IHRoYXQudG90YWxHb29kcyxcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcInRoYXQuc2VuZERhdGEgPT09PT09PT09PT09PT09PT09PSBcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zZW5kRGF0YVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8g5o+Q5Lqk6aKE57qm5ZWG5ZOBXHJcbiAgICAgICAgICAgICAgICAgICAgdGhhdC4kYXBpLmZldGNoTWF0ZXJpYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YkNhcnQodGhhdC5zZW5kRGF0YSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnJlZGlyZWN0VG8oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogXCIvcGFnZXMvb3JkZXJDYXJ0L29yZGVyQ2FydFwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoYXQuJHJlZnMucG9wdXAuY2xvc2UoKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBkZXB0Q2hhbmdlKGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVwdEZvcm1EYXRhLnVuaXRJZCA9IGU7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcclxuICAgICAgICAgICAgICAgIC8vIOWIh+aNoumDqOmXqOaXtuWxleekuuW3peeoi1xyXG4gICAgICAgICAgICAgICAgdGhpcy4kYXBpLmZldGNoTWF0ZXJpYWxcclxuICAgICAgICAgICAgICAgICAgICAuZ2V0UHJvakxpc3QoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBudWxsXHJcbiAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnByb2pSYW5nZSA9IHJlcy5kYXRhLmRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogaXRlbVtcIm5hbWVcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtW1wiaWRcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge30pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcblxyXG4gICAgICAgIG9uTmF2aWdhdGlvbkJhckJ1dHRvblRhcCgpIHtcclxuICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICB0aGF0LmRlbEFyciA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgaXNDaGVja2VkID0gdGhhdC5saXN0LmV2ZXJ5KChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5jaGVja2VkID09IGZhbHNlO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgaWYgKHRoYXQubGlzdC5sZW5ndGggIT0gMCAmJiBpc0NoZWNrZWQgPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuWIoOmZpOWVhuWTgVwiLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi56Gu6K6k5Yig6Zmk5ZWG5ZOB5ZCX77yfXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmNvbmZpcm0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuZGVsTGlzdCA9IHRoYXQubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5jaGVja2VkICE9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0aGF0Lmxpc3QgPSB0aGF0Lmxpc3QuZmlsdGVyKChpdGVtKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRyZXR1cm4gaXRlbS5jaGVja2VkID09IGZhbHNlXHJcblx0XHRcdFx0XHRcdFx0fSkgKi9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdFx0dGl0bGU6ICfllYblk4HliKDpmaTmiJDlip/vvIEnXHJcblx0XHRcdFx0XHRcdFx0fSkgKi9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhhdC5kZWxMaXN0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5kZWxBcnIucHVzaCh0aGF0LmRlbExpc3RbaV0uaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kYXBpLmZldGNoTWF0ZXJpYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVsQ2FydChKU09OLnN0cmluZ2lmeSh0aGF0LmRlbEFycikpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkucmVkaXJlY3RUbyh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IFwiL3BhZ2VzL29yZGVyQ2FydC9vcmRlckNhcnRcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi5Yig6Zmk5ZWG5ZOB5aSx6LSl77yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb25TaG93KCkge1xyXG4gICAgICAgICAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICAgICAgICAgIC8qIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoJ2dvb2RMaXN0JykubGVuZ3RoICE9IDApIHtcclxuXHRcdFx0XHR0aGF0Lmxpc3QgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ2dvb2RMaXN0JylcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdHRpdGxlOiAn6aKE57qm6L2m5YaF5pqC5peg6K6+5aSH77yBJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0gKi9cclxuICAgICAgICAgICAgLy8g5Yid5aeL5YyW5p+l6K+i5YWo6YOo6YOo6ZeoXHJcbiAgICAgICAgICAgIHRoYXQuJGFwaS5mZXRjaE1hdGVyaWFsXHJcbiAgICAgICAgICAgICAgICAuZ2V0RGVwdExpc3QoKVxyXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGF0LmRlcHRSYW5nZSA9IHJlcy5kYXRhLmRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW1bXCJuYW1lXCJdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtW1wiaWRcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhhdC5kZXB0UmFuZ2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgLy8g5Yid5aeL5YyW5p+l6K+i6aKE57qm6L2m5YaF5omA5pyJ5ZWG5ZOBXHJcbiAgICAgICAgICAgIHRoYXQuJGFwaS5mZXRjaE1hdGVyaWFsXHJcbiAgICAgICAgICAgICAgICAuZ2V0Q2FydERldGFpbCgpXHJcbiAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzLmRhdGEuZGF0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuZGF0YVtpXS5jaGVja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5saXN0ID0gcmVzLmRhdGEuZGF0YTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhhdC5saXN0KTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5saXN0Lmxlbmd0aCA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLpooTnuqbovablhoXmmoLml6DllYblk4HvvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZT5cclxuICAgIGJvZHkge1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwdmg7XHJcbiAgICB9XHJcblxyXG4gICAgL2RlZXAvdW5pLWNoZWNrYm94IC51bmktY2hlY2tib3gtaW5wdXQge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIH1cclxuXHJcbiAgICAvZGVlcC91bmktY2hlY2tib3ggLnVuaS1jaGVja2JveC1pbnB1dC51bmktY2hlY2tib3gtaW5wdXQtY2hlY2tlZCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkY2Y4YyAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC9kZWVwL3VuaS1jaGVja2JveCAudW5pLWNoZWNrYm94LWlucHV0IHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICNkZGQ7XHJcbiAgICB9XHJcblxyXG4gICAgL2RlZXAvdW5pLWNoZWNrYm94IC51bmktY2hlY2tib3gtaW5wdXQ6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogI2RkZDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaCAuc2VhcmNoSXB1dCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogNzJycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcycnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzJycHg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaCAuc2VhcmNoSXB1dCBpbnB1dCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnJweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBjb2xvcjogZ3JleTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoIC5zZWFyY2hJcHV0IGltYWdlIHtcclxuICAgICAgICB3aWR0aDogMzRycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzNHJweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8ge1xyXG4gICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmRhdGFJbmZvIC5kYXRhTGlzdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2YxZjFmMTtcclxuICAgICAgICBwYWRkaW5nOiAyNXJweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8gLmRhdGFMaXN0IC5kZXRhaWxzIC5pbWcgaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAyMDBycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxNDBycHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHJweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8gLmRhdGFMaXN0IC5kZXRhaWxzIC50ZXh0IHRleHQge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjNycHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMTBycHggMDtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8gLmRhdGFMaXN0IC5kZXRhaWxzIC50ZXh0IHRleHQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgLyogY29sb3I6IHJlZDsgKi9cclxuICAgICAgICBmb250LXNpemU6IDI1cnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmFjdGlvbiB0ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDI1cnB4O1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOGM3Y2M7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHJweDtcclxuICAgICAgICB3aWR0aDogNjBycHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB9XHJcblxyXG4gICAgLmRhdGFJbmZvIC5kYXRhTGlzdCAuYWN0aW9uIHRleHQ6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1eSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXkgLmNoZWNrZWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC5jaGVja2VkIHRleHQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVycHg7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMnJweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC50b3RhbCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC50b3RhbCAucHJpY2Uge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idXkgLnRvdGFsIC5wcmljZSB0ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDI3cnB4O1xyXG4gICAgICAgIGNvbG9yOiAjYzhjN2NjO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC50b3RhbCAucHJpY2UgdGV4dDpsYXN0LWNoaWxkIHtcclxuICAgICAgICBjb2xvcjogcmVkO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXkgLnRvdGFsIC5iaWxsIHRleHQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVycHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjZmU0YTNmLCAjZmY5NjAwKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogNzBycHg7XHJcbiAgICAgICAgd2lkdGg6IDE1MHJweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvcHVwIHtcclxuICAgICAgICB3aWR0aDogODB2dztcclxuICAgICAgICBoZWlnaHQ6IDUwdmg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXJweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3B1cCA+IC5wb3AtdG9wIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDV2aDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZzogMCAyNXJweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3B1cCA+IC5zZWxlY3QtYXJlYSB7XHJcbiAgICAgICAgd2lkdGg6IDg1JTtcclxuICAgICAgICBoZWlnaHQ6IDcwJTtcclxuICAgICAgICBtYXJnaW46IDQwcnB4IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLnBvcHVwID4gLnNlbGVjdC1hcmVhID4gLnN1Ym1pdC1idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDllZmY7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbjwvc3R5bGU+XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///193\n");
/***/ }),
/* 194 */
@@ -29347,7 +29345,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _public = __webpack_require__(/*! ../../public */ 37);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n iptVal: '',\n allChecked: false,\n inputs: \"\",\n list: [],\n totalFine: '',\n cartList: [],\n agreementId: '',\n submitList: {\n parentId: '',\n backApplyDetails: ''\n }\n };\n },\n computed: {\n totalNum: function totalNum() {\n //总计\n var str = 0;\n for (var i = 0; i < this.searchData.length; i++) {\n if (this.searchData[i].checked) {\n str += this.searchData[i].num;\n }\n }\n this.totalFine = str;\n return str;\n },\n searchData: function searchData() {\n var _this = this;\n //模糊查询\n if (!this.inputs) {\n return this.list;\n }\n return this.list.filter(function (item) {\n return item.typeName.includes(_this.inputs);\n });\n }\n },\n methods: {\n iconClick: function iconClick() {\n __f__(\"log\", this.iptVal, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:88\");\n },\n add: function add(item) {\n //加加\n var num = item.offNum;\n /* if (num >= item.num) {\r\n \tuni.showToast({\r\n \t\ticon: 'none',\r\n \t\ttitle: '退料数量不可大于当前在用量!'\r\n \t})\r\n } else { */\n item.offNum = num + 1;\n // }\n },\n reduce: function reduce(item) {\n //减减\n var num = item.offNum;\n if (num > 1) {\n num -= 1;\n } else if (num = 1) {\n uni.showToast({\n icon: 'none',\n title: \"该器具无法再减少\"\n });\n }\n item.offNum = num;\n },\n // 单个商品的选择\n checkClick: function checkClick(item) {\n item.checked = !item.checked;\n if (!item.checked) {\n this.allChecked = false;\n } else {\n // 判断每一个商品是否是被选择的状态\n var goods = this.list.every(function (item) {\n return item.checked === true;\n });\n if (goods) {\n this.allChecked = true;\n } else {\n this.allChecked = false;\n }\n }\n },\n checkAll: function checkAll() {\n this.allChecked = !this.allChecked;\n if (this.allChecked) {\n this.list.map(function (item) {\n item.checked = true;\n });\n } else {\n this.list.map(function (item) {\n item.checked = false;\n });\n }\n },\n finishCart: function finishCart() {\n var _this2 = this;\n var that = this;\n that.cartList = that.list.filter(function (item) {\n return item.checked == true && item.offNum > 0;\n });\n __f__(\"log\", that.cartList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:147\");\n if (that.cartList.length == 0) {\n uni.showToast({\n icon: 'none',\n title: '请选择退料数量大于0的退料项!'\n });\n } else {\n uni.showModal({\n title: '退料选择',\n content: '确认提交吗?',\n confirmText: '提交',\n success: function success(modalRes) {\n if (modalRes.confirm) {\n __f__(\"log\", _this2.cartList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:160\");\n that.submitList.backApplyDetails = that.cartList.map(function (item) {\n return {\n typeId: item['typeId'],\n preNum: item['offNum'],\n createBy: uni.getStorageSync('userInfo').userid,\n companyId: item['companyId']\n };\n });\n __f__(\"log\", that.submitList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:169\");\n // 提交退料清单\n that.$api.exitMaterial.subExitMaterial(that.submitList).then(function (res) {\n __f__(\"log\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:172\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: 'none',\n title: res.data.msg,\n success: function success() {\n uni.navigateBack();\n }\n });\n } else {\n uni.showToast({\n icon: 'none',\n title: res.data.msg\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:188\");\n });\n }\n }\n });\n }\n },\n exitNumChange: function exitNumChange(e, index) {\n var that = this;\n var numTest = /^\\+?[1-9]\\d*$/;\n __f__(\"log\", e, that.list[index].num, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:198\");\n if (!numTest.test(e)) {\n uni.showToast({\n icon: 'none',\n title: '退料数量输入有误!',\n success: function success() {\n that.list[index].offNum = 0;\n }\n });\n } else if (e > that.list[index].num) {\n uni.showToast({\n icon: 'none',\n title: '退料数量不得大于当前在用量!',\n success: function success() {\n that.list[index].offNum = 0;\n }\n });\n }\n }\n },\n onLoad: function onLoad(params) {\n var that = this;\n __f__(\"log\", params, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:220\");\n that.agreementId = params.agreeId;\n that.submitList.parentId = params.id;\n // 退料物料选择\n that.$api.exitMaterial.selectMaterial({\n agreementId: params.agreeId\n }).then(function (res) {\n __f__(\"log\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:227\");\n if (res.data.code == 200) {\n if (res.data.data.length == 0) {\n uni.showToast({\n icon: 'none',\n title: '当前物料已退完,请重新领料!'\n });\n } else {\n for (var i = 0; i < res.data.data.length; i++) {\n res.data.data[i].num = Number(res.data.data[i].num.split('.')[0]);\n res.data.data[i].offNum = 0;\n }\n __f__(\"log\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:239\");\n that.list = res.data.data;\n }\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:244\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvZXhpdE1hdGVyaWFsU2VsZWN0L2V4aXRNYXRlcmlhbFNlbGVjdC52dWUiXSwibmFtZXMiOlsiZGF0YSIsImlwdFZhbCIsImFsbENoZWNrZWQiLCJpbnB1dHMiLCJsaXN0IiwidG90YWxGaW5lIiwiY2FydExpc3QiLCJhZ3JlZW1lbnRJZCIsInN1Ym1pdExpc3QiLCJwYXJlbnRJZCIsImJhY2tBcHBseURldGFpbHMiLCJjb21wdXRlZCIsInRvdGFsTnVtIiwic3RyIiwic2VhcmNoRGF0YSIsIm1ldGhvZHMiLCJpY29uQ2xpY2siLCJhZGQiLCJpdGVtIiwicmVkdWNlIiwibnVtIiwidW5pIiwiaWNvbiIsInRpdGxlIiwiY2hlY2tDbGljayIsImNoZWNrQWxsIiwiZmluaXNoQ2FydCIsInRoYXQiLCJjb250ZW50IiwiY29uZmlybVRleHQiLCJzdWNjZXNzIiwidHlwZUlkIiwicHJlTnVtIiwiY3JlYXRlQnkiLCJjb21wYW55SWQiLCJleGl0TnVtQ2hhbmdlIiwib25Mb2FkIiwicmVzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUE2Q0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUMsUUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztRQUNBQztRQUNBQztNQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUNBO01BQ0E7TUFDQTtRQUNBO1VBQ0FDO1FBQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7TUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtNQUNBO1FBQ0FDO01BQ0E7UUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtNQUNBO01BQ0FMO0lBQ0E7SUFDQTtJQUNBTTtNQUNBTjtNQUNBO1FBQ0E7TUFDQTtRQUNBO1FBQ0E7VUFDQTtRQUNBO1FBQ0E7VUFDQTtRQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQU87TUFDQTtNQUNBO1FBQ0E7VUFDQVA7UUFDQTtNQUNBO1FBQ0E7VUFDQUE7UUFDQTtNQUNBO0lBQ0E7SUFDQVE7TUFBQTtNQUNBO01BQ0FDO1FBQ0E7TUFDQTtNQUNBO01BQ0E7UUFDQU47VUFDQUM7VUFDQUM7UUFDQTtNQUNBO1FBQ0FGO1VBQ0FFO1VBQ0FLO1VBQ0FDO1VBQ0FDO1lBQ0E7Y0FDQTtjQUNBSDtnQkFDQTtrQkFDQUk7a0JBQ0FDO2tCQUNBQztrQkFDQUM7Z0JBQ0E7Y0FDQTtjQUNBO2NBQ0E7Y0FDQVA7Z0JBQ0E7Z0JBQ0E7a0JBQ0FOO29CQUNBQztvQkFDQUM7b0JBQ0FPO3NCQUNBVDtvQkFDQTtrQkFDQTtnQkFDQTtrQkFDQUE7b0JBQ0FDO29CQUNBQztrQkFDQTtnQkFDQTtjQUNBO2dCQUNBO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FZO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFDQWQ7VUFDQUM7VUFDQUM7VUFDQU87WUFDQUg7VUFDQTtRQUNBO01BQ0E7UUFDQU47VUFDQUM7VUFDQUM7VUFDQU87WUFDQUg7VUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FTO0lBQ0E7SUFDQTtJQUNBVDtJQUNBQTtJQUNBO0lBQ0FBO01BQ0FwQjtJQUNBO01BQ0E7TUFDQTtRQUNBO1VBQ0FjO1lBQ0FDO1lBQ0FDO1VBQ0E7UUFDQTtVQUNBO1lBQ0FjO1lBQ0FBO1VBQ0E7VUFDQTtVQUNBVjtRQUNBO01BQ0E7SUFDQTtNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiMzQ2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxyXG5cdDx2aWV3PlxyXG5cdFx0PHZpZXcgY2xhc3M9XCJzZWFyY2gtYmFyXCI+XHJcblx0XHRcdDx1bmktZWFzeWlucHV0IHByZWZpeEljb249XCJzZWFyY2hcIiB2LW1vZGVsPVwiaW5wdXRzXCIgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXlkI3np7BcIj48L3VuaS1lYXN5aW5wdXQ+XHJcblx0XHQ8L3ZpZXc+XHJcblx0XHQ8dmlldyBjbGFzcz1cImRhdGFJbmZvXCI+XHJcblx0XHRcdDx2aWV3IGNsYXNzPVwiZGF0YUxpc3RcIiB2LWZvcj1cIihpdGVtLGluZGV4KSBpbiBzZWFyY2hEYXRhXCIgOmtleT1cImluZGV4XCI+XHJcblx0XHRcdFx0PGNoZWNrYm94LWdyb3VwIEBjaGFuZ2U9XCJjaGVja0NsaWNrKGl0ZW0pXCI+XHJcblx0XHRcdFx0XHQ8Y2hlY2tib3ggOmNoZWNrZWQ9XCJpdGVtLmNoZWNrZWRcIiAvPlxyXG5cdFx0XHRcdDwvY2hlY2tib3gtZ3JvdXA+XHJcblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJkZXRhaWxzXCI+XHJcblx0XHRcdFx0XHQ8IS0tIDx2aWV3IGNsYXNzPVwiaW1nXCI+XHJcblx0XHRcdFx0XHRcdDxpbWFnZSA6c3JjPVwiaXRlbS51cmxcIj48L2ltYWdlPlxyXG5cdFx0XHRcdFx0PC92aWV3PiAtLT5cclxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwidGV4dFwiPlxyXG5cdFx0XHRcdFx0XHQ8dGV4dD7nsbvlnovlkI3np7DvvJp7e2l0ZW0udHlwZU5hbWV9fTwvdGV4dD5cclxuXHRcdFx0XHRcdFx0PHRleHQ+6KeE5qC857yW5Y+377yae3tpdGVtLnR5cGVDb2RlfX08L3RleHQ+XHJcblx0XHRcdFx0XHRcdDx0ZXh0PuW9k+WJjeWcqOeUqOmHj++8mnt7aXRlbS5udW19fTwvdGV4dD5cclxuXHRcdFx0XHRcdFx0PHZpZXc+6YCA5paZ5pWw6YeP77yaPHVuaS1lYXN5aW5wdXQgc3R5bGU9XCJtYXJnaW4tdG9wOiAxNXJweDtcIiB2LW1vZGVsPVwiaXRlbS5vZmZOdW1cIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiIEBjaGFuZ2U9XCJleGl0TnVtQ2hhbmdlKCRldmVudCwgaW5kZXgpXCIgdHlwZT1cIm51bWJlclwiPjwvdW5pLWVhc3lpbnB1dD48L3ZpZXc+XHJcblx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDwhLS0gPHZpZXcgY2xhc3M9XCJhY3Rpb25cIj5cclxuXHRcdFx0XHRcdDx0ZXh0IEBjbGljaz1cInJlZHVjZShpdGVtKVwiPi08L3RleHQ+XHJcblx0XHRcdFx0XHQ8dGV4dD57e2l0ZW0ub2ZmTnVtfX08L3RleHQ+XHJcblx0XHRcdFx0XHQ8dGV4dCBAY2xpY2s9XCJhZGQoaXRlbSlcIj4rPC90ZXh0PlxyXG5cdFx0XHRcdDwvdmlldz4gLS0+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdDwvdmlldz5cclxuXHRcdDx2aWV3IGNsYXNzPVwiYnV5XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1wiPlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cImNoZWNrZWRcIj5cclxuXHRcdFx0XHQ8Y2hlY2tib3gtZ3JvdXAgQHRhcD1cImNoZWNrQWxsXCI+XHJcblx0XHRcdFx0XHQ8Y2hlY2tib3ggOmNoZWNrZWQ9XCJhbGxDaGVja2VkXCIgLz5cclxuXHRcdFx0XHQ8L2NoZWNrYm94LWdyb3VwPlxyXG5cdFx0XHRcdDx0ZXh0PuWFqOmAiTwvdGV4dD5cclxuXHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cInRvdGFsXCI+XHJcblx0XHRcdFx0PCEtLSB7eyB0b3RhbE51bSB9fSAtLT5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImJpbGxcIiBAY2xpY2s9XCJmaW5pc2hDYXJ0XCI+XHJcblx0XHRcdFx0XHQ8dGV4dD7mj5DkuqQ8L3RleHQ+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHQ8L3ZpZXc+XHJcblx0PC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG48c2NyaXB0PlxyXG5pbXBvcnQgeyBiYXNlUGF0aCB9IGZyb20gJy4uLy4uL3B1YmxpYyc7XHJcblx0ZXhwb3J0IGRlZmF1bHQge1xyXG5cdFx0ZGF0YSgpIHtcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHRpcHRWYWw6ICcnLFxyXG5cdFx0XHRcdGFsbENoZWNrZWQ6IGZhbHNlLFxyXG5cdFx0XHRcdGlucHV0czogXCJcIixcclxuXHRcdFx0XHRsaXN0OiBbXHJcblx0XHRcdFx0XSxcclxuXHRcdFx0XHR0b3RhbEZpbmU6ICcnLFxyXG5cdFx0XHRcdGNhcnRMaXN0OiBbXSxcclxuXHRcdFx0XHRhZ3JlZW1lbnRJZDogJycsXHJcblx0XHRcdFx0c3VibWl0TGlzdDoge1xyXG5cdFx0XHRcdFx0cGFyZW50SWQ6ICcnLFxyXG5cdFx0XHRcdFx0YmFja0FwcGx5RGV0YWlsczogJydcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRjb21wdXRlZDoge1xyXG5cdFx0XHR0b3RhbE51bSgpIHtcclxuXHRcdFx0XHQvL+aAu+iuoVxyXG5cdFx0XHRcdHZhciBzdHIgPSAwO1xyXG5cdFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zZWFyY2hEYXRhLmxlbmd0aDsgaSsrKSB7XHJcblx0XHRcdFx0XHRpZiAodGhpcy5zZWFyY2hEYXRhW2ldLmNoZWNrZWQpIHtcclxuXHRcdFx0XHRcdFx0c3RyICs9IHRoaXMuc2VhcmNoRGF0YVtpXS5udW07XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMudG90YWxGaW5lID0gc3RyXHJcblx0XHRcdFx0cmV0dXJuIHN0cjtcclxuXHRcdFx0fSxcclxuXHRcdFx0c2VhcmNoRGF0YTogZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0Ly/mqKHns4rmn6Xor6JcclxuXHRcdFx0XHRpZiAoIXRoaXMuaW5wdXRzKSB7XHJcblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5saXN0O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5saXN0LmZpbHRlcigoaXRlbSkgPT4ge1xyXG5cdFx0XHRcdFx0cmV0dXJuIGl0ZW0udHlwZU5hbWUuaW5jbHVkZXModGhpcy5pbnB1dHMpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG5cdFx0fSxcclxuXHRcdG1ldGhvZHM6IHtcclxuXHRcdFx0aWNvbkNsaWNrICgpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZyh0aGlzLmlwdFZhbCk7XHJcblx0XHRcdH0sXHJcblx0XHRcdGFkZChpdGVtKSB7IC8v5Yqg5YqgXHJcblx0XHRcdFx0bGV0IG51bSA9IGl0ZW0ub2ZmTnVtXHJcblx0XHRcdFx0LyogaWYgKG51bSA+PSBpdGVtLm51bSkge1xyXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdFx0dGl0bGU6ICfpgIDmlpnmlbDph4/kuI3lj6/lpKfkuo7lvZPliY3lnKjnlKjph4/vvIEnXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH0gZWxzZSB7ICovXHJcblx0XHRcdFx0XHRpdGVtLm9mZk51bSA9IG51bSArIDFcclxuXHRcdFx0XHQvLyB9XHJcblx0XHRcdH0sXHJcblx0XHRcdHJlZHVjZShpdGVtKSB7IC8v5YeP5YePXHJcblx0XHRcdFx0bGV0IG51bSA9IGl0ZW0ub2ZmTnVtXHJcblx0XHRcdFx0aWYgKG51bSA+IDEpIHtcclxuXHRcdFx0XHRcdG51bSAtPSAxXHJcblx0XHRcdFx0fSBlbHNlIGlmIChudW0gPSAxKSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHR0aXRsZTogXCLor6Xlmajlhbfml6Dms5Xlho3lh4/lsJFcIlxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aXRlbS5vZmZOdW0gPSBudW1cclxuXHRcdFx0fSxcclxuXHRcdFx0Ly8g5Y2V5Liq5ZWG5ZOB55qE6YCJ5oupXHJcblx0XHRcdGNoZWNrQ2xpY2soaXRlbSkge1xyXG5cdFx0XHRcdGl0ZW0uY2hlY2tlZCA9ICFpdGVtLmNoZWNrZWRcclxuXHRcdFx0XHRpZiAoIWl0ZW0uY2hlY2tlZCkge1xyXG5cdFx0XHRcdFx0dGhpcy5hbGxDaGVja2VkID0gZmFsc2VcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0Ly8g5Yik5pat5q+P5LiA5Liq5ZWG5ZOB5piv5ZCm5piv6KKr6YCJ5oup55qE54q25oCBXHJcblx0XHRcdFx0XHRjb25zdCBnb29kcyA9IHRoaXMubGlzdC5ldmVyeShpdGVtID0+IHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIGl0ZW0uY2hlY2tlZCA9PT0gdHJ1ZVxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdGlmIChnb29kcykge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmFsbENoZWNrZWQgPSB0cnVlXHJcblx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmFsbENoZWNrZWQgPSBmYWxzZVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0Y2hlY2tBbGwoKSB7XHJcblx0XHRcdFx0dGhpcy5hbGxDaGVja2VkID0gIXRoaXMuYWxsQ2hlY2tlZFxyXG5cdFx0XHRcdGlmICh0aGlzLmFsbENoZWNrZWQpIHtcclxuXHRcdFx0XHRcdHRoaXMubGlzdC5tYXAoaXRlbSA9PiB7XHJcblx0XHRcdFx0XHRcdGl0ZW0uY2hlY2tlZCA9IHRydWVcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubGlzdC5tYXAoaXRlbSA9PiB7XHJcblx0XHRcdFx0XHRcdGl0ZW0uY2hlY2tlZCA9IGZhbHNlXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0ZmluaXNoQ2FydCAoKSB7XHJcblx0XHRcdFx0bGV0IHRoYXQgPSB0aGlzXHJcblx0XHRcdFx0dGhhdC5jYXJ0TGlzdCA9IHRoYXQubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcclxuXHRcdFx0XHRcdHJldHVybiBpdGVtLmNoZWNrZWQgPT0gdHJ1ZSAmJiBpdGVtLm9mZk51bSA+IDBcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdGNvbnNvbGUubG9nKHRoYXQuY2FydExpc3QpO1xyXG5cdFx0XHRcdGlmICh0aGF0LmNhcnRMaXN0Lmxlbmd0aCA9PSAwKSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+ivt+mAieaLqemAgOaWmeaVsOmHj+Wkp+S6jjDnmoTpgIDmlpnpobnvvIEnXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcclxuXHRcdFx0XHRcdFx0dGl0bGU6ICfpgIDmlpnpgInmi6knLFxyXG5cdFx0XHRcdFx0XHRjb250ZW50OiAn56Gu6K6k5o+Q5Lqk5ZCX77yfJyxcclxuXHRcdFx0XHRcdFx0Y29uZmlybVRleHQ6ICfmj5DkuqQnLFxyXG5cdFx0XHRcdFx0XHRzdWNjZXNzOiAobW9kYWxSZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRpZiAobW9kYWxSZXMuY29uZmlybSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2codGhpcy5jYXJ0TGlzdCk7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGF0LnN1Ym1pdExpc3QuYmFja0FwcGx5RGV0YWlscyA9IHRoYXQuY2FydExpc3QubWFwKChpdGVtKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dHlwZUlkOiBpdGVtWyd0eXBlSWQnXSxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRwcmVOdW06IGl0ZW1bJ29mZk51bSddLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNyZWF0ZUJ5OiB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJykudXNlcmlkLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbXBhbnlJZDogaXRlbVsnY29tcGFueUlkJ11cclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKHRoYXQuc3VibWl0TGlzdCk7XHJcblx0XHRcdFx0XHRcdFx0XHQvLyDmj5DkuqTpgIDmlpnmuIXljZVcclxuXHRcdFx0XHRcdFx0XHRcdHRoYXQuJGFwaS5leGl0TWF0ZXJpYWwuc3ViRXhpdE1hdGVyaWFsKHRoYXQuc3VibWl0TGlzdCkudGhlbihyZXMgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjb25zb2xlLmxvZyhyZXMpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRpdGxlOiByZXMuZGF0YS5tc2csXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRzdWNjZXNzOiAoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZUJhY2soKVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZScsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR0aXRsZTogcmVzLmRhdGEubXNnXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fSkuY2F0Y2goZXJyID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coZXJyKTtcclxuXHRcdFx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0ZXhpdE51bUNoYW5nZSAoZSwgaW5kZXgpIHtcclxuXHRcdFx0XHRsZXQgdGhhdCA9IHRoaXNcclxuXHRcdFx0XHRsZXQgbnVtVGVzdCA9IC9eXFwrP1sxLTldXFxkKiQvXHJcblx0XHRcdFx0Y29uc29sZS5sb2coZSwgdGhhdC5saXN0W2luZGV4XS5udW0pO1xyXG5cdFx0XHRcdGlmICghbnVtVGVzdC50ZXN0KGUpKSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+mAgOaWmeaVsOmHj+i+k+WFpeacieivr++8gScsXHJcblx0XHRcdFx0XHRcdHN1Y2Nlc3M6ICgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHR0aGF0Lmxpc3RbaW5kZXhdLm9mZk51bSA9IDBcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHR9IGVsc2UgaWYgKGUgPiB0aGF0Lmxpc3RbaW5kZXhdLm51bSkge1xyXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdGljb246ICdub25lJyxcclxuXHRcdFx0XHRcdFx0dGl0bGU6ICfpgIDmlpnmlbDph4/kuI3lvpflpKfkuo7lvZPliY3lnKjnlKjph4/vvIEnLFxyXG5cdFx0XHRcdFx0XHRzdWNjZXNzOiAoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhhdC5saXN0W2luZGV4XS5vZmZOdW0gPSAwXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0b25Mb2FkKHBhcmFtcykge1xyXG5cdFx0XHRsZXQgdGhhdCA9IHRoaXNcclxuXHRcdFx0Y29uc29sZS5sb2cocGFyYW1zKTtcclxuXHRcdFx0dGhhdC5hZ3JlZW1lbnRJZCA9IHBhcmFtcy5hZ3JlZUlkXHJcblx0XHRcdHRoYXQuc3VibWl0TGlzdC5wYXJlbnRJZCA9IHBhcmFtcy5pZFxyXG5cdFx0XHQvLyDpgIDmlpnnianmlpnpgInmi6lcclxuXHRcdFx0dGhhdC4kYXBpLmV4aXRNYXRlcmlhbC5zZWxlY3RNYXRlcmlhbCh7XHJcblx0XHRcdFx0YWdyZWVtZW50SWQ6IHBhcmFtcy5hZ3JlZUlkXHJcblx0XHRcdH0pLnRoZW4ocmVzID0+IHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZyhyZXMpO1xyXG5cdFx0XHRcdGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG5cdFx0XHRcdFx0aWYgKHJlcy5kYXRhLmRhdGEubGVuZ3RoID09IDApIHtcclxuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdHRpdGxlOiAn5b2T5YmN54mp5paZ5bey6YCA5a6M77yM6K+36YeN5paw6aKG5paZ77yBJ1xyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCByZXMuZGF0YS5kYXRhLmxlbmd0aDsgaSsrKSB7XHJcblx0XHRcdFx0XHRcdFx0cmVzLmRhdGEuZGF0YVtpXS5udW0gPSBOdW1iZXIocmVzLmRhdGEuZGF0YVtpXS5udW0uc3BsaXQoJy4nKVswXSlcclxuXHRcdFx0XHRcdFx0XHRyZXMuZGF0YS5kYXRhW2ldLm9mZk51bSA9IDBcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZyhyZXMpO1xyXG5cdFx0XHRcdFx0XHR0aGF0Lmxpc3QgPSByZXMuZGF0YS5kYXRhXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KS5jYXRjaChlcnIgPT4ge1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKGVycik7XHJcblx0XHRcdH0pXHJcblx0XHR9XHJcblx0fVxyXG48L3NjcmlwdD5cclxuIFxyXG4gXHJcbjxzdHlsZT5cclxuXHRib2R5e1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAxMHZoO1xyXG5cdH1cclxuXHRcclxuXHQuc2VhcmNoLWJhcntcclxuXHRcdHdpZHRoOiA5NSU7XHJcblx0XHRtYXJnaW46IDIwcnB4IGF1dG87XHJcblx0fVxyXG5cdFxyXG5cdC9kZWVwL3VuaS1jaGVja2JveCAudW5pLWNoZWNrYm94LWlucHV0IHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHR9XHJcbiBcclxuXHQvZGVlcC91bmktY2hlY2tib3ggLnVuaS1jaGVja2JveC1pbnB1dC51bmktY2hlY2tib3gtaW5wdXQtY2hlY2tlZCB7XHJcblx0XHRib3JkZXItY29sb3I6ICNkZGQ7XHJcblx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzJEQ0Y4QyAhaW1wb3J0YW50O1xyXG5cdH1cclxuIFxyXG5cdC9kZWVwL3VuaS1jaGVja2JveCAudW5pLWNoZWNrYm94LWlucHV0IHtcclxuXHRcdGJvcmRlci1jb2xvcjogI2RkZDtcclxuXHR9XHJcbiBcclxuXHQvZGVlcC91bmktY2hlY2tib3ggLnVuaS1jaGVja2JveC1pbnB1dDpob3ZlciB7XHJcblx0XHRib3JkZXItY29sb3I6ICNkZGQ7XHJcblx0fVxyXG4gXHJcblx0LnNlYXJjaCB7XHJcblx0XHRwYWRkaW5nLXRvcDogMjBycHg7XHJcblx0fVxyXG4gXHJcblx0LnNlYXJjaCAuc2VhcmNoSXB1dCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xyXG5cdFx0d2lkdGg6IDk1JTtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0aGVpZ2h0OiA3MnJweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwcnB4O1xyXG5cdFx0cGFkZGluZzogMCAzMnJweDtcclxuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR9XHJcbiBcclxuXHQuc2VhcmNoIC5zZWFyY2hJcHV0IGlucHV0IHtcclxuXHRcdGZvbnQtc2l6ZTogMjZycHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGNvbG9yOiBncmV5O1xyXG5cdH1cclxuIFxyXG5cdC5zZWFyY2ggLnNlYXJjaElwdXQgaW1hZ2Uge1xyXG5cdFx0d2lkdGg6IDM0cnB4O1xyXG5cdFx0aGVpZ2h0OiAzNHJweDtcclxuXHR9XHJcbiBcclxuIFxyXG4gXHJcblx0LmRhdGFJbmZvIHtcclxuXHRcdHdpZHRoOiA5NSU7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9XHJcbiBcclxuXHQuZGF0YUluZm8gLmRhdGFMaXN0IHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGMUYxRjE7XHJcblx0XHRwYWRkaW5nOiAyNXJweCAwO1xyXG5cdH1cclxuIFxyXG5cdC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRmbGV4OiAxO1xyXG5cdFx0Zm9udC1zaXplOiAwO1xyXG5cdH1cclxuIFxyXG5cdC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMgLmltZyBpbWFnZSB7XHJcblx0XHR3aWR0aDogMjAwcnB4O1xyXG5cdFx0aGVpZ2h0OiAxNDBycHg7XHJcblx0XHRwYWRkaW5nOiAwIDIwcnB4O1xyXG5cdH1cclxuIFxyXG5cdC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMgLnRleHQgdGV4dCB7XHJcblx0XHRjb2xvcjogIzAwMDtcclxuXHRcdGZvbnQtc2l6ZTogMjNycHg7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBhZGRpbmc6IDEwcnB4IDA7XHJcblx0fVxyXG4gXHJcblx0LmRhdGFJbmZvIC5kYXRhTGlzdCAuZGV0YWlscyAudGV4dCB7XHJcblx0XHRjb2xvcjogcmVkO1xyXG5cdFx0Zm9udC1zaXplOiAyNXJweDtcclxuXHR9XHJcbiBcclxuXHQuZGF0YUluZm8gLmRhdGFMaXN0IC5hY3Rpb24gdGV4dCB7XHJcblx0XHRmb250LXNpemU6IDI1cnB4O1xyXG5cdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjQzhDN0NDO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDUwcnB4O1xyXG5cdFx0d2lkdGg6IDYwcnB4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHR9XHJcbiBcclxuXHQuZGF0YUluZm8gLmRhdGFMaXN0IC5hY3Rpb24gdGV4dDpudGgtY2hpbGQoMikge1xyXG5cdFx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcblx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcblx0fVxyXG4gXHJcblx0LmJ1eSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHdpZHRoOiA5NSU7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuXHR9XHJcbiBcclxuXHQuYnV5IC5jaGVja2VkIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxuIFxyXG5cdC5idXkgLmNoZWNrZWQgdGV4dCB7XHJcblx0XHRmb250LXNpemU6IDI1cnB4O1xyXG5cdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRwYWRkaW5nOiAwIDEycnB4O1xyXG5cdH1cclxuIFxyXG5cdC5idXkgLnRvdGFsIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdH1cclxuIFxyXG5cdC5idXkgLnRvdGFsIC5wcmljZSB7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHJweDtcclxuIFxyXG5cdH1cclxuIFxyXG5cdC5idXkgLnRvdGFsIC5wcmljZSB0ZXh0IHtcclxuXHRcdGZvbnQtc2l6ZTogMjdycHg7XHJcblx0XHRjb2xvcjogI0M4QzdDQztcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR9XHJcbiBcclxuXHQuYnV5IC50b3RhbCAucHJpY2UgdGV4dDpsYXN0LWNoaWxkIHtcclxuXHRcdGNvbG9yOiByZWQ7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcbiBcclxuXHQuYnV5IC50b3RhbCAuYmlsbCB0ZXh0IHtcclxuXHRcdGZvbnQtc2l6ZTogMjVycHg7XHJcblx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuXHRcdGxpbmUtaGVpZ2h0OiA3MHJweDtcclxuXHRcdHdpZHRoOiAxNTBycHg7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0fVxyXG48L3N0eWxlPiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///346\n");
+eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _public = __webpack_require__(/*! ../../public */ 37);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n data: function data() {\n return {\n iptVal: \"\",\n allChecked: false,\n inputs: \"\",\n list: [],\n totalFine: \"\",\n cartList: [],\n agreementId: \"\",\n submitList: {\n parentId: \"\",\n backApplyDetails: \"\"\n }\n };\n },\n computed: {\n totalNum: function totalNum() {\n //总计\n var str = 0;\n for (var i = 0; i < this.searchData.length; i++) {\n if (this.searchData[i].checked) {\n str += this.searchData[i].num;\n }\n }\n this.totalFine = str;\n return str;\n },\n searchData: function searchData() {\n var _this = this;\n //模糊查询\n if (!this.inputs) {\n return this.list;\n }\n return this.list.filter(function (item) {\n return item.typeName.includes(_this.inputs);\n });\n }\n },\n methods: {\n iconClick: function iconClick() {\n __f__(\"log\", this.iptVal, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:100\");\n },\n add: function add(item) {\n //加加\n var num = item.offNum;\n /* if (num >= item.num) {\n uni.showToast({\n icon: 'none',\n title: '退料数量不可大于当前在用量!'\n })\n } else { */\n item.offNum = num + 1;\n // }\n },\n reduce: function reduce(item) {\n //减减\n var num = item.offNum;\n if (num > 1) {\n num -= 1;\n } else if (num = 1) {\n uni.showToast({\n icon: \"none\",\n title: \"该器具无法再减少\"\n });\n }\n item.offNum = num;\n },\n // 单个商品的选择\n checkClick: function checkClick(item) {\n item.checked = !item.checked;\n if (!item.checked) {\n this.allChecked = false;\n } else {\n // 判断每一个商品是否是被选择的状态\n var goods = this.list.every(function (item) {\n return item.checked === true;\n });\n if (goods) {\n this.allChecked = true;\n } else {\n this.allChecked = false;\n }\n }\n },\n checkAll: function checkAll() {\n this.allChecked = !this.allChecked;\n if (this.allChecked) {\n this.list.map(function (item) {\n item.checked = true;\n });\n } else {\n this.list.map(function (item) {\n item.checked = false;\n });\n }\n },\n finishCart: function finishCart() {\n var _this2 = this;\n var that = this;\n that.cartList = that.list.filter(function (item) {\n return item.checked == true && item.offNum > 0;\n });\n __f__(\"log\", that.cartList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:161\");\n if (that.cartList.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"请选择退料数量大于0的退料项!\"\n });\n } else {\n uni.showModal({\n title: \"退料选择\",\n content: \"确认提交吗?\",\n confirmText: \"提交\",\n success: function success(modalRes) {\n if (modalRes.confirm) {\n __f__(\"log\", _this2.cartList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:174\");\n that.submitList.backApplyDetails = that.cartList.map(function (item) {\n return {\n typeId: item[\"typeId\"],\n preNum: item[\"offNum\"],\n createBy: uni.getStorageSync(\"userInfo\").userid,\n companyId: item[\"companyId\"]\n };\n });\n __f__(\"log\", that.submitList, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:186\");\n // 提交退料清单\n that.$api.exitMaterial.subExitMaterial(that.submitList).then(function (res) {\n __f__(\"log\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:191\");\n if (res.data.code == 200) {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg,\n success: function success() {\n uni.navigateBack();\n }\n });\n } else {\n uni.showToast({\n icon: \"none\",\n title: res.data.msg\n });\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:208\");\n });\n }\n }\n });\n }\n },\n exitNumChange: function exitNumChange(e, index) {\n var that = this;\n var numTest = /^\\+?[1-9]\\d*$/;\n __f__(\"log\", e, that.list[index].num, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:218\");\n if (!numTest.test(e)) {\n uni.showToast({\n icon: \"none\",\n title: \"退料数量输入有误!\",\n success: function success() {\n that.list[index].offNum = 0;\n }\n });\n } else if (e > that.list[index].num) {\n uni.showToast({\n icon: \"none\",\n title: \"退料数量不得大于当前在用量!\",\n success: function success() {\n that.list[index].offNum = 0;\n }\n });\n }\n }\n },\n onLoad: function onLoad(params) {\n var that = this;\n __f__(\"log\", params, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:240\");\n that.agreementId = params.agreeId;\n that.submitList.parentId = params.id;\n // 退料物料选择\n that.$api.exitMaterial.selectMaterial({\n agreementId: params.agreeId\n }).then(function (res) {\n __f__(\"log\", \"数据获取成功!!!\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:249\");\n if (res.data.code == 200) {\n if (res.data.data.length == 0) {\n uni.showToast({\n icon: \"none\",\n title: \"当前物料已退完,请重新领料!\"\n });\n } else {\n for (var i = 0; i < res.data.data.length; i++) {\n // res.data.data[i].num = Number(\n // res.data.data[i].num.split(\".\")[0]\n // );\n res.data.data[i].offNum = 0;\n }\n __f__(\"log\", res, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:263\");\n that.list = res.data.data;\n }\n }\n }).catch(function (err) {\n __f__(\"log\", err, \" at pages/exitMaterialSelect/exitMaterialSelect.vue:269\");\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 */ 36)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvZXhpdE1hdGVyaWFsU2VsZWN0L2V4aXRNYXRlcmlhbFNlbGVjdC52dWUiXSwibmFtZXMiOlsiZGF0YSIsImlwdFZhbCIsImFsbENoZWNrZWQiLCJpbnB1dHMiLCJsaXN0IiwidG90YWxGaW5lIiwiY2FydExpc3QiLCJhZ3JlZW1lbnRJZCIsInN1Ym1pdExpc3QiLCJwYXJlbnRJZCIsImJhY2tBcHBseURldGFpbHMiLCJjb21wdXRlZCIsInRvdGFsTnVtIiwic3RyIiwic2VhcmNoRGF0YSIsIm1ldGhvZHMiLCJpY29uQ2xpY2siLCJhZGQiLCJpdGVtIiwicmVkdWNlIiwibnVtIiwidW5pIiwiaWNvbiIsInRpdGxlIiwiY2hlY2tDbGljayIsImNoZWNrQWxsIiwiZmluaXNoQ2FydCIsInRoYXQiLCJjb250ZW50IiwiY29uZmlybVRleHQiLCJzdWNjZXNzIiwidHlwZUlkIiwicHJlTnVtIiwiY3JlYXRlQnkiLCJ1c2VyaWQiLCJjb21wYW55SWQiLCJzdWJFeGl0TWF0ZXJpYWwiLCJ0aGVuIiwiY2F0Y2giLCJleGl0TnVtQ2hhbmdlIiwib25Mb2FkIiwic2VsZWN0TWF0ZXJpYWwiLCJyZXMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQTBEQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7UUFDQUM7UUFDQUM7TUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQUM7TUFDQTtNQUNBO01BQ0E7UUFDQTtVQUNBQztRQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO01BQ0E7UUFDQTtNQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO01BQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtRQUNBQztNQUNBO1FBQ0FDO1VBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtNQUNBTDtJQUNBO0lBQ0E7SUFDQU07TUFDQU47TUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FPO01BQ0E7TUFDQTtRQUNBO1VBQ0FQO1FBQ0E7TUFDQTtRQUNBO1VBQ0FBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FRO01BQUE7TUFDQTtNQUNBQztRQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0FOO1VBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtRQUNBRjtVQUNBRTtVQUNBSztVQUNBQztVQUNBQztZQUNBO2NBQ0E7Y0FDQUgsbUNBQ0FBO2dCQUNBO2tCQUNBSTtrQkFDQUM7a0JBQ0FDLFVBQ0FaLCtCQUNBYTtrQkFDQUM7Z0JBQ0E7Y0FDQTtjQUNBO2NBQ0E7Y0FDQVIsdUJBQ0FTLGlDQUNBQztnQkFDQTtnQkFDQTtrQkFDQWhCO29CQUNBQztvQkFDQUM7b0JBQ0FPO3NCQUNBVDtvQkFDQTtrQkFDQTtnQkFDQTtrQkFDQUE7b0JBQ0FDO29CQUNBQztrQkFDQTtnQkFDQTtjQUNBLEdBQ0FlO2dCQUNBO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFDQWxCO1VBQ0FDO1VBQ0FDO1VBQ0FPO1lBQ0FIO1VBQ0E7UUFDQTtNQUNBO1FBQ0FOO1VBQ0FDO1VBQ0FDO1VBQ0FPO1lBQ0FIO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFDQTtFQUNBYTtJQUNBO0lBQ0E7SUFDQWI7SUFDQUE7SUFDQTtJQUNBQSx1QkFDQWM7TUFDQWxDO0lBQ0EsR0FDQThCO01BQ0E7TUFDQTtRQUNBO1VBQ0FoQjtZQUNBQztZQUNBQztVQUNBO1FBQ0E7VUFDQTtZQUNBO1lBQ0E7WUFDQTtZQUNBbUI7VUFDQTtVQUNBO1VBQ0FmO1FBQ0E7TUFDQTtJQUNBLEdBQ0FXO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIzNDYuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgICA8dmlldz5cclxuICAgICAgICA8dmlldyBjbGFzcz1cInNlYXJjaC1iYXJcIj5cclxuICAgICAgICAgICAgPHVuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgIHByZWZpeEljb249XCJzZWFyY2hcIlxyXG4gICAgICAgICAgICAgICAgdi1tb2RlbD1cImlucHV0c1wiXHJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeWQjeensFwiPjwvdW5pLWVhc3lpbnB1dD5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJkYXRhSW5mb1wiPlxyXG4gICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkYXRhTGlzdFwiXHJcbiAgICAgICAgICAgICAgICB2LWZvcj1cIihpdGVtLCBpbmRleCkgaW4gc2VhcmNoRGF0YVwiXHJcbiAgICAgICAgICAgICAgICA6a2V5PVwiaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDxjaGVja2JveC1ncm91cCBAY2hhbmdlPVwiY2hlY2tDbGljayhpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjaGVja2JveCA6Y2hlY2tlZD1cIml0ZW0uY2hlY2tlZFwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2NoZWNrYm94LWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJkZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8dmlldyBjbGFzcz1cImltZ1wiPlxyXG5cdFx0XHRcdFx0XHQ8aW1hZ2UgOnNyYz1cIml0ZW0udXJsXCI+PC9pbWFnZT5cclxuXHRcdFx0XHRcdDwvdmlldz4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJ0ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0Puexu+Wei+WQjeensO+8mnt7IGl0ZW0udHlwZU5hbWUgfX08L3RleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0PuinhOagvOe8luWPt++8mnt7IGl0ZW0udHlwZUNvZGUgfX08L3RleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0PuW9k+WJjeWcqOeUqOmHj++8mnt7IGl0ZW0ubnVtIH19PC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlld1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPumAgOaWmeaVsOmHj++8mjx1bmktZWFzeWlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tdG9wOiAxNXJweFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cIml0ZW0ub2ZmTnVtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGNoYW5nZT1cImV4aXROdW1DaGFuZ2UoJGV2ZW50LCBpbmRleClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIj48L3VuaS1lYXN5aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmlldz5cclxuICAgICAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDx2aWV3IGNsYXNzPVwiYWN0aW9uXCI+XHJcblx0XHRcdFx0XHQ8dGV4dCBAY2xpY2s9XCJyZWR1Y2UoaXRlbSlcIj4tPC90ZXh0PlxyXG5cdFx0XHRcdFx0PHRleHQ+e3tpdGVtLm9mZk51bX19PC90ZXh0PlxyXG5cdFx0XHRcdFx0PHRleHQgQGNsaWNrPVwiYWRkKGl0ZW0pXCI+KzwvdGV4dD5cclxuXHRcdFx0XHQ8L3ZpZXc+IC0tPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwiYnV5XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmXCI+XHJcbiAgICAgICAgICAgIDx2aWV3IGNsYXNzPVwiY2hlY2tlZFwiPlxyXG4gICAgICAgICAgICAgICAgPGNoZWNrYm94LWdyb3VwIEB0YXA9XCJjaGVja0FsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjaGVja2JveCA6Y2hlY2tlZD1cImFsbENoZWNrZWRcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9jaGVja2JveC1ncm91cD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0PuWFqOmAiTwvdGV4dD5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlldyBjbGFzcz1cInRvdGFsXCI+XHJcbiAgICAgICAgICAgICAgICA8IS0tIHt7IHRvdGFsTnVtIH19IC0tPlxyXG4gICAgICAgICAgICAgICAgPHZpZXcgY2xhc3M9XCJiaWxsXCIgQGNsaWNrPVwiZmluaXNoQ2FydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZXh0PuaPkOS6pDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDwvdmlldz5cclxuICAgIDwvdmlldz5cclxuPC90ZW1wbGF0ZT5cclxuPHNjcmlwdD5cclxuICAgIGltcG9ydCB7IGJhc2VQYXRoIH0gZnJvbSBcIi4uLy4uL3B1YmxpY1wiO1xyXG4gICAgZXhwb3J0IGRlZmF1bHQge1xyXG4gICAgICAgIGRhdGEoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBpcHRWYWw6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICBhbGxDaGVja2VkOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGlucHV0czogXCJcIixcclxuICAgICAgICAgICAgICAgIGxpc3Q6IFtdLFxyXG4gICAgICAgICAgICAgICAgdG90YWxGaW5lOiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgY2FydExpc3Q6IFtdLFxyXG4gICAgICAgICAgICAgICAgYWdyZWVtZW50SWQ6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICBzdWJtaXRMaXN0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50SWQ6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja0FwcGx5RGV0YWlsczogXCJcIixcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wdXRlZDoge1xyXG4gICAgICAgICAgICB0b3RhbE51bSgpIHtcclxuICAgICAgICAgICAgICAgIC8v5oC76K6hXHJcbiAgICAgICAgICAgICAgICB2YXIgc3RyID0gMDtcclxuICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5zZWFyY2hEYXRhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VhcmNoRGF0YVtpXS5jaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSB0aGlzLnNlYXJjaERhdGFbaV0ubnVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMudG90YWxGaW5lID0gc3RyO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc2VhcmNoRGF0YTogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgLy/mqKHns4rmn6Xor6JcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pbnB1dHMpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5saXN0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS50eXBlTmFtZS5pbmNsdWRlcyh0aGlzLmlucHV0cyk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG1ldGhvZHM6IHtcclxuICAgICAgICAgICAgaWNvbkNsaWNrKCkge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhpcy5pcHRWYWwpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBhZGQoaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgLy/liqDliqBcclxuICAgICAgICAgICAgICAgIGxldCBudW0gPSBpdGVtLm9mZk51bTtcclxuICAgICAgICAgICAgICAgIC8qIGlmIChudW0gPj0gaXRlbS5udW0pIHtcclxuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZScsXHJcblx0XHRcdFx0XHRcdHRpdGxlOiAn6YCA5paZ5pWw6YeP5LiN5Y+v5aSn5LqO5b2T5YmN5Zyo55So6YeP77yBJ1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHR9IGVsc2UgeyAqL1xyXG4gICAgICAgICAgICAgICAgaXRlbS5vZmZOdW0gPSBudW0gKyAxO1xyXG4gICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICByZWR1Y2UoaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgLy/lh4/lh49cclxuICAgICAgICAgICAgICAgIGxldCBudW0gPSBpdGVtLm9mZk51bTtcclxuICAgICAgICAgICAgICAgIGlmIChudW0gPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbnVtIC09IDE7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKChudW0gPSAxKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFwi6K+l5Zmo5YW35peg5rOV5YaN5YeP5bCRXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpdGVtLm9mZk51bSA9IG51bTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLy8g5Y2V5Liq5ZWG5ZOB55qE6YCJ5oupXHJcbiAgICAgICAgICAgIGNoZWNrQ2xpY2soaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgaXRlbS5jaGVja2VkID0gIWl0ZW0uY2hlY2tlZDtcclxuICAgICAgICAgICAgICAgIGlmICghaXRlbS5jaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGxDaGVja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIOWIpOaWreavj+S4gOS4quWVhuWTgeaYr+WQpuaYr+iiq+mAieaLqeeahOeKtuaAgVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdvb2RzID0gdGhpcy5saXN0LmV2ZXJ5KChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmNoZWNrZWQgPT09IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdvb2RzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGxDaGVja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBjaGVja0FsbCgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tlZCA9ICF0aGlzLmFsbENoZWNrZWQ7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5hbGxDaGVja2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0Lm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmNoZWNrZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxpc3QubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBmaW5pc2hDYXJ0KCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgdGhhdC5jYXJ0TGlzdCA9IHRoYXQubGlzdC5maWx0ZXIoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5jaGVja2VkID09IHRydWUgJiYgaXRlbS5vZmZOdW0gPiAwO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyh0aGF0LmNhcnRMaXN0KTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGF0LmNhcnRMaXN0Lmxlbmd0aCA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLor7fpgInmi6npgIDmlpnmlbDph4/lpKfkuo4w55qE6YCA5paZ6aG577yBXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHVuaS5zaG93TW9kYWwoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLpgIDmlpnpgInmi6lcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLnoa7orqTmj5DkuqTlkJfvvJ9cIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybVRleHQ6IFwi5o+Q5LqkXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IChtb2RhbFJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1vZGFsUmVzLmNvbmZpcm0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmNhcnRMaXN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0LnN1Ym1pdExpc3QuYmFja0FwcGx5RGV0YWlscyA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQuY2FydExpc3QubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVJZDogaXRlbVtcInR5cGVJZFwiXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVOdW06IGl0ZW1bXCJvZmZOdW1cIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlQnk6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5nZXRTdG9yYWdlU3luYyhcInVzZXJJbmZvXCIpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudXNlcmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhbnlJZDogaXRlbVtcImNvbXBhbnlJZFwiXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoYXQuc3VibWl0TGlzdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g5o+Q5Lqk6YCA5paZ5riF5Y2VXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC4kYXBpLmV4aXRNYXRlcmlhbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3ViRXhpdE1hdGVyaWFsKHRoYXQuc3VibWl0TGlzdClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHJlcy5kYXRhLm1zZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pLm5hdmlnYXRlQmFjaygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiByZXMuZGF0YS5tc2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgZXhpdE51bUNoYW5nZShlLCBpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgbGV0IG51bVRlc3QgPSAvXlxcKz9bMS05XVxcZCokLztcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGUsIHRoYXQubGlzdFtpbmRleF0ubnVtKTtcclxuICAgICAgICAgICAgICAgIGlmICghbnVtVGVzdC50ZXN0KGUpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXCLpgIDmlpnmlbDph4/ovpPlhaXmnInor6/vvIFcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5saXN0W2luZGV4XS5vZmZOdW0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChlID4gdGhhdC5saXN0W2luZGV4XS5udW0pIHtcclxuICAgICAgICAgICAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIumAgOaWmeaVsOmHj+S4jeW+l+Wkp+S6juW9k+WJjeWcqOeUqOmHj++8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0Lmxpc3RbaW5kZXhdLm9mZk51bSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICBvbkxvYWQocGFyYW1zKSB7XHJcbiAgICAgICAgICAgIGxldCB0aGF0ID0gdGhpcztcclxuICAgICAgICAgICAgY29uc29sZS5sb2cocGFyYW1zKTtcclxuICAgICAgICAgICAgdGhhdC5hZ3JlZW1lbnRJZCA9IHBhcmFtcy5hZ3JlZUlkO1xyXG4gICAgICAgICAgICB0aGF0LnN1Ym1pdExpc3QucGFyZW50SWQgPSBwYXJhbXMuaWQ7XHJcbiAgICAgICAgICAgIC8vIOmAgOaWmeeJqeaWmemAieaLqVxyXG4gICAgICAgICAgICB0aGF0LiRhcGkuZXhpdE1hdGVyaWFsXHJcbiAgICAgICAgICAgICAgICAuc2VsZWN0TWF0ZXJpYWwoe1xyXG4gICAgICAgICAgICAgICAgICAgIGFncmVlbWVudElkOiBwYXJhbXMuYWdyZWVJZCxcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAudGhlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCLmlbDmja7ojrflj5bmiJDlip/vvIHvvIHvvIFcIiwgcmVzKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5kYXRhLmRhdGEubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb246IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBcIuW9k+WJjeeJqeaWmeW3sumAgOWujO+8jOivt+mHjeaWsOmihuaWme+8gVwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlcy5kYXRhLmRhdGEubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZXMuZGF0YS5kYXRhW2ldLm51bSA9IE51bWJlcihcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgICAgcmVzLmRhdGEuZGF0YVtpXS5udW0uc3BsaXQoXCIuXCIpWzBdXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5kYXRhW2ldLm9mZk51bSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5saXN0ID0gcmVzLmRhdGEuZGF0YTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9LFxyXG4gICAgfTtcclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGU+XHJcbiAgICBib2R5IHtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHZoO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtYmFyIHtcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgIG1hcmdpbjogMjBycHggYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAvZGVlcC91bmktY2hlY2tib3ggLnVuaS1jaGVja2JveC1pbnB1dCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC9kZWVwL3VuaS1jaGVja2JveCAudW5pLWNoZWNrYm94LWlucHV0LnVuaS1jaGVja2JveC1pbnB1dC1jaGVja2VkIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICNkZGQ7XHJcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmRjZjhjICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgL2RlZXAvdW5pLWNoZWNrYm94IC51bmktY2hlY2tib3gtaW5wdXQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogI2RkZDtcclxuICAgIH1cclxuXHJcbiAgICAvZGVlcC91bmktY2hlY2tib3ggLnVuaS1jaGVja2JveC1pbnB1dDpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHJweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoIC5zZWFyY2hJcHV0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xyXG4gICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiA3MnJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNzJycHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBycHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAzMnJweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoIC5zZWFyY2hJcHV0IGlucHV0IHtcclxuICAgICAgICBmb250LXNpemU6IDI2cnB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiBncmV5O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2ggLnNlYXJjaElwdXQgaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAzNHJweDtcclxuICAgICAgICBoZWlnaHQ6IDM0cnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyB7XHJcbiAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8gLmRhdGFMaXN0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjFmMWYxO1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cnB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmRhdGFJbmZvIC5kYXRhTGlzdCAuZGV0YWlscyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMgLmltZyBpbWFnZSB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHJweDtcclxuICAgICAgICBoZWlnaHQ6IDE0MHJweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMgLnRleHQgdGV4dCB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAyM3JweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxMHJweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmRldGFpbHMgLnRleHQge1xyXG4gICAgICAgIGNvbG9yOiByZWQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXJweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0YUluZm8gLmRhdGFMaXN0IC5hY3Rpb24gdGV4dCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXJweDtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzhjN2NjO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBsaW5lLWhlaWdodDogNTBycHg7XHJcbiAgICAgICAgd2lkdGg6IDYwcnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRhSW5mbyAuZGF0YUxpc3QgLmFjdGlvbiB0ZXh0Om50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC5jaGVja2VkIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1eSAuY2hlY2tlZCB0ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDI1cnB4O1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTJycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1eSAudG90YWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1eSAudG90YWwgLnByaWNlIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHJweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC50b3RhbCAucHJpY2UgdGV4dCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyN3JweDtcclxuICAgICAgICBjb2xvcjogI2M4YzdjYztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1eSAudG90YWwgLnByaWNlIHRleHQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgY29sb3I6IHJlZDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuXHJcbiAgICAuYnV5IC50b3RhbCAuYmlsbCB0ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDI1cnB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcnB4O1xyXG4gICAgICAgIHdpZHRoOiAxNTBycHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG48L3N0eWxlPlxyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///346\n");
/***/ }),
/* 347 */
@@ -46151,7 +46149,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 73));\nvar _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 72));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar ENV = \"development\";\nvar HttpConfig = /*#__PURE__*/(0, _createClass2.default)(function HttpConfig() {\n (0, _classCallCheck2.default)(this, HttpConfig);\n (0, _defineProperty2.default)(this, \"target\", \"http://192.168.43.200:39080\");\n (0, _defineProperty2.default)(this, \"baseUrl\", ENV === \"production\" ? \"http://192.168.0.56:21627\" : this.target);\n (0, _defineProperty2.default)(this, \"authPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/auth\") : \"\".concat(this.baseUrl, \"/auth\"));\n (0, _defineProperty2.default)(this, \"systemPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/system\") : \"\".concat(this.baseUrl, \"/system\"));\n (0, _defineProperty2.default)(this, \"basePath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/material/base\") : \"\".concat(this.baseUrl, \"/material/base\"));\n (0, _defineProperty2.default)(this, \"materialPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/material\") : \"\".concat(this.baseUrl, \"/material\"));\n (0, _defineProperty2.default)(this, \"serviceUrl\", {\n login: {\n code: \"/sendCode\",\n // 获取验证码\n checkCode: \"/checkCode\",\n // 验证码登录\n log: \"/loginApp\" // 账户登录\n },\n\n user: {\n logOut: \"/logout\" // 退出登录\n },\n\n index: {\n noticeCont: \"/sysNotice/getList\",\n // 获取公告内容\n singleNotice: \"/notice/list\",\n // 查看单个公告\n waitDo: \"/app/getToDoList\",\n // 获取待办事项\n keyData: \"/app/getCriticalData\",\n // 获取关键数据\n getUserInfo: \"/user/getInfo\",\n // 获取用户信息\n fetchCompanyName: \"/dept/getCompanyByAncestors\" // 获取公司名称\n },\n\n fetchMaterial: {\n fetchMaterialList: \"/type/selectMaTypeListByLevelIndex\",\n // 获取设备列表\n getDeptList: \"/select/getUnitCbx\",\n // 获取往来单位列表\n getProjList: \"/select/getSectionEngineeringCbx\",\n // 获取工程列表\n getDeviceDetail: \"/type/selectMaTypeTreeByLevel\",\n // 获取机具详情\n getCartDetail: \"/leaseUserBook\",\n // 查询预约车内所有商品\n addItemToCart: \"/leaseUserBook\",\n // 向预约车内添加商品\n delCart: \"/leaseUserBook\",\n // 删除预约车商品\n subCart: \"/tm_task/submitLeaseApply\",\n // 提交预约车\n itemNumChange: \"/leaseUserBook/update\" // 预约车数量加减\n },\n\n fetchExam: {\n fetchExamList: \"/tm_task/getLeaseAuditList\",\n // 获取领料审批清单\n fetchExamListAll: \"/tm_task/getLeaseAuditListAll\",\n // 获取领料申请列表\n fetchTrueExamList: \"/tm_task/getLeaseManageListAll\",\n // 获取领料审批列表\n fetchTrueExamListCq: \"/tm_task/getLeaseManageListAllCq\",\n // 获取重庆领料审批列表\n fetchDetailList: \"/tm_task/getLeaseListAllCq\",\n // 获取领料明细列表\n subExam: \"/tm_task/auditLeaseByCompany\",\n // 通过领料审批\n subExamCq: \"/tm_task/auditLeaseByCompanyCq\",\n // 通过重庆领料审批\n rejectExam: \"/tm_task/rejectLeaseByCompany\",\n // 驳回领料审批\n rejectExamCq: \"/tm_task/rejectLeaseByCompanyCq\" // 驳回重庆领料审批\n },\n\n fetchMaterialOutStore: {\n fetchInfoByCode: \"/leaseOutDetails/getMaMachineByCode\",\n // 根据maId获取机具详情\n fetchInfoByQrCode: \"/leaseOutDetails/getMaMachineByQrCode\",\n subOutStore: \"/leaseOutDetails/submitOut\",\n // 领料出库提交-对象\n subOutStoreArr: \"/leaseOutDetails/submitOutRfid\",\n // 领料出库提交-数组\n fetchSingleDetail: \"/tm_task/getLeaseAuditListDetail\",\n // 根据领料id查询领料申请详情\n searchRfid: \"/backReceive/rfidCodeQuery\" // 查询rfid\n },\n\n exitMaterial: {\n exitDeptList: \"/back_apply/getbackUnit\",\n // 获取退料单位,工程列表\n exitMaterialList: \"/back_apply/getbackList\",\n // 获取机具退料列表\n exitMaterialDetail: \"/back_apply/view\",\n // 获取退料设备详情\n subExitMaterial: \"/back_apply/upload\",\n // 提交退料清单\n delMaterial: \"/back_apply/del\",\n // 删除退料申请\n newExitList: \"/back_apply/addBackTask\",\n // 新建退料任务单\n selectMaterial: \"/back_apply/materialList\",\n // 退料物料选择\n ifAgreement: \"/select/getAgreementInfoById\" // 单位id和工程id是否匹配\n },\n\n exitExam: {\n exitExamList: \"/back_apply/examineList\",\n // 获取退料审核列表\n exitExamDetail: \"/back_apply/examineView\",\n // 获取退料审核明细\n subExitExam: \"/back_apply/audit\",\n // 提交单个审核\n rejectExitExam: \"/back_apply/refuse\" // 拒绝单个审核\n },\n\n newInStore: {\n // fetchNewInStoreList: '/purchaseInput/list', // 获取新购入库列表\n fetchNewInStoreList: \"/purchaseCheckInfo/putInList\",\n // 获取新购入库列表\n fetchNewBuyDetail: \"/purchaseMacode/putinDetails\",\n // 获取新购入库详情\n subNewBuy: \"/purchaseInput/manageStatus\" // 新购明细提交审核\n },\n\n fix: {\n fixList: \"/repair/getAppRepairTaskList\",\n // 获取维修列表\n fixDetail: \"/repair/getAppRepairMaTypeList\",\n // 获取维修明细\n fixExam: \"/repair/endRepairTask\",\n // 提交维修审核\n completeFix: \"/repair/completeRepair\",\n // 维修完成\n submitFix: \"/repair/submitRepairApply\",\n // 提交维修申请\n // fixCrew: '/repair/getUserSelect', // 获取维修人员\n fixCrew: \"/user/getUserByRoleList\",\n // 获取维修人员\n maList: \"/maPartType/list\",\n // 获取配件树\n fixFactory: \"/supplierInfo/getSupplierSelect\",\n // 获取维修厂家\n uploadPic: \"/sys/file/upload\" // 图片上传接口\n },\n\n repairTestInStore: {\n repairTestInStoreList: \"/RepairTestInput/getAppRepairedList\",\n // 获取修试后入库列表\n repairTestInStoreDetail: \"/RepairTestInput/getAppRepairedDetailList\",\n // 获取修试后列表详情\n processOrReject: \"/RepairTestInput/inputByType\" // 修试审核通过或驳回\n },\n\n backMaterialReceive: {\n backMaterialReceiveList: \"/backReceive/getbackReceiveList\",\n // 获取退料接收列表\n // backMaterialReceiveDetail: '/backReceive/receiveView',\n backMaterialReceiveDetail: \"/backReceive/receiveViewWeb\",\n backMaterialSetNumBack: \"/backReceive/setNumBack\",\n backMaterialQrcodeQuery: \"/backReceive/qrcodeQuery\",\n backMaterialSetCodeBack: \"/backReceive/setCodeBack\",\n backReceiveCodeQuery: \"/backReceive/codeQuery\",\n backReceiveEndBack: \"/backReceive/endBack\",\n seeBackMaterialDetail: \"/backReceive/backReceiveRecord\",\n // 查看退料明细\n searchRfid: \"/backReceive/rfidCodeQuery\",\n // 查询rfid\n subRfid: \"/backReceive/setRfidCodeBack\",\n // rfid接收\n searchByCode: \"/backReceive/getBackMachineApp\",\n // 根据编码查询该工程下的设备\n searchCodeDevice: \"/backReceive/getBackMachine\",\n // 根据编码查询该工程下的设备\n returnGetRecord: \"/backReceive/getRecord\" // 根据编码查询该工程下的设备\n },\n\n // 报废审核接口\n crashExam: {\n crashExamList: \"/scrap/getScrapTaskList\",\n crashExamDetails: \"/scrap/getScrapAuditList\",\n crashExamAudit: \"/scrap/audit\"\n },\n //试验检验接口\n testExam: {\n testExamList: \"/details/questList\",\n testExamDetails: \"/details/getRepairAuditList\",\n testExamAudit: \"/details/audit\"\n },\n authManage: {\n fetchAuthList: \"/appMenu/getAllMenu\",\n // 获取所有模块数据\n fetchIsUsing: \"/appMenu/getMenuById\",\n // 获取正在使用的模块\n subAdd: \"/appMenu/addMenuById\",\n // 提交新增模块\n subDel: \"/appMenu/delMenuById\" // 提交删除模块\n },\n\n searchProjUsing: {\n fetchProjUsingList: \"/leaseOutDetails/proUseRecord\" // 获取工程在用列表\n },\n\n searchFetchRecord: {\n fetchRecordList: \"/leaseOutDetails/leaseOutRecord\" // 获取领用记录列表\n },\n\n update: {\n fetchAppVer: \"/app/getVersion\" // 获取app当前版本号\n },\n\n rfidBinding: {\n bindRfid: \"/leaseOutDetails/bindMachineByRfid\" // rifd绑定\n },\n\n qrcodeBinding: {\n bindQrcode: \"/leaseOutDetails/bindMachineByQrCode\",\n // 二维码绑定\n fetchDeviceType: \"/returnOfMaterialsInfo/getMaTypeList\",\n // 获取设备类型\n fetchDeviceSpec: \"/returnOfMaterialsInfo/getInfoListByType\" // 获取规格型号\n },\n\n indexScan: {\n infoByCode: \"/machine/getMachineByQrCode\" // 首页根据二维码查询设备信息\n }\n });\n});\nvar _default = new HttpConfig();\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vYXBpcy9odHRwLmpzIl0sIm5hbWVzIjpbIkVOViIsInByb2Nlc3MiLCJIdHRwQ29uZmlnIiwidGFyZ2V0IiwiYmFzZVVybCIsImxvZ2luIiwiY29kZSIsImNoZWNrQ29kZSIsImxvZyIsInVzZXIiLCJsb2dPdXQiLCJpbmRleCIsIm5vdGljZUNvbnQiLCJzaW5nbGVOb3RpY2UiLCJ3YWl0RG8iLCJrZXlEYXRhIiwiZ2V0VXNlckluZm8iLCJmZXRjaENvbXBhbnlOYW1lIiwiZmV0Y2hNYXRlcmlhbCIsImZldGNoTWF0ZXJpYWxMaXN0IiwiZ2V0RGVwdExpc3QiLCJnZXRQcm9qTGlzdCIsImdldERldmljZURldGFpbCIsImdldENhcnREZXRhaWwiLCJhZGRJdGVtVG9DYXJ0IiwiZGVsQ2FydCIsInN1YkNhcnQiLCJpdGVtTnVtQ2hhbmdlIiwiZmV0Y2hFeGFtIiwiZmV0Y2hFeGFtTGlzdCIsImZldGNoRXhhbUxpc3RBbGwiLCJmZXRjaFRydWVFeGFtTGlzdCIsImZldGNoVHJ1ZUV4YW1MaXN0Q3EiLCJmZXRjaERldGFpbExpc3QiLCJzdWJFeGFtIiwic3ViRXhhbUNxIiwicmVqZWN0RXhhbSIsInJlamVjdEV4YW1DcSIsImZldGNoTWF0ZXJpYWxPdXRTdG9yZSIsImZldGNoSW5mb0J5Q29kZSIsImZldGNoSW5mb0J5UXJDb2RlIiwic3ViT3V0U3RvcmUiLCJzdWJPdXRTdG9yZUFyciIsImZldGNoU2luZ2xlRGV0YWlsIiwic2VhcmNoUmZpZCIsImV4aXRNYXRlcmlhbCIsImV4aXREZXB0TGlzdCIsImV4aXRNYXRlcmlhbExpc3QiLCJleGl0TWF0ZXJpYWxEZXRhaWwiLCJzdWJFeGl0TWF0ZXJpYWwiLCJkZWxNYXRlcmlhbCIsIm5ld0V4aXRMaXN0Iiwic2VsZWN0TWF0ZXJpYWwiLCJpZkFncmVlbWVudCIsImV4aXRFeGFtIiwiZXhpdEV4YW1MaXN0IiwiZXhpdEV4YW1EZXRhaWwiLCJzdWJFeGl0RXhhbSIsInJlamVjdEV4aXRFeGFtIiwibmV3SW5TdG9yZSIsImZldGNoTmV3SW5TdG9yZUxpc3QiLCJmZXRjaE5ld0J1eURldGFpbCIsInN1Yk5ld0J1eSIsImZpeCIsImZpeExpc3QiLCJmaXhEZXRhaWwiLCJmaXhFeGFtIiwiY29tcGxldGVGaXgiLCJzdWJtaXRGaXgiLCJmaXhDcmV3IiwibWFMaXN0IiwiZml4RmFjdG9yeSIsInVwbG9hZFBpYyIsInJlcGFpclRlc3RJblN0b3JlIiwicmVwYWlyVGVzdEluU3RvcmVMaXN0IiwicmVwYWlyVGVzdEluU3RvcmVEZXRhaWwiLCJwcm9jZXNzT3JSZWplY3QiLCJiYWNrTWF0ZXJpYWxSZWNlaXZlIiwiYmFja01hdGVyaWFsUmVjZWl2ZUxpc3QiLCJiYWNrTWF0ZXJpYWxSZWNlaXZlRGV0YWlsIiwiYmFja01hdGVyaWFsU2V0TnVtQmFjayIsImJhY2tNYXRlcmlhbFFyY29kZVF1ZXJ5IiwiYmFja01hdGVyaWFsU2V0Q29kZUJhY2siLCJiYWNrUmVjZWl2ZUNvZGVRdWVyeSIsImJhY2tSZWNlaXZlRW5kQmFjayIsInNlZUJhY2tNYXRlcmlhbERldGFpbCIsInN1YlJmaWQiLCJzZWFyY2hCeUNvZGUiLCJzZWFyY2hDb2RlRGV2aWNlIiwicmV0dXJuR2V0UmVjb3JkIiwiY3Jhc2hFeGFtIiwiY3Jhc2hFeGFtTGlzdCIsImNyYXNoRXhhbURldGFpbHMiLCJjcmFzaEV4YW1BdWRpdCIsInRlc3RFeGFtIiwidGVzdEV4YW1MaXN0IiwidGVzdEV4YW1EZXRhaWxzIiwidGVzdEV4YW1BdWRpdCIsImF1dGhNYW5hZ2UiLCJmZXRjaEF1dGhMaXN0IiwiZmV0Y2hJc1VzaW5nIiwic3ViQWRkIiwic3ViRGVsIiwic2VhcmNoUHJvalVzaW5nIiwiZmV0Y2hQcm9qVXNpbmdMaXN0Iiwic2VhcmNoRmV0Y2hSZWNvcmQiLCJmZXRjaFJlY29yZExpc3QiLCJ1cGRhdGUiLCJmZXRjaEFwcFZlciIsInJmaWRCaW5kaW5nIiwiYmluZFJmaWQiLCJxcmNvZGVCaW5kaW5nIiwiYmluZFFyY29kZSIsImZldGNoRGV2aWNlVHlw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VSxFQUFFLHNDQUFzQztNQUFFO01BQ3BEQyxlQUFlLEVBQUUsc0NBQXNDO01BQUU7TUFDekRDLGVBQWUsRUFBRSwwQ0FBMEMsQ0FBRTtJQUNqRSxDQUFDOztJQUNEQyxTQUFTLEVBQUU7TUFDUEMsVUFBVSxFQUFFLDZCQUE2QixDQUFFO0lBQy9DO0VBQ0osQ0FBQztBQUFBO0FBQUEsZUFHVSxJQUFJbEgsVUFBVSxFQUFFO0FBQUEiLCJmaWxlIjoiNjg1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgRU5WID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlY7XHJcbmNsYXNzIEh0dHBDb25maWcge1xyXG5cclxuXHJcblxyXG5cclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xMTIuMjkuMTAzLjE2NToyMTYyNFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTkyLjE2OC4wLjE0OjIxNjI0XCJcclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xOTIuMTY4LjAuNTY6MjE2MjZcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE5Mi4xNjguMC4xNDoxODg2NlwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTEyLjI5LjEwMy4xNjU6MjE2MjZcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE3Mi4yMC4xMC4zOjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjk6ODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTAuNDAuOTIuNjA6MjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjEzODoyODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTAuNDAuOTIuNTI6MjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjE0MDoyODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwczovL3ouY3NnbWFsbC5jb20uY24vZ2xcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE5Mi4xNjguMi4xNjA6MzkwODBcIiAvLyDmooHotoVcclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xOTIuMTY4LjIuMjE4OjM5MDgwXCIgLy8g56aPXHJcbiAgICB0YXJnZXQgPSBcImh0dHA6Ly8xOTIuMTY4LjQzLjIwMDozOTA4MFwiOyAvLyDlvIDlj5HpmLbmrrXlkI7lj7BpcFxyXG5cclxuICAgIC8vIOWfuuWcsOWdgCDvvIjpg6jnvbLml7bkvb/nlKgg6ZyA6KaB5YqgIGRldi1hcGnvvIlcclxuICAgIC8vIGF1dGhQYXRoID0gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL2F1dGhgXHJcbiAgICAvLyBzeXN0ZW1QYXRoID0gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL3N5c3RlbWBcclxuICAgIC8vIGJhc2VQYXRoID0gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL2Jhc2VgXHJcbiAgICAvLyBtYXRlcmlhbFBhdGggPSBgJHt0aGlzLmJhc2VVcmx9L2Rldi1hcGkvbWF0ZXJpYWxgXHJcbiAgICBiYXNlVXJsID0gRU5WID09PSBcInByb2R1Y3Rpb25cIiA/IFwiaHR0cDovLzE5Mi4xNjguMC41NjoyMTYyN1wiIDogdGhpcy50YXJnZXQ7XHJcbiAgICBhdXRoUGF0aCA9XHJcbiAgICAgICAgRU5WID09PSBcInByb2R1Y3Rpb25cIlxyXG4gICAgICAgICAgICA/IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9hdXRoYFxyXG4gICAgICAgICAgICA6IGAke3RoaXMuYmFzZVVybH0vYXV0aGA7XHJcbiAgICBzeXN0ZW1QYXRoID1cclxuICAgICAgICBFTlYgPT09IFwicHJvZHVjdGlvblwiXHJcbiAgICAgICAgICAgID8gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL3N5c3RlbWBcclxuICAgICAgICAgICAgOiBgJHt0aGlzLmJhc2VVcmx9L3N5c3RlbWA7XHJcbiAgICBiYXNlUGF0aCA9XHJcbiAgICAgICAgRU5WID09PSBcInByb2R1Y3Rpb25cIlxyXG4gICAgICAgICAgICA/IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9tYXRlcmlhbC9iYXNlYFxyXG4gICAgICAgICAgICA6IGAke3RoaXMuYmFzZVVybH0vbWF0ZXJpYWwvYmFzZWA7XHJcbiAgICBtYXRlcmlhbFBhdGggPVxyXG4gICAgICAgIEVOViA9PT0gXCJwcm9kdWN0aW9uXCJcclxuICAgICAgICAgICAgPyBgJHt0aGlzLmJhc2VVcmx9L2Rldi1hcGkvbWF0ZXJpYWxgXHJcbiAgICAgICAgICAgIDogYCR7dGhpcy5iYXNlVXJsfS9tYXRlcmlhbGA7XHJcbiAgICAvLyDnn63pk75cclxuICAgIHNlcnZpY2VVcmwgPSB7XHJcbiAgICAgICAgbG9naW46IHtcclxuICAgICAgICAgICAgY29kZTogXCIvc2VuZENvZGVcIiwgLy8g6I635Y+W6aqM6K+B56CBXHJcbiAgICAgICAgICAgIGNoZWNrQ29kZTogXCIvY2hlY2tDb2RlXCIsIC8vIOmqjOivgeeggeeZu+W9lVxyXG4gICAgICAgICAgICBsb2c6IFwiL2xvZ2luQXBwXCIsIC8vIOi0puaIt+eZu+W9lVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdXNlcjoge1xyXG4gICAgICAgICAgICBsb2dPdXQ6IFwiL2xvZ291dFwiLCAvLyDpgIDlh7rnmbvlvZVcclxuICAgICAgICB9LFxyXG4gICAgICAgIGluZGV4OiB7XHJcbiAgICAgICAgICAgIG5vdGljZUNvbnQ6IFwiL3N5c05vdGljZS9nZXRMaXN0XCIsIC8vIOiOt+WPluWFrOWRiuWGheWuuVxyXG4gICAgICAgICAgICBzaW5nbGVOb3RpY2U6IFwiL25vdGljZS9saXN0XCIsIC8vIOafpeeci+WNleS4quWFrOWRilxyXG4gICAgICAgICAgICB3YWl0RG86IFwiL2FwcC9nZXRUb0RvTGlzdFwiLCAvLyDojrflj5blvoXlip7kuovpoblcclxuICAgICAgICAgICAga2V5RGF0YTogXCIvYXBwL2dldENyaXRpY2FsRGF0YVwiLCAvLyDojrflj5blhbPplK7mlbDmja5cclxuICAgICAgICAgICAgZ2V0VXNlckluZm86IFwiL3VzZXIvZ2V0SW5mb1wiLCAvLyDojrflj5bnlKjmiLfkv6Hmga9cclxuICAgICAgICAgICAgZmV0Y2hDb21wYW55TmFtZTogXCIvZGVwdC9nZXRDb21wYW55QnlBbmNlc3RvcnNcIiwgLy8g6I635Y+W5YWs5Y+45ZCN56ewXHJcbiAgICAgICAgfSxcclxuICAgICAgICBmZXRjaE1hdGVyaWFsOiB7XHJcbiAgICAgICAgICAgIGZldGNoTWF0ZXJpYWxMaXN0OiBcIi90eXBlL3NlbGVjdE1hVHlwZUxpc3RCeUxldmVsSW5kZXhcIiwgLy8g6I635Y+W6K6+5aSH5YiX6KGoXHJcbiAgICAgICAgICAgIGdldERlcHRMaXN0OiBcIi9zZWxlY3QvZ2V0VW5pdENieFwiLCAvLyDojrflj5blvoDmnaXljZXkvY3liJfooahcclxuICAgICAgICAgICAgZ2V0UHJvakxpc3Q6IFwiL3NlbGVjdC9nZXRTZWN0aW9uRW5naW5lZXJpbmdDYnhcIiwgLy8g6I635Y+W5bel56iL5YiX6KGoXHJcbiAgICAgICAgICAgIGdldERldmljZURldGFpbDogXCIvdHlwZS9zZWxlY3RNYVR5cGVUcmVlQnlMZXZlbFwiLCAvLyDojrflj5bmnLrlhbfor6bmg4VcclxuICAgICAgICAgICAgZ2V0Q2FydERldGFpbDogXCIvbGVhc2VVc2VyQm9va1wiLCAvLyDmn6Xor6LpooTnuqbovablhoXmiYDmnInllYblk4FcclxuICAgICAgICAgICAgYWRkSXRlbVRvQ2FydDogXCIvbGVhc2VVc2VyQm9va1wiLCAvLyDlkJHpooTnuqbovablhoXmt7vliqDllYblk4FcclxuICAgICAgICAgICAgZGVsQ2FydDogXCIvbGVhc2VVc2VyQm9va1wiLCAvLyDliKDpmaTpooTnuqbovabllYblk4FcclxuICAgICAgICAgICAgc3ViQ2FydDogXCIvdG1fdGFzay9zdWJtaXRMZWFzZUFwcGx5XCIsIC8vIOaPkOS6pOmihOe6pui9plxyXG4gICAgICAgICAgICBpdGVtTnVtQ2hhbmdlOiBcIi9sZWFzZVVzZXJCb29rL3VwZGF0ZVwiLCAvLyDpooTnuqbovabmlbDph4/liqDlh49cclxuICAgICAgICB9LFxyXG4gICAgICAgIGZldGNoRXhhbToge1xyXG4gICAgICAgICAgICBmZXRjaEV4YW1MaXN0OiBcIi90bV90YXNrL2dldExlYXNlQXVkaXRMaXN0XCIsIC8vIOiOt+WPlumihuaWmeWuoeaJuea4heWNlVxyXG4gICAgICAgICAgICBmZXRjaEV4YW1MaXN0QWxsOiBcIi90bV90YXNrL2dldExlYXNlQXVkaXRMaXN0QWxsXCIsIC8vIOiOt+WPlumihuaWmeeUs+ivt+WIl+ihqFxyXG4gICAgICAgICAgICBmZXRjaFRydWVFeGFtTGlzdDogXCIvdG1fdGFzay9nZXRMZWFzZU1hbmFnZUxpc3RBbGxcIiwgLy8g6I635Y+W6aKG5paZ5a6h5om55YiX6KGoXHJcbiAgICAgICAgICAgIGZldGNoVHJ1ZUV4YW1MaXN0Q3E6IFwiL3RtX3Rhc2svZ2V0TGVhc2VNYW5hZ2VMaXN0QWxsQ3FcIiwgLy8g6I635Y+W6YeN5bqG6aKG5paZ5a6h5om55YiX6KGoXHJcbiAgICAgICAgICAgIGZldGNoRGV0YWlsTGlzdDogXCIvdG1fdGFzay9nZXRMZWFzZUxpc3RBbGxDcVwiLCAvLyDojrflj5bpoobmlpnmmI7nu4bliJfooahcclxuICAgICAgICAgICAgc3ViRXhhbTogXCIvdG1fdGFzay9hdWRpdExlYXNlQnlDb21wYW55XCIsIC8vIOmAmui/h+mihuaWmeWuoeaJuVxyXG4gICAgICAgICAgICBzdWJFeGFtQ3E6IFwiL3RtX3Rhc2svYXVkaXRMZWFzZUJ5Q29tcGFueUNxXCIsIC8vIOmAmui/h+mHjeW6humihuaWmeWuoeaJuVxyXG4gICAgICAgICAgICByZWplY3RFeGFtOiBcIi90bV90YXNrL3JlamVjdExlYXNlQnlDb21wYW55XCIsIC8vIOmps+WbnumihuaWmeWuoeaJuVxyXG4gICAgICAgICAgICByZWplY3RFeGFtQ3E6IFwiL3RtX3Rhc2svcmVqZWN0TGVhc2VCeUNvbXBhbnlDcVwiLCAvLyDpqbPlm57ph43luobpoobmlpnlrqHmiblcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZldGNoTWF0ZXJpYWxPdXRTdG9yZToge1xyXG4gICAgICAgICAgICBmZXRjaEluZm9CeUNvZGU6IFwiL2xlYXNlT3V0RGV0YWlscy9nZXRNYU1hY2hpbmVCeUNvZGVcIiwgLy8g5qC55o2ubWFJZOiOt+WPluacuuWFt+ivpuaDhVxyXG4gICAgICAgICAgICBmZXRjaEluZm9CeVFyQ29kZTogXCIvbGVhc2VPdXREZXRhaWxzL2dldE1hTWFjaGluZUJ5UXJDb2RlXCIsXHJcbiAgICAgICAgICAgIHN1Yk91dFN0b3JlOiBcIi9sZWFzZU91dERldGFpbHMvc3VibWl0T3V0XCIsIC8vIOmihuaWmeWHuuW6k+aPkOS6pC3lr7nosaFcclxuICAgICAgICAgICAgc3ViT3V0U3RvcmVBcnI6IFwiL2xlYXNlT3V0RGV0YWlscy9zdWJtaXRPdXRSZmlkXCIsIC8vIOmihuaWmeWHuuW6k+aPkOS6pC3mlbDnu4RcclxuICAgICAgICAgICAgZmV0Y2hTaW5nbGVEZXRhaWw6IFwiL3RtX3Rhc2svZ2V0TGVhc2VBdWRpdExpc3REZXRhaWxcIiwgLy8g5qC55o2u6aKG5paZaWTmn6Xor6LpoobmlpnnlLPor7for6bmg4VcclxuICAgICAgICAgICAgc2VhcmNoUmZpZDogXCIvYmFja1JlY2VpdmUvcmZpZENvZGVRdWVyeVwiLCAvLyDmn6Xor6JyZmlkXHJcbiAgICAgICAgfSxcclxuICAgICAgICBleGl0TWF0ZXJpYWw6IHtcclxuICAgICAgICAgICAgZXhpdERlcHRMaXN0OiBcIi9iYWNrX2FwcGx5L2dldGJhY2tVbml0XCIsIC8vIOiOt+WPlumAgOaWmeWNleS9je+8jOW3peeoi+WIl+ihqFxyXG4gICAgICAgICAgICBleGl0TWF0ZXJpYWxMaXN0OiBcIi9iYWNrX2FwcGx5L2dldGJhY2tMaXN0XCIsIC8vIOiOt+WPluacuuWFt+mAgOaWmeWIl+ihqFxyXG4gICAgICAgICAgICBleGl0TWF0ZXJpYWxEZXRhaWw6IFwiL2JhY2tfYXBwbHkvdmlld1wiLCAvLyDojrflj5bpgIDmlpnorr7lpIfor6bmg4VcclxuICAgICAgICAgICAgc3ViRXhpdE1hdGVyaWFsOiBcIi9iYWNrX2FwcGx5L3VwbG9hZFwiLCAvLyDmj5DkuqTpgIDmlpnmuIXljZVcclxuICAgICAgICAgICAgZGVsTWF0ZXJpYWw6IFwiL2JhY2tfYXBwbHkvZGVsXCIsIC8vIOWIoOmZpOmAgOaWmeeUs+ivt1xyXG4gICAgICAgICAgICBuZXdFeGl0TGlzdDogXCIvYmFja19hcHBseS9hZGRCYWNrVGFza1wiLCAvLyDmlrDlu7rpgIDmlpnku7vliqHljZVcclxuICAgICAgICAgICAgc2VsZWN0TWF0ZXJpYWw6IFwiL2JhY2tfYXBwbHkvbWF0ZXJpYWxMaXN0XCIsIC8vIOmAgOaWmeeJqeaWmemAieaLqVxyXG4gICAgICAgICAgICBpZkFncmVlbWVudDogXCIvc2VsZWN0L2dldEFncmVlbWVudEluZm9CeUlkXCIsIC8vIOWNleS9jWlk5ZKM5bel56iLaWTmmK/lkKbljLnphY1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGV4aXRFeGFtOiB7XHJcbiAgICAgICAgICAgIGV4aXRFeGFtTGlzdDogXCIvYmFja19hcHBseS9leGFtaW5lTGlzdFwiLCAvLyDojrflj5bpgIDmlpnlrqHmoLjliJfooahcclxuICAgICAgICAgICAgZXhpdEV4YW1EZXRhaWw6IFwiL2JhY2tfYXBwbHkvZXhhbWluZVZpZXdcIiwgLy8g6I635Y+W6YCA5paZ5a6h5qC45piO57uGXHJcbiAgICAgICAgICAgIHN1YkV4aXRFeGFtOiBcIi9iYWNrX2FwcGx5L2F1ZGl0XCIsIC8vIOaPkOS6pOWNleS4quWuoeaguFxyXG4gICAgICAgICAgICByZWplY3RFeGl0RXhhbTogXCIvYmFja19hcHBseS9yZWZ1c2VcIiwgLy8g5ouS57ud5Y2V5Liq5a6h5qC4XHJcbiAgICAgICAgfSxcclxuICAgICAgICBuZXdJblN0b3JlOiB7XHJcbiAgICAgICAgICAgIC8vIGZldGNoTmV3SW5TdG9yZUxpc3Q6ICcvcHVyY2hhc2VJbnB1dC9saXN0JywgLy8g6I635Y+W5paw6LSt5YWl5bqT5YiX6KGoXHJcbiAgICAgICAgICAgIGZldGNoTmV3SW5TdG9yZUxpc3Q6IFwiL3B1cmNoYXNlQ2hlY2tJbmZvL3B1dEluTGlzdFwiLCAvLyDojrflj5bmlrDotK3lhaXlupPliJfooahcclxuICAgICAgICAgICAgZmV0Y2hOZXdCdXlEZXRhaWw6IFwiL3B1cmNoYXNlTWFjb2RlL3B1dGluRGV0YWlsc1wiLCAvLyDojrflj5bmlrDotK3lhaXlupPor6bmg4VcclxuICAgICAgICAgICAgc3ViTmV3QnV5OiBcIi9wdXJjaGFzZUlucHV0L21hbmFnZVN0YXR1c1wiLCAvLyDmlrDotK3mmI7nu4bmj5DkuqTlrqHmoLhcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZpeDoge1xyXG4gICAgICAgICAgICBmaXhMaXN0OiBcIi9yZXBhaXIvZ2V0QXBwUmVwYWlyVGFza0xpc3RcIiwgLy8g6I635Y+W57u05L+u5YiX6KGoXHJcbiAgICAgICAgICAgIGZpeERldGFpbDogXCIvcmVwYWlyL2dldEFwcFJlcGFpck1hVHlwZUxpc3RcIiwgLy8g6I635Y+W57u05L+u5piO57uGXHJcbiAgICAgICAgICAgIGZpeEV4YW06IFwiL3JlcGFpci9lbmRSZXBhaXJUYXNrXCIsIC8vIOaPkOS6pOe7tOS/ruWuoeaguFxyXG4gICAgICAgICAgICBjb21wbGV0ZUZpeDogXCIvcmVwYWlyL2NvbXBsZXRlUmVwYWlyXCIsIC8vIOe7tOS/ruWujOaIkFxyXG4gICAgICAgICAgICBzdWJtaXRGaXg6IFwiL3JlcGFpci9zdWJtaXRSZXBhaXJBcHBseVwiLCAvLyDmj5DkuqTnu7Tkv67nlLPor7dcclxuICAgICAgICAgICAgLy8gZml4Q3JldzogJy9yZXBhaXIvZ2V0VXNlclNlbGVjdCcsIC8vIOiOt+WPlue7tOS/ruS6uuWRmFxyXG4gICAgICAgICAgICBmaXhDcmV3OiBcIi91c2VyL2dldFVzZXJCeVJvbGVMaXN0XCIsIC8vIOiOt+WPlue7tOS/ruS6uuWRmFxyXG4gICAgICAgICAgICBtYUxpc3Q6IFwiL21hUGFydFR5cGUvbGlzdFwiLCAvLyDojrflj5bphY3ku7bmoJFcclxuICAgICAgICAgICAgZml4RmFjdG9yeTogXCIvc3VwcGxpZXJJbmZvL2dldFN1cHBsaWVyU2VsZWN0XCIsIC8vIOiOt+WPlue7tOS/ruWOguWutlxyXG4gICAgICAgICAgICB1cGxvYWRQaWM6IFwiL3N5cy9maWxlL3VwbG9hZFwiLCAvLyDlm77niYfkuIrkvKDmjqXlj6NcclxuICAgICAgICB9LFxyXG4gICAgICAgIHJlcGFpclRlc3RJblN0b3JlOiB7XHJcbiAgICAgICAgICAgIHJlcGFpclRlc3RJblN0b3JlTGlzdDogXCIvUmVwYWlyVGVzdElucHV0L2dldEFwcFJlcGFpcmVkTGlzdFwiLCAvLyDojrflj5bkv67or5XlkI7lhaXlupPliJfooahcclxuICAgICAgICAgICAgcmVwYWlyVGVzdEluU3RvcmVEZXRhaWw6XHJcbiAgICAgICAgICAgICAgICBcIi9SZXBhaXJUZXN0SW5wdXQvZ2V0QXBwUmVwYWlyZWREZXRhaWxMaXN0XCIsIC8vIOiOt+WPluS/ruivleWQjuWIl+ihqOivpuaDhVxyXG4gICAgICAgICAgICBwcm9jZXNzT3JSZWplY3Q6IFwiL1JlcGFpclRlc3RJbnB1dC9pbnB1dEJ5VHlwZVwiLCAvLyDkv67or5XlrqHmoLjpgJrov4fmiJbpqbPlm55cclxuICAgICAgICB9LFxyXG4gICAgICAgIGJhY2tNYXRlcmlhbFJlY2VpdmU6IHtcclxuICAgICAgICAgICAgYmFja01hdGVyaWFsUmVjZWl2ZUxpc3Q6IFwiL2JhY2tSZWNlaXZlL2dldGJhY2tSZWNlaXZlTGlzdFwiLCAvLyDojrflj5bpgIDmlpnmjqXmlLbliJfooahcclxuICAgICAgICAgICAgLy8gYmFja01hdGVyaWFsUmVjZWl2ZURldGFpbDogJy9iYWNrUmVjZWl2ZS9yZWNlaXZlVmlldycsXHJcbiAgICAgICAgICAgIGJhY2tNYXRlcmlhbFJlY2VpdmVEZXRhaWw6IFwiL2JhY2tSZWNlaXZlL3JlY2VpdmVWaWV3V2ViXCIsXHJcbiAgICAgICAgICAgIGJhY2tNYXRlcmlhbFNldE51bUJhY2s6IFwiL2JhY2tSZWNlaXZlL3NldE51bUJhY2tcIixcclxuICAgICAgICAgICAgYmFja01hdGVyaWFsUXJjb2RlUXVlcnk6IFwiL2JhY2tSZWNlaXZlL3FyY29kZVF1ZXJ5XCIsXHJcbiAgICAgICAgICAgIGJhY2tNYXRlcmlhbFNldENvZGVCYWNrOiBcIi9iYWNrUmVjZWl2ZS9zZXRDb2RlQmFja1wiLFxyXG4gICAgICAgICAgICBiYWNrUmVjZWl2ZUNvZGVRdWVyeTogXCIvYmFja1JlY2VpdmUvY29kZVF1ZXJ5XCIsXHJcbiAgICAgICAgICAgIGJhY2tSZWNlaXZlRW5kQmFjazogXCIvYmFja1JlY2VpdmUvZW5kQmFja1wiLFxyXG4gICAgICAgICAgICBzZWVCYWNrTWF0ZXJpYWxEZXRhaWw6IFwiL2JhY2tSZWNlaXZlL2JhY2tSZWNlaXZlUmVjb3JkXCIsIC8vIOafpeeci+mAgOaWmeaYjue7hlxyXG4gICAgICAgICAgICBzZWFyY2hSZmlkOiBcIi9iYWNrUmVjZWl2ZS9yZmlkQ29kZVF1ZXJ5XCIsIC8vIOafpeivonJmaWRcclxuICAgICAgICAgICAgc3ViUmZpZDogXCIvYmFja1JlY2VpdmUvc2V0UmZpZENvZGVCYWNrXCIsIC8vIHJmaWTmjqXmlLZcclxuICAgICAgICAgICAgc2VhcmNoQnlDb2RlOiBcIi9iYWNrUmVjZWl2ZS9nZXRCYWNrTWFjaGluZUFwcFwiLCAvLyDmoLnmja7nvJbnoIHmn6Xor6Lor6Xlt6XnqIvkuIvnmoTorr7lpIdcclxuICAgICAgICAgICAgc2VhcmNoQ29kZURldmljZTogXCIvYmFja1JlY2VpdmUvZ2V0QmFja01hY2hpbmVcIiwgLy8g5qC55o2u57yW56CB5p+l6K+i6K+l5bel56iL5LiL55qE6K6+5aSHXHJcbiAgICAgICAgICAgIHJldHVybkdldFJlY29yZDogXCIvYmFja1JlY2VpdmUvZ2V0UmVjb3JkXCIsIC8vIOagueaNrue8lueggeafpeivouivpeW3peeoi+S4i+eahOiuvuWkh1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLy8g5oql5bqf5a6h5qC45o6l5Y+jXHJcbiAgICAgICAgY3Jhc2hFeGFtOiB7XHJcbiAgICAgICAgICAgIGNyYXNoRXhhbUxpc3Q6IFwiL3NjcmFwL2dldFNjcmFwVGFza0xpc3RcIixcclxuICAgICAgICAgICAgY3Jhc2hFeGFtRGV0YWlsczogXCIvc2NyYXAvZ2V0U2NyYXBBdWRpdExpc3RcIixcclxuICAgICAgICAgICAgY3Jhc2hFeGFtQXVkaXQ6IFwiL3NjcmFwL2F1ZGl0XCIsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAvL+ivlemqjOajgOmqjOaOpeWPo1xyXG4gICAgICAgIHRlc3RFeGFtOiB7XHJcbiAgICAgICAgICAgIHRlc3RFeGFtTGlzdDogXCIvZGV0YWlscy9xdWVzdExpc3RcIixcclxuICAgICAgICAgICAgdGVzdEV4YW1EZXRhaWxzOiBcIi9kZXRhaWxzL2dldFJlcGFpckF1ZGl0TGlzdFwiLFxyXG4gICAgICAgICAgICB0ZXN0RXhhbUF1ZGl0OiBcIi9kZXRhaWxzL2F1ZGl0XCIsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBhdXRoTWFuYWdlOiB7XHJcbiAgICAgICAgICAgIGZldGNoQXV0aExpc3Q6IFwiL2FwcE1lbnUvZ2V0QWxsTWVudVwiLCAvLyDojrflj5bmiYDmnInmqKHlnZfmlbDmja5cclxuICAgICAgICAgICAgZmV0Y2hJc1VzaW5nOiBcIi9hcHBNZW51L2dldE1lbnVCeUlkXCIsIC8vIOiOt+WPluato+WcqOS9v+eUqOeahOaooeWdl1xyXG4gICAgICAgICAgICBzdWJBZGQ6IFwiL2FwcE1lbnUvYWRkTWVudUJ5SWRcIiwgLy8g5o+Q5Lqk5paw5aKe5qih5Z2XXHJcbiAgICAgICAgICAgIHN1YkRlbDogXCIvYXBwTWVudS9kZWxNZW51QnlJZFwiLCAvLyDmj5DkuqTliKDpmaTmqKHlnZdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlYXJjaFByb2pVc2luZzoge1xyXG4gICAgICAgICAgICBmZXRjaFByb2pVc2luZ0xpc3Q6IFwiL2xlYXNlT3V0RGV0YWlscy9wcm9Vc2VSZWNvcmRcIiwgLy8g6I635Y+W5bel56iL5Zyo55So5YiX6KGoXHJcbiAgICAgICAgfSxcclxuICAgICAgICBzZWFyY2hGZXRjaFJlY29yZDoge1xyXG4gICAgICAgICAgICBmZXRjaFJlY29yZExpc3Q6IFwiL2xlYXNlT3V0RGV0YWlscy9sZWFzZU91dFJlY29yZFwiLCAvLyDojrflj5bpoobnlKjorrDlvZXliJfooahcclxuICAgICAgICB9LFxyXG4gICAgICAgIHVwZGF0ZToge1xyXG4gICAgICAgICAgICBmZXRjaEFwcFZlcjogXCIvYXBwL2dldFZlcnNpb25cIiwgLy8g6I635Y+WYXBw5b2T5YmN54mI5pys5Y+3XHJcbiAgICAgICAgfSxcclxuICAgICAgICByZmlkQmluZGluZzoge1xyXG4gICAgICAgICAgICBiaW5kUmZpZDogXCIvbGVhc2VPdXREZXRhaWxzL2JpbmRNYWNoaW5lQnlSZmlkXCIsIC8vIHJpZmTnu5HlrppcclxuICAgICAgICB9LFxyXG4gICAgICAgIHFyY29kZUJpbmRpbmc6IHtcclxuICAgICAgICAgICAgYmluZFFyY29kZTogXCIvbGVhc2VPdXREZXRhaWxzL2JpbmRNYWNoaW5lQnlRckNvZGVcIiwgLy8g5LqM57u056CB57uR5a6aXHJcbiAgICAgICAgICAgIGZldGNoRGV2aWNlVHlwZTogXCIvcmV0dXJuT2ZNYXRlcmlhbHNJbmZvL2dldE1hVHlwZUxpc3RcIiwgLy8g6I635Y+W6K6+5aSH57G75Z6LXHJcbiAgICAgICAgICAgIGZldGNoRGV2aWNlU3BlYzogXCIvcmV0dXJuT2ZNYXRlcmlhbHNJbmZvL2dldEluZm9MaXN0QnlUeXBlXCIsIC8vIOiOt+WPluinhOagvOWei+WPt1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgaW5kZXhTY2FuOiB7XHJcbiAgICAgICAgICAgIGluZm9CeUNvZGU6IFwiL21hY2hpbmUvZ2V0TWFjaGluZUJ5UXJDb2RlXCIsIC8vIOmmlumhteagueaNruS6jOe7tOeggeafpeivouiuvuWkh+S/oeaBr1xyXG4gICAgICAgIH0sXHJcbiAgICB9O1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBuZXcgSHR0cENvbmZpZygpO1xyXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///685\n");
+eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 73));\nvar _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 72));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar ENV = \"development\";\nvar HttpConfig = /*#__PURE__*/(0, _createClass2.default)(function HttpConfig() {\n (0, _classCallCheck2.default)(this, HttpConfig);\n (0, _defineProperty2.default)(this, \"target\", \"http://192.168.0.56:21627\");\n (0, _defineProperty2.default)(this, \"baseUrl\", ENV === \"production\" ? \"http://112.29.103.165:21626\" : this.target);\n (0, _defineProperty2.default)(this, \"authPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/auth\") : \"\".concat(this.baseUrl, \"/auth\"));\n (0, _defineProperty2.default)(this, \"systemPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/system\") : \"\".concat(this.baseUrl, \"/system\"));\n (0, _defineProperty2.default)(this, \"basePath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/material/base\") : \"\".concat(this.baseUrl, \"/material/base\"));\n (0, _defineProperty2.default)(this, \"materialPath\", ENV === \"production\" ? \"\".concat(this.baseUrl, \"/dev-api/material\") : \"\".concat(this.baseUrl, \"/material\"));\n (0, _defineProperty2.default)(this, \"serviceUrl\", {\n login: {\n code: \"/sendCode\",\n // 获取验证码\n checkCode: \"/checkCode\",\n // 验证码登录\n log: \"/loginApp\" // 账户登录\n },\n\n user: {\n logOut: \"/logout\" // 退出登录\n },\n\n index: {\n noticeCont: \"/sysNotice/getList\",\n // 获取公告内容\n singleNotice: \"/notice/list\",\n // 查看单个公告\n waitDo: \"/app/getToDoList\",\n // 获取待办事项\n keyData: \"/app/getCriticalData\",\n // 获取关键数据\n getUserInfo: \"/user/getInfo\",\n // 获取用户信息\n fetchCompanyName: \"/dept/getCompanyByAncestors\" // 获取公司名称\n },\n\n fetchMaterial: {\n fetchMaterialList: \"/type/selectMaTypeListByLevelIndex\",\n // 获取设备列表\n getDeptList: \"/select/getUnitCbx\",\n // 获取往来单位列表\n getProjList: \"/select/getSectionEngineeringCbx\",\n // 获取工程列表\n getDeviceDetail: \"/type/selectMaTypeTreeByLevel\",\n // 获取机具详情\n getCartDetail: \"/leaseUserBook\",\n // 查询预约车内所有商品\n addItemToCart: \"/leaseUserBook\",\n // 向预约车内添加商品\n delCart: \"/leaseUserBook\",\n // 删除预约车商品\n subCart: \"/tm_task/submitLeaseApply\",\n // 提交预约车\n itemNumChange: \"/leaseUserBook/update\" // 预约车数量加减\n },\n\n fetchExam: {\n fetchExamList: \"/tm_task/getLeaseAuditList\",\n // 获取领料审批清单\n fetchExamListAll: \"/tm_task/getLeaseAuditListAll\",\n // 获取领料申请列表\n fetchTrueExamList: \"/tm_task/getLeaseManageListAll\",\n // 获取领料审批列表\n fetchTrueExamListCq: \"/tm_task/getLeaseManageListAllCq\",\n // 获取重庆领料审批列表\n fetchDetailList: \"/tm_task/getLeaseListAllCq\",\n // 获取领料明细列表\n subExam: \"/tm_task/auditLeaseByCompany\",\n // 通过领料审批\n subExamCq: \"/tm_task/auditLeaseByCompanyCq\",\n // 通过重庆领料审批\n rejectExam: \"/tm_task/rejectLeaseByCompany\",\n // 驳回领料审批\n rejectExamCq: \"/tm_task/rejectLeaseByCompanyCq\" // 驳回重庆领料审批\n },\n\n fetchMaterialOutStore: {\n fetchInfoByCode: \"/leaseOutDetails/getMaMachineByCode\",\n // 根据maId获取机具详情\n fetchInfoByQrCode: \"/leaseOutDetails/getMaMachineByQrCode\",\n subOutStore: \"/leaseOutDetails/submitOut\",\n // 领料出库提交-对象\n subOutStoreArr: \"/leaseOutDetails/submitOutRfid\",\n // 领料出库提交-数组\n fetchSingleDetail: \"/tm_task/getLeaseAuditListDetail\",\n // 根据领料id查询领料申请详情\n searchRfid: \"/backReceive/rfidCodeQuery\" // 查询rfid\n },\n\n exitMaterial: {\n exitDeptList: \"/back_apply/getbackUnit\",\n // 获取退料单位,工程列表\n exitMaterialList: \"/back_apply/getbackList\",\n // 获取机具退料列表\n exitMaterialDetail: \"/back_apply/view\",\n // 获取退料设备详情\n subExitMaterial: \"/back_apply/upload\",\n // 提交退料清单\n delMaterial: \"/back_apply/del\",\n // 删除退料申请\n newExitList: \"/back_apply/addBackTask\",\n // 新建退料任务单\n selectMaterial: \"/back_apply/materialList\",\n // 退料物料选择\n ifAgreement: \"/select/getAgreementInfoById\" // 单位id和工程id是否匹配\n },\n\n exitExam: {\n exitExamList: \"/back_apply/examineList\",\n // 获取退料审核列表\n exitExamDetail: \"/back_apply/examineView\",\n // 获取退料审核明细\n subExitExam: \"/back_apply/audit\",\n // 提交单个审核\n rejectExitExam: \"/back_apply/refuse\" // 拒绝单个审核\n },\n\n newInStore: {\n // fetchNewInStoreList: '/purchaseInput/list', // 获取新购入库列表\n fetchNewInStoreList: \"/purchaseCheckInfo/putInList\",\n // 获取新购入库列表\n fetchNewBuyDetail: \"/purchaseMacode/putinDetails\",\n // 获取新购入库详情\n subNewBuy: \"/purchaseInput/manageStatus\" // 新购明细提交审核\n },\n\n fix: {\n fixList: \"/repair/getAppRepairTaskList\",\n // 获取维修列表\n fixDetail: \"/repair/getAppRepairMaTypeList\",\n // 获取维修明细\n fixExam: \"/repair/endRepairTask\",\n // 提交维修审核\n completeFix: \"/repair/completeRepair\",\n // 维修完成\n submitFix: \"/repair/submitRepairApply\",\n // 提交维修申请\n // fixCrew: '/repair/getUserSelect', // 获取维修人员\n fixCrew: \"/user/getUserByRoleList\",\n // 获取维修人员\n maList: \"/maPartType/list\",\n // 获取配件树\n fixFactory: \"/supplierInfo/getSupplierSelect\",\n // 获取维修厂家\n uploadPic: \"/sys/file/upload\" // 图片上传接口\n },\n\n repairTestInStore: {\n repairTestInStoreList: \"/RepairTestInput/getAppRepairedList\",\n // 获取修试后入库列表\n repairTestInStoreDetail: \"/RepairTestInput/getAppRepairedDetailList\",\n // 获取修试后列表详情\n processOrReject: \"/RepairTestInput/inputByType\" // 修试审核通过或驳回\n },\n\n backMaterialReceive: {\n backMaterialReceiveList: \"/backReceive/getbackReceiveList\",\n // 获取退料接收列表\n // backMaterialReceiveDetail: '/backReceive/receiveView',\n backMaterialReceiveDetail: \"/backReceive/receiveViewWeb\",\n backMaterialSetNumBack: \"/backReceive/setNumBack\",\n backMaterialQrcodeQuery: \"/backReceive/qrcodeQuery\",\n backMaterialSetCodeBack: \"/backReceive/setCodeBack\",\n backReceiveCodeQuery: \"/backReceive/codeQuery\",\n backReceiveEndBack: \"/backReceive/endBack\",\n seeBackMaterialDetail: \"/backReceive/backReceiveRecord\",\n // 查看退料明细\n searchRfid: \"/backReceive/rfidCodeQuery\",\n // 查询rfid\n subRfid: \"/backReceive/setRfidCodeBack\",\n // rfid接收\n searchByCode: \"/backReceive/getBackMachineApp\",\n // 根据编码查询该工程下的设备\n searchCodeDevice: \"/backReceive/getBackMachine\",\n // 根据编码查询该工程下的设备\n returnGetRecord: \"/backReceive/getRecord\" // 根据编码查询该工程下的设备\n },\n\n // 报废审核接口\n crashExam: {\n crashExamList: \"/scrap/getScrapTaskList\",\n crashExamDetails: \"/scrap/getScrapAuditList\",\n crashExamAudit: \"/scrap/audit\"\n },\n //试验检验接口\n testExam: {\n testExamList: \"/details/questList\",\n testExamDetails: \"/details/getRepairAuditList\",\n testExamAudit: \"/details/audit\"\n },\n authManage: {\n fetchAuthList: \"/appMenu/getAllMenu\",\n // 获取所有模块数据\n fetchIsUsing: \"/appMenu/getMenuById\",\n // 获取正在使用的模块\n subAdd: \"/appMenu/addMenuById\",\n // 提交新增模块\n subDel: \"/appMenu/delMenuById\" // 提交删除模块\n },\n\n searchProjUsing: {\n fetchProjUsingList: \"/leaseOutDetails/proUseRecord\" // 获取工程在用列表\n },\n\n searchFetchRecord: {\n fetchRecordList: \"/leaseOutDetails/leaseOutRecord\" // 获取领用记录列表\n },\n\n update: {\n fetchAppVer: \"/app/getVersion\" // 获取app当前版本号\n },\n\n rfidBinding: {\n bindRfid: \"/leaseOutDetails/bindMachineByRfid\" // rifd绑定\n },\n\n qrcodeBinding: {\n bindQrcode: \"/leaseOutDetails/bindMachineByQrCode\",\n // 二维码绑定\n fetchDeviceType: \"/returnOfMaterialsInfo/getMaTypeList\",\n // 获取设备类型\n fetchDeviceSpec: \"/returnOfMaterialsInfo/getInfoListByType\" // 获取规格型号\n },\n\n indexScan: {\n infoByCode: \"/machine/getMachineByQrCode\" // 首页根据二维码查询设备信息\n }\n });\n});\nvar _default = new HttpConfig();\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vYXBpcy9odHRwLmpzIl0sIm5hbWVzIjpbIkVOViIsInByb2Nlc3MiLCJIdHRwQ29uZmlnIiwidGFyZ2V0IiwiYmFzZVVybCIsImxvZ2luIiwiY29kZSIsImNoZWNrQ29kZSIsImxvZyIsInVzZXIiLCJsb2dPdXQiLCJpbmRleCIsIm5vdGljZUNvbnQiLCJzaW5nbGVOb3RpY2UiLCJ3YWl0RG8iLCJrZXlEYXRhIiwiZ2V0VXNlckluZm8iLCJmZXRjaENvbXBhbnlOYW1lIiwiZmV0Y2hNYXRlcmlhbCIsImZldGNoTWF0ZXJpYWxMaXN0IiwiZ2V0RGVwdExpc3QiLCJnZXRQcm9qTGlzdCIsImdldERldmljZURldGFpbCIsImdldENhcnREZXRhaWwiLCJhZGRJdGVtVG9DYXJ0IiwiZGVsQ2FydCIsInN1YkNhcnQiLCJpdGVtTnVtQ2hhbmdlIiwiZmV0Y2hFeGFtIiwiZmV0Y2hFeGFtTGlzdCIsImZldGNoRXhhbUxpc3RBbGwiLCJmZXRjaFRydWVFeGFtTGlzdCIsImZldGNoVHJ1ZUV4YW1MaXN0Q3EiLCJmZXRjaERldGFpbExpc3QiLCJzdWJFeGFtIiwic3ViRXhhbUNxIiwicmVqZWN0RXhhbSIsInJlamVjdEV4YW1DcSIsImZldGNoTWF0ZXJpYWxPdXRTdG9yZSIsImZldGNoSW5mb0J5Q29kZSIsImZldGNoSW5mb0J5UXJDb2RlIiwic3ViT3V0U3RvcmUiLCJzdWJPdXRTdG9yZUFyciIsImZldGNoU2luZ2xlRGV0YWlsIiwic2VhcmNoUmZpZCIsImV4aXRNYXRlcmlhbCIsImV4aXREZXB0TGlzdCIsImV4aXRNYXRlcmlhbExpc3QiLCJleGl0TWF0ZXJpYWxEZXRhaWwiLCJzdWJFeGl0TWF0ZXJpYWwiLCJkZWxNYXRlcmlhbCIsIm5ld0V4aXRMaXN0Iiwic2VsZWN0TWF0ZXJpYWwiLCJpZkFncmVlbWVudCIsImV4aXRFeGFtIiwiZXhpdEV4YW1MaXN0IiwiZXhpdEV4YW1EZXRhaWwiLCJzdWJFeGl0RXhhbSIsInJlamVjdEV4aXRFeGFtIiwibmV3SW5TdG9yZSIsImZldGNoTmV3SW5TdG9yZUxpc3QiLCJmZXRjaE5ld0J1eURldGFpbCIsInN1Yk5ld0J1eSIsImZpeCIsImZpeExpc3QiLCJmaXhEZXRhaWwiLCJmaXhFeGFtIiwiY29tcGxldGVGaXgiLCJzdWJtaXRGaXgiLCJmaXhDcmV3IiwibWFMaXN0IiwiZml4RmFjdG9yeSIsInVwbG9hZFBpYyIsInJlcGFpclRlc3RJblN0b3JlIiwicmVwYWlyVGVzdEluU3RvcmVMaXN0IiwicmVwYWlyVGVzdEluU3RvcmVEZXRhaWwiLCJwcm9jZXNzT3JSZWplY3QiLCJiYWNrTWF0ZXJpYWxSZWNlaXZlIiwiYmFja01hdGVyaWFsUmVjZWl2ZUxpc3QiLCJiYWNrTWF0ZXJpYWxSZWNlaXZlRGV0YWlsIiwiYmFja01hdGVyaWFsU2V0TnVtQmFjayIsImJhY2tNYXRlcmlhbFFyY29kZVF1ZXJ5IiwiYmFja01hdGVyaWFsU2V0Q29kZUJhY2siLCJiYWNrUmVjZWl2ZUNvZGVRdWVyeSIsImJhY2tSZWNlaXZlRW5kQmFjayIsInNlZUJhY2tNYXRlcmlhbERldGFpbCIsInN1YlJmaWQiLCJzZWFyY2hCeUNvZGUiLCJzZWFyY2hDb2RlRGV2aWNlIiwicmV0dXJuR2V0UmVjb3JkIiwiY3Jhc2hFeGFtIiwiY3Jhc2hFeGFtTGlzdCIsImNyYXNoRXhhbURldGFpbHMiLCJjcmFzaEV4YW1BdWRpdCIsInRlc3RFeGFtIiwidGVzdEV4YW1MaXN0IiwidGVzdEV4YW1EZXRhaWxzIiwidGVzdEV4YW1BdWRpdCIsImF1dGhNYW5hZ2UiLCJmZXRjaEF1dGhMaXN0IiwiZmV0Y2hJc1VzaW5nIiwic3ViQWRkIiwic3ViRGVsIiwic2VhcmNoUHJvalVzaW5nIiwiZmV0Y2hQcm9qVXNpbmdMaXN0Iiwic2VhcmNoRmV0Y2hSZWNvcmQiLCJmZXRjaFJlY29yZExpc3QiLCJ1cGRhdGUiLCJmZXRjaEFwcFZlciIsInJmaWRCaW5kaW5nIiwiYmluZFJmaWQiLCJxcmNvZGVCaW5kaW5nIiwiYmluZFFyY29kZSIsImZldGNoRGV2aWNlVHlw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VSxFQUFFLHNDQUFzQztNQUFFO01BQ3BEQyxlQUFlLEVBQUUsc0NBQXNDO01BQUU7TUFDekRDLGVBQWUsRUFBRSwwQ0FBMEMsQ0FBRTtJQUNqRSxDQUFDOztJQUNEQyxTQUFTLEVBQUU7TUFDUEMsVUFBVSxFQUFFLDZCQUE2QixDQUFFO0lBQy9DO0VBQ0osQ0FBQztBQUFBO0FBQUEsZUFHVSxJQUFJbEgsVUFBVSxFQUFFO0FBQUEiLCJmaWxlIjoiNjg1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgRU5WID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlY7XHJcbmNsYXNzIEh0dHBDb25maWcge1xyXG5cclxuXHJcblxyXG5cclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xMTIuMjkuMTAzLjE2NToyMTYyNFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTkyLjE2OC4wLjE0OjIxNjI0XCJcclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xOTIuMTY4LjAuNTY6MjE2MjZcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE5Mi4xNjguMC4xNDoxODg2NlwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTEyLjI5LjEwMy4xNjU6MjE2MjZcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE3Mi4yMC4xMC4zOjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjk6ODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTAuNDAuOTIuNjA6MjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjEzODoyODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwOi8vMTAuNDAuOTIuNTI6MjgwODBcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzEwLjQwLjkyLjE0MDoyODA4MFwiXHJcbiAgICAvLyBiYXNlVXJsID0gXCJodHRwczovL3ouY3NnbWFsbC5jb20uY24vZ2xcIlxyXG4gICAgLy8gYmFzZVVybCA9IFwiaHR0cDovLzE5Mi4xNjguMi4xNjA6MzkwODBcIiAvLyDmooHotoVcclxuICAgIC8vIGJhc2VVcmwgPSBcImh0dHA6Ly8xOTIuMTY4LjIuMjE4OjM5MDgwXCIgLy8g56aPXHJcbiAgICB0YXJnZXQgPSBcImh0dHA6Ly8xOTIuMTY4LjAuNTY6MjE2MjdcIjsgLy8g5byA5Y+R6Zi25q615ZCO5Y+waXBcclxuXHJcbiAgICAvLyDln7rlnLDlnYAg77yI6YOo572y5pe25L2/55SoIOmcgOimgeWKoCBkZXYtYXBp77yJXHJcbiAgICAvLyBhdXRoUGF0aCA9IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9hdXRoYFxyXG4gICAgLy8gc3lzdGVtUGF0aCA9IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9zeXN0ZW1gXHJcbiAgICAvLyBiYXNlUGF0aCA9IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9iYXNlYFxyXG4gICAgLy8gbWF0ZXJpYWxQYXRoID0gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL21hdGVyaWFsYFxyXG4gICAgYmFzZVVybCA9XHJcbiAgICAgICAgRU5WID09PSBcInByb2R1Y3Rpb25cIiA/IFwiaHR0cDovLzExMi4yOS4xMDMuMTY1OjIxNjI2XCIgOiB0aGlzLnRhcmdldDtcclxuICAgIGF1dGhQYXRoID1cclxuICAgICAgICBFTlYgPT09IFwicHJvZHVjdGlvblwiXHJcbiAgICAgICAgICAgID8gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL2F1dGhgXHJcbiAgICAgICAgICAgIDogYCR7dGhpcy5iYXNlVXJsfS9hdXRoYDtcclxuICAgIHN5c3RlbVBhdGggPVxyXG4gICAgICAgIEVOViA9PT0gXCJwcm9kdWN0aW9uXCJcclxuICAgICAgICAgICAgPyBgJHt0aGlzLmJhc2VVcmx9L2Rldi1hcGkvc3lzdGVtYFxyXG4gICAgICAgICAgICA6IGAke3RoaXMuYmFzZVVybH0vc3lzdGVtYDtcclxuICAgIGJhc2VQYXRoID1cclxuICAgICAgICBFTlYgPT09IFwicHJvZHVjdGlvblwiXHJcbiAgICAgICAgICAgID8gYCR7dGhpcy5iYXNlVXJsfS9kZXYtYXBpL21hdGVyaWFsL2Jhc2VgXHJcbiAgICAgICAgICAgIDogYCR7dGhpcy5iYXNlVXJsfS9tYXRlcmlhbC9iYXNlYDtcclxuICAgIG1hdGVyaWFsUGF0aCA9XHJcbiAgICAgICAgRU5WID09PSBcInByb2R1Y3Rpb25cIlxyXG4gICAgICAgICAgICA/IGAke3RoaXMuYmFzZVVybH0vZGV2LWFwaS9tYXRlcmlhbGBcclxuICAgICAgICAgICAgOiBgJHt0aGlzLmJhc2VVcmx9L21hdGVyaWFsYDtcclxuICAgIC8vIOefremTvlxyXG4gICAgc2VydmljZVVybCA9IHtcclxuICAgICAgICBsb2dpbjoge1xyXG4gICAgICAgICAgICBjb2RlOiBcIi9zZW5kQ29kZVwiLCAvLyDojrflj5bpqozor4HnoIFcclxuICAgICAgICAgICAgY2hlY2tDb2RlOiBcIi9jaGVja0NvZGVcIiwgLy8g6aqM6K+B56CB55m75b2VXHJcbiAgICAgICAgICAgIGxvZzogXCIvbG9naW5BcHBcIiwgLy8g6LSm5oi355m75b2VXHJcbiAgICAgICAgfSxcclxuICAgICAgICB1c2VyOiB7XHJcbiAgICAgICAgICAgIGxvZ091dDogXCIvbG9nb3V0XCIsIC8vIOmAgOWHuueZu+W9lVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgaW5kZXg6IHtcclxuICAgICAgICAgICAgbm90aWNlQ29udDogXCIvc3lzTm90aWNlL2dldExpc3RcIiwgLy8g6I635Y+W5YWs5ZGK5YaF5a65XHJcbiAgICAgICAgICAgIHNpbmdsZU5vdGljZTogXCIvbm90aWNlL2xpc3RcIiwgLy8g5p+l55yL5Y2V5Liq5YWs5ZGKXHJcbiAgICAgICAgICAgIHdhaXREbzogXCIvYXBwL2dldFRvRG9MaXN0XCIsIC8vIOiOt+WPluW+heWKnuS6i+mhuVxyXG4gICAgICAgICAgICBrZXlEYXRhOiBcIi9hcHAvZ2V0Q3JpdGljYWxEYXRhXCIsIC8vIOiOt+WPluWFs+mUruaVsOaNrlxyXG4gICAgICAgICAgICBnZXRVc2VySW5mbzogXCIvdXNlci9nZXRJbmZvXCIsIC8vIOiOt+WPlueUqOaIt+S/oeaBr1xyXG4gICAgICAgICAgICBmZXRjaENvbXBhbnlOYW1lOiBcIi9kZXB0L2dldENvbXBhbnlCeUFuY2VzdG9yc1wiLCAvLyDojrflj5blhazlj7jlkI3np7BcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZldGNoTWF0ZXJpYWw6IHtcclxuICAgICAgICAgICAgZmV0Y2hNYXRlcmlhbExpc3Q6IFwiL3R5cGUvc2VsZWN0TWFUeXBlTGlzdEJ5TGV2ZWxJbmRleFwiLCAvLyDojrflj5borr7lpIfliJfooahcclxuICAgICAgICAgICAgZ2V0RGVwdExpc3Q6IFwiL3NlbGVjdC9nZXRVbml0Q2J4XCIsIC8vIOiOt+WPluW+gOadpeWNleS9jeWIl+ihqFxyXG4gICAgICAgICAgICBnZXRQcm9qTGlzdDogXCIvc2VsZWN0L2dldFNlY3Rpb25FbmdpbmVlcmluZ0NieFwiLCAvLyDojrflj5blt6XnqIvliJfooahcclxuICAgICAgICAgICAgZ2V0RGV2aWNlRGV0YWlsOiBcIi90eXBlL3NlbGVjdE1hVHlwZVRyZWVCeUxldmVsXCIsIC8vIOiOt+WPluacuuWFt+ivpuaDhVxyXG4gICAgICAgICAgICBnZXRDYXJ0RGV0YWlsOiBcIi9sZWFzZVVzZXJCb29rXCIsIC8vIOafpeivoumihOe6pui9puWGheaJgOacieWVhuWTgVxyXG4gICAgICAgICAgICBhZGRJdGVtVG9DYXJ0OiBcIi9sZWFzZVVzZXJCb29rXCIsIC8vIOWQkemihOe6pui9puWGhea3u+WKoOWVhuWTgVxyXG4gICAgICAgICAgICBkZWxDYXJ0OiBcIi9sZWFzZVVzZXJCb29rXCIsIC8vIOWIoOmZpOmihOe6pui9puWVhuWTgVxyXG4gICAgICAgICAgICBzdWJDYXJ0OiBcIi90bV90YXNrL3N1Ym1pdExlYXNlQXBwbHlcIiwgLy8g5o+Q5Lqk6aKE57qm6L2mXHJcbiAgICAgICAgICAgIGl0ZW1OdW1DaGFuZ2U6IFwiL2xlYXNlVXNlckJvb2svdXBkYXRlXCIsIC8vIOmihOe6pui9puaVsOmHj+WKoOWHj1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZmV0Y2hFeGFtOiB7XHJcbiAgICAgICAgICAgIGZldGNoRXhhbUxpc3Q6IFwiL3RtX3Rhc2svZ2V0TGVhc2VBdWRpdExpc3RcIiwgLy8g6I635Y+W6aKG5paZ5a6h5om55riF5Y2VXHJcbiAgICAgICAgICAgIGZldGNoRXhhbUxpc3RBbGw6IFwiL3RtX3Rhc2svZ2V0TGVhc2VBdWRpdExpc3RBbGxcIiwgLy8g6I635Y+W6aKG5paZ55Sz6K+35YiX6KGoXHJcbiAgICAgICAgICAgIGZldGNoVHJ1ZUV4YW1MaXN0OiBcIi90bV90YXNrL2dldExlYXNlTWFuYWdlTGlzdEFsbFwiLCAvLyDojrflj5bpoobmlpnlrqHmibnliJfooahcclxuICAgICAgICAgICAgZmV0Y2hUcnVlRXhhbUxpc3RDcTogXCIvdG1fdGFzay9nZXRMZWFzZU1hbmFnZUxpc3RBbGxDcVwiLCAvLyDojrflj5bph43luobpoobmlpnlrqHmibnliJfooahcclxuICAgICAgICAgICAgZmV0Y2hEZXRhaWxMaXN0OiBcIi90bV90YXNrL2dldExlYXNlTGlzdEFsbENxXCIsIC8vIOiOt+WPlumihuaWmeaYjue7huWIl+ihqFxyXG4gICAgICAgICAgICBzdWJFeGFtOiBcIi90bV90YXNrL2F1ZGl0TGVhc2VCeUNvbXBhbnlcIiwgLy8g6YCa6L+H6aKG5paZ5a6h5om5XHJcbiAgICAgICAgICAgIHN1YkV4YW1DcTogXCIvdG1fdGFzay9hdWRpdExlYXNlQnlDb21wYW55Q3FcIiwgLy8g6YCa6L+H6YeN5bqG6aKG5paZ5a6h5om5XHJcbiAgICAgICAgICAgIHJlamVjdEV4YW06IFwiL3RtX3Rhc2svcmVqZWN0TGVhc2VCeUNvbXBhbnlcIiwgLy8g6amz5Zue6aKG5paZ5a6h5om5XHJcbiAgICAgICAgICAgIHJlamVjdEV4YW1DcTogXCIvdG1fdGFzay9yZWplY3RMZWFzZUJ5Q29tcGFueUNxXCIsIC8vIOmps+WbnumHjeW6humihuaWmeWuoeaJuVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZmV0Y2hNYXRlcmlhbE91dFN0b3JlOiB7XHJcbiAgICAgICAgICAgIGZldGNoSW5mb0J5Q29kZTogXCIvbGVhc2VPdXREZXRhaWxzL2dldE1hTWFjaGluZUJ5Q29kZVwiLCAvLyDmoLnmja5tYUlk6I635Y+W5py65YW36K+m5oOFXHJcbiAgICAgICAgICAgIGZldGNoSW5mb0J5UXJDb2RlOiBcIi9sZWFzZU91dERldGFpbHMvZ2V0TWFNYWNoaW5lQnlRckNvZGVcIixcclxuICAgICAgICAgICAgc3ViT3V0U3RvcmU6IFwiL2xlYXNlT3V0RGV0YWlscy9zdWJtaXRPdXRcIiwgLy8g6aKG5paZ5Ye65bqT5o+Q5LqkLeWvueixoVxyXG4gICAgICAgICAgICBzdWJPdXRTdG9yZUFycjogXCIvbGVhc2VPdXREZXRhaWxzL3N1Ym1pdE91dFJmaWRcIiwgLy8g6aKG5paZ5Ye65bqT5o+Q5LqkLeaVsOe7hFxyXG4gICAgICAgICAgICBmZXRjaFNpbmdsZURldGFpbDogXCIvdG1fdGFzay9nZXRMZWFzZUF1ZGl0TGlzdERldGFpbFwiLCAvLyDmoLnmja7poobmlplpZOafpeivoumihuaWmeeUs+ivt+ivpuaDhVxyXG4gICAgICAgICAgICBzZWFyY2hSZmlkOiBcIi9iYWNrUmVjZWl2ZS9yZmlkQ29kZVF1ZXJ5XCIsIC8vIOafpeivonJmaWRcclxuICAgICAgICB9LFxyXG4gICAgICAgIGV4aXRNYXRlcmlhbDoge1xyXG4gICAgICAgICAgICBleGl0RGVwdExpc3Q6IFwiL2JhY2tfYXBwbHkvZ2V0YmFja1VuaXRcIiwgLy8g6I635Y+W6YCA5paZ5Y2V5L2N77yM5bel56iL5YiX6KGoXHJcbiAgICAgICAgICAgIGV4aXRNYXRlcmlhbExpc3Q6IFwiL2JhY2tfYXBwbHkvZ2V0YmFja0xpc3RcIiwgLy8g6I635Y+W5py65YW36YCA5paZ5YiX6KGoXHJcbiAgICAgICAgICAgIGV4aXRNYXRlcmlhbERldGFpbDogXCIvYmFja19hcHBseS92aWV3XCIsIC8vIOiOt+WPlumAgOaWmeiuvuWkh+ivpuaDhVxyXG4gICAgICAgICAgICBzdWJFeGl0TWF0ZXJpYWw6IFwiL2JhY2tfYXBwbHkvdXBsb2FkXCIsIC8vIOaPkOS6pOmAgOaWmea4heWNlVxyXG4gICAgICAgICAgICBkZWxNYXRlcmlhbDogXCIvYmFja19hcHBseS9kZWxcIiwgLy8g5Yig6Zmk6YCA5paZ55Sz6K+3XHJcbiAgICAgICAgICAgIG5ld0V4aXRMaXN0OiBcIi9iYWNrX2FwcGx5L2FkZEJhY2tUYXNrXCIsIC8vIOaWsOW7uumAgOaWmeS7u+WKoeWNlVxyXG4gICAgICAgICAgICBzZWxlY3RNYXRlcmlhbDogXCIvYmFja19hcHBseS9tYXRlcmlhbExpc3RcIiwgLy8g6YCA5paZ54mp5paZ6YCJ5oupXHJcbiAgICAgICAgICAgIGlmQWdyZWVtZW50OiBcIi9zZWxlY3QvZ2V0QWdyZWVtZW50SW5mb0J5SWRcIiwgLy8g5Y2V5L2NaWTlkozlt6XnqItpZOaYr+WQpuWMuemFjVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXhpdEV4YW06IHtcclxuICAgICAgICAgICAgZXhpdEV4YW1MaXN0OiBcIi9iYWNrX2FwcGx5L2V4YW1pbmVMaXN0XCIsIC8vIOiOt+WPlumAgOaWmeWuoeaguOWIl+ihqFxyXG4gICAgICAgICAgICBleGl0RXhhbURldGFpbDogXCIvYmFja19hcHBseS9leGFtaW5lVmlld1wiLCAvLyDojrflj5bpgIDmlpnlrqHmoLjmmI7nu4ZcclxuICAgICAgICAgICAgc3ViRXhpdEV4YW06IFwiL2JhY2tfYXBwbHkvYXVkaXRcIiwgLy8g5o+Q5Lqk5Y2V5Liq5a6h5qC4XHJcbiAgICAgICAgICAgIHJlamVjdEV4aXRFeGFtOiBcIi9iYWNrX2FwcGx5L3JlZnVzZVwiLCAvLyDmi5Lnu53ljZXkuKrlrqHmoLhcclxuICAgICAgICB9LFxyXG4gICAgICAgIG5ld0luU3RvcmU6IHtcclxuICAgICAgICAgICAgLy8gZmV0Y2hOZXdJblN0b3JlTGlzdDogJy9wdXJjaGFzZUlucHV0L2xpc3QnLCAvLyDojrflj5bmlrDotK3lhaXlupPliJfooahcclxuICAgICAgICAgICAgZmV0Y2hOZXdJblN0b3JlTGlzdDogXCIvcHVyY2hhc2VDaGVja0luZm8vcHV0SW5MaXN0XCIsIC8vIOiOt+WPluaWsOi0reWFpeW6k+WIl+ihqFxyXG4gICAgICAgICAgICBmZXRjaE5ld0J1eURldGFpbDogXCIvcHVyY2hhc2VNYWNvZGUvcHV0aW5EZXRhaWxzXCIsIC8vIOiOt+WPluaWsOi0reWFpeW6k+ivpuaDhVxyXG4gICAgICAgICAgICBzdWJOZXdCdXk6IFwiL3B1cmNoYXNlSW5wdXQvbWFuYWdlU3RhdHVzXCIsIC8vIOaWsOi0reaYjue7huaPkOS6pOWuoeaguFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZml4OiB7XHJcbiAgICAgICAgICAgIGZpeExpc3Q6IFwiL3JlcGFpci9nZXRBcHBSZXBhaXJUYXNrTGlzdFwiLCAvLyDojrflj5bnu7Tkv67liJfooahcclxuICAgICAgICAgICAgZml4RGV0YWlsOiBcIi9yZXBhaXIvZ2V0QXBwUmVwYWlyTWFUeXBlTGlzdFwiLCAvLyDojrflj5bnu7Tkv67mmI7nu4ZcclxuICAgICAgICAgICAgZml4RXhhbTogXCIvcmVwYWlyL2VuZFJlcGFpclRhc2tcIiwgLy8g5o+Q5Lqk57u05L+u5a6h5qC4XHJcbiAgICAgICAgICAgIGNvbXBsZXRlRml4OiBcIi9yZXBhaXIvY29tcGxldGVSZXBhaXJcIiwgLy8g57u05L+u5a6M5oiQXHJcbiAgICAgICAgICAgIHN1Ym1pdEZpeDogXCIvcmVwYWlyL3N1Ym1pdFJlcGFpckFwcGx5XCIsIC8vIOaPkOS6pOe7tOS/rueUs+ivt1xyXG4gICAgICAgICAgICAvLyBmaXhDcmV3OiAnL3JlcGFpci9nZXRVc2VyU2VsZWN0JywgLy8g6I635Y+W57u05L+u5Lq65ZGYXHJcbiAgICAgICAgICAgIGZpeENyZXc6IFwiL3VzZXIvZ2V0VXNlckJ5Um9sZUxpc3RcIiwgLy8g6I635Y+W57u05L+u5Lq65ZGYXHJcbiAgICAgICAgICAgIG1hTGlzdDogXCIvbWFQYXJ0VHlwZS9saXN0XCIsIC8vIOiOt+WPlumFjeS7tuagkVxyXG4gICAgICAgICAgICBmaXhGYWN0b3J5OiBcIi9zdXBwbGllckluZm8vZ2V0U3VwcGxpZXJTZWxlY3RcIiwgLy8g6I635Y+W57u05L+u5Y6C5a62XHJcbiAgICAgICAgICAgIHVwbG9hZFBpYzogXCIvc3lzL2ZpbGUvdXBsb2FkXCIsIC8vIOWbvueJh+S4iuS8oOaOpeWPo1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcmVwYWlyVGVzdEluU3RvcmU6IHtcclxuICAgICAgICAgICAgcmVwYWlyVGVzdEluU3RvcmVMaXN0OiBcIi9SZXBhaXJUZXN0SW5wdXQvZ2V0QXBwUmVwYWlyZWRMaXN0XCIsIC8vIOiOt+WPluS/ruivleWQjuWFpeW6k+WIl+ihqFxyXG4gICAgICAgICAgICByZXBhaXJUZXN0SW5TdG9yZURldGFpbDpcclxuICAgICAgICAgICAgICAgIFwiL1JlcGFpclRlc3RJbnB1dC9nZXRBcHBSZXBhaXJlZERldGFpbExpc3RcIiwgLy8g6I635Y+W5L+u6K+V5ZCO5YiX6KGo6K+m5oOFXHJcbiAgICAgICAgICAgIHByb2Nlc3NPclJlamVjdDogXCIvUmVwYWlyVGVzdElucHV0L2lucHV0QnlUeXBlXCIsIC8vIOS/ruivleWuoeaguOmAmui/h+aIlumps+WbnlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgYmFja01hdGVyaWFsUmVjZWl2ZToge1xyXG4gICAgICAgICAgICBiYWNrTWF0ZXJpYWxSZWNlaXZlTGlzdDogXCIvYmFja1JlY2VpdmUvZ2V0YmFja1JlY2VpdmVMaXN0XCIsIC8vIOiOt+WPlumAgOaWmeaOpeaUtuWIl+ihqFxyXG4gICAgICAgICAgICAvLyBiYWNrTWF0ZXJpYWxSZWNlaXZlRGV0YWlsOiAnL2JhY2tSZWNlaXZlL3JlY2VpdmVWaWV3JyxcclxuICAgICAgICAgICAgYmFja01hdGVyaWFsUmVjZWl2ZURldGFpbDogXCIvYmFja1JlY2VpdmUvcmVjZWl2ZVZpZXdXZWJcIixcclxuICAgICAgICAgICAgYmFja01hdGVyaWFsU2V0TnVtQmFjazogXCIvYmFja1JlY2VpdmUvc2V0TnVtQmFja1wiLFxyXG4gICAgICAgICAgICBiYWNrTWF0ZXJpYWxRcmNvZGVRdWVyeTogXCIvYmFja1JlY2VpdmUvcXJjb2RlUXVlcnlcIixcclxuICAgICAgICAgICAgYmFja01hdGVyaWFsU2V0Q29kZUJhY2s6IFwiL2JhY2tSZWNlaXZlL3NldENvZGVCYWNrXCIsXHJcbiAgICAgICAgICAgIGJhY2tSZWNlaXZlQ29kZVF1ZXJ5OiBcIi9iYWNrUmVjZWl2ZS9jb2RlUXVlcnlcIixcclxuICAgICAgICAgICAgYmFja1JlY2VpdmVFbmRCYWNrOiBcIi9iYWNrUmVjZWl2ZS9lbmRCYWNrXCIsXHJcbiAgICAgICAgICAgIHNlZUJhY2tNYXRlcmlhbERldGFpbDogXCIvYmFja1JlY2VpdmUvYmFja1JlY2VpdmVSZWNvcmRcIiwgLy8g5p+l55yL6YCA5paZ5piO57uGXHJcbiAgICAgICAgICAgIHNlYXJjaFJmaWQ6IFwiL2JhY2tSZWNlaXZlL3JmaWRDb2RlUXVlcnlcIiwgLy8g5p+l6K+icmZpZFxyXG4gICAgICAgICAgICBzdWJSZmlkOiBcIi9iYWNrUmVjZWl2ZS9zZXRSZmlkQ29kZUJhY2tcIiwgLy8gcmZpZOaOpeaUtlxyXG4gICAgICAgICAgICBzZWFyY2hCeUNvZGU6IFwiL2JhY2tSZWNlaXZlL2dldEJhY2tNYWNoaW5lQXBwXCIsIC8vIOagueaNrue8lueggeafpeivouivpeW3peeoi+S4i+eahOiuvuWkh1xyXG4gICAgICAgICAgICBzZWFyY2hDb2RlRGV2aWNlOiBcIi9iYWNrUmVjZWl2ZS9nZXRCYWNrTWFjaGluZVwiLCAvLyDmoLnmja7nvJbnoIHmn6Xor6Lor6Xlt6XnqIvkuIvnmoTorr7lpIdcclxuICAgICAgICAgICAgcmV0dXJuR2V0UmVjb3JkOiBcIi9iYWNrUmVjZWl2ZS9nZXRSZWNvcmRcIiwgLy8g5qC55o2u57yW56CB5p+l6K+i6K+l5bel56iL5LiL55qE6K6+5aSHXHJcbiAgICAgICAgfSxcclxuICAgICAgICAvLyDmiqXlup/lrqHmoLjmjqXlj6NcclxuICAgICAgICBjcmFzaEV4YW06IHtcclxuICAgICAgICAgICAgY3Jhc2hFeGFtTGlzdDogXCIvc2NyYXAvZ2V0U2NyYXBUYXNrTGlzdFwiLFxyXG4gICAgICAgICAgICBjcmFzaEV4YW1EZXRhaWxzOiBcIi9zY3JhcC9nZXRTY3JhcEF1ZGl0TGlzdFwiLFxyXG4gICAgICAgICAgICBjcmFzaEV4YW1BdWRpdDogXCIvc2NyYXAvYXVkaXRcIixcclxuICAgICAgICB9LFxyXG4gICAgICAgIC8v6K+V6aqM5qOA6aqM5o6l5Y+jXHJcbiAgICAgICAgdGVzdEV4YW06IHtcclxuICAgICAgICAgICAgdGVzdEV4YW1MaXN0OiBcIi9kZXRhaWxzL3F1ZXN0TGlzdFwiLFxyXG4gICAgICAgICAgICB0ZXN0RXhhbURldGFpbHM6IFwiL2RldGFpbHMvZ2V0UmVwYWlyQXVkaXRMaXN0XCIsXHJcbiAgICAgICAgICAgIHRlc3RFeGFtQXVkaXQ6IFwiL2RldGFpbHMvYXVkaXRcIixcclxuICAgICAgICB9LFxyXG4gICAgICAgIGF1dGhNYW5hZ2U6IHtcclxuICAgICAgICAgICAgZmV0Y2hBdXRoTGlzdDogXCIvYXBwTWVudS9nZXRBbGxNZW51XCIsIC8vIOiOt+WPluaJgOacieaooeWdl+aVsOaNrlxyXG4gICAgICAgICAgICBmZXRjaElzVXNpbmc6IFwiL2FwcE1lbnUvZ2V0TWVudUJ5SWRcIiwgLy8g6I635Y+W5q2j5Zyo5L2/55So55qE5qih5Z2XXHJcbiAgICAgICAgICAgIHN1YkFkZDogXCIvYXBwTWVudS9hZGRNZW51QnlJZFwiLCAvLyDmj5DkuqTmlrDlop7mqKHlnZdcclxuICAgICAgICAgICAgc3ViRGVsOiBcIi9hcHBNZW51L2RlbE1lbnVCeUlkXCIsIC8vIOaPkOS6pOWIoOmZpOaooeWdl1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgc2VhcmNoUHJvalVzaW5nOiB7XHJcbiAgICAgICAgICAgIGZldGNoUHJvalVzaW5nTGlzdDogXCIvbGVhc2VPdXREZXRhaWxzL3Byb1VzZVJlY29yZFwiLCAvLyDojrflj5blt6XnqIvlnKjnlKjliJfooahcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlYXJjaEZldGNoUmVjb3JkOiB7XHJcbiAgICAgICAgICAgIGZldGNoUmVjb3JkTGlzdDogXCIvbGVhc2VPdXREZXRhaWxzL2xlYXNlT3V0UmVjb3JkXCIsIC8vIOiOt+WPlumihueUqOiusOW9leWIl+ihqFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdXBkYXRlOiB7XHJcbiAgICAgICAgICAgIGZldGNoQXBwVmVyOiBcIi9hcHAvZ2V0VmVyc2lvblwiLCAvLyDojrflj5ZhcHDlvZPliY3niYjmnKzlj7dcclxuICAgICAgICB9LFxyXG4gICAgICAgIHJmaWRCaW5kaW5nOiB7XHJcbiAgICAgICAgICAgIGJpbmRSZmlkOiBcIi9sZWFzZU91dERldGFpbHMvYmluZE1hY2hpbmVCeVJmaWRcIiwgLy8gcmlmZOe7keWumlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcXJjb2RlQmluZGluZzoge1xyXG4gICAgICAgICAgICBiaW5kUXJjb2RlOiBcIi9sZWFzZU91dERldGFpbHMvYmluZE1hY2hpbmVCeVFyQ29kZVwiLCAvLyDkuoznu7TnoIHnu5HlrppcclxuICAgICAgICAgICAgZmV0Y2hEZXZpY2VUeXBlOiBcIi9yZXR1cm5PZk1hdGVyaWFsc0luZm8vZ2V0TWFUeXBlTGlzdFwiLCAvLyDojrflj5borr7lpIfnsbvlnotcclxuICAgICAgICAgICAgZmV0Y2hEZXZpY2VTcGVjOiBcIi9yZXR1cm5PZk1hdGVyaWFsc0luZm8vZ2V0SW5mb0xpc3RCeVR5cGVcIiwgLy8g6I635Y+W6KeE5qC85Z6L5Y+3XHJcbiAgICAgICAgfSxcclxuICAgICAgICBpbmRleFNjYW46IHtcclxuICAgICAgICAgICAgaW5mb0J5Q29kZTogXCIvbWFjaGluZS9nZXRNYWNoaW5lQnlRckNvZGVcIiwgLy8g6aaW6aG15qC55o2u5LqM57u056CB5p+l6K+i6K6+5aSH5L+h5oGvXHJcbiAgICAgICAgfSxcclxuICAgIH07XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IG5ldyBIdHRwQ29uZmlnKCk7XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///685\n");
/***/ })
],[[0,"app-config"]]]);
\ No newline at end of file
diff --git a/unpackage/dist/dev/app-plus/app-view.js b/unpackage/dist/dev/app-plus/app-view.js
index 2427789..8f301ed 100644
--- a/unpackage/dist/dev/app-plus/app-view.js
+++ b/unpackage/dist/dev/app-plus/app-view.js
@@ -3283,25 +3283,11 @@ var render = function () {
],
1
),
- _c(
- "v-uni-text",
- {
- staticStyle: {
- width: "100%",
- display: "flex",
- "justify-content": "flex-end",
- color: "#3689ff",
- "font-size": "14px",
- },
- attrs: { _i: 14 },
- },
- [_vm._v("忘记密码")]
- ),
_c(
"v-uni-button",
{
- staticClass: _vm._$g(15, "sc"),
- attrs: { _i: 15 },
+ staticClass: _vm._$g(14, "sc"),
+ attrs: { _i: 14 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -3320,23 +3306,23 @@ var render = function () {
{
name: "show",
rawName: "v-show",
- value: _vm._$g(16, "v-show"),
- expression: "_$g(16,'v-show')",
+ value: _vm._$g(15, "v-show"),
+ expression: "_$g(15,'v-show')",
},
],
ref: "veriForm",
- staticClass: _vm._$g(16, "sc"),
- attrs: { _i: 16 },
+ staticClass: _vm._$g(15, "sc"),
+ attrs: { _i: 15 },
},
[
_c(
"uni-forms-item",
- { attrs: { _i: 17 } },
+ { attrs: { _i: 16 } },
[
_c("uni-easyinput", {
- attrs: { _i: 18 },
+ attrs: { _i: 17 },
model: {
- value: _vm._$g(18, "v-model"),
+ value: _vm._$g(17, "v-model"),
callback: function () {},
expression: "veriFormData.phone",
},
@@ -3346,12 +3332,12 @@ var render = function () {
),
_c(
"uni-forms-item",
- { attrs: { _i: 19 } },
+ { attrs: { _i: 18 } },
[
_c("uni-easyinput", {
- attrs: { _i: 20 },
+ attrs: { _i: 19 },
model: {
- value: _vm._$g(20, "v-model"),
+ value: _vm._$g(19, "v-model"),
callback: function () {},
expression: "veriFormData.code",
},
@@ -3359,9 +3345,9 @@ var render = function () {
_c(
"v-uni-button",
{
- staticClass: _vm._$g(21, "sc"),
+ staticClass: _vm._$g(20, "sc"),
staticStyle: { "font-size": "14px" },
- attrs: { disabled: _vm._$g(21, "a-disabled"), _i: 21 },
+ attrs: { disabled: _vm._$g(20, "a-disabled"), _i: 20 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -3369,14 +3355,14 @@ var render = function () {
},
},
[
- _vm._$g(22, "i")
- ? _c("span", { attrs: { _i: 22 } }, [
+ _vm._$g(21, "i")
+ ? _c("span", { attrs: { _i: 21 } }, [
_vm._v("发送验证码"),
])
: _vm._e(),
- _vm._$g(23, "i")
- ? _c("span", { attrs: { _i: 23 } }, [
- _vm._v(_vm._$g(23, "t0-0") + "s"),
+ _vm._$g(22, "i")
+ ? _c("span", { attrs: { _i: 22 } }, [
+ _vm._v(_vm._$g(22, "t0-0") + "s"),
])
: _vm._e(),
],
@@ -3388,8 +3374,8 @@ var render = function () {
_c(
"v-uni-button",
{
- staticClass: _vm._$g(24, "sc"),
- attrs: { _i: 24 },
+ staticClass: _vm._$g(23, "sc"),
+ attrs: { _i: 23 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -3404,7 +3390,7 @@ var render = function () {
],
1
),
- _c("u-loading-page", { attrs: { _i: 25 } }),
+ _c("u-loading-page", { attrs: { _i: 24 } }),
],
1
)
@@ -4529,25 +4515,11 @@ var render = function () {
],
1
),
- _c(
- "v-uni-text",
- {
- staticStyle: {
- width: "100%",
- display: "flex",
- "justify-content": "flex-end",
- color: "#3689ff",
- "font-size": "14px",
- },
- attrs: { _i: 14 },
- },
- [_vm._v("忘记密码")]
- ),
_c(
"v-uni-button",
{
- staticClass: _vm._$g(15, "sc"),
- attrs: { _i: 15 },
+ staticClass: _vm._$g(14, "sc"),
+ attrs: { _i: 14 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -4566,23 +4538,23 @@ var render = function () {
{
name: "show",
rawName: "v-show",
- value: _vm._$g(16, "v-show"),
- expression: "_$g(16,'v-show')",
+ value: _vm._$g(15, "v-show"),
+ expression: "_$g(15,'v-show')",
},
],
ref: "veriForm",
- staticClass: _vm._$g(16, "sc"),
- attrs: { _i: 16 },
+ staticClass: _vm._$g(15, "sc"),
+ attrs: { _i: 15 },
},
[
_c(
"uni-forms-item",
- { attrs: { _i: 17 } },
+ { attrs: { _i: 16 } },
[
_c("uni-easyinput", {
- attrs: { _i: 18 },
+ attrs: { _i: 17 },
model: {
- value: _vm._$g(18, "v-model"),
+ value: _vm._$g(17, "v-model"),
callback: function () {},
expression: "veriFormData.phone",
},
@@ -4592,22 +4564,22 @@ var render = function () {
),
_c(
"uni-forms-item",
- { attrs: { _i: 19 } },
+ { attrs: { _i: 18 } },
[
_c(
"uni-view",
- { staticClass: _vm._$g(20, "sc"), attrs: { _i: 20 } },
+ { staticClass: _vm._$g(19, "sc"), attrs: { _i: 19 } },
[
_c("uni-easyinput", {
- attrs: { _i: 21 },
+ attrs: { _i: 20 },
model: {
- value: _vm._$g(21, "v-model"),
+ value: _vm._$g(20, "v-model"),
callback: function () {},
expression: "veriFormData.imgCode",
},
}),
_c("img", {
- attrs: { src: _vm._$g(22, "a-src"), _i: 22 },
+ attrs: { src: _vm._$g(21, "a-src"), _i: 21 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -4622,12 +4594,12 @@ var render = function () {
),
_c(
"uni-forms-item",
- { attrs: { _i: 23 } },
+ { attrs: { _i: 22 } },
[
_c("uni-easyinput", {
- attrs: { _i: 24 },
+ attrs: { _i: 23 },
model: {
- value: _vm._$g(24, "v-model"),
+ value: _vm._$g(23, "v-model"),
callback: function () {},
expression: "veriFormData.code",
},
@@ -4635,9 +4607,9 @@ var render = function () {
_c(
"v-uni-button",
{
- staticClass: _vm._$g(25, "sc"),
+ staticClass: _vm._$g(24, "sc"),
staticStyle: { "font-size": "14px" },
- attrs: { disabled: _vm._$g(25, "a-disabled"), _i: 25 },
+ attrs: { disabled: _vm._$g(24, "a-disabled"), _i: 24 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -4645,14 +4617,14 @@ var render = function () {
},
},
[
- _vm._$g(26, "i")
- ? _c("span", { attrs: { _i: 26 } }, [
+ _vm._$g(25, "i")
+ ? _c("span", { attrs: { _i: 25 } }, [
_vm._v("发送验证码"),
])
: _vm._e(),
- _vm._$g(27, "i")
- ? _c("span", { attrs: { _i: 27 } }, [
- _vm._v(_vm._$g(27, "t0-0") + "s"),
+ _vm._$g(26, "i")
+ ? _c("span", { attrs: { _i: 26 } }, [
+ _vm._v(_vm._$g(26, "t0-0") + "s"),
])
: _vm._e(),
],
@@ -4664,8 +4636,8 @@ var render = function () {
_c(
"v-uni-button",
{
- staticClass: _vm._$g(28, "sc"),
- attrs: { _i: 28 },
+ staticClass: _vm._$g(27, "sc"),
+ attrs: { _i: 27 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
@@ -4680,7 +4652,7 @@ var render = function () {
],
1
),
- _c("u-loading-page", { attrs: { _i: 29 } }),
+ _c("u-loading-page", { attrs: { _i: 28 } }),
],
1
)
@@ -22678,7 +22650,7 @@ if(false) {}
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../HBuilderX.3.98.2023112510/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/runtime/api.js */ 16);
exports = ___CSS_LOADER_API_IMPORT___(false);
// Module
-exports.push([module.i, "\nbody{\n\tbox-sizing: border-box;\n\tpadding-bottom: 10vh;\n}\n.search-bar{\n\twidth: 95%;\n\tmargin: 20rpx auto;\n}\n uni-checkbox .uni-checkbox-input {\n\tborder-radius: 50%;\n}\n uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked {\n\tborder-color: #ddd;\n\tcolor: #fff !important;\n\tbackground-color: #2DCF8C !important;\n}\n uni-checkbox .uni-checkbox-input {\n\tborder-color: #ddd;\n}\n uni-checkbox .uni-checkbox-input:hover {\n\tborder-color: #ddd;\n}\n.search {\n\tpadding-top: 20rpx;\n}\n.search .searchIput {\n\tbackground-color: #e6e6e6;\n\twidth: 95%;\n\tmargin: 0 auto;\n\theight: 72rpx;\n\tline-height: 72rpx;\n\tborder-radius: 50rpx;\n\tpadding: 0 32rpx;\n\tbox-sizing: border-box;\n\tdisplay: flex;\n\talign-items: center;\n}\n.search .searchIput uni-input {\n\tfont-size: 26rpx;\n\twidth: 100%;\n\tcolor: grey;\n}\n.search .searchIput uni-image {\n\twidth: 34rpx;\n\theight: 34rpx;\n}\n.dataInfo {\n\twidth: 95%;\n\tmargin: 0 auto;\n}\n.dataInfo .dataList {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tborder-bottom: 2px solid #F1F1F1;\n\tpadding: 25rpx 0;\n}\n.dataInfo .dataList .details {\n\tdisplay: flex;\n\talign-items: center;\n\tflex: 1;\n\tfont-size: 0;\n}\n.dataInfo .dataList .details .img uni-image {\n\twidth: 200rpx;\n\theight: 140rpx;\n\tpadding: 0 20rpx;\n}\n.dataInfo .dataList .details .text uni-text {\n\tcolor: #000;\n\tfont-size: 23rpx;\n\tdisplay: block;\n\tpadding: 10rpx 0;\n}\n.dataInfo .dataList .details .text {\n\tcolor: red;\n\tfont-size: 25rpx;\n}\n.dataInfo .dataList .action uni-text {\n\tfont-size: 25rpx;\n\tcolor: #000;\n\tborder: 1px solid #C8C7CC;\n\tdisplay: inline-block;\n\tline-height: 50rpx;\n\twidth: 60rpx;\n\ttext-align: center;\n\tbox-sizing: border-box;\n}\n.dataInfo .dataList .action uni-text:nth-child(2) {\n\tborder-left: none;\n\tborder-right: none;\n}\n.buy {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tposition: fixed;\n\tleft: 50%;\n\tbottom: 0;\n\twidth: 95%;\n\t-webkit-transform: translate(-50%, 0);\n\t transform: translate(-50%, 0);\n}\n.buy .checked {\n\tdisplay: flex;\n\talign-items: center;\n}\n.buy .checked uni-text {\n\tfont-size: 25rpx;\n\tcolor: #000;\n\tpadding: 0 12rpx;\n}\n.buy .total {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n}\n.buy .total .price {\n\tpadding-right: 20rpx;\n}\n.buy .total .price uni-text {\n\tfont-size: 27rpx;\n\tcolor: #C8C7CC;\n\tdisplay: inline-block;\n}\n.buy .total .price uni-text:last-child {\n\tcolor: red;\n\tfont-weight: bold;\n}\n.buy .total .bill uni-text {\n\tfont-size: 25rpx;\n\tcolor: #fff;\n\tdisplay: inline-block;\n\tbackground-color: red;\n\tline-height: 70rpx;\n\twidth: 150rpx;\n\ttext-align: center;\n}\n", ""]);
+exports.push([module.i, "\nbody {\n box-sizing: border-box;\n padding-bottom: 10vh;\n}\n.search-bar {\n width: 95%;\n margin: 20rpx auto;\n}\n uni-checkbox .uni-checkbox-input {\n border-radius: 50%;\n}\n uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked {\n border-color: #ddd;\n color: #fff !important;\n background-color: #2dcf8c !important;\n}\n uni-checkbox .uni-checkbox-input {\n border-color: #ddd;\n}\n uni-checkbox .uni-checkbox-input:hover {\n border-color: #ddd;\n}\n.search {\n padding-top: 20rpx;\n}\n.search .searchIput {\n background-color: #e6e6e6;\n width: 95%;\n margin: 0 auto;\n height: 72rpx;\n line-height: 72rpx;\n border-radius: 50rpx;\n padding: 0 32rpx;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n}\n.search .searchIput uni-input {\n font-size: 26rpx;\n width: 100%;\n color: grey;\n}\n.search .searchIput uni-image {\n width: 34rpx;\n height: 34rpx;\n}\n.dataInfo {\n width: 95%;\n margin: 0 auto;\n}\n.dataInfo .dataList {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 2px solid #f1f1f1;\n padding: 25rpx 0;\n}\n.dataInfo .dataList .details {\n display: flex;\n align-items: center;\n flex: 1;\n font-size: 0;\n}\n.dataInfo .dataList .details .img uni-image {\n width: 200rpx;\n height: 140rpx;\n padding: 0 20rpx;\n}\n.dataInfo .dataList .details .text uni-text {\n color: #000;\n font-size: 23rpx;\n display: block;\n padding: 10rpx 0;\n}\n.dataInfo .dataList .details .text {\n color: red;\n font-size: 25rpx;\n}\n.dataInfo .dataList .action uni-text {\n font-size: 25rpx;\n color: #000;\n border: 1px solid #c8c7cc;\n display: inline-block;\n line-height: 50rpx;\n width: 60rpx;\n text-align: center;\n box-sizing: border-box;\n}\n.dataInfo .dataList .action uni-text:nth-child(2) {\n border-left: none;\n border-right: none;\n}\n.buy {\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: fixed;\n left: 50%;\n bottom: 0;\n width: 95%;\n -webkit-transform: translate(-50%, 0);\n transform: translate(-50%, 0);\n}\n.buy .checked {\n display: flex;\n align-items: center;\n}\n.buy .checked uni-text {\n font-size: 25rpx;\n color: #000;\n padding: 0 12rpx;\n}\n.buy .total {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.buy .total .price {\n padding-right: 20rpx;\n}\n.buy .total .price uni-text {\n font-size: 27rpx;\n color: #c8c7cc;\n display: inline-block;\n}\n.buy .total .price uni-text:last-child {\n color: red;\n font-weight: bold;\n}\n.buy .total .bill uni-text {\n font-size: 25rpx;\n color: #fff;\n display: inline-block;\n background-color: red;\n line-height: 70rpx;\n width: 150rpx;\n text-align: center;\n}\n", ""]);
// Exports
module.exports = exports;