243 lines
30 KiB
JavaScript
243 lines
30 KiB
JavaScript
|
|
(function() {
|
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
|
var __module = nodeEnv ? module : {exports:{}};
|
|
var __filename = 'preview-scripts/assets/Script/GameData.js';
|
|
var __require = nodeEnv ? function (request) {
|
|
return cc.require(request);
|
|
} : function (request) {
|
|
return __quick_compile_project__.require(request, __filename);
|
|
};
|
|
function __define (exports, require, module) {
|
|
if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
|
|
cc._RF.push(module, 'f2f0bI5PsVI+o18xF6G+KVa', 'GameData');
|
|
// Script/GameData.ts
|
|
|
|
"use strict";
|
|
var __extends = (this && this.__extends) || (function () {
|
|
var extendStatics = function (d, b) {
|
|
extendStatics = Object.setPrototypeOf ||
|
|
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
return extendStatics(d, b);
|
|
};
|
|
return function (d, b) {
|
|
extendStatics(d, b);
|
|
function __() { this.constructor = d; }
|
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
};
|
|
})();
|
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property;
|
|
var GameData = /** @class */ (function (_super) {
|
|
__extends(GameData, _super);
|
|
function GameData() {
|
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
}
|
|
GameData_1 = GameData;
|
|
// 0.15 0.37 0.8 获得三个星星 -2167.675 -2054 两个尺寸的屏幕的补偿值
|
|
GameData.prototype.onLoad = function () {
|
|
if (GameData_1._instance == null) {
|
|
GameData_1._instance = this;
|
|
// cc.game.addPersistRootNode(this.node);
|
|
this.AudioManager = this.node.getComponent('BallAudioManager');
|
|
}
|
|
else {
|
|
this.node.destroy();
|
|
return;
|
|
}
|
|
};
|
|
GameData.prototype.start = function () {
|
|
//GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次
|
|
this.GAME_DATA = [];
|
|
this.GM_INFO_init(); //GM_INFO存储 一些游戏数据,这些数据至少是当局内不会重置清零的
|
|
this.LEVEL_init(); //每局游戏内游戏参数,可复活清零或者重玩清零
|
|
this.BLOCK_INFO_init(); //每个游戏不同,此游戏为跳板参数
|
|
this.CLICK_init(); //埋点数据,用于上传重要数据
|
|
};
|
|
GameData.prototype.GM_INFO_init = function () {
|
|
this.GM_INFO = {
|
|
// isEnd: false,
|
|
mean_Time: 0,
|
|
total: 0,
|
|
currSeed: 203213,
|
|
gameId: '100001',
|
|
userId: 200139,
|
|
scode: "",
|
|
guide: true,
|
|
url: "https://dev.api.sparkus.cn",
|
|
custom: 0,
|
|
//从这开始
|
|
jumpUpTime: 0.5,
|
|
jumpDownTime: 0.4,
|
|
jumpHeight: 150,
|
|
blockMin: 30,
|
|
blockMax: -10,
|
|
blockScale: 5,
|
|
distanceMin: 100,
|
|
distanceMax: 110,
|
|
life: 3,
|
|
levelMax: 1,
|
|
difficultyMax: 1,
|
|
score: 0,
|
|
success: true,
|
|
probation: true,
|
|
afkCount: 0,
|
|
isAFK: false //是否挂机
|
|
};
|
|
this.setCode(this.getKey("scode"));
|
|
};
|
|
GameData.prototype.CLICK_init = function () {
|
|
GameData_1._instance.CLICK_DATA =
|
|
{
|
|
type: 1,
|
|
level: 0,
|
|
block: 0,
|
|
percent: 0,
|
|
getScore: 0,
|
|
totalScore: 0,
|
|
difficulty: 0,
|
|
height: false,
|
|
combo: 0,
|
|
accuracy: 0,
|
|
jumps: 0,
|
|
timer: 0,
|
|
fake: false,
|
|
fakeSpeed: 0,
|
|
speed: 0,
|
|
round: 0,
|
|
isAFK: false //是否挂机
|
|
};
|
|
};
|
|
GameData.prototype.LEVEL_init = function () {
|
|
this.LEVEL_INFO =
|
|
{
|
|
speed: 1,
|
|
addSpeed: 0.015,
|
|
reduceSpeed: 0,
|
|
jiansu: 3,
|
|
round1: 10,
|
|
round2: 20,
|
|
round3: 30,
|
|
doubleSuccess: 3,
|
|
fastSpeed: 3.5,
|
|
slowSpeed: 4.5,
|
|
doubleHit: 1,
|
|
doubleAdd: 0.05,
|
|
doubleMax: 2,
|
|
layer: 100,
|
|
layerAdd: 2,
|
|
star1: 0.2,
|
|
star2: 0.4,
|
|
star3: 0.8,
|
|
scoreMax: 120000,
|
|
levelMax: 1,
|
|
difficultyMax: 1 //最高难度系数
|
|
};
|
|
};
|
|
GameData.prototype.BLOCK_INFO_init = function () {
|
|
this.BLOCK_INFO = [
|
|
{
|
|
name: "block1",
|
|
speed: 8,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block2",
|
|
speed: 9,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block3",
|
|
speed: 8,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block4",
|
|
speed: 9,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block5",
|
|
speed: 8,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block6",
|
|
speed: 8,
|
|
thickness: false,
|
|
},
|
|
{
|
|
name: "block7",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block8",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block9",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block10",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block11",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block12",
|
|
speed: 10,
|
|
thickness: true,
|
|
},
|
|
{
|
|
name: "block0",
|
|
speed: 14,
|
|
thickness: false,
|
|
},
|
|
];
|
|
};
|
|
GameData.prototype.setCode = function (code) {
|
|
this.GM_INFO.scode = code;
|
|
};
|
|
GameData.prototype.getKey = function (key) {
|
|
var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)', 'i');
|
|
var r = window.location.search.substr(1).match(reg);
|
|
if (r != null) {
|
|
return unescape(r[2]);
|
|
}
|
|
return "";
|
|
};
|
|
var GameData_1;
|
|
GameData = GameData_1 = __decorate([
|
|
ccclass
|
|
], GameData);
|
|
return GameData;
|
|
}(cc.Component));
|
|
exports.default = GameData;
|
|
|
|
cc._RF.pop();
|
|
}
|
|
if (nodeEnv) {
|
|
__define(__module.exports, __require, __module);
|
|
}
|
|
else {
|
|
__quick_compile_project__.registerModuleFunc(__filename, function () {
|
|
__define(__module.exports, __require, __module);
|
|
});
|
|
}
|
|
})();
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lRGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUUxQztJQUFzQyw0QkFBWTtJQUFsRDs7SUF1UkEsQ0FBQztpQkF2Um9CLFFBQVE7SUFzRnpCLHVEQUF1RDtJQUN2RCx5QkFBTSxHQUFOO1FBQ0ksSUFBSSxVQUFRLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRTtZQUM1QixVQUFRLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUMxQix5Q0FBeUM7WUFFekMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2xFO2FBQ0k7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLE9BQU87U0FDVjtJQUNMLENBQUM7SUFFRCx3QkFBSyxHQUFMO1FBQ0ksbUNBQW1DO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFDaEIsQ0FBQTtRQUNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFJLG9DQUFvQztRQUM1RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBTSx1QkFBdUI7UUFDL0MsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsaUJBQWlCO1FBQ3pDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFNLGVBQWU7SUFDM0MsQ0FBQztJQUVELCtCQUFZLEdBQVo7UUFDSSxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ1gsZ0JBQWdCO1lBQ2hCLFNBQVMsRUFBQyxDQUFDO1lBQ1gsS0FBSyxFQUFDLENBQUM7WUFDUCxRQUFRLEVBQUUsTUFBTTtZQUNoQixNQUFNLEVBQUMsUUFBUTtZQUNmLE1BQU0sRUFBQyxNQUFN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QUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDWCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQzs7SUFwUmdCLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0F1UjVCO0lBQUQsZUFBQztDQXZSRCxBQXVSQyxDQXZScUMsRUFBRSxDQUFDLFNBQVMsR0F1UmpEO2tCQXZSb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2FtZURhdGEgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgc3RhdGljIF9pbnN0YW5jZTogYW55O1xyXG4gICAgR0FNRV9EQVRBOiBhbnlbXTsvL+Wkh+eUqFxyXG4gICAgQXVkaW9NYW5hZ2VyOiBhbnk7XHJcbiAgICBCTE9DS19JTkZPOiB7IC8v6Zq+5bqm5o6n5Yi2XHJcbiAgICAgICAgbmFtZTogc3RyaW5nOyAvL+Wdl+WQjeWtl1xyXG4gICAgICAgIC8v5Z2X5ZCN5a2XXHJcbiAgICAgICAgc3BlZWQ6IG51bWJlcjsgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICB0aGlja25lc3M6IGJvb2xlYW47XHJcbiAgICB9W107XHJcbiAgICBDTElDS19EQVRBOiB7XHJcbiAgICAgICAgdHlwZTogbnVtYmVyOyAvL+m7mOiupOexu+Wei1xyXG4gICAgICAgIGxldmVsOiBudW1iZXI7IC8v5bGC5pWwXHJcbiAgICAgICAgYmxvY2s6IG51bWJlcjsgLy/lnZfnmoTlkI3lrZdcclxuICAgICAgICBwZXJjZW50OiBudW1iZXI7IC8v6Led56a75Lit5b+D55m+5YiG5q+UXHJcbiAgICAgICAgZ2V0U2NvcmU6IG51bWJlcjsgLy/mnKzova7ojrflvpfliIbmlbBcclxuICAgICAgICB0b3RhbFNjb3JlOiBudW1iZXI7IC8v5pys6L2u6L+H5ZCO5oC75YiG5pWwXHJcbiAgICAgICAgZGlmZmljdWx0eTogbnVtYmVyOyAvL+acrOi9rumavuW6puezu+aVsFxyXG4gICAgICAgIGhlaWdodDogYm9vbGVhbjsgLy/mnKzova7mmK/lkKblop7pq5hcclxuICAgICAgICBjb21ibzogbnVtYmVyOyAvL+i/nuWHu+aVsFxyXG4gICAgICAgIGFjY3VyYWN5OiBudW1iZXI7IC8v57K+5YeG5bqmICgwLTMpIDAg5aSx6LSl5o6J6JC9XHJcbiAgICAgICAganVtcHM6IG51bWJlcjsgLy/mnKzova7njqnlrrbot7Pot4PmrKHmlbDvvIwx5oiW6ICFMlxyXG4gICAgICAgIHRpbWVyOiBudW1iZXI7IC8v5pys5bGA5ri45oiP5Ymp5L2Z5pe26Ze0XHJcbiAgICAgICAgZmFrZTogYm9vbGVhbjsgLy/mmK/lkKbmnInlubPlj7DlubLmibDpoblcclxuICAgICAgICBmYWtlU3BlZWQ6IG51bWJlcjsgLy/lgYflubPlj7Dnp7vliqjpgJ/luqZcclxuICAgICAgICBzcGVlZDpudW1iZXI7ICAvL+ecn+W5s+WPsOenu+WKqOmAn+W6plxyXG4gICAgICAgIHJvdW5kOm51bWJlcjsgIC8v5Zue5ZCI5pWwXHJcbiAgICAgICAgbGV2ZWxNYXg6bnVtYmVyLCAgICAgIC8v5pyA6auY5bGC5pWwXHJcbiAgICAgICAgZGlmZmljdWx0eU1heDpudW1iZXIgIC8v5pyA6auY6Zq+5bqm57O75pWwXHJcbiAgICAgICAgaXNBRks6Ym9vbGVhbiAgICAgICAvL+aYr+WQpuaMguacuiDnrKzkuIDlsYLov57nu63mrbsz5qyh5LiU5rKh6LezXHJcbiAgICB9O1xyXG4gICAgTEVWRUxfSU5GTzogeyAvL+mavuW6puaOp+WItlxyXG4gICAgICAgIHNwZWVkOiBudW1iZXI7IC8v6YCf5bqm5Yqg5oiQ5Z+656GAXHJcbiAgICAgICAgYWRkU3BlZWQ6IG51bWJlcjsgLy/pgJ/luqbliqDmiJDns7vmlbBcclxuICAgICAgICByZWR1Y2VTcGVlZDogbnVtYmVyOyAvL+mAn+W6puWinuWKoOiMg+WbtFxyXG4gICAgICAgIGppYW5zdTogbnVtYmVyOyAvL+mAn+W6puWinuWKoOeahOiMg+WbtOWKoOWAvFxyXG4gICAgICAgIHJvdW5kMTogbnVtYmVyOyAvL+WKoOmAn+iMg+WbtOaOp+WItuWbnuWQiOaho+aVsCAyIOWwj+S6jui/meWbnuWQiOS4ujNkb3VibGUgaGl0XHJcbiAgICAgICAgcm91bmQyOiBudW1iZXI7IC8v5Yqg6YCf6IyD5Zu05o6n5Yi25Zue5ZCI5qGj5pWwIDFcclxuICAgICAgICByb3VuZDM6IG51bWJlcjsgLy/liqDpgJ/ojIPlm7TmjqfliLblm57lkIjmoaPmlbAgMC41XHJcbiAgICAgICAgZG91YmxlU3VjY2VzczogbnVtYmVyOyAvL+i/nuWHu+asoeaVsChO5qyh5Lul5LiKLOW8gOWQr+W5suaJsOmhuSlcclxuICAgICAgICBmYXN0U3BlZWQ6IG51bWJlcjsgLy/nn67oloTlnZfmnIDlv6vpgJ/luqZcclxuICAgICAgICBzbG93U3BlZWQ6IG51bWJlcjsgLy/ljprlnZfmnIDlnZfpgJ/luqZcclxuICAgICAgICBkb3VibGVIaXQ6IG51bWJlcjsgLy/ov57lh7vliqDmiJBcclxuICAgICAgICBkb3VibGVBZGQ6IG51bWJlcjsgLy/mr4/mrKHov57lh7vlkI4g6L+e5Ye75Yqg5oiQXHJcbiAgICAgICAgZG91YmxlTWF4OiBudW1iZXI7IC8v6L+e5Ye75Yqg5oiQ5pyA5aSn5YC8XHJcbiAgICAgICAgbGF5ZXI6IG51bWJlcjsgLy/lsYLnuqfliqDmiJBcclxuICAgICAgICBsYXllckFkZDogbnVtYmVyOyAvL+avj+asoeWxgue6p+aPkOWNh++8jOWxgue6p+WKoOaIkOeahOWKoOaIkFxyXG4gICAgICAgIHN0YXIxOiBudW1iZXI7IC8v6I635b6X5LiA6aKX5pif55m+5YiG5q+UXHJcbiAgICAgICAgc3RhcjI6IG51bWJlcjsgLy/ojrflvpfkuKTpopfmmJ/nmb7liIbmr5RcclxuICAgICAgICBzdGFyMzogbnVtYmVyOyAvL+iOt+W+l+S4iemil+aYn+eZvuWIhuavlFxyXG4gICAgICAgIHNjb3JlTWF4OiBudW1iZXI7IC8v5pqC5pe25oC75YiGXHJcbiAgICAgICAgbGV2ZWxNYXg6IG51bWJlcjsgLy/mnIDpq5jlsYLmlbBcclxuICAgICAgICBkaWZmaWN1bHR5TWF4OiBudW1iZXI7IC8v5pyA6auY6Zq+5bqm57O75pWwXHJcbiAgICB9O1xyXG4gICAgR01fSU5GTzoge1xyXG4gICAgICAgIC8vIGlzRW5kOiBmYWxzZSxcclxuICAgICAgICBtZWFuX1RpbWU6IG51bWJlcjsgLy/lubPlnYfmlL7nrq3pgJ/luqZcclxuICAgICAgICB0b3RhbDogbnVtYmVyOyAvL+aAu+WFseWvueeahOS4quaVsFxyXG4gICAgICAgIGN1cnJTZWVkOiBudW1iZXI7IC8v55So5LqO6ZqP5py65pWw56eN5a2QXHJcbiAgICAgICAgZ2FtZUlkOiBzdHJpbmc7IHVzZXJJZDogbnVtYmVyOyBcclxuICAgICAgICBzY29kZTogc3RyaW5nOyAvL+eUqOaIt2NvZGUs5LuO572R6aG15ZCO57yA6I635Y+WXHJcbiAgICAgICAgZ3VpZGU6IGJvb2xlYW47IC8v5piv5ZCm5pyJ5byV5a+8XHJcbiAgICAgICAgdXJsOiBzdHJpbmc7IGN1c3RvbTogbnVtYmVyO1xyXG4gICAgICAgIC8v5LuO6L+Z5byA5aeLXHJcbiAgICAgICAganVtcFVwVGltZTogbnVtYmVyOyAvL+i1t+i3s+aXtumXtFxyXG4gICAgICAgIGp1bXBEb3duVGltZTogbnVtYmVyOyAvL+iQveWcsOaXtumXtFxyXG4gICAgICAgIGp1bXBIZWlnaHQ6IG51bWJlcjsgLy/ot7Pot4Ppq5jluqZcclxuICAgICAgICBibG9ja01pbjogbnVtYmVyOyAvL+iWhOWdl+WinuWKoOmrmOW6plxyXG4gICAgICAgIGJsb2NrTWF4OiBudW1iZXI7IC8v5Y6a5Z2X5aKe5Yqg6auY5bqm77yI5Zyo6Ieq6Lqr6auY5bqm5Z+656GA5LiK77yJ5q2k5YC85Y+v5Lul5Li66LSf5YC8XHJcbiAgICAgICAgYmxvY2tTY2FsZTogbnVtYmVyOyAvL+asoeWAvOa7oeWAvOS4uuWdl+enjeexu+aAu+S4quaVsDEyLDbkuLrnmb7liIbkuYs1MOWOmu+8jDUw6JaE77yM5Liq5pWw5aKe5Yqg77yM5Y6a5bqm5q+U5L6L6ZmN5L2OICAgIFxyXG4gICAgICAgIGRpc3RhbmNlTWluOiBudW1iZXI7IC8v6JC95Zyw6IyD5Zu05Zyo55m+5YiG55m+5YaF5b+F5oiQ5Yqf77yM5Y+v5pS55Y+CXHJcbiAgICAgICAgZGlzdGFuY2VNYXg6IG51bWJlcjsgLy/okL3lnLDojIPlm7TmnIDlpKflgLzvvIzlvLHlpKfkuo7vvIzliKTmlq3ohJrlnKjlpJbpnaJcclxuICAgICAgICBsaWZlOiBudW1iZXI7IC8v5Y+v5aSN5rS75qyh5pWwXHJcbiAgICAgICAgbGV2ZWxNYXg6IG51bWJlcjsgLy/mnIDpq5jlsYLmlbBcclxuICAgICAgICBkaWZmaWN1bHR5TWF4OiBudW1iZXI7IC8v5pyA6auY6Zq+5bqm57O75pWwXHJcbiAgICAgICAgc2NvcmU6IG51bWJlcjsgLy/mgLvliIZcclxuICAgICAgICBzdWNjZXNzOiBib29sZWFuOyAvL+aYr+WQpuaIkOWKn1xyXG4gICAgICAgIHByb2JhdGlvbjogYm9vbGVhbjsgLy/or5XnlKjmnJ9cclxuICAgICAgICBhZmtDb3VudDogbnVtYmVyOyAvL+esrOS4gOWxguS4jei3s+atu+eahOasoeaVsFxyXG4gICAgICAgIGlzQUZLOiBib29sZWFuOyAvL+aYr+WQpuaMguaculxyXG4gICAgfTtcclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgLy8gMC4xNSAwLjM3IDAuOCAg6I635b6X5LiJ5Liq5pif5pifICAtMjE2Ny42NzUgIC0yMDU0ICDkuKTkuKrlsLrlr7jnmoTlsY/luZXnmoTooaXlgb/lgLxcclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgaWYgKEdhbWVEYXRhLl9pbnN0YW5jZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZSA9IHRoaXM7XHJcbiAgICAgICAgICAgIC8vIGNjLmdhbWUuYWRkUGVyc2lzdFJvb3ROb2RlKHRoaXMubm9kZSk7XHJcbiAgICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLkF1ZGlvTWFuYWdlciA9IHRoaXMubm9kZS5nZXRDb21wb25lbnQoJ0JhbGxBdWRpb01hbmFnZXInKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIC8vR0FNRV9EQVRBIOW6n+W8g+S6hu+8jOaaguaXtuS4jeWIoOmZpOS7pemYsuWQjumdouS/ruaUueWbniDkuIDmlbTlsYDkvKDkuIDmrKFcclxuICAgICAgICB0aGlzLkdBTUVfREFUQSA9IFtcclxuICAgICAgICBdXHJcbiAgICAgICAgdGhpcy5HTV9JTkZPX2luaXQoKTsgICAgLy9HTV9JTkZP5a2Y5YKoIOS4gOS6m+a4uOaIj+aVsOaNru+8jOi/meS6m+aVsOaNruiHs+WwkeaYr+W9k+WxgOWGheS4jeS8mumHjee9rua4hembtueahFxyXG4gICAgICAgIHRoaXMuTEVWRUxfaW5pdCgpOyAgICAgIC8v5q+P5bGA5ri45oiP5YaF5ri45oiP5Y+C5pWw77yM5Y+v5aSN5rS75riF6Zu25oiW6ICF6YeN546p5riF6Zu2XHJcbiAgICAgICAgdGhpcy5CTE9DS19JTkZPX2luaXQoKTsgLy/mr4/kuKrmuLjmiI/kuI3lkIzvvIzmraTmuLjmiI/kuLrot7Pmnb/lj4LmlbBcclxuICAgICAgICB0aGlzLkNMSUNLX2luaXQoKTsgICAgICAvL+Wfi+eCueaVsOaNriznlKjkuo7kuIrkvKDph43opoHmlbDmja5cclxuICAgIH1cclxuXHJcbiAgICBHTV9JTkZPX2luaXQoKXtcclxuICAgICAgICB0aGlzLkdNX0lORk8gPSB7IFxyXG4gICAgICAgICAgICAvLyBpc0VuZDogZmFsc2UsXHJcbiAgICAgICAgICAgIG1lYW5fVGltZTowLCAgICAgICAgICAgICAgICAvL+W5s+Wdh+aUvueuremAn+W6plxyXG4gICAgICAgICAgICB0b3RhbDowLCAgICAgICAgICAgICAgICAgICAgLy/mgLvlhbHlr7nnmoTkuKrmlbBcclxuICAgICAgICAgICAgY3VyclNlZWQ6IDIwMzIxMywgICAgICAgICAgIC8v55So5LqO6ZqP5py65pWw56eN5a2QXHJcbiAgICAgICAgICAgIGdhbWVJZDonMTAwMDAxJyxcclxuICAgICAgICAgICAgdXNlcklkOjIwMDEzOSxcclxuICAgICAgICAgICAgc2NvZGU6IFwiXCIsICAgICAgICAgICAgICAgICAgLy/nlKjmiLdjb2RlLOS7jue9kemhteWQjue8gOiOt+WPllxyXG4gICAgICAgICAgICBndWlkZTp0cnVlLCAgICAgICAgICAgICAgICAgLy/mmK/lkKbmnInlvJXlr7xcclxuICAgICAgICAgICAgdXJsOlwiaHR0cHM6Ly9kZXYuYXBpLnNwYXJrdXMuY25cIixcclxuICAgICAgICAgICAgY3VzdG9tOiAwLFxyXG5cclxuICAgICAgICAgICAgLy/ku47ov5nlvIDlp4tcclxuICAgICAgICAgICAganVtcFVwVGltZTowLjUsICAgICAgICAgICAgIC8v6LW36Lez5pe26Ze0XHJcbiAgICAgICAgICAgIGp1bXBEb3duVGltZTowLjQsICAgICAgICAgICAvL+iQveWcsOaXtumXtFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAganVtcEhlaWdodDoxNTAsICAgICAgICAgICAgIC8v6Lez6LeD6auY5bqmXHJcbiAgICAgICAgICAgIGJsb2NrTWluOjMwLCAgICAgICAgICAgICAgICAvL+iWhOWdl+WinuWKoOmrmOW6plxyXG4gICAgICAgICAgICBibG9ja01heDotMTAsICAgICAgICAgICAgICAgICAvL+WOmuWdl+WinuWKoOmrmOW6pu+8iOWcqOiHqui6q+mrmOW6puWfuuehgOS4iu+8ieatpOWAvOWPr+S7peS4uui0n+WAvFxyXG4gICAgICAgICAgICBibG9ja1NjYWxlOjUsICAgICAgICAgICAgICAgLy/mrKHlgLzmu6HlgLzkuLrlnZfnp43nsbvmgLvkuKrmlbAxMiw25Li655m+5YiG5LmLNTDljprvvIw1MOiWhO+8jOS4quaVsOWinuWKoO+8jOWOmuW6puavlOS+i+mZjeS9jiAgICBcclxuICAgICAgICAgICAgZGlzdGFuY2VNaW46MTAwLCAgICAgICAgICAgIC8v6JC95Zyw6IyD5Zu05Zyo55m+5YiG55m+5YaF5b+F5oiQ5Yqf77yM5Y+v5pS55Y+CXHJcbiAgICAgICAgICAgIGRpc3RhbmNlTWF4OjExMCwgICAgICAgICAgICAvL+iQveWcsOiMg+WbtOacgOWkp+WAvO+8jOW8seWkp+S6ju+8jOWIpOaWreiEmuWcqOWklumdolxyXG4gICAgICAgICAgICBsaWZlOjMsICAgICAgICAgICAgICAgICAgIC8v5Y+v5aSN5rS75qyh5pWwXHJcbiAgICAgICAgICAgIGxldmVsTWF4OjEsICAgICAgICAgICAgICAvL+acgOmrmOWxguaVsFxyXG4gICAgICAgICAgICBkaWZmaWN1bHR5TWF4OjEsICAgICAgICAgLy/mnIDpq5jpmr7luqbns7vmlbBcclxuICAgICAgICAgICAgc2NvcmU6MCwgICAgICAgICAgICAgICAgICAvL+aAu+WIhlxyXG4gICAgICAgICAgICBzdWNjZXNzOnRydWUsICAgICAgICAgICAgLy/mmK/lkKbmiJDlip9cclxuICAgICAgICAgICAgcHJvYmF0aW9uOnRydWUsICAgICAgICAgICAvL+ivleeUqOacn1xyXG4gICAgICAgICAgICBhZmtDb3VudDowLCAgICAgICAgICAgICAgICAgLy/nrKzkuIDlsYLkuI3ot7PmrbvnmoTmrKHmlbBcclxuICAgICAgICAgICAgaXNBRks6ZmFsc2UgICAgICAgICAgICAgICAgLy/mmK/lkKbmjILmnLpcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuc2V0Q29kZSh0aGlzLmdldEtleShcInNjb2RlXCIpKTtcclxuICAgIH1cclxuXHJcbiAgICBDTElDS19pbml0KCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkNMSUNLX0RBVEEgPSBcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHR5cGU6MSwgICAgICAgICAgICAgLy/pu5jorqTnsbvlnotcclxuICAgICAgICAgICAgbGV2ZWw6MCwgICAgICAgICAgICAvL+WxguaVsFxyXG4gICAgICAgICAgICBibG9jazowLCAgICAgICAgICAgIC8v5Z2X55qE5ZCN5a2XXHJcbiAgICAgICAgICAgIHBlcmNlbnQ6MCwgICAgICAgICAgLy/ot53nprvkuK3lv4Pnmb7liIbmr5RcclxuICAgICAgICAgICAgZ2V0U2NvcmU6MCwgICAgICAgICAvL+acrOi9ruiOt+W+l+WIhuaVsFxyXG4gICAgICAgICAgICB0b3RhbFNjb3JlOjAsICAgICAgIC8v5pys6L2u6L+H5ZCO5oC75YiG5pWwXHJcbiAgICAgICAgICAgIGRpZmZpY3VsdHk6MCwgICAgICAgLy/mnKzova7pmr7luqbns7vmlbBcclxuICAgICAgICAgICAgaGVpZ2h0OmZhbHNlLCAgICAgICAvL+acrOi9ruaYr+WQpuWinumrmFxyXG4gICAgICAgICAgICBjb21ibzowLCAgICAgICAgICAgIC8v6L+e5Ye75pWwXHJcbiAgICAgICAgICAgIGFjY3VyYWN5OjAsICAgICAgICAgLy/nsr7lh4bluqYgKDAtMykgMCDlpLHotKXmjonokL1cclxuICAgICAgICAgICAganVtcHM6MCwgICAgICAgICAgICAvL+acrOi9rueOqeWutui3s+i3g+asoeaVsO+8jDHmiJbogIUyXHJcbiAgICAgICAgICAgIHRpbWVyOjAsICAgICAgICAgICAgLy/mnKzlsYDmuLjmiI/liankvZnml7bpl7RcclxuICAgICAgICAgICAgZmFrZTpmYWxzZSwgICAgICAgICAvL+aYr+WQpuacieW5s+WPsOW5suaJsOmhuVxyXG4gICAgICAgICAgICBmYWtlU3BlZWQ6MCwgICAgICAgIC8v5YGH5bmz5Y+w56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHNwZWVkOjAsICAgICAgICAgICAgIC8v55yf5bmz5Y+w56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHJvdW5kOjAsICAgICAgICAgICAgLy/lm57lkIjmlbBcclxuICAgICAgICAgICAgaXNBRks6ZmFsc2UgICAgICAgICAvL+aYr+WQpuaMguaculxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBMRVZFTF9pbml0KCl7XHJcbiAgICAgICAgdGhpcy5MRVZFTF9JTkZPID0gXHJcbiAgICAgICAgICAgIHsgICAvL+mavuW6puaOp+WItlxyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MSwgICAgICAvL+mAn+W6puWKoOaIkOWfuuehgFxyXG4gICAgICAgICAgICAgICAgYWRkU3BlZWQ6MC4wMTUsICAgLy/pgJ/luqbliqDmiJDns7vmlbBcclxuICAgICAgICAgICAgICAgIHJlZHVjZVNwZWVkOjAsICAvL+mAn+W6puWinuWKoOiMg+WbtFxyXG4gICAgICAgICAgICAgICAgamlhbnN1OjMsICAgLy/pgJ/luqblop7liqDnmoTojIPlm7TliqDlgLxcclxuICAgICAgICAgICAgICAgIHJvdW5kMToxMCwgIC8v5Yqg6YCf6IyD5Zu05o6n5Yi25Zue5ZCI5qGj5pWwIDIg5bCP5LqO6L+Z5Zue5ZCI5Li6M2RvdWJsZSBoaXRcclxuICAgICAgICAgICAgICAgIHJvdW5kMjoyMCwgIC8v5Yqg6YCf6IyD5Zu05o6n5Yi25Zue5ZCI5qGj5pWwIDFcclxuICAgICAgICAgICAgICAgIHJvdW5kMzozMCwgIC8v5Yqg6YCf6IyD5Zu05o6n5Yi25Zue5ZCI5qGj5pWwIDAuNVxyXG4gICAgICAgICAgICAgICAgZG91YmxlU3VjY2VzczozLCAgICAvL+i/nuWHu+asoeaVsChO5qyh5Lul5LiKLOW8gOWQr+W5suaJsOmhuSlcclxuICAgICAgICAgICAgICAgIGZhc3RTcGVlZDozLjUsICAvL+efruiWhOWdl+acgOW/q+mAn+W6plxyXG4gICAgICAgICAgICAgICAgc2xvd1NwZWVkOjQuNSwgIC8v5Y6a5Z2X5pyA5Z2X6YCf5bqmXHJcbiAgICAgICAgICAgICAgICBkb3VibGVIaXQ6MSwgICAgLy/ov57lh7vliqDmiJBcclxuICAgICAgICAgICAgICAgIGRvdWJsZUFkZDowLjA1LCAvL+avj+asoei/nuWHu+WQjiDov57lh7vliqDmiJBcclxuICAgICAgICAgICAgICAgIGRvdWJsZU1heDoyLCAgICAvL+i/nuWHu+WKoOaIkOacgOWkp+WAvFxyXG4gICAgICAgICAgICAgICAgbGF5ZXI6MTAwLCAgICAgIC8v5bGC57qn5Yqg5oiQXHJcbiAgICAgICAgICAgICAgICBsYXllckFkZDoyLCAgICAgIC8v5q+P5qyh5bGC57qn5o+Q5Y2H77yM5bGC57qn5Yqg5oiQ55qE5Yqg5oiQXHJcbiAgICAgICAgICAgICAgICBzdGFyMTowLjIsICAgICAgLy/ojrflvpfkuIDpopfmmJ/nmb7liIbmr5RcclxuICAgICAgICAgICAgICAgIHN0YXIyOjAuNCwgICAgICAvL+iOt+W+l+S4pOmil+aYn+eZvuWIhuavlFxyXG4gICAgICAgICAgICAgICAgc3RhcjM6MC44LCAgICAgICAvL+iOt+W+l+S4iemil+aYn+eZvuWIhuavlFxyXG4gICAgICAgICAgICAgICAgc2NvcmVNYXg6MTIwMDAwLCAvL+aaguaXtuaAu+WIhlxyXG4gICAgICAgICAgICAgICAgbGV2ZWxNYXg6MSwgICAgICAvL+acgOmrmOWxguaVsFxyXG4gICAgICAgICAgICAgICAgZGlmZmljdWx0eU1heDoxICAvL+acgOmrmOmavuW6puezu+aVsFxyXG4gICAgICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQkxPQ0tfSU5GT19pbml0KCl7XHJcbiAgICAgICAgdGhpcy5CTE9DS19JTkZPID0gW1xyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazFcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OCwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazJcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OSwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazNcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OCwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazRcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OSwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazVcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OCwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazZcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6OCwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOmZhbHNlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazdcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MTAsICAgICAgICAgICAgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICAgICAgICAgIHRoaWNrbmVzczp0cnVlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazhcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MTAsICAgICAgICAgICAgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICAgICAgICAgIHRoaWNrbmVzczp0cnVlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazlcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MTAsICAgICAgICAgICAgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICAgICAgICAgIHRoaWNrbmVzczp0cnVlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazEwXCIsICAgICAgLy/lnZflkI3lrZdcclxuICAgICAgICAgICAgICAgIHNwZWVkOjEwLCAgICAgICAgICAgIC8v5q+P5Liq5Z2X55qE5Z+656GA6YCf5bqmXHJcbiAgICAgICAgICAgICAgICB0aGlja25lc3M6dHJ1ZSwgICAgLy/lvZPliY3lnZfnmoTljprluqZcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v6Zq+5bqm5o6n5Yi2XHJcbiAgICAgICAgICAgICAgICBuYW1lOlwiYmxvY2sxMVwiLCAgICAgIC8v5Z2X5ZCN5a2XXHJcbiAgICAgICAgICAgICAgICBzcGVlZDoxMCwgICAgICAgICAgICAvL+avj+S4quWdl+eahOWfuuehgOmAn+W6plxyXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzOnRydWUsICAgIC8v5b2T5YmN5Z2X55qE5Y6a5bqmXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+mavuW6puaOp+WItlxyXG4gICAgICAgICAgICAgICAgbmFtZTpcImJsb2NrMTJcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MTAsICAgICAgICAgICAgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICAgICAgICAgIHRoaWNrbmVzczp0cnVlLCAgICAvL+W9k+WJjeWdl+eahOWOmuW6plxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy/pmr7luqbmjqfliLZcclxuICAgICAgICAgICAgICAgIG5hbWU6XCJibG9jazBcIiwgICAgICAvL+Wdl+WQjeWtl1xyXG4gICAgICAgICAgICAgICAgc3BlZWQ6MTQsICAgICAgICAgICAgLy/mr4/kuKrlnZfnmoTln7rnoYDpgJ/luqZcclxuICAgICAgICAgICAgICAgIHRoaWNrbmVzczpmYWxzZSwgICAgLy/lvZPliY3lnZfnmoTljprluqZcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICBdXHJcbiAgICB9XHJcblxyXG4gICAgc2V0Q29kZShjb2RlKXtcclxuICAgICAgICB0aGlzLkdNX0lORk8uc2NvZGUgPSBjb2RlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEtleShrZXkpe1xyXG4gICAgICAgIHZhciByZWcgPSBuZXcgUmVnRXhwKCcoXnwmKScgKyBrZXkgKyAnPShbXiZdKikoJnwkKScsICdpJyk7XHJcbiAgICAgICAgdmFyIHIgPSB3aW5kb3cubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKS5tYXRjaChyZWcpO1xyXG4gICAgICAgIGlmIChyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZXNjYXBlKHJbMl0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICAvLyB1cGRhdGUgKGR0KSB7fVxyXG59XHJcbiJdfQ==
|