From 88345a9d3d6f7ee89f62a68255d94a2aff287293 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9DRain=E2=80=9C?= <904416525@qq.com> Date: Fri, 7 Jun 2024 18:39:05 +0800 Subject: [PATCH] 1 --- main.js | 4 ++-- unpackage/dist/dev/app-plus/app-service.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/main.js b/main.js index 87803f22..aa6bde27 100644 --- a/main.js +++ b/main.js @@ -31,8 +31,8 @@ Vue.component('uni-icons2', uniIcons2) // Vue.prototype.COMPANY = "sanjiang" //(部署三江h5需要打开/pages/projectManage/projectManage,页面onload内容) // Vue.prototype.COMPANY = "zjwj" // Vue.prototype.COMPANY = "sccr" -Vue.prototype.COMPANY = "agjt" // 鞍钢集团环境 -// Vue.prototype.COMPANY = "" // 标准版 +// Vue.prototype.COMPANY = "agjt" // 鞍钢集团环境 +Vue.prototype.COMPANY = "" // 标准版 if (process.env.NODE_ENV === 'development') { // 开发环境 console.log('开发环境') diff --git a/unpackage/dist/dev/app-plus/app-service.js b/unpackage/dist/dev/app-plus/app-service.js index 448ff1d8..c88c5566 100644 --- a/unpackage/dist/dev/app-plus/app-service.js +++ b/unpackage/dist/dev/app-plus/app-service.js @@ -7,7 +7,7 @@ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 2);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 3));\n__webpack_require__(/*! uni-pages */ 7);\n__webpack_require__(/*! @dcloudio/vue-cli-plugin-uni/packages/uni-push/dist/uni-push-v1.plus.es.js */ 2632);\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 13));\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 2633));\nvar _uviewUi = _interopRequireDefault(__webpack_require__(/*! uview-ui */ 2636));\nvar _uniIcons = _interopRequireDefault(__webpack_require__(/*! ./uni_modules/uni-icons/components/uni-icons/uni-icons.vue */ 2662));\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_vue.default.use(_uviewUi.default);\n// H5控制台**********\n// let consoleScript = document.createElement(\"script\");\n// consoleScript.src = \"https://cdn.bootcss.com/vConsole/3.3.4/vconsole.min.js\";\n// consoleScript.onload = function () {\n// new VConsole()\n// }\n// document.head.appendChild(consoleScript);\n// // H5控制台**********\n// // import VConsole from 'vconsole'//h5控制台\n// // const vConsole = new VConsole()//h5控制台\n// // Vue.use(vConsole)//h5控制台\n_vue.default.config.productionTip = false;\n// Vue.use(VueResource)\n_App.default.mpType = 'app';\n// import UniIcons from './uni_modules/uni-icons/components/uni-icons/uni-icons.vue'\n// Vue.use('UniIcons')\n// 由于引入的icons的命名会跟项目文件里的冲突,所以随便往命名加了个2,区分开来\n\n_vue.default.component('uni-icons2', _uniIcons.default);\n//全局变量\n// Vue.prototype.mobileTopHeight = uni.getMenuButtonBoundingClientRect()?uni.getMenuButtonBoundingClientRect().top:0;\n// Vue.prototype.url_config = ''\n// Vue.prototype.COMPANY = \"longguang\"\n// Vue.prototype.COMPANY = \"nanchang\"\n// Vue.prototype.COMPANY = \"sanjiang\" //(部署三江h5需要打开/pages/projectManage/projectManage,页面onload内容)\n// Vue.prototype.COMPANY = \"zjwj\"\n// Vue.prototype.COMPANY = \"sccr\"\n_vue.default.prototype.COMPANY = \"agjt\"; // 鞍钢集团环境\n// Vue.prototype.COMPANY = \"\" // 标准版\nif (true) {\n // 开发环境\n __f__(\"log\", '开发环境', \" at main.js:38\");\n // Vue.prototype.url_config = 'http://47.93.215.234:9809/' // 鞍钢正式地址(弃用)\n // Vue.prototype.url_config = 'http://42.180.188.17:9809/' // 鞍钢正式地址\n // Vue.prototype.url_config = 'http://42.180.188.17:11211/' // 鞍钢测试地址\n // Vue.prototype.url_config = 'http://182.90.224.237:51234/' //雄哥内网穿透地址\n // Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址\n // Vue.prototype.url_config = ' http://192.168.34.221:28888/' //郭圣雄本地\n _vue.default.prototype.url_config = ' http://192.168.34.221:9111/'; //郭圣雄本地\n // Vue.prototype.url_config = 'http://182.90.224.237:51234/' //郭圣雄本地\n // Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地\n // Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)\n // Vue.prototype.work_url = 'http://42.180.188.17:19997' // 工作流线上地址\n // Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址\n _vue.default.prototype.work_url = 'http://192.168.34.126:5173'; // 工作流地址\n // Vue.prototype.work_url = 'http://192.168.34.138:5173' // 工作流地址\n // Vue.prototype.work_url = 'http://139.9.66.234:5173' // 工作流地址\n // Vue.prototype.work_url = 'http://192.168.34.126:5173' // 工作流地址\n // Vue.prototype.url_config = 'http://8.142.139.165:7080/' // 湖里\n // Vue.prototype.url_config = 'http://139.9.66.234:5173/'\n // Vue.prototype.url_config = 'http://192.168.34.125:6023/'\n // Vue.prototype.url_config = 'http://182.90.224.237:7000/' //广西联通\n // Vue.prototype.url_config = 'http://124.71.67.160:8088/'//中建四局\n // Vue.prototype.url_config = 'http://192.168.34.148:6023' //广西联通/本地\n // Vue.prototype.url_config = 'http://223.82.100.80:9000/'\n // Vue.prototype.url_config = 'http://120.236.247.200:9000/'\n // Vue.prototype.url_config = 'http://zhgd.loganwy.com/'\n // Vue.prototype.url_config = 'http://183.60.227.61:30249/'\n // Vue.prototype.url_config = 'http://183.60.227.61:30249/'\n // Vue.prototype.url_config = 'http://124.71.178.44:9000/'\n // Vue.prototype.url_config = \"http://58.34.63.88:9090/\"\n // Vue.prototype.url_config = \"http://183.95.84.34:7185/\"\n // Vue.prototype.url_config = \"http://218.92.215.138:9090/\" //新佳城小区 123456\n // Vue.prototype.url_config = \"http://36.137.53.203:9090/\" //南昌地铁 gdjt 123456\n // Vue.prototype.url_config = 'http://124.71.178.44:8/'\n // Vue.prototype.url_config = 'http://124.71.87.250/'\n // Vue.prototype.url_config = 'http://124.71.178.44:8012' // 河南\n // Vue.prototype.url_config = 'http://182.90.224.147:100/' //演示平台\n // Vue.prototype.url_config = 'http://192.168.34.116:6023/'//邱平毅本地\n // Vue.prototype.url_config = 'http://182.90.224.147:18170'//瑞士恒通\n // Vue.prototype.url_config = 'https://jxjzhgd.yyvtl.com:8443/'//三江\n // Vue.prototype.url_config = 'http://192.168.34.221:30002'//郭圣熊本地\n // Vue.prototype.url_config = 'http://192.168.34.221:8188'//中建四局本地\n // Vue.prototype.url_config = 'http://101.43.164.214:12350'//中建五局\n // Vue.prototype.url_config = 'http://42.194.144.62:8088'//新中建四局地址\n // Vue.prototype.url_config = 'http://192.168.34.221:11111/'//郭圣雄三江本地\n // Vue.prototype.url_config = 'http://182.90.224.147:15551'//成润线上\n // Vue.prototype.url_config = 'http://118.121.198.147:23232'//成润正式\n // Vue.prototype.url_config = 'http://huli.zjzhiliao.com/jxjgdapi'//金林湾测试\n // Vue.prototype.url_config = 'http://8.136.222.164:8808/'//中科安信\n} else {}\n\n_vue.default.prototype.$formatDates = formatDates;\n//时间戳转换方法 date:时间戳数字\nfunction formatDates(date) {\n var fmt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-MM-dd HH:mm:ss';\n if (!date) {\n return '';\n }\n if (date.length == 10) {\n date = date * 1000;\n }\n if (typeof date === 'string') {\n date = date.replace('T', ' ').replace('Z', '');\n date = new Date(date.replace(/-/g, '/'));\n }\n if (typeof date === 'number') {\n date = new Date(date);\n }\n var o = {\n 'M+': date.getMonth() + 1,\n 'd+': date.getDate(),\n 'h+': date.getHours() % 12 === 0 ? 12 : date.getHours() % 12,\n 'H+': date.getHours(),\n 'm+': date.getMinutes(),\n 's+': date.getSeconds(),\n 'q+': Math.floor((date.getMonth() + 3) / 3),\n 'S': date.getMilliseconds()\n };\n var week = {\n '0': \"\\u65E5\",\n '1': \"\\u4E00\",\n '2': \"\\u4E8C\",\n '3': \"\\u4E09\",\n '4': \"\\u56DB\",\n '5': \"\\u4E94\",\n '6': \"\\u516D\"\n };\n if (/(y+)/.test(fmt)) {\n fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));\n }\n if (/(E+)/.test(fmt)) {\n fmt = fmt.replace(RegExp.$1, (RegExp.$1.length > 1 ? RegExp.$1.length > 2 ? \"\\u661F\\u671F\" : \"\\u5468\" : '') + week[date.getDay() + '']);\n }\n for (var k in o) {\n if (new RegExp('(' + k + ')').test(fmt)) {\n fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));\n }\n }\n return fmt;\n}\n_vue.default.prototype.sendRequest = function (param) {\n var _self = this,\n url = param.url,\n method = param.method,\n header = param.header || {\n 'content-type': \"application/json\"\n },\n data = param.data || {},\n token = \"\",\n isalert = param.isalert || false,\n hideLoading = param.hideLoading || false;\n\n //拼接完整请求地址\n var requestUrl = _vue.default.prototype.url_config + url + '?lang=' + uni.getStorageSync('language');\n if (uni.getStorageSync('userInfo') && url != 'xmgl/base/login' && url != 'xmgl/wirelessEducationQuestionSubject/getDeviceRandomEducationQuestion' && url != 'xmgl/wirelessEducationQuestionAnswer/add' && url != 'xmgl/safeEducationQuestionAnswer/getAnswerWorkerInfo' && url != 'xmgl/safeEducationQuestionAnswer/add' && url != 'xmgl/safeEducationQuestion/selectSafeEducationQuestionInfo') {\n if (JSON.parse(uni.getStorageSync('userInfo')).token) {\n token = \"Bearer \" + JSON.parse(uni.getStorageSync('userInfo')).token;\n header[\"Authorization\"] = token;\n __f__(\"log\", \"网络请求 token :\" + token, \" at main.js:214\");\n }\n }\n\n // var timestamp = Date.parse(new Date());//时间戳\n // data[\"timestamp\"] = timestamp;\n\n // data[\"device\"] = \"iosapp\";\n // data[\"ver\"] = \"1.0.0\";\n\n if (method) {\n method = method.toUpperCase(); //小写改为大写\n }\n //加密sessionStorage.getItem(\"loginData\")\n // if (uni.getStorageSync(\"loginData\") && data != {}) {\n // \tconsole.log(url+\"参数\");\n // \tconsole.log(data);\n // \tdata = encryptByDES(data);\n // }\n //用户交互:加载圈\n if (!hideLoading) {\n uni.showLoading({\n title: '加载中...'\n });\n }\n // console.log(requestUrl, \"网络请求start\");\n // console.log(data, \"网络请求data====================\");\n //网络请求\n uni.request({\n url: requestUrl,\n method: method,\n header: header,\n data: data,\n success: function success(res) {\n // console.log(\"网络请求success:\" + JSON.stringify(res.data));\n\n if (res.data.code && res.data.code != 200) {\n if (res.data.code == 401 || res.data.code == 403) {\n uni.showToast({\n title: '登录过期,请重新登录',\n icon: \"none\"\n });\n setTimeout(function () {\n uni.removeStorageSync('userInfo');\n uni.redirectTo({\n url: '/pages/login/login.vue'\n });\n }, 1000);\n } else {\n setTimeout(function () {\n if (!isalert) {\n uni.showToast({\n title: res.data.message,\n icon: \"none\"\n });\n }\n }, 200);\n }\n typeof param.error == \"function\" && param.error(Data);\n return;\n }\n var Data = res.data;\n // if (res.data.data && res.data.data.requestData) {\n // \tlet data = decryptByDES(\n // \t\tres.data.data.requestData,\n // \t\tres.data.data.encrypted\n // \t);\n // \tData.data = JSON.parse(data);\n // \tconsole.log(url + \"解密后的数据\");\n // \tconsole.log(Data);\n // }\n typeof param.success == \"function\" && param.success(Data);\n },\n fail: function fail(e) {\n __f__(\"log\", \"网络请求fail:\" + JSON.stringify(e), \" at main.js:293\");\n __f__(\"log\", requestUrl, \"requestUrl\", \" at main.js:294\");\n // uni.showModal({\n // \tcontent: \"\" + e.errMsg\n // });\n uni.showToast({\n title: '服务器开小差了呢,请您稍后再试',\n icon: 'none'\n });\n typeof param.fail == \"function\" && param.fail(e.data);\n },\n complete: function complete() {\n if (!hideLoading) {\n uni.hideLoading();\n }\n typeof param.complete == \"function\" && param.complete();\n return;\n }\n });\n};\n// 判断按钮权限的函数\n_vue.default.prototype.checkBtnPermission = function (permission) {\n var permissions = JSON.parse(uni.getStorageSync(\"userInfo\")).menuAuthority.menuList;\n // var permissions = store.state.userInfo.menuAuthority.menuList;\n permissions = permissions.filter(function (x) {\n return x.path == permission.menuPath;\n })[0];\n __f__(\"log\", permissions, '按钮权限', \" at main.js:320\");\n if (!permissions || !permissions.actionList) {\n return false;\n }\n var index = permissions.actionList.findIndex(function (x) {\n return x.actionCode == permission.key;\n });\n return index != -1 ? true : false;\n};\n_vue.default.prototype.checkMenuPermission = function (permission) {\n var permissions = JSON.parse(uni.getStorageSync(\"userInfo\")).menuAuthority.menuList;\n // var permissions = store.state.userInfo.menuAuthority.menuList;\n permissions = permissions.filter(function (x) {\n return x.path == permission.menuPath;\n })[0];\n if (!permissions) {\n return false;\n } else {\n return true;\n }\n};\nvar app = new _vue.default(_objectSpread({}, _App.default));\napp.$mount();\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJ1VmlldyIsImNvbmZpZyIsInByb2R1Y3Rpb25UaXAiLCJBcHAiLCJtcFR5cGUiLCJjb21wb25lbnQiLCJ1bmlJY29uczIiLCJwcm90b3R5cGUiLCJDT01QQU5ZIiwicHJvY2VzcyIsInVybF9jb25maWciLCJ3b3JrX3VybCIsIiRmb3JtYXREYXRlcyIsImZvcm1hdERhdGVzIiwiZGF0ZSIsImZtdCIsImxlbmd0aCIsInJlcGxhY2UiLCJEYXRlIiwibyIsImdldE1vbnRoIiwiZ2V0RGF0ZSIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsImdldFNlY29uZHMiLCJNYXRoIiwiZmxvb3IiLCJnZXRNaWxsaXNlY29uZHMiLCJ3ZWVrIiwidGVzdCIsIlJlZ0V4cCIsIiQxIiwiZ2V0RnVsbFllYXIiLCJzdWJzdHIiLCJnZXREYXkiLCJrIiwic2VuZFJlcXVlc3QiLCJwYXJhbSIsIl9zZWxmIiwidXJsIiwibWV0aG9kIiwiaGVhZGVyIiwiZGF0YSIsInRva2VuIiwiaXNhbGVydCIsImhpZGVMb2FkaW5nIiwicmVxdWVzdFVybCIsInVuaSIsImdldFN0b3JhZ2VTeW5jIiwiSlNPTiIsInBhcnNlIiwidG9VcHBlckNhc2UiLCJzaG93TG9hZGluZyIsInRpdGxlIiwicmVxdWVzdCIsInN1Y2Nlc3MiLCJyZXMiLCJjb2RlIiwic2hvd1RvYXN0IiwiaWNvbiIsInNldFRpbWVvdXQiLCJyZW1vdmVTdG9yYWdlU3luYyIsInJlZGlyZWN0VG8iLCJtZXNzYWdlIiwiZXJyb3IiLCJEYXRhIiwiZmFpbCIsImUiLCJzdHJpbmdpZnkiLCJjb21wbGV0ZSIsImNoZWNrQnRuUGVybWlzc2lvbiIsInBlcm1pc3Npb24iLCJwZXJtaXNzaW9ucyIsIm1lbnVBdXRob3JpdHkiLCJtZW51TGlzdCIsImZpbHRlciIsIngiLCJwYXRoIiwibWVudVBhdGgiLCJhY3Rpb25MaXN0IiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJh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eEQsSUFBSUMsV0FBVyxHQUFHdkIsSUFBSSxDQUFDQyxLQUFLLENBQUNILEdBQUcsQ0FBQ0MsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUN5QixhQUFhLENBQUNDLFFBQVE7RUFDbkY7RUFDQUYsV0FBVyxHQUFHQSxXQUFXLENBQUNHLE1BQU0sQ0FDL0IsVUFBQ0MsQ0FBQztJQUFBLE9BQUtBLENBQUMsQ0FBQ0MsSUFBSSxJQUFJTixVQUFVLENBQUNPLFFBQVE7RUFBQSxFQUNwQyxDQUFDLENBQUMsQ0FBQztFQUNKLElBQUksQ0FBQ04sV0FBVyxFQUFFO0lBQ2pCLE9BQU8sS0FBSztFQUNiLENBQUMsTUFBTTtJQUNOLE9BQU8sSUFBSTtFQUNaO0FBQ0QsQ0FBQztBQUNELElBQU1hLEdBQUcsR0FBRyxJQUFJdkYsWUFBRyxtQkFDZkssWUFBRyxFQUNMO0FBQ0ZrRixHQUFHLENBQUNDLE1BQU0sRUFBRSxDIiwiZmlsZSI6IjAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3VuaS1wYWdlcyc7O2ltcG9ydCAnQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy91bmktcHVzaC9kaXN0L3VuaS1wdXNoLXYxLnBsdXMuZXMuanMnO2ltcG9ydCBWdWUgZnJvbSAndnVlJ1xyXG5pbXBvcnQgQXBwIGZyb20gJy4vQXBwJ1xyXG4vLyBpbXBvcnQgVnVlUmVzb3VyY2UgZnJvbSBcInZ1ZS1yZXNvdXJjZVwiO1xyXG4vLyBtYWluLmpzXHJcbmltcG9ydCB1VmlldyBmcm9tIFwidXZpZXctdWlcIjtcclxuVnVlLnVzZSh1Vmlldyk7XHJcbi8vICBINeaOp+WItuWPsCoqKioqKioqKipcclxuLy8gbGV0IGNvbnNvbGVTY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpO1xyXG4vLyBjb25zb2xlU2NyaXB0LnNyYyA9IFwiaHR0cHM6Ly9jZG4uYm9vdGNzcy5jb20vdkNvbnNvbGUvMy4zLjQvdmNvbnNvbGUubWluLmpzXCI7XHJcbi8vIGNvbnNvbGVTY3JpcHQub25sb2FkID0gZnVuY3Rpb24gKCkge1xyXG4vLyAgIG5ldyBWQ29uc29sZSgpXHJcbi8vIH1cclxuLy8gZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjb25zb2xlU2NyaXB0KTtcclxuLy8gLy8gIEg15o6n5Yi25Y+wKioqKioqKioqKlxyXG4vLyAvLyBpbXBvcnQgVkNvbnNvbGUgZnJvbSAndmNvbnNvbGUnLy9oNeaOp+WItuWPsFxyXG4vLyAvLyBjb25zdCB2Q29uc29sZSA9IG5ldyBWQ29uc29sZSgpLy9oNeaOp+WItuWPsFxyXG4vLyAvLyBWdWUudXNlKHZDb25zb2xlKS8vaDXmjqfliLblj7BcclxuVnVlLmNvbmZpZy5wcm9kdWN0aW9uVGlwID0gZmFsc2VcclxuLy8gVnVlLnVzZShWdWVSZXNvdXJjZSlcclxuQXBwLm1wVHlwZSA9ICdhcHAnXHJcbi8vIGltcG9ydCBVbmlJY29ucyBmcm9tICcuL3VuaV9tb2R1bGVzL3VuaS1pY29ucy9jb21wb25lbnRzL3VuaS1pY29ucy91bmktaWNvbnMudnVlJ1xyXG4vLyBWdWUudXNlKCdVbmlJY29ucycpXHJcbi8vIOeUseS6juW8leWFpeeahGljb25z55qE5ZG95ZCN5Lya6Lef6aG555uu5paH5Lu26YeM55qE5Yay56qB77yM5omA5Lul6ZqP5L6/5b6A5ZG95ZCN5Yqg5LqG5LiqMu+8jOWMuuWIhuW8gOadpVxyXG5pbXBvcnQgdW5pSWNvbnMyIGZyb20gJy4vdW5pX21vZHVsZXMvdW5pLWljb25zL2NvbXBvbmVudHMvdW5pLWljb25zL3VuaS1pY29ucy52dWUnXHJcblZ1ZS5jb21wb25lbnQoJ3VuaS1pY29uczInLCB1bmlJY29uczIpXHJcbi8v5YWo5bGA5Y+Y6YePXHJcbi8vIFZ1ZS5wcm90b3R5cGUubW9iaWxlVG9wSGVpZ2h0ID0gdW5pLmdldE1lbnVCdXR0b25Cb3VuZGluZ0NsaWVudFJlY3QoKT91bmkuZ2V0TWVudUJ1dHRvbkJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDowO1xyXG4vLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnJ1xyXG4vLyBWdWUucHJvdG90eXBlLkNPTVBBTlkgPSBcImxvbmdndWFuZ1wiXHJcbi8vIFZ1ZS5wcm90b3R5cGUuQ09NUEFOWSA9IFwibmFuY2hhbmdcIlxyXG4vLyBWdWUucHJvdG90eXBlLkNPTVBBTlkgPSBcInNhbmppYW5nXCIgLy/vvIjpg6jnvbLkuInmsZ9oNemcgOimgeaJk+W8gC9wYWdlcy9wcm9qZWN0TWFuYWdlL3Byb2plY3RNYW5hZ2XvvIzpobXpnaJvbmxvYWTlhoXlrrnvvIlcclxuLy8gVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJ6andqXCJcclxuLy8gVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJzY2NyXCJcclxuVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJhZ2p0XCIgLy8g6Z6N6ZKi6ZuG5Zui546v5aKDXHJcbi8vIFZ1ZS5wcm90b3R5cGUuQ09NUEFOWSA9IFwiXCIgLy8g5qCH5YeG54mIXHJcbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xyXG5cdC8vIOW8gOWPkeeOr+Wig1xyXG5cdGNvbnNvbGUubG9nKCflvIDlj5Hnjq/looMnKVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDcuOTMuMjE1LjIzNDo5ODA5LycgLy8g6Z6N6ZKi5q2j5byP5Zyw5Z2A77yI5byD55So77yJXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3Ojk4MDkvJyAvLyDpno3pkqLmraPlvI/lnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTEyMTEvJyAvLyDpno3pkqLmtYvor5XlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMjM3OjUxMjM0LycgLy/pm4Tlk6XlhoXnvZHnqb/pgI/lnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL2p4ai56aGdkeXVuLmNvbTo2MTIxMi8nIC8v5p2w5ZOl5YaF572R56m/6YCP5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJyBodHRwOi8vMTkyLjE2OC4zNC4yMjE6Mjg4ODgvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICcgaHR0cDovLzE5Mi4xNjguMzQuMjIxOjkxMTEvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NTEyMzQvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xNTU6MTkxMTEvJyAvL+W9rea0geacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQ3LjkzLjIxNS4yMzQ6MTk5OTcnIC8vIOW3peS9nOa1gee6v+S4iuWcsOWdgO+8iOW8g+eUqO+8iVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTk5OTcnIC8vIOW3peS9nOa1gee6v+S4iuWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTkwOTcnIC8vIOW3peS9nOa1gea1i+ivleWcsOWdgFxyXG5cdFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI2OjUxNzMnIC8vIOW3peS9nOa1geWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTM4OjUxNzMnIC8vIOW3peS9nOa1geWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzEzOS45LjY2LjIzNDo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjEyNjo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzguMTQyLjEzOS4xNjU6NzA4MC8nIC8vIOa5lumHjFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTM5LjkuNjYuMjM0OjUxNzMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xMjU6NjAyMy8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xODIuOTAuMjI0LjIzNzo3MDAwLycgLy/lub/opb/ogZTpgJpcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS42Ny4xNjA6ODA4OC8nLy/kuK3lu7rlm5vlsYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTQ4OjYwMjMnIC8v5bm/6KW/6IGU6YCaL+acrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMjIzLjgyLjEwMC44MDo5MDAwLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyMC4yMzYuMjQ3LjIwMDo5MDAwLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL3poZ2QubG9nYW53eS5jb20vJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjYwLjIyNy42MTozMDI0OS8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xODMuNjAuMjI3LjYxOjMwMjQ5LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS4xNzguNDQ6OTAwMC8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vNTguMzQuNjMuODg6OTA5MC9cIlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9IFwiaHR0cDovLzE4My45NS44NC4zNDo3MTg1L1wiXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMjE4LjkyLjIxNS4xMzg6OTA5MC9cIiAgIC8v5paw5L2z5Z+O5bCP5Yy6ICAgMTIzNDU2XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMzYuMTM3LjUzLjIwMzo5MDkwL1wiICAvL+WNl+aYjOWcsOmTgSAgZ2RqdCAgIDEyMzQ1NlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTI0LjcxLjE3OC40NDo4LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS44Ny4yNTAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTI0LjcxLjE3OC40NDo4MDEyJyAvLyDmsrPljZdcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjEwMC8nIC8v5ryU56S65bmz5Y+wXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjExNjo2MDIzLycvL+mCseW5s+avheacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4xNDc6MTgxNzAnLy/nkZ7lo6vmgZLpgJpcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgID0gJ2h0dHBzOi8vanhqemhnZC55eXZ0bC5jb206ODQ0My8nLy/kuInmsZ9cclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjMwMDAyJy8v6YOt5Zyj54aK5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTo4MTg4Jy8v5Lit5bu65Zub5bGA5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMjM1MCcvL+S4reW7uuS6lOWxgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDIuMTk0LjE0NC42Mjo4MDg4Jy8v5paw5Lit5bu65Zub5bGA5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMToxMTExMS8nLy/pg63lnKPpm4TkuInmsZ/mnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjE1NTUxJy8v5oiQ5ram57q/5LiKXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMTguMTIxLjE5OC4xNDc6MjMyMzInLy/miJDmtqbmraPlvI9cclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL2h1bGkuemp6aGlsaWFvLmNvbS9qeGpnZGFwaScvL+mHkeael+a5vua1i+ivlVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vOC4xMzYuMjIyLjE2NDo4ODA4LycvL+S4reenkeWuieS/oVxyXG5cdFxyXG5cclxufSBlbHNlIHtcclxuXHQvLyDnlJ/kuqfnjq/looNcclxuXHRjb25zb2xlLmxvZygn55Sf5Lqn546v5aKDJylcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEwLjE2OC4xLjEwNToxMTExMS8nIC8vIOe6v+S4iuWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTAuMTY4LjEuMTA0OjExMTExLycgLy8g57q/5LiK5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly80Ny45My4yMTUuMjM0Ojk4MDkvJyAvLyDpno3pkqLnur/kuIrlnLDlnYDvvIjlvIPnlKjvvIlcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6OTgwOS8nIC8vIOmejemSoue6v+S4iuWcsOWdgFxyXG5cdFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDIuMTgwLjE4OC4xNzoxMTIxMS8nIC8vIOmejemSoue6v+S4iua1i+ivleWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NTEyMzQvJyAvLyDnmb7oibLkuInmoIfmrrVcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjkxMTEvJyAvLyDnmb7oibLkuInmoIfmrrVcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Ny45My4yMTUuMjM0OjE5OTk3JyAvLyDlt6XkvZzmtYHnur/kuIrlnLDlnYDvvIjlvIPnlKjvvIlcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3OjE5OTk3JyAvLyDlt6XkvZzmtYHnur/kuIrlnLDlnYBcclxuXHRWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3OjE5MDk3JyAvLyDlt6XkvZzmtYHmtYvor5XlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjEzOTo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjEwMC8nIC8v5ryU56S65bmz5Y+wXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0naHR0cDovLzEyNC43MS4xNzguNDQ6ODAxMi8nIC8vIOays+WNl1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vOC4xNDIuMTM5LjE2NTo3MDgwLycgLy/muZbph4xcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEzOS45LjY2LjIzNDo4LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI1OjYwMjMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NzAwMC8nIC8v5bm/6KW/6IGU6YCaXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMjQuNzEuNjcuMTYwOjgwODgvJyAvL+S4reW7uuWbm+WxgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xNDg6NjAyMycgLy/lub/opb/ogZTpgJov5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8yMjMuODIuMTAwLjgwOjkwMDAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTIwLjIzNi4yNDcuMjAwOjkwMDAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9IFwiaHR0cDovLzU4LjM0LjYzLjg4OjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS4xNzguNDQ6OTAwMC8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMTgzLjk1Ljg0LjM0OjcxODUvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSBcImh0dHA6Ly8zNi4xMzcuNTMuMjAzOjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI1OjYwMjMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjYwLjIyNy42MTozMDI0OS8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly96aGdkLmxvZ2Fud3kuY29tLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSBcImh0dHA6Ly8zNi4xMzcuNTMuMjAzOjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS44Ny4yNTAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xMTY6NjAyMy8nLy/pgrHlubPmr4XmnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjE4MTcwLycvL+eRnuWjq+aBkumAmlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwczovL2p4anpoZ2QueXl2dGwuY29tOjg0NDMvJy8v5LiJ5rGfXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTo4MTg4LycvL+S4reW7uuWbm+WxgOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZz0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMjM1MC8nLy/kuK3lu7rkupTlsYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE5NC4xNDQuNjI6ODA4OC8nLy/mlrDkuK3lu7rlm5vlsYDlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjExMTExLycvL+mDreWco+mbhOS4ieaxn+acrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4xNDc6MTU1NTEvJy8v5oiQ5ram57q/5LiKXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMTguMTIxLjE5OC4xNDc6MjMyMzIvJy8v5oiQ5ram5q2j5byPXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTozMDAwMi8nLy/pg63lnKPpm4TmnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEwMS40My4xNjQuMjE0OjQ1MDIyLycvL+ebmOmUplxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjI0OS4yMjQuMTE4OjkwMDAvJy8vIOWYieWFtOmhueebrlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vanhqLnpoZ2R5dW4uY29tOjMwMjUwLyMvJy8vIOa8lOekuuW5s+WPsEg1XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMTExMS8nLy8g55m+6Imy5LiJ5qCH5q61XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly84LjEzNi4yMjIuMTY0Ojg4MDgvJy8v5Lit56eR5a6J5L+hXHJcbn1cclxuXHJcblZ1ZS5wcm90b3R5cGUuJGZvcm1hdERhdGVzID0gZm9ybWF0RGF0ZXM7XHJcbi8v5pe26Ze05oiz6L2s5o2i5pa55rOVICAgIGRhdGU65pe26Ze05oiz5pWw5a2XXHJcbmZ1bmN0aW9uIGZvcm1hdERhdGVzKGRhdGUsIGZtdCA9ICd5eXl5LU1NLWRkIEhIOm1tOnNzJykge1xyXG5cclxuXHRpZiAoIWRhdGUpIHtcclxuXHRcdHJldHVybiAnJ1xyXG5cdH1cclxuXHRpZiAoZGF0ZS5sZW5ndGggPT0gMTApIHtcclxuXHRcdGRhdGUgPSBkYXRlICogMTAwMDtcclxuXHR9XHJcblx0aWYgKHR5cGVvZiBkYXRlID09PSAnc3RyaW5nJykge1xyXG5cdFx0ZGF0ZSA9IGRhdGUucmVwbGFjZSgnVCcsICcgJykucmVwbGFjZSgnWicsICcnKTtcclxuXHRcdGRhdGUgPSBuZXcgRGF0ZShkYXRlLnJlcGxhY2UoLy0vZywgJy8nKSlcclxuXHR9XHJcblx0aWYgKHR5cGVvZiBkYXRlID09PSAnbnVtYmVyJykge1xyXG5cdFx0ZGF0ZSA9IG5ldyBEYXRlKGRhdGUpXHJcblx0fVxyXG5cdHZhciBvID0ge1xyXG5cdFx0J00rJzogZGF0ZS5nZXRNb250aCgpICsgMSxcclxuXHRcdCdkKyc6IGRhdGUuZ2V0RGF0ZSgpLFxyXG5cdFx0J2grJzogZGF0ZS5nZXRIb3VycygpICUgMTIgPT09IDAgPyAxMiA6IGRhdGUuZ2V0SG91cnMoKSAlIDEyLFxyXG5cdFx0J0grJzogZGF0ZS5nZXRIb3VycygpLFxyXG5cdFx0J20rJzogZGF0ZS5nZXRNaW51dGVzKCksXHJcblx0XHQncysnOiBkYXRlLmdldFNlY29uZHMoKSxcclxuXHRcdCdxKyc6IE1hdGguZmxvb3IoKGRhdGUuZ2V0TW9udGgoKSArIDMpIC8gMyksXHJcblx0XHQnUyc6IGRhdGUuZ2V0TWlsbGlzZWNvbmRzKClcclxuXHR9XHJcblx0dmFyIHdlZWsgPSB7XHJcblx0XHQnMCc6ICdcXHU2NWU1JyxcclxuXHRcdCcxJzogJ1xcdTRlMDAnLFxyXG5cdFx0JzInOiAnXFx1NGU4YycsXHJcblx0XHQnMyc6ICdcXHU0ZTA5JyxcclxuXHRcdCc0JzogJ1xcdTU2ZGInLFxyXG5cdFx0JzUnOiAnXFx1NGU5NCcsXHJcblx0XHQnNic6ICdcXHU1MTZkJ1xyXG5cdH1cclxuXHRpZiAoLyh5KykvLnRlc3QoZm10KSkge1xyXG5cdFx0Zm10ID0gZm10LnJlcGxhY2UoUmVnRXhwLiQxLCAoZGF0ZS5nZXRGdWxsWWVhcigpICsgJycpLnN1YnN0cig0IC0gUmVnRXhwLiQxLmxlbmd0aCkpXHJcblx0fVxyXG5cdGlmICgvKEUrKS8udGVzdChmbXQpKSB7XHJcblx0XHRmbXQgPSBmbXQucmVwbGFjZShSZWdFeHAuJDEsICgoUmVnRXhwLiQxLmxlbmd0aCA+IDEpID8gKFJlZ0V4cC4kMS5sZW5ndGggPiAyID8gJ1xcdTY2MWZcXHU2NzFmJyA6ICdcXHU1NDY4JykgOlxyXG5cdFx0XHRcdCcnKSArXHJcblx0XHRcdHdlZWtbZGF0ZS5nZXREYXkoKSArICcnXSlcclxuXHR9XHJcblx0Zm9yICh2YXIgayBpbiBvKSB7XHJcblx0XHRpZiAobmV3IFJlZ0V4cCgnKCcgKyBrICsgJyknKS50ZXN0KGZtdCkpIHtcclxuXHRcdFx0Zm10ID0gZm10LnJlcGxhY2UoUmVnRXhwLiQxLCAoUmVnRXhwLiQxLmxlbmd0aCA9PT0gMSkgPyAob1trXSkgOiAoKCcwMCcgKyBvW2tdKS5zdWJzdHIoKCcnICsgb1trXSkubGVuZ3RoKSkpXHJcblx0XHR9XHJcblx0fVxyXG5cdHJldHVybiBmbXRcclxufVxyXG5cclxuVnVlLnByb3RvdHlwZS5zZW5kUmVxdWVzdCA9IGZ1bmN0aW9uKHBhcmFtKSB7XHJcblx0dmFyIF9zZWxmID0gdGhpcyxcclxuXHRcdHVybCA9IHBhcmFtLnVybCxcclxuXHRcdG1ldGhvZCA9IHBhcmFtLm1ldGhvZCxcclxuXHRcdGhlYWRlciA9IHBhcmFtLmhlYWRlciB8fCB7XHJcblx0XHRcdCdjb250ZW50LXR5cGUnOiBcImFwcGxpY2F0aW9uL2pzb25cIlxyXG5cdFx0fSxcclxuXHJcblx0XHRkYXRhID0gcGFyYW0uZGF0YSB8fCB7fSxcclxuXHRcdHRva2VuID0gXCJcIixcclxuXHRcdGlzYWxlcnQgPSBwYXJhbS5pc2FsZXJ0IHx8IGZhbHNlLFxyXG5cdFx0aGlkZUxvYWRpbmcgPSBwYXJhbS5oaWRlTG9hZGluZyB8fCBmYWxzZTtcclxuXHJcblx0Ly/mi7zmjqXlrozmlbTor7fmsYLlnLDlnYBcclxuXHR2YXIgcmVxdWVzdFVybCA9IFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyArIHVybCArICc/bGFuZz0nICsgdW5pLmdldFN0b3JhZ2VTeW5jKCdsYW5ndWFnZScpO1xyXG5cdGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJykgJiYgdXJsICE9ICd4bWdsL2Jhc2UvbG9naW4nICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvd2lyZWxlc3NFZHVjYXRpb25RdWVzdGlvblN1YmplY3QvZ2V0RGV2aWNlUmFuZG9tRWR1Y2F0aW9uUXVlc3Rpb24nICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvd2lyZWxlc3NFZHVjYXRpb25RdWVzdGlvbkFuc3dlci9hZGQnICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvc2FmZUVkdWNhdGlvblF1ZXN0aW9uQW5zd2VyL2dldEFuc3dlcldvcmtlckluZm8nICYmIHVybCAhPSAneG1nbC9zYWZlRWR1Y2F0aW9uUXVlc3Rpb25BbnN3ZXIvYWRkJyAmJlxyXG5cdFx0dXJsICE9ICd4bWdsL3NhZmVFZHVjYXRpb25RdWVzdGlvbi9zZWxlY3RTYWZlRWR1Y2F0aW9uUXVlc3Rpb25JbmZvJykge1xyXG5cdFx0aWYgKEpTT04ucGFyc2UodW5pLmdldFN0b3JhZ2VTeW5jKCd1c2VySW5mbycpKS50b2tlbikge1xyXG5cdFx0XHR0b2tlbiA9IFwiQmVhcmVyIFwiICsgSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJykpLnRva2VuO1xyXG5cdFx0XHRoZWFkZXJbXCJBdXRob3JpemF0aW9uXCJdID0gdG9rZW5cclxuXHRcdFx0Y29uc29sZS5sb2coXCLnvZHnu5zor7fmsYIgdG9rZW4gOlwiICsgdG9rZW4pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ly8gdmFyIHRpbWVzdGFtcCA9IERhdGUucGFyc2UobmV3IERhdGUoKSk7Ly/ml7bpl7TmiLNcclxuXHQvLyBkYXRhW1widGltZXN0YW1wXCJdID0gdGltZXN0YW1wO1xyXG5cclxuXHJcblxyXG5cclxuXHJcblx0Ly8gZGF0YVtcImRldmljZVwiXSA9IFwiaW9zYXBwXCI7XHJcblx0Ly8gZGF0YVtcInZlclwiXSA9IFwiMS4wLjBcIjtcclxuXHJcblx0aWYgKG1ldGhvZCkge1xyXG5cdFx0bWV0aG9kID0gbWV0aG9kLnRvVXBwZXJDYXNlKCk7IC8v5bCP5YaZ5pS55Li65aSn5YaZXHJcblx0fVxyXG5cdC8v5Yqg5a+Gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImxvZ2luRGF0YVwiKVxyXG5cdC8vIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJsb2dpbkRhdGFcIikgJiYgZGF0YSAhPSB7fSkge1xyXG5cdC8vIFx0Y29uc29sZS5sb2codXJsK1wi5Y+C5pWwXCIpO1xyXG5cdC8vIFx0Y29uc29sZS5sb2coZGF0YSk7XHJcblx0Ly8gXHRkYXRhID0gZW5jcnlwdEJ5REVTKGRhdGEpO1xyXG5cdC8vIH1cclxuXHQvL+eUqOaIt+S6pOS6kjrliqDovb3lnIhcclxuXHRpZiAoIWhpZGVMb2FkaW5nKSB7XHJcblx0XHR1bmkuc2hvd0xvYWRpbmcoe1xyXG5cdFx0XHR0aXRsZTogJ+WKoOi9veS4rS4uLidcclxuXHRcdH0pO1xyXG5cdH1cclxuXHQvLyBjb25zb2xlLmxvZyhyZXF1ZXN0VXJsLCBcIue9kee7nOivt+axgnN0YXJ0XCIpO1xyXG5cdC8vIGNvbnNvbGUubG9nKGRhdGEsIFwi572R57uc6K+35rGCZGF0YT09PT09PT09PT09PT09PT09PT09XCIpO1xyXG5cdC8v572R57uc6K+35rGCXHJcblx0dW5pLnJlcXVlc3Qoe1xyXG5cdFx0dXJsOiByZXF1ZXN0VXJsLFxyXG5cdFx0bWV0aG9kOiBtZXRob2QsXHJcblx0XHRoZWFkZXI6IGhlYWRlcixcclxuXHRcdGRhdGE6IGRhdGEsXHJcblx0XHRzdWNjZXNzOiByZXMgPT4ge1xyXG5cdFx0XHQvLyBjb25zb2xlLmxvZyhcIue9kee7nOivt+axgnN1Y2Nlc3M6XCIgKyBKU09OLnN0cmluZ2lmeShyZXMuZGF0YSkpO1xyXG5cclxuXHRcdFx0aWYgKHJlcy5kYXRhLmNvZGUgJiYgcmVzLmRhdGEuY29kZSAhPSAyMDApIHtcclxuXHRcdFx0XHRpZiAocmVzLmRhdGEuY29kZSA9PSA0MDEgfHwgcmVzLmRhdGEuY29kZSA9PSA0MDMpIHtcclxuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+eZu+W9lei/h+acnyzor7fph43mlrDnmbvlvZUnLFxyXG5cdFx0XHRcdFx0XHRpY29uOiBcIm5vbmVcIlxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHRcdHVuaS5yZW1vdmVTdG9yYWdlU3luYygndXNlckluZm8nKVxyXG5cdFx0XHRcdFx0XHR1bmkucmVkaXJlY3RUbyh7XHJcblx0XHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2xvZ2luL2xvZ2luLnZ1ZSdcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH0sIDEwMDApXHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHRcdGlmICghaXNhbGVydCkge1xyXG5cdFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHRcdFx0dGl0bGU6IHJlcy5kYXRhLm1lc3NhZ2UsXHJcblx0XHRcdFx0XHRcdFx0XHRpY29uOiBcIm5vbmVcIlxyXG5cdFx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0sIDIwMClcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHR5cGVvZiBwYXJhbS5lcnJvciA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uZXJyb3IoRGF0YSk7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHRcdGxldCBEYXRhID0gcmVzLmRhdGE7XHJcblx0XHRcdC8vIGlmIChyZXMuZGF0YS5kYXRhICYmIHJlcy5kYXRhLmRhdGEucmVxdWVzdERhdGEpIHtcclxuXHRcdFx0Ly8gXHRsZXQgZGF0YSA9IGRlY3J5cHRCeURFUyhcclxuXHRcdFx0Ly8gXHRcdHJlcy5kYXRhLmRhdGEucmVxdWVzdERhdGEsXHJcblx0XHRcdC8vIFx0XHRyZXMuZGF0YS5kYXRhLmVuY3J5cHRlZFxyXG5cdFx0XHQvLyBcdCk7XHJcblx0XHRcdC8vIFx0RGF0YS5kYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcclxuXHRcdFx0Ly8gXHRjb25zb2xlLmxvZyh1cmwgKyBcIuino+WvhuWQjueahOaVsOaNrlwiKTtcclxuXHRcdFx0Ly8gXHRjb25zb2xlLmxvZyhEYXRhKTtcclxuXHRcdFx0Ly8gfVxyXG5cdFx0XHR0eXBlb2YgcGFyYW0uc3VjY2VzcyA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uc3VjY2VzcyhEYXRhKTtcclxuXHRcdH0sXHJcblx0XHRmYWlsOiAoZSkgPT4ge1xyXG5cdFx0XHRjb25zb2xlLmxvZyhcIue9kee7nOivt+axgmZhaWw6XCIgKyBKU09OLnN0cmluZ2lmeShlKSk7XHJcblx0XHRcdGNvbnNvbGUubG9nKHJlcXVlc3RVcmwsIFwicmVxdWVzdFVybFwiKTtcclxuXHRcdFx0Ly8gdW5pLnNob3dNb2RhbCh7XHJcblx0XHRcdC8vIFx0Y29udGVudDogXCJcIiArIGUuZXJyTXNnXHJcblx0XHRcdC8vIH0pO1xyXG5cdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHR0aXRsZTogJ+acjeWKoeWZqOW8gOWwj+W3ruS6huWRou+8jOivt+aCqOeojeWQjuWGjeivlScsXHJcblx0XHRcdFx0aWNvbjogJ25vbmUnXHJcblx0XHRcdH0pXHJcblx0XHRcdHR5cGVvZiBwYXJhbS5mYWlsID09IFwiZnVuY3Rpb25cIiAmJiBwYXJhbS5mYWlsKGUuZGF0YSk7XHJcblx0XHR9LFxyXG5cdFx0Y29tcGxldGU6ICgpID0+IHtcclxuXHRcdFx0aWYgKCFoaWRlTG9hZGluZykge1xyXG5cdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHR5cGVvZiBwYXJhbS5jb21wbGV0ZSA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uY29tcGxldGUoKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdH0pO1xyXG59XHJcbi8vIOWIpOaWreaMiemSruadg+mZkOeahOWHveaVsFxyXG5WdWUucHJvdG90eXBlLmNoZWNrQnRuUGVybWlzc2lvbiA9IGZ1bmN0aW9uKHBlcm1pc3Npb24pIHtcclxuXHR2YXIgcGVybWlzc2lvbnMgPSBKU09OLnBhcnNlKHVuaS5nZXRTdG9yYWdlU3luYyhcInVzZXJJbmZvXCIpKS5tZW51QXV0aG9yaXR5Lm1lbnVMaXN0O1xyXG5cdC8vIHZhciBwZXJtaXNzaW9ucyA9IHN0b3JlLnN0YXRlLnVzZXJJbmZvLm1lbnVBdXRob3JpdHkubWVudUxpc3Q7XHJcblx0cGVybWlzc2lvbnMgPSBwZXJtaXNzaW9ucy5maWx0ZXIoXHJcblx0XHQoeCkgPT4geC5wYXRoID09IHBlcm1pc3Npb24ubWVudVBhdGhcclxuXHQpWzBdO1xyXG5cdGNvbnNvbGUubG9nKHBlcm1pc3Npb25zLCfmjInpkq7mnYPpmZAnKVxyXG5cdGlmICghcGVybWlzc2lvbnMgfHwgIXBlcm1pc3Npb25zLmFjdGlvbkxpc3QpIHtcclxuXHRcdHJldHVybiBmYWxzZTtcclxuXHR9XHJcblx0bGV0IGluZGV4ID0gcGVybWlzc2lvbnMuYWN0aW9uTGlzdC5maW5kSW5kZXgoXHJcblx0XHQoeCkgPT4geC5hY3Rpb25Db2RlID09IHBlcm1pc3Npb24ua2V5XHJcblx0KVxyXG5cdHJldHVybiBpbmRleCAhPSAtMSA/IHRydWUgOiBmYWxzZTtcclxufVxyXG5WdWUucHJvdG90eXBlLmNoZWNrTWVudVBlcm1pc3Npb24gPSBmdW5jdGlvbihwZXJtaXNzaW9uKSB7XHJcblx0dmFyIHBlcm1pc3Npb25zID0gSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKSkubWVudUF1dGhvcml0eS5tZW51TGlzdDtcclxuXHQvLyB2YXIgcGVybWlzc2lvbnMgPSBzdG9yZS5zdGF0ZS51c2VySW5mby5tZW51QXV0aG9yaXR5Lm1lbnVMaXN0O1xyXG5cdHBlcm1pc3Npb25zID0gcGVybWlzc2lvbnMuZmlsdGVyKFxyXG5cdFx0KHgpID0+IHgucGF0aCA9PSBwZXJtaXNzaW9uLm1lbnVQYXRoXHJcblx0KVswXTtcclxuXHRpZiAoIXBlcm1pc3Npb25zKSB7XHJcblx0XHRyZXR1cm4gZmFsc2U7XHJcblx0fSBlbHNlIHtcclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxufVxyXG5jb25zdCBhcHAgPSBuZXcgVnVlKHtcclxuXHQuLi5BcHBcclxufSlcclxuYXBwLiRtb3VudCgpIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); +eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 2);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 3));\n__webpack_require__(/*! uni-pages */ 7);\n__webpack_require__(/*! @dcloudio/vue-cli-plugin-uni/packages/uni-push/dist/uni-push-v1.plus.es.js */ 2632);\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 13));\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 2633));\nvar _uviewUi = _interopRequireDefault(__webpack_require__(/*! uview-ui */ 2636));\nvar _uniIcons = _interopRequireDefault(__webpack_require__(/*! ./uni_modules/uni-icons/components/uni-icons/uni-icons.vue */ 2662));\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_vue.default.use(_uviewUi.default);\n// H5控制台**********\n// let consoleScript = document.createElement(\"script\");\n// consoleScript.src = \"https://cdn.bootcss.com/vConsole/3.3.4/vconsole.min.js\";\n// consoleScript.onload = function () {\n// new VConsole()\n// }\n// document.head.appendChild(consoleScript);\n// // H5控制台**********\n// // import VConsole from 'vconsole'//h5控制台\n// // const vConsole = new VConsole()//h5控制台\n// // Vue.use(vConsole)//h5控制台\n_vue.default.config.productionTip = false;\n// Vue.use(VueResource)\n_App.default.mpType = 'app';\n// import UniIcons from './uni_modules/uni-icons/components/uni-icons/uni-icons.vue'\n// Vue.use('UniIcons')\n// 由于引入的icons的命名会跟项目文件里的冲突,所以随便往命名加了个2,区分开来\n\n_vue.default.component('uni-icons2', _uniIcons.default);\n//全局变量\n// Vue.prototype.mobileTopHeight = uni.getMenuButtonBoundingClientRect()?uni.getMenuButtonBoundingClientRect().top:0;\n// Vue.prototype.url_config = ''\n// Vue.prototype.COMPANY = \"longguang\"\n// Vue.prototype.COMPANY = \"nanchang\"\n// Vue.prototype.COMPANY = \"sanjiang\" //(部署三江h5需要打开/pages/projectManage/projectManage,页面onload内容)\n// Vue.prototype.COMPANY = \"zjwj\"\n// Vue.prototype.COMPANY = \"sccr\"\n// Vue.prototype.COMPANY = \"agjt\" // 鞍钢集团环境\n_vue.default.prototype.COMPANY = \"\"; // 标准版\nif (true) {\n // 开发环境\n __f__(\"log\", '开发环境', \" at main.js:38\");\n // Vue.prototype.url_config = 'http://47.93.215.234:9809/' // 鞍钢正式地址(弃用)\n // Vue.prototype.url_config = 'http://42.180.188.17:9809/' // 鞍钢正式地址\n // Vue.prototype.url_config = 'http://42.180.188.17:11211/' // 鞍钢测试地址\n // Vue.prototype.url_config = 'http://182.90.224.237:51234/' //雄哥内网穿透地址\n // Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址\n // Vue.prototype.url_config = ' http://192.168.34.221:28888/' //郭圣雄本地\n _vue.default.prototype.url_config = ' http://192.168.34.221:9111/'; //郭圣雄本地\n // Vue.prototype.url_config = 'http://182.90.224.237:51234/' //郭圣雄本地\n // Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地\n // Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)\n // Vue.prototype.work_url = 'http://42.180.188.17:19997' // 工作流线上地址\n // Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址\n _vue.default.prototype.work_url = 'http://192.168.34.126:5173'; // 工作流地址\n // Vue.prototype.work_url = 'http://192.168.34.138:5173' // 工作流地址\n // Vue.prototype.work_url = 'http://139.9.66.234:5173' // 工作流地址\n // Vue.prototype.work_url = 'http://192.168.34.126:5173' // 工作流地址\n // Vue.prototype.url_config = 'http://8.142.139.165:7080/' // 湖里\n // Vue.prototype.url_config = 'http://139.9.66.234:5173/'\n // Vue.prototype.url_config = 'http://192.168.34.125:6023/'\n // Vue.prototype.url_config = 'http://182.90.224.237:7000/' //广西联通\n // Vue.prototype.url_config = 'http://124.71.67.160:8088/'//中建四局\n // Vue.prototype.url_config = 'http://192.168.34.148:6023' //广西联通/本地\n // Vue.prototype.url_config = 'http://223.82.100.80:9000/'\n // Vue.prototype.url_config = 'http://120.236.247.200:9000/'\n // Vue.prototype.url_config = 'http://zhgd.loganwy.com/'\n // Vue.prototype.url_config = 'http://183.60.227.61:30249/'\n // Vue.prototype.url_config = 'http://183.60.227.61:30249/'\n // Vue.prototype.url_config = 'http://124.71.178.44:9000/'\n // Vue.prototype.url_config = \"http://58.34.63.88:9090/\"\n // Vue.prototype.url_config = \"http://183.95.84.34:7185/\"\n // Vue.prototype.url_config = \"http://218.92.215.138:9090/\" //新佳城小区 123456\n // Vue.prototype.url_config = \"http://36.137.53.203:9090/\" //南昌地铁 gdjt 123456\n // Vue.prototype.url_config = 'http://124.71.178.44:8/'\n // Vue.prototype.url_config = 'http://124.71.87.250/'\n // Vue.prototype.url_config = 'http://124.71.178.44:8012' // 河南\n // Vue.prototype.url_config = 'http://182.90.224.147:100/' //演示平台\n // Vue.prototype.url_config = 'http://192.168.34.116:6023/'//邱平毅本地\n // Vue.prototype.url_config = 'http://182.90.224.147:18170'//瑞士恒通\n // Vue.prototype.url_config = 'https://jxjzhgd.yyvtl.com:8443/'//三江\n // Vue.prototype.url_config = 'http://192.168.34.221:30002'//郭圣熊本地\n // Vue.prototype.url_config = 'http://192.168.34.221:8188'//中建四局本地\n // Vue.prototype.url_config = 'http://101.43.164.214:12350'//中建五局\n // Vue.prototype.url_config = 'http://42.194.144.62:8088'//新中建四局地址\n // Vue.prototype.url_config = 'http://192.168.34.221:11111/'//郭圣雄三江本地\n // Vue.prototype.url_config = 'http://182.90.224.147:15551'//成润线上\n // Vue.prototype.url_config = 'http://118.121.198.147:23232'//成润正式\n // Vue.prototype.url_config = 'http://huli.zjzhiliao.com/jxjgdapi'//金林湾测试\n // Vue.prototype.url_config = 'http://8.136.222.164:8808/'//中科安信\n} else {}\n\n_vue.default.prototype.$formatDates = formatDates;\n//时间戳转换方法 date:时间戳数字\nfunction formatDates(date) {\n var fmt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-MM-dd HH:mm:ss';\n if (!date) {\n return '';\n }\n if (date.length == 10) {\n date = date * 1000;\n }\n if (typeof date === 'string') {\n date = date.replace('T', ' ').replace('Z', '');\n date = new Date(date.replace(/-/g, '/'));\n }\n if (typeof date === 'number') {\n date = new Date(date);\n }\n var o = {\n 'M+': date.getMonth() + 1,\n 'd+': date.getDate(),\n 'h+': date.getHours() % 12 === 0 ? 12 : date.getHours() % 12,\n 'H+': date.getHours(),\n 'm+': date.getMinutes(),\n 's+': date.getSeconds(),\n 'q+': Math.floor((date.getMonth() + 3) / 3),\n 'S': date.getMilliseconds()\n };\n var week = {\n '0': \"\\u65E5\",\n '1': \"\\u4E00\",\n '2': \"\\u4E8C\",\n '3': \"\\u4E09\",\n '4': \"\\u56DB\",\n '5': \"\\u4E94\",\n '6': \"\\u516D\"\n };\n if (/(y+)/.test(fmt)) {\n fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));\n }\n if (/(E+)/.test(fmt)) {\n fmt = fmt.replace(RegExp.$1, (RegExp.$1.length > 1 ? RegExp.$1.length > 2 ? \"\\u661F\\u671F\" : \"\\u5468\" : '') + week[date.getDay() + '']);\n }\n for (var k in o) {\n if (new RegExp('(' + k + ')').test(fmt)) {\n fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));\n }\n }\n return fmt;\n}\n_vue.default.prototype.sendRequest = function (param) {\n var _self = this,\n url = param.url,\n method = param.method,\n header = param.header || {\n 'content-type': \"application/json\"\n },\n data = param.data || {},\n token = \"\",\n isalert = param.isalert || false,\n hideLoading = param.hideLoading || false;\n\n //拼接完整请求地址\n var requestUrl = _vue.default.prototype.url_config + url + '?lang=' + uni.getStorageSync('language');\n if (uni.getStorageSync('userInfo') && url != 'xmgl/base/login' && url != 'xmgl/wirelessEducationQuestionSubject/getDeviceRandomEducationQuestion' && url != 'xmgl/wirelessEducationQuestionAnswer/add' && url != 'xmgl/safeEducationQuestionAnswer/getAnswerWorkerInfo' && url != 'xmgl/safeEducationQuestionAnswer/add' && url != 'xmgl/safeEducationQuestion/selectSafeEducationQuestionInfo') {\n if (JSON.parse(uni.getStorageSync('userInfo')).token) {\n token = \"Bearer \" + JSON.parse(uni.getStorageSync('userInfo')).token;\n header[\"Authorization\"] = token;\n __f__(\"log\", \"网络请求 token :\" + token, \" at main.js:214\");\n }\n }\n\n // var timestamp = Date.parse(new Date());//时间戳\n // data[\"timestamp\"] = timestamp;\n\n // data[\"device\"] = \"iosapp\";\n // data[\"ver\"] = \"1.0.0\";\n\n if (method) {\n method = method.toUpperCase(); //小写改为大写\n }\n //加密sessionStorage.getItem(\"loginData\")\n // if (uni.getStorageSync(\"loginData\") && data != {}) {\n // \tconsole.log(url+\"参数\");\n // \tconsole.log(data);\n // \tdata = encryptByDES(data);\n // }\n //用户交互:加载圈\n if (!hideLoading) {\n uni.showLoading({\n title: '加载中...'\n });\n }\n // console.log(requestUrl, \"网络请求start\");\n // console.log(data, \"网络请求data====================\");\n //网络请求\n uni.request({\n url: requestUrl,\n method: method,\n header: header,\n data: data,\n success: function success(res) {\n // console.log(\"网络请求success:\" + JSON.stringify(res.data));\n\n if (res.data.code && res.data.code != 200) {\n if (res.data.code == 401 || res.data.code == 403) {\n uni.showToast({\n title: '登录过期,请重新登录',\n icon: \"none\"\n });\n setTimeout(function () {\n uni.removeStorageSync('userInfo');\n uni.redirectTo({\n url: '/pages/login/login.vue'\n });\n }, 1000);\n } else {\n setTimeout(function () {\n if (!isalert) {\n uni.showToast({\n title: res.data.message,\n icon: \"none\"\n });\n }\n }, 200);\n }\n typeof param.error == \"function\" && param.error(Data);\n return;\n }\n var Data = res.data;\n // if (res.data.data && res.data.data.requestData) {\n // \tlet data = decryptByDES(\n // \t\tres.data.data.requestData,\n // \t\tres.data.data.encrypted\n // \t);\n // \tData.data = JSON.parse(data);\n // \tconsole.log(url + \"解密后的数据\");\n // \tconsole.log(Data);\n // }\n typeof param.success == \"function\" && param.success(Data);\n },\n fail: function fail(e) {\n __f__(\"log\", \"网络请求fail:\" + JSON.stringify(e), \" at main.js:293\");\n __f__(\"log\", requestUrl, \"requestUrl\", \" at main.js:294\");\n // uni.showModal({\n // \tcontent: \"\" + e.errMsg\n // });\n uni.showToast({\n title: '服务器开小差了呢,请您稍后再试',\n icon: 'none'\n });\n typeof param.fail == \"function\" && param.fail(e.data);\n },\n complete: function complete() {\n if (!hideLoading) {\n uni.hideLoading();\n }\n typeof param.complete == \"function\" && param.complete();\n return;\n }\n });\n};\n// 判断按钮权限的函数\n_vue.default.prototype.checkBtnPermission = function (permission) {\n var permissions = JSON.parse(uni.getStorageSync(\"userInfo\")).menuAuthority.menuList;\n // var permissions = store.state.userInfo.menuAuthority.menuList;\n permissions = permissions.filter(function (x) {\n return x.path == permission.menuPath;\n })[0];\n __f__(\"log\", permissions, '按钮权限', \" at main.js:320\");\n if (!permissions || !permissions.actionList) {\n return false;\n }\n var index = permissions.actionList.findIndex(function (x) {\n return x.actionCode == permission.key;\n });\n return index != -1 ? true : false;\n};\n_vue.default.prototype.checkMenuPermission = function (permission) {\n var permissions = JSON.parse(uni.getStorageSync(\"userInfo\")).menuAuthority.menuList;\n // var permissions = store.state.userInfo.menuAuthority.menuList;\n permissions = permissions.filter(function (x) {\n return x.path == permission.menuPath;\n })[0];\n if (!permissions) {\n return false;\n } else {\n return true;\n }\n};\nvar app = new _vue.default(_objectSpread({}, _App.default));\napp.$mount();\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJ1VmlldyIsImNvbmZpZyIsInByb2R1Y3Rpb25UaXAiLCJBcHAiLCJtcFR5cGUiLCJjb21wb25lbnQiLCJ1bmlJY29uczIiLCJwcm90b3R5cGUiLCJDT01QQU5ZIiwicHJvY2VzcyIsInVybF9jb25maWciLCJ3b3JrX3VybCIsIiRmb3JtYXREYXRlcyIsImZvcm1hdERhdGVzIiwiZGF0ZSIsImZtdCIsImxlbmd0aCIsInJlcGxhY2UiLCJEYXRlIiwibyIsImdldE1vbnRoIiwiZ2V0RGF0ZSIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsImdldFNlY29uZHMiLCJNYXRoIiwiZmxvb3IiLCJnZXRNaWxsaXNlY29uZHMiLCJ3ZWVrIiwidGVzdCIsIlJlZ0V4cCIsIiQxIiwiZ2V0RnVsbFllYXIiLCJzdWJzdHIiLCJnZXREYXkiLCJrIiwic2VuZFJlcXVlc3QiLCJwYXJhbSIsIl9zZWxmIiwidXJsIiwibWV0aG9kIiwiaGVhZGVyIiwiZGF0YSIsInRva2VuIiwiaXNhbGVydCIsImhpZGVMb2FkaW5nIiwicmVxdWVzdFVybCIsInVuaSIsImdldFN0b3JhZ2VTeW5jIiwiSlNPTiIsInBhcnNlIiwidG9VcHBlckNhc2UiLCJzaG93TG9hZGluZyIsInRpdGxlIiwicmVxdWVzdCIsInN1Y2Nlc3MiLCJyZXMiLCJjb2RlIiwic2hvd1RvYXN0IiwiaWNvbiIsInNldFRpbWVvdXQiLCJyZW1vdmVTdG9yYWdlU3luYyIsInJlZGlyZWN0VG8iLCJtZXNzYWdlIiwiZXJyb3IiLCJEYXRhIiwiZmFpbCIsImUiLCJzdHJpbmdpZnkiLCJjb21wbGV0ZSIsImNoZWNrQnRuUGVybWlzc2lvbiIsInBlcm1pc3Npb24iLCJwZXJtaXNzaW9ucyIsIm1lbnVBdXRob3JpdHkiLCJtZW51TGlzdCIsImZpbHRlciIsIngiLCJwYXRoIiwibWVudVBhdGgiLCJhY3Rpb25MaXN0IiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJh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eEQsSUFBSUMsV0FBVyxHQUFHdkIsSUFBSSxDQUFDQyxLQUFLLENBQUNILEdBQUcsQ0FBQ0MsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUN5QixhQUFhLENBQUNDLFFBQVE7RUFDbkY7RUFDQUYsV0FBVyxHQUFHQSxXQUFXLENBQUNHLE1BQU0sQ0FDL0IsVUFBQ0MsQ0FBQztJQUFBLE9BQUtBLENBQUMsQ0FBQ0MsSUFBSSxJQUFJTixVQUFVLENBQUNPLFFBQVE7RUFBQSxFQUNwQyxDQUFDLENBQUMsQ0FBQztFQUNKLElBQUksQ0FBQ04sV0FBVyxFQUFFO0lBQ2pCLE9BQU8sS0FBSztFQUNiLENBQUMsTUFBTTtJQUNOLE9BQU8sSUFBSTtFQUNaO0FBQ0QsQ0FBQztBQUNELElBQU1hLEdBQUcsR0FBRyxJQUFJdkYsWUFBRyxtQkFDZkssWUFBRyxFQUNMO0FBQ0ZrRixHQUFHLENBQUNDLE1BQU0sRUFBRSxDIiwiZmlsZSI6IjAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3VuaS1wYWdlcyc7O2ltcG9ydCAnQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy91bmktcHVzaC9kaXN0L3VuaS1wdXNoLXYxLnBsdXMuZXMuanMnO2ltcG9ydCBWdWUgZnJvbSAndnVlJ1xyXG5pbXBvcnQgQXBwIGZyb20gJy4vQXBwJ1xyXG4vLyBpbXBvcnQgVnVlUmVzb3VyY2UgZnJvbSBcInZ1ZS1yZXNvdXJjZVwiO1xyXG4vLyBtYWluLmpzXHJcbmltcG9ydCB1VmlldyBmcm9tIFwidXZpZXctdWlcIjtcclxuVnVlLnVzZSh1Vmlldyk7XHJcbi8vICBINeaOp+WItuWPsCoqKioqKioqKipcclxuLy8gbGV0IGNvbnNvbGVTY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpO1xyXG4vLyBjb25zb2xlU2NyaXB0LnNyYyA9IFwiaHR0cHM6Ly9jZG4uYm9vdGNzcy5jb20vdkNvbnNvbGUvMy4zLjQvdmNvbnNvbGUubWluLmpzXCI7XHJcbi8vIGNvbnNvbGVTY3JpcHQub25sb2FkID0gZnVuY3Rpb24gKCkge1xyXG4vLyAgIG5ldyBWQ29uc29sZSgpXHJcbi8vIH1cclxuLy8gZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjb25zb2xlU2NyaXB0KTtcclxuLy8gLy8gIEg15o6n5Yi25Y+wKioqKioqKioqKlxyXG4vLyAvLyBpbXBvcnQgVkNvbnNvbGUgZnJvbSAndmNvbnNvbGUnLy9oNeaOp+WItuWPsFxyXG4vLyAvLyBjb25zdCB2Q29uc29sZSA9IG5ldyBWQ29uc29sZSgpLy9oNeaOp+WItuWPsFxyXG4vLyAvLyBWdWUudXNlKHZDb25zb2xlKS8vaDXmjqfliLblj7BcclxuVnVlLmNvbmZpZy5wcm9kdWN0aW9uVGlwID0gZmFsc2VcclxuLy8gVnVlLnVzZShWdWVSZXNvdXJjZSlcclxuQXBwLm1wVHlwZSA9ICdhcHAnXHJcbi8vIGltcG9ydCBVbmlJY29ucyBmcm9tICcuL3VuaV9tb2R1bGVzL3VuaS1pY29ucy9jb21wb25lbnRzL3VuaS1pY29ucy91bmktaWNvbnMudnVlJ1xyXG4vLyBWdWUudXNlKCdVbmlJY29ucycpXHJcbi8vIOeUseS6juW8leWFpeeahGljb25z55qE5ZG95ZCN5Lya6Lef6aG555uu5paH5Lu26YeM55qE5Yay56qB77yM5omA5Lul6ZqP5L6/5b6A5ZG95ZCN5Yqg5LqG5LiqMu+8jOWMuuWIhuW8gOadpVxyXG5pbXBvcnQgdW5pSWNvbnMyIGZyb20gJy4vdW5pX21vZHVsZXMvdW5pLWljb25zL2NvbXBvbmVudHMvdW5pLWljb25zL3VuaS1pY29ucy52dWUnXHJcblZ1ZS5jb21wb25lbnQoJ3VuaS1pY29uczInLCB1bmlJY29uczIpXHJcbi8v5YWo5bGA5Y+Y6YePXHJcbi8vIFZ1ZS5wcm90b3R5cGUubW9iaWxlVG9wSGVpZ2h0ID0gdW5pLmdldE1lbnVCdXR0b25Cb3VuZGluZ0NsaWVudFJlY3QoKT91bmkuZ2V0TWVudUJ1dHRvbkJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDowO1xyXG4vLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnJ1xyXG4vLyBWdWUucHJvdG90eXBlLkNPTVBBTlkgPSBcImxvbmdndWFuZ1wiXHJcbi8vIFZ1ZS5wcm90b3R5cGUuQ09NUEFOWSA9IFwibmFuY2hhbmdcIlxyXG4vLyBWdWUucHJvdG90eXBlLkNPTVBBTlkgPSBcInNhbmppYW5nXCIgLy/vvIjpg6jnvbLkuInmsZ9oNemcgOimgeaJk+W8gC9wYWdlcy9wcm9qZWN0TWFuYWdlL3Byb2plY3RNYW5hZ2XvvIzpobXpnaJvbmxvYWTlhoXlrrnvvIlcclxuLy8gVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJ6andqXCJcclxuLy8gVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJzY2NyXCJcclxuLy8gVnVlLnByb3RvdHlwZS5DT01QQU5ZID0gXCJhZ2p0XCIgLy8g6Z6N6ZKi6ZuG5Zui546v5aKDXHJcblZ1ZS5wcm90b3R5cGUuQ09NUEFOWSA9IFwiXCIgLy8g5qCH5YeG54mIXHJcbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xyXG5cdC8vIOW8gOWPkeeOr+Wig1xyXG5cdGNvbnNvbGUubG9nKCflvIDlj5Hnjq/looMnKVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDcuOTMuMjE1LjIzNDo5ODA5LycgLy8g6Z6N6ZKi5q2j5byP5Zyw5Z2A77yI5byD55So77yJXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3Ojk4MDkvJyAvLyDpno3pkqLmraPlvI/lnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTEyMTEvJyAvLyDpno3pkqLmtYvor5XlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMjM3OjUxMjM0LycgLy/pm4Tlk6XlhoXnvZHnqb/pgI/lnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL2p4ai56aGdkeXVuLmNvbTo2MTIxMi8nIC8v5p2w5ZOl5YaF572R56m/6YCP5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJyBodHRwOi8vMTkyLjE2OC4zNC4yMjE6Mjg4ODgvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICcgaHR0cDovLzE5Mi4xNjguMzQuMjIxOjkxMTEvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NTEyMzQvJyAvL+mDreWco+mbhOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xNTU6MTkxMTEvJyAvL+W9rea0geacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQ3LjkzLjIxNS4yMzQ6MTk5OTcnIC8vIOW3peS9nOa1gee6v+S4iuWcsOWdgO+8iOW8g+eUqO+8iVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTk5OTcnIC8vIOW3peS9nOa1gee6v+S4iuWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6MTkwOTcnIC8vIOW3peS9nOa1gea1i+ivleWcsOWdgFxyXG5cdFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI2OjUxNzMnIC8vIOW3peS9nOa1geWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTM4OjUxNzMnIC8vIOW3peS9nOa1geWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUud29ya191cmwgPSAnaHR0cDovLzEzOS45LjY2LjIzNDo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjEyNjo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzguMTQyLjEzOS4xNjU6NzA4MC8nIC8vIOa5lumHjFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTM5LjkuNjYuMjM0OjUxNzMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xMjU6NjAyMy8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xODIuOTAuMjI0LjIzNzo3MDAwLycgLy/lub/opb/ogZTpgJpcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS42Ny4xNjA6ODA4OC8nLy/kuK3lu7rlm5vlsYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTQ4OjYwMjMnIC8v5bm/6KW/6IGU6YCaL+acrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMjIzLjgyLjEwMC44MDo5MDAwLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyMC4yMzYuMjQ3LjIwMDo5MDAwLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL3poZ2QubG9nYW53eS5jb20vJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjYwLjIyNy42MTozMDI0OS8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xODMuNjAuMjI3LjYxOjMwMjQ5LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS4xNzguNDQ6OTAwMC8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vNTguMzQuNjMuODg6OTA5MC9cIlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9IFwiaHR0cDovLzE4My45NS44NC4zNDo3MTg1L1wiXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMjE4LjkyLjIxNS4xMzg6OTA5MC9cIiAgIC8v5paw5L2z5Z+O5bCP5Yy6ICAgMTIzNDU2XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMzYuMTM3LjUzLjIwMzo5MDkwL1wiICAvL+WNl+aYjOWcsOmTgSAgZ2RqdCAgIDEyMzQ1NlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTI0LjcxLjE3OC40NDo4LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS44Ny4yNTAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTI0LjcxLjE3OC40NDo4MDEyJyAvLyDmsrPljZdcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjEwMC8nIC8v5ryU56S65bmz5Y+wXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjExNjo2MDIzLycvL+mCseW5s+avheacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4xNDc6MTgxNzAnLy/nkZ7lo6vmgZLpgJpcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgID0gJ2h0dHBzOi8vanhqemhnZC55eXZ0bC5jb206ODQ0My8nLy/kuInmsZ9cclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjMwMDAyJy8v6YOt5Zyj54aK5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTo4MTg4Jy8v5Lit5bu65Zub5bGA5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMjM1MCcvL+S4reW7uuS6lOWxgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDIuMTk0LjE0NC42Mjo4MDg4Jy8v5paw5Lit5bu65Zub5bGA5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMToxMTExMS8nLy/pg63lnKPpm4TkuInmsZ/mnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjE1NTUxJy8v5oiQ5ram57q/5LiKXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMTguMTIxLjE5OC4xNDc6MjMyMzInLy/miJDmtqbmraPlvI9cclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovL2h1bGkuemp6aGlsaWFvLmNvbS9qeGpnZGFwaScvL+mHkeael+a5vua1i+ivlVxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vOC4xMzYuMjIyLjE2NDo4ODA4LycvL+S4reenkeWuieS/oVxyXG5cdFxyXG5cclxufSBlbHNlIHtcclxuXHQvLyDnlJ/kuqfnjq/looNcclxuXHRjb25zb2xlLmxvZygn55Sf5Lqn546v5aKDJylcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEwLjE2OC4xLjEwNToxMTExMS8nIC8vIOe6v+S4iuWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTAuMTY4LjEuMTA0OjExMTExLycgLy8g57q/5LiK5Zyw5Z2AXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly80Ny45My4yMTUuMjM0Ojk4MDkvJyAvLyDpno3pkqLnur/kuIrlnLDlnYDvvIjlvIPnlKjvvIlcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE4MC4xODguMTc6OTgwOS8nIC8vIOmejemSoue6v+S4iuWcsOWdgFxyXG5cdFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vNDIuMTgwLjE4OC4xNzoxMTIxMS8nIC8vIOmejemSoue6v+S4iua1i+ivleWcsOWdgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NTEyMzQvJyAvLyDnmb7oibLkuInmoIfmrrVcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjkxMTEvJyAvLyDnmb7oibLkuInmoIfmrrVcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Ny45My4yMTUuMjM0OjE5OTk3JyAvLyDlt6XkvZzmtYHnur/kuIrlnLDlnYDvvIjlvIPnlKjvvIlcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3OjE5OTk3JyAvLyDlt6XkvZzmtYHnur/kuIrlnLDlnYBcclxuXHRWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly80Mi4xODAuMTg4LjE3OjE5MDk3JyAvLyDlt6XkvZzmtYHmtYvor5XlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLndvcmtfdXJsID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjEzOTo1MTczJyAvLyDlt6XkvZzmtYHlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjEwMC8nIC8v5ryU56S65bmz5Y+wXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0naHR0cDovLzEyNC43MS4xNzguNDQ6ODAxMi8nIC8vIOays+WNl1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vOC4xNDIuMTM5LjE2NTo3MDgwLycgLy/muZbph4xcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEzOS45LjY2LjIzNDo4LydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI1OjYwMjMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4yMzc6NzAwMC8nIC8v5bm/6KW/6IGU6YCaXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMjQuNzEuNjcuMTYwOjgwODgvJyAvL+S4reW7uuWbm+WxgFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xNDg6NjAyMycgLy/lub/opb/ogZTpgJov5pys5ZywXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8yMjMuODIuMTAwLjgwOjkwMDAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTIwLjIzNi4yNDcuMjAwOjkwMDAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9IFwiaHR0cDovLzU4LjM0LjYzLjg4OjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS4xNzguNDQ6OTAwMC8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gXCJodHRwOi8vMTgzLjk1Ljg0LjM0OjcxODUvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSBcImh0dHA6Ly8zNi4xMzcuNTMuMjAzOjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMTI1OjYwMjMvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjYwLjIyNy42MTozMDI0OS8nXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly96aGdkLmxvZ2Fud3kuY29tLydcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSBcImh0dHA6Ly8zNi4xMzcuNTMuMjAzOjkwOTAvXCJcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEyNC43MS44Ny4yNTAvJ1xyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTkyLjE2OC4zNC4xMTY6NjAyMy8nLy/pgrHlubPmr4XmnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE4Mi45MC4yMjQuMTQ3OjE4MTcwLycvL+eRnuWjq+aBkumAmlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwczovL2p4anpoZ2QueXl2dGwuY29tOjg0NDMvJy8v5LiJ5rGfXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTo4MTg4LycvL+S4reW7uuWbm+WxgOacrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZz0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMjM1MC8nLy/kuK3lu7rkupTlsYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzQyLjE5NC4xNDQuNjI6ODA4OC8nLy/mlrDkuK3lu7rlm5vlsYDlnLDlnYBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzE5Mi4xNjguMzQuMjIxOjExMTExLycvL+mDreWco+mbhOS4ieaxn+acrOWcsFxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgyLjkwLjIyNC4xNDc6MTU1NTEvJy8v5oiQ5ram57q/5LiKXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMTguMTIxLjE5OC4xNDc6MjMyMzIvJy8v5oiQ5ram5q2j5byPXHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xOTIuMTY4LjM0LjIyMTozMDAwMi8nLy/pg63lnKPpm4TmnKzlnLBcclxuXHQvLyBWdWUucHJvdG90eXBlLnVybF9jb25maWcgPSAnaHR0cDovLzEwMS40My4xNjQuMjE0OjQ1MDIyLycvL+ebmOmUplxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vMTgzLjI0OS4yMjQuMTE4OjkwMDAvJy8vIOWYieWFtOmhueebrlxyXG5cdC8vIFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyA9ICdodHRwOi8vanhqLnpoZ2R5dW4uY29tOjMwMjUwLyMvJy8vIOa8lOekuuW5s+WPsEg1XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly8xMDEuNDMuMTY0LjIxNDoxMTExMS8nLy8g55m+6Imy5LiJ5qCH5q61XHJcblx0Ly8gVnVlLnByb3RvdHlwZS51cmxfY29uZmlnID0gJ2h0dHA6Ly84LjEzNi4yMjIuMTY0Ojg4MDgvJy8v5Lit56eR5a6J5L+hXHJcbn1cclxuXHJcblZ1ZS5wcm90b3R5cGUuJGZvcm1hdERhdGVzID0gZm9ybWF0RGF0ZXM7XHJcbi8v5pe26Ze05oiz6L2s5o2i5pa55rOVICAgIGRhdGU65pe26Ze05oiz5pWw5a2XXHJcbmZ1bmN0aW9uIGZvcm1hdERhdGVzKGRhdGUsIGZtdCA9ICd5eXl5LU1NLWRkIEhIOm1tOnNzJykge1xyXG5cclxuXHRpZiAoIWRhdGUpIHtcclxuXHRcdHJldHVybiAnJ1xyXG5cdH1cclxuXHRpZiAoZGF0ZS5sZW5ndGggPT0gMTApIHtcclxuXHRcdGRhdGUgPSBkYXRlICogMTAwMDtcclxuXHR9XHJcblx0aWYgKHR5cGVvZiBkYXRlID09PSAnc3RyaW5nJykge1xyXG5cdFx0ZGF0ZSA9IGRhdGUucmVwbGFjZSgnVCcsICcgJykucmVwbGFjZSgnWicsICcnKTtcclxuXHRcdGRhdGUgPSBuZXcgRGF0ZShkYXRlLnJlcGxhY2UoLy0vZywgJy8nKSlcclxuXHR9XHJcblx0aWYgKHR5cGVvZiBkYXRlID09PSAnbnVtYmVyJykge1xyXG5cdFx0ZGF0ZSA9IG5ldyBEYXRlKGRhdGUpXHJcblx0fVxyXG5cdHZhciBvID0ge1xyXG5cdFx0J00rJzogZGF0ZS5nZXRNb250aCgpICsgMSxcclxuXHRcdCdkKyc6IGRhdGUuZ2V0RGF0ZSgpLFxyXG5cdFx0J2grJzogZGF0ZS5nZXRIb3VycygpICUgMTIgPT09IDAgPyAxMiA6IGRhdGUuZ2V0SG91cnMoKSAlIDEyLFxyXG5cdFx0J0grJzogZGF0ZS5nZXRIb3VycygpLFxyXG5cdFx0J20rJzogZGF0ZS5nZXRNaW51dGVzKCksXHJcblx0XHQncysnOiBkYXRlLmdldFNlY29uZHMoKSxcclxuXHRcdCdxKyc6IE1hdGguZmxvb3IoKGRhdGUuZ2V0TW9udGgoKSArIDMpIC8gMyksXHJcblx0XHQnUyc6IGRhdGUuZ2V0TWlsbGlzZWNvbmRzKClcclxuXHR9XHJcblx0dmFyIHdlZWsgPSB7XHJcblx0XHQnMCc6ICdcXHU2NWU1JyxcclxuXHRcdCcxJzogJ1xcdTRlMDAnLFxyXG5cdFx0JzInOiAnXFx1NGU4YycsXHJcblx0XHQnMyc6ICdcXHU0ZTA5JyxcclxuXHRcdCc0JzogJ1xcdTU2ZGInLFxyXG5cdFx0JzUnOiAnXFx1NGU5NCcsXHJcblx0XHQnNic6ICdcXHU1MTZkJ1xyXG5cdH1cclxuXHRpZiAoLyh5KykvLnRlc3QoZm10KSkge1xyXG5cdFx0Zm10ID0gZm10LnJlcGxhY2UoUmVnRXhwLiQxLCAoZGF0ZS5nZXRGdWxsWWVhcigpICsgJycpLnN1YnN0cig0IC0gUmVnRXhwLiQxLmxlbmd0aCkpXHJcblx0fVxyXG5cdGlmICgvKEUrKS8udGVzdChmbXQpKSB7XHJcblx0XHRmbXQgPSBmbXQucmVwbGFjZShSZWdFeHAuJDEsICgoUmVnRXhwLiQxLmxlbmd0aCA+IDEpID8gKFJlZ0V4cC4kMS5sZW5ndGggPiAyID8gJ1xcdTY2MWZcXHU2NzFmJyA6ICdcXHU1NDY4JykgOlxyXG5cdFx0XHRcdCcnKSArXHJcblx0XHRcdHdlZWtbZGF0ZS5nZXREYXkoKSArICcnXSlcclxuXHR9XHJcblx0Zm9yICh2YXIgayBpbiBvKSB7XHJcblx0XHRpZiAobmV3IFJlZ0V4cCgnKCcgKyBrICsgJyknKS50ZXN0KGZtdCkpIHtcclxuXHRcdFx0Zm10ID0gZm10LnJlcGxhY2UoUmVnRXhwLiQxLCAoUmVnRXhwLiQxLmxlbmd0aCA9PT0gMSkgPyAob1trXSkgOiAoKCcwMCcgKyBvW2tdKS5zdWJzdHIoKCcnICsgb1trXSkubGVuZ3RoKSkpXHJcblx0XHR9XHJcblx0fVxyXG5cdHJldHVybiBmbXRcclxufVxyXG5cclxuVnVlLnByb3RvdHlwZS5zZW5kUmVxdWVzdCA9IGZ1bmN0aW9uKHBhcmFtKSB7XHJcblx0dmFyIF9zZWxmID0gdGhpcyxcclxuXHRcdHVybCA9IHBhcmFtLnVybCxcclxuXHRcdG1ldGhvZCA9IHBhcmFtLm1ldGhvZCxcclxuXHRcdGhlYWRlciA9IHBhcmFtLmhlYWRlciB8fCB7XHJcblx0XHRcdCdjb250ZW50LXR5cGUnOiBcImFwcGxpY2F0aW9uL2pzb25cIlxyXG5cdFx0fSxcclxuXHJcblx0XHRkYXRhID0gcGFyYW0uZGF0YSB8fCB7fSxcclxuXHRcdHRva2VuID0gXCJcIixcclxuXHRcdGlzYWxlcnQgPSBwYXJhbS5pc2FsZXJ0IHx8IGZhbHNlLFxyXG5cdFx0aGlkZUxvYWRpbmcgPSBwYXJhbS5oaWRlTG9hZGluZyB8fCBmYWxzZTtcclxuXHJcblx0Ly/mi7zmjqXlrozmlbTor7fmsYLlnLDlnYBcclxuXHR2YXIgcmVxdWVzdFVybCA9IFZ1ZS5wcm90b3R5cGUudXJsX2NvbmZpZyArIHVybCArICc/bGFuZz0nICsgdW5pLmdldFN0b3JhZ2VTeW5jKCdsYW5ndWFnZScpO1xyXG5cdGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJykgJiYgdXJsICE9ICd4bWdsL2Jhc2UvbG9naW4nICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvd2lyZWxlc3NFZHVjYXRpb25RdWVzdGlvblN1YmplY3QvZ2V0RGV2aWNlUmFuZG9tRWR1Y2F0aW9uUXVlc3Rpb24nICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvd2lyZWxlc3NFZHVjYXRpb25RdWVzdGlvbkFuc3dlci9hZGQnICYmIHVybCAhPVxyXG5cdFx0J3htZ2wvc2FmZUVkdWNhdGlvblF1ZXN0aW9uQW5zd2VyL2dldEFuc3dlcldvcmtlckluZm8nICYmIHVybCAhPSAneG1nbC9zYWZlRWR1Y2F0aW9uUXVlc3Rpb25BbnN3ZXIvYWRkJyAmJlxyXG5cdFx0dXJsICE9ICd4bWdsL3NhZmVFZHVjYXRpb25RdWVzdGlvbi9zZWxlY3RTYWZlRWR1Y2F0aW9uUXVlc3Rpb25JbmZvJykge1xyXG5cdFx0aWYgKEpTT04ucGFyc2UodW5pLmdldFN0b3JhZ2VTeW5jKCd1c2VySW5mbycpKS50b2tlbikge1xyXG5cdFx0XHR0b2tlbiA9IFwiQmVhcmVyIFwiICsgSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoJ3VzZXJJbmZvJykpLnRva2VuO1xyXG5cdFx0XHRoZWFkZXJbXCJBdXRob3JpemF0aW9uXCJdID0gdG9rZW5cclxuXHRcdFx0Y29uc29sZS5sb2coXCLnvZHnu5zor7fmsYIgdG9rZW4gOlwiICsgdG9rZW4pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ly8gdmFyIHRpbWVzdGFtcCA9IERhdGUucGFyc2UobmV3IERhdGUoKSk7Ly/ml7bpl7TmiLNcclxuXHQvLyBkYXRhW1widGltZXN0YW1wXCJdID0gdGltZXN0YW1wO1xyXG5cclxuXHJcblxyXG5cclxuXHJcblx0Ly8gZGF0YVtcImRldmljZVwiXSA9IFwiaW9zYXBwXCI7XHJcblx0Ly8gZGF0YVtcInZlclwiXSA9IFwiMS4wLjBcIjtcclxuXHJcblx0aWYgKG1ldGhvZCkge1xyXG5cdFx0bWV0aG9kID0gbWV0aG9kLnRvVXBwZXJDYXNlKCk7IC8v5bCP5YaZ5pS55Li65aSn5YaZXHJcblx0fVxyXG5cdC8v5Yqg5a+Gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcImxvZ2luRGF0YVwiKVxyXG5cdC8vIGlmICh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJsb2dpbkRhdGFcIikgJiYgZGF0YSAhPSB7fSkge1xyXG5cdC8vIFx0Y29uc29sZS5sb2codXJsK1wi5Y+C5pWwXCIpO1xyXG5cdC8vIFx0Y29uc29sZS5sb2coZGF0YSk7XHJcblx0Ly8gXHRkYXRhID0gZW5jcnlwdEJ5REVTKGRhdGEpO1xyXG5cdC8vIH1cclxuXHQvL+eUqOaIt+S6pOS6kjrliqDovb3lnIhcclxuXHRpZiAoIWhpZGVMb2FkaW5nKSB7XHJcblx0XHR1bmkuc2hvd0xvYWRpbmcoe1xyXG5cdFx0XHR0aXRsZTogJ+WKoOi9veS4rS4uLidcclxuXHRcdH0pO1xyXG5cdH1cclxuXHQvLyBjb25zb2xlLmxvZyhyZXF1ZXN0VXJsLCBcIue9kee7nOivt+axgnN0YXJ0XCIpO1xyXG5cdC8vIGNvbnNvbGUubG9nKGRhdGEsIFwi572R57uc6K+35rGCZGF0YT09PT09PT09PT09PT09PT09PT09XCIpO1xyXG5cdC8v572R57uc6K+35rGCXHJcblx0dW5pLnJlcXVlc3Qoe1xyXG5cdFx0dXJsOiByZXF1ZXN0VXJsLFxyXG5cdFx0bWV0aG9kOiBtZXRob2QsXHJcblx0XHRoZWFkZXI6IGhlYWRlcixcclxuXHRcdGRhdGE6IGRhdGEsXHJcblx0XHRzdWNjZXNzOiByZXMgPT4ge1xyXG5cdFx0XHQvLyBjb25zb2xlLmxvZyhcIue9kee7nOivt+axgnN1Y2Nlc3M6XCIgKyBKU09OLnN0cmluZ2lmeShyZXMuZGF0YSkpO1xyXG5cclxuXHRcdFx0aWYgKHJlcy5kYXRhLmNvZGUgJiYgcmVzLmRhdGEuY29kZSAhPSAyMDApIHtcclxuXHRcdFx0XHRpZiAocmVzLmRhdGEuY29kZSA9PSA0MDEgfHwgcmVzLmRhdGEuY29kZSA9PSA0MDMpIHtcclxuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHR0aXRsZTogJ+eZu+W9lei/h+acnyzor7fph43mlrDnmbvlvZUnLFxyXG5cdFx0XHRcdFx0XHRpY29uOiBcIm5vbmVcIlxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHRcdHVuaS5yZW1vdmVTdG9yYWdlU3luYygndXNlckluZm8nKVxyXG5cdFx0XHRcdFx0XHR1bmkucmVkaXJlY3RUbyh7XHJcblx0XHRcdFx0XHRcdFx0dXJsOiAnL3BhZ2VzL2xvZ2luL2xvZ2luLnZ1ZSdcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH0sIDEwMDApXHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XHJcblx0XHRcdFx0XHRcdGlmICghaXNhbGVydCkge1xyXG5cdFx0XHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHRcdFx0dGl0bGU6IHJlcy5kYXRhLm1lc3NhZ2UsXHJcblx0XHRcdFx0XHRcdFx0XHRpY29uOiBcIm5vbmVcIlxyXG5cdFx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0sIDIwMClcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHR5cGVvZiBwYXJhbS5lcnJvciA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uZXJyb3IoRGF0YSk7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHRcdGxldCBEYXRhID0gcmVzLmRhdGE7XHJcblx0XHRcdC8vIGlmIChyZXMuZGF0YS5kYXRhICYmIHJlcy5kYXRhLmRhdGEucmVxdWVzdERhdGEpIHtcclxuXHRcdFx0Ly8gXHRsZXQgZGF0YSA9IGRlY3J5cHRCeURFUyhcclxuXHRcdFx0Ly8gXHRcdHJlcy5kYXRhLmRhdGEucmVxdWVzdERhdGEsXHJcblx0XHRcdC8vIFx0XHRyZXMuZGF0YS5kYXRhLmVuY3J5cHRlZFxyXG5cdFx0XHQvLyBcdCk7XHJcblx0XHRcdC8vIFx0RGF0YS5kYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcclxuXHRcdFx0Ly8gXHRjb25zb2xlLmxvZyh1cmwgKyBcIuino+WvhuWQjueahOaVsOaNrlwiKTtcclxuXHRcdFx0Ly8gXHRjb25zb2xlLmxvZyhEYXRhKTtcclxuXHRcdFx0Ly8gfVxyXG5cdFx0XHR0eXBlb2YgcGFyYW0uc3VjY2VzcyA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uc3VjY2VzcyhEYXRhKTtcclxuXHRcdH0sXHJcblx0XHRmYWlsOiAoZSkgPT4ge1xyXG5cdFx0XHRjb25zb2xlLmxvZyhcIue9kee7nOivt+axgmZhaWw6XCIgKyBKU09OLnN0cmluZ2lmeShlKSk7XHJcblx0XHRcdGNvbnNvbGUubG9nKHJlcXVlc3RVcmwsIFwicmVxdWVzdFVybFwiKTtcclxuXHRcdFx0Ly8gdW5pLnNob3dNb2RhbCh7XHJcblx0XHRcdC8vIFx0Y29udGVudDogXCJcIiArIGUuZXJyTXNnXHJcblx0XHRcdC8vIH0pO1xyXG5cdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHR0aXRsZTogJ+acjeWKoeWZqOW8gOWwj+W3ruS6huWRou+8jOivt+aCqOeojeWQjuWGjeivlScsXHJcblx0XHRcdFx0aWNvbjogJ25vbmUnXHJcblx0XHRcdH0pXHJcblx0XHRcdHR5cGVvZiBwYXJhbS5mYWlsID09IFwiZnVuY3Rpb25cIiAmJiBwYXJhbS5mYWlsKGUuZGF0YSk7XHJcblx0XHR9LFxyXG5cdFx0Y29tcGxldGU6ICgpID0+IHtcclxuXHRcdFx0aWYgKCFoaWRlTG9hZGluZykge1xyXG5cdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHR5cGVvZiBwYXJhbS5jb21wbGV0ZSA9PSBcImZ1bmN0aW9uXCIgJiYgcGFyYW0uY29tcGxldGUoKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdH0pO1xyXG59XHJcbi8vIOWIpOaWreaMiemSruadg+mZkOeahOWHveaVsFxyXG5WdWUucHJvdG90eXBlLmNoZWNrQnRuUGVybWlzc2lvbiA9IGZ1bmN0aW9uKHBlcm1pc3Npb24pIHtcclxuXHR2YXIgcGVybWlzc2lvbnMgPSBKU09OLnBhcnNlKHVuaS5nZXRTdG9yYWdlU3luYyhcInVzZXJJbmZvXCIpKS5tZW51QXV0aG9yaXR5Lm1lbnVMaXN0O1xyXG5cdC8vIHZhciBwZXJtaXNzaW9ucyA9IHN0b3JlLnN0YXRlLnVzZXJJbmZvLm1lbnVBdXRob3JpdHkubWVudUxpc3Q7XHJcblx0cGVybWlzc2lvbnMgPSBwZXJtaXNzaW9ucy5maWx0ZXIoXHJcblx0XHQoeCkgPT4geC5wYXRoID09IHBlcm1pc3Npb24ubWVudVBhdGhcclxuXHQpWzBdO1xyXG5cdGNvbnNvbGUubG9nKHBlcm1pc3Npb25zLCfmjInpkq7mnYPpmZAnKVxyXG5cdGlmICghcGVybWlzc2lvbnMgfHwgIXBlcm1pc3Npb25zLmFjdGlvbkxpc3QpIHtcclxuXHRcdHJldHVybiBmYWxzZTtcclxuXHR9XHJcblx0bGV0IGluZGV4ID0gcGVybWlzc2lvbnMuYWN0aW9uTGlzdC5maW5kSW5kZXgoXHJcblx0XHQoeCkgPT4geC5hY3Rpb25Db2RlID09IHBlcm1pc3Npb24ua2V5XHJcblx0KVxyXG5cdHJldHVybiBpbmRleCAhPSAtMSA/IHRydWUgOiBmYWxzZTtcclxufVxyXG5WdWUucHJvdG90eXBlLmNoZWNrTWVudVBlcm1pc3Npb24gPSBmdW5jdGlvbihwZXJtaXNzaW9uKSB7XHJcblx0dmFyIHBlcm1pc3Npb25zID0gSlNPTi5wYXJzZSh1bmkuZ2V0U3RvcmFnZVN5bmMoXCJ1c2VySW5mb1wiKSkubWVudUF1dGhvcml0eS5tZW51TGlzdDtcclxuXHQvLyB2YXIgcGVybWlzc2lvbnMgPSBzdG9yZS5zdGF0ZS51c2VySW5mby5tZW51QXV0aG9yaXR5Lm1lbnVMaXN0O1xyXG5cdHBlcm1pc3Npb25zID0gcGVybWlzc2lvbnMuZmlsdGVyKFxyXG5cdFx0KHgpID0+IHgucGF0aCA9PSBwZXJtaXNzaW9uLm1lbnVQYXRoXHJcblx0KVswXTtcclxuXHRpZiAoIXBlcm1pc3Npb25zKSB7XHJcblx0XHRyZXR1cm4gZmFsc2U7XHJcblx0fSBlbHNlIHtcclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxufVxyXG5jb25zdCBhcHAgPSBuZXcgVnVlKHtcclxuXHQuLi5BcHBcclxufSlcclxuYXBwLiRtb3VudCgpIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */