rk
2026-05-13 f52355f9be7f130b6f4655c05418d5dc3cbe4d2f
app/unpackage/dist/dev/app-plus/app-service.js
@@ -7,7 +7,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\n__webpack_require__(/*! uni-pages */ 6);\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 175));\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 185));\nvar _uviewUi = _interopRequireDefault(__webpack_require__(/*! uview-ui */ 186));\nvar _index = _interopRequireDefault(__webpack_require__(/*! ./store/index.js */ 310));\n__webpack_require__(/*! ./uni.promisify.adaptor */ 311);\nvar _httpApi = _interopRequireDefault(__webpack_require__(/*! @/utils/http.api.js */ 312));\nvar _httpInterceptor = _interopRequireDefault(__webpack_require__(/*! @/utils/http.interceptor.js */ 313));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n_vue.default.config.productionTip = false;\n_App.default.mpType = 'app';\n_vue.default.use(_uviewUi.default);\n\n// Vue.prototype.$baseUrl = 'http://192.168.1.4:10011/'\n_vue.default.prototype.$baseUrl = 'https://llfc.lmpro.cn/nyx_web/';\n_vue.default.prototype.$store = _index.default;\nvar app = new _vue.default(_objectSpread({\n  store: _index.default\n}, _App.default));\n\n// http接口API抽离\n\n_vue.default.use(_httpApi.default, app);\n\n// 请求拦截器\n\n_vue.default.use(_httpInterceptor.default, app);\napp.$mount();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJjb25maWciLCJwcm9kdWN0aW9uVGlwIiwiQXBwIiwibXBUeXBlIiwidXNlIiwidVZpZXciLCJwcm90b3R5cGUiLCIkYmFzZVVybCIsIiRzdG9yZSIsInN0b3JlIiwiYXBwIiwiaHR0cEFwaSIsImludGVyY2VwdG9yIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFnQkE7QUFJQTtBQUFxRDtBQUFBO0FBbEJyREEsWUFBRyxDQUFDQyxNQUFNLENBQUNDLGFBQWEsR0FBRyxLQUFLO0FBQ2hDQyxZQUFHLENBQUNDLE1BQU0sR0FBRyxLQUFLO0FBQ2xCSixZQUFHLENBQUNLLEdBQUcsQ0FBQ0MsZ0JBQUssQ0FBQzs7QUFFZDtBQUNBTixZQUFHLENBQUNPLFNBQVMsQ0FBQ0MsUUFBUSxHQUFHLGdDQUFnQztBQUN6RFIsWUFBRyxDQUFDTyxTQUFTLENBQUNFLE1BQU0sR0FBR0MsY0FBSztBQUU1QixJQUFNQyxHQUFHLEdBQUcsSUFBSVgsWUFBRztFQUNsQlUsS0FBSyxFQUFMQTtBQUFLLEdBQ0ZQLFlBQUcsRUFDTDs7QUFFRjs7QUFFQUgsWUFBRyxDQUFDSyxHQUFHLENBQUNPLGdCQUFPLEVBQUVELEdBQUcsQ0FBQzs7QUFFckI7O0FBRUFYLFlBQUcsQ0FBQ0ssR0FBRyxDQUFDUSx3QkFBVyxFQUFFRixHQUFHLENBQUM7QUFFekJBLEdBQUcsQ0FBQ0csTUFBTSxFQUFFIiwiZmlsZSI6IjAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3VuaS1wYWdlcyc7aW1wb3J0IEFwcCBmcm9tICcuL0FwcCdcclxuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXHJcbmltcG9ydCB1VmlldyBmcm9tIFwidXZpZXctdWlcIjtcclxuaW1wb3J0IHN0b3JlIGZyb20gJy4vc3RvcmUvaW5kZXguanMnXHJcbmltcG9ydCAnLi91bmkucHJvbWlzaWZ5LmFkYXB0b3InXHJcblxyXG5WdWUuY29uZmlnLnByb2R1Y3Rpb25UaXAgPSBmYWxzZVxyXG5BcHAubXBUeXBlID0gJ2FwcCdcclxuVnVlLnVzZSh1Vmlldyk7XHJcbiBcclxuLy8gVnVlLnByb3RvdHlwZS4kYmFzZVVybCA9ICdodHRwOi8vMTkyLjE2OC4xLjQ6MTAwMTEvJ1xyXG5WdWUucHJvdG90eXBlLiRiYXNlVXJsID0gJ2h0dHBzOi8vbGxmYy5sbXByby5jbi9ueXhfd2ViLydcclxuVnVlLnByb3RvdHlwZS4kc3RvcmUgPSBzdG9yZTtcclxuXHJcbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xyXG5cdHN0b3JlLFxyXG5cdC4uLkFwcFxyXG59KVxyXG5cclxuLy8gaHR0cOaOpeWPo0FQSeaKveemu1xyXG5pbXBvcnQgaHR0cEFwaSBmcm9tICdAL3V0aWxzL2h0dHAuYXBpLmpzJ1xyXG5WdWUudXNlKGh0dHBBcGksIGFwcClcclxuXHJcbi8vIOivt+axguaLpuaIquWZqFxyXG5pbXBvcnQgaW50ZXJjZXB0b3IgZnJvbSAnQC91dGlscy9odHRwLmludGVyY2VwdG9yLmpzJ1xyXG5WdWUudXNlKGludGVyY2VwdG9yLCBhcHApXHJcblxyXG5hcHAuJG1vdW50KCkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n");
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\n__webpack_require__(/*! uni-pages */ 6);\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 175));\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 185));\nvar _uviewUi = _interopRequireDefault(__webpack_require__(/*! uview-ui */ 186));\nvar _index = _interopRequireDefault(__webpack_require__(/*! ./store/index.js */ 310));\n__webpack_require__(/*! ./uni.promisify.adaptor */ 311);\nvar _httpApi = _interopRequireDefault(__webpack_require__(/*! @/utils/http.api.js */ 312));\nvar _httpInterceptor = _interopRequireDefault(__webpack_require__(/*! @/utils/http.interceptor.js */ 313));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n_vue.default.config.productionTip = false;\n_App.default.mpType = 'app';\n_vue.default.use(_uviewUi.default);\n_vue.default.prototype.$baseUrl = 'http://192.168.1.22:10011/';\n// Vue.prototype.$baseUrl = 'https://llfc.lmpro.cn/nyx_web/'\n_vue.default.prototype.$store = _index.default;\nvar app = new _vue.default(_objectSpread({\n  store: _index.default\n}, _App.default));\n\n// http接口API抽离\n\n_vue.default.use(_httpApi.default, app);\n\n// 请求拦截器\n\n_vue.default.use(_httpInterceptor.default, app);\napp.$mount();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJjb25maWciLCJwcm9kdWN0aW9uVGlwIiwiQXBwIiwibXBUeXBlIiwidXNlIiwidVZpZXciLCJwcm90b3R5cGUiLCIkYmFzZVVybCIsIiRzdG9yZSIsInN0b3JlIiwiYXBwIiwiaHR0cEFwaSIsImludGVyY2VwdG9yIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFnQkE7QUFJQTtBQUFxRDtBQUFBO0FBbEJyREEsWUFBRyxDQUFDQyxNQUFNLENBQUNDLGFBQWEsR0FBRyxLQUFLO0FBQ2hDQyxZQUFHLENBQUNDLE1BQU0sR0FBRyxLQUFLO0FBQ2xCSixZQUFHLENBQUNLLEdBQUcsQ0FBQ0MsZ0JBQUssQ0FBQztBQUVkTixZQUFHLENBQUNPLFNBQVMsQ0FBQ0MsUUFBUSxHQUFHLDRCQUE0QjtBQUNyRDtBQUNBUixZQUFHLENBQUNPLFNBQVMsQ0FBQ0UsTUFBTSxHQUFHQyxjQUFLO0FBRTVCLElBQU1DLEdBQUcsR0FBRyxJQUFJWCxZQUFHO0VBQ2xCVSxLQUFLLEVBQUxBO0FBQUssR0FDRlAsWUFBRyxFQUNMOztBQUVGOztBQUVBSCxZQUFHLENBQUNLLEdBQUcsQ0FBQ08sZ0JBQU8sRUFBRUQsR0FBRyxDQUFDOztBQUVyQjs7QUFFQVgsWUFBRyxDQUFDSyxHQUFHLENBQUNRLHdCQUFXLEVBQUVGLEdBQUcsQ0FBQztBQUV6QkEsR0FBRyxDQUFDRyxNQUFNLEVBQUUiLCJmaWxlIjoiMC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAndW5pLXBhZ2VzJztpbXBvcnQgQXBwIGZyb20gJy4vQXBwJ1xyXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcclxuaW1wb3J0IHVWaWV3IGZyb20gXCJ1dmlldy11aVwiO1xyXG5pbXBvcnQgc3RvcmUgZnJvbSAnLi9zdG9yZS9pbmRleC5qcydcclxuaW1wb3J0ICcuL3VuaS5wcm9taXNpZnkuYWRhcHRvcidcclxuXHJcblZ1ZS5jb25maWcucHJvZHVjdGlvblRpcCA9IGZhbHNlXHJcbkFwcC5tcFR5cGUgPSAnYXBwJ1xyXG5WdWUudXNlKHVWaWV3KTtcclxuIFxyXG5WdWUucHJvdG90eXBlLiRiYXNlVXJsID0gJ2h0dHA6Ly8xOTIuMTY4LjEuMjI6MTAwMTEvJ1xyXG4vLyBWdWUucHJvdG90eXBlLiRiYXNlVXJsID0gJ2h0dHBzOi8vbGxmYy5sbXByby5jbi9ueXhfd2ViLydcclxuVnVlLnByb3RvdHlwZS4kc3RvcmUgPSBzdG9yZTtcclxuXHJcbmNvbnN0IGFwcCA9IG5ldyBWdWUoe1xyXG5cdHN0b3JlLFxyXG5cdC4uLkFwcFxyXG59KVxyXG5cclxuLy8gaHR0cOaOpeWPo0FQSeaKveemu1xyXG5pbXBvcnQgaHR0cEFwaSBmcm9tICdAL3V0aWxzL2h0dHAuYXBpLmpzJ1xyXG5WdWUudXNlKGh0dHBBcGksIGFwcClcclxuXHJcbi8vIOivt+axguaLpuaIquWZqFxyXG5pbXBvcnQgaW50ZXJjZXB0b3IgZnJvbSAnQC91dGlscy9odHRwLmludGVyY2VwdG9yLmpzJ1xyXG5WdWUudXNlKGludGVyY2VwdG9yLCBhcHApXHJcblxyXG5hcHAuJG1vdW50KCkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n");
/***/ }),
/* 1 */
@@ -2870,10 +2870,18 @@
                                            attrs: { _i: "71-" + $34 },
                                          },
                                          [
                                            _c("text", {
                                              staticClass: _vm._$s(
                                                "72-" + $34,
                                                "sc",
                                                "order-card__route-badge-text order-card__route-badge-text--take"
                                              ),
                                              attrs: { _i: "72-" + $34 },
                                            }),
                                            _vm._v(
                                              _vm._$s(
                                                "71-" + $34,
                                                "t0-0",
                                                "t1-0",
                                                _vm._s(item.depositShopName)
                                              )
                                            ),
@@ -2883,16 +2891,16 @@
                                          "text",
                                          {
                                            staticClass: _vm._$s(
                                              "72-" + $34,
                                              "73-" + $34,
                                              "sc",
                                              "order-card__route-desc"
                                            ),
                                            attrs: { _i: "72-" + $34 },
                                            attrs: { _i: "73-" + $34 },
                                          },
                                          [
                                            _vm._v(
                                              _vm._$s(
                                                "72-" + $34,
                                                "73-" + $34,
                                                "t0-0",
                                                _vm._s(item.depositShopAddress)
                                              )
@@ -2903,11 +2911,11 @@
                                    ),
                                    _c("image", {
                                      staticClass: _vm._$s(
                                        "73-" + $34,
                                        "74-" + $34,
                                        "sc",
                                        "order-card__nav"
                                      ),
                                      attrs: { _i: "73-" + $34 },
                                      attrs: { _i: "74-" + $34 },
                                      on: {
                                        click: function ($event) {
                                          $event.stopPropagation()
@@ -2924,26 +2932,26 @@
                                  "view",
                                  {
                                    staticClass: _vm._$s(
                                      "74-" + $34,
                                      "75-" + $34,
                                      "sc",
                                      "order-card__route-item order-card__route-item--destination"
                                    ),
                                    attrs: { _i: "74-" + $34 },
                                    attrs: { _i: "75-" + $34 },
                                  },
                                  [
                                    _c(
                                      "view",
                                      {
                                        staticClass: _vm._$s(
                                          "75-" + $34,
                                          "76-" + $34,
                                          "sc",
                                          "order-card__route-texts"
                                        ),
                                        attrs: { _i: "75-" + $34 },
                                        attrs: { _i: "76-" + $34 },
                                      },
                                      [
                                        _vm._$s(
                                          "76-" + $34,
                                          "77-" + $34,
                                          "i",
                                          item.takeShopId
                                        )
@@ -2952,17 +2960,25 @@
                                                "text",
                                                {
                                                  staticClass: _vm._$s(
                                                    "77-" + $34,
                                                    "78-" + $34,
                                                    "sc",
                                                    "order-card__route-title"
                                                  ),
                                                  attrs: { _i: "77-" + $34 },
                                                  attrs: { _i: "78-" + $34 },
                                                },
                                                [
                                                  _c("text", {
                                                    staticClass: _vm._$s(
                                                      "79-" + $34,
                                                      "sc",
                                                      "order-card__route-badge-text order-card__route-badge-text--send"
                                                    ),
                                                    attrs: { _i: "79-" + $34 },
                                                  }),
                                                  _vm._v(
                                                    _vm._$s(
                                                      "77-" + $34,
                                                      "t0-0",
                                                      "78-" + $34,
                                                      "t1-0",
                                                      _vm._s(item.takeName)
                                                    )
                                                  ),
@@ -2972,16 +2988,16 @@
                                                "text",
                                                {
                                                  staticClass: _vm._$s(
                                                    "78-" + $34,
                                                    "80-" + $34,
                                                    "sc",
                                                    "order-card__route-desc"
                                                  ),
                                                  attrs: { _i: "78-" + $34 },
                                                  attrs: { _i: "80-" + $34 },
                                                },
                                                [
                                                  _vm._v(
                                                    _vm._$s(
                                                      "78-" + $34,
                                                      "80-" + $34,
                                                      "t0-0",
                                                      _vm._s(item.takeAddress)
                                                    )
@@ -2993,17 +3009,25 @@
                                              "text",
                                              {
                                                staticClass: _vm._$s(
                                                  "79-" + $34,
                                                  "81-" + $34,
                                                  "sc",
                                                  "order-card__route-title"
                                                ),
                                                attrs: { _i: "79-" + $34 },
                                                attrs: { _i: "81-" + $34 },
                                              },
                                              [
                                                _c("text", {
                                                  staticClass: _vm._$s(
                                                    "82-" + $34,
                                                    "sc",
                                                    "order-card__route-badge-text order-card__route-badge-text--send"
                                                  ),
                                                  attrs: { _i: "82-" + $34 },
                                                }),
                                                _vm._v(
                                                  _vm._$s(
                                                    "79-" + $34,
                                                    "t0-0",
                                                    "81-" + $34,
                                                    "t1-0",
                                                    _vm._s(item.takeAddress)
                                                  )
                                                ),
@@ -3014,11 +3038,11 @@
                                    ),
                                    _c("image", {
                                      staticClass: _vm._$s(
                                        "80-" + $34,
                                        "83-" + $34,
                                        "sc",
                                        "order-card__nav"
                                      ),
                                      attrs: { _i: "80-" + $34 },
                                      attrs: { _i: "83-" + $34 },
                                      on: {
                                        click: function ($event) {
                                          $event.stopPropagation()
@@ -3036,7 +3060,7 @@
                          ]
                        ),
                        _vm._$s(
                          "81-" + $34,
                          "84-" + $34,
                          "i",
                          item.items && item.items.length > 0
                        )
@@ -3044,11 +3068,11 @@
                              "view",
                              {
                                staticClass: _vm._$s(
                                  "81-" + $34,
                                  "84-" + $34,
                                  "sc",
                                  "order-card__goods"
                                ),
                                attrs: { _i: "81-" + $34 },
                                attrs: { _i: "84-" + $34 },
                                on: {
                                  click: function ($event) {
                                    $event.stopPropagation()
@@ -3061,16 +3085,16 @@
                                  "text",
                                  {
                                    staticClass: _vm._$s(
                                      "82-" + $34,
                                      "85-" + $34,
                                      "sc",
                                      "order-card__goods-text"
                                    ),
                                    attrs: { _i: "82-" + $34 },
                                    attrs: { _i: "85-" + $34 },
                                  },
                                  [
                                    _vm._v(
                                      _vm._$s(
                                        "82-" + $34,
                                        "85-" + $34,
                                        "t0-0",
                                        _vm._s(
                                          _vm.getGoodsText(item.items, item.id)
@@ -3080,13 +3104,13 @@
                                  ]
                                ),
                                _vm._$s(
                                  "83-" + $34,
                                  "86-" + $34,
                                  "i",
                                  _vm.getGoodsText(item.items, item.id).length >
                                    20
                                )
                                  ? _c("u-icon", {
                                      class: _vm._$s("83-" + $34, "c", {
                                      class: _vm._$s("86-" + $34, "c", {
                                        "order-card__goods-arrow--expanded":
                                          _vm.expandedGoodsIds.includes(
                                            item.id
@@ -3096,7 +3120,7 @@
                                        name: "arrow-down",
                                        size: "12",
                                        color: "#a4a9b1",
                                        _i: "83-" + $34,
                                        _i: "86-" + $34,
                                      },
                                    })
                                  : _vm._e(),
@@ -3108,20 +3132,20 @@
                          "view",
                          {
                            staticClass: _vm._$s(
                              "84-" + $34,
                              "87-" + $34,
                              "sc",
                              "order-card__actions"
                            ),
                            class: _vm._$s(
                              "84-" + $34,
                              "87-" + $34,
                              "c",
                              "order-card__actions--" + _vm.activeTab
                            ),
                            attrs: { _i: "84-" + $34 },
                            attrs: { _i: "87-" + $34 },
                          },
                          [
                            _vm._$s(
                              "85-" + $34,
                              "88-" + $34,
                              "i",
                              _vm.activeTab === "pickup"
                            )
@@ -3130,48 +3154,13 @@
                                    "view",
                                    {
                                      staticClass: _vm._$s(
                                        "86-" + $34,
                                        "89-" + $34,
                                        "sc",
                                        "order-card__icon-actions"
                                      ),
                                      attrs: { _i: "86-" + $34 },
                                      attrs: { _i: "89-" + $34 },
                                    },
                                    [
                                      _c(
                                        "view",
                                        {
                                          staticClass: _vm._$s(
                                            "87-" + $34,
                                            "sc",
                                            "order-card__icon-action"
                                          ),
                                          attrs: { _i: "87-" + $34 },
                                          on: {
                                            click: function ($event) {
                                              $event.stopPropagation()
                                              return _vm.handleCancelOrder(item)
                                            },
                                          },
                                        },
                                        [
                                          _c("image", {
                                            staticClass: _vm._$s(
                                              "88-" + $34,
                                              "sc",
                                              "order-card__action-icon"
                                            ),
                                            attrs: { _i: "88-" + $34 },
                                          }),
                                          _c("text", {
                                            staticClass: _vm._$s(
                                              "89-" + $34,
                                              "sc",
                                              "order-card__action-text"
                                            ),
                                            attrs: { _i: "89-" + $34 },
                                          }),
                                        ]
                                      ),
                                      _c(
                                        "view",
                                        {
@@ -3184,7 +3173,7 @@
                                          on: {
                                            click: function ($event) {
                                              $event.stopPropagation()
                                              return _vm.handleCall(item)
                                              return _vm.handleCancelOrder(item)
                                            },
                                          },
                                        },
@@ -3207,49 +3196,15 @@
                                          }),
                                        ]
                                      ),
                                    ]
                                  ),
                                  _c("button", {
                                    staticClass: _vm._$s(
                                      "93-" + $34,
                                      "sc",
                                      "order-card__button order-card__button--code"
                                    ),
                                    attrs: { _i: "93-" + $34 },
                                    on: {
                                      click: function ($event) {
                                        $event.stopPropagation()
                                        return _vm.handleShowPickupCode(item)
                                      },
                                    },
                                  }),
                                ]
                              : _vm._$s(
                                  "94-" + $34,
                                  "e",
                                  _vm.activeTab === "delivering"
                                )
                              ? [
                                  _c(
                                    "view",
                                    {
                                      staticClass: _vm._$s(
                                        "95-" + $34,
                                        "sc",
                                        "order-card__icon-actions order-card__icon-actions--single"
                                      ),
                                      attrs: { _i: "95-" + $34 },
                                    },
                                    [
                                      _c(
                                        "view",
                                        {
                                          staticClass: _vm._$s(
                                            "96-" + $34,
                                            "93-" + $34,
                                            "sc",
                                            "order-card__icon-action"
                                          ),
                                          attrs: { _i: "96-" + $34 },
                                          attrs: { _i: "93-" + $34 },
                                          on: {
                                            click: function ($event) {
                                              $event.stopPropagation()
@@ -3260,19 +3215,19 @@
                                        [
                                          _c("image", {
                                            staticClass: _vm._$s(
                                              "97-" + $34,
                                              "94-" + $34,
                                              "sc",
                                              "order-card__action-icon"
                                            ),
                                            attrs: { _i: "97-" + $34 },
                                            attrs: { _i: "94-" + $34 },
                                          }),
                                          _c("text", {
                                            staticClass: _vm._$s(
                                              "98-" + $34,
                                              "95-" + $34,
                                              "sc",
                                              "order-card__action-text"
                                            ),
                                            attrs: { _i: "98-" + $34 },
                                            attrs: { _i: "95-" + $34 },
                                          }),
                                        ]
                                      ),
@@ -3280,11 +3235,80 @@
                                  ),
                                  _c("button", {
                                    staticClass: _vm._$s(
                                      "99-" + $34,
                                      "96-" + $34,
                                      "sc",
                                      "order-card__button order-card__button--code"
                                    ),
                                    attrs: { _i: "99-" + $34 },
                                    attrs: { _i: "96-" + $34 },
                                    on: {
                                      click: function ($event) {
                                        $event.stopPropagation()
                                        return _vm.handleShowPickupCode(item)
                                      },
                                    },
                                  }),
                                ]
                              : _vm._$s(
                                  "97-" + $34,
                                  "e",
                                  _vm.activeTab === "delivering"
                                )
                              ? [
                                  _c(
                                    "view",
                                    {
                                      staticClass: _vm._$s(
                                        "98-" + $34,
                                        "sc",
                                        "order-card__icon-actions order-card__icon-actions--single"
                                      ),
                                      attrs: { _i: "98-" + $34 },
                                    },
                                    [
                                      _c(
                                        "view",
                                        {
                                          staticClass: _vm._$s(
                                            "99-" + $34,
                                            "sc",
                                            "order-card__icon-action"
                                          ),
                                          attrs: { _i: "99-" + $34 },
                                          on: {
                                            click: function ($event) {
                                              $event.stopPropagation()
                                              return _vm.handleCall(item)
                                            },
                                          },
                                        },
                                        [
                                          _c("image", {
                                            staticClass: _vm._$s(
                                              "100-" + $34,
                                              "sc",
                                              "order-card__action-icon"
                                            ),
                                            attrs: { _i: "100-" + $34 },
                                          }),
                                          _c("text", {
                                            staticClass: _vm._$s(
                                              "101-" + $34,
                                              "sc",
                                              "order-card__action-text"
                                            ),
                                            attrs: { _i: "101-" + $34 },
                                          }),
                                        ]
                                      ),
                                    ]
                                  ),
                                  _c("button", {
                                    staticClass: _vm._$s(
                                      "102-" + $34,
                                      "sc",
                                      "order-card__button order-card__button--code"
                                    ),
                                    attrs: { _i: "102-" + $34 },
                                    on: {
                                      click: function ($event) {
                                        $event.stopPropagation()
@@ -3295,11 +3319,11 @@
                                ]
                              : _c("button", {
                                  staticClass: _vm._$s(
                                    "100-" + $34,
                                    "103-" + $34,
                                    "sc",
                                    "order-card__button"
                                  ),
                                  attrs: { _i: "100-" + $34 },
                                  attrs: { _i: "103-" + $34 },
                                  on: {
                                    click: function ($event) {
                                      $event.stopPropagation()
@@ -3319,21 +3343,21 @@
            : _c(
                "view",
                {
                  staticClass: _vm._$s(101, "sc", "hall-page__empty"),
                  attrs: { _i: 101 },
                  staticClass: _vm._$s(104, "sc", "hall-page__empty"),
                  attrs: { _i: 104 },
                },
                [
                  _c("image", {
                    staticClass: _vm._$s(102, "sc", "hall-page__empty-icon"),
                    staticClass: _vm._$s(105, "sc", "hall-page__empty-icon"),
                    attrs: {
                      src: _vm._$s(
                        102,
                        105,
                        "a-src",
                        _vm.acceptingStatus === 0
                          ? "/static/image/default_nodata_grey@2x.png"
                          : "/static/image/default_nodata@2x.png"
                      ),
                      _i: 102,
                      _i: 105,
                    },
                  }),
                ]
@@ -3349,7 +3373,7 @@
            cancelColor: "#666666",
            confirmColor: "#0055FF",
            title: "取消订单确认",
            _i: 103,
            _i: 106,
          },
          on: {
            cancel: function ($event) {
@@ -3358,7 +3382,7 @@
            confirm: _vm.confirmCancelOrder,
          },
        },
        [_c("view", [_vm._v(_vm._$s(104, "t0-0", _vm._s(_vm.cancelRemain)))])]
        [_c("view", [_vm._v(_vm._$s(107, "t0-0", _vm._s(_vm.cancelRemain)))])]
      ),
      _c(
        "u-modal",
@@ -3369,7 +3393,7 @@
            cancelColor: "#666666",
            confirmColor: "#0055FF",
            title: "温馨提示",
            _i: 105,
            _i: 108,
          },
          on: {
            cancel: function ($event) {
@@ -3382,7 +3406,7 @@
          _c("view", [
            _vm._v(
              _vm._$s(
                106,
                109,
                "t0-0",
                _vm._s(
                  _vm.selectedGrabOrder &&
@@ -3397,24 +3421,24 @@
      ),
      _c(
        "u-popup",
        { attrs: { show: _vm.show1, round: "20", mode: "bottom", _i: 107 } },
        { attrs: { show: _vm.show1, round: "20", mode: "bottom", _i: 110 } },
        [
          _c(
            "view",
            { staticClass: _vm._$s(108, "sc", "qrcode"), attrs: { _i: 108 } },
            { staticClass: _vm._$s(111, "sc", "qrcode"), attrs: { _i: 111 } },
            [
              _c(
                "view",
                {
                  staticClass: _vm._$s(109, "sc", "qrcode-title"),
                  attrs: { _i: 109 },
                  staticClass: _vm._$s(112, "sc", "qrcode-title"),
                  attrs: { _i: 112 },
                },
                [
                  _c("image", { attrs: { _i: 110 } }),
                  _c("image", { attrs: { _i: 113 } }),
                  _c("text", [
                    _vm._v(
                      _vm._$s(
                        111,
                        114,
                        "t0-0",
                        _vm._s(
                          _vm.activeTab === "delivering" ? "存件码" : "取货码"
@@ -3423,7 +3447,7 @@
                    ),
                  ]),
                  _c("image", {
                    attrs: { _i: 112 },
                    attrs: { _i: 115 },
                    on: {
                      click: function ($event) {
                        _vm.show1 = false
@@ -3435,12 +3459,12 @@
              _c(
                "view",
                {
                  staticClass: _vm._$s(113, "sc", "qrcode-image"),
                  attrs: { _i: 113 },
                  staticClass: _vm._$s(116, "sc", "qrcode-image"),
                  attrs: { _i: 116 },
                },
                [
                  _vm._$s(
                    114,
                    117,
                    "i",
                    _vm.selectedPickupOrder &&
                      _vm.selectedPickupOrder.driverVerifyCode
@@ -3448,20 +3472,20 @@
                    ? _c("image", {
                        attrs: {
                          src: _vm._$s(
                            114,
                            117,
                            "a-src",
                            "https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=" +
                              _vm.selectedPickupOrder.driverVerifyCode
                          ),
                          _i: 114,
                          _i: 117,
                        },
                      })
                    : _vm._e(),
                ]
              ),
              _c("view", {
                staticClass: _vm._$s(115, "sc", "qrcode-btn"),
                attrs: { _i: 115 },
                staticClass: _vm._$s(118, "sc", "qrcode-btn"),
                attrs: { _i: 118 },
                on: {
                  click: function ($event) {
                    _vm.show1 = false
@@ -3479,39 +3503,39 @@
            show: _vm.showPhotoDeliverPopup,
            round: "20",
            mode: "bottom",
            _i: 116,
            _i: 119,
          },
        },
        [
          _c(
            "view",
            {
              staticClass: _vm._$s(117, "sc", "photo-deliver"),
              attrs: { _i: 117 },
              staticClass: _vm._$s(120, "sc", "photo-deliver"),
              attrs: { _i: 120 },
            },
            [
              _c(
                "view",
                {
                  staticClass: _vm._$s(118, "sc", "photo-deliver__header"),
                  attrs: { _i: 118 },
                  staticClass: _vm._$s(121, "sc", "photo-deliver__header"),
                  attrs: { _i: 121 },
                },
                [
                  _c("image", {
                    staticClass: _vm._$s(
                      119,
                      122,
                      "sc",
                      "photo-deliver__close-placeholder"
                    ),
                    attrs: { _i: 119 },
                    attrs: { _i: 122 },
                  }),
                  _c("text", {
                    staticClass: _vm._$s(120, "sc", "photo-deliver__title"),
                    attrs: { _i: 120 },
                    staticClass: _vm._$s(123, "sc", "photo-deliver__title"),
                    attrs: { _i: 123 },
                  }),
                  _c("image", {
                    staticClass: _vm._$s(121, "sc", "photo-deliver__close"),
                    attrs: { _i: 121 },
                    staticClass: _vm._$s(124, "sc", "photo-deliver__close"),
                    attrs: { _i: 124 },
                    on: {
                      click: function ($event) {
                        _vm.showPhotoDeliverPopup = false
@@ -3523,82 +3547,53 @@
              _c(
                "view",
                {
                  staticClass: _vm._$s(122, "sc", "photo-deliver__section"),
                  attrs: { _i: 122 },
                  staticClass: _vm._$s(125, "sc", "photo-deliver__section"),
                  attrs: { _i: 125 },
                },
                [
                  _c(
                    "view",
                    {
                      staticClass: _vm._$s(
                        123,
                        126,
                        "sc",
                        "photo-deliver__label-row"
                      ),
                      attrs: { _i: 123 },
                      attrs: { _i: 126 },
                    },
                    [
                      _c("text", {
                        staticClass: _vm._$s(124, "sc", "photo-deliver__label"),
                        attrs: { _i: 124 },
                        staticClass: _vm._$s(127, "sc", "photo-deliver__label"),
                        attrs: { _i: 127 },
                      }),
                      _c("text", {
                        staticClass: _vm._$s(
                          125,
                          128,
                          "sc",
                          "photo-deliver__required"
                        ),
                        attrs: { _i: 125 },
                        attrs: { _i: 128 },
                      }),
                      _c("text", {
                        staticClass: _vm._$s(126, "sc", "photo-deliver__hint"),
                        attrs: { _i: 126 },
                        staticClass: _vm._$s(129, "sc", "photo-deliver__hint"),
                        attrs: { _i: 129 },
                      }),
                    ]
                  ),
                  _c(
                    "view",
                    {
                      staticClass: _vm._$s(127, "sc", "photo-deliver__photos"),
                      attrs: { _i: 127 },
                      staticClass: _vm._$s(130, "sc", "photo-deliver__photos"),
                      attrs: { _i: 130 },
                    },
                    [
                      _c(
                        "view",
                        {
                          staticClass: _vm._$s(
                            128,
                            "sc",
                            "photo-deliver__upload-card"
                          ),
                          attrs: { _i: 128 },
                        },
                        [
                          _c("image", {
                            staticClass: _vm._$s(
                              129,
                              "sc",
                              "photo-deliver__upload-icon"
                            ),
                            attrs: { _i: 129 },
                          }),
                          _c("text", {
                            staticClass: _vm._$s(
                              130,
                              "sc",
                              "photo-deliver__upload-text"
                            ),
                            attrs: { _i: 130 },
                          }),
                        ]
                      ),
                      _c(
                        "view",
                        {
                          staticClass: _vm._$s(
                            131,
                            "sc",
                            "photo-deliver__preview-card"
                            "photo-deliver__upload-card"
                          ),
                          attrs: { _i: 131 },
                        },
@@ -3607,28 +3602,57 @@
                            staticClass: _vm._$s(
                              132,
                              "sc",
                              "photo-deliver__preview-image"
                              "photo-deliver__upload-icon"
                            ),
                            attrs: { _i: 132 },
                          }),
                          _c("text", {
                            staticClass: _vm._$s(
                              133,
                              "sc",
                              "photo-deliver__upload-text"
                            ),
                            attrs: { _i: 133 },
                          }),
                        ]
                      ),
                      _c(
                        "view",
                        {
                          staticClass: _vm._$s(
                            134,
                            "sc",
                            "photo-deliver__preview-card"
                          ),
                          attrs: { _i: 134 },
                        },
                        [
                          _c("image", {
                            staticClass: _vm._$s(
                              135,
                              "sc",
                              "photo-deliver__preview-image"
                            ),
                            attrs: { _i: 135 },
                          }),
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                133,
                                136,
                                "sc",
                                "photo-deliver__preview-mask"
                              ),
                              attrs: { _i: 133 },
                              attrs: { _i: 136 },
                            },
                            [
                              _c("text", {
                                staticClass: _vm._$s(
                                  134,
                                  137,
                                  "sc",
                                  "photo-deliver__preview-delete"
                                ),
                                attrs: { _i: 134 },
                                attrs: { _i: 137 },
                              }),
                            ]
                          ),
@@ -3642,30 +3666,30 @@
                "view",
                {
                  staticClass: _vm._$s(
                    135,
                    138,
                    "sc",
                    "photo-deliver__section photo-deliver__section--remark"
                  ),
                  attrs: { _i: 135 },
                  attrs: { _i: 138 },
                },
                [
                  _c("text", {
                    staticClass: _vm._$s(
                      136,
                      139,
                      "sc",
                      "photo-deliver__remark-title"
                    ),
                    attrs: { _i: 136 },
                    attrs: { _i: 139 },
                  }),
                  _c("textarea", {
                    staticClass: _vm._$s(137, "sc", "photo-deliver__textarea"),
                    attrs: { _i: 137 },
                    staticClass: _vm._$s(140, "sc", "photo-deliver__textarea"),
                    attrs: { _i: 140 },
                  }),
                ]
              ),
              _c("button", {
                staticClass: _vm._$s(138, "sc", "photo-deliver__submit"),
                attrs: { _i: 138 },
                staticClass: _vm._$s(141, "sc", "photo-deliver__submit"),
                attrs: { _i: 141 },
                on: {
                  click: function ($event) {
                    _vm.showPhotoDeliverPopup = false
@@ -3682,7 +3706,7 @@
          confirmColor: "#10B2FA",
          keyName: "text",
          columns: [_vm.statusOptions],
          _i: 139,
          _i: 142,
        },
        on: {
          confirm: _vm.confirmStatus,
@@ -8596,7 +8620,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n  data: function data() {\n    return {\n      tts: null,\n      show: false,\n      show1: false,\n      showGrabModal: false,\n      selectedGrabOrder: null,\n      selectedCancelOrder: null,\n      cancelRemain: 0,\n      selectedPickupOrder: null,\n      showPhotoDeliverPopup: false,\n      routeInfo: null,\n      statusBarHeight: 0,\n      headerHeight: 0,\n      tabbarHeight: 0,\n      scrollHeight: 0,\n      showFilterPopup: false,\n      acceptingStatus: 0,\n      showStatusPicker: false,\n      statusOptions: [{\n        text: '上线',\n        value: 1\n      }, {\n        text: '下线',\n        value: 0\n      }],\n      centerUserInfo: {},\n      activeTab: 'hall',\n      expandedGoodsIds: [],\n      categoryList: [],\n      filterSections: [{\n        key: 'sort',\n        title: '排序',\n        options: ['综合排序', '距离最近']\n      }, {\n        key: 'level',\n        title: '物品等级',\n        options: ['不限']\n      }, {\n        key: 'distance',\n        title: '位置范围',\n        options: ['不限', '500m', '1km', '2km', '3km', '4km', '5km', '6km', '7km']\n      }],\n      selectedFilters: {\n        sort: '综合排序',\n        level: '不限',\n        distance: '不限'\n      },\n      stats: [{\n        value: '-',\n        label: '服务分'\n      }, {\n        value: '-',\n        label: '今日预计佣金'\n      }, {\n        value: '-',\n        label: '今日接单'\n      }],\n      tabs: [{\n        label: '抢单大厅',\n        value: 'hall'\n      }, {\n        label: '待取货',\n        value: 'pickup'\n      }, {\n        label: '配送中',\n        value: 'delivering'\n      }],\n      orderList: [],\n      pickupOrderList: [],\n      deliveringOrderList: [],\n      hallPage: 1,\n      hallPageSize: 10,\n      hallLoading: false,\n      hallHasMore: true,\n      pickupLoading: false,\n      deliveringLoading: false,\n      activeOrderCount: null\n    };\n  },\n  watch: {\n    activeTab: function activeTab(newVal) {\n      this.loadOrdersByTab(newVal);\n    }\n  },\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    var safeBottom = systemInfo.safeAreaInsets ? systemInfo.safeAreaInsets.bottom || 0 : 0;\n    var windowHeight = systemInfo.windowHeight || 0;\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.headerHeight = this.statusBarHeight + uni.upx2px(308);\n    this.tabbarHeight = uni.upx2px(100) + safeBottom;\n    this.scrollHeight = Math.max(windowHeight - this.headerHeight, 0);\n    if (this.userInfo.auditStatus === 99) return;\n    this.acceptingStatus = this.userInfo.acceptingStatus || 0;\n    this.loadOrdersByTab(this.activeTab);\n  },\n  onShow: function onShow() {\n    this.getCenterInfo();\n    this.getCategoryListData();\n    this.getActiveOrderCount();\n  },\n  onReachBottom: function onReachBottom() {\n    if (this.acceptingStatus === 0) return;\n    if (this.activeTab === 'hall') {\n      this.hallPage++;\n      this.getHallOrders();\n    }\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])), {}, {\n    displayTabs: function displayTabs() {\n      var _this = this;\n      return this.tabs.map(function (tab) {\n        if (tab.value === 'pickup') {\n          var _this$activeOrderCoun;\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            count: (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount\n          });\n        } else if (tab.value === 'delivering') {\n          var _this$activeOrderCoun2;\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            count: (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount\n          });\n        }\n        return tab;\n      });\n    },\n    currentOrderList: function currentOrderList() {\n      var orderMap = {\n        hall: this.orderList,\n        pickup: this.pickupOrderList,\n        delivering: this.deliveringOrderList\n      };\n      return orderMap[this.activeTab] || [];\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.headerHeight + 'px',\n        height: this.scrollHeight + 'px'\n      };\n    }\n  }),\n  onReady: function onReady() {\n    this.initTTS(); // 页面渲染完成初始化语音\n  },\n\n  methods: {\n    formatRemainTime: function formatRemainTime(minutes) {\n      if (!minutes) return 0;\n      if (minutes === 0) {\n        return '配送已超时';\n      }\n      if (minutes >= 60) {\n        return (minutes / 60).toFixed(2) + '小时内';\n      }\n      return minutes + '分钟内';\n    },\n    getGoodsText: function getGoodsText(items, itemId) {\n      if (!items || items.length === 0) return '无';\n      var text = items.map(function (i) {\n        return \"\".concat(i.name, \"*\").concat(i.quantity);\n      }).join('、');\n      if (text.length > 20 && !this.expandedGoodsIds.includes(itemId)) {\n        return text.substring(0, 20) + '...';\n      }\n      return text;\n    },\n    toggleGoodsExpand: function toggleGoodsExpand(id) {\n      var index = this.expandedGoodsIds.indexOf(id);\n      if (index > -1) {\n        this.expandedGoodsIds.splice(index, 1);\n      } else {\n        this.expandedGoodsIds.push(id);\n      }\n    },\n    formatDistanceParts: function formatDistanceParts(distance) {\n      if (distance === null || distance === undefined || distance === '') {\n        return {\n          value: '--',\n          unit: ''\n        };\n      }\n      if (typeof distance === 'number') {\n        if (distance >= 1000) {\n          return {\n            value: (distance / 1000).toFixed(1),\n            unit: 'km'\n          };\n        }\n        return {\n          value: String(Math.round(distance)),\n          unit: 'm'\n        };\n      }\n      var text = String(distance).trim();\n      var match = text.match(/^([\\d.]+)\\s*([a-zA-Z\\u4e00-\\u9fa5]*)$/);\n      if (match) {\n        return {\n          value: match[1],\n          unit: match[2] || ''\n        };\n      }\n      return {\n        value: text,\n        unit: ''\n      };\n    },\n    navigateToAddress: function navigateToAddress(item, type) {\n      var latitude, longitude, name, address;\n      if (type === 'deposit') {\n        latitude = item.depositLat;\n        longitude = item.depositLng;\n        name = item.depositShopName;\n        address = item.depositShopAddress;\n      } else {\n        latitude = item.takeLat;\n        longitude = item.takeLng;\n        name = item.takeName;\n        address = item.takeAddress;\n      }\n      if (!latitude || !longitude) {\n        uni.showToast({\n          title: '地址坐标缺失',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.openLocation({\n        latitude: latitude,\n        longitude: longitude,\n        name: name,\n        address: address,\n        success: function success() {},\n        fail: function fail(err) {\n          uni.showToast({\n            title: '打开地图失败',\n            icon: 'none'\n          });\n          __f__(\"error\", 'openLocation fail:', err, \" at pages/index/index.vue:473\");\n        }\n      });\n    },\n    handleUserClick: function handleUserClick() {\n      uni.navigateTo({\n        url: '/pages/test/test'\n      });\n    },\n    getActiveOrderCount: function getActiveOrderCount() {\n      var _this2 = this;\n      this.$u.api.activeOrderCount().then(function (res) {\n        if (res.code === 200) {\n          _this2.activeOrderCount = res.data;\n        }\n      }).catch(function (err) {\n        _this2.activeOrderCount = null;\n      });\n    },\n    handleGrabOrder: function handleGrabOrder(item) {\n      __f__(\"log\", item, \" at pages/index/index.vue:494\");\n      this.selectedGrabOrder = item;\n      this.showGrabModal = true;\n    },\n    confirmGrabOrder: function confirmGrabOrder() {\n      var _this3 = this;\n      if (!this.selectedGrabOrder) return;\n      this.$u.api.grabOrder({\n        orderId: this.selectedGrabOrder.id\n      }).then(function (res) {\n        _this3.showGrabModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '抢单成功',\n            icon: 'success'\n          });\n          _this3.hallPage = 1;\n          _this3.hallHasMore = true;\n          _this3.orderList = [];\n          _this3.getHallOrders();\n          _this3.getActiveOrderCount();\n          _this3.getCenterInfo();\n        } else {\n          uni.showToast({\n            title: res.message || '抢单失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this3.showGrabModal = false;\n      });\n    },\n    handleCancelOrder: function handleCancelOrder(item) {\n      var _this4 = this;\n      this.selectedCancelOrder = item;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this4.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this4.show = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this5 = this;\n      if (!this.selectedCancelOrder) return;\n      this.$u.api.cancelOrder({\n        orderId: this.selectedCancelOrder.id\n      }).then(function (res) {\n        _this5.show = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this5.getPickupOrders();\n          _this5.getCenterInfo();\n          _this5.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.message || '取消失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this5.show = false;\n      });\n    },\n    handleCall: function handleCall(item) {\n      if (item.contactPhone) {\n        uni.makePhoneCall({\n          phoneNumber: item.contactPhone\n        });\n      }\n    },\n    handleShowPickupCode: function handleShowPickupCode(item) {\n      this.selectedPickupOrder = item;\n      this.show1 = true;\n    },\n    goToOrderDetail: function goToOrderDetail(item, index) {\n      var url = \"/pages/order-detail/order-detail?id=\".concat(item.id);\n      if (this.activeTab === 'pickup' || this.activeTab === 'delivering') {\n        url += \"&index=\".concat(index + 1);\n      }\n      uni.navigateTo({\n        url: url\n      });\n    },\n    getCenterInfo: function getCenterInfo() {\n      var _this6 = this;\n      this.$u.api.centerInfo().then(function (res) {\n        if (res.code === 200) {\n          _this6.acceptingStatus = res.data.acceptingStatus;\n          _this6.centerUserInfo = {\n            fullImgUrl: res.data.fullImgUrl,\n            name: res.data.name\n          };\n          _this6.stats = [{\n            value: res.data.score,\n            label: '服务分'\n          }, {\n            value: (res.data.todayCommission / 100 || 0).toFixed(2),\n            label: '今日预计佣金'\n          }, {\n            value: res.data.todayOrderCount,\n            label: '今日接单'\n          }];\n        }\n      });\n    },\n    getCategoryListData: function getCategoryListData() {\n      var _this7 = this;\n      this.$u.api.getCategoryList({\n        type: 3\n      }).then(function (res) {\n        if (res.code === 200) {\n          _this7.categoryList = res.data || [];\n          _this7.filterSections.forEach(function (section) {\n            if (section.key === 'level') {\n              section.options = ['不限'].concat((0, _toConsumableArray2.default)(_this7.categoryList.map(function (item) {\n                return item.name;\n              })));\n            }\n          });\n        }\n      });\n    },\n    loadOrdersByTab: function loadOrdersByTab(tab) {\n      if (this.userInfo.auditStatus === 99) return;\n      if (this.acceptingStatus === 0) return;\n      if (tab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      } else if (tab === 'pickup') {\n        this.pickupOrderList = [];\n        this.getPickupOrders();\n      } else if (tab === 'delivering') {\n        this.deliveringOrderList = [];\n        this.getDeliveringOrders();\n      }\n    },\n    getHallOrders: function getHallOrders() {\n      var _this8 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.hallLoading || !this.hallHasMore) {\n        return;\n      }\n      this.hallLoading = true;\n      var distance = null;\n      if (this.selectedFilters.distance !== '不限') {\n        var distanceText = this.selectedFilters.distance;\n        if (distanceText.includes('km')) {\n          distance = parseInt(distanceText) * 1000;\n        } else {\n          distance = parseInt(distanceText);\n        }\n      }\n      var sortTypeMap = {\n        '综合排序': 1,\n        '距离最近': 2\n      };\n      var sortType = this.selectedFilters.sort !== '不限' ? sortTypeMap[this.selectedFilters.sort] || null : null;\n      var gradeId = null;\n      if (this.selectedFilters.level !== '不限') {\n        var selectedCategory = this.categoryList.find(function (item) {\n          return item.name === _this8.selectedFilters.level;\n        });\n        if (selectedCategory) {\n          gradeId = selectedCategory.id;\n        }\n      }\n      __f__(\"log\", '接单大厅:', {\n        distance: distance,\n        gradeId: gradeId,\n        sortType: sortType\n      }, \" at pages/index/index.vue:646\");\n      this.$u.api.grabOrderHall({\n        capacity: this.hallPageSize,\n        page: this.hallPage,\n        model: {\n          distance: distance,\n          gradeId: gradeId,\n          sortType: sortType\n        }\n      }).then(function (res) {\n        __f__(\"log\", '接单大厅', res, \" at pages/index/index.vue:656\");\n        _this8.hallLoading = false;\n        if (res.code === 200) {\n          var list = res.data.records || [];\n          _this8.orderList = _this8.hallPage === 1 ? list : _this8.orderList.concat(list);\n          _this8.hallHasMore = list.length >= _this8.hallPageSize;\n        }\n      }).catch(function (err) {\n        _this8.hallLoading = false;\n      });\n    },\n    getPickupOrders: function getPickupOrders() {\n      var _this9 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.pickupLoading) return;\n      this.pickupLoading = true;\n      this.$u.api.activeOrders({\n        status: 3\n      }).then(function (res) {\n        __f__(\"log\", '待取货:', res, \" at pages/index/index.vue:673\");\n        _this9.pickupLoading = false;\n        if (res.code === 200) {\n          _this9.pickupOrderList = res.data.records || res.data || [];\n        }\n      }).catch(function (err) {\n        _this9.pickupLoading = false;\n      });\n    },\n    getDeliveringOrders: function getDeliveringOrders() {\n      var _this10 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.deliveringLoading) return;\n      this.deliveringLoading = true;\n      this.$u.api.activeOrders({\n        status: 4\n      }).then(function (res) {\n        __f__(\"log\", '配送中:', res, \" at pages/index/index.vue:688\");\n        _this10.deliveringLoading = false;\n        if (res.code === 200) {\n          _this10.deliveringOrderList = res.data || [];\n        }\n      }).catch(function (err) {\n        _this10.deliveringLoading = false;\n      });\n    },\n    openStatusPicker: function openStatusPicker() {\n      this.showStatusPicker = true;\n    },\n    confirmStatus: function confirmStatus(e) {\n      var _this11 = this;\n      this.showStatusPicker = false;\n      var selectedValue = e.value[0];\n      this.$u.api.updateAcceptingStatus({\n        status: selectedValue.value\n      }).then(function (res) {\n        if (res.code === 200) {\n          _this11.acceptingStatus = selectedValue.value;\n          _this11.getCenterInfo();\n          if (_this11.acceptingStatus === 0) {\n            _this11.orderList = [];\n            _this11.pickupOrderList = [];\n            _this11.deliveringOrderList = [];\n          } else {\n            if (_this11.activeTab === 'pickup') {\n              _this11.getPickupOrders();\n            } else if (_this11.activeTab === 'delivering') {\n              _this11.getDeliveringOrders();\n            } else {\n              _this11.hallPage = 1;\n              _this11.hallHasMore = true;\n              _this11.orderList = [];\n              _this11.getHallOrders();\n            }\n          }\n        }\n      });\n    },\n    toDriverCertification: function toDriverCertification() {\n      uni.navigateTo({\n        url: '/pages/driver-certification/driver-certification'\n      });\n    },\n    toggleFilterPopup: function toggleFilterPopup(show) {\n      this.showFilterPopup = show;\n    },\n    selectFilter: function selectFilter(key, option) {\n      this.selectedFilters = _objectSpread(_objectSpread({}, this.selectedFilters), {}, (0, _defineProperty2.default)({}, key, option));\n    },\n    resetFilters: function resetFilters() {\n      this.showFilterPopup = false;\n      if (this.userInfo.auditStatus === 99) return;\n      this.selectedFilters = {\n        sort: '综合排序',\n        level: '不限',\n        distance: '不限'\n      };\n      if (this.activeTab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      }\n    },\n    confirmFilters: function confirmFilters() {\n      this.showFilterPopup = false;\n      if (this.userInfo.auditStatus === 99) {\n        this.hallHasMore = true;\n        return;\n      }\n      if (this.activeTab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      }\n    },\n    initTTS: function initTTS() {\n      var _this12 = this;\n      if (uni.getSystemInfoSync().platform !== 'android') {\n        __f__(\"log\", '仅支持安卓', \" at pages/index/index.vue:778\");\n        return;\n      }\n      try {\n        // 导入安卓原生类\n        var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n        var Locale = plus.android.importClass('java.util.Locale');\n\n        // 创建TTS\n        this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n          onInit: function onInit(status) {\n            if (status == 0) {\n              // 设置中文\n              _this12.tts.setLanguage(Locale.CHINA);\n              __f__(\"log\", '语音初始化成功', \" at pages/index/index.vue:793\");\n            }\n          }\n        });\n      } catch (e) {\n        __f__(\"log\", '初始化失败', e, \" at pages/index/index.vue:798\");\n      }\n    },\n    speak: function speak(text) {\n      if (!this.tts) {\n        uni.showToast({\n          title: '语音未准备好',\n          icon: 'none'\n        });\n        return;\n      }\n      try {\n        // 安卓原生播报(QUEUE_FLUSH = 立即播报,打断上一条)\n        this.tts.speak(text, 0, null);\n      } catch (err) {\n        __f__(\"log\", '播报失败', err, \" at pages/index/index.vue:815\");\n      }\n    },\n    stopSpeak: function stopSpeak() {\n      if (this.tts) this.tts.stop();\n    }\n  },\n  onUnload: function onUnload() {\n    if (this.tts) {\n      this.tts.stop();\n      this.tts.shutdown();\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJ0dHMiLCJzaG93Iiwic2hvdzEiLCJzaG93R3JhYk1vZGFsIiwic2VsZWN0ZWRHcmFiT3JkZXIiLCJzZWxlY3RlZENhbmNlbE9yZGVyIiwiY2FuY2VsUmVtYWluIiwic2VsZWN0ZWRQaWNrdXBPcmRlciIsInNob3dQaG90b0RlbGl2ZXJQb3B1cCIsInJvdXRlSW5mbyIsInN0YXR1c0JhckhlaWdodCIsImhlYWRlckhlaWdodCIsInRhYmJhckhlaWdodCIsInNjcm9sbEhlaWdodCIsInNob3dGaWx0ZXJQb3B1cCIsImFjY2VwdGluZ1N0YXR1cyIsInNob3dTdGF0dXNQaWNrZXIiLCJzdGF0dXNPcHRpb25zIiwidGV4dCIsInZhbHVlIiwiY2VudGVyVXNlckluZm8iLCJhY3RpdmVUYWIiLCJleHBhbmRlZEdvb2RzSWRzIiwiY2F0ZWdvcnlMaXN0IiwiZmlsdGVyU2VjdGlvbnMiLCJrZXkiLCJ0aXRsZSIsIm9wdGlvbnMiLCJzZWxlY3RlZEZpbHRlcnMiLCJzb3J0IiwibGV2ZWwiLCJkaXN0YW5jZSIsInN0YXRzIiwibGFiZWwiLCJ0YWJzIiwib3JkZXJMaXN0IiwicGlja3VwT3JkZXJMaXN0IiwiZGVsaXZlcmluZ09yZGVyTGlzdCIsImhhbGxQYWdlIiwiaGFsbFBhZ2VTaXplIiwiaGFsbExvYWRpbmciLCJoYWxsSGFzTW9yZSIsInBpY2t1cExvYWRpbmciLCJkZWxpdmVyaW5nTG9hZGluZyIsImFjdGl2ZU9yZGVyQ291bnQiLCJ3YXRjaCIsIm9uTG9hZCIsIm9uU2hvdyIsIm9uUmVhY2hCb3R0b20iLCJjb21wdXRlZCIsImRpc3BsYXlUYWJzIiwiY291bnQiLCJjdXJyZW50T3JkZXJMaXN0IiwiaGFsbCIsInBpY2t1cCIsImRlbGl2ZXJpbmciLCJib2R5U3R5bGUiLCJtYXJnaW5Ub3AiLCJoZWlnaHQiLCJvblJlYWR5IiwibWV0aG9kcyIsImZvcm1hdFJlbWFpblRpbWUiLCJnZXRHb29kc1RleHQiLCJ0b2dnbGVHb29kc0V4cGFuZCIsImZvcm1hdERpc3RhbmNlUGFydHMiLCJ1bml0IiwibmF2aWdhdGVUb0FkZHJlc3MiLCJsYXRpdHVkZSIsImxvbmdpdHVkZSIsIm5hbWUiLCJhZGRyZXNzIiwidW5pIiwiaWNvbiIsInN1Y2Nlc3MiLCJmYWlsIiwiaGFuZGxlVXNlckNsaWNrIiwidXJsIiwiZ2V0QWN0aXZlT3JkZXJDb3VudCIsImhhbmRsZUdyYWJPcmRlciIsImNvbmZpcm1HcmFiT3JkZXIiLCJvcmRlcklkIiwiaGFuZGxlQ2FuY2VsT3JkZXIiLCJjb25maXJtQ2FuY2VsT3JkZXIiLCJoYW5kbGVDYWxsIiwicGhvbmVOdW1iZXIiLCJoYW5kbGVTaG93UGlja3VwQ29kZSIsImdvVG9PcmRlckRldGFpbCIsImdldENlbnRlckluZm8iLCJmdWxsSW1nVXJsIiwiZ2V0Q2F0ZWdvcnlMaXN0RGF0YSIsInR5cGUiLCJzZWN0aW9uIiwibG9hZE9yZGVyc0J5VGFiIiwiZ2V0SGFsbE9yZGVycyIsImdyYWRlSWQiLCJzb3J0VHlwZSIsImNhcGFjaXR5IiwicGFnZSIsIm1vZGVsIiwiZ2V0UGlja3VwT3JkZXJzIiwic3RhdHVzIiwiZ2V0RGVsaXZlcmluZ09yZGVycyIsIm9wZW5TdGF0dXNQaWNrZXIiLCJjb25maXJtU3RhdHVzIiwidG9Ecml2ZXJDZXJ0aWZpY2F0aW9uIiwidG9nZ2xlRmlsdGVyUG9wdXAiLCJzZWxlY3RGaWx0ZXIiLCJyZXNldEZpbHRlcnMiLCJjb25maXJtRmlsdGVycyIsImluaXRUVFMiLCJvbkluaXQiLCJzcGVhayIsInN0b3BTcGVhayIsIm9uVW5sb2FkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFzUUE7QUFBQTtBQUFBO0FBQUEsZUFDQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDLGdCQUNBO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEVBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUM7TUFDQUMsaUJBQ0E7UUFBQUM7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRjtRQUFBQztRQUFBQztNQUFBLEVBQ0E7TUFDQUM7UUFDQUM7UUFDQUM7UUFDQUM7TUFDQTtNQUNBQyxRQUNBO1FBQUFiO1FBQUFjO01BQUEsR0FDQTtRQUFBZDtRQUFBYztNQUFBLEdBQ0E7UUFBQWQ7UUFBQWM7TUFBQSxFQUNBO01BQ0FDLE9BQ0E7UUFBQUQ7UUFBQWQ7TUFBQSxHQUNBO1FBQUFjO1FBQUFkO01BQUEsR0FDQTtRQUFBYztRQUFBZDtNQUFBLEVBQ0E7TUFDQWdCO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUVBQztJQUNBeEI7TUFDQTtJQUNBO0VBQ0E7RUFFQXlCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUVBQztJQUNBO0lBQ0E7SUFDQTtFQUNBO0VBRUFDO0lBQ0E7SUFDQTtNQUNBO01BQ0E7SUFDQTtFQUNBO0VBRUFDLDBDQUNBO0lBRUFDO01BQUE7TUFDQTtRQUNBO1VBQUE7VUFDQTtZQUFBQztVQUFBO1FBQ0E7VUFBQTtVQUNBO1lBQUFBO1VBQUE7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUNBO1FBQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7TUFFQTtJQUNBO0lBRUFDO01BQ0E7UUFDQUM7UUFDQUM7TUFDQTtJQUNBO0VBQUEsRUFDQTtFQUVBQztJQUNBO0VBQ0E7O0VBRUFDO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBO01BQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7TUFDQTtRQUFBO01BQUE7TUFDQTtRQUNBO01BQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtRQUNBO1VBQUE3QztVQUFBOEM7UUFBQTtNQUNBO01BRUE7UUFDQTtVQUNBO1lBQUE5QztZQUFBOEM7VUFBQTtRQUNBO1FBQ0E7VUFBQTlDO1VBQUE4QztRQUFBO01BQ0E7TUFFQTtNQUNBO01BQ0E7UUFDQTtVQUNBOUM7VUFDQThDO1FBQ0E7TUFDQTtNQUVBO1FBQUE5QztRQUFBOEM7TUFBQTtJQUNBO0lBRUFDO01BQ0E7TUFDQTtRQUNBQztRQUNBQztRQUNBQztRQUNBQztNQUNBO1FBQ0FIO1FBQ0FDO1FBQ0FDO1FBQ0FDO01BQ0E7TUFDQTtRQUNBQztVQUFBN0M7VUFBQThDO1FBQUE7UUFDQTtNQUNBO01BQ0FEO1FBQ0FKO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FHO1FBQ0FDO1VBQ0FIO1lBQUE3QztZQUFBOEM7VUFBQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFHO01BQ0FKO1FBQ0FLO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUNBO01BQ0E7TUFDQTtJQUNBO0lBRUFDO01BQUE7TUFDQTtNQUNBO1FBQUFDO01BQUE7UUFDQTtRQUNBO1VBQ0FUO1lBQUE3QztZQUFBOEM7VUFBQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtRQUNBO1VBQ0FEO1lBQUE3QztZQUFBOEM7VUFBQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQVM7TUFBQTtNQUNBO01BQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7TUFDQTtRQUFBRjtNQUFBO1FBQ0E7UUFDQTtVQUNBVDtZQUFBN0M7WUFBQThDO1VBQUE7VUFDQTtVQUNBO1VBQ0E7UUFDQTtVQUNBRDtZQUFBN0M7WUFBQThDO1VBQUE7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFXO01BQ0E7UUFDQVo7VUFDQWE7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtNQUNBO1FBQ0FWO01BQ0E7TUFDQUw7UUFBQUs7TUFBQTtJQUNBO0lBRUFXO01BQUE7TUFDQTtRQUNBO1VBQ0E7VUFDQTtZQUNBQztZQUNBbkI7VUFDQTtVQUNBLGdCQUNBO1lBQUFsRDtZQUFBYztVQUFBLEdBQ0E7WUFBQWQ7WUFBQWM7VUFBQSxHQUNBO1lBQUFkO1lBQUFjO1VBQUEsRUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBd0Q7TUFBQTtNQUNBO1FBQUFDO01BQUE7UUFDQTtVQUNBO1VBQ0E7WUFDQTtjQUNBQztnQkFBQTtjQUFBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUNBO01BQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7TUFDQTtRQUNBO01BQ0E7TUFDQTtNQUVBO01BQ0E7UUFDQTtRQUNBO1VBQ0E5RDtRQUNBO1VBQ0FBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7TUFFQTtNQUNBO1FBQ0E7VUFBQTtRQUFBO1FBQ0E7VUFDQStEO1FBQ0E7TUFDQTtNQUVBO1FBQUEvRDtRQUFBK0Q7UUFBQUM7TUFBQTtNQUNBO1FBQ0FDO1FBQ0FDO1FBQ0FDO1VBQ0FuRTtVQUNBK0Q7VUFDQUM7UUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1VBQ0E7VUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBSTtNQUFBO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFBQUM7TUFBQTtRQUNBO1FBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFBQUQ7TUFBQTtRQUNBO1FBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBRTtNQUNBO0lBQ0E7SUFFQUM7TUFBQTtNQUNBO01BQ0E7TUFDQTtRQUFBSDtNQUFBO1FBQ0E7VUFDQTtVQUNBO1VBQ0E7WUFDQTtZQUNBO1lBQ0E7VUFDQTtZQUNBO2NBQ0E7WUFDQTtjQUNBO1lBQ0E7Y0FDQTtjQUNBO2NBQ0E7Y0FDQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUk7TUFDQWpDO1FBQ0FLO01BQ0E7SUFDQTtJQUVBNkI7TUFDQTtJQUNBO0lBRUFDO01BQ0EsdURBQ0EsNkRBQ0FqRixhQUNBO0lBQ0E7SUFFQWtGO01BQ0E7TUFDQTtNQUNBO1FBQ0E5RTtRQUNBQztRQUNBQztNQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQTZFO01BQ0E7TUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQUE7TUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7VUFDQUM7WUFDQTtjQUNBO2NBQ0E7Y0FDQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7UUFDQXhDO1VBQ0E3QztVQUNBOEM7UUFDQTtRQUNBO01BQ0E7TUFFQTtRQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBd0M7TUFDQTtJQUNBO0VBQ0E7RUFFQUM7SUFDQTtNQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiI5MS5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VcIj5cblx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9faGVhZGVyXCIgOnN0eWxlPVwieyBwYWRkaW5nVG9wOiBzdGF0dXNCYXJIZWlnaHQgKyAncHgnIH1cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX191c2VyLXJvd1wiIEBjbGljaz1cImhhbmRsZVVzZXJDbGlja1wiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9fdXNlclwiPlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cImhhbGwtcGFnZV9fYXZhdGFyXCIgOnNyYz1cImNlbnRlclVzZXJJbmZvLmZ1bGxJbWdVcmwgfHwgJy9zdGF0aWMvaW1hZ2UvaWNfcGljQDJ4LnBuZydcIiBtb2RlPVwiYXNwZWN0RmlsbFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJoYWxsLXBhZ2VfX25hbWVcIj57eyBjZW50ZXJVc2VySW5mby5uYW1lIH19PC90ZXh0PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0dXNcIiB2LWlmPVwidXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDNcIiBAY2xpY2s9XCJvcGVuU3RhdHVzUGlja2VyXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3N0YXR1cy1kb3RcIiA6Y2xhc3M9XCJ7ICdoYWxsLXBhZ2VfX3N0YXR1cy1kb3QtLW9mZmxpbmUnOiBhY2NlcHRpbmdTdGF0dXMgPT09IDAgfVwiPjwvdmlldz5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fc3RhdHVzLXRleHRcIj57eyBhY2NlcHRpbmdTdGF0dXMgPT09IDEgPyAn5o6l5Y2V5LitJyA6ICflt7LkuIvnur8nIH19PC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0dXMtYXJyb3dcIj7ilrw8L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3VzZXJcIiBzdHlsZT1cIm9wYWNpdHk6IDA7XCI+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwiaGFsbC1wYWdlX19hdmF0YXJcIiA6c3JjPVwiY2VudGVyVXNlckluZm8uZnVsbEltZ1VybCB8fCAnL3N0YXRpYy9pbWFnZS9pY19waWNAMngucG5nJ1wiIG1vZGU9XCJhc3BlY3RGaWxsXCI+PC9pbWFnZT5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fbmFtZVwiPnt7IGNlbnRlclVzZXJJbmZvLm5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblxuXHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3N0YXRzXCI+XG5cdFx0XHRcdDx2aWV3IHYtZm9yPVwiaXRlbSBpbiBzdGF0c1wiIDprZXk9XCJpdGVtLmxhYmVsXCIgY2xhc3M9XCJoYWxsLXBhZ2VfX3N0YXQtaXRlbVwiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0LXZhbHVlXCI+e3sgdXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDMgPyBpdGVtLnZhbHVlIDogJy0nIH19PC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaGFsbC1wYWdlX19zdGF0LWxhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvdGV4dD5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXG5cdFx0XHQ8dmlldyBjbGFzcz1cImhhbGwtcGFnZV9fdGFic1wiPlxuXHRcdFx0XHQ8dmlldyB2LWZvcj1cInRhYiBpbiBkaXNwbGF5VGFic1wiIDprZXk9XCJ0YWIudmFsdWVcIiBjbGFzcz1cImhhbGwtcGFnZV9fdGFiXCIgOmNsYXNzPVwieyAnaGFsbC1wYWdlX190YWItLWFjdGl2ZSc6IGFjdGl2ZVRhYiA9PT0gdGFiLnZhbHVlIH1cIiBAY2xpY2s9XCJhY3RpdmVUYWIgPSB0YWIudmFsdWVcIj5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhhbGwtcGFnZV9fdGFiLXRleHRcIj57eyB0YWIubGFiZWwgfX08L3RleHQ+XG5cdFx0XHRcdFx0PHRleHQgdi1pZj1cInRhYi5jb3VudFwiIGNsYXNzPVwiaGFsbC1wYWdlX190YWItY291bnRcIj57eyB1c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gMyA/IHRhYi5jb3VudCA6ICcnIH19PC90ZXh0PlxuXHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJhY3RpdmVUYWIgPT09IHRhYi52YWx1ZVwiIGNsYXNzPVwiaGFsbC1wYWdlX190YWItbGluZVwiPjwvdmlldz5cblx0XHRcdFx0PC92aWV3Plx0XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiaGFsbC1wYWdlX19maWx0ZXJcIiBAY2xpY2s9XCJ0b2dnbGVGaWx0ZXJQb3B1cCh0cnVlKVwiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaGFsbC1wYWdlX19maWx0ZXItdGV4dFwiIDpjbGFzcz1cInsgJ2hhbGwtcGFnZV9fZmlsdGVyLXRleHQtLWFjdGl2ZSc6IHNob3dGaWx0ZXJQb3B1cCB9XCI+562b6YCJPC90ZXh0PlxuXHRcdFx0XHRcdDxpbWFnZSA6c3JjPVwic2hvd0ZpbHRlclBvcHVwID8gJy9zdGF0aWMvaW1hZ2UvaWNfc2hhaXh1YW5fc2VsQDJ4LnBuZycgOiAnL3N0YXRpYy9pbWFnZS9pY19zaGFpeHVhbkAyeC5wbmcnXCIgbW9kZT1cIndpZHRoRml4XCIgY2xhc3M9XCJoYWxsLXBhZ2VfX2ZpbHRlci1pY29uXCI+PC9pbWFnZT5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblxuXHRcdDx2aWV3IHYtaWY9XCJzaG93RmlsdGVyUG9wdXBcIiBjbGFzcz1cImZpbHRlci1wb3B1cFwiIDpzdHlsZT1cInsgdG9wOiBoZWFkZXJIZWlnaHQgKyAncHgnLCBib3R0b206IHRhYmJhckhlaWdodCArICdweCcgfVwiIEBjbGljaz1cInRvZ2dsZUZpbHRlclBvcHVwKGZhbHNlKVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJmaWx0ZXItcG9wdXBfX3BhbmVsXCIgQGNsaWNrLnN0b3A+XG5cdFx0XHRcdDxzY3JvbGwtdmlldyBjbGFzcz1cImZpbHRlci1wb3B1cF9fY29udGVudFwiIHNjcm9sbC15PlxuXHRcdFx0XHRcdDx2aWV3IHYtZm9yPVwic2VjdGlvbiBpbiBmaWx0ZXJTZWN0aW9uc1wiIDprZXk9XCJzZWN0aW9uLmtleVwiIGNsYXNzPVwiZmlsdGVyLXBvcHVwX19zZWN0aW9uXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImZpbHRlci1wb3B1cF9fdGl0bGVcIj57eyBzZWN0aW9uLnRpdGxlIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJmaWx0ZXItcG9wdXBfX29wdGlvbnNcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXdcblx0XHRcdFx0XHRcdFx0XHR2LWZvcj1cIm9wdGlvbiBpbiBzZWN0aW9uLm9wdGlvbnNcIlxuXHRcdFx0XHRcdFx0XHRcdDprZXk9XCJvcHRpb25cIlxuXHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiZmlsdGVyLXBvcHVwX19vcHRpb25cIlxuXHRcdFx0XHRcdFx0XHRcdDpjbGFzcz1cInsgJ2ZpbHRlci1wb3B1cF9fb3B0aW9uLS1hY3RpdmUnOiBzZWxlY3RlZEZpbHRlcnNbc2VjdGlvbi5rZXldID09PSBvcHRpb24gfVwiXG5cdFx0XHRcdFx0XHRcdFx0QGNsaWNrPVwic2VsZWN0RmlsdGVyKHNlY3Rpb24ua2V5LCBvcHRpb24pXCJcblx0XHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiZmlsdGVyLXBvcHVwX19vcHRpb24tdGV4dFwiPnt7IG9wdGlvbiB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC9zY3JvbGwtdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImZpbHRlci1wb3B1cF9fYWN0aW9uc1wiPlxuXHRcdFx0XHRcdDxidXR0b24gY2xhc3M9XCJmaWx0ZXItcG9wdXBfX2J1dHRvbiBmaWx0ZXItcG9wdXBfX2J1dHRvbi0tcmVzZXRcIiBob3Zlci1jbGFzcz1cImZpbHRlci1wb3B1cF9fYnV0dG9uLS1ob3ZlclwiIEBjbGljaz1cInJlc2V0RmlsdGVyc1wiPumHjee9rjwvYnV0dG9uPlxuXHRcdFx0XHRcdDxidXR0b24gY2xhc3M9XCJmaWx0ZXItcG9wdXBfX2J1dHRvbiBmaWx0ZXItcG9wdXBfX2J1dHRvbi0tY29uZmlybVwiIGhvdmVyLWNsYXNzPVwiZmlsdGVyLXBvcHVwX19idXR0b24tLWhvdmVyXCIgQGNsaWNrPVwiY29uZmlybUZpbHRlcnNcIj7noa7orqQ8L2J1dHRvbj5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblxuXHRcdDxzY3JvbGwtdmlldyBjbGFzcz1cImhhbGwtcGFnZV9fYm9keVwiIHNjcm9sbC15IDpzdHlsZT1cImJvZHlTdHlsZVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJoYWxsLXBhZ2VfX3ZlcmlmaWVkXCIgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzICE9PSAzXCI+XG5cdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2RlZmF1bHRfdW52ZXJpZmllZEAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHQ8YnV0dG9uIEBjbGljaz1cInRvRHJpdmVyQ2VydGlmaWNhdGlvblwiPuWOu+iupOivgTwvYnV0dG9uPlxuXHRcdFx0PC92aWV3PlxuXHRcdFx0PHZpZXcgdi1lbHNlLWlmPVwidXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDMgJiYgYWNjZXB0aW5nU3RhdHVzID09PSAxICYmIGN1cnJlbnRPcmRlckxpc3QubGVuZ3RoXCIgY2xhc3M9XCJoYWxsLXBhZ2VfX2xpc3RcIj5cblx0XHRcdFx0PHZpZXcgdi1mb3I9XCIoaXRlbSwgaW5kZXgpIGluIGN1cnJlbnRPcmRlckxpc3RcIiA6a2V5PVwiaXRlbS5pZFwiIGNsYXNzPVwib3JkZXItY2FyZFwiIEBjbGljaz1cImdvVG9PcmRlckRldGFpbChpdGVtLCBpbmRleClcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2hlYWRcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fdGltZVwiIHYtaWY9XCJpdGVtLnJlbWFpbk1pbnV0ZXMgPiAwXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fdGltZS1tYWluXCI+e3sgZm9ybWF0UmVtYWluVGltZShpdGVtLnJlbWFpbk1pbnV0ZXMpIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3RpbWUtc3ViXCI+6YCB6L6+PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX190aW1lXCIgdi1lbHNlPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3RpbWUtbWFpblwiPumFjemAgeW3sui2heaXtu+8jOivt+WwveW/q+mAgei+vjwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJhY3RpdmVUYWIgPT09ICdoYWxsJ1wiIGNsYXNzPVwib3JkZXItY2FyZF9fcHJpY2Utd3JhcFwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3ByaWNlXCI+wqV7eyBpdGVtLnBsYXRmb3JtUmV3YXJkQW1vdW50ID8gKGl0ZW0uZHJpdmVyRmVlICsgaXRlbS5wbGF0Zm9ybVJld2FyZEFtb3VudCkgLyAxMDAgOiAoaXRlbS5kcml2ZXJGZWUgLyAxMDApLnRvRml4ZWQoMikgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWVsc2UgY2xhc3M9XCJvcmRlci1jYXJkX19wcmljZS13cmFwIG9yZGVyLWNhcmRfX3ByaWNlLXdyYXAtLXNlcmlhbC1vbmx5XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJpdGVtLmNvZGVcIiBjbGFzcz1cIm9yZGVyLWNhcmRfX3NlcmlhbFwiPiN7eyBpbmRleCArIDEgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19tZXRhXCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3RhZ3NcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIHYtaWY9XCJpdGVtLmlzVXJnZW50ID09PSAxXCIgY2xhc3M9XCJvcmRlci1jYXJkX190YWctaW1nXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19qaXN1ZGFAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PGltYWdlIHYtZWxzZSBjbGFzcz1cIm9yZGVyLWNhcmRfX3RhZy1pbWdcIiBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2JpYW9zdWRhQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJpdGVtLmlzVmFsdWFibGUgPT09IHRydWVcIiBjbGFzcz1cIm9yZGVyLWNhcmRfX3RhZyBvcmRlci1jYXJkX190YWctLW9yYW5nZVwiPui0temHjeeJqeWTgTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgdi1lbHNlIGNsYXNzPVwib3JkZXItY2FyZF9fdGFnIG9yZGVyLWNhcmRfX3RhZy0tYmx1ZVwiPnt7IGl0ZW0uZ29vZExldmVsTmFtZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJhY3RpdmVUYWIgPT09ICdoYWxsJyAmJiBpdGVtLnBsYXRmb3JtUmV3YXJkQW1vdW50XCIgY2xhc3M9XCJvcmRlci1jYXJkX19leHRyYVwiPuWQq+WKoOaApcKle3sgKGl0ZW0ucGxhdGZvcm1SZXdhcmRBbW91bnQgLyAxMDApLnRvRml4ZWQoMikgfX08L3RleHQ+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS1zaWRlXCI+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fZGlzdGFuY2UtYmxvY2sgb3JkZXItY2FyZF9fZGlzdGFuY2UtYmxvY2stLXRvcFwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fZGlzdGFuY2UtdmFsdWVcIj57eyBmb3JtYXREaXN0YW5jZVBhcnRzKGl0ZW0uZGVwb3NpdERpc3RhbmNlKS52YWx1ZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2Rpc3RhbmNlLXVuaXRcIj57eyBmb3JtYXREaXN0YW5jZVBhcnRzKGl0ZW0uZGVwb3NpdERpc3RhbmNlKS51bml0IH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fbGluZVwiPjwvdmlldz5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19kaXN0YW5jZS1ibG9jayBvcmRlci1jYXJkX19kaXN0YW5jZS1ibG9jay0tYm90dG9tXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19kaXN0YW5jZS12YWx1ZVwiPnt7IGZvcm1hdERpc3RhbmNlUGFydHMoaXRlbS50YWtlRGlzdGFuY2UpLnZhbHVlIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fZGlzdGFuY2UtdW5pdFwiPnt7IGZvcm1hdERpc3RhbmNlUGFydHMoaXRlbS50YWtlRGlzdGFuY2UpLnVuaXQgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtbWFpblwiPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLXRleHRzXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLXRpdGxlXCI+e3sgaXRlbS5kZXBvc2l0U2hvcE5hbWUgfX3lpKfoi4/miZPmiZPnrpc8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWRlc2NcIj57eyBpdGVtLmRlcG9zaXRTaG9wQWRkcmVzcyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfZGFvaGFuZ0AyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBjbGFzcz1cIm9yZGVyLWNhcmRfX25hdlwiIEBjbGljay5zdG9wPVwibmF2aWdhdGVUb0FkZHJlc3MoaXRlbSwgJ2RlcG9zaXQnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS1pdGVtIG9yZGVyLWNhcmRfX3JvdXRlLWl0ZW0tLWRlc3RpbmF0aW9uXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10ZXh0c1wiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRlbXBsYXRlIHYtaWY9XCJpdGVtLnRha2VTaG9wSWRcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10aXRsZVwiPnt7IGl0ZW0udGFrZU5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtZGVzY1wiPnt7IGl0ZW0udGFrZUFkZHJlc3MgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1lbHNlIGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGl0bGVcIj57eyBpdGVtLnRha2VBZGRyZXNzIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19kYW9oYW5nQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiIGNsYXNzPVwib3JkZXItY2FyZF9fbmF2XCIgQGNsaWNrLnN0b3A9XCJuYXZpZ2F0ZVRvQWRkcmVzcyhpdGVtLCAndGFrZScpXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fZ29vZHNcIiB2LWlmPVwiaXRlbS5pdGVtcyAmJiBpdGVtLml0ZW1zLmxlbmd0aCA+IDBcIiBAY2xpY2suc3RvcD1cInRvZ2dsZUdvb2RzRXhwYW5kKGl0ZW0uaWQpXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2dvb2RzLXRleHRcIj57eyBnZXRHb29kc1RleHQoaXRlbS5pdGVtcywgaXRlbS5pZCkgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dS1pY29uIHYtaWY9XCJnZXRHb29kc1RleHQoaXRlbS5pdGVtcywgaXRlbS5pZCkubGVuZ3RoID4gMjBcIiBuYW1lPVwiYXJyb3ctZG93blwiIDpjbGFzcz1cInsgJ29yZGVyLWNhcmRfX2dvb2RzLWFycm93LS1leHBhbmRlZCc6IGV4cGFuZGVkR29vZHNJZHMuaW5jbHVkZXMoaXRlbS5pZCkgfVwiIHNpemU9XCIxMlwiIGNvbG9yPVwiI2E0YTliMVwiPjwvdS1pY29uPlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uc1wiIDpjbGFzcz1cIidvcmRlci1jYXJkX19hY3Rpb25zLS0nICsgYWN0aXZlVGFiXCI+XG5cdFx0XHRcdFx0XHQ8dGVtcGxhdGUgdi1pZj1cImFjdGl2ZVRhYiA9PT0gJ3BpY2t1cCdcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19pY29uLWFjdGlvbnNcIj5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2ljb24tYWN0aW9uXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVDYW5jZWxPcmRlcihpdGVtKVwiPlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jYW5jbGVAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi10ZXh0XCI+5Y+W5raIPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2ljb24tYWN0aW9uXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVDYWxsKGl0ZW0pXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24taWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2FsbEAyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uLXRleHRcIj7ogZTns7s8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDxidXR0b24gY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b24gb3JkZXItY2FyZF9fYnV0dG9uLS1jb2RlXCIgaG92ZXItY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b24tLWhvdmVyXCIgQGNsaWNrLnN0b3A9XCJoYW5kbGVTaG93UGlja3VwQ29kZShpdGVtKVwiPuWPlui0p+eggTwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0PC90ZW1wbGF0ZT5cblx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWVsc2UtaWY9XCJhY3RpdmVUYWIgPT09ICdkZWxpdmVyaW5nJ1wiPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2ljb24tYWN0aW9ucyBvcmRlci1jYXJkX19pY29uLWFjdGlvbnMtLXNpbmdsZVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9faWNvbi1hY3Rpb25cIiBAY2xpY2suc3RvcD1cImhhbmRsZUNhbGwoaXRlbSlcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jYWxsQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24tdGV4dFwiPuiBlOezuzwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cIm9yZGVyLWNhcmRfX2J1dHRvbiBvcmRlci1jYXJkX19idXR0b24tLWNvZGVcIiBob3Zlci1jbGFzcz1cIm9yZGVyLWNhcmRfX2J1dHRvbi0taG92ZXJcIiBAY2xpY2suc3RvcD1cImhhbmRsZVNob3dQaWNrdXBDb2RlKGl0ZW0pXCI+5a2Y5Lu256CBPC9idXR0b24+XG5cdFx0XHRcdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdFx0XHRcdFx0PGJ1dHRvbiB2LWVsc2UgY2xhc3M9XCJvcmRlci1jYXJkX19idXR0b25cIiBob3Zlci1jbGFzcz1cIm9yZGVyLWNhcmRfX2J1dHRvbi0taG92ZXJcIiBAY2xpY2suc3RvcD1cImhhbmRsZUdyYWJPcmRlcihpdGVtKVwiPueri+WNs+aKouWNlTwvYnV0dG9uPlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXG5cdFx0XHQ8dmlldyB2LWVsc2UgY2xhc3M9XCJoYWxsLXBhZ2VfX2VtcHR5XCI+XG5cdFx0XHRcdDxpbWFnZSBjbGFzcz1cImhhbGwtcGFnZV9fZW1wdHktaWNvblwiIDpzcmM9XCJhY2NlcHRpbmdTdGF0dXMgPT09IDAgPyAnL3N0YXRpYy9pbWFnZS9kZWZhdWx0X25vZGF0YV9ncmV5QDJ4LnBuZycgOiAnL3N0YXRpYy9pbWFnZS9kZWZhdWx0X25vZGF0YUAyeC5wbmcnXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC9zY3JvbGwtdmlldz5cblx0XHRcblx0XHQ8IS0tIOWPlua2iOiuouWNlSAtLT5cblx0XHQ8dS1tb2RhbFxuXHRcdFx0OnNob3c9XCJzaG93XCJcblx0XHRcdHNob3dDYW5jZWxCdXR0b25cblx0XHRcdEBjYW5jZWw9XCJzaG93ID0gZmFsc2VcIlxuXHRcdFx0Y2FuY2VsQ29sb3I9XCIjNjY2NjY2XCJcblx0XHRcdGNvbmZpcm1Db2xvcj1cIiMwMDU1RkZcIlxuXHRcdFx0dGl0bGU9XCLlj5bmtojorqLljZXnoa7orqRcIlxuXHRcdFx0QGNvbmZpcm09XCJjb25maXJtQ2FuY2VsT3JkZXJcIj5cblx0XHRcdDx2aWV3IHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjMzMzMzMzO2ZvbnQtc2l6ZTogMjhycHg7Zm9udC13ZWlnaHQ6IDQwMDtcIj5cblx0XHRcdFx05oKo5LuK5pel6L+Y5Y+v5Y+W5raIIHt7IGNhbmNlbFJlbWFpbiB9fSDmrKHorqLljZXvvIzmrKHmlbDnlKjlsL3lkI7ku4rml6XlsIbml6Dms5XmjqXljZXvvIzmmK/lkKbnoa7orqTlj5bmtojvvJ9cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtbW9kYWw+XG5cblx0XHQ8IS0tIOeri+WNs+aKouWNlSAtLT5cblx0XHQ8dS1tb2RhbFxuXHRcdFx0OnNob3c9XCJzaG93R3JhYk1vZGFsXCJcblx0XHRcdHNob3dDYW5jZWxCdXR0b25cblx0XHRcdEBjYW5jZWw9XCJzaG93R3JhYk1vZGFsID0gZmFsc2VcIlxuXHRcdFx0Y2FuY2VsQ29sb3I9XCIjNjY2NjY2XCJcblx0XHRcdGNvbmZpcm1Db2xvcj1cIiMwMDU1RkZcIlxuXHRcdFx0dGl0bGU9XCLmuKnppqjmj5DnpLpcIlxuXHRcdFx0QGNvbmZpcm09XCJjb25maXJtR3JhYk9yZGVyXCI+XG5cdFx0XHQ8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzMzMzMzMztmb250LXNpemU6IDI4cnB4O2ZvbnQtd2VpZ2h0OiA0MDA7XCI+XG5cdFx0XHRcdHt7IHNlbGVjdGVkR3JhYk9yZGVyICYmIHNlbGVjdGVkR3JhYk9yZGVyLmhhc092ZXJzaXplZCA9PT0gMSA/ICfmnKzorqLljZXmnInnibnlpKfku7blsLrlr7jooYzmnY7vvIzor7fnoa7orqTmmK/lkKbnu6fnu63miqLljZXvvJ8nIDogJ+aYr+WQpuehruiupOaOpeWNle+8nycgfX1cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtbW9kYWw+XG5cdFx0XG5cdFx0PCEtLSDlj5botKfnoIEv5a2Y5Lu256CBIC0tPlxuXHRcdDx1LXBvcHVwIDpzaG93PVwic2hvdzFcIiByb3VuZD1cIjIwXCIgbW9kZT1cImJvdHRvbVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGVcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGUtdGl0bGVcIj5cblx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9zZUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBzdHlsZT1cIm9wYWNpdHk6IDA7XCI+PC9pbWFnZT5cblx0XHRcdFx0XHQ8dGV4dD57eyBhY3RpdmVUYWIgPT09ICdkZWxpdmVyaW5nJyA/ICflrZjku7bnoIEnIDogJ+WPlui0p+eggScgfX08L3RleHQ+XG5cdFx0XHRcdFx0PGltYWdlIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2xvc2VAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCIgQGNsaWNrPVwic2hvdzEgPSBmYWxzZVwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGUtaW1hZ2VcIj5cblx0XHRcdFx0XHQ8aW1hZ2Ugdi1pZj1cInNlbGVjdGVkUGlja3VwT3JkZXIgJiYgc2VsZWN0ZWRQaWNrdXBPcmRlci5kcml2ZXJWZXJpZnlDb2RlXCIgOnNyYz1cIidodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjAweDIwMCZkYXRhPScgKyBzZWxlY3RlZFBpY2t1cE9yZGVyLmRyaXZlclZlcmlmeUNvZGVcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicXJjb2RlLWJ0blwiIGhvdmVyLWNsYXNzPVwicXJjb2RlLWJ0bi0taG92ZXJcIiBAY2xpY2s9XCJzaG93MSA9IGZhbHNlXCI+5YWz6ZetPC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdS1wb3B1cD5cblxuXHRcdDx1LXBvcHVwIDpzaG93PVwic2hvd1Bob3RvRGVsaXZlclBvcHVwXCIgcm91bmQ9XCIyMFwiIG1vZGU9XCJib3R0b21cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tZGVsaXZlclwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX2hlYWRlclwiPlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX2Nsb3NlLXBsYWNlaG9sZGVyXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1kZWxpdmVyX190aXRsZVwiPuaLjeeFp+mAgei+vjwvdGV4dD5cblx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1kZWxpdmVyX19jbG9zZVwiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJzaG93UGhvdG9EZWxpdmVyUG9wdXAgPSBmYWxzZVwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3NlY3Rpb25cIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX2xhYmVsLXJvd1wiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1kZWxpdmVyX19sYWJlbFwiPuaLjeaRhOmAgei+vueFp+eJhzwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fcmVxdWlyZWRcIj4qPC90ZXh0PlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1kZWxpdmVyX19oaW50XCI+5pyA5aSaM+W8oOeFp+eJhzwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3Bob3Rvc1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1kZWxpdmVyX191cGxvYWQtY2FyZFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1kZWxpdmVyX191cGxvYWQtaWNvblwiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3VwbG9hZC10ZXh0XCI+54K55Ye75ouN54WnPC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3ByZXZpZXctY2FyZFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1kZWxpdmVyX19wcmV2aWV3LWltYWdlXCIgbW9kZT1cImFzcGVjdEZpbGxcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3ByZXZpZXctbWFza1wiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fcHJldmlldy1kZWxldGVcIj7liKDpmaQ8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLWRlbGl2ZXJfX3NlY3Rpb24gcGhvdG8tZGVsaXZlcl9fc2VjdGlvbi0tcmVtYXJrXCI+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1kZWxpdmVyX19yZW1hcmstdGl0bGVcIj7lpIfms6jkv6Hmga88L3RleHQ+XG5cdFx0XHRcdFx0PHRleHRhcmVhIGNsYXNzPVwicGhvdG8tZGVsaXZlcl9fdGV4dGFyZWFcIiBtYXhsZW5ndGg9XCIyMDBcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiIHBsYWNlaG9sZGVyLXN0eWxlPVwiY29sb3I6ICNjN2NiZDM7XCIgLz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDxidXR0b24gY2xhc3M9XCJwaG90by1kZWxpdmVyX19zdWJtaXRcIiBob3Zlci1jbGFzcz1cInBob3RvLWRlbGl2ZXJfX3N1Ym1pdC0taG92ZXJcIiBAY2xpY2s9XCJzaG93UGhvdG9EZWxpdmVyUG9wdXAgPSBmYWxzZVwiPuehruiupOmAgei+vjwvYnV0dG9uPlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdS1wb3B1cD5cblxuXHRcdDx1LXBpY2tlclxuXHRcdFx0OnNob3c9XCJzaG93U3RhdHVzUGlja2VyXCJcblx0XHRcdGNvbmZpcm1Db2xvcj1cIiMxMEIyRkFcIlxuXHRcdFx0a2V5TmFtZT1cInRleHRcIlxuXHRcdFx0OmNvbHVtbnM9XCJbc3RhdHVzT3B0aW9uc11cIlxuXHRcdFx0QGNvbmZpcm09XCJjb25maXJtU3RhdHVzXCJcblx0XHRcdEBjYW5jZWw9XCJzaG93U3RhdHVzUGlja2VyID0gZmFsc2VcIiAvPlxuXHQ8L3ZpZXc+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0dHRzOiBudWxsLFxuXHRcdFx0XHRzaG93OiBmYWxzZSxcblx0XHRcdFx0c2hvdzE6IGZhbHNlLFxuXHRcdFx0XHRzaG93R3JhYk1vZGFsOiBmYWxzZSxcblx0XHRcdFx0c2VsZWN0ZWRHcmFiT3JkZXI6IG51bGwsXG5cdFx0XHRcdHNlbGVjdGVkQ2FuY2VsT3JkZXI6IG51bGwsXG5cdFx0XHRcdGNhbmNlbFJlbWFpbjogMCxcblx0XHRcdFx0c2VsZWN0ZWRQaWNrdXBPcmRlcjogbnVsbCxcblx0XHRcdFx0c2hvd1Bob3RvRGVsaXZlclBvcHVwOiBmYWxzZSxcblx0XHRcdFx0cm91dGVJbmZvOiBudWxsLFxuXHRcdFx0XHRzdGF0dXNCYXJIZWlnaHQ6IDAsXG5cdFx0XHRcdGhlYWRlckhlaWdodDogMCxcblx0XHRcdFx0dGFiYmFySGVpZ2h0OiAwLFxuXHRcdFx0XHRzY3JvbGxIZWlnaHQ6IDAsXG5cdFx0XHRcdHNob3dGaWx0ZXJQb3B1cDogZmFsc2UsXG5cdFx0XHRcdGFjY2VwdGluZ1N0YXR1czogMCxcblx0XHRcdFx0c2hvd1N0YXR1c1BpY2tlcjogZmFsc2UsXG5cdFx0XHRcdHN0YXR1c09wdGlvbnM6IFtcblx0XHRcdFx0XHR7IHRleHQ6ICfkuIrnur8nLCB2YWx1ZTogMSB9LFxuXHRcdFx0XHRcdHsgdGV4dDogJ+S4i+e6vycsIHZhbHVlOiAwIH1cblx0XHRcdFx0XSxcblx0XHRcdFx0Y2VudGVyVXNlckluZm86IHt9LFxuXHRcdFx0XHRhY3RpdmVUYWI6ICdoYWxsJyxcblx0XHRcdFx0ZXhwYW5kZWRHb29kc0lkczogW10sXG5cdFx0XHRcdGNhdGVnb3J5TGlzdDogW10sXG5cdFx0XHRcdGZpbHRlclNlY3Rpb25zOiBbXG5cdFx0XHRcdFx0eyBrZXk6ICdzb3J0JywgdGl0bGU6ICfmjpLluo8nLCBvcHRpb25zOiBbJ+e7vOWQiOaOkuW6jycsICfot53nprvmnIDov5EnXSB9LFxuXHRcdFx0XHRcdHsga2V5OiAnbGV2ZWwnLCB0aXRsZTogJ+eJqeWTgeetiee6pycsIG9wdGlvbnM6IFsn5LiN6ZmQJ10gfSxcblx0XHRcdFx0XHR7IGtleTogJ2Rpc3RhbmNlJywgdGl0bGU6ICfkvY3nva7ojIPlm7QnLCBvcHRpb25zOiBbJ+S4jemZkCcsICc1MDBtJywgJzFrbScsICcya20nLCAnM2ttJywgJzRrbScsICc1a20nLCAnNmttJywgJzdrbSddIH1cblx0XHRcdFx0XSxcblx0XHRcdFx0c2VsZWN0ZWRGaWx0ZXJzOiB7XG5cdFx0XHRcdFx0c29ydDogJ+e7vOWQiOaOkuW6jycsXG5cdFx0XHRcdFx0bGV2ZWw6ICfkuI3pmZAnLFxuXHRcdFx0XHRcdGRpc3RhbmNlOiAn5LiN6ZmQJ1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzdGF0czogW1xuXHRcdFx0XHRcdHsgdmFsdWU6ICctJywgbGFiZWw6ICfmnI3liqHliIYnIH0sXG5cdFx0XHRcdFx0eyB2YWx1ZTogJy0nLCBsYWJlbDogJ+S7iuaXpemihOiuoeS9o+mHkScgfSxcblx0XHRcdFx0XHR7IHZhbHVlOiAnLScsIGxhYmVsOiAn5LuK5pel5o6l5Y2VJyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdHRhYnM6IFtcblx0XHRcdFx0XHR7IGxhYmVsOiAn5oqi5Y2V5aSn5Y6FJywgdmFsdWU6ICdoYWxsJyB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflvoXlj5botKcnLCB2YWx1ZTogJ3BpY2t1cCcgfSxcblx0XHRcdFx0XHR7IGxhYmVsOiAn6YWN6YCB5LitJywgdmFsdWU6ICdkZWxpdmVyaW5nJyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdG9yZGVyTGlzdDogW10sXG5cdFx0XHRcdHBpY2t1cE9yZGVyTGlzdDogW10sXG5cdFx0XHRcdGRlbGl2ZXJpbmdPcmRlckxpc3Q6IFtdLFxuXHRcdFx0XHRoYWxsUGFnZTogMSxcblx0XHRcdFx0aGFsbFBhZ2VTaXplOiAxMCxcblx0XHRcdFx0aGFsbExvYWRpbmc6IGZhbHNlLFxuXHRcdFx0XHRoYWxsSGFzTW9yZTogdHJ1ZSxcblx0XHRcdFx0cGlja3VwTG9hZGluZzogZmFsc2UsXG5cdFx0XHRcdGRlbGl2ZXJpbmdMb2FkaW5nOiBmYWxzZSxcblx0XHRcdFx0YWN0aXZlT3JkZXJDb3VudDogbnVsbFxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHR3YXRjaDoge1xuXHRcdFx0YWN0aXZlVGFiKG5ld1ZhbCkge1xuXHRcdFx0XHR0aGlzLmxvYWRPcmRlcnNCeVRhYihuZXdWYWwpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdG9uTG9hZCgpIHtcblx0XHRcdGNvbnN0IHN5c3RlbUluZm8gPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKVxuXHRcdFx0Y29uc3Qgc2FmZUJvdHRvbSA9IHN5c3RlbUluZm8uc2FmZUFyZWFJbnNldHMgPyBzeXN0ZW1JbmZvLnNhZmVBcmVhSW5zZXRzLmJvdHRvbSB8fCAwIDogMFxuXHRcdFx0Y29uc3Qgd2luZG93SGVpZ2h0ID0gc3lzdGVtSW5mby53aW5kb3dIZWlnaHQgfHwgMFxuXHRcdFx0dGhpcy5zdGF0dXNCYXJIZWlnaHQgPSBzeXN0ZW1JbmZvLnN0YXR1c0JhckhlaWdodCB8fCAwXG5cdFx0XHR0aGlzLmhlYWRlckhlaWdodCA9IHRoaXMuc3RhdHVzQmFySGVpZ2h0ICsgdW5pLnVweDJweCgzMDgpXG5cdFx0XHR0aGlzLnRhYmJhckhlaWdodCA9IHVuaS51cHgycHgoMTAwKSArIHNhZmVCb3R0b21cblx0XHRcdHRoaXMuc2Nyb2xsSGVpZ2h0ID0gTWF0aC5tYXgod2luZG93SGVpZ2h0IC0gdGhpcy5oZWFkZXJIZWlnaHQsIDApXG5cdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHJldHVybjtcblx0XHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gdGhpcy51c2VySW5mby5hY2NlcHRpbmdTdGF0dXMgfHwgMFxuXHRcdFx0dGhpcy5sb2FkT3JkZXJzQnlUYWIodGhpcy5hY3RpdmVUYWIpXG5cdFx0fSxcblxuXHRcdG9uU2hvdygpIHtcblx0XHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0XHR0aGlzLmdldENhdGVnb3J5TGlzdERhdGEoKVxuXHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHR9LFxuXG5cdFx0b25SZWFjaEJvdHRvbSgpIHtcblx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAnaGFsbCcpIHtcblx0XHRcdFx0dGhpcy5oYWxsUGFnZSsrXG5cdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGNvbXB1dGVkOiB7XG5cdFx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJywgJ3Rva2VuJ10pLFxuXG5cdFx0XHRkaXNwbGF5VGFicygpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMudGFicy5tYXAodGFiID0+IHtcblx0XHRcdFx0XHRpZiAodGFiLnZhbHVlID09PSAncGlja3VwJykge1xuXHRcdFx0XHRcdFx0cmV0dXJuIHsgLi4udGFiLCBjb3VudDogdGhpcy5hY3RpdmVPcmRlckNvdW50Py5ncmFiYmVkQ291bnQgfVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAodGFiLnZhbHVlID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHRcdHJldHVybiB7IC4uLnRhYiwgY291bnQ6IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZGVsaXZlcmluZ0NvdW50IH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHRhYlxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdFxuXHRcdFx0Y3VycmVudE9yZGVyTGlzdCgpIHtcblx0XHRcdFx0Y29uc3Qgb3JkZXJNYXAgPSB7XG5cdFx0XHRcdFx0aGFsbDogdGhpcy5vcmRlckxpc3QsXG5cdFx0XHRcdFx0cGlja3VwOiB0aGlzLnBpY2t1cE9yZGVyTGlzdCxcblx0XHRcdFx0XHRkZWxpdmVyaW5nOiB0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3Rcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiBvcmRlck1hcFt0aGlzLmFjdGl2ZVRhYl0gfHwgW11cblx0XHRcdH0sXG5cblx0XHRcdGJvZHlTdHlsZSgpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRtYXJnaW5Ub3A6IHRoaXMuaGVhZGVySGVpZ2h0ICsgJ3B4Jyxcblx0XHRcdFx0XHRoZWlnaHQ6IHRoaXMuc2Nyb2xsSGVpZ2h0ICsgJ3B4J1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdG9uUmVhZHkoKSB7XG5cdFx0XHR0aGlzLmluaXRUVFMoKSAvLyDpobXpnaLmuLLmn5PlrozmiJDliJ3lp4vljJbor63pn7Ncblx0XHR9LFxuXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0Zm9ybWF0UmVtYWluVGltZShtaW51dGVzKSB7XG5cdFx0XHRcdGlmICghbWludXRlcykgcmV0dXJuIDBcblx0XHRcdFx0aWYgKG1pbnV0ZXMgPT09IDApIHtcblx0XHRcdFx0XHRyZXR1cm4gJ+mFjemAgeW3sui2heaXtidcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAobWludXRlcyA+PSA2MCkge1xuXHRcdFx0XHRcdHJldHVybiAobWludXRlcyAvIDYwKS50b0ZpeGVkKDIpICsgJ+Wwj+aXtuWGhSdcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gbWludXRlcyArICfliIbpkp/lhoUnXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRHb29kc1RleHQoaXRlbXMsIGl0ZW1JZCkge1xuXHRcdFx0XHRpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkgcmV0dXJuICfml6AnXG5cdFx0XHRcdGNvbnN0IHRleHQgPSBpdGVtcy5tYXAoaSA9PiBgJHtpLm5hbWV9KiR7aS5xdWFudGl0eX1gKS5qb2luKCfjgIEnKVxuXHRcdFx0XHRpZiAodGV4dC5sZW5ndGggPiAyMCAmJiAhdGhpcy5leHBhbmRlZEdvb2RzSWRzLmluY2x1ZGVzKGl0ZW1JZCkpIHtcblx0XHRcdFx0XHRyZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgMjApICsgJy4uLidcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gdGV4dFxuXHRcdFx0fSxcblxuXHRcdFx0dG9nZ2xlR29vZHNFeHBhbmQoaWQpIHtcblx0XHRcdFx0Y29uc3QgaW5kZXggPSB0aGlzLmV4cGFuZGVkR29vZHNJZHMuaW5kZXhPZihpZClcblx0XHRcdFx0aWYgKGluZGV4ID4gLTEpIHtcblx0XHRcdFx0XHR0aGlzLmV4cGFuZGVkR29vZHNJZHMuc3BsaWNlKGluZGV4LCAxKVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMuZXhwYW5kZWRHb29kc0lkcy5wdXNoKGlkKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHRmb3JtYXREaXN0YW5jZVBhcnRzKGRpc3RhbmNlKSB7XG5cdFx0XHRcdGlmIChkaXN0YW5jZSA9PT0gbnVsbCB8fCBkaXN0YW5jZSA9PT0gdW5kZWZpbmVkIHx8IGRpc3RhbmNlID09PSAnJykge1xuXHRcdFx0XHRcdHJldHVybiB7IHZhbHVlOiAnLS0nLCB1bml0OiAnJyB9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAodHlwZW9mIGRpc3RhbmNlID09PSAnbnVtYmVyJykge1xuXHRcdFx0XHRcdGlmIChkaXN0YW5jZSA+PSAxMDAwKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4geyB2YWx1ZTogKGRpc3RhbmNlIC8gMTAwMCkudG9GaXhlZCgxKSwgdW5pdDogJ2ttJyB9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJldHVybiB7IHZhbHVlOiBTdHJpbmcoTWF0aC5yb3VuZChkaXN0YW5jZSkpLCB1bml0OiAnbScgfVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgdGV4dCA9IFN0cmluZyhkaXN0YW5jZSkudHJpbSgpXG5cdFx0XHRcdGNvbnN0IG1hdGNoID0gdGV4dC5tYXRjaCgvXihbXFxkLl0rKVxccyooW2EtekEtWlxcdTRlMDAtXFx1OWZhNV0qKSQvKVxuXHRcdFx0XHRpZiAobWF0Y2gpIHtcblx0XHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdFx0dmFsdWU6IG1hdGNoWzFdLFxuXHRcdFx0XHRcdFx0dW5pdDogbWF0Y2hbMl0gfHwgJydcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4geyB2YWx1ZTogdGV4dCwgdW5pdDogJycgfVxuXHRcdFx0fSxcblxuXHRcdFx0bmF2aWdhdGVUb0FkZHJlc3MoaXRlbSwgdHlwZSkge1xuXHRcdFx0XHRsZXQgbGF0aXR1ZGUsIGxvbmdpdHVkZSwgbmFtZSwgYWRkcmVzc1xuXHRcdFx0XHRpZiAodHlwZSA9PT0gJ2RlcG9zaXQnKSB7XG5cdFx0XHRcdFx0bGF0aXR1ZGUgPSBpdGVtLmRlcG9zaXRMYXRcblx0XHRcdFx0XHRsb25naXR1ZGUgPSBpdGVtLmRlcG9zaXRMbmdcblx0XHRcdFx0XHRuYW1lID0gaXRlbS5kZXBvc2l0U2hvcE5hbWVcblx0XHRcdFx0XHRhZGRyZXNzID0gaXRlbS5kZXBvc2l0U2hvcEFkZHJlc3Ncblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRsYXRpdHVkZSA9IGl0ZW0udGFrZUxhdFxuXHRcdFx0XHRcdGxvbmdpdHVkZSA9IGl0ZW0udGFrZUxuZ1xuXHRcdFx0XHRcdG5hbWUgPSBpdGVtLnRha2VOYW1lXG5cdFx0XHRcdFx0YWRkcmVzcyA9IGl0ZW0udGFrZUFkZHJlc3Ncblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoIWxhdGl0dWRlIHx8ICFsb25naXR1ZGUpIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflnLDlnYDlnZDmoIfnvLrlpLEnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR1bmkub3BlbkxvY2F0aW9uKHtcblx0XHRcdFx0XHRsYXRpdHVkZSxcblx0XHRcdFx0XHRsb25naXR1ZGUsXG5cdFx0XHRcdFx0bmFtZSxcblx0XHRcdFx0XHRhZGRyZXNzLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6ICgpID0+IHt9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+aJk+W8gOWcsOWbvuWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcignb3BlbkxvY2F0aW9uIGZhaWw6JywgZXJyKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGhhbmRsZVVzZXJDbGljaygpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogJy9wYWdlcy90ZXN0L3Rlc3QnXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QWN0aXZlT3JkZXJDb3VudCgpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuYWN0aXZlT3JkZXJDb3VudCgpLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5hY3RpdmVPcmRlckNvdW50ID0gcmVzLmRhdGFcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZU9yZGVyQ291bnQgPSBudWxsXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRoYW5kbGVHcmFiT3JkZXIoaXRlbSkge1xuXHRcdFx0XHRjb25zb2xlLmxvZyhpdGVtKVxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkR3JhYk9yZGVyID0gaXRlbVxuXHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSB0cnVlXG5cdFx0XHR9LFxuXG5cdFx0XHRjb25maXJtR3JhYk9yZGVyKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIpIHJldHVyblxuXHRcdFx0XHR0aGlzLiR1LmFwaS5ncmFiT3JkZXIoeyBvcmRlcklkOiB0aGlzLnNlbGVjdGVkR3JhYk9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmiqLljZXmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlT3JkZXJDb3VudCgpXG5cdFx0XHRcdFx0XHR0aGlzLmdldENlbnRlckluZm8oKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICfmiqLljZXlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0aGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkQ2FuY2VsT3JkZXIgPSBpdGVtXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbExpbWl0KCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmNhbmNlbFJlbWFpbiA9IHJlcy5kYXRhLnJlbWFpblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93ID0gdHJ1ZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Y29uZmlybUNhbmNlbE9yZGVyKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRDYW5jZWxPcmRlcikgcmV0dXJuXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3cgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflj5bmtojmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuZ2V0UGlja3VwT3JkZXJzKClcblx0XHRcdFx0XHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICflj5bmtojlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3cgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0aGFuZGxlQ2FsbChpdGVtKSB7XG5cdFx0XHRcdGlmIChpdGVtLmNvbnRhY3RQaG9uZSkge1xuXHRcdFx0XHRcdHVuaS5tYWtlUGhvbmVDYWxsKHtcblx0XHRcdFx0XHRcdHBob25lTnVtYmVyOiBpdGVtLmNvbnRhY3RQaG9uZVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdGhhbmRsZVNob3dQaWNrdXBDb2RlKGl0ZW0pIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFBpY2t1cE9yZGVyID0gaXRlbVxuXHRcdFx0XHR0aGlzLnNob3cxID0gdHJ1ZVxuXHRcdFx0fSxcblxuXHRcdFx0Z29Ub09yZGVyRGV0YWlsKGl0ZW0sIGluZGV4KSB7XG5cdFx0XHRcdGxldCB1cmwgPSBgL3BhZ2VzL29yZGVyLWRldGFpbC9vcmRlci1kZXRhaWw/aWQ9JHtpdGVtLmlkfWBcblx0XHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAncGlja3VwJyB8fCB0aGlzLmFjdGl2ZVRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdFx0dXJsICs9IGAmaW5kZXg9JHtpbmRleCArIDF9YFxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHsgdXJsIH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRDZW50ZXJJbmZvKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5jZW50ZXJJbmZvKCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmFjY2VwdGluZ1N0YXR1cyA9IHJlcy5kYXRhLmFjY2VwdGluZ1N0YXR1c1xuXHRcdFx0XHRcdFx0dGhpcy5jZW50ZXJVc2VySW5mbyA9IHtcblx0XHRcdFx0XHRcdFx0ZnVsbEltZ1VybDogcmVzLmRhdGEuZnVsbEltZ1VybCxcblx0XHRcdFx0XHRcdFx0bmFtZTogcmVzLmRhdGEubmFtZVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0dGhpcy5zdGF0cyA9IFtcblx0XHRcdFx0XHRcdFx0eyB2YWx1ZTogcmVzLmRhdGEuc2NvcmUsIGxhYmVsOiAn5pyN5Yqh5YiGJyB9LFxuXHRcdFx0XHRcdFx0XHR7IHZhbHVlOiAoKHJlcy5kYXRhLnRvZGF5Q29tbWlzc2lvbiAvIDEwMCkgfHwgMCkudG9GaXhlZCgyKSwgbGFiZWw6ICfku4rml6XpooTorqHkvaPph5EnIH0sXG5cdFx0XHRcdFx0XHRcdHsgdmFsdWU6IHJlcy5kYXRhLnRvZGF5T3JkZXJDb3VudCwgbGFiZWw6ICfku4rml6XmjqXljZUnIH1cblx0XHRcdFx0XHRcdF1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRDYXRlZ29yeUxpc3REYXRhKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5nZXRDYXRlZ29yeUxpc3QoeyB0eXBlOiAzIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5jYXRlZ29yeUxpc3QgPSByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHRcdFx0dGhpcy5maWx0ZXJTZWN0aW9ucy5mb3JFYWNoKHNlY3Rpb24gPT4ge1xuXHRcdFx0XHRcdFx0XHRpZiAoc2VjdGlvbi5rZXkgPT09ICdsZXZlbCcpIHtcblx0XHRcdFx0XHRcdFx0XHRzZWN0aW9uLm9wdGlvbnMgPSBbJ+S4jemZkCcsIC4uLnRoaXMuY2F0ZWdvcnlMaXN0Lm1hcChpdGVtID0+IGl0ZW0ubmFtZSldXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0bG9hZE9yZGVyc0J5VGFiKHRhYikge1xuXHRcdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHJldHVybjtcblx0XHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRcdGlmICh0YWIgPT09ICdoYWxsJykge1xuXHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0fSBlbHNlIGlmICh0YWIgPT09ICdwaWNrdXAnKSB7XG5cdFx0XHRcdFx0dGhpcy5waWNrdXBPcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdHRoaXMuZ2V0UGlja3VwT3JkZXJzKClcblx0XHRcdFx0fSBlbHNlIGlmICh0YWIgPT09ICdkZWxpdmVyaW5nJykge1xuXHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0dGhpcy5nZXREZWxpdmVyaW5nT3JkZXJzKClcblx0XHRcdFx0fVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0SGFsbE9yZGVycygpIHtcblx0XHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRcdGlmICh0aGlzLmhhbGxMb2FkaW5nIHx8ICF0aGlzLmhhbGxIYXNNb3JlKSB7XG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5oYWxsTG9hZGluZyA9IHRydWVcblxuXHRcdFx0XHRsZXQgZGlzdGFuY2UgPSBudWxsXG5cdFx0XHRcdGlmICh0aGlzLnNlbGVjdGVkRmlsdGVycy5kaXN0YW5jZSAhPT0gJ+S4jemZkCcpIHtcblx0XHRcdFx0XHRjb25zdCBkaXN0YW5jZVRleHQgPSB0aGlzLnNlbGVjdGVkRmlsdGVycy5kaXN0YW5jZVxuXHRcdFx0XHRcdGlmIChkaXN0YW5jZVRleHQuaW5jbHVkZXMoJ2ttJykpIHtcblx0XHRcdFx0XHRcdGRpc3RhbmNlID0gcGFyc2VJbnQoZGlzdGFuY2VUZXh0KSAqIDEwMDBcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0ZGlzdGFuY2UgPSBwYXJzZUludChkaXN0YW5jZVRleHQpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3Qgc29ydFR5cGVNYXAgPSB7XG5cdFx0XHRcdFx0J+e7vOWQiOaOkuW6jyc6IDEsXG5cdFx0XHRcdFx0J+i3neemu+acgOi/kSc6IDJcblx0XHRcdFx0fVxuXHRcdFx0XHRjb25zdCBzb3J0VHlwZSA9IHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLnNvcnQgIT09ICfkuI3pmZAnID8gKHNvcnRUeXBlTWFwW3RoaXMuc2VsZWN0ZWRGaWx0ZXJzLnNvcnRdIHx8IG51bGwpIDogbnVsbFxuXG5cdFx0XHRcdGxldCBncmFkZUlkID0gbnVsbFxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZEZpbHRlcnMubGV2ZWwgIT09ICfkuI3pmZAnKSB7XG5cdFx0XHRcdFx0Y29uc3Qgc2VsZWN0ZWRDYXRlZ29yeSA9IHRoaXMuY2F0ZWdvcnlMaXN0LmZpbmQoaXRlbSA9PiBpdGVtLm5hbWUgPT09IHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLmxldmVsKVxuXHRcdFx0XHRcdGlmIChzZWxlY3RlZENhdGVnb3J5KSB7XG5cdFx0XHRcdFx0XHRncmFkZUlkID0gc2VsZWN0ZWRDYXRlZ29yeS5pZFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGNvbnNvbGUubG9nKCfmjqXljZXlpKfljoU6JywgeyBkaXN0YW5jZSwgZ3JhZGVJZCwgc29ydFR5cGUgfSlcblx0XHRcdFx0dGhpcy4kdS5hcGkuZ3JhYk9yZGVySGFsbCh7XG5cdFx0XHRcdFx0Y2FwYWNpdHk6IHRoaXMuaGFsbFBhZ2VTaXplLFxuXHRcdFx0XHRcdHBhZ2U6IHRoaXMuaGFsbFBhZ2UsXG5cdFx0XHRcdFx0bW9kZWw6IHtcblx0XHRcdFx0XHRcdGRpc3RhbmNlOiBkaXN0YW5jZSxcblx0XHRcdFx0XHRcdGdyYWRlSWQ6IGdyYWRlSWQsXG5cdFx0XHRcdFx0XHRzb3J0VHlwZTogc29ydFR5cGVcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5o6l5Y2V5aSn5Y6FJywgcmVzKVxuXHRcdFx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRjb25zdCBsaXN0ID0gcmVzLmRhdGEucmVjb3JkcyB8fCBbXVxuXHRcdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSB0aGlzLmhhbGxQYWdlID09PSAxID8gbGlzdCA6IHRoaXMub3JkZXJMaXN0LmNvbmNhdChsaXN0KVxuXHRcdFx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IGxpc3QubGVuZ3RoID49IHRoaXMuaGFsbFBhZ2VTaXplXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5jYXRjaCgoZXJyKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5oYWxsTG9hZGluZyA9IGZhbHNlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRQaWNrdXBPcmRlcnMoKSB7XG5cdFx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkgcmV0dXJuO1xuXHRcdFx0XHRpZiAodGhpcy5waWNrdXBMb2FkaW5nKSByZXR1cm5cblx0XHRcdFx0dGhpcy5waWNrdXBMb2FkaW5nID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLiR1LmFwaS5hY3RpdmVPcmRlcnMoeyBzdGF0dXM6IDMgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCflvoXlj5botKc6JywgcmVzKVxuXHRcdFx0XHRcdHRoaXMucGlja3VwTG9hZGluZyA9IGZhbHNlXG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gcmVzLmRhdGEucmVjb3JkcyB8fCByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHRcdHRoaXMucGlja3VwTG9hZGluZyA9IGZhbHNlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXREZWxpdmVyaW5nT3JkZXJzKCkge1xuXHRcdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHJldHVybjtcblx0XHRcdFx0aWYgKHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcpIHJldHVyblxuXHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLiR1LmFwaS5hY3RpdmVPcmRlcnMoeyBzdGF0dXM6IDQgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfphY3pgIHkuK06JywgcmVzKVxuXHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmRlbGl2ZXJpbmdPcmRlckxpc3QgPSByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0b3BlblN0YXR1c1BpY2tlcigpIHtcblx0XHRcdFx0dGhpcy5zaG93U3RhdHVzUGlja2VyID0gdHJ1ZVxuXHRcdFx0fSxcblxuXHRcdFx0Y29uZmlybVN0YXR1cyhlKSB7XG5cdFx0XHRcdHRoaXMuc2hvd1N0YXR1c1BpY2tlciA9IGZhbHNlXG5cdFx0XHRcdGNvbnN0IHNlbGVjdGVkVmFsdWUgPSBlLnZhbHVlWzBdXG5cdFx0XHRcdHRoaXMuJHUuYXBpLnVwZGF0ZUFjY2VwdGluZ1N0YXR1cyh7IHN0YXR1czogc2VsZWN0ZWRWYWx1ZS52YWx1ZSB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gc2VsZWN0ZWRWYWx1ZS52YWx1ZVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkge1xuXHRcdFx0XHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdFx0dGhpcy5kZWxpdmVyaW5nT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ3BpY2t1cCcpIHtcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHRcdFx0XHRcdH0gZWxzZSBpZiAodGhpcy5hY3RpdmVUYWIgPT09ICdkZWxpdmVyaW5nJykge1xuXHRcdFx0XHRcdFx0XHRcdHRoaXMuZ2V0RGVsaXZlcmluZ09yZGVycygpXG5cdFx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0dG9Ecml2ZXJDZXJ0aWZpY2F0aW9uKCkge1xuXHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2RyaXZlci1jZXJ0aWZpY2F0aW9uL2RyaXZlci1jZXJ0aWZpY2F0aW9uJ1xuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0dG9nZ2xlRmlsdGVyUG9wdXAoc2hvdykge1xuXHRcdFx0XHR0aGlzLnNob3dGaWx0ZXJQb3B1cCA9IHNob3dcblx0XHRcdH0sXG5cblx0XHRcdHNlbGVjdEZpbHRlcihrZXksIG9wdGlvbikge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsdGVycyA9IHtcblx0XHRcdFx0XHQuLi50aGlzLnNlbGVjdGVkRmlsdGVycyxcblx0XHRcdFx0XHRba2V5XTogb3B0aW9uXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdHJlc2V0RmlsdGVycygpIHtcblx0XHRcdFx0dGhpcy5zaG93RmlsdGVyUG9wdXAgPSBmYWxzZVxuXHRcdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHJldHVybjtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbHRlcnMgPSB7XG5cdFx0XHRcdFx0c29ydDogJ+e7vOWQiOaOkuW6jycsXG5cdFx0XHRcdFx0bGV2ZWw6ICfkuI3pmZAnLFxuXHRcdFx0XHRcdGRpc3RhbmNlOiAn5LiN6ZmQJ1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2hhbGwnKSB7XG5cdFx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHRjb25maXJtRmlsdGVycygpIHtcblx0XHRcdFx0dGhpcy5zaG93RmlsdGVyUG9wdXAgPSBmYWxzZVxuXHRcdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHtcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2hhbGwnKSB7XG5cdFx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHRpbml0VFRTKCkge1xuXHRcdFx0XHRpZiAodW5pLmdldFN5c3RlbUluZm9TeW5jKCkucGxhdGZvcm0gIT09ICdhbmRyb2lkJykge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfku4XmlK/mjIHlronljZMnKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyDlr7zlhaXlronljZPljp/nlJ/nsbtcblx0XHRcdFx0XHRjb25zdCBUZXh0VG9TcGVlY2ggPSBwbHVzLmFuZHJvaWQuaW1wb3J0Q2xhc3MoJ2FuZHJvaWQuc3BlZWNoLnR0cy5UZXh0VG9TcGVlY2gnKVxuXHRcdFx0XHRcdGNvbnN0IExvY2FsZSA9IHBsdXMuYW5kcm9pZC5pbXBvcnRDbGFzcygnamF2YS51dGlsLkxvY2FsZScpXG5cblx0XHRcdFx0XHQvLyDliJvlu7pUVFNcblx0XHRcdFx0XHR0aGlzLnR0cyA9IG5ldyBUZXh0VG9TcGVlY2gocGx1cy5hbmRyb2lkLnJ1bnRpbWVNYWluQWN0aXZpdHkoKSwge1xuXHRcdFx0XHRcdFx0b25Jbml0OiAoc3RhdHVzKSA9PiB7XG5cdFx0XHRcdFx0XHRcdGlmIChzdGF0dXMgPT0gMCkge1xuXHRcdFx0XHRcdFx0XHRcdC8vIOiuvue9ruS4reaWh1xuXHRcdFx0XHRcdFx0XHRcdHRoaXMudHRzLnNldExhbmd1YWdlKExvY2FsZS5DSElOQSlcblx0XHRcdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6K+t6Z+z5Yid5aeL5YyW5oiQ5YqfJylcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5Yid5aeL5YyW5aSx6LSlJywgZSlcblx0XHRcdFx0fVxuXHRcdFx0fSxcblxuXHRcdFx0c3BlYWsodGV4dCkge1xuXHRcdFx0XHRpZiAoIXRoaXMudHRzKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0XHR0aXRsZTogJ+ivremfs+acquWHhuWkh+WlvScsXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyDlronljZPljp/nlJ/mkq3miqXvvIhRVUVVRV9GTFVTSCA9IOeri+WNs+aSreaKpe+8jOaJk+aWreS4iuS4gOadoe+8iVxuXHRcdFx0XHRcdHRoaXMudHRzLnNwZWFrKHRleHQsIDAsIG51bGwpXG5cdFx0XHRcdH0gY2F0Y2ggKGVycikge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmkq3miqXlpLHotKUnLCBlcnIpXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdHN0b3BTcGVhaygpIHtcblx0XHRcdFx0aWYgKHRoaXMudHRzKSB0aGlzLnR0cy5zdG9wKClcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0b25VbmxvYWQoKSB7XG5cdFx0XHRpZiAodGhpcy50dHMpIHtcblx0XHRcdFx0dGhpcy50dHMuc3RvcCgpXG5cdFx0XHRcdHRoaXMudHRzLnNodXRkb3duKClcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC5oYWxsLXBhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdGJhY2tncm91bmQ6ICNmNWY2Zjg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdC5xcmNvZGUge1xuXHRcdFx0cGFkZGluZzogMzZycHggMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0LnFyY29kZS10aXRsZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdGltYWdlIHtcblx0XHRcdFx0XHR3aWR0aDogMjhycHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAyOHJweDtcblx0XHRcdFx0fVxuXHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5xcmNvZGUtaW1hZ2Uge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDYwcnB4O1xuXHRcdFx0XHRpbWFnZSB7XG5cdFx0XHRcdFx0d2lkdGg6IDQwMHJweDtcblx0XHRcdFx0XHRoZWlnaHQ6IDQwMHJweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnFyY29kZS1idG4ge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMxMDZFRkE7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwcnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDY4cnB4O1xuXG5cdFx0XHRcdCYtLWhvdmVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycnB4KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5waG90by1kZWxpdmVyIHtcblx0XHRcdHBhZGRpbmc6IDMycnB4IDI4cnB4IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMjhycHgpO1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHJweDtcblx0XHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAyMHJweDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRcdCZfX2hlYWRlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdH1cblxuXHRcdFx0Jl9fdGl0bGUge1xuXHRcdFx0XHRmb250LXNpemU6IDM0cnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRjb2xvcjogIzExMTExMTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fY2xvc2UsXG5cdFx0XHQmX19jbG9zZS1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdHdpZHRoOiAzNnJweDtcblx0XHRcdFx0aGVpZ2h0OiAzNnJweDtcblx0XHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCZfX2Nsb3NlLXBsYWNlaG9sZGVyIHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdH1cblxuXHRcdFx0Jl9fc2VjdGlvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDU2cnB4O1xuXG5cdFx0XHRcdCYtLXJlbWFyayB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogNDZycHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fbGFiZWwtcm93IHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19sYWJlbCxcblx0XHRcdCZfX3JlbWFyay10aXRsZSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRcdGNvbG9yOiAjMjMyNjJkO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19yZXF1aXJlZCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiA0cnB4O1xuXHRcdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRjb2xvcjogI2ZmM2IzMDtcblx0XHRcdH1cblxuXHRcdFx0Jl9faGludCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMnJweDtcblx0XHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdFx0Y29sb3I6ICNhOGFkYjc7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3Bob3RvcyB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGdhcDogMThycHg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDMwcnB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmX191cGxvYWQtY2FyZCxcblx0XHRcdCZfX3ByZXZpZXctY2FyZCB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0d2lkdGg6IDE2MHJweDtcblx0XHRcdFx0aGVpZ2h0OiAxNjBycHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHR9XG5cblx0XHRcdCZfX3VwbG9hZC1jYXJkIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdGJvcmRlcjogMnJweCBkYXNoZWQgI2M5Y2VkNjtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdH1cblxuXHRcdFx0Jl9fdXBsb2FkLWljb24ge1xuXHRcdFx0XHR3aWR0aDogNTJycHg7XG5cdFx0XHRcdGhlaWdodDogNTJycHg7XG5cdFx0XHR9XG5cblx0XHRcdCZfX3VwbG9hZC10ZXh0IHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMTRycHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0XHRcdGNvbG9yOiAjOWRhM2FlO1xuXHRcdFx0fVxuXG5cdFx0XHQmX19wcmV2aWV3LWNhcmQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZWVmMWY1O1xuXHRcdFx0fVxuXG5cdFx0XHQmX19wcmV2aWV3LWltYWdlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fcHJldmlldy1tYXNrIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0aGVpZ2h0OiA0OHJweDtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQ2KTtcblx0XHRcdH1cblxuXHRcdFx0Jl9fcHJldmlldy1kZWxldGUge1xuXHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdH1cblxuXHRcdFx0Jl9fdGV4dGFyZWEge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMTBycHg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0XHRwYWRkaW5nOiAyOHJweCAyNHJweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTJycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmN2Y4ZmE7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRcdGNvbG9yOiAjMmMzMTM5O1xuXHRcdFx0fVxuXG5cdFx0XHQmX19zdWJtaXQge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA4NnJweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTBycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMxMDZlZmE7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYtLWhvdmVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9faGVhZGVyIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHotaW5kZXg6IDEwO1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI0NzNmNSAwJSwgIzFlNmZlZiAxMDAlKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMTJycHggMjRycHggcmdiYSgzNiwgMTE1LCAyNDUsIDAuMDgpO1xuXHRcdH1cblxuXHRcdCZfX3VzZXItcm93IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0cGFkZGluZzogMjBycHggMjRycHggMDtcblx0XHR9XG5cblx0XHQmX191c2VyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxNHJweDtcblx0XHR9XG5cblx0XHQmX19hdmF0YXIge1xuXHRcdFx0d2lkdGg6IDQycnB4O1xuXHRcdFx0aGVpZ2h0OiA0MnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdGJvcmRlcjogMnJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG5cdFx0fVxuXG5cdFx0Jl9fbmFtZSB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDEwcnB4IDE2cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KTtcblx0XHRcdGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHJweCk7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWRvdCB7XG5cdFx0XHR3aWR0aDogMTRycHg7XG5cdFx0XHRoZWlnaHQ6IDE0cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0YmFja2dyb3VuZDogIzMyZDc0Yjtcblx0XHRcdG1hcmdpbi1yaWdodDogMTBycHg7XG5cblx0XHRcdCYtLW9mZmxpbmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmYzYjMwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy10ZXh0LFxuXHRcdCZfX3N0YXR1cy1hcnJvdyB7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWFycm93IHtcblx0XHRcdGZvbnQtc2l6ZTogMThycHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogOHJweDtcblx0XHR9XG5cblx0XHQmX19zdGF0cyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0cGFkZGluZzogMzRycHggMzZycHggMjhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdC1pdGVtIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdG1pbi13aWR0aDogMTYwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3N0YXQtdmFsdWUge1xuXHRcdFx0Zm9udC1zaXplOiA1MnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3N0YXQtbGFiZWwge1xuXHRcdFx0bWFyZ2luLXRvcDogMTJycHg7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nik7XG5cdFx0fVxuXG5cdFx0Jl9fdGFicyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRwYWRkaW5nOiAwIDE4cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX190YWIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDAgMThycHg7XG5cdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0Y29sb3I6ICM4YjkwOTk7XG5cdFx0fVxuXG5cdFx0Jl9fdGFiLS1hY3RpdmUge1xuXHRcdFx0Y29sb3I6ICMyNDI5MzM7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdH1cblxuXHRcdCZfX3RhYi10ZXh0IHtcblx0XHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdH1cblxuXHRcdCZfX3RhYi1jb3VudCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogNnJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzhiOTA5OTtcblx0XHR9XG5cblx0XHQmX190YWItbGluZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAxOHJweDtcblx0XHRcdHJpZ2h0OiAxOHJweDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGhlaWdodDogNXJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDk5OXJweDtcblx0XHRcdGJhY2tncm91bmQ6ICMyNDczZjU7XG5cdFx0fVxuXG5cdFx0Jl9fZmlsdGVyIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDZycHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19maWx0ZXItdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM5YWExYWI7XG5cblx0XHRcdCYtLWFjdGl2ZSB7XG5cdFx0XHRcdGNvbG9yOiAjMTA2ZWZhO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmX19maWx0ZXItaWNvbiB7XG5cdFx0XHR3aWR0aDogMjhycHg7XG5cdFx0XHRoZWlnaHQ6IDI4cnB4O1xuXHRcdH1cblxuXHRcdCZfX2JvZHkge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGNkY5RkY7XG5cdFx0fVxuXG5cdFx0Jl9fbGlzdCB7XG5cdFx0XHRwYWRkaW5nOiAzMHJweDtcblx0XHR9XG5cblx0XHQmX192ZXJpZmllZCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0aW1hZ2Uge1xuXHRcdFx0XHR3aWR0aDogMzIwcnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDMyMHJweDtcblx0XHRcdH1cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdHdpZHRoOiAxNjBycHg7XG5cdFx0XHRcdGhlaWdodDogNjRycHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA2NHJweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGJvcmRlcjogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMTA2RUZBO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MHJweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogNDBycHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2VtcHR5IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR9XG5cblx0XHQmX19lbXB0eS1pY29uIHtcblx0XHRcdHdpZHRoOiAzMjBycHg7XG5cdFx0XHRoZWlnaHQ6IDMyMHJweDtcblx0XHR9XG5cdH1cblxuXHQuZmlsdGVyLXBvcHVwIHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR6LWluZGV4OiAyMDtcblxuXHRcdCZfX3BhbmVsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDI4cnB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDI4cnB4O1xuXHRcdH1cblxuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0XHRwYWRkaW5nOiAyMnJweCAxOHJweCAwO1xuXHRcdH1cblxuXHRcdCZfX3NlY3Rpb24ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fdGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyNTJiMzM7XG5cdFx0fVxuXG5cdFx0Jl9fb3B0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0Z2FwOiAxOHJweCAyMHJweDtcblx0XHR9XG5cblx0XHQmX19vcHRpb24ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiAyMjZycHg7XG5cdFx0XHRoZWlnaHQ6IDc0cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTBycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuXHRcdFx0Ym9yZGVyOiAycnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdFx0Ji0tYWN0aXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2VkZjVmZjtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjM2Q4Y2ZmO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX29wdGlvbi10ZXh0IHtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzRiNTE1YTtcblxuXHRcdFx0LmZpbHRlci1wb3B1cF9fb3B0aW9uLS1hY3RpdmUgJiB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdGNvbG9yOiAjMjY3OGZmO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2FjdGlvbnMge1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0Z2FwOiAyNHJweDtcblx0XHRcdHBhZGRpbmc6IDhycHggMThycHggMjZycHg7XG5cdFx0fVxuXG5cdFx0Jl9fYnV0dG9uIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRoZWlnaHQ6IDkycnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDkycnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji0tcmVzZXQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZWJlYmViO1xuXHRcdFx0XHRjb2xvcjogIzc3N2Q4Njtcblx0XHRcdH1cblxuXHRcdFx0Ji0tY29uZmlybSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMyZDgyZmYgMCUsICMyMDZlZjYgMTAwJSk7XG5cdFx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuOTI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm9yZGVyLWNhcmQge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcnB4O1xuXHRcdHBhZGRpbmc6IDIwcnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDI0cnB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0Ym94LXNoYWRvdzogMCAxMHJweCAyNHJweCByZ2JhKDI2LCA0NCwgODEsIDAuMDQpO1xuXG5cdFx0Jl9faGVhZCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0fVxuXG5cdFx0Jl9fdGltZS1tYWluIHtcblx0XHRcdGZvbnQtc2l6ZTogNDJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZjhkMjc7XG5cdFx0fVxuXG5cdFx0Jl9fdGltZS1zdWIge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDhycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICNhM2E4YjI7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2Utd3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDhycHg7XG5cblx0XHRcdCYtLXNlcmlhbC1vbmx5IHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRtaW4td2lkdGg6IDU0cnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3NlcmlhbCB7XG5cdFx0XHRmb250LXNpemU6IDM4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Y29sb3I6ICMyYzMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2Uge1xuXHRcdFx0Zm9udC1zaXplOiA0NHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmM2IzMDtcblx0XHR9XG5cblx0XHQmX19tZXRhIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxNnJweDtcblx0XHRcdG1hcmdpbi10b3A6IDEycnB4O1xuXHRcdH1cblxuXHRcdCZfX2V4dHJhIHtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdGNvbG9yOiAjYTBhNWFmO1xuXHRcdH1cblxuXHRcdCZfX3RhZ3Mge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRnYXA6IDEwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3RhZy13cmFwIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdH1cblxuXHRcdCZfX3RhZy1pY29uIHtcblx0XHRcdHdpZHRoOiAxMDhycHg7XG5cdFx0XHRoZWlnaHQ6IDQwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3RhZy1pbWcge1xuXHRcdFx0d2lkdGg6IDEwOHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fdGFnIHtcblx0XHRcdHBhZGRpbmc6IDRycHggMTBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0Ym9yZGVyOiAxcnB4IHNvbGlkICMyNDczZjU7XG5cdFx0XHRjb2xvcjogIzI0NzNmNTtcblxuXHRcdFx0Ji0tb3JhbmdlIHtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzE5ZGVnLCAjRUU5RDBFIDAlLCAjRkY0RTRFIDEwMCUpO1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdH1cblxuXHRcdFx0Ji0tcmVkIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjZmY2YzU3O1xuXHRcdFx0XHRjb2xvcjogI2ZmNmM1Nztcblx0XHRcdH1cblxuXHRcdFx0Ji0tYmx1ZS1saWdodCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogIzc0YTlmZjtcblx0XHRcdFx0Y29sb3I6ICM3NGE5ZmY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWJsdWUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDE2LDE3OCwyNTAsMC4wOCk7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDE1cnB4O1xuXHRcdFx0XHRib3JkZXI6IDJycHggc29saWQgIzEwNkVGQTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdFx0Y29sb3I6ICMxMDZFRkE7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdG1hcmdpbi10b3A6IDIwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLXNpZGUge1xuXHRcdFx0d2lkdGg6IDcwcnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRwYWRkaW5nOiAxNHJweCAwIDhycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAyNnJweDtcblx0XHRcdGJhY2tncm91bmQ6ICNmNmY3Zjk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcnB4O1xuXHRcdH1cblxuXHRcdCZfX2Rpc3RhbmNlLWJsb2NrIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXG5cdFx0XHQmLS10b3Age1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA2cnB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ib3R0b20ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2cnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2Rpc3RhbmNlLXZhbHVlIHtcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMzMzMzMzM7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0Jl9fZGlzdGFuY2UtdW5pdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA2cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAxOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRjb2xvcjogIzhjOTM5Zjtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG5cdFx0fVxuXG5cdFx0Jl9fbGluZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4taGVpZ2h0OiA2MnJweDtcblx0XHRcdG1hcmdpbjogOHJweCAwO1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyNicgdmlld0JveD0nMCAwIDIwIDI2JyUzRSUzQ3BhdGggZmlsbD0nJTIzOEM5MzlGJyBkPSdNMTAgMEM1LjAzIDAgMSAzLjk5IDEgOC45MmMwIDYuMzEgNy4yOCAxMi44NyA4LjA3IDEzLjU3YTEuNCAxLjQgMCAwIDAgMS44NiAwQzExLjcyIDIxLjc5IDE5IDE1LjIzIDE5IDguOTIgMTkgMy45OSAxNC45NyAwIDEwIDBabTAgMTIuMjRhMy4zMiAzLjMyIDAgMSAxIDAtNi42NCAzLjMyIDMuMzIgMCAwIDEgMCA2LjY0WicvJTNFJTNDL3N2ZyUzRVwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjBycHggMjZycHg7XG5cblx0XHRcdCY6OmJlZm9yZSxcblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0XHRcdHdpZHRoOiAycnB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA5OTlycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNjZmQ0ZGM7XG5cdFx0XHR9XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0aGVpZ2h0OiAxOHJweDtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdGhlaWdodDogMjRycHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtbWFpbiB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWl0ZW0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0Z2FwOiAxNnJweDtcblxuXHRcdFx0Ji0tZGVzdGluYXRpb24ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS10ZXh0cyB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLXRpdGxlIHtcblx0XHRcdHdpZHRoOiA1MDBycHg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogNDBycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyZDMxMzk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHR9XG5cblx0XHQmX19yb3V0ZS1kZXNjIHtcblx0XHRcdHdpZHRoOiA1MDBycHg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDhycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM5ZWE0YWU7XG5cdFx0XHRsaW5lLWhlaWdodDogMS40O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHR9XG5cblx0XHQmX19uYXYge1xuXHRcdFx0d2lkdGg6IDQ4cnB4O1xuXHRcdFx0aGVpZ2h0OiA0OHJweDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblxuXHRcdCZfX2dvb2RzIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0aGVpZ2h0OiA3MHJweDtcblx0XHRcdHBhZGRpbmc6IDAgMjBycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y0ZjVmNztcblx0XHR9XG5cblx0XHQmX19nb29kcy10ZXh0IHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM3YTgxOGQ7XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdH1cblxuXHRcdCZfX2dvb2RzLWFycm93IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMnJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRjb2xvcjogI2E0YTliMTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXG5cdFx0XHQmLS1leHBhbmRlZCB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fYnV0dG9uIHtcblx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzJiN2ZmZiAwJSwgIzFmNmZmMyAxMDAlKTtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2FjdGlvbnMge1xuXHRcdFx0bWFyZ2luLXRvcDogMjRycHg7XG5cblx0XHRcdCYtLXBpY2t1cCxcblx0XHRcdCYtLWRlbGl2ZXJpbmcge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRnYXA6IDIycnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ljb24tYWN0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMjBycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblxuXHRcdFx0Ji0tc2luZ2xlIHtcblx0XHRcdFx0Z2FwOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ljb24tYWN0aW9uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0d2lkdGg6IDc0cnB4O1xuXHRcdH1cblxuXHRcdCZfX2FjdGlvbi1pY29uIHtcblx0XHRcdHdpZHRoOiA0MHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y3ZjhmYTtcblx0XHR9XG5cblx0XHQmX19hY3Rpb24tdGV4dCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA4cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0Y29sb3I6ICM1YjYxNmI7XG5cdFx0fVxuXG5cdFx0Jl9fYnV0dG9uLS1jb2RlIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///91\n");
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n  data: function data() {\n    return {\n      tts: null,\n      show: false,\n      show1: false,\n      showGrabModal: false,\n      selectedGrabOrder: null,\n      selectedCancelOrder: null,\n      cancelRemain: 0,\n      selectedPickupOrder: null,\n      showPhotoDeliverPopup: false,\n      routeInfo: null,\n      statusBarHeight: 0,\n      headerHeight: 0,\n      tabbarHeight: 0,\n      scrollHeight: 0,\n      showFilterPopup: false,\n      acceptingStatus: 0,\n      showStatusPicker: false,\n      statusOptions: [{\n        text: '上线',\n        value: 1\n      }, {\n        text: '下线',\n        value: 0\n      }],\n      centerUserInfo: {},\n      activeTab: 'hall',\n      expandedGoodsIds: [],\n      categoryList: [],\n      filterSections: [{\n        key: 'sort',\n        title: '排序',\n        options: ['综合排序', '距离最近']\n      }, {\n        key: 'level',\n        title: '物品等级',\n        options: ['不限']\n      }, {\n        key: 'distance',\n        title: '位置范围',\n        options: ['不限', '500m', '1km', '2km', '3km', '4km', '5km', '6km', '7km']\n      }],\n      selectedFilters: {\n        sort: '综合排序',\n        level: '不限',\n        distance: '不限'\n      },\n      stats: [{\n        value: '-',\n        label: '服务分'\n      }, {\n        value: '-',\n        label: '今日预计佣金'\n      }, {\n        value: '-',\n        label: '今日接单'\n      }],\n      tabs: [{\n        label: '抢单大厅',\n        value: 'hall'\n      }, {\n        label: '待取货',\n        value: 'pickup'\n      }, {\n        label: '配送中',\n        value: 'delivering'\n      }],\n      orderList: [],\n      pickupOrderList: [],\n      deliveringOrderList: [],\n      hallPage: 1,\n      hallPageSize: 10,\n      hallLoading: false,\n      hallHasMore: true,\n      pickupLoading: false,\n      deliveringLoading: false,\n      activeOrderCount: null\n    };\n  },\n  watch: {\n    activeTab: function activeTab(newVal) {\n      this.loadOrdersByTab(newVal);\n    }\n  },\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    var safeBottom = systemInfo.safeAreaInsets ? systemInfo.safeAreaInsets.bottom || 0 : 0;\n    var windowHeight = systemInfo.windowHeight || 0;\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.headerHeight = this.statusBarHeight + uni.upx2px(308);\n    this.tabbarHeight = uni.upx2px(100) + safeBottom;\n    this.scrollHeight = Math.max(windowHeight - this.headerHeight, 0);\n    if (this.userInfo.auditStatus === 99) return;\n    this.acceptingStatus = this.userInfo.acceptingStatus || 0;\n    this.loadOrdersByTab(this.activeTab);\n  },\n  onShow: function onShow() {\n    this.getCenterInfo();\n    this.getCategoryListData();\n    this.getActiveOrderCount();\n  },\n  onReachBottom: function onReachBottom() {\n    if (this.acceptingStatus === 0) return;\n    if (this.activeTab === 'hall') {\n      this.hallPage++;\n      this.getHallOrders();\n    }\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])), {}, {\n    displayTabs: function displayTabs() {\n      var _this = this;\n      return this.tabs.map(function (tab) {\n        if (tab.value === 'pickup') {\n          var _this$activeOrderCoun;\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            count: (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount\n          });\n        } else if (tab.value === 'delivering') {\n          var _this$activeOrderCoun2;\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            count: (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount\n          });\n        }\n        return tab;\n      });\n    },\n    currentOrderList: function currentOrderList() {\n      var orderMap = {\n        hall: this.orderList,\n        pickup: this.pickupOrderList,\n        delivering: this.deliveringOrderList\n      };\n      return orderMap[this.activeTab] || [];\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.headerHeight + 'px',\n        height: this.scrollHeight + 'px'\n      };\n    }\n  }),\n  onReady: function onReady() {\n    this.initTTS(); // 页面渲染完成初始化语音\n  },\n\n  methods: {\n    formatRemainTime: function formatRemainTime(minutes) {\n      if (!minutes) return 0;\n      if (minutes === 0) {\n        return '配送已超时';\n      }\n      if (minutes >= 60) {\n        return (minutes / 60).toFixed(2) + '小时内';\n      }\n      return minutes + '分钟内';\n    },\n    getGoodsText: function getGoodsText(items, itemId) {\n      if (!items || items.length === 0) return '无';\n      var text = items.map(function (i) {\n        return \"\".concat(i.name, \"*\").concat(i.quantity);\n      }).join('、');\n      if (text.length > 20 && !this.expandedGoodsIds.includes(itemId)) {\n        return text.substring(0, 20) + '...';\n      }\n      return text;\n    },\n    toggleGoodsExpand: function toggleGoodsExpand(id) {\n      var index = this.expandedGoodsIds.indexOf(id);\n      if (index > -1) {\n        this.expandedGoodsIds.splice(index, 1);\n      } else {\n        this.expandedGoodsIds.push(id);\n      }\n    },\n    formatDistanceParts: function formatDistanceParts(distance) {\n      if (distance === null || distance === undefined || distance === '') {\n        return {\n          value: '--',\n          unit: ''\n        };\n      }\n      if (typeof distance === 'number') {\n        if (distance >= 1000) {\n          return {\n            value: (distance / 1000).toFixed(1),\n            unit: 'km'\n          };\n        }\n        return {\n          value: String(Math.round(distance)),\n          unit: 'm'\n        };\n      }\n      var text = String(distance).trim();\n      var match = text.match(/^([\\d.]+)\\s*([a-zA-Z\\u4e00-\\u9fa5]*)$/);\n      if (match) {\n        return {\n          value: match[1],\n          unit: match[2] || ''\n        };\n      }\n      return {\n        value: text,\n        unit: ''\n      };\n    },\n    navigateToAddress: function navigateToAddress(item, type) {\n      var latitude, longitude, name, address;\n      if (type === 'deposit') {\n        latitude = item.depositLat;\n        longitude = item.depositLng;\n        name = item.depositShopName;\n        address = item.depositShopAddress;\n      } else {\n        latitude = item.takeLat;\n        longitude = item.takeLng;\n        name = item.takeName;\n        address = item.takeAddress;\n      }\n      if (!latitude || !longitude) {\n        uni.showToast({\n          title: '地址坐标缺失',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.openLocation({\n        latitude: latitude,\n        longitude: longitude,\n        name: name,\n        address: address,\n        success: function success() {},\n        fail: function fail(err) {\n          uni.showToast({\n            title: '打开地图失败',\n            icon: 'none'\n          });\n          __f__(\"error\", 'openLocation fail:', err, \" at pages/index/index.vue:473\");\n        }\n      });\n    },\n    handleUserClick: function handleUserClick() {\n      uni.navigateTo({\n        url: '/pages/test/test'\n      });\n    },\n    getActiveOrderCount: function getActiveOrderCount() {\n      var _this2 = this;\n      this.$u.api.activeOrderCount().then(function (res) {\n        if (res.code === 200) {\n          _this2.activeOrderCount = res.data;\n        }\n      }).catch(function (err) {\n        _this2.activeOrderCount = null;\n      });\n    },\n    handleGrabOrder: function handleGrabOrder(item) {\n      __f__(\"log\", item, \" at pages/index/index.vue:494\");\n      this.selectedGrabOrder = item;\n      this.showGrabModal = true;\n    },\n    confirmGrabOrder: function confirmGrabOrder() {\n      var _this3 = this;\n      if (!this.selectedGrabOrder) return;\n      this.$u.api.grabOrder({\n        orderId: this.selectedGrabOrder.id\n      }).then(function (res) {\n        _this3.showGrabModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '抢单成功',\n            icon: 'success'\n          });\n          _this3.hallPage = 1;\n          _this3.hallHasMore = true;\n          _this3.orderList = [];\n          _this3.getHallOrders();\n          _this3.getActiveOrderCount();\n          _this3.getCenterInfo();\n        } else {\n          uni.showToast({\n            title: res.message || '抢单失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this3.showGrabModal = false;\n      });\n    },\n    handleCancelOrder: function handleCancelOrder(item) {\n      var _this4 = this;\n      this.selectedCancelOrder = item;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this4.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this4.show = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this5 = this;\n      if (!this.selectedCancelOrder) return;\n      this.$u.api.cancelOrder({\n        orderId: this.selectedCancelOrder.id\n      }).then(function (res) {\n        _this5.show = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this5.getPickupOrders();\n          _this5.getCenterInfo();\n          _this5.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.message || '取消失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this5.show = false;\n      });\n    },\n    handleCall: function handleCall(item) {\n      if (item.contactPhone) {\n        uni.makePhoneCall({\n          phoneNumber: item.contactPhone\n        });\n      }\n    },\n    handleShowPickupCode: function handleShowPickupCode(item) {\n      this.selectedPickupOrder = item;\n      this.show1 = true;\n    },\n    goToOrderDetail: function goToOrderDetail(item, index) {\n      var url = \"/pages/order-detail/order-detail?id=\".concat(item.id);\n      if (this.activeTab === 'pickup' || this.activeTab === 'delivering') {\n        url += \"&index=\".concat(index + 1);\n      }\n      uni.navigateTo({\n        url: url\n      });\n    },\n    getCenterInfo: function getCenterInfo() {\n      var _this6 = this;\n      this.$u.api.centerInfo().then(function (res) {\n        if (res.code === 200) {\n          _this6.acceptingStatus = res.data.acceptingStatus;\n          _this6.centerUserInfo = {\n            fullImgUrl: res.data.fullImgUrl,\n            name: res.data.name\n          };\n          _this6.stats = [{\n            value: res.data.score,\n            label: '服务分'\n          }, {\n            value: (res.data.todayCommission / 100 || 0).toFixed(2),\n            label: '今日预计佣金'\n          }, {\n            value: res.data.todayOrderCount,\n            label: '今日接单'\n          }];\n        }\n      });\n    },\n    getCategoryListData: function getCategoryListData() {\n      var _this7 = this;\n      this.$u.api.getCategoryList({\n        type: 3\n      }).then(function (res) {\n        if (res.code === 200) {\n          _this7.categoryList = res.data || [];\n          _this7.filterSections.forEach(function (section) {\n            if (section.key === 'level') {\n              section.options = ['不限'].concat((0, _toConsumableArray2.default)(_this7.categoryList.map(function (item) {\n                return item.name;\n              })));\n            }\n          });\n        }\n      });\n    },\n    loadOrdersByTab: function loadOrdersByTab(tab) {\n      if (this.userInfo.auditStatus === 99) return;\n      if (this.acceptingStatus === 0) return;\n      if (tab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      } else if (tab === 'pickup') {\n        this.pickupOrderList = [];\n        this.getPickupOrders();\n      } else if (tab === 'delivering') {\n        this.deliveringOrderList = [];\n        this.getDeliveringOrders();\n      }\n    },\n    getHallOrders: function getHallOrders() {\n      var _this8 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.hallLoading || !this.hallHasMore) {\n        return;\n      }\n      this.hallLoading = true;\n      var distance = null;\n      if (this.selectedFilters.distance !== '不限') {\n        var distanceText = this.selectedFilters.distance;\n        if (distanceText.includes('km')) {\n          distance = parseInt(distanceText) * 1000;\n        } else {\n          distance = parseInt(distanceText);\n        }\n      }\n      var sortTypeMap = {\n        '综合排序': 1,\n        '距离最近': 2\n      };\n      var sortType = this.selectedFilters.sort !== '不限' ? sortTypeMap[this.selectedFilters.sort] || null : null;\n      var gradeId = null;\n      if (this.selectedFilters.level !== '不限') {\n        var selectedCategory = this.categoryList.find(function (item) {\n          return item.name === _this8.selectedFilters.level;\n        });\n        if (selectedCategory) {\n          gradeId = selectedCategory.id;\n        }\n      }\n      __f__(\"log\", '接单大厅:', {\n        distance: distance,\n        gradeId: gradeId,\n        sortType: sortType\n      }, \" at pages/index/index.vue:646\");\n      this.$u.api.grabOrderHall({\n        capacity: this.hallPageSize,\n        page: this.hallPage,\n        model: {\n          distance: distance,\n          gradeId: gradeId,\n          sortType: sortType\n        }\n      }).then(function (res) {\n        __f__(\"log\", '接单大厅', res, \" at pages/index/index.vue:656\");\n        _this8.hallLoading = false;\n        if (res.code === 200) {\n          var list = res.data.records || [];\n          _this8.orderList = _this8.hallPage === 1 ? list : _this8.orderList.concat(list);\n          _this8.hallHasMore = list.length >= _this8.hallPageSize;\n        }\n      }).catch(function (err) {\n        _this8.hallLoading = false;\n      });\n    },\n    getPickupOrders: function getPickupOrders() {\n      var _this9 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.pickupLoading) return;\n      this.pickupLoading = true;\n      this.$u.api.activeOrders({\n        status: 3\n      }).then(function (res) {\n        __f__(\"log\", '待取货:', res, \" at pages/index/index.vue:673\");\n        _this9.pickupLoading = false;\n        if (res.code === 200) {\n          _this9.pickupOrderList = res.data.records || res.data || [];\n        }\n      }).catch(function (err) {\n        _this9.pickupLoading = false;\n      });\n    },\n    getDeliveringOrders: function getDeliveringOrders() {\n      var _this10 = this;\n      if (this.acceptingStatus === 0) return;\n      if (this.deliveringLoading) return;\n      this.deliveringLoading = true;\n      this.$u.api.activeOrders({\n        status: 4\n      }).then(function (res) {\n        __f__(\"log\", '配送中:', res, \" at pages/index/index.vue:688\");\n        _this10.deliveringLoading = false;\n        if (res.code === 200) {\n          _this10.deliveringOrderList = res.data || [];\n        }\n      }).catch(function (err) {\n        _this10.deliveringLoading = false;\n      });\n    },\n    openStatusPicker: function openStatusPicker() {\n      this.showStatusPicker = true;\n    },\n    confirmStatus: function confirmStatus(e) {\n      var _this11 = this;\n      this.showStatusPicker = false;\n      var selectedValue = e.value[0];\n      this.$u.api.updateAcceptingStatus({\n        status: selectedValue.value\n      }).then(function (res) {\n        if (res.code === 200) {\n          _this11.acceptingStatus = selectedValue.value;\n          _this11.getCenterInfo();\n          if (_this11.acceptingStatus === 0) {\n            _this11.orderList = [];\n            _this11.pickupOrderList = [];\n            _this11.deliveringOrderList = [];\n          } else {\n            if (_this11.activeTab === 'pickup') {\n              _this11.getPickupOrders();\n            } else if (_this11.activeTab === 'delivering') {\n              _this11.getDeliveringOrders();\n            } else {\n              _this11.hallPage = 1;\n              _this11.hallHasMore = true;\n              _this11.orderList = [];\n              _this11.getHallOrders();\n            }\n          }\n        }\n      });\n    },\n    toDriverCertification: function toDriverCertification() {\n      uni.navigateTo({\n        url: '/pages/driver-certification/driver-certification'\n      });\n    },\n    toggleFilterPopup: function toggleFilterPopup(show) {\n      this.showFilterPopup = show;\n    },\n    selectFilter: function selectFilter(key, option) {\n      this.selectedFilters = _objectSpread(_objectSpread({}, this.selectedFilters), {}, (0, _defineProperty2.default)({}, key, option));\n    },\n    resetFilters: function resetFilters() {\n      this.showFilterPopup = false;\n      if (this.userInfo.auditStatus === 99) return;\n      this.selectedFilters = {\n        sort: '综合排序',\n        level: '不限',\n        distance: '不限'\n      };\n      if (this.activeTab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      }\n    },\n    confirmFilters: function confirmFilters() {\n      this.showFilterPopup = false;\n      if (this.userInfo.auditStatus === 99) {\n        this.hallHasMore = true;\n        return;\n      }\n      if (this.activeTab === 'hall') {\n        this.hallPage = 1;\n        this.hallHasMore = true;\n        this.orderList = [];\n        this.getHallOrders();\n      }\n    },\n    initTTS: function initTTS() {\n      var _this12 = this;\n      if (uni.getSystemInfoSync().platform !== 'android') {\n        __f__(\"log\", '仅支持安卓', \" at pages/index/index.vue:778\");\n        return;\n      }\n      try {\n        // 导入安卓原生类\n        var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n        var Locale = plus.android.importClass('java.util.Locale');\n\n        // 创建TTS\n        this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n          onInit: function onInit(status) {\n            if (status == 0) {\n              // 设置中文\n              _this12.tts.setLanguage(Locale.CHINA);\n              __f__(\"log\", '语音初始化成功', \" at pages/index/index.vue:793\");\n            }\n          }\n        });\n      } catch (e) {\n        __f__(\"log\", '初始化失败', e, \" at pages/index/index.vue:798\");\n      }\n    },\n    speak: function speak(text) {\n      if (!this.tts) {\n        uni.showToast({\n          title: '语音未准备好',\n          icon: 'none'\n        });\n        return;\n      }\n      try {\n        // 安卓原生播报(QUEUE_FLUSH = 立即播报,打断上一条)\n        this.tts.speak(text, 0, null);\n      } catch (err) {\n        __f__(\"log\", '播报失败', err, \" at pages/index/index.vue:815\");\n      }\n    },\n    stopSpeak: function stopSpeak() {\n      if (this.tts) this.tts.stop();\n    }\n  },\n  onUnload: function onUnload() {\n    if (this.tts) {\n      this.tts.stop();\n      this.tts.shutdown();\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJ0dHMiLCJzaG93Iiwic2hvdzEiLCJzaG93R3JhYk1vZGFsIiwic2VsZWN0ZWRHcmFiT3JkZXIiLCJzZWxlY3RlZENhbmNlbE9yZGVyIiwiY2FuY2VsUmVtYWluIiwic2VsZWN0ZWRQaWNrdXBPcmRlciIsInNob3dQaG90b0RlbGl2ZXJQb3B1cCIsInJvdXRlSW5mbyIsInN0YXR1c0JhckhlaWdodCIsImhlYWRlckhlaWdodCIsInRhYmJhckhlaWdodCIsInNjcm9sbEhlaWdodCIsInNob3dGaWx0ZXJQb3B1cCIsImFjY2VwdGluZ1N0YXR1cyIsInNob3dTdGF0dXNQaWNrZXIiLCJzdGF0dXNPcHRpb25zIiwidGV4dCIsInZhbHVlIiwiY2VudGVyVXNlckluZm8iLCJhY3RpdmVUYWIiLCJleHBhbmRlZEdvb2RzSWRzIiwiY2F0ZWdvcnlMaXN0IiwiZmlsdGVyU2VjdGlvbnMiLCJrZXkiLCJ0aXRsZSIsIm9wdGlvbnMiLCJzZWxlY3RlZEZpbHRlcnMiLCJzb3J0IiwibGV2ZWwiLCJkaXN0YW5jZSIsInN0YXRzIiwibGFiZWwiLCJ0YWJzIiwib3JkZXJMaXN0IiwicGlja3VwT3JkZXJMaXN0IiwiZGVsaXZlcmluZ09yZGVyTGlzdCIsImhhbGxQYWdlIiwiaGFsbFBhZ2VTaXplIiwiaGFsbExvYWRpbmciLCJoYWxsSGFzTW9yZSIsInBpY2t1cExvYWRpbmciLCJkZWxpdmVyaW5nTG9hZGluZyIsImFjdGl2ZU9yZGVyQ291bnQiLCJ3YXRjaCIsIm5ld1ZhbCIsImxvYWRPcmRlcnNCeVRhYiIsIm9uTG9hZCIsInN5c3RlbUluZm8iLCJ1bmkiLCJnZXRTeXN0ZW1JbmZvU3luYyIsInNhZmVCb3R0b20iLCJzYWZlQXJlYUluc2V0cyIsImJvdHRvbSIsIndpbmRvd0hlaWdodCIsInVweDJweCIsIk1hdGgiLCJtYXgiLCJ1c2VySW5mbyIsImF1ZGl0U3RhdHVzIiwib25TaG93IiwiZ2V0Q2VudGVySW5mbyIsImdldENhdGVnb3J5TGlzdERhdGEiLCJnZXRBY3RpdmVPcmRlckNvdW50Iiwib25SZWFjaEJvdHRvbSIsImdldEhhbGxPcmRlcnMiLCJjb21wdXRlZCIsIm1hcFN0YXRlIiwiZGlzcGxheVRhYnMiLCJtYXAiLCJ0YWIiLCJjb3VudCIsImdyYWJiZWRDb3VudCIsImRlbGl2ZXJpbmdDb3VudCIsImN1cnJlbnRPcmRlckxpc3QiLCJvcmRlck1hcCIsImhhbGwiLCJwaWNrdXAiLCJkZWxpdmVyaW5nIiwiYm9keVN0eWxlIiwibWFyZ2luVG9wIiwiaGVpZ2h0Iiwib25SZWFkeSIsImluaXRUVFMiLCJtZXRob2RzIiwiZm9ybWF0UmVtYWluVGltZSIsIm1pbnV0ZXMiLCJ0b0ZpeGVkIiwiZ2V0R29vZHNUZXh0IiwiaXRlbXMiLCJpdGVtSWQiLCJsZW5ndGgiLCJpIiwibmFtZSIsInF1YW50aXR5Iiwiam9pbiIsImluY2x1ZGVzIiwic3Vic3RyaW5nIiwidG9nZ2xlR29vZHNFeHBhbmQiLCJpZCIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSIsInB1c2giLCJmb3JtYXREaXN0YW5jZVBhcnRzIiwidW5kZWZpbmVkIiwidW5pdCIsIlN0cmluZyIsInJvdW5kIiwidHJpbSIsIm1hdGNoIiwibmF2aWdhdGVUb0FkZHJlc3MiLCJpdGVtIiwidHlwZSIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwiYWRkcmVzcyIsImRlcG9zaXRMYXQiLCJkZXBvc2l0TG5nIiwiZGVwb3NpdFNob3BOYW1lIiwiZGVwb3NpdFNob3BBZGRyZXNzIiwidGFrZUxhdCIsInRha2VMbmciLCJ0YWtlTmFtZSIsInRha2VBZGRyZXNzIiwic2hvd1RvYXN0IiwiaWNvbiIsIm9wZW5Mb2NhdGlvbiIsInN1Y2Nlc3MiLCJmYWlsIiwiZXJyIiwiaGFuZGxlVXNlckNsaWNrIiwibmF2aWdhdGVUbyIsInVybCIsIiR1IiwiYXBpIiwidGhlbiIsInJlcyIsImNvZGUiLCJjYXRjaCIsImhhbmRsZUdyYWJPcmRlciIsImNvbmZpcm1HcmFiT3JkZXIiLCJncmFiT3JkZXIiLCJvcmRlcklkIiwibWVzc2FnZSIsImhhbmRsZUNhbmNlbE9yZGVyIiwiY2FuY2VsTGltaXQiLCJyZW1haW4iLCJmaW5hbGx5IiwiY29uZmlybUNhbmNlbE9yZGVyIiwiY2FuY2VsT3JkZXIiLCJnZXRQaWNrdXBPcmRlcnMiLCJoYW5kbGVDYWxsIiwiY29udGFjdFBob25lIiwibWFrZVBob25lQ2FsbCIsInBob25lTnVtYmVyIiwiaGFuZGxlU2hvd1BpY2t1cENvZGUiLCJnb1RvT3JkZXJEZXRhaWwiLCJjZW50ZXJJbmZvIiwiZnVsbEltZ1VybCIsInNjb3JlIiwidG9kYXlDb21taXNzaW9uIiwidG9kYXlPcmRlckNvdW50IiwiZ2V0Q2F0ZWdvcnlMaXN0IiwiZm9yRWFjaCIsInNlY3Rpb24iLCJnZXREZWxpdmVyaW5nT3JkZXJzIiwiZGlzdGFuY2VUZXh0IiwicGFyc2VJbnQiLCJzb3J0VHlwZU1hcCIsInNvcnRUeXBlIiwiZ3JhZGVJZCIsInNlbGVjdGVkQ2F0ZWdvcnkiLCJmaW5kIiwiZ3JhYk9yZGVySGFsbCIsImNhcGFjaXR5IiwicGFnZSIsIm1vZGVsIiwibGlzdCIsInJlY29yZHMiLCJjb25jYXQiLCJhY3RpdmVPcmRlcnMiLCJzdGF0dXMiLCJvcGVuU3RhdHVzUGlja2VyIiwiY29uZmlybVN0YXR1cyIsImUiLCJzZWxlY3RlZFZhbHVlIiwidXBkYXRlQWNjZXB0aW5nU3RhdHVzIiwidG9Ecml2ZXJDZXJ0aWZpY2F0aW9uIiwidG9nZ2xlRmlsdGVyUG9wdXAiLCJzZWxlY3RGaWx0ZXIiLCJvcHRpb24iLCJyZXNldEZpbHRlcnMiLCJjb25maXJtRmlsdGVycyIsInBsYXRmb3JtIiwiVGV4dFRvU3BlZWNoIiwicGx1cyIsImFuZHJvaWQiLCJpbXBvcnRDbGFzcyIsIkxvY2FsZSIsInJ1bnRpbWVNYWluQWN0aXZpdHkiLCJvbkluaXQiLCJzZXRMYW5ndWFnZSIsIkNISU5BIiwic3BlYWsiLCJzdG9wU3BlYWsiLCJzdG9wIiwib25VbmxvYWQiLCJz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Q0EsT0FBSSxDQUFDdkwsR0FBRyxDQUFDMk0sV0FBVyxDQUFDSCxNQUFNLENBQUNJLEtBQUssQ0FBQztjQUNsQyxhQUFZLFNBQVM7WUFDdEI7VUFDRDtRQUNELENBQUMsQ0FBQztNQUNILENBQUMsQ0FBQyxPQUFPbEIsQ0FBQyxFQUFFO1FBQ1gsYUFBWSxPQUFPLEVBQUVBLENBQUM7TUFDdkI7SUFDRCxDQUFDO0lBRURtQixLQUFLLGlCQUFDM0wsSUFBSSxFQUFFO01BQ1gsSUFBSSxDQUFDLElBQUksQ0FBQ2xCLEdBQUcsRUFBRTtRQUNka0QsR0FBRyxDQUFDNEUsU0FBUyxDQUFDO1VBQ2JwRyxLQUFLLEVBQUUsUUFBUTtVQUNmcUcsSUFBSSxFQUFFO1FBQ1AsQ0FBQyxDQUFDO1FBQ0Y7TUFDRDtNQUVBLElBQUk7UUFDSDtRQUNBLElBQUksQ0FBQy9ILEdBQUcsQ0FBQzZNLEtBQUssQ0FBQzNMLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDO01BQzlCLENBQUMsQ0FBQyxPQUFPaUgsR0FBRyxFQUFFO1FBQ2IsYUFBWSxNQUFNLEVBQUVBLEdBQUc7TUFDeEI7SUFDRCxDQUFDO0lBRUQyRSxTQUFTLHVCQUFHO01BQ1gsSUFBSSxJQUFJLENBQUM5TSxHQUFHLEVBQUUsSUFBSSxDQUFDQSxHQUFHLENBQUMrTSxJQUFJLEVBQUU7SUFDOUI7RUFDRCxDQUFDO0VBRURDLFFBQVEsc0JBQUc7SUFDVixJQUFJLElBQUksQ0FBQ2hOLEdBQUcsRUFBRTtNQUNiLElBQUksQ0FBQ0EsR0FBRyxDQUFDK00sSUFBSSxFQUFFO01BQ2YsSUFBSSxDQUFDL00sR0FBRyxDQUFDaU4sUUFBUSxFQUFFO0lBQ3BCO0VBQ0Q7QUFDRCxDQUFDO0FBQUEsMkIiLCJmaWxlIjoiOTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG4vL1xuLy9cbi8vXG5cbmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCdcbmV4cG9ydCBkZWZhdWx0IHtcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0dHRzOiBudWxsLFxuXHRcdFx0c2hvdzogZmFsc2UsXG5cdFx0XHRzaG93MTogZmFsc2UsXG5cdFx0XHRzaG93R3JhYk1vZGFsOiBmYWxzZSxcblx0XHRcdHNlbGVjdGVkR3JhYk9yZGVyOiBudWxsLFxuXHRcdFx0c2VsZWN0ZWRDYW5jZWxPcmRlcjogbnVsbCxcblx0XHRcdGNhbmNlbFJlbWFpbjogMCxcblx0XHRcdHNlbGVjdGVkUGlja3VwT3JkZXI6IG51bGwsXG5cdFx0XHRzaG93UGhvdG9EZWxpdmVyUG9wdXA6IGZhbHNlLFxuXHRcdFx0cm91dGVJbmZvOiBudWxsLFxuXHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0aGVhZGVySGVpZ2h0OiAwLFxuXHRcdFx0dGFiYmFySGVpZ2h0OiAwLFxuXHRcdFx0c2Nyb2xsSGVpZ2h0OiAwLFxuXHRcdFx0c2hvd0ZpbHRlclBvcHVwOiBmYWxzZSxcblx0XHRcdGFjY2VwdGluZ1N0YXR1czogMCxcblx0XHRcdHNob3dTdGF0dXNQaWNrZXI6IGZhbHNlLFxuXHRcdFx0c3RhdHVzT3B0aW9uczogW1xuXHRcdFx0XHR7IHRleHQ6ICfkuIrnur8nLCB2YWx1ZTogMSB9LFxuXHRcdFx0XHR7IHRleHQ6ICfkuIvnur8nLCB2YWx1ZTogMCB9XG5cdFx0XHRdLFxuXHRcdFx0Y2VudGVyVXNlckluZm86IHt9LFxuXHRcdFx0YWN0aXZlVGFiOiAnaGFsbCcsXG5cdFx0XHRleHBhbmRlZEdvb2RzSWRzOiBbXSxcblx0XHRcdGNhdGVnb3J5TGlzdDogW10sXG5cdFx0XHRmaWx0ZXJTZWN0aW9uczogW1xuXHRcdFx0XHR7IGtleTogJ3NvcnQnLCB0aXRsZTogJ+aOkuW6jycsIG9wdGlvbnM6IFsn57u85ZCI5o6S5bqPJywgJ+i3neemu+acgOi/kSddIH0sXG5cdFx0XHRcdHsga2V5OiAnbGV2ZWwnLCB0aXRsZTogJ+eJqeWTgeetiee6pycsIG9wdGlvbnM6IFsn5LiN6ZmQJ10gfSxcblx0XHRcdFx0eyBrZXk6ICdkaXN0YW5jZScsIHRpdGxlOiAn5L2N572u6IyD5Zu0Jywgb3B0aW9uczogWyfkuI3pmZAnLCAnNTAwbScsICcxa20nLCAnMmttJywgJzNrbScsICc0a20nLCAnNWttJywgJzZrbScsICc3a20nXSB9XG5cdFx0XHRdLFxuXHRcdFx0c2VsZWN0ZWRGaWx0ZXJzOiB7XG5cdFx0XHRcdHNvcnQ6ICfnu7zlkIjmjpLluo8nLFxuXHRcdFx0XHRsZXZlbDogJ+S4jemZkCcsXG5cdFx0XHRcdGRpc3RhbmNlOiAn5LiN6ZmQJ1xuXHRcdFx0fSxcblx0XHRcdHN0YXRzOiBbXG5cdFx0XHRcdHsgdmFsdWU6ICctJywgbGFiZWw6ICfmnI3liqHliIYnIH0sXG5cdFx0XHRcdHsgdmFsdWU6ICctJywgbGFiZWw6ICfku4rml6XpooTorqHkvaPph5EnIH0sXG5cdFx0XHRcdHsgdmFsdWU6ICctJywgbGFiZWw6ICfku4rml6XmjqXljZUnIH1cblx0XHRcdF0sXG5cdFx0XHR0YWJzOiBbXG5cdFx0XHRcdHsgbGFiZWw6ICfmiqLljZXlpKfljoUnLCB2YWx1ZTogJ2hhbGwnIH0sXG5cdFx0XHRcdHsgbGFiZWw6ICflvoXlj5botKcnLCB2YWx1ZTogJ3BpY2t1cCcgfSxcblx0XHRcdFx0eyBsYWJlbDogJ+mFjemAgeS4rScsIHZhbHVlOiAnZGVsaXZlcmluZycgfVxuXHRcdFx0XSxcblx0XHRcdG9yZGVyTGlzdDogW10sXG5cdFx0XHRwaWNrdXBPcmRlckxpc3Q6IFtdLFxuXHRcdFx0ZGVsaXZlcmluZ09yZGVyTGlzdDogW10sXG5cdFx0XHRoYWxsUGFnZTogMSxcblx0XHRcdGhhbGxQYWdlU2l6ZTogMTAsXG5cdFx0XHRoYWxsTG9hZGluZzogZmFsc2UsXG5cdFx0XHRoYWxsSGFzTW9yZTogdHJ1ZSxcblx0XHRcdHBpY2t1cExvYWRpbmc6IGZhbHNlLFxuXHRcdFx0ZGVsaXZlcmluZ0xvYWRpbmc6IGZhbHNlLFxuXHRcdFx0YWN0aXZlT3JkZXJDb3VudDogbnVsbFxuXHRcdH1cblx0fSxcblxuXHR3YXRjaDoge1xuXHRcdGFjdGl2ZVRhYihuZXdWYWwpIHtcblx0XHRcdHRoaXMubG9hZE9yZGVyc0J5VGFiKG5ld1ZhbClcblx0XHR9XG5cdH0sXG5cblx0b25Mb2FkKCkge1xuXHRcdGNvbnN0IHN5c3RlbUluZm8gPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKVxuXHRcdGNvbnN0IHNhZmVCb3R0b20gPSBzeXN0ZW1JbmZvLnNhZmVBcmVhSW5zZXRzID8gc3lzdGVtSW5mby5zYWZlQXJlYUluc2V0cy5ib3R0b20gfHwgMCA6IDBcblx0XHRjb25zdCB3aW5kb3dIZWlnaHQgPSBzeXN0ZW1JbmZvLndpbmRvd0hlaWdodCB8fCAwXG5cdFx0dGhpcy5zdGF0dXNCYXJIZWlnaHQgPSBzeXN0ZW1JbmZvLnN0YXR1c0JhckhlaWdodCB8fCAwXG5cdFx0dGhpcy5oZWFkZXJIZWlnaHQgPSB0aGlzLnN0YXR1c0JhckhlaWdodCArIHVuaS51cHgycHgoMzA4KVxuXHRcdHRoaXMudGFiYmFySGVpZ2h0ID0gdW5pLnVweDJweCgxMDApICsgc2FmZUJvdHRvbVxuXHRcdHRoaXMuc2Nyb2xsSGVpZ2h0ID0gTWF0aC5tYXgod2luZG93SGVpZ2h0IC0gdGhpcy5oZWFkZXJIZWlnaHQsIDApXG5cdFx0aWYgKHRoaXMudXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDk5KSByZXR1cm47XG5cdFx0dGhpcy5hY2NlcHRpbmdTdGF0dXMgPSB0aGlzLnVzZXJJbmZvLmFjY2VwdGluZ1N0YXR1cyB8fCAwXG5cdFx0dGhpcy5sb2FkT3JkZXJzQnlUYWIodGhpcy5hY3RpdmVUYWIpXG5cdH0sXG5cblx0b25TaG93KCkge1xuXHRcdHRoaXMuZ2V0Q2VudGVySW5mbygpXG5cdFx0dGhpcy5nZXRDYXRlZ29yeUxpc3REYXRhKClcblx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHR9LFxuXG5cdG9uUmVhY2hCb3R0b20oKSB7XG5cdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAnaGFsbCcpIHtcblx0XHRcdHRoaXMuaGFsbFBhZ2UrK1xuXHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHR9XG5cdH0sXG5cblx0Y29tcHV0ZWQ6IHtcblx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJywgJ3Rva2VuJ10pLFxuXG5cdFx0ZGlzcGxheVRhYnMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy50YWJzLm1hcCh0YWIgPT4ge1xuXHRcdFx0XHRpZiAodGFiLnZhbHVlID09PSAncGlja3VwJykge1xuXHRcdFx0XHRcdHJldHVybiB7IC4uLnRhYiwgY291bnQ6IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZ3JhYmJlZENvdW50IH1cblx0XHRcdFx0fSBlbHNlIGlmICh0YWIudmFsdWUgPT09ICdkZWxpdmVyaW5nJykge1xuXHRcdFx0XHRcdHJldHVybiB7IC4uLnRhYiwgY291bnQ6IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZGVsaXZlcmluZ0NvdW50IH1cblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gdGFiXG5cdFx0XHR9KVxuXHRcdH0sXG5cdFx0XG5cdFx0Y3VycmVudE9yZGVyTGlzdCgpIHtcblx0XHRcdGNvbnN0IG9yZGVyTWFwID0ge1xuXHRcdFx0XHRoYWxsOiB0aGlzLm9yZGVyTGlzdCxcblx0XHRcdFx0cGlja3VwOiB0aGlzLnBpY2t1cE9yZGVyTGlzdCxcblx0XHRcdFx0ZGVsaXZlcmluZzogdGhpcy5kZWxpdmVyaW5nT3JkZXJMaXN0XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiBvcmRlck1hcFt0aGlzLmFjdGl2ZVRhYl0gfHwgW11cblx0XHR9LFxuXG5cdFx0Ym9keVN0eWxlKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0bWFyZ2luVG9wOiB0aGlzLmhlYWRlckhlaWdodCArICdweCcsXG5cdFx0XHRcdGhlaWdodDogdGhpcy5zY3JvbGxIZWlnaHQgKyAncHgnXG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXG5cdG9uUmVhZHkoKSB7XG5cdFx0dGhpcy5pbml0VFRTKCkgLy8g6aG16Z2i5riy5p+T5a6M5oiQ5Yid5aeL5YyW6K+t6Z+zXG5cdH0sXG5cblx0bWV0aG9kczoge1xuXHRcdGZvcm1hdFJlbWFpblRpbWUobWludXRlcykge1xuXHRcdFx0aWYgKCFtaW51dGVzKSByZXR1cm4gMFxuXHRcdFx0aWYgKG1pbnV0ZXMgPT09IDApIHtcblx0XHRcdFx0cmV0dXJuICfphY3pgIHlt7LotoXml7YnXG5cdFx0XHR9XG5cdFx0XHRpZiAobWludXRlcyA+PSA2MCkge1xuXHRcdFx0XHRyZXR1cm4gKG1pbnV0ZXMgLyA2MCkudG9GaXhlZCgyKSArICflsI/ml7blhoUnXG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gbWludXRlcyArICfliIbpkp/lhoUnXG5cdFx0fSxcblxuXHRcdGdldEdvb2RzVGV4dChpdGVtcywgaXRlbUlkKSB7XG5cdFx0XHRpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkgcmV0dXJuICfml6AnXG5cdFx0XHRjb25zdCB0ZXh0ID0gaXRlbXMubWFwKGkgPT4gYCR7aS5uYW1lfSoke2kucXVhbnRpdHl9YCkuam9pbign44CBJylcblx0XHRcdGlmICh0ZXh0Lmxlbmd0aCA+IDIwICYmICF0aGlzLmV4cGFuZGVkR29vZHNJZHMuaW5jbHVkZXMoaXRlbUlkKSkge1xuXHRcdFx0XHRyZXR1cm4gdGV4dC5zdWJzdHJpbmcoMCwgMjApICsgJy4uLidcblx0XHRcdH1cblx0XHRcdHJldHVybiB0ZXh0XG5cdFx0fSxcblxuXHRcdHRvZ2dsZUdvb2RzRXhwYW5kKGlkKSB7XG5cdFx0XHRjb25zdCBpbmRleCA9IHRoaXMuZXhwYW5kZWRHb29kc0lkcy5pbmRleE9mKGlkKVxuXHRcdFx0aWYgKGluZGV4ID4gLTEpIHtcblx0XHRcdFx0dGhpcy5leHBhbmRlZEdvb2RzSWRzLnNwbGljZShpbmRleCwgMSlcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHRoaXMuZXhwYW5kZWRHb29kc0lkcy5wdXNoKGlkKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRmb3JtYXREaXN0YW5jZVBhcnRzKGRpc3RhbmNlKSB7XG5cdFx0XHRpZiAoZGlzdGFuY2UgPT09IG51bGwgfHwgZGlzdGFuY2UgPT09IHVuZGVmaW5lZCB8fCBkaXN0YW5jZSA9PT0gJycpIHtcblx0XHRcdFx0cmV0dXJuIHsgdmFsdWU6ICctLScsIHVuaXQ6ICcnIH1cblx0XHRcdH1cblxuXHRcdFx0aWYgKHR5cGVvZiBkaXN0YW5jZSA9PT0gJ251bWJlcicpIHtcblx0XHRcdFx0aWYgKGRpc3RhbmNlID49IDEwMDApIHtcblx0XHRcdFx0XHRyZXR1cm4geyB2YWx1ZTogKGRpc3RhbmNlIC8gMTAwMCkudG9GaXhlZCgxKSwgdW5pdDogJ2ttJyB9XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIHsgdmFsdWU6IFN0cmluZyhNYXRoLnJvdW5kKGRpc3RhbmNlKSksIHVuaXQ6ICdtJyB9XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IHRleHQgPSBTdHJpbmcoZGlzdGFuY2UpLnRyaW0oKVxuXHRcdFx0Y29uc3QgbWF0Y2ggPSB0ZXh0Lm1hdGNoKC9eKFtcXGQuXSspXFxzKihbYS16QS1aXFx1NGUwMC1cXHU5ZmE1XSopJC8pXG5cdFx0XHRpZiAobWF0Y2gpIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHR2YWx1ZTogbWF0Y2hbMV0sXG5cdFx0XHRcdFx0dW5pdDogbWF0Y2hbMl0gfHwgJydcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4geyB2YWx1ZTogdGV4dCwgdW5pdDogJycgfVxuXHRcdH0sXG5cblx0XHRuYXZpZ2F0ZVRvQWRkcmVzcyhpdGVtLCB0eXBlKSB7XG5cdFx0XHRsZXQgbGF0aXR1ZGUsIGxvbmdpdHVkZSwgbmFtZSwgYWRkcmVzc1xuXHRcdFx0aWYgKHR5cGUgPT09ICdkZXBvc2l0Jykge1xuXHRcdFx0XHRsYXRpdHVkZSA9IGl0ZW0uZGVwb3NpdExhdFxuXHRcdFx0XHRsb25naXR1ZGUgPSBpdGVtLmRlcG9zaXRMbmdcblx0XHRcdFx0bmFtZSA9IGl0ZW0uZGVwb3NpdFNob3BOYW1lXG5cdFx0XHRcdGFkZHJlc3MgPSBpdGVtLmRlcG9zaXRTaG9wQWRkcmVzc1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0bGF0aXR1ZGUgPSBpdGVtLnRha2VMYXRcblx0XHRcdFx0bG9uZ2l0dWRlID0gaXRlbS50YWtlTG5nXG5cdFx0XHRcdG5hbWUgPSBpdGVtLnRha2VOYW1lXG5cdFx0XHRcdGFkZHJlc3MgPSBpdGVtLnRha2VBZGRyZXNzXG5cdFx0XHR9XG5cdFx0XHRpZiAoIWxhdGl0dWRlIHx8ICFsb25naXR1ZGUpIHtcblx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5Zyw5Z2A5Z2Q5qCH57y65aSxJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdHJldHVyblxuXHRcdFx0fVxuXHRcdFx0dW5pLm9wZW5Mb2NhdGlvbih7XG5cdFx0XHRcdGxhdGl0dWRlLFxuXHRcdFx0XHRsb25naXR1ZGUsXG5cdFx0XHRcdG5hbWUsXG5cdFx0XHRcdGFkZHJlc3MsXG5cdFx0XHRcdHN1Y2Nlc3M6ICgpID0+IHt9LFxuXHRcdFx0XHRmYWlsOiAoZXJyKSA9PiB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5omT5byA5Zyw5Zu+5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcignb3BlbkxvY2F0aW9uIGZhaWw6JywgZXJyKVxuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRoYW5kbGVVc2VyQ2xpY2soKSB7XG5cdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdHVybDogJy9wYWdlcy90ZXN0L3Rlc3QnXG5cdFx0XHR9KVxuXHRcdH0sXG5cdFx0Z2V0QWN0aXZlT3JkZXJDb3VudCgpIHtcblx0XHRcdHRoaXMuJHUuYXBpLmFjdGl2ZU9yZGVyQ291bnQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dGhpcy5hY3RpdmVPcmRlckNvdW50ID0gcmVzLmRhdGFcblx0XHRcdFx0fVxuXHRcdFx0fSkuY2F0Y2goKGVycikgPT4ge1xuXHRcdFx0XHR0aGlzLmFjdGl2ZU9yZGVyQ291bnQgPSBudWxsXG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRoYW5kbGVHcmFiT3JkZXIoaXRlbSkge1xuXHRcdFx0Y29uc29sZS5sb2coaXRlbSlcblx0XHRcdHRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIgPSBpdGVtXG5cdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSB0cnVlXG5cdFx0fSxcblxuXHRcdGNvbmZpcm1HcmFiT3JkZXIoKSB7XG5cdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRHcmFiT3JkZXIpIHJldHVyblxuXHRcdFx0dGhpcy4kdS5hcGkuZ3JhYk9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZEdyYWJPcmRlci5pZCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvd0dyYWJNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5oqi5Y2V5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pXG5cdFx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0XHRcdHRoaXMuZ2V0QWN0aXZlT3JkZXJDb3VudCgpXG5cdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICfmiqLljZXlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0fVxuXHRcdFx0fSkuY2F0Y2goKCkgPT4ge1xuXHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0aGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSkge1xuXHRcdFx0dGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyID0gaXRlbVxuXHRcdFx0dGhpcy4kdS5hcGkuY2FuY2VsTGltaXQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dGhpcy5jYW5jZWxSZW1haW4gPSByZXMuZGF0YS5yZW1haW5cblx0XHRcdFx0fVxuXHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvdyA9IHRydWVcblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdGNvbmZpcm1DYW5jZWxPcmRlcigpIHtcblx0XHRcdGlmICghdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyKSByZXR1cm5cblx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZENhbmNlbE9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0dGhpcy5zaG93ID0gZmFsc2Vcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflj5bmtojmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHRcdFx0dGhpcy5nZXRDZW50ZXJJbmZvKClcblx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogcmVzLm1lc3NhZ2UgfHwgJ+WPlua2iOWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHR9XG5cdFx0XHR9KS5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2hvdyA9IGZhbHNlXG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRoYW5kbGVDYWxsKGl0ZW0pIHtcblx0XHRcdGlmIChpdGVtLmNvbnRhY3RQaG9uZSkge1xuXHRcdFx0XHR1bmkubWFrZVBob25lQ2FsbCh7XG5cdFx0XHRcdFx0cGhvbmVOdW1iZXI6IGl0ZW0uY29udGFjdFBob25lXG5cdFx0XHRcdH0pXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGhhbmRsZVNob3dQaWNrdXBDb2RlKGl0ZW0pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRQaWNrdXBPcmRlciA9IGl0ZW1cblx0XHRcdHRoaXMuc2hvdzEgPSB0cnVlXG5cdFx0fSxcblxuXHRcdGdvVG9PcmRlckRldGFpbChpdGVtLCBpbmRleCkge1xuXHRcdFx0bGV0IHVybCA9IGAvcGFnZXMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbD9pZD0ke2l0ZW0uaWR9YFxuXHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAncGlja3VwJyB8fCB0aGlzLmFjdGl2ZVRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdHVybCArPSBgJmluZGV4PSR7aW5kZXggKyAxfWBcblx0XHRcdH1cblx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHsgdXJsIH0pXG5cdFx0fSxcblxuXHRcdGdldENlbnRlckluZm8oKSB7XG5cdFx0XHR0aGlzLiR1LmFwaS5jZW50ZXJJbmZvKCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMuYWNjZXB0aW5nU3RhdHVzID0gcmVzLmRhdGEuYWNjZXB0aW5nU3RhdHVzXG5cdFx0XHRcdFx0dGhpcy5jZW50ZXJVc2VySW5mbyA9IHtcblx0XHRcdFx0XHRcdGZ1bGxJbWdVcmw6IHJlcy5kYXRhLmZ1bGxJbWdVcmwsXG5cdFx0XHRcdFx0XHRuYW1lOiByZXMuZGF0YS5uYW1lXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRoaXMuc3RhdHMgPSBbXG5cdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS5zY29yZSwgbGFiZWw6ICfmnI3liqHliIYnIH0sXG5cdFx0XHRcdFx0XHR7IHZhbHVlOiAoKHJlcy5kYXRhLnRvZGF5Q29tbWlzc2lvbiAvIDEwMCkgfHwgMCkudG9GaXhlZCgyKSwgbGFiZWw6ICfku4rml6XpooTorqHkvaPph5EnIH0sXG5cdFx0XHRcdFx0XHR7IHZhbHVlOiByZXMuZGF0YS50b2RheU9yZGVyQ291bnQsIGxhYmVsOiAn5LuK5pel5o6l5Y2VJyB9XG5cdFx0XHRcdFx0XVxuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRnZXRDYXRlZ29yeUxpc3REYXRhKCkge1xuXHRcdFx0dGhpcy4kdS5hcGkuZ2V0Q2F0ZWdvcnlMaXN0KHsgdHlwZTogMyB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0dGhpcy5jYXRlZ29yeUxpc3QgPSByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHRcdHRoaXMuZmlsdGVyU2VjdGlvbnMuZm9yRWFjaChzZWN0aW9uID0+IHtcblx0XHRcdFx0XHRcdGlmIChzZWN0aW9uLmtleSA9PT0gJ2xldmVsJykge1xuXHRcdFx0XHRcdFx0XHRzZWN0aW9uLm9wdGlvbnMgPSBbJ+S4jemZkCcsIC4uLnRoaXMuY2F0ZWdvcnlMaXN0Lm1hcChpdGVtID0+IGl0ZW0ubmFtZSldXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0bG9hZE9yZGVyc0J5VGFiKHRhYikge1xuXHRcdFx0aWYgKHRoaXMudXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDk5KSByZXR1cm47XG5cdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHJldHVybjtcblx0XHRcdGlmICh0YWIgPT09ICdoYWxsJykge1xuXHRcdFx0XHR0aGlzLmhhbGxQYWdlID0gMVxuXHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLm9yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdHRoaXMuZ2V0SGFsbE9yZGVycygpXG5cdFx0XHR9IGVsc2UgaWYgKHRhYiA9PT0gJ3BpY2t1cCcpIHtcblx0XHRcdFx0dGhpcy5waWNrdXBPcmRlckxpc3QgPSBbXVxuXHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHR9IGVsc2UgaWYgKHRhYiA9PT0gJ2RlbGl2ZXJpbmcnKSB7XG5cdFx0XHRcdHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdCA9IFtdXG5cdFx0XHRcdHRoaXMuZ2V0RGVsaXZlcmluZ09yZGVycygpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGdldEhhbGxPcmRlcnMoKSB7XG5cdFx0XHRpZiAodGhpcy5hY2NlcHRpbmdTdGF0dXMgPT09IDApIHJldHVybjtcblx0XHRcdGlmICh0aGlzLmhhbGxMb2FkaW5nIHx8ICF0aGlzLmhhbGxIYXNNb3JlKSB7XG5cdFx0XHRcdHJldHVyblxuXHRcdFx0fVxuXHRcdFx0dGhpcy5oYWxsTG9hZGluZyA9IHRydWVcblxuXHRcdFx0bGV0IGRpc3RhbmNlID0gbnVsbFxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLmRpc3RhbmNlICE9PSAn5LiN6ZmQJykge1xuXHRcdFx0XHRjb25zdCBkaXN0YW5jZVRleHQgPSB0aGlzLnNlbGVjdGVkRmlsdGVycy5kaXN0YW5jZVxuXHRcdFx0XHRpZiAoZGlzdGFuY2VUZXh0LmluY2x1ZGVzKCdrbScpKSB7XG5cdFx0XHRcdFx0ZGlzdGFuY2UgPSBwYXJzZUludChkaXN0YW5jZVRleHQpICogMTAwMFxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGRpc3RhbmNlID0gcGFyc2VJbnQoZGlzdGFuY2VUZXh0KVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IHNvcnRUeXBlTWFwID0ge1xuXHRcdFx0XHQn57u85ZCI5o6S5bqPJzogMSxcblx0XHRcdFx0J+i3neemu+acgOi/kSc6IDJcblx0XHRcdH1cblx0XHRcdGNvbnN0IHNvcnRUeXBlID0gdGhpcy5zZWxlY3RlZEZpbHRlcnMuc29ydCAhPT0gJ+S4jemZkCcgPyAoc29ydFR5cGVNYXBbdGhpcy5zZWxlY3RlZEZpbHRlcnMuc29ydF0gfHwgbnVsbCkgOiBudWxsXG5cblx0XHRcdGxldCBncmFkZUlkID0gbnVsbFxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWx0ZXJzLmxldmVsICE9PSAn5LiN6ZmQJykge1xuXHRcdFx0XHRjb25zdCBzZWxlY3RlZENhdGVnb3J5ID0gdGhpcy5jYXRlZ29yeUxpc3QuZmluZChpdGVtID0+IGl0ZW0ubmFtZSA9PT0gdGhpcy5zZWxlY3RlZEZpbHRlcnMubGV2ZWwpXG5cdFx0XHRcdGlmIChzZWxlY3RlZENhdGVnb3J5KSB7XG5cdFx0XHRcdFx0Z3JhZGVJZCA9IHNlbGVjdGVkQ2F0ZWdvcnkuaWRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRjb25zb2xlLmxvZygn5o6l5Y2V5aSn5Y6FOicsIHsgZGlzdGFuY2UsIGdyYWRlSWQsIHNvcnRUeXBlIH0pXG5cdFx0XHR0aGlzLiR1LmFwaS5ncmFiT3JkZXJIYWxsKHtcblx0XHRcdFx0Y2FwYWNpdHk6IHRoaXMuaGFsbFBhZ2VTaXplLFxuXHRcdFx0XHRwYWdlOiB0aGlzLmhhbGxQYWdlLFxuXHRcdFx0XHRtb2RlbDoge1xuXHRcdFx0XHRcdGRpc3RhbmNlOiBkaXN0YW5jZSxcblx0XHRcdFx0XHRncmFkZUlkOiBncmFkZUlkLFxuXHRcdFx0XHRcdHNvcnRUeXBlOiBzb3J0VHlwZVxuXHRcdFx0XHR9XG5cdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCfmjqXljZXlpKfljoUnLCByZXMpXG5cdFx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdGNvbnN0IGxpc3QgPSByZXMuZGF0YS5yZWNvcmRzIHx8IFtdXG5cdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSB0aGlzLmhhbGxQYWdlID09PSAxID8gbGlzdCA6IHRoaXMub3JkZXJMaXN0LmNvbmNhdChsaXN0KVxuXHRcdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSBsaXN0Lmxlbmd0aCA+PSB0aGlzLmhhbGxQYWdlU2l6ZVxuXHRcdFx0XHR9XG5cdFx0XHR9KS5jYXRjaCgoZXJyKSA9PiB7XG5cdFx0XHRcdHRoaXMuaGFsbExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0Z2V0UGlja3VwT3JkZXJzKCkge1xuXHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRpZiAodGhpcy5waWNrdXBMb2FkaW5nKSByZXR1cm5cblx0XHRcdHRoaXMucGlja3VwTG9hZGluZyA9IHRydWVcblx0XHRcdHRoaXMuJHUuYXBpLmFjdGl2ZU9yZGVycyh7IHN0YXR1czogMyB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCflvoXlj5botKc6JywgcmVzKVxuXHRcdFx0XHR0aGlzLnBpY2t1cExvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMucGlja3VwT3JkZXJMaXN0ID0gcmVzLmRhdGEucmVjb3JkcyB8fCByZXMuZGF0YSB8fCBbXVxuXHRcdFx0XHR9XG5cdFx0XHR9KS5jYXRjaCgoZXJyKSA9PiB7XG5cdFx0XHRcdHRoaXMucGlja3VwTG9hZGluZyA9IGZhbHNlXG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRnZXREZWxpdmVyaW5nT3JkZXJzKCkge1xuXHRcdFx0aWYgKHRoaXMuYWNjZXB0aW5nU3RhdHVzID09PSAwKSByZXR1cm47XG5cdFx0XHRpZiAodGhpcy5kZWxpdmVyaW5nTG9hZGluZykgcmV0dXJuXG5cdFx0XHR0aGlzLmRlbGl2ZXJpbmdMb2FkaW5nID0gdHJ1ZVxuXHRcdFx0dGhpcy4kdS5hcGkuYWN0aXZlT3JkZXJzKHsgc3RhdHVzOiA0IH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0Y29uc29sZS5sb2coJ+mFjemAgeS4rTonLCByZXMpXG5cdFx0XHRcdHRoaXMuZGVsaXZlcmluZ0xvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdHRoaXMuZGVsaXZlcmluZ09yZGVyTGlzdCA9IHJlcy5kYXRhIHx8IFtdXG5cdFx0XHRcdH1cblx0XHRcdH0pLmNhdGNoKChlcnIpID0+IHtcblx0XHRcdFx0dGhpcy5kZWxpdmVyaW5nTG9hZGluZyA9IGZhbHNlXG5cdFx0XHR9KVxuXHRcdH0sXG5cblx0XHRvcGVuU3RhdHVzUGlja2VyKCkge1xuXHRcdFx0dGhpcy5zaG93U3RhdHVzUGlja2VyID0gdHJ1ZVxuXHRcdH0sXG5cblx0XHRjb25maXJtU3RhdHVzKGUpIHtcblx0XHRcdHRoaXMuc2hvd1N0YXR1c1BpY2tlciA9IGZhbHNlXG5cdFx0XHRjb25zdCBzZWxlY3RlZFZhbHVlID0gZS52YWx1ZVswXVxuXHRcdFx0dGhpcy4kdS5hcGkudXBkYXRlQWNjZXB0aW5nU3RhdHVzKHsgc3RhdHVzOiBzZWxlY3RlZFZhbHVlLnZhbHVlIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHR0aGlzLmFjY2VwdGluZ1N0YXR1cyA9IHNlbGVjdGVkVmFsdWUudmFsdWVcblx0XHRcdFx0XHR0aGlzLmdldENlbnRlckluZm8oKVxuXHRcdFx0XHRcdGlmICh0aGlzLmFjY2VwdGluZ1N0YXR1cyA9PT0gMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdFx0dGhpcy5waWNrdXBPcmRlckxpc3QgPSBbXVxuXHRcdFx0XHRcdFx0dGhpcy5kZWxpdmVyaW5nT3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAncGlja3VwJykge1xuXHRcdFx0XHRcdFx0XHR0aGlzLmdldFBpY2t1cE9yZGVycygpXG5cdFx0XHRcdFx0XHR9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVGFiID09PSAnZGVsaXZlcmluZycpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5nZXREZWxpdmVyaW5nT3JkZXJzKClcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSB0cnVlXG5cdFx0XHRcdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pXG5cdFx0fSxcblxuXHRcdHRvRHJpdmVyQ2VydGlmaWNhdGlvbigpIHtcblx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0dXJsOiAnL3BhZ2VzL2RyaXZlci1jZXJ0aWZpY2F0aW9uL2RyaXZlci1jZXJ0aWZpY2F0aW9uJ1xuXHRcdFx0fSlcblx0XHR9LFxuXG5cdFx0dG9nZ2xlRmlsdGVyUG9wdXAoc2hvdykge1xuXHRcdFx0dGhpcy5zaG93RmlsdGVyUG9wdXAgPSBzaG93XG5cdFx0fSxcblxuXHRcdHNlbGVjdEZpbHRlcihrZXksIG9wdGlvbikge1xuXHRcdFx0dGhpcy5zZWxlY3RlZEZpbHRlcnMgPSB7XG5cdFx0XHRcdC4uLnRoaXMuc2VsZWN0ZWRGaWx0ZXJzLFxuXHRcdFx0XHRba2V5XTogb3B0aW9uXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdHJlc2V0RmlsdGVycygpIHtcblx0XHRcdHRoaXMuc2hvd0ZpbHRlclBvcHVwID0gZmFsc2Vcblx0XHRcdGlmICh0aGlzLnVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OSkgcmV0dXJuO1xuXHRcdFx0dGhpcy5zZWxlY3RlZEZpbHRlcnMgPSB7XG5cdFx0XHRcdHNvcnQ6ICfnu7zlkIjmjpLluo8nLFxuXHRcdFx0XHRsZXZlbDogJ+S4jemZkCcsXG5cdFx0XHRcdGRpc3RhbmNlOiAn5LiN6ZmQJ1xuXHRcdFx0fVxuXHRcdFx0aWYgKHRoaXMuYWN0aXZlVGFiID09PSAnaGFsbCcpIHtcblx0XHRcdFx0dGhpcy5oYWxsUGFnZSA9IDFcblx0XHRcdFx0dGhpcy5oYWxsSGFzTW9yZSA9IHRydWVcblx0XHRcdFx0dGhpcy5vcmRlckxpc3QgPSBbXVxuXHRcdFx0XHR0aGlzLmdldEhhbGxPcmRlcnMoKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRjb25maXJtRmlsdGVycygpIHtcblx0XHRcdHRoaXMuc2hvd0ZpbHRlclBvcHVwID0gZmFsc2Vcblx0XHRcdGlmICh0aGlzLnVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OSkge1xuXHRcdFx0XHR0aGlzLmhhbGxIYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHRyZXR1cm5cblx0XHRcdH1cblx0XHRcdGlmICh0aGlzLmFjdGl2ZVRhYiA9PT0gJ2hhbGwnKSB7XG5cdFx0XHRcdHRoaXMuaGFsbFBhZ2UgPSAxXG5cdFx0XHRcdHRoaXMuaGFsbEhhc01vcmUgPSB0cnVlXG5cdFx0XHRcdHRoaXMub3JkZXJMaXN0ID0gW11cblx0XHRcdFx0dGhpcy5nZXRIYWxsT3JkZXJzKClcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0aW5pdFRUUygpIHtcblx0XHRcdGlmICh1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKS5wbGF0Zm9ybSAhPT0gJ2FuZHJvaWQnKSB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCfku4XmlK/mjIHlronljZMnKVxuXHRcdFx0XHRyZXR1cm5cblx0XHRcdH1cblxuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Ly8g5a+85YWl5a6J5Y2T5Y6f55Sf57G7XG5cdFx0XHRcdGNvbnN0IFRleHRUb1NwZWVjaCA9IHBsdXMuYW5kcm9pZC5pbXBvcnRDbGFzcygnYW5kcm9pZC5zcGVlY2gudHRzLlRleHRUb1NwZWVjaCcpXG5cdFx0XHRcdGNvbnN0IExvY2FsZSA9IHBsdXMuYW5kcm9pZC5pbXBvcnRDbGFzcygnamF2YS51dGlsLkxvY2FsZScpXG5cblx0XHRcdFx0Ly8g5Yib5bu6VFRTXG5cdFx0XHRcdHRoaXMudHRzID0gbmV3IFRleHRUb1NwZWVjaChwbHVzLmFuZHJvaWQucnVudGltZU1haW5BY3Rpdml0eSgpLCB7XG5cdFx0XHRcdFx0b25Jbml0OiAoc3RhdHVzKSA9PiB7XG5cdFx0XHRcdFx0XHRpZiAoc3RhdHVzID09IDApIHtcblx0XHRcdFx0XHRcdFx0Ly8g6K6+572u5Lit5paHXG5cdFx0XHRcdFx0XHRcdHRoaXMudHRzLnNldExhbmd1YWdlKExvY2FsZS5DSElOQSlcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+ivremfs+WIneWni+WMluaIkOWKnycpXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5Yid5aeL5YyW5aSx6LSlJywgZSlcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0c3BlYWsodGV4dCkge1xuXHRcdFx0aWYgKCF0aGlzLnR0cykge1xuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHR0aXRsZTogJ+ivremfs+acquWHhuWkh+WlvScsXG5cdFx0XHRcdFx0aWNvbjogJ25vbmUnXG5cdFx0XHRcdH0pXG5cdFx0XHRcdHJldHVyblxuXHRcdFx0fVxuXG5cdFx0XHR0cnkge1xuXHRcdFx0XHQvLyDlronljZPljp/nlJ/mkq3miqXvvIhRVUVVRV9GTFVTSCA9IOeri+WNs+aSreaKpe+8jOaJk+aWreS4iuS4gOadoe+8iVxuXHRcdFx0XHR0aGlzLnR0cy5zcGVhayh0ZXh0LCAwLCBudWxsKVxuXHRcdFx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCfmkq3miqXlpLHotKUnLCBlcnIpXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdHN0b3BTcGVhaygpIHtcblx0XHRcdGlmICh0aGlzLnR0cykgdGhpcy50dHMuc3RvcCgpXG5cdFx0fVxuXHR9LFxuXG5cdG9uVW5sb2FkKCkge1xuXHRcdGlmICh0aGlzLnR0cykge1xuXHRcdFx0dGhpcy50dHMuc3RvcCgpXG5cdFx0XHR0aGlzLnR0cy5zaHV0ZG93bigpXG5cdFx0fVxuXHR9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///91\n");
/***/ }),
/* 92 */
@@ -9346,7 +9370,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\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      statusBarHeight: 0,\n      navHeight: 0,\n      useVerifiedState: true,\n      menuList: [{\n        key: 'wallet',\n        title: '我的钱包'\n      }, {\n        key: 'driver',\n        title: '司机认证'\n      }, {\n        key: 'agreementPrivacy',\n        title: '司机隐私政策',\n        type: 'driverPrivacyPolicy'\n      }, {\n        key: 'agreementErrandLuggage',\n        title: '跑腿车主行李寄存须知',\n        type: 'errandLuggageStorageNotice'\n      }, {\n        key: 'agreementErrandService',\n        title: '跑腿达人服务协议',\n        type: 'errandServiceAgreement'\n      }, {\n        key: 'agreementErrandRisk',\n        title: '跑腿达人风险承诺',\n        type: 'errandRiskCommitment'\n      }, {\n        key: 'agreementOwnerLuggage',\n        title: '平台车主行李寄存须知',\n        type: 'ownerLuggageStorageNotice'\n      }, {\n        key: 'agreementOwnerService',\n        title: '平台车主服务协议',\n        type: 'ownerServiceAgreement'\n      }, {\n        key: 'agreementOwnerRisk',\n        title: '平台车主风险承诺',\n        type: 'ownerRiskCommitment'\n      }, {\n        key: 'help',\n        title: '帮助与客服'\n      }, {\n        key: 'setting',\n        title: '设置'\n      }],\n      profileStates: {\n        guest: {\n          name: '汤子新',\n          phone: '18166565677',\n          levelTag: '',\n          totalIncome: '-',\n          pendingIncome: '-',\n          orderCount: '-',\n          walletBalance: '¥0',\n          verified: false\n        },\n        verified: {\n          name: '汤子新',\n          phone: '18166565677(皖BD23189)',\n          levelTag: 'S级',\n          totalIncome: '-',\n          pendingIncome: '-',\n          orderCount: '-',\n          walletBalance: '¥0',\n          verified: true\n        }\n      }\n    };\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n    currentProfile: function currentProfile() {\n      return this.useVerifiedState ? this.profileStates.verified : this.profileStates.guest;\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.navHeight + 'px'\n      };\n    }\n  }),\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.navHeight = this.statusBarHeight + uni.upx2px(88);\n  },\n  onShow: function onShow() {\n    this.getStats();\n    this.getUserInfo();\n  },\n  methods: {\n    getUserInfo: function getUserInfo() {\n      var _this = this;\n      this.$u.api.verifyDetail().then(function (user) {\n        if (user.code === 200) {\n          _this.$store.commit('setUserInfo', user.data);\n        }\n      });\n    },\n    getStats: function getStats() {\n      var _this2 = this;\n      this.$u.api.stats().then(function (res) {\n        if (res.code === 200 && res.data) {\n          _this2.profileStates.verified.totalIncome = (res.data.totalCommission / 100).toFixed(2);\n          _this2.profileStates.verified.pendingIncome = (res.data.pendingCommission / 100).toFixed(2);\n          _this2.profileStates.verified.orderCount = res.data.totalOrderCount || 0;\n          _this2.profileStates.verified.walletBalance = '¥' + (res.data.balance / 100).toFixed(2);\n        }\n      });\n    },\n    getDriverLevelText: function getDriverLevelText(level) {\n      var map = {\n        5: 'S',\n        4: 'A',\n        3: 'B',\n        2: 'C',\n        1: 'D'\n      };\n      return map[level] ? map[level] + '级' : '';\n    },\n    jump: function jump(item) {\n      __f__(\"log\", item, \" at pages/mine/mine.vue:162\");\n      if (item.key === 'setting') {\n        uni.navigateTo({\n          url: '/pages/settings/settings'\n        });\n      } else if (item.key === 'driver') {\n        if (this.userInfo.auditStatus === 99) {\n          uni.navigateTo({\n            url: '/pages/driver-certification/driver-certification'\n          });\n        } else {\n          uni.navigateTo({\n            url: '/pages/certification-details/certification-details'\n          });\n        }\n      } else if (item.key === 'wallet') {\n        uni.navigateTo({\n          url: '/pages/wallet/wallet'\n        });\n      } else if (item.key && item.key.startsWith('agreement')) {\n        uni.navigateTo({\n          url: \"/pages/agreement/agreement?type=\".concat(item.type, \"&title=\").concat(encodeURIComponent(item.title))\n        });\n      }\n    },\n    handleLogout: function handleLogout() {\n      var _this3 = this;\n      uni.showToast({\n        title: '退出中...',\n        icon: 'loading'\n      });\n      this.$u.api.logOutDriver().then(function (res) {\n        __f__(\"log\", 'logout res', res, \" at pages/mine/mine.vue:190\");\n        if (res.code === 200) {\n          _this3.$store.commit('clearAll');\n          uni.reLaunch({\n            url: '/pages/login/login'\n          });\n        }\n      }).catch(function (err) {\n        __f__(\"log\", 'logout err', err, \" at pages/mine/mine.vue:198\");\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbWluZS9taW5lLnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwic3RhdHVzQmFySGVpZ2h0IiwibmF2SGVpZ2h0IiwidXNlVmVyaWZpZWRTdGF0ZSIsIm1lbnVMaXN0Iiwia2V5IiwidGl0bGUiLCJ0eXBlIiwicHJvZmlsZVN0YXRlcyIsImd1ZXN0IiwibmFtZSIsInBob25lIiwibGV2ZWxUYWciLCJ0b3RhbEluY29tZSIsInBlbmRpbmdJbmNvbWUiLCJvcmRlckNvdW50Iiwid2FsbGV0QmFsYW5jZSIsInZlcmlmaWVkIiwiY29tcHV0ZWQiLCJjdXJyZW50UHJvZmlsZSIsImJvZHlTdHlsZSIsIm1hcmdpblRvcCIsIm9uTG9hZCIsIm9uU2hvdyIsIm1ldGhvZHMiLCJnZXRVc2VySW5mbyIsImdldFN0YXRzIiwiZ2V0RHJpdmVyTGV2ZWxUZXh0IiwianVtcCIsInVuaSIsInVybCIsImhhbmRsZUxvZ291dCIsImljb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBMEVBO0FBQUE7QUFBQTtBQUFBLGVBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQyxXQUNBO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRjtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUY7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRjtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUY7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEVBQ0E7TUFDQUU7UUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtRQUNBQTtVQUNBUDtVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDLDBDQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQ0FDO01BQ0E7SUFDQTtFQUFBLEVBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUFBO01BQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtRQUFBO1FBQUE7UUFBQTtRQUFBO1FBQUE7TUFBQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO1FBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtRQUNBO1VBQ0FEO1lBQ0FDO1VBQ0E7UUFDQTtVQUNBRDtZQUNBQztVQUNBO1FBQ0E7TUFDQTtRQUNBRDtVQUNBQztRQUNBO01BQ0E7UUFDQUQ7VUFDQUM7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBRjtRQUFBdkI7UUFBQTBCO01BQUE7TUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBSDtZQUNBQztVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDMuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlXCI+XG5cdFx0PHZpZXcgY2xhc3M9XCJtaW5lLXBhZ2VfX25hdlwiIDpzdHlsZT1cInsgcGFkZGluZ1RvcDogc3RhdHVzQmFySGVpZ2h0ICsgJ3B4JyB9XCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cIm1pbmUtcGFnZV9fbmF2LWlubmVyXCI+XG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwibWluZS1wYWdlX19uYXYtdGl0bGVcIj7miJHnmoQ8L3RleHQ+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXG5cdFx0PHZpZXcgY2xhc3M9XCJtaW5lLXBhZ2VfX2JvZHlcIiA6c3R5bGU9XCJib2R5U3R5bGVcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19jb250ZW50XCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19wcm9maWxlXCI+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwibWluZS1wYWdlX19hdmF0YXJcIiA6c3JjPVwidXNlckluZm8uaW1ndXJsIHx8ICcvc3RhdGljL2ltYWdlL2ljX3BpY0AyeC5wbmcnXCIgbW9kZT1cImFzcGVjdEZpbGxcIj48L2ltYWdlPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19wcm9maWxlLWluZm9cIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19uYW1lLXJvd1wiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm1pbmUtcGFnZV9fbmFtZVwiPnt7IHVzZXJJbmZvLm5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJ1c2VySW5mby5kcml2ZXJMZXZlbFwiIGNsYXNzPVwibWluZS1wYWdlX19sZXZlbC10YWdcIj5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19qaWFuZ3BhaUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBjbGFzcz1cIm1pbmUtcGFnZV9fbGV2ZWwtZG90XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm1pbmUtcGFnZV9fbGV2ZWwtdGV4dFwiPnt7IGdldERyaXZlckxldmVsVGV4dCh1c2VySW5mby5kcml2ZXJMZXZlbCkgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwibWluZS1wYWdlX19waG9uZVwiPnt7IHVzZXJJbmZvLnRlbGVwaG9uZSB8fCAnJyB9fSDvvIh7eyB1c2VySW5mby5jYXJDb2RlIHx8ICcnIH19IO+8iTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmNvbWUtY2FyZF9fbGVmdFwiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJpbmNvbWUtY2FyZF9fbGFiZWxcIj7ntK/orqHkvaPph5Eo5YWDKTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3ZhbHVlXCI+e3sgY3VycmVudFByb2ZpbGUudG90YWxJbmNvbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5jb21lLWNhcmRfX3JpZ2h0XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkX19zdGF0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtbGFiZWxcIj7lvoXnu5Pnrpco5YWDKe+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJpbmNvbWUtY2FyZF9fc3RhdC12YWx1ZVwiPnt7IGN1cnJlbnRQcm9maWxlLnBlbmRpbmdJbmNvbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkX19zdGF0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtbGFiZWxcIj7orqLljZXmgLvmlbDvvJo8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtdmFsdWVcIj57eyBjdXJyZW50UHJvZmlsZS5vcmRlckNvdW50IH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwibWVudS1wYW5lbFwiPlxuXHRcdFx0XHRcdDx2aWV3IHYtZm9yPVwiaXRlbSBpbiBtZW51TGlzdFwiIDprZXk9XCJpdGVtLnRpdGxlXCIgY2xhc3M9XCJtZW51LXBhbmVsX19pdGVtXCIgQGNsaWNrPVwianVtcChpdGVtKVwiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX190aXRsZVwiPnt7IGl0ZW0udGl0bGUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm1lbnUtcGFuZWxfX3JpZ2h0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiaXRlbS5rZXkgPT09ICd3YWxsZXQnXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1tdXRlZFwiPuS9memine+8mnt7IGN1cnJlbnRQcm9maWxlLndhbGxldEJhbGFuY2UgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiaXRlbS5rZXkgPT09ICdkcml2ZXInXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OVwiIGNsYXNzPVwibWVudS1wYW5lbF9fc3ViIG1lbnUtcGFuZWxfX3N1Yi0tZGFuZ2VyXCI+5a6M5oiQ6K6k6K+B5ZCO5Y2z5Y+v5o6l5Y2VPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IHYtZWxzZS1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAwXCIgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1kYW5nZXJcIj7lrqHmoLjkuK08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAyXCIgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1kYW5nZXJcIj7lt7LpqbPlm548L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1lbHNlLWlmPVwidXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDNcIiBjbGFzcz1cIm1lbnUtcGFuZWxfX3N1YiBtZW51LXBhbmVsX19zdWItLXByaW1hcnlcIj7lt7LorqTor4E8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWVsc2UtaWY9XCJpdGVtLmtleSA9PT0gJ3NldHRpbmcnXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1tdXRlZFwiPuW9k+WJjeeJiOacrFYxLjAuMDwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PC90ZW1wbGF0ZT5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJtZW51LXBhbmVsX19hcnJvd1wiPlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL21pbmVfYXIyQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiA1cnB4O1wiPjwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8dmlldyBjbGFzcz1cIm1pbmUtcGFnZV9fZm9vdGVyXCI+XG5cdFx0XHQ8YnV0dG9uIGNsYXNzPVwibWluZS1wYWdlX19sb2dvdXRcIiBob3Zlci1jbGFzcz1cIm1pbmUtcGFnZV9fbG9nb3V0LS1ob3ZlclwiIEBjbGljay5zdG9wPVwiaGFuZGxlTG9nb3V0XCI+6YCA5Ye655m75b2VPC9idXR0b24+XG5cdFx0PC92aWV3PlxuXHQ8L3ZpZXc+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0XHRuYXZIZWlnaHQ6IDAsXG5cdFx0XHRcdHVzZVZlcmlmaWVkU3RhdGU6IHRydWUsXG5cdFx0XHRcdG1lbnVMaXN0OiBbXG5cdFx0XHRcdFx0eyBrZXk6ICd3YWxsZXQnLCB0aXRsZTogJ+aIkeeahOmSseWMhScgfSxcblx0XHRcdFx0XHR7IGtleTogJ2RyaXZlcicsIHRpdGxlOiAn5Y+45py66K6k6K+BJyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnYWdyZWVtZW50UHJpdmFjeScsIHRpdGxlOiAn5Y+45py66ZqQ56eB5pS/562WJywgdHlwZTogJ2RyaXZlclByaXZhY3lQb2xpY3knIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdhZ3JlZW1lbnRFcnJhbmRMdWdnYWdlJywgdGl0bGU6ICfot5Hohb/ovabkuLvooYzmnY7lr4TlrZjpobvnn6UnLCB0eXBlOiAnZXJyYW5kTHVnZ2FnZVN0b3JhZ2VOb3RpY2UnIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdhZ3JlZW1lbnRFcnJhbmRTZXJ2aWNlJywgdGl0bGU6ICfot5Hohb/ovr7kurrmnI3liqHljY/orq4nLCB0eXBlOiAnZXJyYW5kU2VydmljZUFncmVlbWVudCcgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudEVycmFuZFJpc2snLCB0aXRsZTogJ+i3keiFv+i+vuS6uumjjumZqeaJv+ivuicsIHR5cGU6ICdlcnJhbmRSaXNrQ29tbWl0bWVudCcgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudE93bmVyTHVnZ2FnZScsIHRpdGxlOiAn5bmz5Y+w6L2m5Li76KGM5p2O5a+E5a2Y6aG755+lJywgdHlwZTogJ293bmVyTHVnZ2FnZVN0b3JhZ2VOb3RpY2UnIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdhZ3JlZW1lbnRPd25lclNlcnZpY2UnLCB0aXRsZTogJ+W5s+WPsOi9puS4u+acjeWKoeWNj+iuricsIHR5cGU6ICdvd25lclNlcnZpY2VBZ3JlZW1lbnQnIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdhZ3JlZW1lbnRPd25lclJpc2snLCB0aXRsZTogJ+W5s+WPsOi9puS4u+mjjumZqeaJv+ivuicsIHR5cGU6ICdvd25lclJpc2tDb21taXRtZW50JyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnaGVscCcsIHRpdGxlOiAn5biu5Yqp5LiO5a6i5pyNJyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnc2V0dGluZycsIHRpdGxlOiAn6K6+572uJyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdHByb2ZpbGVTdGF0ZXM6IHtcblx0XHRcdFx0XHRndWVzdDoge1xuXHRcdFx0XHRcdFx0bmFtZTogJ+axpOWtkOaWsCcsXG5cdFx0XHRcdFx0XHRwaG9uZTogJzE4MTY2NTY1Njc3Jyxcblx0XHRcdFx0XHRcdGxldmVsVGFnOiAnJyxcblx0XHRcdFx0XHRcdHRvdGFsSW5jb21lOiAnLScsXG5cdFx0XHRcdFx0XHRwZW5kaW5nSW5jb21lOiAnLScsXG5cdFx0XHRcdFx0XHRvcmRlckNvdW50OiAnLScsXG5cdFx0XHRcdFx0XHR3YWxsZXRCYWxhbmNlOiAnwqUwJyxcblx0XHRcdFx0XHRcdHZlcmlmaWVkOiBmYWxzZVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0dmVyaWZpZWQ6IHtcblx0XHRcdFx0XHRcdG5hbWU6ICfmsaTlrZDmlrAnLFxuXHRcdFx0XHRcdFx0cGhvbmU6ICcxODE2NjU2NTY3N++8iOealkJEMjMxODnvvIknLFxuXHRcdFx0XHRcdFx0bGV2ZWxUYWc6ICdT57qnJyxcblx0XHRcdFx0XHRcdHRvdGFsSW5jb21lOiAnLScsXG5cdFx0XHRcdFx0XHRwZW5kaW5nSW5jb21lOiAnLScsXG5cdFx0XHRcdFx0XHRvcmRlckNvdW50OiAnLScsXG5cdFx0XHRcdFx0XHR3YWxsZXRCYWxhbmNlOiAnwqUwJyxcblx0XHRcdFx0XHRcdHZlcmlmaWVkOiB0cnVlXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRjb21wdXRlZDoge1xuXHRcdFx0Li4ubWFwU3RhdGUoWyd1c2VySW5mbyddKSxcblx0XHRcdGN1cnJlbnRQcm9maWxlKCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy51c2VWZXJpZmllZFN0YXRlID8gdGhpcy5wcm9maWxlU3RhdGVzLnZlcmlmaWVkIDogdGhpcy5wcm9maWxlU3RhdGVzLmd1ZXN0XG5cdFx0XHR9LFxuXHRcdFx0Ym9keVN0eWxlKCkge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdG1hcmdpblRvcDogdGhpcy5uYXZIZWlnaHQgKyAncHgnXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9LFxuXHRcdG9uTG9hZCgpIHtcblx0XHRcdGNvbnN0IHN5c3RlbUluZm8gPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKVxuXHRcdFx0dGhpcy5zdGF0dXNCYXJIZWlnaHQgPSBzeXN0ZW1JbmZvLnN0YXR1c0JhckhlaWdodCB8fCAwXG5cdFx0XHR0aGlzLm5hdkhlaWdodCA9IHRoaXMuc3RhdHVzQmFySGVpZ2h0ICsgdW5pLnVweDJweCg4OClcblx0XHR9LFxuXHRcdG9uU2hvdygpIHtcblx0XHRcdHRoaXMuZ2V0U3RhdHMoKVxuXHRcdFx0dGhpcy5nZXRVc2VySW5mbygpXG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRnZXRVc2VySW5mbygpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkudmVyaWZ5RGV0YWlsKCkudGhlbih1c2VyID0+IHtcblx0XHRcdFx0XHRpZiAodXNlci5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuJHN0b3JlLmNvbW1pdCgnc2V0VXNlckluZm8nLCB1c2VyLmRhdGEpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRnZXRTdGF0cygpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuc3RhdHMoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDAgJiYgcmVzLmRhdGEpIHtcblx0XHRcdFx0XHRcdHRoaXMucHJvZmlsZVN0YXRlcy52ZXJpZmllZC50b3RhbEluY29tZSA9IChyZXMuZGF0YS50b3RhbENvbW1pc3Npb24gLyAxMDApLnRvRml4ZWQoMilcblx0XHRcdFx0XHRcdHRoaXMucHJvZmlsZVN0YXRlcy52ZXJpZmllZC5wZW5kaW5nSW5jb21lID0gKHJlcy5kYXRhLnBlbmRpbmdDb21taXNzaW9uIC8gMTAwKS50b0ZpeGVkKDIpXG5cdFx0XHRcdFx0XHR0aGlzLnByb2ZpbGVTdGF0ZXMudmVyaWZpZWQub3JkZXJDb3VudCA9IHJlcy5kYXRhLnRvdGFsT3JkZXJDb3VudCB8fCAwXG5cdFx0XHRcdFx0XHR0aGlzLnByb2ZpbGVTdGF0ZXMudmVyaWZpZWQud2FsbGV0QmFsYW5jZSA9ICfCpScgKyAocmVzLmRhdGEuYmFsYW5jZSAvIDEwMCkudG9GaXhlZCgyKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRnZXREcml2ZXJMZXZlbFRleHQobGV2ZWwpIHtcblx0XHRcdFx0Y29uc3QgbWFwID0geyA1OiAnUycsIDQ6ICdBJywgMzogJ0InLCAyOiAnQycsIDE6ICdEJyB9XG5cdFx0XHRcdHJldHVybiBtYXBbbGV2ZWxdID8gbWFwW2xldmVsXSArICfnuqcnIDogJydcblx0XHRcdH0sXG5cdFx0XHRqdW1wKGl0ZW0pIHtcblx0XHRcdFx0Y29uc29sZS5sb2coaXRlbSlcblx0XHRcdFx0aWYgKGl0ZW0ua2V5ID09PSAnc2V0dGluZycpIHtcblx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvc2V0dGluZ3Mvc2V0dGluZ3MnXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSBlbHNlIGlmIChpdGVtLmtleSA9PT0gJ2RyaXZlcicpIHtcblx0XHRcdFx0XHRpZiAodGhpcy51c2VySW5mby5hdWRpdFN0YXR1cyA9PT0gOTkpIHtcblx0XHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2RyaXZlci1jZXJ0aWZpY2F0aW9uL2RyaXZlci1jZXJ0aWZpY2F0aW9uJ1xuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvY2VydGlmaWNhdGlvbi1kZXRhaWxzL2NlcnRpZmljYXRpb24tZGV0YWlscydcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2UgaWYgKGl0ZW0ua2V5ID09PSAnd2FsbGV0Jykge1xuXHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy93YWxsZXQvd2FsbGV0J1xuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH0gZWxzZSBpZiAoaXRlbS5rZXkgJiYgaXRlbS5rZXkuc3RhcnRzV2l0aCgnYWdyZWVtZW50JykpIHtcblx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHR1cmw6IGAvcGFnZXMvYWdyZWVtZW50L2FncmVlbWVudD90eXBlPSR7aXRlbS50eXBlfSZ0aXRsZT0ke2VuY29kZVVSSUNvbXBvbmVudChpdGVtLnRpdGxlKX1gXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGhhbmRsZUxvZ291dCgpIHtcblx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6YCA5Ye65LitLi4uJywgaWNvbjogJ2xvYWRpbmcnIH0pXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmxvZ091dERyaXZlcigpLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnbG9nb3V0IHJlcycsIHJlcylcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdjbGVhckFsbCcpXG5cdFx0XHRcdFx0XHR1bmkucmVMYXVuY2goe1xuXHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvbG9naW4vbG9naW4nXG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuY2F0Y2goZXJyID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnbG9nb3V0IGVycicsIGVycilcblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC5taW5lLXBhZ2Uge1xuXHRcdGJhY2tncm91bmQ6ICNmNmY4ZmM7XG5cblx0XHQmX19uYXYge1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX25hdi1pbm5lciB7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nOiAwIDI2cnB4O1xuXHRcdH1cblxuXHRcdCZfX25hdi10aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDM2cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMmIzMTM5O1xuXHRcdH1cblxuXHRcdCZfX2JvZHkge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC8vIG92ZXJmbG93OiBoaWRkZW47XG5cdFx0fVxuXG5cdFx0Jl9fY29udGVudCB7XG5cdFx0XHRwYWRkaW5nOiAyOHJweCAyMHJweCAwO1xuXHRcdH1cblxuXHRcdCZfX3Byb2ZpbGUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDIwcnB4O1xuXHRcdFx0cGFkZGluZzogOHJweCAwIDI0cnB4O1xuXHRcdH1cblxuXHRcdCZfX2F2YXRhciB7XG5cdFx0XHR3aWR0aDogOTJycHg7XG5cdFx0XHRoZWlnaHQ6IDkycnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0YmFja2dyb3VuZDogI2U4ZjFmZjtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblxuXHRcdCZfX3Byb2ZpbGUtaW5mbyB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX25hbWUtcm93IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMnJweDtcblx0XHR9XG5cblx0XHQmX19uYW1lIHtcblx0XHRcdGZvbnQtc2l6ZTogNDBycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyYjMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fbGV2ZWwtdGFnIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiA2cnB4O1xuXHRcdFx0cGFkZGluZzogNHJweCAxMHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDk5OXJweDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZjllNjggMCUsICNmZjdkMzQgMTAwJSk7XG5cdFx0fVxuXG5cdFx0Jl9fbGV2ZWwtZG90IHtcblx0XHRcdHdpZHRoOiAyMHJweDtcblx0XHRcdGhlaWdodDogMjRycHg7XG5cdFx0fVxuXHRcdFxuXHRcdCZfX2xldmVsLXRleHQge1xuXHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX19waG9uZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDEwcnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjOGY5NmEzO1xuXHRcdH1cblxuXHRcdCZfX2Zvb3RlciB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3R0b206IDYwcnB4O1xuXHRcdFx0Ly8gcGFkZGluZzogMTZycHggMCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDIwcnB4KTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cblx0XHQmX19sb2dvdXQge1xuXHRcdFx0d2lkdGg6IDIwMHJweDtcblx0XHRcdGhlaWdodDogNzJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNzJycHg7XHRcblx0XHRcdGJvcmRlci1yYWRpdXM6IDM2cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjOTk5OTk5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuOTI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmluY29tZS1jYXJkIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0Z2FwOiAyMHJweDtcblx0XHRwYWRkaW5nOiAxMHJweCAzMHJweCA0MHJweCAzMHJweDtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3RhdGljL2ltYWdlL21pbmdfYmdAMngucG5nJyk7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Jl9fbGVmdCxcblx0XHQmX19yaWdodCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblxuXHRcdCZfX2xlZnQge1xuXHRcdFx0ZmxleDogMTtcblx0XHR9XG5cblx0XHQmX19sYWJlbCxcblx0XHQmX19zdGF0LWxhYmVsLFxuXHRcdCZfX3N0YXQtdmFsdWUge1xuXHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzgpO1xuXHRcdH1cblxuXHRcdCZfX3ZhbHVlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdFx0XHRmb250LXNpemU6IDUycnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fcmlnaHQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0Z2FwOiAxOHJweDtcblx0XHRcdHBhZGRpbmctdG9wOiAxMnJweDtcblx0XHR9XG5cblx0XHQmX19zdGF0IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cdH1cblxuXHQubWVudS1wYW5lbCB7XG5cdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjAwcnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDIycnB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdCZfX2l0ZW0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDEwMnJweDtcblx0XHRcdHBhZGRpbmc6IDAgMjRycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXJweCBzb2xpZCAjZWVmMWY1O1xuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6ICMyYjMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fcmlnaHQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19zdWIge1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRcdCYtLW11dGVkIHtcblx0XHRcdFx0Y29sb3I6ICNiMmI4YzE7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWRhbmdlciB7XG5cdFx0XHRcdGNvbG9yOiAjRkExMDEwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS13YXJuaW5nIHtcblx0XHRcdFx0Y29sb3I6ICNmZjdiMzg7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXByaW1hcnkge1xuXHRcdFx0XHRjb2xvcjogIzEwNkVGQTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19hcnJvdyB7XG5cdFx0XHR3aWR0aDogMTZycHg7XG5cdFx0XHRoZWlnaHQ6IDI4cnB4O1xuXHRcdFx0aW1hZ2Uge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///103\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 _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\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      statusBarHeight: 0,\n      navHeight: 0,\n      useVerifiedState: true,\n      serverPhone: '',\n      menuList: [{\n        key: 'wallet',\n        title: '我的钱包'\n      }, {\n        key: 'driver',\n        title: '司机认证'\n      }, {\n        key: 'agreementPrivacy',\n        title: '司机隐私政策',\n        type: 'driverPrivacyPolicy'\n      }, {\n        key: 'agreementErrandLuggage',\n        title: '跑腿车主行李寄存须知',\n        type: 'errandLuggageStorageNotice'\n      }, {\n        key: 'agreementErrandService',\n        title: '跑腿达人服务协议',\n        type: 'errandServiceAgreement'\n      }, {\n        key: 'agreementErrandRisk',\n        title: '跑腿达人风险承诺',\n        type: 'errandRiskCommitment'\n      }, {\n        key: 'agreementOwnerLuggage',\n        title: '平台车主行李寄存须知',\n        type: 'ownerLuggageStorageNotice'\n      }, {\n        key: 'agreementOwnerService',\n        title: '平台车主服务协议',\n        type: 'ownerServiceAgreement'\n      }, {\n        key: 'agreementOwnerRisk',\n        title: '平台车主风险承诺',\n        type: 'ownerRiskCommitment'\n      }, {\n        key: 'help',\n        title: '联系客服'\n      }, {\n        key: 'setting',\n        title: '设置'\n      }],\n      profileStates: {\n        guest: {\n          name: '汤子新',\n          phone: '18166565677',\n          levelTag: '',\n          totalIncome: '-',\n          pendingIncome: '-',\n          orderCount: '-',\n          walletBalance: '¥0',\n          verified: false\n        },\n        verified: {\n          name: '汤子新',\n          phone: '18166565677(皖BD23189)',\n          levelTag: 'S级',\n          totalIncome: '-',\n          pendingIncome: '-',\n          orderCount: '-',\n          walletBalance: '¥0',\n          verified: true\n        }\n      }\n    };\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n    currentProfile: function currentProfile() {\n      return this.useVerifiedState ? this.profileStates.verified : this.profileStates.guest;\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.navHeight + 'px'\n      };\n    }\n  }),\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.navHeight = this.statusBarHeight + uni.upx2px(88);\n  },\n  onShow: function onShow() {\n    this.getStats();\n    this.getUserInfo();\n    this.getServerPhone();\n  },\n  methods: {\n    getServerPhone: function getServerPhone() {\n      var _this = this;\n      this.$u.api.getPlatformAboutUs().then(function (res) {\n        if (res.code === 200 && res.data) {\n          _this.serverPhone = res.data.serverPhone || '';\n        }\n      });\n    },\n    getUserInfo: function getUserInfo() {\n      var _this2 = this;\n      this.$u.api.verifyDetail().then(function (user) {\n        if (user.code === 200) {\n          _this2.$store.commit('setUserInfo', user.data);\n        }\n      });\n    },\n    getStats: function getStats() {\n      var _this3 = this;\n      this.$u.api.stats().then(function (res) {\n        if (res.code === 200 && res.data) {\n          _this3.profileStates.verified.totalIncome = (res.data.totalCommission / 100).toFixed(2);\n          _this3.profileStates.verified.pendingIncome = (res.data.pendingCommission / 100).toFixed(2);\n          _this3.profileStates.verified.orderCount = res.data.totalOrderCount || 0;\n          _this3.profileStates.verified.walletBalance = '¥' + (res.data.balance / 100).toFixed(2);\n        }\n      });\n    },\n    getDriverLevelText: function getDriverLevelText(level) {\n      var map = {\n        5: 'S',\n        4: 'A',\n        3: 'B',\n        2: 'C',\n        1: 'D'\n      };\n      return map[level] ? map[level] + '级' : '';\n    },\n    jump: function jump(item) {\n      __f__(\"log\", item, \" at pages/mine/mine.vue:171\");\n      if (item.key === 'setting') {\n        uni.navigateTo({\n          url: '/pages/settings/settings'\n        });\n      } else if (item.key === 'driver') {\n        if (this.userInfo.auditStatus === 99) {\n          uni.navigateTo({\n            url: '/pages/driver-certification/driver-certification'\n          });\n        } else {\n          uni.navigateTo({\n            url: '/pages/certification-details/certification-details'\n          });\n        }\n      } else if (item.key === 'wallet') {\n        uni.navigateTo({\n          url: '/pages/wallet/wallet'\n        });\n      } else if (item.key && item.key.startsWith('agreement')) {\n        uni.navigateTo({\n          url: \"/pages/agreement/agreement?type=\".concat(item.type, \"&title=\").concat(encodeURIComponent(item.title))\n        });\n      } else if (item.key === 'help') {\n        if (this.serverPhone) {\n          uni.makePhoneCall({\n            phoneNumber: this.serverPhone\n          });\n        } else {\n          uni.showToast({\n            title: '客服电话获取失败',\n            icon: 'none'\n          });\n        }\n      }\n    },\n    handleLogout: function handleLogout() {\n      var _this4 = this;\n      uni.showToast({\n        title: '退出中...',\n        icon: 'loading'\n      });\n      this.$u.api.logOutDriver().then(function (res) {\n        __f__(\"log\", 'logout res', res, \" at pages/mine/mine.vue:207\");\n        if (res.code === 200) {\n          _this4.$store.commit('clearAll');\n          uni.reLaunch({\n            url: '/pages/login/login'\n          });\n        }\n      }).catch(function (err) {\n        __f__(\"log\", 'logout err', err, \" at pages/mine/mine.vue:215\");\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbWluZS9taW5lLnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwic3RhdHVzQmFySGVpZ2h0IiwibmF2SGVpZ2h0IiwidXNlVmVyaWZpZWRTdGF0ZSIsInNlcnZlclBob25lIiwibWVudUxpc3QiLCJrZXkiLCJ0aXRsZSIsInR5cGUiLCJwcm9maWxlU3RhdGVzIiwiZ3Vlc3QiLCJuYW1lIiwicGhvbmUiLCJsZXZlbFRhZyIsInRvdGFsSW5jb21lIiwicGVuZGluZ0luY29tZSIsIm9yZGVyQ291bnQiLCJ3YWxsZXRCYWxhbmNlIiwidmVyaWZpZWQiLCJjb21wdXRlZCIsImN1cnJlbnRQcm9maWxlIiwiYm9keVN0eWxlIiwibWFyZ2luVG9wIiwib25Mb2FkIiwib25TaG93IiwibWV0aG9kcyIsImdldFNlcnZlclBob25lIiwiZ2V0VXNlckluZm8iLCJnZXRTdGF0cyIsImdldERyaXZlckxldmVsVGV4dCIsImp1bXAiLCJ1bmkiLCJ1cmwiLCJwaG9uZU51bWJlciIsImljb24iLCJoYW5kbGVMb2dvdXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBMEVBO0FBQUE7QUFBQTtBQUFBLGVBQ0E7RUFDQUE7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQyxXQUNBO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRjtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUY7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO1FBQUFDO01BQUEsR0FDQTtRQUFBRjtRQUFBQztRQUFBQztNQUFBLEdBQ0E7UUFBQUY7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFGO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEVBQ0E7TUFDQUU7UUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7VUFDQUM7UUFDQTtRQUNBQTtVQUNBUDtVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztVQUNBQztRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDLDBDQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQ0FDO01BQ0E7SUFDQTtFQUFBLEVBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0lBQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0FDO01BQUE7TUFDQTtRQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7UUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFBQTtRQUFBO1FBQUE7UUFBQTtRQUFBO01BQUE7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBQztVQUNBQztRQUNBO01BQ0E7UUFDQTtVQUNBRDtZQUNBQztVQUNBO1FBQ0E7VUFDQUQ7WUFDQUM7VUFDQTtRQUNBO01BQ0E7UUFDQUQ7VUFDQUM7UUFDQTtNQUNBO1FBQ0FEO1VBQ0FDO1FBQ0E7TUFDQTtRQUNBO1VBQ0FEO1lBQ0FFO1VBQ0E7UUFDQTtVQUNBRjtZQUFBeEI7WUFBQTJCO1VBQUE7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBSjtRQUFBeEI7UUFBQTJCO01BQUE7TUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBSDtZQUNBQztVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDMuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlXCI+XG5cdFx0PHZpZXcgY2xhc3M9XCJtaW5lLXBhZ2VfX25hdlwiIDpzdHlsZT1cInsgcGFkZGluZ1RvcDogc3RhdHVzQmFySGVpZ2h0ICsgJ3B4JyB9XCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cIm1pbmUtcGFnZV9fbmF2LWlubmVyXCI+XG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwibWluZS1wYWdlX19uYXYtdGl0bGVcIj7miJHnmoQ8L3RleHQ+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXG5cdFx0PHZpZXcgY2xhc3M9XCJtaW5lLXBhZ2VfX2JvZHlcIiA6c3R5bGU9XCJib2R5U3R5bGVcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19jb250ZW50XCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19wcm9maWxlXCI+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwibWluZS1wYWdlX19hdmF0YXJcIiA6c3JjPVwidXNlckluZm8uaW1ndXJsIHx8ICcvc3RhdGljL2ltYWdlL2ljX3BpY0AyeC5wbmcnXCIgbW9kZT1cImFzcGVjdEZpbGxcIj48L2ltYWdlPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19wcm9maWxlLWluZm9cIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwibWluZS1wYWdlX19uYW1lLXJvd1wiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm1pbmUtcGFnZV9fbmFtZVwiPnt7IHVzZXJJbmZvLm5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJ1c2VySW5mby5kcml2ZXJMZXZlbFwiIGNsYXNzPVwibWluZS1wYWdlX19sZXZlbC10YWdcIj5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19qaWFuZ3BhaUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBjbGFzcz1cIm1pbmUtcGFnZV9fbGV2ZWwtZG90XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm1pbmUtcGFnZV9fbGV2ZWwtdGV4dFwiPnt7IGdldERyaXZlckxldmVsVGV4dCh1c2VySW5mby5kcml2ZXJMZXZlbCkgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwibWluZS1wYWdlX19waG9uZVwiPnt7IHVzZXJJbmZvLnRlbGVwaG9uZSB8fCAnJyB9fSDvvIh7eyB1c2VySW5mby5jYXJDb2RlIHx8ICcnIH19IO+8iTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmNvbWUtY2FyZF9fbGVmdFwiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJpbmNvbWUtY2FyZF9fbGFiZWxcIj7ntK/orqHkvaPph5Eo5YWDKTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3ZhbHVlXCI+e3sgY3VycmVudFByb2ZpbGUudG90YWxJbmNvbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5jb21lLWNhcmRfX3JpZ2h0XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkX19zdGF0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtbGFiZWxcIj7lvoXnu5Pnrpco5YWDKe+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJpbmNvbWUtY2FyZF9fc3RhdC12YWx1ZVwiPnt7IGN1cnJlbnRQcm9maWxlLnBlbmRpbmdJbmNvbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluY29tZS1jYXJkX19zdGF0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtbGFiZWxcIj7orqLljZXmgLvmlbDvvJo8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiaW5jb21lLWNhcmRfX3N0YXQtdmFsdWVcIj57eyBjdXJyZW50UHJvZmlsZS5vcmRlckNvdW50IH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwibWVudS1wYW5lbFwiPlxuXHRcdFx0XHRcdDx2aWV3IHYtZm9yPVwiaXRlbSBpbiBtZW51TGlzdFwiIDprZXk9XCJpdGVtLnRpdGxlXCIgY2xhc3M9XCJtZW51LXBhbmVsX19pdGVtXCIgQGNsaWNrPVwianVtcChpdGVtKVwiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX190aXRsZVwiPnt7IGl0ZW0udGl0bGUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm1lbnUtcGFuZWxfX3JpZ2h0XCI+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiaXRlbS5rZXkgPT09ICd3YWxsZXQnXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1tdXRlZFwiPuS9memine+8mnt7IGN1cnJlbnRQcm9maWxlLndhbGxldEJhbGFuY2UgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiaXRlbS5rZXkgPT09ICdkcml2ZXInXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OVwiIGNsYXNzPVwibWVudS1wYW5lbF9fc3ViIG1lbnUtcGFuZWxfX3N1Yi0tZGFuZ2VyXCI+5a6M5oiQ6K6k6K+B5ZCO5Y2z5Y+v5o6l5Y2VPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IHYtZWxzZS1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAwXCIgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1kYW5nZXJcIj7lrqHmoLjkuK08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSAyXCIgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1kYW5nZXJcIj7lt7LpqbPlm548L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgdi1lbHNlLWlmPVwidXNlckluZm8uYXVkaXRTdGF0dXMgPT09IDNcIiBjbGFzcz1cIm1lbnUtcGFuZWxfX3N1YiBtZW51LXBhbmVsX19zdWItLXByaW1hcnlcIj7lt7LorqTor4E8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWVsc2UtaWY9XCJpdGVtLmtleSA9PT0gJ3NldHRpbmcnXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJtZW51LXBhbmVsX19zdWIgbWVudS1wYW5lbF9fc3ViLS1tdXRlZFwiPuW9k+WJjeeJiOacrFYxLjAuMDwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PC90ZW1wbGF0ZT5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJtZW51LXBhbmVsX19hcnJvd1wiPlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL21pbmVfYXIyQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiA1cnB4O1wiPjwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8dmlldyBjbGFzcz1cIm1pbmUtcGFnZV9fZm9vdGVyXCI+XG5cdFx0XHQ8YnV0dG9uIGNsYXNzPVwibWluZS1wYWdlX19sb2dvdXRcIiBob3Zlci1jbGFzcz1cIm1pbmUtcGFnZV9fbG9nb3V0LS1ob3ZlclwiIEBjbGljay5zdG9wPVwiaGFuZGxlTG9nb3V0XCI+6YCA5Ye655m75b2VPC9idXR0b24+XG5cdFx0PC92aWV3PlxuXHQ8L3ZpZXc+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0XHRuYXZIZWlnaHQ6IDAsXG5cdFx0XHRcdHVzZVZlcmlmaWVkU3RhdGU6IHRydWUsXG5cdFx0XHRcdHNlcnZlclBob25lOiAnJyxcblx0XHRcdFx0bWVudUxpc3Q6IFtcblx0XHRcdFx0XHR7IGtleTogJ3dhbGxldCcsIHRpdGxlOiAn5oiR55qE6ZKx5YyFJyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnZHJpdmVyJywgdGl0bGU6ICflj7jmnLrorqTor4EnIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdhZ3JlZW1lbnRQcml2YWN5JywgdGl0bGU6ICflj7jmnLrpmpDnp4HmlL/nrZYnLCB0eXBlOiAnZHJpdmVyUHJpdmFjeVBvbGljeScgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudEVycmFuZEx1Z2dhZ2UnLCB0aXRsZTogJ+i3keiFv+i9puS4u+ihjOadjuWvhOWtmOmhu+efpScsIHR5cGU6ICdlcnJhbmRMdWdnYWdlU3RvcmFnZU5vdGljZScgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudEVycmFuZFNlcnZpY2UnLCB0aXRsZTogJ+i3keiFv+i+vuS6uuacjeWKoeWNj+iuricsIHR5cGU6ICdlcnJhbmRTZXJ2aWNlQWdyZWVtZW50JyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnYWdyZWVtZW50RXJyYW5kUmlzaycsIHRpdGxlOiAn6LeR6IW/6L6+5Lq66aOO6Zmp5om/6K+6JywgdHlwZTogJ2VycmFuZFJpc2tDb21taXRtZW50JyB9LFxuXHRcdFx0XHRcdHsga2V5OiAnYWdyZWVtZW50T3duZXJMdWdnYWdlJywgdGl0bGU6ICflubPlj7DovabkuLvooYzmnY7lr4TlrZjpobvnn6UnLCB0eXBlOiAnb3duZXJMdWdnYWdlU3RvcmFnZU5vdGljZScgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudE93bmVyU2VydmljZScsIHRpdGxlOiAn5bmz5Y+w6L2m5Li75pyN5Yqh5Y2P6K6uJywgdHlwZTogJ293bmVyU2VydmljZUFncmVlbWVudCcgfSxcblx0XHRcdFx0XHR7IGtleTogJ2FncmVlbWVudE93bmVyUmlzaycsIHRpdGxlOiAn5bmz5Y+w6L2m5Li76aOO6Zmp5om/6K+6JywgdHlwZTogJ293bmVyUmlza0NvbW1pdG1lbnQnIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdoZWxwJywgdGl0bGU6ICfogZTns7vlrqLmnI0nIH0sXG5cdFx0XHRcdFx0eyBrZXk6ICdzZXR0aW5nJywgdGl0bGU6ICforr7nva4nIH1cblx0XHRcdFx0XSxcblx0XHRcdFx0cHJvZmlsZVN0YXRlczoge1xuXHRcdFx0XHRcdGd1ZXN0OiB7XG5cdFx0XHRcdFx0XHRuYW1lOiAn5rGk5a2Q5pawJyxcblx0XHRcdFx0XHRcdHBob25lOiAnMTgxNjY1NjU2NzcnLFxuXHRcdFx0XHRcdFx0bGV2ZWxUYWc6ICcnLFxuXHRcdFx0XHRcdFx0dG90YWxJbmNvbWU6ICctJyxcblx0XHRcdFx0XHRcdHBlbmRpbmdJbmNvbWU6ICctJyxcblx0XHRcdFx0XHRcdG9yZGVyQ291bnQ6ICctJyxcblx0XHRcdFx0XHRcdHdhbGxldEJhbGFuY2U6ICfCpTAnLFxuXHRcdFx0XHRcdFx0dmVyaWZpZWQ6IGZhbHNlXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHR2ZXJpZmllZDoge1xuXHRcdFx0XHRcdFx0bmFtZTogJ+axpOWtkOaWsCcsXG5cdFx0XHRcdFx0XHRwaG9uZTogJzE4MTY2NTY1Njc377yI55qWQkQyMzE4Oe+8iScsXG5cdFx0XHRcdFx0XHRsZXZlbFRhZzogJ1PnuqcnLFxuXHRcdFx0XHRcdFx0dG90YWxJbmNvbWU6ICctJyxcblx0XHRcdFx0XHRcdHBlbmRpbmdJbmNvbWU6ICctJyxcblx0XHRcdFx0XHRcdG9yZGVyQ291bnQ6ICctJyxcblx0XHRcdFx0XHRcdHdhbGxldEJhbGFuY2U6ICfCpTAnLFxuXHRcdFx0XHRcdFx0dmVyaWZpZWQ6IHRydWVcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9LFxuXHRcdGNvbXB1dGVkOiB7XG5cdFx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJ10pLFxuXHRcdFx0Y3VycmVudFByb2ZpbGUoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnVzZVZlcmlmaWVkU3RhdGUgPyB0aGlzLnByb2ZpbGVTdGF0ZXMudmVyaWZpZWQgOiB0aGlzLnByb2ZpbGVTdGF0ZXMuZ3Vlc3Rcblx0XHRcdH0sXG5cdFx0XHRib2R5U3R5bGUoKSB7XG5cdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0bWFyZ2luVG9wOiB0aGlzLm5hdkhlaWdodCArICdweCdcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0b25Mb2FkKCkge1xuXHRcdFx0Y29uc3Qgc3lzdGVtSW5mbyA9IHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpXG5cdFx0XHR0aGlzLnN0YXR1c0JhckhlaWdodCA9IHN5c3RlbUluZm8uc3RhdHVzQmFySGVpZ2h0IHx8IDBcblx0XHRcdHRoaXMubmF2SGVpZ2h0ID0gdGhpcy5zdGF0dXNCYXJIZWlnaHQgKyB1bmkudXB4MnB4KDg4KVxuXHRcdH0sXG5cdFx0b25TaG93KCkge1xuXHRcdFx0dGhpcy5nZXRTdGF0cygpXG5cdFx0XHR0aGlzLmdldFVzZXJJbmZvKClcblx0XHRcdHRoaXMuZ2V0U2VydmVyUGhvbmUoKVxuXHRcdH0sXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0Z2V0U2VydmVyUGhvbmUoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmdldFBsYXRmb3JtQWJvdXRVcygpLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCAmJiByZXMuZGF0YSkge1xuXHRcdFx0XHRcdFx0dGhpcy5zZXJ2ZXJQaG9uZSA9IHJlcy5kYXRhLnNlcnZlclBob25lIHx8ICcnXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGdldFVzZXJJbmZvKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS52ZXJpZnlEZXRhaWwoKS50aGVuKHVzZXIgPT4ge1xuXHRcdFx0XHRcdGlmICh1c2VyLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdzZXRVc2VySW5mbycsIHVzZXIuZGF0YSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGdldFN0YXRzKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5zdGF0cygpLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCAmJiByZXMuZGF0YSkge1xuXHRcdFx0XHRcdFx0dGhpcy5wcm9maWxlU3RhdGVzLnZlcmlmaWVkLnRvdGFsSW5jb21lID0gKHJlcy5kYXRhLnRvdGFsQ29tbWlzc2lvbiAvIDEwMCkudG9GaXhlZCgyKVxuXHRcdFx0XHRcdFx0dGhpcy5wcm9maWxlU3RhdGVzLnZlcmlmaWVkLnBlbmRpbmdJbmNvbWUgPSAocmVzLmRhdGEucGVuZGluZ0NvbW1pc3Npb24gLyAxMDApLnRvRml4ZWQoMilcblx0XHRcdFx0XHRcdHRoaXMucHJvZmlsZVN0YXRlcy52ZXJpZmllZC5vcmRlckNvdW50ID0gcmVzLmRhdGEudG90YWxPcmRlckNvdW50IHx8IDBcblx0XHRcdFx0XHRcdHRoaXMucHJvZmlsZVN0YXRlcy52ZXJpZmllZC53YWxsZXRCYWxhbmNlID0gJ8KlJyArIChyZXMuZGF0YS5iYWxhbmNlIC8gMTAwKS50b0ZpeGVkKDIpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGdldERyaXZlckxldmVsVGV4dChsZXZlbCkge1xuXHRcdFx0XHRjb25zdCBtYXAgPSB7IDU6ICdTJywgNDogJ0EnLCAzOiAnQicsIDI6ICdDJywgMTogJ0QnIH1cblx0XHRcdFx0cmV0dXJuIG1hcFtsZXZlbF0gPyBtYXBbbGV2ZWxdICsgJ+e6pycgOiAnJ1xuXHRcdFx0fSxcblx0XHRcdGp1bXAoaXRlbSkge1xuXHRcdFx0XHRjb25zb2xlLmxvZyhpdGVtKVxuXHRcdFx0XHRpZiAoaXRlbS5rZXkgPT09ICdzZXR0aW5nJykge1xuXHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy9zZXR0aW5ncy9zZXR0aW5ncydcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9IGVsc2UgaWYgKGl0ZW0ua2V5ID09PSAnZHJpdmVyJykge1xuXHRcdFx0XHRcdGlmICh0aGlzLnVzZXJJbmZvLmF1ZGl0U3RhdHVzID09PSA5OSkge1xuXHRcdFx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvZHJpdmVyLWNlcnRpZmljYXRpb24vZHJpdmVyLWNlcnRpZmljYXRpb24nXG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy9jZXJ0aWZpY2F0aW9uLWRldGFpbHMvY2VydGlmaWNhdGlvbi1kZXRhaWxzJ1xuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gZWxzZSBpZiAoaXRlbS5rZXkgPT09ICd3YWxsZXQnKSB7XG5cdFx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL3dhbGxldC93YWxsZXQnXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSBlbHNlIGlmIChpdGVtLmtleSAmJiBpdGVtLmtleS5zdGFydHNXaXRoKCdhZ3JlZW1lbnQnKSkge1xuXHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0XHRcdHVybDogYC9wYWdlcy9hZ3JlZW1lbnQvYWdyZWVtZW50P3R5cGU9JHtpdGVtLnR5cGV9JnRpdGxlPSR7ZW5jb2RlVVJJQ29tcG9uZW50KGl0ZW0udGl0bGUpfWBcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9IGVsc2UgaWYgKGl0ZW0ua2V5ID09PSAnaGVscCcpIHtcblx0XHRcdFx0XHRpZiAodGhpcy5zZXJ2ZXJQaG9uZSkge1xuXHRcdFx0XHRcdFx0dW5pLm1ha2VQaG9uZUNhbGwoe1xuXHRcdFx0XHRcdFx0XHRwaG9uZU51bWJlcjogdGhpcy5zZXJ2ZXJQaG9uZVxuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5a6i5pyN55S16K+d6I635Y+W5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlTG9nb3V0KCkge1xuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfpgIDlh7rkuK0uLi4nLCBpY29uOiAnbG9hZGluZycgfSlcblx0XHRcdFx0dGhpcy4kdS5hcGkubG9nT3V0RHJpdmVyKCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdsb2dvdXQgcmVzJywgcmVzKVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLiRzdG9yZS5jb21taXQoJ2NsZWFyQWxsJylcblx0XHRcdFx0XHRcdHVuaS5yZUxhdW5jaCh7XG5cdFx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy9sb2dpbi9sb2dpbidcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5jYXRjaChlcnIgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdsb2dvdXQgZXJyJywgZXJyKVxuXHRcdFx0XHR9KVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cblx0Lm1pbmUtcGFnZSB7XG5cdFx0YmFja2dyb3VuZDogI2Y2ZjhmYztcblxuXHRcdCZfX25hdiB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LWlubmVyIHtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDAgMjZycHg7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LXRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMzZycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyYjMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fYm9keSB7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0Ly8gb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cblx0XHQmX19jb250ZW50IHtcblx0XHRcdHBhZGRpbmc6IDI4cnB4IDIwcnB4IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcHJvZmlsZSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMjBycHg7XG5cdFx0XHRwYWRkaW5nOiA4cnB4IDAgMjRycHg7XG5cdFx0fVxuXG5cdFx0Jl9fYXZhdGFyIHtcblx0XHRcdHdpZHRoOiA5MnJweDtcblx0XHRcdGhlaWdodDogOTJycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZThmMWZmO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcHJvZmlsZS1pbmZvIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fbmFtZS1yb3cge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDEycnB4O1xuXHRcdH1cblxuXHRcdCZfX25hbWUge1xuXHRcdFx0Zm9udC1zaXplOiA0MHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzJiMzEzOTtcblx0XHR9XG5cblx0XHQmX19sZXZlbC10YWcge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDZycHg7XG5cdFx0XHRwYWRkaW5nOiA0cnB4IDEwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZmOWU2OCAwJSwgI2ZmN2QzNCAxMDAlKTtcblx0XHR9XG5cblx0XHQmX19sZXZlbC1kb3Qge1xuXHRcdFx0d2lkdGg6IDIwcnB4O1xuXHRcdFx0aGVpZ2h0OiAyNHJweDtcblx0XHR9XG5cdFx0XG5cdFx0Jl9fbGV2ZWwtdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDIycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3Bob25lIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogMTBycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM4Zjk2YTM7XG5cdFx0fVxuXG5cdFx0Jl9fZm9vdGVyIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogNjBycHg7XG5cdFx0XHQvLyBwYWRkaW5nOiAxNnJweCAwIGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMjBycHgpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdH1cblxuXHRcdCZfX2xvZ291dCB7XG5cdFx0XHR3aWR0aDogMjAwcnB4O1xuXHRcdFx0aGVpZ2h0OiA3MnJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcdFxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMzZycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdFx0Ym9yZGVyOiAxcnB4IHNvbGlkICM5OTk5OTk7XG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTogMC45Mjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaW5jb21lLWNhcmQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRnYXA6IDIwcnB4O1xuXHRcdHBhZGRpbmc6IDEwcnB4IDMwcnB4IDQwcnB4IDMwcnB4O1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdGF0aWMvaW1hZ2UvbWluZ19iZ0AyeC5wbmcnKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHQmX19sZWZ0LFxuXHRcdCZfX3JpZ2h0IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXG5cdFx0Jl9fbGVmdCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdH1cblxuXHRcdCZfX2xhYmVsLFxuXHRcdCZfX3N0YXQtbGFiZWwsXG5cdFx0Jl9fc3RhdC12YWx1ZSB7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43OCk7XG5cdFx0fVxuXG5cdFx0Jl9fdmFsdWUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdGZvbnQtc2l6ZTogNTJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX19yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRnYXA6IDE4cnB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDEycnB4O1xuXHRcdH1cblxuXHRcdCZfX3N0YXQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDEwcnB4O1xuXHRcdH1cblx0fVxuXG5cdC5tZW51LXBhbmVsIHtcblx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRtYXJnaW4tYm90dG9tOiAyMDBycHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMjJycHg7XG5cdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Jl9faXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogMTAycnB4O1xuXHRcdFx0cGFkZGluZzogMCAyNHJweDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcnB4IHNvbGlkICNlZWYxZjU7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogIzJiMzEzOTtcblx0XHR9XG5cblx0XHQmX19yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRnYXA6IDEwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3N1YiB7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdFx0Ji0tbXV0ZWQge1xuXHRcdFx0XHRjb2xvcjogI2IyYjhjMTtcblx0XHRcdH1cblxuXHRcdFx0Ji0tZGFuZ2VyIHtcblx0XHRcdFx0Y29sb3I6ICNGQTEwMTA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXdhcm5pbmcge1xuXHRcdFx0XHRjb2xvcjogI2ZmN2IzODtcblx0XHRcdH1cblxuXHRcdFx0Ji0tcHJpbWFyeSB7XG5cdFx0XHRcdGNvbG9yOiAjMTA2RUZBO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2Fycm93IHtcblx0XHRcdHdpZHRoOiAxNnJweDtcblx0XHRcdGhlaWdodDogMjhycHg7XG5cdFx0XHRpbWFnZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///103\n");
/***/ }),
/* 104 */
@@ -9397,6 +9421,7 @@
var components
try {
  components = {
    uIcon: __webpack_require__(/*! uview-ui/components/u-icon/u-icon.vue */ 18).default,
    uModal: __webpack_require__(/*! uview-ui/components/u-modal/u-modal.vue */ 25).default,
    uPopup: __webpack_require__(/*! uview-ui/components/u-popup/u-popup.vue */ 28).default,
  }
@@ -9451,22 +9476,67 @@
      _c(
        "view",
        {
          staticClass: _vm._$s(4, "sc", "order-page__tabs"),
          staticClass: _vm._$s(4, "sc", "order-page__search"),
          style: _vm._$s(4, "s", { top: _vm.navHeight + "px" }),
          attrs: { _i: 4 },
        },
        [
          _c(
            "view",
            {
              staticClass: _vm._$s(5, "sc", "order-page__search-box"),
              attrs: { _i: 5 },
            },
            [
              _c("u-icon", {
                attrs: { name: "search", color: "#999999", size: "28", _i: 6 },
              }),
              _c("input", {
                directives: [
                  {
                    name: "model",
                    rawName: "v-model",
                    value: _vm.searchKeyword,
                    expression: "searchKeyword",
                  },
                ],
                staticClass: _vm._$s(7, "sc", "order-page__search-input"),
                attrs: { _i: 7 },
                domProps: { value: _vm._$s(7, "v-model", _vm.searchKeyword) },
                on: {
                  confirm: _vm.searchOrder,
                  input: function ($event) {
                    if ($event.target.composing) {
                      return
                    }
                    _vm.searchKeyword = $event.target.value
                  },
                },
              }),
            ],
            1
          ),
        ]
      ),
      _c(
        "view",
        {
          staticClass: _vm._$s(8, "sc", "order-page__tabs"),
          style: _vm._$s(8, "s", { top: _vm.navHeight + 44 + "px" }),
          attrs: { _i: 8 },
        },
        _vm._l(
          _vm._$s(5, "f", { forItems: _vm.displayTabs }),
          _vm._$s(9, "f", { forItems: _vm.displayTabs }),
          function (tab, $10, $20, $30) {
            return _c(
              "view",
              {
                key: _vm._$s(5, "f", { forIndex: $20, key: tab.value }),
                staticClass: _vm._$s("5-" + $30, "sc", "order-page__tab"),
                class: _vm._$s("5-" + $30, "c", {
                key: _vm._$s(9, "f", { forIndex: $20, key: tab.value }),
                staticClass: _vm._$s("9-" + $30, "sc", "order-page__tab"),
                class: _vm._$s("9-" + $30, "c", {
                  "order-page__tab--active": _vm.activeTab === tab.value,
                }),
                attrs: { _i: "5-" + $30 },
                attrs: { _i: "9-" + $30 },
                on: {
                  click: function ($event) {
                    _vm.activeTab = tab.value
@@ -9478,22 +9548,22 @@
                  "text",
                  {
                    staticClass: _vm._$s(
                      "6-" + $30,
                      "10-" + $30,
                      "sc",
                      "order-page__tab-text"
                    ),
                    attrs: { _i: "6-" + $30 },
                    attrs: { _i: "10-" + $30 },
                  },
                  [_vm._v(_vm._$s("6-" + $30, "t0-0", _vm._s(tab.label)))]
                  [_vm._v(_vm._$s("10-" + $30, "t0-0", _vm._s(tab.label)))]
                ),
                _vm._$s("7-" + $30, "i", _vm.activeTab === tab.value)
                _vm._$s("11-" + $30, "i", _vm.activeTab === tab.value)
                  ? _c("view", {
                      staticClass: _vm._$s(
                        "7-" + $30,
                        "11-" + $30,
                        "sc",
                        "order-page__tab-line"
                      ),
                      attrs: { _i: "7-" + $30 },
                      attrs: { _i: "11-" + $30 },
                    })
                  : _vm._e(),
              ]
@@ -9505,27 +9575,27 @@
      _c(
        "scroll-view",
        {
          staticClass: _vm._$s(8, "sc", "order-page__body"),
          style: _vm._$s(8, "s", _vm.bodyStyle),
          attrs: { _i: 8 },
          staticClass: _vm._$s(12, "sc", "order-page__body"),
          style: _vm._$s(12, "s", _vm.bodyStyle),
          attrs: { _i: 12 },
        },
        [
          _c(
            "view",
            {
              staticClass: _vm._$s(9, "sc", "order-page__list"),
              attrs: { _i: 9 },
              staticClass: _vm._$s(13, "sc", "order-page__list"),
              attrs: { _i: 13 },
            },
            [
              _vm._l(
                _vm._$s(10, "f", { forItems: _vm.orders }),
                _vm._$s(14, "f", { forItems: _vm.orders }),
                function (item, index, $21, $31) {
                  return _c(
                    "view",
                    {
                      key: _vm._$s(10, "f", { forIndex: $21, key: item.id }),
                      staticClass: _vm._$s("10-" + $31, "sc", "order-card"),
                      attrs: { _i: "10-" + $31 },
                      key: _vm._$s(14, "f", { forIndex: $21, key: item.id }),
                      staticClass: _vm._$s("14-" + $31, "sc", "order-card"),
                      attrs: { _i: "14-" + $31 },
                      on: {
                        click: function ($event) {
                          return _vm.goToOrderDetail(item, index)
@@ -9537,53 +9607,53 @@
                        "view",
                        {
                          staticClass: _vm._$s(
                            "11-" + $31,
                            "15-" + $31,
                            "sc",
                            "order-card__head"
                          ),
                          attrs: { _i: "11-" + $31 },
                          attrs: { _i: "15-" + $31 },
                        },
                        [
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "12-" + $31,
                                "16-" + $31,
                                "sc",
                                "order-card__head-left"
                              ),
                              attrs: { _i: "12-" + $31 },
                              attrs: { _i: "16-" + $31 },
                            },
                            [
                              _c("image", {
                                staticClass: _vm._$s(
                                  "13-" + $31,
                                  "17-" + $31,
                                  "sc",
                                  "order-card__badge-icon"
                                ),
                                attrs: {
                                  src: _vm._$s(
                                    "13-" + $31,
                                    "17-" + $31,
                                    "a-src",
                                    _vm.getBadgeIcon(item)
                                  ),
                                  _i: "13-" + $31,
                                  _i: "17-" + $31,
                                },
                              }),
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "14-" + $31,
                                    "18-" + $31,
                                    "sc",
                                    "order-card__time-text"
                                  ),
                                  attrs: { _i: "14-" + $31 },
                                  attrs: { _i: "18-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "14-" + $31,
                                      "18-" + $31,
                                      "t0-0",
                                      _vm._s(item.createTime)
                                    )
@@ -9596,20 +9666,20 @@
                            "text",
                            {
                              staticClass: _vm._$s(
                                "15-" + $31,
                                "19-" + $31,
                                "sc",
                                "order-card__status"
                              ),
                              class: _vm._$s("15-" + $31, "c", {
                              class: _vm._$s("19-" + $31, "c", {
                                "order-card__status--highlight":
                                  item.status === 3 || item.status === 4,
                              }),
                              attrs: { _i: "15-" + $31 },
                              attrs: { _i: "19-" + $31 },
                            },
                            [
                              _vm._v(
                                _vm._$s(
                                  "15-" + $31,
                                  "19-" + $31,
                                  "t0-0",
                                  _vm._s(_vm.getStatusText(item.status))
                                )
@@ -9622,120 +9692,46 @@
                        "view",
                        {
                          staticClass: _vm._$s(
                            "16-" + $31,
                            "20-" + $31,
                            "sc",
                            "order-card__route-item"
                          ),
                          attrs: { _i: "16-" + $31 },
                          attrs: { _i: "20-" + $31 },
                        },
                        [
                          _c("view", {
                            staticClass: _vm._$s(
                              "17-" + $31,
                              "21-" + $31,
                              "sc",
                              "order-card__point order-card__point--pickup"
                            ),
                            attrs: { _i: "17-" + $31 },
                            attrs: { _i: "21-" + $31 },
                          }),
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "18-" + $31,
                                "22-" + $31,
                                "sc",
                                "order-card__route-texts"
                              ),
                              attrs: { _i: "18-" + $31 },
                              attrs: { _i: "22-" + $31 },
                            },
                            [
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "19-" + $31,
                                    "23-" + $31,
                                    "sc",
                                    "order-card__route-title"
                                  ),
                                  attrs: { _i: "19-" + $31 },
                                  attrs: { _i: "23-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "19-" + $31,
                                      "t0-0",
                                      _vm._s(item.takeName)
                                    )
                                  ),
                                ]
                              ),
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "20-" + $31,
                                    "sc",
                                    "order-card__route-desc"
                                  ),
                                  attrs: { _i: "20-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "20-" + $31,
                                      "t0-0",
                                      _vm._s(item.takeAddress)
                                    )
                                  ),
                                ]
                              ),
                            ]
                          ),
                        ]
                      ),
                      _c(
                        "view",
                        {
                          staticClass: _vm._$s(
                            "21-" + $31,
                            "sc",
                            "order-card__route-item order-card__route-item--delivery"
                          ),
                          attrs: { _i: "21-" + $31 },
                        },
                        [
                          _c("view", {
                            staticClass: _vm._$s(
                              "22-" + $31,
                              "sc",
                              "order-card__point order-card__point--delivery"
                            ),
                            attrs: { _i: "22-" + $31 },
                          }),
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "23-" + $31,
                                "sc",
                                "order-card__route-texts"
                              ),
                              attrs: { _i: "23-" + $31 },
                            },
                            [
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "24-" + $31,
                                    "sc",
                                    "order-card__route-title"
                                  ),
                                  attrs: { _i: "24-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "24-" + $31,
                                      "23-" + $31,
                                      "t0-0",
                                      _vm._s(item.depositShopName)
                                    )
@@ -9746,16 +9742,16 @@
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "25-" + $31,
                                    "24-" + $31,
                                    "sc",
                                    "order-card__route-desc"
                                  ),
                                  attrs: { _i: "25-" + $31 },
                                  attrs: { _i: "24-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "25-" + $31,
                                      "24-" + $31,
                                      "t0-0",
                                      _vm._s(item.depositShopAddress)
                                    )
@@ -9770,39 +9766,59 @@
                        "view",
                        {
                          staticClass: _vm._$s(
                            "26-" + $31,
                            "25-" + $31,
                            "sc",
                            "order-card__footer"
                            "order-card__route-item order-card__route-item--delivery"
                          ),
                          attrs: { _i: "26-" + $31 },
                          attrs: { _i: "25-" + $31 },
                        },
                        [
                          _c("view", {
                            staticClass: _vm._$s(
                              "26-" + $31,
                              "sc",
                              "order-card__point order-card__point--delivery"
                            ),
                            attrs: { _i: "26-" + $31 },
                          }),
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "27-" + $31,
                                "sc",
                                "order-card__arrival"
                                "order-card__route-texts"
                              ),
                              attrs: { _i: "27-" + $31 },
                            },
                            [
                              _c("image", {
                                staticClass: _vm._$s(
                                  "28-" + $31,
                                  "sc",
                                  "order-card__clock"
                                ),
                                attrs: { _i: "28-" + $31 },
                              }),
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "28-" + $31,
                                    "sc",
                                    "order-card__route-title"
                                  ),
                                  attrs: { _i: "28-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "28-" + $31,
                                      "t0-0",
                                      _vm._s(item.takeName)
                                    )
                                  ),
                                ]
                              ),
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "29-" + $31,
                                    "sc",
                                    "order-card__arrival-text"
                                    "order-card__route-desc"
                                  ),
                                  attrs: { _i: "29-" + $31 },
                                },
@@ -9810,6 +9826,60 @@
                                  _vm._v(
                                    _vm._$s(
                                      "29-" + $31,
                                      "t0-0",
                                      _vm._s(item.takeAddress)
                                    )
                                  ),
                                ]
                              ),
                            ]
                          ),
                        ]
                      ),
                      _c(
                        "view",
                        {
                          staticClass: _vm._$s(
                            "30-" + $31,
                            "sc",
                            "order-card__footer"
                          ),
                          attrs: { _i: "30-" + $31 },
                        },
                        [
                          _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "31-" + $31,
                                "sc",
                                "order-card__arrival"
                              ),
                              attrs: { _i: "31-" + $31 },
                            },
                            [
                              _c("image", {
                                staticClass: _vm._$s(
                                  "32-" + $31,
                                  "sc",
                                  "order-card__clock"
                                ),
                                attrs: { _i: "32-" + $31 },
                              }),
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "33-" + $31,
                                    "sc",
                                    "order-card__arrival-text"
                                  ),
                                  attrs: { _i: "33-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "33-" + $31,
                                      "t0-0",
                                      _vm._s(item.remainMinutes)
                                    )
@@ -9822,27 +9892,27 @@
                            "view",
                            {
                              staticClass: _vm._$s(
                                "30-" + $31,
                                "34-" + $31,
                                "sc",
                                "order-card__price-wrap"
                              ),
                              attrs: { _i: "30-" + $31 },
                              attrs: { _i: "34-" + $31 },
                            },
                            [
                              _c(
                                "text",
                                {
                                  staticClass: _vm._$s(
                                    "31-" + $31,
                                    "35-" + $31,
                                    "sc",
                                    "order-card__price"
                                  ),
                                  attrs: { _i: "31-" + $31 },
                                  attrs: { _i: "35-" + $31 },
                                },
                                [
                                  _vm._v(
                                    _vm._$s(
                                      "31-" + $31,
                                      "35-" + $31,
                                      "t0-0",
                                      _vm._s((item.driverFee / 100).toFixed(2))
                                    )
@@ -9853,40 +9923,40 @@
                          ),
                        ]
                      ),
                      _vm._$s("32-" + $31, "i", _vm.getActions(item).length)
                      _vm._$s("36-" + $31, "i", _vm.getActions(item).length)
                        ? _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                "32-" + $31,
                                "36-" + $31,
                                "sc",
                                "order-card__actions"
                              ),
                              attrs: { _i: "32-" + $31 },
                              attrs: { _i: "36-" + $31 },
                            },
                            [
                              _c("view"),
                              _c(
                                "view",
                                _vm._l(
                                  _vm._$s(35 + "-" + $31, "f", {
                                  _vm._$s(39 + "-" + $31, "f", {
                                    forItems: _vm.getActions(item),
                                  }),
                                  function (action, $12, $22, $32) {
                                    return _c(
                                      "button",
                                      {
                                        key: _vm._$s(35 + "-" + $31, "f", {
                                        key: _vm._$s(39 + "-" + $31, "f", {
                                          forIndex: $22,
                                          key: action.text,
                                        }),
                                        staticClass: _vm._$s(
                                          "35-" + $31 + "-" + $32,
                                          "39-" + $31 + "-" + $32,
                                          "sc",
                                          "order-card__action-btn"
                                        ),
                                        class: _vm._$s(
                                          "35-" + $31 + "-" + $32,
                                          "39-" + $31 + "-" + $32,
                                          "c",
                                          [
                                            "order-card__action-btn--" +
@@ -9897,7 +9967,7 @@
                                            },
                                          ]
                                        ),
                                        attrs: { _i: "35-" + $31 + "-" + $32 },
                                        attrs: { _i: "39-" + $31 + "-" + $32 },
                                        on: {
                                          click: function ($event) {
                                            $event.stopPropagation()
@@ -9911,7 +9981,7 @@
                                      [
                                        _vm._v(
                                          _vm._$s(
                                            "35-" + $31 + "-" + $32,
                                            "39-" + $31 + "-" + $32,
                                            "t0-0",
                                            _vm._s(action.text)
                                          )
@@ -9929,31 +9999,31 @@
                  )
                }
              ),
              _vm._$s(36, "i", _vm.orders.length === 0 && !_vm.loading)
              _vm._$s(40, "i", _vm.orders.length === 0 && !_vm.loading)
                ? _c(
                    "view",
                    {
                      staticClass: _vm._$s(36, "sc", "order-page__empty"),
                      attrs: { _i: 36 },
                      staticClass: _vm._$s(40, "sc", "order-page__empty"),
                      attrs: { _i: 40 },
                    },
                    [
                      _c("image", {
                        staticClass: _vm._$s(
                          37,
                          41,
                          "sc",
                          "order-page__empty-icon"
                        ),
                        attrs: { _i: 37 },
                        attrs: { _i: 41 },
                      }),
                    ]
                  )
                : _vm._e(),
              _vm._$s(38, "i", _vm.loading)
              _vm._$s(42, "i", _vm.loading)
                ? _c(
                    "view",
                    {
                      staticClass: _vm._$s(38, "sc", "order-page__loading"),
                      attrs: { _i: 38 },
                      staticClass: _vm._$s(42, "sc", "order-page__loading"),
                      attrs: { _i: 42 },
                    },
                    [_c("text")]
                  )
@@ -9972,7 +10042,7 @@
            cancelColor: "#666666",
            confirmColor: "#0055FF",
            title: "取消订单确认",
            _i: 40,
            _i: 44,
          },
          on: {
            cancel: function ($event) {
@@ -9981,30 +10051,30 @@
            confirm: _vm.confirmCancelOrder,
          },
        },
        [_c("view", [_vm._v(_vm._$s(41, "t0-0", _vm._s(_vm.cancelRemain)))])]
        [_c("view", [_vm._v(_vm._$s(45, "t0-0", _vm._s(_vm.cancelRemain)))])]
      ),
      _c(
        "u-popup",
        {
          attrs: { show: _vm.showQRPopup, round: "20", mode: "bottom", _i: 42 },
          attrs: { show: _vm.showQRPopup, round: "20", mode: "bottom", _i: 46 },
        },
        [
          _c(
            "view",
            { staticClass: _vm._$s(43, "sc", "qrcode"), attrs: { _i: 43 } },
            { staticClass: _vm._$s(47, "sc", "qrcode"), attrs: { _i: 47 } },
            [
              _c(
                "view",
                {
                  staticClass: _vm._$s(44, "sc", "qrcode-title"),
                  attrs: { _i: 44 },
                  staticClass: _vm._$s(48, "sc", "qrcode-title"),
                  attrs: { _i: 48 },
                },
                [
                  _c("image", { attrs: { _i: 45 } }),
                  _c("image", { attrs: { _i: 49 } }),
                  _c("text", [
                    _vm._v(
                      _vm._$s(
                        46,
                        50,
                        "t0-0",
                        _vm._s(
                          _vm.selectedOrder && _vm.selectedOrder.status === 4
@@ -10015,7 +10085,7 @@
                    ),
                  ]),
                  _c("image", {
                    attrs: { _i: 47 },
                    attrs: { _i: 51 },
                    on: {
                      click: function ($event) {
                        _vm.showQRPopup = false
@@ -10027,32 +10097,32 @@
              _c(
                "view",
                {
                  staticClass: _vm._$s(48, "sc", "qrcode-image"),
                  attrs: { _i: 48 },
                  staticClass: _vm._$s(52, "sc", "qrcode-image"),
                  attrs: { _i: 52 },
                },
                [
                  _vm._$s(
                    49,
                    53,
                    "i",
                    _vm.selectedOrder && _vm.selectedOrder.driverVerifyCode
                  )
                    ? _c("image", {
                        attrs: {
                          src: _vm._$s(
                            49,
                            53,
                            "a-src",
                            "https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=" +
                              _vm.selectedOrder.driverVerifyCode
                          ),
                          _i: 49,
                          _i: 53,
                        },
                      })
                    : _vm._e(),
                ]
              ),
              _c("view", {
                staticClass: _vm._$s(50, "sc", "qrcode-btn"),
                attrs: { _i: 50 },
                staticClass: _vm._$s(54, "sc", "qrcode-btn"),
                attrs: { _i: 54 },
                on: {
                  click: function ($event) {
                    _vm.showQRPopup = false
@@ -10070,39 +10140,39 @@
            show: _vm.showPhotoPopup,
            round: "20",
            mode: "bottom",
            _i: 51,
            _i: 55,
          },
        },
        [
          _c(
            "view",
            {
              staticClass: _vm._$s(52, "sc", "photo-popup"),
              attrs: { _i: 52 },
              staticClass: _vm._$s(56, "sc", "photo-popup"),
              attrs: { _i: 56 },
            },
            [
              _c(
                "view",
                {
                  staticClass: _vm._$s(53, "sc", "photo-popup__header"),
                  attrs: { _i: 53 },
                  staticClass: _vm._$s(57, "sc", "photo-popup__header"),
                  attrs: { _i: 57 },
                },
                [
                  _c("view", {
                    staticClass: _vm._$s(54, "sc", "photo-popup__placeholder"),
                    attrs: { _i: 54 },
                    staticClass: _vm._$s(58, "sc", "photo-popup__placeholder"),
                    attrs: { _i: 58 },
                  }),
                  _c(
                    "text",
                    {
                      staticClass: _vm._$s(55, "sc", "photo-popup__title"),
                      attrs: { _i: 55 },
                      staticClass: _vm._$s(59, "sc", "photo-popup__title"),
                      attrs: { _i: 59 },
                    },
                    [_vm._v(_vm._$s(55, "t0-0", _vm._s(_vm.photoPopupTitle)))]
                    [_vm._v(_vm._$s(59, "t0-0", _vm._s(_vm.photoPopupTitle)))]
                  ),
                  _c("image", {
                    staticClass: _vm._$s(56, "sc", "photo-popup__close"),
                    attrs: { _i: 56 },
                    staticClass: _vm._$s(60, "sc", "photo-popup__close"),
                    attrs: { _i: 60 },
                    on: { click: _vm.closePhotoPopup },
                  }),
                ]
@@ -10110,84 +10180,84 @@
              _c(
                "view",
                {
                  staticClass: _vm._$s(57, "sc", "photo-popup__section"),
                  attrs: { _i: 57 },
                  staticClass: _vm._$s(61, "sc", "photo-popup__section"),
                  attrs: { _i: 61 },
                },
                [
                  _c(
                    "view",
                    {
                      staticClass: _vm._$s(58, "sc", "photo-popup__label-row"),
                      attrs: { _i: 58 },
                      staticClass: _vm._$s(62, "sc", "photo-popup__label-row"),
                      attrs: { _i: 62 },
                    },
                    [
                      _c(
                        "text",
                        {
                          staticClass: _vm._$s(59, "sc", "photo-popup__label"),
                          attrs: { _i: 59 },
                          staticClass: _vm._$s(63, "sc", "photo-popup__label"),
                          attrs: { _i: 63 },
                        },
                        [
                          _vm._v(
                            _vm._$s(59, "t0-0", _vm._s(_vm.photoPopupLabel))
                            _vm._$s(63, "t0-0", _vm._s(_vm.photoPopupLabel))
                          ),
                        ]
                      ),
                      _c("text", {
                        staticClass: _vm._$s(60, "sc", "photo-popup__required"),
                        attrs: { _i: 60 },
                        staticClass: _vm._$s(64, "sc", "photo-popup__required"),
                        attrs: { _i: 64 },
                      }),
                      _c("text", {
                        staticClass: _vm._$s(61, "sc", "photo-popup__hint"),
                        attrs: { _i: 61 },
                        staticClass: _vm._$s(65, "sc", "photo-popup__hint"),
                        attrs: { _i: 65 },
                      }),
                    ]
                  ),
                  _c(
                    "view",
                    {
                      staticClass: _vm._$s(62, "sc", "photo-popup__photos"),
                      attrs: { _i: 62 },
                      staticClass: _vm._$s(66, "sc", "photo-popup__photos"),
                      attrs: { _i: 66 },
                    },
                    [
                      _vm._l(
                        _vm._$s(63, "f", { forItems: _vm.uploadedPhotos }),
                        _vm._$s(67, "f", { forItems: _vm.uploadedPhotos }),
                        function (photo, index, $23, $33) {
                          return _c(
                            "view",
                            {
                              key: _vm._$s(63, "f", {
                              key: _vm._$s(67, "f", {
                                forIndex: $23,
                                key: index,
                              }),
                              staticClass: _vm._$s(
                                "63-" + $33,
                                "67-" + $33,
                                "sc",
                                "photo-popup__preview-card"
                              ),
                              attrs: { _i: "63-" + $33 },
                              attrs: { _i: "67-" + $33 },
                            },
                            [
                              _c("image", {
                                staticClass: _vm._$s(
                                  "64-" + $33,
                                  "68-" + $33,
                                  "sc",
                                  "photo-popup__preview-image"
                                ),
                                attrs: {
                                  src: _vm._$s("64-" + $33, "a-src", photo),
                                  _i: "64-" + $33,
                                  src: _vm._$s("68-" + $33, "a-src", photo),
                                  _i: "68-" + $33,
                                },
                              }),
                              _c(
                                "view",
                                {
                                  staticClass: _vm._$s(
                                    "65-" + $33,
                                    "69-" + $33,
                                    "sc",
                                    "photo-popup__preview-mask"
                                  ),
                                  attrs: { _i: "65-" + $33 },
                                  attrs: { _i: "69-" + $33 },
                                  on: {
                                    click: function ($event) {
                                      return _vm.deletePhoto(index)
@@ -10197,11 +10267,11 @@
                                [
                                  _c("text", {
                                    staticClass: _vm._$s(
                                      "66-" + $33,
                                      "70-" + $33,
                                      "sc",
                                      "photo-popup__preview-delete"
                                    ),
                                    attrs: { _i: "66-" + $33 },
                                    attrs: { _i: "70-" + $33 },
                                  }),
                                ]
                              ),
@@ -10209,19 +10279,19 @@
                          )
                        }
                      ),
                      _vm._$s(67, "i", _vm.uploadedPhotos.length < 3)
                      _vm._$s(71, "i", _vm.uploadedPhotos.length < 3)
                        ? _c(
                            "view",
                            {
                              staticClass: _vm._$s(
                                67,
                                71,
                                "sc",
                                "photo-popup__upload-btn"
                              ),
                              attrs: { _i: 67 },
                              attrs: { _i: 71 },
                              on: { click: _vm.choosePhoto },
                            },
                            [_c("image", { attrs: { _i: 68 } })]
                            [_c("image", { attrs: { _i: 72 } })]
                          )
                        : _vm._e(),
                    ],
@@ -10233,16 +10303,16 @@
                "view",
                {
                  staticClass: _vm._$s(
                    69,
                    73,
                    "sc",
                    "photo-popup__section photo-popup__section--remark"
                  ),
                  attrs: { _i: 69 },
                  attrs: { _i: 73 },
                },
                [
                  _c("text", {
                    staticClass: _vm._$s(70, "sc", "photo-popup__remark-title"),
                    attrs: { _i: 70 },
                    staticClass: _vm._$s(74, "sc", "photo-popup__remark-title"),
                    attrs: { _i: 74 },
                  }),
                  _c("textarea", {
                    directives: [
@@ -10253,10 +10323,10 @@
                        expression: "photoRemark",
                      },
                    ],
                    staticClass: _vm._$s(71, "sc", "photo-popup__textarea"),
                    attrs: { _i: 71 },
                    staticClass: _vm._$s(75, "sc", "photo-popup__textarea"),
                    attrs: { _i: 75 },
                    domProps: {
                      value: _vm._$s(71, "v-model", _vm.photoRemark),
                      value: _vm._$s(75, "v-model", _vm.photoRemark),
                    },
                    on: {
                      input: function ($event) {
@@ -10272,11 +10342,11 @@
              _c(
                "button",
                {
                  staticClass: _vm._$s(72, "sc", "photo-popup__submit"),
                  attrs: { _i: 72 },
                  staticClass: _vm._$s(76, "sc", "photo-popup__submit"),
                  attrs: { _i: 76 },
                  on: { click: _vm.submitPhotoPopup },
                },
                [_vm._v(_vm._$s(72, "t0-0", _vm._s(_vm.photoPopupSubmitText)))]
                [_vm._v(_vm._$s(76, "t0-0", _vm._s(_vm.photoPopupSubmitText)))]
              ),
            ]
          ),
@@ -10312,7 +10382,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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      statusBarHeight: 0,\n      navHeight: 0,\n      activeTab: null,\n      tabs: [{\n        label: '全部',\n        value: null\n      }, {\n        label: '待取货',\n        value: 3\n      }, {\n        label: '配送中',\n        value: 4\n      }, {\n        label: '已完成',\n        value: 7\n      }],\n      orders: [],\n      page: 1,\n      hasMore: true,\n      loading: false,\n      showCancelModal: false,\n      showQRPopup: false,\n      showPhotoPopup: false,\n      selectedOrder: null,\n      cancelRemain: 0,\n      photoPopupMode: '',\n      photoRemark: '',\n      uploadedPhotos: [],\n      activeOrderCount: null\n    };\n  },\n  computed: {\n    displayTabs: function displayTabs() {\n      var _this = this;\n      return this.tabs.map(function (tab) {\n        var count = null;\n        if (tab.value === 3) {\n          var _this$activeOrderCoun;\n          count = (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount;\n        } else if (tab.value === 4) {\n          var _this$activeOrderCoun2;\n          count = (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount;\n        }\n        if (count) {\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            label: \"\".concat(tab.label, \" \").concat(count)\n          });\n        }\n        return tab;\n      });\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.navHeight + uni.upx2px(88) + 'px',\n        height: \"calc(100vh - \".concat(this.navHeight + uni.upx2px(88), \"px)\")\n      };\n    },\n    photoPopupTitle: function photoPopupTitle() {\n      return this.photoPopupMode === 'deliver' ? '拍照送达' : '拍照取货';\n    },\n    photoPopupLabel: function photoPopupLabel() {\n      return this.photoPopupMode === 'deliver' ? '拍摄送达照片' : '拍摄取货照片';\n    },\n    photoPopupSubmitText: function photoPopupSubmitText() {\n      return this.photoPopupMode === 'deliver' ? '确认送达' : '确认取货';\n    }\n  },\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.navHeight = this.statusBarHeight + uni.upx2px(88);\n    this.getOrderList();\n  },\n  onShow: function onShow() {\n    this.getActiveOrderCount();\n  },\n  onReachBottom: function onReachBottom() {\n    if (!this.hasMore || this.loading) return;\n    this.page++;\n    this.getOrderList();\n  },\n  watch: {\n    activeTab: function activeTab() {\n      this.page = 1;\n      this.hasMore = true;\n      this.orders = [];\n      this.getOrderList();\n    }\n  },\n  methods: {\n    getActiveOrderCount: function getActiveOrderCount() {\n      var _this2 = this;\n      this.$u.api.activeOrderCount().then(function (res) {\n        if (res.code === 200) {\n          _this2.activeOrderCount = res.data;\n        } else {\n          _this2.activeOrderCount = null;\n        }\n      }).catch(function () {\n        _this2.activeOrderCount = null;\n      });\n    },\n    getBadgeIcon: function getBadgeIcon(item) {\n      return item.isUrgent ? '/static/image/ic_jisuda@2x.png' : '/static/image/ic_biaosuda@2x.png';\n    },\n    getStatusText: function getStatusText(status) {\n      var map = {\n        2: '待接单',\n        3: '待取货',\n        4: '配送中',\n        5: '已完成',\n        7: '已完成',\n        99: '已取消'\n      };\n      return map[status] || '';\n    },\n    getActions: function getActions(item) {\n      if (item.status === 3) {\n        return [{\n          text: '取消订单',\n          type: 'light',\n          fill: false\n        }, {\n          text: '取货码',\n          type: 'primary',\n          fill: false\n        }, {\n          text: '拍照取货',\n          type: 'primary',\n          fill: true\n        }];\n      }\n      if (item.status === 4 && item.takeShopId) {\n        return [{\n          text: '存件码',\n          type: 'primary',\n          fill: false\n        }];\n      }\n      if (item.status === 4 && !item.takeShopId) {\n        return [{\n          text: '拍照送达',\n          type: 'primary',\n          fill: true\n        }];\n      }\n      return [];\n    },\n    getOrderList: function getOrderList() {\n      var _this3 = this;\n      if (this.loading) return;\n      this.loading = true;\n      this.$u.api.orderPage({\n        capacity: 10,\n        page: this.page,\n        model: {\n          status: this.activeTab\n        }\n      }).then(function (res) {\n        if (res.code === 200) {\n          var list = res.data.records || [];\n          if (_this3.page === 1) {\n            _this3.orders = list;\n          } else {\n            _this3.orders = [].concat((0, _toConsumableArray2.default)(_this3.orders), (0, _toConsumableArray2.default)(list));\n          }\n          _this3.hasMore = list.length >= 10;\n        }\n      }).finally(function () {\n        _this3.loading = false;\n      });\n    },\n    goToOrderDetail: function goToOrderDetail(item, index) {\n      uni.navigateTo({\n        url: \"/pages/order-detail/order-detail?id=\".concat(item.id)\n      });\n    },\n    handleAction: function handleAction(item, action) {\n      var text = action.text;\n      if (text === '取消订单') {\n        this.handleCancelOrder(item);\n      } else if (text === '取货码' || text === '存件码') {\n        this.handleShowQRCode(item);\n      } else if (text === '拍照取货') {\n        this.handlePhotoPickup(item);\n      } else if (text === '拍照送达') {\n        this.handlePhotoDeliver(item);\n      }\n    },\n    handleCancelOrder: function handleCancelOrder(item) {\n      var _this4 = this;\n      this.selectedOrder = item;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this4.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this4.showCancelModal = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this5 = this;\n      if (!this.selectedOrder) return;\n      this.$u.api.cancelOrder({\n        orderId: this.selectedOrder.id\n      }).then(function (res) {\n        _this5.showCancelModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this5.getOrderList();\n          _this5.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.message || '取消失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this5.showCancelModal = false;\n      });\n    },\n    handleShowQRCode: function handleShowQRCode(item) {\n      this.selectedOrder = item;\n      this.showQRPopup = true;\n    },\n    handlePhotoPickup: function handlePhotoPickup(item) {\n      this.selectedOrder = item;\n      this.photoPopupMode = 'pickup';\n      this.uploadedPhotos = [];\n      this.photoRemark = '';\n      this.showPhotoPopup = true;\n    },\n    handlePhotoDeliver: function handlePhotoDeliver(item) {\n      this.selectedOrder = item;\n      this.photoPopupMode = 'deliver';\n      this.uploadedPhotos = [];\n      this.photoRemark = '';\n      this.showPhotoPopup = true;\n    },\n    closePhotoPopup: function closePhotoPopup() {\n      this.showPhotoPopup = false;\n    },\n    choosePhoto: function choosePhoto() {\n      var _this6 = this;\n      if (this.uploadedPhotos.length >= 3) {\n        uni.showToast({\n          title: '最多上传3张照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.chooseImage({\n        count: 3 - this.uploadedPhotos.length,\n        sourceType: ['camera', 'album'],\n        success: function success(res) {\n          _this6.uploadedPhotos = [].concat((0, _toConsumableArray2.default)(_this6.uploadedPhotos), (0, _toConsumableArray2.default)(res.tempFilePaths));\n        }\n      });\n    },\n    deletePhoto: function deletePhoto(index) {\n      this.uploadedPhotos.splice(index, 1);\n    },\n    submitPhotoPopup: function submitPhotoPopup() {\n      var _this7 = this;\n      if (this.uploadedPhotos.length === 0) {\n        uni.showToast({\n          title: '请上传照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.showLoading({\n        title: '上传中...'\n      });\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(locationRes) {\n          _this7.doUploadPhotos(locationRes.latitude, locationRes.longitude);\n        },\n        fail: function fail() {\n          _this7.doUploadPhotos(null, null);\n        }\n      });\n    },\n    doUploadPhotos: function doUploadPhotos(latitude, longitude) {\n      var _this8 = this;\n      var uploadTasks = this.uploadedPhotos.map(function (path) {\n        return new Promise(function (resolve, reject) {\n          var formData = {\n            folder: 'orders'\n          };\n          if (latitude && longitude) {\n            formData.latitude = latitude;\n            formData.longitude = longitude;\n          }\n          __f__(\"log\", 'formData:', formData, \" at pages/order/order.vue:405\");\n          uni.uploadFile({\n            url: _this8.$baseUrl + 'web/public/upload',\n            filePath: path,\n            name: 'file',\n            formData: formData,\n            success: function success(uploadRes) {\n              var data = JSON.parse(uploadRes.data);\n              if (data.code === 200) {\n                resolve(data.data);\n              } else {\n                reject(new Error(data.msg));\n              }\n            },\n            fail: function fail(err) {\n              reject(err);\n            }\n          });\n        });\n      });\n      Promise.all(uploadTasks).then(function (images) {\n        var api = _this8.photoPopupMode === 'deliver' ? 'confirmDeliver' : 'confirmPickup';\n        var params = {\n          images: images.map(function (img) {\n            return img.imgaddr;\n          }),\n          orderId: _this8.selectedOrder.id,\n          remark: _this8.photoRemark\n        };\n        if (latitude && longitude) {\n          params.latitude = latitude;\n          params.longitude = longitude;\n        }\n        return _this8.$u.api[api](params);\n      }).then(function (res) {\n        uni.hideLoading();\n        if (res.code === 200) {\n          uni.showToast({\n            title: '提交成功',\n            icon: 'success'\n          });\n          _this8.showPhotoPopup = false;\n          _this8.getOrderList();\n          _this8.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.msg || '提交失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function (err) {\n        uni.hideLoading();\n        uni.showToast({\n          title: err.message || '上传失败',\n          icon: 'none'\n        });\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXIvb3JkZXIudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJzdGF0dXNCYXJIZWlnaHQiLCJuYXZIZWlnaHQiLCJhY3RpdmVUYWIiLCJ0YWJzIiwibGFiZWwiLCJ2YWx1ZSIsIm9yZGVycyIsInBhZ2UiLCJoYXNNb3JlIiwibG9hZGluZyIsInNob3dDYW5jZWxNb2RhbCIsInNob3dRUlBvcHVwIiwic2hvd1Bob3RvUG9wdXAiLCJzZWxlY3RlZE9yZGVyIiwiY2FuY2VsUmVtYWluIiwicGhvdG9Qb3B1cE1vZGUiLCJwaG90b1JlbWFyayIsInVwbG9hZGVkUGhvdG9zIiwiYWN0aXZlT3JkZXJDb3VudCIsImNvbXB1dGVkIiwiZGlzcGxheVRhYnMiLCJjb3VudCIsInRhYiIsImJvZHlTdHlsZSIsIm1hcmdpblRvcCIsImhlaWdodCIsInBob3RvUG9wdXBUaXRsZSIsInBob3RvUG9wdXBMYWJlbCIsInBob3RvUG9wdXBTdWJtaXRUZXh0Iiwib25Mb2FkIiwib25TaG93Iiwib25SZWFjaEJvdHRvbSIsIndhdGNoIiwibWV0aG9kcyIsImdldEFjdGl2ZU9yZGVyQ291bnQiLCJnZXRCYWRnZUljb24iLCJnZXRTdGF0dXNUZXh0IiwiZ2V0QWN0aW9ucyIsInRleHQiLCJ0eXBlIiwiZmlsbCIsImdldE9yZGVyTGlzdCIsImNhcGFjaXR5IiwibW9kZWwiLCJzdGF0dXMiLCJnb1RvT3JkZXJEZXRhaWwiLCJ1bmkiLCJ1cmwiLCJoYW5kbGVBY3Rpb24iLCJoYW5kbGVDYW5jZWxPcmRlciIsImNvbmZpcm1DYW5jZWxPcmRlciIsIm9yZGVySWQiLCJ0aXRsZSIsImljb24iLCJoYW5kbGVTaG93UVJDb2RlIiwiaGFuZGxlUGhvdG9QaWNrdXAiLCJoYW5kbGVQaG90b0RlbGl2ZXIiLCJjbG9zZVBob3RvUG9wdXAiLCJjaG9vc2VQaG90byIsInNvdXJjZVR5cGUiLCJzdWNjZXNzIiwiZGVsZXRlUGhvdG8iLCJzdWJtaXRQaG90b1BvcHVwIiwiZmFpbCIsImRvVXBsb2FkUGhvdG9zIiwiZm9sZGVyIiwiZm9ybURhdGEiLCJmaWxlUGF0aCIsIm5hbWUiLCJyZXNvbHZlIiwicmVqZWN0IiwiUHJvbWlzZSIsImltYWdlcyIsInJlbWFyayIsInBhcmFtcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQW1KQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDLE9BQ0E7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFEO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7TUFBQSxFQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUFBO01BQ0E7UUFDQTtRQUNBO1VBQUE7VUFDQUM7UUFDQTtVQUFBO1VBQ0FBO1FBQ0E7UUFDQTtVQUNBLHVDQUNBQztZQUNBbEI7VUFBQTtRQUVBO1FBQ0E7TUFDQTtJQUNBO0lBRUFtQjtNQUNBO1FBQ0FDO1FBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0VBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBOUI7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0VBQ0E7RUFDQStCO0lBQ0FDO01BQUE7TUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQ0EsUUFDQTtVQUFBQztVQUFBQztVQUFBQztRQUFBLEdBQ0E7VUFBQUY7VUFBQUM7VUFBQUM7UUFBQSxHQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsRUFDQTtNQUNBO01BQ0E7UUFDQSxRQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsRUFDQTtNQUNBO01BQ0E7UUFDQSxRQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsRUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtNQUNBO1FBQ0FDO1FBQ0FuQztRQUNBb0M7VUFDQUM7UUFDQTtNQUNBO1FBQ0E7VUFDQTtVQUNBO1lBQ0E7VUFDQTtZQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQUM7UUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtRQUNBO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtNQUNBO1FBQUFDO01BQUE7UUFDQTtRQUNBO1VBQ0FMO1lBQUFNO1lBQUFDO1VBQUE7VUFDQTtVQUNBO1FBQ0E7VUFDQVA7WUFBQU07WUFBQUM7VUFBQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBWjtVQUFBTTtVQUFBQztRQUFBO1FBQ0E7TUFDQTtNQUNBUDtRQUNBekI7UUFDQXNDO1FBQ0FDO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBaEI7VUFBQU07VUFBQUM7UUFBQTtRQUNBO01BQ0E7TUFDQVA7UUFBQU07TUFBQTtNQUNBTjtRQUNBUDtRQUNBcUI7VUFDQTtRQUNBO1FBQ0FHO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtZQUFBQztVQUFBO1VBQ0E7WUFDQUM7WUFDQUE7VUFDQTtVQUNBO1VBQ0FwQjtZQUNBQztZQUNBb0I7WUFDQUM7WUFDQUY7WUFDQU47Y0FDQTtjQUNBO2dCQUNBUztjQUNBO2dCQUNBQztjQUNBO1lBQ0E7WUFDQVA7Y0FDQU87WUFDQTtVQUNBO1FBQ0E7TUFDQTtNQUVBQztRQUNBO1FBQ0E7VUFDQUM7WUFBQTtVQUFBO1VBQ0FyQjtVQUNBc0I7UUFDQTtRQUNBO1VBQ0FDO1VBQ0FBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E1QjtRQUNBO1VBQ0FBO1lBQUFNO1lBQUFDO1VBQUE7VUFDQTtVQUNBO1VBQ0E7UUFDQTtVQUNBUDtZQUFBTTtZQUFBQztVQUFBO1FBQ0E7TUFDQTtRQUNBUDtRQUNBQTtVQUFBTTtVQUFBQztRQUFBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZVwiPlxuXHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2XCIgOnN0eWxlPVwieyBwYWRkaW5nVG9wOiBzdGF0dXNCYXJIZWlnaHQgKyAncHgnIH1cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2LWlubmVyXCI+XG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2LXRpdGxlXCI+5oiR55qE6K6i5Y2VPC90ZXh0PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblxuXHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fdGFic1wiIDpzdHlsZT1cInsgdG9wOiBuYXZIZWlnaHQgKyAncHgnIH1cIj5cblx0XHRcdDx2aWV3IHYtZm9yPVwidGFiIGluIGRpc3BsYXlUYWJzXCIgOmtleT1cInRhYi52YWx1ZVwiIGNsYXNzPVwib3JkZXItcGFnZV9fdGFiXCIgOmNsYXNzPVwieyAnb3JkZXItcGFnZV9fdGFiLS1hY3RpdmUnOiBhY3RpdmVUYWIgPT09IHRhYi52YWx1ZSB9XCIgQGNsaWNrPVwiYWN0aXZlVGFiID0gdGFiLnZhbHVlXCI+XG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItcGFnZV9fdGFiLXRleHRcIj57eyB0YWIubGFiZWwgfX08L3RleHQ+XG5cdFx0XHRcdDx2aWV3IHYtaWY9XCJhY3RpdmVUYWIgPT09IHRhYi52YWx1ZVwiIGNsYXNzPVwib3JkZXItcGFnZV9fdGFiLWxpbmVcIj48L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXG5cdFx0PHNjcm9sbC12aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fYm9keVwiIHNjcm9sbC15IDpzdHlsZT1cImJvZHlTdHlsZVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1wYWdlX19saXN0XCI+XG5cdFx0XHRcdDx2aWV3IHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBvcmRlcnNcIiA6a2V5PVwiaXRlbS5pZFwiIGNsYXNzPVwib3JkZXItY2FyZFwiIEBjbGljaz1cImdvVG9PcmRlckRldGFpbChpdGVtLCBpbmRleClcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2hlYWRcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2hlYWQtbGVmdFwiPlxuXHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItY2FyZF9fYmFkZ2UtaWNvblwiIDpzcmM9XCJnZXRCYWRnZUljb24oaXRlbSlcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX190aW1lLXRleHRcIj7kuIvljZXml7bpl7TvvJp7eyBpdGVtLmNyZWF0ZVRpbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19zdGF0dXNcIiA6Y2xhc3M9XCJ7ICdvcmRlci1jYXJkX19zdGF0dXMtLWhpZ2hsaWdodCc6IGl0ZW0uc3RhdHVzID09PSAzIHx8IGl0ZW0uc3RhdHVzID09PSA0IH1cIj57eyBnZXRTdGF0dXNUZXh0KGl0ZW0uc3RhdHVzKSB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWl0ZW1cIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcG9pbnQgb3JkZXItY2FyZF9fcG9pbnQtLXBpY2t1cFwiPuWPljwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGV4dHNcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10aXRsZVwiPnt7IGl0ZW0udGFrZU5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtZGVzY1wiPnt7IGl0ZW0udGFrZUFkZHJlc3MgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS1pdGVtIG9yZGVyLWNhcmRfX3JvdXRlLWl0ZW0tLWRlbGl2ZXJ5XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3BvaW50IG9yZGVyLWNhcmRfX3BvaW50LS1kZWxpdmVyeVwiPumAgTwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGV4dHNcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10aXRsZVwiPnt7IGl0ZW0uZGVwb3NpdFNob3BOYW1lIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWRlc2NcIj57eyBpdGVtLmRlcG9zaXRTaG9wQWRkcmVzcyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2Zvb3RlclwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19hcnJpdmFsXCI+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWNhcmRfX2Nsb2NrXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9ja0AyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19hcnJpdmFsLXRleHRcIj7liankvZl7eyBpdGVtLnJlbWFpbk1pbnV0ZXMgfX3liIbpkp88L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3ByaWNlLXdyYXBcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1jYXJkX19wcmljZVwiPsKle3sgKGl0ZW0uZHJpdmVyRmVlIC8gMTAwKS50b0ZpeGVkKDIpIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJnZXRBY3Rpb25zKGl0ZW0pLmxlbmd0aFwiIGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uc1wiPlxuXHRcdFx0XHRcdFx0PHZpZXc+PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O2ZsZXgtd3JhcDogd3JhcDtnYXA6IDIwcnB4O1wiPlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uXG5cdFx0XHRcdFx0XHRcdFx0di1mb3I9XCJhY3Rpb24gaW4gZ2V0QWN0aW9ucyhpdGVtKVwiXG5cdFx0XHRcdFx0XHRcdFx0OmtleT1cImFjdGlvbi50ZXh0XCJcblx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi1idG5cIlxuXHRcdFx0XHRcdFx0XHRcdDpjbGFzcz1cIlsnb3JkZXItY2FyZF9fYWN0aW9uLWJ0bi0tJyArIGFjdGlvbi50eXBlLCB7ICdvcmRlci1jYXJkX19hY3Rpb24tYnRuLS1wcmltYXJ5LWZpbGwnOiBhY3Rpb24uZmlsbCB9XVwiXG5cdFx0XHRcdFx0XHRcdFx0aG92ZXItY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb24tYnRuLS1ob3ZlclwiXG5cdFx0XHRcdFx0XHRcdFx0QGNsaWNrLnN0b3A9XCJoYW5kbGVBY3Rpb24oaXRlbSwgYWN0aW9uKVwiXG5cdFx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0XHR7eyBhY3Rpb24udGV4dCB9fVxuXHRcdFx0XHRcdFx0XHQ8L2J1dHRvbj5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IHYtaWY9XCJvcmRlcnMubGVuZ3RoID09PSAwICYmICFsb2FkaW5nXCIgY2xhc3M9XCJvcmRlci1wYWdlX19lbXB0eVwiPlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLXBhZ2VfX2VtcHR5LWljb25cIiBzcmM9XCIvc3RhdGljL2ltYWdlL2RlZmF1bHRfbm9kYXRhQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgdi1pZj1cImxvYWRpbmdcIiBjbGFzcz1cIm9yZGVyLXBhZ2VfX2xvYWRpbmdcIj5cblx0XHRcdFx0XHQ8dGV4dD7liqDovb3kuK0uLi48L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3Njcm9sbC12aWV3PlxuXG5cdFx0PHUtbW9kYWxcblx0XHRcdDpzaG93PVwic2hvd0NhbmNlbE1vZGFsXCJcblx0XHRcdHNob3dDYW5jZWxCdXR0b25cblx0XHRcdEBjYW5jZWw9XCJzaG93Q2FuY2VsTW9kYWwgPSBmYWxzZVwiXG5cdFx0XHRjYW5jZWxDb2xvcj1cIiM2NjY2NjZcIlxuXHRcdFx0Y29uZmlybUNvbG9yPVwiIzAwNTVGRlwiXG5cdFx0XHR0aXRsZT1cIuWPlua2iOiuouWNleehruiupFwiXG5cdFx0XHRAY29uZmlybT1cImNvbmZpcm1DYW5jZWxPcmRlclwiPlxuXHRcdFx0PHZpZXcgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICMzMzMzMzM7Zm9udC1zaXplOiAyOHJweDtmb250LXdlaWdodDogNDAwO1wiPlxuXHRcdFx0XHTmgqjku4rml6Xov5jlj6/lj5bmtogge3sgY2FuY2VsUmVtYWluIH19IOasoeiuouWNle+8jOasoeaVsOeUqOWwveWQjuS7iuaXpeWwhuaXoOazleaOpeWNle+8jOaYr+WQpuehruiupOWPlua2iO+8n1xuXHRcdFx0PC92aWV3PlxuXHRcdDwvdS1tb2RhbD5cblxuXHRcdDx1LXBvcHVwIDpzaG93PVwic2hvd1FSUG9wdXBcIiByb3VuZD1cIjIwXCIgbW9kZT1cImJvdHRvbVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGVcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGUtdGl0bGVcIj5cblx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9zZUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBzdHlsZT1cIm9wYWNpdHk6IDA7XCI+PC9pbWFnZT5cblx0XHRcdFx0XHQ8dGV4dD57eyBzZWxlY3RlZE9yZGVyICYmIHNlbGVjdGVkT3JkZXIuc3RhdHVzID09PSA0ID8gJ+WtmOS7tueggScgOiAn5Y+W6LSn56CBJyB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9zZUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIiBAY2xpY2s9XCJzaG93UVJQb3B1cCA9IGZhbHNlXCI+PC9pbWFnZT5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInFyY29kZS1pbWFnZVwiPlxuXHRcdFx0XHRcdDxpbWFnZSB2LWlmPVwic2VsZWN0ZWRPcmRlciAmJiBzZWxlY3RlZE9yZGVyLmRyaXZlclZlcmlmeUNvZGVcIiA6c3JjPVwiJ2h0dHBzOi8vYXBpLnFyc2VydmVyLmNvbS92MS9jcmVhdGUtcXItY29kZS8/c2l6ZT0yMDB4MjAwJmRhdGE9JyArIHNlbGVjdGVkT3JkZXIuZHJpdmVyVmVyaWZ5Q29kZVwiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJxcmNvZGUtYnRuXCIgaG92ZXItY2xhc3M9XCJxcmNvZGUtYnRuLS1ob3ZlclwiIEBjbGljaz1cInNob3dRUlBvcHVwID0gZmFsc2VcIj7lhbPpl608L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LXBvcHVwPlxuXG5cdFx0PHUtcG9wdXAgOnNob3c9XCJzaG93UGhvdG9Qb3B1cFwiIHJvdW5kPVwiMjBcIiBtb2RlPVwiYm90dG9tXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX2hlYWRlclwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3BsYWNlaG9sZGVyXCI+PC92aWV3PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3RpdGxlXCI+e3sgcGhvdG9Qb3B1cFRpdGxlIH19PC90ZXh0PlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cInBob3RvLXBvcHVwX19jbG9zZVwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2xvc2UyQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJjbG9zZVBob3RvUG9wdXBcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fc2VjdGlvblwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX2xhYmVsLXJvd1wiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fbGFiZWxcIj57eyBwaG90b1BvcHVwTGFiZWwgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19yZXF1aXJlZFwiPio8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19oaW50XCI+5pyA5aSaM+W8oOeFp+eJhzwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwX19waG90b3NcIj5cblx0XHRcdFx0XHRcdDx2aWV3IHYtZm9yPVwiKHBob3RvLCBpbmRleCkgaW4gdXBsb2FkZWRQaG90b3NcIiA6a2V5PVwiaW5kZXhcIiBjbGFzcz1cInBob3RvLXBvcHVwX19wcmV2aWV3LWNhcmRcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctaW1hZ2VcIiA6c3JjPVwicGhvdG9cIiBtb2RlPVwiYXNwZWN0RmlsbFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctbWFza1wiIEBjbGljaz1cImRlbGV0ZVBob3RvKGluZGV4KVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctZGVsZXRlXCI+5Yig6ZmkPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwidXBsb2FkZWRQaG90b3MubGVuZ3RoIDwgM1wiIGNsYXNzPVwicGhvdG8tcG9wdXBfX3VwbG9hZC1idG5cIiBAY2xpY2s9XCJjaG9vc2VQaG90b1wiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugc3JjPVwiL3N0YXRpYy9pbWFnZS9idG5fdXBsb2FkMkAyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwX19zZWN0aW9uIHBob3RvLXBvcHVwX19zZWN0aW9uLS1yZW1hcmtcIj5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19yZW1hcmstdGl0bGVcIj7lpIfms6jkv6Hmga88L3RleHQ+XG5cdFx0XHRcdFx0PHRleHRhcmVhIHYtbW9kZWw9XCJwaG90b1JlbWFya1wiIGNsYXNzPVwicGhvdG8tcG9wdXBfX3RleHRhcmVhXCIgbWF4bGVuZ3RoPVwiMjAwXCIgcGxhY2Vob2xkZXI9XCLor7fovpPlhaVcIiBwbGFjZWhvbGRlci1zdHlsZT1cImNvbG9yOiAjYzdjYmQzO1wiIC8+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8YnV0dG9uIGNsYXNzPVwicGhvdG8tcG9wdXBfX3N1Ym1pdFwiIGhvdmVyLWNsYXNzPVwicGhvdG8tcG9wdXBfX3N1Ym1pdC0taG92ZXJcIiBAY2xpY2s9XCJzdWJtaXRQaG90b1BvcHVwXCI+e3sgcGhvdG9Qb3B1cFN1Ym1pdFRleHQgfX08L2J1dHRvbj5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cdDwvdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0XHRuYXZIZWlnaHQ6IDAsXG5cdFx0XHRcdGFjdGl2ZVRhYjogbnVsbCxcblx0XHRcdFx0dGFiczogW1xuXHRcdFx0XHRcdHsgbGFiZWw6ICflhajpg6gnLCB2YWx1ZTogbnVsbCB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflvoXlj5botKcnLCB2YWx1ZTogMyB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICfphY3pgIHkuK0nLCB2YWx1ZTogNCB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflt7LlrozmiJAnLCB2YWx1ZTogNyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdG9yZGVyczogW10sXG5cdFx0XHRcdHBhZ2U6IDEsXG5cdFx0XHRcdGhhc01vcmU6IHRydWUsXG5cdFx0XHRcdGxvYWRpbmc6IGZhbHNlLFxuXHRcdFx0XHRzaG93Q2FuY2VsTW9kYWw6IGZhbHNlLFxuXHRcdFx0XHRzaG93UVJQb3B1cDogZmFsc2UsXG5cdFx0XHRcdHNob3dQaG90b1BvcHVwOiBmYWxzZSxcblx0XHRcdFx0c2VsZWN0ZWRPcmRlcjogbnVsbCxcblx0XHRcdFx0Y2FuY2VsUmVtYWluOiAwLFxuXHRcdFx0XHRwaG90b1BvcHVwTW9kZTogJycsXG5cdFx0XHRcdHBob3RvUmVtYXJrOiAnJyxcblx0XHRcdFx0dXBsb2FkZWRQaG90b3M6IFtdLFxuXHRcdFx0XHRhY3RpdmVPcmRlckNvdW50OiBudWxsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRjb21wdXRlZDoge1xuXHRcdFx0ZGlzcGxheVRhYnMoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnRhYnMubWFwKCh0YWIpID0+IHtcblx0XHRcdFx0XHRsZXQgY291bnQgPSBudWxsXG5cdFx0XHRcdFx0aWYgKHRhYi52YWx1ZSA9PT0gMykge1xuXHRcdFx0XHRcdFx0Y291bnQgPSB0aGlzLmFjdGl2ZU9yZGVyQ291bnQ/LmdyYWJiZWRDb3VudFxuXHRcdFx0XHRcdH0gZWxzZSBpZiAodGFiLnZhbHVlID09PSA0KSB7XG5cdFx0XHRcdFx0XHRjb3VudCA9IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZGVsaXZlcmluZ0NvdW50XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmIChjb3VudCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRcdFx0Li4udGFiLFxuXHRcdFx0XHRcdFx0XHRsYWJlbDogYCR7dGFiLmxhYmVsfSAke2NvdW50fWBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHRhYlxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Ym9keVN0eWxlKCkge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdG1hcmdpblRvcDogdGhpcy5uYXZIZWlnaHQgKyB1bmkudXB4MnB4KDg4KSArICdweCcsXG5cdFx0XHRcdFx0aGVpZ2h0OiBgY2FsYygxMDB2aCAtICR7dGhpcy5uYXZIZWlnaHQgKyB1bmkudXB4MnB4KDg4KX1weClgXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRwaG90b1BvcHVwVGl0bGUoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnBob3RvUG9wdXBNb2RlID09PSAnZGVsaXZlcicgPyAn5ouN54Wn6YCB6L6+JyA6ICfmi43nhaflj5botKcnXG5cdFx0XHR9LFxuXHRcdFx0cGhvdG9Qb3B1cExhYmVsKCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ+aLjeaRhOmAgei+vueFp+eJhycgOiAn5ouN5pGE5Y+W6LSn54Wn54mHJ1xuXHRcdFx0fSxcblx0XHRcdHBob3RvUG9wdXBTdWJtaXRUZXh0KCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ+ehruiupOmAgei+vicgOiAn56Gu6K6k5Y+W6LSnJ1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0b25Mb2FkKCkge1xuXHRcdFx0Y29uc3Qgc3lzdGVtSW5mbyA9IHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpXG5cdFx0XHR0aGlzLnN0YXR1c0JhckhlaWdodCA9IHN5c3RlbUluZm8uc3RhdHVzQmFySGVpZ2h0IHx8IDBcblx0XHRcdHRoaXMubmF2SGVpZ2h0ID0gdGhpcy5zdGF0dXNCYXJIZWlnaHQgKyB1bmkudXB4MnB4KDg4KVxuXHRcdFx0dGhpcy5nZXRPcmRlckxpc3QoKVxuXHRcdH0sXG5cdFx0b25TaG93KCkge1xuXHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHR9LFxuXHRcdG9uUmVhY2hCb3R0b20oKSB7XG5cdFx0XHRpZiAoIXRoaXMuaGFzTW9yZSB8fCB0aGlzLmxvYWRpbmcpIHJldHVyblxuXHRcdFx0dGhpcy5wYWdlKytcblx0XHRcdHRoaXMuZ2V0T3JkZXJMaXN0KClcblx0XHR9LFxuXHRcdHdhdGNoOiB7XG5cdFx0XHRhY3RpdmVUYWIoKSB7XG5cdFx0XHRcdHRoaXMucGFnZSA9IDFcblx0XHRcdFx0dGhpcy5oYXNNb3JlID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLm9yZGVycyA9IFtdXG5cdFx0XHRcdHRoaXMuZ2V0T3JkZXJMaXN0KClcblx0XHRcdH1cblx0XHR9LFxuXHRcdG1ldGhvZHM6IHtcblx0XHRcdGdldEFjdGl2ZU9yZGVyQ291bnQoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmFjdGl2ZU9yZGVyQ291bnQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuYWN0aXZlT3JkZXJDb3VudCA9IHJlcy5kYXRhXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHRoaXMuYWN0aXZlT3JkZXJDb3VudCA9IG51bGxcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZU9yZGVyQ291bnQgPSBudWxsXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QmFkZ2VJY29uKGl0ZW0pIHtcblx0XHRcdFx0cmV0dXJuIGl0ZW0uaXNVcmdlbnQgPyAnL3N0YXRpYy9pbWFnZS9pY19qaXN1ZGFAMngucG5nJyA6ICcvc3RhdGljL2ltYWdlL2ljX2JpYW9zdWRhQDJ4LnBuZydcblx0XHRcdH0sXG5cdFx0XHRnZXRTdGF0dXNUZXh0KHN0YXR1cykge1xuXHRcdFx0XHRjb25zdCBtYXAgPSB7XG5cdFx0XHRcdFx0MjogJ+W+heaOpeWNlScsXG5cdFx0XHRcdFx0MzogJ+W+heWPlui0pycsXG5cdFx0XHRcdFx0NDogJ+mFjemAgeS4rScsXG5cdFx0XHRcdFx0NTogJ+W3suWujOaIkCcsXG5cdFx0XHRcdFx0NzogJ+W3suWujOaIkCcsXG5cdFx0XHRcdFx0OTk6ICflt7Llj5bmtognXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIG1hcFtzdGF0dXNdIHx8ICcnXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QWN0aW9ucyhpdGVtKSB7XG5cdFx0XHRcdGlmIChpdGVtLnN0YXR1cyA9PT0gMykge1xuXHRcdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0XHR7IHRleHQ6ICflj5bmtojorqLljZUnLCB0eXBlOiAnbGlnaHQnLCBmaWxsOiBmYWxzZSB9LFxuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5Y+W6LSn56CBJywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiBmYWxzZSB9LFxuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5ouN54Wn5Y+W6LSnJywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiB0cnVlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGl0ZW0uc3RhdHVzID09PSA0ICYmIGl0ZW0udGFrZVNob3BJZCkge1xuXHRcdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0XHR7IHRleHQ6ICflrZjku7bnoIEnLCB0eXBlOiAncHJpbWFyeScsIGZpbGw6IGZhbHNlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGl0ZW0uc3RhdHVzID09PSA0ICYmICFpdGVtLnRha2VTaG9wSWQpIHtcblx0XHRcdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5ouN54Wn6YCB6L6+JywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiB0cnVlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIFtdXG5cdFx0XHR9LFxuXHRcdFx0Z2V0T3JkZXJMaXN0KCkge1xuXHRcdFx0XHRpZiAodGhpcy5sb2FkaW5nKSByZXR1cm5cblx0XHRcdFx0dGhpcy5sb2FkaW5nID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLiR1LmFwaS5vcmRlclBhZ2Uoe1xuXHRcdFx0XHRcdGNhcGFjaXR5OiAxMCxcblx0XHRcdFx0XHRwYWdlOiB0aGlzLnBhZ2UsXG5cdFx0XHRcdFx0bW9kZWw6IHtcblx0XHRcdFx0XHRcdHN0YXR1czogdGhpcy5hY3RpdmVUYWJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0Y29uc3QgbGlzdCA9IHJlcy5kYXRhLnJlY29yZHMgfHwgW11cblx0XHRcdFx0XHRcdGlmICh0aGlzLnBhZ2UgPT09IDEpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5vcmRlcnMgPSBsaXN0XG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHR0aGlzLm9yZGVycyA9IFsuLi50aGlzLm9yZGVycywgLi4ubGlzdF1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdHRoaXMuaGFzTW9yZSA9IGxpc3QubGVuZ3RoID49IDEwXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5maW5hbGx5KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGdvVG9PcmRlckRldGFpbChpdGVtLCBpbmRleCkge1xuXHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0dXJsOiBgL3BhZ2VzL29yZGVyLWRldGFpbC9vcmRlci1kZXRhaWw/aWQ9JHtpdGVtLmlkfWBcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRoYW5kbGVBY3Rpb24oaXRlbSwgYWN0aW9uKSB7XG5cdFx0XHRcdGNvbnN0IHRleHQgPSBhY3Rpb24udGV4dFxuXHRcdFx0XHRpZiAodGV4dCA9PT0gJ+WPlua2iOiuouWNlScpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZUNhbmNlbE9yZGVyKGl0ZW0pXG5cdFx0XHRcdH0gZWxzZSBpZiAodGV4dCA9PT0gJ+WPlui0p+eggScgfHwgdGV4dCA9PT0gJ+WtmOS7tueggScpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVNob3dRUkNvZGUoaXRlbSlcblx0XHRcdFx0fSBlbHNlIGlmICh0ZXh0ID09PSAn5ouN54Wn5Y+W6LSnJykge1xuXHRcdFx0XHRcdHRoaXMuaGFuZGxlUGhvdG9QaWNrdXAoaXRlbSlcblx0XHRcdFx0fSBlbHNlIGlmICh0ZXh0ID09PSAn5ouN54Wn6YCB6L6+Jykge1xuXHRcdFx0XHRcdHRoaXMuaGFuZGxlUGhvdG9EZWxpdmVyKGl0ZW0pXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRoYW5kbGVDYW5jZWxPcmRlcihpdGVtKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRPcmRlciA9IGl0ZW1cblx0XHRcdFx0dGhpcy4kdS5hcGkuY2FuY2VsTGltaXQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuY2FuY2VsUmVtYWluID0gcmVzLmRhdGEucmVtYWluXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5maW5hbGx5KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IHRydWVcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRjb25maXJtQ2FuY2VsT3JkZXIoKSB7XG5cdFx0XHRcdGlmICghdGhpcy5zZWxlY3RlZE9yZGVyKSByZXR1cm5cblx0XHRcdFx0dGhpcy4kdS5hcGkuY2FuY2VsT3JkZXIoeyBvcmRlcklkOiB0aGlzLnNlbGVjdGVkT3JkZXIuaWQgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdHRoaXMuc2hvd0NhbmNlbE1vZGFsID0gZmFsc2Vcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5Y+W5raI5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pXG5cdFx0XHRcdFx0XHR0aGlzLmdldE9yZGVyTGlzdCgpXG5cdFx0XHRcdFx0XHR0aGlzLmdldEFjdGl2ZU9yZGVyQ291bnQoKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IHJlcy5tZXNzYWdlIHx8ICflj5bmtojlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlU2hvd1FSQ29kZShpdGVtKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRPcmRlciA9IGl0ZW1cblx0XHRcdFx0dGhpcy5zaG93UVJQb3B1cCA9IHRydWVcblx0XHRcdH0sXG5cdFx0XHRoYW5kbGVQaG90b1BpY2t1cChpdGVtKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRPcmRlciA9IGl0ZW1cblx0XHRcdFx0dGhpcy5waG90b1BvcHVwTW9kZSA9ICdwaWNrdXAnXG5cdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3MgPSBbXVxuXHRcdFx0XHR0aGlzLnBob3RvUmVtYXJrID0gJydcblx0XHRcdFx0dGhpcy5zaG93UGhvdG9Qb3B1cCA9IHRydWVcblx0XHRcdH0sXG5cdFx0XHRoYW5kbGVQaG90b0RlbGl2ZXIoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkT3JkZXIgPSBpdGVtXG5cdFx0XHRcdHRoaXMucGhvdG9Qb3B1cE1vZGUgPSAnZGVsaXZlcidcblx0XHRcdFx0dGhpcy51cGxvYWRlZFBob3RvcyA9IFtdXG5cdFx0XHRcdHRoaXMucGhvdG9SZW1hcmsgPSAnJ1xuXHRcdFx0XHR0aGlzLnNob3dQaG90b1BvcHVwID0gdHJ1ZVxuXHRcdFx0fSxcblx0XHRcdGNsb3NlUGhvdG9Qb3B1cCgpIHtcblx0XHRcdFx0dGhpcy5zaG93UGhvdG9Qb3B1cCA9IGZhbHNlXG5cdFx0XHR9LFxuXHRcdFx0Y2hvb3NlUGhvdG8oKSB7XG5cdFx0XHRcdGlmICh0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCA+PSAzKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5pyA5aSa5LiK5LygM+W8oOeFp+eJhycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5jaG9vc2VJbWFnZSh7XG5cdFx0XHRcdFx0Y291bnQ6IDMgLSB0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCxcblx0XHRcdFx0XHRzb3VyY2VUeXBlOiBbJ2NhbWVyYScsICdhbGJ1bSddLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3MgPSBbLi4udGhpcy51cGxvYWRlZFBob3RvcywgLi4ucmVzLnRlbXBGaWxlUGF0aHNdXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGRlbGV0ZVBob3RvKGluZGV4KSB7XG5cdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3Muc3BsaWNlKGluZGV4LCAxKVxuXHRcdFx0fSxcblx0XHRcdHN1Ym1pdFBob3RvUG9wdXAoKSB7XG5cdFx0XHRcdGlmICh0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+ivt+S4iuS8oOeFp+eJhycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5zaG93TG9hZGluZyh7IHRpdGxlOiAn5LiK5Lyg5LitLi4uJyB9KVxuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKGxvY2F0aW9uUmVzKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKGxvY2F0aW9uUmVzLmxhdGl0dWRlLCBsb2NhdGlvblJlcy5sb25naXR1ZGUpXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRmYWlsOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKG51bGwsIG51bGwpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0ZG9VcGxvYWRQaG90b3MobGF0aXR1ZGUsIGxvbmdpdHVkZSkge1xuXHRcdFx0XHRjb25zdCB1cGxvYWRUYXNrcyA9IHRoaXMudXBsb2FkZWRQaG90b3MubWFwKHBhdGggPT4ge1xuXHRcdFx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCBmb3JtRGF0YSA9IHsgZm9sZGVyOiAnb3JkZXJzJyB9XG5cdFx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhLmxhdGl0dWRlID0gbGF0aXR1ZGVcblx0XHRcdFx0XHRcdFx0Zm9ybURhdGEubG9uZ2l0dWRlID0gbG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnZm9ybURhdGE6JywgZm9ybURhdGEpXG5cdFx0XHRcdFx0XHR1bmkudXBsb2FkRmlsZSh7XG5cdFx0XHRcdFx0XHRcdHVybDogdGhpcy4kYmFzZVVybCArICd3ZWIvcHVibGljL3VwbG9hZCcsXG5cdFx0XHRcdFx0XHRcdGZpbGVQYXRoOiBwYXRoLFxuXHRcdFx0XHRcdFx0XHRuYW1lOiAnZmlsZScsXG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhOiBmb3JtRGF0YSxcblx0XHRcdFx0XHRcdFx0c3VjY2VzczogKHVwbG9hZFJlcykgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKHVwbG9hZFJlcy5kYXRhKVxuXHRcdFx0XHRcdFx0XHRcdGlmIChkYXRhLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0XHRcdFx0cmVzb2x2ZShkYXRhLmRhdGEpXG5cdFx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRcdHJlamVjdChuZXcgRXJyb3IoZGF0YS5tc2cpKVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdHJlamVjdChlcnIpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSlcblxuXHRcdFx0XHRQcm9taXNlLmFsbCh1cGxvYWRUYXNrcykudGhlbihpbWFnZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGFwaSA9IHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICdjb25maXJtRGVsaXZlcicgOiAnY29uZmlybVBpY2t1cCdcblx0XHRcdFx0XHRjb25zdCBwYXJhbXMgPSB7XG5cdFx0XHRcdFx0XHRpbWFnZXM6IGltYWdlcy5tYXAoaW1nID0+IGltZy5pbWdhZGRyKSxcblx0XHRcdFx0XHRcdG9yZGVySWQ6IHRoaXMuc2VsZWN0ZWRPcmRlci5pZCxcblx0XHRcdFx0XHRcdHJlbWFyazogdGhpcy5waG90b1JlbWFya1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRwYXJhbXMubGF0aXR1ZGUgPSBsYXRpdHVkZVxuXHRcdFx0XHRcdFx0cGFyYW1zLmxvbmdpdHVkZSA9IGxvbmdpdHVkZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gdGhpcy4kdS5hcGlbYXBpXShwYXJhbXMpXG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmj5DkuqTmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSBmYWxzZVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRPcmRlckxpc3QoKVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiByZXMubXNnIHx8ICfmj5DkuqTlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKGVyciA9PiB7XG5cdFx0XHRcdFx0dW5pLmhpZGVMb2FkaW5nKClcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IGVyci5tZXNzYWdlIHx8ICfkuIrkvKDlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC5vcmRlci1wYWdlIHtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdGJhY2tncm91bmQ6ICNmNWY3ZmI7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdCZfX25hdiB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMxZjczZjYgMCUsICMxYjZjZjIgMTAwJSk7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LWlubmVyIHtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDAgMjhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LXRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMzhycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fdGFicyB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiA5O1xuXHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdGJveC1zaGFkb3c6IDAgMTBycHggMjBycHggcmdiYSg0MCwgNzIsIDEyOCwgMC4wNCk7XG5cdFx0fVxuXG5cdFx0Jl9fdGFiIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0XHQmLS1hY3RpdmUge1xuXHRcdFx0XHQub3JkZXItcGFnZV9fdGFiLXRleHQge1xuXHRcdFx0XHRcdGNvbG9yOiAjMjcyYjMzO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190YWItdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDMwcnB4O1xuXHRcdFx0Y29sb3I6ICM4Zjk2YTM7XG5cdFx0fVxuXG5cdFx0Jl9fdGFiLWxpbmUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMjZycHg7XG5cdFx0XHRyaWdodDogMjZycHg7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRoZWlnaHQ6IDRycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA5OTlycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMWE3M2Y4O1xuXHRcdH1cblxuXHRcdCZfX2JvZHkge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR9XG5cblx0XHQmX19saXN0IHtcblx0XHRcdHBhZGRpbmc6IDE4cnB4IDIycnB4IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMjZycHgpO1xuXHRcdH1cblxuXHRcdCZfX2VtcHR5IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0cGFkZGluZy10b3A6IDIwMHJweDtcblx0XHR9XG5cblx0XHQmX19lbXB0eS1pY29uIHtcblx0XHRcdHdpZHRoOiAzMjBycHg7XG5cdFx0XHRoZWlnaHQ6IDMyMHJweDtcblx0XHR9XG5cblx0XHQmX19sb2FkaW5nIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nOiAzMHJweCAwO1xuXHRcdFx0Y29sb3I6ICM4Zjk2YTM7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdH1cblx0fVxuXG5cdC5vcmRlci1jYXJkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxOHJweDtcblx0XHRwYWRkaW5nOiAyMHJweCAxOHJweCAxOHJweDtcblx0XHRib3JkZXItcmFkaXVzOiAyMHJweDtcblx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdGJveC1zaGFkb3c6IDAgOHJweCAyMHJweCByZ2JhKDQzLCA2NSwgMTA2LCAwLjA1KTtcblxuXHRcdCZfX2hlYWQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0Jl9faGVhZC1sZWZ0IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMnJweDtcblx0XHRcdG1pbi13aWR0aDogMDtcblx0XHR9XG5cblx0XHQmX19iYWRnZSB7XG5cdFx0XHRwYWRkaW5nOiA0cnB4IDEwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTBycHg7XG5cdFx0XHRmb250LXNpemU6IDIycnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cblx0XHRcdCYtLWJsdWUge1xuXHRcdFx0XHRib3JkZXI6IDFycHggc29saWQgIzc1Y2ZmZjtcblx0XHRcdFx0Y29sb3I6ICMyN2E4Zjg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNlZWZhZmY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXJlZCB7XG5cdFx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjZmY4ZjhmO1xuXHRcdFx0XHRjb2xvcjogI2ZmNWQ1ZDtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjFmMTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19iYWRnZS1pY29uIHtcblx0XHRcdHdpZHRoOiAxMDhycHg7XG5cdFx0XHRoZWlnaHQ6IDQwcnB4O1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fdGltZS10ZXh0LFxuXHRcdCZfX3N0YXR1cyxcblx0XHQmX19yb3V0ZS1kZXNjLFxuXHRcdCZfX2Fycml2YWwtdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICNhMWE3YjI7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzIHtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXG5cdFx0XHQmLS1oaWdobGlnaHQge1xuXHRcdFx0XHRjb2xvcjogI2ZmNGEzZDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS1pdGVtIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdG1hcmdpbi10b3A6IDIycnB4O1xuXG5cdFx0XHQmLS1kZWxpdmVyeSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3BvaW50IHtcblx0XHRcdHdpZHRoOiAzNHJweDtcblx0XHRcdGhlaWdodDogMzRycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMzRycHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRmb250LXNpemU6IDIycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDE2cnB4O1xuXG5cdFx0XHQmLS1waWNrdXAge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMmFiOGZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1kZWxpdmVyeSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZjlkMmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtdGV4dHMge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdG1pbi13aWR0aDogMDtcblx0XHR9XG5cblx0XHQmX19yb3V0ZS10aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyZDMxMzk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWRlc2Mge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiA4cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0XHR9XG5cblx0XHQmX19mb290ZXIge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMnJweDtcblx0XHRcdHBhZGRpbmctdG9wOiAxNnJweDtcblx0XHRcdGJvcmRlci10b3A6IDFycHggc29saWQgI2YwZjJmNjtcblx0XHR9XG5cblx0XHQmX19hcnJpdmFsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19jbG9jayB7XG5cdFx0XHR3aWR0aDogMjRycHg7XG5cdFx0XHRoZWlnaHQ6IDI0cnB4O1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2Utd3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2UtdGFnIHtcblx0XHRcdHBhZGRpbmc6IDNycHggOHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0XHRib3JkZXI6IDFycHggc29saWQgI2ZmOGY4Zjtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6ICNmZjZhNmE7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmNGY0O1xuXHRcdH1cblxuXHRcdCZfX3ByaWNlIHtcblx0XHRcdGZvbnQtc2l6ZTogNDBycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZjQwMzA7XG5cdFx0fVxuXG5cdFx0Jl9fYWN0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0bWFyZ2luLXRvcDogMThycHg7XG5cdFx0XHRwYWRkaW5nLXRvcDogMThycHg7XG5cdFx0XHRib3JkZXItdG9wOiAxcnB4IHNvbGlkICNmMGYyZjY7XG5cdFx0fVxuXG5cdFx0Jl9fYWN0aW9uLWJ0biB7XG5cdFx0XHR3aWR0aDogMTYwcnB4O1xuXHRcdFx0aGVpZ2h0OiA2NHJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA2NHJweDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAzNHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0Ym9yZGVyOiAxcnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1saWdodCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogI2Q3ZGJlMztcblx0XHRcdFx0Y29sb3I6ICM4Zjk2YTM7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXByaW1hcnkge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICMyYzdjZmY7XG5cdFx0XHRcdGNvbG9yOiAjMmM3Y2ZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1wcmltYXJ5LWZpbGwge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMmM3Y2ZmO1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG4ucXJjb2RlIHtcblx0cGFkZGluZzogMzBycHggNDBycHggNTBycHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0Ji10aXRsZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHJweDtcblxuXHRcdGltYWdlIHtcblx0XHRcdHdpZHRoOiA0MHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0fVxuXG5cdFx0dGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDM0cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMmQzMTM5O1xuXHRcdH1cblx0fVxuXG5cdCYtaW1hZ2Uge1xuXHRcdHdpZHRoOiA0MDBycHg7XG5cdFx0aGVpZ2h0OiA0MDBycHg7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXG5cdFx0aW1hZ2Uge1xuXHRcdFx0d2lkdGg6IDM2MHJweDtcblx0XHRcdGhlaWdodDogMzYwcnB4O1xuXHRcdH1cblx0fVxuXG5cdCYtYnRuIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZDogIzEwNkVGQTtcblx0XHRib3JkZXItcmFkaXVzOiA0NHJweDtcblx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0bWFyZ2luLXRvcDogNDBycHg7XG5cblx0XHQmLS1ob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMGQ1ZmM3O1xuXHRcdH1cblx0fVxufVxuXG4ucGhvdG8tcG9wdXAge1xuXHRwYWRkaW5nOiAzMHJweCAzMHJweCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDMwcnB4KTtcblxuXHQmX19oZWFkZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBycHg7XG5cdH1cblxuXHQmX19wbGFjZWhvbGRlciB7XG5cdFx0d2lkdGg6IDQwcnB4O1xuXHRcdGhlaWdodDogNDBycHg7XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGNvbG9yOiAjMmQzMTM5O1xuXHR9XG5cblx0Jl9fY2xvc2Uge1xuXHRcdHdpZHRoOiA0MHJweDtcblx0XHRoZWlnaHQ6IDQwcnB4O1xuXHR9XG5cblx0Jl9fc2VjdGlvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBycHg7XG5cblx0XHQmLS1yZW1hcmsge1xuXHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XG5cdFx0fVxuXHR9XG5cblx0Jl9fbGFiZWwtcm93IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBycHg7XG5cdH1cblxuXHQmX19sYWJlbCB7XG5cdFx0Zm9udC1zaXplOiAzMHJweDtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdGNvbG9yOiAjMmQzMTM5O1xuXHR9XG5cblx0Jl9fcmVxdWlyZWQge1xuXHRcdGNvbG9yOiAjZmY0MDMwO1xuXHRcdG1hcmdpbi1sZWZ0OiA4cnB4O1xuXHR9XG5cblx0Jl9faGludCB7XG5cdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRjb2xvcjogIzhmOTZhMztcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0fVxuXG5cdCZfX3Bob3RvcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0Z2FwOiAyMHJweDtcblx0fVxuXG5cdCZfX3ByZXZpZXctY2FyZCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAxNDRycHg7XG5cdFx0aGVpZ2h0OiAxNDRycHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTJycHg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXG5cdCZfX3ByZXZpZXctaW1hZ2Uge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG5cdCZfX3ByZXZpZXctbWFzayB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGhlaWdodDogNTZycHg7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXG5cdCZfX3ByZXZpZXctZGVsZXRlIHtcblx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdGNvbG9yOiAjZmZmZmZmO1xuXHR9XG5cblx0Jl9fdXBsb2FkLWJ0biB7XG5cdFx0d2lkdGg6IDE0NHJweDtcblx0XHRoZWlnaHQ6IDE0NHJweDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRpbWFnZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQmX19yZW1hcmstdGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRjb2xvcjogIzJkMzEzOTtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHJweDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdCZfX3RleHRhcmVhIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDE2MHJweDtcblx0XHRwYWRkaW5nOiAyMHJweDtcblx0XHRiYWNrZ3JvdW5kOiAjZjVmN2ZiO1xuXHRcdGJvcmRlci1yYWRpdXM6IDEycnB4O1xuXHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0Y29sb3I6ICMyZDMxMzk7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0fVxuXG5cdCZfX3N1Ym1pdCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRsaW5lLWhlaWdodDogODhycHg7XG5cdFx0YmFja2dyb3VuZDogIzJjN2NmZjtcblx0XHRib3JkZXItcmFkaXVzOiA0NHJweDtcblx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0bWFyZ2luLXRvcDogNDBycHg7XG5cblx0XHQmLS1ob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMjY3OGU4O1xuXHRcdH1cblx0fVxufVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///108\n");
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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      statusBarHeight: 0,\n      navHeight: 0,\n      activeTab: null,\n      searchKeyword: '',\n      tabs: [{\n        label: '全部',\n        value: null\n      }, {\n        label: '待取货',\n        value: 3\n      }, {\n        label: '配送中',\n        value: 4\n      }, {\n        label: '已完成',\n        value: 7\n      }],\n      orders: [],\n      page: 1,\n      hasMore: true,\n      loading: false,\n      showCancelModal: false,\n      showQRPopup: false,\n      showPhotoPopup: false,\n      selectedOrder: null,\n      cancelRemain: 0,\n      photoPopupMode: '',\n      photoRemark: '',\n      uploadedPhotos: [],\n      activeOrderCount: null\n    };\n  },\n  computed: {\n    displayTabs: function displayTabs() {\n      var _this = this;\n      return this.tabs.map(function (tab) {\n        var count = null;\n        if (tab.value === 3) {\n          var _this$activeOrderCoun;\n          count = (_this$activeOrderCoun = _this.activeOrderCount) === null || _this$activeOrderCoun === void 0 ? void 0 : _this$activeOrderCoun.grabbedCount;\n        } else if (tab.value === 4) {\n          var _this$activeOrderCoun2;\n          count = (_this$activeOrderCoun2 = _this.activeOrderCount) === null || _this$activeOrderCoun2 === void 0 ? void 0 : _this$activeOrderCoun2.deliveringCount;\n        }\n        if (count) {\n          return _objectSpread(_objectSpread({}, tab), {}, {\n            label: \"\".concat(tab.label, \" \").concat(count)\n          });\n        }\n        return tab;\n      });\n    },\n    bodyStyle: function bodyStyle() {\n      return {\n        marginTop: this.navHeight + uni.upx2px(88) + uni.upx2px(88) + 'px',\n        height: \"calc(100vh - \".concat(this.navHeight + uni.upx2px(88) + uni.upx2px(72), \"px)\")\n      };\n    },\n    photoPopupTitle: function photoPopupTitle() {\n      return this.photoPopupMode === 'deliver' ? '拍照送达' : '拍照取货';\n    },\n    photoPopupLabel: function photoPopupLabel() {\n      return this.photoPopupMode === 'deliver' ? '拍摄送达照片' : '拍摄取货照片';\n    },\n    photoPopupSubmitText: function photoPopupSubmitText() {\n      return this.photoPopupMode === 'deliver' ? '确认送达' : '确认取货';\n    }\n  },\n  onLoad: function onLoad() {\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.navHeight = this.statusBarHeight + uni.upx2px(88);\n    this.getOrderList();\n  },\n  onShow: function onShow() {\n    this.getActiveOrderCount();\n  },\n  onReachBottom: function onReachBottom() {\n    if (!this.hasMore || this.loading) return;\n    this.page++;\n    this.getOrderList();\n  },\n  watch: {\n    activeTab: function activeTab() {\n      this.page = 1;\n      this.hasMore = true;\n      this.orders = [];\n      this.getOrderList();\n    }\n  },\n  methods: {\n    searchOrder: function searchOrder() {\n      this.page = 1;\n      this.hasMore = true;\n      this.orders = [];\n      this.getOrderList();\n    },\n    getActiveOrderCount: function getActiveOrderCount() {\n      var _this2 = this;\n      this.$u.api.activeOrderCount().then(function (res) {\n        if (res.code === 200) {\n          _this2.activeOrderCount = res.data;\n        } else {\n          _this2.activeOrderCount = null;\n        }\n      }).catch(function () {\n        _this2.activeOrderCount = null;\n      });\n    },\n    getBadgeIcon: function getBadgeIcon(item) {\n      return item.isUrgent ? '/static/image/ic_jisuda@2x.png' : '/static/image/ic_biaosuda@2x.png';\n    },\n    getStatusText: function getStatusText(status) {\n      var map = {\n        2: '待接单',\n        3: '待取货',\n        4: '配送中',\n        5: '已送达',\n        7: '已完成',\n        99: '已取消'\n      };\n      return map[status] || '';\n    },\n    getActions: function getActions(item) {\n      if (item.status === 3) {\n        return [{\n          text: '取消订单',\n          type: 'light',\n          fill: false\n        }, {\n          text: '取货码',\n          type: 'primary',\n          fill: false\n        }, {\n          text: '拍照取货',\n          type: 'primary',\n          fill: true\n        }];\n      }\n      if (item.status === 4 && item.takeShopId) {\n        return [{\n          text: '存件码',\n          type: 'primary',\n          fill: false\n        }];\n      }\n      if (item.status === 4 && !item.takeShopId) {\n        return [{\n          text: '拍照送达',\n          type: 'primary',\n          fill: true\n        }];\n      }\n      return [];\n    },\n    getOrderList: function getOrderList() {\n      var _this3 = this;\n      if (this.loading) return;\n      this.loading = true;\n      this.$u.api.orderPage({\n        capacity: 10,\n        page: this.page,\n        model: {\n          status: this.activeTab,\n          keyword: this.searchKeyword\n        }\n      }).then(function (res) {\n        if (res.code === 200) {\n          var list = res.data.records || [];\n          __f__(\"log\", list, \" at pages/order/order.vue:305\");\n          if (_this3.page === 1) {\n            _this3.orders = list;\n          } else {\n            _this3.orders = [].concat((0, _toConsumableArray2.default)(_this3.orders), (0, _toConsumableArray2.default)(list));\n          }\n          _this3.hasMore = list.length >= 10;\n        }\n      }).finally(function () {\n        _this3.loading = false;\n      });\n    },\n    goToOrderDetail: function goToOrderDetail(item, index) {\n      uni.navigateTo({\n        url: \"/pages/order-detail/order-detail?id=\".concat(item.id)\n      });\n    },\n    handleAction: function handleAction(item, action) {\n      var text = action.text;\n      if (text === '取消订单') {\n        this.handleCancelOrder(item);\n      } else if (text === '取货码' || text === '存件码') {\n        this.handleShowQRCode(item);\n      } else if (text === '拍照取货') {\n        this.handlePhotoPickup(item);\n      } else if (text === '拍照送达') {\n        this.handlePhotoDeliver(item);\n      }\n    },\n    handleCancelOrder: function handleCancelOrder(item) {\n      var _this4 = this;\n      this.selectedOrder = item;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this4.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this4.showCancelModal = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this5 = this;\n      if (!this.selectedOrder) return;\n      this.$u.api.cancelOrder({\n        orderId: this.selectedOrder.id\n      }).then(function (res) {\n        _this5.showCancelModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this5.getOrderList();\n          _this5.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.message || '取消失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this5.showCancelModal = false;\n      });\n    },\n    handleShowQRCode: function handleShowQRCode(item) {\n      this.selectedOrder = item;\n      this.showQRPopup = true;\n    },\n    handlePhotoPickup: function handlePhotoPickup(item) {\n      this.checkOperationRadius(item.id, 'pickup');\n    },\n    handlePhotoDeliver: function handlePhotoDeliver(item) {\n      this.checkOperationRadius(item.id, 'deliver');\n    },\n    checkOperationRadius: function checkOperationRadius(orderId, mode) {\n      var _this6 = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          _this6.$u.api.checkDriverOperationRadius({\n            lat: res.latitude,\n            lng: res.longitude,\n            orderId: orderId\n          }).then(function (apiRes) {\n            if (apiRes.code === 200) {\n              __f__(\"log\", apiRes.data, \" at pages/order/order.vue:379\");\n              if (apiRes.data === true) {\n                _this6.selectedOrder = {\n                  id: orderId\n                };\n                _this6.photoPopupMode = mode;\n                _this6.uploadedPhotos = [];\n                _this6.photoRemark = '';\n                _this6.showPhotoPopup = true;\n              } else {\n                uni.showToast({\n                  title: '您当前位置与收货地址距离超出范围,请在地址附近重新拍照',\n                  icon: 'none'\n                });\n              }\n            }\n          });\n        },\n        fail: function fail() {\n          uni.showToast({\n            title: '无法获取您的位置信息',\n            icon: 'none'\n          });\n        }\n      });\n    },\n    closePhotoPopup: function closePhotoPopup() {\n      this.showPhotoPopup = false;\n    },\n    choosePhoto: function choosePhoto() {\n      var _this7 = this;\n      if (this.uploadedPhotos.length >= 3) {\n        uni.showToast({\n          title: '最多上传3张照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.chooseImage({\n        count: 3 - this.uploadedPhotos.length,\n        sourceType: ['camera', 'album'],\n        success: function success(res) {\n          _this7.uploadedPhotos = [].concat((0, _toConsumableArray2.default)(_this7.uploadedPhotos), (0, _toConsumableArray2.default)(res.tempFilePaths));\n        }\n      });\n    },\n    deletePhoto: function deletePhoto(index) {\n      this.uploadedPhotos.splice(index, 1);\n    },\n    submitPhotoPopup: function submitPhotoPopup() {\n      var _this8 = this;\n      if (this.uploadedPhotos.length === 0) {\n        uni.showToast({\n          title: '请上传照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.showLoading({\n        title: '上传中...'\n      });\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(locationRes) {\n          _this8.doUploadPhotos(locationRes.latitude, locationRes.longitude);\n        },\n        fail: function fail() {\n          _this8.doUploadPhotos(null, null);\n        }\n      });\n    },\n    doUploadPhotos: function doUploadPhotos(latitude, longitude) {\n      var _this9 = this;\n      var uploadTasks = this.uploadedPhotos.map(function (path) {\n        return new Promise(function (resolve, reject) {\n          var formData = {\n            folder: 'orders'\n          };\n          if (latitude && longitude) {\n            formData.latitude = latitude;\n            formData.longitude = longitude;\n          }\n          __f__(\"log\", 'formData:', formData, \" at pages/order/order.vue:447\");\n          uni.uploadFile({\n            url: _this9.$baseUrl + 'web/public/upload',\n            filePath: path,\n            name: 'file',\n            formData: formData,\n            success: function success(uploadRes) {\n              var data = JSON.parse(uploadRes.data);\n              if (data.code === 200) {\n                resolve(data.data);\n              } else {\n                reject(new Error(data.msg));\n              }\n            },\n            fail: function fail(err) {\n              reject(err);\n            }\n          });\n        });\n      });\n      Promise.all(uploadTasks).then(function (images) {\n        var api = _this9.photoPopupMode === 'deliver' ? 'confirmDeliver' : 'confirmPickup';\n        var params = {\n          images: images.map(function (img) {\n            return img.imgaddr;\n          }),\n          orderId: _this9.selectedOrder.id,\n          remark: _this9.photoRemark\n        };\n        if (latitude && longitude) {\n          params.latitude = latitude;\n          params.longitude = longitude;\n        }\n        return _this9.$u.api[api](params);\n      }).then(function (res) {\n        uni.hideLoading();\n        if (res.code === 200) {\n          uni.showToast({\n            title: '提交成功',\n            icon: 'success'\n          });\n          _this9.showPhotoPopup = false;\n          _this9.getOrderList();\n          _this9.getActiveOrderCount();\n        } else {\n          uni.showToast({\n            title: res.msg || '提交失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function (err) {\n        uni.hideLoading();\n        uni.showToast({\n          title: err.message || '上传失败',\n          icon: 'none'\n        });\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXIvb3JkZXIudnVlIl0sIm5hbWVzIjpbImRhdGEiLCJzdGF0dXNCYXJIZWlnaHQiLCJuYXZIZWlnaHQiLCJhY3RpdmVUYWIiLCJzZWFyY2hLZXl3b3JkIiwidGFicyIsImxhYmVsIiwidmFsdWUiLCJvcmRlcnMiLCJwYWdlIiwiaGFzTW9yZSIsImxvYWRpbmciLCJzaG93Q2FuY2VsTW9kYWwiLCJzaG93UVJQb3B1cCIsInNob3dQaG90b1BvcHVwIiwic2VsZWN0ZWRPcmRlciIsImNhbmNlbFJlbWFpbiIsInBob3RvUG9wdXBNb2RlIiwicGhvdG9SZW1hcmsiLCJ1cGxvYWRlZFBob3RvcyIsImFjdGl2ZU9yZGVyQ291bnQiLCJjb21wdXRlZCIsImRpc3BsYXlUYWJzIiwiY291bnQiLCJ0YWIiLCJib2R5U3R5bGUiLCJtYXJnaW5Ub3AiLCJoZWlnaHQiLCJwaG90b1BvcHVwVGl0bGUiLCJwaG90b1BvcHVwTGFiZWwiLCJwaG90b1BvcHVwU3VibWl0VGV4dCIsIm9uTG9hZCIsIm9uU2hvdyIsIm9uUmVhY2hCb3R0b20iLCJ3YXRjaCIsIm1ldGhvZHMiLCJzZWFyY2hPcmRlciIsImdldEFjdGl2ZU9yZGVyQ291bnQiLCJnZXRCYWRnZUljb24iLCJnZXRTdGF0dXNUZXh0IiwiZ2V0QWN0aW9ucyIsInRleHQiLCJ0eXBlIiwiZmlsbCIsImdldE9yZGVyTGlzdCIsImNhcGFjaXR5IiwibW9kZWwiLCJzdGF0dXMiLCJrZXl3b3JkIiwiZ29Ub09yZGVyRGV0YWlsIiwidW5pIiwidXJsIiwiaGFuZGxlQWN0aW9uIiwiaGFuZGxlQ2FuY2VsT3JkZXIiLCJjb25maXJtQ2FuY2VsT3JkZXIiLCJvcmRlcklkIiwidGl0bGUiLCJpY29uIiwiaGFuZGxlU2hvd1FSQ29kZSIsImhhbmRsZVBob3RvUGlja3VwIiwiaGFuZGxlUGhvdG9EZWxpdmVyIiwiY2hlY2tPcGVyYXRpb25SYWRpdXMiLCJzdWNjZXNzIiwibGF0IiwibG5nIiwiaWQiLCJmYWlsIiwiY2xvc2VQaG90b1BvcHVwIiwiY2hvb3NlUGhvdG8iLCJzb3VyY2VUeXBlIiwiZGVsZXRlUGhvdG8iLCJzdWJtaXRQaG90b1BvcHVwIiwiZG9VcGxvYWRQaG90b3MiLCJmb2xkZXIiLCJmb3JtRGF0YSIsImZpbGVQYXRoIiwibmFtZSIsInJlc29sdmUiLCJyZWplY3QiLCJQcm9taXNlIiwiaW1hZ2VzIiwicmVtYXJrIiwicGFyYW1zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQTBKQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDLE9BQ0E7UUFBQUM7UUFBQUM7TUFBQSxHQUNBO1FBQUFEO1FBQUFDO01BQUEsR0FDQTtRQUFBRDtRQUFBQztNQUFBLEdBQ0E7UUFBQUQ7UUFBQUM7TUFBQSxFQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO0lBQ0E7RUFDQTtFQUNBQztJQUNBQztNQUFBO01BQ0E7UUFDQTtRQUNBO1VBQUE7VUFDQUM7UUFDQTtVQUFBO1VBQ0FBO1FBQ0E7UUFDQTtVQUNBLHVDQUNBQztZQUNBbEI7VUFBQTtRQUVBO1FBQ0E7TUFDQTtJQUNBO0lBRUFtQjtNQUNBO1FBQ0FDO1FBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0VBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBL0I7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0VBQ0E7RUFDQWdDO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7UUFDQTtVQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtRQUNBLFFBQ0E7VUFBQUM7VUFBQUM7VUFBQUM7UUFBQSxHQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsR0FDQTtVQUFBRjtVQUFBQztVQUFBQztRQUFBLEVBQ0E7TUFDQTtNQUNBO1FBQ0EsUUFDQTtVQUFBRjtVQUFBQztVQUFBQztRQUFBLEVBQ0E7TUFDQTtNQUNBO1FBQ0EsUUFDQTtVQUFBRjtVQUFBQztVQUFBQztRQUFBLEVBQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO01BQ0E7TUFDQTtRQUNBQztRQUNBcEM7UUFDQXFDO1VBQ0FDO1VBQ0FDO1FBQ0E7TUFDQTtRQUNBO1VBQ0E7VUFDQTtVQUNBO1lBQ0E7VUFDQTtZQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQUM7UUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0E7TUFDQTtRQUNBO1VBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtNQUNBO1FBQUFDO01BQUE7UUFDQTtRQUNBO1VBQ0FMO1lBQUFNO1lBQUFDO1VBQUE7VUFDQTtVQUNBO1FBQ0E7VUFDQVA7WUFBQU07WUFBQUM7VUFBQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUFBO01BQ0FYO1FBQ0FSO1FBQ0FvQjtVQUNBO1lBQ0FDO1lBQ0FDO1lBQ0FUO1VBQ0E7WUFDQTtjQUNBO2NBQ0E7Z0JBQ0E7a0JBQUFVO2dCQUFBO2dCQUNBO2dCQUNBO2dCQUNBO2dCQUNBO2NBQ0E7Z0JBQ0FmO2tCQUNBTTtrQkFDQUM7Z0JBQ0E7Y0FDQTtZQUNBO1VBQ0E7UUFDQTtRQUNBUztVQUNBaEI7WUFDQU07WUFDQUM7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBVTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0FsQjtVQUFBTTtVQUFBQztRQUFBO1FBQ0E7TUFDQTtNQUNBUDtRQUNBM0I7UUFDQThDO1FBQ0FQO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQVE7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBckI7VUFBQU07VUFBQUM7UUFBQTtRQUNBO01BQ0E7TUFDQVA7UUFBQU07TUFBQTtNQUNBTjtRQUNBUjtRQUNBb0I7VUFDQTtRQUNBO1FBQ0FJO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQU07TUFBQTtNQUNBO1FBQ0E7VUFDQTtZQUFBQztVQUFBO1VBQ0E7WUFDQUM7WUFDQUE7VUFDQTtVQUNBO1VBQ0F4QjtZQUNBQztZQUNBd0I7WUFDQUM7WUFDQUY7WUFDQVo7Y0FDQTtjQUNBO2dCQUNBZTtjQUNBO2dCQUNBQztjQUNBO1lBQ0E7WUFDQVo7Y0FDQVk7WUFDQTtVQUNBO1FBQ0E7TUFDQTtNQUVBQztRQUNBO1FBQ0E7VUFDQUM7WUFBQTtVQUFBO1VBQ0F6QjtVQUNBMEI7UUFDQTtRQUNBO1VBQ0FDO1VBQ0FBO1FBQ0E7UUFDQTtNQUNBO1FBQ0FoQztRQUNBO1VBQ0FBO1lBQUFNO1lBQUFDO1VBQUE7VUFDQTtVQUNBO1VBQ0E7UUFDQTtVQUNBUDtZQUFBTTtZQUFBQztVQUFBO1FBQ0E7TUFDQTtRQUNBUDtRQUNBQTtVQUFBTTtVQUFBQztRQUFBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMDguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZVwiPlxuXHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2XCIgOnN0eWxlPVwieyBwYWRkaW5nVG9wOiBzdGF0dXNCYXJIZWlnaHQgKyAncHgnIH1cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2LWlubmVyXCI+XG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItcGFnZV9fbmF2LXRpdGxlXCI+5oiR55qE6K6i5Y2VPC90ZXh0PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblxuXHRcdDx2aWV3IGNsYXNzPVwib3JkZXItcGFnZV9fc2VhcmNoXCIgOnN0eWxlPVwieyB0b3A6IG5hdkhlaWdodCArICdweCcgfVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1wYWdlX19zZWFyY2gtYm94XCI+XG5cdFx0XHRcdDx1LWljb24gbmFtZT1cInNlYXJjaFwiIGNvbG9yPVwiIzk5OTk5OVwiIHNpemU9XCIyOFwiPjwvdS1pY29uPlxuXHRcdFx0XHQ8aW5wdXQgY2xhc3M9XCJvcmRlci1wYWdlX19zZWFyY2gtaW5wdXRcIiB2LW1vZGVsPVwic2VhcmNoS2V5d29yZFwiIHBsYWNlaG9sZGVyPVwi6L6T5YWl5aeT5ZCN44CB55S16K+d44CB6K6i5Y2V57yW5Y+35pCc57SiXCIgcGxhY2Vob2xkZXItY2xhc3M9XCJvcmRlci1wYWdlX19zZWFyY2gtcGxhY2Vob2xkZXJcIiBAY29uZmlybT1cInNlYXJjaE9yZGVyXCIgLz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLXBhZ2VfX3RhYnNcIiA6c3R5bGU9XCJ7IHRvcDogKG5hdkhlaWdodCArIDQ0KSArICdweCcgfVwiPlxuXHRcdFx0PHZpZXcgdi1mb3I9XCJ0YWIgaW4gZGlzcGxheVRhYnNcIiA6a2V5PVwidGFiLnZhbHVlXCIgY2xhc3M9XCJvcmRlci1wYWdlX190YWJcIiA6Y2xhc3M9XCJ7ICdvcmRlci1wYWdlX190YWItLWFjdGl2ZSc6IGFjdGl2ZVRhYiA9PT0gdGFiLnZhbHVlIH1cIiBAY2xpY2s9XCJhY3RpdmVUYWIgPSB0YWIudmFsdWVcIj5cblx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1wYWdlX190YWItdGV4dFwiPnt7IHRhYi5sYWJlbCB9fTwvdGV4dD5cblx0XHRcdFx0PHZpZXcgdi1pZj1cImFjdGl2ZVRhYiA9PT0gdGFiLnZhbHVlXCIgY2xhc3M9XCJvcmRlci1wYWdlX190YWItbGluZVwiPjwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8c2Nyb2xsLXZpZXcgY2xhc3M9XCJvcmRlci1wYWdlX19ib2R5XCIgc2Nyb2xsLXkgOnN0eWxlPVwiYm9keVN0eWxlXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLXBhZ2VfX2xpc3RcIj5cblx0XHRcdFx0PHZpZXcgdi1mb3I9XCIoaXRlbSwgaW5kZXgpIGluIG9yZGVyc1wiIDprZXk9XCJpdGVtLmlkXCIgY2xhc3M9XCJvcmRlci1jYXJkXCIgQGNsaWNrPVwiZ29Ub09yZGVyRGV0YWlsKGl0ZW0sIGluZGV4KVwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9faGVhZFwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9faGVhZC1sZWZ0XCI+XG5cdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1jYXJkX19iYWRnZS1pY29uXCIgOnNyYz1cImdldEJhZGdlSWNvbihpdGVtKVwiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3RpbWUtdGV4dFwiPuS4i+WNleaXtumXtO+8mnt7IGl0ZW0uY3JlYXRlVGltZSB9fTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3N0YXR1c1wiIDpjbGFzcz1cInsgJ29yZGVyLWNhcmRfX3N0YXR1cy0taGlnaGxpZ2h0JzogaXRlbS5zdGF0dXMgPT09IDMgfHwgaXRlbS5zdGF0dXMgPT09IDQgfVwiPnt7IGdldFN0YXR1c1RleHQoaXRlbS5zdGF0dXMpIH19PC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtaXRlbVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19wb2ludCBvcmRlci1jYXJkX19wb2ludC0tcGlja3VwXCI+5Y+WPC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19yb3V0ZS10ZXh0c1wiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLXRpdGxlXCI+e3sgaXRlbS5kZXBvc2l0U2hvcE5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtZGVzY1wiPnt7IGl0ZW0uZGVwb3NpdFNob3BBZGRyZXNzIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtaXRlbSBvcmRlci1jYXJkX19yb3V0ZS1pdGVtLS1kZWxpdmVyeVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1jYXJkX19wb2ludCBvcmRlci1jYXJkX19wb2ludC0tZGVsaXZlcnlcIj7pgIE8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLXRleHRzXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItY2FyZF9fcm91dGUtdGl0bGVcIj57eyBpdGVtLnRha2VOYW1lIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3JvdXRlLWRlc2NcIj57eyBpdGVtLnRha2VBZGRyZXNzIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fZm9vdGVyXCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWNhcmRfX2Fycml2YWxcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItY2FyZF9fY2xvY2tcIiBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2Nsb2NrQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX2Fycml2YWwtdGV4dFwiPuWJqeS9mXt7IGl0ZW0ucmVtYWluTWludXRlcyB9feWIhumSnzwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItY2FyZF9fcHJpY2Utd3JhcFwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWNhcmRfX3ByaWNlXCI+wqV7eyAoaXRlbS5kcml2ZXJGZWUgLyAxMDApLnRvRml4ZWQoMikgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgdi1pZj1cImdldEFjdGlvbnMoaXRlbSkubGVuZ3RoXCIgY2xhc3M9XCJvcmRlci1jYXJkX19hY3Rpb25zXCI+XG5cdFx0XHRcdFx0XHQ8dmlldz48L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cImRpc3BsYXk6IGZsZXg7ZmxleC13cmFwOiB3cmFwO2dhcDogMjBycHg7XCI+XG5cdFx0XHRcdFx0XHRcdDxidXR0b25cblx0XHRcdFx0XHRcdFx0XHR2LWZvcj1cImFjdGlvbiBpbiBnZXRBY3Rpb25zKGl0ZW0pXCJcblx0XHRcdFx0XHRcdFx0XHQ6a2V5PVwiYWN0aW9uLnRleHRcIlxuXHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwib3JkZXItY2FyZF9fYWN0aW9uLWJ0blwiXG5cdFx0XHRcdFx0XHRcdFx0OmNsYXNzPVwiWydvcmRlci1jYXJkX19hY3Rpb24tYnRuLS0nICsgYWN0aW9uLnR5cGUsIHsgJ29yZGVyLWNhcmRfX2FjdGlvbi1idG4tLXByaW1hcnktZmlsbCc6IGFjdGlvbi5maWxsIH1dXCJcblx0XHRcdFx0XHRcdFx0XHRob3Zlci1jbGFzcz1cIm9yZGVyLWNhcmRfX2FjdGlvbi1idG4tLWhvdmVyXCJcblx0XHRcdFx0XHRcdFx0XHRAY2xpY2suc3RvcD1cImhhbmRsZUFjdGlvbihpdGVtLCBhY3Rpb24pXCJcblx0XHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRcdHt7IGFjdGlvbi50ZXh0IH19XG5cdFx0XHRcdFx0XHRcdDwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgdi1pZj1cIm9yZGVycy5sZW5ndGggPT09IDAgJiYgIWxvYWRpbmdcIiBjbGFzcz1cIm9yZGVyLXBhZ2VfX2VtcHR5XCI+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItcGFnZV9fZW1wdHktaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvZGVmYXVsdF9ub2RhdGFAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyB2LWlmPVwibG9hZGluZ1wiIGNsYXNzPVwib3JkZXItcGFnZV9fbG9hZGluZ1wiPlxuXHRcdFx0XHRcdDx0ZXh0PuWKoOi9veS4rS4uLjwvdGV4dD5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvc2Nyb2xsLXZpZXc+XG5cblx0XHQ8dS1tb2RhbFxuXHRcdFx0OnNob3c9XCJzaG93Q2FuY2VsTW9kYWxcIlxuXHRcdFx0c2hvd0NhbmNlbEJ1dHRvblxuXHRcdFx0QGNhbmNlbD1cInNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXCJcblx0XHRcdGNhbmNlbENvbG9yPVwiIzY2NjY2NlwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMDA1NUZGXCJcblx0XHRcdHRpdGxlPVwi5Y+W5raI6K6i5Y2V56Gu6K6kXCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybUNhbmNlbE9yZGVyXCI+XG5cdFx0XHQ8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzMzMzMzMztmb250LXNpemU6IDI4cnB4O2ZvbnQtd2VpZ2h0OiA0MDA7XCI+XG5cdFx0XHRcdOaCqOS7iuaXpei/mOWPr+WPlua2iCB7eyBjYW5jZWxSZW1haW4gfX0g5qyh6K6i5Y2V77yM5qyh5pWw55So5bC95ZCO5LuK5pel5bCG5peg5rOV5o6l5Y2V77yM5piv5ZCm56Gu6K6k5Y+W5raI77yfXG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LW1vZGFsPlxuXG5cdFx0PHUtcG9wdXAgOnNob3c9XCJzaG93UVJQb3B1cFwiIHJvdW5kPVwiMjBcIiBtb2RlPVwiYm90dG9tXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cInFyY29kZVwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInFyY29kZS10aXRsZVwiPlxuXHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2Nsb3NlQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiIHN0eWxlPVwib3BhY2l0eTogMDtcIj48L2ltYWdlPlxuXHRcdFx0XHRcdDx0ZXh0Pnt7IHNlbGVjdGVkT3JkZXIgJiYgc2VsZWN0ZWRPcmRlci5zdGF0dXMgPT09IDQgPyAn5a2Y5Lu256CBJyA6ICflj5botKfnoIEnIH19PC90ZXh0PlxuXHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2Nsb3NlQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiIEBjbGljaz1cInNob3dRUlBvcHVwID0gZmFsc2VcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicXJjb2RlLWltYWdlXCI+XG5cdFx0XHRcdFx0PGltYWdlIHYtaWY9XCJzZWxlY3RlZE9yZGVyICYmIHNlbGVjdGVkT3JkZXIuZHJpdmVyVmVyaWZ5Q29kZVwiIDpzcmM9XCInaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTIwMHgyMDAmZGF0YT0nICsgc2VsZWN0ZWRPcmRlci5kcml2ZXJWZXJpZnlDb2RlXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInFyY29kZS1idG5cIiBob3Zlci1jbGFzcz1cInFyY29kZS1idG4tLWhvdmVyXCIgQGNsaWNrPVwic2hvd1FSUG9wdXAgPSBmYWxzZVwiPuWFs+mXrTwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3dQaG90b1BvcHVwXCIgcm91bmQ9XCIyMFwiIG1vZGU9XCJib3R0b21cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9faGVhZGVyXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fcGxhY2Vob2xkZXJcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fdGl0bGVcIj57eyBwaG90b1BvcHVwVGl0bGUgfX08L3RleHQ+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tcG9wdXBfX2Nsb3NlXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9zZTJAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiIEBjbGljaz1cImNsb3NlUGhvdG9Qb3B1cFwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwX19zZWN0aW9uXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fbGFiZWwtcm93XCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19sYWJlbFwiPnt7IHBob3RvUG9wdXBMYWJlbCB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3JlcXVpcmVkXCI+KjwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX2hpbnRcIj7mnIDlpJoz5byg54Wn54mHPC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3Bob3Rvc1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1mb3I9XCIocGhvdG8sIGluZGV4KSBpbiB1cGxvYWRlZFBob3Rvc1wiIDprZXk9XCJpbmRleFwiIGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctY2FyZFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1pbWFnZVwiIDpzcmM9XCJwaG90b1wiIG1vZGU9XCJhc3BlY3RGaWxsXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1tYXNrXCIgQGNsaWNrPVwiZGVsZXRlUGhvdG8oaW5kZXgpXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1kZWxldGVcIj7liKDpmaQ8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJ1cGxvYWRlZFBob3Rvcy5sZW5ndGggPCAzXCIgY2xhc3M9XCJwaG90by1wb3B1cF9fdXBsb2FkLWJ0blwiIEBjbGljaz1cImNob29zZVBob3RvXCI+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSBzcmM9XCIvc3RhdGljL2ltYWdlL2J0bl91cGxvYWQyQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3NlY3Rpb24gcGhvdG8tcG9wdXBfX3NlY3Rpb24tLXJlbWFya1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3JlbWFyay10aXRsZVwiPuWkh+azqOS/oeaBrzwvdGV4dD5cblx0XHRcdFx0XHQ8dGV4dGFyZWEgdi1tb2RlbD1cInBob3RvUmVtYXJrXCIgY2xhc3M9XCJwaG90by1wb3B1cF9fdGV4dGFyZWFcIiBtYXhsZW5ndGg9XCIyMDBcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiIHBsYWNlaG9sZGVyLXN0eWxlPVwiY29sb3I6ICNjN2NiZDM7XCIgLz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDxidXR0b24gY2xhc3M9XCJwaG90by1wb3B1cF9fc3VibWl0XCIgaG92ZXItY2xhc3M9XCJwaG90by1wb3B1cF9fc3VibWl0LS1ob3ZlclwiIEBjbGljaz1cInN1Ym1pdFBob3RvUG9wdXBcIj57eyBwaG90b1BvcHVwU3VibWl0VGV4dCB9fTwvYnV0dG9uPlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdS1wb3B1cD5cblx0PC92aWV3PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRzdGF0dXNCYXJIZWlnaHQ6IDAsXG5cdFx0XHRcdG5hdkhlaWdodDogMCxcblx0XHRcdFx0YWN0aXZlVGFiOiBudWxsLFxuXHRcdFx0XHRzZWFyY2hLZXl3b3JkOiAnJyxcblx0XHRcdFx0dGFiczogW1xuXHRcdFx0XHRcdHsgbGFiZWw6ICflhajpg6gnLCB2YWx1ZTogbnVsbCB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflvoXlj5botKcnLCB2YWx1ZTogMyB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICfphY3pgIHkuK0nLCB2YWx1ZTogNCB9LFxuXHRcdFx0XHRcdHsgbGFiZWw6ICflt7LlrozmiJAnLCB2YWx1ZTogNyB9XG5cdFx0XHRcdF0sXG5cdFx0XHRcdG9yZGVyczogW10sXG5cdFx0XHRcdHBhZ2U6IDEsXG5cdFx0XHRcdGhhc01vcmU6IHRydWUsXG5cdFx0XHRcdGxvYWRpbmc6IGZhbHNlLFxuXHRcdFx0XHRzaG93Q2FuY2VsTW9kYWw6IGZhbHNlLFxuXHRcdFx0XHRzaG93UVJQb3B1cDogZmFsc2UsXG5cdFx0XHRcdHNob3dQaG90b1BvcHVwOiBmYWxzZSxcblx0XHRcdFx0c2VsZWN0ZWRPcmRlcjogbnVsbCxcblx0XHRcdFx0Y2FuY2VsUmVtYWluOiAwLFxuXHRcdFx0XHRwaG90b1BvcHVwTW9kZTogJycsXG5cdFx0XHRcdHBob3RvUmVtYXJrOiAnJyxcblx0XHRcdFx0dXBsb2FkZWRQaG90b3M6IFtdLFxuXHRcdFx0XHRhY3RpdmVPcmRlckNvdW50OiBudWxsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRjb21wdXRlZDoge1xuXHRcdFx0ZGlzcGxheVRhYnMoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnRhYnMubWFwKCh0YWIpID0+IHtcblx0XHRcdFx0XHRsZXQgY291bnQgPSBudWxsXG5cdFx0XHRcdFx0aWYgKHRhYi52YWx1ZSA9PT0gMykge1xuXHRcdFx0XHRcdFx0Y291bnQgPSB0aGlzLmFjdGl2ZU9yZGVyQ291bnQ/LmdyYWJiZWRDb3VudFxuXHRcdFx0XHRcdH0gZWxzZSBpZiAodGFiLnZhbHVlID09PSA0KSB7XG5cdFx0XHRcdFx0XHRjb3VudCA9IHRoaXMuYWN0aXZlT3JkZXJDb3VudD8uZGVsaXZlcmluZ0NvdW50XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmIChjb3VudCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRcdFx0Li4udGFiLFxuXHRcdFx0XHRcdFx0XHRsYWJlbDogYCR7dGFiLmxhYmVsfSAke2NvdW50fWBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHRhYlxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Ym9keVN0eWxlKCkge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdG1hcmdpblRvcDogdGhpcy5uYXZIZWlnaHQgKyB1bmkudXB4MnB4KDg4KSArIHVuaS51cHgycHgoODgpICsgJ3B4Jyxcblx0XHRcdFx0XHRoZWlnaHQ6IGBjYWxjKDEwMHZoIC0gJHt0aGlzLm5hdkhlaWdodCArIHVuaS51cHgycHgoODgpICsgdW5pLnVweDJweCg3Mil9cHgpYFxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0cGhvdG9Qb3B1cFRpdGxlKCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ+aLjeeFp+mAgei+vicgOiAn5ouN54Wn5Y+W6LSnJ1xuXHRcdFx0fSxcblx0XHRcdHBob3RvUG9wdXBMYWJlbCgpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICfmi43mkYTpgIHovr7nhafniYcnIDogJ+aLjeaRhOWPlui0p+eFp+eJhydcblx0XHRcdH0sXG5cdFx0XHRwaG90b1BvcHVwU3VibWl0VGV4dCgpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICfnoa7orqTpgIHovr4nIDogJ+ehruiupOWPlui0pydcblx0XHRcdH1cblx0XHR9LFxuXHRcdG9uTG9hZCgpIHtcblx0XHRcdGNvbnN0IHN5c3RlbUluZm8gPSB1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKVxuXHRcdFx0dGhpcy5zdGF0dXNCYXJIZWlnaHQgPSBzeXN0ZW1JbmZvLnN0YXR1c0JhckhlaWdodCB8fCAwXG5cdFx0XHR0aGlzLm5hdkhlaWdodCA9IHRoaXMuc3RhdHVzQmFySGVpZ2h0ICsgdW5pLnVweDJweCg4OClcblx0XHRcdHRoaXMuZ2V0T3JkZXJMaXN0KClcblx0XHR9LFxuXHRcdG9uU2hvdygpIHtcblx0XHRcdHRoaXMuZ2V0QWN0aXZlT3JkZXJDb3VudCgpXG5cdFx0fSxcblx0XHRvblJlYWNoQm90dG9tKCkge1xuXHRcdFx0aWYgKCF0aGlzLmhhc01vcmUgfHwgdGhpcy5sb2FkaW5nKSByZXR1cm5cblx0XHRcdHRoaXMucGFnZSsrXG5cdFx0XHR0aGlzLmdldE9yZGVyTGlzdCgpXG5cdFx0fSxcblx0XHR3YXRjaDoge1xuXHRcdFx0YWN0aXZlVGFiKCkge1xuXHRcdFx0XHR0aGlzLnBhZ2UgPSAxXG5cdFx0XHRcdHRoaXMuaGFzTW9yZSA9IHRydWVcblx0XHRcdFx0dGhpcy5vcmRlcnMgPSBbXVxuXHRcdFx0XHR0aGlzLmdldE9yZGVyTGlzdCgpXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRzZWFyY2hPcmRlcigpIHtcblx0XHRcdFx0dGhpcy5wYWdlID0gMVxuXHRcdFx0XHR0aGlzLmhhc01vcmUgPSB0cnVlXG5cdFx0XHRcdHRoaXMub3JkZXJzID0gW11cblx0XHRcdFx0dGhpcy5nZXRPcmRlckxpc3QoKVxuXHRcdFx0fSxcblx0XHRcdGdldEFjdGl2ZU9yZGVyQ291bnQoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmFjdGl2ZU9yZGVyQ291bnQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuYWN0aXZlT3JkZXJDb3VudCA9IHJlcy5kYXRhXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHRoaXMuYWN0aXZlT3JkZXJDb3VudCA9IG51bGxcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZU9yZGVyQ291bnQgPSBudWxsXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QmFkZ2VJY29uKGl0ZW0pIHtcblx0XHRcdFx0cmV0dXJuIGl0ZW0uaXNVcmdlbnQgPyAnL3N0YXRpYy9pbWFnZS9pY19qaXN1ZGFAMngucG5nJyA6ICcvc3RhdGljL2ltYWdlL2ljX2JpYW9zdWRhQDJ4LnBuZydcblx0XHRcdH0sXG5cdFx0XHRnZXRTdGF0dXNUZXh0KHN0YXR1cykge1xuXHRcdFx0XHRjb25zdCBtYXAgPSB7XG5cdFx0XHRcdFx0MjogJ+W+heaOpeWNlScsXG5cdFx0XHRcdFx0MzogJ+W+heWPlui0pycsXG5cdFx0XHRcdFx0NDogJ+mFjemAgeS4rScsXG5cdFx0XHRcdFx0NTogJ+W3sumAgei+vicsXG5cdFx0XHRcdFx0NzogJ+W3suWujOaIkCcsXG5cdFx0XHRcdFx0OTk6ICflt7Llj5bmtognXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIG1hcFtzdGF0dXNdIHx8ICcnXG5cdFx0XHR9LFxuXHRcdFx0Z2V0QWN0aW9ucyhpdGVtKSB7XG5cdFx0XHRcdGlmIChpdGVtLnN0YXR1cyA9PT0gMykge1xuXHRcdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0XHR7IHRleHQ6ICflj5bmtojorqLljZUnLCB0eXBlOiAnbGlnaHQnLCBmaWxsOiBmYWxzZSB9LFxuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5Y+W6LSn56CBJywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiBmYWxzZSB9LFxuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5ouN54Wn5Y+W6LSnJywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiB0cnVlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGl0ZW0uc3RhdHVzID09PSA0ICYmIGl0ZW0udGFrZVNob3BJZCkge1xuXHRcdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0XHR7IHRleHQ6ICflrZjku7bnoIEnLCB0eXBlOiAncHJpbWFyeScsIGZpbGw6IGZhbHNlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGl0ZW0uc3RhdHVzID09PSA0ICYmICFpdGVtLnRha2VTaG9wSWQpIHtcblx0XHRcdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5ouN54Wn6YCB6L6+JywgdHlwZTogJ3ByaW1hcnknLCBmaWxsOiB0cnVlIH1cblx0XHRcdFx0XHRdXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIFtdXG5cdFx0XHR9LFxuXHRcdFx0Z2V0T3JkZXJMaXN0KCkge1xuXHRcdFx0XHRpZiAodGhpcy5sb2FkaW5nKSByZXR1cm5cblx0XHRcdFx0dGhpcy5sb2FkaW5nID0gdHJ1ZVxuXHRcdFx0XHR0aGlzLiR1LmFwaS5vcmRlclBhZ2Uoe1xuXHRcdFx0XHRcdGNhcGFjaXR5OiAxMCxcblx0XHRcdFx0XHRwYWdlOiB0aGlzLnBhZ2UsXG5cdFx0XHRcdFx0bW9kZWw6IHtcblx0XHRcdFx0XHRcdHN0YXR1czogdGhpcy5hY3RpdmVUYWIsXG5cdFx0XHRcdFx0XHRrZXl3b3JkOiB0aGlzLnNlYXJjaEtleXdvcmRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0Y29uc3QgbGlzdCA9IHJlcy5kYXRhLnJlY29yZHMgfHwgW11cblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKGxpc3QpXG5cdFx0XHRcdFx0XHRpZiAodGhpcy5wYWdlID09PSAxKSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMub3JkZXJzID0gbGlzdFxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5vcmRlcnMgPSBbLi4udGhpcy5vcmRlcnMsIC4uLmxpc3RdXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR0aGlzLmhhc01vcmUgPSBsaXN0Lmxlbmd0aCA+PSAxMFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2Vcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRnb1RvT3JkZXJEZXRhaWwoaXRlbSwgaW5kZXgpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogYC9wYWdlcy9vcmRlci1kZXRhaWwvb3JkZXItZGV0YWlsP2lkPSR7aXRlbS5pZH1gXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlQWN0aW9uKGl0ZW0sIGFjdGlvbikge1xuXHRcdFx0XHRjb25zdCB0ZXh0ID0gYWN0aW9uLnRleHRcblx0XHRcdFx0aWYgKHRleHQgPT09ICflj5bmtojorqLljZUnKSB7XG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVDYW5jZWxPcmRlcihpdGVtKVxuXHRcdFx0XHR9IGVsc2UgaWYgKHRleHQgPT09ICflj5botKfnoIEnIHx8IHRleHQgPT09ICflrZjku7bnoIEnKSB7XG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVTaG93UVJDb2RlKGl0ZW0pXG5cdFx0XHRcdH0gZWxzZSBpZiAodGV4dCA9PT0gJ+aLjeeFp+WPlui0pycpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVBob3RvUGlja3VwKGl0ZW0pXG5cdFx0XHRcdH0gZWxzZSBpZiAodGV4dCA9PT0gJ+aLjeeFp+mAgei+vicpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZVBob3RvRGVsaXZlcihpdGVtKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlQ2FuY2VsT3JkZXIoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkT3JkZXIgPSBpdGVtXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbExpbWl0KCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmNhbmNlbFJlbWFpbiA9IHJlcy5kYXRhLnJlbWFpblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93Q2FuY2VsTW9kYWwgPSB0cnVlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Y29uZmlybUNhbmNlbE9yZGVyKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRPcmRlcikgcmV0dXJuXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5zZWxlY3RlZE9yZGVyLmlkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+WPlua2iOaIkOWKnycsIGljb246ICdzdWNjZXNzJyB9KVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRPcmRlckxpc3QoKVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiByZXMubWVzc2FnZSB8fCAn5Y+W5raI5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93Q2FuY2VsTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGhhbmRsZVNob3dRUkNvZGUoaXRlbSkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkT3JkZXIgPSBpdGVtXG5cdFx0XHRcdHRoaXMuc2hvd1FSUG9wdXAgPSB0cnVlXG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlUGhvdG9QaWNrdXAoaXRlbSkge1xuXHRcdFx0XHR0aGlzLmNoZWNrT3BlcmF0aW9uUmFkaXVzKGl0ZW0uaWQsICdwaWNrdXAnKVxuXHRcdFx0fSxcblx0XHRcdGhhbmRsZVBob3RvRGVsaXZlcihpdGVtKSB7XG5cdFx0XHRcdHRoaXMuY2hlY2tPcGVyYXRpb25SYWRpdXMoaXRlbS5pZCwgJ2RlbGl2ZXInKVxuXHRcdFx0fSxcblx0XHRcdGNoZWNrT3BlcmF0aW9uUmFkaXVzKG9yZGVySWQsIG1vZGUpIHtcblx0XHRcdFx0dW5pLmdldExvY2F0aW9uKHtcblx0XHRcdFx0XHR0eXBlOiAnZ2NqMDInLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuJHUuYXBpLmNoZWNrRHJpdmVyT3BlcmF0aW9uUmFkaXVzKHtcblx0XHRcdFx0XHRcdFx0bGF0OiByZXMubGF0aXR1ZGUsXG5cdFx0XHRcdFx0XHRcdGxuZzogcmVzLmxvbmdpdHVkZSxcblx0XHRcdFx0XHRcdFx0b3JkZXJJZDogb3JkZXJJZFxuXHRcdFx0XHRcdFx0fSkudGhlbihhcGlSZXMgPT4ge1xuXHRcdFx0XHRcdFx0XHRpZiAoYXBpUmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKGFwaVJlcy5kYXRhKVxuXHRcdFx0XHRcdFx0XHRcdGlmIChhcGlSZXMuZGF0YSA9PT0gdHJ1ZSkge1xuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZE9yZGVyID0geyBpZDogb3JkZXJJZCB9XG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnBob3RvUG9wdXBNb2RlID0gbW9kZVxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRlZFBob3RvcyA9IFtdXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnBob3RvUmVtYXJrID0gJydcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSB0cnVlXG5cdFx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aXRsZTogJ+aCqOW9k+WJjeS9jee9ruS4juaUtui0p+WcsOWdgOi3neemu+i2heWHuuiMg+WbtO+8jOivt+WcqOWcsOWdgOmZhOi/kemHjeaWsOaLjeeFpycsXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGljb246ICdub25lJ1xuXHRcdFx0XHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRmYWlsOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0dGl0bGU6ICfml6Dms5Xojrflj5bmgqjnmoTkvY3nva7kv6Hmga8nLFxuXHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGNsb3NlUGhvdG9Qb3B1cCgpIHtcblx0XHRcdFx0dGhpcy5zaG93UGhvdG9Qb3B1cCA9IGZhbHNlXG5cdFx0XHR9LFxuXHRcdFx0Y2hvb3NlUGhvdG8oKSB7XG5cdFx0XHRcdGlmICh0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCA+PSAzKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5pyA5aSa5LiK5LygM+W8oOeFp+eJhycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5jaG9vc2VJbWFnZSh7XG5cdFx0XHRcdFx0Y291bnQ6IDMgLSB0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCxcblx0XHRcdFx0XHRzb3VyY2VUeXBlOiBbJ2NhbWVyYScsICdhbGJ1bSddLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3MgPSBbLi4udGhpcy51cGxvYWRlZFBob3RvcywgLi4ucmVzLnRlbXBGaWxlUGF0aHNdXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGRlbGV0ZVBob3RvKGluZGV4KSB7XG5cdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3Muc3BsaWNlKGluZGV4LCAxKVxuXHRcdFx0fSxcblx0XHRcdHN1Ym1pdFBob3RvUG9wdXAoKSB7XG5cdFx0XHRcdGlmICh0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+ivt+S4iuS8oOeFp+eJhycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5zaG93TG9hZGluZyh7IHRpdGxlOiAn5LiK5Lyg5LitLi4uJyB9KVxuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKGxvY2F0aW9uUmVzKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKGxvY2F0aW9uUmVzLmxhdGl0dWRlLCBsb2NhdGlvblJlcy5sb25naXR1ZGUpXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRmYWlsOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKG51bGwsIG51bGwpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0ZG9VcGxvYWRQaG90b3MobGF0aXR1ZGUsIGxvbmdpdHVkZSkge1xuXHRcdFx0XHRjb25zdCB1cGxvYWRUYXNrcyA9IHRoaXMudXBsb2FkZWRQaG90b3MubWFwKHBhdGggPT4ge1xuXHRcdFx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCBmb3JtRGF0YSA9IHsgZm9sZGVyOiAnb3JkZXJzJyB9XG5cdFx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhLmxhdGl0dWRlID0gbGF0aXR1ZGVcblx0XHRcdFx0XHRcdFx0Zm9ybURhdGEubG9uZ2l0dWRlID0gbG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnZm9ybURhdGE6JywgZm9ybURhdGEpXG5cdFx0XHRcdFx0XHR1bmkudXBsb2FkRmlsZSh7XG5cdFx0XHRcdFx0XHRcdHVybDogdGhpcy4kYmFzZVVybCArICd3ZWIvcHVibGljL3VwbG9hZCcsXG5cdFx0XHRcdFx0XHRcdGZpbGVQYXRoOiBwYXRoLFxuXHRcdFx0XHRcdFx0XHRuYW1lOiAnZmlsZScsXG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhOiBmb3JtRGF0YSxcblx0XHRcdFx0XHRcdFx0c3VjY2VzczogKHVwbG9hZFJlcykgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKHVwbG9hZFJlcy5kYXRhKVxuXHRcdFx0XHRcdFx0XHRcdGlmIChkYXRhLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0XHRcdFx0cmVzb2x2ZShkYXRhLmRhdGEpXG5cdFx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRcdHJlamVjdChuZXcgRXJyb3IoZGF0YS5tc2cpKVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdHJlamVjdChlcnIpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSlcblxuXHRcdFx0XHRQcm9taXNlLmFsbCh1cGxvYWRUYXNrcykudGhlbihpbWFnZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGFwaSA9IHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICdjb25maXJtRGVsaXZlcicgOiAnY29uZmlybVBpY2t1cCdcblx0XHRcdFx0XHRjb25zdCBwYXJhbXMgPSB7XG5cdFx0XHRcdFx0XHRpbWFnZXM6IGltYWdlcy5tYXAoaW1nID0+IGltZy5pbWdhZGRyKSxcblx0XHRcdFx0XHRcdG9yZGVySWQ6IHRoaXMuc2VsZWN0ZWRPcmRlci5pZCxcblx0XHRcdFx0XHRcdHJlbWFyazogdGhpcy5waG90b1JlbWFya1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRwYXJhbXMubGF0aXR1ZGUgPSBsYXRpdHVkZVxuXHRcdFx0XHRcdFx0cGFyYW1zLmxvbmdpdHVkZSA9IGxvbmdpdHVkZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gdGhpcy4kdS5hcGlbYXBpXShwYXJhbXMpXG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmj5DkuqTmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSBmYWxzZVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRPcmRlckxpc3QoKVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRBY3RpdmVPcmRlckNvdW50KClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiByZXMubXNnIHx8ICfmj5DkuqTlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKGVyciA9PiB7XG5cdFx0XHRcdFx0dW5pLmhpZGVMb2FkaW5nKClcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IGVyci5tZXNzYWdlIHx8ICfkuIrkvKDlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC5vcmRlci1wYWdlIHtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdGJhY2tncm91bmQ6ICNmNWY3ZmI7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdCZfX25hdiB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMxZjczZjYgMCUsICMxYjZjZjIgMTAwJSk7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LWlubmVyIHtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDAgMjhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fbmF2LXRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMzhycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fc2VhcmNoIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHotaW5kZXg6IDEwO1xuXHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdHBhZGRpbmc6IDhycHggMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3NlYXJjaC1ib3gge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDcycnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nOiAwIDI0cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI0VFRUVFRTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXHRcdH1cblxuXHRcdCZfX3NlYXJjaC1pbnB1dCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0aGVpZ2h0OiA3MnJweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMnJweDtcblx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0fVxuXG5cdFx0Jl9fc2VhcmNoLXBsYWNlaG9sZGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzk5OTk5OTtcblx0XHR9XG5cblx0XHQmX190YWJzIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHotaW5kZXg6IDk7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdFx0Ym94LXNoYWRvdzogMCAxMHJweCAyMHJweCByZ2JhKDQwLCA3MiwgMTI4LCAwLjA0KTtcblx0XHR9XG5cblx0XHQmX190YWIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHRcdCYtLWFjdGl2ZSB7XG5cdFx0XHRcdC5vcmRlci1wYWdlX190YWItdGV4dCB7XG5cdFx0XHRcdFx0Y29sb3I6ICMyNzJiMzM7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RhYi10ZXh0IHtcblx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRjb2xvcjogIzhmOTZhMztcblx0XHR9XG5cblx0XHQmX190YWItbGluZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAyNnJweDtcblx0XHRcdHJpZ2h0OiAyNnJweDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGhlaWdodDogNHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDk5OXJweDtcblx0XHRcdGJhY2tncm91bmQ6ICMxYTczZjg7XG5cdFx0fVxuXG5cdFx0Jl9fYm9keSB7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX2xpc3Qge1xuXHRcdFx0cGFkZGluZzogMThycHggMjJycHggY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgKyAyNnJweCk7XG5cdFx0fVxuXG5cdFx0Jl9fZW1wdHkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nLXRvcDogMjAwcnB4O1xuXHRcdH1cblxuXHRcdCZfX2VtcHR5LWljb24ge1xuXHRcdFx0d2lkdGg6IDMyMHJweDtcblx0XHRcdGhlaWdodDogMzIwcnB4O1xuXHRcdH1cblxuXHRcdCZfX2xvYWRpbmcge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDMwcnB4IDA7XG5cdFx0XHRjb2xvcjogIzhmOTZhMztcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0fVxuXHR9XG5cblx0Lm9yZGVyLWNhcmQge1xuXHRcdG1hcmdpbi1ib3R0b206IDE4cnB4O1xuXHRcdHBhZGRpbmc6IDIwcnB4IDE4cnB4IDE4cnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDIwcnB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0Ym94LXNoYWRvdzogMCA4cnB4IDIwcnB4IHJnYmEoNDMsIDY1LCAxMDYsIDAuMDUpO1xuXG5cdFx0Jl9faGVhZCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR9XG5cblx0XHQmX19oZWFkLWxlZnQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDEycnB4O1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX2JhZGdlIHtcblx0XHRcdHBhZGRpbmc6IDRycHggMTBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblxuXHRcdFx0Ji0tYmx1ZSB7XG5cdFx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjNzVjZmZmO1xuXHRcdFx0XHRjb2xvcjogIzI3YThmODtcblx0XHRcdFx0YmFja2dyb3VuZDogI2VlZmFmZjtcblx0XHRcdH1cblxuXHRcdFx0Ji0tcmVkIHtcblx0XHRcdFx0Ym9yZGVyOiAxcnB4IHNvbGlkICNmZjhmOGY7XG5cdFx0XHRcdGNvbG9yOiAjZmY1ZDVkO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmMWYxO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2JhZGdlLWljb24ge1xuXHRcdFx0d2lkdGg6IDEwOHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX190aW1lLXRleHQsXG5cdFx0Jl9fc3RhdHVzLFxuXHRcdCZfX3JvdXRlLWRlc2MsXG5cdFx0Jl9fYXJyaXZhbC10ZXh0IHtcblx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRjb2xvcjogI2ExYTdiMjtcblx0XHR9XG5cblx0XHQmX19zdGF0dXMge1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cblx0XHRcdCYtLWhpZ2hsaWdodCB7XG5cdFx0XHRcdGNvbG9yOiAjZmY0YTNkO1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWl0ZW0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0bWFyZ2luLXRvcDogMjJycHg7XG5cblx0XHRcdCYtLWRlbGl2ZXJ5IHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fcG9pbnQge1xuXHRcdFx0d2lkdGg6IDM0cnB4O1xuXHRcdFx0aGVpZ2h0OiAzNHJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNHJweDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMTZycHg7XG5cblx0XHRcdCYtLXBpY2t1cCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMyYWI4ZmY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWRlbGl2ZXJ5IHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmOWQyZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS10ZXh0cyB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLXRpdGxlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzJkMzEzOTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtZGVzYyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDhycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMS40O1xuXHRcdH1cblxuXHRcdCZfX2Zvb3RlciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdG1hcmdpbi10b3A6IDIycnB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDE2cnB4O1xuXHRcdFx0Ym9yZGVyLXRvcDogMXJweCBzb2xpZCAjZjBmMmY2O1xuXHRcdH1cblxuXHRcdCZfX2Fycml2YWwge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDEwcnB4O1xuXHRcdH1cblxuXHRcdCZfX2Nsb2NrIHtcblx0XHRcdHdpZHRoOiAyNHJweDtcblx0XHRcdGhlaWdodDogMjRycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX19wcmljZS13cmFwIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19wcmljZS10YWcge1xuXHRcdFx0cGFkZGluZzogM3JweCA4cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjZmY4ZjhmO1xuXHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogI2ZmNmE2YTtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY0ZjQ7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2Uge1xuXHRcdFx0Zm9udC1zaXplOiA0MHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmNDAzMDtcblx0XHR9XG5cblx0XHQmX19hY3Rpb25zIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRtYXJnaW4tdG9wOiAxOHJweDtcblx0XHRcdHBhZGRpbmctdG9wOiAxOHJweDtcblx0XHRcdGJvcmRlci10b3A6IDFycHggc29saWQgI2YwZjJmNjtcblx0XHR9XG5cblx0XHQmX19hY3Rpb24tYnRuIHtcblx0XHRcdHdpZHRoOiAxNjBycHg7XG5cdFx0XHRoZWlnaHQ6IDY0cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDY0cnB4O1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDM0cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRib3JkZXI6IDFycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWxpZ2h0IHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjZDdkYmUzO1xuXHRcdFx0XHRjb2xvcjogIzhmOTZhMztcblx0XHRcdH1cblxuXHRcdFx0Ji0tcHJpbWFyeSB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogIzJjN2NmZjtcblx0XHRcdFx0Y29sb3I6ICMyYzdjZmY7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXByaW1hcnktZmlsbCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMyYzdjZmY7XG5cdFx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuOTI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbi5xcmNvZGUge1xuXHRwYWRkaW5nOiAzMHJweCA0MHJweCA1MHJweDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHQmLXRpdGxlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcnB4O1xuXG5cdFx0aW1hZ2Uge1xuXHRcdFx0d2lkdGg6IDQwcnB4O1xuXHRcdFx0aGVpZ2h0OiA0MHJweDtcblx0XHR9XG5cblx0XHR0ZXh0IHtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyZDMxMzk7XG5cdFx0fVxuXHR9XG5cblx0Ji1pbWFnZSB7XG5cdFx0d2lkdGg6IDQwMHJweDtcblx0XHRoZWlnaHQ6IDQwMHJweDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTZycHg7XG5cblx0XHRpbWFnZSB7XG5cdFx0XHR3aWR0aDogMzYwcnB4O1xuXHRcdFx0aGVpZ2h0OiAzNjBycHg7XG5cdFx0fVxuXHR9XG5cblx0Ji1idG4ge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogODhycHg7XG5cdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kOiAjMTA2RUZBO1xuXHRcdGJvcmRlci1yYWRpdXM6IDQ0cnB4O1xuXHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRtYXJnaW4tdG9wOiA0MHJweDtcblxuXHRcdCYtLWhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6ICMwZDVmYzc7XG5cdFx0fVxuXHR9XG59XG5cbi5waG90by1wb3B1cCB7XG5cdHBhZGRpbmc6IDMwcnB4IDMwcnB4IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMzBycHgpO1xuXG5cdCZfX2hlYWRlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHJweDtcblx0fVxuXG5cdCZfX3BsYWNlaG9sZGVyIHtcblx0XHR3aWR0aDogNDBycHg7XG5cdFx0aGVpZ2h0OiA0MHJweDtcblx0fVxuXG5cdCZfX3RpdGxlIHtcblx0XHRmb250LXNpemU6IDM0cnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0Y29sb3I6ICMyZDMxMzk7XG5cdH1cblxuXHQmX19jbG9zZSB7XG5cdFx0d2lkdGg6IDQwcnB4O1xuXHRcdGhlaWdodDogNDBycHg7XG5cdH1cblxuXHQmX19zZWN0aW9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHJweDtcblxuXHRcdCYtLXJlbWFyayB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcblx0XHR9XG5cdH1cblxuXHQmX19sYWJlbC1yb3cge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHJweDtcblx0fVxuXG5cdCZfX2xhYmVsIHtcblx0XHRmb250LXNpemU6IDMwcnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Y29sb3I6ICMyZDMxMzk7XG5cdH1cblxuXHQmX19yZXF1aXJlZCB7XG5cdFx0Y29sb3I6ICNmZjQwMzA7XG5cdFx0bWFyZ2luLWxlZnQ6IDhycHg7XG5cdH1cblxuXHQmX19oaW50IHtcblx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdGNvbG9yOiAjOGY5NmEzO1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHR9XG5cblx0Jl9fcGhvdG9zIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRnYXA6IDIwcnB4O1xuXHR9XG5cblx0Jl9fcHJldmlldy1jYXJkIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d2lkdGg6IDE0NHJweDtcblx0XHRoZWlnaHQ6IDE0NHJweDtcblx0XHRib3JkZXItcmFkaXVzOiAxMnJweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cblx0Jl9fcHJldmlldy1pbWFnZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cblx0Jl9fcHJldmlldy1tYXNrIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0aGVpZ2h0OiA1NnJweDtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cblx0Jl9fcHJldmlldy1kZWxldGUge1xuXHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0Y29sb3I6ICNmZmZmZmY7XG5cdH1cblxuXHQmX191cGxvYWQtYnRuIHtcblx0XHR3aWR0aDogMTQ0cnB4O1xuXHRcdGhlaWdodDogMTQ0cnB4O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRcdGltYWdlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0fVxuXG5cdCZfX3JlbWFyay10aXRsZSB7XG5cdFx0Zm9udC1zaXplOiAzMHJweDtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdGNvbG9yOiAjMmQzMTM5O1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcnB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Jl9fdGV4dGFyZWEge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTYwcnB4O1xuXHRcdHBhZGRpbmc6IDIwcnB4O1xuXHRcdGJhY2tncm91bmQ6ICNmNWY3ZmI7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTJycHg7XG5cdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRjb2xvcjogIzJkMzEzOTtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR9XG5cblx0Jl9fc3VibWl0IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA4OHJweDtcblx0XHRiYWNrZ3JvdW5kOiAjMmM3Y2ZmO1xuXHRcdGJvcmRlci1yYWRpdXM6IDQ0cnB4O1xuXHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRtYXJnaW4tdG9wOiA0MHJweDtcblxuXHRcdCYtLWhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6ICMyNjc4ZTg7XG5cdFx0fVxuXHR9XG59XG48L3N0eWxlPlxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///108\n");
/***/ }),
/* 109 */
@@ -12554,7 +12624,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 114));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\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      orderId: null,\n      orderIndex: null,\n      orderDetail: null,\n      statusBarHeight: 0,\n      topFixedHeight: 0,\n      showPhotoPopup: false,\n      photoPopupMode: '',\n      photoRemark: '',\n      uploadedPhotos: [],\n      showCancelModal: false,\n      cancelRemain: 0,\n      showGrabModal: false,\n      currentLocation: null,\n      routePoints: [],\n      locationTimer: null,\n      distance: 0,\n      duration: 0,\n      statusTextMap: {\n        2: '待接单',\n        3: '待取货',\n        4: '配送中',\n        5: '已送达',\n        7: '已完成',\n        99: '已取消'\n      },\n      goodsList: [],\n      photos: []\n    };\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n    formattedRemainTime: function formattedRemainTime() {\n      var minutes = this.orderDetail.remainMinutes;\n      if (!minutes) return null;\n      if (minutes >= 60) {\n        var hours = Math.floor(minutes / 60);\n        var mins = minutes % 60;\n        return mins > 0 ? \"\".concat(hours, \"\\u5C0F\\u65F6\").concat(mins, \"\\u5206\\u949F\") : \"\".concat(hours, \"\\u5C0F\\u65F6\");\n      }\n      return \"\".concat(minutes, \"\\u5206\\u949F\");\n    },\n    showMapStatus: function showMapStatus() {\n      return this.orderDetail.status === 3 || this.orderDetail.status === 4;\n    },\n    mapData: function mapData() {\n      var startPoint = this.currentLocation || {\n        latitude: this.orderDetail.navigateLat,\n        longitude: this.orderDetail.navigateLng\n      };\n      var hasEndPoint = this.orderDetail.navigateLat && this.orderDetail.navigateLng;\n      var endPoint = {\n        latitude: this.orderDetail.navigateLng,\n        longitude: this.orderDetail.navigateLat\n      };\n      var center;\n      var scale = 12;\n      if (this.currentLocation && hasEndPoint) {\n        var latSpan = Math.abs(this.currentLocation.latitude - endPoint.latitude);\n        var lngSpan = Math.abs(this.currentLocation.longitude - endPoint.longitude);\n        var maxSpan = Math.max(latSpan, lngSpan);\n        center = {\n          latitude: (this.currentLocation.latitude + endPoint.latitude) / 2,\n          longitude: (this.currentLocation.longitude + endPoint.longitude) / 2\n        };\n        if (maxSpan > 0.3) {\n          scale = 9;\n        } else if (maxSpan > 0.15) {\n          scale = 10;\n        } else if (maxSpan > 0.08) {\n          scale = 11;\n        } else if (maxSpan > 0.04) {\n          scale = 12;\n        } else if (maxSpan > 0.02) {\n          scale = 13;\n        } else if (maxSpan > 0.01) {\n          scale = 14;\n        } else if (maxSpan > 0.005) {\n          scale = 15;\n        } else if (maxSpan > 0.002) {\n          scale = 16;\n        } else {\n          scale = 17;\n        }\n      } else if (this.currentLocation) {\n        center = this.currentLocation;\n      } else {\n        center = {\n          latitude: this.orderDetail.navigateLat,\n          longitude: this.orderDetail.navigateLng\n        };\n      }\n      var markers = [{\n        id: 1,\n        latitude: startPoint.latitude,\n        longitude: startPoint.longitude,\n        iconPath: '/static/image/start.png',\n        width: 32,\n        height: 38,\n        anchor: {\n          x: 0.5,\n          y: 1\n        }\n      }, {\n        id: 2,\n        latitude: endPoint.latitude,\n        longitude: endPoint.longitude,\n        iconPath: '/static/image/end.png',\n        width: 32,\n        height: 38,\n        anchor: {\n          x: 0.5,\n          y: 1\n        }\n      }, {\n        id: 3,\n        latitude: startPoint.latitude,\n        longitude: startPoint.longitude,\n        iconPath: '/static/image/dizhi.png',\n        width: 12,\n        height: 12,\n        anchor: {\n          x: 0.5,\n          y: 0.5\n        }\n      }];\n      var routePoints = this.routePoints.length > 0 ? this.routePoints : [startPoint, endPoint];\n      var result = {\n        center: center,\n        markers: markers,\n        polyline: this.routePoints.length > 0 ? [{\n          points: routePoints,\n          color: '#05be76',\n          width: 25,\n          arrowLine: true,\n          dottedLine: false\n        }] : [{\n          points: routePoints,\n          color: '#05be76',\n          width: 25,\n          arrowLine: true,\n          dottedLine: true\n        }],\n        includePoints: [startPoint, endPoint],\n        scale: scale\n      };\n      return result;\n    },\n    bodyStyle: function bodyStyle() {\n      var footerHeight = uni.upx2px(116);\n      var simpleNavHeight = this.statusBarHeight + uni.upx2px(88);\n      return {\n        paddingTop: (this.showMapStatus ? this.topFixedHeight : simpleNavHeight) + 'px',\n        height: \"calc(100vh - \".concat(this.footerButtons.length ? footerHeight + 20 : 20, \"px)\")\n      };\n    },\n    footerButtons: function footerButtons() {\n      var status = this.orderDetail.status;\n      var takeShopId = this.orderDetail.takeShopId;\n      if (status === 2) {\n        return [{\n          text: '立即抢单',\n          primary: true,\n          action: 'grab'\n        }];\n      }\n      if (status === 3) {\n        return [{\n          text: '取消订单',\n          primary: false,\n          action: 'cancel'\n        }, {\n          text: '拍照取货',\n          primary: true,\n          action: 'pickup'\n        }];\n      }\n      if (status === 4) {\n        if (!takeShopId) {\n          return [{\n            text: '拍照送达',\n            primary: true,\n            action: 'deliver'\n          }];\n        }\n        return [];\n      }\n      return [];\n    },\n    photoPopupTitle: function photoPopupTitle() {\n      return this.photoPopupMode === 'deliver' ? '拍照送达' : '拍照取货';\n    },\n    photoPopupLabel: function photoPopupLabel() {\n      return this.photoPopupMode === 'deliver' ? '拍摄送达照片' : '拍摄取货照片';\n    },\n    photoPopupSubmitText: function photoPopupSubmitText() {\n      return this.photoPopupMode === 'deliver' ? '确认送达' : '确认取货';\n    }\n  }),\n  onLoad: function onLoad(options) {\n    var pages = getCurrentPages();\n    var currentPage = pages[pages.length - 1];\n    var pageOptions = currentPage && currentPage.options ? currentPage.options : {};\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.orderId = options.id || pageOptions.id;\n    this.orderIndex = options.index;\n    this.topFixedHeight = uni.upx2px(500 + 92);\n    if (this.orderId) {\n      this.getOrderDetail();\n    }\n  },\n  onUnload: function onUnload() {\n    if (this.locationTimer) {\n      clearInterval(this.locationTimer);\n      this.locationTimer = null;\n    }\n  },\n  methods: {\n    handleBack: function handleBack() {\n      uni.navigateBack({\n        delta: 1\n      });\n    },\n    getOrderDetail: function getOrderDetail() {\n      var _this = this;\n      this.$u.api.orderDetail({\n        orderId: this.orderId\n      }).then(function (res) {\n        if (res.code === 200) {\n          __f__(\"log\", 'orderDetail:', res.data, \" at pages/order-detail/order-detail.vue:468\");\n          _this.orderDetail = res.data;\n          _this.goodsList = res.data.items || [];\n          _this.photos = res.data.orderImages || [];\n          if ((_this.orderDetail.status === 3 || _this.orderDetail.status === 4) && _this.orderDetail.navigateLat && _this.orderDetail.navigateLng) {\n            _this.getCurrentLocation();\n          } else {\n            __f__(\"log\", 'Skipping getCurrentLocation - status or coordinates not available', \" at pages/order-detail/order-detail.vue:475\");\n          }\n        }\n      });\n    },\n    getCurrentLocation: function getCurrentLocation() {\n      var _this2 = this;\n      this.fetchLocation();\n      this.locationTimer = setInterval(function () {\n        _this2.fetchLocation();\n      }, 60000);\n    },\n    fetchLocation: function fetchLocation() {\n      var _this3 = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          _this3.currentLocation = {\n            latitude: res.latitude,\n            longitude: res.longitude\n          };\n          _this3.getRoutePlan();\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取位置失败', err, \" at pages/order-detail/order-detail.vue:499\");\n        }\n      });\n    },\n    getRoutePlan: function getRoutePlan() {\n      var _this4 = this;\n      if (!this.currentLocation || !this.orderDetail.navigateLat || !this.orderDetail.navigateLng) {\n        __f__(\"log\", 'Skipping route plan - missing data', \" at pages/order-detail/order-detail.vue:506\");\n        return;\n      }\n      var from = \"\".concat(this.currentLocation.latitude, \",\").concat(this.currentLocation.longitude);\n      var to = \"\".concat(this.orderDetail.navigateLng, \",\").concat(this.orderDetail.navigateLat);\n      this.$u.api.directionInfo({\n        from: from,\n        to: to,\n        mode: this.userInfo.driverType\n      }).then(function (res) {\n        __f__(\"log\", 'paths success:', res.data.route.paths[0], \" at pages/order-detail/order-detail.vue:516\");\n        if (res.code === 200) {\n          var path = res.data.route.paths[0];\n          _this4.distance = path.distance;\n          _this4.duration = path.duration;\n          var points = [];\n          path.steps.forEach(function (step) {\n            var polylineStr = step.polyline;\n            var coordinates = polylineStr.split(';');\n            coordinates.forEach(function (coord) {\n              var _coord$split = coord.split(','),\n                _coord$split2 = (0, _slicedToArray2.default)(_coord$split, 2),\n                lng = _coord$split2[0],\n                lat = _coord$split2[1];\n              points.push({\n                latitude: parseFloat(lat),\n                longitude: parseFloat(lng)\n              });\n            });\n          });\n          _this4.routePoints = points;\n          _this4.$forceUpdate();\n        }\n      });\n    },\n    // makePhoneCall() {\n    // \tif (this.orderDetail.contactPhone) {\n    // \t\tuni.makePhoneCall({\n    // \t\t\tphoneNumber: this.orderDetail.contactPhone\n    // \t\t})\n    // \t}\n    // },\n    makeShopCall: function makeShopCall(type) {\n      var phone = type === 'take' ? this.orderDetail.takeContactPhone : this.orderDetail.depositShopPhone;\n      if (phone) {\n        uni.makePhoneCall({\n          phoneNumber: phone\n        });\n      }\n    },\n    navigateToAddress: function navigateToAddress(type) {\n      var latitude, longitude, name, address;\n      if (type === 'deposit') {\n        latitude = this.orderDetail.depositShopLat;\n        longitude = this.orderDetail.depositShopLng;\n        name = this.orderDetail.depositShopName;\n        address = this.orderDetail.depositShopAddress;\n      } else {\n        latitude = this.orderDetail.takeLat;\n        longitude = this.orderDetail.takeLng;\n        name = this.orderDetail.takeName;\n        address = this.orderDetail.takeAddress;\n      }\n      if (!latitude || !longitude) {\n        uni.showToast({\n          title: '地址坐标缺失',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.openLocation({\n        latitude: latitude,\n        longitude: longitude,\n        name: name,\n        address: address,\n        success: function success() {},\n        fail: function fail(err) {\n          uni.showToast({\n            title: '打开地图失败',\n            icon: 'none'\n          });\n          __f__(\"error\", 'openLocation fail:', err, \" at pages/order-detail/order-detail.vue:581\");\n        }\n      });\n    },\n    previewImage: function previewImage(current) {\n      uni.previewImage({\n        current: current,\n        urls: this.photos\n      });\n    },\n    handleFooterAction: function handleFooterAction(button) {\n      var action = button.action;\n      if (action === 'cancel') {\n        this.handleCancelOrder();\n        return;\n      }\n      if (action === 'pickup' || action === 'deliver') {\n        this.uploadedPhotos = [];\n        this.photoRemark = '';\n        this.photoPopupMode = action;\n        this.showPhotoPopup = true;\n        return;\n      }\n      if (action === 'grab') {\n        this.handleGrabOrder();\n        return;\n      }\n    },\n    handleCancelOrder: function handleCancelOrder() {\n      var _this5 = this;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this5.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this5.showCancelModal = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this6 = this;\n      this.$u.api.cancelOrder({\n        orderId: this.orderId\n      }).then(function (res) {\n        _this6.showCancelModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this6.getOrderDetail();\n        }\n      }).finally(function () {\n        _this6.showCancelModal = false;\n      });\n    },\n    handleGrabOrder: function handleGrabOrder() {\n      this.showGrabModal = true;\n    },\n    confirmGrabOrder: function confirmGrabOrder() {\n      var _this7 = this;\n      this.$u.api.grabOrder({\n        orderId: this.orderId\n      }).then(function (res) {\n        _this7.showGrabModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '接单成功',\n            icon: 'success'\n          });\n          _this7.getOrderDetail();\n          setTimeout(function () {\n            uni.navigateBack();\n          }, 1500);\n        } else {\n          uni.showToast({\n            title: res.msg || '接单失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this7.showGrabModal = false;\n      });\n    },\n    closePhotoPopup: function closePhotoPopup() {\n      this.showPhotoPopup = false;\n    },\n    chooseImage: function chooseImage() {\n      var _this8 = this;\n      var count = 3 - this.uploadedPhotos.length;\n      uni.chooseImage({\n        count: count,\n        sourceType: ['camera', 'album'],\n        success: function success(res) {\n          var tempFilePaths = res.tempFilePaths;\n          _this8.uploadedPhotos = _this8.uploadedPhotos.concat(tempFilePaths);\n        }\n      });\n    },\n    deletePhoto: function deletePhoto(index) {\n      this.uploadedPhotos.splice(index, 1);\n    },\n    submitPhotoPopup: function submitPhotoPopup() {\n      var _this9 = this;\n      if (this.uploadedPhotos.length === 0) {\n        uni.showToast({\n          title: '请上传照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.showLoading({\n        title: '上传中...'\n      });\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(locationRes) {\n          _this9.doUploadPhotos(locationRes.latitude, locationRes.longitude);\n        },\n        fail: function fail() {\n          _this9.doUploadPhotos(null, null);\n        }\n      });\n    },\n    doUploadPhotos: function doUploadPhotos(latitude, longitude) {\n      var _this10 = this;\n      var uploadTasks = this.uploadedPhotos.map(function (path) {\n        return new Promise(function (resolve, reject) {\n          var formData = {\n            folder: 'orders'\n          };\n          if (latitude && longitude) {\n            formData.latitude = latitude;\n            formData.longitude = longitude;\n          }\n          __f__(\"log\", 'formData:', formData, \" at pages/order-detail/order-detail.vue:695\");\n          uni.uploadFile({\n            url: _this10.$baseUrl + 'web/public/upload',\n            filePath: path,\n            name: 'file',\n            formData: formData,\n            success: function success(uploadRes) {\n              var data = JSON.parse(uploadRes.data);\n              if (data.code === 200) {\n                resolve(data.data);\n              } else {\n                reject(new Error(data.msg));\n              }\n            },\n            fail: function fail(err) {\n              reject(err);\n            }\n          });\n        });\n      });\n      Promise.all(uploadTasks).then(function (images) {\n        var api = _this10.photoPopupMode === 'deliver' ? 'confirmDeliver' : 'confirmPickup';\n        var params = {\n          images: images.map(function (img) {\n            return img.imgaddr;\n          }),\n          orderId: _this10.orderId,\n          remark: _this10.photoRemark\n        };\n        if (latitude && longitude) {\n          params.latitude = latitude;\n          params.longitude = longitude;\n        }\n        return _this10.$u.api[api](params);\n      }).then(function (res) {\n        uni.hideLoading();\n        if (res.code === 200) {\n          uni.showToast({\n            title: '提交成功',\n            icon: 'success'\n          });\n          _this10.showPhotoPopup = false;\n          _this10.getOrderDetail();\n        } else {\n          uni.showToast({\n            title: res.msg || '提交失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function (err) {\n        uni.hideLoading();\n        uni.showToast({\n          title: err.message || '上传失败',\n          icon: 'none'\n        });\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbC52dWUiXSwibmFtZXMiOlsiZGF0YSIsIm9yZGVySWQiLCJvcmRlckluZGV4Iiwib3JkZXJEZXRhaWwiLCJzdGF0dXNCYXJIZWlnaHQiLCJ0b3BGaXhlZEhlaWdodCIsInNob3dQaG90b1BvcHVwIiwicGhvdG9Qb3B1cE1vZGUiLCJwaG90b1JlbWFyayIsInVwbG9hZGVkUGhvdG9zIiwic2hvd0NhbmNlbE1vZGFsIiwiY2FuY2VsUmVtYWluIiwic2hvd0dyYWJNb2RhbCIsImN1cnJlbnRMb2NhdGlvbiIsInJvdXRlUG9pbnRzIiwibG9jYXRpb25UaW1lciIsImRpc3RhbmNlIiwiZHVyYXRpb24iLCJzdGF0dXNUZXh0TWFwIiwiZ29vZHNMaXN0IiwicGhvdG9zIiwiY29tcHV0ZWQiLCJmb3JtYXR0ZWRSZW1haW5UaW1lIiwic2hvd01hcFN0YXR1cyIsIm1hcERhdGEiLCJsYXRpdHVkZSIsImxvbmdpdHVkZSIsImNlbnRlciIsInNjYWxlIiwiaWQiLCJpY29uUGF0aCIsIndpZHRoIiwiaGVpZ2h0IiwiYW5jaG9yIiwieCIsInkiLCJzdGFydFBvaW50IiwiZW5kUG9pbnQiLCJtYXJrZXJzIiwicG9seWxpbmUiLCJwb2ludHMiLCJjb2xvciIsImFycm93TGluZSIsImRvdHRlZExpbmUiLCJpbmNsdWRlUG9pbnRzIiwiYm9keVN0eWxlIiwicGFkZGluZ1RvcCIsImZvb3RlckJ1dHRvbnMiLCJ0ZXh0IiwicHJpbWFyeSIsImFjdGlvbiIsInBob3RvUG9wdXBUaXRsZSIsInBob3RvUG9wdXBMYWJlbCIsInBob3RvUG9wdXBTdWJtaXRUZXh0Iiwib25Mb2FkIiwib25VbmxvYWQiLCJjbGVhckludGVydmFsIiwibWV0aG9kcyIsImhhbmRsZUJhY2siLCJ1bmkiLCJkZWx0YSIsImdldE9yZGVyRGV0YWlsIiwiZ2V0Q3VycmVudExvY2F0aW9uIiwiZmV0Y2hMb2NhdGlvbiIsInR5cGUiLCJzdWNjZXNzIiwiZmFpbCIsImdldFJvdXRlUGxhbiIsImZyb20iLCJ0byIsIm1vZGUiLCJwYXRoIiwiY29vcmRpbmF0ZXMiLCJsbmciLCJsYXQiLCJtYWtlU2hvcENhbGwiLCJwaG9uZU51bWJlciIsIm5hdmlnYXRlVG9BZGRyZXNzIiwibmFtZSIsImFkZHJlc3MiLCJ0aXRsZSIsImljb24iLCJwcmV2aWV3SW1hZ2UiLCJjdXJyZW50IiwidXJscyIsImhhbmRsZUZvb3RlckFjdGlvbiIsImhhbmRsZUNhbmNlbE9yZGVyIiwiY29uZmlybUNhbmNlbE9yZGVyIiwiaGFuZGxlR3JhYk9yZGVyIiwiY29uZmlybUdyYWJPcmRlciIsInNldFRpbWVvdXQiLCJjbG9zZVBob3RvUG9wdXAiLCJjaG9vc2VJbWFnZSIsImNvdW50Iiwic291cmNlVHlwZSIsImRlbGV0ZVBob3RvIiwic3VibWl0UGhvdG9Qb3B1cCIsImRvVXBsb2FkUGhvdG9zIiwiZm9sZGVyIiwiZm9ybURhdGEiLCJ1cmwiLCJmaWxlUGF0aCIsInJlc29sdmUiLCJyZWplY3QiLCJQcm9taXNlIiwiaW1hZ2VzIiwicmVtYXJrIiwicGFyYW1zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUE4UkE7QUFBQTtBQUFBO0FBQUEsZUFFQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQUM7TUFDQUM7SUFDQTtFQUNBO0VBQ0FDLDBDQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQUFDO1FBQUFDO01BQUE7TUFDQTtNQUNBO1FBQUFEO1FBQUFDO01BQUE7TUFFQTtNQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQUM7VUFDQUY7VUFDQUM7UUFDQTtRQUNBO1VBQ0FFO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO1VBQ0FBO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO1VBQ0FBO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO01BQ0E7UUFDQUQ7TUFDQTtRQUNBQTtVQUFBRjtVQUFBQztRQUFBO01BQ0E7TUFFQSxlQUNBO1FBQUFHO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxHQUNBO1FBQUFOO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxHQUNBO1FBQUFOO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxFQUNBO01BRUEsb0VBQ0FDLFlBQ0FDLFNBQ0E7TUFFQTtRQUNBVjtRQUNBVztRQUNBQyx5Q0FDQTtVQUFBQztVQUFBQztVQUFBVjtVQUFBVztVQUFBQztRQUFBLEVBQ0EsSUFDQTtVQUFBSDtVQUFBQztVQUFBVjtVQUFBVztVQUFBQztRQUFBLEVBQ0E7UUFDQUM7UUFDQWhCO01BQ0E7TUFDQTtJQUNBO0lBQ0FpQjtNQUNBO01BQ0E7TUFDQTtRQUNBQztRQUNBZDtNQUNBO0lBQ0E7SUFDQWU7TUFDQTtNQUNBO01BRUE7UUFDQTtVQUFBQztVQUFBQztVQUFBQztRQUFBO01BQ0E7TUFFQTtRQUNBLFFBQ0E7VUFBQUY7VUFBQUM7VUFBQUM7UUFBQSxHQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsRUFDQTtNQUNBO01BRUE7UUFDQTtVQUNBO1lBQUFGO1lBQUFDO1lBQUFDO1VBQUE7UUFDQTtRQUNBO01BQ0E7TUFFQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0VBQUEsRUFDQTtFQUNBQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtNQUNBO0lBQ0E7RUFD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QXFCO1VBQUFDO1FBQUE7TUFDQTtJQUNBO0VBQ0E7QUFDQTtBQUFBLDJCIiwiZmlsZSI6IjExMy5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZVwiIHYtaWY9XCJvcmRlckRldGFpbFwiPlxuXHRcdDx2aWV3IHYtaWY9XCIhc2hvd01hcFN0YXR1c1wiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NpbXBsZS1uYXZcIiA6c3R5bGU9XCJ7IHBhZGRpbmdUb3A6IHN0YXR1c0JhckhlaWdodCArICdweCcgfVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2ltcGxlLW5hdi1pbm5lclwiPlxuXHRcdFx0XHQ8dS1pY29uIG5hbWU9XCJhcnJvdy1sZWZ0XCIgY29sb3I9XCIjZmZmZmZmXCIgc2l6ZT1cIjIwXCIgQGNsaWNrPVwiaGFuZGxlQmFja1wiPjwvdS1pY29uPlxuXHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zaW1wbGUtbmF2LXRpdGxlXCI+6K6i5Y2V6K+m5oOFPC90ZXh0PlxuXHRcdFx0XHQ8dS1pY29uIG5hbWU9XCJhcnJvdy1sZWZ0XCIgY29sb3I9XCIjMTA2RUZBXCIgc2l6ZT1cIjIwXCI+PC91LWljb24+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXG5cdFx0PHZpZXcgdi1pZj1cInNob3dNYXBTdGF0dXNcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19maXhlZC10b3BcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX21hcC13cmFwXCI+XG5cdFx0XHRcdDxtYXBcblx0XHRcdFx0XHRpZD1cIm9yZGVyRGV0YWlsTWFwXCJcblx0XHRcdFx0XHRjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19tYXBcIlxuXHRcdFx0XHRcdDpsYXRpdHVkZT1cIm1hcERhdGEuY2VudGVyLmxhdGl0dWRlXCJcblx0XHRcdFx0XHQ6bG9uZ2l0dWRlPVwibWFwRGF0YS5jZW50ZXIubG9uZ2l0dWRlXCJcblx0XHRcdFx0XHQ6bWFya2Vycz1cIm1hcERhdGEubWFya2Vyc1wiXG5cdFx0XHRcdFx0OnBvbHlsaW5lPVwibWFwRGF0YS5wb2x5bGluZVwiXG5cdFx0XHRcdFx0OmluY2x1ZGUtcG9pbnRzPVwibWFwRGF0YS5pbmNsdWRlUG9pbnRzXCJcblx0XHRcdFx0XHQ6c2NhbGU9XCJtYXBEYXRhLnNjYWxlXCJcblx0XHRcdFx0XHQ6ZW5hYmxlLXpvb209XCJ0cnVlXCJcblx0XHRcdFx0XHQ6ZW5hYmxlLXNjcm9sbD1cInRydWVcIlxuXHRcdFx0XHQ+PC9tYXA+XG5cdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N0YXR1cy1iYXJcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3RhdHVzLWxlZnRcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdGF0dXMtZG90XCI+PC92aWV3PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N0YXR1cy10aXRsZVwiPnt7IHN0YXR1c1RleHRNYXBbb3JkZXJEZXRhaWwuc3RhdHVzXSB8fCAn5b6F5Y+W6LSnJyB9fTwvdGV4dD5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdGF0dXMtcmlnaHRcIj5cblx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwib3JkZXJEZXRhaWwuc3RhdHVzID09PSAzXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3RhdHVzLWNhbmNlbFwiIEBjbGljaz1cImhhbmRsZUNhbmNlbE9yZGVyXCI+5Y+W5raI6K6i5Y2VPC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N0YXR1cy1ub1wiIHYtaWY9XCJvcmRlckluZGV4XCI+I3t7IG9yZGVySW5kZXggfX08L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3ZpZXc+XG5cblx0XHQ8c2Nyb2xsLXZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fYm9keVwiIHNjcm9sbC15IDpzdHlsZT1cImJvZHlTdHlsZVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fY29udGVudFwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uIG9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uLS1tYWluXCI+XG5cdFx0XHRcdFx0PHZpZXcgdi1pZj1cInNob3dNYXBTdGF0dXNcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdW1tYXJ5XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdW1tYXJ5LWxlZnRcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9faGVhZC1sZWZ0XCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRlbXBsYXRlIHYtaWY9XCJmb3JtYXR0ZWRSZW1haW5UaW1lXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190aW1lXCI+e3sgZm9ybWF0dGVkUmVtYWluVGltZSB9feWGhTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RpbWUtc3ViXCI+6YCB6L6+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdGVtcGxhdGU+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGltZVwiIHYtZWxzZT7phY3pgIHlt7LotoXml7bvvIzor7flsL3lv6vpgIHovr48L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWdzXCI+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHYtaWY9XCJvcmRlckRldGFpbC5pc1VyZ2VudCA9PT0gMVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19qaXN1ZGFAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugdi1lbHNlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19iaWFvc3VkYUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJvcmRlckRldGFpbC5pc1ZhbHVhYmxlXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGFnLXRleHRcIj7otLXph43nianlk4E8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3VtbWFyeS1yaWdodFwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19wcmljZVwiPsKle3sgb3JkZXJEZXRhaWwucGxhdGZvcm1SZXdhcmRBbW91bnQgPyAob3JkZXJEZXRhaWwuZHJpdmVyRmVlICsgb3JkZXJEZXRhaWwucGxhdGZvcm1SZXdhcmRBbW91bnQpIC8gMTAwIDogKG9yZGVyRGV0YWlsLmRyaXZlckZlZSAvIDEwMCkudG9GaXhlZCgyKSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cIm9yZGVyRGV0YWlsLnBsYXRmb3JtUmV3YXJkQW1vdW50XCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZXh0cmFcIj7lkKvliqDmgKXCpXt7IChvcmRlckRldGFpbC5wbGF0Zm9ybVJld2FyZEFtb3VudCAvIDEwMCkudG9GaXhlZCgyKSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyB2LWVsc2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZG9uZS1zdW1tYXJ5XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kb25lLXN1bW1hcnktbGVmdFwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kb25lLXRpdGxlXCI+e3sgc3RhdHVzVGV4dE1hcFtvcmRlckRldGFpbC5zdGF0dXNdIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWdzIG9yZGVyLWRldGFpbC1wYWdlX190YWdzLS1kb25lXCI+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHYtaWY9XCJvcmRlckRldGFpbC5pc1VyZ2VudCA9PT0gMVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19qaXN1ZGFAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2Ugdi1lbHNlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19iaWFvc3VkYUAyeC5wbmdcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJvcmRlckRldGFpbC5pc1ZhbHVhYmxlXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGFnLXRleHRcIj7otLXph43nianlk4E8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RvbmUtc3VtbWFyeS1yaWdodFwiPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kb25lLXByaWNlLXJvd1wiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3ByaWNlXCI+wqV7eyAob3JkZXJEZXRhaWwuZHJpdmVyRmVlIC8gMTAwKS50b0ZpeGVkKDEpIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJvcmRlckRldGFpbC5pc1VyZ2VudCA9PT0gMVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2V4dHJhXCI+5ZCr5Yqg5oClwqV7eyBvcmRlckRldGFpbC51cmdlbnRBbW91bnQgLyAxMDAgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtbGlzdFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaXRlbVwiPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1sZWZ0XCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtYmFkZ2Ugb3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWJhZGdlLS10YWtlXCI+5Y+WPC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWRpdmlkZXJcIj48L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtbWFpblwiPlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLXRleHRzXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS10aXRsZVwiPnt7IG9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wTmFtZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWRlc2NcIj57eyBvcmRlckRldGFpbC5kZXBvc2l0U2hvcEFkZHJlc3MgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWFjdGlvbnNcIiB2LWlmPVwiIVs3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfYzFhbGxAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiIHYtaWY9XCJbMyw0LDVdLmluY2x1ZGVzKG9yZGVyRGV0YWlsLnN0YXR1cykgJiYgb3JkZXJEZXRhaWwuZGVwb3NpdFNob3BQaG9uZVwiIEBjbGljaz1cIm1ha2VTaG9wQ2FsbCgnZGVwb3NpdCcpXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19kYW9oYW5nQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJuYXZpZ2F0ZVRvQWRkcmVzcygnZGVwb3NpdCcpXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaXRlbSBvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaXRlbS0tZW5kXCIgc3R5bGU9XCJwYWRkaW5nLWJvdHRvbTogMzBycHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTVFNUU1O1wiPlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1sZWZ0XCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtYmFkZ2Ugb3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWJhZGdlLS1zZW5kXCI+6YCBPC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLW1haW5cIj5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS10ZXh0c1wiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtdGl0bGVcIj57eyBvcmRlckRldGFpbC50YWtlTmFtZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWRlc2NcIj57eyBvcmRlckRldGFpbC50YWtlQWRkcmVzcyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtYWN0aW9uc1wiIHYtaWY9XCIhWzcsOTldLmluY2x1ZGVzKG9yZGVyRGV0YWlsLnN0YXR1cylcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jMWFsbEAyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCIgdi1pZj1cIls0LDVdLmluY2x1ZGVzKG9yZGVyRGV0YWlsLnN0YXR1cykgJiYgb3JkZXJEZXRhaWwudGFrZUNvbnRhY3RQaG9uZVwiIEBjbGljaz1cIm1ha2VTaG9wQ2FsbCgndGFrZScpXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1pY29uXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19kYW9oYW5nQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJuYXZpZ2F0ZVRvQWRkcmVzcygndGFrZScpXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyB2LWlmPVwib3JkZXJEZXRhaWwuc3RhdHVzID09PSA0ICYmIG9yZGVyRGV0YWlsLnRha2VTaG9wSWRcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19xcmNvZGUtd3JhcFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcXJjb2RlLWJveFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcXJjb2RlLWltYWdlXCIgOnNyYz1cIidodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjAweDIwMCZkYXRhPScgKyBvcmRlckRldGFpbC5kcml2ZXJWZXJpZnlDb2RlXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19xcmNvZGUtdmFsdWVcIj57eyBvcmRlckRldGFpbC5kcml2ZXJWZXJpZnlDb2RlIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcXJjb2RlLWxhYmVsXCI+5Y+W6LSn56CBPC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb25cIiBzdHlsZT1cIm1hcmdpbi10b3A6IDMwcnB4OyBwYWRkaW5nOiAwIDMwcnB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1wiPlxuXHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwid2lkdGg6IDEwMCU7IHBhZGRpbmctYm90dG9tOiAzMHJweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNUU1RTU7XCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uLXRpdGxlXCI+5a6i5oi35L+h5oGvPC90ZXh0PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm93LWluZm9cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm93LXRleHRcIj57eyBvcmRlckRldGFpbC5jdXN0b21lckluZm8gfHwgJycgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwhLS0gPGltYWdlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3Jvdy1pY29uXCIgdi1pZj1cIlszLDRdLmluY2x1ZGVzKG9yZGVyRGV0YWlsLnN0YXR1cylcIiBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2NhbGxAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiIEBjbGljaz1cIm1ha2VQaG9uZUNhbGxcIj48L2ltYWdlPiAtLT5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJvcmRlckRldGFpbC5jb21tZW50U3RhdHVzID09PSAxXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fY29tbWVudC1jYXJkXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtdGl0bGVcIj7lrqLmiLflt7Lor4Tku7fvvJo8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtc2NvcmVcIj5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19jb21tZW50LXN0YXJcIj7imIU8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fY29tbWVudC1zY29yZS10ZXh0XCI+NC41PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtY29udGVudFwiPnt7IG9yZGVyRGV0YWlsLmNvbW1lbnRDb250ZW50IHx8ICcnIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fY29tbWVudC1pbWFnZVwiIHNyYz1cIi9zdGF0aWMvbG9nby5wbmdcIiBtb2RlPVwiYXNwZWN0RmlsbFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvblwiIHN0eWxlPVwibWFyZ2luLXRvcDogMzBycHg7IHBhZGRpbmc6IDAgMzBycHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XCI+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbi10aXRsZVwiPueJqeWTgea4heWNle+8iOWFsXt7IGdvb2RzTGlzdC5sZW5ndGggfX3ku7bvvIk8L3RleHQ+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZ29vZHMtbGlzdFwiIHN0eWxlPVwid2lkdGg6IDEwMCU7IHBhZGRpbmctYm90dG9tOiAzMHJweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNUU1RTU7XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWZvcj1cIml0ZW0gaW4gZ29vZHNMaXN0XCIgOmtleT1cIml0ZW0ubmFtZVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2dvb2RzLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZ29vZHMtbmFtZVwiIDpzdHlsZT1cIml0ZW0uaXNPdmVyc2l6ZWQgPT09IDEgPyAnY29sb3I6ICNGRjAwMjA7JyA6ICcnXCI+e3sgaXRlbS5uYW1lIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19nb29kcy1jb3VudFwiPnh7eyBpdGVtLnF1YW50aXR5IH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb25cIiBzdHlsZT1cIm1hcmdpbi10b3A6IDMwcnB4OyBwYWRkaW5nOiAwIDMwcnB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb24tdGl0bGVcIj7nianlk4Hkv6Hmga88L3RleHQ+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZ29vZHMtY2F0ZWdvcnlcIj57eyBvcmRlckRldGFpbC5nb29kVHlwZU5hbWUgfHwgJycgfX08L3RleHQ+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcGhvdG9zXCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19waG90b1wiIHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBwaG90b3NcIiA6a2V5PVwiaW5kZXhcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIDpzcmM9XCJpdGVtXCIgbW9kZT1cImhlaWdodEZpeFwiIEBjbGljaz1cInByZXZpZXdJbWFnZShpdGVtKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAzMHJweDsgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcIj48L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbiBvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbi0tbGFzdFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMzBycHg7IHBhZGRpbmc6IDAgMzBycHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XCI+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbi10aXRsZVwiPuiuouWNleS/oeaBrzwvdGV4dD5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtbGlzdFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+6K6i5Y2V57yW5Y+377yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5jb2RlIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJvcmRlckRldGFpbC5jcmVhdGVUaW1lXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+5LiL5Y2V5pe26Ze077yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5jcmVhdGVUaW1lIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJbMyw0LDUsNiw3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+5o6l5Y2V5pe26Ze077yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5hY2NlcHRUaW1lIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJbMyw0LDUsNiw3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+6K6i5Y2V5aSH5rOo77yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5yZW1hcmsgfHwgJy0nIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1pZj1cIls0LDUsNiw3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+5Y+W6LSn5pe26Ze077yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5kcml2ZXJUYWtlVGltZSB8fCAnLScgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiWzUsNiw3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxhYmVsXCI+5a6M5oiQ5pe26Ze077yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtdmFsdWVcIj57eyBvcmRlckRldGFpbC5maW5pc2hUaW1lIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJvcmRlckRldGFpbC5pc0V2YWx1YXRlZCA9PT0gMVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuivhOS7t+aXtumXtO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuY29tbWVudFRpbWUgfHwgJy0nIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvc2Nyb2xsLXZpZXc+XG5cblx0XHQ8dmlldyB2LWlmPVwiZm9vdGVyQnV0dG9ucy5sZW5ndGhcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19mb290ZXJcIj5cblx0XHRcdDx2aWV3Pjwvdmlldz5cblx0XHRcdDx2aWV3IHN0eWxlPVwiZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAyMHJweDtcIj5cblx0XHRcdFx0PGJ1dHRvblxuXHRcdFx0XHRcdHYtZm9yPVwiYnV0dG9uIGluIGZvb3RlckJ1dHRvbnNcIlxuXHRcdFx0XHRcdDprZXk9XCJidXR0b24udGV4dFwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZm9vdGVyLWJ0blwiXG5cdFx0XHRcdFx0OmNsYXNzPVwiYnV0dG9uLnByaW1hcnkgPyAnb3JkZXItZGV0YWlsLXBhZ2VfX2Zvb3Rlci1idG4tLXByaW1hcnknIDogJ29yZGVyLWRldGFpbC1wYWdlX19mb290ZXItYnRuLS1naG9zdCdcIlxuXHRcdFx0XHRcdGhvdmVyLWNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2Zvb3Rlci1idG4tLWhvdmVyXCJcblx0XHRcdFx0XHRAY2xpY2s9XCJoYW5kbGVGb290ZXJBY3Rpb24oYnV0dG9uKVwiXG5cdFx0XHRcdD5cblx0XHRcdFx0XHR7eyBidXR0b24udGV4dCB9fVxuXHRcdFx0XHQ8L2J1dHRvbj5cblx0XHRcdDwvdmlldz5cblx0XHRcdFxuXHRcdDwvdmlldz5cblxuXHRcdDx1LW1vZGFsXG5cdFx0XHQ6c2hvdz1cInNob3dDYW5jZWxNb2RhbFwiXG5cdFx0XHRzaG93Q2FuY2VsQnV0dG9uXG5cdFx0XHRAY2FuY2VsPVwic2hvd0NhbmNlbE1vZGFsID0gZmFsc2VcIlxuXHRcdFx0Y2FuY2VsQ29sb3I9XCIjNjY2NjY2XCJcblx0XHRcdGNvbmZpcm1Db2xvcj1cIiMwMDU1RkZcIlxuXHRcdFx0dGl0bGU9XCLlj5bmtojorqLljZXnoa7orqRcIlxuXHRcdFx0QGNvbmZpcm09XCJjb25maXJtQ2FuY2VsT3JkZXJcIj5cblx0XHRcdDx2aWV3IHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjMzMzMzMzO2ZvbnQtc2l6ZTogMjhycHg7Zm9udC13ZWlnaHQ6IDQwMDtcIj5cblx0XHRcdFx05oKo5LuK5pel6L+Y5Y+v5Y+W5raIIHt7IGNhbmNlbFJlbWFpbiB9fSDmrKHorqLljZXvvIzmrKHmlbDnlKjlsL3lkI7ku4rml6XlsIbml6Dms5XmjqXljZXvvIzmmK/lkKbnoa7orqTlj5bmtojvvJ9cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtbW9kYWw+XG5cblx0XHQ8dS1tb2RhbFxuXHRcdFx0OnNob3c9XCJzaG93R3JhYk1vZGFsXCJcblx0XHRcdHNob3dDYW5jZWxCdXR0b25cblx0XHRcdEBjYW5jZWw9XCJzaG93R3JhYk1vZGFsID0gZmFsc2VcIlxuXHRcdFx0Y2FuY2VsQ29sb3I9XCIjNjY2NjY2XCJcblx0XHRcdGNvbmZpcm1Db2xvcj1cIiMwMDU1RkZcIlxuXHRcdFx0dGl0bGU9XCLmuKnppqjmj5DnpLpcIlxuXHRcdFx0QGNvbmZpcm09XCJjb25maXJtR3JhYk9yZGVyXCI+XG5cdFx0XHQ8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzMzMzMzMztmb250LXNpemU6IDI4cnB4O2ZvbnQtd2VpZ2h0OiA0MDA7XCI+XG5cdFx0XHRcdHt7IG9yZGVyRGV0YWlsICYmIG9yZGVyRGV0YWlsLmhhc092ZXJzaXplZCA9PT0gMSA/ICfmnKzorqLljZXmnInnibnlpKfku7blsLrlr7jooYzmnY7vvIzor7fnoa7orqTmmK/lkKbnu6fnu63miqLljZXvvJ8nIDogJ+aYr+WQpuehruiupOaOpeWNle+8nycgfX1cblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtbW9kYWw+XG5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3dQaG90b1BvcHVwXCIgcm91bmQ9XCIyMFwiIG1vZGU9XCJib3R0b21cIiBAY2xvc2U9XCJjbG9zZVBob3RvUG9wdXBcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9faGVhZGVyXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fcGxhY2Vob2xkZXJcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fdGl0bGVcIj57eyBwaG90b1BvcHVwVGl0bGUgfX08L3RleHQ+XG5cdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tcG9wdXBfX2Nsb3NlXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jbG9zZTJAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiIEBjbGljaz1cImNsb3NlUGhvdG9Qb3B1cFwiPjwvaW1hZ2U+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwX19zZWN0aW9uXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fbGFiZWwtcm93XCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19sYWJlbFwiPnt7IHBob3RvUG9wdXBMYWJlbCB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3JlcXVpcmVkXCI+KjwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX2hpbnRcIj7mnIDlpJoz5byg54Wn54mHPC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3Bob3Rvc1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1mb3I9XCIocGhvdG8sIGluZGV4KSBpbiB1cGxvYWRlZFBob3Rvc1wiIDprZXk9XCJpbmRleFwiIGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctY2FyZFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1pbWFnZVwiIDpzcmM9XCJwaG90b1wiIG1vZGU9XCJhc3BlY3RGaWxsXCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1tYXNrXCIgQGNsaWNrPVwiZGVsZXRlUGhvdG8oaW5kZXgpXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fcHJldmlldy1kZWxldGVcIj7liKDpmaQ8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdFx0PHZpZXcgdi1pZj1cInVwbG9hZGVkUGhvdG9zLmxlbmd0aCA8IDNcIiBjbGFzcz1cInBob3RvLXBvcHVwX191cGxvYWQtY2FyZFwiIEBjbGljaz1cImNob29zZUltYWdlXCI+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cInBob3RvLXBvcHVwX191cGxvYWQtaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvYnRuX3VwbG9hZDJAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fc2VjdGlvbiBwaG90by1wb3B1cF9fc2VjdGlvbi0tcmVtYXJrXCI+XG5cdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fcmVtYXJrLXRpdGxlXCI+5aSH5rOo5L+h5oGvPC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0YXJlYSB2LW1vZGVsPVwicGhvdG9SZW1hcmtcIiBjbGFzcz1cInBob3RvLXBvcHVwX190ZXh0YXJlYVwiIG1heGxlbmd0aD1cIjIwMFwiIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWlXCIgcGxhY2Vob2xkZXItc3R5bGU9XCJjb2xvcjogI2M3Y2JkMztcIiAvPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cInBob3RvLXBvcHVwX19zdWJtaXRcIiBob3Zlci1jbGFzcz1cInBob3RvLXBvcHVwX19zdWJtaXQtLWhvdmVyXCIgQGNsaWNrPVwic3VibWl0UGhvdG9Qb3B1cFwiPnt7IHBob3RvUG9wdXBTdWJtaXRUZXh0IH19PC9idXR0b24+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LXBvcHVwPlxuXHQ8L3ZpZXc+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRvcmRlcklkOiBudWxsLFxuXHRcdFx0XHRvcmRlckluZGV4OiBudWxsLFxuXHRcdFx0XHRvcmRlckRldGFpbDogbnVsbCxcblx0XHRcdFx0c3RhdHVzQmFySGVpZ2h0OiAwLFxuXHRcdFx0XHR0b3BGaXhlZEhlaWdodDogMCxcblx0XHRcdFx0c2hvd1Bob3RvUG9wdXA6IGZhbHNlLFxuXHRcdFx0XHRwaG90b1BvcHVwTW9kZTogJycsXG5cdFx0XHRcdHBob3RvUmVtYXJrOiAnJyxcblx0XHRcdFx0dXBsb2FkZWRQaG90b3M6IFtdLFxuXHRcdFx0XHRzaG93Q2FuY2VsTW9kYWw6IGZhbHNlLFxuXHRcdFx0XHRjYW5jZWxSZW1haW46IDAsXG5cdFx0XHRcdHNob3dHcmFiTW9kYWw6IGZhbHNlLFxuXHRcdFx0XHRjdXJyZW50TG9jYXRpb246IG51bGwsXG5cdFx0XHRcdHJvdXRlUG9pbnRzOiBbXSxcblx0XHRcdFx0bG9jYXRpb25UaW1lcjogbnVsbCxcblx0XHRcdFx0ZGlzdGFuY2U6IDAsXG5cdFx0XHRcdGR1cmF0aW9uOiAwLFxuXHRcdFx0XHRzdGF0dXNUZXh0TWFwOiB7XG5cdFx0XHRcdFx0MjogJ+W+heaOpeWNlScsXG5cdFx0XHRcdFx0MzogJ+W+heWPlui0pycsXG5cdFx0XHRcdFx0NDogJ+mFjemAgeS4rScsXG5cdFx0XHRcdFx0NTogJ+W3sumAgei+vicsXG5cdFx0XHRcdFx0NzogJ+W3suWujOaIkCcsXG5cdFx0XHRcdFx0OTk6ICflt7Llj5bmtognXG5cdFx0XHRcdH0sXG5cdFx0XHRcdGdvb2RzTGlzdDogW10sXG5cdFx0XHRcdHBob3RvczogW11cblx0XHRcdH1cblx0XHR9LFxuXHRcdGNvbXB1dGVkOiB7XG5cdFx0XHQuLi5tYXBTdGF0ZShbJ3VzZXJJbmZvJ10pLFxuXHRcdFx0Zm9ybWF0dGVkUmVtYWluVGltZSgpIHtcblx0XHRcdFx0Y29uc3QgbWludXRlcyA9IHRoaXMub3JkZXJEZXRhaWwucmVtYWluTWludXRlc1xuXHRcdFx0XHRpZiAoIW1pbnV0ZXMpIHJldHVybiBudWxsXG5cdFx0XHRcdGlmIChtaW51dGVzID49IDYwKSB7XG5cdFx0XHRcdFx0Y29uc3QgaG91cnMgPSBNYXRoLmZsb29yKG1pbnV0ZXMgLyA2MClcblx0XHRcdFx0XHRjb25zdCBtaW5zID0gbWludXRlcyAlIDYwXG5cdFx0XHRcdFx0cmV0dXJuIG1pbnMgPiAwID8gYCR7aG91cnN95bCP5pe2JHttaW5zfeWIhumSn2AgOiBgJHtob3Vyc33lsI/ml7ZgXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIGAke21pbnV0ZXN95YiG6ZKfYFxuXHRcdFx0fSxcblx0XHRcdHNob3dNYXBTdGF0dXMoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gMyB8fCB0aGlzLm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gNFxuXHRcdFx0fSxcblx0XHRcdG1hcERhdGEoKSB7XG5cdFx0XHRcdGNvbnN0IHN0YXJ0UG9pbnQgPSB0aGlzLmN1cnJlbnRMb2NhdGlvbiB8fCB7IGxhdGl0dWRlOiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTGF0LCBsb25naXR1ZGU6IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMbmcgfVxuXHRcdFx0XHRjb25zdCBoYXNFbmRQb2ludCA9IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMYXQgJiYgdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZ1xuXHRcdFx0XHRjb25zdCBlbmRQb2ludCA9IHsgbGF0aXR1ZGU6IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMbmcsIGxvbmdpdHVkZTogdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxhdCB9XG5cblx0XHRcdFx0bGV0IGNlbnRlclxuXHRcdFx0XHRsZXQgc2NhbGUgPSAxMlxuXHRcdFx0XHRpZiAodGhpcy5jdXJyZW50TG9jYXRpb24gJiYgaGFzRW5kUG9pbnQpIHtcblx0XHRcdFx0XHRjb25zdCBsYXRTcGFuID0gTWF0aC5hYnModGhpcy5jdXJyZW50TG9jYXRpb24ubGF0aXR1ZGUgLSBlbmRQb2ludC5sYXRpdHVkZSlcblx0XHRcdFx0XHRjb25zdCBsbmdTcGFuID0gTWF0aC5hYnModGhpcy5jdXJyZW50TG9jYXRpb24ubG9uZ2l0dWRlIC0gZW5kUG9pbnQubG9uZ2l0dWRlKVxuXHRcdFx0XHRcdGNvbnN0IG1heFNwYW4gPSBNYXRoLm1heChsYXRTcGFuLCBsbmdTcGFuKVxuXHRcdFx0XHRcdGNlbnRlciA9IHtcblx0XHRcdFx0XHRcdGxhdGl0dWRlOiAodGhpcy5jdXJyZW50TG9jYXRpb24ubGF0aXR1ZGUgKyBlbmRQb2ludC5sYXRpdHVkZSkgLyAyLFxuXHRcdFx0XHRcdFx0bG9uZ2l0dWRlOiAodGhpcy5jdXJyZW50TG9jYXRpb24ubG9uZ2l0dWRlICsgZW5kUG9pbnQubG9uZ2l0dWRlKSAvIDJcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aWYgKG1heFNwYW4gPiAwLjMpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gOVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAobWF4U3BhbiA+IDAuMTUpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTBcblx0XHRcdFx0XHR9IGVsc2UgaWYgKG1heFNwYW4gPiAwLjA4KSB7XG5cdFx0XHRcdFx0XHRzY2FsZSA9IDExXG5cdFx0XHRcdFx0fSBlbHNlIGlmIChtYXhTcGFuID4gMC4wNCkge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSAxMlxuXHRcdFx0XHRcdH0gZWxzZSBpZiAobWF4U3BhbiA+IDAuMDIpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTNcblx0XHRcdFx0XHR9IGVsc2UgaWYgKG1heFNwYW4gPiAwLjAxKSB7XG5cdFx0XHRcdFx0XHRzY2FsZSA9IDE0XG5cdFx0XHRcdFx0fSBlbHNlIGlmIChtYXhTcGFuID4gMC4wMDUpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTVcblx0XHRcdFx0XHR9IGVsc2UgaWYgKG1heFNwYW4gPiAwLjAwMikge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSAxNlxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRzY2FsZSA9IDE3XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2UgaWYgKHRoaXMuY3VycmVudExvY2F0aW9uKSB7XG5cdFx0XHRcdFx0Y2VudGVyID0gdGhpcy5jdXJyZW50TG9jYXRpb25cblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRjZW50ZXIgPSB7IGxhdGl0dWRlOiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTGF0LCBsb25naXR1ZGU6IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMbmcgfVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgbWFya2VycyA9IFtcblx0XHRcdFx0XHR7IGlkOiAxLCBsYXRpdHVkZTogc3RhcnRQb2ludC5sYXRpdHVkZSwgbG9uZ2l0dWRlOiBzdGFydFBvaW50LmxvbmdpdHVkZSwgaWNvblBhdGg6ICcvc3RhdGljL2ltYWdlL3N0YXJ0LnBuZycsIHdpZHRoOiAzMiwgaGVpZ2h0OiAzOCwgYW5jaG9yOiB7IHg6IDAuNSwgeTogMSB9IH0sXG5cdFx0XHRcdFx0eyBpZDogMiwgbGF0aXR1ZGU6IGVuZFBvaW50LmxhdGl0dWRlLCBsb25naXR1ZGU6IGVuZFBvaW50LmxvbmdpdHVkZSwgaWNvblBhdGg6ICcvc3RhdGljL2ltYWdlL2VuZC5wbmcnLCB3aWR0aDogMzIsIGhlaWdodDogMzgsIGFuY2hvcjogeyB4OiAwLjUsIHk6IDEgfSB9LFxuXHRcdFx0XHRcdHsgaWQ6IDMsIGxhdGl0dWRlOiBzdGFydFBvaW50LmxhdGl0dWRlLCBsb25naXR1ZGU6IHN0YXJ0UG9pbnQubG9uZ2l0dWRlLCBpY29uUGF0aDogJy9zdGF0aWMvaW1hZ2UvZGl6aGkucG5nJywgd2lkdGg6IDEyLCBoZWlnaHQ6IDEyLCBhbmNob3I6IHsgeDogMC41LCB5OiAwLjUgfSB9XG5cdFx0XHRcdF1cblxuXHRcdFx0XHRjb25zdCByb3V0ZVBvaW50cyA9IHRoaXMucm91dGVQb2ludHMubGVuZ3RoID4gMCA/IHRoaXMucm91dGVQb2ludHMgOiBbXG5cdFx0XHRcdFx0c3RhcnRQb2ludCxcblx0XHRcdFx0XHRlbmRQb2ludFxuXHRcdFx0XHRdXG5cblx0XHRcdFx0Y29uc3QgcmVzdWx0ID0ge1xuXHRcdFx0XHRcdGNlbnRlcixcblx0XHRcdFx0XHRtYXJrZXJzLFxuXHRcdFx0XHRcdHBvbHlsaW5lOiB0aGlzLnJvdXRlUG9pbnRzLmxlbmd0aCA+IDAgPyBbXG5cdFx0XHRcdFx0XHR7IHBvaW50czogcm91dGVQb2ludHMsIGNvbG9yOiAnIzA1YmU3NicsIHdpZHRoOiAyNSwgYXJyb3dMaW5lOiB0cnVlLCBkb3R0ZWRMaW5lOiBmYWxzZSB9XG5cdFx0XHRcdFx0XSA6IFtcblx0XHRcdFx0XHRcdHsgcG9pbnRzOiByb3V0ZVBvaW50cywgY29sb3I6ICcjMDViZTc2Jywgd2lkdGg6IDI1LCBhcnJvd0xpbmU6IHRydWUsIGRvdHRlZExpbmU6IHRydWUgfVxuXHRcdFx0XHRcdF0sXG5cdFx0XHRcdFx0aW5jbHVkZVBvaW50czogW3N0YXJ0UG9pbnQsIGVuZFBvaW50XSxcblx0XHRcdFx0XHRzY2FsZVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiByZXN1bHRcblx0XHRcdH0sXG5cdFx0XHRib2R5U3R5bGUoKSB7XG5cdFx0XHRcdGNvbnN0IGZvb3RlckhlaWdodCA9IHVuaS51cHgycHgoMTE2KVxuXHRcdFx0XHRjb25zdCBzaW1wbGVOYXZIZWlnaHQgPSB0aGlzLnN0YXR1c0JhckhlaWdodCArIHVuaS51cHgycHgoODgpXG5cdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0cGFkZGluZ1RvcDogKHRoaXMuc2hvd01hcFN0YXR1cyA/IHRoaXMudG9wRml4ZWRIZWlnaHQgOiBzaW1wbGVOYXZIZWlnaHQpICsgJ3B4Jyxcblx0XHRcdFx0XHRoZWlnaHQ6IGBjYWxjKDEwMHZoIC0gJHt0aGlzLmZvb3RlckJ1dHRvbnMubGVuZ3RoID8gZm9vdGVySGVpZ2h0ICsgMjAgOiAyMH1weClgXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRmb290ZXJCdXR0b25zKCkge1xuXHRcdFx0XHRjb25zdCBzdGF0dXMgPSB0aGlzLm9yZGVyRGV0YWlsLnN0YXR1c1xuXHRcdFx0XHRjb25zdCB0YWtlU2hvcElkID0gdGhpcy5vcmRlckRldGFpbC50YWtlU2hvcElkXG5cblx0XHRcdFx0aWYgKHN0YXR1cyA9PT0gMikge1xuXHRcdFx0XHRcdHJldHVybiBbeyB0ZXh0OiAn56uL5Y2z5oqi5Y2VJywgcHJpbWFyeTogdHJ1ZSwgYWN0aW9uOiAnZ3JhYicgfV1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGlmIChzdGF0dXMgPT09IDMpIHtcblx0XHRcdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5Y+W5raI6K6i5Y2VJywgcHJpbWFyeTogZmFsc2UsIGFjdGlvbjogJ2NhbmNlbCcgfSxcblx0XHRcdFx0XHRcdHsgdGV4dDogJ+aLjeeFp+WPlui0pycsIHByaW1hcnk6IHRydWUsIGFjdGlvbjogJ3BpY2t1cCcgfVxuXHRcdFx0XHRcdF1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGlmIChzdGF0dXMgPT09IDQpIHtcblx0XHRcdFx0XHRpZiAoIXRha2VTaG9wSWQpIHtcblx0XHRcdFx0XHRcdHJldHVybiBbeyB0ZXh0OiAn5ouN54Wn6YCB6L6+JywgcHJpbWFyeTogdHJ1ZSwgYWN0aW9uOiAnZGVsaXZlcicgfV1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIFtdXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4gW11cblx0XHRcdH0sXG5cdFx0XHRwaG90b1BvcHVwVGl0bGUoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnBob3RvUG9wdXBNb2RlID09PSAnZGVsaXZlcicgPyAn5ouN54Wn6YCB6L6+JyA6ICfmi43nhaflj5botKcnXG5cdFx0XHR9LFxuXHRcdFx0cGhvdG9Qb3B1cExhYmVsKCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ+aLjeaRhOmAgei+vueFp+eJhycgOiAn5ouN5pGE5Y+W6LSn54Wn54mHJ1xuXHRcdFx0fSxcblx0XHRcdHBob3RvUG9wdXBTdWJtaXRUZXh0KCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ+ehruiupOmAgei+vicgOiAn56Gu6K6k5Y+W6LSnJ1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0b25Mb2FkKG9wdGlvbnMpIHtcblx0XHRcdGNvbnN0IHBhZ2VzID0gZ2V0Q3VycmVudFBhZ2VzKClcblx0XHRcdGNvbnN0IGN1cnJlbnRQYWdlID0gcGFnZXNbcGFnZXMubGVuZ3RoIC0gMV1cblx0XHRcdGNvbnN0IHBhZ2VPcHRpb25zID0gY3VycmVudFBhZ2UgJiYgY3VycmVudFBhZ2Uub3B0aW9ucyA/IGN1cnJlbnRQYWdlLm9wdGlvbnMgOiB7fVxuXHRcdFx0Y29uc3Qgc3lzdGVtSW5mbyA9IHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpXG5cdFx0XHR0aGlzLnN0YXR1c0JhckhlaWdodCA9IHN5c3RlbUluZm8uc3RhdHVzQmFySGVpZ2h0IHx8IDBcblx0XHRcdHRoaXMub3JkZXJJZCA9IG9wdGlvbnMuaWQgfHwgcGFnZU9wdGlvbnMuaWRcblx0XHRcdHRoaXMub3JkZXJJbmRleCA9IG9wdGlvbnMuaW5kZXhcblx0XHRcdHRoaXMudG9wRml4ZWRIZWlnaHQgPSB1bmkudXB4MnB4KDUwMCArIDkyKVxuXHRcdFx0aWYgKHRoaXMub3JkZXJJZCkge1xuXHRcdFx0XHR0aGlzLmdldE9yZGVyRGV0YWlsKClcblx0XHRcdH1cblx0XHR9LFxuXHRcdG9uVW5sb2FkKCkge1xuXHRcdFx0aWYgKHRoaXMubG9jYXRpb25UaW1lcikge1xuXHRcdFx0XHRjbGVhckludGVydmFsKHRoaXMubG9jYXRpb25UaW1lcilcblx0XHRcdFx0dGhpcy5sb2NhdGlvblRpbWVyID0gbnVsbFxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0aGFuZGxlQmFjaygpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlQmFjayh7IGRlbHRhOiAxIH0pO1xuXHRcdFx0fSxcblx0XHRcdGdldE9yZGVyRGV0YWlsKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5vcmRlckRldGFpbCh7IG9yZGVySWQ6IHRoaXMub3JkZXJJZCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdvcmRlckRldGFpbDonLCByZXMuZGF0YSlcblx0XHRcdFx0XHRcdHRoaXMub3JkZXJEZXRhaWwgPSByZXMuZGF0YVxuXHRcdFx0XHRcdFx0dGhpcy5nb29kc0xpc3QgPSByZXMuZGF0YS5pdGVtcyB8fCBbXVxuXHRcdFx0XHRcdFx0dGhpcy5waG90b3MgPSByZXMuZGF0YS5vcmRlckltYWdlcyB8fCBbXVxuXHRcdFx0XHRcdFx0aWYgKCh0aGlzLm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gMyB8fCB0aGlzLm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gNCkgJiYgdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxhdCAmJiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTG5nKSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuZ2V0Q3VycmVudExvY2F0aW9uKClcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdTa2lwcGluZyBnZXRDdXJyZW50TG9jYXRpb24gLSBzdGF0dXMgb3IgY29vcmRpbmF0ZXMgbm90IGF2YWlsYWJsZScpXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0Q3VycmVudExvY2F0aW9uKCkge1xuXHRcdFx0XHR0aGlzLmZldGNoTG9jYXRpb24oKVxuXHRcdFx0XHR0aGlzLmxvY2F0aW9uVGltZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5mZXRjaExvY2F0aW9uKClcblx0XHRcdFx0fSwgNjAwMDApXG5cdFx0XHR9LFxuXG5cdFx0XHRmZXRjaExvY2F0aW9uKCkge1xuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xuXHRcdFx0XHRcdFx0dGhpcy5jdXJyZW50TG9jYXRpb24gPSB7XG5cdFx0XHRcdFx0XHRcdGxhdGl0dWRlOiByZXMubGF0aXR1ZGUsXG5cdFx0XHRcdFx0XHRcdGxvbmdpdHVkZTogcmVzLmxvbmdpdHVkZVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRSb3V0ZVBsYW4oKVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iOt+WPluS9jee9ruWksei0pScsIGVycilcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRSb3V0ZVBsYW4oKSB7XG5cdFx0XHRcdGlmICghdGhpcy5jdXJyZW50TG9jYXRpb24gfHwgIXRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMYXQgfHwgIXRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMbmcpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnU2tpcHBpbmcgcm91dGUgcGxhbiAtIG1pc3NpbmcgZGF0YScpXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29uc3QgZnJvbSA9IGAke3RoaXMuY3VycmVudExvY2F0aW9uLmxhdGl0dWRlfSwke3RoaXMuY3VycmVudExvY2F0aW9uLmxvbmdpdHVkZX1gXG5cdFx0XHRcdGNvbnN0IHRvID0gYCR7dGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZ30sJHt0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTGF0fWBcblx0XHRcdFx0dGhpcy4kdS5hcGkuZGlyZWN0aW9uSW5mbyh7XG5cdFx0XHRcdFx0ZnJvbSxcblx0XHRcdFx0XHR0byxcblx0XHRcdFx0XHRtb2RlOiB0aGlzLnVzZXJJbmZvLmRyaXZlclR5cGVcblx0XHRcdFx0fSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdwYXRocyBzdWNjZXNzOicsIHJlcy5kYXRhLnJvdXRlLnBhdGhzWzBdKVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRjb25zdCBwYXRoID0gcmVzLmRhdGEucm91dGUucGF0aHNbMF1cblx0XHRcdFx0XHRcdHRoaXMuZGlzdGFuY2UgPSBwYXRoLmRpc3RhbmNlXG5cdFx0XHRcdFx0XHR0aGlzLmR1cmF0aW9uID0gcGF0aC5kdXJhdGlvblxuXHRcdFx0XHRcdFx0Y29uc3QgcG9pbnRzID0gW11cblx0XHRcdFx0XHRcdHBhdGguc3RlcHMuZm9yRWFjaChzdGVwID0+IHtcblx0XHRcdFx0XHRcdFx0Y29uc3QgcG9seWxpbmVTdHIgPSBzdGVwLnBvbHlsaW5lXG5cdFx0XHRcdFx0XHRcdGNvbnN0IGNvb3JkaW5hdGVzID0gcG9seWxpbmVTdHIuc3BsaXQoJzsnKVxuXHRcdFx0XHRcdFx0XHRjb29yZGluYXRlcy5mb3JFYWNoKGNvb3JkID0+IHtcblx0XHRcdFx0XHRcdFx0XHRjb25zdCBbbG5nLCBsYXRdID0gY29vcmQuc3BsaXQoJywnKVxuXHRcdFx0XHRcdFx0XHRcdHBvaW50cy5wdXNoKHtcblx0XHRcdFx0XHRcdFx0XHRcdGxhdGl0dWRlOiBwYXJzZUZsb2F0KGxhdCksXG5cdFx0XHRcdFx0XHRcdFx0XHRsb25naXR1ZGU6IHBhcnNlRmxvYXQobG5nKVxuXHRcdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdFx0dGhpcy5yb3V0ZVBvaW50cyA9IHBvaW50c1xuXHRcdFx0XHRcdFx0dGhpcy4kZm9yY2VVcGRhdGUoKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdC8vIG1ha2VQaG9uZUNhbGwoKSB7XG5cdFx0XHQvLyBcdGlmICh0aGlzLm9yZGVyRGV0YWlsLmNvbnRhY3RQaG9uZSkge1xuXHRcdFx0Ly8gXHRcdHVuaS5tYWtlUGhvbmVDYWxsKHtcblx0XHRcdC8vIFx0XHRcdHBob25lTnVtYmVyOiB0aGlzLm9yZGVyRGV0YWlsLmNvbnRhY3RQaG9uZVxuXHRcdFx0Ly8gXHRcdH0pXG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH0sXG5cblx0XHRcdG1ha2VTaG9wQ2FsbCh0eXBlKSB7XG5cdFx0XHRcdGNvbnN0IHBob25lID0gdHlwZSA9PT0gJ3Rha2UnID8gdGhpcy5vcmRlckRldGFpbC50YWtlQ29udGFjdFBob25lIDogdGhpcy5vcmRlckRldGFpbC5kZXBvc2l0U2hvcFBob25lXG5cdFx0XHRcdGlmIChwaG9uZSkge1xuXHRcdFx0XHRcdHVuaS5tYWtlUGhvbmVDYWxsKHtcblx0XHRcdFx0XHRcdHBob25lTnVtYmVyOiBwaG9uZVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdG5hdmlnYXRlVG9BZGRyZXNzKHR5cGUpIHtcblx0XHRcdFx0bGV0IGxhdGl0dWRlLCBsb25naXR1ZGUsIG5hbWUsIGFkZHJlc3Ncblx0XHRcdFx0aWYgKHR5cGUgPT09ICdkZXBvc2l0Jykge1xuXHRcdFx0XHRcdGxhdGl0dWRlID0gdGhpcy5vcmRlckRldGFpbC5kZXBvc2l0U2hvcExhdFxuXHRcdFx0XHRcdGxvbmdpdHVkZSA9IHRoaXMub3JkZXJEZXRhaWwuZGVwb3NpdFNob3BMbmdcblx0XHRcdFx0XHRuYW1lID0gdGhpcy5vcmRlckRldGFpbC5kZXBvc2l0U2hvcE5hbWVcblx0XHRcdFx0XHRhZGRyZXNzID0gdGhpcy5vcmRlckRldGFpbC5kZXBvc2l0U2hvcEFkZHJlc3Ncblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRsYXRpdHVkZSA9IHRoaXMub3JkZXJEZXRhaWwudGFrZUxhdFxuXHRcdFx0XHRcdGxvbmdpdHVkZSA9IHRoaXMub3JkZXJEZXRhaWwudGFrZUxuZ1xuXHRcdFx0XHRcdG5hbWUgPSB0aGlzLm9yZGVyRGV0YWlsLnRha2VOYW1lXG5cdFx0XHRcdFx0YWRkcmVzcyA9IHRoaXMub3JkZXJEZXRhaWwudGFrZUFkZHJlc3Ncblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoIWxhdGl0dWRlIHx8ICFsb25naXR1ZGUpIHtcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflnLDlnYDlnZDmoIfnvLrlpLEnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR1bmkub3BlbkxvY2F0aW9uKHtcblx0XHRcdFx0XHRsYXRpdHVkZSxcblx0XHRcdFx0XHRsb25naXR1ZGUsXG5cdFx0XHRcdFx0bmFtZSxcblx0XHRcdFx0XHRhZGRyZXNzLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6ICgpID0+IHt9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+aJk+W8gOWcsOWbvuWksei0pScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcignb3BlbkxvY2F0aW9uIGZhaWw6JywgZXJyKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHByZXZpZXdJbWFnZShjdXJyZW50KSB7XG5cdFx0XHRcdHVuaS5wcmV2aWV3SW1hZ2Uoe1xuXHRcdFx0XHRcdGN1cnJlbnQsXG5cdFx0XHRcdFx0dXJsczogdGhpcy5waG90b3Ncblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGhhbmRsZUZvb3RlckFjdGlvbihidXR0b24pIHtcblx0XHRcdFx0Y29uc3QgYWN0aW9uID0gYnV0dG9uLmFjdGlvblxuXG5cdFx0XHRcdGlmIChhY3Rpb24gPT09ICdjYW5jZWwnKSB7XG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVDYW5jZWxPcmRlcigpXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAoYWN0aW9uID09PSAncGlja3VwJyB8fCBhY3Rpb24gPT09ICdkZWxpdmVyJykge1xuXHRcdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3MgPSBbXVxuXHRcdFx0XHRcdHRoaXMucGhvdG9SZW1hcmsgPSAnJ1xuXHRcdFx0XHRcdHRoaXMucGhvdG9Qb3B1cE1vZGUgPSBhY3Rpb25cblx0XHRcdFx0XHR0aGlzLnNob3dQaG90b1BvcHVwID0gdHJ1ZVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKGFjdGlvbiA9PT0gJ2dyYWInKSB7XG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVHcmFiT3JkZXIoKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlQ2FuY2VsT3JkZXIoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbExpbWl0KCkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR0aGlzLmNhbmNlbFJlbWFpbiA9IHJlcy5kYXRhLnJlbWFpblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93Q2FuY2VsTW9kYWwgPSB0cnVlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Y29uZmlybUNhbmNlbE9yZGVyKCkge1xuXHRcdFx0XHR0aGlzLiR1LmFwaS5jYW5jZWxPcmRlcih7IG9yZGVySWQ6IHRoaXMub3JkZXJJZCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93Q2FuY2VsTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICflj5bmtojmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuZ2V0T3JkZXJEZXRhaWwoKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSkuZmluYWxseSgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93Q2FuY2VsTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGhhbmRsZUdyYWJPcmRlcigpIHtcblx0XHRcdFx0dGhpcy5zaG93R3JhYk1vZGFsID0gdHJ1ZVxuXHRcdFx0fSxcblx0XHRcdGNvbmZpcm1HcmFiT3JkZXIoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmdyYWJPcmRlcih7IG9yZGVySWQ6IHRoaXMub3JkZXJJZCB9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93R3JhYk1vZGFsID0gZmFsc2Vcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5o6l5Y2V5oiQ5YqfJywgaWNvbjogJ3N1Y2Nlc3MnIH0pXG5cdFx0XHRcdFx0XHR0aGlzLmdldE9yZGVyRGV0YWlsKClcblx0XHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRcdFx0XHR1bmkubmF2aWdhdGVCYWNrKClcblx0XHRcdFx0XHRcdH0sIDE1MDApXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogcmVzLm1zZyB8fCAn5o6l5Y2V5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5jYXRjaCgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93R3JhYk1vZGFsID0gZmFsc2Vcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRjbG9zZVBob3RvUG9wdXAoKSB7XG5cdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSBmYWxzZVxuXHRcdFx0fSxcblx0XHRcdGNob29zZUltYWdlKCkge1xuXHRcdFx0XHRjb25zdCBjb3VudCA9IDMgLSB0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aFxuXHRcdFx0XHR1bmkuY2hvb3NlSW1hZ2Uoe1xuXHRcdFx0XHRcdGNvdW50OiBjb3VudCxcblx0XHRcdFx0XHRzb3VyY2VUeXBlOiBbJ2NhbWVyYScsICdhbGJ1bSddLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdGNvbnN0IHRlbXBGaWxlUGF0aHMgPSByZXMudGVtcEZpbGVQYXRoc1xuXHRcdFx0XHRcdFx0dGhpcy51cGxvYWRlZFBob3RvcyA9IHRoaXMudXBsb2FkZWRQaG90b3MuY29uY2F0KHRlbXBGaWxlUGF0aHMpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGRlbGV0ZVBob3RvKGluZGV4KSB7XG5cdFx0XHRcdHRoaXMudXBsb2FkZWRQaG90b3Muc3BsaWNlKGluZGV4LCAxKVxuXHRcdFx0fSxcblx0XHRcdHN1Ym1pdFBob3RvUG9wdXAoKSB7XG5cdFx0XHRcdGlmICh0aGlzLnVwbG9hZGVkUGhvdG9zLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+ivt+S4iuS8oOeFp+eJhycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5zaG93TG9hZGluZyh7IHRpdGxlOiAn5LiK5Lyg5LitLi4uJyB9KVxuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKGxvY2F0aW9uUmVzKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKGxvY2F0aW9uUmVzLmxhdGl0dWRlLCBsb2NhdGlvblJlcy5sb25naXR1ZGUpXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRmYWlsOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmRvVXBsb2FkUGhvdG9zKG51bGwsIG51bGwpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0ZG9VcGxvYWRQaG90b3MobGF0aXR1ZGUsIGxvbmdpdHVkZSkge1xuXHRcdFx0XHRjb25zdCB1cGxvYWRUYXNrcyA9IHRoaXMudXBsb2FkZWRQaG90b3MubWFwKHBhdGggPT4ge1xuXHRcdFx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCBmb3JtRGF0YSA9IHsgZm9sZGVyOiAnb3JkZXJzJyB9XG5cdFx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhLmxhdGl0dWRlID0gbGF0aXR1ZGVcblx0XHRcdFx0XHRcdFx0Zm9ybURhdGEubG9uZ2l0dWRlID0gbG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnZm9ybURhdGE6JywgZm9ybURhdGEpXG5cdFx0XHRcdFx0XHR1bmkudXBsb2FkRmlsZSh7XG5cdFx0XHRcdFx0XHRcdHVybDogdGhpcy4kYmFzZVVybCArICd3ZWIvcHVibGljL3VwbG9hZCcsXG5cdFx0XHRcdFx0XHRcdGZpbGVQYXRoOiBwYXRoLFxuXHRcdFx0XHRcdFx0XHRuYW1lOiAnZmlsZScsXG5cdFx0XHRcdFx0XHRcdGZvcm1EYXRhOiBmb3JtRGF0YSxcblx0XHRcdFx0XHRcdFx0c3VjY2VzczogKHVwbG9hZFJlcykgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKHVwbG9hZFJlcy5kYXRhKVxuXHRcdFx0XHRcdFx0XHRcdGlmIChkYXRhLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0XHRcdFx0cmVzb2x2ZShkYXRhLmRhdGEpXG5cdFx0XHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0XHRcdHJlamVjdChuZXcgRXJyb3IoZGF0YS5tc2cpKVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdHJlamVjdChlcnIpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSlcblxuXHRcdFx0XHRQcm9taXNlLmFsbCh1cGxvYWRUYXNrcykudGhlbihpbWFnZXMgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGFwaSA9IHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICdjb25maXJtRGVsaXZlcicgOiAnY29uZmlybVBpY2t1cCdcblx0XHRcdFx0XHRjb25zdCBwYXJhbXMgPSB7XG5cdFx0XHRcdFx0XHRpbWFnZXM6IGltYWdlcy5tYXAoaW1nID0+IGltZy5pbWdhZGRyKSxcblx0XHRcdFx0XHRcdG9yZGVySWQ6IHRoaXMub3JkZXJJZCxcblx0XHRcdFx0XHRcdHJlbWFyazogdGhpcy5waG90b1JlbWFya1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAobGF0aXR1ZGUgJiYgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdFx0XHRwYXJhbXMubGF0aXR1ZGUgPSBsYXRpdHVkZVxuXHRcdFx0XHRcdFx0cGFyYW1zLmxvbmdpdHVkZSA9IGxvbmdpdHVkZVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gdGhpcy4kdS5hcGlbYXBpXShwYXJhbXMpXG5cdFx0XHRcdH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmj5DkuqTmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSBmYWxzZVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRPcmRlckRldGFpbCgpXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogcmVzLm1zZyB8fCAn5o+Q5Lqk5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5jYXRjaChlcnIgPT4ge1xuXHRcdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiBlcnIubWVzc2FnZSB8fCAn5LiK5Lyg5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdH0pXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuXHQub3JkZXItZGV0YWlsLXBhZ2Uge1xuXHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cblx0XHQmX19zaW1wbGUtbmF2IHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHotaW5kZXg6IDExO1xuXHRcdFx0YmFja2dyb3VuZDogIzEwNkVGQTtcblx0XHR9XG5cblx0XHQmX19zaW1wbGUtbmF2LWlubmVyIHtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdHBhZGRpbmc6IDAgMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX3NpbXBsZS1uYXYtdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAzNnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX19maXhlZC10b3Age1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX21hcC13cmFwIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGhlaWdodDogNTAwcnB4O1xuXHRcdFx0d2lkdGg6IDc1MHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0YmFja2dyb3VuZDogI2RiZThmZjtcblx0XHR9XG5cblx0XHQmX19tYXAge1xuXHRcdFx0d2lkdGg6IDc1MHJweDtcblx0XHRcdGhlaWdodDogNTAwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy1iYXIge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDkycnB4O1xuXHRcdFx0cGFkZGluZzogMCAyNHJweDtcblx0XHRcdGJhY2tncm91bmQ6ICNkOWU4ZmY7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWxlZnQsXG5cdFx0Jl9fc3RhdHVzLXJpZ2h0IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy1kb3Qge1xuXHRcdFx0d2lkdGg6IDE4cnB4O1xuXHRcdFx0aGVpZ2h0OiAxOHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDZycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMmI3Y2ZmO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMnJweDtcblx0XHR9XG5cblx0XHQmX19zdGF0dXMtdGl0bGUsXG5cdFx0Jl9fc3RhdHVzLW5vIHtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyYjMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWNhbmNlbCB7XG5cdFx0XHRwYWRkaW5nOiA4cnB4IDE4cnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxOHJweDtcblx0XHRcdGJvcmRlcjogMnJweCBzb2xpZCAjNzJhOGZmO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdGNvbG9yOiAjMmI3Y2ZmO1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuXHRcdH1cblxuXHRcdCZfX2JvZHkge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR9XG5cblx0XHQmX19jb250ZW50IHtcblx0XHRcdC8vIHBhZGRpbmc6IDE2cnB4IDAgY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgKyAyNnJweCk7XG5cdFx0fVxuXG5cdFx0Jl9fc2VjdGlvbiB7XG5cdFx0XHQvLyBtYXJnaW46IDE2cnB4IDIwcnB4IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXG5cdFx0XHQmLS1tYWluIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji0tbGFzdCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMjZycHgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3N1bW1hcnkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0cGFkZGluZzogMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX2RvbmUtc3VtbWFyeSB7XG5cdFx0XHRwYWRkaW5nOiAzMHJweDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRnYXA6IDIwcnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI0Y2RjlGRjtcblx0XHR9XG5cblx0XHQmX19kb25lLXN1bW1hcnktbGVmdCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX2RvbmUtc3VtbWFyeS1yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblxuXHRcdCZfX2RvbmUtdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAzOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzJiMzEzOTtcblx0XHR9XG5cblx0XHQmX19kb25lLXByaWNlLXJvdyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fc2V0dGxlZC10YWcge1xuXHRcdFx0cGFkZGluZzogNHJweCAxMHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0XHRib3JkZXI6IDFycHggc29saWQgI2ZmOGY4Zjtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6ICNmZjZhNmE7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmNGY0O1xuXHRcdH1cblxuXHRcdCZfX3N1bW1hcnktbGVmdCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdCZfX3N1bW1hcnktcmlnaHQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX19oZWFkLWxlZnQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblx0XHR9XG5cblx0XHQmX190aW1lIHtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6ICNGQTgwMTA7XG5cdFx0fVxuXG5cdFx0Jl9fdGltZS1zdWIsXG5cdFx0Jl9fZXh0cmEsXG5cdFx0Jl9fcm91dGUtZGVzYyxcblx0XHQmX19xcmNvZGUtbGFiZWwsXG5cdFx0Jl9fZGV0YWlsLWxhYmVsLFxuXHRcdCZfX2RldGFpbC12YWx1ZSxcblx0XHQmX19nb29kcy1jb3VudCxcblx0XHQmX19yb3ctdGV4dCxcblx0XHQmX19nb29kcy1jYXRlZ29yeSB7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICNhZGIzYmQ7XG5cdFx0fVxuXG5cdFx0Jl9fdGltZS1zdWIge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcHJpY2Uge1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmNDEzMjtcblx0XHR9XG5cblx0XHQmX19leHRyYSB7XG5cdFx0XHRtYXJnaW4tdG9wOiA2cnB4O1xuXHRcdH1cblxuXHRcdCZfX3RhZ3Mge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRnYXA6IDEycnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMTRycHg7XG5cblx0XHRcdCYtLWRvbmUge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190YWctaWNvbiB7XG5cdFx0XHR3aWR0aDogMTA4cnB4O1xuXHRcdFx0aGVpZ2h0OiA0MHJweDtcblx0XHR9XG5cblx0XHQmX190YWctdGV4dCB7XG5cdFx0XHRwYWRkaW5nOiA1cnB4IDEycnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzMTlkZWcsICNFRTlEMEUgMCUsICNGRjRFNEUgMTAwJSk7XG5cdFx0XHRmb250LXNpemU6IDIycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWxpc3Qge1xuXHRcdFx0bWFyZ2luLXRvcDogMzZycHg7XHRcblx0XHRcdHBhZGRpbmc6IDAgMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWl0ZW0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHQmLS1lbmQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS1sZWZ0IHtcblx0XHRcdHdpZHRoOiA2MHJweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWJhZGdlIHtcblx0XHRcdHdpZHRoOiA0NHJweDtcblx0XHRcdGhlaWdodDogNDRycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cblx0XHRcdCYtLXRha2Uge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMTBCMkZBO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1zZW5kIHtcblx0XHRcdFx0YmFja2dyb3VuZDogI0ZBODAxMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19yb3V0ZS1kaXZpZGVyIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNjRycHg7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHR3aWR0aDogMDtcblx0XHRcdGJvcmRlci1sZWZ0OiAycnB4IGRhc2hlZCAjZDdkYmUyO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLW1haW4ge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRnYXA6IDE4cnB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLXRleHRzIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtdGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGNvbG9yOiAjMjIyMjIyO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHR9XG5cblx0XHQmX19yb3V0ZS1kZXNjIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogOHJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGNvbG9yOiAjOTk5OTk5O1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWFjdGlvbnMge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDEycnB4O1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtaWNvbixcblx0XHQmX19yb3ctaWNvbiB7XG5cdFx0XHR3aWR0aDogNDBycHg7XG5cdFx0XHRoZWlnaHQ6IDQwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3FyY29kZS13cmFwIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdG1hcmdpbi10b3A6IDMwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3FyY29kZS1ib3gge1xuXHRcdFx0d2lkdGg6IDM2MHJweDtcblx0XHRcdGhlaWdodDogMzYwcnB4O1xuXHRcdFx0cGFkZGluZzogMTZycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0Ym9yZGVyOiAycnB4IHNvbGlkICNFRUVFRUU7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX3FyY29kZS1pbWFnZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cblx0XHQmX19xcmNvZGUtdmFsdWUge1xuXHRcdFx0bWFyZ2luLXRvcDogMzJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Zm9udC1zaXplOiAzNnJweDtcblx0XHRcdGNvbG9yOiAjMjIyMjIyO1xuXHRcdH1cblxuXHRcdCZfX3FyY29kZS1sYWJlbCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0fVxuXG5cdFx0Jl9fc2VjdGlvbi10aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMyYjMxMzk7XG5cdFx0fVxuXG5cdFx0Jl9fcm93LWluZm8ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDE2cnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMjZycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcm93LXRleHQge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzRkNTU2Mjtcblx0XHR9XG5cblx0XHQmX19jb21tZW50LWNhcmQge1xuXHRcdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdFx0XHRwYWRkaW5nOiAyMnJweCAyMHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y3ZjhmYTtcblx0XHR9XG5cblx0XHQmX19jb21tZW50LXRpdGxlLFxuXHRcdCZfX2NvbW1lbnQtY29udGVudCxcblx0XHQmX19jb21tZW50LXNjb3JlLXRleHQge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjNGQ1NTYyO1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtc2NvcmUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19jb21tZW50LXN0YXIge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjZmZiMzIzO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA4cnB4O1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtY29udGVudCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDEycnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0XHR9XG5cblx0XHQmX19jb21tZW50LWltYWdlIHtcblx0XHRcdHdpZHRoOiA5MnJweDtcblx0XHRcdGhlaWdodDogOTJycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMHJweDtcblx0XHRcdG1hcmdpbi10b3A6IDE0cnB4O1xuXHRcdH1cblxuXHRcdCZfX2dvb2RzLWxpc3QsXG5cdFx0Jl9fZGV0YWlsLWxpc3Qge1xuXHRcdFx0bWFyZ2luLXRvcDogMjJycHg7XG5cdFx0fVxuXG5cdFx0Jl9fZ29vZHMtaXRlbSxcblx0XHQmX19kZXRhaWwtaXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDhycHggMDtcblx0XHR9XG5cblx0XHQmX19nb29kcy1uYW1lIHtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRjb2xvcjogIzRkNTU2Mjtcblx0XHR9XG5cblx0XHQmX19nb29kcy1jYXRlZ29yeSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjNGQ1NTYyO1xuXHRcdH1cblxuXHRcdCZfX3Bob3RvcyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0Z2FwOiAyMHJweDtcblx0XHRcdG1hcmdpbi10b3A6IDMwcnB4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR9XG5cblx0XHQmX19waG90byB7XG5cdFx0XHR3aWR0aDogMTIwcnB4O1xuXHRcdFx0aGVpZ2h0OiAxMjBycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0aW1hZ2Uge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2RldGFpbC1sYWJlbCB7XG5cdFx0XHRjb2xvcjogI2FlYjRiZTtcblx0XHR9XG5cblx0XHQmX19kZXRhaWwtdmFsdWUge1xuXHRcdFx0Y29sb3I6ICM2NjZkNzk7XG5cdFx0fVxuXG5cdFx0Jl9fZm9vdGVyIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRnYXA6IDIwcnB4O1xuXHRcdFx0cGFkZGluZzogMTRycHggMjBycHggY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgKyAxNHJweCk7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdFx0Ym94LXNoYWRvdzogMCAtOHJweCAyMHJweCByZ2JhKDMwLCA0NiwgODAsIDAuMDYpO1xuXHRcdH1cblxuXHRcdCZfX2Zvb3Rlci1idG4ge1xuXHRcdFx0d2lkdGg6IDE4MnJweDtcblx0XHRcdGhlaWdodDogNjhycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNjhycHg7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOTk5cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRib3JkZXI6IDFycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1naG9zdCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogI2Q4ZGRlNTtcblx0XHRcdFx0Y29sb3I6ICM5NTlkYWE7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXByaW1hcnkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMmQ3Y2ZmO1xuXHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5waG90by1wb3B1cCB7XG5cdFx0cGFkZGluZzogMzBycHggMjhycHggY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgKyAyOHJweCk7XG5cdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHJweDtcblx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMjBycHg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdCZfX2hlYWRlciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHR9XG5cblx0XHQmX19wbGFjZWhvbGRlcixcblx0XHQmX19jbG9zZSB7XG5cdFx0XHR3aWR0aDogMzZycHg7XG5cdFx0XHRoZWlnaHQ6IDM2cnB4O1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fcGxhY2Vob2xkZXIge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHR9XG5cblx0XHQmX190aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDM0cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMTExMTExO1xuXHRcdH1cblxuXHRcdCZfX3NlY3Rpb24ge1xuXHRcdFx0bWFyZ2luLXRvcDogNTRycHg7XG5cblx0XHRcdCYtLXJlbWFyayB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQ4cnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2xhYmVsLXJvdyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHR9XG5cblx0XHQmX19sYWJlbCxcblx0XHQmX19yZW1hcmstdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzIzMjYyZDtcblx0XHR9XG5cblx0XHQmX19yZXF1aXJlZCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogNHJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZjNiMzA7XG5cdFx0fVxuXG5cdFx0Jl9faGludCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTJycHg7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICNhOGFkYjc7XG5cdFx0fVxuXG5cdFx0Jl9fcGhvdG9zIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRnYXA6IDE4cnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMjhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fdXBsb2FkLWNhcmQsXG5cdFx0Jl9fcHJldmlldy1jYXJkIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHdpZHRoOiAxNDRycHg7XG5cdFx0XHRoZWlnaHQ6IDE0NHJweDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0fVxuXG5cdFx0Jl9fdXBsb2FkLWNhcmQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZjhmOWZiO1xuXHRcdH1cblxuXHRcdCZfX3VwbG9hZC1pY29uIHtcblx0XHRcdHdpZHRoOiAxNjBycHg7XG5cdFx0XHRoZWlnaHQ6IDE2MHJweDtcblx0XHRcdC8vIG9wYWNpdHk6IDAuNTU7XG5cdFx0fVxuXG5cdFx0Jl9fdXBsb2FkLXRleHQge1xuXHRcdFx0bWFyZ2luLXRvcDogMTJycHg7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0Y29sb3I6ICNhMGE2YjA7XG5cdFx0fVxuXG5cdFx0Jl9fcHJldmlldy1jYXJkIHtcblx0XHRcdGJhY2tncm91bmQ6ICNlZWYxZjU7XG5cdFx0fVxuXG5cdFx0Jl9fcHJldmlldy1pbWFnZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cblx0XHQmX19wcmV2aWV3LW1hc2sge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiA0OHJweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xuXHRcdH1cblxuXHRcdCZfX3ByZXZpZXctZGVsZXRlIHtcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHR9XG5cblx0XHQmX190ZXh0YXJlYSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTEwcnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMjRycHg7XG5cdFx0XHRwYWRkaW5nOiAyOHJweCAyNHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEycnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Y3ZjhmYTtcblx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRjb2xvcjogIzJjMzEzOTtcblx0XHR9XG5cblx0XHQmX19zdWJtaXQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDg4cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogODZycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MHJweDtcblx0XHRcdGJhY2tncm91bmQ6ICMxMDZlZmE7XG5cdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTogMC45Mjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///113\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 _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 114));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\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      orderId: null,\n      orderIndex: null,\n      orderDetail: null,\n      statusBarHeight: 0,\n      topFixedHeight: 0,\n      showPhotoPopup: false,\n      photoPopupMode: '',\n      photoRemark: '',\n      uploadedPhotos: [],\n      showCancelModal: false,\n      cancelRemain: 0,\n      showGrabModal: false,\n      currentLocation: null,\n      routePoints: [],\n      locationTimer: null,\n      distance: 0,\n      duration: 0,\n      isWithinOperationRadius: true,\n      statusTextMap: {\n        2: '待接单',\n        3: '待取货',\n        4: '配送中',\n        5: '已送达',\n        7: '已完成',\n        99: '已取消'\n      },\n      goodsList: [],\n      photos: []\n    };\n  },\n  computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)(['userInfo'])), {}, {\n    formattedRemainTime: function formattedRemainTime() {\n      var minutes = this.orderDetail.remainMinutes;\n      if (!minutes) return null;\n      if (minutes >= 60) {\n        var hours = Math.floor(minutes / 60);\n        var mins = minutes % 60;\n        return mins > 0 ? \"\".concat(hours, \"\\u5C0F\\u65F6\").concat(mins, \"\\u5206\\u949F\") : \"\".concat(hours, \"\\u5C0F\\u65F6\");\n      }\n      return \"\".concat(minutes, \"\\u5206\\u949F\");\n    },\n    showMapStatus: function showMapStatus() {\n      return this.orderDetail.status === 3 || this.orderDetail.status === 4;\n    },\n    mapData: function mapData() {\n      var startPoint = this.currentLocation || {\n        latitude: this.orderDetail.navigateLat,\n        longitude: this.orderDetail.navigateLng\n      };\n      var hasEndPoint = this.orderDetail.navigateLat && this.orderDetail.navigateLng;\n      var endPoint = {\n        latitude: this.orderDetail.navigateLng,\n        longitude: this.orderDetail.navigateLat\n      };\n      var center;\n      var scale = 12;\n      if (this.currentLocation && hasEndPoint) {\n        var latSpan = Math.abs(this.currentLocation.latitude - endPoint.latitude);\n        var lngSpan = Math.abs(this.currentLocation.longitude - endPoint.longitude);\n        var maxSpan = Math.max(latSpan, lngSpan);\n        center = {\n          latitude: (this.currentLocation.latitude + endPoint.latitude) / 2,\n          longitude: (this.currentLocation.longitude + endPoint.longitude) / 2\n        };\n        if (maxSpan > 0.3) {\n          scale = 9;\n        } else if (maxSpan > 0.15) {\n          scale = 10;\n        } else if (maxSpan > 0.08) {\n          scale = 11;\n        } else if (maxSpan > 0.04) {\n          scale = 12;\n        } else if (maxSpan > 0.02) {\n          scale = 13;\n        } else if (maxSpan > 0.01) {\n          scale = 14;\n        } else if (maxSpan > 0.005) {\n          scale = 15;\n        } else if (maxSpan > 0.002) {\n          scale = 16;\n        } else {\n          scale = 17;\n        }\n      } else if (this.currentLocation) {\n        center = this.currentLocation;\n      } else {\n        center = {\n          latitude: this.orderDetail.navigateLat,\n          longitude: this.orderDetail.navigateLng\n        };\n      }\n      var markers = [{\n        id: 1,\n        latitude: startPoint.latitude,\n        longitude: startPoint.longitude,\n        iconPath: '/static/image/start.png',\n        width: 32,\n        height: 38,\n        anchor: {\n          x: 0.5,\n          y: 1\n        }\n      }, {\n        id: 2,\n        latitude: endPoint.latitude,\n        longitude: endPoint.longitude,\n        iconPath: '/static/image/end.png',\n        width: 32,\n        height: 38,\n        anchor: {\n          x: 0.5,\n          y: 1\n        }\n      }, {\n        id: 3,\n        latitude: startPoint.latitude,\n        longitude: startPoint.longitude,\n        iconPath: '/static/image/dizhi.png',\n        width: 12,\n        height: 12,\n        anchor: {\n          x: 0.5,\n          y: 0.5\n        }\n      }];\n      var routePoints = this.routePoints.length > 0 ? this.routePoints : [startPoint, endPoint];\n      var result = {\n        center: center,\n        markers: markers,\n        polyline: this.routePoints.length > 0 ? [{\n          points: routePoints,\n          color: '#05be76',\n          width: 25,\n          arrowLine: true,\n          dottedLine: false\n        }] : [{\n          points: routePoints,\n          color: '#05be76',\n          width: 25,\n          arrowLine: true,\n          dottedLine: true\n        }],\n        includePoints: [startPoint, endPoint],\n        scale: scale\n      };\n      return result;\n    },\n    bodyStyle: function bodyStyle() {\n      var footerHeight = uni.upx2px(116);\n      var simpleNavHeight = this.statusBarHeight + uni.upx2px(88);\n      return {\n        paddingTop: (this.showMapStatus ? this.topFixedHeight : simpleNavHeight) + 'px',\n        height: \"calc(100vh - \".concat(this.footerButtons.length ? footerHeight + 20 : 20, \"px)\")\n      };\n    },\n    footerButtons: function footerButtons() {\n      var status = this.orderDetail.status;\n      var takeShopId = this.orderDetail.takeShopId;\n      if (status === 2) {\n        return [{\n          text: '立即抢单',\n          primary: true,\n          action: 'grab'\n        }];\n      }\n      if (status === 3) {\n        return [{\n          text: '取消订单',\n          primary: false,\n          action: 'cancel'\n        }, {\n          text: '拍照取货',\n          primary: true,\n          action: 'pickup'\n        }];\n      }\n      if (status === 4) {\n        if (!takeShopId) {\n          return [{\n            text: '拍照送达',\n            primary: true,\n            action: 'deliver'\n          }];\n        }\n        return [];\n      }\n      return [];\n    },\n    photoPopupTitle: function photoPopupTitle() {\n      return this.photoPopupMode === 'deliver' ? '拍照送达' : '拍照取货';\n    },\n    photoPopupLabel: function photoPopupLabel() {\n      return this.photoPopupMode === 'deliver' ? '拍摄送达照片' : '拍摄取货照片';\n    },\n    photoPopupSubmitText: function photoPopupSubmitText() {\n      return this.photoPopupMode === 'deliver' ? '确认送达' : '确认取货';\n    }\n  }),\n  onLoad: function onLoad(options) {\n    var pages = getCurrentPages();\n    var currentPage = pages[pages.length - 1];\n    var pageOptions = currentPage && currentPage.options ? currentPage.options : {};\n    var systemInfo = uni.getSystemInfoSync();\n    this.statusBarHeight = systemInfo.statusBarHeight || 0;\n    this.orderId = options.id || pageOptions.id;\n    this.orderIndex = options.index;\n    this.topFixedHeight = uni.upx2px(500 + 92);\n    if (this.orderId) {\n      this.getOrderDetail();\n      this.initOperationRadius();\n    }\n  },\n  onUnload: function onUnload() {\n    if (this.locationTimer) {\n      clearInterval(this.locationTimer);\n      this.locationTimer = null;\n    }\n  },\n  methods: {\n    handleBack: function handleBack() {\n      uni.navigateBack({\n        delta: 1\n      });\n    },\n    initOperationRadius: function initOperationRadius() {\n      var _this = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          _this.$u.api.checkDriverOperationRadius({\n            lat: res.latitude,\n            lng: res.longitude,\n            orderId: _this.orderId\n          }).then(function (res) {\n            if (res.code === 200) {\n              _this.isWithinOperationRadius = res.data;\n              if (!_this.isWithinOperationRadius) {\n                uni.showToast({\n                  title: '您当前位置与收货地址距离超出范围,请在地址附近重新拍照',\n                  icon: 'none'\n                });\n              }\n            }\n          });\n        },\n        fail: function fail() {\n          _this.isWithinOperationRadius = false;\n          uni.showToast({\n            title: '您当前位置权限没有开启,请先开启后再来操作',\n            icon: 'none'\n          });\n        }\n      });\n    },\n    getOrderDetail: function getOrderDetail() {\n      var _this2 = this;\n      this.$u.api.orderDetail({\n        orderId: this.orderId\n      }).then(function (res) {\n        if (res.code === 200) {\n          __f__(\"log\", 'orderDetail:', res.data, \" at pages/order-detail/order-detail.vue:503\");\n          _this2.orderDetail = res.data;\n          _this2.goodsList = res.data.items || [];\n          _this2.photos = res.data.orderImages || [];\n          if ((_this2.orderDetail.status === 3 || _this2.orderDetail.status === 4) && _this2.orderDetail.navigateLat && _this2.orderDetail.navigateLng) {\n            _this2.getCurrentLocation();\n          } else {\n            __f__(\"log\", 'Skipping getCurrentLocation - status or coordinates not available', \" at pages/order-detail/order-detail.vue:510\");\n          }\n        }\n      });\n    },\n    getCurrentLocation: function getCurrentLocation() {\n      var _this3 = this;\n      this.fetchLocation();\n      this.locationTimer = setInterval(function () {\n        _this3.fetchLocation();\n      }, 60000);\n    },\n    fetchLocation: function fetchLocation() {\n      var _this4 = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          _this4.currentLocation = {\n            latitude: res.latitude,\n            longitude: res.longitude\n          };\n          _this4.getRoutePlan();\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取位置失败', err, \" at pages/order-detail/order-detail.vue:534\");\n        }\n      });\n    },\n    getRoutePlan: function getRoutePlan() {\n      var _this5 = this;\n      if (!this.currentLocation || !this.orderDetail.navigateLat || !this.orderDetail.navigateLng) {\n        __f__(\"log\", 'Skipping route plan - missing data', \" at pages/order-detail/order-detail.vue:541\");\n        return;\n      }\n      var from = \"\".concat(this.currentLocation.latitude, \",\").concat(this.currentLocation.longitude);\n      var to = \"\".concat(this.orderDetail.navigateLng, \",\").concat(this.orderDetail.navigateLat);\n      this.$u.api.directionInfo({\n        from: from,\n        to: to,\n        mode: this.userInfo.driverType\n      }).then(function (res) {\n        __f__(\"log\", 'paths success:', res.data.route.paths[0], \" at pages/order-detail/order-detail.vue:551\");\n        if (res.code === 200) {\n          var path = res.data.route.paths[0];\n          _this5.distance = path.distance;\n          _this5.duration = path.duration;\n          var points = [];\n          path.steps.forEach(function (step) {\n            var polylineStr = step.polyline;\n            var coordinates = polylineStr.split(';');\n            coordinates.forEach(function (coord) {\n              var _coord$split = coord.split(','),\n                _coord$split2 = (0, _slicedToArray2.default)(_coord$split, 2),\n                lng = _coord$split2[0],\n                lat = _coord$split2[1];\n              points.push({\n                latitude: parseFloat(lat),\n                longitude: parseFloat(lng)\n              });\n            });\n          });\n          _this5.routePoints = points;\n          _this5.$forceUpdate();\n        }\n      });\n    },\n    // makePhoneCall() {\n    // \tif (this.orderDetail.contactPhone) {\n    // \t\tuni.makePhoneCall({\n    // \t\t\tphoneNumber: this.orderDetail.contactPhone\n    // \t\t})\n    // \t}\n    // },\n    makeShopCall: function makeShopCall(type) {\n      var phone = type === 'take' ? this.orderDetail.takeContactPhone : this.orderDetail.depositShopPhone;\n      if (phone) {\n        uni.makePhoneCall({\n          phoneNumber: phone\n        });\n      }\n    },\n    navigateToAddress: function navigateToAddress(type) {\n      var latitude, longitude, name, address;\n      if (type === 'deposit') {\n        latitude = this.orderDetail.depositShopLat;\n        longitude = this.orderDetail.depositShopLng;\n        name = this.orderDetail.depositShopName;\n        address = this.orderDetail.depositShopAddress;\n      } else {\n        latitude = this.orderDetail.takeLat;\n        longitude = this.orderDetail.takeLng;\n        name = this.orderDetail.takeName;\n        address = this.orderDetail.takeAddress;\n      }\n      if (!latitude || !longitude) {\n        uni.showToast({\n          title: '地址坐标缺失',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.openLocation({\n        latitude: latitude,\n        longitude: longitude,\n        name: name,\n        address: address,\n        success: function success() {},\n        fail: function fail(err) {\n          uni.showToast({\n            title: '打开地图失败',\n            icon: 'none'\n          });\n          __f__(\"error\", 'openLocation fail:', err, \" at pages/order-detail/order-detail.vue:616\");\n        }\n      });\n    },\n    previewImage: function previewImage(current) {\n      uni.previewImage({\n        current: current,\n        urls: this.photos\n      });\n    },\n    handleFooterAction: function handleFooterAction(button) {\n      var action = button.action;\n      if (action === 'cancel') {\n        this.handleCancelOrder();\n        return;\n      }\n      if (action === 'pickup' || action === 'deliver') {\n        if (!this.isWithinOperationRadius) {\n          uni.showToast({\n            title: '您当前位置与收货地址距离超出范围,请在地址附近重新拍照',\n            icon: 'none'\n          });\n          return;\n        }\n        this.uploadedPhotos = [];\n        this.photoRemark = '';\n        this.photoPopupMode = action;\n        this.showPhotoPopup = true;\n        return;\n      }\n      if (action === 'grab') {\n        this.handleGrabOrder();\n        return;\n      }\n    },\n    handleCancelOrder: function handleCancelOrder() {\n      var _this6 = this;\n      this.$u.api.cancelLimit().then(function (res) {\n        if (res.code === 200) {\n          _this6.cancelRemain = res.data.remain;\n        }\n      }).finally(function () {\n        _this6.showCancelModal = true;\n      });\n    },\n    confirmCancelOrder: function confirmCancelOrder() {\n      var _this7 = this;\n      this.$u.api.cancelOrder({\n        orderId: this.orderId\n      }).then(function (res) {\n        _this7.showCancelModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '取消成功',\n            icon: 'success'\n          });\n          _this7.getOrderDetail();\n        }\n      }).finally(function () {\n        _this7.showCancelModal = false;\n      });\n    },\n    handleGrabOrder: function handleGrabOrder() {\n      this.showGrabModal = true;\n    },\n    confirmGrabOrder: function confirmGrabOrder() {\n      var _this8 = this;\n      this.$u.api.grabOrder({\n        orderId: this.orderId\n      }).then(function (res) {\n        _this8.showGrabModal = false;\n        if (res.code === 200) {\n          uni.showToast({\n            title: '接单成功',\n            icon: 'success'\n          });\n          _this8.getOrderDetail();\n          setTimeout(function () {\n            uni.navigateBack();\n          }, 1500);\n        } else {\n          uni.showToast({\n            title: res.msg || '接单失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function () {\n        _this8.showGrabModal = false;\n      });\n    },\n    closePhotoPopup: function closePhotoPopup() {\n      this.showPhotoPopup = false;\n    },\n    chooseImage: function chooseImage() {\n      var _this9 = this;\n      var count = 3 - this.uploadedPhotos.length;\n      uni.chooseImage({\n        count: count,\n        sourceType: ['camera', 'album'],\n        success: function success(res) {\n          var tempFilePaths = res.tempFilePaths;\n          _this9.uploadedPhotos = _this9.uploadedPhotos.concat(tempFilePaths);\n        }\n      });\n    },\n    deletePhoto: function deletePhoto(index) {\n      this.uploadedPhotos.splice(index, 1);\n    },\n    submitPhotoPopup: function submitPhotoPopup() {\n      var _this10 = this;\n      if (this.uploadedPhotos.length === 0) {\n        uni.showToast({\n          title: '请上传照片',\n          icon: 'none'\n        });\n        return;\n      }\n      uni.showLoading({\n        title: '上传中...'\n      });\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(locationRes) {\n          _this10.doUploadPhotos(locationRes.latitude, locationRes.longitude);\n        },\n        fail: function fail() {\n          _this10.doUploadPhotos(null, null);\n        }\n      });\n    },\n    doUploadPhotos: function doUploadPhotos(latitude, longitude) {\n      var _this11 = this;\n      var uploadTasks = this.uploadedPhotos.map(function (path) {\n        return new Promise(function (resolve, reject) {\n          var formData = {\n            folder: 'orders'\n          };\n          if (latitude && longitude) {\n            formData.latitude = latitude;\n            formData.longitude = longitude;\n          }\n          __f__(\"log\", 'formData:', formData, \" at pages/order-detail/order-detail.vue:737\");\n          uni.uploadFile({\n            url: _this11.$baseUrl + 'web/public/upload',\n            filePath: path,\n            name: 'file',\n            formData: formData,\n            success: function success(uploadRes) {\n              var data = JSON.parse(uploadRes.data);\n              if (data.code === 200) {\n                resolve(data.data);\n              } else {\n                reject(new Error(data.msg));\n              }\n            },\n            fail: function fail(err) {\n              reject(err);\n            }\n          });\n        });\n      });\n      Promise.all(uploadTasks).then(function (images) {\n        var api = _this11.photoPopupMode === 'deliver' ? 'confirmDeliver' : 'confirmPickup';\n        var params = {\n          images: images.map(function (img) {\n            return img.imgaddr;\n          }),\n          orderId: _this11.orderId,\n          remark: _this11.photoRemark\n        };\n        if (latitude && longitude) {\n          params.latitude = latitude;\n          params.longitude = longitude;\n        }\n        return _this11.$u.api[api](params);\n      }).then(function (res) {\n        uni.hideLoading();\n        if (res.code === 200) {\n          uni.showToast({\n            title: '提交成功',\n            icon: 'success'\n          });\n          _this11.showPhotoPopup = false;\n          _this11.getOrderDetail();\n        } else {\n          uni.showToast({\n            title: res.msg || '提交失败',\n            icon: 'none'\n          });\n        }\n      }).catch(function (err) {\n        uni.hideLoading();\n        uni.showToast({\n          title: err.message || '上传失败',\n          icon: 'none'\n        });\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbC52dWUiXSwibmFtZXMiOlsiZGF0YSIsIm9yZGVySWQiLCJvcmRlckluZGV4Iiwib3JkZXJEZXRhaWwiLCJzdGF0dXNCYXJIZWlnaHQiLCJ0b3BGaXhlZEhlaWdodCIsInNob3dQaG90b1BvcHVwIiwicGhvdG9Qb3B1cE1vZGUiLCJwaG90b1JlbWFyayIsInVwbG9hZGVkUGhvdG9zIiwic2hvd0NhbmNlbE1vZGFsIiwiY2FuY2VsUmVtYWluIiwic2hvd0dyYWJNb2RhbCIsImN1cnJlbnRMb2NhdGlvbiIsInJvdXRlUG9pbnRzIiwibG9jYXRpb25UaW1lciIsImRpc3RhbmNlIiwiZHVyYXRpb24iLCJpc1dpdGhpbk9wZXJhdGlvblJhZGl1cyIsInN0YXR1c1RleHRNYXAiLCJnb29kc0xpc3QiLCJwaG90b3MiLCJjb21wdXRlZCIsImZvcm1hdHRlZFJlbWFpblRpbWUiLCJzaG93TWFwU3RhdHVzIiwibWFwRGF0YSIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwiY2VudGVyIiwic2NhbGUiLCJpZCIsImljb25QYXRoIiwid2lkdGgiLCJoZWlnaHQiLCJhbmNob3IiLCJ4IiwieSIsInN0YXJ0UG9pbnQiLCJlbmRQb2ludCIsIm1hcmtlcnMiLCJwb2x5bGluZSIsInBvaW50cyIsImNvbG9yIiwiYXJyb3dMaW5lIiwiZG90dGVkTGluZSIsImluY2x1ZGVQb2ludHMiLCJib2R5U3R5bGUiLCJwYWRkaW5nVG9wIiwiZm9vdGVyQnV0dG9ucyIsInRleHQiLCJwcmltYXJ5IiwiYWN0aW9uIiwicGhvdG9Qb3B1cFRpdGxlIiwicGhvdG9Qb3B1cExhYmVsIiwicGhvdG9Qb3B1cFN1Ym1pdFRleHQiLCJvbkxvYWQiLCJvblVubG9hZCIsImNsZWFySW50ZXJ2YWwiLCJtZXRob2RzIiwiaGFuZGxlQmFjayIsInVuaSIsImRlbHRhIiwiaW5pdE9wZXJhdGlvblJhZGl1cyIsInR5cGUiLCJzdWNjZXNzIiwibGF0IiwibG5nIiwidGl0bGUiLCJpY29uIiwiZmFpbCIsImdldE9yZGVyRGV0YWlsIiwiZ2V0Q3VycmVudExvY2F0aW9uIiwiZmV0Y2hMb2NhdGlvbiIsImdldFJvdXRlUGxhbiIsImZyb20iLCJ0byIsIm1vZGUiLCJwYXRoIiwiY29vcmRpbmF0ZXMiLCJtYWtlU2hvcENhbGwiLCJwaG9uZU51bWJlciIsIm5hdmlnYXRlVG9BZGRyZXNzIiwibmFtZSIsImFkZHJlc3MiLCJwcmV2aWV3SW1hZ2UiLCJjdXJyZW50IiwidXJscyIsImhhbmRsZUZvb3RlckFjdGlvbiIsImhhbmRsZUNhbmNlbE9yZGVyIiwiY29uZmlybUNhbmNlbE9yZGVyIiwiaGFuZGxlR3JhYk9yZGVyIiwiY29uZmlybUdyYWJPcmRlciIsInNldFRpbWVvdXQiLCJjbG9zZVBob3RvUG9wdXAiLCJjaG9vc2VJbWFnZSIsImNvdW50Iiwic291cmNlVHlwZSIsImRlbGV0ZVBob3RvIiwic3VibWl0UGhvdG9Qb3B1cCIsImRvVXBsb2FkUGhvdG9zIiwiZm9sZGVyIiwiZm9ybURhdGEiLCJ1cmwiLCJmaWxlUGF0aCIsInJlc29sdmUiLCJyZWplY3QiLCJQcm9taXNlIiwiaW1hZ2VzIiwicmVtYXJrIiwicGFyYW1zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUE4UkE7QUFBQTtBQUFBO0FBQUEsZUFFQTtFQUNBQTtJQUNBO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO01BQ0FDO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQUM7TUFDQUM7SUFDQTtFQUNBO0VBQ0FDLDBDQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQUFDO1FBQUFDO01BQUE7TUFDQTtNQUNBO1FBQUFEO1FBQUFDO01BQUE7TUFFQTtNQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQUM7VUFDQUY7VUFDQUM7UUFDQTtRQUNBO1VBQ0FFO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO1VBQ0FBO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO1VBQ0FBO1FBQ0E7VUFDQUE7UUFDQTtVQUNBQTtRQUNBO01BQ0E7UUFDQUQ7TUFDQTtRQUNBQTtVQUFBRjtVQUFBQztRQUFBO01BQ0E7TUFFQSxlQUNBO1FBQUFHO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxHQUNBO1FBQUFOO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxHQUNBO1FBQUFOO1FBQUFKO1FBQUFDO1FBQUFJO1FBQUFDO1FBQUFDO1FBQUFDO1VBQUFDO1VBQUFDO1FBQUE7TUFBQSxFQUNBO01BRUEsb0VBQ0FDLFlBQ0FDLFNBQ0E7TUFFQTtRQUNBVjtRQUNBVztRQUNBQyx5Q0FDQTtVQUFBQztVQUFBQztVQUFBVjtVQUFBVztVQUFBQztRQUFBLEVBQ0EsSUFDQTtVQUFBSDtVQUFBQztVQUFBVjtVQUFBVztVQUFBQztRQUFBLEVBQ0E7UUFDQUM7UUFDQWhCO01BQ0E7TUFDQTtJQUNBO0lBQ0FpQjtNQUNBO01BQ0E7TUFDQTtRQUNBQztRQUNBZDtNQUNBO0lBQ0E7SUFDQWU7TUFDQTtNQUNBO01BRUE7UUFDQTtVQUFBQztVQUFBQztVQUFBQztRQUFBO01BQ0E7TUFFQTtRQUNBLFFBQ0E7VUFBQUY7VUFBQUM7VUFBQUM7UUFBQSxHQUNBO1VBQUFGO1VBQUFDO1VBQUFDO1FBQUEsRUFDQTtNQUNBO01BRUE7UUFDQTtVQUNBO1lBQUFGO1lBQUFDO1lBQUFDO1VBQUE7UUFDQTtRQUNBO01BQ0E7TUFFQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0VBQUEsRUFDQTtFQUNBQztJQUNB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Q0FyQztjQUNBO2NBQ0E7Z0JBQ0F3QztjQUNBO2dCQUNBQztjQUNBO1lBQ0E7WUFDQXBDO2NBQ0FvQztZQUNBO1VBQ0E7UUFDQTtNQUNBO01BRUFDO1FBQ0E7UUFDQTtVQUNBQztZQUFBO1VBQUE7VUFDQTFHO1VBQ0EyRztRQUNBO1FBQ0E7VUFDQUM7VUFDQUE7UUFDQTtRQUNBO01BQ0E7UUFDQWpEO1FBQ0E7VUFDQUE7WUFBQU87WUFBQUM7VUFBQTtVQUNBO1VBQ0E7UUFDQTtVQUNBUjtZQUFBTztZQUFBQztVQUFBO1FBQ0E7TUFDQTtRQUNBUjtRQUNBQTtVQUFBTztVQUFBQztRQUFBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxMTMuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VcIiB2LWlmPVwib3JkZXJEZXRhaWxcIj5cblx0XHQ8dmlldyB2LWlmPVwiIXNob3dNYXBTdGF0dXNcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zaW1wbGUtbmF2XCIgOnN0eWxlPVwieyBwYWRkaW5nVG9wOiBzdGF0dXNCYXJIZWlnaHQgKyAncHgnIH1cIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NpbXBsZS1uYXYtaW5uZXJcIj5cblx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctbGVmdFwiIGNvbG9yPVwiI2ZmZmZmZlwiIHNpemU9XCIyMFwiIEBjbGljaz1cImhhbmRsZUJhY2tcIj48L3UtaWNvbj5cblx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2ltcGxlLW5hdi10aXRsZVwiPuiuouWNleivpuaDhTwvdGV4dD5cblx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctbGVmdFwiIGNvbG9yPVwiIzEwNkVGQVwiIHNpemU9XCIyMFwiPjwvdS1pY29uPlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblxuXHRcdDx2aWV3IHYtaWY9XCJzaG93TWFwU3RhdHVzXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZml4ZWQtdG9wXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19tYXAtd3JhcFwiPlxuXHRcdFx0XHQ8bWFwXG5cdFx0XHRcdFx0aWQ9XCJvcmRlckRldGFpbE1hcFwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fbWFwXCJcblx0XHRcdFx0XHQ6bGF0aXR1ZGU9XCJtYXBEYXRhLmNlbnRlci5sYXRpdHVkZVwiXG5cdFx0XHRcdFx0OmxvbmdpdHVkZT1cIm1hcERhdGEuY2VudGVyLmxvbmdpdHVkZVwiXG5cdFx0XHRcdFx0Om1hcmtlcnM9XCJtYXBEYXRhLm1hcmtlcnNcIlxuXHRcdFx0XHRcdDpwb2x5bGluZT1cIm1hcERhdGEucG9seWxpbmVcIlxuXHRcdFx0XHRcdDppbmNsdWRlLXBvaW50cz1cIm1hcERhdGEuaW5jbHVkZVBvaW50c1wiXG5cdFx0XHRcdFx0OnNjYWxlPVwibWFwRGF0YS5zY2FsZVwiXG5cdFx0XHRcdFx0OmVuYWJsZS16b29tPVwidHJ1ZVwiXG5cdFx0XHRcdFx0OmVuYWJsZS1zY3JvbGw9XCJ0cnVlXCJcblx0XHRcdFx0PjwvbWFwPlxuXHRcdFx0PC92aWV3PlxuXG5cdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdGF0dXMtYmFyXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N0YXR1cy1sZWZ0XCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3RhdHVzLWRvdFwiPjwvdmlldz5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdGF0dXMtdGl0bGVcIj57eyBzdGF0dXNUZXh0TWFwW29yZGVyRGV0YWlsLnN0YXR1c10gfHwgJ+W+heWPlui0pycgfX08L3RleHQ+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3RhdHVzLXJpZ2h0XCI+XG5cdFx0XHRcdFx0PHRleHQgdi1pZj1cIm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gM1wiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N0YXR1cy1jYW5jZWxcIiBAY2xpY2s9XCJoYW5kbGVDYW5jZWxPcmRlclwiPuWPlua2iOiuouWNlTwvdGV4dD5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zdGF0dXMtbm9cIiB2LWlmPVwib3JkZXJJbmRleFwiPiN7eyBvcmRlckluZGV4IH19PC90ZXh0PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXG5cdFx0PHNjcm9sbC12aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2JvZHlcIiBzY3JvbGwteSA6c3R5bGU9XCJib2R5U3R5bGVcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbnRlbnRcIj5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbiBvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbi0tbWFpblwiPlxuXHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJzaG93TWFwU3RhdHVzXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3VtbWFyeVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc3VtbWFyeS1sZWZ0XCI+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2hlYWQtbGVmdFwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSB2LWlmPVwiZm9ybWF0dGVkUmVtYWluVGltZVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGltZVwiPnt7IGZvcm1hdHRlZFJlbWFpblRpbWUgfX3lhoU8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190aW1lLXN1YlwiPumAgei+vjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RpbWVcIiB2LWVsc2U+6YWN6YCB5bey6LaF5pe277yM6K+35bC95b+r6YCB6L6+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGFnc1wiPlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSB2LWlmPVwib3JkZXJEZXRhaWwuaXNVcmdlbnQgPT09IDFcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWctaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfamlzdWRhQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHYtZWxzZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWctaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfYmlhb3N1ZGFAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwib3JkZXJEZXRhaWwuaXNWYWx1YWJsZVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy10ZXh0XCI+6LS16YeN54mp5ZOBPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3N1bW1hcnktcmlnaHRcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcHJpY2VcIj7CpXt7IG9yZGVyRGV0YWlsLnBsYXRmb3JtUmV3YXJkQW1vdW50ID8gKG9yZGVyRGV0YWlsLmRyaXZlckZlZSArIG9yZGVyRGV0YWlsLnBsYXRmb3JtUmV3YXJkQW1vdW50KSAvIDEwMCA6IChvcmRlckRldGFpbC5kcml2ZXJGZWUgLyAxMDApLnRvRml4ZWQoMikgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJvcmRlckRldGFpbC5wbGF0Zm9ybVJld2FyZEFtb3VudFwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2V4dHJhXCI+5ZCr5Yqg5oClwqV7eyAob3JkZXJEZXRhaWwucGxhdGZvcm1SZXdhcmRBbW91bnQgLyAxMDApLnRvRml4ZWQoMikgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgdi1lbHNlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RvbmUtc3VtbWFyeVwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZG9uZS1zdW1tYXJ5LWxlZnRcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZG9uZS10aXRsZVwiPnt7IHN0YXR1c1RleHRNYXBbb3JkZXJEZXRhaWwuc3RhdHVzXSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fdGFncyBvcmRlci1kZXRhaWwtcGFnZV9fdGFncy0tZG9uZVwiPlxuXHRcdFx0XHRcdFx0XHRcdDxpbWFnZSB2LWlmPVwib3JkZXJEZXRhaWwuaXNVcmdlbnQgPT09IDFcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWctaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfamlzdWRhQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0PGltYWdlIHYtZWxzZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX190YWctaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfYmlhb3N1ZGFAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwib3JkZXJEZXRhaWwuaXNWYWx1YWJsZVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3RhZy10ZXh0XCI+6LS16YeN54mp5ZOBPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kb25lLXN1bW1hcnktcmlnaHRcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZG9uZS1wcmljZS1yb3dcIj5cblx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19wcmljZVwiPsKle3sgKG9yZGVyRGV0YWlsLmRyaXZlckZlZSAvIDEwMCkudG9GaXhlZCgxKSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwib3JkZXJEZXRhaWwuaXNVcmdlbnQgPT09IDFcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19leHRyYVwiPuWQq+WKoOaApcKle3sgb3JkZXJEZXRhaWwudXJnZW50QW1vdW50IC8gMTAwIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWxpc3RcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtbGVmdFwiPlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWJhZGdlIG9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1iYWRnZS0tdGFrZVwiPuWPljwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1kaXZpZGVyXCI+PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLW1haW5cIj5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS10ZXh0c1wiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtdGl0bGVcIj57eyBvcmRlckRldGFpbC5kZXBvc2l0U2hvcE5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1kZXNjXCI+e3sgb3JkZXJEZXRhaWwuZGVwb3NpdFNob3BBZGRyZXNzIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1hY3Rpb25zXCIgdi1pZj1cIiFbNyw5OV0uaW5jbHVkZXMob3JkZXJEZXRhaWwuc3RhdHVzKVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWljb25cIiBzcmM9XCIvc3RhdGljL2ltYWdlL2ljX2MxYWxsQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiB2LWlmPVwiWzMsNCw1XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpICYmIG9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wUGhvbmVcIiBAY2xpY2s9XCJtYWtlU2hvcENhbGwoJ2RlcG9zaXQnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfZGFvaGFuZ0AyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCIgQGNsaWNrPVwibmF2aWdhdGVUb0FkZHJlc3MoJ2RlcG9zaXQnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWl0ZW0gb3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWl0ZW0tLWVuZFwiIHN0eWxlPVwicGFkZGluZy1ib3R0b206IDMwcnB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U1RTVFNTtcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtbGVmdFwiPlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWJhZGdlIG9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1iYWRnZS0tc2VuZFwiPumAgTwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1tYWluXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtdGV4dHNcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLXRpdGxlXCI+e3sgb3JkZXJEZXRhaWwudGFrZU5hbWUgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3V0ZS1kZXNjXCI+e3sgb3JkZXJEZXRhaWwudGFrZUFkZHJlc3MgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3JvdXRlLWFjdGlvbnNcIiB2LWlmPVwiIVs3LDk5XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfYzFhbGxAMngucG5nXCIgbW9kZT1cImFzcGVjdEZpdFwiIHYtaWY9XCJbNCw1XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpICYmIG9yZGVyRGV0YWlsLnRha2VDb250YWN0UGhvbmVcIiBAY2xpY2s9XCJtYWtlU2hvcENhbGwoJ3Rha2UnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcm91dGUtaWNvblwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfZGFvaGFuZ0AyeC5wbmdcIiBtb2RlPVwiYXNwZWN0Rml0XCIgQGNsaWNrPVwibmF2aWdhdGVUb0FkZHJlc3MoJ3Rha2UnKVwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdFx0PHZpZXcgdi1pZj1cIm9yZGVyRGV0YWlsLnN0YXR1cyA9PT0gNCAmJiBvcmRlckRldGFpbC50YWtlU2hvcElkXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcXJjb2RlLXdyYXBcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3FyY29kZS1ib3hcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3FyY29kZS1pbWFnZVwiIDpzcmM9XCInaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTIwMHgyMDAmZGF0YT0nICsgb3JkZXJEZXRhaWwuZHJpdmVyVmVyaWZ5Q29kZVwiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcXJjb2RlLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuZHJpdmVyVmVyaWZ5Q29kZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3FyY29kZS1sYWJlbFwiPuWPlui0p+eggTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAzMHJweDsgcGFkZGluZzogMCAzMHJweDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcIj5cblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAxMDAlOyBwYWRkaW5nLWJvdHRvbTogMzBycHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTVFNUU1O1wiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fc2VjdGlvbi10aXRsZVwiPuWuouaIt+S/oeaBrzwvdGV4dD5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3Jvdy1pbmZvXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3Jvdy10ZXh0XCI+e3sgb3JkZXJEZXRhaWwuY3VzdG9tZXJJbmZvIHx8ICcnIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8IS0tIDxpbWFnZSBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19yb3ctaWNvblwiIHYtaWY9XCJbMyw0XS5pbmNsdWRlcyhvcmRlckRldGFpbC5zdGF0dXMpXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19jYWxsQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJtYWtlUGhvbmVDYWxsXCI+PC9pbWFnZT4gLS0+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwib3JkZXJEZXRhaWwuY29tbWVudFN0YXR1cyA9PT0gMVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtY2FyZFwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19jb21tZW50LXRpdGxlXCI+5a6i5oi35bey6K+E5Lu377yaPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19jb21tZW50LXNjb3JlXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fY29tbWVudC1zdGFyXCI+4piFPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtc2NvcmUtdGV4dFwiPjQuNTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19jb21tZW50LWNvbnRlbnRcIj57eyBvcmRlckRldGFpbC5jb21tZW50Q29udGVudCB8fCAnJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2NvbW1lbnQtaW1hZ2VcIiBzcmM9XCIvc3RhdGljL2xvZ28ucG5nXCIgbW9kZT1cImFzcGVjdEZpbGxcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb25cIiBzdHlsZT1cIm1hcmdpbi10b3A6IDMwcnB4OyBwYWRkaW5nOiAwIDMwcnB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb24tdGl0bGVcIj7nianlk4HmuIXljZXvvIjlhbF7eyBnb29kc0xpc3QubGVuZ3RoIH195Lu277yJPC90ZXh0PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2dvb2RzLWxpc3RcIiBzdHlsZT1cIndpZHRoOiAxMDAlOyBwYWRkaW5nLWJvdHRvbTogMzBycHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTVFNUU1O1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1mb3I9XCJpdGVtIGluIGdvb2RzTGlzdFwiIDprZXk9XCJpdGVtLm5hbWVcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19nb29kcy1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2dvb2RzLW5hbWVcIiA6c3R5bGU9XCJpdGVtLmlzT3ZlcnNpemVkID09PSAxID8gJ2NvbG9yOiAjRkYwMDIwOycgOiAnJ1wiPnt7IGl0ZW0ubmFtZSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZ29vZHMtY291bnRcIj54e3sgaXRlbS5xdWFudGl0eSB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAzMHJweDsgcGFkZGluZzogMCAzMHJweDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcIj5cblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19zZWN0aW9uLXRpdGxlXCI+54mp5ZOB5L+h5oGvPC90ZXh0PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2dvb2RzLWNhdGVnb3J5XCI+e3sgb3JkZXJEZXRhaWwuZ29vZFR5cGVOYW1lIHx8ICcnIH19PC90ZXh0PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3Bob3Rvc1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fcGhvdG9cIiB2LWZvcj1cIihpdGVtLCBpbmRleCkgaW4gcGhvdG9zXCIgOmtleT1cImluZGV4XCI+XG5cdFx0XHRcdFx0XHRcdDxpbWFnZSA6c3JjPVwiaXRlbVwiIG1vZGU9XCJoZWlnaHRGaXhcIiBAY2xpY2s9XCJwcmV2aWV3SW1hZ2UoaXRlbSlcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IHN0eWxlPVwid2lkdGg6IDEwMCU7IGhlaWdodDogMzBycHg7IGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XCI+PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb24gb3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb24tLWxhc3RcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDMwcnB4OyBwYWRkaW5nOiAwIDMwcnB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX3NlY3Rpb24tdGl0bGVcIj7orqLljZXkv6Hmga88L3RleHQ+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLWxpc3RcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuiuouWNlee8luWPt++8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuY29kZSB8fCAnLScgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwib3JkZXJEZXRhaWwuY3JlYXRlVGltZVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuS4i+WNleaXtumXtO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuY3JlYXRlVGltZSB8fCAnLScgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiWzMsNCw1LDYsNyw5OV0uaW5jbHVkZXMob3JkZXJEZXRhaWwuc3RhdHVzKVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuaOpeWNleaXtumXtO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuYWNjZXB0VGltZSB8fCAnLScgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiWzMsNCw1LDYsNyw5OV0uaW5jbHVkZXMob3JkZXJEZXRhaWwuc3RhdHVzKVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuiuouWNleWkh+azqO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwucmVtYXJrIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJbNCw1LDYsNyw5OV0uaW5jbHVkZXMob3JkZXJEZXRhaWwuc3RhdHVzKVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuWPlui0p+aXtumXtO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuZHJpdmVyVGFrZVRpbWUgfHwgJy0nIH19PC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgdi1pZj1cIls1LDYsNyw5OV0uaW5jbHVkZXMob3JkZXJEZXRhaWwuc3RhdHVzKVwiIGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC1sYWJlbFwiPuWujOaIkOaXtumXtO+8mjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZGV0YWlsLXZhbHVlXCI+e3sgb3JkZXJEZXRhaWwuZmluaXNoVGltZSB8fCAnLScgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyB2LWlmPVwib3JkZXJEZXRhaWwuaXNFdmFsdWF0ZWQgPT09IDFcIiBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtaXRlbVwiPlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19kZXRhaWwtbGFiZWxcIj7or4Tku7fml7bpl7TvvJo8L3RleHQ+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2RldGFpbC12YWx1ZVwiPnt7IG9yZGVyRGV0YWlsLmNvbW1lbnRUaW1lIHx8ICctJyB9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdDwvdmlldz5cblx0XHQ8L3Njcm9sbC12aWV3PlxuXG5cdFx0PHZpZXcgdi1pZj1cImZvb3RlckJ1dHRvbnMubGVuZ3RoXCIgY2xhc3M9XCJvcmRlci1kZXRhaWwtcGFnZV9fZm9vdGVyXCI+XG5cdFx0XHQ8dmlldz48L3ZpZXc+XG5cdFx0XHQ8dmlldyBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMjBycHg7XCI+XG5cdFx0XHRcdDxidXR0b25cblx0XHRcdFx0XHR2LWZvcj1cImJ1dHRvbiBpbiBmb290ZXJCdXR0b25zXCJcblx0XHRcdFx0XHQ6a2V5PVwiYnV0dG9uLnRleHRcIlxuXHRcdFx0XHRcdGNsYXNzPVwib3JkZXItZGV0YWlsLXBhZ2VfX2Zvb3Rlci1idG5cIlxuXHRcdFx0XHRcdDpjbGFzcz1cImJ1dHRvbi5wcmltYXJ5ID8gJ29yZGVyLWRldGFpbC1wYWdlX19mb290ZXItYnRuLS1wcmltYXJ5JyA6ICdvcmRlci1kZXRhaWwtcGFnZV9fZm9vdGVyLWJ0bi0tZ2hvc3QnXCJcblx0XHRcdFx0XHRob3Zlci1jbGFzcz1cIm9yZGVyLWRldGFpbC1wYWdlX19mb290ZXItYnRuLS1ob3ZlclwiXG5cdFx0XHRcdFx0QGNsaWNrPVwiaGFuZGxlRm9vdGVyQWN0aW9uKGJ1dHRvbilcIlxuXHRcdFx0XHQ+XG5cdFx0XHRcdFx0e3sgYnV0dG9uLnRleHQgfX1cblx0XHRcdFx0PC9idXR0b24+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcblx0XHQ8L3ZpZXc+XG5cblx0XHQ8dS1tb2RhbFxuXHRcdFx0OnNob3c9XCJzaG93Q2FuY2VsTW9kYWxcIlxuXHRcdFx0c2hvd0NhbmNlbEJ1dHRvblxuXHRcdFx0QGNhbmNlbD1cInNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXCJcblx0XHRcdGNhbmNlbENvbG9yPVwiIzY2NjY2NlwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMDA1NUZGXCJcblx0XHRcdHRpdGxlPVwi5Y+W5raI6K6i5Y2V56Gu6K6kXCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybUNhbmNlbE9yZGVyXCI+XG5cdFx0XHQ8dmlldyBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzMzMzMzMztmb250LXNpemU6IDI4cnB4O2ZvbnQtd2VpZ2h0OiA0MDA7XCI+XG5cdFx0XHRcdOaCqOS7iuaXpei/mOWPr+WPlua2iCB7eyBjYW5jZWxSZW1haW4gfX0g5qyh6K6i5Y2V77yM5qyh5pWw55So5bC95ZCO5LuK5pel5bCG5peg5rOV5o6l5Y2V77yM5piv5ZCm56Gu6K6k5Y+W5raI77yfXG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LW1vZGFsPlxuXG5cdFx0PHUtbW9kYWxcblx0XHRcdDpzaG93PVwic2hvd0dyYWJNb2RhbFwiXG5cdFx0XHRzaG93Q2FuY2VsQnV0dG9uXG5cdFx0XHRAY2FuY2VsPVwic2hvd0dyYWJNb2RhbCA9IGZhbHNlXCJcblx0XHRcdGNhbmNlbENvbG9yPVwiIzY2NjY2NlwiXG5cdFx0XHRjb25maXJtQ29sb3I9XCIjMDA1NUZGXCJcblx0XHRcdHRpdGxlPVwi5rip6aao5o+Q56S6XCJcblx0XHRcdEBjb25maXJtPVwiY29uZmlybUdyYWJPcmRlclwiPlxuXHRcdFx0PHZpZXcgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICMzMzMzMzM7Zm9udC1zaXplOiAyOHJweDtmb250LXdlaWdodDogNDAwO1wiPlxuXHRcdFx0XHR7eyBvcmRlckRldGFpbCAmJiBvcmRlckRldGFpbC5oYXNPdmVyc2l6ZWQgPT09IDEgPyAn5pys6K6i5Y2V5pyJ54m55aSn5Lu25bC65a+46KGM5p2O77yM6K+356Gu6K6k5piv5ZCm57un57ut5oqi5Y2V77yfJyA6ICfmmK/lkKbnoa7orqTmjqXljZXvvJ8nIH19XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LW1vZGFsPlxuXG5cdFx0PHUtcG9wdXAgOnNob3c9XCJzaG93UGhvdG9Qb3B1cFwiIHJvdW5kPVwiMjBcIiBtb2RlPVwiYm90dG9tXCIgQGNsb3NlPVwiY2xvc2VQaG90b1BvcHVwXCI+XG5cdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX2hlYWRlclwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3BsYWNlaG9sZGVyXCI+PC92aWV3PlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3RpdGxlXCI+e3sgcGhvdG9Qb3B1cFRpdGxlIH19PC90ZXh0PlxuXHRcdFx0XHRcdDxpbWFnZSBjbGFzcz1cInBob3RvLXBvcHVwX19jbG9zZVwiIHNyYz1cIi9zdGF0aWMvaW1hZ2UvaWNfY2xvc2UyQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIiBAY2xpY2s9XCJjbG9zZVBob3RvUG9wdXBcIj48L2ltYWdlPlxuXHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaG90by1wb3B1cF9fc2VjdGlvblwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX2xhYmVsLXJvd1wiPlxuXHRcdFx0XHRcdFx0PHRleHQgY2xhc3M9XCJwaG90by1wb3B1cF9fbGFiZWxcIj57eyBwaG90b1BvcHVwTGFiZWwgfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19yZXF1aXJlZFwiPio8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cInBob3RvLXBvcHVwX19oaW50XCI+5pyA5aSaM+W8oOeFp+eJhzwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBob3RvLXBvcHVwX19waG90b3NcIj5cblx0XHRcdFx0XHRcdDx2aWV3IHYtZm9yPVwiKHBob3RvLCBpbmRleCkgaW4gdXBsb2FkZWRQaG90b3NcIiA6a2V5PVwiaW5kZXhcIiBjbGFzcz1cInBob3RvLXBvcHVwX19wcmV2aWV3LWNhcmRcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlIGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctaW1hZ2VcIiA6c3JjPVwicGhvdG9cIiBtb2RlPVwiYXNwZWN0RmlsbFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctbWFza1wiIEBjbGljaz1cImRlbGV0ZVBob3RvKGluZGV4KVwiPlxuXHRcdFx0XHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3ByZXZpZXctZGVsZXRlXCI+5Yig6ZmkPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cblx0XHRcdFx0XHRcdDx2aWV3IHYtaWY9XCJ1cGxvYWRlZFBob3Rvcy5sZW5ndGggPCAzXCIgY2xhc3M9XCJwaG90by1wb3B1cF9fdXBsb2FkLWNhcmRcIiBAY2xpY2s9XCJjaG9vc2VJbWFnZVwiPlxuXHRcdFx0XHRcdFx0XHQ8aW1hZ2UgY2xhc3M9XCJwaG90by1wb3B1cF9fdXBsb2FkLWljb25cIiBzcmM9XCIvc3RhdGljL2ltYWdlL2J0bl91cGxvYWQyQDJ4LnBuZ1wiIG1vZGU9XCJhc3BlY3RGaXRcIj48L2ltYWdlPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwicGhvdG8tcG9wdXBfX3NlY3Rpb24gcGhvdG8tcG9wdXBfX3NlY3Rpb24tLXJlbWFya1wiPlxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwicGhvdG8tcG9wdXBfX3JlbWFyay10aXRsZVwiPuWkh+azqOS/oeaBrzwvdGV4dD5cblx0XHRcdFx0XHQ8dGV4dGFyZWEgdi1tb2RlbD1cInBob3RvUmVtYXJrXCIgY2xhc3M9XCJwaG90by1wb3B1cF9fdGV4dGFyZWFcIiBtYXhsZW5ndGg9XCIyMDBcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiIHBsYWNlaG9sZGVyLXN0eWxlPVwiY29sb3I6ICNjN2NiZDM7XCIgLz5cblx0XHRcdFx0PC92aWV3PlxuXG5cdFx0XHRcdDxidXR0b24gY2xhc3M9XCJwaG90by1wb3B1cF9fc3VibWl0XCIgaG92ZXItY2xhc3M9XCJwaG90by1wb3B1cF9fc3VibWl0LS1ob3ZlclwiIEBjbGljaz1cInN1Ym1pdFBob3RvUG9wdXBcIj57eyBwaG90b1BvcHVwU3VibWl0VGV4dCB9fTwvYnV0dG9uPlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdS1wb3B1cD5cblx0PC92aWV3PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0b3JkZXJJZDogbnVsbCxcblx0XHRcdFx0b3JkZXJJbmRleDogbnVsbCxcblx0XHRcdFx0b3JkZXJEZXRhaWw6IG51bGwsXG5cdFx0XHRcdHN0YXR1c0JhckhlaWdodDogMCxcblx0XHRcdFx0dG9wRml4ZWRIZWlnaHQ6IDAsXG5cdFx0XHRcdHNob3dQaG90b1BvcHVwOiBmYWxzZSxcblx0XHRcdFx0cGhvdG9Qb3B1cE1vZGU6ICcnLFxuXHRcdFx0XHRwaG90b1JlbWFyazogJycsXG5cdFx0XHRcdHVwbG9hZGVkUGhvdG9zOiBbXSxcblx0XHRcdFx0c2hvd0NhbmNlbE1vZGFsOiBmYWxzZSxcblx0XHRcdFx0Y2FuY2VsUmVtYWluOiAwLFxuXHRcdFx0XHRzaG93R3JhYk1vZGFsOiBmYWxzZSxcblx0XHRcdFx0Y3VycmVudExvY2F0aW9uOiBudWxsLFxuXHRcdFx0XHRyb3V0ZVBvaW50czogW10sXG5cdFx0XHRcdGxvY2F0aW9uVGltZXI6IG51bGwsXG5cdFx0XHRcdGRpc3RhbmNlOiAwLFxuXHRcdFx0XHRkdXJhdGlvbjogMCxcblx0XHRcdFx0aXNXaXRoaW5PcGVyYXRpb25SYWRpdXM6IHRydWUsXG5cdFx0XHRcdHN0YXR1c1RleHRNYXA6IHtcblx0XHRcdFx0XHQyOiAn5b6F5o6l5Y2VJyxcblx0XHRcdFx0XHQzOiAn5b6F5Y+W6LSnJyxcblx0XHRcdFx0XHQ0OiAn6YWN6YCB5LitJyxcblx0XHRcdFx0XHQ1OiAn5bey6YCB6L6+Jyxcblx0XHRcdFx0XHQ3OiAn5bey5a6M5oiQJyxcblx0XHRcdFx0XHQ5OTogJ+W3suWPlua2iCdcblx0XHRcdFx0fSxcblx0XHRcdFx0Z29vZHNMaXN0OiBbXSxcblx0XHRcdFx0cGhvdG9zOiBbXVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdC4uLm1hcFN0YXRlKFsndXNlckluZm8nXSksXG5cdFx0XHRmb3JtYXR0ZWRSZW1haW5UaW1lKCkge1xuXHRcdFx0XHRjb25zdCBtaW51dGVzID0gdGhpcy5vcmRlckRldGFpbC5yZW1haW5NaW51dGVzXG5cdFx0XHRcdGlmICghbWludXRlcykgcmV0dXJuIG51bGxcblx0XHRcdFx0aWYgKG1pbnV0ZXMgPj0gNjApIHtcblx0XHRcdFx0XHRjb25zdCBob3VycyA9IE1hdGguZmxvb3IobWludXRlcyAvIDYwKVxuXHRcdFx0XHRcdGNvbnN0IG1pbnMgPSBtaW51dGVzICUgNjBcblx0XHRcdFx0XHRyZXR1cm4gbWlucyA+IDAgPyBgJHtob3Vyc33lsI/ml7Yke21pbnN95YiG6ZKfYCA6IGAke2hvdXJzfeWwj+aXtmBcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gYCR7bWludXRlc33liIbpkp9gXG5cdFx0XHR9LFxuXHRcdFx0c2hvd01hcFN0YXR1cygpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMub3JkZXJEZXRhaWwuc3RhdHVzID09PSAzIHx8IHRoaXMub3JkZXJEZXRhaWwuc3RhdHVzID09PSA0XG5cdFx0XHR9LFxuXHRcdFx0bWFwRGF0YSgpIHtcblx0XHRcdFx0Y29uc3Qgc3RhcnRQb2ludCA9IHRoaXMuY3VycmVudExvY2F0aW9uIHx8IHsgbGF0aXR1ZGU6IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMYXQsIGxvbmdpdHVkZTogdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZyB9XG5cdFx0XHRcdGNvbnN0IGhhc0VuZFBvaW50ID0gdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxhdCAmJiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTG5nXG5cdFx0XHRcdGNvbnN0IGVuZFBvaW50ID0geyBsYXRpdHVkZTogdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZywgbG9uZ2l0dWRlOiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTGF0IH1cblxuXHRcdFx0XHRsZXQgY2VudGVyXG5cdFx0XHRcdGxldCBzY2FsZSA9IDEyXG5cdFx0XHRcdGlmICh0aGlzLmN1cnJlbnRMb2NhdGlvbiAmJiBoYXNFbmRQb2ludCkge1xuXHRcdFx0XHRcdGNvbnN0IGxhdFNwYW4gPSBNYXRoLmFicyh0aGlzLmN1cnJlbnRMb2NhdGlvbi5sYXRpdHVkZSAtIGVuZFBvaW50LmxhdGl0dWRlKVxuXHRcdFx0XHRcdGNvbnN0IGxuZ1NwYW4gPSBNYXRoLmFicyh0aGlzLmN1cnJlbnRMb2NhdGlvbi5sb25naXR1ZGUgLSBlbmRQb2ludC5sb25naXR1ZGUpXG5cdFx0XHRcdFx0Y29uc3QgbWF4U3BhbiA9IE1hdGgubWF4KGxhdFNwYW4sIGxuZ1NwYW4pXG5cdFx0XHRcdFx0Y2VudGVyID0ge1xuXHRcdFx0XHRcdFx0bGF0aXR1ZGU6ICh0aGlzLmN1cnJlbnRMb2NhdGlvbi5sYXRpdHVkZSArIGVuZFBvaW50LmxhdGl0dWRlKSAvIDIsXG5cdFx0XHRcdFx0XHRsb25naXR1ZGU6ICh0aGlzLmN1cnJlbnRMb2NhdGlvbi5sb25naXR1ZGUgKyBlbmRQb2ludC5sb25naXR1ZGUpIC8gMlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpZiAobWF4U3BhbiA+IDAuMykge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSA5XG5cdFx0XHRcdFx0fSBlbHNlIGlmIChtYXhTcGFuID4gMC4xNSkge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSAxMFxuXHRcdFx0XHRcdH0gZWxzZSBpZiAobWF4U3BhbiA+IDAuMDgpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTFcblx0XHRcdFx0XHR9IGVsc2UgaWYgKG1heFNwYW4gPiAwLjA0KSB7XG5cdFx0XHRcdFx0XHRzY2FsZSA9IDEyXG5cdFx0XHRcdFx0fSBlbHNlIGlmIChtYXhTcGFuID4gMC4wMikge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSAxM1xuXHRcdFx0XHRcdH0gZWxzZSBpZiAobWF4U3BhbiA+IDAuMDEpIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTRcblx0XHRcdFx0XHR9IGVsc2UgaWYgKG1heFNwYW4gPiAwLjAwNSkge1xuXHRcdFx0XHRcdFx0c2NhbGUgPSAxNVxuXHRcdFx0XHRcdH0gZWxzZSBpZiAobWF4U3BhbiA+IDAuMDAyKSB7XG5cdFx0XHRcdFx0XHRzY2FsZSA9IDE2XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHNjYWxlID0gMTdcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gZWxzZSBpZiAodGhpcy5jdXJyZW50TG9jYXRpb24pIHtcblx0XHRcdFx0XHRjZW50ZXIgPSB0aGlzLmN1cnJlbnRMb2NhdGlvblxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGNlbnRlciA9IHsgbGF0aXR1ZGU6IHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMYXQsIGxvbmdpdHVkZTogdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZyB9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRjb25zdCBtYXJrZXJzID0gW1xuXHRcdFx0XHRcdHsgaWQ6IDEsIGxhdGl0dWRlOiBzdGFydFBvaW50LmxhdGl0dWRlLCBsb25naXR1ZGU6IHN0YXJ0UG9pbnQubG9uZ2l0dWRlLCBpY29uUGF0aDogJy9zdGF0aWMvaW1hZ2Uvc3RhcnQucG5nJywgd2lkdGg6IDMyLCBoZWlnaHQ6IDM4LCBhbmNob3I6IHsgeDogMC41LCB5OiAxIH0gfSxcblx0XHRcdFx0XHR7IGlkOiAyLCBsYXRpdHVkZTogZW5kUG9pbnQubGF0aXR1ZGUsIGxvbmdpdHVkZTogZW5kUG9pbnQubG9uZ2l0dWRlLCBpY29uUGF0aDogJy9zdGF0aWMvaW1hZ2UvZW5kLnBuZycsIHdpZHRoOiAzMiwgaGVpZ2h0OiAzOCwgYW5jaG9yOiB7IHg6IDAuNSwgeTogMSB9IH0sXG5cdFx0XHRcdFx0eyBpZDogMywgbGF0aXR1ZGU6IHN0YXJ0UG9pbnQubGF0aXR1ZGUsIGxvbmdpdHVkZTogc3RhcnRQb2ludC5sb25naXR1ZGUsIGljb25QYXRoOiAnL3N0YXRpYy9pbWFnZS9kaXpoaS5wbmcnLCB3aWR0aDogMTIsIGhlaWdodDogMTIsIGFuY2hvcjogeyB4OiAwLjUsIHk6IDAuNSB9IH1cblx0XHRcdFx0XVxuXG5cdFx0XHRcdGNvbnN0IHJvdXRlUG9pbnRzID0gdGhpcy5yb3V0ZVBvaW50cy5sZW5ndGggPiAwID8gdGhpcy5yb3V0ZVBvaW50cyA6IFtcblx0XHRcdFx0XHRzdGFydFBvaW50LFxuXHRcdFx0XHRcdGVuZFBvaW50XG5cdFx0XHRcdF1cblxuXHRcdFx0XHRjb25zdCByZXN1bHQgPSB7XG5cdFx0XHRcdFx0Y2VudGVyLFxuXHRcdFx0XHRcdG1hcmtlcnMsXG5cdFx0XHRcdFx0cG9seWxpbmU6IHRoaXMucm91dGVQb2ludHMubGVuZ3RoID4gMCA/IFtcblx0XHRcdFx0XHRcdHsgcG9pbnRzOiByb3V0ZVBvaW50cywgY29sb3I6ICcjMDViZTc2Jywgd2lkdGg6IDI1LCBhcnJvd0xpbmU6IHRydWUsIGRvdHRlZExpbmU6IGZhbHNlIH1cblx0XHRcdFx0XHRdIDogW1xuXHRcdFx0XHRcdFx0eyBwb2ludHM6IHJvdXRlUG9pbnRzLCBjb2xvcjogJyMwNWJlNzYnLCB3aWR0aDogMjUsIGFycm93TGluZTogdHJ1ZSwgZG90dGVkTGluZTogdHJ1ZSB9XG5cdFx0XHRcdFx0XSxcblx0XHRcdFx0XHRpbmNsdWRlUG9pbnRzOiBbc3RhcnRQb2ludCwgZW5kUG9pbnRdLFxuXHRcdFx0XHRcdHNjYWxlXG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIHJlc3VsdFxuXHRcdFx0fSxcblx0XHRcdGJvZHlTdHlsZSgpIHtcblx0XHRcdFx0Y29uc3QgZm9vdGVySGVpZ2h0ID0gdW5pLnVweDJweCgxMTYpXG5cdFx0XHRcdGNvbnN0IHNpbXBsZU5hdkhlaWdodCA9IHRoaXMuc3RhdHVzQmFySGVpZ2h0ICsgdW5pLnVweDJweCg4OClcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHRwYWRkaW5nVG9wOiAodGhpcy5zaG93TWFwU3RhdHVzID8gdGhpcy50b3BGaXhlZEhlaWdodCA6IHNpbXBsZU5hdkhlaWdodCkgKyAncHgnLFxuXHRcdFx0XHRcdGhlaWdodDogYGNhbGMoMTAwdmggLSAke3RoaXMuZm9vdGVyQnV0dG9ucy5sZW5ndGggPyBmb290ZXJIZWlnaHQgKyAyMCA6IDIwfXB4KWBcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGZvb3RlckJ1dHRvbnMoKSB7XG5cdFx0XHRcdGNvbnN0IHN0YXR1cyA9IHRoaXMub3JkZXJEZXRhaWwuc3RhdHVzXG5cdFx0XHRcdGNvbnN0IHRha2VTaG9wSWQgPSB0aGlzLm9yZGVyRGV0YWlsLnRha2VTaG9wSWRcblxuXHRcdFx0XHRpZiAoc3RhdHVzID09PSAyKSB7XG5cdFx0XHRcdFx0cmV0dXJuIFt7IHRleHQ6ICfnq4vljbPmiqLljZUnLCBwcmltYXJ5OiB0cnVlLCBhY3Rpb246ICdncmFiJyB9XVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKHN0YXR1cyA9PT0gMykge1xuXHRcdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0XHR7IHRleHQ6ICflj5bmtojorqLljZUnLCBwcmltYXJ5OiBmYWxzZSwgYWN0aW9uOiAnY2FuY2VsJyB9LFxuXHRcdFx0XHRcdFx0eyB0ZXh0OiAn5ouN54Wn5Y+W6LSnJywgcHJpbWFyeTogdHJ1ZSwgYWN0aW9uOiAncGlja3VwJyB9XG5cdFx0XHRcdFx0XVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKHN0YXR1cyA9PT0gNCkge1xuXHRcdFx0XHRcdGlmICghdGFrZVNob3BJZCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIFt7IHRleHQ6ICfmi43nhafpgIHovr4nLCBwcmltYXJ5OiB0cnVlLCBhY3Rpb246ICdkZWxpdmVyJyB9XVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gW11cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiBbXVxuXHRcdFx0fSxcblx0XHRcdHBob3RvUG9wdXBUaXRsZSgpIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMucGhvdG9Qb3B1cE1vZGUgPT09ICdkZWxpdmVyJyA/ICfmi43nhafpgIHovr4nIDogJ+aLjeeFp+WPlui0pydcblx0XHRcdH0sXG5cdFx0XHRwaG90b1BvcHVwTGFiZWwoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnBob3RvUG9wdXBNb2RlID09PSAnZGVsaXZlcicgPyAn5ouN5pGE6YCB6L6+54Wn54mHJyA6ICfmi43mkYTlj5botKfnhafniYcnXG5cdFx0XHR9LFxuXHRcdFx0cGhvdG9Qb3B1cFN1Ym1pdFRleHQoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnBob3RvUG9wdXBNb2RlID09PSAnZGVsaXZlcicgPyAn56Gu6K6k6YCB6L6+JyA6ICfnoa7orqTlj5botKcnXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRvbkxvYWQob3B0aW9ucykge1xuXHRcdFx0Y29uc3QgcGFnZXMgPSBnZXRDdXJyZW50UGFnZXMoKVxuXHRcdFx0Y29uc3QgY3VycmVudFBhZ2UgPSBwYWdlc1twYWdlcy5sZW5ndGggLSAxXVxuXHRcdFx0Y29uc3QgcGFnZU9wdGlvbnMgPSBjdXJyZW50UGFnZSAmJiBjdXJyZW50UGFnZS5vcHRpb25zID8gY3VycmVudFBhZ2Uub3B0aW9ucyA6IHt9XG5cdFx0XHRjb25zdCBzeXN0ZW1JbmZvID0gdW5pLmdldFN5c3RlbUluZm9TeW5jKClcblx0XHRcdHRoaXMuc3RhdHVzQmFySGVpZ2h0ID0gc3lzdGVtSW5mby5zdGF0dXNCYXJIZWlnaHQgfHwgMFxuXHRcdFx0dGhpcy5vcmRlcklkID0gb3B0aW9ucy5pZCB8fCBwYWdlT3B0aW9ucy5pZFxuXHRcdFx0dGhpcy5vcmRlckluZGV4ID0gb3B0aW9ucy5pbmRleFxuXHRcdFx0dGhpcy50b3BGaXhlZEhlaWdodCA9IHVuaS51cHgycHgoNTAwICsgOTIpXG5cdFx0XHRpZiAodGhpcy5vcmRlcklkKSB7XG5cdFx0XHRcdHRoaXMuZ2V0T3JkZXJEZXRhaWwoKVxuXHRcdFx0XHR0aGlzLmluaXRPcGVyYXRpb25SYWRpdXMoKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHRvblVubG9hZCgpIHtcblx0XHRcdGlmICh0aGlzLmxvY2F0aW9uVGltZXIpIHtcblx0XHRcdFx0Y2xlYXJJbnRlcnZhbCh0aGlzLmxvY2F0aW9uVGltZXIpXG5cdFx0XHRcdHRoaXMubG9jYXRpb25UaW1lciA9IG51bGxcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0aGFuZGxlQmFjaygpIHtcblx0XHRcdFx0dW5pLm5hdmlnYXRlQmFjayh7IGRlbHRhOiAxIH0pO1xuXHRcdFx0fSxcblxuXHRcdFx0aW5pdE9wZXJhdGlvblJhZGl1cygpIHtcblx0XHRcdFx0dW5pLmdldExvY2F0aW9uKHtcblx0XHRcdFx0XHR0eXBlOiAnZ2NqMDInLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuJHUuYXBpLmNoZWNrRHJpdmVyT3BlcmF0aW9uUmFkaXVzKHtcblx0XHRcdFx0XHRcdFx0bGF0OiByZXMubGF0aXR1ZGUsXG5cdFx0XHRcdFx0XHRcdGxuZzogcmVzLmxvbmdpdHVkZSxcblx0XHRcdFx0XHRcdFx0b3JkZXJJZDogdGhpcy5vcmRlcklkXG5cdFx0XHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5pc1dpdGhpbk9wZXJhdGlvblJhZGl1cyA9IHJlcy5kYXRhXG5cdFx0XHRcdFx0XHRcdFx0aWYgKCF0aGlzLmlzV2l0aGluT3BlcmF0aW9uUmFkaXVzKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGl0bGU6ICfmgqjlvZPliY3kvY3nva7kuI7mlLbotKflnLDlnYDot53nprvotoXlh7rojIPlm7TvvIzor7flnKjlnLDlnYDpmYTov5Hph43mlrDmi43nhacnLFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0ZmFpbDogKCkgPT4ge1xuXHRcdFx0XHRcdFx0dGhpcy5pc1dpdGhpbk9wZXJhdGlvblJhZGl1cyA9IGZhbHNlXG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0dGl0bGU6ICfmgqjlvZPliY3kvY3nva7mnYPpmZDmsqHmnInlvIDlkK/vvIzor7flhYjlvIDlkK/lkI7lho3mnaXmk43kvZwnLFxuXHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0T3JkZXJEZXRhaWwoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLm9yZGVyRGV0YWlsKHsgb3JkZXJJZDogdGhpcy5vcmRlcklkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRpZiAocmVzLmNvZGUgPT09IDIwMCkge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ29yZGVyRGV0YWlsOicsIHJlcy5kYXRhKVxuXHRcdFx0XHRcdFx0dGhpcy5vcmRlckRldGFpbCA9IHJlcy5kYXRhXG5cdFx0XHRcdFx0XHR0aGlzLmdvb2RzTGlzdCA9IHJlcy5kYXRhLml0ZW1zIHx8IFtdXG5cdFx0XHRcdFx0XHR0aGlzLnBob3RvcyA9IHJlcy5kYXRhLm9yZGVySW1hZ2VzIHx8IFtdXG5cdFx0XHRcdFx0XHRpZiAoKHRoaXMub3JkZXJEZXRhaWwuc3RhdHVzID09PSAzIHx8IHRoaXMub3JkZXJEZXRhaWwuc3RhdHVzID09PSA0KSAmJiB0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTGF0ICYmIHRoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMbmcpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5nZXRDdXJyZW50TG9jYXRpb24oKVxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ1NraXBwaW5nIGdldEN1cnJlbnRMb2NhdGlvbiAtIHN0YXR1cyBvciBjb29yZGluYXRlcyBub3QgYXZhaWxhYmxlJylcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRDdXJyZW50TG9jYXRpb24oKSB7XG5cdFx0XHRcdHRoaXMuZmV0Y2hMb2NhdGlvbigpXG5cdFx0XHRcdHRoaXMubG9jYXRpb25UaW1lciA9IHNldEludGVydmFsKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmZldGNoTG9jYXRpb24oKVxuXHRcdFx0XHR9LCA2MDAwMClcblx0XHRcdH0sXG5cblx0XHRcdGZldGNoTG9jYXRpb24oKSB7XG5cdFx0XHRcdHVuaS5nZXRMb2NhdGlvbih7XG5cdFx0XHRcdFx0dHlwZTogJ2djajAyJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmN1cnJlbnRMb2NhdGlvbiA9IHtcblx0XHRcdFx0XHRcdFx0bGF0aXR1ZGU6IHJlcy5sYXRpdHVkZSxcblx0XHRcdFx0XHRcdFx0bG9uZ2l0dWRlOiByZXMubG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR0aGlzLmdldFJvdXRlUGxhbigpXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRmYWlsOiAoZXJyKSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6I635Y+W5L2N572u5aSx6LSlJywgZXJyKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGdldFJvdXRlUGxhbigpIHtcblx0XHRcdFx0aWYgKCF0aGlzLmN1cnJlbnRMb2NhdGlvbiB8fCAhdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxhdCB8fCAhdGhpcy5vcmRlckRldGFpbC5uYXZpZ2F0ZUxuZykge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdTa2lwcGluZyByb3V0ZSBwbGFuIC0gbWlzc2luZyBkYXRhJylcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHRjb25zdCBmcm9tID0gYCR7dGhpcy5jdXJyZW50TG9jYXRpb24ubGF0aXR1ZGV9LCR7dGhpcy5jdXJyZW50TG9jYXRpb24ubG9uZ2l0dWRlfWBcblx0XHRcdFx0Y29uc3QgdG8gPSBgJHt0aGlzLm9yZGVyRGV0YWlsLm5hdmlnYXRlTG5nfSwke3RoaXMub3JkZXJEZXRhaWwubmF2aWdhdGVMYXR9YFxuXHRcdFx0XHR0aGlzLiR1LmFwaS5kaXJlY3Rpb25JbmZvKHtcblx0XHRcdFx0XHRmcm9tLFxuXHRcdFx0XHRcdHRvLFxuXHRcdFx0XHRcdG1vZGU6IHRoaXMudXNlckluZm8uZHJpdmVyVHlwZVxuXHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ3BhdGhzIHN1Y2Nlc3M6JywgcmVzLmRhdGEucm91dGUucGF0aHNbMF0pXG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdGNvbnN0IHBhdGggPSByZXMuZGF0YS5yb3V0ZS5wYXRoc1swXVxuXHRcdFx0XHRcdFx0dGhpcy5kaXN0YW5jZSA9IHBhdGguZGlzdGFuY2Vcblx0XHRcdFx0XHRcdHRoaXMuZHVyYXRpb24gPSBwYXRoLmR1cmF0aW9uXG5cdFx0XHRcdFx0XHRjb25zdCBwb2ludHMgPSBbXVxuXHRcdFx0XHRcdFx0cGF0aC5zdGVwcy5mb3JFYWNoKHN0ZXAgPT4ge1xuXHRcdFx0XHRcdFx0XHRjb25zdCBwb2x5bGluZVN0ciA9IHN0ZXAucG9seWxpbmVcblx0XHRcdFx0XHRcdFx0Y29uc3QgY29vcmRpbmF0ZXMgPSBwb2x5bGluZVN0ci5zcGxpdCgnOycpXG5cdFx0XHRcdFx0XHRcdGNvb3JkaW5hdGVzLmZvckVhY2goY29vcmQgPT4ge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IFtsbmcsIGxhdF0gPSBjb29yZC5zcGxpdCgnLCcpXG5cdFx0XHRcdFx0XHRcdFx0cG9pbnRzLnB1c2goe1xuXHRcdFx0XHRcdFx0XHRcdFx0bGF0aXR1ZGU6IHBhcnNlRmxvYXQobGF0KSxcblx0XHRcdFx0XHRcdFx0XHRcdGxvbmdpdHVkZTogcGFyc2VGbG9hdChsbmcpXG5cdFx0XHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHR0aGlzLnJvdXRlUG9pbnRzID0gcG9pbnRzXG5cdFx0XHRcdFx0XHR0aGlzLiRmb3JjZVVwZGF0ZSgpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Ly8gbWFrZVBob25lQ2FsbCgpIHtcblx0XHRcdC8vIFx0aWYgKHRoaXMub3JkZXJEZXRhaWwuY29udGFjdFBob25lKSB7XG5cdFx0XHQvLyBcdFx0dW5pLm1ha2VQaG9uZUNhbGwoe1xuXHRcdFx0Ly8gXHRcdFx0cGhvbmVOdW1iZXI6IHRoaXMub3JkZXJEZXRhaWwuY29udGFjdFBob25lXG5cdFx0XHQvLyBcdFx0fSlcblx0XHRcdC8vIFx0fVxuXHRcdFx0Ly8gfSxcblxuXHRcdFx0bWFrZVNob3BDYWxsKHR5cGUpIHtcblx0XHRcdFx0Y29uc3QgcGhvbmUgPSB0eXBlID09PSAndGFrZScgPyB0aGlzLm9yZGVyRGV0YWlsLnRha2VDb250YWN0UGhvbmUgOiB0aGlzLm9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wUGhvbmVcblx0XHRcdFx0aWYgKHBob25lKSB7XG5cdFx0XHRcdFx0dW5pLm1ha2VQaG9uZUNhbGwoe1xuXHRcdFx0XHRcdFx0cGhvbmVOdW1iZXI6IHBob25lXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fVxuXHRcdFx0fSxcblxuXHRcdFx0bmF2aWdhdGVUb0FkZHJlc3ModHlwZSkge1xuXHRcdFx0XHRsZXQgbGF0aXR1ZGUsIGxvbmdpdHVkZSwgbmFtZSwgYWRkcmVzc1xuXHRcdFx0XHRpZiAodHlwZSA9PT0gJ2RlcG9zaXQnKSB7XG5cdFx0XHRcdFx0bGF0aXR1ZGUgPSB0aGlzLm9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wTGF0XG5cdFx0XHRcdFx0bG9uZ2l0dWRlID0gdGhpcy5vcmRlckRldGFpbC5kZXBvc2l0U2hvcExuZ1xuXHRcdFx0XHRcdG5hbWUgPSB0aGlzLm9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wTmFtZVxuXHRcdFx0XHRcdGFkZHJlc3MgPSB0aGlzLm9yZGVyRGV0YWlsLmRlcG9zaXRTaG9wQWRkcmVzc1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGxhdGl0dWRlID0gdGhpcy5vcmRlckRldGFpbC50YWtlTGF0XG5cdFx0XHRcdFx0bG9uZ2l0dWRlID0gdGhpcy5vcmRlckRldGFpbC50YWtlTG5nXG5cdFx0XHRcdFx0bmFtZSA9IHRoaXMub3JkZXJEZXRhaWwudGFrZU5hbWVcblx0XHRcdFx0XHRhZGRyZXNzID0gdGhpcy5vcmRlckRldGFpbC50YWtlQWRkcmVzc1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghbGF0aXR1ZGUgfHwgIWxvbmdpdHVkZSkge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+WcsOWdgOWdkOagh+e8uuWksScsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHVuaS5vcGVuTG9jYXRpb24oe1xuXHRcdFx0XHRcdGxhdGl0dWRlLFxuXHRcdFx0XHRcdGxvbmdpdHVkZSxcblx0XHRcdFx0XHRuYW1lLFxuXHRcdFx0XHRcdGFkZHJlc3MsXG5cdFx0XHRcdFx0c3VjY2VzczogKCkgPT4ge30sXG5cdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5omT5byA5Zyw5Zu+5aSx6LSlJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCdvcGVuTG9jYXRpb24gZmFpbDonLCBlcnIpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0cHJldmlld0ltYWdlKGN1cnJlbnQpIHtcblx0XHRcdFx0dW5pLnByZXZpZXdJbWFnZSh7XG5cdFx0XHRcdFx0Y3VycmVudCxcblx0XHRcdFx0XHR1cmxzOiB0aGlzLnBob3Rvc1xuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0aGFuZGxlRm9vdGVyQWN0aW9uKGJ1dHRvbikge1xuXHRcdFx0XHRjb25zdCBhY3Rpb24gPSBidXR0b24uYWN0aW9uXG5cblx0XHRcdFx0aWYgKGFjdGlvbiA9PT0gJ2NhbmNlbCcpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZUNhbmNlbE9yZGVyKClcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGlmIChhY3Rpb24gPT09ICdwaWNrdXAnIHx8IGFjdGlvbiA9PT0gJ2RlbGl2ZXInKSB7XG5cdFx0XHRcdFx0aWYgKCF0aGlzLmlzV2l0aGluT3BlcmF0aW9uUmFkaXVzKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0dGl0bGU6ICfmgqjlvZPliY3kvY3nva7kuI7mlLbotKflnLDlnYDot53nprvotoXlh7rojIPlm7TvvIzor7flnKjlnLDlnYDpmYTov5Hph43mlrDmi43nhacnLFxuXHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dGhpcy51cGxvYWRlZFBob3RvcyA9IFtdXG5cdFx0XHRcdFx0dGhpcy5waG90b1JlbWFyayA9ICcnXG5cdFx0XHRcdFx0dGhpcy5waG90b1BvcHVwTW9kZSA9IGFjdGlvblxuXHRcdFx0XHRcdHRoaXMuc2hvd1Bob3RvUG9wdXAgPSB0cnVlXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAoYWN0aW9uID09PSAnZ3JhYicpIHtcblx0XHRcdFx0XHR0aGlzLmhhbmRsZUdyYWJPcmRlcigpXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRoYW5kbGVDYW5jZWxPcmRlcigpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuY2FuY2VsTGltaXQoKS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHRoaXMuY2FuY2VsUmVtYWluID0gcmVzLmRhdGEucmVtYWluXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5maW5hbGx5KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IHRydWVcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRjb25maXJtQ2FuY2VsT3JkZXIoKSB7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmNhbmNlbE9yZGVyKHsgb3JkZXJJZDogdGhpcy5vcmRlcklkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+WPlua2iOaIkOWKnycsIGljb246ICdzdWNjZXNzJyB9KVxuXHRcdFx0XHRcdFx0dGhpcy5nZXRPcmRlckRldGFpbCgpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KS5maW5hbGx5KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dDYW5jZWxNb2RhbCA9IGZhbHNlXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0aGFuZGxlR3JhYk9yZGVyKCkge1xuXHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSB0cnVlXG5cdFx0XHR9LFxuXHRcdFx0Y29uZmlybUdyYWJPcmRlcigpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuZ3JhYk9yZGVyKHsgb3JkZXJJZDogdGhpcy5vcmRlcklkIH0pLnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6ICfmjqXljZXmiJDlip8nLCBpY29uOiAnc3VjY2VzcycgfSlcblx0XHRcdFx0XHRcdHRoaXMuZ2V0T3JkZXJEZXRhaWwoKVxuXHRcdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZUJhY2soKVxuXHRcdFx0XHRcdFx0fSwgMTUwMClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiByZXMubXNnIHx8ICfmjqXljZXlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3dHcmFiTW9kYWwgPSBmYWxzZVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblx0XHRcdGNsb3NlUGhvdG9Qb3B1cCgpIHtcblx0XHRcdFx0dGhpcy5zaG93UGhvdG9Qb3B1cCA9IGZhbHNlXG5cdFx0XHR9LFxuXHRcdFx0Y2hvb3NlSW1hZ2UoKSB7XG5cdFx0XHRcdGNvbnN0IGNvdW50ID0gMyAtIHRoaXMudXBsb2FkZWRQaG90b3MubGVuZ3RoXG5cdFx0XHRcdHVuaS5jaG9vc2VJbWFnZSh7XG5cdFx0XHRcdFx0Y291bnQ6IGNvdW50LFxuXHRcdFx0XHRcdHNvdXJjZVR5cGU6IFsnY2FtZXJhJywgJ2FsYnVtJ10sXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc3QgdGVtcEZpbGVQYXRocyA9IHJlcy50ZW1wRmlsZVBhdGhzXG5cdFx0XHRcdFx0XHR0aGlzLnVwbG9hZGVkUGhvdG9zID0gdGhpcy51cGxvYWRlZFBob3Rvcy5jb25jYXQodGVtcEZpbGVQYXRocylcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0ZGVsZXRlUGhvdG8oaW5kZXgpIHtcblx0XHRcdFx0dGhpcy51cGxvYWRlZFBob3Rvcy5zcGxpY2UoaW5kZXgsIDEpXG5cdFx0XHR9LFxuXHRcdFx0c3VibWl0UGhvdG9Qb3B1cCgpIHtcblx0XHRcdFx0aWYgKHRoaXMudXBsb2FkZWRQaG90b3MubGVuZ3RoID09PSAwKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn6K+35LiK5Lyg54Wn54mHJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblx0XHRcdFx0dW5pLnNob3dMb2FkaW5nKHsgdGl0bGU6ICfkuIrkvKDkuK0uLi4nIH0pXG5cdFx0XHRcdHVuaS5nZXRMb2NhdGlvbih7XG5cdFx0XHRcdFx0dHlwZTogJ2djajAyJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAobG9jYXRpb25SZXMpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuZG9VcGxvYWRQaG90b3MobG9jYXRpb25SZXMubGF0aXR1ZGUsIGxvY2F0aW9uUmVzLmxvbmdpdHVkZSlcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdGZhaWw6ICgpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuZG9VcGxvYWRQaG90b3MobnVsbCwgbnVsbClcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRkb1VwbG9hZFBob3RvcyhsYXRpdHVkZSwgbG9uZ2l0dWRlKSB7XG5cdFx0XHRcdGNvbnN0IHVwbG9hZFRhc2tzID0gdGhpcy51cGxvYWRlZFBob3Rvcy5tYXAocGF0aCA9PiB7XG5cdFx0XHRcdFx0cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0XHRcdGNvbnN0IGZvcm1EYXRhID0geyBmb2xkZXI6ICdvcmRlcnMnIH1cblx0XHRcdFx0XHRcdGlmIChsYXRpdHVkZSAmJiBsb25naXR1ZGUpIHtcblx0XHRcdFx0XHRcdFx0Zm9ybURhdGEubGF0aXR1ZGUgPSBsYXRpdHVkZVxuXHRcdFx0XHRcdFx0XHRmb3JtRGF0YS5sb25naXR1ZGUgPSBsb25naXR1ZGVcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdmb3JtRGF0YTonLCBmb3JtRGF0YSlcblx0XHRcdFx0XHRcdHVuaS51cGxvYWRGaWxlKHtcblx0XHRcdFx0XHRcdFx0dXJsOiB0aGlzLiRiYXNlVXJsICsgJ3dlYi9wdWJsaWMvdXBsb2FkJyxcblx0XHRcdFx0XHRcdFx0ZmlsZVBhdGg6IHBhdGgsXG5cdFx0XHRcdFx0XHRcdG5hbWU6ICdmaWxlJyxcblx0XHRcdFx0XHRcdFx0Zm9ybURhdGE6IGZvcm1EYXRhLFxuXHRcdFx0XHRcdFx0XHRzdWNjZXNzOiAodXBsb2FkUmVzKSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc3QgZGF0YSA9IEpTT04ucGFyc2UodXBsb2FkUmVzLmRhdGEpXG5cdFx0XHRcdFx0XHRcdFx0aWYgKGRhdGEuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRyZXNvbHZlKGRhdGEuZGF0YSlcblx0XHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRcdFx0cmVqZWN0KG5ldyBFcnJvcihkYXRhLm1zZykpXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdFx0XHRmYWlsOiAoZXJyKSA9PiB7XG5cdFx0XHRcdFx0XHRcdFx0cmVqZWN0KGVycilcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9KVxuXG5cdFx0XHRcdFByb21pc2UuYWxsKHVwbG9hZFRhc2tzKS50aGVuKGltYWdlcyA9PiB7XG5cdFx0XHRcdFx0Y29uc3QgYXBpID0gdGhpcy5waG90b1BvcHVwTW9kZSA9PT0gJ2RlbGl2ZXInID8gJ2NvbmZpcm1EZWxpdmVyJyA6ICdjb25maXJtUGlja3VwJ1xuXHRcdFx0XHRcdGNvbnN0IHBhcmFtcyA9IHtcblx0XHRcdFx0XHRcdGltYWdlczogaW1hZ2VzLm1hcChpbWcgPT4gaW1nLmltZ2FkZHIpLFxuXHRcdFx0XHRcdFx0b3JkZXJJZDogdGhpcy5vcmRlcklkLFxuXHRcdFx0XHRcdFx0cmVtYXJrOiB0aGlzLnBob3RvUmVtYXJrXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmIChsYXRpdHVkZSAmJiBsb25naXR1ZGUpIHtcblx0XHRcdFx0XHRcdHBhcmFtcy5sYXRpdHVkZSA9IGxhdGl0dWRlXG5cdFx0XHRcdFx0XHRwYXJhbXMubG9uZ2l0dWRlID0gbG9uZ2l0dWRlXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJldHVybiB0aGlzLiR1LmFwaVthcGldKHBhcmFtcylcblx0XHRcdFx0fSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpXG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDApIHtcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+aPkOS6pOaIkOWKnycsIGljb246ICdzdWNjZXNzJyB9KVxuXHRcdFx0XHRcdFx0dGhpcy5zaG93UGhvdG9Qb3B1cCA9IGZhbHNlXG5cdFx0XHRcdFx0XHR0aGlzLmdldE9yZGVyRGV0YWlsKClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiByZXMubXNnIHx8ICfmj5DkuqTlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pLmNhdGNoKGVyciA9PiB7XG5cdFx0XHRcdFx0dW5pLmhpZGVMb2FkaW5nKClcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHsgdGl0bGU6IGVyci5tZXNzYWdlIHx8ICfkuIrkvKDlpLHotKUnLCBpY29uOiAnbm9uZScgfSlcblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC5vcmRlci1kZXRhaWwtcGFnZSB7XG5cdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblxuXHRcdCZfX3NpbXBsZS1uYXYge1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0ei1pbmRleDogMTE7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMTA2RUZBO1xuXHRcdH1cblxuXHRcdCZfX3NpbXBsZS1uYXYtaW5uZXIge1xuXHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0cGFkZGluZzogMCAzMHJweDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0fVxuXG5cdFx0Jl9fc2ltcGxlLW5hdi10aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDM2cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX2ZpeGVkLXRvcCB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fbWFwLXdyYXAge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0aGVpZ2h0OiA1MDBycHg7XG5cdFx0XHR3aWR0aDogNzUwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZGJlOGZmO1xuXHRcdH1cblxuXHRcdCZfX21hcCB7XG5cdFx0XHR3aWR0aDogNzUwcnB4O1xuXHRcdFx0aGVpZ2h0OiA1MDBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWJhciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogOTJycHg7XG5cdFx0XHRwYWRkaW5nOiAwIDI0cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogI2Q5ZThmZjtcblx0XHR9XG5cblx0XHQmX19zdGF0dXMtbGVmdCxcblx0XHQmX19zdGF0dXMtcmlnaHQge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0Jl9fc3RhdHVzLWRvdCB7XG5cdFx0XHR3aWR0aDogMThycHg7XG5cdFx0XHRoZWlnaHQ6IDE4cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNnJweDtcblx0XHRcdGJhY2tncm91bmQ6ICMyYjdjZmY7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEycnB4O1xuXHRcdH1cblxuXHRcdCZfX3N0YXR1cy10aXRsZSxcblx0XHQmX19zdGF0dXMtbm8ge1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzJiMzEzOTtcblx0XHR9XG5cblx0XHQmX19zdGF0dXMtY2FuY2VsIHtcblx0XHRcdHBhZGRpbmc6IDhycHggMThycHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDE4cnB4O1xuXHRcdFx0Ym9yZGVyOiAycnB4IHNvbGlkICM3MmE4ZmY7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA5OTlycHg7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Y29sb3I6ICMyYjdjZmY7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG5cdFx0fVxuXG5cdFx0Jl9fYm9keSB7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0Ly8gcGFkZGluZzogMTZycHggMCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDI2cnB4KTtcblx0XHR9XG5cblx0XHQmX19zZWN0aW9uIHtcblx0XHRcdC8vIG1hcmdpbjogMTZycHggMjBycHggMDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cblx0XHRcdCYtLW1haW4ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1sYXN0IHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgKyAyNnJweCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fc3VtbWFyeSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRwYWRkaW5nOiAzMHJweDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0fVxuXG5cdFx0Jl9fZG9uZS1zdW1tYXJ5IHtcblx0XHRcdHBhZGRpbmc6IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdGdhcDogMjBycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjRjZGOUZGO1xuXHRcdH1cblxuXHRcdCZfX2RvbmUtc3VtbWFyeS1sZWZ0IHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fZG9uZS1zdW1tYXJ5LXJpZ2h0IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fZG9uZS10aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDM4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMmIzMTM5O1xuXHRcdH1cblxuXHRcdCZfX2RvbmUtcHJpY2Utcm93IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiAxMHJweDtcblx0XHR9XG5cblx0XHQmX19zZXR0bGVkLXRhZyB7XG5cdFx0XHRwYWRkaW5nOiA0cnB4IDEwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjZmY4ZjhmO1xuXHRcdFx0Zm9udC1zaXplOiAyMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogI2ZmNmE2YTtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY0ZjQ7XG5cdFx0fVxuXG5cdFx0Jl9fc3VtbWFyeS1sZWZ0IHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cdFx0fVxuXG5cdFx0Jl9fc3VtbWFyeS1yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAyMHJweDtcblx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdH1cblxuXHRcdCZfX2hlYWQtbGVmdCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdH1cblxuXHRcdCZfX3RpbWUge1xuXHRcdFx0Zm9udC1zaXplOiAzNHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogI0ZBODAxMDtcblx0XHR9XG5cblx0XHQmX190aW1lLXN1Yixcblx0XHQmX19leHRyYSxcblx0XHQmX19yb3V0ZS1kZXNjLFxuXHRcdCZfX3FyY29kZS1sYWJlbCxcblx0XHQmX19kZXRhaWwtbGFiZWwsXG5cdFx0Jl9fZGV0YWlsLXZhbHVlLFxuXHRcdCZfX2dvb2RzLWNvdW50LFxuXHRcdCZfX3Jvdy10ZXh0LFxuXHRcdCZfX2dvb2RzLWNhdGVnb3J5IHtcblx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRjb2xvcjogI2FkYjNiZDtcblx0XHR9XG5cblx0XHQmX190aW1lLXN1YiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogOHJweDtcblx0XHR9XG5cblx0XHQmX19wcmljZSB7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjZmY0MTMyO1xuXHRcdH1cblxuXHRcdCZfX2V4dHJhIHtcblx0XHRcdG1hcmdpbi10b3A6IDZycHg7XG5cdFx0fVxuXG5cdFx0Jl9fdGFncyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdGdhcDogMTJycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAxNHJweDtcblxuXHRcdFx0Ji0tZG9uZSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDEycnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RhZy1pY29uIHtcblx0XHRcdHdpZHRoOiAxMDhycHg7XG5cdFx0XHRoZWlnaHQ6IDQwcnB4O1xuXHRcdH1cblxuXHRcdCZfX3RhZy10ZXh0IHtcblx0XHRcdHBhZGRpbmc6IDVycHggMTJycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDMxOWRlZywgI0VFOUQwRSAwJSwgI0ZGNEU0RSAxMDAlKTtcblx0XHRcdGZvbnQtc2l6ZTogMjJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtbGlzdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzNnJweDtcdFxuXHRcdFx0cGFkZGluZzogMCAzMHJweDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtaXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdCYtLWVuZCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWxlZnQge1xuXHRcdFx0d2lkdGg6IDYwcnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtYmFkZ2Uge1xuXHRcdFx0d2lkdGg6IDQ0cnB4O1xuXHRcdFx0aGVpZ2h0OiA0NHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogMTtcblxuXHRcdFx0Ji0tdGFrZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMxMEIyRkE7XG5cdFx0XHR9XG5cblx0XHRcdCYtLXNlbmQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjRkE4MDEwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWRpdmlkZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA2NHJweDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDJycHggZGFzaGVkICNkN2RiZTI7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtbWFpbiB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGdhcDogMThycHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMTBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtdGV4dHMge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdG1pbi13aWR0aDogMDtcblx0XHR9XG5cblx0XHQmX19yb3V0ZS10aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRmb250LXNpemU6IDM0cnB4O1xuXHRcdFx0Y29sb3I6ICMyMjIyMjI7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1xuXHRcdH1cblxuXHRcdCZfX3JvdXRlLWRlc2Mge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiA4cnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0fVxuXG5cdFx0Jl9fcm91dGUtYWN0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTJycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX19yb3V0ZS1pY29uLFxuXHRcdCZfX3Jvdy1pY29uIHtcblx0XHRcdHdpZHRoOiA0MHJweDtcblx0XHRcdGhlaWdodDogNDBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcXJjb2RlLXdyYXAge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XG5cdFx0fVxuXG5cdFx0Jl9fcXJjb2RlLWJveCB7XG5cdFx0XHR3aWR0aDogMzYwcnB4O1xuXHRcdFx0aGVpZ2h0OiAzNjBycHg7XG5cdFx0XHRwYWRkaW5nOiAxNnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0XHRib3JkZXI6IDJycHggc29saWQgI0VFRUVFRTtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0fVxuXG5cdFx0Jl9fcXJjb2RlLWltYWdlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblxuXHRcdCZfX3FyY29kZS12YWx1ZSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRmb250LXNpemU6IDM2cnB4O1xuXHRcdFx0Y29sb3I6ICMyMjIyMjI7XG5cdFx0fVxuXG5cdFx0Jl9fcXJjb2RlLWxhYmVsIHtcblx0XHRcdG1hcmdpbi10b3A6IDEycnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0XHRjb2xvcjogIzk5OTk5OTtcblx0XHR9XG5cblx0XHQmX19zZWN0aW9uLXRpdGxlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogIzJiMzEzOTtcblx0XHR9XG5cblx0XHQmX19yb3ctaW5mbyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogMTZycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAyNnJweDtcblx0XHR9XG5cblx0XHQmX19yb3ctdGV4dCB7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjNGQ1NTYyO1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtY2FyZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdHBhZGRpbmc6IDIycnB4IDIwcnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTZycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZjdmOGZhO1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtdGl0bGUsXG5cdFx0Jl9fY29tbWVudC1jb250ZW50LFxuXHRcdCZfX2NvbW1lbnQtc2NvcmUtdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM0ZDU1NjI7XG5cdFx0fVxuXG5cdFx0Jl9fY29tbWVudC1zY29yZSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdG1hcmdpbi10b3A6IDEwcnB4O1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtc3RhciB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICNmZmIzMjM7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDhycHg7XG5cdFx0fVxuXG5cdFx0Jl9fY29tbWVudC1jb250ZW50IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogMTJycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdH1cblxuXHRcdCZfX2NvbW1lbnQtaW1hZ2Uge1xuXHRcdFx0d2lkdGg6IDkycnB4O1xuXHRcdFx0aGVpZ2h0OiA5MnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEwcnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMTRycHg7XG5cdFx0fVxuXG5cdFx0Jl9fZ29vZHMtbGlzdCxcblx0XHQmX19kZXRhaWwtbGlzdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMnJweDtcblx0XHR9XG5cblx0XHQmX19nb29kcy1pdGVtLFxuXHRcdCZfX2RldGFpbC1pdGVtIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0cGFkZGluZzogOHJweCAwO1xuXHRcdH1cblxuXHRcdCZfX2dvb2RzLW5hbWUge1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGNvbG9yOiAjNGQ1NTYyO1xuXHRcdH1cblxuXHRcdCZfX2dvb2RzLWNhdGVnb3J5IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogMjRycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Y29sb3I6ICM0ZDU1NjI7XG5cdFx0fVxuXG5cdFx0Jl9fcGhvdG9zIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRnYXA6IDIwcnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMzBycHg7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdCZfX3Bob3RvIHtcblx0XHRcdHdpZHRoOiAxMjBycHg7XG5cdFx0XHRoZWlnaHQ6IDEyMHJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHRpbWFnZSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fZGV0YWlsLWxhYmVsIHtcblx0XHRcdGNvbG9yOiAjYWViNGJlO1xuXHRcdH1cblxuXHRcdCZfX2RldGFpbC12YWx1ZSB7XG5cdFx0XHRjb2xvcjogIzY2NmQ3OTtcblx0XHR9XG5cblx0XHQmX19mb290ZXIge1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGdhcDogMjBycHg7XG5cdFx0XHRwYWRkaW5nOiAxNHJweCAyMHJweCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDE0cnB4KTtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0XHRib3gtc2hhZG93OiAwIC04cnB4IDIwcnB4IHJnYmEoMzAsIDQ2LCA4MCwgMC4wNik7XG5cdFx0fVxuXG5cdFx0Jl9fZm9vdGVyLWJ0biB7XG5cdFx0XHR3aWR0aDogMTgycnB4O1xuXHRcdFx0aGVpZ2h0OiA2OHJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA2OHJweDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA5OTlycHg7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWdob3N0IHtcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjZDhkZGU1O1xuXHRcdFx0XHRjb2xvcjogIzk1OWRhYTtcblx0XHRcdH1cblxuXHRcdFx0Ji0tcHJpbWFyeSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICMyZDdjZmY7XG5cdFx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1ob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuOTI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnBob3RvLXBvcHVwIHtcblx0XHRwYWRkaW5nOiAzMHJweCAyOHJweCBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDI4cnB4KTtcblx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDIwcnB4O1xuXHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAyMHJweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Jl9faGVhZGVyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdH1cblxuXHRcdCZfX3BsYWNlaG9sZGVyLFxuXHRcdCZfX2Nsb3NlIHtcblx0XHRcdHdpZHRoOiAzNnJweDtcblx0XHRcdGhlaWdodDogMzZycHg7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHR9XG5cblx0XHQmX19wbGFjZWhvbGRlciB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblxuXHRcdCZfX3RpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMzRycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0fVxuXG5cdFx0Jl9fc2VjdGlvbiB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1NHJweDtcblxuXHRcdFx0Ji0tcmVtYXJrIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogNDhycHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fbGFiZWwtcm93IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdH1cblxuXHRcdCZfX2xhYmVsLFxuXHRcdCZfX3JlbWFyay10aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGNvbG9yOiAjMjMyNjJkO1xuXHRcdH1cblxuXHRcdCZfX3JlcXVpcmVkIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiA0cnB4O1xuXHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogI2ZmM2IzMDtcblx0XHR9XG5cblx0XHQmX19oaW50IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMnJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRjb2xvcjogI2E4YWRiNztcblx0XHR9XG5cblx0XHQmX19waG90b3Mge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogMThycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAyOHJweDtcblx0XHR9XG5cblx0XHQmX191cGxvYWQtY2FyZCxcblx0XHQmX19wcmV2aWV3LWNhcmQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IDE0NHJweDtcblx0XHRcdGhlaWdodDogMTQ0cnB4O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cblx0XHQmX191cGxvYWQtY2FyZCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGJhY2tncm91bmQ6ICNmOGY5ZmI7XG5cdFx0fVxuXG5cdFx0Jl9fdXBsb2FkLWljb24ge1xuXHRcdFx0d2lkdGg6IDE2MHJweDtcblx0XHRcdGhlaWdodDogMTYwcnB4O1xuXHRcdFx0Ly8gb3BhY2l0eTogMC41NTtcblx0XHR9XG5cblx0XHQmX191cGxvYWQtdGV4dCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHRcdGZvbnQtc2l6ZTogMjZycHg7XG5cdFx0XHRjb2xvcjogI2EwYTZiMDtcblx0XHR9XG5cblx0XHQmX19wcmV2aWV3LWNhcmQge1xuXHRcdFx0YmFja2dyb3VuZDogI2VlZjFmNTtcblx0XHR9XG5cblx0XHQmX19wcmV2aWV3LWltYWdlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblxuXHRcdCZfX3ByZXZpZXctbWFzayB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRoZWlnaHQ6IDQ4cnB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40Mik7XG5cdFx0fVxuXG5cdFx0Jl9fcHJldmlldy1kZWxldGUge1xuXHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdH1cblxuXHRcdCZfX3RleHRhcmVhIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMTBycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAyNHJweDtcblx0XHRcdHBhZGRpbmc6IDI4cnB4IDI0cnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTJycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZjdmOGZhO1xuXHRcdFx0Zm9udC1zaXplOiAzMHJweDtcblx0XHRcdGNvbG9yOiAjMmMzMTM5O1xuXHRcdH1cblxuXHRcdCZfX3N1Ym1pdCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRsaW5lLWhlaWdodDogODhycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiA4NnJweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwcnB4O1xuXHRcdFx0YmFja2dyb3VuZDogIzEwNmVmYTtcblx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji0taG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///113\n");
/***/ }),
/* 114 */
@@ -18018,11 +18088,26 @@
                        class: _vm._$s(
                          77,
                          "c",
                          _vm.tempType == 0
                          _vm.tempType === ""
                            ? "sear-item-list-item active"
                            : "sear-item-list-item"
                        ),
                        attrs: { _i: 77 },
                        on: {
                          click: function ($event) {
                            return _vm.checkType("")
                          },
                        },
                      }),
                      _c("view", {
                        class: _vm._$s(
                          78,
                          "c",
                          _vm.tempType === 0
                            ? "sear-item-list-item active"
                            : "sear-item-list-item"
                        ),
                        attrs: { _i: 78 },
                        on: {
                          click: function ($event) {
                            return _vm.checkType(0)
@@ -18031,13 +18116,13 @@
                      }),
                      _c("view", {
                        class: _vm._$s(
                          78,
                          79,
                          "c",
                          _vm.tempType == 1
                          _vm.tempType === 1
                            ? "sear-item-list-item active"
                            : "sear-item-list-item"
                        ),
                        attrs: { _i: 78 },
                        attrs: { _i: 79 },
                        on: {
                          click: function ($event) {
                            return _vm.checkType(1)
@@ -18046,31 +18131,16 @@
                      }),
                      _c("view", {
                        class: _vm._$s(
                          79,
                          "c",
                          _vm.tempType == 2
                            ? "sear-item-list-item active"
                            : "sear-item-list-item"
                        ),
                        attrs: { _i: 79 },
                        on: {
                          click: function ($event) {
                            return _vm.checkType(2)
                          },
                        },
                      }),
                      _c("view", {
                        class: _vm._$s(
                          80,
                          "c",
                          _vm.tempType == 4
                          _vm.tempType === 2
                            ? "sear-item-list-item active"
                            : "sear-item-list-item"
                        ),
                        attrs: { _i: 80 },
                        on: {
                          click: function ($event) {
                            return _vm.checkType(4)
                            return _vm.checkType(2)
                          },
                        },
                      }),
@@ -18278,7 +18348,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n  computed: _objectSpread({}, (0, _vuex.mapState)(['statusbarHeight'])),\n  data: function data() {\n    return {\n      currentPage: 1,\n      total: 0,\n      active: 0,\n      wordsWidth: 250,\n      tempActive: 0,\n      type: 0,\n      words: '全部',\n      tempType: 0,\n      dateType: 0,\n      dataList: [],\n      startDate: null,\n      endDate: null,\n      defaultStartDate: null,\n      defaultEndDate: null,\n      showMoney: false,\n      countData: {},\n      countDataList: {},\n      hasNext: true,\n      show: false,\n      show1: false,\n      year: null,\n      tempYear: null,\n      month: null,\n      tempMonth: null,\n      tempStartDate: null,\n      tempEndDate: null\n    };\n  },\n  onLoad: function onLoad() {\n    this.active = 0;\n    this.wordsWidth = 250;\n    this.words = '全部';\n    this.tempActive = 0;\n    this.dateType = 0;\n    this.countData = {};\n    this.tempStartDate = null;\n    this.tempEndDate = null;\n    this.countDataList = {};\n    this.show = false;\n    this.initDateStr();\n    // uni.$on('accountListReload', this.getFirstPageData())\n  },\n\n  methods: {\n    bindChange1: function bindChange1(e) {\n      this.tempStartDate = e.detail.value || null;\n      if (this.tempStartDate && this.tempEndDate) {\n        if (new Date(this.tempStartDate + ' 00:00:00') > new Date(this.tempEndDate + ' 00:00:00')) {\n          this.tempStartDate = this.tempEndDate;\n          uni.showToast({\n            title: '开始日期不能大于结束日期',\n            icon: 'none'\n          });\n        }\n      }\n    },\n    bindChange2: function bindChange2(e) {\n      this.tempEndDate = e.detail.value || null;\n      if (this.tempStartDate && this.tempEndDate) {\n        if (new Date(this.tempStartDate + ' 00:00:00') > new Date(this.tempEndDate + ' 00:00:00')) {\n          this.tempEndDate = this.tempStartDate;\n          uni.showToast({\n            title: '开始日期不能大于结束日期',\n            icon: 'none'\n          });\n        }\n      }\n    },\n    formatter: function formatter(type, value) {\n      if (type === 'year') {\n        return \"\".concat(value, \"\\u5E74\");\n      }\n      if (type === 'month') {\n        return \"\".concat(value, \"\\u6708\");\n      }\n      return value;\n    },\n    getShopPage: function getShopPage() {\n      var _this = this;\n      if (this.loading || !this.hasNext) {\n        return;\n      }\n      this.loading = true;\n      if (this.currentPage == 1) {\n        this.hasNext = true;\n        this.dataList = [];\n      }\n      __f__(\"log\", {\n        startTime: this.startDate || this.defaultStartDate,\n        endTime: this.endDate || this.defaultEndDate,\n        type: this.type === 1 ? 0 : this.type === 2 ? 1 : this.type === 3 ? 2 : '',\n        optType: this.active === 1 ? 1 : this.active === 2 ? -1 : ''\n      }, \" at pages/wallet/wallet.vue:246\");\n      this.$u.api.driverPage({\n        capacity: 10,\n        model: {\n          startTime: this.startDate || this.defaultStartDate,\n          endTime: this.endDate || this.defaultEndDate,\n          type: this.type === 1 ? 0 : this.type === 2 ? 1 : this.type === 3 ? 2 : '',\n          optType: this.active === 1 ? 1 : this.active === 2 ? -1 : ''\n        },\n        page: this.currentPage\n      }).then(function (res) {\n        if (res.code == 200) {\n          var _this$dataList;\n          (_this$dataList = _this.dataList).push.apply(_this$dataList, (0, _toConsumableArray2.default)(res.data.records));\n          _this.total = res.data.total;\n          _this.currentPage = _this.currentPage + 1;\n          if (_this.dataList.length >= res.data.total) {\n            _this.hasNext = false;\n          } else {\n            _this.hasNext = true;\n          }\n        }\n      });\n    },\n    getShopSummary: function getShopSummary() {\n      var _this2 = this;\n      this.$u.api.driverSummary({\n        startTime: this.startDate || this.defaultStartDate,\n        endTime: this.endDate || this.defaultEndDate,\n        type: this.active === 1 ? 0 : this.active === 2 ? 1 : '',\n        objType: this.type === 1 ? 16 : this.type === 2 ? 17 : this.type === 3 ? 25 : this.type === 4 ? 1 : ''\n      }).then(function (res) {\n        if (res.code == 200) {\n          _this2.countDataList = res.data;\n        }\n      });\n    },\n    // 获取门店钱包统计\n    getShopStatistics: function getShopStatistics() {\n      var _this3 = this;\n      this.$u.api.driverStatistics({}).then(function (res) {\n        if (res.code == 200) {\n          _this3.countData = res.data;\n        }\n      });\n    },\n    comfirmDate: function comfirmDate(flag) {\n      if (flag) {\n        if (!this.tempStartDate || !this.tempEndDate) {\n          return uni.showToast({\n            title: '请选择起止日期',\n            icon: 'none'\n          });\n        }\n        if (new Date(this.tempEndDate + \" 00:00:00\").getTime() < new Date(this.tempStartDate + \" 00:00:00\").getTime()) {\n          return uni.showToast({\n            title: '日期范围不正确',\n            icon: 'error'\n          });\n        }\n        this.startDate = this.tempStartDate;\n        this.endDate = this.tempEndDate;\n      } else {\n        this.startDate = null;\n        this.endDate = null;\n        this.tempStartDate = null;\n        this.tempEndDate = null;\n      }\n      this.getFirstPageData();\n      this.getShopSummary();\n      this.show1 = false;\n    },\n    openShow: function openShow() {\n      this.tempActive = this.active;\n      this.tempType = this.type;\n      this.show = true;\n    },\n    comfirm: function comfirm(flag) {\n      if (flag) {\n        this.active = this.tempActive;\n        this.type = this.tempType;\n        this.show = false;\n        this.wordsWidth = 250;\n        if (this.active === 0 && this.type === 0) {\n          this.words = '全部';\n        } else {\n          var t1 = this.active === 1 ? '收入 ' : this.active === 2 ? '支出 ' : '';\n          var t2 = this.type === 1 ? '订单结算' : this.type === 2 ? '提现' : this.type === 3 ? '订单结算退回' : this.type === 4 ? '提现退回' : '';\n          if (t1 != '' && t2 != '') {\n            this.wordsWidth = 350;\n          }\n          this.words = t1 + t2;\n        }\n      } else {\n        this.tempActive = 0;\n        this.tempType = 0;\n        this.active = 0;\n        this.type = 0;\n        this.words = '全部';\n        this.wordsWidth = 250;\n        this.show = false;\n      }\n      this.getFirstPageData();\n      this.getShopSummary();\n    },\n    formattedDateTime: function formattedDateTime(currentDate) {\n      var year = currentDate.getFullYear();\n      var month = (currentDate.getMonth() + 1).toString().padStart(2, '0'); // 月份从 0 开始,需要加 1,并补齐两位\n      var day = currentDate.getDate().toString().padStart(2, '0'); // 补齐两位\n      var formattedDate = \"\".concat(year, \"-\").concat(month, \"-\").concat(day);\n      __f__(\"log\", formattedDate, \" at pages/wallet/wallet.vue:358\"); // 输出格式化后的日期,例如 \"2023-10-24\"\n      return formattedDate;\n    },\n    initDateStr: function initDateStr() {\n      var now = new Date();\n      var firstDay = new Date(now.getFullYear(), now.getMonth(), 1);\n      var defaultStart = this.formattedDateTime(firstDay);\n      var defaultEnd = this.formattedDateTime(now);\n      this.defaultStartDate = defaultStart;\n      this.defaultEndDate = defaultEnd;\n      this.startDate = null;\n      this.endDate = null;\n      this.getShopStatistics();\n      this.getShopSummary();\n      this.getShopPage();\n    },\n    checkActive: function checkActive(index) {\n      this.tempActive = index;\n    },\n    checkType: function checkType(index) {\n      this.tempType = index;\n    },\n    getFirstPageData: function getFirstPageData() {\n      this.currentPage = 0;\n      this.hasNext = true;\n      this.loading = false;\n      this.total = 0;\n      this.dataList = [];\n      this.getShopPage();\n    },\n    jumpWithdraw: function jumpWithdraw() {\n      uni.navigateTo({\n        url: '/pages/withdraw/withdraw'\n      });\n    },\n    jumpDetail: function jumpDetail(item) {\n      if (item.objType == 17) {\n        uni.navigateTo({\n          url: '/pages/withdrawal-details/withdrawal-details?id=' + item.objId\n        });\n      }\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvd2FsbGV0L3dhbGxldC52dWUiXSwibmFtZXMiOlsiY29tcHV0ZWQiLCJkYXRhIiwiY3VycmVudFBhZ2UiLCJ0b3RhbCIsImFjdGl2ZSIsIndvcmRzV2lkdGgiLCJ0ZW1wQWN0aXZlIiwidHlwZSIsIndvcmRzIiwidGVtcFR5cGUiLCJkYXRlVHlwZSIsImRhdGFMaXN0Iiwic3RhcnREYXRlIiwiZW5kRGF0ZSIsImRlZmF1bHRTdGFydERhdGUiLCJkZWZhdWx0RW5kRGF0ZSIsInNob3dNb25leSIsImNvdW50RGF0YSIsImNvdW50RGF0YUxpc3QiLCJoYXNOZXh0Iiwic2hvdyIsInNob3cxIiwieWVhciIsInRlbXBZZWFyIiwibW9udGgiLCJ0ZW1wTW9udGgiLCJ0ZW1wU3RhcnREYXRlIiwidGVtcEVuZERhdGUiLCJvbkxvYWQiLCJtZXRob2RzIiwiYmluZENoYW5nZTEiLCJ1bmkiLCJ0aXRsZSIsImljb24iLCJiaW5kQ2hhbmdlMiIsImZvcm1hdHRlciIsImdldFNob3BQYWdlIiwic3RhcnRUaW1lIiwiZW5kVGltZSIsIm9wdFR5cGUiLCJjYXBhY2l0eSIsIm1vZGVsIiwicGFnZSIsImdldFNob3BTdW1tYXJ5Iiwib2JqVHlwZSIsImdldFNob3BTdGF0aXN0aWNzIiwiY29tZmlybURhdGUiLCJvcGVuU2hvdyIsImNvbWZpcm0iLCJmb3JtYXR0ZWREYXRlVGltZSIsImluaXREYXRlU3RyIiwiY2hlY2tBY3RpdmUiLCJjaGVja1R5cGUiLCJnZXRGaXJzdFBhZ2VEYXRhIiwianVtcFdpdGhkcmF3IiwidXJsIiwianVtcERldGFpbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBOEpBO0FBQUE7QUFBQTtBQUFBLGVBRUE7RUFDQUEsNEJBQ0EseUNBQ0E7RUFDQUM7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztJQUNBO0VBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTs7RUFDQUM7SUFDQUM7TUFDQTtNQUNBO1FBQ0E7VUFDQTtVQUNBQztZQUFBQztZQUFBQztVQUFBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO1VBQ0E7VUFDQUg7WUFBQUM7WUFBQUM7VUFBQTtRQUNBO01BQ0E7SUFDQTtJQUNBRTtNQUNBO1FBQ0E7TUFDQTtNQUNBO1FBQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7TUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBQztRQUNBQztRQUNBL0I7UUFDQWdDO01BQ0E7TUFDQTtRQUNBQztRQUNBQztVQUNBSjtVQUNBQztVQUNBL0I7VUFDQWdDO1FBQ0E7UUFDQUc7TUFDQTtRQUNBO1VBQUE7VUFDQTtVQUNBO1VBQ0E7VUFDQTtZQUNBO1VBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBTjtRQUNBQztRQUNBL0I7UUFDQXFDO01BQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQ0E7VUFDQTtZQUNBZDtZQUNBQztVQUNBO1FBQ0E7UUFDQTtVQUNBO1lBQ0FEO1lBQ0FDO1VBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBYztNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1VBQ0E7VUFDQTtZQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUVBO01BQ0E7TUFFQTtNQUNBO01BRUE7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0F2QjtRQUNBd0I7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFDQXpCO1VBQ0F3QjtRQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxNTkuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwid2FsbGV0LXBhZ2VcIj5cblx0XHQ8dmlldyBjbGFzcz1cImRhdGFcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaGV6aVwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYVwiPlxuXHRcdFx0XHRcdDx0ZXh0IHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHJweDsgXCI+6LSm5oi35L2Z6aKdKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0PHUtaWNvbiB2LWlmPVwic2hvd01vbmV5XCIgbmFtZT1cImV5ZVwiIGNvbG9yPVwiI2ZmZmZmZlwiIHNpemU9XCIxOFwiIEBjbGljaz1cInNob3dNb25leSA9ICFzaG93TW9uZXlcIj48L3UtaWNvbj5cblx0XHRcdFx0XHQ8dS1pY29uIHYtaWY9XCIhc2hvd01vbmV5XCIgbmFtZT1cImV5ZS1vZmZcIiBjb2xvcj1cIiNlZWVlZWVcIiBzaXplPVwiMThcIiBAY2xpY2s9XCJzaG93TW9uZXkgPSAhc2hvd01vbmV5XCI+PC91LWljb24+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoZXppLWJcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYi1wcmljZVwiPlxuXHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInNob3dNb25leVwiPnt7KGNvdW50RGF0YS5iYWxhbmNlIC8gMTAwIHx8IDApLnRvRml4ZWQoMil9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJzaG93TW9uZXlcIj48L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYi1idG5cIiBAY2xpY2s9XCJqdW1wV2l0aGRyYXdcIj7mj5DnjrA8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoZXppLWNcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhlemktYy1pdGVtLXRpdGxlXCI+5b6F57uT566XKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtLXByaWNlXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0ICB2LWlmPVwic2hvd01vbmV5XCI+e3soY291bnREYXRhLnBlbmRpbmdBbW91bnQgLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhlemktYy1pdGVtLXRpdGxlXCI+57Sv6K6h5o+Q546wKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtLXByaWNlXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJzaG93TW9uZXlcIj57eyhjb3VudERhdGEudG90YWxXaXRoZHJhd24gLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJ0eFwiPlxuXHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+5o+Q546w5Lit77yawqV7eyhjb3VudERhdGEud2l0aGRyYXdpbmdBbW91bnQgLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHQ8dGV4dCB2LWlmPVwiIXNob3dNb25leVwiPuaPkOeOsOS4re+8mioqKio8L3RleHQ+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXHRcdDx2aWV3IGNsYXNzPVwiYm94LWxpc3RcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaXRlbVwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tZGF0ZVwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaXRlbS1kYXRlLXRvcFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpdGVtLWRhdGUtdG9wLWxlZnRcIiBAY2xpY2s9XCJzaG93MSA9IHRydWVcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQ+e3tzdGFydERhdGUgfHwgZGVmYXVsdFN0YXJ0RGF0ZX19IOiHsyB7e2VuZERhdGUgfHwgZGVmYXVsdEVuZERhdGV9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctZG93blwiIGNvbG9yPVwiIzIyMjIyMlwiIHNpemU9XCIxM1wiPjwvdS1pY29uPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWxlXCIgOnN0eWxlPVwiJ3dpZHRoOicrd29yZHNXaWR0aCsncnB4OydcIiBAY2xpY2s9XCJvcGVuU2hvdygpXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0Pnt7d29yZHN9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctZG93blwiIGNvbG9yPVwiIzIyMjIyMlwiIHNpemU9XCIxNlwiPjwvdS1pY29uPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tZGF0ZS1ib3R0b21cIj5cblx0XHRcdFx0XHRcdDx0ZXh0PuaUtuWFpe+8msKle3soY291bnREYXRhTGlzdC50b3RhbEluY29tZSB8fCAwKS50b0ZpeGVkKDIpfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dD7mlK/lh7rvvJrCpXt7KGNvdW50RGF0YUxpc3QudG90YWxFeHBlbnNlIHx8IDApLnRvRml4ZWQoMil9fTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpdGVtLWxpc3RcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tbGlzdC1pdGVtXCIgIHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBkYXRhTGlzdFwiIDprZXk9XCJpbmRleFwiIEBjbGljaz1cImp1bXBEZXRhaWwoaXRlbSlcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW1hZ2VcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAwXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19zaG91cnVAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAxXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY190aXhpYW5AMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAyXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY190dWlrdWFuQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluZm9cIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWFcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5mby1hLWxhYmVsXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHR7e2l0ZW0udHlwZSA9PT0gMCA/ICflrozmiJDorqLljZUnIDogaXRlbS50eXBlID09PSAxID8gJ+aPkOeOsOaUr+WHuicgOiBpdGVtLnR5cGUgPT09IDIgPyAn5o+Q546w6YCA5ZueJyA6ICcnfX1cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSAgdi1pZj1cIml0ZW0udHlwZSA9PT0gMVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjRkYwMDIwO1wiICB2LWlmPVwiaXRlbS53aXRoZHJhd1N0YXR1cyA9PSAyXCI+5pyq6YCa6L+HPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjMDA0MDk2XCIgdi1lbHNlLWlmPVwiaXRlbS53aXRoZHJhd1N0YXR1cyA9PSAxXCI+5bey6YCa6L+HPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjRkYwMDIwO1wiIHYtZWxzZT7lrqHmoLjkuK08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWEtcHJpY2VcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHRleHQ+e3tpdGVtLnR5cGU9PTE/Jy0nOicrJ319e3soaXRlbS5udW0gfHwwKS50b0ZpeGVkKDIpfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0PjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWJcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0PuiuouWNlee8luWPt++8mnt7aXRlbS5vcmRlck5vIHx8ICcnfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5mby1iXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dD57e2l0ZW0uY3JlYXRlVGltZSB8fCAnJ319PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiIWhhc05leHRcIiBjbGFzcz1cIm5vbW9yZVwiPuW3suWKoOi9veWFqOmDqDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblx0XHQ8IS0tIOetm+mAiSAtLT5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3dcIiBtb2RlPVwiYm90dG9tXCIgOnNhZmVBcmVhSW5zZXRCb3R0b209XCJmYWxzZVwiIHJvdW5kPVwiMTVcIiA6Y2xvc2VhYmxlPVwidHJ1ZVwiIEBjbG9zZT1cInNob3cgPSBmYWxzZVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci10aXRsZVwiPuetm+mAiTwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW1cIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItaXRlbS1sYWJlbFwiPuaUtuaUr+exu+Weizwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItaXRlbS1saXN0XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBAY2xpY2s9XCJjaGVja0FjdGl2ZSgwKVwiIDpjbGFzcz1cInRlbXBBY3RpdmUgPT0gMD8nc2Vhci1pdGVtLWxpc3QtaXRlbSBhY3RpdmUnOidzZWFyLWl0ZW0tbGlzdC1pdGVtJ1wiPuWFqOmDqDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IEBjbGljaz1cImNoZWNrQWN0aXZlKDEpXCIgOmNsYXNzPVwidGVtcEFjdGl2ZSA9PSAxPydzZWFyLWl0ZW0tbGlzdC1pdGVtIGFjdGl2ZSc6J3NlYXItaXRlbS1saXN0LWl0ZW0nXCI+5pS25YWlPC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgQGNsaWNrPVwiY2hlY2tBY3RpdmUoMilcIiA6Y2xhc3M9XCJ0ZW1wQWN0aXZlID09IDI/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7mlK/lh7o8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAyMTZycHg7IGhlaWdodDogMDtcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1pdGVtXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW0tbGFiZWxcIj7kuqTmmJPnsbvlnos8L3ZpZXc+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW0tbGlzdFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgIEBjbGljaz1cImNoZWNrVHlwZSgwKVwiIDpjbGFzcz1cInRlbXBUeXBlID09IDA/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7lhajpg6g8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyAgQGNsaWNrPVwiY2hlY2tUeXBlKDEpXCIgOmNsYXNzPVwidGVtcFR5cGUgPT0gMT8nc2Vhci1pdGVtLWxpc3QtaXRlbSBhY3RpdmUnOidzZWFyLWl0ZW0tbGlzdC1pdGVtJ1wiPuiuouWNlee7k+eulzwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3ICBAY2xpY2s9XCJjaGVja1R5cGUoMilcIiA6Y2xhc3M9XCJ0ZW1wVHlwZSA9PSAyPydzZWFyLWl0ZW0tbGlzdC1pdGVtIGFjdGl2ZSc6J3NlYXItaXRlbS1saXN0LWl0ZW0nXCI+5o+Q546wPC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgIEBjbGljaz1cImNoZWNrVHlwZSg0KVwiIDpjbGFzcz1cInRlbXBUeXBlID09IDQ/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7mj5DnjrDpgIDlm548L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAyMTZycHg7IGhlaWdodDogMDtcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1mb290ZXJcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyLWJ0bjFcIiBAY2xpY2s9XCJjb21maXJtKGZhbHNlKVwiPumHjee9rjwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyLWJ0bjJcIiBAY2xpY2s9XCJjb21maXJtKHRydWUpXCI+56Gu6K6kPC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LXBvcHVwPlxuXHRcdDx1LXBvcHVwIDpzaG93PVwic2hvdzFcIiBtb2RlPVwiYm90dG9tXCIgOnNhZmVBcmVhSW5zZXRCb3R0b209XCJmYWxzZVwiICByb3VuZD1cIjE1XCIgIEBjbG9zZT1cImNvbWZpcm1EYXRlKGZhbHNlKVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyXCIgc3R5bGU9XCJtaW4taGVpZ2h0OiA1MDBycHg7XCI+XG5cdFx0XHRcdDx2aWV3IHN0eWxlPVwiZGlzcGxheTogZmxleDtqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7YWxpZ24taXRlbXM6IGZsZXgtZW5kO3RleHQtYWxpZ246IGNlbnRlcjtcIj5cblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47dGV4dC1hbGlnbjogY2VudGVyOyBmbGV4OiAxO1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIzXCI+5byA5aeL5pe26Ze0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHBpY2tlciA6dmFsdWU9XCJ0ZW1wU3RhcnREYXRlXCIgQGNoYW5nZT1cImJpbmRDaGFuZ2UxXCIgbW9kZT1cImRhdGVcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIyXCIgOmNsYXNzPVwieyAncGlja2VyMi1lbXB0eSc6ICF0ZW1wU3RhcnREYXRlIH1cIj5cblx0XHRcdFx0XHRcdFx0XHR7eyB0ZW1wU3RhcnREYXRlIHx8ICfor7fpgInmi6nlvIDlp4vml7bpl7QnIH19XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvcGlja2VyPlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cImZsZXgtc2hyaW5rOiAwOyB3aWR0aDogNTBycHg7XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj48L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj7oh7M8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwiZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjt0ZXh0LWFsaWduOiBjZW50ZXI7IGZsZXg6IDE7XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj7nu5PmnZ/ml7bpl7Q8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8cGlja2VyIDp2YWx1ZT1cInRlbXBFbmREYXRlXCIgQGNoYW5nZT1cImJpbmRDaGFuZ2UyXCIgbW9kZT1cImRhdGVcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIyXCIgOmNsYXNzPVwieyAncGlja2VyMi1lbXB0eSc6ICF0ZW1wRW5kRGF0ZSB9XCI+XG5cdFx0XHRcdFx0XHRcdFx0XHR7eyB0ZW1wRW5kRGF0ZSB8fCAn6K+36YCJ5oup57uT5p2f5pe26Ze0JyB9fVxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC9waWNrZXI+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdCA8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWZvb3Rlci1idG4xXCIgQGNsaWNrPVwiY29tZmlybURhdGUoZmFsc2UpXCI+6YeN572uPC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1mb290ZXItYnRuMlwiIEBjbGljaz1cImNvbWZpcm1EYXRlKHRydWUpXCI+56Gu6K6kPC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+ICBcblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cdDwvdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCdcblxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdC4uLm1hcFN0YXRlKFsnc3RhdHVzYmFySGVpZ2h0J10pXG5cdFx0fSxcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0Y3VycmVudFBhZ2U6MSxcblx0XHRcdFx0dG90YWw6MCxcblx0XHRcdFx0YWN0aXZlOjAsXG5cdFx0XHRcdHdvcmRzV2lkdGg6MjUwLFxuXHRcdFx0XHR0ZW1wQWN0aXZlIDowLFxuXHRcdFx0XHR0eXBlOjAsXG5cdFx0XHRcdHdvcmRzOiflhajpg6gnLFxuXHRcdFx0XHR0ZW1wVHlwZSA6MCxcblx0XHRcdFx0ZGF0ZVR5cGUgOjAsXG5cdFx0XHRcdGRhdGFMaXN0OltdLFxuXHRcdFx0XHRzdGFydERhdGU6bnVsbCxcblx0XHRcdFx0ZW5kRGF0ZTpudWxsLFxuXHRcdFx0XHRkZWZhdWx0U3RhcnREYXRlOm51bGwsXG5cdFx0XHRcdGRlZmF1bHRFbmREYXRlOm51bGwsXG5cdFx0XHRcdHNob3dNb25leTpmYWxzZSxcblx0XHRcdFx0Y291bnREYXRhOnt9LFxuXHRcdFx0XHRjb3VudERhdGFMaXN0Ont9LFxuXHRcdFx0XHRoYXNOZXh0OnRydWUsXG5cdFx0XHRcdHNob3c6IGZhbHNlLFxuXHRcdFx0XHRzaG93MTpmYWxzZSxcblx0XHRcdFx0eWVhcjpudWxsLFxuXHRcdFx0XHR0ZW1wWWVhcjpudWxsLFxuXHRcdFx0XHRtb250aDpudWxsLFxuXHRcdFx0XHR0ZW1wTW9udGg6bnVsbCxcblx0XHRcdFx0dGVtcFN0YXJ0RGF0ZTpudWxsLFxuXHRcdFx0XHR0ZW1wRW5kRGF0ZTpudWxsLFxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0b25Mb2FkKCkge1xuXHRcdFx0dGhpcy5hY3RpdmU9MFxuXHRcdFx0dGhpcy53b3Jkc1dpZHRoPTI1MFxuXHRcdFx0dGhpcy53b3Jkcz0n5YWo6YOoJ1xuXHRcdFx0dGhpcy50ZW1wQWN0aXZlPTBcblx0XHRcdHRoaXMuZGF0ZVR5cGU9MFxuXHRcdFx0dGhpcy5jb3VudERhdGE9e31cblx0XHRcdHRoaXMudGVtcFN0YXJ0RGF0ZT1udWxsXG5cdFx0XHR0aGlzLnRlbXBFbmREYXRlPW51bGxcblx0XHRcdHRoaXMuY291bnREYXRhTGlzdD17fVxuXHRcdFx0dGhpcy5zaG93ID0gZmFsc2Vcblx0XHRcdHRoaXMuaW5pdERhdGVTdHIoKVxuXHRcdFx0Ly8gdW5pLiRvbignYWNjb3VudExpc3RSZWxvYWQnLCB0aGlzLmdldEZpcnN0UGFnZURhdGEoKSlcblx0XHR9LFxuXHRcdG1ldGhvZHM6e1xuXHRcdFx0YmluZENoYW5nZTEgKGUpIHtcblx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gZS5kZXRhaWwudmFsdWUgfHwgbnVsbFxuXHRcdFx0XHRpZiAodGhpcy50ZW1wU3RhcnREYXRlICYmIHRoaXMudGVtcEVuZERhdGUpIHtcblx0XHRcdFx0XHRpZiAobmV3IERhdGUodGhpcy50ZW1wU3RhcnREYXRlICsgJyAwMDowMDowMCcpID4gbmV3IERhdGUodGhpcy50ZW1wRW5kRGF0ZSArICcgMDA6MDA6MDAnKSkge1xuXHRcdFx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gdGhpcy50ZW1wRW5kRGF0ZVxuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5byA5aeL5pel5pyf5LiN6IO95aSn5LqO57uT5p2f5pel5pyfJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0YmluZENoYW5nZTIgKGUpIHtcblx0XHRcdFx0dGhpcy50ZW1wRW5kRGF0ZSA9IGUuZGV0YWlsLnZhbHVlIHx8IG51bGxcblx0XHRcdFx0aWYgKHRoaXMudGVtcFN0YXJ0RGF0ZSAmJiB0aGlzLnRlbXBFbmREYXRlKSB7XG5cdFx0XHRcdFx0aWYgKG5ldyBEYXRlKHRoaXMudGVtcFN0YXJ0RGF0ZSArICcgMDA6MDA6MDAnKSA+IG5ldyBEYXRlKHRoaXMudGVtcEVuZERhdGUgKyAnIDAwOjAwOjAwJykpIHtcblx0XHRcdFx0XHRcdHRoaXMudGVtcEVuZERhdGUgPSB0aGlzLnRlbXBTdGFydERhdGVcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+W8gOWni+aXpeacn+S4jeiDveWkp+S6jue7k+adn+aXpeacnycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGZvcm1hdHRlcih0eXBlLCB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlID09PSAneWVhcicpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke3ZhbHVlfeW5tGBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke3ZhbHVlfeaciGBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICB9LFxuXHRcdFx0Z2V0U2hvcFBhZ2UoKSB7XG5cdFx0XHRcdGlmKHRoaXMubG9hZGluZyB8fCAhdGhpcy5oYXNOZXh0KXtcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLmxvYWRpbmc9dHJ1ZVxuXHRcdFx0XHRpZih0aGlzLmN1cnJlbnRQYWdlID09IDEpe1xuXHRcdFx0XHRcdHRoaXMuaGFzTmV4dCA9IHRydWVcblx0XHRcdFx0XHR0aGlzLmRhdGFMaXN0PVtdXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29uc29sZS5sb2coe1xuXHRcdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0XHRlbmRUaW1lOiB0aGlzLmVuZERhdGUgfHwgdGhpcy5kZWZhdWx0RW5kRGF0ZSxcblx0XHRcdFx0XHRcdHR5cGU6IHRoaXMudHlwZSA9PT0gMT8wOih0aGlzLnR5cGUgPT09IDI/MToodGhpcy50eXBlID09PSAzPzI6JycpKSxcblx0XHRcdFx0XHRcdG9wdFR5cGU6IHRoaXMuYWN0aXZlID09PSAxPzE6KHRoaXMuYWN0aXZlID09PSAyPy0xOicnKVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmRyaXZlclBhZ2Uoe1xuXHRcdFx0XHRcdGNhcGFjaXR5OiAxMCxcblx0XHRcdFx0XHRtb2RlbDoge1xuXHRcdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0XHRlbmRUaW1lOiB0aGlzLmVuZERhdGUgfHwgdGhpcy5kZWZhdWx0RW5kRGF0ZSxcblx0XHRcdFx0XHRcdHR5cGU6IHRoaXMudHlwZSA9PT0gMT8wOih0aGlzLnR5cGUgPT09IDI/MToodGhpcy50eXBlID09PSAzPzI6JycpKSxcblx0XHRcdFx0XHRcdG9wdFR5cGU6IHRoaXMuYWN0aXZlID09PSAxPzE6KHRoaXMuYWN0aXZlID09PSAyPy0xOicnKVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0cGFnZTogdGhpcy5jdXJyZW50UGFnZVxuXHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5kYXRhTGlzdC5wdXNoKC4uLnJlcy5kYXRhLnJlY29yZHMpXG5cdFx0XHRcdFx0XHR0aGlzLnRvdGFsID0gcmVzLmRhdGEudG90YWxcblx0XHRcdFx0XHRcdHRoaXMuY3VycmVudFBhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlKzFcblx0XHRcdFx0XHRcdGlmICh0aGlzLmRhdGFMaXN0Lmxlbmd0aCA+PSByZXMuZGF0YS50b3RhbCkge1xuXHRcdFx0XHRcdFx0XHR0aGlzLmhhc05leHQgPSBmYWxzZVxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5oYXNOZXh0ID0gdHJ1ZVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRnZXRTaG9wU3VtbWFyeSgpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuZHJpdmVyU3VtbWFyeSh7XG5cdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0ZW5kVGltZTogdGhpcy5lbmREYXRlIHx8IHRoaXMuZGVmYXVsdEVuZERhdGUsXG5cdFx0XHRcdFx0dHlwZTogdGhpcy5hY3RpdmUgPT09IDE/MDoodGhpcy5hY3RpdmU9PT0yPzE6JycpLCBcblx0XHRcdFx0XHRvYmpUeXBlOiB0aGlzLnR5cGUgPT09IDE/MTY6KCB0aGlzLnR5cGUgPT09IDI/MTc6KCB0aGlzLnR5cGUgPT09IDM/MjU6ICh0aGlzLnR5cGUgPT09IDQ/MTogJycpKSksIFxuXHRcdFx0XHR9KS50aGVuKHJlcz0+e1xuXHRcdFx0XHRcdGlmKHJlcy5jb2RlID09IDIwMCl7XG5cdFx0XHRcdFx0XHR0aGlzLmNvdW50RGF0YUxpc3QgPSByZXMuZGF0YVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHQvLyDojrflj5bpl6jlupfpkrHljIXnu5/orqFcblx0XHRcdGdldFNob3BTdGF0aXN0aWNzKCl7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmRyaXZlclN0YXRpc3RpY3Moe30pLnRoZW4ocmVzPT57XG5cdFx0XHRcdFx0aWYocmVzLmNvZGUgPT0gMjAwKXtcblx0XHRcdFx0XHRcdHRoaXMuY291bnREYXRhID0gcmVzLmRhdGFcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Y29tZmlybURhdGUoZmxhZyl7XG5cdFx0XHRcdGlmIChmbGFnKSB7XG5cdFx0XHRcdFx0aWYgKCF0aGlzLnRlbXBTdGFydERhdGUgfHwgIXRoaXMudGVtcEVuZERhdGUpIHtcblx0XHRcdFx0XHRcdHJldHVybiB1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0dGl0bGU6ICfor7fpgInmi6notbfmraLml6XmnJ8nLFxuXHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmKG5ldyBEYXRlKHRoaXMudGVtcEVuZERhdGUrXCIgMDA6MDA6MDBcIikuZ2V0VGltZSgpIDwgbmV3IERhdGUodGhpcy50ZW1wU3RhcnREYXRlK1wiIDAwOjAwOjAwXCIpLmdldFRpbWUoKSl7XG5cdFx0XHRcdFx0XHRyZXR1cm4gdW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0XHRcdHRpdGxlOifml6XmnJ/ojIPlm7TkuI3mraPnoa4nLFxuXHRcdFx0XHRcdFx0XHRpY29uOidlcnJvcidcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRoaXMuc3RhcnREYXRlID10aGlzLnRlbXBTdGFydERhdGVcblx0XHRcdFx0XHR0aGlzLmVuZERhdGUgPXRoaXMudGVtcEVuZERhdGVcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnN0YXJ0RGF0ZSA9IG51bGxcblx0XHRcdFx0XHR0aGlzLmVuZERhdGUgPSBudWxsXG5cdFx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gbnVsbFxuXHRcdFx0XHRcdHRoaXMudGVtcEVuZERhdGUgPSBudWxsXG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5nZXRGaXJzdFBhZ2VEYXRhKClcblx0XHRcdFx0dGhpcy5nZXRTaG9wU3VtbWFyeSgpXG5cdFx0XHRcdHRoaXMuc2hvdzE9ZmFsc2Vcblx0XHRcdH0sXG5cdFx0XHRvcGVuU2hvdygpe1xuXHRcdFx0XHR0aGlzLnRlbXBBY3RpdmUgPXRoaXMuYWN0aXZlXG5cdFx0XHRcdHRoaXMudGVtcFR5cGUgPXRoaXMudHlwZVxuXHRcdFx0XHR0aGlzLnNob3c9dHJ1ZVxuXHRcdFx0fSxcblx0XHRcdGNvbWZpcm0oZmxhZyl7XG5cdFx0XHRcdGlmKGZsYWcpe1xuXHRcdFx0XHRcdHRoaXMuYWN0aXZlID0gdGhpcy50ZW1wQWN0aXZlXG5cdFx0XHRcdFx0dGhpcy50eXBlID0gdGhpcy50ZW1wVHlwZVxuXHRcdFx0XHRcdHRoaXMuc2hvdyA9IGZhbHNlXG5cdFx0XHRcdFx0dGhpcy53b3Jkc1dpZHRoID0gMjUwXG5cdFx0XHRcdFx0aWYodGhpcy5hY3RpdmUgPT09IDAgJiYgdGhpcy50eXBlID09PSAwKXtcblx0XHRcdFx0XHRcdHRoaXMud29yZHMgPSAn5YWo6YOoJ1xuXHRcdFx0XHRcdH1lbHNlIHtcblx0XHRcdFx0XHRcdGxldCB0MSA9IHRoaXMuYWN0aXZlID09PSAxID8gJ+aUtuWFpSAnOih0aGlzLmFjdGl2ZSA9PT0gMiA/ICfmlK/lh7ogJyA6ICcnKTtcblx0XHRcdFx0XHRcdGxldCB0MiA9IHRoaXMudHlwZSA9PT0gMSA/ICforqLljZXnu5PnrpcnIDogKHRoaXMudHlwZSA9PT0gMiA/ICfmj5DnjrAnOiAodGhpcy50eXBlID09PSAzID8gJ+iuouWNlee7k+eul+mAgOWbnicgOiAodGhpcy50eXBlID09PSA0ID8gJ+aPkOeOsOmAgOWbnicgOiAnJykpKVxuXHRcdFx0XHRcdFx0aWYodDEgIT0nJyAmJiB0MiAhPScnKXtcblx0XHRcdFx0XHRcdFx0dGhpcy53b3Jkc1dpZHRoID0gMzUwXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR0aGlzLndvcmRzID0gdDEgKyB0MlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnRlbXBBY3RpdmUgPSAwXG5cdFx0XHRcdFx0dGhpcy50ZW1wVHlwZSA9IDBcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZSA9IDBcblx0XHRcdFx0XHR0aGlzLnR5cGUgPSAwXG5cdFx0XHRcdFx0dGhpcy53b3JkcyA9ICflhajpg6gnXG5cdFx0XHRcdFx0dGhpcy53b3Jkc1dpZHRoID0gMjUwXG5cdFx0XHRcdFx0dGhpcy5zaG93ID0gZmFsc2Vcblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLmdldEZpcnN0UGFnZURhdGEoKVxuXHRcdFx0XHR0aGlzLmdldFNob3BTdW1tYXJ5KClcblx0XHRcdH0sXG5cdFx0XHRmb3JtYXR0ZWREYXRlVGltZShjdXJyZW50RGF0ZSkge1xuXHRcdFx0ICAgICBjb25zdCB5ZWFyID0gY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKTtcblx0XHRcdCAgICAgY29uc3QgbW9udGggPSAoY3VycmVudERhdGUuZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTsgLy8g5pyI5Lu95LuOIDAg5byA5aeL77yM6ZyA6KaB5YqgIDHvvIzlubbooaXpvZDkuKTkvY1cblx0XHRcdCAgICAgY29uc3QgZGF5ID0gY3VycmVudERhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTsgLy8g6KGl6b2Q5Lik5L2NXG5cdFx0XHQgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBgJHt5ZWFyfS0ke21vbnRofS0ke2RheX1gO1xuXHRcdFx0ICAgICBjb25zb2xlLmxvZyhmb3JtYXR0ZWREYXRlKTsgLy8g6L6T5Ye65qC85byP5YyW5ZCO55qE5pel5pyf77yM5L6L5aaCIFwiMjAyMy0xMC0yNFwiXG5cdFx0XHQgICAgIHJldHVybiBmb3JtYXR0ZWREYXRlO1xuXHRcdFx0fSxcblx0XHRcdGluaXREYXRlU3RyKCl7XG5cdFx0XHRcdGNvbnN0IG5vdyA9IG5ldyBEYXRlKClcblx0XHRcdFx0Y29uc3QgZmlyc3REYXkgPSBuZXcgRGF0ZShub3cuZ2V0RnVsbFllYXIoKSwgbm93LmdldE1vbnRoKCksIDEpXG5cdFx0XHRcdGNvbnN0IGRlZmF1bHRTdGFydCA9IHRoaXMuZm9ybWF0dGVkRGF0ZVRpbWUoZmlyc3REYXkpXG5cdFx0XHRcdGNvbnN0IGRlZmF1bHRFbmQgPSB0aGlzLmZvcm1hdHRlZERhdGVUaW1lKG5vdylcblx0XHRcdFx0XG5cdFx0XHRcdHRoaXMuZGVmYXVsdFN0YXJ0RGF0ZSA9IGRlZmF1bHRTdGFydFxuXHRcdFx0XHR0aGlzLmRlZmF1bHRFbmREYXRlID0gZGVmYXVsdEVuZFxuXHRcdFx0XHRcblx0XHRcdFx0dGhpcy5zdGFydERhdGUgPSBudWxsXG5cdFx0XHRcdHRoaXMuZW5kRGF0ZSA9IG51bGxcblx0XHRcdFx0XG5cdFx0XHRcdHRoaXMuZ2V0U2hvcFN0YXRpc3RpY3MoKVxuXHRcdFx0XHR0aGlzLmdldFNob3BTdW1tYXJ5KClcblx0XHRcdFx0dGhpcy5nZXRTaG9wUGFnZSgpXG5cdFx0XHR9LFxuXHRcdFx0Y2hlY2tBY3RpdmUoaW5kZXgpe1xuXHRcdFx0XHR0aGlzLnRlbXBBY3RpdmUgPWluZGV4XG5cdFx0XHR9LFxuXHRcdFx0Y2hlY2tUeXBlKGluZGV4KXtcblx0XHRcdFx0dGhpcy50ZW1wVHlwZSA9aW5kZXhcblx0XHRcdH0sXG5cdFx0XHRnZXRGaXJzdFBhZ2VEYXRhKCl7XG5cdFx0XHRcdHRoaXMuY3VycmVudFBhZ2UgPSAwXG5cdFx0XHRcdHRoaXMuaGFzTmV4dD10cnVlXG5cdFx0XHRcdHRoaXMubG9hZGluZz1mYWxzZVxuXHRcdFx0XHR0aGlzLnRvdGFsPTBcblx0XHRcdFx0dGhpcy5kYXRhTGlzdD1bXVxuXHRcdFx0XHR0aGlzLmdldFNob3BQYWdlKClcblx0XHRcdH0sXG5cdFx0XHRqdW1wV2l0aGRyYXcoKXtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogJy9wYWdlcy93aXRoZHJhdy93aXRoZHJhdydcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRqdW1wRGV0YWlsKGl0ZW0pe1xuXHRcdFx0XHRpZihpdGVtLm9ialR5cGUgPT0gMTcgKXtcblx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvd2l0aGRyYXdhbC1kZXRhaWxzL3dpdGhkcmF3YWwtZGV0YWlscz9pZD0nK2l0ZW0ub2JqSWRcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuXHQucGlja2VyLXZpZXcge1xuXHRcdHdpZHRoOiA3NTBycHg7XG5cdFx0aGVpZ2h0OiA2MDBycHg7XG5cdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdH1cblx0LnBpY2tlci1pdGVtIHtcblx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC5waWNrZXIye1xuXHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLDY0LDE1MCwwLjEpICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0Y29sb3I6ICMwMDQwOTYgIWltcG9ydGFudDtcblx0fVxuXHQucGlja2VyMi1lbXB0eXtcblx0XHRiYWNrZ3JvdW5kOiAjRjdGN0Y3ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICM5OTk5OTkgIWltcG9ydGFudDtcblx0fVxuXHQucGlja2VyM3tcblx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdGNvbG9yOiAjMzMzMzMzO1xuXHR9XG48L3N0eWxlPlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC53YWxsZXQtcGFnZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogI2Y4ZjhmODtcblx0XHQuc2VhciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC5zZWFyLXRpdGxlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHR9XG5cdFx0XHQuc2Vhci1pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQ4cnB4O1xuXHRcdFx0XHQuc2Vhci1pdGVtLWxhYmVsIHtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNlYXItaXRlbS1saXN0IHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0XHQuYWN0aXZlIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCw2NCwxNTAsMC4xKSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTYgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmFjdGl2ZTEge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnJweCBzb2xpZCAjMDA0MDk2ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwNDA5NiAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuc2Vhci1pdGVtLWxpc3QtaXRlbSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjE2cnB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA3MnJweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNGN0Y3Rjc7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuc2Vhci1pdGVtLWxpc3QtaXRlbTEge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDIxNnJweDtcblx0XHRcdFx0XHRcdGhlaWdodDogNzJycHg7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuc2Vhci1mb290ZXIge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogODBycHg7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0LnNlYXItZm9vdGVyLWJ0bjEge1xuXHRcdFx0XHRcdHdpZHRoOiAzMzRycHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogODhycHg7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNFNUU1RTU7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNDRycHg7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5zZWFyLWZvb3Rlci1idG4yIHtcblx0XHRcdFx0XHR3aWR0aDogMzM0cnB4O1xuXHRcdFx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDA0MDk2O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDQ0cnB4O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuYm94LWxpc3Qge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMwcnB4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdC5pdGVtLWRhdGUge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDMwcnB4IDMwcnB4IDMwcnB4O1xuXHRcdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdFx0Lml0ZW0tZGF0ZS10b3Age1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdC5pdGVtLWRhdGUtdG9wLWxlZnQge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRpbWFnZSB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMjZycHg7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEycnB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzIyMjIyMjtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDhycHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5zZWxlIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDIwMHJweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA2NHJweDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMCAyNHJweDtcblx0XHRcdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI0ZGRkZGRjtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMzJycHg7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjRUVFRUVFO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAzMHJweDtcblx0XHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5pdGVtLWRhdGUtYm90dG9tIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogIzc3Nzc3Nztcblx0XHRcdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA2MnJweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuaXRlbS1saXN0IHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0cGFkZGluZzogMCAzMHJweDtcblx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cdFx0XHRcdFx0Lm5vbW9yZSB7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzk5OTk5OTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMzBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5pdGVtLWxpc3QtaXRlbSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDMwcnB4IDA7XG5cdFx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXJweCBzb2xpZCAjRTVFNUU1O1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDcycnB4O1xuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDcycnB4O1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBycHg7XG5cdFx0XHRcdFx0XHRcdGltYWdlIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LmluZm8ge1xuXHRcdFx0XHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRcdFx0XHQuaW5mby1hIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdFx0XHRcdC5pbmZvLWEtbGFiZWwge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzIyMjIyMjtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHJweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LmluZm8tYS1wcmljZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICMyMjIyMjI7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0LmluZm8tYiB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC8vIC5zZWxlIHtcblx0XHQvLyBcdHdpZHRoOiAyMDBycHg7XG5cdFx0Ly8gXHRoZWlnaHQ6IDY0cnB4O1xuXHRcdC8vIFx0cGFkZGluZzogMCAyNHJweDtcblx0XHQvLyBcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0Ly8gXHRiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuXHRcdC8vIFx0Ym9yZGVyLXJhZGl1czogMzJycHg7XG5cdFx0Ly8gXHRib3JkZXI6IDFycHggc29saWQgI0VFRUVFRTtcblx0XHQvLyBcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Ly8gXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdC8vIFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdC8vIFx0bWFyZ2luLWxlZnQ6IDMwcnB4O1xuXHRcdC8vIFx0dGV4dCB7XG5cdFx0Ly8gXHRcdHdpZHRoOiBhdXRvO1xuXHRcdC8vIFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdC8vIFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdC8vIFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHQvLyBcdH1cblx0XHQvLyB9XG5cdFx0LmRhdGEge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHQvLyBwYWRkaW5nOiAyMHJweCAzMHJweDtcblx0XHRcdHBhZGRpbmc6IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC5oZXppIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzA0cnB4O1xuXHRcdFx0XHRwYWRkaW5nOiAzMHJweDtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0YmFja2dyb3VuZDogIzAwNDA5Njtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTZycHg7XG5cdFx0XHRcdC5oZXppLWEge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5oZXppLWIge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMTRycHg7XG5cdFx0XHRcdFx0LmhlemktYi1wcmljZSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogNDRycHg7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuaGV6aS1iLWJ0biB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwcnB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA1MnJweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA1MnJweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAyNnJweDtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTY7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5oZXppLWMge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTM4cnB4O1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcnB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4wOSk7XG5cdFx0XHRcdFx0LmhlemktYy1pdGVtIHtcblx0XHRcdFx0XHRcdGZsZXg6IDE7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFycHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjA5KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5oZXppLWMtaXRlbS10aXRsZSB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQuaGV6aS1jLWl0ZW0tcHJpY2Uge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDhycHg7XG5cdFx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDMwcnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudHgge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDRycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCw2NCwxNTAsMC4xMik7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogLTIwcnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRjb2xvcjogIzAwNDA5Njtcblx0XHRcdFx0cGFkZGluZzogNDBycHggMzBycHggMCAzMHJweDtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///159\n");
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 93));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nvar _default = {\n  computed: _objectSpread({}, (0, _vuex.mapState)(['statusbarHeight'])),\n  data: function data() {\n    return {\n      currentPage: 1,\n      total: 0,\n      active: 0,\n      wordsWidth: 250,\n      tempActive: 0,\n      type: '',\n      words: '全部',\n      tempType: '',\n      dateType: 0,\n      dataList: [],\n      startDate: null,\n      endDate: null,\n      defaultStartDate: null,\n      defaultEndDate: null,\n      showMoney: false,\n      countData: {},\n      countDataList: {},\n      hasNext: true,\n      show: false,\n      show1: false,\n      year: null,\n      tempYear: null,\n      month: null,\n      tempMonth: null,\n      tempStartDate: null,\n      tempEndDate: null\n    };\n  },\n  onLoad: function onLoad() {\n    this.active = 0;\n    this.wordsWidth = 250;\n    this.words = '全部';\n    this.tempActive = '';\n    this.dateType = 0;\n    this.countData = {};\n    this.tempStartDate = null;\n    this.tempEndDate = null;\n    this.countDataList = {};\n    this.show = false;\n    this.initDateStr();\n    // uni.$on('accountListReload', this.getFirstPageData())\n  },\n\n  methods: {\n    bindChange1: function bindChange1(e) {\n      this.tempStartDate = e.detail.value || null;\n      if (this.tempStartDate && this.tempEndDate) {\n        if (new Date(this.tempStartDate + ' 00:00:00') > new Date(this.tempEndDate + ' 00:00:00')) {\n          this.tempStartDate = this.tempEndDate;\n          uni.showToast({\n            title: '开始日期不能大于结束日期',\n            icon: 'none'\n          });\n        }\n      }\n    },\n    bindChange2: function bindChange2(e) {\n      this.tempEndDate = e.detail.value || null;\n      if (this.tempStartDate && this.tempEndDate) {\n        if (new Date(this.tempStartDate + ' 00:00:00') > new Date(this.tempEndDate + ' 00:00:00')) {\n          this.tempEndDate = this.tempStartDate;\n          uni.showToast({\n            title: '开始日期不能大于结束日期',\n            icon: 'none'\n          });\n        }\n      }\n    },\n    formatter: function formatter(type, value) {\n      if (type === 'year') {\n        return \"\".concat(value, \"\\u5E74\");\n      }\n      if (type === 'month') {\n        return \"\".concat(value, \"\\u6708\");\n      }\n      return value;\n    },\n    getShopPage: function getShopPage() {\n      var _this = this;\n      if (this.loading || !this.hasNext) {\n        return;\n      }\n      this.loading = true;\n      if (this.currentPage == 1) {\n        this.hasNext = true;\n        this.dataList = [];\n      }\n      __f__(\"log\", {\n        startTime: this.startDate || this.defaultStartDate,\n        endTime: this.endDate || this.defaultEndDate,\n        type: this.type,\n        optType: this.active === 1 ? 1 : this.active === 2 ? -1 : ''\n      }, \" at pages/wallet/wallet.vue:246\");\n      this.$u.api.driverPage({\n        capacity: 10,\n        model: {\n          startTime: this.startDate || this.defaultStartDate,\n          endTime: this.endDate || this.defaultEndDate,\n          type: this.type,\n          optType: this.active === 1 ? 1 : this.active === 2 ? -1 : ''\n        },\n        page: this.currentPage\n      }).then(function (res) {\n        if (res.code == 200) {\n          var _this$dataList;\n          (_this$dataList = _this.dataList).push.apply(_this$dataList, (0, _toConsumableArray2.default)(res.data.records));\n          _this.total = res.data.total;\n          _this.currentPage = _this.currentPage + 1;\n          if (_this.dataList.length >= res.data.total) {\n            _this.hasNext = false;\n          } else {\n            _this.hasNext = true;\n          }\n        }\n      });\n    },\n    getShopSummary: function getShopSummary() {\n      var _this2 = this;\n      this.$u.api.driverSummary({\n        startTime: this.startDate || this.defaultStartDate,\n        endTime: this.endDate || this.defaultEndDate,\n        type: this.active === 1 ? 0 : this.active === 2 ? 1 : '',\n        objType: this.type === 1 ? 16 : this.type === 2 ? 17 : this.type === 3 ? 25 : this.type === 4 ? 1 : ''\n      }).then(function (res) {\n        if (res.code == 200) {\n          _this2.countDataList = res.data;\n        }\n      });\n    },\n    // 获取门店钱包统计\n    getShopStatistics: function getShopStatistics() {\n      var _this3 = this;\n      this.$u.api.driverStatistics({}).then(function (res) {\n        if (res.code == 200) {\n          _this3.countData = res.data;\n        }\n      });\n    },\n    comfirmDate: function comfirmDate(flag) {\n      if (flag) {\n        if (!this.tempStartDate || !this.tempEndDate) {\n          return uni.showToast({\n            title: '请选择起止日期',\n            icon: 'none'\n          });\n        }\n        if (new Date(this.tempEndDate + \" 00:00:00\").getTime() < new Date(this.tempStartDate + \" 00:00:00\").getTime()) {\n          return uni.showToast({\n            title: '日期范围不正确',\n            icon: 'error'\n          });\n        }\n        this.startDate = this.tempStartDate;\n        this.endDate = this.tempEndDate;\n      } else {\n        this.startDate = null;\n        this.endDate = null;\n        this.tempStartDate = null;\n        this.tempEndDate = null;\n      }\n      this.getFirstPageData();\n      this.getShopSummary();\n      this.show1 = false;\n    },\n    openShow: function openShow() {\n      this.tempActive = this.active;\n      this.tempType = this.type;\n      this.show = true;\n    },\n    comfirm: function comfirm(flag) {\n      if (flag) {\n        this.active = this.tempActive;\n        this.type = this.tempType;\n        this.show = false;\n        this.wordsWidth = 250;\n        if (this.active === 0 && this.type === '') {\n          this.words = '全部';\n        } else {\n          var t1 = this.active === 1 ? '收入 ' : this.active === 2 ? '支出 ' : '';\n          var t2 = this.type === 0 ? '订单结算' : this.type === 1 ? '提现' : this.type === 2 ? '提现退回' : '';\n          if (t1 != '' && t2 != '') {\n            this.wordsWidth = 350;\n          }\n          this.words = t1 + t2;\n        }\n      } else {\n        this.tempActive = 0;\n        this.tempType = '';\n        this.active = 0;\n        this.type = '';\n        this.words = '全部';\n        this.wordsWidth = 250;\n        this.show = false;\n      }\n      this.getFirstPageData();\n      this.getShopSummary();\n    },\n    formattedDateTime: function formattedDateTime(currentDate) {\n      var year = currentDate.getFullYear();\n      var month = (currentDate.getMonth() + 1).toString().padStart(2, '0'); // 月份从 0 开始,需要加 1,并补齐两位\n      var day = currentDate.getDate().toString().padStart(2, '0'); // 补齐两位\n      var formattedDate = \"\".concat(year, \"-\").concat(month, \"-\").concat(day);\n      __f__(\"log\", formattedDate, \" at pages/wallet/wallet.vue:358\"); // 输出格式化后的日期,例如 \"2023-10-24\"\n      return formattedDate;\n    },\n    initDateStr: function initDateStr() {\n      var now = new Date();\n      var firstDay = new Date(now.getFullYear(), now.getMonth(), 1);\n      var defaultStart = this.formattedDateTime(firstDay);\n      var defaultEnd = this.formattedDateTime(now);\n      this.defaultStartDate = defaultStart;\n      this.defaultEndDate = defaultEnd;\n      this.startDate = null;\n      this.endDate = null;\n      this.getShopStatistics();\n      this.getShopSummary();\n      this.getShopPage();\n    },\n    checkActive: function checkActive(index) {\n      this.tempActive = index;\n    },\n    checkType: function checkType(index) {\n      this.tempType = index;\n    },\n    getFirstPageData: function getFirstPageData() {\n      this.currentPage = 0;\n      this.hasNext = true;\n      this.loading = false;\n      this.total = 0;\n      this.dataList = [];\n      this.getShopPage();\n    },\n    jumpWithdraw: function jumpWithdraw() {\n      uni.navigateTo({\n        url: '/pages/withdraw/withdraw'\n      });\n    },\n    jumpDetail: function jumpDetail(item) {\n      if (item.objType == 17) {\n        uni.navigateTo({\n          url: '/pages/withdrawal-details/withdrawal-details?id=' + item.objId\n        });\n      }\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvd2FsbGV0L3dhbGxldC52dWUiXSwibmFtZXMiOlsiY29tcHV0ZWQiLCJkYXRhIiwiY3VycmVudFBhZ2UiLCJ0b3RhbCIsImFjdGl2ZSIsIndvcmRzV2lkdGgiLCJ0ZW1wQWN0aXZlIiwidHlwZSIsIndvcmRzIiwidGVtcFR5cGUiLCJkYXRlVHlwZSIsImRhdGFMaXN0Iiwic3RhcnREYXRlIiwiZW5kRGF0ZSIsImRlZmF1bHRTdGFydERhdGUiLCJkZWZhdWx0RW5kRGF0ZSIsInNob3dNb25leSIsImNvdW50RGF0YSIsImNvdW50RGF0YUxpc3QiLCJoYXNOZXh0Iiwic2hvdyIsInNob3cxIiwieWVhciIsInRlbXBZZWFyIiwibW9udGgiLCJ0ZW1wTW9udGgiLCJ0ZW1wU3RhcnREYXRlIiwidGVtcEVuZERhdGUiLCJvbkxvYWQiLCJtZXRob2RzIiwiYmluZENoYW5nZTEiLCJ1bmkiLCJ0aXRsZSIsImljb24iLCJiaW5kQ2hhbmdlMiIsImZvcm1hdHRlciIsImdldFNob3BQYWdlIiwic3RhcnRUaW1lIiwiZW5kVGltZSIsIm9wdFR5cGUiLCJjYXBhY2l0eSIsIm1vZGVsIiwicGFnZSIsImdldFNob3BTdW1tYXJ5Iiwib2JqVHlwZSIsImdldFNob3BTdGF0aXN0aWNzIiwiY29tZmlybURhdGUiLCJvcGVuU2hvdyIsImNvbWZpcm0iLCJmb3JtYXR0ZWREYXRlVGltZSIsImluaXREYXRlU3RyIiwiY2hlY2tBY3RpdmUiLCJjaGVja1R5cGUiLCJnZXRGaXJzdFBhZ2VEYXRhIiwianVtcFdpdGhkcmF3IiwidXJsIiwianVtcERldGFpbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBOEpBO0FBQUE7QUFBQTtBQUFBLGVBRUE7RUFDQUEsNEJBQ0EseUNBQ0E7RUFDQUM7SUFDQTtNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztNQUNBQztJQUNBO0VBQ0E7RUFDQUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTs7RUFDQUM7SUFDQUM7TUFDQTtNQUNBO1FBQ0E7VUFDQTtVQUNBQztZQUFBQztZQUFBQztVQUFBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtRQUNBO1VBQ0E7VUFDQUg7WUFBQUM7WUFBQUM7VUFBQTtRQUNBO01BQ0E7SUFDQTtJQUNBRTtNQUNBO1FBQ0E7TUFDQTtNQUNBO1FBQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7TUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtRQUNBQztRQUNBQztRQUNBL0I7UUFDQWdDO01BQ0E7TUFDQTtRQUNBQztRQUNBQztVQUNBSjtVQUNBQztVQUNBL0I7VUFDQWdDO1FBQ0E7UUFDQUc7TUFDQTtRQUNBO1VBQUE7VUFDQTtVQUNBO1VBQ0E7VUFDQTtZQUNBO1VBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQUE7TUFDQTtRQUNBTjtRQUNBQztRQUNBL0I7UUFDQXFDO01BQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0E7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUNBQztNQUNBO1FBQ0E7VUFDQTtZQUNBZDtZQUNBQztVQUNBO1FBQ0E7UUFDQTtVQUNBO1lBQ0FEO1lBQ0FDO1VBQ0E7UUFDQTtRQUNBO1FBQ0E7TUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBYztNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1VBQ0E7VUFDQTtZQUNBO1VBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUVBO01BQ0E7TUFFQTtNQUNBO01BRUE7TUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7SUFDQTtJQUNBQztNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0F2QjtRQUNBd0I7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7UUFDQXpCO1VBQ0F3QjtRQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxNTkuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDx2aWV3IGNsYXNzPVwid2FsbGV0LXBhZ2VcIj5cblx0XHQ8dmlldyBjbGFzcz1cImRhdGFcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaGV6aVwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYVwiPlxuXHRcdFx0XHRcdDx0ZXh0IHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHJweDsgXCI+6LSm5oi35L2Z6aKdKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0PHUtaWNvbiB2LWlmPVwic2hvd01vbmV5XCIgbmFtZT1cImV5ZVwiIGNvbG9yPVwiI2ZmZmZmZlwiIHNpemU9XCIxOFwiIEBjbGljaz1cInNob3dNb25leSA9ICFzaG93TW9uZXlcIj48L3UtaWNvbj5cblx0XHRcdFx0XHQ8dS1pY29uIHYtaWY9XCIhc2hvd01vbmV5XCIgbmFtZT1cImV5ZS1vZmZcIiBjb2xvcj1cIiNlZWVlZWVcIiBzaXplPVwiMThcIiBAY2xpY2s9XCJzaG93TW9uZXkgPSAhc2hvd01vbmV5XCI+PC91LWljb24+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoZXppLWJcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYi1wcmljZVwiPlxuXHRcdFx0XHRcdFx0PHRleHQgdi1pZj1cInNob3dNb25leVwiPnt7KGNvdW50RGF0YS5iYWxhbmNlIC8gMTAwIHx8IDApLnRvRml4ZWQoMil9fTwvdGV4dD5cblx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJzaG93TW9uZXlcIj48L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYi1idG5cIiBAY2xpY2s9XCJqdW1wV2l0aGRyYXdcIj7mj5DnjrA8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJoZXppLWNcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhlemktYy1pdGVtLXRpdGxlXCI+5b6F57uT566XKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtLXByaWNlXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0ICB2LWlmPVwic2hvd01vbmV5XCI+e3soY291bnREYXRhLnBlbmRpbmdBbW91bnQgLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtXCI+XG5cdFx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cImhlemktYy1pdGVtLXRpdGxlXCI+57Sv6K6h5o+Q546wKOWFgyk8L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImhlemktYy1pdGVtLXByaWNlXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0IHYtaWY9XCJzaG93TW9uZXlcIj57eyhjb3VudERhdGEudG90YWxXaXRoZHJhd24gLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHQ8dGV4dCAgdi1pZj1cIiFzaG93TW9uZXlcIj4qKioqPC90ZXh0PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJ0eFwiPlxuXHRcdFx0XHQ8dGV4dCB2LWlmPVwic2hvd01vbmV5XCI+5o+Q546w5Lit77yawqV7eyhjb3VudERhdGEud2l0aGRyYXdpbmdBbW91bnQgLyAxMDAgfHwgMCkudG9GaXhlZCgyKX19PC90ZXh0PlxuXHRcdFx0XHQ8dGV4dCB2LWlmPVwiIXNob3dNb25leVwiPuaPkOeOsOS4re+8mioqKio8L3RleHQ+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC92aWV3PlxuXHRcdDx2aWV3IGNsYXNzPVwiYm94LWxpc3RcIj5cblx0XHRcdDx2aWV3IGNsYXNzPVwiaXRlbVwiPlxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tZGF0ZVwiPlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaXRlbS1kYXRlLXRvcFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpdGVtLWRhdGUtdG9wLWxlZnRcIiBAY2xpY2s9XCJzaG93MSA9IHRydWVcIj5cblx0XHRcdFx0XHRcdFx0PHRleHQ+e3tzdGFydERhdGUgfHwgZGVmYXVsdFN0YXJ0RGF0ZX19IOiHsyB7e2VuZERhdGUgfHwgZGVmYXVsdEVuZERhdGV9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctZG93blwiIGNvbG9yPVwiIzIyMjIyMlwiIHNpemU9XCIxM1wiPjwvdS1pY29uPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWxlXCIgOnN0eWxlPVwiJ3dpZHRoOicrd29yZHNXaWR0aCsncnB4OydcIiBAY2xpY2s9XCJvcGVuU2hvdygpXCI+XG5cdFx0XHRcdFx0XHRcdDx0ZXh0Pnt7d29yZHN9fTwvdGV4dD5cblx0XHRcdFx0XHRcdFx0PHUtaWNvbiBuYW1lPVwiYXJyb3ctZG93blwiIGNvbG9yPVwiIzIyMjIyMlwiIHNpemU9XCIxNlwiPjwvdS1pY29uPlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tZGF0ZS1ib3R0b21cIj5cblx0XHRcdFx0XHRcdDx0ZXh0PuaUtuWFpe+8msKle3soY291bnREYXRhTGlzdC50b3RhbEluY29tZSB8fCAwKS50b0ZpeGVkKDIpfX08L3RleHQ+XG5cdFx0XHRcdFx0XHQ8dGV4dD7mlK/lh7rvvJrCpXt7KGNvdW50RGF0YUxpc3QudG90YWxFeHBlbnNlIHx8IDApLnRvRml4ZWQoMil9fTwvdGV4dD5cblx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpdGVtLWxpc3RcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIml0ZW0tbGlzdC1pdGVtXCIgIHYtZm9yPVwiKGl0ZW0sIGluZGV4KSBpbiBkYXRhTGlzdFwiIDprZXk9XCJpbmRleFwiIEBjbGljaz1cImp1bXBEZXRhaWwoaXRlbSlcIj5cblx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW1hZ2VcIj5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAwXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY19zaG91cnVAMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAxXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY190aXhpYW5AMngucG5nXCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cblx0XHRcdFx0XHRcdFx0PGltYWdlICB2LWlmPVwiaXRlbS50eXBlID09PSAyXCIgc3JjPVwiL3N0YXRpYy9pbWFnZS9pY190dWlrdWFuQDJ4LnBuZ1wiIG1vZGU9XCJ3aWR0aEZpeFwiPjwvaW1hZ2U+XG5cdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cImluZm9cIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWFcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5mby1hLWxhYmVsXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHR7e2l0ZW0udHlwZSA9PT0gMCA/ICflrozmiJDorqLljZUnIDogaXRlbS50eXBlID09PSAxID8gJ+aPkOeOsOaUr+WHuicgOiBpdGVtLnR5cGUgPT09IDIgPyAn5o+Q546w6YCA5ZueJyA6ICcnfX1cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZW1wbGF0ZSAgdi1pZj1cIml0ZW0udHlwZSA9PT0gMVwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjRkYwMDIwO1wiICB2LWlmPVwiaXRlbS53aXRoZHJhd1N0YXR1cyA9PSAyXCI+5pyq6YCa6L+HPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjMDA0MDk2XCIgdi1lbHNlLWlmPVwiaXRlbS53aXRoZHJhd1N0YXR1cyA9PSAxXCI+5bey6YCa6L+HPC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dCBzdHlsZT1cImNvbG9yOiAjRkYwMDIwO1wiIHYtZWxzZT7lrqHmoLjkuK08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWEtcHJpY2VcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHRleHQ+e3tpdGVtLnR5cGU9PTE/Jy0nOicrJ319e3soaXRlbS5udW0gfHwwKS50b0ZpeGVkKDIpfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0PjwvdGV4dD5cblx0XHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJpbmZvLWJcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx0ZXh0PuiuouWNlee8luWPt++8mnt7aXRlbS5vcmRlck5vIHx8ICcnfX08L3RleHQ+XG5cdFx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwiaW5mby1iXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8dGV4dD57e2l0ZW0uY3JlYXRlVGltZSB8fCAnJ319PC90ZXh0PlxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyB2LWlmPVwiIWhhc05leHRcIiBjbGFzcz1cIm5vbW9yZVwiPuW3suWKoOi9veWFqOmDqDwvdmlldz5cblx0XHRcdFx0PC92aWV3PlxuXHRcdFx0PC92aWV3PlxuXHRcdDwvdmlldz5cblx0XHQ8IS0tIOetm+mAiSAtLT5cblx0XHQ8dS1wb3B1cCA6c2hvdz1cInNob3dcIiBtb2RlPVwiYm90dG9tXCIgOnNhZmVBcmVhSW5zZXRCb3R0b209XCJmYWxzZVwiIHJvdW5kPVwiMTVcIiA6Y2xvc2VhYmxlPVwidHJ1ZVwiIEBjbG9zZT1cInNob3cgPSBmYWxzZVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyXCI+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci10aXRsZVwiPuetm+mAiTwvdmlldz5cblx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW1cIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItaXRlbS1sYWJlbFwiPuaUtuaUr+exu+Weizwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItaXRlbS1saXN0XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBAY2xpY2s9XCJjaGVja0FjdGl2ZSgwKVwiIDpjbGFzcz1cInRlbXBBY3RpdmUgPT0gMD8nc2Vhci1pdGVtLWxpc3QtaXRlbSBhY3RpdmUnOidzZWFyLWl0ZW0tbGlzdC1pdGVtJ1wiPuWFqOmDqDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3IEBjbGljaz1cImNoZWNrQWN0aXZlKDEpXCIgOmNsYXNzPVwidGVtcEFjdGl2ZSA9PSAxPydzZWFyLWl0ZW0tbGlzdC1pdGVtIGFjdGl2ZSc6J3NlYXItaXRlbS1saXN0LWl0ZW0nXCI+5pS25YWlPC92aWV3PlxuXHRcdFx0XHRcdFx0PHZpZXcgQGNsaWNrPVwiY2hlY2tBY3RpdmUoMilcIiA6Y2xhc3M9XCJ0ZW1wQWN0aXZlID09IDI/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7mlK/lh7o8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAyMTZycHg7IGhlaWdodDogMDtcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1pdGVtXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW0tbGFiZWxcIj7kuqTmmJPnsbvlnos8L3ZpZXc+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWl0ZW0tbGlzdFwiPlxuXHRcdFx0XHRcdFx0PHZpZXcgIEBjbGljaz1cImNoZWNrVHlwZSgnJylcIiA6Y2xhc3M9XCJ0ZW1wVHlwZSA9PT0gJycgPyAnc2Vhci1pdGVtLWxpc3QtaXRlbSBhY3RpdmUnOidzZWFyLWl0ZW0tbGlzdC1pdGVtJ1wiPuWFqOmDqDwvdmlldz5cblx0XHRcdFx0XHRcdDx2aWV3ICBAY2xpY2s9XCJjaGVja1R5cGUoMClcIiA6Y2xhc3M9XCJ0ZW1wVHlwZSA9PT0gMCA/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7orqLljZXnu5Pnrpc8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyAgQGNsaWNrPVwiY2hlY2tUeXBlKDEpXCIgOmNsYXNzPVwidGVtcFR5cGUgPT09IDE/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7mj5DnjrA8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyAgQGNsaWNrPVwiY2hlY2tUeXBlKDIpXCIgOmNsYXNzPVwidGVtcFR5cGUgPT09IDI/J3NlYXItaXRlbS1saXN0LWl0ZW0gYWN0aXZlJzonc2Vhci1pdGVtLWxpc3QtaXRlbSdcIj7mj5DnjrDpgIDlm548L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAyMTZycHg7IGhlaWdodDogMDtcIj48L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1mb290ZXJcIj5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyLWJ0bjFcIiBAY2xpY2s9XCJjb21maXJtKGZhbHNlKVwiPumHjee9rjwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyLWJ0bjJcIiBAY2xpY2s9XCJjb21maXJtKHRydWUpXCI+56Gu6K6kPC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHQ8L3ZpZXc+XG5cdFx0PC91LXBvcHVwPlxuXHRcdDx1LXBvcHVwIDpzaG93PVwic2hvdzFcIiBtb2RlPVwiYm90dG9tXCIgOnNhZmVBcmVhSW5zZXRCb3R0b209XCJmYWxzZVwiICByb3VuZD1cIjE1XCIgIEBjbG9zZT1cImNvbWZpcm1EYXRlKGZhbHNlKVwiPlxuXHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyXCIgc3R5bGU9XCJtaW4taGVpZ2h0OiA1MDBycHg7XCI+XG5cdFx0XHRcdDx2aWV3IHN0eWxlPVwiZGlzcGxheTogZmxleDtqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7YWxpZ24taXRlbXM6IGZsZXgtZW5kO3RleHQtYWxpZ246IGNlbnRlcjtcIj5cblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47dGV4dC1hbGlnbjogY2VudGVyOyBmbGV4OiAxO1wiPlxuXHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIzXCI+5byA5aeL5pe26Ze0PC92aWV3PlxuXHRcdFx0XHRcdFx0PHBpY2tlciA6dmFsdWU9XCJ0ZW1wU3RhcnREYXRlXCIgQGNoYW5nZT1cImJpbmRDaGFuZ2UxXCIgbW9kZT1cImRhdGVcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIyXCIgOmNsYXNzPVwieyAncGlja2VyMi1lbXB0eSc6ICF0ZW1wU3RhcnREYXRlIH1cIj5cblx0XHRcdFx0XHRcdFx0XHR7eyB0ZW1wU3RhcnREYXRlIHx8ICfor7fpgInmi6nlvIDlp4vml7bpl7QnIH19XG5cdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdDwvcGlja2VyPlxuXHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cImZsZXgtc2hyaW5rOiAwOyB3aWR0aDogNTBycHg7XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj48L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj7oh7M8L3ZpZXc+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwiZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjt0ZXh0LWFsaWduOiBjZW50ZXI7IGZsZXg6IDE7XCI+XG5cdFx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cInBpY2tlcjNcIj7nu5PmnZ/ml7bpl7Q8L3ZpZXc+XG5cdFx0XHRcdFx0XHQ8cGlja2VyIDp2YWx1ZT1cInRlbXBFbmREYXRlXCIgQGNoYW5nZT1cImJpbmRDaGFuZ2UyXCIgbW9kZT1cImRhdGVcIj5cblx0XHRcdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJwaWNrZXIyXCIgOmNsYXNzPVwieyAncGlja2VyMi1lbXB0eSc6ICF0ZW1wRW5kRGF0ZSB9XCI+XG5cdFx0XHRcdFx0XHRcdFx0XHR7eyB0ZW1wRW5kRGF0ZSB8fCAn6K+36YCJ5oup57uT5p2f5pe26Ze0JyB9fVxuXHRcdFx0XHRcdFx0XHRcdDwvdmlldz5cblx0XHRcdFx0XHRcdFx0PC9waWNrZXI+XG5cdFx0XHRcdFx0PC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+XG5cdFx0XHRcdCA8dmlldyBjbGFzcz1cInNlYXItZm9vdGVyXCI+XG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJzZWFyLWZvb3Rlci1idG4xXCIgQGNsaWNrPVwiY29tZmlybURhdGUoZmFsc2UpXCI+6YeN572uPC92aWV3PlxuXHRcdFx0XHRcdDx2aWV3IGNsYXNzPVwic2Vhci1mb290ZXItYnRuMlwiIEBjbGljaz1cImNvbWZpcm1EYXRlKHRydWUpXCI+56Gu6K6kPC92aWV3PlxuXHRcdFx0XHQ8L3ZpZXc+ICBcblx0XHRcdDwvdmlldz5cblx0XHQ8L3UtcG9wdXA+XG5cdDwvdmlldz5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCdcblxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdC4uLm1hcFN0YXRlKFsnc3RhdHVzYmFySGVpZ2h0J10pXG5cdFx0fSxcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0Y3VycmVudFBhZ2U6MSxcblx0XHRcdFx0dG90YWw6MCxcblx0XHRcdFx0YWN0aXZlOjAsXG5cdFx0XHRcdHdvcmRzV2lkdGg6MjUwLFxuXHRcdFx0XHR0ZW1wQWN0aXZlIDowLFxuXHRcdFx0XHR0eXBlOicnLFxuXHRcdFx0XHR3b3Jkczon5YWo6YOoJyxcblx0XHRcdFx0dGVtcFR5cGUgOicnLFxuXHRcdFx0XHRkYXRlVHlwZSA6MCxcblx0XHRcdFx0ZGF0YUxpc3Q6W10sXG5cdFx0XHRcdHN0YXJ0RGF0ZTpudWxsLFxuXHRcdFx0XHRlbmREYXRlOm51bGwsXG5cdFx0XHRcdGRlZmF1bHRTdGFydERhdGU6bnVsbCxcblx0XHRcdFx0ZGVmYXVsdEVuZERhdGU6bnVsbCxcblx0XHRcdFx0c2hvd01vbmV5OmZhbHNlLFxuXHRcdFx0XHRjb3VudERhdGE6e30sXG5cdFx0XHRcdGNvdW50RGF0YUxpc3Q6e30sXG5cdFx0XHRcdGhhc05leHQ6dHJ1ZSxcblx0XHRcdFx0c2hvdzogZmFsc2UsXG5cdFx0XHRcdHNob3cxOmZhbHNlLFxuXHRcdFx0XHR5ZWFyOm51bGwsXG5cdFx0XHRcdHRlbXBZZWFyOm51bGwsXG5cdFx0XHRcdG1vbnRoOm51bGwsXG5cdFx0XHRcdHRlbXBNb250aDpudWxsLFxuXHRcdFx0XHR0ZW1wU3RhcnREYXRlOm51bGwsXG5cdFx0XHRcdHRlbXBFbmREYXRlOm51bGwsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRvbkxvYWQoKSB7XG5cdFx0XHR0aGlzLmFjdGl2ZT0wXG5cdFx0XHR0aGlzLndvcmRzV2lkdGg9MjUwXG5cdFx0XHR0aGlzLndvcmRzPSflhajpg6gnXG5cdFx0XHR0aGlzLnRlbXBBY3RpdmU9Jydcblx0XHRcdHRoaXMuZGF0ZVR5cGU9MFxuXHRcdFx0dGhpcy5jb3VudERhdGE9e31cblx0XHRcdHRoaXMudGVtcFN0YXJ0RGF0ZT1udWxsXG5cdFx0XHR0aGlzLnRlbXBFbmREYXRlPW51bGxcblx0XHRcdHRoaXMuY291bnREYXRhTGlzdD17fVxuXHRcdFx0dGhpcy5zaG93ID0gZmFsc2Vcblx0XHRcdHRoaXMuaW5pdERhdGVTdHIoKVxuXHRcdFx0Ly8gdW5pLiRvbignYWNjb3VudExpc3RSZWxvYWQnLCB0aGlzLmdldEZpcnN0UGFnZURhdGEoKSlcblx0XHR9LFxuXHRcdG1ldGhvZHM6e1xuXHRcdFx0YmluZENoYW5nZTEgKGUpIHtcblx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gZS5kZXRhaWwudmFsdWUgfHwgbnVsbFxuXHRcdFx0XHRpZiAodGhpcy50ZW1wU3RhcnREYXRlICYmIHRoaXMudGVtcEVuZERhdGUpIHtcblx0XHRcdFx0XHRpZiAobmV3IERhdGUodGhpcy50ZW1wU3RhcnREYXRlICsgJyAwMDowMDowMCcpID4gbmV3IERhdGUodGhpcy50ZW1wRW5kRGF0ZSArICcgMDA6MDA6MDAnKSkge1xuXHRcdFx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gdGhpcy50ZW1wRW5kRGF0ZVxuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7IHRpdGxlOiAn5byA5aeL5pel5pyf5LiN6IO95aSn5LqO57uT5p2f5pel5pyfJywgaWNvbjogJ25vbmUnIH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0YmluZENoYW5nZTIgKGUpIHtcblx0XHRcdFx0dGhpcy50ZW1wRW5kRGF0ZSA9IGUuZGV0YWlsLnZhbHVlIHx8IG51bGxcblx0XHRcdFx0aWYgKHRoaXMudGVtcFN0YXJ0RGF0ZSAmJiB0aGlzLnRlbXBFbmREYXRlKSB7XG5cdFx0XHRcdFx0aWYgKG5ldyBEYXRlKHRoaXMudGVtcFN0YXJ0RGF0ZSArICcgMDA6MDA6MDAnKSA+IG5ldyBEYXRlKHRoaXMudGVtcEVuZERhdGUgKyAnIDAwOjAwOjAwJykpIHtcblx0XHRcdFx0XHRcdHRoaXMudGVtcEVuZERhdGUgPSB0aGlzLnRlbXBTdGFydERhdGVcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3QoeyB0aXRsZTogJ+W8gOWni+aXpeacn+S4jeiDveWkp+S6jue7k+adn+aXpeacnycsIGljb246ICdub25lJyB9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGZvcm1hdHRlcih0eXBlLCB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlID09PSAneWVhcicpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke3ZhbHVlfeW5tGBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke3ZhbHVlfeaciGBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgICAgICB9LFxuXHRcdFx0Z2V0U2hvcFBhZ2UoKSB7XG5cdFx0XHRcdGlmKHRoaXMubG9hZGluZyB8fCAhdGhpcy5oYXNOZXh0KXtcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLmxvYWRpbmc9dHJ1ZVxuXHRcdFx0XHRpZih0aGlzLmN1cnJlbnRQYWdlID09IDEpe1xuXHRcdFx0XHRcdHRoaXMuaGFzTmV4dCA9IHRydWVcblx0XHRcdFx0XHR0aGlzLmRhdGFMaXN0PVtdXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29uc29sZS5sb2coe1xuXHRcdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0XHRlbmRUaW1lOiB0aGlzLmVuZERhdGUgfHwgdGhpcy5kZWZhdWx0RW5kRGF0ZSxcblx0XHRcdFx0XHRcdHR5cGU6IHRoaXMudHlwZSxcblx0XHRcdFx0XHRcdG9wdFR5cGU6IHRoaXMuYWN0aXZlID09PSAxPzE6KHRoaXMuYWN0aXZlID09PSAyPy0xOicnKVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdHRoaXMuJHUuYXBpLmRyaXZlclBhZ2Uoe1xuXHRcdFx0XHRcdGNhcGFjaXR5OiAxMCxcblx0XHRcdFx0XHRtb2RlbDoge1xuXHRcdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0XHRlbmRUaW1lOiB0aGlzLmVuZERhdGUgfHwgdGhpcy5kZWZhdWx0RW5kRGF0ZSxcblx0XHRcdFx0XHRcdHR5cGU6IHRoaXMudHlwZSxcblx0XHRcdFx0XHRcdG9wdFR5cGU6IHRoaXMuYWN0aXZlID09PSAxPzE6KHRoaXMuYWN0aXZlID09PSAyPy0xOicnKVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0cGFnZTogdGhpcy5jdXJyZW50UGFnZVxuXHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09IDIwMCkge1xuXHRcdFx0XHRcdFx0dGhpcy5kYXRhTGlzdC5wdXNoKC4uLnJlcy5kYXRhLnJlY29yZHMpXG5cdFx0XHRcdFx0XHR0aGlzLnRvdGFsID0gcmVzLmRhdGEudG90YWxcblx0XHRcdFx0XHRcdHRoaXMuY3VycmVudFBhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlKzFcblx0XHRcdFx0XHRcdGlmICh0aGlzLmRhdGFMaXN0Lmxlbmd0aCA+PSByZXMuZGF0YS50b3RhbCkge1xuXHRcdFx0XHRcdFx0XHR0aGlzLmhhc05leHQgPSBmYWxzZVxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5oYXNOZXh0ID0gdHJ1ZVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRnZXRTaG9wU3VtbWFyeSgpIHtcblx0XHRcdFx0dGhpcy4kdS5hcGkuZHJpdmVyU3VtbWFyeSh7XG5cdFx0XHRcdFx0c3RhcnRUaW1lOiB0aGlzLnN0YXJ0RGF0ZSB8fCB0aGlzLmRlZmF1bHRTdGFydERhdGUsXG5cdFx0XHRcdFx0ZW5kVGltZTogdGhpcy5lbmREYXRlIHx8IHRoaXMuZGVmYXVsdEVuZERhdGUsXG5cdFx0XHRcdFx0dHlwZTogdGhpcy5hY3RpdmUgPT09IDE/MDoodGhpcy5hY3RpdmU9PT0yPzE6JycpLCBcblx0XHRcdFx0XHRvYmpUeXBlOiB0aGlzLnR5cGUgPT09IDE/MTY6KCB0aGlzLnR5cGUgPT09IDI/MTc6KCB0aGlzLnR5cGUgPT09IDM/MjU6ICh0aGlzLnR5cGUgPT09IDQ/MTogJycpKSksIFxuXHRcdFx0XHR9KS50aGVuKHJlcz0+e1xuXHRcdFx0XHRcdGlmKHJlcy5jb2RlID09IDIwMCl7XG5cdFx0XHRcdFx0XHR0aGlzLmNvdW50RGF0YUxpc3QgPSByZXMuZGF0YVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHQvLyDojrflj5bpl6jlupfpkrHljIXnu5/orqFcblx0XHRcdGdldFNob3BTdGF0aXN0aWNzKCl7XG5cdFx0XHRcdHRoaXMuJHUuYXBpLmRyaXZlclN0YXRpc3RpY3Moe30pLnRoZW4ocmVzPT57XG5cdFx0XHRcdFx0aWYocmVzLmNvZGUgPT0gMjAwKXtcblx0XHRcdFx0XHRcdHRoaXMuY291bnREYXRhID0gcmVzLmRhdGFcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXHRcdFx0Y29tZmlybURhdGUoZmxhZyl7XG5cdFx0XHRcdGlmIChmbGFnKSB7XG5cdFx0XHRcdFx0aWYgKCF0aGlzLnRlbXBTdGFydERhdGUgfHwgIXRoaXMudGVtcEVuZERhdGUpIHtcblx0XHRcdFx0XHRcdHJldHVybiB1bmkuc2hvd1RvYXN0KHtcblx0XHRcdFx0XHRcdFx0dGl0bGU6ICfor7fpgInmi6notbfmraLml6XmnJ8nLFxuXHRcdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmKG5ldyBEYXRlKHRoaXMudGVtcEVuZERhdGUrXCIgMDA6MDA6MDBcIikuZ2V0VGltZSgpIDwgbmV3IERhdGUodGhpcy50ZW1wU3RhcnREYXRlK1wiIDAwOjAwOjAwXCIpLmdldFRpbWUoKSl7XG5cdFx0XHRcdFx0XHRyZXR1cm4gdW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0XHRcdHRpdGxlOifml6XmnJ/ojIPlm7TkuI3mraPnoa4nLFxuXHRcdFx0XHRcdFx0XHRpY29uOidlcnJvcidcblx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRoaXMuc3RhcnREYXRlID10aGlzLnRlbXBTdGFydERhdGVcblx0XHRcdFx0XHR0aGlzLmVuZERhdGUgPXRoaXMudGVtcEVuZERhdGVcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnN0YXJ0RGF0ZSA9IG51bGxcblx0XHRcdFx0XHR0aGlzLmVuZERhdGUgPSBudWxsXG5cdFx0XHRcdFx0dGhpcy50ZW1wU3RhcnREYXRlID0gbnVsbFxuXHRcdFx0XHRcdHRoaXMudGVtcEVuZERhdGUgPSBudWxsXG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5nZXRGaXJzdFBhZ2VEYXRhKClcblx0XHRcdFx0dGhpcy5nZXRTaG9wU3VtbWFyeSgpXG5cdFx0XHRcdHRoaXMuc2hvdzE9ZmFsc2Vcblx0XHRcdH0sXG5cdFx0XHRvcGVuU2hvdygpe1xuXHRcdFx0XHR0aGlzLnRlbXBBY3RpdmUgPXRoaXMuYWN0aXZlXG5cdFx0XHRcdHRoaXMudGVtcFR5cGUgPXRoaXMudHlwZVxuXHRcdFx0XHR0aGlzLnNob3c9dHJ1ZVxuXHRcdFx0fSxcblx0XHRcdGNvbWZpcm0oZmxhZyl7XG5cdFx0XHRcdGlmKGZsYWcpe1xuXHRcdFx0XHRcdHRoaXMuYWN0aXZlID0gdGhpcy50ZW1wQWN0aXZlXG5cdFx0XHRcdFx0dGhpcy50eXBlID0gdGhpcy50ZW1wVHlwZVxuXHRcdFx0XHRcdHRoaXMuc2hvdyA9IGZhbHNlXG5cdFx0XHRcdFx0dGhpcy53b3Jkc1dpZHRoID0gMjUwXG5cdFx0XHRcdFx0aWYodGhpcy5hY3RpdmUgPT09IDAgJiYgdGhpcy50eXBlID09PSAnJyl7XG5cdFx0XHRcdFx0XHR0aGlzLndvcmRzID0gJ+WFqOmDqCdcblx0XHRcdFx0XHR9ZWxzZSB7XG5cdFx0XHRcdFx0XHRsZXQgdDEgPSB0aGlzLmFjdGl2ZSA9PT0gMSA/ICfmlLblhaUgJzoodGhpcy5hY3RpdmUgPT09IDIgPyAn5pSv5Ye6ICcgOiAnJyk7XG5cdFx0XHRcdFx0XHRsZXQgdDIgPSB0aGlzLnR5cGUgPT09IDAgPyAn6K6i5Y2V57uT566XJyA6ICh0aGlzLnR5cGUgPT09IDEgPyAn5o+Q546wJzogKHRoaXMudHlwZSA9PT0gMiA/ICfmj5DnjrDpgIDlm54nIDogJycpKVxuXHRcdFx0XHRcdFx0aWYodDEgIT0nJyAmJiB0MiAhPScnKXtcblx0XHRcdFx0XHRcdFx0dGhpcy53b3Jkc1dpZHRoID0gMzUwXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR0aGlzLndvcmRzID0gdDEgKyB0MlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnRlbXBBY3RpdmUgPSAwXG5cdFx0XHRcdFx0dGhpcy50ZW1wVHlwZSA9ICcnXG5cdFx0XHRcdFx0dGhpcy5hY3RpdmUgPSAwXG5cdFx0XHRcdFx0dGhpcy50eXBlID0gJydcblx0XHRcdFx0XHR0aGlzLndvcmRzID0gJ+WFqOmDqCdcblx0XHRcdFx0XHR0aGlzLndvcmRzV2lkdGggPSAyNTBcblx0XHRcdFx0XHR0aGlzLnNob3cgPSBmYWxzZVxuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMuZ2V0Rmlyc3RQYWdlRGF0YSgpXG5cdFx0XHRcdHRoaXMuZ2V0U2hvcFN1bW1hcnkoKVxuXHRcdFx0fSxcblx0XHRcdGZvcm1hdHRlZERhdGVUaW1lKGN1cnJlbnREYXRlKSB7XG5cdFx0XHQgICAgIGNvbnN0IHllYXIgPSBjdXJyZW50RGF0ZS5nZXRGdWxsWWVhcigpO1xuXHRcdFx0ICAgICBjb25zdCBtb250aCA9IChjdXJyZW50RGF0ZS5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpOyAvLyDmnIjku73ku44gMCDlvIDlp4vvvIzpnIDopoHliqAgMe+8jOW5tuihpem9kOS4pOS9jVxuXHRcdFx0ICAgICBjb25zdCBkYXkgPSBjdXJyZW50RGF0ZS5nZXREYXRlKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpOyAvLyDooaXpvZDkuKTkvY1cblx0XHRcdCAgICAgY29uc3QgZm9ybWF0dGVkRGF0ZSA9IGAke3llYXJ9LSR7bW9udGh9LSR7ZGF5fWA7XG5cdFx0XHQgICAgIGNvbnNvbGUubG9nKGZvcm1hdHRlZERhdGUpOyAvLyDovpPlh7rmoLzlvI/ljJblkI7nmoTml6XmnJ/vvIzkvovlpoIgXCIyMDIzLTEwLTI0XCJcblx0XHRcdCAgICAgcmV0dXJuIGZvcm1hdHRlZERhdGU7XG5cdFx0XHR9LFxuXHRcdFx0aW5pdERhdGVTdHIoKXtcblx0XHRcdFx0Y29uc3Qgbm93ID0gbmV3IERhdGUoKVxuXHRcdFx0XHRjb25zdCBmaXJzdERheSA9IG5ldyBEYXRlKG5vdy5nZXRGdWxsWWVhcigpLCBub3cuZ2V0TW9udGgoKSwgMSlcblx0XHRcdFx0Y29uc3QgZGVmYXVsdFN0YXJ0ID0gdGhpcy5mb3JtYXR0ZWREYXRlVGltZShmaXJzdERheSlcblx0XHRcdFx0Y29uc3QgZGVmYXVsdEVuZCA9IHRoaXMuZm9ybWF0dGVkRGF0ZVRpbWUobm93KVxuXHRcdFx0XHRcblx0XHRcdFx0dGhpcy5kZWZhdWx0U3RhcnREYXRlID0gZGVmYXVsdFN0YXJ0XG5cdFx0XHRcdHRoaXMuZGVmYXVsdEVuZERhdGUgPSBkZWZhdWx0RW5kXG5cdFx0XHRcdFxuXHRcdFx0XHR0aGlzLnN0YXJ0RGF0ZSA9IG51bGxcblx0XHRcdFx0dGhpcy5lbmREYXRlID0gbnVsbFxuXHRcdFx0XHRcblx0XHRcdFx0dGhpcy5nZXRTaG9wU3RhdGlzdGljcygpXG5cdFx0XHRcdHRoaXMuZ2V0U2hvcFN1bW1hcnkoKVxuXHRcdFx0XHR0aGlzLmdldFNob3BQYWdlKClcblx0XHRcdH0sXG5cdFx0XHRjaGVja0FjdGl2ZShpbmRleCl7XG5cdFx0XHRcdHRoaXMudGVtcEFjdGl2ZSA9aW5kZXhcblx0XHRcdH0sXG5cdFx0XHRjaGVja1R5cGUoaW5kZXgpe1xuXHRcdFx0XHR0aGlzLnRlbXBUeXBlID0gaW5kZXhcblx0XHRcdH0sXG5cdFx0XHRnZXRGaXJzdFBhZ2VEYXRhKCl7XG5cdFx0XHRcdHRoaXMuY3VycmVudFBhZ2UgPSAwXG5cdFx0XHRcdHRoaXMuaGFzTmV4dD10cnVlXG5cdFx0XHRcdHRoaXMubG9hZGluZz1mYWxzZVxuXHRcdFx0XHR0aGlzLnRvdGFsPTBcblx0XHRcdFx0dGhpcy5kYXRhTGlzdD1bXVxuXHRcdFx0XHR0aGlzLmdldFNob3BQYWdlKClcblx0XHRcdH0sXG5cdFx0XHRqdW1wV2l0aGRyYXcoKXtcblx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xuXHRcdFx0XHRcdHVybDogJy9wYWdlcy93aXRoZHJhdy93aXRoZHJhdydcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cdFx0XHRqdW1wRGV0YWlsKGl0ZW0pe1xuXHRcdFx0XHRpZihpdGVtLm9ialR5cGUgPT0gMTcgKXtcblx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvd2l0aGRyYXdhbC1kZXRhaWxzL3dpdGhkcmF3YWwtZGV0YWlscz9pZD0nK2l0ZW0ub2JqSWRcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuXHQucGlja2VyLXZpZXcge1xuXHRcdHdpZHRoOiA3NTBycHg7XG5cdFx0aGVpZ2h0OiA2MDBycHg7XG5cdFx0bWFyZ2luLXRvcDogMjBycHg7XG5cdH1cblx0LnBpY2tlci1pdGVtIHtcblx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC5waWNrZXIye1xuXHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLDY0LDE1MCwwLjEpICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHJweDtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0Y29sb3I6ICMwMDQwOTYgIWltcG9ydGFudDtcblx0fVxuXHQucGlja2VyMi1lbXB0eXtcblx0XHRiYWNrZ3JvdW5kOiAjRjdGN0Y3ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICM5OTk5OTkgIWltcG9ydGFudDtcblx0fVxuXHQucGlja2VyM3tcblx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1yYWRpdXM6IDhycHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXNpemU6IDI4cnB4O1xuXHRcdGNvbG9yOiAjMzMzMzMzO1xuXHR9XG48L3N0eWxlPlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG5cdC53YWxsZXQtcGFnZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogI2Y4ZjhmODtcblx0XHQuc2VhciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC5zZWFyLXRpdGxlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHR9XG5cdFx0XHQuc2Vhci1pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdG1hcmdpbi10b3A6IDQ4cnB4O1xuXHRcdFx0XHQuc2Vhci1pdGVtLWxhYmVsIHtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdFx0Y29sb3I6ICMxMTExMTE7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNlYXItaXRlbS1saXN0IHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHJweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0XHQuYWN0aXZlIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCw2NCwxNTAsMC4xKSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTYgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmFjdGl2ZTEge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnJweCBzb2xpZCAjMDA0MDk2ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwNDA5NiAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuc2Vhci1pdGVtLWxpc3QtaXRlbSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjE2cnB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA3MnJweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA3MnJweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNGN0Y3Rjc7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA4cnB4O1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjhycHg7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuc2Vhci1pdGVtLWxpc3QtaXRlbTEge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDIxNnJweDtcblx0XHRcdFx0XHRcdGhlaWdodDogNzJycHg7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNzJycHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuc2Vhci1mb290ZXIge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogODBycHg7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0LnNlYXItZm9vdGVyLWJ0bjEge1xuXHRcdFx0XHRcdHdpZHRoOiAzMzRycHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA4OHJweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogODhycHg7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNFNUU1RTU7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNDRycHg7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRmb250LXNpemU6IDMycnB4O1xuXHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5zZWFyLWZvb3Rlci1idG4yIHtcblx0XHRcdFx0XHR3aWR0aDogMzM0cnB4O1xuXHRcdFx0XHRcdGhlaWdodDogODhycHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDg4cnB4O1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDA0MDk2O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDQ0cnB4O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzMnJweDtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuYm94LWxpc3Qge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMwcnB4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdC5pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdC5pdGVtLWRhdGUge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDMwcnB4IDMwcnB4IDMwcnB4O1xuXHRcdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdFx0Lml0ZW0tZGF0ZS10b3Age1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdC5pdGVtLWRhdGUtdG9wLWxlZnQge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRpbWFnZSB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMjZycHg7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEycnB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyOHJweDtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzIyMjIyMjtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDhycHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5zZWxlIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDIwMHJweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA2NHJweDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMCAyNHJweDtcblx0XHRcdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI0ZGRkZGRjtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMzJycHg7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMXJweCBzb2xpZCAjRUVFRUVFO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAzMHJweDtcblx0XHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5pdGVtLWRhdGUtYm90dG9tIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHJweDtcblx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogIzc3Nzc3Nztcblx0XHRcdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA2MnJweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuaXRlbS1saXN0IHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0cGFkZGluZzogMCAzMHJweDtcblx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cdFx0XHRcdFx0Lm5vbW9yZSB7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzk5OTk5OTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMzBycHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMzBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5pdGVtLWxpc3QtaXRlbSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDMwcnB4IDA7XG5cdFx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXJweCBzb2xpZCAjRTVFNUU1O1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDcycnB4O1xuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDcycnB4O1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBycHg7XG5cdFx0XHRcdFx0XHRcdGltYWdlIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LmluZm8ge1xuXHRcdFx0XHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRcdFx0XHQuaW5mby1hIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdFx0XHRcdC5pbmZvLWEtbGFiZWwge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBycHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzIyMjIyMjtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNHJweDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHJweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LmluZm8tYS1wcmljZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzJycHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICMyMjIyMjI7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0LmluZm8tYiB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxMnJweDtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICM5OTk5OTk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC8vIC5zZWxlIHtcblx0XHQvLyBcdHdpZHRoOiAyMDBycHg7XG5cdFx0Ly8gXHRoZWlnaHQ6IDY0cnB4O1xuXHRcdC8vIFx0cGFkZGluZzogMCAyNHJweDtcblx0XHQvLyBcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0Ly8gXHRiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuXHRcdC8vIFx0Ym9yZGVyLXJhZGl1czogMzJycHg7XG5cdFx0Ly8gXHRib3JkZXI6IDFycHggc29saWQgI0VFRUVFRTtcblx0XHQvLyBcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Ly8gXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdC8vIFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdC8vIFx0bWFyZ2luLWxlZnQ6IDMwcnB4O1xuXHRcdC8vIFx0dGV4dCB7XG5cdFx0Ly8gXHRcdHdpZHRoOiBhdXRvO1xuXHRcdC8vIFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdC8vIFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdC8vIFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHQvLyBcdH1cblx0XHQvLyB9XG5cdFx0LmRhdGEge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHQvLyBwYWRkaW5nOiAyMHJweCAzMHJweDtcblx0XHRcdHBhZGRpbmc6IDMwcnB4O1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdC5oZXppIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzA0cnB4O1xuXHRcdFx0XHRwYWRkaW5nOiAzMHJweDtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0YmFja2dyb3VuZDogIzAwNDA5Njtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTZycHg7XG5cdFx0XHRcdC5oZXppLWEge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHR0ZXh0IHtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDI0cnB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5oZXppLWIge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMTRycHg7XG5cdFx0XHRcdFx0LmhlemktYi1wcmljZSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdFx0XHRcdFx0dGV4dCB7XG5cdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogNDRycHg7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNnJweDtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuaGV6aS1iLWJ0biB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwcnB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA1MnJweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA1MnJweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAyNnJweDtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDQwOTY7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5oZXppLWMge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTM4cnB4O1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDI0cnB4O1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcnB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4wOSk7XG5cdFx0XHRcdFx0LmhlemktYy1pdGVtIHtcblx0XHRcdFx0XHRcdGZsZXg6IDE7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFycHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjA5KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5oZXppLWMtaXRlbS10aXRsZSB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjRycHg7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQuaGV6aS1jLWl0ZW0tcHJpY2Uge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDhycHg7XG5cdFx0XHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDMwcnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudHgge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDRycHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCw2NCwxNTAsMC4xMik7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDE2cnB4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogLTIwcnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRmb250LXNpemU6IDI2cnB4O1xuXHRcdFx0XHRjb2xvcjogIzAwNDA5Njtcblx0XHRcdFx0cGFkZGluZzogNDBycHggMzBycHggMCAzMHJweDtcblx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///159\n");
/***/ }),
/* 160 */
@@ -18770,7 +18840,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 4));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nvar _jsMd = _interopRequireDefault(__webpack_require__(/*! js-md5 */ 178));\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      locationTimer: null,\n      jpushModule: null,\n      tts: null\n    };\n  },\n  computed: _objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])),\n  watch: {\n    token: function token(newVal) {\n      if (newVal) {\n        this.checkAndStartLocationPolling();\n        this.bindJPushAlias();\n      } else {\n        this.stopLocationPolling();\n        this.deleteJPushAlias();\n      }\n    }\n  },\n  onLaunch: function onLaunch() {\n    this.initTTS();\n    this.initJPush();\n    this.checkAndStartLocationPolling();\n    this.checkAppUpdate();\n  },\n  onShow: function onShow() {\n    __f__(\"log\", 'App Show', \" at App.vue:33\");\n    // this.checkAndStartLocationPolling()\n  },\n\n  onHide: function onHide() {\n    __f__(\"log\", 'App Hide', \" at App.vue:37\");\n    // this.stopLocationPolling()\n  },\n  onUnload: function onUnload() {\n    if (this.tts) {\n      this.tts.stop();\n      this.tts.shutdown();\n    }\n    this.stopLocationPolling();\n  },\n  methods: {\n    initTTS: function initTTS() {\n      var _this = this;\n      if (uni.getSystemInfoSync().platform !== 'android') {\n        __f__(\"log\", '仅支持安卓', \" at App.vue:50\");\n        return;\n      }\n      try {\n        // 导入安卓原生类\n        var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n        var Locale = plus.android.importClass('java.util.Locale');\n\n        // 创建TTS\n        this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n          onInit: function onInit(status) {\n            if (status == 0) {\n              // 设置中文\n              _this.tts.setLanguage(Locale.CHINA);\n              __f__(\"log\", '语音初始化成功', \" at App.vue:65\");\n            }\n          }\n        });\n      } catch (e) {\n        __f__(\"log\", '初始化失败', e, \" at App.vue:70\");\n      }\n    },\n    speak: function speak(text) {\n      if (!this.tts) {\n        uni.showToast({\n          title: '语音未准备好',\n          icon: 'none'\n        });\n        return;\n      }\n      try {\n        // 安卓原生播报(QUEUE_FLUSH = 立即播报,打断上一条)\n        this.tts.speak(text, 0, null);\n      } catch (err) {\n        __f__(\"log\", '播报失败', err, \" at App.vue:86\");\n      }\n    },\n    initJPush: function initJPush() {\n      __f__(\"log\", '开始初始化极光推送...', \" at App.vue:90\");\n      var jpushModule = null;\n      try {\n        jpushModule = uni.requireNativePlugin('JG-JPush');\n      } catch (e) {\n        __f__(\"error\", '加载极光推送插件失败:', e, \" at App.vue:96\");\n        return;\n      }\n      if (!jpushModule) {\n        __f__(\"error\", '极光推送插件未找到', \" at App.vue:100\");\n        return;\n      }\n      this.jpushModule = jpushModule;\n      __f__(\"log\", '极光推送插件加载成功,模块:', (0, _typeof2.default)(jpushModule), \" at App.vue:104\");\n      __f__(\"log\", '模块方法:', Object.keys(jpushModule), \" at App.vue:105\");\n      if (typeof jpushModule.initJPushService === 'function') {\n        jpushModule.initJPushService();\n        __f__(\"log\", '极光推送initJPushService调用成功', \" at App.vue:109\");\n      } else {\n        __f__(\"error\", 'jpushModule.initJPushService 不是函数,当前方法:', (0, _typeof2.default)(jpushModule.initJPushService), \" at App.vue:111\");\n        return;\n      }\n      if (typeof jpushModule.setLoggerEnable === 'function') {\n        jpushModule.setLoggerEnable(true);\n      }\n      __f__(\"log\", '极光推送初始化完成,设置监听器...', \" at App.vue:118\");\n      this.setupJPushListeners();\n      this.getRegistrationID();\n    },\n    setupJPushListeners: function setupJPushListeners() {\n      var that = this;\n      if (!this.jpushModule) return;\n\n      // 监听连接状态\n      this.jpushModule.addConnectEventListener(function (result) {\n        __f__(\"log\", '极光连接状态:', result.connectEnable, \" at App.vue:130\");\n      });\n\n      // 监听通知\n      this.jpushModule.addNotificationListener(function (result) {\n        __f__(\"log\", '收到通知:', JSON.stringify(result), \" at App.vue:135\");\n        that.speak(result.content || '');\n        var notificationEventType = result.notificationEventType;\n        // notificationOpened = 点击通知\n        if (notificationEventType === 'notificationOpened') {\n          __f__(\"log\", '通知被点击', result.extras, \" at App.vue:140\");\n          var extras = result.extras ? result.extras : {};\n          if (extras.type === 'new_order' && extras.orderId) {\n            uni.navigateTo({\n              url: '/pages/order-detail/order-detail?id=' + extras.orderId\n            });\n          } else {\n            uni.switchTab({\n              url: '/pages/index/index'\n            });\n          }\n        }\n      });\n    },\n    getRegistrationID: function getRegistrationID() {\n      var _this2 = this;\n      if (!this.jpushModule) {\n        __f__(\"log\", 'JPush模块未初始化,无法获取RegistrationID', \" at App.vue:157\");\n        return;\n      }\n      __f__(\"log\", '开始获取JPush RegistrationID...', \" at App.vue:160\");\n      this.jpushModule.getRegistrationID(function (result) {\n        __f__(\"log\", 'JPush getRegistrationID result:', JSON.stringify(result), \" at App.vue:162\");\n        if (result && result.registerID) {\n          __f__(\"log\", 'JPush RegistrationID获取成功:', result.registerID, \" at App.vue:164\");\n          uni.setStorageSync('jpush_registration_id', result.registerID);\n        } else {\n          __f__(\"log\", 'JPush RegistrationID获取失败,尝试重新获取', \" at App.vue:167\");\n          setTimeout(function () {\n            _this2.getRegistrationID();\n          }, 2000);\n        }\n      });\n    },\n    bindJPushAlias: function bindJPushAlias() {\n      var _this3 = this,\n        _this$$store$state$us;\n      if (!this.token) return;\n      if (!this.jpushModule) {\n        __f__(\"log\", 'JPush未初始化,延迟设置别名', \" at App.vue:178\");\n        setTimeout(function () {\n          _this3.bindJPushAlias();\n        }, 1000);\n        return;\n      }\n      // 优先从store获取,如果为空则从本地存储获取\n      var telephone = ((_this$$store$state$us = this.$store.state.userInfo) === null || _this$$store$state$us === void 0 ? void 0 : _this$$store$state$us.telephone) || '';\n      if (!telephone) {\n        var _uni$getStorageSync;\n        telephone = ((_uni$getStorageSync = uni.getStorageSync('userInfo')) === null || _uni$getStorageSync === void 0 ? void 0 : _uni$getStorageSync.telephone) || '';\n      }\n      if (!telephone) {\n        __f__(\"log\", '用户手机号为空,延迟获取...', \" at App.vue:190\");\n        setTimeout(function () {\n          _this3.bindJPushAlias();\n        }, 2000);\n        return;\n      }\n      var alias = (0, _jsMd.default)(telephone);\n      __f__(\"log\", '设置极光别名:', alias, \" at App.vue:197\");\n      this.jpushModule.setAlias({\n        alias: alias,\n        sequence: Date.now()\n      }, function (result) {\n        __f__(\"log\", '设置别名结果:', JSON.stringify(result), \" at App.vue:202\");\n        if (result && (result.code === 0 || result.errCode === 0)) {\n          __f__(\"log\", '设置极光别名成功', \" at App.vue:204\");\n        } else {\n          __f__(\"log\", '设置极光别名失败', \" at App.vue:206\");\n        }\n      });\n    },\n    deleteJPushAlias: function deleteJPushAlias() {\n      if (!this.jpushModule) return;\n      this.jpushModule.deleteAlias({\n        sequence: Date.now()\n      }, function (result) {\n        __f__(\"log\", '删除极光别名:', JSON.stringify(result), \" at App.vue:216\");\n      });\n    },\n    checkAndStartLocationPolling: function checkAndStartLocationPolling() {\n      var _this4 = this;\n      if (!this.token) return;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          __f__(\"log\", '获取定位权限成功,开始定时更新位置', \" at App.vue:225\");\n          _this4.startLocationPolling();\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取定位权限失败:', err.errMsg, \" at App.vue:229\");\n          uni.showToast({\n            title: '需要定位权限才能更新位置',\n            icon: 'none'\n          });\n        }\n      });\n    },\n    startLocationPolling: function startLocationPolling() {\n      var _this5 = this;\n      this.stopLocationPolling();\n      this.updateLocation();\n      this.locationTimer = setInterval(function () {\n        _this5.updateLocation();\n      }, 60000);\n    },\n    stopLocationPolling: function stopLocationPolling() {\n      if (this.locationTimer) {\n        clearInterval(this.locationTimer);\n        this.locationTimer = null;\n      }\n    },\n    updateLocation: function updateLocation() {\n      if (!this.token) return;\n      var that = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          __f__(\"log\", '定时更新位置:', res.latitude, res.longitude, \" at App.vue:259\");\n          that.$u.api.updateLocation({\n            latitude: res.latitude,\n            longitude: res.longitude\n          }).then(function (res) {\n            if (res.code === 200) {\n              __f__(\"log\", '更新位置成功', \" at App.vue:265\");\n            } else {\n              __f__(\"log\", '更新位置失败', \" at App.vue:267\");\n            }\n          }).catch(function (err) {\n            __f__(\"log\", '更新位置请求失败:', err, \" at App.vue:270\");\n          });\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取位置失败:', err.errMsg, \" at App.vue:274\");\n        }\n      });\n    },\n    checkAppUpdate: function checkAppUpdate() {\n      var _this6 = this;\n      plus.runtime.getProperty(plus.runtime.appid, function (inf) {\n        var currentVersion = inf.versionCode;\n        _this6.$u.api.getApiVersion({\n          type: 0\n        }).then(function (res) {\n          if (res.code === 200 && res.data) {\n            var latestVersion = res.data.versionNum;\n            if (latestVersion > currentVersion) {\n              if (res.data.isForce === 1) {\n                _this6.showForceUpdateDialog(res.data.fileUrl, res.data.versionNum);\n              } else {\n                _this6.showOptionalUpdateDialog(res.data.fileUrl, res.data.versionNum);\n              }\n            }\n          }\n        });\n      });\n    },\n    showForceUpdateDialog: function showForceUpdateDialog(fileUrl, version) {\n      uni.showModal({\n        title: '版本更新',\n        content: \"\\u68C0\\u6D4B\\u5230\\u65B0\\u7248\\u672C\".concat(version, \"\\uFF0C\\u8BF7\\u66F4\\u65B0\\u540E\\u7EE7\\u7EED\\u4F7F\\u7528\"),\n        showCancel: false,\n        confirmText: '立即更新',\n        success: function success() {\n          plus.runtime.openURL(fileUrl);\n        }\n      });\n    },\n    showOptionalUpdateDialog: function showOptionalUpdateDialog(fileUrl, version) {\n      uni.showModal({\n        title: '版本更新',\n        content: \"\\u68C0\\u6D4B\\u5230\\u65B0\\u7248\\u672C\".concat(version, \"\\uFF0C\\u662F\\u5426\\u66F4\\u65B0\\uFF1F\"),\n        confirmText: '更新',\n        cancelText: '稍后',\n        success: function success(res) {\n          if (res.confirm) {\n            plus.runtime.openURL(fileUrl);\n          }\n        }\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vQXBwLnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwibG9jYXRpb25UaW1lciIsImpwdXNoTW9kdWxlIiwidHRzIiwiY29tcHV0ZWQiLCJ3YXRjaCIsInRva2VuIiwib25MYXVuY2giLCJvblNob3ciLCJvbkhpZGUiLCJvblVubG9hZCIsIm1ldGhvZHMiLCJpbml0VFRTIiwib25Jbml0Iiwic3BlYWsiLCJ1bmkiLCJ0aXRsZSIsImljb24iLCJpbml0SlB1c2giLCJzZXR1cEpQdXNoTGlzdGVuZXJzIiwidGhhdCIsInVybCIsImdldFJlZ2lzdHJhdGlvbklEIiwic2V0VGltZW91dCIsImJpbmRKUHVzaEFsaWFzIiwidGVsZXBob25lIiwiYWxpYXMiLCJzZXF1ZW5jZSIsImRlbGV0ZUpQdXNoQWxpYXMiLCJjaGVja0FuZFN0YXJ0TG9jYXRpb25Qb2xsaW5nIiwidHlwZSIsInN1Y2Nlc3MiLCJmYWlsIiwic3RhcnRMb2NhdGlvblBvbGxpbmciLCJzdG9wTG9jYXRpb25Qb2xsaW5nIiwiY2xlYXJJbnRlcnZhbCIsInVwZGF0ZUxvY2F0aW9uIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJjaGVja0FwcFVwZGF0ZSIsInBsdXMiLCJzaG93Rm9yY2VVcGRhdGVEaWFsb2ciLCJjb250ZW50Iiwic2hvd0NhbmNlbCIsImNvbmZpcm1UZXh0Iiwic2hvd09wdGlvbmFsVXBkYXRlRGlhbG9nIiwiY2FuY2VsVGV4dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7SUFDQTtFQUNBO0VBQ0FDLDRCQUNBLDJDQUNBO0VBQ0FDO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0lBQ0E7RUFDQTs7RUFDQUM7SUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtVQUNBQztZQUNBO2NBQ0E7Y0FDQTtjQUNBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtRQUNBQztVQUNBQztVQUNBQztRQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFFQTtNQUNBO1FBQ0FoQjtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFFQTtRQUNBQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFFQTtRQUNBQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBRUE7SUFFQWlCO01BQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQUM7UUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBO1VBQ0E7WUFDQUw7Y0FDQU07WUFDQTtVQUNBO1lBQ0FOO2NBQ0FNO1lBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtVQUNBO1VBQ0FQO1FBQ0E7VUFDQTtVQUNBUTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFBQTtRQUFBO01BQ0E7TUFDQTtRQUNBO1FBQ0FEO1VBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFBQTtRQUNBRTtNQUNBO01BQ0E7UUFDQTtRQUNBRjtVQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0FHO1FBQ0FDO01BQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7TUFDQTtRQUNBRDtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFFO01BQUE7TUFDQTtNQUNBZDtRQUNBZTtRQUNBQztVQUNBO1VBQ0E7UUFDQTtRQUNBQztVQUNBO1VBQ0FqQjtZQUNBQztZQUNBQztVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFnQjtNQUFBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7UUFDQUM7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtNQUNBO01BQ0FyQjtRQUNBZTtRQUNBQztVQUNBO1VBQ0FYO1lBQ0FpQjtZQUNBQztVQUNBO1lBQ0E7Y0FDQTtZQUNBO2NBQ0E7WUFDQTtVQUNBO1lBQ0E7VUFDQTtRQUNBO1FBQ0FOO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQU87TUFBQTtNQUNBQztRQUNBO1FBQ0E7VUFBQVY7UUFBQTtVQUNBO1lBQ0E7WUFDQTtjQUNBO2dCQUNBO2NBQ0E7Z0JBQ0E7Y0FDQTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQVc7TUFDQTFCO1FBQ0FDO1FBQ0EwQjtRQUNBQztRQUNBQztRQUNBYjtVQUNBUztRQUNBO01BQ0E7SUFDQTtJQUVBSztNQUNBOUI7UUFDQUM7UUFDQTBCO1FBQ0FFO1FBQ0FFO1FBQ0FmO1VBQ0E7WUFDQVM7VUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0FBQ0E7QUFBQSwyQiIsImZpbGUiOiIxNzcuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8c2NyaXB0PlxuXHRpbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5cdGltcG9ydCBtZDUgZnJvbSAnanMtbWQ1Jztcblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRsb2NhdGlvblRpbWVyOiBudWxsLFxuXHRcdFx0XHRqcHVzaE1vZHVsZTogbnVsbCxcblx0XHRcdFx0dHRzOiBudWxsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRjb21wdXRlZDoge1xuXHRcdFx0Li4ubWFwU3RhdGUoWyd1c2VySW5mbycsICd0b2tlbiddKVxuXHRcdH0sXG5cdFx0d2F0Y2g6IHtcblx0XHRcdHRva2VuKG5ld1ZhbCkge1xuXHRcdFx0XHRpZiAobmV3VmFsKSB7XG5cdFx0XHRcdFx0dGhpcy5jaGVja0FuZFN0YXJ0TG9jYXRpb25Qb2xsaW5nKClcblx0XHRcdFx0XHR0aGlzLmJpbmRKUHVzaEFsaWFzKClcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnN0b3BMb2NhdGlvblBvbGxpbmcoKVxuXHRcdFx0XHRcdHRoaXMuZGVsZXRlSlB1c2hBbGlhcygpXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9LFxuXHRcdG9uTGF1bmNoOiBmdW5jdGlvbigpIHtcblx0XHRcdHRoaXMuaW5pdFRUUygpXG5cdFx0XHR0aGlzLmluaXRKUHVzaCgpXG5cdFx0XHR0aGlzLmNoZWNrQW5kU3RhcnRMb2NhdGlvblBvbGxpbmcoKVxuXHRcdFx0dGhpcy5jaGVja0FwcFVwZGF0ZSgpXG5cdFx0fSxcblx0XHRvblNob3c6IGZ1bmN0aW9uKCkge1xuXHRcdFx0Y29uc29sZS5sb2coJ0FwcCBTaG93Jylcblx0XHRcdC8vIHRoaXMuY2hlY2tBbmRTdGFydExvY2F0aW9uUG9sbGluZygpXG5cdFx0fSxcblx0XHRvbkhpZGU6IGZ1bmN0aW9uKCkge1xuXHRcdFx0Y29uc29sZS5sb2coJ0FwcCBIaWRlJylcblx0XHRcdC8vIHRoaXMuc3RvcExvY2F0aW9uUG9sbGluZygpXG5cdFx0fSxcblx0XHRvblVubG9hZCgpIHtcblx0XHRcdGlmICh0aGlzLnR0cykge1xuXHRcdFx0XHR0aGlzLnR0cy5zdG9wKClcblx0XHRcdFx0dGhpcy50dHMuc2h1dGRvd24oKVxuXHRcdFx0fVxuXHRcdFx0dGhpcy5zdG9wTG9jYXRpb25Qb2xsaW5nKClcblx0XHR9LFxuXHRcdG1ldGhvZHM6IHtcblx0XHRcdGluaXRUVFMoKSB7XG5cdFx0XHRcdGlmICh1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKS5wbGF0Zm9ybSAhPT0gJ2FuZHJvaWQnKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+S7heaUr+aMgeWuieWNkycpXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdC8vIOWvvOWFpeWuieWNk+WOn+eUn+exu1xuXHRcdFx0XHRcdGNvbnN0IFRleHRUb1NwZWVjaCA9IHBsdXMuYW5kcm9pZC5pbXBvcnRDbGFzcygnYW5kcm9pZC5zcGVlY2gudHRzLlRleHRUb1NwZWVjaCcpXG5cdFx0XHRcdFx0Y29uc3QgTG9jYWxlID0gcGx1cy5hbmRyb2lkLmltcG9ydENsYXNzKCdqYXZhLnV0aWwuTG9jYWxlJylcblxuXHRcdFx0XHRcdC8vIOWIm+W7ulRUU1xuXHRcdFx0XHRcdHRoaXMudHRzID0gbmV3IFRleHRUb1NwZWVjaChwbHVzLmFuZHJvaWQucnVudGltZU1haW5BY3Rpdml0eSgpLCB7XG5cdFx0XHRcdFx0XHRvbkluaXQ6IChzdGF0dXMpID0+IHtcblx0XHRcdFx0XHRcdFx0aWYgKHN0YXR1cyA9PSAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0Ly8g6K6+572u5Lit5paHXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy50dHMuc2V0TGFuZ3VhZ2UoTG9jYWxlLkNISU5BKVxuXHRcdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfor63pn7PliJ3lp4vljJbmiJDlip8nKVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfliJ3lp4vljJblpLHotKUnLCBlKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0c3BlYWsodGV4dCkge1xuXHRcdFx0XHRpZiAoIXRoaXMudHRzKSB7XG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0XHR0aXRsZTogJ+ivremfs+acquWHhuWkh+WlvScsXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZSdcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyDlronljZPljp/nlJ/mkq3miqXvvIhRVUVVRV9GTFVTSCA9IOeri+WNs+aSreaKpe+8jOaJk+aWreS4iuS4gOadoe+8iVxuXHRcdFx0XHRcdHRoaXMudHRzLnNwZWFrKHRleHQsIDAsIG51bGwpXG5cdFx0XHRcdH0gY2F0Y2ggKGVycikge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmkq3miqXlpLHotKUnLCBlcnIpXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHRpbml0SlB1c2goKSB7XG5cdFx0XHRcdGNvbnNvbGUubG9nKCflvIDlp4vliJ3lp4vljJbmnoHlhYnmjqjpgIEuLi4nKVxuXHRcdFx0XHQvLyAjaWZkZWYgQVBQLVBMVVNcblx0XHRcdFx0bGV0IGpwdXNoTW9kdWxlID0gbnVsbFxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdGpwdXNoTW9kdWxlID0gdW5pLnJlcXVpcmVOYXRpdmVQbHVnaW4oJ0pHLUpQdXNoJylcblx0XHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ+WKoOi9veaegeWFieaOqOmAgeaPkuS7tuWksei0pTonLCBlKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghanB1c2hNb2R1bGUpIHtcblx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCfmnoHlhYnmjqjpgIHmj5Lku7bmnKrmib7liLAnKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUgPSBqcHVzaE1vZHVsZVxuXHRcdFx0XHRjb25zb2xlLmxvZygn5p6B5YWJ5o6o6YCB5o+S5Lu25Yqg6L295oiQ5Yqf77yM5qih5Z2XOicsIHR5cGVvZiBqcHVzaE1vZHVsZSlcblx0XHRcdFx0Y29uc29sZS5sb2coJ+aooeWdl+aWueazlTonLCBPYmplY3Qua2V5cyhqcHVzaE1vZHVsZSkpXG5cblx0XHRcdFx0aWYgKHR5cGVvZiBqcHVzaE1vZHVsZS5pbml0SlB1c2hTZXJ2aWNlID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdFx0anB1c2hNb2R1bGUuaW5pdEpQdXNoU2VydmljZSgpXG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+aegeWFieaOqOmAgWluaXRKUHVzaFNlcnZpY2XosIPnlKjmiJDlip8nKVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ2pwdXNoTW9kdWxlLmluaXRKUHVzaFNlcnZpY2Ug5LiN5piv5Ye95pWw77yM5b2T5YmN5pa55rOVOicsIHR5cGVvZiBqcHVzaE1vZHVsZS5pbml0SlB1c2hTZXJ2aWNlKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKHR5cGVvZiBqcHVzaE1vZHVsZS5zZXRMb2dnZXJFbmFibGUgPT09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0XHRqcHVzaE1vZHVsZS5zZXRMb2dnZXJFbmFibGUodHJ1ZSlcblx0XHRcdFx0fVxuXHRcdFx0XHRjb25zb2xlLmxvZygn5p6B5YWJ5o6o6YCB5Yid5aeL5YyW5a6M5oiQ77yM6K6+572u55uR5ZCs5ZmoLi4uJylcblx0XHRcdFx0dGhpcy5zZXR1cEpQdXNoTGlzdGVuZXJzKClcblx0XHRcdFx0dGhpcy5nZXRSZWdpc3RyYXRpb25JRCgpXG5cdFx0XHRcdC8vICNlbmRpZlxuXHRcdFx0fSxcblxuXHRcdFx0c2V0dXBKUHVzaExpc3RlbmVycygpIHtcblx0XHRcdFx0dmFyIHRoYXQgPSB0aGlzXG5cdFx0XHRcdGlmICghdGhpcy5qcHVzaE1vZHVsZSkgcmV0dXJuXG5cblx0XHRcdFx0Ly8g55uR5ZCs6L+e5o6l54q25oCBXG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUuYWRkQ29ubmVjdEV2ZW50TGlzdGVuZXIoKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmnoHlhYnov57mjqXnirbmgIE6JywgcmVzdWx0LmNvbm5lY3RFbmFibGUpXG5cdFx0XHRcdH0pXG5cblx0XHRcdFx0Ly8g55uR5ZCs6YCa55+lXG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUuYWRkTm90aWZpY2F0aW9uTGlzdGVuZXIoKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmlLbliLDpgJrnn6U6JywgSlNPTi5zdHJpbmdpZnkocmVzdWx0KSlcblx0XHRcdFx0XHR0aGF0LnNwZWFrKHJlc3VsdC5jb250ZW50IHx8ICcnKVxuXHRcdFx0XHRcdGNvbnN0IG5vdGlmaWNhdGlvbkV2ZW50VHlwZSA9IHJlc3VsdC5ub3RpZmljYXRpb25FdmVudFR5cGVcblx0XHRcdFx0XHQvLyBub3RpZmljYXRpb25PcGVuZWQgPSDngrnlh7vpgJrnn6Vcblx0XHRcdFx0XHRpZiAobm90aWZpY2F0aW9uRXZlbnRUeXBlID09PSAnbm90aWZpY2F0aW9uT3BlbmVkJykge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+mAmuefpeiiq+eCueWHuycsIHJlc3VsdC5leHRyYXMpXG5cdFx0XHRcdFx0XHRjb25zdCBleHRyYXMgPSByZXN1bHQuZXh0cmFzID8gcmVzdWx0LmV4dHJhcyA6IHt9XG5cdFx0XHRcdFx0XHRpZiAoZXh0cmFzLnR5cGUgPT09ICduZXdfb3JkZXInICYmIGV4dHJhcy5vcmRlcklkKSB7XG5cdFx0XHRcdFx0XHRcdHVuaS5uYXZpZ2F0ZVRvKHtcblx0XHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbD9pZD0nICsgZXh0cmFzLm9yZGVySWRcblx0XHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdHVuaS5zd2l0Y2hUYWIoe1xuXHRcdFx0XHRcdFx0XHRcdHVybDogJy9wYWdlcy9pbmRleC9pbmRleCdcblx0XHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRnZXRSZWdpc3RyYXRpb25JRCgpIHtcblx0XHRcdFx0aWYgKCF0aGlzLmpwdXNoTW9kdWxlKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ0pQdXNo5qih5Z2X5pyq5Yid5aeL5YyW77yM5peg5rOV6I635Y+WUmVnaXN0cmF0aW9uSUQnKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdGNvbnNvbGUubG9nKCflvIDlp4vojrflj5ZKUHVzaCBSZWdpc3RyYXRpb25JRC4uLicpXG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUuZ2V0UmVnaXN0cmF0aW9uSUQoKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdKUHVzaCBnZXRSZWdpc3RyYXRpb25JRCByZXN1bHQ6JywgSlNPTi5zdHJpbmdpZnkocmVzdWx0KSlcblx0XHRcdFx0XHRpZiAocmVzdWx0ICYmIHJlc3VsdC5yZWdpc3RlcklEKSB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnSlB1c2ggUmVnaXN0cmF0aW9uSUTojrflj5bmiJDlip86JywgcmVzdWx0LnJlZ2lzdGVySUQpXG5cdFx0XHRcdFx0XHR1bmkuc2V0U3RvcmFnZVN5bmMoJ2pwdXNoX3JlZ2lzdHJhdGlvbl9pZCcsIHJlc3VsdC5yZWdpc3RlcklEKVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnSlB1c2ggUmVnaXN0cmF0aW9uSUTojrflj5blpLHotKXvvIzlsJ3or5Xph43mlrDojrflj5YnKVxuXHRcdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuZ2V0UmVnaXN0cmF0aW9uSUQoKVxuXHRcdFx0XHRcdFx0fSwgMjAwMClcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRiaW5kSlB1c2hBbGlhcygpIHtcblx0XHRcdFx0aWYgKCF0aGlzLnRva2VuKSByZXR1cm5cblx0XHRcdFx0aWYgKCF0aGlzLmpwdXNoTW9kdWxlKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ0pQdXNo5pyq5Yid5aeL5YyW77yM5bu26L+f6K6+572u5Yir5ZCNJylcblx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuYmluZEpQdXNoQWxpYXMoKVxuXHRcdFx0XHRcdH0sIDEwMDApXG5cdFx0XHRcdFx0cmV0dXJuXG5cdFx0XHRcdH1cblx0XHRcdFx0Ly8g5LyY5YWI5LuOc3RvcmXojrflj5bvvIzlpoLmnpzkuLrnqbrliJnku47mnKzlnLDlrZjlgqjojrflj5Zcblx0XHRcdFx0bGV0IHRlbGVwaG9uZSA9IHRoaXMuJHN0b3JlLnN0YXRlLnVzZXJJbmZvPy50ZWxlcGhvbmUgfHwgJydcblx0XHRcdFx0aWYgKCF0ZWxlcGhvbmUpIHtcblx0XHRcdFx0XHR0ZWxlcGhvbmUgPSB1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJyk/LnRlbGVwaG9uZSB8fCAnJ1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICghdGVsZXBob25lKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+eUqOaIt+aJi+acuuWPt+S4uuepuu+8jOW7tui/n+iOt+WPli4uLicpXG5cdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmJpbmRKUHVzaEFsaWFzKClcblx0XHRcdFx0XHR9LCAyMDAwKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdGNvbnN0IGFsaWFzID0gbWQ1KHRlbGVwaG9uZSlcblx0XHRcdFx0Y29uc29sZS5sb2coJ+iuvue9ruaegeWFieWIq+WQjTonLCBhbGlhcylcblx0XHRcdFx0dGhpcy5qcHVzaE1vZHVsZS5zZXRBbGlhcyh7XG5cdFx0XHRcdFx0YWxpYXM6IGFsaWFzLFxuXHRcdFx0XHRcdHNlcXVlbmNlOiBEYXRlLm5vdygpXG5cdFx0XHRcdH0sIChyZXN1bHQpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn6K6+572u5Yir5ZCN57uT5p6cOicsIEpTT04uc3RyaW5naWZ5KHJlc3VsdCkpXG5cdFx0XHRcdFx0aWYgKHJlc3VsdCAmJiAocmVzdWx0LmNvZGUgPT09IDAgfHwgcmVzdWx0LmVyckNvZGUgPT09IDApKSB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6K6+572u5p6B5YWJ5Yir5ZCN5oiQ5YqfJylcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iuvue9ruaegeWFieWIq+WQjeWksei0pScpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0ZGVsZXRlSlB1c2hBbGlhcygpIHtcblx0XHRcdFx0aWYgKCF0aGlzLmpwdXNoTW9kdWxlKSByZXR1cm5cblx0XHRcdFx0dGhpcy5qcHVzaE1vZHVsZS5kZWxldGVBbGlhcyh7XG5cdFx0XHRcdFx0c2VxdWVuY2U6IERhdGUubm93KClcblx0XHRcdFx0fSwgKHJlc3VsdCkgPT4ge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfliKDpmaTmnoHlhYnliKvlkI06JywgSlNPTi5zdHJpbmdpZnkocmVzdWx0KSlcblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGNoZWNrQW5kU3RhcnRMb2NhdGlvblBvbGxpbmcoKSB7XG5cdFx0XHRcdGlmICghdGhpcy50b2tlbikgcmV0dXJuXG5cdFx0XHRcdHVuaS5nZXRMb2NhdGlvbih7XG5cdFx0XHRcdFx0dHlwZTogJ2djajAyJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6I635Y+W5a6a5L2N5p2D6ZmQ5oiQ5Yqf77yM5byA5aeL5a6a5pe25pu05paw5L2N572uJylcblx0XHRcdFx0XHRcdHRoaXMuc3RhcnRMb2NhdGlvblBvbGxpbmcoKVxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0ZmFpbDogKGVycikgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iOt+WPluWumuS9jeadg+mZkOWksei0pTonLCBlcnIuZXJyTXNnKVxuXHRcdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XG5cdFx0XHRcdFx0XHRcdHRpdGxlOiAn6ZyA6KaB5a6a5L2N5p2D6ZmQ5omN6IO95pu05paw5L2N572uJyxcblx0XHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnXG5cdFx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHN0YXJ0TG9jYXRpb25Qb2xsaW5nKCkge1xuXHRcdFx0XHR0aGlzLnN0b3BMb2NhdGlvblBvbGxpbmcoKVxuXHRcdFx0XHR0aGlzLnVwZGF0ZUxvY2F0aW9uKClcblx0XHRcdFx0dGhpcy5sb2NhdGlvblRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMudXBkYXRlTG9jYXRpb24oKVxuXHRcdFx0XHR9LCA2MDAwMClcblx0XHRcdH0sXG5cblx0XHRcdHN0b3BMb2NhdGlvblBvbGxpbmcoKSB7XG5cdFx0XHRcdGlmICh0aGlzLmxvY2F0aW9uVGltZXIpIHtcblx0XHRcdFx0XHRjbGVhckludGVydmFsKHRoaXMubG9jYXRpb25UaW1lcilcblx0XHRcdFx0XHR0aGlzLmxvY2F0aW9uVGltZXIgPSBudWxsXG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cblx0XHRcdHVwZGF0ZUxvY2F0aW9uKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMudG9rZW4pIHJldHVyblxuXHRcdFx0XHR2YXIgdGhhdCA9IHRoaXM7XG5cdFx0XHRcdHVuaS5nZXRMb2NhdGlvbih7XG5cdFx0XHRcdFx0dHlwZTogJ2djajAyJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAocmVzKSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn5a6a5pe25pu05paw5L2N572uOicsIHJlcy5sYXRpdHVkZSwgcmVzLmxvbmdpdHVkZSlcblx0XHRcdFx0XHRcdHRoYXQuJHUuYXBpLnVwZGF0ZUxvY2F0aW9uKHtcblx0XHRcdFx0XHRcdFx0bGF0aXR1ZGU6IHJlcy5sYXRpdHVkZSxcblx0XHRcdFx0XHRcdFx0bG9uZ2l0dWRlOiByZXMubG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+abtOaWsOS9jee9ruaIkOWKnycpXG5cdFx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+abtOaWsOS9jee9ruWksei0pScpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pLmNhdGNoKGVyciA9PiB7XG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmm7TmlrDkvY3nva7or7fmsYLlpLHotKU6JywgZXJyKVxuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfojrflj5bkvY3nva7lpLHotKU6JywgZXJyLmVyck1zZylcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRjaGVja0FwcFVwZGF0ZSgpIHtcblx0XHRcdFx0cGx1cy5ydW50aW1lLmdldFByb3BlcnR5KHBsdXMucnVudGltZS5hcHBpZCwgKGluZikgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGN1cnJlbnRWZXJzaW9uID0gaW5mLnZlcnNpb25Db2RlXG5cdFx0XHRcdFx0dGhpcy4kdS5hcGkuZ2V0QXBpVmVyc2lvbih7IHR5cGU6IDAgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDAgJiYgcmVzLmRhdGEpIHtcblx0XHRcdFx0XHRcdFx0Y29uc3QgbGF0ZXN0VmVyc2lvbiA9IHJlcy5kYXRhLnZlcnNpb25OdW1cblx0XHRcdFx0XHRcdFx0aWYgKGxhdGVzdFZlcnNpb24gPiBjdXJyZW50VmVyc2lvbikge1xuXHRcdFx0XHRcdFx0XHRcdGlmIChyZXMuZGF0YS5pc0ZvcmNlID09PSAxKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNob3dGb3JjZVVwZGF0ZURpYWxvZyhyZXMuZGF0YS5maWxlVXJsLCByZXMuZGF0YS52ZXJzaW9uTnVtKVxuXHRcdFx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNob3dPcHRpb25hbFVwZGF0ZURpYWxvZyhyZXMuZGF0YS5maWxlVXJsLCByZXMuZGF0YS52ZXJzaW9uTnVtKVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRzaG93Rm9yY2VVcGRhdGVEaWFsb2coZmlsZVVybCwgdmVyc2lvbikge1xuXHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcblx0XHRcdFx0XHR0aXRsZTogJ+eJiOacrOabtOaWsCcsXG5cdFx0XHRcdFx0Y29udGVudDogYOajgOa1i+WIsOaWsOeJiOacrCR7dmVyc2lvbn3vvIzor7fmm7TmlrDlkI7nu6fnu63kvb/nlKhgLFxuXHRcdFx0XHRcdHNob3dDYW5jZWw6IGZhbHNlLFxuXHRcdFx0XHRcdGNvbmZpcm1UZXh0OiAn56uL5Y2z5pu05pawJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHRwbHVzLnJ1bnRpbWUub3BlblVSTChmaWxlVXJsKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHNob3dPcHRpb25hbFVwZGF0ZURpYWxvZyhmaWxlVXJsLCB2ZXJzaW9uKSB7XG5cdFx0XHRcdHVuaS5zaG93TW9kYWwoe1xuXHRcdFx0XHRcdHRpdGxlOiAn54mI5pys5pu05pawJyxcblx0XHRcdFx0XHRjb250ZW50OiBg5qOA5rWL5Yiw5paw54mI5pysJHt2ZXJzaW9ufe+8jOaYr+WQpuabtOaWsO+8n2AsXG5cdFx0XHRcdFx0Y29uZmlybVRleHQ6ICfmm7TmlrAnLFxuXHRcdFx0XHRcdGNhbmNlbFRleHQ6ICfnqI3lkI4nLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdGlmIChyZXMuY29uZmlybSkge1xuXHRcdFx0XHRcdFx0XHRwbHVzLnJ1bnRpbWUub3BlblVSTChmaWxlVXJsKVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5cdHBhZ2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmNmY4ZmM7XG5cdH1cblx0dW5pLW1wLXNoYXJlIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbjwvc3R5bGU+Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///177\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 _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 4));\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\nvar _vuex = __webpack_require__(/*! vuex */ 12);\nvar _jsMd = _interopRequireDefault(__webpack_require__(/*! js-md5 */ 178));\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      locationTimer: null,\n      jpushModule: null,\n      tts: null\n    };\n  },\n  computed: _objectSpread({}, (0, _vuex.mapState)(['userInfo', 'token'])),\n  watch: {\n    token: function token(newVal) {\n      if (newVal) {\n        this.checkAndStartLocationPolling();\n        this.bindJPushAlias();\n      } else {\n        this.stopLocationPolling();\n        this.deleteJPushAlias();\n      }\n    }\n  },\n  onLaunch: function onLaunch() {\n    this.initTTS();\n    this.initJPush();\n    this.checkAndStartLocationPolling();\n    this.checkAppUpdate();\n  },\n  onShow: function onShow() {\n    __f__(\"log\", 'App Show', \" at App.vue:33\");\n    // this.checkAndStartLocationPolling()\n  },\n\n  onHide: function onHide() {\n    __f__(\"log\", 'App Hide', \" at App.vue:37\");\n    // this.stopLocationPolling()\n  },\n  onUnload: function onUnload() {\n    if (this.tts) {\n      this.tts.stop();\n      this.tts.shutdown();\n    }\n    this.stopLocationPolling();\n  },\n  methods: {\n    initTTS: function initTTS() {\n      var _this = this;\n      if (uni.getSystemInfoSync().platform !== 'android') {\n        __f__(\"log\", '仅支持安卓', \" at App.vue:50\");\n        return;\n      }\n      try {\n        // 导入安卓原生类\n        var TextToSpeech = plus.android.importClass('android.speech.tts.TextToSpeech');\n        var Locale = plus.android.importClass('java.util.Locale');\n\n        // 创建TTS\n        this.tts = new TextToSpeech(plus.android.runtimeMainActivity(), {\n          onInit: function onInit(status) {\n            if (status == 0) {\n              // 设置中文\n              _this.tts.setLanguage(Locale.CHINA);\n              __f__(\"log\", '语音初始化成功', \" at App.vue:65\");\n            }\n          }\n        });\n      } catch (e) {\n        __f__(\"log\", '初始化失败', e, \" at App.vue:70\");\n      }\n    },\n    speak: function speak(text) {\n      if (!this.tts) {\n        uni.showToast({\n          title: '语音未准备好',\n          icon: 'none'\n        });\n        return;\n      }\n      try {\n        // 安卓原生播报(QUEUE_FLUSH = 立即播报,打断上一条)\n        this.tts.speak(text, 0, null);\n      } catch (err) {\n        __f__(\"log\", '播报失败', err, \" at App.vue:86\");\n      }\n    },\n    initJPush: function initJPush() {\n      __f__(\"log\", '开始初始化极光推送...', \" at App.vue:90\");\n      var jpushModule = null;\n      try {\n        jpushModule = uni.requireNativePlugin('JG-JPush');\n      } catch (e) {\n        __f__(\"error\", '加载极光推送插件失败:', e, \" at App.vue:96\");\n        return;\n      }\n      if (!jpushModule) {\n        __f__(\"error\", '极光推送插件未找到', \" at App.vue:100\");\n        return;\n      }\n      this.jpushModule = jpushModule;\n      __f__(\"log\", '极光推送插件加载成功,模块:', (0, _typeof2.default)(jpushModule), \" at App.vue:104\");\n      __f__(\"log\", '模块方法:', Object.keys(jpushModule), \" at App.vue:105\");\n      if (typeof jpushModule.initJPushService === 'function') {\n        jpushModule.initJPushService();\n        __f__(\"log\", '极光推送initJPushService调用成功', \" at App.vue:109\");\n      } else {\n        __f__(\"error\", 'jpushModule.initJPushService 不是函数,当前方法:', (0, _typeof2.default)(jpushModule.initJPushService), \" at App.vue:111\");\n        return;\n      }\n      if (typeof jpushModule.setLoggerEnable === 'function') {\n        jpushModule.setLoggerEnable(true);\n      }\n      __f__(\"log\", '极光推送初始化完成,设置监听器...', \" at App.vue:118\");\n      this.setupJPushListeners();\n      this.getRegistrationID();\n    },\n    setupJPushListeners: function setupJPushListeners() {\n      var that = this;\n      if (!this.jpushModule) return;\n\n      // 监听连接状态\n      this.jpushModule.addConnectEventListener(function (result) {\n        __f__(\"log\", '极光连接状态:', result.connectEnable, \" at App.vue:130\");\n      });\n\n      // 监听通知\n      this.jpushModule.addNotificationListener(function (result) {\n        __f__(\"log\", '收到通知:', JSON.stringify(result), \" at App.vue:135\");\n        that.speak(result.content || '');\n        var notificationEventType = result.notificationEventType;\n        // notificationOpened = 点击通知\n        if (notificationEventType === 'notificationOpened') {\n          __f__(\"log\", '通知被点击', result.extras, \" at App.vue:140\");\n          var extras = result.extras ? result.extras : {};\n          if (extras.type === 'new_order' && extras.orderId) {\n            uni.navigateTo({\n              url: '/pages/order-detail/order-detail?id=' + extras.orderId\n            });\n          } else {\n            uni.switchTab({\n              url: '/pages/index/index'\n            });\n          }\n        }\n      });\n    },\n    getRegistrationID: function getRegistrationID() {\n      var _this2 = this;\n      if (!this.jpushModule) {\n        __f__(\"log\", 'JPush模块未初始化,无法获取RegistrationID', \" at App.vue:157\");\n        return;\n      }\n      __f__(\"log\", '开始获取JPush RegistrationID...', \" at App.vue:160\");\n      this.jpushModule.getRegistrationID(function (result) {\n        __f__(\"log\", 'JPush getRegistrationID result:', JSON.stringify(result), \" at App.vue:162\");\n        if (result && result.registerID) {\n          __f__(\"log\", 'JPush RegistrationID获取成功:', result.registerID, \" at App.vue:164\");\n          uni.setStorageSync('jpush_registration_id', result.registerID);\n        } else {\n          __f__(\"log\", 'JPush RegistrationID获取失败,尝试重新获取', \" at App.vue:167\");\n          setTimeout(function () {\n            _this2.getRegistrationID();\n          }, 2000);\n        }\n      });\n    },\n    bindJPushAlias: function bindJPushAlias() {\n      var _this3 = this,\n        _this$$store$state$us;\n      if (!this.token) return;\n      if (!this.jpushModule) {\n        __f__(\"log\", 'JPush未初始化,延迟设置别名', \" at App.vue:178\");\n        setTimeout(function () {\n          _this3.bindJPushAlias();\n        }, 1000);\n        return;\n      }\n      // 优先从store获取,如果为空则从本地存储获取\n      var telephone = ((_this$$store$state$us = this.$store.state.userInfo) === null || _this$$store$state$us === void 0 ? void 0 : _this$$store$state$us.telephone) || '';\n      if (!telephone) {\n        var _uni$getStorageSync;\n        telephone = ((_uni$getStorageSync = uni.getStorageSync('userInfo')) === null || _uni$getStorageSync === void 0 ? void 0 : _uni$getStorageSync.telephone) || '';\n      }\n      if (!telephone) {\n        __f__(\"log\", '用户手机号为空,延迟获取...', \" at App.vue:190\");\n        setTimeout(function () {\n          _this3.bindJPushAlias();\n        }, 2000);\n        return;\n      }\n      var alias = (0, _jsMd.default)(telephone);\n      __f__(\"log\", '设置极光别名:', alias, \" at App.vue:197\");\n      this.jpushModule.setAlias({\n        alias: alias,\n        sequence: Date.now()\n      }, function (result) {\n        __f__(\"log\", '设置别名结果:', JSON.stringify(result), \" at App.vue:202\");\n        if (result && (result.code === 0 || result.errCode === 0)) {\n          __f__(\"log\", '设置极光别名成功', \" at App.vue:204\");\n        } else {\n          __f__(\"log\", '设置极光别名失败', \" at App.vue:206\");\n        }\n      });\n    },\n    deleteJPushAlias: function deleteJPushAlias() {\n      if (!this.jpushModule) return;\n      this.jpushModule.deleteAlias({\n        sequence: Date.now()\n      }, function (result) {\n        __f__(\"log\", '删除极光别名:', JSON.stringify(result), \" at App.vue:216\");\n      });\n    },\n    checkAndStartLocationPolling: function checkAndStartLocationPolling() {\n      var _this4 = this;\n      if (!this.token) return;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          __f__(\"log\", '获取定位权限成功,开始定时更新位置', \" at App.vue:225\");\n          _this4.startLocationPolling();\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取定位权限失败:', err.errMsg, \" at App.vue:229\");\n          uni.showToast({\n            title: '需要定位权限才能更新位置',\n            icon: 'none'\n          });\n        }\n      });\n    },\n    startLocationPolling: function startLocationPolling() {\n      var _this5 = this;\n      this.stopLocationPolling();\n      this.updateLocation();\n      this.locationTimer = setInterval(function () {\n        _this5.updateLocation();\n      }, 60000);\n    },\n    stopLocationPolling: function stopLocationPolling() {\n      if (this.locationTimer) {\n        clearInterval(this.locationTimer);\n        this.locationTimer = null;\n      }\n    },\n    updateLocation: function updateLocation() {\n      if (!this.token) return;\n      var that = this;\n      uni.getLocation({\n        type: 'gcj02',\n        success: function success(res) {\n          __f__(\"log\", '定时更新位置:', res.latitude, res.longitude, \" at App.vue:259\");\n          that.$store.commit('setLocation', {\n            latitude: res.latitude,\n            longitude: res.longitude\n          });\n          that.$u.api.updateLocation({\n            latitude: res.latitude,\n            longitude: res.longitude\n          }).then(function (res) {\n            if (res.code === 200) {\n              __f__(\"log\", '更新位置成功', \" at App.vue:266\");\n            } else {\n              __f__(\"log\", '更新位置失败', \" at App.vue:268\");\n            }\n          }).catch(function (err) {\n            __f__(\"log\", '更新位置请求失败:', err, \" at App.vue:271\");\n          });\n        },\n        fail: function fail(err) {\n          __f__(\"log\", '获取位置失败:', err.errMsg, \" at App.vue:275\");\n        }\n      });\n    },\n    checkAppUpdate: function checkAppUpdate() {\n      var _this6 = this;\n      plus.runtime.getProperty(plus.runtime.appid, function (inf) {\n        var currentVersion = inf.versionCode;\n        _this6.$u.api.getApiVersion({\n          type: 0\n        }).then(function (res) {\n          if (res.code === 200 && res.data) {\n            var latestVersion = res.data.versionNum;\n            if (latestVersion > currentVersion) {\n              if (res.data.isForce === 1) {\n                _this6.showForceUpdateDialog(res.data.fileUrl, res.data.versionNum);\n              } else {\n                _this6.showOptionalUpdateDialog(res.data.fileUrl, res.data.versionNum);\n              }\n            }\n          }\n        });\n      });\n    },\n    showForceUpdateDialog: function showForceUpdateDialog(fileUrl, version) {\n      uni.showModal({\n        title: '版本更新',\n        content: \"\\u68C0\\u6D4B\\u5230\\u65B0\\u7248\\u672C\".concat(version, \"\\uFF0C\\u8BF7\\u66F4\\u65B0\\u540E\\u7EE7\\u7EED\\u4F7F\\u7528\"),\n        showCancel: false,\n        confirmText: '立即更新',\n        success: function success() {\n          plus.runtime.openURL(fileUrl);\n        }\n      });\n    },\n    showOptionalUpdateDialog: function showOptionalUpdateDialog(fileUrl, version) {\n      uni.showModal({\n        title: '版本更新',\n        content: \"\\u68C0\\u6D4B\\u5230\\u65B0\\u7248\\u672C\".concat(version, \"\\uFF0C\\u662F\\u5426\\u66F4\\u65B0\\uFF1F\"),\n        confirmText: '更新',\n        cancelText: '稍后',\n        success: function success(res) {\n          if (res.confirm) {\n            plus.runtime.openURL(fileUrl);\n          }\n        }\n      });\n    }\n  }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 92)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vQXBwLnZ1ZSJdLCJuYW1lcyI6WyJkYXRhIiwibG9jYXRpb25UaW1lciIsImpwdXNoTW9kdWxlIiwidHRzIiwiY29tcHV0ZWQiLCJ3YXRjaCIsInRva2VuIiwib25MYXVuY2giLCJvblNob3ciLCJvbkhpZGUiLCJvblVubG9hZCIsIm1ldGhvZHMiLCJpbml0VFRTIiwib25Jbml0Iiwic3BlYWsiLCJ1bmkiLCJ0aXRsZSIsImljb24iLCJpbml0SlB1c2giLCJzZXR1cEpQdXNoTGlzdGVuZXJzIiwidGhhdCIsInVybCIsImdldFJlZ2lzdHJhdGlvbklEIiwic2V0VGltZW91dCIsImJpbmRKUHVzaEFsaWFzIiwidGVsZXBob25lIiwiYWxpYXMiLCJzZXF1ZW5jZSIsImRlbGV0ZUpQdXNoQWxpYXMiLCJjaGVja0FuZFN0YXJ0TG9jYXRpb25Qb2xsaW5nIiwidHlwZSIsInN1Y2Nlc3MiLCJmYWlsIiwic3RhcnRMb2NhdGlvblBvbGxpbmciLCJzdG9wTG9jYXRpb25Qb2xsaW5nIiwiY2xlYXJJbnRlcnZhbCIsInVwZGF0ZUxvY2F0aW9uIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJjaGVja0FwcFVwZGF0ZSIsInBsdXMiLCJzaG93Rm9yY2VVcGRhdGVEaWFsb2ciLCJjb250ZW50Iiwic2hvd0NhbmNlbCIsImNvbmZpcm1UZXh0Iiwic2hvd09wdGlvbmFsVXBkYXRlRGlhbG9nIiwiY2FuY2VsVGV4dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQSxlQUNBO0VBQ0FBO0lBQ0E7TUFDQUM7TUFDQUM7TUFDQUM7SUFDQTtFQUNBO0VBQ0FDLDRCQUNBLDJDQUNBO0VBQ0FDO0lBQ0FDO01BQ0E7UUFDQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7SUFDQTtFQUNBO0VBQ0FDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFDQTtFQUNBQztJQUNBO0lBQ0E7RUFDQTs7RUFDQUM7SUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQTtNQUNBO01BQ0E7SUFDQTtJQUNBO0VBQ0E7RUFDQUM7SUFDQUM7TUFBQTtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BRUE7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtVQUNBQztZQUNBO2NBQ0E7Y0FDQTtjQUNBO1lBQ0E7VUFDQTtRQUNBO01BQ0E7UUFDQTtNQUNBO0lBQ0E7SUFDQUM7TUFDQTtRQUNBQztVQUNBQztVQUNBQztRQUNBO1FBQ0E7TUFDQTtNQUVBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0FDO01BQ0E7TUFFQTtNQUNBO1FBQ0FoQjtNQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFFQTtRQUNBQTtRQUNBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFFQTtRQUNBQTtNQUNBO01BQ0E7TUFDQTtNQUNBO0lBRUE7SUFFQWlCO01BQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7TUFDQTs7TUFFQTtNQUNBO1FBQ0E7UUFDQUM7UUFDQTtRQUNBO1FBQ0E7VUFDQTtVQUNBO1VBQ0E7WUFDQUw7Y0FDQU07WUFDQTtVQUNBO1lBQ0FOO2NBQ0FNO1lBQ0E7VUFDQTtRQUNBO01BQ0E7SUFDQTtJQUVBQztNQUFBO01BQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7UUFDQTtVQUNBO1VBQ0FQO1FBQ0E7VUFDQTtVQUNBUTtZQUNBO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFBQTtRQUFBO01BQ0E7TUFDQTtRQUNBO1FBQ0FEO1VBQ0E7UUFDQTtRQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7UUFBQTtRQUNBRTtNQUNBO01BQ0E7UUFDQTtRQUNBRjtVQUNBO1FBQ0E7UUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO1FBQ0FHO1FBQ0FDO01BQ0E7UUFDQTtRQUNBO1VBQ0E7UUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7TUFDQTtRQUNBRDtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFFO01BQUE7TUFDQTtNQUNBZDtRQUNBZTtRQUNBQztVQUNBO1VBQ0E7UUFDQTtRQUNBQztVQUNBO1VBQ0FqQjtZQUNBQztZQUNBQztVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFnQjtNQUFBO01BQ0E7TUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFDO01BQ0E7UUFDQUM7UUFDQTtNQUNBO0lBQ0E7SUFFQUM7TUFDQTtNQUNBO01BQ0FyQjtRQUNBZTtRQUNBQztVQUNBO1VBQ0FYO1lBQUFpQjtZQUFBQztVQUFBO1VBQ0FsQjtZQUNBaUI7WUFDQUM7VUFDQTtZQUNBO2NBQ0E7WUFDQTtjQUNBO1lBQ0E7VUFDQTtZQUNBO1VBQ0E7UUFDQTtRQUNBTjtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFPO01BQUE7TUFDQUM7UUFDQTtRQUNBO1VBQUFWO1FBQUE7VUFDQTtZQUNBO1lBQ0E7Y0FDQTtnQkFDQTtjQUNBO2dCQUNBO2NBQ0E7WUFDQTtVQUNBO1FBQ0E7TUFDQTtJQUNBO0lBRUFXO01BQ0ExQjtRQUNBQztRQUNBMEI7UUFDQUM7UUFDQUM7UUFDQWI7VUFDQVM7UUFDQTtNQUNBO0lBQ0E7SUFFQUs7TUFDQTlCO1FBQ0FDO1FBQ0EwQjtRQUNBRTtRQUNBRTtRQUNBZjtVQUNBO1lBQ0FTO1VBQ0E7UUFDQTtNQUNBO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiMTc3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHNjcmlwdD5cblx0aW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuXHRpbXBvcnQgbWQ1IGZyb20gJ2pzLW1kNSc7XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCkge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0bG9jYXRpb25UaW1lcjogbnVsbCxcblx0XHRcdFx0anB1c2hNb2R1bGU6IG51bGwsXG5cdFx0XHRcdHR0czogbnVsbFxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdC4uLm1hcFN0YXRlKFsndXNlckluZm8nLCAndG9rZW4nXSlcblx0XHR9LFxuXHRcdHdhdGNoOiB7XG5cdFx0XHR0b2tlbihuZXdWYWwpIHtcblx0XHRcdFx0aWYgKG5ld1ZhbCkge1xuXHRcdFx0XHRcdHRoaXMuY2hlY2tBbmRTdGFydExvY2F0aW9uUG9sbGluZygpXG5cdFx0XHRcdFx0dGhpcy5iaW5kSlB1c2hBbGlhcygpXG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5zdG9wTG9jYXRpb25Qb2xsaW5nKClcblx0XHRcdFx0XHR0aGlzLmRlbGV0ZUpQdXNoQWxpYXMoKVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRvbkxhdW5jaDogZnVuY3Rpb24oKSB7XG5cdFx0XHR0aGlzLmluaXRUVFMoKVxuXHRcdFx0dGhpcy5pbml0SlB1c2goKVxuXHRcdFx0dGhpcy5jaGVja0FuZFN0YXJ0TG9jYXRpb25Qb2xsaW5nKClcblx0XHRcdHRoaXMuY2hlY2tBcHBVcGRhdGUoKVxuXHRcdH0sXG5cdFx0b25TaG93OiBmdW5jdGlvbigpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdBcHAgU2hvdycpXG5cdFx0XHQvLyB0aGlzLmNoZWNrQW5kU3RhcnRMb2NhdGlvblBvbGxpbmcoKVxuXHRcdH0sXG5cdFx0b25IaWRlOiBmdW5jdGlvbigpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdBcHAgSGlkZScpXG5cdFx0XHQvLyB0aGlzLnN0b3BMb2NhdGlvblBvbGxpbmcoKVxuXHRcdH0sXG5cdFx0b25VbmxvYWQoKSB7XG5cdFx0XHRpZiAodGhpcy50dHMpIHtcblx0XHRcdFx0dGhpcy50dHMuc3RvcCgpXG5cdFx0XHRcdHRoaXMudHRzLnNodXRkb3duKClcblx0XHRcdH1cblx0XHRcdHRoaXMuc3RvcExvY2F0aW9uUG9sbGluZygpXG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRpbml0VFRTKCkge1xuXHRcdFx0XHRpZiAodW5pLmdldFN5c3RlbUluZm9TeW5jKCkucGxhdGZvcm0gIT09ICdhbmRyb2lkJykge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfku4XmlK/mjIHlronljZMnKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHQvLyDlr7zlhaXlronljZPljp/nlJ/nsbtcblx0XHRcdFx0XHRjb25zdCBUZXh0VG9TcGVlY2ggPSBwbHVzLmFuZHJvaWQuaW1wb3J0Q2xhc3MoJ2FuZHJvaWQuc3BlZWNoLnR0cy5UZXh0VG9TcGVlY2gnKVxuXHRcdFx0XHRcdGNvbnN0IExvY2FsZSA9IHBsdXMuYW5kcm9pZC5pbXBvcnRDbGFzcygnamF2YS51dGlsLkxvY2FsZScpXG5cblx0XHRcdFx0XHQvLyDliJvlu7pUVFNcblx0XHRcdFx0XHR0aGlzLnR0cyA9IG5ldyBUZXh0VG9TcGVlY2gocGx1cy5hbmRyb2lkLnJ1bnRpbWVNYWluQWN0aXZpdHkoKSwge1xuXHRcdFx0XHRcdFx0b25Jbml0OiAoc3RhdHVzKSA9PiB7XG5cdFx0XHRcdFx0XHRcdGlmIChzdGF0dXMgPT0gMCkge1xuXHRcdFx0XHRcdFx0XHRcdC8vIOiuvue9ruS4reaWh1xuXHRcdFx0XHRcdFx0XHRcdHRoaXMudHRzLnNldExhbmd1YWdlKExvY2FsZS5DSElOQSlcblx0XHRcdFx0XHRcdFx0XHRjb25zb2xlLmxvZygn6K+t6Z+z5Yid5aeL5YyW5oiQ5YqfJylcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5Yid5aeL5YyW5aSx6LSlJywgZSlcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdHNwZWFrKHRleHQpIHtcblx0XHRcdFx0aWYgKCF0aGlzLnR0cykge1xuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdFx0dGl0bGU6ICfor63pn7PmnKrlh4blpIflpb0nLFxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnXG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Ly8g5a6J5Y2T5Y6f55Sf5pKt5oql77yIUVVFVUVfRkxVU0ggPSDnq4vljbPmkq3miqXvvIzmiZPmlq3kuIrkuIDmnaHvvIlcblx0XHRcdFx0XHR0aGlzLnR0cy5zcGVhayh0ZXh0LCAwLCBudWxsKVxuXHRcdFx0XHR9IGNhdGNoIChlcnIpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5pKt5oql5aSx6LSlJywgZXJyKVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0aW5pdEpQdXNoKCkge1xuXHRcdFx0XHRjb25zb2xlLmxvZygn5byA5aeL5Yid5aeL5YyW5p6B5YWJ5o6o6YCBLi4uJylcblx0XHRcdFx0Ly8gI2lmZGVmIEFQUC1QTFVTXG5cdFx0XHRcdGxldCBqcHVzaE1vZHVsZSA9IG51bGxcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHRqcHVzaE1vZHVsZSA9IHVuaS5yZXF1aXJlTmF0aXZlUGx1Z2luKCdKRy1KUHVzaCcpXG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCfliqDovb3mnoHlhYnmjqjpgIHmj5Lku7blpLHotKU6JywgZSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoIWpwdXNoTW9kdWxlKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcign5p6B5YWJ5o6o6YCB5o+S5Lu25pyq5om+5YiwJylcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLmpwdXNoTW9kdWxlID0ganB1c2hNb2R1bGVcblx0XHRcdFx0Y29uc29sZS5sb2coJ+aegeWFieaOqOmAgeaPkuS7tuWKoOi9veaIkOWKn++8jOaooeWdlzonLCB0eXBlb2YganB1c2hNb2R1bGUpXG5cdFx0XHRcdGNvbnNvbGUubG9nKCfmqKHlnZfmlrnms5U6JywgT2JqZWN0LmtleXMoanB1c2hNb2R1bGUpKVxuXG5cdFx0XHRcdGlmICh0eXBlb2YganB1c2hNb2R1bGUuaW5pdEpQdXNoU2VydmljZSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdFx0XHRcdGpwdXNoTW9kdWxlLmluaXRKUHVzaFNlcnZpY2UoKVxuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmnoHlhYnmjqjpgIFpbml0SlB1c2hTZXJ2aWNl6LCD55So5oiQ5YqfJylcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCdqcHVzaE1vZHVsZS5pbml0SlB1c2hTZXJ2aWNlIOS4jeaYr+WHveaVsO+8jOW9k+WJjeaWueazlTonLCB0eXBlb2YganB1c2hNb2R1bGUuaW5pdEpQdXNoU2VydmljZSlcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGlmICh0eXBlb2YganB1c2hNb2R1bGUuc2V0TG9nZ2VyRW5hYmxlID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdFx0anB1c2hNb2R1bGUuc2V0TG9nZ2VyRW5hYmxlKHRydWUpXG5cdFx0XHRcdH1cblx0XHRcdFx0Y29uc29sZS5sb2coJ+aegeWFieaOqOmAgeWIneWni+WMluWujOaIkO+8jOiuvue9ruebkeWQrOWZqC4uLicpXG5cdFx0XHRcdHRoaXMuc2V0dXBKUHVzaExpc3RlbmVycygpXG5cdFx0XHRcdHRoaXMuZ2V0UmVnaXN0cmF0aW9uSUQoKVxuXHRcdFx0XHQvLyAjZW5kaWZcblx0XHRcdH0sXG5cblx0XHRcdHNldHVwSlB1c2hMaXN0ZW5lcnMoKSB7XG5cdFx0XHRcdHZhciB0aGF0ID0gdGhpc1xuXHRcdFx0XHRpZiAoIXRoaXMuanB1c2hNb2R1bGUpIHJldHVyblxuXG5cdFx0XHRcdC8vIOebkeWQrOi/nuaOpeeKtuaAgVxuXHRcdFx0XHR0aGlzLmpwdXNoTW9kdWxlLmFkZENvbm5lY3RFdmVudExpc3RlbmVyKChyZXN1bHQpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5p6B5YWJ6L+e5o6l54q25oCBOicsIHJlc3VsdC5jb25uZWN0RW5hYmxlKVxuXHRcdFx0XHR9KVxuXG5cdFx0XHRcdC8vIOebkeWQrOmAmuefpVxuXHRcdFx0XHR0aGlzLmpwdXNoTW9kdWxlLmFkZE5vdGlmaWNhdGlvbkxpc3RlbmVyKChyZXN1bHQpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5pS25Yiw6YCa55+lOicsIEpTT04uc3RyaW5naWZ5KHJlc3VsdCkpXG5cdFx0XHRcdFx0dGhhdC5zcGVhayhyZXN1bHQuY29udGVudCB8fCAnJylcblx0XHRcdFx0XHRjb25zdCBub3RpZmljYXRpb25FdmVudFR5cGUgPSByZXN1bHQubm90aWZpY2F0aW9uRXZlbnRUeXBlXG5cdFx0XHRcdFx0Ly8gbm90aWZpY2F0aW9uT3BlbmVkID0g54K55Ye76YCa55+lXG5cdFx0XHRcdFx0aWYgKG5vdGlmaWNhdGlvbkV2ZW50VHlwZSA9PT0gJ25vdGlmaWNhdGlvbk9wZW5lZCcpIHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfpgJrnn6Xooqvngrnlh7snLCByZXN1bHQuZXh0cmFzKVxuXHRcdFx0XHRcdFx0Y29uc3QgZXh0cmFzID0gcmVzdWx0LmV4dHJhcyA/IHJlc3VsdC5leHRyYXMgOiB7fVxuXHRcdFx0XHRcdFx0aWYgKGV4dHJhcy50eXBlID09PSAnbmV3X29yZGVyJyAmJiBleHRyYXMub3JkZXJJZCkge1xuXHRcdFx0XHRcdFx0XHR1bmkubmF2aWdhdGVUbyh7XG5cdFx0XHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL29yZGVyLWRldGFpbC9vcmRlci1kZXRhaWw/aWQ9JyArIGV4dHJhcy5vcmRlcklkXG5cdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0XHR1bmkuc3dpdGNoVGFiKHtcblx0XHRcdFx0XHRcdFx0XHR1cmw6ICcvcGFnZXMvaW5kZXgvaW5kZXgnXG5cdFx0XHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0Z2V0UmVnaXN0cmF0aW9uSUQoKSB7XG5cdFx0XHRcdGlmICghdGhpcy5qcHVzaE1vZHVsZSkge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdKUHVzaOaooeWdl+acquWIneWni+WMlu+8jOaXoOazleiOt+WPllJlZ2lzdHJhdGlvbklEJylcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHRjb25zb2xlLmxvZygn5byA5aeL6I635Y+WSlB1c2ggUmVnaXN0cmF0aW9uSUQuLi4nKVxuXHRcdFx0XHR0aGlzLmpwdXNoTW9kdWxlLmdldFJlZ2lzdHJhdGlvbklEKChyZXN1bHQpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnSlB1c2ggZ2V0UmVnaXN0cmF0aW9uSUQgcmVzdWx0OicsIEpTT04uc3RyaW5naWZ5KHJlc3VsdCkpXG5cdFx0XHRcdFx0aWYgKHJlc3VsdCAmJiByZXN1bHQucmVnaXN0ZXJJRCkge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ0pQdXNoIFJlZ2lzdHJhdGlvbklE6I635Y+W5oiQ5YqfOicsIHJlc3VsdC5yZWdpc3RlcklEKVxuXHRcdFx0XHRcdFx0dW5pLnNldFN0b3JhZ2VTeW5jKCdqcHVzaF9yZWdpc3RyYXRpb25faWQnLCByZXN1bHQucmVnaXN0ZXJJRClcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ0pQdXNoIFJlZ2lzdHJhdGlvbklE6I635Y+W5aSx6LSl77yM5bCd6K+V6YeN5paw6I635Y+WJylcblx0XHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRcdFx0XHR0aGlzLmdldFJlZ2lzdHJhdGlvbklEKClcblx0XHRcdFx0XHRcdH0sIDIwMDApXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fSxcblxuXHRcdFx0YmluZEpQdXNoQWxpYXMoKSB7XG5cdFx0XHRcdGlmICghdGhpcy50b2tlbikgcmV0dXJuXG5cdFx0XHRcdGlmICghdGhpcy5qcHVzaE1vZHVsZSkge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCdKUHVzaOacquWIneWni+WMlu+8jOW7tui/n+iuvue9ruWIq+WQjScpXG5cdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdFx0XHR0aGlzLmJpbmRKUHVzaEFsaWFzKClcblx0XHRcdFx0XHR9LCAxMDAwKVxuXHRcdFx0XHRcdHJldHVyblxuXHRcdFx0XHR9XG5cdFx0XHRcdC8vIOS8mOWFiOS7jnN0b3Jl6I635Y+W77yM5aaC5p6c5Li656m65YiZ5LuO5pys5Zyw5a2Y5YKo6I635Y+WXG5cdFx0XHRcdGxldCB0ZWxlcGhvbmUgPSB0aGlzLiRzdG9yZS5zdGF0ZS51c2VySW5mbz8udGVsZXBob25lIHx8ICcnXG5cdFx0XHRcdGlmICghdGVsZXBob25lKSB7XG5cdFx0XHRcdFx0dGVsZXBob25lID0gdW5pLmdldFN0b3JhZ2VTeW5jKCd1c2VySW5mbycpPy50ZWxlcGhvbmUgfHwgJydcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoIXRlbGVwaG9uZSkge1xuXHRcdFx0XHRcdGNvbnNvbGUubG9nKCfnlKjmiLfmiYvmnLrlj7fkuLrnqbrvvIzlu7bov5/ojrflj5YuLi4nKVxuXHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRcdFx0dGhpcy5iaW5kSlB1c2hBbGlhcygpXG5cdFx0XHRcdFx0fSwgMjAwMClcblx0XHRcdFx0XHRyZXR1cm5cblx0XHRcdFx0fVxuXHRcdFx0XHRjb25zdCBhbGlhcyA9IG1kNSh0ZWxlcGhvbmUpXG5cdFx0XHRcdGNvbnNvbGUubG9nKCforr7nva7mnoHlhYnliKvlkI06JywgYWxpYXMpXG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUuc2V0QWxpYXMoe1xuXHRcdFx0XHRcdGFsaWFzOiBhbGlhcyxcblx0XHRcdFx0XHRzZXF1ZW5jZTogRGF0ZS5ub3coKVxuXHRcdFx0XHR9LCAocmVzdWx0KSA9PiB7XG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iuvue9ruWIq+WQjee7k+aenDonLCBKU09OLnN0cmluZ2lmeShyZXN1bHQpKVxuXHRcdFx0XHRcdGlmIChyZXN1bHQgJiYgKHJlc3VsdC5jb2RlID09PSAwIHx8IHJlc3VsdC5lcnJDb2RlID09PSAwKSkge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iuvue9ruaegeWFieWIq+WQjeaIkOWKnycpXG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCforr7nva7mnoHlhYnliKvlkI3lpLHotKUnKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdGRlbGV0ZUpQdXNoQWxpYXMoKSB7XG5cdFx0XHRcdGlmICghdGhpcy5qcHVzaE1vZHVsZSkgcmV0dXJuXG5cdFx0XHRcdHRoaXMuanB1c2hNb2R1bGUuZGVsZXRlQWxpYXMoe1xuXHRcdFx0XHRcdHNlcXVlbmNlOiBEYXRlLm5vdygpXG5cdFx0XHRcdH0sIChyZXN1bHQpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygn5Yig6Zmk5p6B5YWJ5Yir5ZCNOicsIEpTT04uc3RyaW5naWZ5KHJlc3VsdCkpXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRjaGVja0FuZFN0YXJ0TG9jYXRpb25Qb2xsaW5nKCkge1xuXHRcdFx0XHRpZiAoIXRoaXMudG9rZW4pIHJldHVyblxuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+iOt+WPluWumuS9jeadg+mZkOaIkOWKn++8jOW8gOWni+WumuaXtuabtOaWsOS9jee9ricpXG5cdFx0XHRcdFx0XHR0aGlzLnN0YXJ0TG9jYXRpb25Qb2xsaW5nKClcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfojrflj5blrprkvY3mnYPpmZDlpLHotKU6JywgZXJyLmVyck1zZylcblx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xuXHRcdFx0XHRcdFx0XHR0aXRsZTogJ+mcgOimgeWumuS9jeadg+mZkOaJjeiDveabtOaWsOS9jee9ricsXG5cdFx0XHRcdFx0XHRcdGljb246ICdub25lJ1xuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRzdGFydExvY2F0aW9uUG9sbGluZygpIHtcblx0XHRcdFx0dGhpcy5zdG9wTG9jYXRpb25Qb2xsaW5nKClcblx0XHRcdFx0dGhpcy51cGRhdGVMb2NhdGlvbigpXG5cdFx0XHRcdHRoaXMubG9jYXRpb25UaW1lciA9IHNldEludGVydmFsKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnVwZGF0ZUxvY2F0aW9uKClcblx0XHRcdFx0fSwgNjAwMDApXG5cdFx0XHR9LFxuXG5cdFx0XHRzdG9wTG9jYXRpb25Qb2xsaW5nKCkge1xuXHRcdFx0XHRpZiAodGhpcy5sb2NhdGlvblRpbWVyKSB7XG5cdFx0XHRcdFx0Y2xlYXJJbnRlcnZhbCh0aGlzLmxvY2F0aW9uVGltZXIpXG5cdFx0XHRcdFx0dGhpcy5sb2NhdGlvblRpbWVyID0gbnVsbFxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXG5cdFx0XHR1cGRhdGVMb2NhdGlvbigpIHtcblx0XHRcdFx0aWYgKCF0aGlzLnRva2VuKSByZXR1cm5cblx0XHRcdFx0dmFyIHRoYXQgPSB0aGlzO1xuXHRcdFx0XHR1bmkuZ2V0TG9jYXRpb24oe1xuXHRcdFx0XHRcdHR5cGU6ICdnY2owMicsXG5cdFx0XHRcdFx0c3VjY2VzczogKHJlcykgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+WumuaXtuabtOaWsOS9jee9rjonLCByZXMubGF0aXR1ZGUsIHJlcy5sb25naXR1ZGUpXG5cdFx0XHRcdFx0XHR0aGF0LiRzdG9yZS5jb21taXQoJ3NldExvY2F0aW9uJywgeyBsYXRpdHVkZTogcmVzLmxhdGl0dWRlLCBsb25naXR1ZGU6IHJlcy5sb25naXR1ZGUgfSlcblx0XHRcdFx0XHRcdHRoYXQuJHUuYXBpLnVwZGF0ZUxvY2F0aW9uKHtcblx0XHRcdFx0XHRcdFx0bGF0aXR1ZGU6IHJlcy5sYXRpdHVkZSxcblx0XHRcdFx0XHRcdFx0bG9uZ2l0dWRlOiByZXMubG9uZ2l0dWRlXG5cdFx0XHRcdFx0XHR9KS50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0XHRcdGlmIChyZXMuY29kZSA9PT0gMjAwKSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+abtOaWsOS9jee9ruaIkOWKnycpXG5cdFx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ+abtOaWsOS9jee9ruWksei0pScpXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0pLmNhdGNoKGVyciA9PiB7XG5cdFx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfmm7TmlrDkvY3nva7or7fmsYLlpLHotKU6JywgZXJyKVxuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdGZhaWw6IChlcnIpID0+IHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCfojrflj5bkvY3nva7lpLHotKU6JywgZXJyLmVyck1zZylcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRjaGVja0FwcFVwZGF0ZSgpIHtcblx0XHRcdFx0cGx1cy5ydW50aW1lLmdldFByb3BlcnR5KHBsdXMucnVudGltZS5hcHBpZCwgKGluZikgPT4ge1xuXHRcdFx0XHRcdGNvbnN0IGN1cnJlbnRWZXJzaW9uID0gaW5mLnZlcnNpb25Db2RlXG5cdFx0XHRcdFx0dGhpcy4kdS5hcGkuZ2V0QXBpVmVyc2lvbih7IHR5cGU6IDAgfSkudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdFx0aWYgKHJlcy5jb2RlID09PSAyMDAgJiYgcmVzLmRhdGEpIHtcblx0XHRcdFx0XHRcdFx0Y29uc3QgbGF0ZXN0VmVyc2lvbiA9IHJlcy5kYXRhLnZlcnNpb25OdW1cblx0XHRcdFx0XHRcdFx0aWYgKGxhdGVzdFZlcnNpb24gPiBjdXJyZW50VmVyc2lvbikge1xuXHRcdFx0XHRcdFx0XHRcdGlmIChyZXMuZGF0YS5pc0ZvcmNlID09PSAxKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNob3dGb3JjZVVwZGF0ZURpYWxvZyhyZXMuZGF0YS5maWxlVXJsLCByZXMuZGF0YS52ZXJzaW9uTnVtKVxuXHRcdFx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNob3dPcHRpb25hbFVwZGF0ZURpYWxvZyhyZXMuZGF0YS5maWxlVXJsLCByZXMuZGF0YS52ZXJzaW9uTnVtKVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdH0pXG5cdFx0XHR9LFxuXG5cdFx0XHRzaG93Rm9yY2VVcGRhdGVEaWFsb2coZmlsZVVybCwgdmVyc2lvbikge1xuXHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcblx0XHRcdFx0XHR0aXRsZTogJ+eJiOacrOabtOaWsCcsXG5cdFx0XHRcdFx0Y29udGVudDogYOajgOa1i+WIsOaWsOeJiOacrCR7dmVyc2lvbn3vvIzor7fmm7TmlrDlkI7nu6fnu63kvb/nlKhgLFxuXHRcdFx0XHRcdHNob3dDYW5jZWw6IGZhbHNlLFxuXHRcdFx0XHRcdGNvbmZpcm1UZXh0OiAn56uL5Y2z5pu05pawJyxcblx0XHRcdFx0XHRzdWNjZXNzOiAoKSA9PiB7XG5cdFx0XHRcdFx0XHRwbHVzLnJ1bnRpbWUub3BlblVSTChmaWxlVXJsKVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH0sXG5cblx0XHRcdHNob3dPcHRpb25hbFVwZGF0ZURpYWxvZyhmaWxlVXJsLCB2ZXJzaW9uKSB7XG5cdFx0XHRcdHVuaS5zaG93TW9kYWwoe1xuXHRcdFx0XHRcdHRpdGxlOiAn54mI5pys5pu05pawJyxcblx0XHRcdFx0XHRjb250ZW50OiBg5qOA5rWL5Yiw5paw54mI5pysJHt2ZXJzaW9ufe+8jOaYr+WQpuabtOaWsO+8n2AsXG5cdFx0XHRcdFx0Y29uZmlybVRleHQ6ICfmm7TmlrAnLFxuXHRcdFx0XHRcdGNhbmNlbFRleHQ6ICfnqI3lkI4nLFxuXHRcdFx0XHRcdHN1Y2Nlc3M6IChyZXMpID0+IHtcblx0XHRcdFx0XHRcdGlmIChyZXMuY29uZmlybSkge1xuXHRcdFx0XHRcdFx0XHRwbHVzLnJ1bnRpbWUub3BlblVSTChmaWxlVXJsKVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH1cblx0XHR9XG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5cdHBhZ2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmNmY4ZmM7XG5cdH1cblx0dW5pLW1wLXNoYXJlIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbjwvc3R5bGU+Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///177\n");
/***/ }),
/* 178 */
@@ -29330,7 +29400,7 @@
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar install = function install(Vue, vm) {\n  uni.$u.http.setConfig(function (config) {\n    config.baseURL = vm.$baseUrl;\n    config.timeout = 60000;\n    return config;\n  });\n  var getBannerList = function getBannerList() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getBannerList', {\n      params: params\n    });\n  }; // 获取轮播图列表\n  var login = function login() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/login', data);\n  }; // 登录司机\n  var register = function register() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/register', data);\n  }; // 司机验证码登录\n  var sendCode = function sendCode() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/sendCode', {\n      params: params\n    });\n  }; // 发送验证码\n  var submitVerify = function submitVerify() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/submitVerify', data);\n  }; // 提交认证\n  var treeList = function treeList() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/treeList', data);\n  }; // 全部区划树形查询\n  var getCategoryList = function getCategoryList() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getCategoryList', {\n      params: params\n    });\n  }; // 获取分类列表\n  var verifyDetail = function verifyDetail() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/verifyDetail', {\n      params: params\n    });\n  }; // 认证详情\n  var logOutDriver = function logOutDriver() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/account/logOutDriver', {\n      params: params\n    });\n  }; // 司机退出登录\n  var stats = function stats() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/stats', {\n      params: params\n    });\n  }; // 司机统计\n  var changePassword = function changePassword() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/changePassword', {\n      params: params\n    });\n  }; // 司机修改密码\n  var centerInfo = function centerInfo() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/centerInfo', {\n      params: params\n    });\n  }; // 司机中心信息\n  var updateAcceptingStatus = function updateAcceptingStatus() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/updateAcceptingStatus', {\n      params: params\n    });\n  }; // 司机更新接单状态\n  var driverNoticePage = function driverNoticePage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/driverNoticePage', data);\n  }; // 司机通知分页查询\n  var driverReadAllNotice = function driverReadAllNotice() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/driverReadAllNotice', data);\n  }; // 司机读取所有通知\n  var updateLocation = function updateLocation() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/updateLocation', {\n      params: params\n    });\n  }; // 司机更新位置\n  var driverStatistics = function driverStatistics() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/wallet/driverStatistics', {\n      params: params\n    });\n  }; // 司机钱包统计\n  var driverSummary = function driverSummary() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/revenue/driverSummary', data);\n  }; // 司机钱包统计\n  var driverPage = function driverPage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/revenue/driverPage', data);\n  }; // 司机钱包分页查询\n  var driverApply = function driverApply() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/wallet/driverApply', data);\n  }; // 司机提现\n  var grabOrderHall = function grabOrderHall() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/grabOrderHall', data);\n  }; // 司机接单大厅\n  var activeOrders = function activeOrders() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/activeOrders', data);\n  }; // 司机活跃订单\n  var activeOrderCount = function activeOrderCount() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/activeOrderCount', {\n      params: params\n    });\n  }; // 司机活跃订单数量\n  var grabOrder = function grabOrder() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/grabOrder', {\n      params: params\n    });\n  }; // 司机抢单\n  var cancelOrder = function cancelOrder() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/cancelOrder', data);\n  }; // 司机取消订单\n  var orderDetail = function orderDetail() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/orderDetail', {\n      params: params\n    });\n  }; // 订单详情\n  var confirmPickup = function confirmPickup() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/confirmPickup', data);\n  }; // 司机确认取货\n  var confirmDeliver = function confirmDeliver() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/confirmDeliver', data);\n  }; // 司机确认送达\n  var cancelLimit = function cancelLimit() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/cancelLimit', {\n      params: params\n    });\n  }; // 司机取消订单限制\n  var orderPage = function orderPage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/orderPage', data);\n  }; // 司机订单分页查询\n  var checkToken = function checkToken() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/checkToken', {\n      params: params\n    });\n  }; // 司机检查token是否过期\n  var directionInfo = function directionInfo() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/directionInfo', data);\n  }; // 路径规划信息\n  var getApiVersion = function getApiVersion() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getApiVersion', {\n      params: params\n    });\n  }; // 获取接口版本\n  var getPlatformAboutUs = function getPlatformAboutUs() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getPlatformAboutUs', {\n      params: params\n    });\n  }; // 获取平台关于我们信息\n\n  vm.$u.api = {\n    getBannerList: getBannerList,\n    login: login,\n    register: register,\n    sendCode: sendCode,\n    submitVerify: submitVerify,\n    treeList: treeList,\n    getCategoryList: getCategoryList,\n    verifyDetail: verifyDetail,\n    logOutDriver: logOutDriver,\n    stats: stats,\n    changePassword: changePassword,\n    centerInfo: centerInfo,\n    updateAcceptingStatus: updateAcceptingStatus,\n    driverNoticePage: driverNoticePage,\n    driverReadAllNotice: driverReadAllNotice,\n    updateLocation: updateLocation,\n    driverStatistics: driverStatistics,\n    driverSummary: driverSummary,\n    driverPage: driverPage,\n    driverApply: driverApply,\n    grabOrderHall: grabOrderHall,\n    activeOrders: activeOrders,\n    activeOrderCount: activeOrderCount,\n    grabOrder: grabOrder,\n    cancelOrder: cancelOrder,\n    orderDetail: orderDetail,\n    confirmPickup: confirmPickup,\n    confirmDeliver: confirmDeliver,\n    cancelLimit: cancelLimit,\n    orderPage: orderPage,\n    checkToken: checkToken,\n    directionInfo: directionInfo,\n    getApiVersion: getApiVersion,\n    getPlatformAboutUs: getPlatformAboutUs\n  };\n};\nvar _default = {\n  install: install\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vdXRpbHMvaHR0cC5hcGkuanMiXSwibmFtZXMiOlsiaW5zdGFsbCIsIlZ1ZSIsInZtIiwidW5pIiwiJHUiLCJodHRwIiwic2V0Q29uZmlnIiwiY29uZmlnIiwiYmFzZVVSTCIsIiRiYXNlVXJsIiwidGltZW91dCIsImdldEJhbm5lckxpc3QiLCJwYXJhbXMiLCJnZXQiLCJsb2dpbiIsImRhdGEiLCJwb3N0IiwicmVnaXN0ZXIiLCJzZW5kQ29kZSIsInN1Ym1pdFZlcmlmeSIsInRyZWVMaXN0IiwiZ2V0Q2F0ZWdvcnlMaXN0IiwidmVyaWZ5RGV0YWlsIiwibG9nT3V0RHJpdmVyIiwic3RhdHMiLCJjaGFuZ2VQYXNzd29yZCIsImNlbnRlckluZm8iLCJ1cGRhdGVBY2NlcHRpbmdTdGF0dXMiLCJkcml2ZXJOb3RpY2VQYWdlIiwiZHJpdmVyUmVhZEFsbE5vdGljZSIsInVwZGF0ZUxvY2F0aW9uIiwiZHJpdmVyU3RhdGlzdGljcyIsImRyaXZlclN1bW1hcnkiLCJkcml2ZXJQYWdlIiwiZHJpdmVyQXBwbHkiLCJncmFiT3JkZXJIYWxsIiwiYWN0aXZlT3JkZXJzIiwiYWN0aXZlT3JkZXJDb3VudCIsImdyYWJPcmRlciIsImNhbmNlbE9yZGVyIiwib3JkZXJEZXRhaWwiLCJjb25maXJtUGlja3VwIiwiY29uZmlybURlbGl2ZXIiLCJjYW5jZWxMaW1pdCIsIm9yZGVyUGFnZSIsImNoZWNrVG9rZW4iLCJkaXJlY3Rpb25JbmZvIiwiZ2V0QXBpVmVyc2lvbiIsImdldFBsYXRmb3JtQWJvdXRVcyIsImFwaSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBTUEsT0FBTyxHQUFHLFNBQVZBLE9BQU8sQ0FBSUMsR0FBRyxFQUFFQyxFQUFFLEVBQUs7RUFDNUJDLEdBQUcsQ0FBQ0MsRUFBRSxDQUFDQyxJQUFJLENBQUNDLFNBQVMsQ0FBQyxVQUFDQyxNQUFNLEVBQUs7SUFDOUJBLE1BQU0sQ0FBQ0MsT0FBTyxHQUFHTixFQUFFLENBQUNPLFFBQVE7SUFD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QyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsVUFBVSxFQUFWQSxVQUFVO0lBQ1ZDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsWUFBWSxFQUFaQSxZQUFZO0lBQ1pDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCQyxTQUFTLEVBQVRBLFNBQVM7SUFDVEMsV0FBVyxFQUFYQSxXQUFXO0lBQ1hDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsY0FBYyxFQUFkQSxjQUFjO0lBQ2RDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxTQUFTLEVBQVRBLFNBQVM7SUFDVEMsVUFBVSxFQUFWQSxVQUFVO0lBQ1ZDLGFBQWEsRUFBYkEsYUFBYTtJQUNiQyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsa0JBQWtCLEVBQWxCQTtFQUNELENBQUM7QUFDRixDQUFDO0FBQUEsZUFFYztFQUFFaEQsT0FBTyxFQUFQQTtBQUFRLENBQUM7QUFBQSIsImZpbGUiOiIzMTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBpbnN0YWxsID0gKFZ1ZSwgdm0pID0+IHtcclxuXHR1bmkuJHUuaHR0cC5zZXRDb25maWcoKGNvbmZpZykgPT4ge1xyXG5cdCAgICBjb25maWcuYmFzZVVSTCA9IHZtLiRiYXNlVXJsO1xyXG5cdFx0Y29uZmlnLnRpbWVvdXQgPSA2MDAwMDtcclxuXHQgICAgcmV0dXJuIGNvbmZpZztcclxuXHR9KVxyXG5cdFxyXG5cdGxldCBnZXRCYW5uZXJMaXN0ID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2NvbmZpZy9nZXRCYW5uZXJMaXN0Jyx7IHBhcmFtcyB9KTtcdC8vIOiOt+WPlui9ruaSreWbvuWIl+ihqFxyXG5cdGxldCBsb2dpbiA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vbG9naW4nLCBkYXRhKTtcdC8vIOeZu+W9leWPuOaculxyXG5cdGxldCByZWdpc3RlciA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vcmVnaXN0ZXInLCBkYXRhKTtcdC8vIOWPuOacuumqjOivgeeggeeZu+W9lVxyXG5cdGxldCBzZW5kQ29kZSA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL3NlbmRDb2RlJyx7IHBhcmFtcyB9KTtcdC8vIOWPkemAgemqjOivgeeggVxyXG5cdGxldCBzdWJtaXRWZXJpZnkgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9kcml2ZXJJbmZvL3N1Ym1pdFZlcmlmeScsIGRhdGEpO1x0Ly8g5o+Q5Lqk6K6k6K+BXHJcblx0bGV0IHRyZWVMaXN0ID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvY29uZmlnL3RyZWVMaXN0JywgZGF0YSk7XHQvLyDlhajpg6jljLrliJLmoJHlvaLmn6Xor6JcclxuXHRsZXQgZ2V0Q2F0ZWdvcnlMaXN0ID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2NvbmZpZy9nZXRDYXRlZ29yeUxpc3QnLHsgcGFyYW1zIH0pO1x0Ly8g6I635Y+W5YiG57G75YiX6KGoXHJcblx0bGV0IHZlcmlmeURldGFpbCA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL3ZlcmlmeURldGFpbCcseyBwYXJhbXMgfSk7XHQvLyDorqTor4Hor6bmg4VcclxuXHRsZXQgbG9nT3V0RHJpdmVyID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2FjY291bnQvbG9nT3V0RHJpdmVyJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuumAgOWHuueZu+W9lVxyXG5cdGxldCBzdGF0cyA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL3N0YXRzJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuue7n+iuoVxyXG5cdGxldCBjaGFuZ2VQYXNzd29yZCA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL2NoYW5nZVBhc3N3b3JkJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuuS/ruaUueWvhueggVxyXG5cdGxldCBjZW50ZXJJbmZvID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vY2VudGVySW5mbycseyBwYXJhbXMgfSk7XHQvLyDlj7jmnLrkuK3lv4Pkv6Hmga9cclxuXHRsZXQgdXBkYXRlQWNjZXB0aW5nU3RhdHVzID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vdXBkYXRlQWNjZXB0aW5nU3RhdHVzJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuuabtOaWsOaOpeWNleeKtuaAgVxyXG5cdGxldCBkcml2ZXJOb3RpY2VQYWdlID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvY29uZmlnL2RyaXZlck5vdGljZVBhZ2UnLCBkYXRhKTtcdC8vIOWPuOacuumAmuefpeWIhumhteafpeivolxyXG5cdGxldCBkcml2ZXJSZWFkQWxsTm90aWNlID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvY29uZmlnL2RyaXZlclJlYWRBbGxOb3RpY2UnLCBkYXRhKTtcdC8vIOWPuOacuuivu+WPluaJgOaciemAmuefpVxyXG5cdGxldCB1cGRhdGVMb2NhdGlvbiA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL3VwZGF0ZUxvY2F0aW9uJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuuabtOaWsOS9jee9rlxyXG5cdGxldCBkcml2ZXJTdGF0aXN0aWNzID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL3dhbGxldC9kcml2ZXJTdGF0aXN0aWNzJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuumSseWMhee7n+iuoVxyXG5cdGxldCBkcml2ZXJTdW1tYXJ5ID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvcmV2ZW51ZS9kcml2ZXJTdW1tYXJ5JywgZGF0YSk7XHQvLyDlj7jmnLrpkrHljIXnu5/orqFcclxuXHRsZXQgZHJpdmVyUGFnZSA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL3JldmVudWUvZHJpdmVyUGFnZScsIGRhdGEpO1x0Ly8g5Y+45py66ZKx5YyF5YiG6aG15p+l6K+iXHJcblx0bGV0IGRyaXZlckFwcGx5ID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvd2FsbGV0L2RyaXZlckFwcGx5JywgZGF0YSk7XHQvLyDlj7jmnLrmj5DnjrBcclxuXHRsZXQgZ3JhYk9yZGVySGFsbCA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vZ3JhYk9yZGVySGFsbCcsIGRhdGEpO1x0Ly8g5Y+45py65o6l5Y2V5aSn5Y6FXHJcblx0bGV0IGFjdGl2ZU9yZGVycyA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vYWN0aXZlT3JkZXJzJywgZGF0YSk7XHQvLyDlj7jmnLrmtLvot4PorqLljZVcclxuXHRsZXQgYWN0aXZlT3JkZXJDb3VudCA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL2FjdGl2ZU9yZGVyQ291bnQnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65rS76LeD6K6i5Y2V5pWw6YePXHJcblx0bGV0IGdyYWJPcmRlciA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL2dyYWJPcmRlcicseyBwYXJhbXMgfSk7XHQvLyDlj7jmnLrmiqLljZVcclxuXHRsZXQgY2FuY2VsT3JkZXIgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9kcml2ZXJJbmZvL2NhbmNlbE9yZGVyJywgZGF0YSk7XHQvLyDlj7jmnLrlj5bmtojorqLljZVcclxuXHRsZXQgb3JkZXJEZXRhaWwgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvZHJpdmVySW5mby9vcmRlckRldGFpbCcseyBwYXJhbXMgfSk7XHQvLyDorqLljZXor6bmg4VcclxuXHRsZXQgY29uZmlybVBpY2t1cCA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vY29uZmlybVBpY2t1cCcsIGRhdGEpO1x0Ly8g5Y+45py656Gu6K6k5Y+W6LSnXHJcblx0bGV0IGNvbmZpcm1EZWxpdmVyID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9jb25maXJtRGVsaXZlcicsIGRhdGEpO1x0Ly8g5Y+45py656Gu6K6k6YCB6L6+XHJcblx0bGV0IGNhbmNlbExpbWl0ID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vY2FuY2VsTGltaXQnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65Y+W5raI6K6i5Y2V6ZmQ5Yi2XHJcblx0bGV0IG9yZGVyUGFnZSA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vb3JkZXJQYWdlJywgZGF0YSk7XHQvLyDlj7jmnLrorqLljZXliIbpobXmn6Xor6JcclxuXHRsZXQgY2hlY2tUb2tlbiA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL2NoZWNrVG9rZW4nLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65qOA5p+ldG9rZW7mmK/lkKbov4fmnJ9cclxuXHRsZXQgZGlyZWN0aW9uSW5mbyA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2NvbmZpZy9kaXJlY3Rpb25JbmZvJywgZGF0YSk7XHQvLyDot6/lvoTop4TliJLkv6Hmga9cclxuXHRsZXQgZ2V0QXBpVmVyc2lvbiA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9jb25maWcvZ2V0QXBpVmVyc2lvbicseyBwYXJhbXMgfSk7XHQvLyDojrflj5bmjqXlj6PniYjmnKxcclxuXHRsZXQgZ2V0UGxhdGZvcm1BYm91dFVzID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2NvbmZpZy9nZXRQbGF0Zm9ybUFib3V0VXMnLHsgcGFyYW1zIH0pO1x0Ly8g6I635Y+W5bmz5Y+w5YWz5LqO5oiR5Lus5L+h5oGvXHJcblxyXG5cdHZtLiR1LmFwaSA9IHtcclxuXHRcdGdldEJhbm5lckxpc3QsXHJcblx0XHRsb2dpbixcclxuXHRcdHJlZ2lzdGVyLFxyXG5cdFx0c2VuZENvZGUsXHJcblx0XHRzdWJtaXRWZXJpZnksXHJcblx0XHR0cmVlTGlzdCxcclxuXHRcdGdldENhdGVnb3J5TGlzdCxcclxuXHRcdHZlcmlmeURldGFpbCxcclxuXHRcdGxvZ091dERyaXZlcixcclxuXHRcdHN0YXRzLFxyXG5cdFx0Y2hhbmdlUGFzc3dvcmQsXHJcblx0XHRjZW50ZXJJbmZvLFxyXG5cdFx0dXBkYXRlQWNjZXB0aW5nU3RhdHVzLFxyXG5cdFx0ZHJpdmVyTm90aWNlUGFnZSxcclxuXHRcdGRyaXZlclJlYWRBbGxOb3RpY2UsXHJcblx0XHR1cGRhdGVMb2NhdGlvbixcclxuXHRcdGRyaXZlclN0YXRpc3RpY3MsXHJcblx0XHRkcml2ZXJTdW1tYXJ5LFxyXG5cdFx0ZHJpdmVyUGFnZSxcclxuXHRcdGRyaXZlckFwcGx5LFxyXG5cdFx0Z3JhYk9yZGVySGFsbCxcclxuXHRcdGFjdGl2ZU9yZGVycyxcclxuXHRcdGFjdGl2ZU9yZGVyQ291bnQsXHJcblx0XHRncmFiT3JkZXIsXHJcblx0XHRjYW5jZWxPcmRlcixcclxuXHRcdG9yZGVyRGV0YWlsLFxyXG5cdFx0Y29uZmlybVBpY2t1cCxcclxuXHRcdGNvbmZpcm1EZWxpdmVyLFxyXG5cdFx0Y2FuY2VsTGltaXQsXHJcblx0XHRvcmRlclBhZ2UsXHJcblx0XHRjaGVja1Rva2VuLFxyXG5cdFx0ZGlyZWN0aW9uSW5mbyxcclxuXHRcdGdldEFwaVZlcnNpb24sXHJcblx0XHRnZXRQbGF0Zm9ybUFib3V0VXNcclxuXHR9O1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCB7IGluc3RhbGwgfSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///312\n");
eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\nvar install = function install(Vue, vm) {\n  uni.$u.http.setConfig(function (config) {\n    config.baseURL = vm.$baseUrl;\n    config.timeout = 60000;\n    return config;\n  });\n  var getBannerList = function getBannerList() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getBannerList', {\n      params: params\n    });\n  }; // 获取轮播图列表\n  var login = function login() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/login', data);\n  }; // 登录司机\n  var register = function register() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/register', data);\n  }; // 司机验证码登录\n  var sendCode = function sendCode() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/sendCode', {\n      params: params\n    });\n  }; // 发送验证码\n  var submitVerify = function submitVerify() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/submitVerify', data);\n  }; // 提交认证\n  var treeList = function treeList() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/treeList', data);\n  }; // 全部区划树形查询\n  var getCategoryList = function getCategoryList() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getCategoryList', {\n      params: params\n    });\n  }; // 获取分类列表\n  var verifyDetail = function verifyDetail() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/verifyDetail', {\n      params: params\n    });\n  }; // 认证详情\n  var logOutDriver = function logOutDriver() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/account/logOutDriver', {\n      params: params\n    });\n  }; // 司机退出登录\n  var stats = function stats() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/stats', {\n      params: params\n    });\n  }; // 司机统计\n  var changePassword = function changePassword() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/changePassword', {\n      params: params\n    });\n  }; // 司机修改密码\n  var centerInfo = function centerInfo() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/centerInfo', {\n      params: params\n    });\n  }; // 司机中心信息\n  var updateAcceptingStatus = function updateAcceptingStatus() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/updateAcceptingStatus', {\n      params: params\n    });\n  }; // 司机更新接单状态\n  var driverNoticePage = function driverNoticePage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/driverNoticePage', data);\n  }; // 司机通知分页查询\n  var driverReadAllNotice = function driverReadAllNotice() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/driverReadAllNotice', data);\n  }; // 司机读取所有通知\n  var updateLocation = function updateLocation() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/updateLocation', {\n      params: params\n    });\n  }; // 司机更新位置\n  var driverStatistics = function driverStatistics() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/wallet/driverStatistics', {\n      params: params\n    });\n  }; // 司机钱包统计\n  var driverSummary = function driverSummary() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/revenue/driverSummary', data);\n  }; // 司机钱包统计\n  var driverPage = function driverPage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/revenue/driverPage', data);\n  }; // 司机钱包分页查询\n  var driverApply = function driverApply() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/wallet/driverApply', data);\n  }; // 司机提现\n  var grabOrderHall = function grabOrderHall() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/grabOrderHall', data);\n  }; // 司机接单大厅\n  var activeOrders = function activeOrders() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/activeOrders', data);\n  }; // 司机活跃订单\n  var activeOrderCount = function activeOrderCount() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/activeOrderCount', {\n      params: params\n    });\n  }; // 司机活跃订单数量\n  var grabOrder = function grabOrder() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/grabOrder', {\n      params: params\n    });\n  }; // 司机抢单\n  var cancelOrder = function cancelOrder() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/cancelOrder', data);\n  }; // 司机取消订单\n  var orderDetail = function orderDetail() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/orderDetail', {\n      params: params\n    });\n  }; // 订单详情\n  var confirmPickup = function confirmPickup() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/confirmPickup', data);\n  }; // 司机确认取货\n  var confirmDeliver = function confirmDeliver() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/confirmDeliver', data);\n  }; // 司机确认送达\n  var cancelLimit = function cancelLimit() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/cancelLimit', {\n      params: params\n    });\n  }; // 司机取消订单限制\n  var orderPage = function orderPage() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/driverInfo/orderPage', data);\n  }; // 司机订单分页查询\n  var checkToken = function checkToken() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/driverInfo/checkToken', {\n      params: params\n    });\n  }; // 司机检查token是否过期\n  var directionInfo = function directionInfo() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/directionInfo', data);\n  }; // 路径规划信息\n  var getApiVersion = function getApiVersion() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getApiVersion', {\n      params: params\n    });\n  }; // 获取接口版本\n  var getPlatformAboutUs = function getPlatformAboutUs() {\n    var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.get('web/config/getPlatformAboutUs', {\n      params: params\n    });\n  }; // 获取平台关于我们信息\n  var checkDriverOperationRadius = function checkDriverOperationRadius() {\n    var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    return vm.$u.http.post('web/config/checkDriverOperationRadius', data);\n  }; // 司机检查操作半径\n\n  vm.$u.api = {\n    getBannerList: getBannerList,\n    login: login,\n    register: register,\n    sendCode: sendCode,\n    submitVerify: submitVerify,\n    treeList: treeList,\n    getCategoryList: getCategoryList,\n    verifyDetail: verifyDetail,\n    logOutDriver: logOutDriver,\n    stats: stats,\n    changePassword: changePassword,\n    centerInfo: centerInfo,\n    updateAcceptingStatus: updateAcceptingStatus,\n    driverNoticePage: driverNoticePage,\n    driverReadAllNotice: driverReadAllNotice,\n    updateLocation: updateLocation,\n    driverStatistics: driverStatistics,\n    driverSummary: driverSummary,\n    driverPage: driverPage,\n    driverApply: driverApply,\n    grabOrderHall: grabOrderHall,\n    activeOrders: activeOrders,\n    activeOrderCount: activeOrderCount,\n    grabOrder: grabOrder,\n    cancelOrder: cancelOrder,\n    orderDetail: orderDetail,\n    confirmPickup: confirmPickup,\n    confirmDeliver: confirmDeliver,\n    cancelLimit: cancelLimit,\n    orderPage: orderPage,\n    checkToken: checkToken,\n    directionInfo: directionInfo,\n    getApiVersion: getApiVersion,\n    getPlatformAboutUs: getPlatformAboutUs,\n    checkDriverOperationRadius: checkDriverOperationRadius\n  };\n};\nvar _default = {\n  install: install\n};\nexports.default = _default;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vdXRpbHMvaHR0cC5hcGkuanMiXSwibmFtZXMiOlsiaW5zdGFsbCIsIlZ1ZSIsInZtIiwidW5pIiwiJHUiLCJodHRwIiwic2V0Q29uZmlnIiwiY29uZmlnIiwiYmFzZVVSTCIsIiRiYXNlVXJsIiwidGltZW91dCIsImdldEJhbm5lckxpc3QiLCJwYXJhbXMiLCJnZXQiLCJsb2dpbiIsImRhdGEiLCJwb3N0IiwicmVnaXN0ZXIiLCJzZW5kQ29kZSIsInN1Ym1pdFZlcmlmeSIsInRyZWVMaXN0IiwiZ2V0Q2F0ZWdvcnlMaXN0IiwidmVyaWZ5RGV0YWlsIiwibG9nT3V0RHJpdmVyIiwic3RhdHMiLCJjaGFuZ2VQYXNzd29yZCIsImNlbnRlckluZm8iLCJ1cGRhdGVBY2NlcHRpbmdTdGF0dXMiLCJkcml2ZXJOb3RpY2VQYWdlIiwiZHJpdmVyUmVhZEFsbE5vdGljZSIsInVwZGF0ZUxvY2F0aW9uIiwiZHJpdmVyU3RhdGlzdGljcyIsImRyaXZlclN1bW1hcnkiLCJkcml2ZXJQYWdlIiwiZHJpdmVyQXBwbHkiLCJncmFiT3JkZXJIYWxsIiwiYWN0aXZlT3JkZXJzIiwiYWN0aXZlT3JkZXJDb3VudCIsImdyYWJPcmRlciIsImNhbmNlbE9yZGVyIiwib3JkZXJEZXRhaWwiLCJjb25maXJtUGlja3VwIiwiY29uZmlybURlbGl2ZXIiLCJjYW5jZWxMaW1pdCIsIm9yZGVyUGFnZSIsImNoZWNrVG9rZW4iLCJkaXJlY3Rpb25JbmZvIiwiZ2V0QXBpVmVyc2lvbiIsImdldFBsYXRmb3JtQWJvdXRVcyIsImNoZWNrRHJpdmVyT3BlcmF0aW9uUmFkaXVzIiwiYXBpIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFNQSxPQUFPLEdBQUcsU0FBVkEsT0FBTyxDQUFJQyxHQUFHLEVBQUVDLEVBQUUsRUFBSztFQUM1QkMsR0FBRyxDQUFDQyxFQUFFLENBQUNDLElBQUksQ0FBQ0MsU0FBUyxDQUFDLFVBQUNDLE1BQU0sRUFBSztJQUM5QkEsTUFBTSxDQUFDQyxP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RUFBTEEsS0FBSztJQUNMQyxjQUFjLEVBQWRBLGNBQWM7SUFDZEMsVUFBVSxFQUFWQSxVQUFVO0lBQ1ZDLHFCQUFxQixFQUFyQkEscUJBQXFCO0lBQ3JCQyxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtJQUNoQkMsbUJBQW1CLEVBQW5CQSxtQkFBbUI7SUFDbkJDLGNBQWMsRUFBZEEsY0FBYztJQUNkQyxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtJQUNoQkMsYUFBYSxFQUFiQSxhQUFhO0lBQ2JDLFVBQVUsRUFBVkEsVUFBVTtJQUNWQyxXQUFXLEVBQVhBLFdBQVc7SUFDWEMsYUFBYSxFQUFiQSxhQUFhO0lBQ2JDLFlBQVksRUFBWkEsWUFBWTtJQUNaQyxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtJQUNoQkMsU0FBUyxFQUFUQSxTQUFTO0lBQ1RDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxXQUFXLEVBQVhBLFdBQVc7SUFDWEMsYUFBYSxFQUFiQSxhQUFhO0lBQ2JDLGNBQWMsRUFBZEEsY0FBYztJQUNkQyxXQUFXLEVBQVhBLFdBQVc7SUFDWEMsU0FBUyxFQUFUQSxTQUFTO0lBQ1RDLFVBQVUsRUFBVkEsVUFBVTtJQUNWQyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsYUFBYSxFQUFiQSxhQUFhO0lBQ2JDLGtCQUFrQixFQUFsQkEsa0JBQWtCO0lBQ2xCQywwQkFBMEIsRUFBMUJBO0VBQ0QsQ0FBQztBQUNGLENBQUM7QUFBQSxlQUVjO0VBQUVqRCxPQUFPLEVBQVBBO0FBQVEsQ0FBQztBQUFBIiwiZmlsZSI6IjMxMi5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGluc3RhbGwgPSAoVnVlLCB2bSkgPT4ge1xyXG5cdHVuaS4kdS5odHRwLnNldENvbmZpZygoY29uZmlnKSA9PiB7XHJcblx0ICAgIGNvbmZpZy5iYXNlVVJMID0gdm0uJGJhc2VVcmw7XHJcblx0XHRjb25maWcudGltZW91dCA9IDYwMDAwO1xyXG5cdCAgICByZXR1cm4gY29uZmlnO1xyXG5cdH0pXHJcblx0XHJcblx0bGV0IGdldEJhbm5lckxpc3QgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvY29uZmlnL2dldEJhbm5lckxpc3QnLHsgcGFyYW1zIH0pO1x0Ly8g6I635Y+W6L2u5pKt5Zu+5YiX6KGoXHJcblx0bGV0IGxvZ2luID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9sb2dpbicsIGRhdGEpO1x0Ly8g55m75b2V5Y+45py6XHJcblx0bGV0IHJlZ2lzdGVyID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9yZWdpc3RlcicsIGRhdGEpO1x0Ly8g5Y+45py66aqM6K+B56CB55m75b2VXHJcblx0bGV0IHNlbmRDb2RlID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vc2VuZENvZGUnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+R6YCB6aqM6K+B56CBXHJcblx0bGV0IHN1Ym1pdFZlcmlmeSA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vc3VibWl0VmVyaWZ5JywgZGF0YSk7XHQvLyDmj5DkuqTorqTor4FcclxuXHRsZXQgdHJlZUxpc3QgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9jb25maWcvdHJlZUxpc3QnLCBkYXRhKTtcdC8vIOWFqOmDqOWMuuWIkuagkeW9ouafpeivolxyXG5cdGxldCBnZXRDYXRlZ29yeUxpc3QgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvY29uZmlnL2dldENhdGVnb3J5TGlzdCcseyBwYXJhbXMgfSk7XHQvLyDojrflj5bliIbnsbvliJfooahcclxuXHRsZXQgdmVyaWZ5RGV0YWlsID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vdmVyaWZ5RGV0YWlsJyx7IHBhcmFtcyB9KTtcdC8vIOiupOivgeivpuaDhVxyXG5cdGxldCBsb2dPdXREcml2ZXIgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvYWNjb3VudC9sb2dPdXREcml2ZXInLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py66YCA5Ye655m75b2VXHJcblx0bGV0IHN0YXRzID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vc3RhdHMnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py657uf6K6hXHJcblx0bGV0IGNoYW5nZVBhc3N3b3JkID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vY2hhbmdlUGFzc3dvcmQnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65L+u5pS55a+G56CBXHJcblx0bGV0IGNlbnRlckluZm8gPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvZHJpdmVySW5mby9jZW50ZXJJbmZvJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuuS4reW/g+S/oeaBr1xyXG5cdGxldCB1cGRhdGVBY2NlcHRpbmdTdGF0dXMgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvZHJpdmVySW5mby91cGRhdGVBY2NlcHRpbmdTdGF0dXMnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65pu05paw5o6l5Y2V54q25oCBXHJcblx0bGV0IGRyaXZlck5vdGljZVBhZ2UgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9jb25maWcvZHJpdmVyTm90aWNlUGFnZScsIGRhdGEpO1x0Ly8g5Y+45py66YCa55+l5YiG6aG15p+l6K+iXHJcblx0bGV0IGRyaXZlclJlYWRBbGxOb3RpY2UgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9jb25maWcvZHJpdmVyUmVhZEFsbE5vdGljZScsIGRhdGEpO1x0Ly8g5Y+45py66K+75Y+W5omA5pyJ6YCa55+lXHJcblx0bGV0IHVwZGF0ZUxvY2F0aW9uID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vdXBkYXRlTG9jYXRpb24nLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py65pu05paw5L2N572uXHJcblx0bGV0IGRyaXZlclN0YXRpc3RpY3MgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvd2FsbGV0L2RyaXZlclN0YXRpc3RpY3MnLHsgcGFyYW1zIH0pO1x0Ly8g5Y+45py66ZKx5YyF57uf6K6hXHJcblx0bGV0IGRyaXZlclN1bW1hcnkgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9yZXZlbnVlL2RyaXZlclN1bW1hcnknLCBkYXRhKTtcdC8vIOWPuOacuumSseWMhee7n+iuoVxyXG5cdGxldCBkcml2ZXJQYWdlID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvcmV2ZW51ZS9kcml2ZXJQYWdlJywgZGF0YSk7XHQvLyDlj7jmnLrpkrHljIXliIbpobXmn6Xor6JcclxuXHRsZXQgZHJpdmVyQXBwbHkgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi93YWxsZXQvZHJpdmVyQXBwbHknLCBkYXRhKTtcdC8vIOWPuOacuuaPkOeOsFxyXG5cdGxldCBncmFiT3JkZXJIYWxsID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9ncmFiT3JkZXJIYWxsJywgZGF0YSk7XHQvLyDlj7jmnLrmjqXljZXlpKfljoVcclxuXHRsZXQgYWN0aXZlT3JkZXJzID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9hY3RpdmVPcmRlcnMnLCBkYXRhKTtcdC8vIOWPuOacuua0u+i3g+iuouWNlVxyXG5cdGxldCBhY3RpdmVPcmRlckNvdW50ID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vYWN0aXZlT3JkZXJDb3VudCcseyBwYXJhbXMgfSk7XHQvLyDlj7jmnLrmtLvot4PorqLljZXmlbDph49cclxuXHRsZXQgZ3JhYk9yZGVyID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vZ3JhYk9yZGVyJyx7IHBhcmFtcyB9KTtcdC8vIOWPuOacuuaKouWNlVxyXG5cdGxldCBjYW5jZWxPcmRlciA9IChkYXRhID0ge30pID0+IHZtLiR1Lmh0dHAucG9zdCgnd2ViL2RyaXZlckluZm8vY2FuY2VsT3JkZXInLCBkYXRhKTtcdC8vIOWPuOacuuWPlua2iOiuouWNlVxyXG5cdGxldCBvcmRlckRldGFpbCA9IChwYXJhbXMgPSB7fSkgPT4gdm0uJHUuaHR0cC5nZXQoJ3dlYi9kcml2ZXJJbmZvL29yZGVyRGV0YWlsJyx7IHBhcmFtcyB9KTtcdC8vIOiuouWNleivpuaDhVxyXG5cdGxldCBjb25maXJtUGlja3VwID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9jb25maXJtUGlja3VwJywgZGF0YSk7XHQvLyDlj7jmnLrnoa7orqTlj5botKdcclxuXHRsZXQgY29uZmlybURlbGl2ZXIgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9kcml2ZXJJbmZvL2NvbmZpcm1EZWxpdmVyJywgZGF0YSk7XHQvLyDlj7jmnLrnoa7orqTpgIHovr5cclxuXHRsZXQgY2FuY2VsTGltaXQgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvZHJpdmVySW5mby9jYW5jZWxMaW1pdCcseyBwYXJhbXMgfSk7XHQvLyDlj7jmnLrlj5bmtojorqLljZXpmZDliLZcclxuXHRsZXQgb3JkZXJQYWdlID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvZHJpdmVySW5mby9vcmRlclBhZ2UnLCBkYXRhKTtcdC8vIOWPuOacuuiuouWNleWIhumhteafpeivolxyXG5cdGxldCBjaGVja1Rva2VuID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2RyaXZlckluZm8vY2hlY2tUb2tlbicseyBwYXJhbXMgfSk7XHQvLyDlj7jmnLrmo4Dmn6V0b2tlbuaYr+WQpui/h+acn1xyXG5cdGxldCBkaXJlY3Rpb25JbmZvID0gKGRhdGEgPSB7fSkgPT4gdm0uJHUuaHR0cC5wb3N0KCd3ZWIvY29uZmlnL2RpcmVjdGlvbkluZm8nLCBkYXRhKTtcdC8vIOi3r+W+hOinhOWIkuS/oeaBr1xyXG5cdGxldCBnZXRBcGlWZXJzaW9uID0gKHBhcmFtcyA9IHt9KSA9PiB2bS4kdS5odHRwLmdldCgnd2ViL2NvbmZpZy9nZXRBcGlWZXJzaW9uJyx7IHBhcmFtcyB9KTtcdC8vIOiOt+WPluaOpeWPo+eJiOacrFxyXG5cdGxldCBnZXRQbGF0Zm9ybUFib3V0VXMgPSAocGFyYW1zID0ge30pID0+IHZtLiR1Lmh0dHAuZ2V0KCd3ZWIvY29uZmlnL2dldFBsYXRmb3JtQWJvdXRVcycseyBwYXJhbXMgfSk7XHQvLyDojrflj5blubPlj7DlhbPkuo7miJHku6zkv6Hmga9cclxuXHRsZXQgY2hlY2tEcml2ZXJPcGVyYXRpb25SYWRpdXMgPSAoZGF0YSA9IHt9KSA9PiB2bS4kdS5odHRwLnBvc3QoJ3dlYi9jb25maWcvY2hlY2tEcml2ZXJPcGVyYXRpb25SYWRpdXMnLCBkYXRhKTtcdC8vIOWPuOacuuajgOafpeaTjeS9nOWNiuW+hFxyXG5cclxuXHR2bS4kdS5hcGkgPSB7XHJcblx0XHRnZXRCYW5uZXJMaXN0LFxyXG5cdFx0bG9naW4sXHJcblx0XHRyZWdpc3RlcixcclxuXHRcdHNlbmRDb2RlLFxyXG5cdFx0c3VibWl0VmVyaWZ5LFxyXG5cdFx0dHJlZUxpc3QsXHJcblx0XHRnZXRDYXRlZ29yeUxpc3QsXHJcblx0XHR2ZXJpZnlEZXRhaWwsXHJcblx0XHRsb2dPdXREcml2ZXIsXHJcblx0XHRzdGF0cyxcclxuXHRcdGNoYW5nZVBhc3N3b3JkLFxyXG5cdFx0Y2VudGVySW5mbyxcclxuXHRcdHVwZGF0ZUFjY2VwdGluZ1N0YXR1cyxcclxuXHRcdGRyaXZlck5vdGljZVBhZ2UsXHJcblx0XHRkcml2ZXJSZWFkQWxsTm90aWNlLFxyXG5cdFx0dXBkYXRlTG9jYXRpb24sXHJcblx0XHRkcml2ZXJTdGF0aXN0aWNzLFxyXG5cdFx0ZHJpdmVyU3VtbWFyeSxcclxuXHRcdGRyaXZlclBhZ2UsXHJcblx0XHRkcml2ZXJBcHBseSxcclxuXHRcdGdyYWJPcmRlckhhbGwsXHJcblx0XHRhY3RpdmVPcmRlcnMsXHJcblx0XHRhY3RpdmVPcmRlckNvdW50LFxyXG5cdFx0Z3JhYk9yZGVyLFxyXG5cdFx0Y2FuY2VsT3JkZXIsXHJcblx0XHRvcmRlckRldGFpbCxcclxuXHRcdGNvbmZpcm1QaWNrdXAsXHJcblx0XHRjb25maXJtRGVsaXZlcixcclxuXHRcdGNhbmNlbExpbWl0LFxyXG5cdFx0b3JkZXJQYWdlLFxyXG5cdFx0Y2hlY2tUb2tlbixcclxuXHRcdGRpcmVjdGlvbkluZm8sXHJcblx0XHRnZXRBcGlWZXJzaW9uLFxyXG5cdFx0Z2V0UGxhdGZvcm1BYm91dFVzLFxyXG5cdFx0Y2hlY2tEcml2ZXJPcGVyYXRpb25SYWRpdXNcclxuXHR9O1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCB7IGluc3RhbGwgfSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///312\n");
/***/ }),
/* 313 */