5.10航天ui交易所pc端,代码jiem-pc
lxf
2025-07-01 c9315c777646933ba3300cb5f3ab17f470776ee8
翻译
12 files modified
1 files added
211 ■■■■ changed files
src/api/perpetualContract.js 7 ●●●●● patch | view | raw | blame | history
src/config/index.js 7 ●●●● patch | view | raw | blame | history
src/i18n/cht/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/de/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/en/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/fra/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/jp/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/kor/user.js 1 ●●●● patch | view | raw | blame | history
src/i18n/zh/user.js 1 ●●●● patch | view | raw | blame | history
src/utils/http.js 25 ●●●● patch | view | raw | blame | history
src/views/my/center.vue 3 ●●●● patch | view | raw | blame | history
src/views/wallet/recharge.vue 63 ●●●●● patch | view | raw | blame | history
vite.config.js.timestamp-1751281703926-3d99fa8d10cdc.mjs 99 ●●●●● patch | view | raw | blame | history
src/api/perpetualContract.js
@@ -21,6 +21,12 @@
function contractApplyOrderOpen(data) {
  return Axios.fetch("wap/api/contractApplyOrder!open.action", data);
}
// 充值
function rechargeBlockchainrecharge(data) {
  return Axios.fetch("wap/api/rechargeBlockchain!recharge.action", data);
}
// 持仓 + 历史订单 + 未实现盈亏
function contractOrderList(data) {
@@ -58,6 +64,7 @@
  _initClose,
  _initOpen,
  contractApplyOrderOpen,
  rechargeBlockchainrecharge,
  orderPartClose,
  contractApplyOrderOpenList,
  cancelAll,
src/config/index.js
@@ -9,8 +9,11 @@
// let BASE_URL = "";
// let WS_URL = "";
//综合盘
let env_url = "coin.usadeepcoin.com";
let pro_url = "galaxyhkvip.top";
// let env_url = "coin.usadeepcoin.com";
let env_url = "EU.deepcoineu.com";
// let pro_url = "galaxyhkvip.top";
let pro_url = "EU.deepcoineu.com";
let ENV_DEV = "https://" + env_url + "/"; // dev
let ENV_PRO = "https://" + pro_url + "/";
let HOST_URL = "";
src/i18n/cht/user.js
@@ -459,6 +459,7 @@
    ti25: "請選擇網絡",
    ti26: "確保您選擇的充幣網絡與您在提幣平臺使用的網絡一致,否則資產可能會丟失。",
    ti27: "充值申請已提交",
    ti28: '請等待上一筆充值完成',
    xian1: "數字貨幣提現",
    xian2: "選擇幣種",
    xian3: "幣種",
src/i18n/de/user.js
@@ -449,6 +449,7 @@
    "ti25": "Bitte wählen Sie ein Netzwerk aus",
    "ti26": "Stellen Sie sicher, dass das von Ihnen gewählte Einzahlungsnetzwerk mit dem übereinstimmt, das Sie auf der Auszahlungsplattform verwenden, da sonst Ihr Vermögen verloren gehen kann.",
    "ti27": "Der Aufladeantrag wurde eingereicht",
    "ti28": "Bitte warten Sie, bis die vorherige Einzahlung",
    "xian1": "Abhebungen von digitalen Währungen",
    "xian2": "Wählen Sie die Währung aus",
    "xian3": "Währung",
src/i18n/en/user.js
@@ -477,6 +477,7 @@
  ti25: "Please select a network",
  ti26: "Make sure the deposit network you choose is the same as the network you use on the withdrawal platform, otherwise assets may be lost.",
  ti27: "The recharge application has been submitted",
  ti28: "Please wait for the previous deposit to complete",
  xian1: "Digital Currency withdrawal",
  xian2: "Select Currency",
  xian3: "Currency",
src/i18n/fra/user.js
@@ -449,6 +449,7 @@
    "ti25": "S’il vous plaît sélectionner un réseau",
    "ti26": "Assurez-vous que le réseau de dépôt que vous choisissez est le même que celui que vous utilisez sur la plateforme de retrait, sinon vos actifs risquent d’être perdus.",
    "ti27": "La demande de recharge a été soumise",
    "ti28": "Veuillez attendre que le dépôt précédent soit terminé !",
    "xian1": "Retraits de devises numériques",
    "xian2": "Sélectionnez la devise",
    "xian3": "Monnaie",
src/i18n/jp/user.js
@@ -449,6 +449,7 @@
    "ti25": "ネットワークを選択してください",
    "ti26": "選択した入金ネットワークが、出金プラットフォームで使用するものと同じであることを確認してください。",
    "ti27": "トップアップ要求が送信されました",
    "ti28": "前回の入金が完了するまでお待ちください!",
    "xian1": "デジタル通貨の引き出し",
    "xian2": "通貨を選択",
    "xian3": "通貨",
src/i18n/kor/user.js
@@ -449,6 +449,7 @@
  "ti25": "네트워크를 선택하세요.",
  "ti26": "선택한 입금 네트워크가 인출 플랫폼에서 사용하는 것과 동일한지 확인하십시오., 그렇지 않으면 자산이 손실될 수 있습니다.",
  "ti27": "충전 요청이 제출되었습니다.",
  "ti28": "이전 충전이 완료될 때까지 기다려주세요!",
  "xian1": "디지털 화폐 인출",
  "xian2": "통화를 선택합니다",
  "xian3": "통화",
src/i18n/zh/user.js
@@ -457,6 +457,7 @@
  ti25: "请选择网络",
  ti26: "确保您选择的充币网络与您在提币平台使用的网络一致,否则资产可能会丢失。",
  ti27: "充值申请已提交",
  ti28: '請等待上一筆充值完成',
  xian1: "数字货币提现",
  xian2: "选择币种",
  xian3: "币种",
src/utils/http.js
@@ -4,7 +4,6 @@
import allTits from "@/i18n/back";
import pinia from "@/store/index";
import { useUserStore } from "@/store/user";
import { ElMessage } from "element-plus";
import { getStorage, removeStorage, setStorage, getBrowserLang } from "@/utils";
@@ -19,7 +18,8 @@
var lang = JSON.parse(localStorage.getItem("lang"));
axios.defaults.timeout = 15000;
// axios.defaults.baseURL = URL.BASE_URL;
axios.defaults.baseURL = 'https://coin.usadeepcoin.com/';
// axios.defaults.baseURL = 'https://coin.usadeepcoin.com/';
axios.defaults.baseURL = 'https://EU.deepcoineu.com/';
// axios.defaults.baseURL = 'https://btc.btcwapo.com/';
axios.interceptors.request.use(
@@ -29,6 +29,7 @@
      // config.headers["Token"] = token;
    }
    if (!config.url.includes("language")) {
      const newUrl = `${config.url}?language=${lang}`;
      config.url = `${newUrl}&token=${token}`;
@@ -37,7 +38,7 @@
    return config;
  },
  (error) => {
    console.log("request error--", error);
    console.log("request error--111", error);
    return Promise.reject(error);
  }
);
@@ -55,6 +56,8 @@
axios.interceptors.response.use(
  (response) => {
    if (response.data.code != 0) {
      let msg = response.data.msg;
      let lanTits = "";
      //判断语言
      if (lang == "en") {
@@ -71,11 +74,19 @@
      if (response.data.code == "403" || response.data.code == "401") {
        handleClearLoginInfo();
      }
      if (allTits[lanTits] && allTits[lanTits][response.data.msg]) {
        ElMessage.error(allTits[lanTits][response.data.msg]);
      } else {
        ElMessage.error(response.data.msg);
      if (msg === "请等待上一笔充值完成!") {
        return response;
      }
      if (allTits[lanTits] && allTits[lanTits][msg]) {
        ElMessage.error(allTits[lanTits][msg]);
      } else {
        ElMessage.error(msg);
      }
      // if (allTits[lanTits] && allTits[lanTits][response.data.msg]) {
      //   ElMessage.error(allTits[lanTits][response.data.msg]);
      // } else {
      //   ElMessage.error(response.data.msg);
      // }
      return Promise.reject(response);
    }
    return response;
src/views/my/center.vue
@@ -34,7 +34,8 @@
              {{ $t("message.user.ma25") }}
            </p>
            <div data-v-1a056e44="" class="plane-tag">
              <span data-v-1a056e44=""> {{ $t("message.user.ma26") }} </span
              <span data-v-1a056e44="">
                {{ $t(`message.user.${statusMap[users.kyc_status]}`) }} </span
              ><!----><!----><!---->
            </div>
          </div>
src/views/wallet/recharge.vue
@@ -439,6 +439,7 @@
import QRCode from "qrcode";
import ListCoins from "@/components/my/listCoins.vue";
import { Plus, CaretBottom, ArrowLeftBold } from "@element-plus/icons-vue";
import Axios from "@/api/perpetualContract.js";
export default {
  components: { Plus, CaretBottom, ListCoins },
@@ -619,25 +620,49 @@
    //充币
    handleRecharge() {
      if (this.quantity && this.quantity > 0) {
        Axios2.url("wap/api/rechargeBlockchain!recharge.action", {
          session_token: this.session_token,
          amount: this.quantity,
          from: this.address,
          blockchain_name: this.blockchain_name,
          coin: this.coin,
          channel_address: this.address,
          tx: "",
          img: this.rechargeImg,
        }).then((res) => {
          this.getSessionToken();
          if (res.code == "0") {
            this.$message.success(this.$t("message.user.ti27"));
            this.quantity = "";
            this.rechargeImg = "";
            this.oneImg = "";
            this.getRechargeRecord();
          }
        });
        // Axios2.url("wap/api/rechargeBlockchain!recharge.action", {
        //   session_token: this.session_token,
        //   amount: this.quantity,
        //   from: this.address,
        //   blockchain_name: this.blockchain_name,
        //   coin: this.coin,
        //   channel_address: this.address,
        //   tx: "",
        //   img: this.rechargeImg,
        // })
        Axios.rechargeBlockchainrecharge(
          {
            session_token: this.session_token,
            amount: this.quantity,
            from: this.address,
            blockchain_name: this.blockchain_name,
            coin: this.coin,
            channel_address: this.address,
            tx: "",
            img: this.rechargeImg,
          },
          false
        )
          .then((res) => {
            this.getSessionToken();
            console.log("请等待上一笔充值完成!", res);
            if (res.code == "0") {
              this.$message.success(this.$t("message.user.ti27"));
              this.quantity = "";
              this.rechargeImg = "";
              this.oneImg = "";
              this.getRechargeRecord();
            } else if (res.msg == "请等待上一笔充值完成!") {
              this.$message.error(this.$t("message.user.ti28"));
            }
          })
          .catch((error) => {
            console.log(error, "11");
            if (error.data.msg == "请等待上一笔充值完成!") {
              this.$message.error(this.$t("message.user.ti28"));
            }
          });
      } else {
        this.$message.error(this.$t("message.user.xian33"));
      }
vite.config.js.timestamp-1751281703926-3d99fa8d10cdc.mjs
New file
@@ -0,0 +1,99 @@
// vite.config.js
import { defineConfig } from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/vite/dist/node/index.js";
import vue from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/@vitejs/plugin-vue/dist/index.mjs";
import path from "path";
import Icons from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-icons/dist/vite.mjs";
import IconsResolver from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-icons/dist/resolver.mjs";
import AutoImport from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-auto-import/dist/vite.js";
import Components from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-vue-components/dist/vite.mjs";
import { ElementPlusResolver } from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-vue-components/dist/resolvers.mjs";
import DefineOptions from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/unplugin-vue-define-options/dist/vite.mjs";
import { visualizer } from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/rollup-plugin-visualizer/dist/plugin/index.js";
import legacy from "file:///Users/apple/Desktop/%E6%82%85%E6%96%90%E8%B7%A8%E5%A2%83/aerospace-pc/node_modules/@vitejs/plugin-legacy/dist/index.mjs";
var __vite_injected_original_dirname = "/Users/apple/Desktop/\u6085\u6590\u8DE8\u5883/aerospace-pc";
var isVisualizer = process.env.VISUALIZER === "show";
var vite_config_default = defineConfig({
  // base: "/pcbionics/",
  plugins: [
    vue(),
    Components({
      resolvers: [
        ElementPlusResolver(),
        // 自动导入 Element Plus 组件
        // IconsResolver({
        //   enabledCollections: ['ep'],
        // }),// 自动注册图标组件
        IconsResolver()
        // 自动注册图标组件
      ]
    }),
    AutoImport({
      imports: ["vue"],
      // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等
      resolvers: [
        ElementPlusResolver(),
        IconsResolver()
        // 自动导入图标组件
        // IconsResolver({
        //   prefix: 'Icon',
        // }),  // 自动导入图标组件
      ]
    }),
    Icons({
      autoInstall: true
    }),
    DefineOptions(),
    isVisualizer && visualizer({ gzipSize: true }),
    legacy({
      targets: ["defaults", "not IE 11"]
    })
  ],
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: '@import "@/assets/forex/global.scss";'
        //全局配置之后,不必在每个vue文件中引入css了
      }
    }
  },
  server: {
    open: true,
    port: 80,
    hmr: true,
    host: "0.0.0.0",
    proxy: {
      "/wap/api": {
        target: "https://btc.btcwapo.com",
        changeOrigin: true,
        secure: false
      }
    }
  },
  resolve: {
    alias: {
      "@": path.resolve(__vite_injected_original_dirname, "src"),
      "@comForex": path.resolve(__vite_injected_original_dirname, "src/components/forex"),
      "@comTrade": path.resolve(__vite_injected_original_dirname, "src/components/commonTrade"),
      "@comConstract": path.resolve(__vite_injected_original_dirname, "src/components/constract"),
      "@comSpot": path.resolve(__vite_injected_original_dirname, "src/components/spot"),
      "vue-i18n": "vue-i18n/dist/vue-i18n.cjs.js"
    }
  },
  build: {
    assetsDir: "static",
    rollupOptions: {
      input: {
        index: path.resolve(__vite_injected_original_dirname, "index.html")
      },
      output: {
        chunkFileNames: "js/[name]-[hash].js",
        entryFileNames: "js/[name]-[hash].js",
        assetFileNames: "[ext]/name-[hash].[ext]"
      }
    }
  }
});
export {
  vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvYXBwbGUvRGVza3RvcC9cdTYwODVcdTY1OTBcdThERThcdTU4ODMvYWVyb3NwYWNlLXBjXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvYXBwbGUvRGVza3RvcC9cdTYwODVcdTY1OTBcdThERThcdTU4ODMvYWVyb3NwYWNlLXBjL3ZpdGUuY29uZmlnLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9hcHBsZS9EZXNrdG9wLyVFNiU4MiU4NSVFNiU5NiU5MCVFOCVCNyVBOCVFNSVBMiU4My9hZXJvc3BhY2UtcGMvdml0ZS5jb25maWcuanNcIjtpbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiO1xyXG5pbXBvcnQgdnVlIGZyb20gXCJAdml0ZWpzL3BsdWdpbi12dWVcIjtcclxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcclxuaW1wb3J0IEljb25zIGZyb20gXCJ1bnBsdWdpbi1pY29ucy92aXRlXCI7XHJcbmltcG9ydCBJY29uc1Jlc29sdmVyIGZyb20gXCJ1bnBsdWdpbi1pY29ucy9yZXNvbHZlclwiO1xyXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiOyAvL1x1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NXVpXHU1RTkzXHJcbmltcG9ydCBDb21wb25lbnRzIGZyb20gXCJ1bnBsdWdpbi12dWUtY29tcG9uZW50cy92aXRlXCI7IC8vXHU4MUVBXHU1MkE4XHU2Q0U4XHU1MThDdWlcdTVFOTNcclxuaW1wb3J0IHsgRWxlbWVudFBsdXNSZXNvbHZlciB9IGZyb20gXCJ1bnBsdWdpbi12dWUtY29tcG9uZW50cy9yZXNvbHZlcnNcIjsgLy9cdTgxRUFcdTUyQThcdTg5RTNcdTY3OTB1aVx1NUU5M1xyXG5pbXBvcnQgRGVmaW5lT3B0aW9ucyBmcm9tIFwidW5wbHVnaW4tdnVlLWRlZmluZS1vcHRpb25zL3ZpdGVcIjsgLy9cdTRGN0ZcdTc1MjhzZXR1cFx1OEJFRFx1NkNENVx1N0NENlx1RkYwQ1x1NzUyOFx1NEU4RVx1NUJGOVx1NjU4N1x1NEVGNm5hbWVcdTU0N0RcdTU0MERcclxuaW1wb3J0IHsgdmlzdWFsaXplciB9IGZyb20gXCJyb2xsdXAtcGx1Z2luLXZpc3VhbGl6ZXJcIjtcclxuaW1wb3J0IGxlZ2FjeSBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tbGVnYWN5XCI7XHJcblxyXG5jb25zdCBpc1Zpc3VhbGl6ZXIgPSBwcm9jZXNzLmVudi5WSVNVQUxJWkVSID09PSBcInNob3dcIjtcclxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKHtcclxuICAvLyBiYXNlOiBcIi9wY2Jpb25pY3MvXCIsXHJcbiAgcGx1Z2luczogW1xyXG4gICAgdnVlKCksXHJcbiAgICBDb21wb25lbnRzKHtcclxuICAgICAgcmVzb2x2ZXJzOiBbXHJcbiAgICAgICAgRWxlbWVudFBsdXNSZXNvbHZlcigpLCAvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjUgRWxlbWVudCBQbHVzIFx1N0VDNFx1NEVGNlxyXG4gICAgICAgIC8vIEljb25zUmVzb2x2ZXIoe1xyXG4gICAgICAgIC8vICAgZW5hYmxlZENvbGxlY3Rpb25zOiBbJ2VwJ10sXHJcbiAgICAgICAgLy8gfSksLy8gXHU4MUVBXHU1MkE4XHU2Q0U4XHU1MThDXHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XHJcbiAgICAgICAgSWNvbnNSZXNvbHZlcigpLCAvLyBcdTgxRUFcdTUyQThcdTZDRThcdTUxOENcdTU2RkVcdTY4MDdcdTdFQzRcdTRFRjZcclxuICAgICAgXSxcclxuICAgIH0pLFxyXG4gICAgQXV0b0ltcG9ydCh7XHJcbiAgICAgIGltcG9ydHM6IFtcInZ1ZVwiXSwgLy8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1IFZ1ZSBcdTc2RjhcdTUxNzNcdTUxRkRcdTY1NzBcdUZGMENcdTU5ODJcdUZGMUFyZWYsIHJlYWN0aXZlLCB0b1JlZiBcdTdCNDlcclxuICAgICAgcmVzb2x2ZXJzOiBbXHJcbiAgICAgICAgRWxlbWVudFBsdXNSZXNvbHZlcigpLFxyXG4gICAgICAgIEljb25zUmVzb2x2ZXIoKSwgLy8gXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XHJcbiAgICAgICAgLy8gSWNvbnNSZXNvbHZlcih7XHJcbiAgICAgICAgLy8gICBwcmVmaXg6ICdJY29uJyxcclxuICAgICAgICAvLyB9KSwgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NVx1NTZGRVx1NjgwN1x1N0VDNFx1NEVGNlxyXG4gICAgICBdLFxyXG4gICAgfSksXHJcbiAgICBJY29ucyh7XHJcbiAgICAgIGF1dG9JbnN0YWxsOiB0cnVlLFxyXG4gICAgfSksXHJcbiAgICBEZWZpbmVPcHRpb25zKCksXHJcbiAgICBpc1Zpc3VhbGl6ZXIgJiYgdmlzdWFsaXplcih7IGd6aXBTaXplOiB0cnVlIH0pLFxyXG4gICAgbGVnYWN5KHtcclxuICAgICAgdGFyZ2V0czogW1wiZGVmYXVsdHNcIiwgXCJub3QgSUUgMTFcIl0sXHJcbiAgICB9KSxcclxuICBdLFxyXG4gIGNzczoge1xyXG4gICAgcHJlcHJvY2Vzc29yT3B0aW9uczoge1xyXG4gICAgICBzY3NzOiB7XHJcbiAgICAgICAgYWRkaXRpb25hbERhdGE6ICdAaW1wb3J0IFwiQC9hc3NldHMvZm9yZXgvZ2xvYmFsLnNjc3NcIjsnLCAvL1x1NTE2OFx1NUM0MFx1OTE0RFx1N0Y2RVx1NEU0Qlx1NTQwRVx1RkYwQ1x1NEUwRFx1NUZDNVx1NTcyOFx1NkJDRlx1NEUyQXZ1ZVx1NjU4N1x1NEVGNlx1NEUyRFx1NUYxNVx1NTE2NWNzc1x1NEU4NlxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICB9LFxyXG4gIHNlcnZlcjoge1xyXG4gICAgb3BlbjogdHJ1ZSxcclxuICAgIHBvcnQ6IDgwLFxyXG4gICAgaG1yOiB0cnVlLFxyXG4gICAgaG9zdDogJzAuMC4wLjAnLFxyXG4gICAgcHJveHk6IHtcclxuICAgICAgXCIvd2FwL2FwaVwiOiB7XHJcbiAgICAgICAgdGFyZ2V0OiBcImh0dHBzOi8vYnRjLmJ0Y3dhcG8uY29tXCIsXHJcbiAgICAgICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxyXG4gICAgICAgIHNlY3VyZTogZmFsc2VcclxuICAgICAgfSxcclxuICAgIH0sXHJcbiAgfSxcclxuICByZXNvbHZlOiB7XHJcbiAgICBhbGlhczoge1xyXG4gICAgICBcIkBcIjogcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJzcmNcIiksXHJcbiAgICAgIFwiQGNvbUZvcmV4XCI6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwic3JjL2NvbXBvbmVudHMvZm9yZXhcIiksXHJcbiAgICAgIFwiQGNvbVRyYWRlXCI6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwic3JjL2NvbXBvbmVudHMvY29tbW9uVHJhZGVcIiksXHJcbiAgICAgIFwiQGNvbUNvbnN0cmFjdFwiOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcInNyYy9jb21wb25lbnRzL2NvbnN0cmFjdFwiKSxcclxuICAgICAgXCJAY29tU3BvdFwiOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcInNyYy9jb21wb25lbnRzL3Nwb3RcIiksXHJcbiAgICAgIFwidnVlLWkxOG5cIjogXCJ2dWUtaTE4bi9kaXN0L3Z1ZS1pMThuLmNqcy5qc1wiLFxyXG4gICAgfSxcclxuICB9LFxyXG4gIGJ1aWxkOiB7XHJcbiAgICBhc3NldHNEaXI6IFwic3RhdGljXCIsXHJcbiAgICByb2xsdXBPcHRpb25zOiB7XHJcbiAgICAgIGlucHV0OiB7XHJcbiAgICAgICAgaW5kZXg6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwiaW5kZXguaHRtbFwiKSxcclxuICAgICAgfSxcclxuICAgICAgb3V0cHV0OiB7XHJcbiAgICAgICAgY2h1bmtGaWxlTmFtZXM6IFwianMvW25hbWVdLVtoYXNoXS5qc1wiLFxyXG4gICAgICAgIGVudHJ5RmlsZU5hbWVzOiBcImpzL1tuYW1lXS1baGFzaF0uanNcIixcclxuICAgICAgICBhc3NldEZpbGVOYW1lczogXCJbZXh0XS9uYW1lLVtoYXNoXS5bZXh0XVwiLFxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICB9LFxyXG59KTtcclxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFvVSxTQUFTLG9CQUFvQjtBQUNqVyxPQUFPLFNBQVM7QUFDaEIsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sV0FBVztBQUNsQixPQUFPLG1CQUFtQjtBQUMxQixPQUFPLGdCQUFnQjtBQUN2QixPQUFPLGdCQUFnQjtBQUN2QixTQUFTLDJCQUEyQjtBQUNwQyxPQUFPLG1CQUFtQjtBQUMxQixTQUFTLGtCQUFrQjtBQUMzQixPQUFPLFlBQVk7QUFWbkIsSUFBTSxtQ0FBbUM7QUFZekMsSUFBTSxlQUFlLFFBQVEsSUFBSSxlQUFlO0FBQ2hELElBQU8sc0JBQVEsYUFBYTtBQUFBO0FBQUEsRUFFMUIsU0FBUztBQUFBLElBQ1AsSUFBSTtBQUFBLElBQ0osV0FBVztBQUFBLE1BQ1QsV0FBVztBQUFBLFFBQ1Qsb0JBQW9CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxRQUlwQixjQUFjO0FBQUE7QUFBQSxNQUNoQjtBQUFBLElBQ0YsQ0FBQztBQUFBLElBQ0QsV0FBVztBQUFBLE1BQ1QsU0FBUyxDQUFDLEtBQUs7QUFBQTtBQUFBLE1BQ2YsV0FBVztBQUFBLFFBQ1Qsb0JBQW9CO0FBQUEsUUFDcEIsY0FBYztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsTUFJaEI7QUFBQSxJQUNGLENBQUM7QUFBQSxJQUNELE1BQU07QUFBQSxNQUNKLGFBQWE7QUFBQSxJQUNmLENBQUM7QUFBQSxJQUNELGNBQWM7QUFBQSxJQUNkLGdCQUFnQixXQUFXLEVBQUUsVUFBVSxLQUFLLENBQUM7QUFBQSxJQUM3QyxPQUFPO0FBQUEsTUFDTCxTQUFTLENBQUMsWUFBWSxXQUFXO0FBQUEsSUFDbkMsQ0FBQztBQUFBLEVBQ0g7QUFBQSxFQUNBLEtBQUs7QUFBQSxJQUNILHFCQUFxQjtBQUFBLE1BQ25CLE1BQU07QUFBQSxRQUNKLGdCQUFnQjtBQUFBO0FBQUEsTUFDbEI7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUFBLEVBQ0EsUUFBUTtBQUFBLElBQ04sTUFBTTtBQUFBLElBQ04sTUFBTTtBQUFBLElBQ04sS0FBSztBQUFBLElBQ0wsTUFBTTtBQUFBLElBQ04sT0FBTztBQUFBLE1BQ0wsWUFBWTtBQUFBLFFBQ1YsUUFBUTtBQUFBLFFBQ1IsY0FBYztBQUFBLFFBQ2QsUUFBUTtBQUFBLE1BQ1Y7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUFBLEVBQ0EsU0FBUztBQUFBLElBQ1AsT0FBTztBQUFBLE1BQ0wsS0FBSyxLQUFLLFFBQVEsa0NBQVcsS0FBSztBQUFBLE1BQ2xDLGFBQWEsS0FBSyxRQUFRLGtDQUFXLHNCQUFzQjtBQUFBLE1BQzNELGFBQWEsS0FBSyxRQUFRLGtDQUFXLDRCQUE0QjtBQUFBLE1BQ2pFLGlCQUFpQixLQUFLLFFBQVEsa0NBQVcsMEJBQTBCO0FBQUEsTUFDbkUsWUFBWSxLQUFLLFFBQVEsa0NBQVcscUJBQXFCO0FBQUEsTUFDekQsWUFBWTtBQUFBLElBQ2Q7QUFBQSxFQUNGO0FBQUEsRUFDQSxPQUFPO0FBQUEsSUFDTCxXQUFXO0FBQUEsSUFDWCxlQUFlO0FBQUEsTUFDYixPQUFPO0FBQUEsUUFDTCxPQUFPLEtBQUssUUFBUSxrQ0FBVyxZQUFZO0FBQUEsTUFDN0M7QUFBQSxNQUNBLFFBQVE7QUFBQSxRQUNOLGdCQUFnQjtBQUFBLFFBQ2hCLGdCQUFnQjtBQUFBLFFBQ2hCLGdCQUFnQjtBQUFBLE1BQ2xCO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFDRixDQUFDOyIsCiAgIm5hbWVzIjogW10KfQo=