350 lines
35 KiB
JavaScript
350 lines
35 KiB
JavaScript
|
||
(function() {
|
||
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
||
var __module = nodeEnv ? module : {exports:{}};
|
||
var __filename = 'preview-scripts/assets/Script/module/Config/GameConfig.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, 'c5692vnhwNF5J9nI7VNKQNW', 'GameConfig');
|
||
// Script/module/Config/GameConfig.ts
|
||
|
||
"use strict";
|
||
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 });
|
||
exports.GameConfig = void 0;
|
||
var share_1 = require("../Share/share");
|
||
var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property;
|
||
var GameConfig = /** @class */ (function () {
|
||
function GameConfig() {
|
||
}
|
||
GameConfig_1 = GameConfig;
|
||
Object.defineProperty(GameConfig, "Instance", {
|
||
get: function () {
|
||
if (this._instance == null) {
|
||
this._instance = new GameConfig_1();
|
||
}
|
||
return this._instance;
|
||
},
|
||
enumerable: false,
|
||
configurable: true
|
||
});
|
||
GameConfig.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 "";
|
||
};
|
||
GameConfig.init = function () {
|
||
this.GM_INFO_init();
|
||
this.CLICK_init();
|
||
this.LEVEL_INFO_init();
|
||
var self = this;
|
||
cc.resources.load('Json/GM_INFO', function (err, res) {
|
||
if (err) {
|
||
share_1.WeChat.setShare(location.href);
|
||
self.Authentication();
|
||
return;
|
||
}
|
||
var jsonData = res.json;
|
||
self.GM_INFO = jsonData["data"];
|
||
self.setCode(self.getKey("scode"));
|
||
share_1.WeChat.setShare(location.href);
|
||
self.Authentication();
|
||
});
|
||
cc.resources.load('Json/CLICK_DATA', function (err, res) {
|
||
if (err) {
|
||
return;
|
||
}
|
||
var jsonData = res.json;
|
||
self.CLICK_DATA = jsonData["data"];
|
||
});
|
||
cc.resources.load('Json/LEVEL_INFO', function (err, res) {
|
||
if (err) {
|
||
return;
|
||
}
|
||
var jsonData = res.json;
|
||
self.LEVEL_INFO = jsonData["data"];
|
||
});
|
||
//GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次
|
||
self.GAME_DATA = [];
|
||
};
|
||
//数据备用
|
||
GameConfig.GM_INFO_init = function () {
|
||
this.GM_INFO = {
|
||
// isEnd: false,
|
||
mean_Time: 0,
|
||
total: 0,
|
||
currSeed: 203213,
|
||
gameId: '100009',
|
||
userId: 0,
|
||
scode: "",
|
||
guide: true,
|
||
url: "https://api.sparkus.cn",
|
||
success: false,
|
||
matchId: null,
|
||
custom: 0 //用于测试跳关卡
|
||
};
|
||
this.setCode(this.getKey("scode"));
|
||
};
|
||
GameConfig.CLICK_init = function () {
|
||
this.CLICK_DATA =
|
||
{
|
||
type: 1,
|
||
success: false,
|
||
round: 0,
|
||
totalSunCount: 0,
|
||
movedSunCount: 0,
|
||
sunSpeed: 0,
|
||
overlapSunCount: 0,
|
||
colorList: [],
|
||
duration: 0,
|
||
difficultyLevel: 0,
|
||
sunList: [],
|
||
stepTimeList: [],
|
||
remainder: 120 //游戏剩余时间
|
||
};
|
||
};
|
||
GameConfig.LEVEL_INFO_init = function () {
|
||
this.LEVEL_INFO = [
|
||
{
|
||
number: 3,
|
||
moveNumber: 0,
|
||
moveSpeed: 0,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0 //是否重叠,现在0 不重叠 1 重叠1个
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 0,
|
||
moveSpeed: 0,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 0,
|
||
moveSpeed: 0,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 1,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 0,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 6,
|
||
moveNumber: 0,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 6,
|
||
moveNumber: 3,
|
||
moveSpeed: 4,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 7,
|
||
moveNumber: 0,
|
||
moveSpeed: 4,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 7,
|
||
moveNumber: 3,
|
||
moveSpeed: 4,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 7,
|
||
moveNumber: 3,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 8,
|
||
moveNumber: 3,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 8,
|
||
moveNumber: 5,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 9,
|
||
moveNumber: 3,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 9,
|
||
moveNumber: 5,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 10,
|
||
moveNumber: 5,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 3,
|
||
moveNumber: 0,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 0,
|
||
moveSpeed: 0,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 1,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 0,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 4,
|
||
moveNumber: 1,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 1,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 0
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 0,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 1,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 2,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
},
|
||
{
|
||
number: 5,
|
||
moveNumber: 3,
|
||
moveSpeed: 6,
|
||
maxDistance: 200,
|
||
maxMove: 1200,
|
||
repeat: 1
|
||
}
|
||
];
|
||
};
|
||
GameConfig.Authentication = function () {
|
||
cc.fx.GameTool.Authentication();
|
||
};
|
||
GameConfig.setCode = function (code) {
|
||
this.GM_INFO.scode = code;
|
||
};
|
||
var GameConfig_1;
|
||
//所有控制信息都通过GameAppStart内控制
|
||
GameConfig._instance = null;
|
||
GameConfig = GameConfig_1 = __decorate([
|
||
ccclass('GameConfig')
|
||
], GameConfig);
|
||
return GameConfig;
|
||
}());
|
||
exports.GameConfig = GameConfig;
|
||
|
||
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXENvbmZpZ1xcR2FtZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBd0M7QUFHbEMsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFFNUM7SUFBQTtJQStWQSxDQUFDO21CQS9WWSxVQUFVO0lBNENuQixzQkFBVyxzQkFBUTthQUFuQjtZQUVJLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQzFCO2dCQUNJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFVLEVBQUUsQ0FBQzthQUNyQztZQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMxQixDQUFDOzs7T0FBQTtJQUVNLGlCQUFNLEdBQWIsVUFBYyxHQUFHO1FBQ2IsSUFBSSxHQUFHLEdBQUcsSUFBSSxNQUFNLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDWCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGVBQUksR0FBWDtRQUNJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXZCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxj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QUQsaUJBQUM7Q0EvVkQsQUErVkMsSUFBQTtBQS9WWSxnQ0FBVSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlQ2hhdCB9IGZyb20gXCIuLi9TaGFyZS9zaGFyZVwiO1xyXG5cclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzKCdHYW1lQ29uZmlnJylcclxuZXhwb3J0IGNsYXNzIEdhbWVDb25maWcgIHtcclxuICAgIC8v5omA5pyJ5o6n5Yi25L+h5oGv6YO96YCa6L+HR2FtZUFwcFN0YXJ05YaF5o6n5Yi2XHJcbiAgICBwcml2YXRlIHN0YXRpYyBfaW5zdGFuY2UgOiBHYW1lQ29uZmlnID0gbnVsbDtcclxuICAgIC8v55So5LqO55ub5pS+5Z+L54K55pWw5o2u5LiK5Lyg77yM5q+P5qyh5LiK5Lyg5ZCO5riF56m6XHJcbiAgICBzdGF0aWMgR01fSU5GTzoge1xyXG4gICAgICAgIC8vIGlzRW5kOiBmYWxzZSxcclxuICAgICAgICBtZWFuX1RpbWU6IG51bWJlcjsgLy/lubPlnYfmlL7nrq3pgJ/luqZcclxuICAgICAgICB0b3RhbDogbnVtYmVyOyAvL+aAu+WFseWvueeahOS4quaVsFxyXG4gICAgICAgIGN1cnJTZWVkOiBudW1iZXI7IC8v55So5LqO6ZqP5py65pWw56eN5a2QXHJcbiAgICAgICAgZ2FtZUlkOiBzdHJpbmc7IC8v5ri45oiPSURcclxuICAgICAgICB1c2VySWQ6IG51bWJlcjsgLy/nlKjmiLdJRFxyXG4gICAgICAgIHNjb2RlOiBzdHJpbmc7ICAvL+eUqOaIt2NvZGVcclxuICAgICAgICBndWlkZTogYm9vbGVhbjsgLy/mmK/lkKbmnInlvJXlr7xcclxuICAgICAgICB1cmw6IHN0cmluZzsgLy/orr/pl67ln5/lkI1cclxuICAgICAgICBzdWNjZXNzOiBib29sZWFuOyAvL+eUqOaIt+a4uOaIj+aIkOWKn+S4juWQplxyXG4gICAgICAgIG1hdGNoSWQ6IGFueTsgLy/nlKjkuo7ln4vngrnkuIrkvKDnmoRJRFxyXG4gICAgICAgIGN1c3RvbTogbnVtYmVyOyAvL+eUqOS6jua1i+ivlei3s+WFs+WNoVxyXG4gICAgfTtcclxuICAgIHN0YXRpYyBDTElDS19EQVRBOiB7XHJcbiAgICAgICAgdHlwZTogbnVtYmVyOyAvL+S4iuS8oOaVsOaNruexu+Wei1xyXG4gICAgICAgIHN1Y2Nlc3M6IGJvb2xlYW47IC8v5q2k5bGA5ri45oiP6IOc6LSfICAgIFxyXG4gICAgICAgIHJvdW5kOiBudW1iZXI7IC8v5Zue5ZCI5pWwXHJcbiAgICAgICAgdG90YWxTdW5Db3VudDogbnVtYmVyOyAvL+WkqumYs+aAu+aVsFxyXG4gICAgICAgIG1vdmVkU3VuQ291bnQ6IG51bWJlcjsgLy/lj6/np7vliqjlpKrpmLPkuKrmlbBcclxuICAgICAgICBzdW5TcGVlZDogbnVtYmVyOyAvL+WkqumYs+enu+WKqOmAn+W6plxyXG4gICAgICAgIG92ZXJsYXBTdW5Db3VudDogbnVtYmVyOyAvL+mHjeWPoOWkqumYs+S4quaVsFxyXG4gICAgICAgIGNvbG9yTGlzdDogYW55W107IC8v5aSq6Ziz6aKc6Imy5pWw57uEXHJcbiAgICAgICAgZHVyYXRpb246IG51bWJlcjsgLy/mr4/mrKHngrnlh7vnmoTlj43lupTml7bpl7RcclxuICAgICAgICBkaWZmaWN1bHR5TGV2ZWw6IG51bWJlcjsgLy/mraTmrKHpmr7luqZcclxuICAgICAgICBzdW5MaXN0OiBhbnlbXTsgLy/lpKrpmLPmlbDnu4TvvIznlKjkuo7lrZjmlL7lpKrpmLPnsbvlnosgMDrmma7pgJogMTrnp7vliqggMjrph43lj6BcclxuICAgICAgICBzdGVwVGltZUxpc3Q6IGFueVtdOyAvL+avj+asoeeCueWHu+mXtOmalFxyXG4gICAgICAgIHJlbWFpbmRlcjogbnVtYmVyOyAvL+a4uOaIj+WJqeS9meaXtumXtFxyXG4gICAgfTtcclxuICAgIHN0YXRpYyBMRVZFTF9JTkZPOiB7IC8v56ys5LiA6Zq+5bqmXHJcbiAgICAgICAgbnVtYmVyOiBudW1iZXI7IC8v5aSq6Ziz5oC75pWwIFxyXG4gICAgICAgIG1vdmVOdW1iZXI6IG51bWJlcjsgLy/lpKrpmLPlj6/np7vliqjkuKrmlbBcclxuICAgICAgICBtb3ZlU3BlZWQ6IG51bWJlcjsgLy/lpKrpmLPnp7vliqjpgJ/luqbnrYnnuqdcclxuICAgICAgICBtYXhEaXN0YW5jZTogbnVtYmVyOyAvL+W4g+WxgOWQjuenu+WKqOacgOWkp+i3neemu1xyXG4gICAgICAgIG1heE1vdmU6IG51bWJlcjsgLy/mr4/kuKrlpKrpmLPkuYvpl7Tot53nprvmnIDlpKfpl7Tot51cclxuICAgICAgICByZXBlYXQ6IG51bWJlcjsgLy/mmK/lkKbph43lj6DvvIznjrDlnKgwIOS4jemHjeWPoCAxIOmHjeWPoDHkuKpcclxuICAgIH1bXTtcclxuICAgIHN0YXRpYyBHQU1FX0RBVEE6IGFueVtdO1xyXG5cclxuXHJcbiAgICBzdGF0aWMgZ2V0IEluc3RhbmNlKClcclxuICAgIHtcclxuICAgICAgICBpZiAodGhpcy5faW5zdGFuY2UgPT0gbnVsbClcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luc3RhbmNlID0gbmV3IEdhbWVDb25maWcoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2luc3RhbmNlO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBnZXRLZXkoa2V5KXtcclxuICAgICAgICB2YXIgcmVnID0gbmV3IFJlZ0V4cCgnKF58JiknICsga2V5ICsgJz0oW14mXSopKCZ8JCknLCAnaScpO1xyXG4gICAgICAgIHZhciByID0gd2luZG93LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHIoMSkubWF0Y2gocmVnKTtcclxuICAgICAgICBpZiAociAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB1bmVzY2FwZShyWzJdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGluaXQoKXtcclxuICAgICAgICB0aGlzLkdNX0lORk9faW5pdCgpO1xyXG4gICAgICAgIHRoaXMuQ0xJQ0tfaW5pdCgpO1xyXG4gICAgICAgIHRoaXMuTEVWRUxfSU5GT19pbml0KCk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgdmFyIHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGNjLnJlc291cmNlcy5sb2FkKCdKc29uL0dNX0lORk8nLCAoZXJyOiBhbnksIHJlczogY2MuSnNvbkFzc2V0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgICAgIFdlQ2hhdC5zZXRTaGFyZShsb2NhdGlvbi5ocmVmKTtcclxuICAgICAgICAgICAgICAgIHNlbGYuQXV0aGVudGljYXRpb24oKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQganNvbkRhdGE6IG9iamVjdCA9IHJlcy5qc29uITtcclxuICAgICAgICAgICAgc2VsZi5HTV9JTkZPID0ganNvbkRhdGFbXCJkYXRhXCJdO1xyXG4gICAgICAgICAgICBzZWxmLnNldENvZGUoc2VsZi5nZXRLZXkoXCJzY29kZVwiKSk7XHJcbiAgICAgICAgICAgIFdlQ2hhdC5zZXRTaGFyZShsb2NhdGlvbi5ocmVmKTtcclxuICAgICAgICAgICAgc2VsZi5BdXRoZW50aWNhdGlvbigpO1xyXG5cclxuICAgICAgICB9KVxyXG4gICAgICAgIGNjLnJlc291cmNlcy5sb2FkKCdKc29uL0NMSUNLX0RBVEEnLCAoZXJyOiBhbnksIHJlczogY2MuSnNvbkFzc2V0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGpzb25EYXRhOiBvYmplY3QgPSByZXMuanNvbiE7XHJcbiAgICAgICAgICAgIHNlbGYuQ0xJQ0tfREFUQSA9IGpzb25EYXRhW1wiZGF0YVwiXTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIGNjLnJlc291cmNlcy5sb2FkKCdKc29uL0xFVkVMX0lORk8nLCAoZXJyOiBhbnksIHJlczogY2MuSnNvbkFzc2V0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQganNvbkRhdGE6IG9iamVjdCA9IHJlcy5qc29uITtcclxuICAgICAgICAgICAgc2VsZi5MRVZFTF9JTkZPID0ganNvbkRhdGFbXCJkYXRhXCJdO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC8vR0FNRV9EQVRBIOW6n+W8g+S6hu+8jOaaguaXtuS4jeWIoOmZpOS7pemYsuWQjumdouS/ruaUueWbniDkuIDmlbTlsYDkvKDkuIDmrKFcclxuICAgICAgICBzZWxmLkdBTUVfREFUQSA9IFtcclxuICAgICAgICBdXHJcbiAgICB9XHJcbiAgICBcclxuICAgIC8v5pWw5o2u5aSH55SoXHJcbiAgICBzdGF0aWMgR01fSU5GT19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuR01fSU5GTyA9IHtcclxuICAgICAgICAgICAgLy8gaXNFbmQ6IGZhbHNlLFxyXG4gICAgICAgICAgICBtZWFuX1RpbWU6IDAsICAgICAgICAgICAgICAgIC8v5bmz5Z2H5pS+566t6YCf5bqmXHJcbiAgICAgICAgICAgIHRvdGFsOiAwLCAgICAgICAgICAgICAgICAgICAgLy/mgLvlhbHlr7nnmoTkuKrmlbBcclxuICAgICAgICAgICAgY3VyclNlZWQ6IDIwMzIxMywgICAgICAgICAgIC8v55So5LqO6ZqP5py65pWw56eN5a2QXHJcbiAgICAgICAgICAgIGdhbWVJZDogJzEwMDAwOScsICAgICAgICAgICAvL+a4uOaIj0lEXHJcbiAgICAgICAgICAgIHVzZXJJZDogMCwgICAgICAgICAgICAgICAgICAvL+eUqOaIt0lEXHJcbiAgICAgICAgICAgIHNjb2RlOiBcIlwiLCAgICAgICAgICAgICAgICAgIC8v55So5oi3Y29kZSzku47nvZHpobXlkI7nvIDojrflj5ZcclxuICAgICAgICAgICAgZ3VpZGU6IHRydWUsICAgICAgICAgICAgICAgICAvL+aYr+WQpuacieW8leWvvFxyXG4gICAgICAgICAgICB1cmw6IFwiaHR0cHM6Ly9hcGkuc3Bhcmt1cy5jblwiLC8v6K6/6Zeu5Z+f5ZCNXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6IGZhbHNlLCAgICAgICAgICAgICAvL+eUqOaIt+a4uOaIj+aIkOWKn+S4juWQplxyXG4gICAgICAgICAgICBtYXRjaElkOiBudWxsLCAgICAgICAgICAgICAgLy/nlKjkuo7ln4vngrnkuIrkvKDnmoRJRFxyXG4gICAgICAgICAgICBjdXN0b206IDAgICAgICAgICAgICAgICAgICAgLy/nlKjkuo7mtYvor5Xot7PlhbPljaFcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuc2V0Q29kZSh0aGlzLmdldEtleShcInNjb2RlXCIpKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBDTElDS19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuQ0xJQ0tfREFUQSA9XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0eXBlOiAxLCAgICAgICAgICAgIC8v5LiK5Lyg5pWw5o2u57G75Z6LXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6IGZhbHNlLCAgICAgLy/mraTlsYDmuLjmiI/og5zotJ8gICAgXHJcbiAgICAgICAgICAgIHJvdW5kOiAwLCAgICAgICAgICAgLy/lm57lkIjmlbBcclxuICAgICAgICAgICAgdG90YWxTdW5Db3VudDogMCwgICAvL+WkqumYs+aAu+aVsFxyXG4gICAgICAgICAgICBtb3ZlZFN1bkNvdW50OiAwLCAgIC8v5Y+v56e75Yqo5aSq6Ziz5Liq5pWwXHJcbiAgICAgICAgICAgIHN1blNwZWVkOiAwLCAgICAgICAgLy/lpKrpmLPnp7vliqjpgJ/luqZcclxuICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OiAwLCAvL+mHjeWPoOWkqumYs+S4quaVsFxyXG4gICAgICAgICAgICBjb2xvckxpc3Q6IFtdLCAgICAgIC8v5aSq6Ziz6aKc6Imy5pWw57uEXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwLCAgICAgICAgLy/mr4/mrKHngrnlh7vnmoTlj43lupTml7bpl7RcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOiAwLCAvL+atpOasoemavuW6plxyXG4gICAgICAgICAgICBzdW5MaXN0OiBbXSwgICAgICAgIC8v5aSq6Ziz5pWw57uE77yM55So5LqO5a2Y5pS+5aSq6Ziz57G75Z6LIDA65pmu6YCaIDE656e75YqoIDI66YeN5Y+gXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDogW10sICAgLy/mr4/mrKHngrnlh7vpl7TpmpRcclxuICAgICAgICAgICAgcmVtYWluZGVyOiAxMjAgICAgICAvL+a4uOaIj+WJqeS9meaXtumXtFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN0YXRpYyBMRVZFTF9JTkZPX2luaXQoKSB7XHJcbiAgICAgICAgdGhpcy5MRVZFTF9JTkZPID0gW1xyXG4gICAgICAgICAgICB7ICAgLy/nrKzkuIDpmr7luqZcclxuICAgICAgICAgICAgICAgIG51bWJlcjogMywgICAgICAgLy/lpKrpmLPmgLvmlbAgXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLCAgIC8v5aSq6Ziz5Y+v56e75Yqo5Liq5pWwXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDAsICAgIC8v5aSq6Ziz56e75Yqo6YCf5bqm562J57qnXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLCAvL+W4g+WxgOWQjuenu+WKqOacgOWkp+i3neemu1xyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCwgICAgLy/mr4/kuKrlpKrpmLPkuYvpl7Tot53nprvmnIDlpKfpl7Tot51cclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMCAgICAgICAgLy/mmK/lkKbph43lj6DvvIznjrDlnKgwIOS4jemHjeWPoCAxIOmHjeWPoDHkuKpcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5LqM6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDQsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiAwLFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5LiJ6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDQsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiAwLFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Zub6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDUsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAxLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5LqU6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDUsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5YWt6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDYsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5LiD6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDYsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA0LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5YWr6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDcsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAwLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA0LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Lmd6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDcsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA0LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDcsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B5LiA6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDgsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B5LqM6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDgsXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B5LiJ6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDksXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDBcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B5Zub6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDksXHJcbiAgICAgICAgICAgICAgICBtb3ZlTnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiA2LFxyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCxcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDFcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyAgIC8v56ys5Y2B5LqU6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDEwLFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzExIFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiAzLFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzEyIFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogMCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzEzIFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE0IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE1IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE2IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE3IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE4IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzE5IFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMixcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvLzIwIFxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgXVxyXG4gICAgfVxyXG4gICAgc3RhdGljIEF1dGhlbnRpY2F0aW9uKCl7XHJcbiAgICAgICAgY2MuZnguR2FtZVRvb2wuQXV0aGVudGljYXRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgc2V0Q29kZShjb2RlKXtcclxuICAgICAgICB0aGlzLkdNX0lORk8uc2NvZGUgPSBjb2RlO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuIl19
|