diff --git a/src/assets/favicon.ico b/src/assets/favicon.ico new file mode 100644 index 0000000..7261559 Binary files /dev/null and b/src/assets/favicon.ico differ diff --git a/src/components/DesignForm/app/cardPage.vue b/src/components/DesignForm/app/cardPage.vue index ff9dcfb..9261cd6 100644 --- a/src/components/DesignForm/app/cardPage.vue +++ b/src/components/DesignForm/app/cardPage.vue @@ -3,75 +3,75 @@ @ 时间: 2024-07-17 15:35:39 @ 备注: 卡片视图 --> - - - - - - - - - - - {{ cardInfo(item,"title") }} - {{ cardInfo(item,"content") }} - - - - - - - - - - - - - - - + + + + + + + + {{ cardInfo(item, "title") }} + {{ cardInfo(item, "content") }} + + + + + + + + + + - diff --git a/src/components/DesignForm/formControlPropertiNew.vue b/src/components/DesignForm/formControlPropertiNew.vue index 43c8fac..d989311 100644 --- a/src/components/DesignForm/formControlPropertiNew.vue +++ b/src/components/DesignForm/formControlPropertiNew.vue @@ -3,136 +3,134 @@ @ 时间: 2024-06-13 08:43:17 @ 备注: 表单控件(app)专用 --> - - - - - - - - 通用属性 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 点此上传 - 已上传,点击修改 - - + 通用属性 + + + + + + + + + + + + + + + + + + + + + + + + + + + 点此上传 + 已上传,点击修改 + + - - - - - - - - - - - - - - - - - - 轮播图设置 - - - - - - - - - - - - - - 编辑固定选项 - - - - - - - - - - - - - - + + + + + + + + + + + + + + + 轮播图设置 + + + + + + + + + + + + 编辑固定选项 + + + + + + + + + + + + + + - - - - - - 设置隐藏条件 - - - - - - {{ controlData.control.asfasfLabel==''?'选择关联表单':controlData.control.asfasfLabel }} - - - - - 设置数据范围 - - - - - - 设置数据填充规则 - - - - - - - - - - - - - - - - - - - - - - - - - - - 隐藏(默认) - 禁用 - - - - - - - 标签配置项 - - - - - - - - - - 增加标签 - - - - - - 编码规则配置 - - - - - - - - - - - - - - - - - - - - - 添加规则 - - - - - - 关联选项设置 - - - 关联选项设置 - - - 关联选项设置 - - - - 选项配置 - - - - - - - - - - - - - - - - - - + 标签配置项 + + + + + + + + + + 增加标签 + + + + + + 编码规则配置 + + + + + + + + + + + + + + + + + + 添加规则 + + + + + + 关联选项设置 + + + 关联选项设置 + + + 关联选项设置 + + + + 选项配置 + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - 选项标签 - - - - - - - - - - - - - - - - - {{ controlData.type === 'cascader' ? '编辑' : '新增' }} - - - - 选择系统表单字段 - - - - - - - - - - - - - - - - - - - - - - - beforeRequest - afterResponse - - - - - 不转换 - number - string - - - - + + + + + + + + + + + - - - 校验设置 - - - - - - 必填 - - - - - - - - - - - {{item.label}} - - - - - - - - - - - - {{item.label}} - - - - - - - - - + + {{ + controlData.type === "cascader" ? "编辑" : "新增" + }} + + + + 选择系统表单字段 + + + + + + + + + + + + + + + + + + + + + + + beforeRequest + afterResponse + + + + + 不转换 + number + string + + + + + + 校验设置 + + + + 必填 + + + + + + + + + + {{ item.label }} + + + + + + + + + + + + {{ item.label }} + + + + + + + + + - - - - 必填 - - - - - - + - 高级属性 - - - - - - - - - - - 基础配置 - - - 归属分组 - - - - - 加载中 - 无数据 - - - - - - - - - - - - - 表单图标 - - - - - - - - - - - - - - - 表单整体布局 - - - 大 - 适中 - 小 - - - - - - - - - - - - - PX - - - - - - - - 左 - 右 - 上 - - - - - 左 - 右 - - - - - - - - - - - - - - - 表单功能补充 - - - 编辑表单样式 - - - - - - - - 设置数据字典 - - - - - - - - - 接口数据事件 - - - - 添加时获取请求 - - - - - - - - - - - - - - - - - - - beforeRequest - - afterResponse - - beforeSubmit - - afterSubmit - - 表单组件改变事件change - - - - - - - - - - - - - - - 轮播图宽度(像素): - 轮播图高度(像素): - 切图间隔(毫秒): - - - - - - 点此上传 - 已上传,点击修改 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 新增根节点 - - - - - - - - {{ node.label }} - - 新增子节点 - 编辑节点名 - 设为可选/不可选 - 删除本节点 - - - - - - - - - - - - - - - - - - 请选择表单 - - - - - - - - - - - - - - - - - - + + + + 轮播图宽度(像素): + 轮播图高度(像素): + 切图间隔(毫秒): + + + + + + 点此上传 + 已上传,点击修改 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 新增根节点 + + + + + + + {{ node.label }} + + 新增子节点 + + 编辑节点名 + + + 设为可选/不可选 + + + 删除本节点 + + + + + + + + + + + + + + + + 请选择表单 + + + + + + + + + + + + + + - - - - - - - - 当满足以下条件时此控件隐藏 - - - - - - - - 请从左侧面板右击选择字段或选项 - 支持的符号:'==', '>=', '>', '<=', '<', '!=' - 支持"包含,不包含,当前用户"关键字,用于组织机构条件和角色条件 - 参考举例: - 年龄>10 - 企管部包含当前用户 - 绩效考核执行人包含当前用户 - 张三!=当前用户 - - - - - - - - + + + + 请从左侧面板右击选择字段或选项 + + 支持的符号:'==', '>=', '>', '<=', '<', '!=' + + + 支持"包含,不包含,当前用户"关键字,用于组织机构条件和角色条件 + + 参考举例: + 年龄>10 + 企管部包含当前用户 + 绩效考核执行人包含当前用户 + 张三!=当前用户 + + + + + - - - - - - - - - - - - - - - + + + + + + + + - - - - - - - - 仅可选择符合以下条件的数据 - - - - - - - - 请从左侧面板右击选择字段或选项 - 支持的符号:'==', '>=', '>', '<=', '<', '!=' - 支持"包含,不包含,数据拥有者,数据所属部门"关键字,用于组织机构条件,角色条件,==运算符和!=运算符 - 参考举例: - 年龄>10 - 企管部==数据所属部门 - 绩效考核执行人包含数据拥有者 - 生产部包含数据所属部门 - - - - - - - - - - - - - - - - - - - - 十 主表填充规则 - - - - - - - - - - - 十 子表填充规则 - - - - - - - - - - + + + + + + + + + + 十 主表填充规则 + + + + + + + + + + + + 十 子表填充规则 - - - - - - - - - - - - - - - - - - - - {{ optionScope.row.label }} - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 新增 - - - - - - - - - - - - - - - - 当开关打开时显示 - - - 当开关关闭时显示 - - - - - - - - - - - - - - - - - 请选择表单 - - - - - 请选择字段 - + 确定 + + + + + + + + + + + + + + {{ optionScope.row.label }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 新增 + + + + + + + + + + 当开关打开时显示 + + + + 当开关关闭时显示 + + + + + + + + + + + + + + + + 请选择表单 + + + + 请选择字段 + - - - - - - - + + + + + + + - diff --git a/src/components/DesignForm/public/form/childTable.vue b/src/components/DesignForm/public/form/childTable.vue index ccae241..1adcb3b 100644 --- a/src/components/DesignForm/public/form/childTable.vue +++ b/src/components/DesignForm/public/form/childTable.vue @@ -3,264 +3,268 @@ @ 时间: 2023-07-14 08:51:25 @ 备注: 表单子表 --> - - - - - - - - {{ scope.$index + 1 }} - - - - - - - - - - - - - - {{ getText(scope.row[item.name],scope.row,item.name) }} - - - - - - - - {{ scope.column.label }} - - - - - - {{ data.config.delBtnText }} - - - - - {{ data.config.addBtnText }} - - + + + + + {{ scope.$index + 1 }} + + + + + + + + + + + + + {{ getText(scope.row[item.name], scope.row, item.name) }} + + + + + + + {{ scope.column.label }} + + + + + + {{ + data.config.delBtnText + }} + + + + + {{ data.config.addBtnText }} + + - + diff --git a/src/components/DesignForm/tableListPage/formPageCont.vue b/src/components/DesignForm/tableListPage/formPageCont.vue index 04337ed..8c940b3 100644 --- a/src/components/DesignForm/tableListPage/formPageCont.vue +++ b/src/components/DesignForm/tableListPage/formPageCont.vue @@ -3,528 +3,627 @@ @ 时间: 2024-04-03 13:39:16 @ 备注: 列表内容展示 --> - - - - - - - - - 历史记录 - - - - - - {{mastItem.label}} - - - - - - {{sonCentor}} - - - - - - - 修改说明: - {{item.explicate}} - - - - - - - - - - 审批流程 - - - - - - - - - - - - - - - - - 历史记录 - - - - - - - - - - {{mastItem.label}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{sonCentor.label}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + 历史记录 + + + + + + {{ mastItem.label }} + + + + + + + {{ sonCentor }} + + + + + + + 修改说明: + {{ item.explicate }} + + + + + + + + + + 审批流程 + + + + + + + + + + + + + + + 历史记录 + + + + + + + + + + {{ mastItem.label }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ sonCentor.label }} + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - diff --git a/src/components/DesignForm/tableListPage/index.vue b/src/components/DesignForm/tableListPage/index.vue index da5c9dd..f1df33d 100644 --- a/src/components/DesignForm/tableListPage/index.vue +++ b/src/components/DesignForm/tableListPage/index.vue @@ -3,231 +3,242 @@ @ 时间: 2024-03-29 14:21:27 @ 备注: 自定义表单通用列表 --> - - - - - - - - - - - - - - - - - - - - - - - - - - - 查询 - 重置 - - - - - - - 操作按钮区域 - - {{ item.label }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ scope.column.label }} - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + 查询 + 重置 + + + + + + + 操作按钮区域 + + {{ item.label }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ scope.column.label }} + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - {{writeListTitle(scope.row,viewPage.list)}} - - - - - - - - {{ scope.column.label }} - - - - - {{ scope.row[scope.column.property] }} - - - - 启用 - 已禁用 - 已删除 - - - - {{ scope.row[scope.column.property] }} - - - - {{ scope.row[scope.column.property] }} - - - - - - {{ scope.row[scope.column.property] }} - - - - {{ judjeRadio(scope.row[scope.column.property],item.options) }} - - - - - - - - - - - - - - - - 启用 - - - 禁用 - - - - {{scope.row[scope.column.property]}} - - - - - {{scope.row[scope.column.property]}} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ tableDataList}} - - - - - - + + + + + + + + + {{ writeListTitle(scope.row, viewPage.list) }} + + + + + + + {{ scope.column.label }} + + - - - - - - - - - - - - + + {{ scope.row[scope.column.property] }} + + + + 启用 + 已禁用 + 已删除 + + + + {{ scope.row[scope.column.property] }} + + + + {{ scope.row[scope.column.property] }} + + + + + + {{ scope.row[scope.column.property] }} + + + + + {{ judjeRadio(scope.row[scope.column.property], item.options) }} + + + + + + + + + + + + + + + 启用 + + 禁用 + + + {{ scope.row[scope.column.property] }} + + + + {{ scope.row[scope.column.property] }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ tableDataList }} + + + + + + - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - + + + - diff --git a/src/views/sysworkflow/lowcodepage/index.vue b/src/views/sysworkflow/lowcodepage/index.vue index cb12317..7e8b50c 100644 --- a/src/views/sysworkflow/lowcodepage/index.vue +++ b/src/views/sysworkflow/lowcodepage/index.vue @@ -3,201 +3,198 @@ @ 时间: 2024-07-20 15:31:12 @ 备注: 应用设置 --> - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - 新增分组 - 添加表单 - 添加应用 - 编辑 - 删除 - - - - - - - - - - - - - - + + + + 新增分组 + 添加表单 + 添加应用 + 编辑 + 删除 + + + + + + + + + + + + + + - diff --git a/src/views/taskplatform/taskmanagement/lookFlowInfoApp.vue b/src/views/taskplatform/taskmanagement/lookFlowInfoApp.vue index 1fe83ec..498581a 100644 --- a/src/views/taskplatform/taskmanagement/lookFlowInfoApp.vue +++ b/src/views/taskplatform/taskmanagement/lookFlowInfoApp.vue @@ -3,216 +3,268 @@ @ 时间: 2024-06-17 15:30:36 @ 备注: App执行任务 --> - - - - - - - - - 历史2记录 - - - - - - {{mastItem}} - - - - - - {{sonCentor}} - - - - - - - 修改说明: - {{item.explicate}} - - - - - - - - - - + gainTaskFormInfo({ id: props.flowLogInfo.mastersKeyStr }) + .then((data: any) => { + if (data.data.logistrue) { + formState.formData.list.push(editLookFormCont); + } + // console.log("res----获得数据回显------->",data) + formEl.value.setValue(data.data.masterDataInfo); + newLogAry.value = data.data.newData; + oldLogAry.value = data.data.oldData; + logistrue.value = data.data.logistrue; + newDataLen.value = data.data.newDataLen; + formLoading.value = false; + nextTick(() => { + // console.log("获取自定义表单内容-1111-->",data.data.tableData) + formEl.value.setValue(data.data.tableData); + }); + }) + .finally(() => { + formLoading.value = false; + gainEditDataLog({ id: props.flowLogInfo.mastersKeyStr }).then(({ data }) => { + // console.log("获取修改记录-1111-->",data) + pageLog.value = data; + }); + }); + // haveCustomerFormVersion({id:props.flowLogInfo.version_id.toString()}) + // .then(({ data }) =>{ + // formState.dict = string2json(data.dict) + // judgeSubmitCancel({"name":data.mastesformjson}) + // .then((dataBut:any) =>{ + // if(dataBut.code == 0){ + // formState.formData.list.push(afreshSubmitButton) + // // console.log("res----判断按钮------->",dataBut,props.operState) + // // if (dataBut.data == 3 || dataBut.data == 4){ + // // formInfo.formData.list.push(editFormCont) + // // } + // } + // }) + // }) + // .finally(() => { + // formLoading.value = false; - - - - - - - - - - + // formEl + // }) +}; + + + + + + + + + 历史2记录 + + + + + + {{ mastItem }} + + + + + + + {{ sonCentor }} + + + + + + + 修改说明: + {{ item.explicate }} + + + + + + + + + + + + + - diff --git a/vite.config.ts.timestamp-1731975545563-47f159282f4b9.mjs b/vite.config.ts.timestamp-1731975545563-47f159282f4b9.mjs new file mode 100644 index 0000000..46e659b --- /dev/null +++ b/vite.config.ts.timestamp-1731975545563-47f159282f4b9.mjs @@ -0,0 +1,196 @@ +// vite.config.ts +import vue from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/@vitejs/plugin-vue/dist/index.mjs"; +import { loadEnv, defineConfig } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/vite/dist/node/index.js"; +import AutoImport from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-auto-import/dist/vite.js"; +import Components from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-vue-components/dist/vite.mjs"; +import { ElementPlusResolver } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-vue-components/dist/resolvers.mjs"; +import Icons from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-icons/dist/vite.mjs"; +import IconsResolver from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-icons/dist/resolver.mjs"; +import { createSvgIconsPlugin } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/vite-plugin-svg-icons/dist/index.mjs"; +import UnoCSS from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unocss/dist/vite.mjs"; +import path from "path"; +var __vite_injected_original_dirname = "E:\\f_pang\\object\\my_object_html\\ShutongInterconnectedChemicalCloudPlatform"; +var pathSrc = path.resolve(__vite_injected_original_dirname, "src"); +var vite_config_default = defineConfig(({ mode }) => { + const env = loadEnv(mode, process.cwd()); + return { + resolve: { + alias: { + "@": pathSrc + } + }, + css: { + // CSS 预处理器 + preprocessorOptions: { + //define global scss variable + scss: { + javascriptEnabled: true, + additionalData: ` + @use "@/styles/variables.scss" as *; + ` + } + } + }, + server: { + host: "0.0.0.0", + port: Number(env.VITE_APP_PORT), + open: true, + // 运行是否自动打开浏览器 + proxy: { + // 反向代理解决跨域 + [env.VITE_APP_BASE_API]: { + target: env.VITE_APP_BASE_URL, + // 线上接口地址 + // target: "http://vapi.youlai.tech", // 线上接口地址 + // target: 'http://localhost:8989', // 本地接口地址 , 后端工程仓库地址:https://gitee.com/youlaiorg/youlai-boot + changeOrigin: true, + rewrite: (path2) => path2.replace(new RegExp("^" + env.VITE_APP_BASE_API), "") + // 替换 /dev-api 为 target 接口地址 + } + // '/dev-api/kpiapi': { + // target: 'http://127.0.0.1:6666', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/kpiapi'), ""), + // }, + // '/dev-api/systemapi': { + // target: 'http://127.0.0.1:17777', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/systemapi'), ""), + // }, + // '/dev-api/hrapi': { + // target: 'http://127.0.0.1:39168', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/hrapi'), ""), + // }, + // '/dev-api/api': { + // target: 'http://127.0.0.1:8888', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/api'), ""), + // }, + // '/dev-api/javasys': { + // target: 'http://172.20.2.87:8111', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/javasys'), ""), + // }, + // '/dev-api/javasys/lowCode ': { + // target: 'http://172.20.2.87:8112', + // changeOrigin: true, + // rewrite: (path) => + // path.replace(new RegExp("^" + '/dev-api/javasys/lowCode '), ""), + // } + } + }, + plugins: [ + vue(), + UnoCSS({ + /* options */ + }), + AutoImport({ + // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等 + imports: ["vue", "@vueuse/core"], + //ignore: ['h'], // 自动添加 import { h } from '/node_modules/.vite/deps/vue.js 代码问题处理 + eslintrc: { + enabled: false, + // Default `false` + filepath: "./.eslintrc-auto-import.json", + // Default `./.eslintrc-auto-import.json` + globalsPropValue: true + // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable') + }, + resolvers: [ + // 自动导入 Element Plus 相关函数,如:ElMessage, ElMessageBox... (带样式) + ElementPlusResolver(), + // 自动导入图标组件 + IconsResolver({}) + ], + vueTemplate: true, + // 是否在 vue 模板中自动导入 + dts: path.resolve(pathSrc, "types", "auto-imports.d.ts") + // 自动导入组件类型声明文件位置,默认根目录; false 关闭自动生成 + }), + Components({ + resolvers: [ + // 自动注册图标组件 + IconsResolver({ + enabledCollections: ["ep"] + //@iconify-json/ep 是 Element Plus 的图标库 + }), + // 自动导入 Element Plus 组件 + ElementPlusResolver() + ], + dts: path.resolve(pathSrc, "types", "components.d.ts") + // 自动导入组件类型声明文件位置,默认根目录; false 关闭自动生成 + }), + Icons({ + // 自动安装图标库 + autoInstall: true + }), + createSvgIconsPlugin({ + // 指定需要缓存的图标文件夹 + iconDirs: [path.resolve(pathSrc, "assets/icons")], + // 指定symbolId格式 + symbolId: "icon-[dir]-[name]" + }) + ], + optimizeDeps: { + include: [ + "vue", + "vue-router", + "pinia", + "axios", + "element-plus/es/components/form/style/css", + "element-plus/es/components/form-item/style/css", + "element-plus/es/components/button/style/css", + "element-plus/es/components/input/style/css", + "element-plus/es/components/input-number/style/css", + "element-plus/es/components/switch/style/css", + "element-plus/es/components/upload/style/css", + "element-plus/es/components/menu/style/css", + "element-plus/es/components/col/style/css", + "element-plus/es/components/icon/style/css", + "element-plus/es/components/row/style/css", + "element-plus/es/components/tag/style/css", + "element-plus/es/components/dialog/style/css", + "element-plus/es/components/loading/style/css", + "element-plus/es/components/radio/style/css", + "element-plus/es/components/radio-group/style/css", + "element-plus/es/components/popover/style/css", + "element-plus/es/components/scrollbar/style/css", + "element-plus/es/components/tooltip/style/css", + "element-plus/es/components/dropdown/style/css", + "element-plus/es/components/dropdown-menu/style/css", + "element-plus/es/components/dropdown-item/style/css", + "element-plus/es/components/sub-menu/style/css", + "element-plus/es/components/menu-item/style/css", + "element-plus/es/components/divider/style/css", + "element-plus/es/components/card/style/css", + "element-plus/es/components/link/style/css", + "element-plus/es/components/breadcrumb/style/css", + "element-plus/es/components/breadcrumb-item/style/css", + "element-plus/es/components/table/style/css", + "element-plus/es/components/tree-select/style/css", + "element-plus/es/components/table-column/style/css", + "element-plus/es/components/select/style/css", + "element-plus/es/components/option/style/css", + "element-plus/es/components/pagination/style/css", + "element-plus/es/components/tree/style/css", + "element-plus/es/components/alert/style/css", + "@vueuse/core", + "path-to-regexp", + "echarts", + "@wangeditor/editor", + "@wangeditor/editor-for-vue", + "vue-i18n" + ] + } + }; +}); +export { + vite_config_default as default +}; +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJFOlxcXFxmX3BhbmdcXFxcb2JqZWN0XFxcXG15X29iamVjdF9odG1sXFxcXFNodXRvbmdJbnRlcmNvbm5lY3RlZENoZW1pY2FsQ2xvdWRQbGF0Zm9ybVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRTpcXFxcZl9wYW5nXFxcXG9iamVjdFxcXFxteV9vYmplY3RfaHRtbFxcXFxTaHV0b25nSW50ZXJjb25uZWN0ZWRDaGVtaWNhbENsb3VkUGxhdGZvcm1cXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0U6L2ZfcGFuZy9vYmplY3QvbXlfb2JqZWN0X2h0bWwvU2h1dG9uZ0ludGVyY29ubmVjdGVkQ2hlbWljYWxDbG91ZFBsYXRmb3JtL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHZ1ZSBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tdnVlXCI7XG5cbmltcG9ydCB7IFVzZXJDb25maWcsIENvbmZpZ0VudiwgbG9hZEVudiwgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIjtcblxuaW1wb3J0IEF1dG9JbXBvcnQgZnJvbSBcInVucGx1Z2luLWF1dG8taW1wb3J0L3ZpdGVcIjtcbmltcG9ydCBDb21wb25lbnRzIGZyb20gXCJ1bnBsdWdpbi12dWUtY29tcG9uZW50cy92aXRlXCI7XG5pbXBvcnQgeyBFbGVtZW50UGx1c1Jlc29sdmVyIH0gZnJvbSBcInVucGx1Z2luLXZ1ZS1jb21wb25lbnRzL3Jlc29sdmVyc1wiO1xuXG5pbXBvcnQgSWNvbnMgZnJvbSBcInVucGx1Z2luLWljb25zL3ZpdGVcIjtcbmltcG9ydCBJY29uc1Jlc29sdmVyIGZyb20gXCJ1bnBsdWdpbi1pY29ucy9yZXNvbHZlclwiO1xuXG5pbXBvcnQgeyBjcmVhdGVTdmdJY29uc1BsdWdpbiB9IGZyb20gXCJ2aXRlLXBsdWdpbi1zdmctaWNvbnNcIjtcblxuaW1wb3J0IFVub0NTUyBmcm9tIFwidW5vY3NzL3ZpdGVcIjtcblxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmNvbnN0IHBhdGhTcmMgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcInNyY1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKCh7IG1vZGUgfTogQ29uZmlnRW52KTogVXNlckNvbmZpZyA9PiB7XG4gIGNvbnN0IGVudiA9IGxvYWRFbnYobW9kZSwgcHJvY2Vzcy5jd2QoKSk7XG4gIHJldHVybiB7XG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHtcbiAgICAgICAgXCJAXCI6IHBhdGhTcmMsXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3NzOiB7XG4gICAgICAvLyBDU1MgXHU5ODg0XHU1OTA0XHU3NDA2XHU1NjY4XG4gICAgICBwcmVwcm9jZXNzb3JPcHRpb25zOiB7XG4gICAgICAgIC8vZGVmaW5lIGdsb2JhbCBzY3NzIHZhcmlhYmxlXG4gICAgICAgIHNjc3M6IHtcbiAgICAgICAgICBqYXZhc2NyaXB0RW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICBhZGRpdGlvbmFsRGF0YTogYFxuICAgICAgICAgICAgQHVzZSBcIkAvc3R5bGVzL3ZhcmlhYmxlcy5zY3NzXCIgYXMgKjtcbiAgICAgICAgICBgLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHNlcnZlcjoge1xuICAgICAgaG9zdDogXCIwLjAuMC4wXCIsXG4gICAgICBwb3J0OiBOdW1iZXIoZW52LlZJVEVfQVBQX1BPUlQpLFxuICAgICAgb3BlbjogdHJ1ZSwgLy8gXHU4RkQwXHU4ODRDXHU2NjJGXHU1NDI2XHU4MUVBXHU1MkE4XHU2MjUzXHU1RjAwXHU2RDRGXHU4OUM4XHU1NjY4XG4gICAgICBwcm94eToge1xuICAgICAgICAvLyBcdTUzQ0RcdTU0MTFcdTRFRTNcdTc0MDZcdTg5RTNcdTUxQjNcdThERThcdTU3REZcbiAgICAgICAgW2Vudi5WSVRFX0FQUF9CQVNFX0FQSV06IHtcbiAgICAgICAgICB0YXJnZXQ6IGVudi5WSVRFX0FQUF9CQVNFX1VSTCwgLy8gXHU3RUJGXHU0RTBBXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwXG4gICAgICAgICAgLy8gdGFyZ2V0OiBcImh0dHA6Ly92YXBpLnlvdWxhaS50ZWNoXCIsIC8vIFx1N0VCRlx1NEUwQVx1NjNBNVx1NTNFM1x1NTczMFx1NTc0MFxuICAgICAgICAgIC8vIHRhcmdldDogJ2h0dHA6Ly9sb2NhbGhvc3Q6ODk4OScsICAvLyBcdTY3MkNcdTU3MzBcdTYzQTVcdTUzRTNcdTU3MzBcdTU3NDAgLCBcdTU0MEVcdTdBRUZcdTVERTVcdTdBMEJcdTRFRDNcdTVFOTNcdTU3MzBcdTU3NDBcdUZGMUFodHRwczovL2dpdGVlLmNvbS95b3VsYWlvcmcveW91bGFpLWJvb3RcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXG4gICAgICAgICAgcmV3cml0ZTogKHBhdGgpID0+XG4gICAgICAgICAgICBwYXRoLnJlcGxhY2UobmV3IFJlZ0V4cChcIl5cIiArIGVudi5WSVRFX0FQUF9CQVNFX0FQSSksIFwiXCIpLCAvLyBcdTY2RkZcdTYzNjIgL2Rldi1hcGkgXHU0RTNBIHRhcmdldCBcdTYzQTVcdTUzRTNcdTU3MzBcdTU3NDBcbiAgICAgICAgfSxcbiAgICAgICAgLy8gJy9kZXYtYXBpL2twaWFwaSc6IHtcbiAgICAgICAgLy8gICB0YXJnZXQ6ICdodHRwOi8vMTI3LjAuMC4xOjY2NjYnLFxuICAgICAgICAvLyAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL2twaWFwaScpLCBcIlwiKSxcbiAgICAgICAgLy8gfSxcblxuICAgICAgICAvLyAnL2Rldi1hcGkvc3lzdGVtYXBpJzoge1xuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6MTc3NzcnLFxuICAgICAgICAvLyAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL3N5c3RlbWFwaScpLCBcIlwiKSxcbiAgICAgICAgLy8gfSxcbiAgICAgICAgLy8gJy9kZXYtYXBpL2hyYXBpJzoge1xuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6MzkxNjgnLFxuICAgICAgICAvLyAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL2hyYXBpJyksIFwiXCIpLFxuICAgICAgICAvLyB9LFxuICAgICAgICAvLyAnL2Rldi1hcGkvYXBpJzoge1xuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6ODg4OCcsXG4gICAgICAgIC8vICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxuICAgICAgICAvLyAgIHJld3JpdGU6IChwYXRoKSA9PlxuICAgICAgICAvLyAgICAgcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCJeXCIgKyAnL2Rldi1hcGkvYXBpJyksIFwiXCIpLFxuICAgICAgICAvLyB9LFxuICAgICAgICAvLyAnL2Rldi1hcGkvamF2YXN5cyc6IHtcbiAgICAgICAgLy8gICB0YXJnZXQ6ICdodHRwOi8vMTcyLjIwLjIuODc6ODExMScsXG4gICAgICAgIC8vICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxuICAgICAgICAvLyAgIHJld3JpdGU6IChwYXRoKSA9PlxuICAgICAgICAvLyAgICAgcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCJeXCIgKyAnL2Rldi1hcGkvamF2YXN5cycpLCBcIlwiKSxcbiAgICAgICAgLy8gfSxcbiAgICAgICAgLy8gJy9kZXYtYXBpL2phdmFzeXMvbG93Q29kZSAnOiB7XG4gICAgICAgIC8vICAgdGFyZ2V0OiAnaHR0cDovLzE3Mi4yMC4yLjg3OjgxMTInLFxuICAgICAgICAvLyAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL2phdmFzeXMvbG93Q29kZSAnKSwgXCJcIiksXG4gICAgICAgIC8vIH1cbiAgICAgIH0sXG4gICAgfSxcblxuICAgIHBsdWdpbnM6IFtcblxuICAgICAgdnVlKCksXG4gICAgICBVbm9DU1Moe1xuICAgICAgICAvKiBvcHRpb25zICovXG4gICAgICB9KSxcbiAgICAgIEF1dG9JbXBvcnQoe1xuICAgICAgICAvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjUgVnVlIFx1NzZGOFx1NTE3M1x1NTFGRFx1NjU3MFx1RkYwQ1x1NTk4Mlx1RkYxQXJlZiwgcmVhY3RpdmUsIHRvUmVmIFx1N0I0OVxuICAgICAgICBpbXBvcnRzOiBbXCJ2dWVcIiwgXCJAdnVldXNlL2NvcmVcIl0sXG4gICAgICAgIC8vaWdub3JlOiBbJ2gnXSwgLy8gXHU4MUVBXHU1MkE4XHU2REZCXHU1MkEwIGltcG9ydCB7IGggfSBmcm9tICcvbm9kZV9tb2R1bGVzLy52aXRlL2RlcHMvdnVlLmpzIFx1NEVFM1x1NzgwMVx1OTVFRVx1OTg5OFx1NTkwNFx1NzQwNlxuICAgICAgICBlc2xpbnRyYzoge1xuICAgICAgICAgIGVuYWJsZWQ6IGZhbHNlLCAvLyAgRGVmYXVsdCBgZmFsc2VgXG4gICAgICAgICAgZmlsZXBhdGg6IFwiLi8uZXNsaW50cmMtYXV0by1pbXBvcnQuanNvblwiLCAvLyBEZWZhdWx0IGAuLy5lc2xpbnRyYy1hdXRvLWltcG9ydC5qc29uYFxuICAgICAgICAgIGdsb2JhbHNQcm9wVmFsdWU6IHRydWUsIC8vIERlZmF1bHQgYHRydWVgLCAodHJ1ZSB8IGZhbHNlIHwgJ3JlYWRvbmx5JyB8ICdyZWFkYWJsZScgfCAnd3JpdGFibGUnIHwgJ3dyaXRlYWJsZScpXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmVyczogW1xuICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NSBFbGVtZW50IFBsdXMgXHU3NkY4XHU1MTczXHU1MUZEXHU2NTcwXHVGRjBDXHU1OTgyXHVGRjFBRWxNZXNzYWdlLCBFbE1lc3NhZ2VCb3guLi4gKFx1NUUyNlx1NjgzN1x1NUYwRilcbiAgICAgICAgICBFbGVtZW50UGx1c1Jlc29sdmVyKCksXG4gICAgICAgICAgLy8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XG4gICAgICAgICAgSWNvbnNSZXNvbHZlcih7fSksXG4gICAgICAgIF0sXG4gICAgICAgIHZ1ZVRlbXBsYXRlOiB0cnVlLCAvLyBcdTY2MkZcdTU0MjZcdTU3MjggdnVlIFx1NkEyMVx1Njc3Rlx1NEUyRFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NVxuICAgICAgICBkdHM6IHBhdGgucmVzb2x2ZShwYXRoU3JjLCBcInR5cGVzXCIsIFwiYXV0by1pbXBvcnRzLmQudHNcIiksIC8vICBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjVcdTdFQzRcdTRFRjZcdTdDN0JcdTU3OEJcdTU4RjBcdTY2MEVcdTY1ODdcdTRFRjZcdTRGNERcdTdGNkVcdUZGMENcdTlFRDhcdThCQTRcdTY4MzlcdTc2RUVcdTVGNTU7IGZhbHNlIFx1NTE3M1x1OTVFRFx1ODFFQVx1NTJBOFx1NzUxRlx1NjIxMFxuICAgICAgfSksXG5cbiAgICAgIENvbXBvbmVudHMoe1xuICAgICAgICByZXNvbHZlcnM6IFtcbiAgICAgICAgICAvLyBcdTgxRUFcdTUyQThcdTZDRThcdTUxOENcdTU2RkVcdTY4MDdcdTdFQzRcdTRFRjZcbiAgICAgICAgICBJY29uc1Jlc29sdmVyKHtcbiAgICAgICAgICAgIGVuYWJsZWRDb2xsZWN0aW9uczogW1wiZXBcIl0sIC8vQGljb25pZnktanNvbi9lcCBcdTY2MkYgRWxlbWVudCBQbHVzIFx1NzY4NFx1NTZGRVx1NjgwN1x1NUU5M1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NSBFbGVtZW50IFBsdXMgXHU3RUM0XHU0RUY2XG4gICAgICAgICAgRWxlbWVudFBsdXNSZXNvbHZlcigpLFxuICAgICAgICBdLFxuICAgICAgICBkdHM6IHBhdGgucmVzb2x2ZShwYXRoU3JjLCBcInR5cGVzXCIsIFwiY29tcG9uZW50cy5kLnRzXCIpLCAvLyAgXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU3RUM0XHU0RUY2XHU3QzdCXHU1NzhCXHU1OEYwXHU2NjBFXHU2NTg3XHU0RUY2XHU0RjREXHU3RjZFXHVGRjBDXHU5RUQ4XHU4QkE0XHU2ODM5XHU3NkVFXHU1RjU1OyBmYWxzZSBcdTUxNzNcdTk1RURcdTgxRUFcdTUyQThcdTc1MUZcdTYyMTBcbiAgICAgIH0pLFxuXG4gICAgICBJY29ucyh7XG4gICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUI4OVx1ODhDNVx1NTZGRVx1NjgwN1x1NUU5M1xuICAgICAgICBhdXRvSW5zdGFsbDogdHJ1ZSxcbiAgICAgIH0pLFxuXG4gICAgICBjcmVhdGVTdmdJY29uc1BsdWdpbih7XG4gICAgICAgIC8vIFx1NjMwN1x1NUI5QVx1OTcwMFx1ODk4MVx1N0YxM1x1NUI1OFx1NzY4NFx1NTZGRVx1NjgwN1x1NjU4N1x1NEVGNlx1NTkzOVxuICAgICAgICBpY29uRGlyczogW3BhdGgucmVzb2x2ZShwYXRoU3JjLCBcImFzc2V0cy9pY29uc1wiKV0sXG4gICAgICAgIC8vIFx1NjMwN1x1NUI5QXN5bWJvbElkXHU2ODNDXHU1RjBGXG4gICAgICAgIHN5bWJvbElkOiBcImljb24tW2Rpcl0tW25hbWVdXCIsXG4gICAgICB9KSxcbiAgICBdLFxuXG4gICAgb3B0aW1pemVEZXBzOiB7XG4gICAgICBpbmNsdWRlOiBbXG4gICAgICAgIFwidnVlXCIsXG4gICAgICAgIFwidnVlLXJvdXRlclwiLFxuICAgICAgICBcInBpbmlhXCIsXG4gICAgICAgIFwiYXhpb3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9mb3JtL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2Zvcm0taXRlbS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9idXR0b24vc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvaW5wdXQvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3N3aXRjaC9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy91cGxvYWQvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvbWVudS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9jb2wvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvaWNvbi9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9yb3cvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvdGFnL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2RpYWxvZy9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9sb2FkaW5nL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3JhZGlvL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3JhZGlvLWdyb3VwL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3BvcG92ZXIvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvc2Nyb2xsYmFyL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3Rvb2x0aXAvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvZHJvcGRvd24vc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvZHJvcGRvd24tbWVudS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9kcm9wZG93bi1pdGVtL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3N1Yi1tZW51L3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL21lbnUtaXRlbS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9kaXZpZGVyL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2NhcmQvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvbGluay9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9icmVhZGNydW1iL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2JyZWFkY3J1bWItaXRlbS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy90YWJsZS9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy90cmVlLXNlbGVjdC9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy90YWJsZS1jb2x1bW4vc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvc2VsZWN0L3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL29wdGlvbi9zdHlsZS9jc3NcIixcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9wYWdpbmF0aW9uL3N0eWxlL2Nzc1wiLFxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3RyZWUvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvYWxlcnQvc3R5bGUvY3NzXCIsXG4gICAgICAgIFwiQHZ1ZXVzZS9jb3JlXCIsXG5cbiAgICAgICAgXCJwYXRoLXRvLXJlZ2V4cFwiLFxuICAgICAgICBcImVjaGFydHNcIixcbiAgICAgICAgXCJAd2FuZ2VkaXRvci9lZGl0b3JcIixcbiAgICAgICAgXCJAd2FuZ2VkaXRvci9lZGl0b3ItZm9yLXZ1ZVwiLFxuICAgICAgICBcInZ1ZS1pMThuXCIsXG4gICAgICBdLFxuICAgIH0sXG4gIH07XG59KTtcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBMFosT0FBTyxTQUFTO0FBRTFhLFNBQWdDLFNBQVMsb0JBQW9CO0FBRTdELE9BQU8sZ0JBQWdCO0FBQ3ZCLE9BQU8sZ0JBQWdCO0FBQ3ZCLFNBQVMsMkJBQTJCO0FBRXBDLE9BQU8sV0FBVztBQUNsQixPQUFPLG1CQUFtQjtBQUUxQixTQUFTLDRCQUE0QjtBQUVyQyxPQUFPLFlBQVk7QUFFbkIsT0FBTyxVQUFVO0FBZmpCLElBQU0sbUNBQW1DO0FBZ0J6QyxJQUFNLFVBQVUsS0FBSyxRQUFRLGtDQUFXLEtBQUs7QUFFN0MsSUFBTyxzQkFBUSxhQUFhLENBQUMsRUFBRSxLQUFLLE1BQTZCO0FBQy9ELFFBQU0sTUFBTSxRQUFRLE1BQU0sUUFBUSxJQUFJLENBQUM7QUFDdkMsU0FBTztBQUFBLElBQ0wsU0FBUztBQUFBLE1BQ1AsT0FBTztBQUFBLFFBQ0wsS0FBSztBQUFBLE1BQ1A7QUFBQSxJQUNGO0FBQUEsSUFDQSxLQUFLO0FBQUE7QUFBQSxNQUVILHFCQUFxQjtBQUFBO0FBQUEsUUFFbkIsTUFBTTtBQUFBLFVBQ0osbUJBQW1CO0FBQUEsVUFDbkIsZ0JBQWdCO0FBQUE7QUFBQTtBQUFBLFFBR2xCO0FBQUEsTUFDRjtBQUFBLElBQ0Y7QUFBQSxJQUNBLFFBQVE7QUFBQSxNQUNOLE1BQU07QUFBQSxNQUNOLE1BQU0sT0FBTyxJQUFJLGFBQWE7QUFBQSxNQUM5QixNQUFNO0FBQUE7QUFBQSxNQUNOLE9BQU87QUFBQTtBQUFBLFFBRUwsQ0FBQyxJQUFJLGlCQUFpQixHQUFHO0FBQUEsVUFDdkIsUUFBUSxJQUFJO0FBQUE7QUFBQTtBQUFBO0FBQUEsVUFHWixjQUFjO0FBQUEsVUFDZCxTQUFTLENBQUNBLFVBQ1JBLE1BQUssUUFBUSxJQUFJLE9BQU8sTUFBTSxJQUFJLGlCQUFpQixHQUFHLEVBQUU7QUFBQTtBQUFBLFFBQzVEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsTUFzQ0Y7QUFBQSxJQUNGO0FBQUEsSUFFQSxTQUFTO0FBQUEsTUFFUCxJQUFJO0FBQUEsTUFDSixPQUFPO0FBQUE7QUFBQSxNQUVQLENBQUM7QUFBQSxNQUNELFdBQVc7QUFBQTtBQUFBLFFBRVQsU0FBUyxDQUFDLE9BQU8sY0FBYztBQUFBO0FBQUEsUUFFL0IsVUFBVTtBQUFBLFVBQ1IsU0FBUztBQUFBO0FBQUEsVUFDVCxVQUFVO0FBQUE7QUFBQSxVQUNWLGtCQUFrQjtBQUFBO0FBQUEsUUFDcEI7QUFBQSxRQUNBLFdBQVc7QUFBQTtBQUFBLFVBRVQsb0JBQW9CO0FBQUE7QUFBQSxVQUVwQixjQUFjLENBQUMsQ0FBQztBQUFBLFFBQ2xCO0FBQUEsUUFDQSxhQUFhO0FBQUE7QUFBQSxRQUNiLEtBQUssS0FBSyxRQUFRLFNBQVMsU0FBUyxtQkFBbUI7QUFBQTtBQUFBLE1BQ3pELENBQUM7QUFBQSxNQUVELFdBQVc7QUFBQSxRQUNULFdBQVc7QUFBQTtBQUFBLFVBRVQsY0FBYztBQUFBLFlBQ1osb0JBQW9CLENBQUMsSUFBSTtBQUFBO0FBQUEsVUFDM0IsQ0FBQztBQUFBO0FBQUEsVUFFRCxvQkFBb0I7QUFBQSxRQUN0QjtBQUFBLFFBQ0EsS0FBSyxLQUFLLFFBQVEsU0FBUyxTQUFTLGlCQUFpQjtBQUFBO0FBQUEsTUFDdkQsQ0FBQztBQUFBLE1BRUQsTUFBTTtBQUFBO0FBQUEsUUFFSixhQUFhO0FBQUEsTUFDZixDQUFDO0FBQUEsTUFFRCxxQkFBcUI7QUFBQTtBQUFBLFFBRW5CLFVBQVUsQ0FBQyxLQUFLLFFBQVEsU0FBUyxjQUFjLENBQUM7QUFBQTtBQUFBLFFBRWhELFVBQVU7QUFBQSxNQUNaLENBQUM7QUFBQSxJQUNIO0FBQUEsSUFFQSxjQUFjO0FBQUEsTUFDWixTQUFTO0FBQUEsUUFDUDtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFFQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFDRixDQUFDOyIsCiAgIm5hbWVzIjogWyJwYXRoIl0KfQo=
加载中
无数据