(function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; var __filename = 'preview-scripts/assets/Script/GameOver.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, '805c6nf399HWZeuWnNB9CTH', 'GameOver'); // Script/GameOver.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 NewClass = /** @class */ (function (_super) { __extends(NewClass, _super); function NewClass() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.count = null; _this.time = null; _this.finishiTime = null; return _this; } // onLoad () {} NewClass.prototype.start = function () { this.count.string = 0 + ""; this.init(); // success_${today}_${code}_${matchedReferrer.gameId} // const today = new Date().toLocaleDateString(); // const data = "success_${today}_${code}_${matchedReferrer.gameId}" }; //初始化数据 NewClass.prototype.init = function () { //展示准确率 this.showAccuracy(); //展示完成时间 this.showFinishiTime(); //上传排行榜 this.setRank(); //删除本关卡 setTimeout(function () { cc.fx.GameTool.getCustom(true); }, 100); var urlNow = window.location.href; if (this.containsTrain(urlNow)) { this.node.getChildByName("btn").getChildByName("again").active = false; this.node.getChildByName("btn").getChildByName("rank").active = false; this.node.getChildByName("btn").getChildByName("finishi").active = true; this.setLocalStorage(); } else { this.node.getChildByName("btn").getChildByName("again").active = true; this.node.getChildByName("btn").getChildByName("rank").active = true; this.node.getChildByName("btn").getChildByName("finishi").active = false; } }; NewClass.prototype.setLocalStorage = function () { var today = new Date().toLocaleDateString(); var name = "success_" + today + "_" + cc.fx.GameConfig.GM_INFO.scode + "_" + cc.fx.GameConfig.GM_INFO.gameId; localStorage.setItem(name, JSON.stringify({ success: true })); }; NewClass.prototype.setRank = function () { var data = { "totleTimes": cc.fx.GameConfig.GM_INFO.stepTimeList, "accuracy": this.accuracy, }; cc.fx.GameTool.setRank(data); }; NewClass.prototype.showFinishiTime = function () { var _this = this; cc.tween(this.finishiTime) .delay(1.5) .to(0.5, { fillRange: 1 }) .start(); cc.tween(this.time.node) .delay(1.7) .to(0.3, { opacity: 255 }) .call(function () { _this.conversionTime(); }) .start(); }; NewClass.prototype.conversionTime = function () { var _this = this; var minute = 0; var second = 0; var obj = { a: 100 }; var time = parseInt(cc.fx.GameConfig.GM_INFO.stepTimeList / 1000 + ""); cc.tween(obj) // .delay(0.1) .to(1, { a: time }, { progress: function (start, end, current, ratio) { current = end * ratio; second = current.toFixed(0); if (second >= 60) { minute = parseInt(second / 60 + ""); second -= 60 * minute; } _this.time.string = minute + "分" + second + "秒"; } }) .call(function () { _this.node.getChildByName("btn").active = true; cc.tween(_this.node.getChildByName("btn")) .to(0.3, { opacity: 255 }) .start(); }) .start(); }; NewClass.prototype.showAccuracy = function () { var _this = this; this.accuracy = parseInt(cc.fx.GameConfig.GM_INFO.successList.length / cc.fx.GameConfig.GM_INFO.level * 100 + ""); console.log("答对的个数:", cc.fx.GameConfig.GM_INFO.successList.length); console.log("总数:", cc.fx.GameConfig.GM_INFO.level); console.log("准确率:", this.accuracy); var obj = { a: 100 }; cc.tween(obj) .delay(0.5) .to(1, { a: this.accuracy }, { progress: function (start, end, current, ratio) { current = end * ratio; current = current.toFixed(0); _this.count.string = current + ""; } }) .start(); }; NewClass.prototype.jumpFinishi = function () { var url = "https://train.sparkus.cn/poster/game/" + cc.fx.GameConfig.GM_INFO.scode + "?suc=1"; window.location.href = url; }; //判断来源 NewClass.prototype.containsTrain = function (str) { return /from=train/i.test(str); }; //打开排行榜 NewClass.prototype.openRank = function () { cc.director.loadScene("RankScene"); }; //重新开始玩 NewClass.prototype.again = function () { cc.director.loadScene("GameScene"); }; NewClass.prototype.update = function (dt) { // this.count.string = this.accuracy + ""; }; __decorate([ property(cc.Label) ], NewClass.prototype, "count", void 0); __decorate([ property(cc.Label) ], NewClass.prototype, "time", void 0); __decorate([ property(cc.Sprite) ], NewClass.prototype, "finishiTime", void 0); NewClass = __decorate([ ccclass ], NewClass); return NewClass; }(cc.Component)); exports.default = NewClass; 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUcxQztJQUFzQyw0QkFBWTtJQUFsRDtRQUFBLHFFQWtKQztRQWhKRyxXQUFLLEdBQWEsSUFBSSxDQUFDO1FBRXZCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFFdEIsaUJBQVcsR0FBYyxJQUFJLENBQUM7O0lBNElsQyxDQUFDO0lBdklHLGVBQWU7SUFDZix3QkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFWixxREFBcUQ7UUFDckQsaURBQWlEO1FBQ2pELG9FQUFvRTtJQUV4RSxDQUFDO0lBQ0QsT0FBTztJQUNQLHVCQUFJLEdBQUo7UUFDSSxPQUFPO1FBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLFFBQVE7UUFDUixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsT0FBTztRQUNQLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLE9BQU87UUFDUCxVQUFVLENBQUM7WUFDUCxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRVIsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDbEMsSUFBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFDO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENB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SUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxPQUFPO0lBQ1AsMkJBQVEsR0FBUjtRQUNJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxPQUFPO0lBQ1Asd0JBQUssR0FBTDtRQUNJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCx5QkFBTSxHQUFOLFVBQU8sRUFBVTtRQUNiLDBDQUEwQztJQUM5QyxDQUFDO0lBL0lEO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7MkNBQ0k7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzswQ0FDRztJQUV0QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDO2lEQUNVO0lBTmIsUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQWtKNUI7SUFBRCxlQUFDO0NBbEpELEFBa0pDLENBbEpxQyxFQUFFLENBQUMsU0FBUyxHQWtKakQ7a0JBbEpvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgY291bnQ6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5TcHJpdGUpXHJcbiAgICBmaW5pc2hpVGltZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIGxpc3REYXRhOiBhbnk7XHJcbiAgICBzZWxmRGF0YTogYW55O1xyXG4gICAgYWNjdXJhY3k6bnVtYmVyO1xyXG5cclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuY291bnQuc3RyaW5nID0gMCArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcblxyXG4gICAgICAgIC8vIHN1Y2Nlc3NfJHt0b2RheX1fJHtjb2RlfV8ke21hdGNoZWRSZWZlcnJlci5nYW1lSWR9XHJcbiAgICAgICAgLy8gY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xyXG4gICAgICAgIC8vIGNvbnN0IGRhdGEgPSBcInN1Y2Nlc3NfJHt0b2RheX1fJHtjb2RlfV8ke21hdGNoZWRSZWZlcnJlci5nYW1lSWR9XCJcclxuIFxyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICAvL+WxleekuuWHhuehrueOh1xyXG4gICAgICAgIHRoaXMuc2hvd0FjY3VyYWN5KCk7XHJcbiAgICAgICAgLy/lsZXnpLrlrozmiJDml7bpl7RcclxuICAgICAgICB0aGlzLnNob3dGaW5pc2hpVGltZSgpO1xyXG4gICAgICAgIC8v5LiK5Lyg5o6S6KGM5qacXHJcbiAgICAgICAgdGhpcy5zZXRSYW5rKCk7XHJcbiAgICAgICAgLy/liKDpmaTmnKzlhbPljaFcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY2MuZnguR2FtZVRvb2wuZ2V0Q3VzdG9tKHRydWUpO1xyXG4gICAgICAgIH0sIDEwMCk7XHJcblxyXG4gICAgICAgIHZhciB1cmxOb3cgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcclxuICAgICAgICBpZih0aGlzLmNvbnRhaW5zVHJhaW4odXJsTm93KSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJ0blwiKS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJidG5cIikuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJidG5cIikuZ2V0Q2hpbGRCeU5hbWUoXCJmaW5pc2hpXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0TG9jYWxTdG9yYWdlKCk7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJidG5cIikuZ2V0Q2hpbGRCeU5hbWUoXCJhZ2FpblwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJidG5cIikuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJ0blwiKS5nZXRDaGlsZEJ5TmFtZShcImZpbmlzaGlcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNldExvY2FsU3RvcmFnZSgpe1xyXG4gICAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKS50b0xvY2FsZURhdGVTdHJpbmcoKTtcclxuICAgICAgICB2YXIgbmFtZSA9IGBzdWNjZXNzXyR7dG9kYXl9XyR7Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnNjb2RlfV8ke2NjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYW1lSWR9YFxyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKG5hbWUsIEpTT04uc3RyaW5naWZ5KHtzdWNjZXNzOnRydWV9KSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0UmFuaygpe1xyXG4gICAgICAgIGxldCBkYXRhID0ge1xyXG4gICAgICAgICAgICBcInRvdGxlVGltZXNcIjogY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnN0ZXBUaW1lTGlzdCxcclxuICAgICAgICAgICAgXCJhY2N1cmFjeVwiOiB0aGlzLmFjY3VyYWN5LFxyXG4gICAgICAgIH1cclxuICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRSYW5rKGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHNob3dGaW5pc2hpVGltZSgpe1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuZmluaXNoaVRpbWUpXHJcbiAgICAgICAgLmRlbGF5KDEuNSlcclxuICAgICAgICAudG8oMC41LHtmaWxsUmFuZ2U6MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy50aW1lLm5vZGUpXHJcbiAgICAgICAgLmRlbGF5KDEuNylcclxuICAgICAgICAudG8oMC4zLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmNhbGwoKCk9PntcclxuICAgICAgICAgICAgdGhpcy5jb252ZXJzaW9uVGltZSgpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29udmVyc2lvblRpbWUoKXtcclxuICAgICAgICB2YXIgbWludXRlID0gMDtcclxuICAgICAgICB2YXIgc2Vjb25kID0gMDtcclxuICAgICAgICBsZXQgb2JqID0ge2E6MTAwfTtcclxuICAgICAgICBsZXQgdGltZSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zdGVwVGltZUxpc3QvMTAwMCArIFwiXCIpO1xyXG4gICAgICAgIGNjLnR3ZWVuKG9iailcclxuICAgICAgICAvLyAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygxLHthOnRpbWV9LHtcclxuICAgICAgICAgICAgcHJvZ3Jlc3M6IChzdGFydCxlbmQsY3VycmVudCxyYXRpbyk9PntcclxuICAgICAgICAgICAgICAgIGN1cnJlbnQgPSBlbmQqcmF0aW87XHJcbiAgICAgICAgICAgICAgICBzZWNvbmQgPSBjdXJyZW50LnRvRml4ZWQoMCk7XHJcbiAgICAgICAgICAgICAgICBpZihzZWNvbmQgPj0gNjApe1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbnV0ZSA9IHBhcnNlSW50KHNlY29uZC82MCtcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBzZWNvbmQgLT0gNjAqbWludXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy50aW1lLnN0cmluZyA9IG1pbnV0ZSArIFwi5YiGXCIgKyBzZWNvbmQgKyBcIuenklwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2FsbCgoKT0+e1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJidG5cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYnRuXCIpKVxyXG4gICAgICAgICAgICAudG8oMC4zLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KClcclxuICAgIH1cclxuICAgIFxyXG4gICAgc2hvd0FjY3VyYWN5KCl7XHJcbiAgICAgICAgdGhpcy5hY2N1cmFjeSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zdWNjZXNzTGlzdC5sZW5ndGgvXHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5sZXZlbCoxMDArXCJcIik7XHJcbiAgICAgICAgXHJcbiAgICAgICAgY29uc29sZS5sb2coXCLnrZTlr7nnmoTkuKrmlbA6XCIsY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnN1Y2Nlc3NMaXN0Lmxlbmd0aCk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCLmgLvmlbA6XCIsY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmxldmVsKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuWHhuehrueOhzpcIix0aGlzLmFjY3VyYWN5KTtcclxuICAgICAgICBsZXQgb2JqID0ge2E6MTAwfTtcclxuICAgICAgICBjYy50d2VlbihvYmopXHJcbiAgICAgICAgLmRlbGF5KDAuNSlcclxuICAgICAgICAudG8oMSx7YTp0aGlzLmFjY3VyYWN5fSx7XHJcbiAgICAgICAgICAgIHByb2dyZXNzOiAoc3RhcnQsZW5kLGN1cnJlbnQscmF0aW8pPT57XHJcbiAgICAgICAgICAgICAgICBjdXJyZW50ID0gZW5kKnJhdGlvO1xyXG4gICAgICAgICAgICAgICAgY3VycmVudCA9IGN1cnJlbnQudG9GaXhlZCgwKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY291bnQuc3RyaW5nID0gY3VycmVudCArIFwiXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpXHJcbiAgICB9XHJcblxyXG4gICAganVtcEZpbmlzaGkoKXtcclxuICAgICAgICBsZXQgdXJsID0gXCJodHRwczovL3RyYWluLnNwYXJrdXMuY24vcG9zdGVyL2dhbWUvXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc2NvZGUgKyBcIj9zdWM9MVwiO1xyXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgfVxyXG5cclxuICAgIC8v5Yik5pat5p2l5rqQXHJcbiAgICBjb250YWluc1RyYWluKHN0cikge1xyXG4gICAgICAgIHJldHVybiAvZnJvbT10cmFpbi9pLnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOW8gOWni+eOqVxyXG4gICAgYWdhaW4oKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKGR0OiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICAvLyB0aGlzLmNvdW50LnN0cmluZyA9IHRoaXMuYWNjdXJhY3kgKyBcIlwiO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==