diff --git a/assets/Script/GameManager.ts b/assets/Script/GameManager.ts index bca68eb..1f0773a 100644 --- a/assets/Script/GameManager.ts +++ b/assets/Script/GameManager.ts @@ -227,6 +227,7 @@ export default class GameManager extends cc.Component { this.ball_Array[k].removeFromParent(); this.ball_Array[k] = null; } + cc.fx.GameConfig.GM_INFO.gap = []; } //点击太阳执行方法 clickSun(data){ @@ -235,7 +236,8 @@ export default class GameManager extends cc.Component { let clickTime = cc.fx.GameTool.getTime(); this.time_Array.push((clickTime - this.timeStart)) this.timeStart = cc.fx.GameTool.getTime(); - if(data == this.clickNow){ + + if(data.id == this.clickNow){ cc.fx.AudioManager._instance.playAudioButton(); if(this.clickNow > 0){ this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y), @@ -243,6 +245,7 @@ export default class GameManager extends cc.Component { 0.2); } this.clickNow += 1; + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); if(this.ball_Array[this.clickNow-1]) this.ball_Array[this.clickNow-1].getChildByName("guang").active = false; if(this.clickNow == this.now_Array.length){ @@ -271,7 +274,7 @@ export default class GameManager extends cc.Component { } } else{ - for(let m=0 ; m 50){ cc.fx.GameConfig.CLICK_DATA.duration = 50; } + this.setData(); cc.tween(win) .delay(0.4) @@ -327,12 +332,12 @@ export default class GameManager extends cc.Component { } } else{ - this.setLoss(); + this.setLoss(data); } } } //执行失败 - setLoss(){ + setLoss(data){ cc.fx.AudioManager._instance.playWarning(); this.begin = false; this.overTime = cc.fx.GameTool.getTime(); @@ -364,6 +369,7 @@ export default class GameManager extends cc.Component { sunArray.push(0); } } + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); cc.fx.GameConfig.CLICK_DATA = { type:1, @@ -378,11 +384,13 @@ export default class GameManager extends cc.Component { difficultyLevel:this.level, sunList:sunArray, stepTimeList:this.time_Array, - remainder:this.countTime + remainder:this.countTime, + gap:cc.fx.GameConfig.GM_INFO.gap } if(cc.fx.GameConfig.CLICK_DATA.duration > 50){ cc.fx.GameConfig.CLICK_DATA.duration = 50; } + this.setData(); if(this.fuhuo == true){ this.fuhuo = false; @@ -881,7 +889,7 @@ export default class GameManager extends cc.Component { this.begin = false; this.over = true; this.unschedule(this.updateCountDownTime); - this.setLoss(); + this.setLoss({distance:0}); var time = 0; if(this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time/this.clickCount + ""); cc.fx.GameConfig.GM_INFO.mean_Time = parseInt(time/100 + ""); diff --git a/assets/Script/GameOver.ts b/assets/Script/GameOver.ts index fe837e5..4d9da76 100644 --- a/assets/Script/GameOver.ts +++ b/assets/Script/GameOver.ts @@ -89,6 +89,9 @@ export default class NewClass extends cc.Component { } //根据内容填充排行榜 setRank(num,data){ + if(!data){ + return; + } var hitNode = null; if(num == 0){ hitNode = this.one; @@ -107,7 +110,7 @@ export default class NewClass extends cc.Component { } if(hitNode){ hitNode.active = true; - cc.fx.GameTool.subName(data.nickName,4); + data.nickName = cc.fx.GameTool.subName(data.nickName,4); hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"),data.pic); diff --git a/assets/Script/Sun.ts b/assets/Script/Sun.ts index b0eceda..cfa69c9 100644 --- a/assets/Script/Sun.ts +++ b/assets/Script/Sun.ts @@ -10,6 +10,7 @@ export default class NewClass extends cc.Component { move:boolean // onLoad () {} start () { + this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this); } //初始化数据 init(_id,color,speed,repeat){ @@ -36,9 +37,16 @@ export default class NewClass extends cc.Component { if(type == true) this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; } + //计算两点之间直线距离 + distanceBetweenTwoPoints(x1: number, y1: number, x2: number, y2: number): number { + return Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2); + } //点击事件 clickBtn(event,data){ - if(data === "1"){ + let pos = this.node.convertToNodeSpaceAR(event.getLocation()); + let distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0); + distance = Math.floor(distance*10)/10; + if(this.node.name != "qiu4"){ if( this.move == false && this.touch == true){ if(this.node.parent.parent.name == "GameNode"){ if(this.node.parent.parent.getComponent("GameManager").begin == true){ @@ -51,13 +59,15 @@ export default class NewClass extends cc.Component { .start(); this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun",this.id_Number); + let data = {id:this.id_Number,distance:distance}; + cc.fx.Notifications.emit("clickSun",data); } } else{ this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun",this.id_Number); + let data = {id:this.id_Number,distance:distance}; + cc.fx.Notifications.emit("clickSun",data); } } @@ -66,7 +76,8 @@ export default class NewClass extends cc.Component { if( this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true){ this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun",this.id_Number); + let data = {id:this.id_Number,distance:distance}; + cc.fx.Notifications.emit("clickSun",data); } } } diff --git a/assets/Script/module/Config/GameConfig.ts b/assets/Script/module/Config/GameConfig.ts index 05158fd..bf0930f 100644 --- a/assets/Script/module/Config/GameConfig.ts +++ b/assets/Script/module/Config/GameConfig.ts @@ -7,20 +7,16 @@ export class GameConfig { //所有控制信息都通过GameAppStart内控制 private static _instance : GameConfig = null; //用于盛放埋点数据上传,每次上传后清空 - static GM_INFO: { - // isEnd: false, - mean_Time: number; //平均放箭速度 - total: number; //总共对的个数 - currSeed: number; //用于随机数种子 - gameId: string; //游戏ID - userId: number; //用户ID - scode: string; //用户code - guide: boolean; //是否有引导 - url: string; //访问域名 - success: boolean; //用户游戏成功与否 - matchId: any; //用于埋点上传的ID - custom: number; //用于测试跳关卡 - }; + + static LEVEL_INFO: { //第一难度 + number: number; //太阳总数 + moveNumber: number; //太阳可移动个数 + moveSpeed: number; //太阳移动速度等级 + maxDistance: number; //布局后移动最大距离 + maxMove: number; //每个太阳之间距离最大间距 + repeat: number; //是否重叠,现在0 不重叠 1 重叠1个 + }[]; + static GAME_DATA: any[]; static CLICK_DATA: { type: number; //上传数据类型 success: boolean; //此局游戏胜负 @@ -35,16 +31,23 @@ export class GameConfig { sunList: any[]; //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠 stepTimeList: any[]; //每次点击间隔 remainder: number; //游戏剩余时间 + gap: any[]; //点击到太阳中心距离 + }; + static GM_INFO: { + // isEnd: false, + mean_Time: number; //平均放箭速度 + total: number; //总共对的个数 + currSeed: number; //用于随机数种子 + gameId: string; //游戏ID + userId: number; //用户ID + scode: string; //用户code,从网页后缀获取 + guide: boolean; //是否有引导 + url: string; //访问域名 + success: boolean; //用户游戏成功与否 + matchId: any; //用于埋点上传的ID + custom: number; //用于测试跳关卡 + gap: any[]; //存储点击到太阳中心距离 }; - static LEVEL_INFO: { //第一难度 - number: number; //太阳总数 - moveNumber: number; //太阳可移动个数 - moveSpeed: number; //太阳移动速度等级 - maxDistance: number; //布局后移动最大距离 - maxMove: number; //每个太阳之间距离最大间距 - repeat: number; //是否重叠,现在0 不重叠 1 重叠1个 - }[]; - static GAME_DATA: any[]; static get Instance() @@ -71,27 +74,27 @@ export class GameConfig { this.LEVEL_INFO_init(); var self = this; - cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => { - if (err) { - WeChat.setShare(location.href); - self.Authentication(); - return; - } - let jsonData: object = res.json!; - self.GM_INFO = jsonData["data"]; - self.setCode(self.getKey("scode")); - WeChat.setShare(location.href); - self.Authentication(); + // cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => { + // if (err) { + // WeChat.setShare(location.href); + // // self.Authentication(); + // return; + // } + // let jsonData: object = res.json!; + // self.GM_INFO = jsonData["data"]; + // self.setCode(self.getKey("scode")); + // WeChat.setShare(location.href); + // // self.Authentication(); - }) - cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { - if (err) { + // }) + // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { + // if (err) { - return; - } - let jsonData: object = res.json!; - self.CLICK_DATA = jsonData["data"]; - }) + // return; + // } + // let jsonData: object = res.json!; + // self.CLICK_DATA = jsonData["data"]; + // }) cc.resources.load('Json/LEVEL_INFO', (err: any, res: cc.JsonAsset) => { if (err) { return; @@ -119,9 +122,12 @@ export class GameConfig { url: "https://api.sparkus.cn",//访问域名 success: false, //用户游戏成功与否 matchId: null, //用于埋点上传的ID - custom: 0 //用于测试跳关卡 + custom: 0, //用于测试跳关卡 + gap:[] //存储点击到太阳中心距离 }; this.setCode(this.getKey("scode")); + WeChat.setShare(location.href); + this.Authentication(); } static CLICK_init() { this.CLICK_DATA = @@ -138,8 +144,10 @@ export class GameConfig { difficultyLevel: 0, //此次难度 sunList: [], //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠 stepTimeList: [], //每次点击间隔 - remainder: 120 //游戏剩余时间 + remainder: 120, //游戏剩余时间 + gap:[] //点击到太阳中心距离 } + } static LEVEL_INFO_init() { this.LEVEL_INFO = [ diff --git a/assets/prefab/qiu4.prefab b/assets/prefab/qiu4.prefab index aa3f1fa..0d24832 100644 --- a/assets/prefab/qiu4.prefab +++ b/assets/prefab/qiu4.prefab @@ -13,7 +13,7 @@ }, { "__type__": "cc.Node", - "_name": "qiu1", + "_name": "qiu4", "_objFlags": 0, "_parent": null, "_children": [ diff --git a/assets/resources/Json/CLICK_DATA.json b/assets/resources/Json/CLICK_DATA.json index c04e75a..ed735e8 100644 --- a/assets/resources/Json/CLICK_DATA.json +++ b/assets/resources/Json/CLICK_DATA.json @@ -13,6 +13,7 @@ "difficultyLevel": 0, "sunList": [], "stepTimeList": [], - "remainder": 120 + "remainder": 120, + "gap":[] } } \ No newline at end of file diff --git a/build-templates/web-mobile/index.html b/build-templates/web-mobile/index.html index c524533..6a256ff 100644 --- a/build-templates/web-mobile/index.html +++ b/build-templates/web-mobile/index.html @@ -4,40 +4,23 @@ - 后裔逐日 - + 思赞 - - - - - - - - - - - - - - - @@ -47,95 +30,164 @@ font-family: 'MyFont'; src: url('data:application/font-woff;charset=utf-8;base64,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Tkcg5byg5paH6b6ZIChib3BvbW9mbyk7IFNhbmRvbGwgQ29tbXVuaWNhdGlvbnMg7IKw64+M7Luk666k64uI7LyA7J207IWYLCBTb29oeXVuIFBBUksg67CV7IiY7ZiELCBZZWppbiBXRSDsnITsmIjsp4QgJiBEb25naG9vbiBIQU4g7ZWc64+Z7ZuIIChoYW5ndWwgZWxlbWVudHMsIGxldHRlcnMgJiBzeWxsYWJsZXMpRHIuIEtlbiBMdW5kZSAocHJvamVjdCBhcmNoaXRlY3QsIGdseXBoIHNldCBkZWZpbml0aW9uICYgb3ZlcmFsbCBwcm9kdWN0aW9uKTsgTWFzYXRha2EgSEFUVE9SSSDmnI3pg6jmraPosrQgKHByb2R1Y3Rpb24gJiBpZGVvZ3JhcGggZWxlbWVudHMpOyBaYWNoYXJ5IFF1aW5uIFNjaGV1cmVuICh2YXJpYWJsZSBmb250ICYgb3ZlcmFsbCBwcm9kdWN0aW9uKWh0dHA6Ly93d3cuYWRvYmUuY29tL3R5cGUvVGhpcyBGb250IFNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBTSUwgT3BlbiBGb250IExpY2Vuc2UsIFZlcnNpb24gMS4xLiBUaGlzIEZvbnQgU29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgU0lMIE9wZW4gRm9udCBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UsIHBlcm1pc3Npb25zIGFuZCBsaW1pdGF0aW9ucyBnb3Zlcm5pbmcgeW91ciB1c2Ugb2YgdGhpcyBGb250IFNvZnR3YXJlLmh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMU291cmNlIEhhbiBTZXJpZiBTQ0hlYXZ5AKkAIAAyADAAMQA3AC0AMgAwADIAMwAgAEEAZABvAGIAZQAgACgAaAB0AHQAcAA6AC8ALwB3AHcAdwAuAGEAZABvAGIAZQAuAGMAbwBtAC8AKQAsACAAdwBpAHQAaAAgAFIAZQBzAGUAcgB2AGUAZAAgAEYAbwBuAHQAIABOAGEAbQBlACAAJwBTAG8AdQByAGMAZQAnAC4AUwBvAHUAcgBjAGUAIABIAGEAbgAgAFMAZQByAGkAZgAgAFMAQwAgAEgAZQBhAHYAeQBSAGUAZwB1AGwAYQByADIALgAwADAAMgA7AEEARABCAE8AOwBTAG8AdQByAGMAZQBIAGEAbgBTAGUAcgBpAGYAUwBDAC0ASABlAGEAdgB5ADsAQQBEAE8AQgBFAFMAbwB1AHIAYwBlACAASABhAG4AIABTAGUAcgBpAGYAIABTAEMAIABIAGUAYQB2AHkAVgBlAHIAcwBpAG8AbgAgADIALgAwADAAMgA7AGgAbwB0AGMAbwBuAHYAIAAxAC4AMQAuADAAOwBtAGEAawBlAG8AdABmAGUAeABlACAAMgAuADYALgAwAFMAbwB1AHIAYwBlAEgAYQBuAFMAZQByAGkAZgBTAEMALQBIAGUAYQB2AHkAUwBvAHUAcgBjAGUAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABBAGQAbwBiAGUAIABpAG4AIAB0AGgAZQAgAFUAbgBpAHQAZQBkACAAUwB0AGEAdABlAHMAIABhAG4AZAAvAG8AcgAgAG8AdABoAGUAcgAgAGMAbwB1AG4AdAByAGkAZQBzAC4AQQBkAG8AYgBlAFIAeQBvAGsAbwAgAE4ASQBTAEgASQBaAFUASwBBACCJf1habbxbUAAgACgAawBhAG4AYQAgACYAIABpAGQAZQBvAGcAcgBhAHAAaABzACkAOwAgAEYAcgBhAG4AawAgAEcAcgBpAGUA3wBoAGEAbQBtAGUAcgAgACgATABhAHQAaQBuACwAIABHAHIAZQBlAGsAIAAmACAAQwB5AHIAaQBsAGwAaQBjACkAOwAgAFcAZQBuAGwAbwBuAGcAIABaAEgAQQBOAEcAIF8gZYefmQAgACgAYgBvAHAAbwBtAG8AZgBvACkAOwAgAFMAYQBuAGQAbwBsAGwAIABDAG8AbQBtAHUAbgBpAGMAYQB0AGkAbwBuAHMAIMCws8zO5LukssjPAMd0wVgALAAgAFMAbwBvAGgAeQB1AG4AIABQAEEAUgBLACC8FcIY1gQALAAgAFkAZQBqAGkAbgAgAFcARQAgxwTGCMnEACAAJgAgAEQAbwBuAGcAaABvAG8AbgAgAEgAQQBOACDVXLPZ1sgAIAAoAGgAYQBuAGcAdQBsACAAZQBsAGUAbQBlAG4AdABzACwAIABsAGUAdAB0AGUAcgBzACAAJgAgAHMAeQBsAGwAYQBiAGwAZQBzACkARAByAC4AIABLAGUAbgAgAEwAdQBuAGQAZQAgACgAcAByAG8AagBlAGMAdAAgAGEAcgBjAGgAaQB0AGUAYwB0ACwAIABnAGwAeQBwAGgAIABzAGUAdAAgAGQAZQBmAGkAbgBpAHQAaQBvAG4AIAAmACAAbwB2AGUAcgBhAGwAbAAgAHAAcgBvAGQAdQBjAHQAaQBvAG4AKQA7ACAATQBhAHMAYQB0AGEAawBhACAASABBAFQAVABPAFIASQAgZw2Q6GtjjLQAIAAoAHAAcgBvAGQAdQBjAHQAaQBvAG4AIAAmACAAaQBkAGUAbwBnAHIAYQBwAGgAIABlAGwAZQBtAGUAbgB0AHMAKQA7ACAAWgBhAGMAaABhAHIAeQAgAFEAdQBpAG4AbgAgAFMAYwBoAGUAdQByAGUAbgAgACgAdgBhAHIAaQBhAGIAbABlACAAZgBvAG4AdAAgACYAIABvAHYAZQByAGEAbABsACAAcAByAG8AZAB1AGMAdABpAG8AbgApAGgAdAB0AHAAOgAvAC8AdwB3AHcALgBhAGQAbwBiAGUALgBjAG8AbQAvAHQAeQBwAGUALwBUAGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAgAGkAcwAgAGwAaQBjAGUAbgBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALAAgAFYAZQByAHMAaQBvAG4AIAAxAC4AMQAuACAAVABoAGkAcwAgAEYAbwBuAHQAIABTAG8AZgB0AHcAYQByAGUAIABpAHMAIABkAGkAcwB0AHIAaQBiAHUAdABlAGQAIABvAG4AIABhAG4AIAAiAEEAUwAgAEkAUwAiACAAQgBBAFMASQBTACwAIABXAEkAVABIAE8AVQBUACAAVwBBAFIAUgBBAE4AVABJAEUAUwAgAE8AUgAgAEMATwBOAEQASQBUAEkATwBOAFMAIABPAEYAIABBAE4AWQAgAEsASQBOAEQALAAgAGUAaQB0AGgAZQByACAAZQB4AHAAcgBlAHMAcwAgAG8AcgAgAGkAbQBwAGwAaQBlAGQALgAgAFMAZQBlACAAdABoAGUAIABTAEkATAAgAE8AcABlAG4AIABGAG8AbgB0ACAATABpAGMAZQBuAHMAZQAgAGYAbwByACAAdABoAGUAIABzAHAAZQBjAGkAZgBpAGMAIABsAGEAbgBnAHUAYQBnAGUALAAgAHAAZQByAG0AaQBzAHMAaQBvAG4AcwAgAGEAbgBkACAAbABpAG0AaQB0AGEAdABpAG8AbgBzACAAZwBvAHYAZQByAG4AaQBuAGcAIAB5AG8AdQByACAAdQBzAGUAIABvAGYAIAB0AGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAuAGgAdAB0AHAAOgAvAC8AcwBjAHIAaQBwAHQAcwAuAHMAaQBsAC4AbwByAGcALwBPAEYATABTAG8AdQByAGMAZQAgAEgAYQBuACAAUwBlAHIAaQBmACAAUwBDAEgAZQBhAHYAeQAAAwAAAAAAAP+1ADIAAAAAAAAAAAAAAAAAAAAAAAAAXg==')format('opentype'); } - body, html { - height: 100%; + body { + background-color: black; margin: 0; - background-color: #000; /* 背景色设置为黑色 */ + font-family: 'MyFont', sans-serif; display: flex; - justify-content: center; + flex-direction: column; align-items: center; - font-family: 'MyFont', serif; + justify-content: center; + min-height: 100vh; + overflow: hidden; + padding: 20px; + box-sizing: border-box; } - .title{ - position: absolute; - color:#fff; - top: 35%; - font-size: 45px; - font-weight: 800; - } - .star-container { - position: absolute; + + .container { + width: 90%; + max-width: 600px; display: flex; - top: 45%; + flex-direction: column; + align-items: center; + position: absolute; + margin-bottom: 100px; } - - .star { + + .progress-container { + width: 100%; + height: 16px; + margin: 20px 0; + position: relative; + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAANCAYAAACHMDjlAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Rjc1REI2N0E2ODI0MTFFRkI1RDZCRjJGNkU0OEFGRDciIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Rjc1REI2Nzk2ODI0MTFFRkI1RDZCRjJGNkU0OEFGRDciIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MDQ4RDIwNjY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MDQ4RDIwNzY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlFPNlMAAAOoSURBVHja7JxZaBNBHMZncxqzCa30MF5QtWA9qWAftFix4vGkFqVCFaWKoFQ86Ku+VB8VDxRRq6ioKFqPB0HtiydapNSrFeuBZ5seGNsmabs26/9vprpqEiMEm4fvBx/Z3Zmd3TDwfZmdzCq7yvNFItF14bJZTSUupy3PpIgUOhTiwwIAAMD/RCGZQiHd1xHQ7mta6LSiiK5EXsDyD3UXkm6SfDHqDFWd1u0t7YGCq7ffqv5uzSy/BAAAgP+P7nRY+/JzPfnpqY5pXQFtGx1rilGff/TPJF1JZIBsIe0knSctjTLycKiDrVvffOyYdexSQ6a3PaCi7wAAYOCpe96qrlyYMztrmLuXQqScRiLBKFUrSUWkTaQ9f2vXJD9dpMlR6myU4cEsIZ37IzxIlHLrfJ09hZVV9cMQHgAAkDw0tQXUI1X1HvZo9uoIcwr8pOiCDA9mN6ksSnNTSGp/gLhJl0h3SYXi5yMnLtsgGzLCI5AznBk/UkgREyjRis5ea8xs/Rx0oLsAACC5aCNvZo9mrybPHm8oUqWnF/12yj7SesNAg7NhDukO6SIPPLjgEGm2bKSaNE5WXkXaG+VelpEO9OeHw24prXnqHVnb0JqCbgIAgOSEPZq92mGzrDEEw0FScZRT9pNWyO0c0g2ZFRwkB7mBa4bKvN0utx+TXkdp9KsMG8Zlt5rH1jxpcaN7AAAguWGvttvMY0R46oK5TuqLUv0V6Yncbjf4/vfzOECOkdaRTpEWkFpk4UNSAakhQqM8F3JSbvt7tL5XeZMyOtA1AACQ3LBXk2e/ZO+Wh06IyH+OeibC/8iqlfte0lzSadJa0nHjEGa5+HO9xgfSIsNIpFuGx2XjaCTY87Uyb2Lm+6k56Z/RPQAAkJyQR/vYq8mzj4rwk6R+LsoQ6ZH7L6X3f/qtCc6IEtJh3jHFcc0XIjy5fotUKsIz9b8Q0sUzXRdVxfOyW9NTHUF0EwAAJBdp5M3k0V72avbsCFV4mcZqEV7vVyhDJCbmedNHxXNtnxy2PIpUyFPzvVqozq3axo4e4c5sfPfF5g9qNnQZAAAMPEPTBneVLh7v9aQ5q8mbdyjKL6MPIzzfwdMZcT1N+peV6L2xCnlhCt1YRdZwt71s2aSCe3XNLn+3ZhJYiQ4AAAOF7hxk7ZuR6+nMGOK42RXQKmIsIuxHi7dxS4JvtrnTr21OcdlLiudnTzMpIlXgXVgAADAQhN+FpQtfh7/3AXnzqUS/C+ubAAMA3lcWYmzreJUAAAAASUVORK5CYII='); + background-size: 100% 100%; + background-repeat: no-repeat; + background-position: center; + } + + .progress-bar { + margin-left: 4%; + margin-top: 2px; + height: 12px; + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgUAAAAOCAYAAAC/xG/nAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODA0OEQyMDI2Nzc3MTFFRkJBNzVFNEFEMEI1RUQ4QTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODA0OEQyMDM2Nzc3MTFFRkJBNzVFNEFEMEI1RUQ4QTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MDQ4RDIwMDY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MDQ4RDIwMTY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pm2I2nkAAAn3SURBVHja7F07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'); + background-size: cover; + transition: width 0.5s ease-out; + } + + .progress-icon { + position: absolute; + transform: translate(-50%, -50%); + top: 72.2%; + margin-left: 4%; + z-index: 100; + transition: left 0.5s ease-out; + } + + .progress-icon img { + width: 35px; + height: auto; + } + + .tagClass { + position: absolute; + left: 33%; + width: 30px; + } + + .tagClass img { + width: 100%; + height: auto; + } + + .header-container { position: relative; display: flex; - width: 23px; - height: 45px; - opacity: 0.5; - transform: scale(0.5); - background-image: url('data:image/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAuCAYAAABJcBuEAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUM0MENGRjkxNUI0MTFFRkE2MDNDQUJCRTk1NEE3Q0UiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUM0MENGRkExNUI0MTFFRkE2MDNDQUJCRTk1NEE3Q0UiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQzQwQ0ZGNzE1QjQxMUVGQTYwM0NBQkJFOTU0QTdDRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQzQwQ0ZGODE1QjQxMUVGQTYwM0NBQkJFOTU0QTdDRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoQoElsAAAIYSURBVHjaYvz5OImBAiANxIxA/IRcA5gYKAOSUEw2YKHQAdIU6qc4BNSBWGMgQ0ATmgYGzAGWlEYBJQ4QBmI1JPZbeqcBd2jwM0LZdE+EPjjYdHEADxD7IfH9oGJ0c0AIEHMj8bmhYnRzQB6RYjRxACjBGWIRB4l50NoBIPXteOTbSTWTVAek4PA9DBhA1dDEATJA3EWEui6oWqo6AFRiLgdifiLU8kPVslLTAZOA2IaE0AKpnUgNBzBCgzSTjNwC0tNLqLbE5wB2IJ4NxKUUFNdFQDwHahZJDtAC4iNAnMxAOUiCmqVFjAPkoXF3AYhNGKgHQGZdhJotjxLHwFYxKMEYQ2s0Byo0UgiBv0C8H4i3APFZUAg8hzarHwDxNwbag69Qu0B2PmdE6xfwQVNvBRALUNnij9CiejoQf8KVBkASndAEs5WKlm+FNmA7kS3HlwtA0eILxE1UsLwJatZzUsuB/0BcD8QFFFheADXjPyVFMSjrdJBheQcxxTGxdUEVNNsQCzZD9VCtMgIFYRyueMSSfuLxBTu57YH3QJxPhLp8qFqatIhWA/EhPPL7oWpo2ijFF7c19GgVH4VidHAciI/Rq1+ALXv107Njsgktob2HitHNAT+BeB0Sfx1UjK694y042HQboNgLbVzA2HR3wGcgvoLEHpAxotMDOUYEAtcZBniU7OZAO+AJpWZQ6oCXFGZlBoAAAwDUK2BIc/JCPQAAAABJRU5ErkJggg=='); - animation: twinkle 1s ease-in-out infinite; - } - .star{ - padding-left: 10px; - } - /* 为每颗星星设置不同的动画延迟 */ - .star:nth-child(1) { - - animation-delay: 0s; - } - - .star:nth-child(2) { - - animation-delay: 0.2s; - } - - .star:nth-child(3) { - animation-delay: 0.4s; - } - .star:nth-child(4) { - animation-delay: 0.6s; - } - .star:nth-child(5) { - animation-delay: 0.8s; - } - .star:nth-child(6) { - animation-delay: 1s; - } - - /* 星星闪烁动画 */ - @keyframes twinkle { - 0%, 100% { - opacity: 0.5; - transform: scale(0.5); - } - 50% { - opacity: 1; - transform: scale(1); - } + flex-direction: column; + align-items: center; + margin-bottom: 20px; } - + .header-container img { + width: 100%; + max-width: 200px; + height: auto; + } + .header-container div { + color: white; + font-size: 1rem; + margin-top: 5px; + position: absolute; + bottom: 0px; + } + + @media (max-width: 480px) { + .header-container img { + max-width: 170px; + } + + .tagClass { + width: 20px; + } + + .progress-icon img { + width: 70px; + } + } + +
+
+ Head Icon +
注意力
+
+
+ Tag Icon +
+
+
+
+ Highlight Icon +
+
+
+ -
- - 注意力 -
-
-
-
-
-
-
-
- @@ -266,5 +318,7 @@ })(); + + diff --git a/build-templates/web-mobile/main.js b/build-templates/web-mobile/main.js index eab3e40..82f0072 100644 --- a/build-templates/web-mobile/main.js +++ b/build-templates/web-mobile/main.js @@ -11,13 +11,15 @@ window.boot = function () { var MAIN = cc.AssetManager.BuiltinBundleName.MAIN; function setLoadingDisplay () { // Loading splash scene - var splash = document.getElementById('splash'); - var star = document.getElementById('_star'); + var progressBar = document.getElementById('progress-bar'); + var progressIcon = document.getElementById('progress-icon'); + var progressContainer = document.querySelector('.progress-container'); onProgress = function (finish, total) { }; cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () { - splash.style.display = 'none'; - star.style.display = 'none'; + progressBar.style.display = 'none'; + progressIcon.style.display = 'none'; + progressContainer.style.display = 'none'; }); } @@ -102,7 +104,16 @@ window.boot = function () { count++; if (count === bundleRoot.length + 1) { cc.assetManager.loadBundle(MAIN, function (err) { - if (!err) cc.game.run(option, onStart); + if (!err){ + let time = 4 - window.progress_Index/3*0.2; + if(time <= 0) cc.game.run(option, onStart); + else{ + window.addSpeed_Index = 3; + setTimeout(() => { + cc.game.run(option, onStart); + }, time*1000/1.5); + } + } }); } } diff --git a/build/SunMoves.zip b/build/SunMoves.zip index 7753aee..27cc41b 100644 Binary files a/build/SunMoves.zip and b/build/SunMoves.zip differ diff --git a/build/SunMoves/assets/main/config.57d1e.json b/build/SunMoves/assets/main/config.ecbbc.json similarity index 96% rename from build/SunMoves/assets/main/config.57d1e.json rename to build/SunMoves/assets/main/config.ecbbc.json index 54219b7..6402e7f 100644 --- a/build/SunMoves/assets/main/config.57d1e.json +++ b/build/SunMoves/assets/main/config.ecbbc.json @@ -1 +1 @@ -{"paths":{},"types":[],"uuids":["a2MjXRFdtLlYQ5ouAFv/+R","14K23Xm1ROrrsGMBKG1Ql4","1fwAIEeM1Nn7i705Pdg5L5","23CIt+PSBBMJopNtpbffXh","29FYIk+N1GYaeWH/q1NxQO","29G9ngwKpNW56EfZdKv0SX","2dL3kvpAxJu6GJ7RdqJG5J","37ND3actNCqZoLzr1NBiTF","46BfYz5xdMnqrgjOetBb8L","48Foz8zQZDfLObHQegvteG","4bnFp+xkVIpJrKXfOBzk71","4er1GLNexCYpKNTUl8Pygw","59MsqY7oZEy71JeUeyyS/Z","61cyPdEfRN047sDK9rO0W5","63m/tYswFOS7sCMuQGQ4kn","651MDCXIFPuZKQK1+nWOzk","71VhFCTINJM6/Ky3oX9nBT","77SCm7Ej5ItpMOaz4CSRUG","8eZObX1ehJkKU3GR/hPgya","93XHrCUNdAwJfBzyLGAOJ5","9cCAYtTPFLbqi6SjiBzH59","adrVhydQhMD7nhiXljhNId","b4P/PCArtIdIH38t6mlw8Y","d3OhOXdm5P4JNse7X8GMGe","d608qFRoFHwbXd0Dap056i","d8HsitJHxOYqo801xBk8ev","e7CzEDg/FMZpCTGJfBpdSu","e8Ueib+qJEhL6mXAHdnwbi","e97GVMl6JHh5Ml5qEDdSGa","eezChet5VG27PW9q3qdOpv","f0BIwQ8D5Ml7nTNQbh1YlS","f7ZJEQGfdJraVAIIAn8NFW","02delMVqdBD70a/HSD99FK","08/X0iIrpGHbKJqlQlA512","0cF7COgzlFRKaDnaVJrOOt","13EQ5PNYdOa4gRDKFsrIFJ","167IfY0HdDyZdtlLDeaDkg","27FeLB8OpGcaDrf9NiEDKz","28Gg0A8X1JHpYnbH9vZIzV","2aJVC/rshLnpvG+lkallqC","2cyTcZvcZP7rjmchhWREEu","3aIyOI2NxPeaHqgvY4W3zi","3fgys9roZKo5OdfZn0T4Fo","432ND8vGNFM4/Pxt+hVLkb","4cuYcoe7tPiIdp6gbSnrvF","4c7tzGCVNKE5yvOmzu4CXt","57X2D8NaxKHZ7D/uwxGBCK","59Sn0ZhhJHf7HX55ZqGeqE","5aBm0rBa9Gxr8lWEiz8nAb","5bsctimnBNw4onIGVsCfsU","5cO7kybDxGj4ipyMYdRYZB","5eUVg3ZQ5FhKCJ4qAl42w5","5f5dyqtRNNxaFmVzYns6FZ","61c+AvZ7lJH4DcNNAnJ//N","6cyjAC9cJDE6x1PK28Td4v","6eoolBkxxPvof0z1pzKU+w","70mY8jP3NKVonyvxI9/f6z","818w6dGPRH+rXb8KDTjDgq","8cv+mgkU9OTIB7sHOwnyZ8","8eo+QfsThNk7a0r8Ilro8q","95AC/gHlpJ64LEYVdSIIPB","95viAf/CZABIBJ7iCjDOU4","99vgruzGRMmJOIRLdPaQYs","9bvaMerUlDyary99mJa6xp","9cBsd3MbFMC56GS/sJnS6r","9c3CkVjW9H27x0Hoq3KNFJ","9e4xLWF9hCBq5CM6vIyvlp","a5+/rf9ZlPEIXTSsUOhw7T","adR/bBScVC/bM24V3TdrfL","adULT7sm1JR6vTV/oW1JIb","bcITWltAtAD4sUjinM7HdJ","c6VxSCRHRB+qS91aK866px","ceNMgtpZhCsKd8anXNKd7b","d1MjdySrJFJ70gUB/k+5cj","d7kiZgBYNPyIwqRjgGX7l0","ddnWn8vDxCOZaOnG9OVNnP","deq5vhWmZCFJ97k3T54cZ0","e82yVDavlBc6NpbK/tA6Dr","ecpdLyjvZBwrvm+cedCcQy","f1O5RoDlhGrI6+/w3NObrX"],"scenes":{"db://assets/Scene/GameScene.fire":11,"db://assets/Scene/GuideScene.fire":17,"db://assets/Scene/LoadScene.fire":20,"db://assets/Scene/OverScene.fire":10,"db://assets/Scene/RankScene.fire":6},"redirect":[32,0,33,1,34,1,36,1,37,1,39,1,40,1,43,1,48,1,49,1,53,1,54,1,56,1,58,1,59,1,60,1,61,1,62,1,64,1,66,1,67,1,69,1,70,1,71,1,72,1,74,1,76,1,78,0,79,1],"deps":["internal","resources"],"packs":{"01587c953":[3,4,18,20,0,26,77,28,30],"05f3c1ca4":[7,17,0,73,23],"0792a0dcc":[2,5,8,9,12,13,14,15,16,19,21,22,24,25,27,29,31],"0c3c65793":[1,10,46,65],"0cd1ec7f1":[55,75],"0d7de01d8":[35,38,4,7,41,42,44,45,11,51,57,0,23,28,30],"0e0598680":[1,6,47,50,52,63,68]},"name":"main","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":false,"versions":{"import":["01587c953","f064d","05f3c1ca4","1b0a3","0792a0dcc","c99c1","0c3c65793","34bfc","0cd1ec7f1","718bb","0d7de01d8","334d7","0e0598680","b46ac"],"native":[2,"42c23",3,"93a46",5,"6e8cb",8,"f61d5",9,"c8c0d",12,"d38b4",13,"6d707",14,"0828f",15,"618c7",16,"c06a9",18,"3ecad",19,"c0bdf",21,"2ac7c",22,"83fcc",24,"d55c2",25,"cdbc9",26,"58a8e",27,"90cf4",29,"40762",31,"27e3b"]}} \ No newline at end of file +{"paths":{},"types":[],"uuids":["a2MjXRFdtLlYQ5ouAFv/+R","14K23Xm1ROrrsGMBKG1Ql4","1fwAIEeM1Nn7i705Pdg5L5","23CIt+PSBBMJopNtpbffXh","29FYIk+N1GYaeWH/q1NxQO","29G9ngwKpNW56EfZdKv0SX","2dL3kvpAxJu6GJ7RdqJG5J","37ND3actNCqZoLzr1NBiTF","46BfYz5xdMnqrgjOetBb8L","48Foz8zQZDfLObHQegvteG","4bnFp+xkVIpJrKXfOBzk71","4er1GLNexCYpKNTUl8Pygw","59MsqY7oZEy71JeUeyyS/Z","61cyPdEfRN047sDK9rO0W5","63m/tYswFOS7sCMuQGQ4kn","651MDCXIFPuZKQK1+nWOzk","71VhFCTINJM6/Ky3oX9nBT","77SCm7Ej5ItpMOaz4CSRUG","8eZObX1ehJkKU3GR/hPgya","93XHrCUNdAwJfBzyLGAOJ5","9cCAYtTPFLbqi6SjiBzH59","adrVhydQhMD7nhiXljhNId","b4P/PCArtIdIH38t6mlw8Y","d3OhOXdm5P4JNse7X8GMGe","d608qFRoFHwbXd0Dap056i","d8HsitJHxOYqo801xBk8ev","e7CzEDg/FMZpCTGJfBpdSu","e8Ueib+qJEhL6mXAHdnwbi","e97GVMl6JHh5Ml5qEDdSGa","eezChet5VG27PW9q3qdOpv","f0BIwQ8D5Ml7nTNQbh1YlS","f7ZJEQGfdJraVAIIAn8NFW","02delMVqdBD70a/HSD99FK","08/X0iIrpGHbKJqlQlA512","0cF7COgzlFRKaDnaVJrOOt","13EQ5PNYdOa4gRDKFsrIFJ","167IfY0HdDyZdtlLDeaDkg","27FeLB8OpGcaDrf9NiEDKz","28Gg0A8X1JHpYnbH9vZIzV","2aJVC/rshLnpvG+lkallqC","2cyTcZvcZP7rjmchhWREEu","3aIyOI2NxPeaHqgvY4W3zi","3fgys9roZKo5OdfZn0T4Fo","432ND8vGNFM4/Pxt+hVLkb","4cuYcoe7tPiIdp6gbSnrvF","4c7tzGCVNKE5yvOmzu4CXt","57X2D8NaxKHZ7D/uwxGBCK","59Sn0ZhhJHf7HX55ZqGeqE","5aBm0rBa9Gxr8lWEiz8nAb","5bsctimnBNw4onIGVsCfsU","5cO7kybDxGj4ipyMYdRYZB","5eUVg3ZQ5FhKCJ4qAl42w5","5f5dyqtRNNxaFmVzYns6FZ","61c+AvZ7lJH4DcNNAnJ//N","6cyjAC9cJDE6x1PK28Td4v","6eoolBkxxPvof0z1pzKU+w","70mY8jP3NKVonyvxI9/f6z","818w6dGPRH+rXb8KDTjDgq","8cv+mgkU9OTIB7sHOwnyZ8","8eo+QfsThNk7a0r8Ilro8q","95AC/gHlpJ64LEYVdSIIPB","95viAf/CZABIBJ7iCjDOU4","99vgruzGRMmJOIRLdPaQYs","9bvaMerUlDyary99mJa6xp","9cBsd3MbFMC56GS/sJnS6r","9c3CkVjW9H27x0Hoq3KNFJ","9e4xLWF9hCBq5CM6vIyvlp","a5+/rf9ZlPEIXTSsUOhw7T","adR/bBScVC/bM24V3TdrfL","adULT7sm1JR6vTV/oW1JIb","bcITWltAtAD4sUjinM7HdJ","c6VxSCRHRB+qS91aK866px","ceNMgtpZhCsKd8anXNKd7b","d1MjdySrJFJ70gUB/k+5cj","d7kiZgBYNPyIwqRjgGX7l0","ddnWn8vDxCOZaOnG9OVNnP","deq5vhWmZCFJ97k3T54cZ0","e82yVDavlBc6NpbK/tA6Dr","ecpdLyjvZBwrvm+cedCcQy","f1O5RoDlhGrI6+/w3NObrX"],"scenes":{"db://assets/Scene/GameScene.fire":11,"db://assets/Scene/GuideScene.fire":17,"db://assets/Scene/LoadScene.fire":20,"db://assets/Scene/OverScene.fire":10,"db://assets/Scene/RankScene.fire":6},"redirect":[32,0,33,1,34,1,36,1,37,1,39,1,40,1,43,1,48,1,49,1,53,1,54,1,56,1,58,1,59,1,60,1,61,1,62,1,64,1,66,1,67,1,69,1,70,1,71,1,72,1,74,1,76,1,78,0,79,1],"deps":["internal","resources"],"packs":{"01587c953":[3,4,18,20,0,26,77,28,30],"05f3c1ca4":[7,17,0,73,23],"0792a0dcc":[2,5,8,9,12,13,14,15,16,19,21,22,24,25,27,29,31],"0c3c65793":[1,10,46,65],"0cd1ec7f1":[55,75],"0d7de01d8":[35,38,4,7,41,42,44,45,11,51,57,0,23,28,30],"0e0598680":[1,6,47,50,52,63,68]},"name":"main","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":false,"versions":{"import":["01587c953","f064d","05f3c1ca4","2cb7c","0792a0dcc","c99c1","0c3c65793","34bfc","0cd1ec7f1","718bb","0d7de01d8","334d7","0e0598680","b46ac"],"native":[2,"42c23",3,"93a46",5,"6e8cb",8,"f61d5",9,"c8c0d",12,"d38b4",13,"6d707",14,"0828f",15,"618c7",16,"c06a9",18,"3ecad",19,"c0bdf",21,"2ac7c",22,"83fcc",24,"d55c2",25,"cdbc9",26,"58a8e",27,"90cf4",29,"40762",31,"27e3b"]}} \ No newline at end of file diff --git a/build/SunMoves/assets/main/import/05/05f3c1ca4.1b0a3.json b/build/SunMoves/assets/main/import/05/05f3c1ca4.2cb7c.json similarity index 98% rename from build/SunMoves/assets/main/import/05/05f3c1ca4.1b0a3.json rename to build/SunMoves/assets/main/import/05/05f3c1ca4.2cb7c.json index e3c1b73..6510ae0 100644 --- a/build/SunMoves/assets/main/import/05/05f3c1ca4.1b0a3.json +++ b/build/SunMoves/assets/main/import/05/05f3c1ca4.2cb7c.json @@ -1 +1 @@ -[1,["ecpdLyjvZBwrvm+cedCcQy","a2MjXRFdtLlYQ5ouAFv/+R","a5+/rf9ZlPEIXTSsUOhw7T","d7kiZgBYNPyIwqRjgGX7l0","99vgruzGRMmJOIRLdPaQYs","ddnWn8vDxCOZaOnG9OVNnP","eezChet5VG27PW9q3qdOpv","adULT7sm1JR6vTV/oW1JIb","95viAf/CZABIBJ7iCjDOU4","37ND3actNCqZoLzr1NBiTF","d1MjdySrJFJ70gUB/k+5cj","6eoolBkxxPvof0z1pzKU+w","02delMVqdBD70a/HSD99FK","432ND8vGNFM4/Pxt+hVLkb","deq5vhWmZCFJ97k3T54cZ0","8eo+QfsThNk7a0r8Ilro8q","d3OhOXdm5P4JNse7X8GMGe","f1O5RoDlhGrI6+/w3NObrX","adrVhydQhMD7nhiXljhNId"],["node","_spriteFrame","_N$target","_parent","_textureSetter","ball","dialog","scene","qiu1","linePrefab","root","target","data","_defaultClip"],[["cc.Node",["_name","_active","_opacity","_id","_children","_trs","_parent","_components","_contentSize","_prefab","_color"],-1,2,7,1,9,5,4,5],["cc.Node",["_name","_opacity","_active","_components","_contentSize","_parent","_trs","_color","_prefab","_children"],0,9,5,1,7,5,4,12],"cc.SpriteFrame",["cc.Sprite",["_sizeMode","_type","node","_materials","_spriteFrame"],1,1,3,6],["cc.Label",["_string","_N$horizontalAlign","_N$verticalAlign","_fontSize","_lineHeight","_styleFlags","node","_materials"],-3,1,3],["cc.ClickEvent",["_componentId","handler","customEventData","target"],0,1],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Widget",["_alignFlags","node"],2,1],["3fd2fh6vHNJeISUizW09xat",["node","dialog","ball","qiu1","linePrefab"],3,1,1,1,6,6],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target"],1,1,9,1],["cc.Scene",["_name","_active","autoReleaseAssets","_children","_anchorPoint","_trs"],0,2,5,7],["cc.Camera",["_clearFlags","_depth","node"],1,1],["cc.Prefab",["_name"],2],["4be67sdkexCyqLl0NHd9N1f",["node"],3,1],["cc.Animation",["playOnLoad","node","_clips","_defaultClip"],2,1,3,6]],[[3,2,3,4,1],[3,0,2,3,4,2],[4,0,3,4,1,2,6,7,6],[1,0,5,3,4,2],[1,0,5,3,4,6,2],[11,0,1,2,3,4,3],[1,0,5,3,7,4,6,2],[0,0,6,4,7,10,8,5,2],[5,0,1,3,3],[6,0,1,2,2],[1,0,1,5,3,7,4,3],[1,0,5,3,7,4,2],[1,0,5,3,8,4,2],[8,0,1,2],[3,1,0,2,3,4,3],[1,0,5,2],[0,0,1,4,7,8,5,3],[7,0,1,3],[1,0,9,3,4,2],[1,0,1,5,3,4,6,3],[1,0,2,5,3,4,3],[1,0,5,3,8,4,6,2],[1,0,2,5,3,8,7,4,3],[0,0,4,7,8,5,2],[0,0,6,4,5,2],[0,0,6,4,2],[0,0,1,6,4,7,8,5,3],[0,0,3,4,7,8,5,3],[0,0,6,4,7,5,2],[0,0,2,6,4,5,3],[0,0,2,6,4,3],[0,0,1,6,4,3],[0,0,4,7,9,8,5,2],[0,0,6,4,7,9,8,2],[9,0,1,2,3,4,1],[10,0,1,2,3,3],[4,0,1,2,6,7,4],[4,0,3,4,5,1,2,6,7,7],[5,0,1,2,3,4],[12,0,1,2,3,4,5,4],[13,0,1,2,3],[14,0,2],[15,0,1],[6,1,2,1],[16,0,1,2,3,2]],[[[{"name":"fit","rect":[0,0,278,300],"offset":[0,0],"originalSize":[278,300],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[6]],[[[17,"GuideScene",null],[18,"GameNode2",[[-5,-6,-7,[15,"Line",-8],[15,"Sun",-9],-10,-11,-12],1,1,1,4,4,1,1,1],[[13,45,-1],[34,-4,-3,-2,73,74]],[5,750,1334]],[23,"tip1",[-14,-15,-16,-17,-18,-19],[[0,-13,[35],36]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[24,"bg1",1,[-20,-21,-22,-23,-24,-25],[0,-212.867,0,0,0,0,1,1,1,1]],[16,"tip2",false,[-27,-28,-29,-30,-31],[[0,-26,[48],49]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[16,"tip3",false,[-33,-34,-35,-36,-37],[[0,-32,[61],62]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[25,"Dialog",1,[2,4,5,-38]],[26,"tip4",false,6,[-40,-41,-42,-43],[[14,1,0,-39,[71],72]],[5,680,260],[0,68.334,0,0,0,0,1,1,1,1]],[27,"Canvas","a5esZu+45LA5mBpvttspPD",[-46,1],[[35,true,false,-44,[5,750,1334]],[13,45,-45]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[7,"time",2,[-50],[[2,"跳过引导",35,35,1,1,-47,[31]],[5,1.1,3,-49,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-48]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",2,[-54],[[2,"下一步",35,35,1,1,-51,[34]],[5,1.1,3,-53,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-52]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",4,[-58],[[2,"跳过引导",35,35,1,1,-55,[44]],[5,1.1,3,-57,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-56]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",4,[-62],[[2,"下一步",35,35,1,1,-59,[47]],[5,1.1,3,-61,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-60]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",5,[-66],[[2,"跳过引导",35,35,1,1,-63,[57]],[5,1.1,3,-65,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-64]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",5,[-70],[[2,"下一步",35,35,1,1,-67,[60]],[5,1.1,3,-69,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-68]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",7,[-74],[[2,"开始游戏",35,35,1,1,-71,[70]],[5,1.1,3,-73,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-72]],[4,4278190080],[5,140,44.1],[0,-183.653,0,0,0,0,1,1,1,0]],[28,"Top",1,[-76,-77],[[13,1,-75]],[0,667,0,0,0,0,1,1,1,1]],[29,"ball",0,1,[-78],[-250,-216,0,0,0,0,1,1,1,1]],[30,"Over",0,1,[-79,-80]],[39,"New Node",false,true,[8],[0,0,0],[0,0,0,0,0,0,1,1,1,1]],[3,"Main Camera",8,[[40,7,-1,-81]],[5,960,640]],[3,"bg1",3,[[0,-82,[0],1]],[5,750,1600]],[4,"bg2",3,[[0,-83,[2],3]],[5,750,1600],[0,1600,0,0,0,0,1,1,-1,1]],[4,"bg1",3,[[0,-84,[4],5]],[5,750,1600],[0,-3200,0,0,0,0,1,1,1,1]],[4,"bg2",3,[[0,-85,[6],7]],[5,750,1600],[0,-1600,0,0,0,0,1,1,-1,1]],[4,"bg1",3,[[0,-86,[8],9]],[5,750,1600],[0,3200,0,0,0,0,1,1,1,1]],[4,"bg2",3,[[0,-87,[10],11]],[5,750,1600],[0,4800,0,0,0,0,1,1,-1,1]],[4,"New Sprite",16,[[0,-88,[12],13]],[5,689,223],[0,-118.023,0,0,0,0,1,1,1,1]],[19,"New Label",200,16,[[2,"倒计时",30,30,1,1,-89,[14]]],[5,90,37.8],[0,-29.627,0,0,0,0,1,1,1,1]],[3,"icon",17,[[1,0,-90,[15],16]],[5,96,96]],[31,"Win",false,1,[-91]],[3,"New Sprite",30,[[0,-92,[17],18]],[5,278,300]],[4,"New Sprite",18,[[14,2,0,-93,[19],20]],[5,125,1650],[-317.378,0,0,0,0,0,1,-1,1,1]],[4,"New Sprite",18,[[14,2,0,-94,[21],22]],[5,125,1650],[317.378,0,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,2,[[1,0,-95,[23],24]],[4,4278190080],[5,750,2000]],[3,"New Sprite",2,[[0,-96,[25],26]],[5,680,178]],[11,"New Label",2,[[2,"你是后羿,需要驱逐太阳,\n制止这场浩劫。",36,60,1,1,-97,[27]]],[4,4278190080],[5,432,135.6]],[20,"New Label",false,2,[[36,"Label",1,1,-98,[28]]],[5,97.87,50.4]],[6,"New Sprite(Splash)",9,[[1,0,-99,[29],30]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",10,[[1,0,-100,[32],33]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,4,[[1,0,-101,[37],38]],[4,4278190080],[5,750,2000]],[3,"New Sprite",4,[[0,-102,[39],40]],[5,680,178]],[11,"New Label",4,[[2,"记住屏幕中太阳出现的顺序。",36,60,1,1,-103,[41]]],[4,4278190080],[5,468,75.6]],[6,"New Sprite(Splash)",11,[[1,0,-104,[42],43]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",12,[[1,0,-105,[45],46]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,5,[[1,0,-106,[50],51]],[4,4278190080],[5,750,2000]],[3,"New Sprite",5,[[0,-107,[52],53]],[5,680,178]],[11,"New Label",5,[[2,"按照太阳的出现顺序依次点击。",36,60,1,1,-108,[54]]],[4,4278190080],[5,504,75.6]],[6,"New Sprite(Splash)",13,[[1,0,-109,[55],56]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",14,[[1,0,-110,[58],59]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,7,[[1,0,-111,[63],64]],[4,4278190080],[5,750,2000]],[3,"New Sprite",7,[[1,0,-112,[65],66]],[5,680,260]],[11,"New Label",7,[[2,"太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!",36,60,1,1,-113,[67]]],[4,4278190080],[5,576,195.6]],[6,"New Sprite(Splash)",15,[[1,0,-114,[68],69]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]]],0,[0,0,1,0,5,17,0,6,6,0,0,1,0,-1,3,0,-2,16,0,-3,17,0,3,1,0,3,1,0,-6,30,0,-7,18,0,-8,6,0,0,2,0,-1,34,0,-2,35,0,-3,36,0,-4,37,0,-5,9,0,-6,10,0,-1,21,0,-2,22,0,-3,23,0,-4,24,0,-5,25,0,-6,26,0,0,4,0,-1,40,0,-2,41,0,-3,42,0,-4,11,0,-5,12,0,0,5,0,-1,45,0,-2,46,0,-3,47,0,-4,13,0,-5,14,0,-4,7,0,0,7,0,-1,50,0,-2,51,0,-3,52,0,-4,15,0,0,8,0,0,8,0,-1,20,0,0,9,0,2,9,0,0,9,0,-1,38,0,0,10,0,2,10,0,0,10,0,-1,39,0,0,11,0,2,11,0,0,11,0,-1,43,0,0,12,0,2,12,0,0,12,0,-1,44,0,0,13,0,2,13,0,0,13,0,-1,48,0,0,14,0,2,14,0,0,14,0,-1,49,0,0,15,0,2,15,0,0,15,0,-1,53,0,0,16,0,-1,27,0,-2,28,0,-1,29,0,-1,32,0,-2,33,0,0,20,0,0,21,0,0,22,0,0,23,0,0,24,0,0,25,0,0,26,0,0,27,0,0,28,0,0,29,0,-1,31,0,0,31,0,0,32,0,0,33,0,0,34,0,0,35,0,0,36,0,0,37,0,0,38,0,0,39,0,0,40,0,0,41,0,0,42,0,0,43,0,0,44,0,0,45,0,0,46,0,0,47,0,0,48,0,0,49,0,0,50,0,0,51,0,0,52,0,0,53,0,7,19,1,3,8,2,3,6,4,3,6,5,3,6,8,3,19,114],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,8,9],[0,3,0,3,0,3,0,3,0,3,0,3,0,7,0,0,8,0,9,0,4,0,4,0,1,0,2,0,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,2,10,11]],[[{"name":"default_sprite_splash","rect":[0,0,2,2],"offset":[0,0],"originalSize":[2,2],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[12]],[[[41,"qiu4"],[32,"qiu1",[-6,-7,-8,-9,-10],[[42,-2],[5,1.1,3,-5,[[38,"4be67sdkexCyqLl0NHd9N1f","clickBtn","2",-4]],-3]],[43,-1,0],[5,150,150],[-145.48,22.786,0,0,0,0,1,1,1,0]],[33,"di",1,[-12],[[0,-11,[4],5]],[9,"cb9ihGGopAkY+20ILGW9iZ",1,0],[5,80,80]],[21,"guang",1,[[0,-13,[8],9],[44,true,-14,[11],10]],[9,"e5EF5v9LVFm7EbMhBwubQu",1,0],[5,173,174],[0,5.684341886080802e-14,0,0,0,0,1,1,1,1]],[12,"shan",1,[[0,-15,[0],1]],[9,"d9zEZjmopFvqHMauaByqPT",1,0],[5,132,132]],[12,"New Sprite",2,[[0,-16,[2],3]],[9,"f7BMdXGSdAHrhT4coa6xTA",1,0],[5,118,118]],[12,"icon",1,[[0,-17,[6],7]],[9,"3ezLyhgMlBwoj1LfZ8xCfs",1,0],[5,66,66]],[22,"number",false,1,[[37,"9",60,60,1,1,1,-18,[12]]],[9,"ecdj27dvpMkq4us03b5VnO",1,0],[4,4278190080],[5,33.37,75.6]]],0,[0,10,1,0,0,1,0,2,1,0,11,1,0,0,1,0,-1,4,0,-2,2,0,-3,6,0,-4,3,0,-5,7,0,0,2,0,-1,5,0,0,3,0,0,3,0,0,4,0,0,5,0,0,6,0,0,7,0,12,1,18],[0,0,0,0,0,0,0,0,0,0,0,0,0],[-1,1,-1,1,-1,1,-1,1,-1,1,13,-1,-1],[0,13,0,14,0,15,0,16,0,17,5,5,0]],[[{"name":"ball1","rect":[0,0,66,66],"offset":[0,0],"originalSize":[66,66],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[18]]]] \ No newline at end of file +[1,["ecpdLyjvZBwrvm+cedCcQy","a2MjXRFdtLlYQ5ouAFv/+R","a5+/rf9ZlPEIXTSsUOhw7T","d7kiZgBYNPyIwqRjgGX7l0","99vgruzGRMmJOIRLdPaQYs","ddnWn8vDxCOZaOnG9OVNnP","eezChet5VG27PW9q3qdOpv","adULT7sm1JR6vTV/oW1JIb","95viAf/CZABIBJ7iCjDOU4","37ND3actNCqZoLzr1NBiTF","d1MjdySrJFJ70gUB/k+5cj","6eoolBkxxPvof0z1pzKU+w","02delMVqdBD70a/HSD99FK","432ND8vGNFM4/Pxt+hVLkb","deq5vhWmZCFJ97k3T54cZ0","8eo+QfsThNk7a0r8Ilro8q","d3OhOXdm5P4JNse7X8GMGe","f1O5RoDlhGrI6+/w3NObrX","adrVhydQhMD7nhiXljhNId"],["node","_spriteFrame","_N$target","_parent","_textureSetter","ball","dialog","scene","qiu1","linePrefab","root","target","data","_defaultClip"],[["cc.Node",["_name","_active","_opacity","_id","_children","_trs","_parent","_components","_contentSize","_prefab","_color"],-1,2,7,1,9,5,4,5],["cc.Node",["_name","_opacity","_active","_components","_contentSize","_parent","_trs","_color","_prefab","_children"],0,9,5,1,7,5,4,12],"cc.SpriteFrame",["cc.Sprite",["_sizeMode","_type","node","_materials","_spriteFrame"],1,1,3,6],["cc.Label",["_string","_N$horizontalAlign","_N$verticalAlign","_fontSize","_lineHeight","_styleFlags","node","_materials"],-3,1,3],["cc.ClickEvent",["_componentId","handler","customEventData","target"],0,1],["cc.PrefabInfo",["fileId","root","asset"],2,1,1],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Widget",["_alignFlags","node"],2,1],["3fd2fh6vHNJeISUizW09xat",["node","dialog","ball","qiu1","linePrefab"],3,1,1,1,6,6],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target"],1,1,9,1],["cc.Scene",["_name","_active","autoReleaseAssets","_children","_anchorPoint","_trs"],0,2,5,7],["cc.Camera",["_clearFlags","_depth","node"],1,1],["cc.Prefab",["_name"],2],["4be67sdkexCyqLl0NHd9N1f",["node"],3,1],["cc.Animation",["playOnLoad","node","_clips","_defaultClip"],2,1,3,6]],[[3,2,3,4,1],[3,0,2,3,4,2],[4,0,3,4,1,2,6,7,6],[1,0,5,3,4,2],[1,0,5,3,4,6,2],[11,0,1,2,3,4,3],[1,0,5,3,7,4,6,2],[0,0,6,4,7,10,8,5,2],[5,0,1,3,3],[6,0,1,2,2],[1,0,1,5,3,7,4,3],[1,0,5,3,7,4,2],[1,0,5,3,8,4,2],[8,0,1,2],[3,1,0,2,3,4,3],[1,0,5,2],[0,0,1,4,7,8,5,3],[7,0,1,3],[1,0,9,3,4,2],[1,0,1,5,3,4,6,3],[1,0,2,5,3,4,3],[1,0,5,3,8,4,6,2],[1,0,2,5,3,8,7,4,3],[0,0,4,7,8,5,2],[0,0,6,4,5,2],[0,0,6,4,2],[0,0,1,6,4,7,8,5,3],[0,0,3,4,7,8,5,3],[0,0,6,4,7,5,2],[0,0,2,6,4,5,3],[0,0,2,6,4,3],[0,0,1,6,4,3],[0,0,4,7,9,8,5,2],[0,0,6,4,7,9,8,2],[9,0,1,2,3,4,1],[10,0,1,2,3,3],[4,0,1,2,6,7,4],[4,0,3,4,5,1,2,6,7,7],[5,0,1,2,3,4],[12,0,1,2,3,4,5,4],[13,0,1,2,3],[14,0,2],[15,0,1],[6,1,2,1],[16,0,1,2,3,2]],[[[{"name":"fit","rect":[0,0,278,300],"offset":[0,0],"originalSize":[278,300],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[6]],[[[17,"GuideScene",null],[18,"GameNode2",[[-5,-6,-7,[15,"Line",-8],[15,"Sun",-9],-10,-11,-12],1,1,1,4,4,1,1,1],[[13,45,-1],[34,-4,-3,-2,73,74]],[5,750,1334]],[23,"tip1",[-14,-15,-16,-17,-18,-19],[[0,-13,[35],36]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[24,"bg1",1,[-20,-21,-22,-23,-24,-25],[0,-212.867,0,0,0,0,1,1,1,1]],[16,"tip2",false,[-27,-28,-29,-30,-31],[[0,-26,[48],49]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[16,"tip3",false,[-33,-34,-35,-36,-37],[[0,-32,[61],62]],[5,680,178],[0,167.455,0,0,0,0,1,1,1,1]],[25,"Dialog",1,[2,4,5,-38]],[26,"tip4",false,6,[-40,-41,-42,-43],[[14,1,0,-39,[71],72]],[5,680,260],[0,68.334,0,0,0,0,1,1,1,1]],[27,"Canvas","a5esZu+45LA5mBpvttspPD",[-46,1],[[35,true,false,-44,[5,750,1334]],[13,45,-45]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[7,"time",2,[-50],[[2,"跳过引导",35,35,1,1,-47,[31]],[5,1.1,3,-49,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-48]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",2,[-54],[[2,"下一步",35,35,1,1,-51,[34]],[5,1.1,3,-53,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-52]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",4,[-58],[[2,"跳过引导",35,35,1,1,-55,[44]],[5,1.1,3,-57,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-56]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",4,[-62],[[2,"下一步",35,35,1,1,-59,[47]],[5,1.1,3,-61,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-60]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",5,[-66],[[2,"跳过引导",35,35,1,1,-63,[57]],[5,1.1,3,-65,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-64]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",5,[-70],[[2,"下一步",35,35,1,1,-67,[60]],[5,1.1,3,-69,[[8,"3fd2fh6vHNJeISUizW09xat","next",1]],-68]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[7,"time",7,[-74],[[2,"开始游戏",35,35,1,1,-71,[70]],[5,1.1,3,-73,[[8,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-72]],[4,4278190080],[5,140,44.1],[0,-183.653,0,0,0,0,1,1,1,0]],[28,"Top",1,[-76,-77],[[13,1,-75]],[0,667,0,0,0,0,1,1,1,1]],[29,"ball",0,1,[-78],[-250,-216,0,0,0,0,1,1,1,1]],[30,"Over",0,1,[-79,-80]],[39,"New Node",false,true,[8],[0,0,0],[0,0,0,0,0,0,1,1,1,1]],[3,"Main Camera",8,[[40,7,-1,-81]],[5,960,640]],[3,"bg1",3,[[0,-82,[0],1]],[5,750,1600]],[4,"bg2",3,[[0,-83,[2],3]],[5,750,1600],[0,1600,0,0,0,0,1,1,-1,1]],[4,"bg1",3,[[0,-84,[4],5]],[5,750,1600],[0,-3200,0,0,0,0,1,1,1,1]],[4,"bg2",3,[[0,-85,[6],7]],[5,750,1600],[0,-1600,0,0,0,0,1,1,-1,1]],[4,"bg1",3,[[0,-86,[8],9]],[5,750,1600],[0,3200,0,0,0,0,1,1,1,1]],[4,"bg2",3,[[0,-87,[10],11]],[5,750,1600],[0,4800,0,0,0,0,1,1,-1,1]],[4,"New Sprite",16,[[0,-88,[12],13]],[5,689,223],[0,-118.023,0,0,0,0,1,1,1,1]],[19,"New Label",200,16,[[2,"倒计时",30,30,1,1,-89,[14]]],[5,90,37.8],[0,-29.627,0,0,0,0,1,1,1,1]],[3,"icon",17,[[1,0,-90,[15],16]],[5,96,96]],[31,"Win",false,1,[-91]],[3,"New Sprite",30,[[0,-92,[17],18]],[5,278,300]],[4,"New Sprite",18,[[14,2,0,-93,[19],20]],[5,125,1650],[-317.378,0,0,0,0,0,1,-1,1,1]],[4,"New Sprite",18,[[14,2,0,-94,[21],22]],[5,125,1650],[317.378,0,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,2,[[1,0,-95,[23],24]],[4,4278190080],[5,750,2000]],[3,"New Sprite",2,[[0,-96,[25],26]],[5,680,178]],[11,"New Label",2,[[2,"你是后羿,需要驱逐太阳,\n制止这场浩劫。",36,60,1,1,-97,[27]]],[4,4278190080],[5,432,135.6]],[20,"New Label",false,2,[[36,"Label",1,1,-98,[28]]],[5,97.87,50.4]],[6,"New Sprite(Splash)",9,[[1,0,-99,[29],30]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",10,[[1,0,-100,[32],33]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,4,[[1,0,-101,[37],38]],[4,4278190080],[5,750,2000]],[3,"New Sprite",4,[[0,-102,[39],40]],[5,680,178]],[11,"New Label",4,[[2,"记住屏幕中太阳出现的顺序。",36,60,1,1,-103,[41]]],[4,4278190080],[5,468,75.6]],[6,"New Sprite(Splash)",11,[[1,0,-104,[42],43]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",12,[[1,0,-105,[45],46]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,5,[[1,0,-106,[50],51]],[4,4278190080],[5,750,2000]],[3,"New Sprite",5,[[0,-107,[52],53]],[5,680,178]],[11,"New Label",5,[[2,"按照太阳的出现顺序依次点击。",36,60,1,1,-108,[54]]],[4,4278190080],[5,504,75.6]],[6,"New Sprite(Splash)",13,[[1,0,-109,[55],56]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",14,[[1,0,-110,[58],59]],[4,4278190080],[5,105,5],[0,-26.492,0,0,0,0,1,1,1,1]],[10,"New Sprite(Splash)",50,7,[[1,0,-111,[63],64]],[4,4278190080],[5,750,2000]],[3,"New Sprite",7,[[1,0,-112,[65],66]],[5,680,260]],[11,"New Label",7,[[2,"太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!",36,60,1,1,-113,[67]]],[4,4278190080],[5,576,195.6]],[6,"New Sprite(Splash)",15,[[1,0,-114,[68],69]],[4,4278190080],[5,160,5],[0,-26.492,0,0,0,0,1,1,1,1]]],0,[0,0,1,0,5,17,0,6,6,0,0,1,0,-1,3,0,-2,16,0,-3,17,0,3,1,0,3,1,0,-6,30,0,-7,18,0,-8,6,0,0,2,0,-1,34,0,-2,35,0,-3,36,0,-4,37,0,-5,9,0,-6,10,0,-1,21,0,-2,22,0,-3,23,0,-4,24,0,-5,25,0,-6,26,0,0,4,0,-1,40,0,-2,41,0,-3,42,0,-4,11,0,-5,12,0,0,5,0,-1,45,0,-2,46,0,-3,47,0,-4,13,0,-5,14,0,-4,7,0,0,7,0,-1,50,0,-2,51,0,-3,52,0,-4,15,0,0,8,0,0,8,0,-1,20,0,0,9,0,2,9,0,0,9,0,-1,38,0,0,10,0,2,10,0,0,10,0,-1,39,0,0,11,0,2,11,0,0,11,0,-1,43,0,0,12,0,2,12,0,0,12,0,-1,44,0,0,13,0,2,13,0,0,13,0,-1,48,0,0,14,0,2,14,0,0,14,0,-1,49,0,0,15,0,2,15,0,0,15,0,-1,53,0,0,16,0,-1,27,0,-2,28,0,-1,29,0,-1,32,0,-2,33,0,0,20,0,0,21,0,0,22,0,0,23,0,0,24,0,0,25,0,0,26,0,0,27,0,0,28,0,0,29,0,-1,31,0,0,31,0,0,32,0,0,33,0,0,34,0,0,35,0,0,36,0,0,37,0,0,38,0,0,39,0,0,40,0,0,41,0,0,42,0,0,43,0,0,44,0,0,45,0,0,46,0,0,47,0,0,48,0,0,49,0,0,50,0,0,51,0,0,52,0,0,53,0,7,19,1,3,8,2,3,6,4,3,6,5,3,6,8,3,19,114],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,1,-1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,1,8,9],[0,3,0,3,0,3,0,3,0,3,0,3,0,7,0,0,8,0,9,0,4,0,4,0,1,0,2,0,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,1,0,0,2,0,1,0,2,0,0,1,0,0,2,10,11]],[[{"name":"default_sprite_splash","rect":[0,0,2,2],"offset":[0,0],"originalSize":[2,2],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[12]],[[[41,"qiu4"],[32,"qiu4",[-6,-7,-8,-9,-10],[[42,-2],[5,1.1,3,-5,[[38,"4be67sdkexCyqLl0NHd9N1f","clickBtn","2",-4]],-3]],[43,-1,0],[5,150,150],[-145.48,22.786,0,0,0,0,1,1,1,0]],[33,"di",1,[-12],[[0,-11,[4],5]],[9,"cb9ihGGopAkY+20ILGW9iZ",1,0],[5,80,80]],[21,"guang",1,[[0,-13,[8],9],[44,true,-14,[11],10]],[9,"e5EF5v9LVFm7EbMhBwubQu",1,0],[5,173,174],[0,5.684341886080802e-14,0,0,0,0,1,1,1,1]],[12,"shan",1,[[0,-15,[0],1]],[9,"d9zEZjmopFvqHMauaByqPT",1,0],[5,132,132]],[12,"New Sprite",2,[[0,-16,[2],3]],[9,"f7BMdXGSdAHrhT4coa6xTA",1,0],[5,118,118]],[12,"icon",1,[[0,-17,[6],7]],[9,"3ezLyhgMlBwoj1LfZ8xCfs",1,0],[5,66,66]],[22,"number",false,1,[[37,"9",60,60,1,1,1,-18,[12]]],[9,"ecdj27dvpMkq4us03b5VnO",1,0],[4,4278190080],[5,33.37,75.6]]],0,[0,10,1,0,0,1,0,2,1,0,11,1,0,0,1,0,-1,4,0,-2,2,0,-3,6,0,-4,3,0,-5,7,0,0,2,0,-1,5,0,0,3,0,0,3,0,0,4,0,0,5,0,0,6,0,0,7,0,12,1,18],[0,0,0,0,0,0,0,0,0,0,0,0,0],[-1,1,-1,1,-1,1,-1,1,-1,1,13,-1,-1],[0,13,0,14,0,15,0,16,0,17,5,5,0]],[[{"name":"ball1","rect":[0,0,66,66],"offset":[0,0],"originalSize":[66,66],"capInsets":[0,0,0,0]}],[2],0,[0],[4],[18]]]] \ No newline at end of file diff --git a/build/SunMoves/assets/main/index.57d1e.js b/build/SunMoves/assets/main/index.57d1e.js deleted file mode 100644 index 07e347f..0000000 --- a/build/SunMoves/assets/main/index.57d1e.js +++ /dev/null @@ -1 +0,0 @@ -window.__require=function t(e,i,n){function o(a,s){if(!i[a]){if(!e[a]){var c=a.split("/");if(c=c[c.length-1],!e[c]){var h="function"==typeof __require&&__require;if(!s&&h)return h(c,!0);if(r)return r(c,!0);throw new Error("Cannot find module '"+a+"'")}a=c}var l=i[a]={exports:{}};e[a][0].call(l.exports,function(t){return o(e[a][1][t]||t)},l,l.exports,t,e,i,n)}return i[a].exports}for(var r="function"==typeof __require&&__require,a=0;a=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.audioGameBgm0=null,e.audioButtonClick=null,e.audioWarning=null,e.audioWin=null,e.luodui=null,e}var i;return o(e,t),i=e,e.prototype.ctor=function(){this.mAudioMap={},this.bgMusicVolume=.1,this.effectMusicVolume=1,this.mMusicSwitch=1,this.mEffectSwitch=1},e.prototype.play=function(t,e,i,n){if((!n||this.mMusicSwitch)&&(n||this.mEffectSwitch)){var o=n?this.bgMusicVolume:this.effectMusicVolume;if(cc.sys.isBrowser){t==this.brickSound&&(o=.1),o=1;var r=cc.audioEngine.play(t,e,o);return i&&cc.audioEngine.setFinishCallback(r,function(){i.call(this)}.bind(this)),this.mAudioMap[t]=r,t}return t}},e.prototype.save=function(){},e.prototype.onLoad=function(){null==i._instance?(i._instance=this,cc.game.addPersistRootNode(this.node),this.reward=!1,this.finish=!1,this.rewardCount=0,this.ctor(),this.preload()):this.node.destroy()},e.prototype.preload=function(){cc.sys.platform===cc.sys.WECHAT_GAME&&[this.audioGameBgm0].forEach(function(){})},e.prototype.getAudioMusicSwitch=function(){return this.mMusicSwitch},e.prototype.getAudioEffectSwitch=function(){return this.mEffectSwitch},e.prototype.trunAudioSound=function(t){this.switchMusic(t),this.switchEffect(t)},e.prototype.switchMusic=function(t){this.mMusicSwitch!=(t?1:0)&&(this.mMusicSwitch=1-this.mMusicSwitch),t?this.playMusicGame():this.stopMusic()},e.prototype.switchEffect=function(t){this.mEffectSwitch!=(t?1:0)&&(this.mEffectSwitch=1-this.mEffectSwitch)},e.prototype.onHide=function(){cc.audioEngine.pauseAll()},e.prototype.onShow=function(){cc.audioEngine.resumeAll()},e.prototype.playMusic=function(t,e,i){i=!(void 0!==i&&!i),this.stopMusic(),this.mMusicKey=this.play(t,i,e,!0)},e.prototype.playMusicGame=function(){this.playMusic(this.audioGameBgm0,{},!0)},e.prototype.stopMusic=function(){var t=this.mAudioMap[this.mMusicKey];void 0!==t&&(cc.sys.isBrowser?cc.audioEngine.stop(t):t.stop(),cc.audioEngine.stop(t))},e.prototype.playJump=function(){},e.prototype.playLuo=function(){return this.play(this.luodui,!1,null,this.mEffectSwitch)},e.prototype.playGround=function(){},e.prototype.playPz=function(){},e.prototype.playGameStart=function(){},e.prototype.playGameOver=function(){},e.prototype.playGameResultFailed=function(){},e.prototype.playGameResultSuccess=function(){},e.prototype.playWarning=function(){return this.play(this.audioWarning,!1,null,this.mEffectSwitch)},e.prototype.playBrick=function(){},e.prototype.brickBoom=function(){},e.prototype.playAudioButton=function(){return this.play(this.audioButtonClick,!1,null,this.mEffectSwitch)},e.prototype.playWin=function(){return this.play(this.audioWin,!1,null,this.mEffectSwitch)},e.prototype.playRandomMatch=function(){this.playMusic(this.audioGameBgm0,{},!0)},e.prototype.playMatchFoundSound=function(){this.stopMusic()},r([c(cc.AudioClip)],e.prototype,"audioGameBgm0",void 0),r([c(cc.AudioClip)],e.prototype,"audioButtonClick",void 0),r([c(cc.AudioClip)],e.prototype,"audioWarning",void 0),r([c(cc.AudioClip)],e.prototype,"audioWin",void 0),r([c(cc.AudioClip)],e.prototype,"luodui",void 0),i=r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{}],DynamicAtlasManager:[function(t,e){"use strict";cc._RF.push(e,"5c9b8FZiaNLMrMDs9T3rByf","DynamicAtlasManager"),cc.Class({extends:cc.Component,properties:{},onLoad:function(){cc.dynamicAtlasManager.enabled=!1}}),cc._RF.pop()},{}],GameAppStart:[function(t,e,i){"use strict";cc._RF.push(e,"61d4ccY2ztLMYIh8WvqPPAw","GameAppStart"),Object.defineProperty(i,"__esModule",{value:!0});var n=t("../Config/GameConfig"),o=t("../Crypto/HttpUtil"),r=t("../Music/AudioManager"),a=t("../Notification/Notification"),s=t("../Storage/Storage"),c=t("../Tool/GameTool");window.initMgr=function(){cc.fx||(cc.fx={},console.log("\u521d\u59cb\u5316"),cc.fx.StateInfo={debugMode:!0,networkConnected:!0,networkType:"none",isOnForeground:!0},cc.fx.GameConfig=n.GameConfig,cc.fx.HttpUtil=o.default,cc.fx.GameTool=c.GameTool,cc.fx.AudioManager=r.default,cc.fx.Notifications=a.Notifications,cc.fx.StorageMessage=s.StorageMessage,cc.fx.ShareInfo={queryId:-1},cc.fx.BurialShareType={Default:"default",Invite:"invite",DailyInviteRoomJoin:"invite_join_room",DailyInviteFriend:"invite_friend",DailyInviteGroup:"invate_group",DailyInviteGroupAlive:"invate_alive",DailyInviteGroupReward:"invate_rewared",DailyInviteGroupBox:"invate_box",DailyInviteGroupBall:"invate_ball",MatchResult:"matchResult",MatchFix5:"MatchFix5",MatchFix20:"MatchFix20",MatchFix100:"MatchFix100",MatchFix500:"MatchFix500",NewerRedEnvelope:"newerRedEnvelope",CoinRoomResult:"coinRoomResult",HighRate:"highRate",CoinRoomWinStreak:"coinRoomWinStreak",CoinRoomBankruptcy1:"coinRoomBankruptcy1",CoinRoomBankruptcy2:"coinRoomBankruptcy2",CoinRoomBankruptcy3:"coinRoomBankruptcy3"},cc.fx.ShareWhereReward={Group:"group",Friend:"friend",All:"all"},cc.fx.clickStatEventType={clickStatEventTypeVideoAD:20173201,clickStatEventTypeClickAdVideo:20173202,clickStatEventTypeBannerAD:20173203,clickStatEventTypeUserFrom:99990001,clickStatEventTypeShare:99990002,clickStatEventTypeClickAdBtn:99990007,clickStatEventTypeBannerAD2:67890033,clickStatEventTypeSubmitVersionInfo:9999,clickStatEventTypeClickFirstAd:99990003,clickStatEventTypeClickSecondAd:99990004,clickStatEventTypeWxLoginStart:10001,clickStatEventTypeWxLoginSuccess:10002,clickStatEventTypeWxLoginFailed:10003,clickStatEventTypeAuthorizationStart:10003,clickStatEventTypeAuthorizationSuccess:10004,clickStatEventTypeAuthorizationFailed:10005,clickStatEventTypeLoginSDKStart:10007,clickStatEventTypeLoginSDKSuccess:10008,clickStatEventTypeLoginSDKFailed:10009,clickStatEventTypeTCP_Start:10009,clickStatEventTypeTCP_Success:10010,clickStatEventTypeTCP_Failed:10011})},cc._RF.pop()},{"../Config/GameConfig":"GameConfig","../Crypto/HttpUtil":"HttpUtil","../Music/AudioManager":"AudioManager","../Notification/Notification":"Notification","../Storage/Storage":"Storage","../Tool/GameTool":"GameTool"}],GameConfig:[function(t,e,i){"use strict";cc._RF.push(e,"c5692vnhwNF5J9nI7VNKQNW","GameConfig");var n=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0}),i.GameConfig=void 0;var o=t("../Share/share"),r=cc._decorator,a=r.ccclass,s=(r.property,function(){function t(){}var e;return e=t,Object.defineProperty(t,"Instance",{get:function(){return null==this._instance&&(this._instance=new e),this._instance},enumerable:!1,configurable:!0}),t.getKey=function(t){var e=new RegExp("(^|&)"+t+"=([^&]*)(&|$)","i"),i=window.location.search.substr(1).match(e);return null!=i?unescape(i[2]):""},t.init=function(){this.GM_INFO_init(),this.CLICK_init(),this.LEVEL_INFO_init();var t=this;cc.resources.load("Json/GM_INFO",function(e,i){if(e)return o.WeChat.setShare(location.href),void t.Authentication();var n=i.json;t.GM_INFO=n.data,t.setCode(t.getKey("scode")),o.WeChat.setShare(location.href),t.Authentication()}),cc.resources.load("Json/CLICK_DATA",function(e,i){if(!e){var n=i.json;t.CLICK_DATA=n.data}}),cc.resources.load("Json/LEVEL_INFO",function(e,i){if(!e){var n=i.json;t.LEVEL_INFO=n.data}}),t.GAME_DATA=[]},t.GM_INFO_init=function(){this.GM_INFO={mean_Time:0,total:0,currSeed:203213,gameId:"100009",userId:0,scode:"",guide:!0,url:"https://api.sparkus.cn",success:!1,matchId:null,custom:0},this.setCode(this.getKey("scode"))},t.CLICK_init=function(){this.CLICK_DATA={type:1,success:!1,round:0,totalSunCount:0,movedSunCount:0,sunSpeed:0,overlapSunCount:0,colorList:[],duration:0,difficultyLevel:0,sunList:[],stepTimeList:[],remainder:120}},t.LEVEL_INFO_init=function(){this.LEVEL_INFO=[{number:3,moveNumber:0,moveSpeed:0,maxDistance:200,maxMove:1200,repeat:0},{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}]},t.Authentication=function(){cc.fx.GameTool.Authentication()},t.setCode=function(t){this.GM_INFO.scode=t},t._instance=null,e=n([a("GameConfig")],t)}());i.GameConfig=s,cc._RF.pop()},{"../Share/share":"share"}],GameManager:[function(t,e,i){"use strict";cc._RF.push(e,"b0432BA295DjIOcuitdGKO1","GameManager");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ball=null,e.qiu1=null,e.qiu2=null,e.qiu3=null,e.linePrefab=null,e.hit=null,e.bg1=null,e.bg2=null,e.time=null,e.begin=!1,e.fuhuo=!1,e.over=!1,e.show=!1,e.levelLabel=null,e}return o(e,t),e.prototype.onLoad=function(){},e.prototype.start=function(){this.fit(),this.init()},e.prototype.init=function(){this.node.getChildByName("GameOver").zIndex=100,this.node.getChildByName("GameOver").active=!1,this.ball.zIndex=100,this.bg1=this.node.getChildByName("bg1"),this.bg2=this.node.getChildByName("bg2"),this.time=this.node.getChildByName("Top").getChildByName("time").getComponent(cc.Label),this.node.getChildByName("showBtn").active=!1,this.begin=!1,this.over=!1,this.fuhuo=!0,this.pause=!0,this.show=!1,this.round=0,this.level=2,this.countTime=60,0!=cc.fx.GameConfig.GM_INFO.custom&&(this.level=cc.fx.GameConfig.GM_INFO.custom,cc.fx.GameConfig.GM_INFO.custom+=1,this.countTime=12e6),this.timeCount=.1,this.clickNow=0,this.clickCount=0,this.timeStart=0,this.repeat=-1,this.numberRepeat=-1,this.route_Array=[],this.moveArray=[],this.now_Array=[],this.ball_Array=[],this.Pos_Array=[],this.time_Array=[],this.color_Array=[],cc.fx.GameConfig.GAME_DATA=[],cc.fx.GameConfig.GM_INFO.success=!1,this.startTime=0,this.overTime=0,this.winTime=0,cc.fx.GameConfig.GM_INFO.total=0,cc.fx.GameConfig.GM_INFO.mean_Time=0,this.schedule(this.updateCountDownTime,1),this.startGame()},e.prototype.fit=function(){this.fitTop=450,this.fitBot=-600,this.setFit()||(this.fitTop=600,this.fitBot=-700)},e.prototype.getSetScreenResolutionFlag=function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},e.prototype.setFit=function(){return this.getSetScreenResolutionFlag()},e.prototype.backScene=function(){cc.director.loadScene("LoadScene")},e.prototype.reStart=function(t){this.node.getChildByName("showBtn").active=!1,this.destroyLine(),this.timeCount=.1,this.clickNow=0,this.timeStart=0,this.repeat=-1,this.numberRepeat=-1,this.begin=!1,this.route_Array=[],this.now_Array=[],this.ball_Array=[],this.Pos_Array=[],this.moveArray=[],this.time_Array=[],this.color_Array=[],0==t?this.bgMove(1):1==t?this.startGame():2==t&&this.bgMove(-1)},e.prototype.getTime=function(){return(new Date).getTime()},e.prototype.passLevel=function(){var t=this;if(this.destroyLine(),0==this.over&&this.countTime>=0){for(var e=[],i=0,n=this.ball_Array[0],o=1;o=0)for(var i=this.ball_Array[0],n=function(n){cc.tween(o.ball_Array[n]).to(2,{x:i.x,y:i.y}).call(function(){e.ball_Array[n].active=!1,n==e.ball_Array.length-1&&(e.ball.opacity=255,e.ball.position=cc.v3(i.x,i.y,0),e.clearSun(),e.reStart(t))}).start()},o=this,r=1;r0&&this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),.2),this.clickNow+=1,this.ball_Array[this.clickNow-1]&&(this.ball_Array[this.clickNow-1].getChildByName("guang").active=!1),this.clickNow==this.now_Array.length){this.pause=!0,cc.fx.GameConfig.GM_INFO.total+=this.clickNow,this.overTime=cc.fx.GameTool.getTime(),this.startTime>0&&this.overTime>0&&(cc.fx.GameConfig.GM_INFO.mean_Time+=this.overTime-this.startTime);var n=parseInt((this.overTime-this.startTime)/100+"");this.startTime=0,this.overTime=0,this.level<4&&this.level>1||this.level;var o=this.node.getChildByName("Win");o.active=!0,o.setScale(0),cc.fx.AudioManager._instance.playWin(),this.round+=1;var r=[];if(this.moveArray.length>0)for(var a=0;a50&&(cc.fx.GameConfig.CLICK_DATA.duration=50),this.setData(),cc.tween(o).delay(.4).to(.01,{scale:2.5}).to(.35,{scale:1}).delay(.4).call(function(){o.active=!1,e.destroyLine(),0==e.over&&e.countTime>=0&&(e.level>=15?(cc.fx.GameConfig.GM_INFO.success=!0,e.level+=0,e.fuhuo=!0,e.passLevel()):(e.level+=1,e.fuhuo=!0,e.passLevel()))}).start()}}else this.setLoss()}},e.prototype.setLoss=function(){cc.fx.AudioManager._instance.playWarning(),this.begin=!1,this.overTime=cc.fx.GameTool.getTime(),this.startTime>0&&this.overTime>0&&(cc.fx.GameConfig.GM_INFO.mean_Time+=this.overTime-this.startTime);var t=parseInt((this.overTime-this.startTime)/100+"");t>58&&(t=58),this.startTime=0,this.overTime=0,this.level<4&&this.level>1||this.level,this.round+=1;var e=[];if(this.moveArray.length>0)for(var i=0;i50&&(cc.fx.GameConfig.CLICK_DATA.duration=50),this.setData(),1==this.fuhuo?(this.fuhuo=!1,this.loseLevel(1)):this.level>2?(this.level-=1,this.fuhuo=!0,this.loseLevel(2)):this.loseLevel(1);var n=this.node.getChildByName("Over");cc.tween(n).to(.25,{opacity:255}).delay(.1).to(.2,{opacity:0}).delay(.1).to(.15,{opacity:255}).delay(.1).to(.1,{opacity:0}).start()},e.prototype.startGame=function(){0==this.over&&this.countTime>0&&(this.pause=!0,this.createSun(),this.begin=!1,cc.tween(this.ball).to(.5,{opacity:255,scale:1.3}).start())},e.prototype.runGame=function(){for(var t=this,e=-650,i=function(i){e=1e3*n.now_Array[i].time+e,setTimeout(function(){if(0==t.over){var e=t.now_Array[i].timeCount;e>.5&&(e=.5),0!=i&&t.ball&&t.now_Array[i]&&t.createLine(cc.v2(t.ball.x,t.ball.y),cc.v2(t.now_Array[i].x,t.now_Array[i].y),t.now_Array[i].time-e),cc.tween(t.ball).to(t.now_Array[i].time-e,{x:t.now_Array[i].x,y:t.now_Array[i].y}).to(.1,{scale:1}).call(function(){t.createBall(i,t.now_Array[i].color,t.now_Array[i].speed,t.now_Array[i].repeat),i==t.now_Array.length-1&&(t.ball.opacity=0,setTimeout(function(){t.destroyLine(),t.beginGame(),cc.fx.GameConfig.LEVEL_INFO[t.level-1].moveNumber<1?t.pause=!1:t.moveAction()},150))}).start()}},e)},n=this,o=0;o=2&&e.moveSpeed,1==e.repeat){this.repeat=parseInt(Math.random()*(e.number-1)+1+"");var i=0;this.repeat>4?(this.numberRepeat=parseInt(4*Math.random()+""),this.repeat==e.number-1&&(this.numberRepeat=this.repeat-parseInt(3*Math.random()+2+"")),i=this.Pos_Array[this.numberRepeat],this.Pos_Array[this.repeat]=i):(0==this.repeat&&(this.repeat=1),e.number-1-this.repeat==2?(this.numberRepeat=e.number-1,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat==1?(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat==0?(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat>2?(this.numberRepeat=parseInt(Math.random()*(e.number-this.repeat-2)+"")+this.repeat+2,i=this.Pos_Array[this.numberRepeat]):(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]),this.Pos_Array[this.repeat]=i)}if(e.moveNumber>0){for(var n=cc.v2(0,0),o=0;o=0;s--)0==this.moveArray[s]&&(this.moveArray[s]=1,this.moveArray[0]=0,s=-1);for(var c=0;c=0;h--)h!=c&&0==this.moveArray[h]&&h!=this.repeat&&h!=this.numberRepeat&&(this.moveArray[h]=1,this.moveArray[c]=0,h=-1);for(var l=function(e){1==u.moveArray[e]&&setTimeout(function(){n=t.getPos2(!0,e),t.Pos_Array[e]=n},300*(a+=1))},u=this,p=0;p=2&&(n=7-i.moveSpeed/2),i.moveNumber>0){for(var o=0;o=0;r--)r!=o&&0==this.moveArray[r]&&r!=this.repeat&&r!=this.numberRepeat&&(this.moveArray[r]=1,this.moveArray[o]=0,r=-1);for(var a=0,s=0;s0)for(var r=0;r0)for(var r=0;r160&&(1==o?(cc.fx.GameConfig,r=c800&&(c=800),s=c/800*.6):2==o?(c>1200&&(c=1200),s=c/1200*1):3==o&&(c>1200&&(c=1200),s=c/1200*1.5),s},e.prototype.getDistance2=function(t,e,i,n,o){var r=!1,a=i-t,s=n-e,c=Math.sqrt(a*a+s*s);return c>160&&(r=1!=o||c0&&0==this.pause){if(this.countTime-=1,this.time.string=cc.fx.GameTool.getTimeMargin(this.countTime),this.countTime<5){cc.tween(this.time.node).to(.25,{scale:1.5,color:cc.color(255,0,0)}).to(.25,{scale:1,color:cc.color(255,255,255)}).start();var t=this.node.getChildByName("Over");cc.tween(t).to(.2,{opacity:255}).delay(.1).to(.2,{opacity:0}).start()}if(this.countTime<=0){this.begin=!1,this.over=!0,this.unschedule(this.updateCountDownTime),this.setLoss();var e=0;this.clickCount>0&&(e=parseInt(cc.fx.GameConfig.GM_INFO.mean_Time/this.clickCount+"")),cc.fx.GameConfig.GM_INFO.mean_Time=parseInt(e/100+""),cc.fx.GameConfig.GM_INFO.mean_Time=cc.fx.GameConfig.GM_INFO.mean_Time/10,e>1e4&&(e=100*(10*Math.random()+5)),this.gameOver(e)}}},e.prototype.setData=function(){cc.fx.GameTool.setGameData()},e.prototype.gameOver=function(t){cc.fx.GameTool.setRank(t),this.node.getChildByName("GameOver").active=!0,this.node.getChildByName("GameOver").opacity=0,cc.tween(this.node.getChildByName("GameOver")).to(.4,{opacity:255}).delay(2).to(.4,{opacity:50}).call(function(){cc.director.loadScene("OverScene")}).start()},e.prototype.showNumber=function(){0==this.show?this.show=!0:1==this.show&&(this.show=!1);for(var t=0;t=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.count=null,e.time=null,e.selfNode=null,e.one=null,e.two=null,e.three=null,e.four=null,e.five=null,e}return o(e,t),e.prototype.start=function(){this.count.string=cc.fx.GameConfig.GM_INFO.total+"",cc.fx.GameConfig.GM_INFO.mean_Time>10&&(cc.fx.GameConfig.GM_INFO.mean_Time=(parseInt(10*Math.random()+"")+5)/10),this.time.string=cc.fx.GameConfig.GM_INFO.mean_Time+"s",this.init()},e.prototype.init=function(){this.listData=[],this.selfData=null,this.one.active=!1,this.two.active=!1,this.three.active=!1,this.four.active=!1,this.five.active=!1;var t=window.location.href;this.containsTrain(t)?(this.node.getChildByName("again").active=!1,this.node.getChildByName("back").active=!1,this.node.getChildByName("finishi").active=!0):(this.node.getChildByName("again").active=!0,this.node.getChildByName("back").active=!0,this.node.getChildByName("finishi").active=!1),this.getRank()},e.prototype.jumpFinishi=function(){var t="https://train.sparkus.cn/poster/game/"+cc.fx.GameConfig.GM_INFO.scode+"?suc=1";window.location.href=t},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},e.prototype.again=function(){cc.director.loadScene("GameScene")},e.prototype.containsTrain=function(t){return/from=train/i.test(t)},e.prototype.getRank=function(){var t=this;cc.fx.GameTool.getRank({length:5},function(e){return t.getRankData(e)})},e.prototype.getRankData=function(t){if(t){cc.fx.GameTool.getRankData(t,this,4),cc.fx.GameTool.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"),this.selfData.pic);for(var e=0;e<=4;e++)this.setRank(e,this.listData[e])}},e.prototype.setRank=function(t,e){var i=null;0==t?i=this.one:1==t?i=this.two:2==t?i=this.three:3==t?i=this.four:4==t&&(i=this.five),i&&(i.active=!0,cc.fx.GameTool.subName(e.nickName,4),i.getChildByName("name").getComponent(cc.Label).string=e.nickName,i.getChildByName("total").getComponent(cc.Label).string=e.totalSunCount,cc.fx.GameTool.setPic(i.getChildByName("pic").getChildByName("icon"),e.pic))},r([c(cc.Label)],e.prototype,"count",void 0),r([c(cc.Label)],e.prototype,"time",void 0),r([c(cc.Node)],e.prototype,"selfNode",void 0),r([c(cc.Node)],e.prototype,"one",void 0),r([c(cc.Node)],e.prototype,"two",void 0),r([c(cc.Node)],e.prototype,"three",void 0),r([c(cc.Node)],e.prototype,"four",void 0),r([c(cc.Node)],e.prototype,"five",void 0),r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{}],GameTool:[function(t,e,i){"use strict";cc._RF.push(e,"43bfcJ6/25Fs4fHUE0PeBOX","GameTool"),Object.defineProperty(i,"__esModule",{value:!0}),i.GameTool=void 0;var n={_startTime:0,_endTime:0,_totalTime:0,Authentication:function(){var t="user_"+cc.fx.GameConfig.GM_INFO.gameId,e=null;if(localStorage.getItem(t)&&(e=JSON.parse(localStorage.getItem(t))),"undifend"==e||null==e||""==e){var i="https://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+encodeURIComponent(location.href);console.log("\u94fe\u63a5\u6ca1ID\u51c6\u5907\u8df3\u8f6c",i),window.location.href=i}else this.isNumber(e.userId)?(cc.fx.StorageMessage.setStorage(t,e),cc.fx.GameConfig.GM_INFO.userId=parseInt(e.userId)):(i="https://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+encodeURIComponent(location.href),console.log("\u94fe\u63a5\u4e0d\u5408\u6cd5",i),window.location.href=i)},isNumber:function(t){var e=!1;return(e="number"==typeof t)&&t<2e5&&(e=!1),e},setGameData:function(){cc.fx.GameConfig.GAME_DATA=[],cc.fx.GameConfig.GAME_DATA.push(cc.fx.GameConfig.CLICK_DATA);var t=cc.fx.GameConfig.CLICK_DATA.round;cc.fx.GameConfig.CLICK_init();var e=cc.fx.GameConfig.GAME_DATA,i=this.getMatchId(t),n={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,scode:cc.fx.GameConfig.GM_INFO.scode,matchId:i,data:e};console.log("\u4e0a\u4f20\u6570\u636e:",n),cc.fx.HttpUtil.uploadUserLogData(n,function(){})},setRank:function(t){var e={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,type:1,reactionTime:t,totalSunCount:cc.fx.GameConfig.GM_INFO.total,success:cc.fx.GameConfig.GM_INFO.success};cc.fx.HttpUtil.rankData(1,function(){},e)},getRank:function(t,e){var i=t.length,n={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,page:1,pageSize:i};cc.fx.HttpUtil.rankData(2,function(t){e(t)},n)},getMatchId:function(t){var e=cc.sys.localStorage.getItem("matchId"),i=e;if("undifend"==e||null==e)e=this.setMatchId();else if(1==this.containsNanana(e))e=this.setMatchId();else{var n=parseInt(i.substring(10,i.length));1==t&&(n+=1,e=i.slice(0,10)+n+"",this.containsNanana(e)&&(e=this.setMatchId()),cc.fx.GameConfig.GM_INFO.matchId=e,cc.sys.localStorage.setItem("matchId",e))}return 1==this.containsNanana(e)&&(e=this.setMatchId()),e},containsNanana:function(t){return/na/i.test(t)},setMatchId:function(){for(var t="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",e=[],i=0;i<10;i++){var n=Math.floor(Math.random()*t.length),o=t.charAt(n);e.push(o)}var r=e.join("")+1+"";return cc.sys.localStorage.setItem("matchNumber",1),this.containsNanana(r)&&(r=this.setMatchId()),cc.sys.localStorage.setItem("matchId",r),cc.fx.GameConfig.GM_INFO.matchId=r,r},subName:function(t,e){return t.length>e&&(t=t.substring(0,e)+"..."),t},setPic:function(t,e){t.active=!1;var i=e;setTimeout(function(){fetch(i).then(function(t){return t.headers.get("Content-Length")}).then(function(e){"5093"==e&&(t.active=!0)}).catch(function(){})},100),cc.assetManager.loadRemote(i,{ext:".png"},function(e,i){i&&(t.active=!0,t.getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i))})},getRankData:function(t,e,i){e.listData=t.data.list,e.selfData=t.data.info;var n=[],o=!1;cc.fx.GameTool.setPic(e.selfNode.getChildByName("pic").getChildByName("icon"),e.selfData.pic);for(var r=0;r<=e.listData.length-1;r++)n.push({rank:r+1,name:e.listData[r].nickName,total:e.listData[r].totalSunCount,pic:e.listData[r].pic}),cc.fx.GameConfig.GM_INFO.userId==e.listData[r].userId&&(o=!0,e.rankNumber=r,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string=r+1+""),r==e.listData.length-1&&0==o&&(e.rankNumber=r,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string="99+");var a=cc.fx.GameTool.subName(e.selfData.nickName,i);switch(e.selfNode.getChildByName("nameLab").getComponent(cc.Label).string=a,e.selfNode.getChildByName("totalLab").getComponent(cc.Label).string=e.selfData.totalSunCount,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string){case"1":e.selfNode.getChildByName("rank").getChildByName("one").active=!0;break;case"2":e.selfNode.getChildByName("rank").getChildByName("two").active=!0;break;case"3":e.selfNode.getChildByName("rank").getChildByName("three").active=!0}6==i&&(e.rankList.setData(n),e.selfNode.opacity=255,0==e.selfData.totalSunCount&&(e.selfNode.opacity=0))},getSetScreenResolutionFlag:function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},setFit:function(){return cc.fx.GameTool.getSetScreenResolutionFlag()},getGameInfo:function(){return!1},setGameInfo:function(){},getTimeMargin:function(t){var e,i;e=t,i=parseInt(e/3600+"");var n=parseInt((e-3600*i)/60+""),o=""+n;n<10&&(o="0"+n);var r=e-3600*i-60*n,a=r+"";return r<10&&(a="0"+r),o+":"+a},getTime:function(){return(new Date).getTime()},pushLister:function(){},removeAllLister:function(){}};i.GameTool=n,cc._RF.pop()},{}],GuideManager:[function(t,e,i){"use strict";cc._RF.push(e,"3fd2fh6vHNJeISUizW09xat","GuideManager");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.dialog=null,e.ball=null,e.qiu1=null,e.linePrefab=null,e}return o(e,t),e.prototype.start=function(){cc.fx.GameConfig.GM_INFO.custom=0,this.init(),this.startGuide(0)},e.prototype.init=function(){this.custom=1,this.ball.zIndex=100,this.Pos_Array=[],this.ball_Array=[],this.begin=!1,this.clickNow=0,this.tip=null},e.prototype.startGuide=function(t){var e=this,i="tip"+this.custom;0!=t?cc.tween(this.node).to(.5,{opacity:255}).call(function(){e.custom+=1,0!=t&&(e.custom=2),2==e.custom?e.createSun(!0):3==e.custom?e.createSun(!1):4==e.custom?e.begin=!0:5==e.custom&&cc.director.loadScene("GameScene")}).start():(this.tip=this.dialog.getChildByName(i),this.tip.active=!0,this.tip.opacity=0,cc.tween(this.tip).to(.5,{opacity:255}).start())},e.prototype.beginClick=function(){for(var t=0;t800&&(a=800),a/800*.8},e.prototype.passLevel=function(){var t=this,e=this.node.getChildByName("Win");e.active=!0,e.setScale(0),cc.tween(e).delay(.4).to(.01,{scale:2.5}).to(.35,{scale:1}).delay(.6).call(function(){e.active=!1,setTimeout(function(){t.destroyLine();for(var e=[],i=0,n=t.ball_Array[0],o=1;o0&&this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),.2),this.clickNow+=1,cc.fx.GameConfig.GM_INFO.total+=1,setTimeout(function(){e.ball_Array[e.clickNow-1]&&(e.ball_Array[e.clickNow-1].getChildByName("guang").active=!1)},200),3==this.clickNow&&this.passLevel()):this.loseLevel())},e.prototype.loseLevel=function(){var t=this;this.begin=!1,cc.fx.AudioManager._instance.playWarning(),this.destroyLine();for(var e=this.ball_Array[0],i=function(i){cc.tween(n.ball_Array[i]).to(.6,{x:e.x,y:e.y}).call(function(){t.ball_Array[i].active=!1,i==t.ball_Array.length-1&&(t.ball.opacity=0,t.ball.position=cc.v3(e.x,e.y,0),t.clearSun(),t.custom=1,t.startGuide(1))}).start()},n=this,o=1;o=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a},s=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(o,r){function a(t){try{c(n.next(t))}catch(e){r(e)}}function s(t){try{c(n.throw(t))}catch(e){r(e)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,s)}c((n=n.apply(t,e||[])).next())})},c=this&&this.__generator||function(t,e){var i,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return c([t,e])}}function c(r){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(o=2&r[0]?n.return:r[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,r[1])).done)return o;switch(n=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return a.label++,{value:r[1],done:!1};case 5:a.label++,n=r[1],r=[0];continue;case 7:r=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===r[0]||2===r[0])){a=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]0?(n-=1,setTimeout(function(){return s(l,void 0,void 0,function(){return c(this,function(o){switch(o.label){case 0:return[4,this.fetchData(t,e,i,n)];case 1:return a=o.sent(),[2]}})})},5e3*(3-n)),[3,5]):[2,null];case 5:return[2]}})})},e.fetchWithTimeout=function(t,e){return void 0===e&&(e={}),s(this,void 0,void 0,function(){var i,n,o;return c(this,function(a){switch(a.label){case 0:return i=new AbortController,n=setTimeout(function(){return i.abort()},5e3),[4,fetch(t,r(r({},e),{signal:i.signal}))];case 1:return o=a.sent(),clearTimeout(n),[2,o]}})})},e.apiSign=function(t,e){void 0===e&&(e={});var i=t.trim();-1===i.indexOf("?")&&(i+="?");var n="sign="+m(i,y(e)),o=d.encryptByDES(n,f.secretKey);return o=encodeURIComponent(o),g(i)+"&_p="+o},i=a([l],e)}(cc.Component);i.default=p;var f={gameId:"100009",secretKey:"CMNhOzBA",EK:"hui231%1"},d=new(function(){function t(){this.keyHex=this.getHetKey()}return t.prototype.getHetKey=function(){return u.enc.Utf8.parse(f.EK)},t.prototype.encryptByDES=function(t,e){if(!t)return t;var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.DES.encrypt(t,i,{mode:u.mode.ECB,padding:u.pad.Pkcs7}).toString()},t.prototype.decryptByDES=function(t,e){var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.DES.decrypt({ciphertext:u.enc.Base64.parse(t)},i,{mode:u.mode.ECB,padding:u.pad.Pkcs7}).toString(u.enc.Utf8)},t.prototype.hmacSha256=function(t,e){var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.HmacSHA256(t,i).toString()},t.prototype.verifyHmacSha256=function(t,e){return u.HmacSHA256(t,this.keyHex).toString()===e},t.prototype.encryptCBC=function(t){if(!t)return t;var e=u.enc.Utf8.parse(t);return u.AES.encrypt(e,this.keyHex,{iv:this.keyHex,mode:u.mode.CBC,padding:u.pad.ZeroPadding}).toString()},t.prototype.decryptCBC=function(t){if(!t)return t;var e=u.enc.Hex.parse(t),i=u.enc.Base64.stringify(e);return u.AES.decrypt(i,this.keyHex,{iv:this.keyHex,mode:u.mode.CBC,padding:u.pad.ZeroPadding}).toString(u.enc.Utf8).toString()},t}());function y(t){for(var e,i=Object.keys(t).sort(),n={},o=0;o=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=null,e.itemIndex=0,e}return o(e,t),e.prototype.dataChanged=function(){var t=cc.fx.GameTool.subName(this.data.name,6);this.node.getChildByName("rankLab").getComponent(cc.Label).string=this.data.rank+"",this.node.getChildByName("nameLab").getComponent(cc.Label).string=t+"",this.node.getChildByName("totalLab").getComponent(cc.Label).string=this.data.total+"",this.node.getChildByName("rank").getChildByName("one").active=!1,this.node.getChildByName("rank").getChildByName("two").active=!1,this.node.getChildByName("rank").getChildByName("three").active=!1,1==this.data.rank?(this.node.getChildByName("rank").getChildByName("one").active=!0,this.node.getChildByName("rankLab").active=!1):2==this.data.rank?(this.node.getChildByName("rank").getChildByName("two").active=!0,this.node.getChildByName("rankLab").active=!1):3==this.data.rank?(this.node.getChildByName("rank").getChildByName("three").active=!0,this.node.getChildByName("rankLab").active=!1):this.node.getChildByName("rankLab").active=!0,this.setPic()},e.prototype.setPic=function(){var t=this;this.node.getChildByName("pic").getChildByName("icon").active=!1,this.node.getChildByName("pic").getChildByName("pic").active=!1;var e=this.data.pic;fetch(e).then(function(t){return t.headers.get("Content-Length")}).then(function(e){"5093"==e&&(t.node.getChildByName("pic").getChildByName("icon").active=!0)}).catch(function(){}),cc.assetManager.loadRemote(e,{ext:".png"},function(e,i){i?(t.node.getChildByName("pic").getChildByName("pic").active=!0,t.node.getChildByName("pic").getChildByName("pic").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i)):console.log(e,i)})},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],List:[function(t,e,i){"use strict";cc._RF.push(e,"d5421HgLShFKIjj5f18m1mi","List");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0}),i.StartAxisType=i.ListType=void 0;var a,s,c=t("./ItemRender"),h=cc._decorator,l=h.ccclass,u=h.property;(function(t){t[t.Horizontal=1]="Horizontal",t[t.Vertical=2]="Vertical",t[t.Grid=3]="Grid"})(a=i.ListType||(i.ListType={})),function(t){t[t.Horizontal=1]="Horizontal",t[t.Vertical=2]="Vertical"}(s=i.StartAxisType||(i.StartAxisType={}));var p=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.itemRender=null,e.type=a.Vertical,e.startAxis=s.Horizontal,e.spaceX=0,e.spaceY=0,e.padding_top=0,e.padding_buttom=0,e.padding_left=0,e._padding=0,e.padding_right=0,e.scrollView=null,e.content=null,e.itemDataList=[],e.spawnCount=0,e.itemList=[],e.itemHeight=0,e.itemWidth=0,e.itemPool=[],e.halfScrollView=0,e.lastContentPosX=0,e.lastContentPosY=0,e.gridRow=0,e.gridCol=0,e.updateTimer=0,e.updateInterval=.1,e.bScrolling=!1,e.updateFun=function(){},e}return o(e,t),e.prototype.onLoad=function(){this.itemHeight=this.itemRender.height,this.itemWidth=this.itemRender.width,this.scrollView=this.node.getComponent(cc.ScrollView),this.content=this.scrollView.content,this.content.anchorX=0,this.content.anchorY=1,this.content.removeAllChildren(),this.scrollView.node.on("scrolling",this.onScrolling,this)},e.prototype.setData=function(t){this.itemDataList=t.slice(),this.updateContent()},e.prototype.countListParam=function(){var t=this.itemDataList.length;this.type==a.Vertical?(this.scrollView.horizontal=!1,this.scrollView.vertical=!0,this.content.width=this.content.parent.width,this.content.height=t*this.itemHeight+(t-1)*this.spaceY+this.padding_top+this.padding_buttom,this.spawnCount=Math.round(this.scrollView.node.height/(this.itemHeight+this.spaceY))+2,this.halfScrollView=this.scrollView.node.height/2+this.itemHeight/2+this.spaceY,this.updateFun=this.updateV):this.type==a.Horizontal?(this.scrollView.horizontal=!0,this.scrollView.vertical=!1,this.content.width=t*this.itemWidth+(t-1)*this.spaceX+this.padding_left+this.padding_right,this.content.height=this.content.parent.height,this.spawnCount=Math.round(this.scrollView.node.width/(this.itemWidth+this.spaceX))+2,this.halfScrollView=this.scrollView.node.width/2+this.itemWidth/2+this.spaceX,this.updateFun=this.udpateH):this.type==a.Grid&&(this.startAxis==s.Vertical?(this.scrollView.horizontal=!1,this.scrollView.vertical=!0,this.content.width=this.content.parent.width,this.padding_left+this.padding_right+this.itemWidth+this.spaceX>this.content.width&&(this.padding_left=0,this.padding_right=0,console.error("padding_left\u6216padding_right\u8fc7\u5927")),this.gridCol=Math.floor((this.content.width-this.padding_left-this.padding_right)/(this.itemWidth+this.spaceX)),this.gridRow=Math.ceil(t/this.gridCol),this.content.height=this.gridRow*this.itemHeight+(this.gridRow-1)*this.spaceY+this.padding_top+this.padding_buttom,this.spawnCount=Math.round(this.scrollView.node.height/(this.itemHeight+this.spaceY))*this.gridCol+2*this.gridCol,this.halfScrollView=this.scrollView.node.height/2+this.itemHeight/2+this.spaceY,this.updateFun=this.updateGrid_V):this.startAxis==s.Horizontal&&(this.scrollView.horizontal=!0,this.scrollView.vertical=!1,this.content.height=this.content.parent.height,this.padding_top+this.padding_buttom+this.itemHeight+this.spaceY>this.content.height&&(this.padding_top=0,this.padding_buttom=0,console.error("padding_top\u6216padding_buttom\u8fc7\u5927")),this.gridRow=Math.floor((this.content.height-this.padding_top-this.padding_buttom)/(this.itemHeight+this.spaceY)),this.gridCol=Math.ceil(t/this.gridRow),this.content.width=this.gridCol*this.itemWidth+(this.gridCol-1)*this.spaceX+this.padding_left+this.padding_right,this.spawnCount=Math.round(this.scrollView.node.width/(this.itemWidth+this.spaceX))*this.gridRow+2*this.gridRow,this.halfScrollView=this.scrollView.node.width/2+this.itemWidth/2+this.spaceX,this.updateFun=this.updateGrid_H))},e.prototype.createList=function(t,e){this.itemDataList.length>this.spawnCount&&t+this.spawnCount-1>=this.itemDataList.length?(t=this.itemDataList.length-this.spawnCount,e=this.scrollView.getMaxScrollOffset()):this.itemDataList.length<=this.spawnCount&&(t=0);for(var i=0;ithis.itemDataList.length-t&&((n=this.itemList.pop()).removeFromParent(),this.itemPool.push(n))}this.scrollView.scrollToOffset(e)},e.prototype.getItem=function(){return 0==this.itemPool.length?cc.instantiate(this.itemRender):this.itemPool.pop()},e.prototype.update=function(t){0!=this.bScrolling&&(this.updateTimer+=t,this.updateTimerthis.lastContentPosY,o=(this.itemHeight+this.spaceY)*e.length,r=0;ri&&t.y-o-this.padding_buttom>-this.content.height){var s=(h=t.getComponent(c.default)).itemIndex+e.length;h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.y=t.y-o}}else if(a.y<-i&&t.y+o+this.padding_top<0){var h;s=(h=t.getComponent(c.default)).itemIndex-e.length,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.y=t.y+o}}this.lastContentPosY=this.scrollView.content.y},e.prototype.udpateH=function(){for(var t,e=this.itemList,i=this.halfScrollView,n=this.scrollView.content.x>this.lastContentPosX,o=(this.itemWidth+this.spaceX)*e.length,r=0;ri&&t.x-o-this.padding_left>0){var s=(h=t.getComponent(c.default)).itemIndex-e.length;h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.x=t.x-o}}else if(a.x<-i&&t.x+o+this.padding_rightthis.lastContentPosY,o=(this.itemHeight+this.spaceY)*(this.spawnCount/this.gridCol),r=0;ri&&t.y-o-this.padding_buttom>-this.content.height){var s=(h=t.getComponent(c.default)).itemIndex+this.spawnCount/this.gridCol*this.gridCol;null!=this.itemDataList[s]?(t.y=t.y-o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.y=t.y-o,h.itemIndex=s,t.opacity=0)}}else if(a.y<-i&&t.y+o+this.padding_top<0){var h;s=(h=t.getComponent(c.default)).itemIndex-this.spawnCount/this.gridCol*this.gridCol,null!=this.itemDataList[s]?(t.y=t.y+o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.y=t.y+o,h.itemIndex=s,t.opacity=0)}}this.lastContentPosY=this.scrollView.content.y},e.prototype.updateGrid_H=function(){for(var t,e=this.itemList,i=this.halfScrollView,n=this.scrollView.content.x>this.lastContentPosX,o=(this.itemWidth+this.spaceX)*(this.spawnCount/this.gridRow),r=0;ri&&t.x-o-this.padding_left>0){var s=(h=t.getComponent(c.default)).itemIndex-this.spawnCount/this.gridRow*this.gridRow;null!=this.itemDataList[s]?(t.x=t.x-o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.x=t.x-o,h.itemIndex=s,t.opacity=0)}}else if(a.x<-i&&t.x+o+this.padding_right=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,a.requireComponent,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){window.initMgr(),cc.fx.GameConfig.init();var t=window.location.href;this.containsTrain(t)?(console.log("\u65e0\u6392\u884c\u7248\u672c"),this.node.getChildByName("Rank").active=!1):console.log("\u6709\u6392\u884c\u7248\u672c")},e.prototype.containsTrain=function(t){return/from=train/i.test(t)},e.prototype.startGame=function(){cc.director.loadScene("GuideScene")},e.prototype.clickBtn=function(t,e){cc.fx.GameConfig.GM_INFO.custom=parseInt(e),cc.director.loadScene("GameScene")},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},e.prototype.update=function(){},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],Notification:[function(t,e,i){"use strict";cc._RF.push(e,"55403VjGlpPL564gsdiZBg3","Notification"),Object.defineProperty(i,"__esModule",{value:!0}),i.Notifications=void 0;i.Notifications={_eventMap:[],on:function(t,e,i){void 0===this._eventMap[t]&&(this._eventMap[t]=[]),this._eventMap[t].push({callback:e,target:i})},emit:function(t,e){var i=this._eventMap[t];if(void 0!==i)for(var n=0;n=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=t("./module/RankList/List"),s=cc._decorator,c=s.ccclass,h=s.property,l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.Player=null,e.selfNode=null,e.phone=null,e}return o(e,t),e.prototype.onLoad=function(){this.init()},e.prototype.init=function(){this.rankList=cc.find("ScrollView",this.node).getComponent(a.default),this.Player.getChildByName("rank").active=!1,this.listData=[],this.selfData=null,this.rankNumber=100,this.rankTotal=100,this.selfNode.opacity=0},e.prototype.start=function(){this.Player.active=!1,this.getRank()},e.prototype.getRank=function(){var t=this;cc.fx.GameTool.getRank({length:100},function(e){return t.getRankData(e)})},e.prototype.getRankData=function(t){t&&(console.log(t),cc.fx.GameTool.getRankData(t,this,6),this.setPic(this.selfData.pic))},e.prototype.backClick=function(){cc.director.loadScene("LoadScene")},e.prototype.playerAction=function(){var t=this;this.Player.getChildByName("rank").active=!1;var e=1;if(this.tween=cc.tween(this.Player).to(2,{position:cc.v3(210,453,0)}).call(function(){t.Player.getChildByName("rank").active=!0,t.Player.getChildByName("rank").getChildByName("number").getComponent(cc.Label).string=parseInt(100*e+"")+"%"}).start(),e=(this.listData.length-this.rankNumber)/this.listData.length,this.listData.length>=99&&this.rankNumber>=99){e=(49*Math.random()+1)/100;var i=cc.sys.localStorage.getItem("matchNumber");null!=i&&null!=i||(e=0)}setTimeout(function(){t.tween&&t.tween.stop(),t.Player.getChildByName("rank").active=!0,t.Player.getChildByName("rank").getChildByName("number").getComponent(cc.Label).string=parseInt(100*e+"")+"%"},2e3*e)},e.prototype.setPic=function(t){var e=this;this.phone.node.parent.getChildByName("icon").active=!1,this.phone.node.active=!1,this.Player.active=!0,this.Player.opacity=0,this.Player.getChildByName("mask").getChildByName("icon").active=!1,this.Player.getChildByName("mask").getChildByName("phone").active=!1,fetch(t).then(function(t){return t.headers.get("Content-Length")}).then(function(t){"5093"==t&&(e.phone.node.parent.getChildByName("icon").active=!0,e.Player.getChildByName("mask").getChildByName("icon").active=!0)}).catch(function(){});var i=this;cc.assetManager.loadRemote(t,{ext:".png"},function(t,e){i.Player.opacity=255,e?(i.phone.node.active=!0,i.phone.spriteFrame=new cc.SpriteFrame(e),i.Player.getChildByName("mask").getChildByName("icon").active=!1,i.Player.getChildByName("mask").getChildByName("phone").active=!0,i.Player.getChildByName("mask").getChildByName("phone").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(e),setTimeout(function(){i.playerAction()},500)):(i.Player.getChildByName("mask").getChildByName("icon").active=!0,setTimeout(function(){i.playerAction()},500))})},r([h(cc.Node)],e.prototype,"Player",void 0),r([h(cc.Node)],e.prototype,"selfNode",void 0),r([h(cc.Sprite)],e.prototype,"phone",void 0),r([c],e)}(cc.Component);i.default=l,cc._RF.pop()},{"./module/RankList/List":"List"}],Storage:[function(t,e,i){"use strict";cc._RF.push(e,"1002938VFRJd70RiAno9Iys","Storage"),Object.defineProperty(i,"__esModule",{value:!0}),i.StorageMessage=void 0;var n={getStorage:function(t){var e=null;return cc.sys.localStorage.getItem(t)&&(e=cc.sys.localStorage.getItem(t)),e&&(e=JSON.parse(e)),e},setStorage:function(t,e){var i=JSON.stringify(e);cc.sys.localStorage.setItem(t,i)},removeStorage:function(t){cc.sys.localStorage.getItem(t)&&cc.sys.localStorage.removeItem(t)}};i.StorageMessage=n,cc._RF.pop()},{}],Sun:[function(t,e,i){"use strict";cc._RF.push(e,"4be67sdkexCyqLl0NHd9N1f","Sun");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){},e.prototype.init=function(t,e,i,n){this.touch=!0,this.move=!1,this.id_Number=t,this._color=e,this._speed=i,this._repeat=n,cc.tween(this.node.getChildByName("shan")).repeatForever(cc.tween().to(1,{opacity:0,scale:.5}).delay(.2).to(1,{opacity:255,scale:1.2}).delay(.5)).start()},e.prototype.showNumber=function(t){this.node.getChildByName("number").active=t,1==t&&(this.node.getChildByName("number").getComponent(cc.Label).string=this.id_Number+"")},e.prototype.clickBtn=function(t,e){"1"===e?0==this.move&&1==this.touch&&("GameNode"==this.node.parent.parent.name?1==this.node.parent.parent.getComponent("GameManager").begin&&(cc.tween(this.node.getChildByName("action")).to(.5,{opacity:0,scale:1.8}).start(),cc.tween(this.node).to(.3,{scale:1.3}).to(.3,{scale:1}).start(),this.touch=!1,this.node.zIndex=-1,cc.fx.Notifications.emit("clickSun",this.id_Number)):(this.touch=!1,this.node.zIndex=-1,cc.fx.Notifications.emit("clickSun",this.id_Number))):1==this.touch&&1==this.node.parent.parent.getComponent("GuideManager").begin&&(this.touch=!1,this.node.zIndex=-1,cc.fx.Notifications.emit("clickSun",this.id_Number))},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],"crypto-js.min":[function(t,e,i){"use strict";cc._RF.push(e,"e64e1qXyT9CV6s0gDQdj/ed","crypto-js.min"),function(t,n){"object"==typeof i?e.exports=i=n():"function"==typeof define&&define.amd?define([],n):(void 0).CryptoJS=n()}(0,function(){var t,e,i,n,o,r,a,s=s||function(t){var e=Object.create||function(){function t(){}return function(e){var i;return t.prototype=e,i=new t,t.prototype=null,i}}(),i={},n=i.lib={},o=n.Base={extend:function(t){var i=e(this);return t&&i.mixIn(t),i.hasOwnProperty("init")&&this.init!==i.init||(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},r=n.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||s).stringify(this)},concat:function(t){var e=this.words,i=t.words,n=this.sigBytes,o=t.sigBytes;if(this.clamp(),n%4)for(var r=0;r>>2]>>>24-r%4*8&255;e[n+r>>>2]|=a<<24-(n+r)%4*8}else for(r=0;r>>2]=i[r>>>2];return this.sigBytes+=o,this},clamp:function(){var e=this.words,i=this.sigBytes;e[i>>>2]&=4294967295<<32-i%4*8,e.length=t.ceil(i/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var i,n=[],o=function(e){e=e;var i=987654321,n=4294967295;return function(){var o=((i=36969*(65535&i)+(i>>16)&n)<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n;return o/=4294967296,(o+=.5)*(t.random()>.5?1:-1)}},a=0;a>>2]>>>24-o%4*8&255;n.push((r>>>4).toString(16)),n.push((15&r).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,i=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new r.init(i,e/2)}},c=a.Latin1={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>24-o%4*8&255;n.push(String.fromCharCode(r))}return n.join("")},parse:function(t){for(var e=t.length,i=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new r.init(i,e)}},h=a.Utf8={stringify:function(t){try{return decodeURIComponent(escape(c.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return c.parse(unescape(encodeURIComponent(t)))}},l=n.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new r.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=h.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var i=this._data,n=i.words,o=i.sigBytes,a=this.blockSize,s=o/(4*a),c=(s=e?t.ceil(s):t.max((0|s)-this._minBufferSize,0))*a,h=t.min(4*c,o);if(c){for(var l=0;l>>6-a%4*2;o[r>>>2]|=(s|c)<<24-r%4*8,r++}return i.create(o,r)}var e=s,i=e.lib.WordArray;e.enc.Base64={stringify:function(t){var e=t.words,i=t.sigBytes,n=this._map;t.clamp();for(var o=[],r=0;r>>2]>>>24-r%4*8&255)<<16|(e[r+1>>>2]>>>24-(r+1)%4*8&255)<<8|e[r+2>>>2]>>>24-(r+2)%4*8&255,s=0;s<4&&r+.75*s>>6*(3-s)&63));var c=n.charAt(64);if(c)for(;o.length%4;)o.push(c);return o.join("")},parse:function(e){var i=e.length,n=this._map,o=this._reverseMap;if(!o){o=this._reverseMap=[];for(var r=0;r>>32-r)+e}function i(t,e,i,n,o,r,a){var s=t+(e&n|i&~n)+o+a;return(s<>>32-r)+e}function n(t,e,i,n,o,r,a){var s=t+(e^i^n)+o+a;return(s<>>32-r)+e}function o(t,e,i,n,o,r,a){var s=t+(i^(e|~n))+o+a;return(s<>>32-r)+e}var r=s,a=r.lib,c=a.WordArray,h=a.Hasher,l=r.algo,u=[];!function(){for(var e=0;e<64;e++)u[e]=4294967296*t.abs(t.sin(e+1))|0}();var p=l.MD5=h.extend({_doReset:function(){this._hash=new c.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,r){for(var a=0;a<16;a++){var s=r+a,c=t[s];t[s]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}var h=this._hash.words,l=t[r+0],p=t[r+1],f=t[r+2],d=t[r+3],y=t[r+4],m=t[r+5],g=t[r+6],v=t[r+7],_=t[r+8],b=t[r+9],C=t[r+10],w=t[r+11],x=t[r+12],S=t[r+13],A=t[r+14],k=t[r+15],B=h[0],N=h[1],M=h[2],P=h[3];B=e(B,N,M,P,l,7,u[0]),P=e(P,B,N,M,p,12,u[1]),M=e(M,P,B,N,f,17,u[2]),N=e(N,M,P,B,d,22,u[3]),B=e(B,N,M,P,y,7,u[4]),P=e(P,B,N,M,m,12,u[5]),M=e(M,P,B,N,g,17,u[6]),N=e(N,M,P,B,v,22,u[7]),B=e(B,N,M,P,_,7,u[8]),P=e(P,B,N,M,b,12,u[9]),M=e(M,P,B,N,C,17,u[10]),N=e(N,M,P,B,w,22,u[11]),B=e(B,N,M,P,x,7,u[12]),P=e(P,B,N,M,S,12,u[13]),M=e(M,P,B,N,A,17,u[14]),B=i(B,N=e(N,M,P,B,k,22,u[15]),M,P,p,5,u[16]),P=i(P,B,N,M,g,9,u[17]),M=i(M,P,B,N,w,14,u[18]),N=i(N,M,P,B,l,20,u[19]),B=i(B,N,M,P,m,5,u[20]),P=i(P,B,N,M,C,9,u[21]),M=i(M,P,B,N,k,14,u[22]),N=i(N,M,P,B,y,20,u[23]),B=i(B,N,M,P,b,5,u[24]),P=i(P,B,N,M,A,9,u[25]),M=i(M,P,B,N,d,14,u[26]),N=i(N,M,P,B,_,20,u[27]),B=i(B,N,M,P,S,5,u[28]),P=i(P,B,N,M,f,9,u[29]),M=i(M,P,B,N,v,14,u[30]),B=n(B,N=i(N,M,P,B,x,20,u[31]),M,P,m,4,u[32]),P=n(P,B,N,M,_,11,u[33]),M=n(M,P,B,N,w,16,u[34]),N=n(N,M,P,B,A,23,u[35]),B=n(B,N,M,P,p,4,u[36]),P=n(P,B,N,M,y,11,u[37]),M=n(M,P,B,N,v,16,u[38]),N=n(N,M,P,B,C,23,u[39]),B=n(B,N,M,P,S,4,u[40]),P=n(P,B,N,M,l,11,u[41]),M=n(M,P,B,N,d,16,u[42]),N=n(N,M,P,B,g,23,u[43]),B=n(B,N,M,P,b,4,u[44]),P=n(P,B,N,M,x,11,u[45]),M=n(M,P,B,N,k,16,u[46]),B=o(B,N=n(N,M,P,B,f,23,u[47]),M,P,l,6,u[48]),P=o(P,B,N,M,v,10,u[49]),M=o(M,P,B,N,A,15,u[50]),N=o(N,M,P,B,m,21,u[51]),B=o(B,N,M,P,x,6,u[52]),P=o(P,B,N,M,d,10,u[53]),M=o(M,P,B,N,C,15,u[54]),N=o(N,M,P,B,p,21,u[55]),B=o(B,N,M,P,_,6,u[56]),P=o(P,B,N,M,k,10,u[57]),M=o(M,P,B,N,g,15,u[58]),N=o(N,M,P,B,S,21,u[59]),B=o(B,N,M,P,y,6,u[60]),P=o(P,B,N,M,w,10,u[61]),M=o(M,P,B,N,f,15,u[62]),N=o(N,M,P,B,b,21,u[63]),h[0]=h[0]+B|0,h[1]=h[1]+N|0,h[2]=h[2]+M|0,h[3]=h[3]+P|0},_doFinalize:function(){var e=this._data,i=e.words,n=8*this._nDataBytes,o=8*e.sigBytes;i[o>>>5]|=128<<24-o%32;var r=t.floor(n/4294967296),a=n;i[15+(o+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),i[14+(o+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),e.sigBytes=4*(i.length+1),this._process();for(var s=this._hash,c=s.words,h=0;h<4;h++){var l=c[h];c[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}return s},clone:function(){var t=h.clone.call(this);return t._hash=this._hash.clone(),t}});r.MD5=h._createHelper(p),r.HmacMD5=h._createHmacHelper(p)}(Math),e=(t=s).lib,i=e.WordArray,n=e.Hasher,o=t.algo,r=[],a=o.SHA1=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],a=i[2],s=i[3],c=i[4],h=0;h<80;h++){if(h<16)r[h]=0|t[e+h];else{var l=r[h-3]^r[h-8]^r[h-14]^r[h-16];r[h]=l<<1|l>>>31}var u=(n<<5|n>>>27)+c+r[h];u+=h<20?1518500249+(o&a|~o&s):h<40?1859775393+(o^a^s):h<60?(o&a|o&s|a&s)-1894007588:(o^a^s)-899497514,c=s,s=a,a=o<<30|o>>>2,o=n,n=u}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+a|0,i[3]=i[3]+s|0,i[4]=i[4]+c|0},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),t.SHA1=n._createHelper(a),t.HmacSHA1=n._createHmacHelper(a),function(t){var e=s,i=e.lib,n=i.WordArray,o=i.Hasher,r=e.algo,a=[],c=[];!function(){function e(e){for(var i=t.sqrt(e),n=2;n<=i;n++)if(!(e%n))return!1;return!0}function i(t){return 4294967296*(t-(0|t))|0}for(var n=2,o=0;o<64;)e(n)&&(o<8&&(a[o]=i(t.pow(n,.5))),c[o]=i(t.pow(n,1/3)),o++),n++}();var h=[],l=r.SHA256=o.extend({_doReset:function(){this._hash=new n.init(a.slice(0))},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],u=i[6],p=i[7],f=0;f<64;f++){if(f<16)h[f]=0|t[e+f];else{var d=h[f-15],y=(d<<25|d>>>7)^(d<<14|d>>>18)^d>>>3,m=h[f-2],g=(m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10;h[f]=y+h[f-7]+g+h[f-16]}var v=n&o^n&r^o&r,_=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),b=p+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&l^~s&u)+c[f]+h[f];p=u,u=l,l=s,s=a+b|0,a=r,r=o,o=n,n=b+(_+v)|0}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+r|0,i[3]=i[3]+a|0,i[4]=i[4]+s|0,i[5]=i[5]+l|0,i[6]=i[6]+u|0,i[7]=i[7]+p|0},_doFinalize:function(){var e=this._data,i=e.words,n=8*this._nDataBytes,o=8*e.sigBytes;return i[o>>>5]|=128<<24-o%32,i[14+(o+64>>>9<<4)]=t.floor(n/4294967296),i[15+(o+64>>>9<<4)]=n,e.sigBytes=4*i.length,this._process(),this._hash},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=o._createHelper(l),e.HmacSHA256=o._createHmacHelper(l)}(Math),function(){function t(t){return t<<8&4278255360|t>>>8&16711935}var e=s,i=e.lib.WordArray,n=e.enc;n.Utf16=n.Utf16BE={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535;n.push(String.fromCharCode(r))}return n.join("")},parse:function(t){for(var e=t.length,n=[],o=0;o>>1]|=t.charCodeAt(o)<<16-o%2*16;return i.create(n,2*e)}},n.Utf16LE={stringify:function(e){for(var i=e.words,n=e.sigBytes,o=[],r=0;r>>2]>>>16-r%4*8&65535);o.push(String.fromCharCode(a))}return o.join("")},parse:function(e){for(var n=e.length,o=[],r=0;r>>1]|=t(e.charCodeAt(r)<<16-r%2*16);return i.create(o,2*n)}}}(),function(){if("function"==typeof ArrayBuffer){var t=s.lib.WordArray,e=t.init;(t.init=function(t){if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),(t instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array)&&(t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),t instanceof Uint8Array){for(var i=t.byteLength,n=[],o=0;o>>2]|=t[o]<<24-o%4*8;e.call(this,n,i)}else e.apply(this,arguments)}).prototype=t}}(),function(){function t(t,e,i){return t^e^i}function e(t,e,i){return t&e|~t&i}function i(t,e,i){return(t|~e)^i}function n(t,e,i){return t&i|e&~i}function o(t,e,i){return t^(e|~i)}function r(t,e){return t<>>32-e}var a=s,c=a.lib,h=c.WordArray,l=c.Hasher,u=a.algo,p=h.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),f=h.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),d=h.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),y=h.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),m=h.create([0,1518500249,1859775393,2400959708,2840853838]),g=h.create([1352829926,1548603684,1836072691,2053994217,0]),v=u.RIPEMD160=l.extend({_doReset:function(){this._hash=h.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(a,s){for(var c=0;c<16;c++){var h=s+c,l=a[h];a[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}var u,v,_,b,C,w,x,S,A,k,B,N=this._hash.words,M=m.words,P=g.words,L=p.words,I=f.words,R=d.words,G=y.words;for(w=u=N[0],x=v=N[1],S=_=N[2],A=b=N[3],k=C=N[4],c=0;c<80;c+=1)B=u+a[s+L[c]]|0,B+=c<16?t(v,_,b)+M[0]:c<32?e(v,_,b)+M[1]:c<48?i(v,_,b)+M[2]:c<64?n(v,_,b)+M[3]:o(v,_,b)+M[4],B=(B=r(B|=0,R[c]))+C|0,u=C,C=b,b=r(_,10),_=v,v=B,B=w+a[s+I[c]]|0,B+=c<16?o(x,S,A)+P[0]:c<32?n(x,S,A)+P[1]:c<48?i(x,S,A)+P[2]:c<64?e(x,S,A)+P[3]:t(x,S,A)+P[4],B=(B=r(B|=0,G[c]))+k|0,w=k,k=A,A=r(S,10),S=x,x=B;B=N[1]+_+A|0,N[1]=N[2]+b+k|0,N[2]=N[3]+C+w|0,N[3]=N[4]+u+x|0,N[4]=N[0]+v+S|0,N[0]=B},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();for(var o=this._hash,r=o.words,a=0;a<5;a++){var s=r[a];r[a]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}return o},clone:function(){var t=l.clone.call(this);return t._hash=this._hash.clone(),t}});a.RIPEMD160=l._createHelper(v),a.HmacRIPEMD160=l._createHmacHelper(v)}(Math),function(){var t=s,e=t.lib.Base,i=t.enc.Utf8;t.algo.HMAC=e.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=i.parse(e));var n=t.blockSize,o=4*n;e.sigBytes>o&&(e=t.finalize(e)),e.clamp();for(var r=this._oKey=e.clone(),a=this._iKey=e.clone(),s=r.words,c=a.words,h=0;h>>24)|4278255360&(r<<24|r>>>8),a=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),(N=i[o]).high^=a,N.low^=r}for(var s=0;s<24;s++){for(var p=0;p<5;p++){for(var f=0,d=0,y=0;y<5;y++)f^=(N=i[p+5*y]).high,d^=N.low;var m=u[p];m.high=f,m.low=d}for(p=0;p<5;p++){var g=u[(p+4)%5],v=u[(p+1)%5],_=v.high,b=v.low;for(f=g.high^(_<<1|b>>>31),d=g.low^(b<<1|_>>>31),y=0;y<5;y++)(N=i[p+5*y]).high^=f,N.low^=d}for(var C=1;C<25;C++){var w=(N=i[C]).high,x=N.low,S=c[C];S<32?(f=w<>>32-S,d=x<>>32-S):(f=x<>>64-S,d=w<>>64-S);var A=u[h[C]];A.high=f,A.low=d}var k=u[0],B=i[0];for(k.high=B.high,k.low=B.low,p=0;p<5;p++)for(y=0;y<5;y++){var N=i[C=p+5*y],M=u[C],P=u[(p+1)%5+5*y],L=u[(p+2)%5+5*y];N.high=M.high^~P.high&L.high,N.low=M.low^~P.low&L.low}N=i[0];var I=l[s];N.high^=I.high,N.low^=I.low}},_doFinalize:function(){var e=this._data,i=e.words,o=(this._nDataBytes,8*e.sigBytes),r=32*this.blockSize;i[o>>>5]|=1<<24-o%32,i[(t.ceil((o+1)/r)*r>>>5)-1]|=128,e.sigBytes=4*i.length,this._process();for(var a=this._state,s=this.cfg.outputLength/8,c=s/8,h=[],l=0;l>>24)|4278255360&(p<<24|p>>>8),f=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8),h.push(f),h.push(p)}return new n.init(h,s)},clone:function(){for(var t=o.clone.call(this),e=t._state=this._state.slice(0),i=0;i<25;i++)e[i]=e[i].clone();return t}});e.SHA3=o._createHelper(p),e.HmacSHA3=o._createHmacHelper(p)}(Math),function(){function t(){return o.create.apply(o,arguments)}var e=s,i=e.lib.Hasher,n=e.x64,o=n.Word,r=n.WordArray,a=e.algo,c=[t(1116352408,3609767458),t(1899447441,602891725),t(3049323471,3964484399),t(3921009573,2173295548),t(961987163,4081628472),t(1508970993,3053834265),t(2453635748,2937671579),t(2870763221,3664609560),t(3624381080,2734883394),t(310598401,1164996542),t(607225278,1323610764),t(1426881987,3590304994),t(1925078388,4068182383),t(2162078206,991336113),t(2614888103,633803317),t(3248222580,3479774868),t(3835390401,2666613458),t(4022224774,944711139),t(264347078,2341262773),t(604807628,2007800933),t(770255983,1495990901),t(1249150122,1856431235),t(1555081692,3175218132),t(1996064986,2198950837),t(2554220882,3999719339),t(2821834349,766784016),t(2952996808,2566594879),t(3210313671,3203337956),t(3336571891,1034457026),t(3584528711,2466948901),t(113926993,3758326383),t(338241895,168717936),t(666307205,1188179964),t(773529912,1546045734),t(1294757372,1522805485),t(1396182291,2643833823),t(1695183700,2343527390),t(1986661051,1014477480),t(2177026350,1206759142),t(2456956037,344077627),t(2730485921,1290863460),t(2820302411,3158454273),t(3259730800,3505952657),t(3345764771,106217008),t(3516065817,3606008344),t(3600352804,1432725776),t(4094571909,1467031594),t(275423344,851169720),t(430227734,3100823752),t(506948616,1363258195),t(659060556,3750685593),t(883997877,3785050280),t(958139571,3318307427),t(1322822218,3812723403),t(1537002063,2003034995),t(1747873779,3602036899),t(1955562222,1575990012),t(2024104815,1125592928),t(2227730452,2716904306),t(2361852424,442776044),t(2428436474,593698344),t(2756734187,3733110249),t(3204031479,2999351573),t(3329325298,3815920427),t(3391569614,3928383900),t(3515267271,566280711),t(3940187606,3454069534),t(4118630271,4000239992),t(116418474,1914138554),t(174292421,2731055270),t(289380356,3203993006),t(460393269,320620315),t(685471733,587496836),t(852142971,1086792851),t(1017036298,365543100),t(1126000580,2618297676),t(1288033470,3409855158),t(1501505948,4234509866),t(1607167915,987167468),t(1816402316,1246189591)],h=[];!function(){for(var e=0;e<80;e++)h[e]=t()}();var l=a.SHA512=i.extend({_doReset:function(){this._hash=new r.init([new o.init(1779033703,4089235720),new o.init(3144134277,2227873595),new o.init(1013904242,4271175723),new o.init(2773480762,1595750129),new o.init(1359893119,2917565137),new o.init(2600822924,725511199),new o.init(528734635,4215389547),new o.init(1541459225,327033209)])},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],u=i[6],p=i[7],f=n.high,d=n.low,y=o.high,m=o.low,g=r.high,v=r.low,_=a.high,b=a.low,C=s.high,w=s.low,x=l.high,S=l.low,A=u.high,k=u.low,B=p.high,N=p.low,M=f,P=d,L=y,I=m,R=g,G=v,D=_,T=b,O=C,F=w,E=x,H=S,j=A,z=k,V=B,W=N,K=0;K<80;K++){var U=h[K];if(K<16)var X=U.high=0|t[e+2*K],q=U.low=0|t[e+2*K+1];else{var Y=h[K-15],J=Y.high,Z=Y.low,Q=(J>>>1|Z<<31)^(J>>>8|Z<<24)^J>>>7,$=(Z>>>1|J<<31)^(Z>>>8|J<<24)^(Z>>>7|J<<25),tt=h[K-2],et=tt.high,it=tt.low,nt=(et>>>19|it<<13)^(et<<3|it>>>29)^et>>>6,ot=(it>>>19|et<<13)^(it<<3|et>>>29)^(it>>>6|et<<26),rt=h[K-7],at=rt.high,st=rt.low,ct=h[K-16],ht=ct.high,lt=ct.low;X=(X=(X=Q+at+((q=$+st)>>>0<$>>>0?1:0))+nt+((q+=ot)>>>0>>0?1:0))+ht+((q+=lt)>>>0>>0?1:0),U.high=X,U.low=q}var ut,pt=O&E^~O&j,ft=F&H^~F&z,dt=M&L^M&R^L&R,yt=P&I^P&G^I&G,mt=(M>>>28|P<<4)^(M<<30|P>>>2)^(M<<25|P>>>7),gt=(P>>>28|M<<4)^(P<<30|M>>>2)^(P<<25|M>>>7),vt=(O>>>14|F<<18)^(O>>>18|F<<14)^(O<<23|F>>>9),_t=(F>>>14|O<<18)^(F>>>18|O<<14)^(F<<23|O>>>9),bt=c[K],Ct=bt.high,wt=bt.low,xt=V+vt+((ut=W+_t)>>>0>>0?1:0),St=gt+yt;V=j,W=z,j=E,z=H,E=O,H=F,O=D+(xt=(xt=(xt=xt+pt+((ut+=ft)>>>0>>0?1:0))+Ct+((ut+=wt)>>>0>>0?1:0))+X+((ut+=q)>>>0>>0?1:0))+((F=T+ut|0)>>>0>>0?1:0)|0,D=R,T=G,R=L,G=I,L=M,I=P,M=xt+(mt+dt+(St>>>0>>0?1:0))+((P=ut+St|0)>>>0>>0?1:0)|0}d=n.low=d+P,n.high=f+M+(d>>>0

>>0?1:0),m=o.low=m+I,o.high=y+L+(m>>>0>>0?1:0),v=r.low=v+G,r.high=g+R+(v>>>0>>0?1:0),b=a.low=b+T,a.high=_+D+(b>>>0>>0?1:0),w=s.low=w+F,s.high=C+O+(w>>>0>>0?1:0),S=l.low=S+H,l.high=x+E+(S>>>0>>0?1:0),k=u.low=k+z,u.high=A+j+(k>>>0>>0?1:0),N=p.low=N+W,p.high=B+V+(N>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(n+128>>>10<<5)]=i,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=i.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32});e.SHA512=i._createHelper(l),e.HmacSHA512=i._createHmacHelper(l)}(),function(){var t=s,e=t.x64,i=e.Word,n=e.WordArray,o=t.algo,r=o.SHA512,a=o.SHA384=r.extend({_doReset:function(){this._hash=new n.init([new i.init(3418070365,3238371032),new i.init(1654270250,914150663),new i.init(2438529370,812702999),new i.init(355462360,4144912697),new i.init(1731405415,4290775857),new i.init(2394180231,1750603025),new i.init(3675008525,1694076839),new i.init(1203062813,3204075428)])},_doFinalize:function(){var t=r._doFinalize.call(this);return t.sigBytes-=16,t}});t.SHA384=r._createHelper(a),t.HmacSHA384=r._createHmacHelper(a)}(),s.lib.Cipher||function(t){var e=s,i=e.lib,n=i.Base,o=i.WordArray,r=i.BufferedBlockAlgorithm,a=e.enc,c=(a.Utf8,a.Base64),h=e.algo.EvpKDF,l=i.Cipher=r.extend({cfg:n.extend(),createEncryptor:function(t,e){return this.create(this._ENC_XFORM_MODE,t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,i){this.cfg=this.cfg.extend(i),this._xformMode=t,this._key=e,this.reset()},reset:function(){r.reset.call(this),this._doReset()},process:function(t){return this._append(t),this._process()},finalize:function(t){return t&&this._append(t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?_:g}return function(e){return{encrypt:function(i,n,o){return t(n).encrypt(e,i,n,o)},decrypt:function(i,n,o){return t(n).decrypt(e,i,n,o)}}}}()}),u=(i.StreamCipher=l.extend({_doFinalize:function(){return this._process(!0)},blockSize:1}),e.mode={}),p=i.BlockCipherMode=n.extend({createEncryptor:function(t,e){return this.Encryptor.create(t,e)},createDecryptor:function(t,e){return this.Decryptor.create(t,e)},init:function(t,e){this._cipher=t,this._iv=e}}),f=u.CBC=function(){function e(e,i,n){var o=this._iv;if(o){var r=o;this._iv=t}else r=this._prevBlock;for(var a=0;a>>2];t.sigBytes-=e}},y=(i.BlockCipher=l.extend({cfg:l.cfg.extend({mode:f,padding:d}),reset:function(){l.reset.call(this);var t=this.cfg,e=t.iv,i=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=i.createEncryptor;else n=i.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==n?this._mode.init(this,e&&e.words):(this._mode=n.call(i,this,e&&e.words),this._mode.__creator=n)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4}),i.CipherParams=n.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}})),m=(e.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,i=t.salt;if(i)var n=o.create([1398893684,1701076831]).concat(i).concat(e);else n=e;return n.toString(c)},parse:function(t){var e=c.parse(t),i=e.words;if(1398893684==i[0]&&1701076831==i[1]){var n=o.create(i.slice(2,4));i.splice(0,4),e.sigBytes-=16}return y.create({ciphertext:e,salt:n})}},g=i.SerializableCipher=n.extend({cfg:n.extend({format:m}),encrypt:function(t,e,i,n){n=this.cfg.extend(n);var o=t.createEncryptor(i,n),r=o.finalize(e),a=o.cfg;return y.create({ciphertext:r,key:i,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:t.blockSize,formatter:n.format})},decrypt:function(t,e,i,n){return n=this.cfg.extend(n),e=this._parse(e,n.format),t.createDecryptor(i,n).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),v=(e.kdf={}).OpenSSL={execute:function(t,e,i,n){n||(n=o.random(8));var r=h.create({keySize:e+i}).compute(t,n),a=o.create(r.words.slice(e),4*i);return r.sigBytes=4*e,y.create({key:r,iv:a,salt:n})}},_=i.PasswordBasedCipher=g.extend({cfg:g.cfg.extend({kdf:v}),encrypt:function(t,e,i,n){var o=(n=this.cfg.extend(n)).kdf.execute(i,t.keySize,t.ivSize);n.iv=o.iv;var r=g.encrypt.call(this,t,e,o.key,n);return r.mixIn(o),r},decrypt:function(t,e,i,n){n=this.cfg.extend(n),e=this._parse(e,n.format);var o=n.kdf.execute(i,t.keySize,t.ivSize,e.salt);return n.iv=o.iv,g.decrypt.call(this,t,e,o.key,n)}})}(),s.mode.CFB=function(){function t(t,e,i,n){var o=this._iv;if(o){var r=o.slice(0);this._iv=void 0}else r=this._prevBlock;n.encryptBlock(r,0);for(var a=0;a>>2]|=o<<24-r%4*8,t.sigBytes+=o},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},s.pad.Iso10126={pad:function(t,e){var i=4*e,n=i-t.sigBytes%i;t.concat(s.lib.WordArray.random(n-1)).concat(s.lib.WordArray.create([n<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},s.pad.Iso97971={pad:function(t,e){t.concat(s.lib.WordArray.create([2147483648],1)),s.pad.ZeroPadding.pad(t,e)},unpad:function(t){s.pad.ZeroPadding.unpad(t),t.sigBytes--}},s.mode.OFB=function(){var t=s.lib.BlockCipherMode.extend(),e=t.Encryptor=t.extend({processBlock:function(t,e){var i=this._cipher,n=i.blockSize,o=this._iv,r=this._keystream;o&&(r=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(r,0);for(var a=0;a>>8^255&d^99,n[i]=d,o[d]=i;var y=t[i],m=t[y],g=t[m],v=257*t[d]^16843008*d;r[i]=v<<24|v>>>8,a[i]=v<<16|v>>>16,c[i]=v<<8|v>>>24,h[i]=v,v=16843009*g^65537*m^257*y^16843008*i,l[d]=v<<24|v>>>8,u[d]=v<<16|v>>>16,p[d]=v<<8|v>>>24,f[d]=v,i?(i=y^t[t[t[g^y]]],s^=t[t[s]]):i=s=1}}();var d=[0,1,2,4,8,16,32,64,128,27,54],y=i.AES=e.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var t=this._keyPriorReset=this._key,e=t.words,i=t.sigBytes/4,o=4*((this._nRounds=i+6)+1),r=this._keySchedule=[],a=0;a6&&a%i==4&&(s=n[s>>>24]<<24|n[s>>>16&255]<<16|n[s>>>8&255]<<8|n[255&s]):(s=n[(s=s<<8|s>>>24)>>>24]<<24|n[s>>>16&255]<<16|n[s>>>8&255]<<8|n[255&s],s^=d[a/i|0]<<24),r[a]=r[a-i]^s}for(var c=this._invKeySchedule=[],h=0;h>>24]]^u[n[s>>>16&255]]^p[n[s>>>8&255]]^f[n[255&s]]}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,r,a,c,h,n)},decryptBlock:function(t,e){var i=t[e+1];t[e+1]=t[e+3],t[e+3]=i,this._doCryptBlock(t,e,this._invKeySchedule,l,u,p,f,o),i=t[e+1],t[e+1]=t[e+3],t[e+3]=i},_doCryptBlock:function(t,e,i,n,o,r,a,s){for(var c=this._nRounds,h=t[e]^i[0],l=t[e+1]^i[1],u=t[e+2]^i[2],p=t[e+3]^i[3],f=4,d=1;d>>24]^o[l>>>16&255]^r[u>>>8&255]^a[255&p]^i[f++],m=n[l>>>24]^o[u>>>16&255]^r[p>>>8&255]^a[255&h]^i[f++],g=n[u>>>24]^o[p>>>16&255]^r[h>>>8&255]^a[255&l]^i[f++],v=n[p>>>24]^o[h>>>16&255]^r[l>>>8&255]^a[255&u]^i[f++];h=y,l=m,u=g,p=v}y=(s[h>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[255&p])^i[f++],m=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[p>>>8&255]<<8|s[255&h])^i[f++],g=(s[u>>>24]<<24|s[p>>>16&255]<<16|s[h>>>8&255]<<8|s[255&l])^i[f++],v=(s[p>>>24]<<24|s[h>>>16&255]<<16|s[l>>>8&255]<<8|s[255&u])^i[f++],t[e]=y,t[e+1]=m,t[e+2]=g,t[e+3]=v},keySize:8});t.AES=e._createHelper(y)}(),function(){function t(t,e){var i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<>>5]>>>31-n%32&1}for(var o=this._subKeys=[],r=0;r<16;r++){var a=o[r]=[],s=l[r];for(i=0;i<24;i++)a[i/6|0]|=e[(h[i]-1+s)%28]<<31-i%6,a[4+(i/6|0)]|=e[28+(h[i+24]-1+s)%28]<<31-i%6;for(a[0]=a[0]<<1|a[0]>>>31,i=1;i<7;i++)a[i]=a[i]>>>4*(i-1)+3;a[7]=a[7]<<5|a[7]>>>27}var u=this._invSubKeys=[];for(i=0;i<16;i++)u[i]=o[15-i]},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._subKeys)},decryptBlock:function(t,e){this._doCryptBlock(t,e,this._invSubKeys)},_doCryptBlock:function(i,n,o){this._lBlock=i[n],this._rBlock=i[n+1],t.call(this,4,252645135),t.call(this,16,65535),e.call(this,2,858993459),e.call(this,8,16711935),t.call(this,1,1431655765);for(var r=0;r<16;r++){for(var a=o[r],s=this._lBlock,c=this._rBlock,h=0,l=0;l<8;l++)h|=u[l][((c^a[l])&p[l])>>>0];this._lBlock=c,this._rBlock=s^h}var f=this._lBlock;this._lBlock=this._rBlock,this._rBlock=f,t.call(this,1,1431655765),e.call(this,8,16711935),e.call(this,2,858993459),t.call(this,16,65535),t.call(this,4,252645135),i[n]=this._lBlock,i[n+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});i.DES=r._createHelper(f);var d=a.TripleDES=r.extend({_doReset:function(){var t=this._key.words;this._des1=f.createEncryptor(o.create(t.slice(0,2))),this._des2=f.createEncryptor(o.create(t.slice(2,4))),this._des3=f.createEncryptor(o.create(t.slice(4,6)))},encryptBlock:function(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)},decryptBlock:function(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)},keySize:6,ivSize:2,blockSize:2});i.TripleDES=r._createHelper(d)}(),function(){function t(){for(var t=this._S,e=this._i,i=this._j,n=0,o=0;o<4;o++){i=(i+t[e=(e+1)%256])%256;var r=t[e];t[e]=t[i],t[i]=r,n|=t[(t[e]+t[i])%256]<<24-8*o}return this._i=e,this._j=i,n}var e=s,i=e.lib.StreamCipher,n=e.algo,o=n.RC4=i.extend({_doReset:function(){for(var t=this._key,e=t.words,i=t.sigBytes,n=this._S=[],o=0;o<256;o++)n[o]=o;o=0;for(var r=0;o<256;o++){var a=o%i,s=e[a>>>2]>>>24-a%4*8&255;r=(r+n[o]+s)%256;var c=n[o];n[o]=n[r],n[r]=c}this._i=this._j=0},_doProcessBlock:function(e,i){e[i]^=t.call(this)},keySize:8,ivSize:0});e.RC4=i._createHelper(o);var r=n.RC4Drop=o.extend({cfg:o.cfg.extend({drop:192}),_doReset:function(){o._doReset.call(this);for(var e=this.cfg.drop;e>0;e--)t.call(this)}});e.RC4Drop=i._createHelper(r)}(),s.mode.CTRGladman=function(){function t(t){if(255==(t>>24&255)){var e=t>>16&255,i=t>>8&255,n=255&t;255===e?(e=0,255===i?(i=0,255===n?n=0:++n):++i):++e,t=0,t+=e<<16,t+=i<<8,t+=n}else t+=1<<24;return t}function e(e){return 0===(e[0]=t(e[0]))&&(e[1]=t(e[1])),e}var i=s.lib.BlockCipherMode.extend(),n=i.Encryptor=i.extend({processBlock:function(t,i){var n=this._cipher,o=n.blockSize,r=this._iv,a=this._counter;r&&(a=this._counter=r.slice(0),this._iv=void 0),e(a);var s=a.slice(0);n.encryptBlock(s,0);for(var c=0;c>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,i=0;i<8;i++){var n=t[i]+e[i],o=65535&n,s=n>>>16,c=((o*o>>>17)+o*s>>>15)+s*s,h=((4294901760&n)*n|0)+((65535&n)*n|0);a[i]=c^h}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}var e=s,i=e.lib.StreamCipher,n=e.algo,o=[],r=[],a=[],c=n.Rabbit=i.extend({_doReset:function(){for(var e=this._key.words,i=this.cfg.iv,n=0;n<4;n++)e[n]=16711935&(e[n]<<8|e[n]>>>24)|4278255360&(e[n]<<24|e[n]>>>8);var o=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],r=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];for(this._b=0,n=0;n<4;n++)t.call(this);for(n=0;n<8;n++)r[n]^=o[n+4&7];if(i){var a=i.words,s=a[0],c=a[1],h=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),u=h>>>16|4294901760&l,p=l<<16|65535&h;for(r[0]^=h,r[1]^=u,r[2]^=l,r[3]^=p,r[4]^=h,r[5]^=u,r[6]^=l,r[7]^=p,n=0;n<4;n++)t.call(this)}},_doProcessBlock:function(e,i){var n=this._X;t.call(this),o[0]=n[0]^n[5]>>>16^n[3]<<16,o[1]=n[2]^n[7]>>>16^n[5]<<16,o[2]=n[4]^n[1]>>>16^n[7]<<16,o[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)o[r]=16711935&(o[r]<<8|o[r]>>>24)|4278255360&(o[r]<<24|o[r]>>>8),e[i+r]^=o[r]},blockSize:4,ivSize:2});e.Rabbit=i._createHelper(c)}(),s.mode.CTR=function(){var t=s.lib.BlockCipherMode.extend(),e=t.Encryptor=t.extend({processBlock:function(t,e){var i=this._cipher,n=i.blockSize,o=this._iv,r=this._counter;o&&(r=this._counter=o.slice(0),this._iv=void 0);var a=r.slice(0);i.encryptBlock(a,0),r[n-1]=r[n-1]+1|0;for(var s=0;s>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,i=0;i<8;i++){var n=t[i]+e[i],o=65535&n,s=n>>>16,c=((o*o>>>17)+o*s>>>15)+s*s,h=((4294901760&n)*n|0)+((65535&n)*n|0);a[i]=c^h}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}var e=s,i=e.lib.StreamCipher,n=e.algo,o=[],r=[],a=[],c=n.RabbitLegacy=i.extend({_doReset:function(){var e=this._key.words,i=this.cfg.iv,n=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],o=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];this._b=0;for(var r=0;r<4;r++)t.call(this);for(r=0;r<8;r++)o[r]^=n[r+4&7];if(i){var a=i.words,s=a[0],c=a[1],h=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),u=h>>>16|4294901760&l,p=l<<16|65535&h;for(o[0]^=h,o[1]^=u,o[2]^=l,o[3]^=p,o[4]^=h,o[5]^=u,o[6]^=l,o[7]^=p,r=0;r<4;r++)t.call(this)}},_doProcessBlock:function(e,i){var n=this._X;t.call(this),o[0]=n[0]^n[5]>>>16^n[3]<<16,o[1]=n[2]^n[7]>>>16^n[5]<<16,o[2]=n[4]^n[1]>>>16^n[7]<<16,o[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)o[r]=16711935&(o[r]<<8|o[r]>>>24)|4278255360&(o[r]<<24|o[r]>>>8),e[i+r]^=o[r]},blockSize:4,ivSize:2});e.RabbitLegacy=i._createHelper(c)}(),s.pad.ZeroPadding={pad:function(t,e){var i=4*e;t.clamp(),t.sigBytes+=i-(t.sigBytes%i||i)},unpad:function(t){for(var e=t.words,i=t.sigBytes-1;!(e[i>>>2]>>>24-i%4*8&255);)i--;t.sigBytes=i+1}},s}),cc._RF.pop()},{}],share:[function(t,e,i){"use strict";cc._RF.push(e,"7290caA39xMWZc2phTMKovP","share");var n=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(o,r){function a(t){try{c(n.next(t))}catch(e){r(e)}}function s(t){try{c(n.throw(t))}catch(e){r(e)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,s)}c((n=n.apply(t,e||[])).next())})},o=this&&this.__generator||function(t,e){var i,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return c([t,e])}}function c(r){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(o=2&r[0]?n.return:r[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,r[1])).done)return o;switch(n=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return a.label++,{value:r[1],done:!1};case 5:a.label++,n=r[1],r=[0];continue;case 7:r=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===r[0]||2===r[0])){a=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.audioGameBgm0=null,e.audioButtonClick=null,e.audioWarning=null,e.audioWin=null,e.luodui=null,e}var i;return o(e,t),i=e,e.prototype.ctor=function(){this.mAudioMap={},this.bgMusicVolume=.1,this.effectMusicVolume=1,this.mMusicSwitch=1,this.mEffectSwitch=1},e.prototype.play=function(t,e,i,n){if((!n||this.mMusicSwitch)&&(n||this.mEffectSwitch)){var o=n?this.bgMusicVolume:this.effectMusicVolume;if(cc.sys.isBrowser){t==this.brickSound&&(o=.1),o=1;var r=cc.audioEngine.play(t,e,o);return i&&cc.audioEngine.setFinishCallback(r,function(){i.call(this)}.bind(this)),this.mAudioMap[t]=r,t}return t}},e.prototype.save=function(){},e.prototype.onLoad=function(){null==i._instance?(i._instance=this,cc.game.addPersistRootNode(this.node),this.reward=!1,this.finish=!1,this.rewardCount=0,this.ctor(),this.preload()):this.node.destroy()},e.prototype.preload=function(){cc.sys.platform===cc.sys.WECHAT_GAME&&[this.audioGameBgm0].forEach(function(){})},e.prototype.getAudioMusicSwitch=function(){return this.mMusicSwitch},e.prototype.getAudioEffectSwitch=function(){return this.mEffectSwitch},e.prototype.trunAudioSound=function(t){this.switchMusic(t),this.switchEffect(t)},e.prototype.switchMusic=function(t){this.mMusicSwitch!=(t?1:0)&&(this.mMusicSwitch=1-this.mMusicSwitch),t?this.playMusicGame():this.stopMusic()},e.prototype.switchEffect=function(t){this.mEffectSwitch!=(t?1:0)&&(this.mEffectSwitch=1-this.mEffectSwitch)},e.prototype.onHide=function(){cc.audioEngine.pauseAll()},e.prototype.onShow=function(){cc.audioEngine.resumeAll()},e.prototype.playMusic=function(t,e,i){i=!(void 0!==i&&!i),this.stopMusic(),this.mMusicKey=this.play(t,i,e,!0)},e.prototype.playMusicGame=function(){this.playMusic(this.audioGameBgm0,{},!0)},e.prototype.stopMusic=function(){var t=this.mAudioMap[this.mMusicKey];void 0!==t&&(cc.sys.isBrowser?cc.audioEngine.stop(t):t.stop(),cc.audioEngine.stop(t))},e.prototype.playJump=function(){},e.prototype.playLuo=function(){return this.play(this.luodui,!1,null,this.mEffectSwitch)},e.prototype.playGround=function(){},e.prototype.playPz=function(){},e.prototype.playGameStart=function(){},e.prototype.playGameOver=function(){},e.prototype.playGameResultFailed=function(){},e.prototype.playGameResultSuccess=function(){},e.prototype.playWarning=function(){return this.play(this.audioWarning,!1,null,this.mEffectSwitch)},e.prototype.playBrick=function(){},e.prototype.brickBoom=function(){},e.prototype.playAudioButton=function(){return this.play(this.audioButtonClick,!1,null,this.mEffectSwitch)},e.prototype.playWin=function(){return this.play(this.audioWin,!1,null,this.mEffectSwitch)},e.prototype.playRandomMatch=function(){this.playMusic(this.audioGameBgm0,{},!0)},e.prototype.playMatchFoundSound=function(){this.stopMusic()},r([c(cc.AudioClip)],e.prototype,"audioGameBgm0",void 0),r([c(cc.AudioClip)],e.prototype,"audioButtonClick",void 0),r([c(cc.AudioClip)],e.prototype,"audioWarning",void 0),r([c(cc.AudioClip)],e.prototype,"audioWin",void 0),r([c(cc.AudioClip)],e.prototype,"luodui",void 0),i=r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{}],DynamicAtlasManager:[function(t,e){"use strict";cc._RF.push(e,"5c9b8FZiaNLMrMDs9T3rByf","DynamicAtlasManager"),cc.Class({extends:cc.Component,properties:{},onLoad:function(){cc.dynamicAtlasManager.enabled=!1}}),cc._RF.pop()},{}],GameAppStart:[function(t,e,i){"use strict";cc._RF.push(e,"61d4ccY2ztLMYIh8WvqPPAw","GameAppStart"),Object.defineProperty(i,"__esModule",{value:!0});var n=t("../Config/GameConfig"),o=t("../Crypto/HttpUtil"),r=t("../Music/AudioManager"),a=t("../Notification/Notification"),s=t("../Storage/Storage"),c=t("../Tool/GameTool");window.initMgr=function(){cc.fx||(cc.fx={},console.log("\u521d\u59cb\u5316"),cc.fx.StateInfo={debugMode:!0,networkConnected:!0,networkType:"none",isOnForeground:!0},cc.fx.GameConfig=n.GameConfig,cc.fx.HttpUtil=o.default,cc.fx.GameTool=c.GameTool,cc.fx.AudioManager=r.default,cc.fx.Notifications=a.Notifications,cc.fx.StorageMessage=s.StorageMessage,cc.fx.ShareInfo={queryId:-1},cc.fx.BurialShareType={Default:"default",Invite:"invite",DailyInviteRoomJoin:"invite_join_room",DailyInviteFriend:"invite_friend",DailyInviteGroup:"invate_group",DailyInviteGroupAlive:"invate_alive",DailyInviteGroupReward:"invate_rewared",DailyInviteGroupBox:"invate_box",DailyInviteGroupBall:"invate_ball",MatchResult:"matchResult",MatchFix5:"MatchFix5",MatchFix20:"MatchFix20",MatchFix100:"MatchFix100",MatchFix500:"MatchFix500",NewerRedEnvelope:"newerRedEnvelope",CoinRoomResult:"coinRoomResult",HighRate:"highRate",CoinRoomWinStreak:"coinRoomWinStreak",CoinRoomBankruptcy1:"coinRoomBankruptcy1",CoinRoomBankruptcy2:"coinRoomBankruptcy2",CoinRoomBankruptcy3:"coinRoomBankruptcy3"},cc.fx.ShareWhereReward={Group:"group",Friend:"friend",All:"all"},cc.fx.clickStatEventType={clickStatEventTypeVideoAD:20173201,clickStatEventTypeClickAdVideo:20173202,clickStatEventTypeBannerAD:20173203,clickStatEventTypeUserFrom:99990001,clickStatEventTypeShare:99990002,clickStatEventTypeClickAdBtn:99990007,clickStatEventTypeBannerAD2:67890033,clickStatEventTypeSubmitVersionInfo:9999,clickStatEventTypeClickFirstAd:99990003,clickStatEventTypeClickSecondAd:99990004,clickStatEventTypeWxLoginStart:10001,clickStatEventTypeWxLoginSuccess:10002,clickStatEventTypeWxLoginFailed:10003,clickStatEventTypeAuthorizationStart:10003,clickStatEventTypeAuthorizationSuccess:10004,clickStatEventTypeAuthorizationFailed:10005,clickStatEventTypeLoginSDKStart:10007,clickStatEventTypeLoginSDKSuccess:10008,clickStatEventTypeLoginSDKFailed:10009,clickStatEventTypeTCP_Start:10009,clickStatEventTypeTCP_Success:10010,clickStatEventTypeTCP_Failed:10011})},cc._RF.pop()},{"../Config/GameConfig":"GameConfig","../Crypto/HttpUtil":"HttpUtil","../Music/AudioManager":"AudioManager","../Notification/Notification":"Notification","../Storage/Storage":"Storage","../Tool/GameTool":"GameTool"}],GameConfig:[function(t,e,i){"use strict";cc._RF.push(e,"c5692vnhwNF5J9nI7VNKQNW","GameConfig");var n=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0}),i.GameConfig=void 0;var o=t("../Share/share"),r=cc._decorator,a=r.ccclass,s=(r.property,function(){function t(){}var e;return e=t,Object.defineProperty(t,"Instance",{get:function(){return null==this._instance&&(this._instance=new e),this._instance},enumerable:!1,configurable:!0}),t.getKey=function(t){var e=new RegExp("(^|&)"+t+"=([^&]*)(&|$)","i"),i=window.location.search.substr(1).match(e);return null!=i?unescape(i[2]):""},t.init=function(){this.GM_INFO_init(),this.CLICK_init(),this.LEVEL_INFO_init();var t=this;cc.resources.load("Json/LEVEL_INFO",function(e,i){if(!e){var n=i.json;t.LEVEL_INFO=n.data}}),t.GAME_DATA=[]},t.GM_INFO_init=function(){this.GM_INFO={mean_Time:0,total:0,currSeed:203213,gameId:"100009",userId:0,scode:"",guide:!0,url:"https://api.sparkus.cn",success:!1,matchId:null,custom:0,gap:[]},this.setCode(this.getKey("scode")),o.WeChat.setShare(location.href),this.Authentication()},t.CLICK_init=function(){this.CLICK_DATA={type:1,success:!1,round:0,totalSunCount:0,movedSunCount:0,sunSpeed:0,overlapSunCount:0,colorList:[],duration:0,difficultyLevel:0,sunList:[],stepTimeList:[],remainder:120,gap:[]}},t.LEVEL_INFO_init=function(){this.LEVEL_INFO=[{number:3,moveNumber:0,moveSpeed:0,maxDistance:200,maxMove:1200,repeat:0},{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}]},t.Authentication=function(){cc.fx.GameTool.Authentication()},t.setCode=function(t){this.GM_INFO.scode=t},t._instance=null,e=n([a("GameConfig")],t)}());i.GameConfig=s,cc._RF.pop()},{"../Share/share":"share"}],GameManager:[function(t,e,i){"use strict";cc._RF.push(e,"b0432BA295DjIOcuitdGKO1","GameManager");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ball=null,e.qiu1=null,e.qiu2=null,e.qiu3=null,e.linePrefab=null,e.hit=null,e.bg1=null,e.bg2=null,e.time=null,e.begin=!1,e.fuhuo=!1,e.over=!1,e.show=!1,e.levelLabel=null,e}return o(e,t),e.prototype.onLoad=function(){},e.prototype.start=function(){this.fit(),this.init()},e.prototype.init=function(){this.node.getChildByName("GameOver").zIndex=100,this.node.getChildByName("GameOver").active=!1,this.ball.zIndex=100,this.bg1=this.node.getChildByName("bg1"),this.bg2=this.node.getChildByName("bg2"),this.time=this.node.getChildByName("Top").getChildByName("time").getComponent(cc.Label),this.node.getChildByName("showBtn").active=!1,this.begin=!1,this.over=!1,this.fuhuo=!0,this.pause=!0,this.show=!1,this.round=0,this.level=2,this.countTime=60,0!=cc.fx.GameConfig.GM_INFO.custom&&(this.level=cc.fx.GameConfig.GM_INFO.custom,cc.fx.GameConfig.GM_INFO.custom+=1,this.countTime=12e6),this.timeCount=.1,this.clickNow=0,this.clickCount=0,this.timeStart=0,this.repeat=-1,this.numberRepeat=-1,this.route_Array=[],this.moveArray=[],this.now_Array=[],this.ball_Array=[],this.Pos_Array=[],this.time_Array=[],this.color_Array=[],cc.fx.GameConfig.GAME_DATA=[],cc.fx.GameConfig.GM_INFO.success=!1,this.startTime=0,this.overTime=0,this.winTime=0,cc.fx.GameConfig.GM_INFO.total=0,cc.fx.GameConfig.GM_INFO.mean_Time=0,this.schedule(this.updateCountDownTime,1),this.startGame()},e.prototype.fit=function(){this.fitTop=450,this.fitBot=-600,this.setFit()||(this.fitTop=600,this.fitBot=-700)},e.prototype.getSetScreenResolutionFlag=function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},e.prototype.setFit=function(){return this.getSetScreenResolutionFlag()},e.prototype.backScene=function(){cc.director.loadScene("LoadScene")},e.prototype.reStart=function(t){this.node.getChildByName("showBtn").active=!1,this.destroyLine(),this.timeCount=.1,this.clickNow=0,this.timeStart=0,this.repeat=-1,this.numberRepeat=-1,this.begin=!1,this.route_Array=[],this.now_Array=[],this.ball_Array=[],this.Pos_Array=[],this.moveArray=[],this.time_Array=[],this.color_Array=[],0==t?this.bgMove(1):1==t?this.startGame():2==t&&this.bgMove(-1)},e.prototype.getTime=function(){return(new Date).getTime()},e.prototype.passLevel=function(){var t=this;if(this.destroyLine(),0==this.over&&this.countTime>=0){for(var e=[],i=0,n=this.ball_Array[0],o=1;o=0)for(var i=this.ball_Array[0],n=function(n){cc.tween(o.ball_Array[n]).to(2,{x:i.x,y:i.y}).call(function(){e.ball_Array[n].active=!1,n==e.ball_Array.length-1&&(e.ball.opacity=255,e.ball.position=cc.v3(i.x,i.y,0),e.clearSun(),e.reStart(t))}).start()},o=this,r=1;r0&&this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),.2),this.clickNow+=1,cc.fx.GameConfig.GM_INFO.gap.push(t.distance),this.ball_Array[this.clickNow-1]&&(this.ball_Array[this.clickNow-1].getChildByName("guang").active=!1),this.clickNow==this.now_Array.length){this.pause=!0,cc.fx.GameConfig.GM_INFO.total+=this.clickNow,this.overTime=cc.fx.GameTool.getTime(),this.startTime>0&&this.overTime>0&&(cc.fx.GameConfig.GM_INFO.mean_Time+=this.overTime-this.startTime);var n=parseInt((this.overTime-this.startTime)/100+"");this.startTime=0,this.overTime=0,this.level<4&&this.level>1||this.level;var o=this.node.getChildByName("Win");o.active=!0,o.setScale(0),cc.fx.AudioManager._instance.playWin(),this.round+=1;var r=[];if(this.moveArray.length>0)for(var a=0;a50&&(cc.fx.GameConfig.CLICK_DATA.duration=50),this.setData(),cc.tween(o).delay(.4).to(.01,{scale:2.5}).to(.35,{scale:1}).delay(.4).call(function(){o.active=!1,e.destroyLine(),0==e.over&&e.countTime>=0&&(e.level>=15?(cc.fx.GameConfig.GM_INFO.success=!0,e.level+=0,e.fuhuo=!0,e.passLevel()):(e.level+=1,e.fuhuo=!0,e.passLevel()))}).start()}}else this.setLoss(t)}},e.prototype.setLoss=function(t){cc.fx.AudioManager._instance.playWarning(),this.begin=!1,this.overTime=cc.fx.GameTool.getTime(),this.startTime>0&&this.overTime>0&&(cc.fx.GameConfig.GM_INFO.mean_Time+=this.overTime-this.startTime);var e=parseInt((this.overTime-this.startTime)/100+"");e>58&&(e=58),this.startTime=0,this.overTime=0,this.level<4&&this.level>1||this.level,this.round+=1;var i=[];if(this.moveArray.length>0)for(var n=0;n50&&(cc.fx.GameConfig.CLICK_DATA.duration=50),this.setData(),1==this.fuhuo?(this.fuhuo=!1,this.loseLevel(1)):this.level>2?(this.level-=1,this.fuhuo=!0,this.loseLevel(2)):this.loseLevel(1);var o=this.node.getChildByName("Over");cc.tween(o).to(.25,{opacity:255}).delay(.1).to(.2,{opacity:0}).delay(.1).to(.15,{opacity:255}).delay(.1).to(.1,{opacity:0}).start()},e.prototype.startGame=function(){0==this.over&&this.countTime>0&&(this.pause=!0,this.createSun(),this.begin=!1,cc.tween(this.ball).to(.5,{opacity:255,scale:1.3}).start())},e.prototype.runGame=function(){for(var t=this,e=-650,i=function(i){e=1e3*n.now_Array[i].time+e,setTimeout(function(){if(0==t.over){var e=t.now_Array[i].timeCount;e>.5&&(e=.5),0!=i&&t.ball&&t.now_Array[i]&&t.createLine(cc.v2(t.ball.x,t.ball.y),cc.v2(t.now_Array[i].x,t.now_Array[i].y),t.now_Array[i].time-e),cc.tween(t.ball).to(t.now_Array[i].time-e,{x:t.now_Array[i].x,y:t.now_Array[i].y}).to(.1,{scale:1}).call(function(){t.createBall(i,t.now_Array[i].color,t.now_Array[i].speed,t.now_Array[i].repeat),i==t.now_Array.length-1&&(t.ball.opacity=0,setTimeout(function(){t.destroyLine(),t.beginGame(),cc.fx.GameConfig.LEVEL_INFO[t.level-1].moveNumber<1?t.pause=!1:t.moveAction()},150))}).start()}},e)},n=this,o=0;o=2&&e.moveSpeed,1==e.repeat){this.repeat=parseInt(Math.random()*(e.number-1)+1+"");var i=0;this.repeat>4?(this.numberRepeat=parseInt(4*Math.random()+""),this.repeat==e.number-1&&(this.numberRepeat=this.repeat-parseInt(3*Math.random()+2+"")),i=this.Pos_Array[this.numberRepeat],this.Pos_Array[this.repeat]=i):(0==this.repeat&&(this.repeat=1),e.number-1-this.repeat==2?(this.numberRepeat=e.number-1,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat==1?(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat==0?(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]):e.number-1-this.repeat>2?(this.numberRepeat=parseInt(Math.random()*(e.number-this.repeat-2)+"")+this.repeat+2,i=this.Pos_Array[this.numberRepeat]):(this.numberRepeat=this.repeat-2,i=this.Pos_Array[this.numberRepeat]),this.Pos_Array[this.repeat]=i)}if(e.moveNumber>0){for(var n=cc.v2(0,0),o=0;o=0;s--)0==this.moveArray[s]&&(this.moveArray[s]=1,this.moveArray[0]=0,s=-1);for(var c=0;c=0;h--)h!=c&&0==this.moveArray[h]&&h!=this.repeat&&h!=this.numberRepeat&&(this.moveArray[h]=1,this.moveArray[c]=0,h=-1);for(var l=function(e){1==u.moveArray[e]&&setTimeout(function(){n=t.getPos2(!0,e),t.Pos_Array[e]=n},300*(a+=1))},u=this,p=0;p=2&&(n=7-i.moveSpeed/2),i.moveNumber>0){for(var o=0;o=0;r--)r!=o&&0==this.moveArray[r]&&r!=this.repeat&&r!=this.numberRepeat&&(this.moveArray[r]=1,this.moveArray[o]=0,r=-1);for(var a=0,s=0;s0)for(var r=0;r0)for(var r=0;r160&&(1==o?(cc.fx.GameConfig,r=c800&&(c=800),s=c/800*.6):2==o?(c>1200&&(c=1200),s=c/1200*1):3==o&&(c>1200&&(c=1200),s=c/1200*1.5),s},e.prototype.getDistance2=function(t,e,i,n,o){var r=!1,a=i-t,s=n-e,c=Math.sqrt(a*a+s*s);return c>160&&(r=1!=o||c0&&0==this.pause){if(this.countTime-=1,this.time.string=cc.fx.GameTool.getTimeMargin(this.countTime),this.countTime<5){cc.tween(this.time.node).to(.25,{scale:1.5,color:cc.color(255,0,0)}).to(.25,{scale:1,color:cc.color(255,255,255)}).start();var t=this.node.getChildByName("Over");cc.tween(t).to(.2,{opacity:255}).delay(.1).to(.2,{opacity:0}).start()}if(this.countTime<=0){this.begin=!1,this.over=!0,this.unschedule(this.updateCountDownTime),this.setLoss({distance:0});var e=0;this.clickCount>0&&(e=parseInt(cc.fx.GameConfig.GM_INFO.mean_Time/this.clickCount+"")),cc.fx.GameConfig.GM_INFO.mean_Time=parseInt(e/100+""),cc.fx.GameConfig.GM_INFO.mean_Time=cc.fx.GameConfig.GM_INFO.mean_Time/10,e>1e4&&(e=100*(10*Math.random()+5)),this.gameOver(e)}}},e.prototype.setData=function(){cc.fx.GameTool.setGameData()},e.prototype.gameOver=function(t){cc.fx.GameTool.setRank(t),this.node.getChildByName("GameOver").active=!0,this.node.getChildByName("GameOver").opacity=0,cc.tween(this.node.getChildByName("GameOver")).to(.4,{opacity:255}).delay(2).to(.4,{opacity:50}).call(function(){cc.director.loadScene("OverScene")}).start()},e.prototype.showNumber=function(){0==this.show?this.show=!0:1==this.show&&(this.show=!1);for(var t=0;t=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.count=null,e.time=null,e.selfNode=null,e.one=null,e.two=null,e.three=null,e.four=null,e.five=null,e}return o(e,t),e.prototype.start=function(){this.count.string=cc.fx.GameConfig.GM_INFO.total+"",cc.fx.GameConfig.GM_INFO.mean_Time>10&&(cc.fx.GameConfig.GM_INFO.mean_Time=(parseInt(10*Math.random()+"")+5)/10),this.time.string=cc.fx.GameConfig.GM_INFO.mean_Time+"s",this.init()},e.prototype.init=function(){this.listData=[],this.selfData=null,this.one.active=!1,this.two.active=!1,this.three.active=!1,this.four.active=!1,this.five.active=!1;var t=window.location.href;this.containsTrain(t)?(this.node.getChildByName("again").active=!1,this.node.getChildByName("back").active=!1,this.node.getChildByName("finishi").active=!0):(this.node.getChildByName("again").active=!0,this.node.getChildByName("back").active=!0,this.node.getChildByName("finishi").active=!1),this.getRank()},e.prototype.jumpFinishi=function(){var t="https://train.sparkus.cn/poster/game/"+cc.fx.GameConfig.GM_INFO.scode+"?suc=1";window.location.href=t},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},e.prototype.again=function(){cc.director.loadScene("GameScene")},e.prototype.containsTrain=function(t){return/from=train/i.test(t)},e.prototype.getRank=function(){var t=this;cc.fx.GameTool.getRank({length:5},function(e){return t.getRankData(e)})},e.prototype.getRankData=function(t){if(t){cc.fx.GameTool.getRankData(t,this,4),cc.fx.GameTool.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"),this.selfData.pic);for(var e=0;e<=4;e++)this.setRank(e,this.listData[e])}},e.prototype.setRank=function(t,e){if(e){var i=null;0==t?i=this.one:1==t?i=this.two:2==t?i=this.three:3==t?i=this.four:4==t&&(i=this.five),i&&(i.active=!0,e.nickName=cc.fx.GameTool.subName(e.nickName,4),i.getChildByName("name").getComponent(cc.Label).string=e.nickName,i.getChildByName("total").getComponent(cc.Label).string=e.totalSunCount,cc.fx.GameTool.setPic(i.getChildByName("pic").getChildByName("icon"),e.pic))}},r([c(cc.Label)],e.prototype,"count",void 0),r([c(cc.Label)],e.prototype,"time",void 0),r([c(cc.Node)],e.prototype,"selfNode",void 0),r([c(cc.Node)],e.prototype,"one",void 0),r([c(cc.Node)],e.prototype,"two",void 0),r([c(cc.Node)],e.prototype,"three",void 0),r([c(cc.Node)],e.prototype,"four",void 0),r([c(cc.Node)],e.prototype,"five",void 0),r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{}],GameTool:[function(t,e,i){"use strict";cc._RF.push(e,"43bfcJ6/25Fs4fHUE0PeBOX","GameTool"),Object.defineProperty(i,"__esModule",{value:!0}),i.GameTool=void 0;var n={_startTime:0,_endTime:0,_totalTime:0,Authentication:function(){var t="user_"+cc.fx.GameConfig.GM_INFO.gameId,e=null;if(localStorage.getItem(t)&&(e=JSON.parse(localStorage.getItem(t))),"undifend"==e||null==e||""==e){var i="https://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+encodeURIComponent(location.href);console.log("\u94fe\u63a5\u6ca1ID\u51c6\u5907\u8df3\u8f6c",i),window.location.href=i}else this.isNumber(e.userId)?(cc.fx.StorageMessage.setStorage(t,e),cc.fx.GameConfig.GM_INFO.userId=parseInt(e.userId)):(i="https://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+encodeURIComponent(location.href),console.log("\u94fe\u63a5\u4e0d\u5408\u6cd5",i),window.location.href=i)},isNumber:function(t){var e=!1;return(e="number"==typeof t)&&t<2e5&&(e=!1),e},setGameData:function(){cc.fx.GameConfig.GAME_DATA=[],cc.fx.GameConfig.GAME_DATA.push(cc.fx.GameConfig.CLICK_DATA);var t=cc.fx.GameConfig.CLICK_DATA.round;cc.fx.GameConfig.CLICK_init();var e=cc.fx.GameConfig.GAME_DATA,i=this.getMatchId(t),n={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,scode:cc.fx.GameConfig.GM_INFO.scode,matchId:i,data:e};console.log("\u4e0a\u4f20\u6570\u636e:",n),cc.fx.HttpUtil.uploadUserLogData(n,function(){})},setRank:function(t){var e={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,type:1,reactionTime:t,totalSunCount:cc.fx.GameConfig.GM_INFO.total,success:cc.fx.GameConfig.GM_INFO.success};cc.fx.HttpUtil.rankData(1,function(){},e)},getRank:function(t,e){var i=t.length,n={gameId:cc.fx.GameConfig.GM_INFO.gameId,userId:cc.fx.GameConfig.GM_INFO.userId,page:1,pageSize:i};cc.fx.HttpUtil.rankData(2,function(t){e(t)},n)},getMatchId:function(t){var e=cc.sys.localStorage.getItem("matchId"),i=e;if("undifend"==e||null==e)e=this.setMatchId();else if(1==this.containsNanana(e))e=this.setMatchId();else{var n=parseInt(i.substring(10,i.length));1==t&&(n+=1,e=i.slice(0,10)+n+"",this.containsNanana(e)&&(e=this.setMatchId()),cc.fx.GameConfig.GM_INFO.matchId=e,cc.sys.localStorage.setItem("matchId",e))}return 1==this.containsNanana(e)&&(e=this.setMatchId()),e},containsNanana:function(t){return/na/i.test(t)},setMatchId:function(){for(var t="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",e=[],i=0;i<10;i++){var n=Math.floor(Math.random()*t.length),o=t.charAt(n);e.push(o)}var r=e.join("")+1+"";return cc.sys.localStorage.setItem("matchNumber",1),this.containsNanana(r)&&(r=this.setMatchId()),cc.sys.localStorage.setItem("matchId",r),cc.fx.GameConfig.GM_INFO.matchId=r,r},subName:function(t,e){return t.length>e&&(t=t.substring(0,e)+"..."),t},setPic:function(t,e){t.active=!1;var i=e;setTimeout(function(){fetch(i).then(function(t){return t.headers.get("Content-Length")}).then(function(e){"5093"==e&&(t.active=!0)}).catch(function(){})},100),cc.assetManager.loadRemote(i,{ext:".png"},function(e,i){i&&(t.active=!0,t.getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i))})},getRankData:function(t,e,i){e.listData=t.data.list,e.selfData=t.data.info;var n=[],o=!1;cc.fx.GameTool.setPic(e.selfNode.getChildByName("pic").getChildByName("icon"),e.selfData.pic);for(var r=0;r<=e.listData.length-1;r++)n.push({rank:r+1,name:e.listData[r].nickName,total:e.listData[r].totalSunCount,pic:e.listData[r].pic}),cc.fx.GameConfig.GM_INFO.userId==e.listData[r].userId&&(o=!0,e.rankNumber=r,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string=r+1+""),r==e.listData.length-1&&0==o&&(e.rankNumber=r,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string="99+");var a=cc.fx.GameTool.subName(e.selfData.nickName,i);switch(e.selfNode.getChildByName("nameLab").getComponent(cc.Label).string=a,e.selfNode.getChildByName("totalLab").getComponent(cc.Label).string=e.selfData.totalSunCount,e.selfNode.getChildByName("rankLab").getComponent(cc.Label).string){case"1":e.selfNode.getChildByName("rank").getChildByName("one").active=!0;break;case"2":e.selfNode.getChildByName("rank").getChildByName("two").active=!0;break;case"3":e.selfNode.getChildByName("rank").getChildByName("three").active=!0}6==i&&(e.rankList.setData(n),e.selfNode.opacity=255,0==e.selfData.totalSunCount&&(e.selfNode.opacity=0))},getSetScreenResolutionFlag:function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},setFit:function(){return cc.fx.GameTool.getSetScreenResolutionFlag()},getGameInfo:function(){return!1},setGameInfo:function(){},getTimeMargin:function(t){var e,i;e=t,i=parseInt(e/3600+"");var n=parseInt((e-3600*i)/60+""),o=""+n;n<10&&(o="0"+n);var r=e-3600*i-60*n,a=r+"";return r<10&&(a="0"+r),o+":"+a},getTime:function(){return(new Date).getTime()},pushLister:function(){},removeAllLister:function(){}};i.GameTool=n,cc._RF.pop()},{}],GuideManager:[function(t,e,i){"use strict";cc._RF.push(e,"3fd2fh6vHNJeISUizW09xat","GuideManager");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=a.property,h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.dialog=null,e.ball=null,e.qiu1=null,e.linePrefab=null,e}return o(e,t),e.prototype.start=function(){cc.fx.GameConfig.GM_INFO.custom=0,this.init(),this.startGuide(0)},e.prototype.init=function(){this.custom=1,this.ball.zIndex=100,this.Pos_Array=[],this.ball_Array=[],this.begin=!1,this.clickNow=0,this.tip=null},e.prototype.startGuide=function(t){var e=this,i="tip"+this.custom;0!=t?cc.tween(this.node).to(.5,{opacity:255}).call(function(){e.custom+=1,0!=t&&(e.custom=2),2==e.custom?e.createSun(!0):3==e.custom?e.createSun(!1):4==e.custom?e.begin=!0:5==e.custom&&cc.director.loadScene("GameScene")}).start():(this.tip=this.dialog.getChildByName(i),this.tip.active=!0,this.tip.opacity=0,cc.tween(this.tip).to(.5,{opacity:255}).start())},e.prototype.beginClick=function(){for(var t=0;t800&&(a=800),a/800*.8},e.prototype.passLevel=function(){var t=this,e=this.node.getChildByName("Win");e.active=!0,e.setScale(0),cc.tween(e).delay(.4).to(.01,{scale:2.5}).to(.35,{scale:1}).delay(.6).call(function(){e.active=!1,setTimeout(function(){t.destroyLine();for(var e=[],i=0,n=t.ball_Array[0],o=1;o0&&this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),.2),this.clickNow+=1,cc.fx.GameConfig.GM_INFO.total+=1,setTimeout(function(){e.ball_Array[e.clickNow-1]&&(e.ball_Array[e.clickNow-1].getChildByName("guang").active=!1)},200),3==this.clickNow&&this.passLevel()):this.loseLevel())},e.prototype.loseLevel=function(){var t=this;this.begin=!1,cc.fx.AudioManager._instance.playWarning(),this.destroyLine();for(var e=this.ball_Array[0],i=function(i){cc.tween(n.ball_Array[i]).to(.6,{x:e.x,y:e.y}).call(function(){t.ball_Array[i].active=!1,i==t.ball_Array.length-1&&(t.ball.opacity=0,t.ball.position=cc.v3(e.x,e.y,0),t.clearSun(),t.custom=1,t.startGuide(1))}).start()},n=this,o=1;o=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a},s=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(o,r){function a(t){try{c(n.next(t))}catch(e){r(e)}}function s(t){try{c(n.throw(t))}catch(e){r(e)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,s)}c((n=n.apply(t,e||[])).next())})},c=this&&this.__generator||function(t,e){var i,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return c([t,e])}}function c(r){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(o=2&r[0]?n.return:r[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,r[1])).done)return o;switch(n=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return a.label++,{value:r[1],done:!1};case 5:a.label++,n=r[1],r=[0];continue;case 7:r=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===r[0]||2===r[0])){a=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]0?(n-=1,setTimeout(function(){return s(l,void 0,void 0,function(){return c(this,function(o){switch(o.label){case 0:return[4,this.fetchData(t,e,i,n)];case 1:return a=o.sent(),[2]}})})},5e3*(3-n)),[3,5]):[2,null];case 5:return[2]}})})},e.fetchWithTimeout=function(t,e){return void 0===e&&(e={}),s(this,void 0,void 0,function(){var i,n,o;return c(this,function(a){switch(a.label){case 0:return i=new AbortController,n=setTimeout(function(){return i.abort()},5e3),[4,fetch(t,r(r({},e),{signal:i.signal}))];case 1:return o=a.sent(),clearTimeout(n),[2,o]}})})},e.apiSign=function(t,e){void 0===e&&(e={});var i=t.trim();-1===i.indexOf("?")&&(i+="?");var n="sign="+m(i,y(e)),o=d.encryptByDES(n,f.secretKey);return o=encodeURIComponent(o),g(i)+"&_p="+o},i=a([l],e)}(cc.Component);i.default=p;var f={gameId:"100009",secretKey:"CMNhOzBA",EK:"hui231%1"},d=new(function(){function t(){this.keyHex=this.getHetKey()}return t.prototype.getHetKey=function(){return u.enc.Utf8.parse(f.EK)},t.prototype.encryptByDES=function(t,e){if(!t)return t;var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.DES.encrypt(t,i,{mode:u.mode.ECB,padding:u.pad.Pkcs7}).toString()},t.prototype.decryptByDES=function(t,e){var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.DES.decrypt({ciphertext:u.enc.Base64.parse(t)},i,{mode:u.mode.ECB,padding:u.pad.Pkcs7}).toString(u.enc.Utf8)},t.prototype.hmacSha256=function(t,e){var i=e?u.enc.Utf8.parse(e):this.keyHex;return u.HmacSHA256(t,i).toString()},t.prototype.verifyHmacSha256=function(t,e){return u.HmacSHA256(t,this.keyHex).toString()===e},t.prototype.encryptCBC=function(t){if(!t)return t;var e=u.enc.Utf8.parse(t);return u.AES.encrypt(e,this.keyHex,{iv:this.keyHex,mode:u.mode.CBC,padding:u.pad.ZeroPadding}).toString()},t.prototype.decryptCBC=function(t){if(!t)return t;var e=u.enc.Hex.parse(t),i=u.enc.Base64.stringify(e);return u.AES.decrypt(i,this.keyHex,{iv:this.keyHex,mode:u.mode.CBC,padding:u.pad.ZeroPadding}).toString(u.enc.Utf8).toString()},t}());function y(t){for(var e,i=Object.keys(t).sort(),n={},o=0;o=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=null,e.itemIndex=0,e}return o(e,t),e.prototype.dataChanged=function(){var t=cc.fx.GameTool.subName(this.data.name,6);this.node.getChildByName("rankLab").getComponent(cc.Label).string=this.data.rank+"",this.node.getChildByName("nameLab").getComponent(cc.Label).string=t+"",this.node.getChildByName("totalLab").getComponent(cc.Label).string=this.data.total+"",this.node.getChildByName("rank").getChildByName("one").active=!1,this.node.getChildByName("rank").getChildByName("two").active=!1,this.node.getChildByName("rank").getChildByName("three").active=!1,1==this.data.rank?(this.node.getChildByName("rank").getChildByName("one").active=!0,this.node.getChildByName("rankLab").active=!1):2==this.data.rank?(this.node.getChildByName("rank").getChildByName("two").active=!0,this.node.getChildByName("rankLab").active=!1):3==this.data.rank?(this.node.getChildByName("rank").getChildByName("three").active=!0,this.node.getChildByName("rankLab").active=!1):this.node.getChildByName("rankLab").active=!0,this.setPic()},e.prototype.setPic=function(){var t=this;this.node.getChildByName("pic").getChildByName("icon").active=!1,this.node.getChildByName("pic").getChildByName("pic").active=!1;var e=this.data.pic;fetch(e).then(function(t){return t.headers.get("Content-Length")}).then(function(e){"5093"==e&&(t.node.getChildByName("pic").getChildByName("icon").active=!0)}).catch(function(){}),cc.assetManager.loadRemote(e,{ext:".png"},function(e,i){i?(t.node.getChildByName("pic").getChildByName("pic").active=!0,t.node.getChildByName("pic").getChildByName("pic").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i)):console.log(e,i)})},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],List:[function(t,e,i){"use strict";cc._RF.push(e,"d5421HgLShFKIjj5f18m1mi","List");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0}),i.StartAxisType=i.ListType=void 0;var a,s,c=t("./ItemRender"),h=cc._decorator,l=h.ccclass,u=h.property;(function(t){t[t.Horizontal=1]="Horizontal",t[t.Vertical=2]="Vertical",t[t.Grid=3]="Grid"})(a=i.ListType||(i.ListType={})),function(t){t[t.Horizontal=1]="Horizontal",t[t.Vertical=2]="Vertical"}(s=i.StartAxisType||(i.StartAxisType={}));var p=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.itemRender=null,e.type=a.Vertical,e.startAxis=s.Horizontal,e.spaceX=0,e.spaceY=0,e.padding_top=0,e.padding_buttom=0,e.padding_left=0,e._padding=0,e.padding_right=0,e.scrollView=null,e.content=null,e.itemDataList=[],e.spawnCount=0,e.itemList=[],e.itemHeight=0,e.itemWidth=0,e.itemPool=[],e.halfScrollView=0,e.lastContentPosX=0,e.lastContentPosY=0,e.gridRow=0,e.gridCol=0,e.updateTimer=0,e.updateInterval=.1,e.bScrolling=!1,e.updateFun=function(){},e}return o(e,t),e.prototype.onLoad=function(){this.itemHeight=this.itemRender.height,this.itemWidth=this.itemRender.width,this.scrollView=this.node.getComponent(cc.ScrollView),this.content=this.scrollView.content,this.content.anchorX=0,this.content.anchorY=1,this.content.removeAllChildren(),this.scrollView.node.on("scrolling",this.onScrolling,this)},e.prototype.setData=function(t){this.itemDataList=t.slice(),this.updateContent()},e.prototype.countListParam=function(){var t=this.itemDataList.length;this.type==a.Vertical?(this.scrollView.horizontal=!1,this.scrollView.vertical=!0,this.content.width=this.content.parent.width,this.content.height=t*this.itemHeight+(t-1)*this.spaceY+this.padding_top+this.padding_buttom,this.spawnCount=Math.round(this.scrollView.node.height/(this.itemHeight+this.spaceY))+2,this.halfScrollView=this.scrollView.node.height/2+this.itemHeight/2+this.spaceY,this.updateFun=this.updateV):this.type==a.Horizontal?(this.scrollView.horizontal=!0,this.scrollView.vertical=!1,this.content.width=t*this.itemWidth+(t-1)*this.spaceX+this.padding_left+this.padding_right,this.content.height=this.content.parent.height,this.spawnCount=Math.round(this.scrollView.node.width/(this.itemWidth+this.spaceX))+2,this.halfScrollView=this.scrollView.node.width/2+this.itemWidth/2+this.spaceX,this.updateFun=this.udpateH):this.type==a.Grid&&(this.startAxis==s.Vertical?(this.scrollView.horizontal=!1,this.scrollView.vertical=!0,this.content.width=this.content.parent.width,this.padding_left+this.padding_right+this.itemWidth+this.spaceX>this.content.width&&(this.padding_left=0,this.padding_right=0,console.error("padding_left\u6216padding_right\u8fc7\u5927")),this.gridCol=Math.floor((this.content.width-this.padding_left-this.padding_right)/(this.itemWidth+this.spaceX)),this.gridRow=Math.ceil(t/this.gridCol),this.content.height=this.gridRow*this.itemHeight+(this.gridRow-1)*this.spaceY+this.padding_top+this.padding_buttom,this.spawnCount=Math.round(this.scrollView.node.height/(this.itemHeight+this.spaceY))*this.gridCol+2*this.gridCol,this.halfScrollView=this.scrollView.node.height/2+this.itemHeight/2+this.spaceY,this.updateFun=this.updateGrid_V):this.startAxis==s.Horizontal&&(this.scrollView.horizontal=!0,this.scrollView.vertical=!1,this.content.height=this.content.parent.height,this.padding_top+this.padding_buttom+this.itemHeight+this.spaceY>this.content.height&&(this.padding_top=0,this.padding_buttom=0,console.error("padding_top\u6216padding_buttom\u8fc7\u5927")),this.gridRow=Math.floor((this.content.height-this.padding_top-this.padding_buttom)/(this.itemHeight+this.spaceY)),this.gridCol=Math.ceil(t/this.gridRow),this.content.width=this.gridCol*this.itemWidth+(this.gridCol-1)*this.spaceX+this.padding_left+this.padding_right,this.spawnCount=Math.round(this.scrollView.node.width/(this.itemWidth+this.spaceX))*this.gridRow+2*this.gridRow,this.halfScrollView=this.scrollView.node.width/2+this.itemWidth/2+this.spaceX,this.updateFun=this.updateGrid_H))},e.prototype.createList=function(t,e){this.itemDataList.length>this.spawnCount&&t+this.spawnCount-1>=this.itemDataList.length?(t=this.itemDataList.length-this.spawnCount,e=this.scrollView.getMaxScrollOffset()):this.itemDataList.length<=this.spawnCount&&(t=0);for(var i=0;ithis.itemDataList.length-t&&((n=this.itemList.pop()).removeFromParent(),this.itemPool.push(n))}this.scrollView.scrollToOffset(e)},e.prototype.getItem=function(){return 0==this.itemPool.length?cc.instantiate(this.itemRender):this.itemPool.pop()},e.prototype.update=function(t){0!=this.bScrolling&&(this.updateTimer+=t,this.updateTimerthis.lastContentPosY,o=(this.itemHeight+this.spaceY)*e.length,r=0;ri&&t.y-o-this.padding_buttom>-this.content.height){var s=(h=t.getComponent(c.default)).itemIndex+e.length;h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.y=t.y-o}}else if(a.y<-i&&t.y+o+this.padding_top<0){var h;s=(h=t.getComponent(c.default)).itemIndex-e.length,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.y=t.y+o}}this.lastContentPosY=this.scrollView.content.y},e.prototype.udpateH=function(){for(var t,e=this.itemList,i=this.halfScrollView,n=this.scrollView.content.x>this.lastContentPosX,o=(this.itemWidth+this.spaceX)*e.length,r=0;ri&&t.x-o-this.padding_left>0){var s=(h=t.getComponent(c.default)).itemIndex-e.length;h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.x=t.x-o}}else if(a.x<-i&&t.x+o+this.padding_rightthis.lastContentPosY,o=(this.itemHeight+this.spaceY)*(this.spawnCount/this.gridCol),r=0;ri&&t.y-o-this.padding_buttom>-this.content.height){var s=(h=t.getComponent(c.default)).itemIndex+this.spawnCount/this.gridCol*this.gridCol;null!=this.itemDataList[s]?(t.y=t.y-o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.y=t.y-o,h.itemIndex=s,t.opacity=0)}}else if(a.y<-i&&t.y+o+this.padding_top<0){var h;s=(h=t.getComponent(c.default)).itemIndex-this.spawnCount/this.gridCol*this.gridCol,null!=this.itemDataList[s]?(t.y=t.y+o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.y=t.y+o,h.itemIndex=s,t.opacity=0)}}this.lastContentPosY=this.scrollView.content.y},e.prototype.updateGrid_H=function(){for(var t,e=this.itemList,i=this.halfScrollView,n=this.scrollView.content.x>this.lastContentPosX,o=(this.itemWidth+this.spaceX)*(this.spawnCount/this.gridRow),r=0;ri&&t.x-o-this.padding_left>0){var s=(h=t.getComponent(c.default)).itemIndex-this.spawnCount/this.gridRow*this.gridRow;null!=this.itemDataList[s]?(t.x=t.x-o,h.itemIndex=s,h.data=this.itemDataList[s],h.dataChanged(),t.opacity=255):(t.x=t.x-o,h.itemIndex=s,t.opacity=0)}}else if(a.x<-i&&t.x+o+this.padding_right=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,a.requireComponent,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){window.initMgr(),cc.fx.GameConfig.init();var t=window.location.href;this.containsTrain(t)?(console.log("\u65e0\u6392\u884c\u7248\u672c"),this.node.getChildByName("Rank").active=!1):console.log("\u6709\u6392\u884c\u7248\u672c")},e.prototype.containsTrain=function(t){return/from=train/i.test(t)},e.prototype.startGame=function(){cc.director.loadScene("GuideScene")},e.prototype.clickBtn=function(t,e){cc.fx.GameConfig.GM_INFO.custom=parseInt(e),cc.director.loadScene("GameScene")},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},e.prototype.update=function(){},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],Notification:[function(t,e,i){"use strict";cc._RF.push(e,"55403VjGlpPL564gsdiZBg3","Notification"),Object.defineProperty(i,"__esModule",{value:!0}),i.Notifications=void 0;i.Notifications={_eventMap:[],on:function(t,e,i){void 0===this._eventMap[t]&&(this._eventMap[t]=[]),this._eventMap[t].push({callback:e,target:i})},emit:function(t,e){var i=this._eventMap[t];if(void 0!==i)for(var n=0;n=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=t("./module/RankList/List"),s=cc._decorator,c=s.ccclass,h=s.property,l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.Player=null,e.selfNode=null,e.phone=null,e}return o(e,t),e.prototype.onLoad=function(){this.init()},e.prototype.init=function(){this.rankList=cc.find("ScrollView",this.node).getComponent(a.default),this.Player.getChildByName("rank").active=!1,this.listData=[],this.selfData=null,this.rankNumber=100,this.rankTotal=100,this.selfNode.opacity=0},e.prototype.start=function(){this.Player.active=!1,this.getRank()},e.prototype.getRank=function(){var t=this;cc.fx.GameTool.getRank({length:100},function(e){return t.getRankData(e)})},e.prototype.getRankData=function(t){t&&(console.log(t),cc.fx.GameTool.getRankData(t,this,6),this.setPic(this.selfData.pic))},e.prototype.backClick=function(){cc.director.loadScene("LoadScene")},e.prototype.playerAction=function(){var t=this;this.Player.getChildByName("rank").active=!1;var e=1;if(this.tween=cc.tween(this.Player).to(2,{position:cc.v3(210,453,0)}).call(function(){t.Player.getChildByName("rank").active=!0,t.Player.getChildByName("rank").getChildByName("number").getComponent(cc.Label).string=parseInt(100*e+"")+"%"}).start(),e=(this.listData.length-this.rankNumber)/this.listData.length,this.listData.length>=99&&this.rankNumber>=99){e=(49*Math.random()+1)/100;var i=cc.sys.localStorage.getItem("matchNumber");null!=i&&null!=i||(e=0)}setTimeout(function(){t.tween&&t.tween.stop(),t.Player.getChildByName("rank").active=!0,t.Player.getChildByName("rank").getChildByName("number").getComponent(cc.Label).string=parseInt(100*e+"")+"%"},2e3*e)},e.prototype.setPic=function(t){var e=this;this.phone.node.parent.getChildByName("icon").active=!1,this.phone.node.active=!1,this.Player.active=!0,this.Player.opacity=0,this.Player.getChildByName("mask").getChildByName("icon").active=!1,this.Player.getChildByName("mask").getChildByName("phone").active=!1,fetch(t).then(function(t){return t.headers.get("Content-Length")}).then(function(t){"5093"==t&&(e.phone.node.parent.getChildByName("icon").active=!0,e.Player.getChildByName("mask").getChildByName("icon").active=!0)}).catch(function(){});var i=this;cc.assetManager.loadRemote(t,{ext:".png"},function(t,e){i.Player.opacity=255,e?(i.phone.node.active=!0,i.phone.spriteFrame=new cc.SpriteFrame(e),i.Player.getChildByName("mask").getChildByName("icon").active=!1,i.Player.getChildByName("mask").getChildByName("phone").active=!0,i.Player.getChildByName("mask").getChildByName("phone").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(e),setTimeout(function(){i.playerAction()},500)):(i.Player.getChildByName("mask").getChildByName("icon").active=!0,setTimeout(function(){i.playerAction()},500))})},r([h(cc.Node)],e.prototype,"Player",void 0),r([h(cc.Node)],e.prototype,"selfNode",void 0),r([h(cc.Sprite)],e.prototype,"phone",void 0),r([c],e)}(cc.Component);i.default=l,cc._RF.pop()},{"./module/RankList/List":"List"}],Storage:[function(t,e,i){"use strict";cc._RF.push(e,"1002938VFRJd70RiAno9Iys","Storage"),Object.defineProperty(i,"__esModule",{value:!0}),i.StorageMessage=void 0;var n={getStorage:function(t){var e=null;return cc.sys.localStorage.getItem(t)&&(e=cc.sys.localStorage.getItem(t)),e&&(e=JSON.parse(e)),e},setStorage:function(t,e){var i=JSON.stringify(e);cc.sys.localStorage.setItem(t,i)},removeStorage:function(t){cc.sys.localStorage.getItem(t)&&cc.sys.localStorage.removeItem(t)}};i.StorageMessage=n,cc._RF.pop()},{}],Sun:[function(t,e,i){"use strict";cc._RF.push(e,"4be67sdkexCyqLl0NHd9N1f","Sun");var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__decorate||function(t,e,i,n){var o,r=arguments.length,a=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};Object.defineProperty(i,"__esModule",{value:!0});var a=cc._decorator,s=a.ccclass,c=(a.property,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){this.node.on(cc.Node.EventType.TOUCH_START,this.clickBtn,this)},e.prototype.init=function(t,e,i,n){this.touch=!0,this.move=!1,this.id_Number=t,this._color=e,this._speed=i,this._repeat=n,cc.tween(this.node.getChildByName("shan")).repeatForever(cc.tween().to(1,{opacity:0,scale:.5}).delay(.2).to(1,{opacity:255,scale:1.2}).delay(.5)).start()},e.prototype.showNumber=function(t){this.node.getChildByName("number").active=t,1==t&&(this.node.getChildByName("number").getComponent(cc.Label).string=this.id_Number+"")},e.prototype.distanceBetweenTwoPoints=function(t,e,i,n){return Math.sqrt(Math.pow(i-t,2)+Math.pow(n-e,2))},e.prototype.clickBtn=function(t){var e=this.node.convertToNodeSpaceAR(t.getLocation()),i=this.distanceBetweenTwoPoints(e.x,0,e.y,0);if(i=Math.floor(10*i)/10,"qiu4"!=this.node.name){if(0==this.move&&1==this.touch)if("GameNode"==this.node.parent.parent.name){if(1==this.node.parent.parent.getComponent("GameManager").begin){cc.tween(this.node.getChildByName("action")).to(.5,{opacity:0,scale:1.8}).start(),cc.tween(this.node).to(.3,{scale:1.3}).to(.3,{scale:1}).start(),this.touch=!1,this.node.zIndex=-1;var n={id:this.id_Number,distance:i};cc.fx.Notifications.emit("clickSun",n)}}else{this.touch=!1,this.node.zIndex=-1;var o={id:this.id_Number,distance:i};cc.fx.Notifications.emit("clickSun",o)}}else if(1==this.touch&&1==this.node.parent.parent.getComponent("GuideManager").begin){this.touch=!1,this.node.zIndex=-1;var r={id:this.id_Number,distance:i};cc.fx.Notifications.emit("clickSun",r)}},r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],"crypto-js.min":[function(t,e,i){"use strict";cc._RF.push(e,"e64e1qXyT9CV6s0gDQdj/ed","crypto-js.min"),function(t,n){"object"==typeof i?e.exports=i=n():"function"==typeof define&&define.amd?define([],n):(void 0).CryptoJS=n()}(0,function(){var t,e,i,n,o,r,a,s=s||function(t){var e=Object.create||function(){function t(){}return function(e){var i;return t.prototype=e,i=new t,t.prototype=null,i}}(),i={},n=i.lib={},o=n.Base={extend:function(t){var i=e(this);return t&&i.mixIn(t),i.hasOwnProperty("init")&&this.init!==i.init||(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},r=n.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||s).stringify(this)},concat:function(t){var e=this.words,i=t.words,n=this.sigBytes,o=t.sigBytes;if(this.clamp(),n%4)for(var r=0;r>>2]>>>24-r%4*8&255;e[n+r>>>2]|=a<<24-(n+r)%4*8}else for(r=0;r>>2]=i[r>>>2];return this.sigBytes+=o,this},clamp:function(){var e=this.words,i=this.sigBytes;e[i>>>2]&=4294967295<<32-i%4*8,e.length=t.ceil(i/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var i,n=[],o=function(e){e=e;var i=987654321,n=4294967295;return function(){var o=((i=36969*(65535&i)+(i>>16)&n)<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n;return o/=4294967296,(o+=.5)*(t.random()>.5?1:-1)}},a=0;a>>2]>>>24-o%4*8&255;n.push((r>>>4).toString(16)),n.push((15&r).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,i=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new r.init(i,e/2)}},c=a.Latin1={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>24-o%4*8&255;n.push(String.fromCharCode(r))}return n.join("")},parse:function(t){for(var e=t.length,i=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new r.init(i,e)}},h=a.Utf8={stringify:function(t){try{return decodeURIComponent(escape(c.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return c.parse(unescape(encodeURIComponent(t)))}},l=n.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new r.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=h.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var i=this._data,n=i.words,o=i.sigBytes,a=this.blockSize,s=o/(4*a),c=(s=e?t.ceil(s):t.max((0|s)-this._minBufferSize,0))*a,h=t.min(4*c,o);if(c){for(var l=0;l>>6-a%4*2;o[r>>>2]|=(s|c)<<24-r%4*8,r++}return i.create(o,r)}var e=s,i=e.lib.WordArray;e.enc.Base64={stringify:function(t){var e=t.words,i=t.sigBytes,n=this._map;t.clamp();for(var o=[],r=0;r>>2]>>>24-r%4*8&255)<<16|(e[r+1>>>2]>>>24-(r+1)%4*8&255)<<8|e[r+2>>>2]>>>24-(r+2)%4*8&255,s=0;s<4&&r+.75*s>>6*(3-s)&63));var c=n.charAt(64);if(c)for(;o.length%4;)o.push(c);return o.join("")},parse:function(e){var i=e.length,n=this._map,o=this._reverseMap;if(!o){o=this._reverseMap=[];for(var r=0;r>>32-r)+e}function i(t,e,i,n,o,r,a){var s=t+(e&n|i&~n)+o+a;return(s<>>32-r)+e}function n(t,e,i,n,o,r,a){var s=t+(e^i^n)+o+a;return(s<>>32-r)+e}function o(t,e,i,n,o,r,a){var s=t+(i^(e|~n))+o+a;return(s<>>32-r)+e}var r=s,a=r.lib,c=a.WordArray,h=a.Hasher,l=r.algo,u=[];!function(){for(var e=0;e<64;e++)u[e]=4294967296*t.abs(t.sin(e+1))|0}();var p=l.MD5=h.extend({_doReset:function(){this._hash=new c.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,r){for(var a=0;a<16;a++){var s=r+a,c=t[s];t[s]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}var h=this._hash.words,l=t[r+0],p=t[r+1],f=t[r+2],d=t[r+3],y=t[r+4],m=t[r+5],g=t[r+6],v=t[r+7],_=t[r+8],b=t[r+9],C=t[r+10],w=t[r+11],x=t[r+12],S=t[r+13],A=t[r+14],k=t[r+15],B=h[0],N=h[1],M=h[2],P=h[3];B=e(B,N,M,P,l,7,u[0]),P=e(P,B,N,M,p,12,u[1]),M=e(M,P,B,N,f,17,u[2]),N=e(N,M,P,B,d,22,u[3]),B=e(B,N,M,P,y,7,u[4]),P=e(P,B,N,M,m,12,u[5]),M=e(M,P,B,N,g,17,u[6]),N=e(N,M,P,B,v,22,u[7]),B=e(B,N,M,P,_,7,u[8]),P=e(P,B,N,M,b,12,u[9]),M=e(M,P,B,N,C,17,u[10]),N=e(N,M,P,B,w,22,u[11]),B=e(B,N,M,P,x,7,u[12]),P=e(P,B,N,M,S,12,u[13]),M=e(M,P,B,N,A,17,u[14]),B=i(B,N=e(N,M,P,B,k,22,u[15]),M,P,p,5,u[16]),P=i(P,B,N,M,g,9,u[17]),M=i(M,P,B,N,w,14,u[18]),N=i(N,M,P,B,l,20,u[19]),B=i(B,N,M,P,m,5,u[20]),P=i(P,B,N,M,C,9,u[21]),M=i(M,P,B,N,k,14,u[22]),N=i(N,M,P,B,y,20,u[23]),B=i(B,N,M,P,b,5,u[24]),P=i(P,B,N,M,A,9,u[25]),M=i(M,P,B,N,d,14,u[26]),N=i(N,M,P,B,_,20,u[27]),B=i(B,N,M,P,S,5,u[28]),P=i(P,B,N,M,f,9,u[29]),M=i(M,P,B,N,v,14,u[30]),B=n(B,N=i(N,M,P,B,x,20,u[31]),M,P,m,4,u[32]),P=n(P,B,N,M,_,11,u[33]),M=n(M,P,B,N,w,16,u[34]),N=n(N,M,P,B,A,23,u[35]),B=n(B,N,M,P,p,4,u[36]),P=n(P,B,N,M,y,11,u[37]),M=n(M,P,B,N,v,16,u[38]),N=n(N,M,P,B,C,23,u[39]),B=n(B,N,M,P,S,4,u[40]),P=n(P,B,N,M,l,11,u[41]),M=n(M,P,B,N,d,16,u[42]),N=n(N,M,P,B,g,23,u[43]),B=n(B,N,M,P,b,4,u[44]),P=n(P,B,N,M,x,11,u[45]),M=n(M,P,B,N,k,16,u[46]),B=o(B,N=n(N,M,P,B,f,23,u[47]),M,P,l,6,u[48]),P=o(P,B,N,M,v,10,u[49]),M=o(M,P,B,N,A,15,u[50]),N=o(N,M,P,B,m,21,u[51]),B=o(B,N,M,P,x,6,u[52]),P=o(P,B,N,M,d,10,u[53]),M=o(M,P,B,N,C,15,u[54]),N=o(N,M,P,B,p,21,u[55]),B=o(B,N,M,P,_,6,u[56]),P=o(P,B,N,M,k,10,u[57]),M=o(M,P,B,N,g,15,u[58]),N=o(N,M,P,B,S,21,u[59]),B=o(B,N,M,P,y,6,u[60]),P=o(P,B,N,M,w,10,u[61]),M=o(M,P,B,N,f,15,u[62]),N=o(N,M,P,B,b,21,u[63]),h[0]=h[0]+B|0,h[1]=h[1]+N|0,h[2]=h[2]+M|0,h[3]=h[3]+P|0},_doFinalize:function(){var e=this._data,i=e.words,n=8*this._nDataBytes,o=8*e.sigBytes;i[o>>>5]|=128<<24-o%32;var r=t.floor(n/4294967296),a=n;i[15+(o+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),i[14+(o+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),e.sigBytes=4*(i.length+1),this._process();for(var s=this._hash,c=s.words,h=0;h<4;h++){var l=c[h];c[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}return s},clone:function(){var t=h.clone.call(this);return t._hash=this._hash.clone(),t}});r.MD5=h._createHelper(p),r.HmacMD5=h._createHmacHelper(p)}(Math),e=(t=s).lib,i=e.WordArray,n=e.Hasher,o=t.algo,r=[],a=o.SHA1=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],a=i[2],s=i[3],c=i[4],h=0;h<80;h++){if(h<16)r[h]=0|t[e+h];else{var l=r[h-3]^r[h-8]^r[h-14]^r[h-16];r[h]=l<<1|l>>>31}var u=(n<<5|n>>>27)+c+r[h];u+=h<20?1518500249+(o&a|~o&s):h<40?1859775393+(o^a^s):h<60?(o&a|o&s|a&s)-1894007588:(o^a^s)-899497514,c=s,s=a,a=o<<30|o>>>2,o=n,n=u}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+a|0,i[3]=i[3]+s|0,i[4]=i[4]+c|0},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(i/4294967296),e[15+(n+64>>>9<<4)]=i,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),t.SHA1=n._createHelper(a),t.HmacSHA1=n._createHmacHelper(a),function(t){var e=s,i=e.lib,n=i.WordArray,o=i.Hasher,r=e.algo,a=[],c=[];!function(){function e(e){for(var i=t.sqrt(e),n=2;n<=i;n++)if(!(e%n))return!1;return!0}function i(t){return 4294967296*(t-(0|t))|0}for(var n=2,o=0;o<64;)e(n)&&(o<8&&(a[o]=i(t.pow(n,.5))),c[o]=i(t.pow(n,1/3)),o++),n++}();var h=[],l=r.SHA256=o.extend({_doReset:function(){this._hash=new n.init(a.slice(0))},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],u=i[6],p=i[7],f=0;f<64;f++){if(f<16)h[f]=0|t[e+f];else{var d=h[f-15],y=(d<<25|d>>>7)^(d<<14|d>>>18)^d>>>3,m=h[f-2],g=(m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10;h[f]=y+h[f-7]+g+h[f-16]}var v=n&o^n&r^o&r,_=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),b=p+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&l^~s&u)+c[f]+h[f];p=u,u=l,l=s,s=a+b|0,a=r,r=o,o=n,n=b+(_+v)|0}i[0]=i[0]+n|0,i[1]=i[1]+o|0,i[2]=i[2]+r|0,i[3]=i[3]+a|0,i[4]=i[4]+s|0,i[5]=i[5]+l|0,i[6]=i[6]+u|0,i[7]=i[7]+p|0},_doFinalize:function(){var e=this._data,i=e.words,n=8*this._nDataBytes,o=8*e.sigBytes;return i[o>>>5]|=128<<24-o%32,i[14+(o+64>>>9<<4)]=t.floor(n/4294967296),i[15+(o+64>>>9<<4)]=n,e.sigBytes=4*i.length,this._process(),this._hash},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=o._createHelper(l),e.HmacSHA256=o._createHmacHelper(l)}(Math),function(){function t(t){return t<<8&4278255360|t>>>8&16711935}var e=s,i=e.lib.WordArray,n=e.enc;n.Utf16=n.Utf16BE={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535;n.push(String.fromCharCode(r))}return n.join("")},parse:function(t){for(var e=t.length,n=[],o=0;o>>1]|=t.charCodeAt(o)<<16-o%2*16;return i.create(n,2*e)}},n.Utf16LE={stringify:function(e){for(var i=e.words,n=e.sigBytes,o=[],r=0;r>>2]>>>16-r%4*8&65535);o.push(String.fromCharCode(a))}return o.join("")},parse:function(e){for(var n=e.length,o=[],r=0;r>>1]|=t(e.charCodeAt(r)<<16-r%2*16);return i.create(o,2*n)}}}(),function(){if("function"==typeof ArrayBuffer){var t=s.lib.WordArray,e=t.init;(t.init=function(t){if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),(t instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array)&&(t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),t instanceof Uint8Array){for(var i=t.byteLength,n=[],o=0;o>>2]|=t[o]<<24-o%4*8;e.call(this,n,i)}else e.apply(this,arguments)}).prototype=t}}(),function(){function t(t,e,i){return t^e^i}function e(t,e,i){return t&e|~t&i}function i(t,e,i){return(t|~e)^i}function n(t,e,i){return t&i|e&~i}function o(t,e,i){return t^(e|~i)}function r(t,e){return t<>>32-e}var a=s,c=a.lib,h=c.WordArray,l=c.Hasher,u=a.algo,p=h.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),f=h.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),d=h.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),y=h.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),m=h.create([0,1518500249,1859775393,2400959708,2840853838]),g=h.create([1352829926,1548603684,1836072691,2053994217,0]),v=u.RIPEMD160=l.extend({_doReset:function(){this._hash=h.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(a,s){for(var c=0;c<16;c++){var h=s+c,l=a[h];a[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}var u,v,_,b,C,w,x,S,A,k,B,N=this._hash.words,M=m.words,P=g.words,I=p.words,L=f.words,G=d.words,R=y.words;for(w=u=N[0],x=v=N[1],S=_=N[2],A=b=N[3],k=C=N[4],c=0;c<80;c+=1)B=u+a[s+I[c]]|0,B+=c<16?t(v,_,b)+M[0]:c<32?e(v,_,b)+M[1]:c<48?i(v,_,b)+M[2]:c<64?n(v,_,b)+M[3]:o(v,_,b)+M[4],B=(B=r(B|=0,G[c]))+C|0,u=C,C=b,b=r(_,10),_=v,v=B,B=w+a[s+L[c]]|0,B+=c<16?o(x,S,A)+P[0]:c<32?n(x,S,A)+P[1]:c<48?i(x,S,A)+P[2]:c<64?e(x,S,A)+P[3]:t(x,S,A)+P[4],B=(B=r(B|=0,R[c]))+k|0,w=k,k=A,A=r(S,10),S=x,x=B;B=N[1]+_+A|0,N[1]=N[2]+b+k|0,N[2]=N[3]+C+w|0,N[3]=N[4]+u+x|0,N[4]=N[0]+v+S|0,N[0]=B},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t.sigBytes=4*(e.length+1),this._process();for(var o=this._hash,r=o.words,a=0;a<5;a++){var s=r[a];r[a]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}return o},clone:function(){var t=l.clone.call(this);return t._hash=this._hash.clone(),t}});a.RIPEMD160=l._createHelper(v),a.HmacRIPEMD160=l._createHmacHelper(v)}(Math),function(){var t=s,e=t.lib.Base,i=t.enc.Utf8;t.algo.HMAC=e.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=i.parse(e));var n=t.blockSize,o=4*n;e.sigBytes>o&&(e=t.finalize(e)),e.clamp();for(var r=this._oKey=e.clone(),a=this._iKey=e.clone(),s=r.words,c=a.words,h=0;h>>24)|4278255360&(r<<24|r>>>8),a=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),(N=i[o]).high^=a,N.low^=r}for(var s=0;s<24;s++){for(var p=0;p<5;p++){for(var f=0,d=0,y=0;y<5;y++)f^=(N=i[p+5*y]).high,d^=N.low;var m=u[p];m.high=f,m.low=d}for(p=0;p<5;p++){var g=u[(p+4)%5],v=u[(p+1)%5],_=v.high,b=v.low;for(f=g.high^(_<<1|b>>>31),d=g.low^(b<<1|_>>>31),y=0;y<5;y++)(N=i[p+5*y]).high^=f,N.low^=d}for(var C=1;C<25;C++){var w=(N=i[C]).high,x=N.low,S=c[C];S<32?(f=w<>>32-S,d=x<>>32-S):(f=x<>>64-S,d=w<>>64-S);var A=u[h[C]];A.high=f,A.low=d}var k=u[0],B=i[0];for(k.high=B.high,k.low=B.low,p=0;p<5;p++)for(y=0;y<5;y++){var N=i[C=p+5*y],M=u[C],P=u[(p+1)%5+5*y],I=u[(p+2)%5+5*y];N.high=M.high^~P.high&I.high,N.low=M.low^~P.low&I.low}N=i[0];var L=l[s];N.high^=L.high,N.low^=L.low}},_doFinalize:function(){var e=this._data,i=e.words,o=(this._nDataBytes,8*e.sigBytes),r=32*this.blockSize;i[o>>>5]|=1<<24-o%32,i[(t.ceil((o+1)/r)*r>>>5)-1]|=128,e.sigBytes=4*i.length,this._process();for(var a=this._state,s=this.cfg.outputLength/8,c=s/8,h=[],l=0;l>>24)|4278255360&(p<<24|p>>>8),f=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8),h.push(f),h.push(p)}return new n.init(h,s)},clone:function(){for(var t=o.clone.call(this),e=t._state=this._state.slice(0),i=0;i<25;i++)e[i]=e[i].clone();return t}});e.SHA3=o._createHelper(p),e.HmacSHA3=o._createHmacHelper(p)}(Math),function(){function t(){return o.create.apply(o,arguments)}var e=s,i=e.lib.Hasher,n=e.x64,o=n.Word,r=n.WordArray,a=e.algo,c=[t(1116352408,3609767458),t(1899447441,602891725),t(3049323471,3964484399),t(3921009573,2173295548),t(961987163,4081628472),t(1508970993,3053834265),t(2453635748,2937671579),t(2870763221,3664609560),t(3624381080,2734883394),t(310598401,1164996542),t(607225278,1323610764),t(1426881987,3590304994),t(1925078388,4068182383),t(2162078206,991336113),t(2614888103,633803317),t(3248222580,3479774868),t(3835390401,2666613458),t(4022224774,944711139),t(264347078,2341262773),t(604807628,2007800933),t(770255983,1495990901),t(1249150122,1856431235),t(1555081692,3175218132),t(1996064986,2198950837),t(2554220882,3999719339),t(2821834349,766784016),t(2952996808,2566594879),t(3210313671,3203337956),t(3336571891,1034457026),t(3584528711,2466948901),t(113926993,3758326383),t(338241895,168717936),t(666307205,1188179964),t(773529912,1546045734),t(1294757372,1522805485),t(1396182291,2643833823),t(1695183700,2343527390),t(1986661051,1014477480),t(2177026350,1206759142),t(2456956037,344077627),t(2730485921,1290863460),t(2820302411,3158454273),t(3259730800,3505952657),t(3345764771,106217008),t(3516065817,3606008344),t(3600352804,1432725776),t(4094571909,1467031594),t(275423344,851169720),t(430227734,3100823752),t(506948616,1363258195),t(659060556,3750685593),t(883997877,3785050280),t(958139571,3318307427),t(1322822218,3812723403),t(1537002063,2003034995),t(1747873779,3602036899),t(1955562222,1575990012),t(2024104815,1125592928),t(2227730452,2716904306),t(2361852424,442776044),t(2428436474,593698344),t(2756734187,3733110249),t(3204031479,2999351573),t(3329325298,3815920427),t(3391569614,3928383900),t(3515267271,566280711),t(3940187606,3454069534),t(4118630271,4000239992),t(116418474,1914138554),t(174292421,2731055270),t(289380356,3203993006),t(460393269,320620315),t(685471733,587496836),t(852142971,1086792851),t(1017036298,365543100),t(1126000580,2618297676),t(1288033470,3409855158),t(1501505948,4234509866),t(1607167915,987167468),t(1816402316,1246189591)],h=[];!function(){for(var e=0;e<80;e++)h[e]=t()}();var l=a.SHA512=i.extend({_doReset:function(){this._hash=new r.init([new o.init(1779033703,4089235720),new o.init(3144134277,2227873595),new o.init(1013904242,4271175723),new o.init(2773480762,1595750129),new o.init(1359893119,2917565137),new o.init(2600822924,725511199),new o.init(528734635,4215389547),new o.init(1541459225,327033209)])},_doProcessBlock:function(t,e){for(var i=this._hash.words,n=i[0],o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],u=i[6],p=i[7],f=n.high,d=n.low,y=o.high,m=o.low,g=r.high,v=r.low,_=a.high,b=a.low,C=s.high,w=s.low,x=l.high,S=l.low,A=u.high,k=u.low,B=p.high,N=p.low,M=f,P=d,I=y,L=m,G=g,R=v,D=_,T=b,O=C,F=w,E=x,H=S,j=A,z=k,V=B,W=N,U=0;U<80;U++){var K=h[U];if(U<16)var X=K.high=0|t[e+2*U],q=K.low=0|t[e+2*U+1];else{var Y=h[U-15],J=Y.high,Z=Y.low,Q=(J>>>1|Z<<31)^(J>>>8|Z<<24)^J>>>7,$=(Z>>>1|J<<31)^(Z>>>8|J<<24)^(Z>>>7|J<<25),tt=h[U-2],et=tt.high,it=tt.low,nt=(et>>>19|it<<13)^(et<<3|it>>>29)^et>>>6,ot=(it>>>19|et<<13)^(it<<3|et>>>29)^(it>>>6|et<<26),rt=h[U-7],at=rt.high,st=rt.low,ct=h[U-16],ht=ct.high,lt=ct.low;X=(X=(X=Q+at+((q=$+st)>>>0<$>>>0?1:0))+nt+((q+=ot)>>>0>>0?1:0))+ht+((q+=lt)>>>0>>0?1:0),K.high=X,K.low=q}var ut,pt=O&E^~O&j,ft=F&H^~F&z,dt=M&I^M&G^I&G,yt=P&L^P&R^L&R,mt=(M>>>28|P<<4)^(M<<30|P>>>2)^(M<<25|P>>>7),gt=(P>>>28|M<<4)^(P<<30|M>>>2)^(P<<25|M>>>7),vt=(O>>>14|F<<18)^(O>>>18|F<<14)^(O<<23|F>>>9),_t=(F>>>14|O<<18)^(F>>>18|O<<14)^(F<<23|O>>>9),bt=c[U],Ct=bt.high,wt=bt.low,xt=V+vt+((ut=W+_t)>>>0>>0?1:0),St=gt+yt;V=j,W=z,j=E,z=H,E=O,H=F,O=D+(xt=(xt=(xt=xt+pt+((ut+=ft)>>>0>>0?1:0))+Ct+((ut+=wt)>>>0>>0?1:0))+X+((ut+=q)>>>0>>0?1:0))+((F=T+ut|0)>>>0>>0?1:0)|0,D=G,T=R,G=I,R=L,I=M,L=P,M=xt+(mt+dt+(St>>>0>>0?1:0))+((P=ut+St|0)>>>0>>0?1:0)|0}d=n.low=d+P,n.high=f+M+(d>>>0

>>0?1:0),m=o.low=m+L,o.high=y+I+(m>>>0>>0?1:0),v=r.low=v+R,r.high=g+G+(v>>>0>>0?1:0),b=a.low=b+T,a.high=_+D+(b>>>0>>0?1:0),w=s.low=w+F,s.high=C+O+(w>>>0>>0?1:0),S=l.low=S+H,l.high=x+E+(S>>>0>>0?1:0),k=u.low=k+z,u.high=A+j+(k>>>0>>0?1:0),N=p.low=N+W,p.high=B+V+(N>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,i=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(i/4294967296),e[31+(n+128>>>10<<5)]=i,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=i.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32});e.SHA512=i._createHelper(l),e.HmacSHA512=i._createHmacHelper(l)}(),function(){var t=s,e=t.x64,i=e.Word,n=e.WordArray,o=t.algo,r=o.SHA512,a=o.SHA384=r.extend({_doReset:function(){this._hash=new n.init([new i.init(3418070365,3238371032),new i.init(1654270250,914150663),new i.init(2438529370,812702999),new i.init(355462360,4144912697),new i.init(1731405415,4290775857),new i.init(2394180231,1750603025),new i.init(3675008525,1694076839),new i.init(1203062813,3204075428)])},_doFinalize:function(){var t=r._doFinalize.call(this);return t.sigBytes-=16,t}});t.SHA384=r._createHelper(a),t.HmacSHA384=r._createHmacHelper(a)}(),s.lib.Cipher||function(t){var e=s,i=e.lib,n=i.Base,o=i.WordArray,r=i.BufferedBlockAlgorithm,a=e.enc,c=(a.Utf8,a.Base64),h=e.algo.EvpKDF,l=i.Cipher=r.extend({cfg:n.extend(),createEncryptor:function(t,e){return this.create(this._ENC_XFORM_MODE,t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,i){this.cfg=this.cfg.extend(i),this._xformMode=t,this._key=e,this.reset()},reset:function(){r.reset.call(this),this._doReset()},process:function(t){return this._append(t),this._process()},finalize:function(t){return t&&this._append(t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?_:g}return function(e){return{encrypt:function(i,n,o){return t(n).encrypt(e,i,n,o)},decrypt:function(i,n,o){return t(n).decrypt(e,i,n,o)}}}}()}),u=(i.StreamCipher=l.extend({_doFinalize:function(){return this._process(!0)},blockSize:1}),e.mode={}),p=i.BlockCipherMode=n.extend({createEncryptor:function(t,e){return this.Encryptor.create(t,e)},createDecryptor:function(t,e){return this.Decryptor.create(t,e)},init:function(t,e){this._cipher=t,this._iv=e}}),f=u.CBC=function(){function e(e,i,n){var o=this._iv;if(o){var r=o;this._iv=t}else r=this._prevBlock;for(var a=0;a>>2];t.sigBytes-=e}},y=(i.BlockCipher=l.extend({cfg:l.cfg.extend({mode:f,padding:d}),reset:function(){l.reset.call(this);var t=this.cfg,e=t.iv,i=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=i.createEncryptor;else n=i.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==n?this._mode.init(this,e&&e.words):(this._mode=n.call(i,this,e&&e.words),this._mode.__creator=n)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4}),i.CipherParams=n.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}})),m=(e.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,i=t.salt;if(i)var n=o.create([1398893684,1701076831]).concat(i).concat(e);else n=e;return n.toString(c)},parse:function(t){var e=c.parse(t),i=e.words;if(1398893684==i[0]&&1701076831==i[1]){var n=o.create(i.slice(2,4));i.splice(0,4),e.sigBytes-=16}return y.create({ciphertext:e,salt:n})}},g=i.SerializableCipher=n.extend({cfg:n.extend({format:m}),encrypt:function(t,e,i,n){n=this.cfg.extend(n);var o=t.createEncryptor(i,n),r=o.finalize(e),a=o.cfg;return y.create({ciphertext:r,key:i,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:t.blockSize,formatter:n.format})},decrypt:function(t,e,i,n){return n=this.cfg.extend(n),e=this._parse(e,n.format),t.createDecryptor(i,n).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),v=(e.kdf={}).OpenSSL={execute:function(t,e,i,n){n||(n=o.random(8));var r=h.create({keySize:e+i}).compute(t,n),a=o.create(r.words.slice(e),4*i);return r.sigBytes=4*e,y.create({key:r,iv:a,salt:n})}},_=i.PasswordBasedCipher=g.extend({cfg:g.cfg.extend({kdf:v}),encrypt:function(t,e,i,n){var o=(n=this.cfg.extend(n)).kdf.execute(i,t.keySize,t.ivSize);n.iv=o.iv;var r=g.encrypt.call(this,t,e,o.key,n);return r.mixIn(o),r},decrypt:function(t,e,i,n){n=this.cfg.extend(n),e=this._parse(e,n.format);var o=n.kdf.execute(i,t.keySize,t.ivSize,e.salt);return n.iv=o.iv,g.decrypt.call(this,t,e,o.key,n)}})}(),s.mode.CFB=function(){function t(t,e,i,n){var o=this._iv;if(o){var r=o.slice(0);this._iv=void 0}else r=this._prevBlock;n.encryptBlock(r,0);for(var a=0;a>>2]|=o<<24-r%4*8,t.sigBytes+=o},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},s.pad.Iso10126={pad:function(t,e){var i=4*e,n=i-t.sigBytes%i;t.concat(s.lib.WordArray.random(n-1)).concat(s.lib.WordArray.create([n<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},s.pad.Iso97971={pad:function(t,e){t.concat(s.lib.WordArray.create([2147483648],1)),s.pad.ZeroPadding.pad(t,e)},unpad:function(t){s.pad.ZeroPadding.unpad(t),t.sigBytes--}},s.mode.OFB=function(){var t=s.lib.BlockCipherMode.extend(),e=t.Encryptor=t.extend({processBlock:function(t,e){var i=this._cipher,n=i.blockSize,o=this._iv,r=this._keystream;o&&(r=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(r,0);for(var a=0;a>>8^255&d^99,n[i]=d,o[d]=i;var y=t[i],m=t[y],g=t[m],v=257*t[d]^16843008*d;r[i]=v<<24|v>>>8,a[i]=v<<16|v>>>16,c[i]=v<<8|v>>>24,h[i]=v,v=16843009*g^65537*m^257*y^16843008*i,l[d]=v<<24|v>>>8,u[d]=v<<16|v>>>16,p[d]=v<<8|v>>>24,f[d]=v,i?(i=y^t[t[t[g^y]]],s^=t[t[s]]):i=s=1}}();var d=[0,1,2,4,8,16,32,64,128,27,54],y=i.AES=e.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var t=this._keyPriorReset=this._key,e=t.words,i=t.sigBytes/4,o=4*((this._nRounds=i+6)+1),r=this._keySchedule=[],a=0;a6&&a%i==4&&(s=n[s>>>24]<<24|n[s>>>16&255]<<16|n[s>>>8&255]<<8|n[255&s]):(s=n[(s=s<<8|s>>>24)>>>24]<<24|n[s>>>16&255]<<16|n[s>>>8&255]<<8|n[255&s],s^=d[a/i|0]<<24),r[a]=r[a-i]^s}for(var c=this._invKeySchedule=[],h=0;h>>24]]^u[n[s>>>16&255]]^p[n[s>>>8&255]]^f[n[255&s]]}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,r,a,c,h,n)},decryptBlock:function(t,e){var i=t[e+1];t[e+1]=t[e+3],t[e+3]=i,this._doCryptBlock(t,e,this._invKeySchedule,l,u,p,f,o),i=t[e+1],t[e+1]=t[e+3],t[e+3]=i},_doCryptBlock:function(t,e,i,n,o,r,a,s){for(var c=this._nRounds,h=t[e]^i[0],l=t[e+1]^i[1],u=t[e+2]^i[2],p=t[e+3]^i[3],f=4,d=1;d>>24]^o[l>>>16&255]^r[u>>>8&255]^a[255&p]^i[f++],m=n[l>>>24]^o[u>>>16&255]^r[p>>>8&255]^a[255&h]^i[f++],g=n[u>>>24]^o[p>>>16&255]^r[h>>>8&255]^a[255&l]^i[f++],v=n[p>>>24]^o[h>>>16&255]^r[l>>>8&255]^a[255&u]^i[f++];h=y,l=m,u=g,p=v}y=(s[h>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[255&p])^i[f++],m=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[p>>>8&255]<<8|s[255&h])^i[f++],g=(s[u>>>24]<<24|s[p>>>16&255]<<16|s[h>>>8&255]<<8|s[255&l])^i[f++],v=(s[p>>>24]<<24|s[h>>>16&255]<<16|s[l>>>8&255]<<8|s[255&u])^i[f++],t[e]=y,t[e+1]=m,t[e+2]=g,t[e+3]=v},keySize:8});t.AES=e._createHelper(y)}(),function(){function t(t,e){var i=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=i,this._lBlock^=i<>>t^this._lBlock)&e;this._lBlock^=i,this._rBlock^=i<>>5]>>>31-n%32&1}for(var o=this._subKeys=[],r=0;r<16;r++){var a=o[r]=[],s=l[r];for(i=0;i<24;i++)a[i/6|0]|=e[(h[i]-1+s)%28]<<31-i%6,a[4+(i/6|0)]|=e[28+(h[i+24]-1+s)%28]<<31-i%6;for(a[0]=a[0]<<1|a[0]>>>31,i=1;i<7;i++)a[i]=a[i]>>>4*(i-1)+3;a[7]=a[7]<<5|a[7]>>>27}var u=this._invSubKeys=[];for(i=0;i<16;i++)u[i]=o[15-i]},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._subKeys)},decryptBlock:function(t,e){this._doCryptBlock(t,e,this._invSubKeys)},_doCryptBlock:function(i,n,o){this._lBlock=i[n],this._rBlock=i[n+1],t.call(this,4,252645135),t.call(this,16,65535),e.call(this,2,858993459),e.call(this,8,16711935),t.call(this,1,1431655765);for(var r=0;r<16;r++){for(var a=o[r],s=this._lBlock,c=this._rBlock,h=0,l=0;l<8;l++)h|=u[l][((c^a[l])&p[l])>>>0];this._lBlock=c,this._rBlock=s^h}var f=this._lBlock;this._lBlock=this._rBlock,this._rBlock=f,t.call(this,1,1431655765),e.call(this,8,16711935),e.call(this,2,858993459),t.call(this,16,65535),t.call(this,4,252645135),i[n]=this._lBlock,i[n+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});i.DES=r._createHelper(f);var d=a.TripleDES=r.extend({_doReset:function(){var t=this._key.words;this._des1=f.createEncryptor(o.create(t.slice(0,2))),this._des2=f.createEncryptor(o.create(t.slice(2,4))),this._des3=f.createEncryptor(o.create(t.slice(4,6)))},encryptBlock:function(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)},decryptBlock:function(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)},keySize:6,ivSize:2,blockSize:2});i.TripleDES=r._createHelper(d)}(),function(){function t(){for(var t=this._S,e=this._i,i=this._j,n=0,o=0;o<4;o++){i=(i+t[e=(e+1)%256])%256;var r=t[e];t[e]=t[i],t[i]=r,n|=t[(t[e]+t[i])%256]<<24-8*o}return this._i=e,this._j=i,n}var e=s,i=e.lib.StreamCipher,n=e.algo,o=n.RC4=i.extend({_doReset:function(){for(var t=this._key,e=t.words,i=t.sigBytes,n=this._S=[],o=0;o<256;o++)n[o]=o;o=0;for(var r=0;o<256;o++){var a=o%i,s=e[a>>>2]>>>24-a%4*8&255;r=(r+n[o]+s)%256;var c=n[o];n[o]=n[r],n[r]=c}this._i=this._j=0},_doProcessBlock:function(e,i){e[i]^=t.call(this)},keySize:8,ivSize:0});e.RC4=i._createHelper(o);var r=n.RC4Drop=o.extend({cfg:o.cfg.extend({drop:192}),_doReset:function(){o._doReset.call(this);for(var e=this.cfg.drop;e>0;e--)t.call(this)}});e.RC4Drop=i._createHelper(r)}(),s.mode.CTRGladman=function(){function t(t){if(255==(t>>24&255)){var e=t>>16&255,i=t>>8&255,n=255&t;255===e?(e=0,255===i?(i=0,255===n?n=0:++n):++i):++e,t=0,t+=e<<16,t+=i<<8,t+=n}else t+=1<<24;return t}function e(e){return 0===(e[0]=t(e[0]))&&(e[1]=t(e[1])),e}var i=s.lib.BlockCipherMode.extend(),n=i.Encryptor=i.extend({processBlock:function(t,i){var n=this._cipher,o=n.blockSize,r=this._iv,a=this._counter;r&&(a=this._counter=r.slice(0),this._iv=void 0),e(a);var s=a.slice(0);n.encryptBlock(s,0);for(var c=0;c>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,i=0;i<8;i++){var n=t[i]+e[i],o=65535&n,s=n>>>16,c=((o*o>>>17)+o*s>>>15)+s*s,h=((4294901760&n)*n|0)+((65535&n)*n|0);a[i]=c^h}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}var e=s,i=e.lib.StreamCipher,n=e.algo,o=[],r=[],a=[],c=n.Rabbit=i.extend({_doReset:function(){for(var e=this._key.words,i=this.cfg.iv,n=0;n<4;n++)e[n]=16711935&(e[n]<<8|e[n]>>>24)|4278255360&(e[n]<<24|e[n]>>>8);var o=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],r=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];for(this._b=0,n=0;n<4;n++)t.call(this);for(n=0;n<8;n++)r[n]^=o[n+4&7];if(i){var a=i.words,s=a[0],c=a[1],h=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),u=h>>>16|4294901760&l,p=l<<16|65535&h;for(r[0]^=h,r[1]^=u,r[2]^=l,r[3]^=p,r[4]^=h,r[5]^=u,r[6]^=l,r[7]^=p,n=0;n<4;n++)t.call(this)}},_doProcessBlock:function(e,i){var n=this._X;t.call(this),o[0]=n[0]^n[5]>>>16^n[3]<<16,o[1]=n[2]^n[7]>>>16^n[5]<<16,o[2]=n[4]^n[1]>>>16^n[7]<<16,o[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)o[r]=16711935&(o[r]<<8|o[r]>>>24)|4278255360&(o[r]<<24|o[r]>>>8),e[i+r]^=o[r]},blockSize:4,ivSize:2});e.Rabbit=i._createHelper(c)}(),s.mode.CTR=function(){var t=s.lib.BlockCipherMode.extend(),e=t.Encryptor=t.extend({processBlock:function(t,e){var i=this._cipher,n=i.blockSize,o=this._iv,r=this._counter;o&&(r=this._counter=o.slice(0),this._iv=void 0);var a=r.slice(0);i.encryptBlock(a,0),r[n-1]=r[n-1]+1|0;for(var s=0;s>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,i=0;i<8;i++){var n=t[i]+e[i],o=65535&n,s=n>>>16,c=((o*o>>>17)+o*s>>>15)+s*s,h=((4294901760&n)*n|0)+((65535&n)*n|0);a[i]=c^h}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}var e=s,i=e.lib.StreamCipher,n=e.algo,o=[],r=[],a=[],c=n.RabbitLegacy=i.extend({_doReset:function(){var e=this._key.words,i=this.cfg.iv,n=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],o=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];this._b=0;for(var r=0;r<4;r++)t.call(this);for(r=0;r<8;r++)o[r]^=n[r+4&7];if(i){var a=i.words,s=a[0],c=a[1],h=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),u=h>>>16|4294901760&l,p=l<<16|65535&h;for(o[0]^=h,o[1]^=u,o[2]^=l,o[3]^=p,o[4]^=h,o[5]^=u,o[6]^=l,o[7]^=p,r=0;r<4;r++)t.call(this)}},_doProcessBlock:function(e,i){var n=this._X;t.call(this),o[0]=n[0]^n[5]>>>16^n[3]<<16,o[1]=n[2]^n[7]>>>16^n[5]<<16,o[2]=n[4]^n[1]>>>16^n[7]<<16,o[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)o[r]=16711935&(o[r]<<8|o[r]>>>24)|4278255360&(o[r]<<24|o[r]>>>8),e[i+r]^=o[r]},blockSize:4,ivSize:2});e.RabbitLegacy=i._createHelper(c)}(),s.pad.ZeroPadding={pad:function(t,e){var i=4*e;t.clamp(),t.sigBytes+=i-(t.sigBytes%i||i)},unpad:function(t){for(var e=t.words,i=t.sigBytes-1;!(e[i>>>2]>>>24-i%4*8&255);)i--;t.sigBytes=i+1}},s}),cc._RF.pop()},{}],share:[function(t,e,i){"use strict";cc._RF.push(e,"7290caA39xMWZc2phTMKovP","share");var n=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(o,r){function a(t){try{c(n.next(t))}catch(e){r(e)}}function s(t){try{c(n.throw(t))}catch(e){r(e)}}function c(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,s)}c((n=n.apply(t,e||[])).next())})},o=this&&this.__generator||function(t,e){var i,n,o,r,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return c([t,e])}}function c(r){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(o=2&r[0]?n.return:r[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,r[1])).done)return o;switch(n=0,o&&(r=[2&r[0],o.value]),r[0]){case 0:case 1:o=r;break;case 4:return a.label++,{value:r[1],done:!1};case 5:a.label++,n=r[1],r=[0];continue;case 7:r=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===r[0]||2===r[0])){a=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]=0;i--)e.push(cc.v2(t[i].x,t[i].y));return e}function i(t){for(var e=[],i=0;i=this._duration},_cloneDecoration:function(t){t._repeatForever=this._repeatForever,t._speed=this._speed,t._timesForRepeat=this._timesForRepeat,t._easeList=this._easeList,t._speedMethod=this._speedMethod,t._repeatMethod=this._repeatMethod},_reverseEaseList:function(t){if(this._easeList){t._easeList=[];for(var e=0;e1.192092896e-7?this._duration:1.192092896e-7);e=1>e?e:1,this.update(e>0?e:0),this._repeatMethod&&this._timesForRepeat>1&&this.isDone()&&(this._repeatForever||this._timesForRepeat--,this.startWithTarget(this.target),this.step(this._elapsed-this._duration))},startWithTarget:function(t){cc.Action.prototype.startWithTarget.call(this,t),this._elapsed=0,this._firstTick=!0},reverse:function(){return cc.logID(1010),null},setAmplitudeRate:function(){cc.logID(1011)},getAmplitudeRate:function(){return cc.logID(1012),0},speed:function(t){return t<=0?(cc.logID(1013),this):(this._speedMethod=!0,this._speed*=t,this)},getSpeed:function(){return this._speed},setSpeed:function(t){return this._speed=t,this},repeat:function(t){return t=Math.round(t),isNaN(t)||t<1?(cc.logID(1014),this):(this._repeatMethod=!0,this._timesForRepeat*=t,this)},repeatForever:function(){return this._repeatMethod=!0,this._timesForRepeat=this.MAX_VALUE,this._repeatForever=!0,this}}),cc.actionInterval=function(t){return new cc.ActionInterval(t)},cc.Sequence=cc.Class({name:"cc.Sequence",extends:cc.ActionInterval,ctor:function(t){this._actions=[],this._split=null,this._last=0,this._reversed=!1;var e=t instanceof Array?t:arguments;if(1!==e.length){var i=e.length-1;if(i>=0&&null==e[i]&&cc.logID(1015),i>=0){for(var n,r=e[0],s=1;s1?e%1:e),this._last=n)},reverse:function(){var t=cc.Sequence._actionOneTwo(this._actions[1].reverse(),this._actions[0].reverse());return this._cloneDecoration(t),this._reverseEaseList(t),t._reversed=!0,t}}),cc.sequence=function(t){var e=t instanceof Array?t:arguments;if(1===e.length)return cc.errorID(1019),null;var i=e.length-1;i>=0&&null==e[i]&&cc.logID(1015);var n=null;if(i>=0){n=e[0];for(var r=1;r<=i;r++)e[r]&&(n=cc.Sequence._actionOneTwo(n,e[r]))}return n},cc.Sequence._actionOneTwo=function(t,e){var i=new cc.Sequence;return i.initWithTwoActions(t,e),i},cc.Repeat=cc.Class({name:"cc.Repeat",extends:cc.ActionInterval,ctor:function(t,e){this._times=0,this._total=0,this._nextDt=0,this._actionInstant=!1,this._innerAction=null,void 0!==e&&this.initWithAction(t,e)},initWithAction:function(t,e){var i=t._duration*e;return!!this.initWithDuration(i)&&(this._times=e,this._innerAction=t,t instanceof cc.ActionInstant&&(this._actionInstant=!0,this._times-=1),this._total=0,!0)},clone:function(){var t=new cc.Repeat;return this._cloneDecoration(t),t.initWithAction(this._innerAction.clone(),this._times),t},startWithTarget:function(t){this._total=0,this._nextDt=this._innerAction._duration/this._duration,cc.ActionInterval.prototype.startWithTarget.call(this,t),this._innerAction.startWithTarget(t)},stop:function(){this._innerAction.stop(),cc.Action.prototype.stop.call(this)},update:function(t){t=this._computeEaseTime(t);var e=this._innerAction,i=this._duration,n=this._times,r=this._nextDt;if(t>=r){for(;t>r&&this._total1?1:r;t>=1&&this._total=0&&null==e[i]&&cc.logID(1015),i>=0){for(var n,r=e[0],s=1;sr?this._two=cc.Sequence._actionOneTwo(e,cc.delayTime(n-r)):n0&&null==e[e.length-1]&&cc.logID(1015);for(var i=e[0],n=1;n180&&(i-=360),i<-180&&(i+=360),this._startAngle=e,this._angle=cc.RotateTo._reverse?i:-i},reverse:function(){cc.logID(1016)},update:function(t){t=this._computeEaseTime(t),this.target&&(this.target.angle=this._startAngle+this._angle*t)}}),cc.rotateTo=function(t,e){return new cc.RotateTo(t,e)},cc.RotateBy=cc.Class({name:"cc.RotateBy",extends:cc.ActionInterval,statics:{_reverse:!1},ctor:function(t,e){e*=cc.RotateBy._reverse?1:-1,this._deltaAngle=0,this._startAngle=0,void 0!==e&&this.initWithDuration(t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._deltaAngle=e,!0)},clone:function(){var t=new cc.RotateBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._deltaAngle),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._startAngle=t.angle},update:function(t){t=this._computeEaseTime(t),this.target&&(this.target.angle=this._startAngle+this._deltaAngle*t)},reverse:function(){var t=new cc.RotateBy;return t.initWithDuration(this._duration,-this._deltaAngle),this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.rotateBy=function(t,e){return new cc.RotateBy(t,e)},cc.MoveBy=cc.Class({name:"cc.MoveBy",extends:cc.ActionInterval,ctor:function(t,e,i){this._positionDelta=cc.v2(0,0),this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),void 0!==e&&cc.MoveBy.prototype.initWithDuration.call(this,t,e,i)},initWithDuration:function(t,e,i){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(void 0!==e.x&&(i=e.y,e=e.x),this._positionDelta.x=e,this._positionDelta.y=i,!0)},clone:function(){var t=new cc.MoveBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._positionDelta),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.x,i=t.y;this._previousPosition.x=e,this._previousPosition.y=i,this._startPosition.x=e,this._startPosition.y=i},update:function(t){if(t=this._computeEaseTime(t),this.target){var e=this._positionDelta.x*t,i=this._positionDelta.y*t,n=this._startPosition;if(cc.macro.ENABLE_STACKABLE_ACTIONS){var r=this.target.x,s=this.target.y,a=this._previousPosition;n.x=n.x+r-a.x,n.y=n.y+s-a.y,e+=n.x,i+=n.y,a.x=e,a.y=i,this.target.setPosition(e,i)}else this.target.setPosition(n.x+e,n.y+i)}},reverse:function(){var t=new cc.MoveBy(this._duration,cc.v2(-this._positionDelta.x,-this._positionDelta.y));return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.moveBy=function(t,e,i){return new cc.MoveBy(t,e,i)},cc.MoveTo=cc.Class({name:"cc.MoveTo",extends:cc.MoveBy,ctor:function(t,e,i){this._endPosition=cc.v2(0,0),void 0!==e&&this.initWithDuration(t,e,i)},initWithDuration:function(t,e,i){return!!cc.MoveBy.prototype.initWithDuration.call(this,t,e,i)&&(void 0!==e.x&&(i=e.y,e=e.x),this._endPosition.x=e,this._endPosition.y=i,!0)},clone:function(){var t=new cc.MoveTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endPosition),t},startWithTarget:function(t){cc.MoveBy.prototype.startWithTarget.call(this,t),this._positionDelta.x=this._endPosition.x-t.x,this._positionDelta.y=this._endPosition.y-t.y}}),cc.moveTo=function(t,e,i){return new cc.MoveTo(t,e,i)},cc.SkewTo=cc.Class({name:"cc.SkewTo",extends:cc.ActionInterval,ctor:function(t,e,i){this._skewX=0,this._skewY=0,this._startSkewX=0,this._startSkewY=0,this._endSkewX=0,this._endSkewY=0,this._deltaX=0,this._deltaY=0,void 0!==i&&cc.SkewTo.prototype.initWithDuration.call(this,t,e,i)},initWithDuration:function(t,e,i){var n=!1;return cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._endSkewX=e,this._endSkewY=i,n=!0),n},clone:function(){var t=new cc.SkewTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endSkewX,this._endSkewY),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._startSkewX=t.skewX%180,this._deltaX=this._endSkewX-this._startSkewX,this._deltaX>180&&(this._deltaX-=360),this._deltaX<-180&&(this._deltaX+=360),this._startSkewY=t.skewY%360,this._deltaY=this._endSkewY-this._startSkewY,this._deltaY>180&&(this._deltaY-=360),this._deltaY<-180&&(this._deltaY+=360)},update:function(t){t=this._computeEaseTime(t),this.target.skewX=this._startSkewX+this._deltaX*t,this.target.skewY=this._startSkewY+this._deltaY*t}}),cc.skewTo=function(t,e,i){return new cc.SkewTo(t,e,i)},cc.SkewBy=cc.Class({name:"cc.SkewBy",extends:cc.SkewTo,ctor:function(t,e,i){void 0!==i&&this.initWithDuration(t,e,i)},initWithDuration:function(t,e,i){var n=!1;return cc.SkewTo.prototype.initWithDuration.call(this,t,e,i)&&(this._skewX=e,this._skewY=i,n=!0),n},clone:function(){var t=new cc.SkewBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._skewX,this._skewY),t},startWithTarget:function(t){cc.SkewTo.prototype.startWithTarget.call(this,t),this._deltaX=this._skewX,this._deltaY=this._skewY,this._endSkewX=this._startSkewX+this._deltaX,this._endSkewY=this._startSkewY+this._deltaY},reverse:function(){var t=new cc.SkewBy(this._duration,-this._skewX,-this._skewY);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.skewBy=function(t,e,i){return new cc.SkewBy(t,e,i)},cc.JumpBy=cc.Class({name:"cc.JumpBy",extends:cc.ActionInterval,ctor:function(t,e,i,n,r){this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),this._delta=cc.v2(0,0),this._height=0,this._jumps=0,void 0!==n&&cc.JumpBy.prototype.initWithDuration.call(this,t,e,i,n,r)},initWithDuration:function(t,e,i,n,r){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(void 0===r&&(r=n,n=i,i=e.y,e=e.x),this._delta.x=e,this._delta.y=i,this._height=n,this._jumps=r,!0)},clone:function(){var t=new cc.JumpBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._delta,this._height,this._jumps),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.x,i=t.y;this._previousPosition.x=e,this._previousPosition.y=i,this._startPosition.x=e,this._startPosition.y=i},update:function(t){if(t=this._computeEaseTime(t),this.target){var e=t*this._jumps%1,i=4*this._height*e*(1-e);i+=this._delta.y*t;var n=this._delta.x*t,r=this._startPosition;if(cc.macro.ENABLE_STACKABLE_ACTIONS){var s=this.target.x,a=this.target.y,o=this._previousPosition;r.x=r.x+s-o.x,r.y=r.y+a-o.y,n+=r.x,i+=r.y,o.x=n,o.y=i,this.target.setPosition(n,i)}else this.target.setPosition(r.x+n,r.y+i)}},reverse:function(){var t=new cc.JumpBy(this._duration,cc.v2(-this._delta.x,-this._delta.y),this._height,this._jumps);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.jumpBy=function(t,e,i,n,r){return new cc.JumpBy(t,e,i,n,r)},cc.JumpTo=cc.Class({name:"cc.JumpTo",extends:cc.JumpBy,ctor:function(t,e,i,n,r){this._endPosition=cc.v2(0,0),void 0!==n&&this.initWithDuration(t,e,i,n,r)},initWithDuration:function(t,e,i,n,r){return!!cc.JumpBy.prototype.initWithDuration.call(this,t,e,i,n,r)&&(void 0===r&&(i=e.y,e=e.x),this._endPosition.x=e,this._endPosition.y=i,!0)},startWithTarget:function(t){cc.JumpBy.prototype.startWithTarget.call(this,t),this._delta.x=this._endPosition.x-this._startPosition.x,this._delta.y=this._endPosition.y-this._startPosition.y},clone:function(){var t=new cc.JumpTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endPosition,this._height,this._jumps),t}}),cc.jumpTo=function(t,e,i,n,r){return new cc.JumpTo(t,e,i,n,r)},cc.BezierBy=cc.Class({name:"cc.BezierBy",extends:cc.ActionInterval,ctor:function(t,e){this._config=[],this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),e&&cc.BezierBy.prototype.initWithDuration.call(this,t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._config=e,!0)},clone:function(){var t=new cc.BezierBy;this._cloneDecoration(t);for(var e=[],i=0;ie/2?255:0}},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._originalState=t.opacity},stop:function(){this.target.opacity=this._originalState,cc.ActionInterval.prototype.stop.call(this)},reverse:function(){var t=new cc.Blink(this._duration,this._times);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.blink=function(t,e){return new cc.Blink(t,e)},cc.FadeTo=cc.Class({name:"cc.FadeTo",extends:cc.ActionInterval,ctor:function(t,e){this._toOpacity=0,this._fromOpacity=0,void 0!==e&&cc.FadeTo.prototype.initWithDuration.call(this,t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._toOpacity=e,!0)},clone:function(){var t=new cc.FadeTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t},update:function(t){t=this._computeEaseTime(t);var e=void 0!==this._fromOpacity?this._fromOpacity:255;this.target.opacity=e+(this._toOpacity-e)*t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._fromOpacity=t.opacity}}),cc.fadeTo=function(t,e){return new cc.FadeTo(t,e)},cc.FadeIn=cc.Class({name:"cc.FadeIn",extends:cc.FadeTo,ctor:function(t){null==t&&(t=0),this._reverseAction=null,this.initWithDuration(t,255)},reverse:function(){var t=new cc.FadeOut;return t.initWithDuration(this._duration,0),this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.FadeIn;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t},startWithTarget:function(t){this._reverseAction&&(this._toOpacity=this._reverseAction._fromOpacity),cc.FadeTo.prototype.startWithTarget.call(this,t)}}),cc.fadeIn=function(t){return new cc.FadeIn(t)},cc.FadeOut=cc.Class({name:"cc.FadeOut",extends:cc.FadeTo,ctor:function(t){null==t&&(t=0),this._reverseAction=null,this.initWithDuration(t,0)},reverse:function(){var t=new cc.FadeIn;return t._reverseAction=this,t.initWithDuration(this._duration,255),this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.FadeOut;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t}}),cc.fadeOut=function(t){return new cc.FadeOut(t)},cc.TintTo=cc.Class({name:"cc.TintTo",extends:cc.ActionInterval,ctor:function(t,e,i,n){this._to=cc.color(0,0,0),this._from=cc.color(0,0,0),e instanceof cc.Color&&(n=e.b,i=e.g,e=e.r),void 0!==n&&this.initWithDuration(t,e,i,n)},initWithDuration:function(t,e,i,n){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._to=cc.color(e,i,n),!0)},clone:function(){var t=new cc.TintTo;this._cloneDecoration(t);var e=this._to;return t.initWithDuration(this._duration,e.r,e.g,e.b),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._from=this.target.color},update:function(t){t=this._computeEaseTime(t);var e=this._from,i=this._to;e&&(this.target.color=cc.color(e.r+(i.r-e.r)*t,e.g+(i.g-e.g)*t,e.b+(i.b-e.b)*t))}}),cc.tintTo=function(t,e,i,n){return new cc.TintTo(t,e,i,n)},cc.TintBy=cc.Class({name:"cc.TintBy",extends:cc.ActionInterval,ctor:function(t,e,i,n){this._deltaR=0,this._deltaG=0,this._deltaB=0,this._fromR=0,this._fromG=0,this._fromB=0,void 0!==n&&this.initWithDuration(t,e,i,n)},initWithDuration:function(t,e,i,n){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._deltaR=e,this._deltaG=i,this._deltaB=n,!0)},clone:function(){var t=new cc.TintBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._deltaR,this._deltaG,this._deltaB),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.color;this._fromR=e.r,this._fromG=e.g,this._fromB=e.b},update:function(t){t=this._computeEaseTime(t),this.target.color=cc.color(this._fromR+this._deltaR*t,this._fromG+this._deltaG*t,this._fromB+this._deltaB*t)},reverse:function(){var t=new cc.TintBy(this._duration,-this._deltaR,-this._deltaG,-this._deltaB);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.tintBy=function(t,e,i,n){return new cc.TintBy(t,e,i,n)},cc.DelayTime=cc.Class({name:"cc.DelayTime",extends:cc.ActionInterval,update:function(){},reverse:function(){var t=new cc.DelayTime(this._duration);return this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.DelayTime;return this._cloneDecoration(t),t.initWithDuration(this._duration),t}}),cc.delayTime=function(t){return new cc.DelayTime(t)},cc.ReverseTime=cc.Class({name:"cc.ReverseTime",extends:cc.ActionInterval,ctor:function(t){this._other=null,t&&this.initWithAction(t)},initWithAction:function(t){return t?t===this._other?(cc.errorID(1029),!1):!!cc.ActionInterval.prototype.initWithDuration.call(this,t._duration)&&(this._other=t,!0):(cc.errorID(1028),!1)},clone:function(){var t=new cc.ReverseTime;return this._cloneDecoration(t),t.initWithAction(this._other.clone()),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._other.startWithTarget(t)},update:function(t){t=this._computeEaseTime(t),this._other&&this._other.update(1-t)},reverse:function(){return this._other.clone()},stop:function(){this._other.stop(),cc.Action.prototype.stop.call(this)}}),cc.reverseTime=function(t){return new cc.ReverseTime(t)},cc.TargetedAction=cc.Class({name:"cc.TargetedAction",extends:cc.ActionInterval,ctor:function(t,e){this._action=null,this._forcedTarget=null,e&&this.initWithTarget(t,e)},initWithTarget:function(t,e){return!!this.initWithDuration(e._duration)&&(this._forcedTarget=t,this._action=e,!0)},clone:function(){var t=new cc.TargetedAction;return this._cloneDecoration(t),t.initWithTarget(this._forcedTarget,this._action.clone()),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._action.startWithTarget(this._forcedTarget)},stop:function(){this._action.stop()},update:function(t){t=this._computeEaseTime(t),this._action.update(t)},getForcedTarget:function(){return this._forcedTarget},setForcedTarget:function(t){this._forcedTarget!==t&&(this._forcedTarget=t)}}),cc.targetedAction=function(t,e){return new cc.TargetedAction(t,e)}}),{}],6:[(function(t){"use strict";t("../core/platform/CCClass");var e=t("../core/platform/js"),i=function(){this.actions=[],this.target=null,this.actionIndex=0,this.currentAction=null,this.paused=!1,this.lock=!1};cc.ActionManager=function(){this._hashTargets=e.createMap(!0),this._arrayTargets=[],this._currentTarget=null,cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},cc.ActionManager.prototype={constructor:cc.ActionManager,_elementPool:[],_searchElementByTarget:function(t,e){for(var i=0;i=n&&i.actionIndex--;break}}},_removeActionByTag:function(t,e,i){for(var n=0,r=e.actions.length;n=0;--n){var r=e.actions[n];if(r&&r.getTag()===t){if(i&&r.getOriginalTarget()!==i)continue;this._removeActionAtIndex(n,e)}}},removeActionByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1002);var i=this._hashTargets;if(e){var n=i[e._id];n&&this._removeActionByTag(t,n,e)}else for(var r in i){var s=i[r];this._removeActionByTag(t,s)}},removeAllActionsByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1002);var i=this._hashTargets;if(e){var n=i[e._id];n&&this._removeAllActionsByTag(t,n,e)}else for(var r in i){var s=i[r];this._removeAllActionsByTag(t,s)}},getActionByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1004);var i=this._hashTargets[e._id];if(i){if(null!=i.actions)for(var n=0;n=t&&e.actionIndex--,0===e.actions.length&&this._deleteHashElement(e)},_deleteHashElement:function(t){var e=!1;if(t&&!t.lock&&this._hashTargets[t.target._id]){delete this._hashTargets[t.target._id];for(var i=this._arrayTargets,n=0,r=i.length;n=1?t:r%n>n/2?255:0},this.to(t,{opacity:1},i)}});var a=[];function o(t){return function(){a.length=0;for(var e=arguments.length,i=0;i=0?d=u.events[p]:(d=new a,u.ratios.push(f),u.events.push(d)),d.add(_.func,_.params)}}l.playState=function(t,e){t.clip&&(t.curveLoaded||h(this.target,t),t.animator=this,t.play(),"number"==typeof e&&t.setTime(e),this.play())},l.stopStatesExcept=function(t){var e=this._anims,i=e.array;for(e.i=0;e.i=0?(this._anims.fastRemoveAt(e),0===this._anims.array.length&&this.stop()):cc.errorID(3907),t.animator=null},l.sample=function(){var t=this._anims,e=t.array;for(t.i=0;t.i1e-6){y=!1;break}u._findFrameIndex=y?s:o;var A=u.values[0];return null==A||u._lerp||("number"==typeof A?u._lerp=r.prototype._lerpNumber:A instanceof cc.Quat?u._lerp=r.prototype._lerpQuat:A instanceof cc.Vec2?u._lerp=r.prototype._lerpVector2:A instanceof cc.Vec3?u._lerp=r.prototype._lerpVector3:A.lerp&&(u._lerp=r.prototype._lerpObject)),u},createTargetCurves:function(t,e,i){var n=e.props,r=e.comps;if(n)for(var s in n){var a=n[s],o=this.createPropCurve(t,s,a);i.push(o)}if(r)for(var c in r){var u=t.getComponent(c);if(u){var l=r[c];for(var h in l){var _=l[h],f=this.createPropCurve(u,h,_);i.push(f)}}}},createCurves:function(t,e){var i=this.curveData,n=i.paths,r=[];for(var s in this.createTargetCurves(e,i,r),n){var a=cc.find(s,e);if(a){var o=n[s];this.createTargetCurves(a,o,r)}}return r}});cc.AnimationClip=e.exports=c}),{"../core/utils/binary-search":217,"./animation-curves":11,"./motion-path-helper":17,"./types":19}],11:[(function(t,e){"use strict";var i=t("./bezier").bezierByTime,n=t("../core/utils/binary-search").binarySearchEpsilon,r=t("./types").WrapModeMask,s=t("./types").WrappedInfo;function a(t,e){if("string"==typeof e){var n=cc.easing[e];n?t=n(t):cc.errorID(3906,e)}else Array.isArray(e)&&(t=i(e,t));return t}var o=cc.Class({name:"cc.AnimCurve",sample:function(){},onTimeChangedManually:void 0});var c,u=cc.Class({name:"cc.DynamicAnimCurve",extends:o,ctor:function(){this._cachedIndex=0},properties:{target:null,prop:"",values:[],ratios:[],types:[]},_findFrameIndex:n,_lerp:void 0,_lerpNumber:function(t,e,i){return t+(e-t)*i},_lerpObject:function(t,e,i){return t.lerp(e,i)},_lerpQuat:(c=cc.quat(),function(t,e,i){return t.lerp(e,i,c)}),_lerpVector2:(function(){var t=cc.v2();return function(e,i,n){return e.lerp(i,n,t)}})(),_lerpVector3:(function(){var t=cc.v3();return function(e,i,n){return e.lerp(i,n,t)}})(),sample:function(t,e){var i=this.values,n=this.ratios,r=n.length;if(0!==r){var s,o=!0,c=this._cachedIndex;if(c<0&&(c=~c)>0&&cu&&e=r)s=i[r-1];else{var _=i[h-1];if(this._lerp){var f=n[h-1],d=n[h],p=this.types[h-1],v=(e-f)/(d-f);p&&(v=a(v,p));var g=i[h];s=this._lerp(_,g,v)}else s=_}else s=i[h];this.target[this.prop]=s}}});u.Linear=null,u.Bezier=function(t){return t};var l=function(){this.events=[]};l.prototype.add=function(t,e){this.events.push({func:t||"",params:e||[]})};var h=cc.Class({name:"cc.EventAnimCurve",extends:o,properties:{target:null,ratios:[],events:[],_wrappedInfo:{default:function(){return new s}},_lastWrappedInfo:null,_ignoreIndex:NaN},_wrapIterations:function(t){return t-(0|t)==0&&(t-=1),0|t},sample:function(t,e,i){var a=this.ratios.length,o=i.getWrappedInfo(i.time,this._wrappedInfo),c=o.direction,u=n(this.ratios,o.ratio);if(u<0&&(u=~u-1,c<0&&(u+=1)),this._ignoreIndex!==u&&(this._ignoreIndex=NaN),o.frameIndex=u,!this._lastWrappedInfo)return this._fireEvent(u),void(this._lastWrappedInfo=new s(o));var l=i.wrapMode,h=this._wrapIterations(o.iterations),_=this._lastWrappedInfo,f=this._wrapIterations(_.iterations),d=_.frameIndex,p=_.direction,v=-1!==f&&h!==f;if(d===u&&v&&1===a)this._fireEvent(0);else if(d!==u||v){c=p;do{if(d!==u){if(-1===c&&0===d&&u>0?((l&r.PingPong)===r.PingPong?c*=-1:d=a,f++):1===c&&d===a-1&&uh)break}d+=c,cc.director.getAnimationManager().pushDelayEvent(this,"_fireEvent",[d])}while(d!==u&&d>-1&&d=this.events.length||this._ignoreIndex===t)){var e=this.events[t].events;if(this.target.isValid)for(var i=this.target._components,n=0;nr)return~t.length;var s=(e=(e-n)/(r-n))/(1/i),a=0|s;return s-a<1e-6?a:a+1-s<1e-6?a+1:~(a+1)}}}),{"../core/utils/binary-search":217,"./bezier":14,"./types":19}],12:[(function(t,e){"use strict";var i=cc.js,n=cc.Class({ctor:function(){this._anims=new i.array.MutableForwardIterator([]),this._delayEvents=[],cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},update:function(t){var e=this._anims,i=e.array;for(e.i=0;e.i=0?this._anims.fastRemoveAt(e):cc.errorID(3907)},pushDelayEvent:function(t,e,i){this._delayEvents.push({target:t,func:e,args:i})}});cc.AnimationManager=e.exports=n}),{}],13:[(function(t,e){"use strict";var i=cc.js,n=t("./playable"),r=t("./types"),s=r.WrappedInfo,a=r.WrapMode,o=r.WrapModeMask;function c(t,e){n.call(this),this._currentFramePlayed=!1,this._delay=0,this._delayTime=0,this._wrappedInfo=new s,this._lastWrappedInfo=null,this._process=l,this._clip=t,this._name=e||t&&t.name,this.animator=null,this.curves=[],this.delay=0,this.repeatCount=1,this.duration=1,this.speed=1,this.wrapMode=a.Normal,this.time=0,this._target=null,this._lastframeEventOn=!1,this.emit=function(){for(var t=new Array(arguments.length),e=0,i=t.length;e1&&(0|e.iterations)>(0|t.iterations)&&this.emit("lastframe",this),t.set(e)),e.stopped&&(this.stop(),this.emit("finished",this))}function h(){var t=this.time,e=this.duration;t>e?0==(t%=e)&&(t=e):t<0&&0!=(t%=e)&&(t+=e);for(var i=t/e,n=this.curves,r=0,s=n.length;r0&&this._lastIterations>i||this.time<0&&this._lastIterations0&&(this._delayTime-=t,this._delayTime>0)||(this._currentFramePlayed?this.time+=t*this.speed:this._currentFramePlayed=!0,this._process())},u._needRevers=function(t){var e=this.wrapMode,i=!1;return(e&o.PingPong)===o.PingPong&&(t-(0|t)==0&&t>0&&(t-=1),1&t&&(i=!i)),(e&o.Reverse)===o.Reverse&&(i=!i),i},u.getWrappedInfo=function(t,e){e=e||new s;var i=!1,n=this.duration,r=this.repeatCount,a=t>0?t/n:-t/n;if(a>=r){a=r,i=!0;var c=r-(0|r);0===c&&(c=1),t=c*n*(t>0?1:-1)}if(t>n){var u=t%n;t=0===u?n:u}else t<0&&0!=(t%=n)&&(t+=n);var l=!1,h=this._wrapMode&o.ShouldWrap;h&&(l=this._needRevers(a));var _=l?-1:1;return this.speed<0&&(_*=-1),h&&l&&(t=n-t),e.ratio=t/n,e.time=t,e.direction=_,e.stopped=i,e.iterations=a,e},u.sample=function(){for(var t=this.getWrappedInfo(this.time,this._wrappedInfo),e=this.curves,i=0,n=e.length;i0}),(function(){this.curves.length=0})),i.getset(u,"wrapMode",(function(){return this._wrapMode}),(function(t){this._wrapMode=t,this.time=0,t&o.Loop?this.repeatCount=1/0:this.repeatCount=1})),i.getset(u,"repeatCount",(function(){return this._repeatCount}),(function(t){this._repeatCount=t;var e=this._wrapMode&o.ShouldWrap,i=(this.wrapMode&o.Reverse)===o.Reverse;this._process=t!==1/0||e||i?l:h})),i.getset(u,"delay",(function(){return this._delay}),(function(t){this._delayTime=this._delay=t})),cc.AnimationState=e.exports=c}),{"./playable":18,"./types":19}],14:[(function(t,e){"use strict";var i=Math.cos,n=Math.acos,r=Math.max,s=2*Math.PI,a=Math.sqrt;function o(t){return t<0?-Math.pow(-t,1/3):Math.pow(t,1/3)}function c(t,e){var c,u,l,h,_=e-0,f=e-t[0],d=3*_,p=3*f,v=3*(e-t[2]),g=1/(-_+p-v+(e-1)),m=(d-6*f+v)*g,y=m*(1/3),T=(-d+p)*g,E=1/3*(3*T-m*m),A=E*(1/3),C=(2*m*m*m-9*m*T+_*g*27)/27,x=C/2,b=x*x+A*A*A;if(b<0){var S=1/3*-E,R=a(S*S*S),w=-C/(2*R),I=n(w<-1?-1:w>1?1:w),M=2*o(R);return u=M*i(I*(1/3))-y,l=M*i((I+s)*(1/3))-y,h=M*i((I+2*s)*(1/3))-y,0<=u&&u<=1?0<=l&&l<=1?0<=h&&h<=1?r(u,l,h):r(u,l):0<=h&&h<=1?r(u,h):u:0<=l&&l<=1?0<=h&&h<=1?r(l,h):l:h}if(0===b)return l=-(c=x<0?o(-x):-o(x))-y,0<=(u=2*c-y)&&u<=1?0<=l&&l<=1?r(u,l):u:l;var O=a(b);return(c=o(-x+O))-o(x+O)-y}e.exports={bezier:function(t,e,i,n,r){var s=1-r;return s*(s*(t+(3*e-t)*r)+3*i*r*r)+n*r*r*r},bezierByTime:function(t,e){var i=c(t,e),n=t[1];return((1-i)*(n+(t[3]-n)*i)*3+i*i)*i}}}),{}],15:[(function(t,e){"use strict";var i={constant:function(){return 0},linear:function(t){return t},quadIn:function(t){return t*t},quadOut:function(t){return t*(2-t)},quadInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quartIn:function(t){return t*t*t*t},quartOut:function(t){return 1- --t*t*t*t},quartInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quintIn:function(t){return t*t*t*t*t},quintOut:function(t){return--t*t*t*t*t+1},quintInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sineIn:function(t){return 1-Math.cos(t*Math.PI/2)},sineOut:function(t){return Math.sin(t*Math.PI/2)},sineInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},expoIn:function(t){return 0===t?0:Math.pow(1024,t-1)},expoOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},expoInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circIn:function(t){return 1-Math.sqrt(1-t*t)},circOut:function(t){return Math.sqrt(1- --t*t)},circInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),-i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4))},elasticOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),i*Math.pow(2,-10*t)*Math.sin(2*(t-e)*Math.PI/.4)+1)},elasticInOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),(t*=2)<1?i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*-.5:i*Math.pow(2,-10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-i.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*i.bounceIn(2*t):.5*i.bounceOut(2*t-1)+.5},smooth:function(t){return t<=0?0:t>=1?1:t*t*(3-2*t)},fade:function(t){return t<=0?0:t>=1?1:t*t*t*(t*(6*t-15)+10)}};function n(t,e){return function(i){return i<.5?e(2*i)/2:t(2*i-1)/2+.5}}i.quadOutIn=n(i.quadIn,i.quadOut),i.cubicOutIn=n(i.cubicIn,i.cubicOut),i.quartOutIn=n(i.quartIn,i.quartOut),i.quintOutIn=n(i.quintIn,i.quintOut),i.sineOutIn=n(i.sineIn,i.sineOut),i.expoOutIn=n(i.expoIn,i.expoOut),i.circOutIn=n(i.circIn,i.circOut),i.backOutIn=n(i.backIn,i.backOut),i.bounceIn=function(t){return 1-i.bounceOut(1-t)},i.bounceInOut=function(t){return t<.5?.5*i.bounceIn(2*t):.5*i.bounceOut(2*t-1)+.5},i.bounceOutIn=n(i.bounceIn,i.bounceOut),cc.easing=e.exports=i}),{}],16:[(function(t){"use strict";t("./bezier"),t("./easing"),t("./types"),t("./motion-path-helper"),t("./animation-curves"),t("./animation-clip"),t("./animation-manager"),t("./animation-state"),t("./animation-animator")}),{"./animation-animator":9,"./animation-clip":10,"./animation-curves":11,"./animation-manager":12,"./animation-state":13,"./bezier":14,"./easing":15,"./motion-path-helper":17,"./types":19}],17:[(function(t,e){"use strict";var i=t("./animation-curves").DynamicAnimCurve,n=t("./animation-curves").computeRatioByType,r=t("./bezier").bezier,s=t("../core/utils/binary-search").binarySearchEpsilon,a=cc.v2;function o(t){this.points=t||[],this.beziers=[],this.ratios=[],this.progresses=[],this.length=0,this.computeBeziers()}function c(){this.start=a(),this.end=a(),this.startCtrlPoint=a(),this.endCtrlPoint=a()}function u(t){if(!Array.isArray(t))return!1;for(var e=0,i=t.length;e0)){c=r;break}c=r-1}if(n[r=c]===i)return r/(s-1);var u=n[r];return(r+(i-u)/(n[r+1]-u))/(s-1)},e.exports={sampleMotionPaths:function(t,e,r,c,l){function h(t){return t instanceof cc.Vec2?{in:t,pos:t,out:t}:Array.isArray(t)&&6===t.length?{in:a(t[2],t[3]),pos:a(t[0],t[1]),out:a(t[4],t[5])}:{in:cc.Vec2.ZERO,pos:cc.Vec2.ZERO,out:cc.Vec2.ZERO}}var _=e.values=e.values.map((function(t){return Array.isArray(t)&&(t=2===t.length?cc.v2(t[0],t[1]):cc.v3(t[0],t[1],t[2])),t}));if(0!==t.length&&0!==_.length){for(var f=!1,d=0;d0){f=!0;break}}if(f&&1!==_.length){for(var v=e.types,g=e.ratios,m=e.values=[],y=e.types=[],T=e.ratios=[],E=0,A=i.Linear,C=0,x=t.length;C0){var N=[];N.push(h(I));for(var F=0,B=S.length;F1e-6;){var V,H,W,G;if((b=n(b=L,O))<0)G=(0-b)*(H=z.beziers[0]).getLength(),W=H.start.sub(H.endCtrlPoint).normalize(),V=H.start.add(W.mul(G));else if(b>1)G=(b-1)*(H=z.beziers[z.beziers.length-1]).getLength(),W=H.end.sub(H.startCtrlPoint).normalize(),V=H.end.add(W.mul(G));else{var j=s(k,b);j<0&&(j=~j),b-=j>0?k[j-1]:0,b/=z.ratios[j],V=z.beziers[j].getPointAt(b)}D.push(V),L+=P}}else for(;1-L>1e-6;)b=n(b=L,O),D.push(I.lerp(M,b)),L+=P;for(A="constant"===O?O:i.Linear,F=0,B=D.length;F1e-6?(L-1)*w:0}g[g.length-1]!==T[T.length-1]&&X(_[_.length-1],A,g[g.length-1])}}function X(t,e,i){m.push(t),y.push(e),T.push(i)}},Curve:o,Bezier:c}}),{"../core/utils/binary-search":217,"./animation-curves":11,"./bezier":14}],18:[(function(t,e){"use strict";var i=cc.js,n=t("../core/CCDebug");function r(){this._isPlaying=!1,this._isPaused=!1,this._stepOnce=!1}var s=r.prototype;i.get(s,"isPlaying",(function(){return this._isPlaying}),!0),i.get(s,"isPaused",(function(){return this._isPaused}),!0);var a=function(){};s.onPlay=a,s.onPause=a,s.onResume=a,s.onStop=a,s.onError=a,s.play=function(){this._isPlaying?this._isPaused?(this._isPaused=!1,this.onResume()):this.onError(n.getError(3912)):(this._isPlaying=!0,this.onPlay())},s.stop=function(){this._isPlaying&&(this._isPlaying=!1,this.onStop(),this._isPaused=!1)},s.pause=function(){this._isPlaying&&!this._isPaused&&(this._isPaused=!0,this.onPause())},s.resume=function(){this._isPlaying&&this._isPaused&&(this._isPaused=!1,this.onResume())},s.step=function(){this.pause(),this._stepOnce=!0,this._isPlaying||this.play()},e.exports=r}),{"../core/CCDebug":22}],19:[(function(t,e){"use strict";var i={Loop:2,ShouldWrap:4,PingPong:22,Reverse:36},n=cc.Enum({Default:0,Normal:1,Reverse:i.Reverse,Loop:i.Loop,LoopReverse:i.Loop|i.Reverse,PingPong:i.PingPong,PingPongReverse:i.PingPong|i.Reverse});function r(t){t?this.set(t):(this.ratio=0,this.time=0,this.direction=1,this.stopped=!0,this.iterations=0,this.frameIndex=void 0)}cc.WrapMode=n,r.prototype.set=function(t){this.ratio=t.ratio,this.time=t.time,this.direction=t.direction,this.stopped=t.stopped,this.iterations=t.iterations,this.frameIndex=t.frameIndex},e.exports={WrapModeMask:i,WrapMode:n,WrappedInfo:r}}),{}],20:[(function(t,e){"use strict";var i,n,r=t("../core/event/event-target"),s=t("../core/platform/CCSys"),a=t("../core/assets/CCAudioClip").LoadMode,o=!1,c=[],u=function t(e){r.call(this),this._shouldRecycleOnEnded=!1,this._src=e,this._element=null,this.id=0,this._state=t.State.INITIALZING;var i=this;this._onended=function(){i._state=t.State.STOPPED,i.emit("ended")},this._onendedSecond=function(){i._unbindEnded(i._onendedSecond),i._bindEnded()}};cc.js.extend(u,r),u.State={ERROR:-1,INITIALZING:0,PLAYING:1,PAUSED:2,STOPPED:3},(i=u.prototype)._bindEnded=function(t){if(!(t=t||this._onended)._binded){t._binded=!0;var e=this._element;this._src&&e instanceof HTMLAudioElement?e.addEventListener("ended",t):e.onended=t}},i._unbindEnded=function(t){if((t=t||this._onended)._binded){t._binded=!1;var e=this._element;e instanceof HTMLAudioElement?e.removeEventListener("ended",t):e&&(e.onended=null)}},i._onLoaded=function(){this._createElement(),this._state=u.State.INITIALZING,this.setVolume(1),this.setLoop(!1)},i._createElement=function(){var t=this._src._nativeAsset;t instanceof HTMLAudioElement?(this._element||(this._element=document.createElement("audio")),this._element.src=t.src):this._element=new l(t,this)},i.play=function(){var t=this;this._src&&this._src._ensureLoaded((function(){t._state=u.State.PLAYING,t._bindEnded();var e=t._element.play();window.Promise&&e instanceof Promise&&e.catch((function(){})),t._touchToPlay()}))},i._touchToPlay=function(){if(this._src&&this._src.loadMode===a.DOM_AUDIO&&this._element.paused&&c.push({instance:this,offset:0,audio:this._element}),!o){o=!0;var t="ontouchend"in window?"touchend":"mousedown";cc.game.canvas.addEventListener(t,(function(){for(var t;t=c.pop();)t.audio.play(t.offset)}))}},i.destroy=function(){this._element=null},i.pause=function(){if(this.getState()===u.State.PLAYING){var t=this;this._src&&this._src._ensureLoaded((function(){t._unbindEnded(),t._element.pause(),t._state=u.State.PAUSED}))}},i.resume=function(){if(this.getState()===u.State.PAUSED){var t=this;this._src&&this._src._ensureLoaded((function(){t._bindEnded(),t._element.play(),t._state=u.State.PLAYING}))}},i.stop=function(){var t=this;this._src&&this._src._ensureLoaded((function(){t._element.pause(),t._element.currentTime=0;for(var e=0;ethis._buffer.duration)},enumerable:!0,configurable:!0}),Object.defineProperty(t,"loop",{get:function(){return this._loop},set:function(t){return this._currentSource&&(this._currentSource.loop=t),this._loop=t},enumerable:!0,configurable:!0}),Object.defineProperty(t,"volume",{get:function(){return this._volume},set:function(t){if(this._volume=t,this._gainObj.gain.setTargetAtTime)try{this._gainObj.gain.setTargetAtTime(t,this._context.currentTime,n)}catch(e){this._gainObj.gain.setTargetAtTime(t,this._context.currentTime,.01)}else this._gainObj.gain.value=t;s.os===s.OS_IOS&&!this.paused&&this._currentSource&&(this._currentSource.onended=null,this.pause(),this.play())},enumerable:!0,configurable:!0}),Object.defineProperty(t,"currentTime",{get:function(){return this.paused?this.playedLength:(this.playedLength=this._context.currentTime-this._startTime,this.playedLength%=this._buffer.duration,this.playedLength)},set:function(t){return this.paused?this.playedLength=t:(this.pause(),this.playedLength=t,this.play()),t},enumerable:!0,configurable:!0}),Object.defineProperty(t,"duration",{get:function(){return this._buffer.duration},enumerable:!0,configurable:!0})})(l.prototype),e.exports=cc._Audio=u}),{"../core/assets/CCAudioClip":59,"../core/event/event-target":132,"../core/platform/CCSys":158}],21:[(function(t,e){"use strict";var i=t("./CCAudio"),n=t("../core/assets/CCAudioClip"),r=cc.js,s=0,a=r.createMap(!0),o={},c=[],u=function(t){t._shouldRecycleOnEnded&&(t._finishCallback=null,t.off("ended"),t.off("stop"),t.src=null,c.includes(t)||(c.length<32?c.push(t):t.destroy()),t._shouldRecycleOnEnded=!1)},l=function(t){var e=s++,n=o[t];if(n||(n=o[t]=[]),f._maxAudioInstance<=n.length){var r=n.shift();h(r).stop()}var l=c.pop()||new i,_=function(){if(h(this.id)){delete a[this.id];var t=n.indexOf(this.id);cc.js.array.fastRemoveAt(n,t)}u(this)};return l.on("ended",(function(){this._finishCallback&&this._finishCallback(),this.getLoop()||_.call(this)}),l),l.on("stop",_,l),l.id=e,a[e]=l,n.push(e),l},h=function(t){return a[t]},_=function(t){return void 0===t?t=1:"string"==typeof t&&(t=Number.parseFloat(t)),t},f={AudioState:i.State,_maxAudioInstance:24,_id2audio:a,play:function(t,e,i){if(!(t instanceof n))return cc.error("Wrong type of AudioClip.");var r=t.nativeUrl,s=l(r);return s.src=t,t._ensureLoaded(),s._shouldRecycleOnEnded=!0,s.setLoop(e||!1),i=_(i),s.setVolume(i),s.play(),s.id},setLoop:function(t,e){var i=h(t);i&&i.setLoop&&i.setLoop(e)},isLoop:function(t){var e=h(t);return!(!e||!e.getLoop)&&e.getLoop()},setVolume:function(t,e){var i=h(t);i&&i.setVolume(e)},getVolume:function(t){var e=h(t);return e?e.getVolume():1},setCurrentTime:function(t,e){var i=h(t);return!!i&&(i.setCurrentTime(e),!0)},getCurrentTime:function(t){var e=h(t);return e?e.getCurrentTime():0},getDuration:function(t){var e=h(t);return e?e.getDuration():0},getState:function(t){var e=h(t);return e?e.getState():this.AudioState.ERROR},setFinishCallback:function(t,e){var i=h(t);i&&(i._finishCallback=e)},pause:function(t){var e=h(t);return!!e&&(e.pause(),!0)},_pauseIDCache:[],pauseAll:function(){for(var t in a){var e=a[t];e.getState()===i.State.PLAYING&&(this._pauseIDCache.push(t),e.pause())}},resume:function(t){var e=h(t);e&&e.resume()},resumeAll:function(){for(var t=0;t0;){var n=i.pop(),r=a[n];r&&(r.stop(),delete a[n])}},uncacheAll:function(){var t;for(var e in this.stopAll(),a)(t=a[e])&&t.destroy();for(;t=c.pop();)t.destroy();a=r.createMap(!0),o={}},_breakCache:null,_break:function(){for(var t in this._breakCache=[],a){var e=a[t];e.getState()===i.State.PLAYING&&(this._breakCache.push(t),e.pause())}},_restore:function(){if(this._breakCache){for(;this._breakCache.length>0;){var t=this._breakCache.pop(),e=h(t);e&&e.resume&&e.resume()}this._breakCache=null}},_music:{id:-1,loop:!1,volume:1},_effect:{volume:1,pauseCache:[]},playMusic:function(t,e){var i=this._music;return this.stop(i.id),i.id=this.play(t,e,i.volume),i.loop=e,i.id},stopMusic:function(){this.stop(this._music.id)},pauseMusic:function(){return this.pause(this._music.id),this._music.id},resumeMusic:function(){return this.resume(this._music.id),this._music.id},getMusicVolume:function(){return this._music.volume},setMusicVolume:function(t){t=_(t);var e=this._music;return e.volume=t,this.setVolume(e.id,e.volume),e.volume},isMusicPlaying:function(){return this.getState(this._music.id)===this.AudioState.PLAYING},playEffect:function(t,e){return this.play(t,e||!1,this._effect.volume)},setEffectsVolume:function(t){t=_(t);var e=this._music.id;for(var i in this._effect.volume=t,a){var n=a[i];n&&n.id!==e&&f.setVolume(i,t)}},getEffectsVolume:function(){return this._effect.volume},pauseEffect:function(t){return this.pause(t)},pauseAllEffects:function(){var t=this._music.id,e=this._effect;for(var i in e.pauseCache.length=0,a){var n=a[i];n&&n.id!==t&&n.getState()===this.AudioState.PLAYING&&(e.pauseCache.push(i),n.pause())}},resumeEffect:function(t){this.resume(t)},resumeAllEffects:function(){for(var t=this._effect.pauseCache,e=0;el.ERROR){var e=function(t){if(cc.game.canvas){if(!i){var e=document.createElement("Div");e.setAttribute("id","logInfoDiv"),e.setAttribute("width","200"),e.setAttribute("height",cc.game.canvas.height);var n=e.style;n.zIndex="99999",n.position="absolute",n.top=n.left="0",(i=document.createElement("textarea")).setAttribute("rows","20"),i.setAttribute("cols","30"),i.setAttribute("disabled","true");var r=i.style;r.backgroundColor="transparent",r.borderBottom="1px solid #cccccc",r.borderTopWidth=r.borderLeftWidth=r.borderRightWidth="0px",r.borderTopStyle=r.borderLeftStyle=r.borderRightStyle="none",r.padding="0px",r.margin=0,e.appendChild(i),cc.game.canvas.parentNode.appendChild(e)}i.value=i.value+t+"\r\n",i.scrollTop=i.scrollHeight}};cc.error=function(){e("ERROR : "+cc.js.formatStr.apply(null,arguments))},cc.assert=function(t,i){!t&&i&&(i=cc.js.formatStr.apply(null,cc.js.shiftArguments.apply(null,arguments)),e("ASSERT: "+i))},t!==l.ERROR_FOR_WEB_PAGE&&(cc.warn=function(){e("WARN : "+cc.js.formatStr.apply(null,arguments))}),t===l.INFO_FOR_WEB_PAGE&&(cc.log=function(){e(cc.js.formatStr.apply(null,arguments))})}else console&&console.log.apply&&(console.error||(console.error=console.log),console.warn||(console.warn=console.log),console.error.bind?cc.error=console.error.bind(console):cc.error=function(){return console.error.apply(console,arguments)},cc.assert=function(t,e){if(!t)throw e&&(e=cc.js.formatStr.apply(null,cc.js.shiftArguments.apply(null,arguments))),new Error(e)});t!==l.ERROR&&(console.warn.bind?cc.warn=console.warn.bind(console):cc.warn=function(){return console.warn.apply(console,arguments)}),t===l.INFO&&(console.log.bind?cc.log=console.log.bind(console):cc.log=function(){return console.log.apply(console,arguments)})}},getError:s("ERROR"),isDisplayStats:function(){return!!cc.profiler&&cc.profiler.isShowingStats()},setDisplayStats:function(t){cc.profiler&&cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS&&(t?cc.profiler.showStats():cc.profiler.hideStats(),cc.game.config.showFPS=!!t)}}}),{"../../DebugInfos":void 0,"./platform/utils":173}],23:[(function(t,e){"use strict";var i=t("./event/event-target"),n=t("./component-scheduler"),r=t("./node-activator"),s=t("./platform/CCObject"),a=t("./CCGame"),o=t("./renderer"),c=t("./event-manager"),u=t("./CCScheduler");cc.Director=function(){i.call(this),this._paused=!1,this._purgeDirectorInNextLoop=!1,this._winSizeInPoints=null,this._scene=null,this._loadingScene="",this._totalFrames=0,this._lastUpdate=0,this._deltaTime=0,this._startTime=0,this._maxParticleDeltaTime=0,this._scheduler=null,this._compScheduler=null,this._nodeActivator=null,this._actionManager=null;var t=this;a.on(a.EVENT_SHOW,(function(){t._lastUpdate=performance.now()})),a.once(a.EVENT_ENGINE_INITED,this.init,this)},cc.Director.prototype={constructor:cc.Director,init:function(){return this._totalFrames=0,this._lastUpdate=performance.now(),this._startTime=this._lastUpdate,this._paused=!1,this._purgeDirectorInNextLoop=!1,this._winSizeInPoints=cc.size(0,0),this._scheduler=new u,cc.ActionManager?(this._actionManager=new cc.ActionManager,this._scheduler.scheduleUpdate(this._actionManager,u.PRIORITY_SYSTEM,!1)):this._actionManager=null,this.sharedInit(),!0},sharedInit:function(){this._compScheduler=new n,this._nodeActivator=new r,c&&c.setEnabled(!0),cc.AnimationManager?(this._animationManager=new cc.AnimationManager,this._scheduler.scheduleUpdate(this._animationManager,u.PRIORITY_SYSTEM,!1)):this._animationManager=null,cc.CollisionManager?(this._collisionManager=new cc.CollisionManager,this._scheduler.scheduleUpdate(this._collisionManager,u.PRIORITY_SYSTEM,!1)):this._collisionManager=null,cc.PhysicsManager?(this._physicsManager=new cc.PhysicsManager,this._scheduler.scheduleUpdate(this._physicsManager,u.PRIORITY_SYSTEM,!1)):this._physicsManager=null,cc.Physics3DManager,this._physics3DManager=null,cc._widgetManager&&cc._widgetManager.init(this)},calculateDeltaTime:function(t){t||(t=performance.now()),this._deltaTime=t>this._lastUpdate?(t-this._lastUpdate)/1e3:0,this._lastUpdate=t},convertToGL:function(t){var e=a.container,i=cc.view,n=e.getBoundingClientRect(),r=n.left+window.pageXOffset-e.clientLeft,s=n.top+window.pageYOffset-e.clientTop,o=i._devicePixelRatio*(t.x-r),c=i._devicePixelRatio*(s+n.height-t.y);return i._isRotated?cc.v2(i._viewportRect.width-c,o):cc.v2(o,c)},convertToUI:function(t){var e=a.container,i=cc.view,n=e.getBoundingClientRect(),r=n.left+window.pageXOffset-e.clientLeft,s=n.top+window.pageYOffset-e.clientTop,o=cc.v2(0,0);return i._isRotated?(o.x=r+t.y/i._devicePixelRatio,o.y=s+n.height-(i._viewportRect.width-t.x)/i._devicePixelRatio):(o.x=r+t.x*i._devicePixelRatio,o.y=s+n.height-t.y*i._devicePixelRatio),o},end:function(){this._purgeDirectorInNextLoop=!0},getWinSize:function(){return cc.size(cc.winSize)},getWinSizeInPixels:function(){return cc.size(cc.winSize)},pause:function(){this._paused||(this._paused=!0)},purgeCachedData:function(){cc.assetManager.releaseAll()},purgeDirector:function(){this._scheduler.unscheduleAll(),this._compScheduler.unscheduleAll(),this._nodeActivator.reset(),c&&c.setEnabled(!1),cc.isValid(this._scene)&&this._scene.destroy(),this._scene=null,cc.renderer.clear(),cc.assetManager.builtins.clear(),cc.game.pause(),cc.assetManager.releaseAll()},reset:function(){this.purgeDirector(),c&&c.setEnabled(!0),this._actionManager&&this._scheduler.scheduleUpdate(this._actionManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._animationManager&&this._scheduler.scheduleUpdate(this._animationManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._collisionManager&&this._scheduler.scheduleUpdate(this._collisionManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._physicsManager&&this._scheduler.scheduleUpdate(this._physicsManager,cc.Scheduler.PRIORITY_SYSTEM,!1),cc.game.resume()},runSceneImmediate:function(t,e,i){cc.assertID(t instanceof cc.Scene||t instanceof cc.SceneAsset,1216),t instanceof cc.SceneAsset&&(t=t.scene),t._load();for(var n=Object.keys(a._persistRootNodes).map((function(t){return a._persistRootNodes[t]})),r=0;r2||e<0)&&(t.renderMode=0),"boolean"!=typeof t.registerSystemEvent&&(t.registerSystemEvent=!0),t.showFPS=1!==e&&!!t.showFPS,this.collisionMatrix=t.collisionMatrix||[],this.groupList=t.groupList||[],n._resetDebugSetting(t.debugMode),this.config=t,this._configLoaded=!0},_determineRenderType:function(){var t=this.config,e=parseInt(t.renderMode)||0;this.renderType=this.RENDER_TYPE_CANVAS;var i=!1;if(0===e?cc.sys.capabilities.opengl?(this.renderType=this.RENDER_TYPE_WEBGL,i=!0):cc.sys.capabilities.canvas&&(this.renderType=this.RENDER_TYPE_CANVAS,i=!0):1===e&&cc.sys.capabilities.canvas?(this.renderType=this.RENDER_TYPE_CANVAS,i=!0):2===e&&cc.sys.capabilities.opengl&&(this.renderType=this.RENDER_TYPE_WEBGL,i=!0),!i)throw new Error(n.getError(3820,e))},_initRenderer:function(){if(!this._rendererInitialized){var t,e,i,n,a=this.config.id,o=a instanceof HTMLElement?a:document.querySelector(a)||document.querySelector("#"+a);if("CANVAS"===o.tagName?(t=o.width,e=o.height,this.canvas=i=o,this.container=n=document.createElement("DIV"),i.parentNode&&i.parentNode.insertBefore(n,i)):("DIV"!==o.tagName&&cc.warnID(3819),t=o.clientWidth,e=o.clientHeight,this.canvas=i=document.createElement("CANVAS"),this.container=n=document.createElement("DIV"),o.appendChild(n)),n.setAttribute("id","Cocos2dGameContainer"),n.appendChild(i),this.frame=n.parentNode===document.body?document.documentElement:n.parentNode,(function(t){(" "+t.className+" ").indexOf(" gameCanvas ")>-1||(t.className&&(t.className+=" "),t.className+="gameCanvas")})(i),i.setAttribute("width",t||480),i.setAttribute("height",e||320),i.setAttribute("tabindex",99),this._determineRenderType(),this.renderType===this.RENDER_TYPE_WEBGL){var c={stencil:!0,antialias:cc.macro.ENABLE_WEBGL_ANTIALIAS,alpha:cc.macro.ENABLE_TRANSPARENT_CANVAS};r.initWebGL(i,c),this._renderContext=r.device._gl,!cc.macro.CLEANUP_IMAGE_CACHE&&s&&(s.enabled=!0)}this._renderContext||(this.renderType=this.RENDER_TYPE_CANVAS,r.initCanvas(i),this._renderContext=r.device._ctx),this.canvas.oncontextmenu=function(){if(!cc._isContextMenuEnable)return!1},this._rendererInitialized=!0}},_initEvents:function(){var t,e=window;this.config.registerSystemEvent&&cc.internal.inputManager.registerSystemEvent(this.canvas),void 0!==document.hidden?t="hidden":void 0!==document.mozHidden?t="mozHidden":void 0!==document.msHidden?t="msHidden":void 0!==document.webkitHidden&&(t="webkitHidden");var i=!1;function n(){i||(i=!0,a.emit(a.EVENT_HIDE))}function r(t,e,n,r,s){i&&(i=!1,a.emit(a.EVENT_SHOW,t,e,n,r,s))}if(t)for(var s=["visibilitychange","mozvisibilitychange","msvisibilitychange","webkitvisibilitychange","qbrowserVisibilityChange"],o=0;o-1&&(e.onfocus=r),"onpageshow"in window&&"onpagehide"in window&&(e.addEventListener("pagehide",n),e.addEventListener("pageshow",r),document.addEventListener("pagehide",n),document.addEventListener("pageshow",r)),this.on(a.EVENT_HIDE,(function(){a.pause()})),this.on(a.EVENT_SHOW,(function(){a.resume()}))}};i.call(a),cc.js.addon(a,i.prototype),cc.game=e.exports=a}),{"../audio/CCAudioEngine":21,"../core/renderer/utils/dynamic-atlas/manager":183,"./CCDebug":22,"./event/event-target":132,"./renderer/index.js":180}],25:[(function(t,e){"use strict";var i=t("./value-types"),n=t("./value-types/utils"),r=t("./utils/base-node"),s=t("./utils/prefab-helper"),a=t("./utils/trans-pool").NodeMemPool,o=t("./utils/affine-transform"),c=t("./event-manager"),u=t("./platform/CCMacro"),l=t("./platform/js"),h=(t("./event/event"),t("./event/event-target")),_=t("./renderer/render-flow"),f=cc.Object.Flags.Destroying,d=Math.PI/180,p=!!cc.ActionManager,v=function(){},g=new i.Vec3,m=new i.Quat,y=new i.Vec3,T=new i.Vec3,E=new i.Quat,A=new i.Quat,C=new i.Vec3,x=new i.Vec3,b=new i.Vec3,S=new i.Vec3,R=new i.Vec3,w=new i.Quat,I=new i.Quat,M=new i.Vec3,O=new i.Quat,D=new i.Vec3,L=new i.Quat,P=new i.Vec3,N=new i.Vec3,F=new i.Quat,B=new i.Quat,U=(new i.Quat,cc.mat4()),z=new i.Vec3,k=new l.Pool;k.get=function(){return this._get()||[]};var V=cc.Enum({DEBUG:31}),H=cc.Enum({POSITION:1,SCALE:2,ROTATION:4,SKEW:8,TRS:7,RS:6,TRSS:15,PHYSICS_POSITION:16,PHYSICS_SCALE:32,PHYSICS_ROTATION:64,PHYSICS_TRS:112,PHYSICS_RS:96,ALL_POSITION:17,ALL_SCALE:34,ALL_ROTATION:68,ALL_TRS:119,ALL:65535}),W=cc.Enum({TOUCH_START:"touchstart",TOUCH_MOVE:"touchmove",TOUCH_END:"touchend",TOUCH_CANCEL:"touchcancel",MOUSE_DOWN:"mousedown",MOUSE_MOVE:"mousemove",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_UP:"mouseup",MOUSE_WHEEL:"mousewheel",POSITION_CHANGED:"position-changed",ROTATION_CHANGED:"rotation-changed",SCALE_CHANGED:"scale-changed",SIZE_CHANGED:"size-changed",ANCHOR_CHANGED:"anchor-changed",COLOR_CHANGED:"color-changed",CHILD_ADDED:"child-added",CHILD_REMOVED:"child-removed",CHILD_REORDER:"child-reorder",GROUP_CHANGED:"group-changed",SIBLING_ORDER_CHANGED:"sibling-order-changed"}),G=[W.TOUCH_START,W.TOUCH_MOVE,W.TOUCH_END,W.TOUCH_CANCEL],j=[W.MOUSE_DOWN,W.MOUSE_ENTER,W.MOUSE_MOVE,W.MOUSE_LEAVE,W.MOUSE_UP,W.MOUSE_WHEEL],Y=!0,X=function(t){if(0!==t){Y&&cc.warn("`cc.Node.skewX/Y` is deprecated since v2.2.1, please use 3D node instead.",""),Y=!1}},q=null,Z=function(t,e){var i=t.getLocation(),n=this.owner;return!!n._hitTest(i,this)&&(e.type=W.TOUCH_START,e.touch=t,e.bubbles=!0,n.dispatchEvent(e),!0)},K=function(t,e){var i=this.owner;e.type=W.TOUCH_MOVE,e.touch=t,e.bubbles=!0,i.dispatchEvent(e)},Q=function(t,e){var i=t.getLocation(),n=this.owner;n._hitTest(i,this)?e.type=W.TOUCH_END:e.type=W.TOUCH_CANCEL,e.touch=t,e.bubbles=!0,n.dispatchEvent(e)},J=function(t,e){t.getLocation();var i=this.owner;e.type=W.TOUCH_CANCEL,e.touch=t,e.bubbles=!0,i.dispatchEvent(e)},$=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_DOWN,t.bubbles=!0,i.dispatchEvent(t))},tt=function(t){var e=t.getLocation(),i=this.owner;if(i._hitTest(e,this))this._previousIn||(q&&q._mouseListener&&(t.type=W.MOUSE_LEAVE,q.dispatchEvent(t),q._mouseListener._previousIn=!1),q=this.owner,t.type=W.MOUSE_ENTER,i.dispatchEvent(t),this._previousIn=!0),t.type=W.MOUSE_MOVE,t.bubbles=!0,i.dispatchEvent(t);else{if(!this._previousIn)return;t.type=W.MOUSE_LEAVE,i.dispatchEvent(t),this._previousIn=!1,q=null}t.stopPropagation()},et=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_UP,t.bubbles=!0,i.dispatchEvent(t),t.stopPropagation())},it=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_WHEEL,t.bubbles=!0,i.dispatchEvent(t),t.stopPropagation())};function nt(t,e){if(e){for(var i=0,n=null,r=t;r&&cc.Node.isNode(r);r=r._parent,++i)if(r.getComponent(e)){var s={index:i,node:r};n?n.push(s):n=[s]}return n}return null}function rt(t,e){if(!(t._objFlags&f)){if(t._bubblingListeners)for(var i=0,n=e.length;i=0;--r)if((n=i[r])._capturingListeners&&(e.currentTarget=n,n._capturingListeners.emit(e.type,e,i),e._propagationStopped))return void(i.length=0);if(i.length=0,e.eventPhase=2,e.currentTarget=t,t._capturingListeners&&t._capturingListeners.emit(e.type,e),!e._propagationImmediateStopped&&t._bubblingListeners&&t._bubblingListeners.emit(e.type,e),!e._propagationStopped&&e.bubbles)for(t._getBubblingTargets(e.type,i),e.eventPhase=3,r=0;r>16},set:function(t){t>u.MAX_ZINDEX?(cc.warnID(1636),t=u.MAX_ZINDEX):t0&&(this._renderFlag|=_.FLAG_CHILDREN)},_checkListenerMask:function(){if(this._touchListener){var t=this._touchListener.mask=nt(this,cc.Mask);this._mouseListener&&(this._mouseListener.mask=t)}else this._mouseListener&&(this._mouseListener.mask=nt(this,cc.Mask))},_checknSetupSysEvent:function(t){var e=!1,i=!1;return-1!==G.indexOf(t)?(this._touchListener||(this._touchListener=cc.EventListener.create({event:cc.EventListener.TOUCH_ONE_BY_ONE,swallowTouches:!0,owner:this,mask:nt(this,cc.Mask),onTouchBegan:Z,onTouchMoved:K,onTouchEnded:Q,onTouchCancelled:J}),c.addListener(this._touchListener,this),e=!0),i=!0):-1!==j.indexOf(t)&&(this._mouseListener||(this._mouseListener=cc.EventListener.create({event:cc.EventListener.MOUSE,_previousIn:!1,owner:this,mask:nt(this,cc.Mask),onMouseDown:$,onMouseMove:tt,onMouseUp:et,onMouseScroll:it}),c.addListener(this._mouseListener,this),e=!0),i=!0),e&&!this._activeInHierarchy&&cc.director.getScheduler().schedule((function(){this._activeInHierarchy||c.pauseTarget(this)}),this,0,0,0,!1),i},on:function(t,e,i,n){if(this._checknSetupSysEvent(t))return this._onDispatch(t,e,i,n);switch(t){case W.POSITION_CHANGED:this._eventMask|=1;break;case W.SCALE_CHANGED:this._eventMask|=2;break;case W.ROTATION_CHANGED:this._eventMask|=4;break;case W.SIZE_CHANGED:this._eventMask|=8;break;case W.ANCHOR_CHANGED:this._eventMask|=16;break;case W.COLOR_CHANGED:this._eventMask|=32}return this._bubblingListeners||(this._bubblingListeners=new h),this._bubblingListeners.on(t,e,i)},once:function(t,e,i,n){var r=this,s=null;(s=this._checknSetupSysEvent(t)&&n?this._capturingListeners=this._capturingListeners||new h:this._bubblingListeners=this._bubblingListeners||new h).once(t,e,i),s.once(t,(function(){r.off(t,e,i)}),void 0)},_onDispatch:function(t,e,i,n){if("boolean"==typeof i?(n=i,i=void 0):n=!!n,e){var r=null;return(r=n?this._capturingListeners=this._capturingListeners||new h:this._bubblingListeners=this._bubblingListeners||new h).hasEventListener(t,e,i)||(r.on(t,e,i),i&&i.__eventTargets&&i.__eventTargets.push(this)),e}cc.errorID(6800)},off:function(t,e,i,n){var r=-1!==G.indexOf(t),s=!r&&-1!==j.indexOf(t);if(r||s)this._offDispatch(t,e,i,n),r?this._touchListener&&!rt(this,G)&&(c.removeListener(this._touchListener),this._touchListener=null):s&&this._mouseListener&&!rt(this,j)&&(c.removeListener(this._mouseListener),this._mouseListener=null);else if(this._bubblingListeners&&(this._bubblingListeners.off(t,e,i),!this._bubblingListeners.hasEventListener(t)))switch(t){case W.POSITION_CHANGED:this._eventMask&=-2;break;case W.SCALE_CHANGED:this._eventMask&=-3;break;case W.ROTATION_CHANGED:this._eventMask&=-5;break;case W.SIZE_CHANGED:this._eventMask&=-9;break;case W.ANCHOR_CHANGED:this._eventMask&=-17;break;case W.COLOR_CHANGED:this._eventMask&=-33}},_offDispatch:function(t,e,i,n){if("boolean"==typeof i?(n=i,i=void 0):n=!!n,e){var r=n?this._capturingListeners:this._bubblingListeners;r&&(r.off(t,e,i),i&&i.__eventTargets&&l.array.fastRemove(i.__eventTargets,this))}else this._capturingListeners&&this._capturingListeners.removeAll(t),this._bubblingListeners&&this._bubblingListeners.removeAll(t)},targetOff:function(t){var e=this._bubblingListeners;e&&(e.targetOff(t),1&this._eventMask&&!e.hasEventListener(W.POSITION_CHANGED)&&(this._eventMask&=-2),2&this._eventMask&&!e.hasEventListener(W.SCALE_CHANGED)&&(this._eventMask&=-3),4&this._eventMask&&!e.hasEventListener(W.ROTATION_CHANGED)&&(this._eventMask&=-5),8&this._eventMask&&!e.hasEventListener(W.SIZE_CHANGED)&&(this._eventMask&=-9),16&this._eventMask&&!e.hasEventListener(W.ANCHOR_CHANGED)&&(this._eventMask&=-17),32&this._eventMask&&!e.hasEventListener(W.COLOR_CHANGED)&&(this._eventMask&=-33)),this._capturingListeners&&this._capturingListeners.targetOff(t),t&&t.__eventTargets&&l.array.fastRemove(t.__eventTargets,this),this._touchListener&&!rt(this,G)&&(c.removeListener(this._touchListener),this._touchListener=null),this._mouseListener&&!rt(this,j)&&(c.removeListener(this._mouseListener),this._mouseListener=null)},hasEventListener:function(t){var e=!1;return this._bubblingListeners&&(e=this._bubblingListeners.hasEventListener(t)),!e&&this._capturingListeners&&(e=this._capturingListeners.hasEventListener(t)),e},emit:function(t,e,i,n,r,s){this._bubblingListeners&&this._bubblingListeners.emit(t,e,i,n,r,s)},dispatchEvent:function(t){var e=k.get();st(this,t,e),k.put(e)},pauseSystemEvents:function(t){c.pauseTarget(this,t)},resumeSystemEvents:function(t){c.resumeTarget(this,t)},_hitTest:function(t,e){var n=this._contentSize.width,r=this._contentSize.height,s=P,a=N,o=cc.Camera.findCamera(this);if(o?o.getScreenToWorldPoint(t,s):s.set(t),this._updateWorldMatrix(),!i.Mat4.invert(U,this._worldMatrix))return!1;i.Vec2.transformMat4(a,s,U),a.x+=this._anchorPoint.x*n,a.y+=this._anchorPoint.y*r;var c=!1;if(a.x>=0&&a.y>=0&&a.x<=n&&a.y<=r&&(c=!0,e&&e.mask))for(var u=e.mask,l=this,h=u?u.length:0,_=0,f=0;l&&fd.index){u.length=f;break}}return c},_getCapturingTargets:function(t,e){for(var i=this.parent;i;)i._capturingListeners&&i._capturingListeners.hasEventListener(t)&&e.push(i),i=i.parent},_getBubblingTargets:function(t,e){for(var i=this.parent;i;)i._bubblingListeners&&i._bubblingListeners.hasEventListener(t)&&e.push(i),i=i.parent},runAction:p?function(t){if(this.active){cc.assertID(t,1618);var e=cc.director.getActionManager();return e._suppressDeprecation||(e._suppressDeprecation=!0,cc.warnID(1639)),e.addAction(t,this,!1),t}}:v,pauseAllActions:p?function(){cc.director.getActionManager().pauseTarget(this)}:v,resumeAllActions:p?function(){cc.director.getActionManager().resumeTarget(this)}:v,stopAllActions:p?function(){cc.director.getActionManager().removeAllActionsFromTarget(this)}:v,stopAction:p?function(t){cc.director.getActionManager().removeAction(t)}:v,stopActionByTag:p?function(t){t!==cc.Action.TAG_INVALID?cc.director.getActionManager().removeActionByTag(t,this):cc.logID(1612)}:v,getActionByTag:p?function(t){return t===cc.Action.TAG_INVALID?(cc.logID(1613),null):cc.director.getActionManager().getActionByTag(t,this)}:function(){return null},getNumberOfRunningActions:p?function(){return cc.director.getActionManager().getNumberOfRunningActionsInTarget(this)}:function(){return 0},getPosition:function(t){return t=t||new i.Vec3,i.Trs.toPosition(t,this._trs)},setPosition:function(t,e,i){var n;void 0===e?(n=t.x,e=t.y,i=t.z):n=t;var r=this._trs;void 0===i&&(i=r[2]),(r[0]!==n||r[1]!==e||r[2]!==i)&&(r[0]=n,r[1]=e,r[2]=i,this.setLocalDirty(H.ALL_POSITION),this._renderFlag|=_.FLAG_WORLD_TRANSFORM,1&this._eventMask&&this.emit(W.POSITION_CHANGED))},getScale:function(t){return void 0!==t?i.Trs.toScale(t,this._trs):(cc.errorID(1400,"cc.Node.getScale","cc.Node.scale or cc.Node.getScale(cc.Vec3)"),this._trs[7])},setScale:function(t,e,i){var n;t&&"number"!=typeof t?(n=t.x,e=t.y,i=t.z):void 0!==t&&void 0===e?(n=t,e=t,i=t):n=t;var r=this._trs;void 0===i&&(i=r[9]),r[7]===n&&r[8]===e&&r[9]===i||(r[7]=n,r[8]=e,r[9]=i,this.setLocalDirty(H.ALL_SCALE),this._renderFlag|=_.FLAG_TRANSFORM,2&this._eventMask&&this.emit(W.SCALE_CHANGED))},getRotation:function(t){return t instanceof i.Quat?i.Trs.toRotation(t,this._trs):-this.angle},setRotation:function(t,e,i,n){if("number"==typeof t&&void 0===e)this.angle=-t;else{var r=t;void 0===e&&(r=t.x,e=t.y,i=t.z,n=t.w);var s=this._trs;s[3]===r&&s[4]===e&&s[5]===i&&s[6]===n||(s[3]=r,s[4]=e,s[5]=i,s[6]=n,this.setLocalDirty(H.ALL_ROTATION),4&this._eventMask&&this.emit(W.ROTATION_CHANGED))}},getContentSize:function(){return cc.size(this._contentSize.width,this._contentSize.height)},setContentSize:function(t,e){var i=this._contentSize;if(void 0===e){if((0,n.approx)(t.width,i.width)&&(0,n.approx)(t.height,i.height))return;i.width=t.width,i.height=t.height}else{if((0,n.approx)(t,i.width)&&(0,n.approx)(e,i.height))return;i.width=t,i.height=e}8&this._eventMask&&this.emit(W.SIZE_CHANGED)},getAnchorPoint:function(){return cc.v2(this._anchorPoint)},setAnchorPoint:function(t,e){var i=this._anchorPoint;if(void 0===e){if(t.x===i.x&&t.y===i.y)return;i.x=t.x,i.y=t.y}else{if(t===i.x&&e===i.y)return;i.x=t,i.y=e}this.setLocalDirty(H.ALL_POSITION),16&this._eventMask&&this.emit(W.ANCHOR_CHANGED)},_invTransformPoint:function(t,e){this._parent?this._parent._invTransformPoint(t,e):i.Vec3.copy(t,e);var n=this._trs;return i.Trs.toPosition(y,n),i.Vec3.sub(t,t,y),i.Trs.toRotation(E,n),i.Quat.conjugate(A,E),i.Vec3.transformQuat(t,t,A),i.Trs.toScale(y,n),i.Vec3.inverseSafe(T,y),i.Vec3.mul(t,t,T),t},getWorldPosition:function(t){i.Trs.toPosition(t,this._trs);for(var e,n=this._parent;n;)e=n._trs,i.Trs.toScale(g,e),i.Vec3.mul(t,t,g),i.Trs.toRotation(m,e),i.Vec3.transformQuat(t,t,m),i.Trs.toPosition(g,e),i.Vec3.add(t,t,g),n=n._parent;return t},setWorldPosition:function(t){var e=this._trs;this._parent?this._parent._invTransformPoint(C,t):i.Vec3.copy(C,t),i.Trs.fromPosition(e,C),this.setLocalDirty(H.ALL_POSITION),1&this._eventMask&&this.emit(W.POSITION_CHANGED)},getWorldRotation:function(t){i.Trs.toRotation(F,this._trs),i.Quat.copy(t,F);for(var e=this._parent;e;)i.Trs.toRotation(F,e._trs),i.Quat.mul(t,F,t),e=e._parent;return t},setWorldRotation:function(t){this._parent?(this._parent.getWorldRotation(B),i.Quat.conjugate(B,B),i.Quat.mul(B,B,t)):i.Quat.copy(B,t),i.Trs.fromRotation(this._trs,B),this.setLocalDirty(H.ALL_ROTATION)},getWorldScale:function(t){i.Trs.toScale(x,this._trs),i.Vec3.copy(t,x);for(var e=this._parent;e;)i.Trs.toScale(x,e._trs),i.Vec3.mul(t,t,x),e=e._parent;return t},setWorldScale:function(t){this._parent?(this._parent.getWorldScale(b),i.Vec3.div(b,t,b)):i.Vec3.copy(b,t),i.Trs.fromScale(this._trs,b),this.setLocalDirty(H.ALL_SCALE)},getWorldRT:function(t){var e=S,n=w,r=this._trs;i.Trs.toPosition(e,r),i.Trs.toRotation(n,r);for(var s=this._parent;s;)r=s._trs,i.Trs.toScale(R,r),i.Vec3.mul(e,e,R),i.Trs.toRotation(I,r),i.Vec3.transformQuat(e,e,I),i.Trs.toPosition(R,r),i.Vec3.add(e,e,R),i.Quat.mul(n,I,n),s=s._parent;return i.Mat4.fromRT(t,n,e),t},lookAt:function(t,e){this.getWorldPosition(M),i.Vec3.sub(M,M,t),i.Vec3.normalize(M,M),i.Quat.fromViewUp(O,M,e),this.setWorldRotation(O)},_updateLocalMatrix:ut,_calculWorldMatrix:function(){this._localMatDirty&H.TRSS&&this._updateLocalMatrix();var t=this._parent;t?this._mulMat(this._worldMatrix,t._worldMatrix,this._matrix):i.Mat4.copy(this._worldMatrix,this._matrix),this._worldMatDirty=!1},_mulMat:_t,_updateWorldMatrix:function(){if(this._parent&&this._parent._updateWorldMatrix(),this._worldMatDirty){this._calculWorldMatrix();for(var t=this._children,e=0,i=t.length;e1){for(var n,r,s=1,a=t.length;s0&&(r=t[o-1])._localZOrder>n._localZOrder;o--)t[o]=r;t[o]=n}this.emit(W.CHILD_REORDER,this)}cc.director.__fastOff(cc.Director.EVENT_AFTER_UPDATE,this.sortAllChildren,this)}},_delaySort:function(){this._reorderChildDirty||(this._reorderChildDirty=!0,cc.director.__fastOn(cc.Director.EVENT_AFTER_UPDATE,this.sortAllChildren,this))},_restoreProperties:!1,onRestore:!1},pt=cc.Class(dt),vt=pt.prototype;l.getset(vt,"position",vt.getPosition,vt.setPosition,!1,!0),cc.Node=e.exports=pt}),{"./event-manager":130,"./event/event":133,"./event/event-target":132,"./platform/CCMacro":154,"./platform/js":170,"./renderer/render-flow":181,"./utils/affine-transform":215,"./utils/base-node":216,"./utils/prefab-helper":226,"./utils/trans-pool":232,"./value-types":238,"./value-types/utils":245}],26:[(function(t,e){"use strict";var i=t("./CCNode"),n=t("./renderer/render-flow"),r=(cc.Object.Flags.HideInHierarchy,i._LocalDirtyFlag),s=cc.Class({name:"cc.PrivateNode",extends:i,properties:{x:{get:function(){return this._originPos.x},set:function(t){var e=this._originPos;t!==e.x&&(e.x=t,this._posDirty(!0))},override:!0},y:{get:function(){return this._originPos.y},set:function(t){var e=this._originPos;t!==e.y&&(e.y=t,this._posDirty(!0))},override:!0},zIndex:{get:function(){return cc.macro.MIN_ZINDEX},set:function(){},override:!0},showInEditor:{default:!1,editorOnly:!0,override:!0}},ctor:function(){this._localZOrder=cc.macro.MIN_ZINDEX<<16,this._originPos=cc.v2()},_posDirty:function(t){this.setLocalDirty(r.POSITION),this._renderFlag|=n.FLAG_TRANSFORM,!0===t&&1&this._eventMask&&this.emit(i.EventType.POSITION_CHANGED)},_updateLocalMatrix:function(){if(this._localMatDirty){var t=this.parent;t&&(this._trs[0]=this._originPos.x-(t._anchorPoint.x-.5)*t._contentSize.width,this._trs[1]=this._originPos.y-(t._anchorPoint.y-.5)*t._contentSize.height),this._super()}},getPosition:function(){return new cc.Vec2(this._originPos)},setPosition:function(t,e){void 0===e&&(e=(t=t.x).y);var i=this._originPos;i.x===t&&i.y===e||(i.x=t,i.y=e,this._posDirty(!0))},setParent:function(t){var e=this._parent;this._super(t),e!==t&&(e&&e.off(i.EventType.ANCHOR_CHANGED,this._posDirty,this),t&&t.on(i.EventType.ANCHOR_CHANGED,this._posDirty,this))},_updateOrderOfArrival:function(){}}),a=s.prototype;cc.js.getset(a,"parent",a.getParent,a.setParent),cc.js.getset(a,"position",a.getPosition,a.setPosition),cc.PrivateNode=e.exports=s}),{"./CCNode":25,"./renderer/render-flow":181}],27:[(function(t,e){"use strict";cc.Scene=cc.Class({name:"cc.Scene",extends:t("./CCNode"),properties:{_is3DNode:{default:!0,override:!0},autoReleaseAssets:!1},ctor:function(){this._anchorPoint.x=0,this._anchorPoint.y=0,this._activeInHierarchy=!1,this._inited=!cc.game._isCloning,this.dependAssets=null},destroy:function(){if(cc.Object.prototype.destroy.call(this))for(var t=this._children,e=0;e0,this._repeat=r,this._runForever=this._repeat===cc.macro.REPEAT_FOREVER,!0},h.getInterval=function(){return this._interval},h.setInterval=function(t){this._interval=t},h.update=function(t){-1===this._elapsed?(this._elapsed=0,this._timesExecuted=0):(this._elapsed+=t,this._runForever&&!this._useDelay?this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0):(this._useDelay?this._elapsed>=this._delay&&(this.trigger(),this._elapsed-=this._delay,this._timesExecuted+=1,this._useDelay=!1):this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0,this._timesExecuted+=1),this._callback&&!this._runForever&&this._timesExecuted>this._repeat&&this.cancel()))},h.getCallback=function(){return this._callback},h.trigger=function(){this._target&&this._callback&&(this._lock=!0,this._callback.call(this._target,this._elapsed),this._lock=!1)},h.cancel=function(){this._scheduler.unschedule(this._callback,this._target)};var _=[];l.get=function(){return _.pop()||new l},l.put=function(t){_.length<20&&!t._lock&&(t._scheduler=t._target=t._callback=null,_.push(t))},cc.Scheduler=function(){this._timeScale=1,this._updatesNegList=[],this._updates0List=[],this._updatesPosList=[],this._hashForUpdates=i.createMap(!0),this._hashForTimers=i.createMap(!0),this._currentTarget=null,this._currentTargetSalvaged=!1,this._updateHashLocked=!1,this._arrayForTimers=[]},cc.Scheduler.prototype={constructor:cc.Scheduler,_removeHashElement:function(t){delete this._hashForTimers[t.target._id];for(var e=this._arrayForTimers,i=0,n=e.length;i=s&&n.timerIndex--,void(0===r.length&&(this._currentTarget===n?this._currentTargetSalvaged=!0:this._removeHashElement(n)))}}},unscheduleUpdate:function(t){if(t){var e=t._id;e||(t.__instanceId?(cc.warnID(1513),e=t._id=t.__instanceId):cc.errorID(1510));var i=this._hashForUpdates[e];i&&(this._updateHashLocked?i.entry.markedForDeletion=!0:this._removeUpdateFromHash(i.entry))}},unscheduleAllForTarget:function(t){if(t){var e=t._id;e||(t.__instanceId?(cc.warnID(1513),e=t._id=t.__instanceId):cc.errorID(1510));var i=this._hashForTimers[e];if(i){var n=i.timers;n.indexOf(i.currentTimer)>-1&&!i.currentTimerSalvaged&&(i.currentTimerSalvaged=!0);for(var r=0,s=n.length;r=0;e--)i=r[e],this.unscheduleAllForTarget(i.target);var s=0;if(t<0)for(e=0;e=t&&this.unscheduleUpdate(n.target),s==this._updatesNegList.length&&e++;if(t<=0)for(e=0;e=t&&this.unscheduleUpdate(n.target),s==this._updatesPosList.length&&e++},isScheduled:function(t,e){cc.assertID(t,1508),cc.assertID(e,1509);var i=e._id;i||(e.__instanceId?(cc.warnID(1513),i=e._id=e.__instanceId):cc.errorID(1510));var n=this._hashForTimers[i];if(!n)return!1;if(null==n.timers)return!1;for(var r=n.timers,s=0;s=t&&(r.paused=!0,s.push(r.target));if(t<=0)for(i=0;i=t&&(r.paused=!0,s.push(r.target));return s},resumeTargets:function(t){if(t)for(var e=0;e1?n:n[0]}},cc.AssetManager=P,cc.assetManager=new P,Object.defineProperty(cc,"resources",{get:function(){return D.get(L.RESOURCES)}}),e.exports=cc.assetManager}),{"./builtins":30,"./bundle":31,"./cache":32,"./depend-util":34,"./downloader":41,"./factory":42,"./fetch":43,"./helper":45,"./load":47,"./pack-manager":48,"./parser":49,"./pipeline":50,"./preprocess":51,"./releaseManager":52,"./request-item":53,"./shared":54,"./task":55,"./urlTransformer":56,"./utilities":57}],30:[(function(t,e){"use strict";var i=t("./cache"),n=t("./releaseManager"),r=t("./shared").BuiltinBundleName,s={_assets:new i({material:new i,effect:new i}),_loadBuiltins:function(t,e){var i=t+"s",n=this._assets.get(t);return cc.assetManager.internal.loadDir(i,null,null,(function(t,i){if(t)cc.error(t.message,t.stack);else for(var r=0;re.length)||47===t.charCodeAt(e.length)}return this.paths.forEach((function(n,r){if(r.startsWith(t)&&a(r,t)||!t)for(var o=0,c=n.length;o1){var f=Object.create(null);n.forEach((function(t){f[t._uuid]=t})),r={isCompleted:l,_map:f}}else r=n[0]}i&&i(e,r)}))},getXMLHttpRequest:function(){return new XMLHttpRequest},_parseLoadResArgs:i.parseLoadResArgs,getItem:function(t){return cc.assetManager.assets.has(t)?{content:cc.assetManager.assets.get(t)}:null},loadRes:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete,o=cc.path.extname(t);o&&(t=t.slice(0,-o.length)),cc.resources.load(t,e,s,a)},loadResArray:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete;t.forEach((function(e,i){var n=cc.path.extname(e);n&&(t[i]=e.slice(0,-n.length))})),cc.resources.load(t,e,s,a)},loadResDir:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete;cc.resources.loadDir(t,e,s,(function(i,n){var r=[];i||(r=cc.resources.getDirWithPath(t,e).map((function(t){return t.path}))),a&&a(i,n,r)}))},getRes:function(t,e){return cc.assetManager.assets.has(t)?cc.assetManager.assets.get(t):cc.resources.get(t,e)},getResCount:function(){return cc.assetManager.assets.count},getDependsRecursively:function(t){return t?n.getDepsRecursively("string"==typeof t?t:t._uuid).concat([t._uuid]):[]},get assetLoader(){},get md5Pipe(){return h},get downloader(){return cc.assetManager.downloader},get loader(){return cc.assetManager.parser},addDownloadHandlers:function(t){var e=Object.create(null);for(var i in t){var n=t[i];e["."+i]=function(t,e,i){n({url:t},i)}}cc.assetManager.downloader.register(e)},addLoadHandlers:function(t){var e=Object.create(null);for(var i in t){var n=t[i];e["."+i]=function(t,e,i){n({content:t},i)}}cc.assetManager.parser.register(e)},flowInDeps:function(){},release:function(t){if(Array.isArray(t))for(var e=0;eN._maxInterval?N._maxInterval:cc.director._deltaTime;t-O>1e3*e&&(M=0,O=t)},P=function t(e,i){for(D=!1,L();R.length>0&&I0&&I0&&(s(P,m,y),D=!0),a.apply(this,arguments)}))}L(),I0){var i=n.create({name:t.name+" dependencies",input:c,progress:f,options:s,onProgress:t.onProgress,onError:n.prototype.recycle,onComplete:function(n){n||(t.output.push.apply(t.output,this.output),i.recycle()),r&&h(t),e(n)}});l.async(i)}else r&&h(t),e()}))}}),{"./pack-manager":48,"./shared":54,"./task":55,"./utilities":57}],44:[(function(t,e){"use strict";var i,n=t("../utils/text-utils"),r=null,s="BES bswy:->@123\u4e01\u3041\u1101",a=Object.create(null),o=-1,c=[],u=3e3,l=(i=void 0,function(){if(void 0===i)if(window.FontFace){var t=/Gecko.*Firefox\/(\d+)/.exec(window.navigator.userAgent),e=/OS X.*Version\/10\..*Safari/.exec(window.navigator.userAgent)&&/Apple/.exec(window.navigator.vendor);i=t?parseInt(t[1],10)>42:!e}else i=!1;return i});function h(){for(var t=!0,e=Date.now(),i=c.length-1;i>=0;i--){var a=c[i],l=a.fontFamilyName;if(e-a.startTime>u)cc.warnID(4933,l),a.onComplete(null,l),c.splice(i,1);else{var h=a.refWidth,_="40px "+l;r.font=_,h!==n.safeMeasureText(r,s,_)?(c.splice(i,1),a.onComplete(null,l)):t=!1}}t&&(clearInterval(o),o=-1)}var _={loadFont:function(t,e,i){var f=_._getFontFamily(t);if(a[f])return i(null,f);if(!r){var d=document.createElement("canvas");d.width=100,d.height=100,r=d.getContext("2d")}var p="40px "+f;r.font=p;var v=n.safeMeasureText(r,s,p),g=document.createElement("style");g.type="text/css";var m="";isNaN(f-0)?m+="@font-face { font-family:"+f+"; src:":m+="@font-face { font-family:'"+f+"'; src:",m+="url('"+t+"');",g.textContent=m+"}",document.body.appendChild(g);var y,T,E,A,C,x,b=document.createElement("div"),S=b.style;if(S.fontFamily=f,b.innerHTML=".",S.position="absolute",S.left="-100px",S.top="-100px",document.body.appendChild(b),l())y=Date.now(),T=f,E=i,A=new Promise(function(t,e){(function i(){Date.now()-y>=u?e():document.fonts.load("40px "+T).then((function(e){e.length>=1?t():setTimeout(i,100)}),(function(){e()}))})()}),C=null,x=new Promise(function(t,e){C=setTimeout(e,u)}),Promise.race([x,A]).then((function(){C&&(clearTimeout(C),C=null),E(null,T)}),(function(){cc.warnID(4933,T),E(null,T)}));else{var R={fontFamilyName:f,refWidth:v,onComplete:i,startTime:Date.now()};c.push(R),-1===o&&(o=setInterval(h,100))}a[f]=g},_getFontFamily:function(t){var e=t.lastIndexOf(".ttf");if(-1===e)return t;var i,n=t.lastIndexOf("/");return-1!==(i=-1===n?t.substring(0,e)+"_LABEL":t.substring(n+1,e)+"_LABEL").indexOf(" ")&&(i='"'+i+'"'),i}};e.exports=_}),{"../utils/text-utils":230}],45:[(function(t,e){"use strict";var i,n=t("./shared").bundles,r={decodeUuid:t("../utils/decode-uuid"),getUuidFromURL:(i=/.*[/\\][0-9a-fA-F]{2}[/\\]([0-9a-fA-F-]{8,})/,function(t){var e=t.match(i);return e?e[1]:""}),getUrlWithUuid:function(t,e){(e=e||Object.create(null)).__isNative__=e.isNative,e.ext=e.nativeExt;var i=n.find((function(e){return e.getAssetInfo(t)}));return i&&(e.bundle=i.name),cc.assetManager._transform(t,e)},isScene:function(t){return t&&(t.constructor===cc.SceneAsset||t instanceof cc.Scene)},normalize:function(t){return t&&(46===t.charCodeAt(0)&&47===t.charCodeAt(1)?t=t.slice(2):47===t.charCodeAt(0)&&(t=t.slice(1))),t}};e.exports=r}),{"../utils/decode-uuid":219,"./shared":54}],46:[(function(t){"use strict";t("./deprecated"),t("./CCAssetManager")}),{"./CCAssetManager":29,"./deprecated":35}],47:[(function(t,e){"use strict";var i=t("./pack-manager"),n=t("./pipeline"),r=t("./parser"),s=t("./utilities"),a=s.getDepends,o=s.cache,c=s.gatherAsset,u=s.setProperties,l=s.forEach,h=s.clear,_=s.checkCircleReference,f=t("./shared"),d=f.assets,p=f.files,v=f.parsed,g=f.pipeline,m=t("./task"),y=new n("loadOneAsset",[function(t,e){var n=t.output=t.input,r=n.options,s=n.isNative,a=n.uuid,o=n.file,c=r.reload;if(o||!c&&!s&&d.has(a))return e();i.load(n,t.options,(function(t,i){n.file=i,e(t)}))},function(t,e){var i=t.output=t.input,n=t.progress,s=t.options.__exclude__,a=i.id,o=i.file,c=i.options;if(i.isNative)r.parse(a,o,i.ext,c,(function(r,s){if(r)return e(r);i.content=s,n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),p.remove(a),v.remove(a),e()}));else{var u=i.uuid;if(u in s){var l=s[u],h=l.finish,f=l.content,g=l.err,m=l.callbacks;n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),h||_(u,u,s)?(f&&f.addRef&&f.addRef(),i.content=f,e(g)):m.push({done:e,item:i})}else if(!c.reload&&d.has(u)){var y=d.get(u);c.__asyncLoadAssets__||!y.__asyncLoadAssets__?(i.content=y.addRef(),n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),e()):T(t,y,e,!1)}else r.parse(a,o,"import",c,(function(i,n){if(i)return e(i);n._uuid=u,T(t,n,e,!0)}))}}]);function T(t,e,i,n){var r=t.input,s=t.progress,c=r.uuid,l=r.id,h=r.options,_=r.config,f=h.__asyncLoadAssets__,d=h.cacheAsset,y=[];e.addRef&&e.addRef(),a(c,e,Object.create(null),y,!1,f,_),s.canInvoke&&t.dispatch("progress",++s.finish,s.total+=y.length,r);var T=t.options.__exclude__[c]={content:e,finish:!1,callbacks:[{done:i,item:r}]},E=m.create({input:y,options:t.options,onProgress:t.onProgress,onError:m.prototype.recycle,progress:s,onComplete:function(t){if(e.decRef&&e.decRef(!1),e.__asyncLoadAssets__=f,T.finish=!0,T.err=t,!t){for(var i=Array.isArray(E.output)?E.output:[E.output],r=Object.create(null),s=0,a=i.length;sthis.pipes.length))return this.pipes.splice(e,0,t),this;cc.warnID(4921)},append:function(t){if("function"==typeof t)return this.pipes.push(t),this},remove:function(t){if("number"==typeof t)return this.pipes.splice(t,1),this},sync:function(t){var e=this.pipes;if(t instanceof i&&0!==e.length){null!=t.output&&(t.input=t.output,t.output=null),t._isFinish=!1;for(var n=0,r=e.length;n0&&h(t)>0)){r.remove(t._uuid);for(var n=i.getDeps(t._uuid),s=0,a=n.length;s0&&this._ref--,!1!==t&&cc.assetManager._releaseManager.tryRelease(this),this},destroy:function(){return this.loaded=!1,this._super()}}),e.exports=cc.Asset}),{"../platform/CCObject":155}],59:[(function(t,e){"use strict";var i=t("./CCAsset"),n=t("../event/event-target"),r=cc.Enum({WEB_AUDIO:0,DOM_AUDIO:1}),s=cc.Class({name:"cc.AudioClip",extends:i,mixins:[n],ctor:function(){this._loading=!1,this.loaded=!1,this._audio=null},properties:{duration:0,loadMode:{default:r.WEB_AUDIO,type:r},_nativeAsset:{get:function(){return this._audio},set:function(t){t instanceof cc.AudioClip?this._audio=t._nativeAsset:this._audio=t,this._audio&&(this.loaded=!0,this.emit("load"))},override:!0},_nativeDep:{get:function(){return{uuid:this._uuid,audioLoadMode:this.loadMode,ext:cc.path.extname(this._native),__isNative__:!0}},override:!0}},statics:{LoadMode:r,_loadByUrl:function(t,e){var i=cc.assetManager.assets.get(t);i?e(null,i):cc.assetManager.loadRemote(t,(function(t,i){if(t)return e(t);e(null,i)}))}},_ensureLoaded:function(t){if(this.isValid){if(this.loaded)return t&&t();if(t&&this.once("load",t),!this._loading){this._loading=!0;var e=this;cc.assetManager.postLoadNative(this,(function(){e._loading=!1}))}}},destroy:function(){cc.audioEngine.uncache(this),this._super()}});cc.AudioClip=s,e.exports=s}),{"../event/event-target":132,"./CCAsset":58}],60:[(function(t,e){"use strict";var i=function(){this.u=0,this.v=0,this.w=0,this.h=0,this.offsetX=0,this.offsetY=0,this.textureID=0,this.valid=!1,this.xAdvance=0},n=function(t){this._letterDefinitions={},this._texture=t};n.prototype={constructor:n,addLetterDefinitions:function(t,e){this._letterDefinitions[t]=e},cloneLetterDefinition:function(){var t={};for(var e in this._letterDefinitions){var n=new i;cc.js.mixin(n,this._letterDefinitions[e]),t[e]=n}return t},getTexture:function(){return this._texture},getLetter:function(t){return this._letterDefinitions[t]},getLetterDefinitionForChar:function(t){var e=t.charCodeAt(0);return this._letterDefinitions.hasOwnProperty(e)?this._letterDefinitions[e]:null},clear:function(){this._letterDefinitions={}}};var r=cc.Class({name:"cc.BitmapFont",extends:cc.Font,properties:{fntDataStr:{default:""},spriteFrame:{default:null,type:cc.SpriteFrame},fontSize:{default:-1},_fntConfig:null,_fontDefDictionary:null},onLoad:function(){var t=this.spriteFrame;this._fontDefDictionary||(this._fontDefDictionary=new n,t&&(this._fontDefDictionary._texture=t._texture));var e=this._fntConfig;if(e){var r=e.fontDefDictionary;for(var s in r){var a=new i,o=r[s].rect;a.offsetX=r[s].xOffset,a.offsetY=r[s].yOffset,a.w=o.width,a.h=o.height,a.u=o.x,a.v=o.y,a.textureID=0,a.valid=!0,a.xAdvance=r[s].xAdvance,this._fontDefDictionary.addLetterDefinitions(s,a)}}}});cc.BitmapFont=r,cc.BitmapFont.FontLetterDefinition=i,cc.BitmapFont.FontAtlas=n,e.exports=r}),{}],61:[(function(t,e){"use strict";var i=cc.Class({name:"cc.BufferAsset",extends:cc.Asset,ctor:function(){this._buffer=null},properties:{_nativeAsset:{get:function(){return this._buffer},set:function(t){this._buffer=t.buffer||t},override:!0},buffer:function(){return this._buffer}}});cc.BufferAsset=e.exports=i}),{}],62:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Font",extends:cc.Asset});cc.Font=e.exports=i}),{}],63:[(function(t,e){"use strict";var i=cc.Class({name:"cc.JsonAsset",extends:cc.Asset,properties:{json:null}});e.exports=cc.JsonAsset=i}),{}],64:[(function(t,e){"use strict";var i=cc.Class({name:"cc.LabelAtlas",extends:cc.BitmapFont,onLoad:function(){this.spriteFrame?this._fntConfig?this._super():cc.warnID(9101,this.name):cc.warnID(9100,this.name)}});cc.LabelAtlas=i,e.exports=i}),{}],65:[(function(t,e){"use strict";var i=cc.Enum({AUTO:0,SINGLE_INSTANCE:1,MULTI_INSTANCE:2}),n=cc.Class({name:"cc.Prefab",extends:cc.Asset,ctor:function(){this._createFunction=null,this._instantiatedTimes=0},properties:{data:null,optimizationPolicy:i.AUTO,asyncLoadAssets:!1,readonly:{default:!1,editorOnly:!0}},statics:{OptimizationPolicy:i,OptimizationPolicyThreshold:3},createNode:!1,compileCreateFunction:function(){var e=t("../platform/instantiate-jit");this._createFunction=e.compile(this.data)},_doInstantiate:function(t){return this.data._prefab||cc.warnID(3700),this._createFunction||this.compileCreateFunction(),this._createFunction(t)},_instantiate:function(){var t;return this.optimizationPolicy!==i.SINGLE_INSTANCE&&(this.optimizationPolicy===i.MULTI_INSTANCE||this._instantiatedTimes+1>=n.OptimizationPolicyThreshold)?(t=this._doInstantiate(),this.data._instantiate(t)):t=this.data._instantiate(),++this._instantiatedTimes,t},destroy:function(){this.data&&this.data.destroy(),this._super()}});cc.Prefab=e.exports=n,cc.js.obsolete(cc,"cc._Prefab","Prefab")}),{"../platform/instantiate-jit":168}],66:[(function(t,e){"use strict";var i,n=(i=t("../../renderer/gfx"))&&i.__esModule?i:{default:i},r=t("../renderer"),s=t("./CCTexture2D"),a=cc.Enum({RB_FMT_D24S8:n.default.RB_FMT_D24S8,RB_FMT_S8:n.default.RB_FMT_S8,RB_FMT_D16:n.default.RB_FMT_D16}),o=cc.Class({name:"cc.RenderTexture",extends:s,statics:{DepthStencilFormat:a},ctor:function(){this._framebuffer=null},initWithSize:function(t,e,i){this.width=Math.floor(t||cc.visibleRect.width),this.height=Math.floor(e||cc.visibleRect.height),this._resetUnderlyingMipmaps();var s,a={colors:[this._texture]};this._depthStencilBuffer&&this._depthStencilBuffer.destroy(),i&&(s=new n.default.RenderBuffer(r.device,i,t,e),i===n.default.RB_FMT_D24S8?a.depthStencil=s:i===n.default.RB_FMT_S8?a.stencil=s:i===n.default.RB_FMT_D16&&(a.depth=s)),this._depthStencilBuffer=s,this._framebuffer&&this._framebuffer.destroy(),this._framebuffer=new n.default.FrameBuffer(r.device,t,e,a),this._packable=!1,this.loaded=!0,this.emit("load")},updateSize:function(t,e){this.width=Math.floor(t||cc.visibleRect.width),this.height=Math.floor(e||cc.visibleRect.height),this._resetUnderlyingMipmaps();var i=this._depthStencilBuffer;i&&i.update(this.width,this.height),this._framebuffer._width=t,this._framebuffer._height=e},drawTextureAt:function(t,e,i){t._image&&0!==t._image.width&&this._texture.updateSubImage({x:e,y:i,image:t._image,width:t.width,height:t.height,level:0,flipY:!1,premultiplyAlpha:t._premultiplyAlpha})},readPixels:function(t,e,i,n,r){if(!this._framebuffer||!this._texture)return t;e=e||0,i=i||0;var s=n||this.width,a=r||this.height;t=t||new Uint8Array(s*a*4);var o=cc.game._renderContext,c=o.getParameter(o.FRAMEBUFFER_BINDING);return o.bindFramebuffer(o.FRAMEBUFFER,this._framebuffer.getHandle()),o.readPixels(e,i,s,a,o.RGBA,o.UNSIGNED_BYTE,t),o.bindFramebuffer(o.FRAMEBUFFER,c),t},destroy:function(){this._super(),this._framebuffer&&(this._framebuffer.destroy(),this._framebuffer=null)}});cc.RenderTexture=e.exports=o}),{"../../renderer/gfx":265,"../renderer":180,"./CCTexture2D":73}],67:[(function(t,e){"use strict";var i=cc.Class({name:"cc.SceneAsset",extends:cc.Asset,properties:{scene:null,asyncLoadAssets:void 0}});cc.SceneAsset=i,e.exports=i}),{}],68:[(function(){"use strict";var t=cc.Class({name:"cc.Script",extends:cc.Asset});cc._Script=t;var e=cc.Class({name:"cc.JavaScript",extends:t});cc._JavaScript=e;var i=cc.Class({name:"cc.TypeScript",extends:t});cc._TypeScript=i}),{}],69:[(function(t,e){"use strict";var i=cc.Class({name:"cc.SpriteAtlas",extends:cc.Asset,properties:{_spriteFrames:{default:{}}},getTexture:function(){var t=Object.keys(this._spriteFrames);if(t.length>0){var e=this._spriteFrames[t[0]];return e?e.getTexture():null}return null},getSpriteFrame:function(t){var e=this._spriteFrames[t];return e?(e.name||(e.name=t),e):null},getSpriteFrames:function(){var t=[],e=this._spriteFrames;for(var i in e)t.push(this.getSpriteFrame(i));return t}});cc.SpriteAtlas=i,e.exports=i}),{}],70:[(function(t,e){"use strict";var i=t("../event/event-target"),n=[{u:0,v:0},{u:0,v:0},{u:0,v:0},{u:0,v:0}],r=cc.Class({name:"cc.SpriteFrame",extends:t("../assets/CCAsset"),mixins:[i],properties:{_textureSetter:{set:function(t){t&&this._texture!==t&&this._refreshTexture(t)}},insetTop:{get:function(){return this._capInsets[1]},set:function(t){this._capInsets[1]=t,this._texture&&this._calculateSlicedUV()}},insetBottom:{get:function(){return this._capInsets[3]},set:function(t){this._capInsets[3]=t,this._texture&&this._calculateSlicedUV()}},insetLeft:{get:function(){return this._capInsets[0]},set:function(t){this._capInsets[0]=t,this._texture&&this._calculateSlicedUV()}},insetRight:{get:function(){return this._capInsets[2]},set:function(t){this._capInsets[2]=t,this._texture&&this._calculateSlicedUV()}}},ctor:function(){i.call(this);var t=arguments[0],e=arguments[1],n=arguments[2],r=arguments[3],s=arguments[4];this._rect=null,this.uv=[],this._texture=null,this._original=null,this._offset=null,this._originalSize=null,this._rotated=!1,this._flipX=!1,this._flipY=!1,this.vertices=null,this._capInsets=[0,0,0,0],this.uvSliced=[],void 0!==t&&this.setTexture(t,e,n,r,s)},textureLoaded:function(){return this._texture&&this._texture.loaded},onTextureLoaded:function(t,e){return this.textureLoaded()?(t.call(e),!0):(this.once("load",t,e),this.ensureLoadTexture(),!1)},isRotated:function(){return this._rotated},setRotated:function(t){this._rotated=t,this._texture&&this._calculateUV()},isFlipX:function(){return this._flipX},isFlipY:function(){return this._flipY},setFlipX:function(t){this._flipX=t,this._texture&&this._calculateUV()},setFlipY:function(t){this._flipY=t,this._texture&&this._calculateUV()},getRect:function(){return cc.rect(this._rect)},setRect:function(t){this._rect=t,this._texture&&this._calculateUV()},getOriginalSize:function(){return cc.size(this._originalSize)},setOriginalSize:function(t){this._originalSize?(this._originalSize.width=t.width,this._originalSize.height=t.height):this._originalSize=cc.size(t)},getTexture:function(){return this._texture},_textureLoadedCallback:function(){var t=this._texture;if(t){var e=t.width,i=t.height;this._rect?this._checkRect(this._texture):this._rect=cc.rect(0,0,e,i),this._originalSize||this.setOriginalSize(cc.size(e,i)),this._offset||this.setOffset(cc.v2(0,0)),this._calculateUV(),this.emit("load")}},_refreshTexture:function(t){this._texture=t,t.loaded?this._textureLoadedCallback():t.once("load",this._textureLoadedCallback,this)},getOffset:function(){return cc.v2(this._offset)},setOffset:function(t){this._offset=cc.v2(t)},clone:function(){return new r(this._texture,this.getRect(),this._rotated,this.getOffset(),this.getOriginalSize())},setTexture:function(t,e,i,n,r){if(1!==arguments.length||t!==this._texture){if(this._rect=e||null,n?this.setOffset(n):this._offset=null,r?this.setOriginalSize(r):this._originalSize=null,this._rotated=i||!1,"string"!=typeof t)return t instanceof cc.Texture2D&&this._refreshTexture(t),!0;cc.errorID(3401)}},ensureLoadTexture:function(){this._texture&&(this._texture.loaded||(this._refreshTexture(this._texture),cc.assetManager.postLoadNative(this._texture)))},_checkRect:function(t){var e=this._rect,i=e.x,n=e.y;this._rotated?(i+=e.height,n+=e.width):(i+=e.width,n+=e.height),i>t.width&&cc.errorID(3300,t.nativeUrl+"/"+this.name,i,t.width),n>t.height&&cc.errorID(3400,t.nativeUrl+"/"+this.name,n,t.height)},_flipXY:function(t){if(this._flipX){var e=t[0];t[0]=t[1],t[1]=e,e=t[2],t[2]=t[3],t[3]=e}if(this._flipY){var i=t[0];t[0]=t[2],t[2]=i,i=t[1],t[1]=t[3],t[3]=i}},_calculateSlicedUV:function(){var t=this._rect,e=this._texture.width,i=this._texture.height,r=this._capInsets[0],s=this._capInsets[2],a=t.width-r-s,o=this._capInsets[1],c=this._capInsets[3],u=t.height-o-c,l=this.uvSliced;if(l.length=0,this._rotated){n[0].u=t.x/e,n[1].u=(t.x+c)/e,n[2].u=(t.x+c+u)/e,n[3].u=(t.x+t.height)/e,n[3].v=t.y/i,n[2].v=(t.y+r)/i,n[1].v=(t.y+r+a)/i,n[0].v=(t.y+t.width)/i,this._flipXY(n);for(var h=0;h<4;++h)for(var _=n[h],f=0;f<4;++f){var d=n[3-f];l.push({u:_.u,v:d.v})}}else{n[0].u=t.x/e,n[1].u=(t.x+r)/e,n[2].u=(t.x+r+a)/e,n[3].u=(t.x+t.width)/e,n[3].v=t.y/i,n[2].v=(t.y+o)/i,n[1].v=(t.y+o+u)/i,n[0].v=(t.y+t.height)/i,this._flipXY(n);for(var p=0;p<4;++p)for(var v=n[p],g=0;g<4;++g){var m=n[g];l.push({u:m.u,v:v.v})}}},_setDynamicAtlasFrame:function(t){t&&(this._original={_texture:this._texture,_x:this._rect.x,_y:this._rect.y},this._texture=t.texture,this._rect.x=t.x,this._rect.y=t.y,this._calculateUV())},_resetDynamicAtlasFrame:function(){this._original&&(this._rect.x=this._original._x,this._rect.y=this._original._y,this._texture=this._original._texture,this._original=null,this._texture.loaded?this._calculateUV():this.ensureLoadTexture())},_calculateUV:function(){var t=this._rect,e=this._texture,i=this.uv,n=e.width,r=e.height;if(this._rotated){var s=0===n?0:t.x/n,a=0===n?0:(t.x+t.height)/n,o=0===r?0:(t.y+t.width)/r,c=0===r?0:t.y/r;i[0]=s,i[1]=c,i[2]=s,i[3]=o,i[4]=a,i[5]=c,i[6]=a,i[7]=o}else{var u=0===n?0:t.x/n,l=0===n?0:(t.x+t.width)/n,h=0===r?0:(t.y+t.height)/r,_=0===r?0:t.y/r;i[0]=u,i[1]=h,i[2]=l,i[3]=h,i[4]=u,i[5]=_,i[6]=l,i[7]=_}if(this._flipX){var f=i[0];i[0]=i[2],i[2]=f,f=i[1],i[1]=i[3],i[3]=f,f=i[4],i[4]=i[6],i[6]=f,f=i[5],i[5]=i[7],i[7]=f}if(this._flipY){var d=i[0];i[0]=i[4],i[4]=d,d=i[1],i[1]=i[5],i[5]=d,d=i[2],i[2]=i[6],i[6]=d,d=i[3],i[3]=i[7],i[7]=d}var p=this.vertices;if(p){p.nu.length=0,p.nv.length=0;for(var v=0;v0?this._image=t.images[0]:void 0!==t.image&&(this._image=t.image,t.images||(_.length=0,t.images=_),t.images.push(t.image)),this._texture&&this._texture.update(t),this._hashDirty=!0},initWithElement:function(t){if(t)if(this._image=t,t.complete||t instanceof HTMLCanvasElement)this.handleLoadedTexture();else if(cc.sys.capabilities.imageBitmap&&t instanceof ImageBitmap)this._checkImageBitmap(this.handleLoadedTexture.bind(this));else{var e=this;t.addEventListener("load",(function(){e.handleLoadedTexture()})),t.addEventListener("error",(function(t){cc.warnID(3119,t.message)}))}},initWithData:function(t,e,i,n){var r=d();return r.image=t,r.images=[r.image],r.genMipmaps=this._genMipmaps,r.premultiplyAlpha=this._premultiplyAlpha,r.flipY=this._flipY,r.minFilter=h[this._minFilter],r.magFilter=h[this._magFilter],r.wrapS=this._wrapS,r.wrapT=this._wrapT,r.format=this._getGFXPixelFormat(e),r.width=i,r.height=n,this._texture?this._texture.update(r):this._texture=new s.Texture2D(s.device,r),this.width=i,this.height=n,this._updateFormat(),this._checkPackable(),this.loaded=!0,this.emit("load"),!0},getHtmlElementObj:function(){return this._image},destroy:function(){cc.sys.capabilities.imageBitmap&&this._image instanceof ImageBitmap&&this._image.close&&this._image.close(),this._packable&&cc.dynamicAtlasManager&&cc.dynamicAtlasManager.deleteAtlasTexture(this),this._image=null,this._texture&&this._texture.destroy(),this._super()},getPixelFormat:function(){return this._format},hasPremultipliedAlpha:function(){return this._premultiplyAlpha||!1},isAlphaAtlas:function(){return this._isAlphaAtlas},handleLoadedTexture:function(){if(this._image&&this._image.width&&this._image.height){this.width=this._image.width,this.height=this._image.height;var t=d();t.image=this._image,t.images=[t.image],t.width=this.width,t.height=this.height,t.genMipmaps=this._genMipmaps,t.format=this._getGFXPixelFormat(this._format),t.premultiplyAlpha=this._premultiplyAlpha,t.flipY=this._flipY,t.minFilter=h[this._minFilter],t.magFilter=h[this._magFilter],t.wrapS=this._wrapS,t.wrapT=this._wrapT,this._texture?this._texture.update(t):this._texture=new s.Texture2D(s.device,t),this._updateFormat(),this._checkPackable(),this.loaded=!0,this.emit("load"),cc.macro.CLEANUP_IMAGE_CACHE&&this._cleanupImageCache()}},_cleanupImageCache:function(){this._image instanceof HTMLImageElement?this._clearImage():cc.sys.capabilities.imageBitmap&&this._image instanceof ImageBitmap&&this._image.close&&this._image.close()},description:function(){return""},releaseTexture:function(){this._image=null,this._texture&&this._texture.destroy()},setWrapMode:function(t,e){if(this._wrapS!==t||this._wrapT!==e){var i=d();i.wrapS=t,i.wrapT=e,this.update(i)}},setFilters:function(t,e){if(this._minFilter!==t||this._magFilter!==e){var i=d();i.minFilter=t,i.magFilter=e,this.update(i)}},setFlipY:function(t){if(this._flipY!==t){var e=d();e.flipY=t,e.premultiplyAlpha=this._premultiplyAlpha,this.update(e)}},setPremultiplyAlpha:function(t){if(this._premultiplyAlpha!==t){var e=d();e.flipY=this._flipY,e.premultiplyAlpha=t,this.update(e)}},_updateFormat:function(){this._isAlphaAtlas=this._format===c.RGBA_ETC1||this._format===c.RGB_A_PVRTC_4BPPV1||this._format===c.RGB_A_PVRTC_2BPPV1},_checkPackable:function(){var t=cc.dynamicAtlasManager;if(t)if(this._isCompressed())this._packable=!1;else{var e=this.width,i=this.height;!this._image||e>t.maxFrameSize||i>t.maxFrameSize||this._getHash()!==t.Atlas.DEFAULT_HASH?this._packable=!1:this._image&&this._image instanceof HTMLCanvasElement&&(this._packable=!0)}},_getOpts:function(){var t=d();return t.width=this.width,t.height=this.height,t.genMipmaps=this._genMipmaps,t.format=this._format,t.premultiplyAlpha=this._premultiplyAlpha,t.anisotropy=this._anisotropy,t.flipY=this._flipY,t.minFilter=h[this._minFilter],t.magFilter=h[this._magFilter],t.mipFilter=h[this._mipFilter],t.wrapS=this._wrapS,t.wrapT=this._wrapT,t},_getGFXPixelFormat:function(t){return t===c.RGBA_ETC1?t=c.RGB_ETC1:t===c.RGB_A_PVRTC_4BPPV1?t=c.RGB_PVRTC_4BPPV1:t===c.RGB_A_PVRTC_2BPPV1&&(t=c.RGB_PVRTC_2BPPV1),t},_resetUnderlyingMipmaps:function(t){var e=this._getOpts();e.images=t||[null],this._texture?this._texture.update(e):this._texture=new s.Texture2D(s.device,e)},_serialize:!1,_deserialize:function(t){var e=t.split(","),i=e[0];if(i){var n=p._parseExt(i,this._format);if(n.bestExt)this._setRawAsset(n.bestExt),this._format=n.bestFormat;else{if(!n.defaultExt)throw new Error(cc.debug.getError(3121));this._setRawAsset(n.defaultExt),cc.warnID(3120,n.defaultExt,n.defaultExt)}}8===e.length&&(this._minFilter=parseInt(e[1]),this._magFilter=parseInt(e[2]),this._wrapS=parseInt(e[3]),this._wrapT=parseInt(e[4]),this._premultiplyAlpha=49===e[5].charCodeAt(0),this._genMipmaps=49===e[6].charCodeAt(0),this._packable=49===e[7].charCodeAt(0))},_getHash:function(){if(!this._hashDirty)return this._hash;var t=this._genMipmaps?1:0,e=this._premultiplyAlpha?1:0,i=this._flipY?1:0,n=this._minFilter===l.LINEAR?1:2,r=this._magFilter===l.LINEAR?1:2,s=this._wrapS===u.REPEAT?1:this._wrapS===u.CLAMP_TO_EDGE?2:3,a=this._wrapT===u.REPEAT?1:this._wrapT===u.CLAMP_TO_EDGE?2:3,o=this._format;return this._image,this._hash=Number(""+n+r+o+s+a+t+e+i),this._hashDirty=!1,this._hash},_isCompressed:function(){return this._formatc.RGBA32F},_clearImage:function(){this._image.src=""},_checkImageBitmap:function(t){var e=this,i=this._image,n=this._flipY,r=this._premultiplyAlpha;this._flipY!==i.flipY||this._premultiplyAlpha!==i.premultiplyAlpha?createImageBitmap(i,{imageOrientation:n!==i.flipY?"flipY":"none",premultiplyAlpha:r?"premultiply":"none"}).then((function(s){i.close&&i.close(),s.flipY=n,s.premultiplyAlpha=r,e._image=s,t()}),(function(t){cc.error(t.message)})):t()}});cc.Texture2D=e.exports=p}),{"../../renderer/gfx":265,"../assets/CCAsset":58,"../event/event-target":132,"../platform/CCClass":149,"../platform/id-generater":166,"../renderer":180}],74:[(function(t,e){"use strict";var i=t("./CCAsset"),n=t("../event/event-target"),r=cc.Class({name:"cc.VideoClip",extends:i,mixins:[n]});cc.VideoClip=r,e.exports=r}),{"../event/event-target":132,"./CCAsset":58}],75:[(function(t){"use strict";t("./CCAsset"),t("./CCFont"),t("./CCPrefab"),t("./CCAudioClip"),t("./CCVideoClip"),t("./CCScripts"),t("./CCSceneAsset"),t("./CCSpriteFrame"),t("./CCTexture2D"),t("./CCRenderTexture"),t("./CCTTFFont"),t("./CCSpriteAtlas"),t("./CCBitmapFont"),t("./CCLabelAtlas"),t("./CCTextAsset"),t("./CCJsonAsset"),t("./CCBufferAsset"),t("./material")}),{"./CCAsset":58,"./CCAudioClip":59,"./CCBitmapFont":60,"./CCBufferAsset":61,"./CCFont":62,"./CCJsonAsset":63,"./CCLabelAtlas":64,"./CCPrefab":65,"./CCRenderTexture":66,"./CCSceneAsset":67,"./CCScripts":68,"./CCSpriteAtlas":69,"./CCSpriteFrame":70,"./CCTTFFont":71,"./CCTextAsset":72,"./CCTexture2D":73,"./CCVideoClip":74,"./material":82}],76:[(function(t,e){"use strict";var i,n=(i=t("../CCAsset"))&&i.__esModule?i:{default:i},r=t("./effect-parser"),s=cc.Class({name:"cc.EffectAsset",extends:n.default,ctor:function(){this._effect=null},properties:{properties:Object,techniques:[],shaders:[]},onLoad:function(){if(cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS){for(var t=cc.renderer._forward._programLib,e=0;e=i.length)){var n=0,r=i.length;void 0!==e&&(n=e,r=e+1);for(var s=n;s=i.length)){var n=0,r=i.length;void 0!==e&&(n=e,r=e+1);for(var s=n;s=this._techniques.length?cc.warn("Can not switch to technique with index ["+t+"]"):this._technique=this._techniques[t]},c.clear=function(){this._techniques=[]},c.clone=function(){for(var t=[],e=0;ethis.maxSize||(this._clean(t),e[i][r].push(t),this.count++)}},s.clear=function(){this._pool={},this.count=0},s._clean=function(t){t._owner=null},r}(r.default));r.default.register("material",o);var c=o;i.default=c,e.exports=i.default}),{"../../utils/pool":225,"./utils":85}],84:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=o(t("./CCMaterial")),s=o(t("./effect-variant")),a=o(t("./material-pool"));function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i0},render:function(t){if(!(t=t||cc.director.getScene()))return null;this.node.getWorldMatrix(u),this.beforeDraw(),a.renderCamera(this._camera,t)},_onAlignWithScreen:function(){var t=cc.game.canvas.height/cc.view._scaleY;this._targetTexture&&(t=cc.visibleRect.height);var e=this._fov*cc.macro.RAD;this.node.z=t/(2*Math.tan(e/2)),e=2*Math.atan(Math.tan(e/2)/this.zoomRatio),this._camera.setFov(e),this._camera.setOrthoHeight(t/2/this.zoomRatio),this.node.setRotation(0,0,0,1)},beforeDraw:function(){if(this._camera){if(this._alignWithScreen)this._onAlignWithScreen();else{var t=this._fov*cc.macro.RAD;t=2*Math.atan(Math.tan(t/2)/this.zoomRatio),this._camera.setFov(t),this._camera.setOrthoHeight(this._orthoSize/this.zoomRatio)}this._camera.dirty=!0}}});cc.js.mixin(T.prototype,{getNodeToCameraTransform:function(t){var e=r.identity();return t.getWorldMatrix(l),this.containsNode(t)&&(this.getWorldToCameraMatrix(u),i.Mat4.mul(l,l,u)),r.fromMat4(e,l),e},getCameraToWorldPoint:function(t,e){return this.getScreenToWorldPoint(t,e)},getWorldToCameraPoint:function(t,e){return this.getWorldToScreenPoint(t,e)},getCameraToWorldMatrix:function(t){return this.getScreenToWorldMatrix2D(t)},getWorldToCameraMatrix:function(t){return this.getWorldToScreenMatrix2D(t)}}),e.exports=cc.Camera=T}),{"../../renderer/scene/camera":285,"../CCGame":24,"../geom-utils":void 0,"../renderer/index":180,"../renderer/render-flow":181,"../utils/affine-transform":215,"../value-types":238}],88:[(function(t,e){"use strict";cc.Collider.Box=cc.Class({properties:{_offset:cc.v2(0,0),_size:cc.size(100,100),offset:{tooltip:!1,get:function(){return this._offset},set:function(t){this._offset=t},type:cc.Vec2},size:{tooltip:!1,get:function(){return this._size},set:function(t){this._size.width=t.width<0?0:t.width,this._size.height=t.height<0?0:t.height},type:cc.Size}},resetInEditor:!1});var i=cc.Class({name:"cc.BoxCollider",extends:cc.Collider,mixins:[cc.Collider.Box],editor:!1});cc.BoxCollider=e.exports=i}),{}],89:[(function(t,e){"use strict";cc.Collider.Circle=cc.Class({properties:{_offset:cc.v2(0,0),_radius:50,offset:{tooltip:!1,get:function(){return this._offset},set:function(t){this._offset=t},type:cc.Vec2},radius:{tooltip:!1,get:function(){return this._radius},set:function(t){this._radius=t<0?0:t}}},resetInEditor:!1});var i=cc.Class({name:"cc.CircleCollider",extends:cc.Collider,mixins:[cc.Collider.Circle],editor:!1});cc.CircleCollider=e.exports=i}),{}],90:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Collider",extends:cc.Component,properties:{editing:{default:!1,serializable:!1,tooltip:!1},tag:{tooltip:!1,default:0,range:[0,1e7],type:cc.Integer}},onDisable:function(){cc.director.getCollisionManager().removeCollider(this)},onEnable:function(){cc.director.getCollisionManager().addCollider(this)}});cc.Collider=e.exports=i}),{}],91:[(function(t,e){"use strict";var i,n=(i=t("../value-types/vec2"))&&i.__esModule?i:{default:i},r=t("./CCContact"),s=r.CollisionType,a=t("../CCNode").EventType,o=new n.default;function c(t,e,i,n,r,s){var a=t.x,o=t.y,c=t.width,u=t.height,l=e.m,h=l[0],_=l[1],f=l[4],d=l[5],p=h*a+f*o+l[12],v=_*a+d*o+l[13],g=h*c,m=_*c,y=f*u,T=d*u;n.x=p,n.y=v,r.x=g+p,r.y=m+v,i.x=y+p,i.y=T+v,s.x=g+y+p,s.y=m+T+v}var u=cc.Class({mixins:[cc.EventTarget],properties:{enabled:!1,enabledDrawBoundingBox:!1},ctor:function(){this._contacts=[],this._colliders=[],this._debugDrawer=null,this._enabledDebugDraw=!1,cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},update:function(){if(this.enabled){var t,e,i=this._colliders;for(t=0,e=i.length;tR&&(R=O),Ow&&(w=D),D=0){e.splice(i,1);for(var n=this._contacts,r=n.length-1;r>=0;r--){var o=n[r];o.collider1!==t&&o.collider2!==t||(o.touching&&this._doCollide(s.CollisionExit,o),n.splice(r,1))}t.node.off(a.GROUP_CHANGED,this.onNodeGroupChanged,this)}else cc.errorID(6600)},onNodeGroupChanged:function(t){for(var e=t.getComponents(cc.Collider),i=0,n=e.length;i0){t.moveTo(s[0].x,s[0].y);for(var a=1;a>>1;r<=s;a=r+s>>>1){var o=t[a],c=o.constructor._executionOrder;if(c>i)s=a-1;else if(cn)s=a-1;else{if(!(u0&&(t.array.sort(u),this._invoke(t),t.array.length=0),this._invoke(this._zero),this._zero.array.length=0;var e=this._pos;e.array.length>0&&(e.array.sort(u),this._invoke(e),e.array.length=0)}}),h=cc.Class({extends:c,add:function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.array.push(t);else{var i=e<0?this._neg.array:this._pos.array,n=a(i,t);n<0&&i.splice(~n,0,t)}},remove:function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.fastRemove(t);else{var i=e<0?this._neg:this._pos,n=a(i.array,t);n>=0&&i.removeAt(n)}},invoke:function(t){this._neg.array.length>0&&this._invoke(this._neg,t),this._invoke(this._zero,t),this._pos.array.length>0&&this._invoke(this._pos,t)}});function _(t,e,i,n){var r="var a=it.array;for(it.i=0;it.i=0?n.fastRemoveAt(this._deferredComps,e):(!t.start||t._objFlags&r||this.startInvoker.remove(t),t.update&&this.updateInvoker.remove(t),t.lateUpdate&&this.lateUpdateInvoker.remove(t))},enableComp:function(t,e){if(!(t._objFlags&s)){if(t.onEnable){if(e)return void e.add(t);if(t.onEnable(),!t.node._activeInHierarchy)return}this._onEnabled(t)}},disableComp:function(t){t._objFlags&s&&(t.onDisable&&t.onDisable(),this._onDisabled(t))},_scheduleImmediate:function(t){"function"!=typeof t.start||t._objFlags&r||this.startInvoker.add(t),"function"==typeof t.update&&this.updateInvoker.add(t),"function"==typeof t.lateUpdate&&this.lateUpdateInvoker.add(t)},_deferredSchedule:function(){for(var t=this._deferredComps,e=0,i=t.length;e0&&(this._deferredSchedule(),this.startInvoker.invoke())},startPhase:function(){this._updating=!0,this.startInvoker.invoke(),this._startForNewComps()},updatePhase:function(t){this.updateInvoker.invoke(t)},lateUpdatePhase:function(t){this.lateUpdateInvoker.invoke(t),this._updating=!1,this._startForNewComps()}});e.exports=g}),{"./platform/CCClass":149,"./platform/CCObject":155,"./platform/js":170,"./utils/misc":223}],96:[(function(t,e){"use strict";var i=t("../../animation/animation-animator"),n=t("../../animation/animation-clip"),r=t("../event/event-target"),s=t("../platform/js"),a=function(t,e){return t===e},o=cc.Enum({PLAY:"play",STOP:"stop",PAUSE:"pause",RESUME:"resume",LASTFRAME:"lastframe",FINISHED:"finished"}),c=cc.Class({name:"cc.Animation",extends:t("./CCComponent"),mixins:[r],editor:!1,statics:{EventType:o},ctor:function(){cc.EventTarget.call(this),this._animator=null,this._nameToState=s.createMap(!0),this._didInit=!1,this._currentClip=null},properties:{_defaultClip:{default:null,type:n},defaultClip:{type:n,get:function(){return this._defaultClip},set:function(){},tooltip:!1},currentClip:{get:function(){return this._currentClip},set:function(t){this._currentClip=t},type:n,visible:!1},_writableClips:{get:function(){return this._clips},set:function(t){this._didInit=!1,this._clips=t,this._init()},type:[n]},_clips:{default:[],type:[n],tooltip:!1,visible:!0},playOnLoad:{default:!1,tooltip:!1}},start:function(){if(this.playOnLoad&&this._defaultClip&&(!this._animator||!this._animator.isPlaying)){var t=this.getAnimationState(this._defaultClip.name);this._animator.playState(t)}},onEnable:function(){this._animator&&this._animator.resume()},onDisable:function(){this._animator&&this._animator.pause()},onDestroy:function(){this.stop()},getClips:function(){return this._clips},play:function(t,e){var i=this.playAdditive(t,e);return this._animator.stopStatesExcept(i),i},playAdditive:function(t,e){this._init();var i=this.getAnimationState(t||this._defaultClip&&this._defaultClip.name);if(i){this.enabled=!0;var n=this._animator;n.isPlaying&&i.isPlaying?i.isPaused?n.resumeState(i):(n.stopState(i),n.playState(i,e)):n.playState(i,e),this.enabledInHierarchy||n.pause(),this.currentClip=i.clip}return i},stop:function(t){if(this._didInit)if(t){var e=this._nameToState[t];e&&this._animator.stopState(e)}else this._animator.stop()},pause:function(t){if(this._didInit)if(t){var e=this._nameToState[t];e&&this._animator.pauseState(e)}else this.enabled=!1},resume:function(t){if(this._didInit)if(t){var e=this.getAnimationState(t);e&&this._animator.resumeState(e)}else this.enabled=!0},setCurrentTime:function(t,e){if(this._init(),e){var i=this.getAnimationState(e);i&&this._animator.setStateTime(i,t)}else this._animator.setStateTime(t)},getAnimationState:function(t){this._init();var e=this._nameToState[t];return e&&!e.curveLoaded&&this._animator._reloadClip(e),e||null},hasAnimationState:function(t){return this._init(),!!this._nameToState[t]},addClip:function(t,e){if(t){this._init(),cc.js.array.contains(this._clips,t)||this._clips.push(t),e=e||t.name;var i=this._nameToState[e];if(i){if(i.clip===t)return i;var n=this._clips.indexOf(i.clip);-1!==n&&this._clips.splice(n,1)}var r=new cc.AnimationState(t,e);return this._nameToState[e]=r,r}cc.warnID(3900)},removeClip:function(t,e){if(t){var i;for(var n in this._init(),this._nameToState)if(i=this._nameToState[n],a(i.clip,t))break;if(t===this._defaultClip){if(!e)return void cc.warnID(3902);this._defaultClip=null}if(i&&i.isPlaying){if(!e)return void cc.warnID(3903);this.stop(i.name)}this._clips=this._clips.filter((function(e){return!a(e,t)})),i&&delete this._nameToState[i.name]}else cc.warnID(3901)},sample:function(t){if(this._init(),t){var e=this.getAnimationState(t);e&&e.sample()}else this._animator.sample()},on:function(t,e,i,n){this._init();var r=this._EventTargetOn(t,e,i,n);if("lastframe"===t){var s=this._nameToState;for(var a in s)s[a]._lastframeEventOn=!0}return r},off:function(t,e,i,n){if(this._init(),"lastframe"===t){var r=this._nameToState;for(var s in r)r[s]._lastframeEventOn=!1}this._EventTargetOff(t,e,i,n)},_init:function(){this._didInit||(this._didInit=!0,this._animator=new i(this.node,this),this._createStates())},_createStates:function(){this._nameToState=s.createMap(!0);for(var t=null,e=!1,i=0;i0&&(i=this.time/this.duration),i>=1&&(i=1),this.transition===r.COLOR){var n=this._fromColor.lerp(this._toColor,i);this._setTargetColor(n)}else this.transition===r.SCALE&&this._originalScale&&(e.scale=this._fromScale.lerp(this._toScale,i));1===i&&(this._transitionFinished=!0)}},_registerNodeEvent:function(){this.node.on(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this),this.node.on(cc.Node.EventType.TOUCH_MOVE,this._onTouchMove,this),this.node.on(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this),this.node.on(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancel,this),this.node.on(cc.Node.EventType.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.on(cc.Node.EventType.MOUSE_LEAVE,this._onMouseMoveOut,this)},_unregisterNodeEvent:function(){this.node.off(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this),this.node.off(cc.Node.EventType.TOUCH_MOVE,this._onTouchMove,this),this.node.off(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this),this.node.off(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancel,this),this.node.off(cc.Node.EventType.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.off(cc.Node.EventType.MOUSE_LEAVE,this._onMouseMoveOut,this)},_registerTargetEvent:function(t){t.on(cc.Node.EventType.SCALE_CHANGED,this._onTargetScaleChanged,this)},_unregisterTargetEvent:function(t){t.off(cc.Node.EventType.SCALE_CHANGED,this._onTargetScaleChanged,this)},_getTargetSprite:function(t){var e=null;return t&&(e=t.getComponent(cc.Sprite)),e},_applyTarget:function(){var t=this._getTarget();this._sprite=this._getTargetSprite(t),this._originalScale||(this._originalScale=cc.Vec2.ZERO),this._originalScale.x=t.scaleX,this._originalScale.y=t.scaleY,this._registerTargetEvent(t)},_onTouchBegan:function(t){this.interactable&&this.enabledInHierarchy&&(this._pressed=!0,this._updateState(),t.stopPropagation())},_onTouchMove:function(t){if(this.interactable&&this.enabledInHierarchy&&this._pressed){var e,i=t.touch,n=this.node._hitTest(i.getLocation()),a=this._getTarget(),o=this._originalScale;this.transition===r.SCALE&&o?n?(this._fromScale.x=o.x,this._fromScale.y=o.y,this._toScale.x=o.x*this.zoomScale,this._toScale.y=o.y*this.zoomScale,this._transitionFinished=!1):(this.time=0,this._transitionFinished=!0,a.setScale(o.x,o.y)):(e=n?s.PRESSED:s.NORMAL,this._applyTransition(e)),t.stopPropagation()}},_onTouchEnded:function(t){this.interactable&&this.enabledInHierarchy&&(this._pressed&&(cc.Component.EventHandler.emitEvents(this.clickEvents,t),this.node.emit("click",this)),this._pressed=!1,this._updateState(),t.stopPropagation())},_onTouchCancel:function(){this.interactable&&this.enabledInHierarchy&&(this._pressed=!1,this._updateState())},_onMouseMoveIn:function(){!this._pressed&&this.interactable&&this.enabledInHierarchy&&(this.transition!==r.SPRITE||this.hoverSprite)&&(this._hovered||(this._hovered=!0,this._updateState()))},_onMouseMoveOut:function(){this._hovered&&(this._hovered=!1,this._updateState())},_updateState:function(){var t=this._getButtonState();this._applyTransition(t),this._updateDisabledState()},_getButtonState:function(){return this.interactable?this._pressed?s.PRESSED:this._hovered?s.HOVER:s.NORMAL:s.DISABLED},_updateColorTransitionImmediately:function(t){var e=this._getStateColor(t);this._setTargetColor(e),this._fromColor=e.clone(),this._toColor=e},_updateColorTransition:function(t){if(t===s.DISABLED)this._updateColorTransitionImmediately(t);else{var e=this._getTarget(),i=this._getStateColor(t);this._fromColor=e.color.clone(),this._toColor=i,this.time=0,this._transitionFinished=!1}},_updateSpriteTransition:function(t){var e=this._getStateSprite(t);this._sprite&&e&&(this._sprite.spriteFrame=e)},_updateScaleTransition:function(t){t===s.PRESSED?this._zoomUp():this._zoomBack()},_zoomUp:function(){this._originalScale&&(this._fromScale.x=this._originalScale.x,this._fromScale.y=this._originalScale.y,this._toScale.x=this._originalScale.x*this.zoomScale,this._toScale.y=this._originalScale.y*this.zoomScale,this.time=0,this._transitionFinished=!1)},_zoomBack:function(){if(this._originalScale){var t=this._getTarget();this._fromScale.x=t.scaleX,this._fromScale.y=t.scaleY,this._toScale.x=this._originalScale.x,this._toScale.y=this._originalScale.y,this.time=0,this._transitionFinished=!1}},_updateTransition:function(t){t===r.COLOR?this._updateColorTransitionImmediately(s.NORMAL):t===r.SPRITE&&this._updateSpriteTransition(s.NORMAL),this._updateState()},_applyTransition:function(t){var e=this.transition;e===r.COLOR?this._updateColorTransition(t):e===r.SPRITE?this._updateSpriteTransition(t):e===r.SCALE&&this._updateScaleTransition(t)},_resizeNodeToTargetNode:!1,_updateDisabledState:function(t){if(this._sprite&&(this.enableAutoGrayEffect||t)){var e=!1;this.transition===r.SPRITE&&this.disabledSprite||(e=this.enableAutoGrayEffect&&!this.interactable),this._switchGrayMaterial(e,this._sprite)}}});cc.Button=e.exports=a}),{"../utils/gray-sprite-state":221,"./CCComponent":101}],100:[(function(t,e){"use strict";var i=t("../camera/CCCamera"),n=t("./CCComponent"),r=cc.Class({name:"cc.Canvas",extends:n,editor:!1,resetInEditor:!1,statics:{instance:null},properties:{_designResolution:cc.size(960,640),designResolution:{get:function(){return cc.size(this._designResolution)},set:function(t){this._designResolution.width=t.width,this._designResolution.height=t.height,this.applySettings()},tooltip:!1},_fitWidth:!1,_fitHeight:!0,fitHeight:{get:function(){return this._fitHeight},set:function(t){this._fitHeight!==t&&(this._fitHeight=t,this.applySettings())},tooltip:!1},fitWidth:{get:function(){return this._fitWidth},set:function(t){this._fitWidth!==t&&(this._fitWidth=t,this.applySettings())},tooltip:!1}},_fitDesignResolution:!1,__preload:function(){if(r.instance)return cc.warnID(6700,this.node.name,r.instance.node.name);r.instance=this,this.applySettings();var t=this.getComponent(cc.Widget);t&&t.updateAlignment()},start:function(){if(!i.main&&cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS){var t=new cc.Node("Main Camera");t.parent=this.node,t.setSiblingIndex(0);var e=t.addComponent(i),n=i.ClearFlags;e.clearFlags=n.COLOR|n.DEPTH|n.STENCIL,e.depth=-1}},onDestroy:function(){r.instance===this&&(r.instance=null)},applySettings:function(){var t,e=cc.ResolutionPolicy;t=this.fitHeight&&this.fitWidth?e.SHOW_ALL:this.fitHeight||this.fitWidth?this.fitWidth?e.FIXED_WIDTH:e.FIXED_HEIGHT:e.NO_BORDER;var i=this._designResolution;cc.view.setDesignResolutionSize(i.width,i.height,t)}});cc.Canvas=e.exports=r}),{"../camera/CCCamera":87,"./CCComponent":101}],101:[(function(t,e){"use strict";var i=t("../platform/CCObject"),n=t("../platform/js"),r=new(t("../platform/id-generater"))("Comp"),s=(i.Flags.IsOnEnableCalled,i.Flags.IsOnLoadCalled),a=!!cc.ActionManager,o=cc.Class({name:"cc.Component",extends:i,ctor:function(){this._id=r.getNewId(),this.__eventTargets=[]},properties:{node:{default:null,visible:!1},name:{get:function(){if(this._name)return this._name;var t=cc.js.getClassName(this),e=t.lastIndexOf(".");return e>=0&&(t=t.slice(e+1)),this.node.name+"<"+t+">"},set:function(t){this._name=t},visible:!1},uuid:{get:function(){return this._id},visible:!1},__scriptAsset:!1,_enabled:!0,enabled:{get:function(){return this._enabled},set:function(t){if(this._enabled!==t&&(this._enabled=t,this.node._activeInHierarchy)){var e=cc.director._compScheduler;t?e.enableComp(this):e.disableComp(this)}},visible:!1,animatable:!0},enabledInHierarchy:{get:function(){return this._enabled&&this.node&&this.node._activeInHierarchy},visible:!1},_isOnLoadCalled:{get:function(){return this._objFlags&s}}},update:null,lateUpdate:null,__preload:null,onLoad:null,start:null,onEnable:null,onDisable:null,onDestroy:null,onFocusInEditor:null,onLostFocusInEditor:null,resetInEditor:null,addComponent:function(t){return this.node.addComponent(t)},getComponent:function(t){return this.node.getComponent(t)},getComponents:function(t){return this.node.getComponents(t)},getComponentInChildren:function(t){return this.node.getComponentInChildren(t)},getComponentsInChildren:function(t){return this.node.getComponentsInChildren(t)},_getLocalBounds:null,onRestore:null,destroy:function(){this._super()&&this._enabled&&this.node._activeInHierarchy&&cc.director._compScheduler.disableComp(this)},_onPreDestroy:function(){a&&cc.director.getActionManager().removeAllActionsFromTarget(this),this.unscheduleAllCallbacks();for(var t=this.__eventTargets,e=t.length-1;e>=0;--e){var i=t[e];i&&i.targetOff(this)}t.length=0,cc.director._nodeActivator.destroyComp(this),this.node._removeComponent(this)},_instantiate:function(t){return t||(t=cc.instantiate._clone(this,this)),t.node=null,t},schedule:function(t,e,i,n){cc.assertID(t,1619),e=e||0,cc.assertID(e>=0,1620),i=isNaN(i)?cc.macro.REPEAT_FOREVER:i,n=n||0;var r=cc.director.getScheduler(),s=r.isTargetPaused(this);r.schedule(t,this,e,i,n,s)},scheduleOnce:function(t,e){this.schedule(t,0,0,e)},unschedule:function(t){t&&cc.director.getScheduler().unschedule(t,this)},unscheduleAllCallbacks:function(){cc.director.getScheduler().unscheduleAllForTarget(this)}});o._requireComponent=null,o._executionOrder=0,n.value(o,"_registerEditorProps",(function(t,e){var i=e.requireComponent;i&&(t._requireComponent=i);var n=e.executionOrder;n&&"number"==typeof n&&(t._executionOrder=n)})),o.prototype.__scriptUuid="",cc.Component=e.exports=o}),{"../platform/CCObject":155,"../platform/id-generater":166,"../platform/js":170}],102:[(function(){"use strict";cc.Component.EventHandler=cc.Class({name:"cc.ClickEvent",properties:{target:{default:null,type:cc.Node},component:"",_componentId:"",_componentName:{get:function(){return this._genCompIdIfNeeded(),this._compId2Name(this._componentId)},set:function(t){this._componentId=this._compName2Id(t)}},handler:{default:""},customEventData:{default:""}},statics:{emitEvents:function(t){var e;if(arguments.length>0)for(var i=0,n=(e=new Array(arguments.length-1)).length;ip&&(p=v),w>=p&&(v=p,p=w,y=C.getAnchorPoint().y),this.horizontalDirection===o.RIGHT_TO_LEFT&&(S=1-C.anchorX),f=f+l*S*R+l*this.spacingX;var I=l*(1-S)*R;if(e){var M=f+I+l*(l>0?this.paddingRight:this.paddingLeft),O=this.horizontalDirection===o.LEFT_TO_RIGHT&&M>(1-c.x)*t,D=this.horizontalDirection===o.RIGHT_TO_LEFT&&M<-c.x*t;(O||D)&&(w>=p?(0===v&&(v=p),d+=v,v=p):(d+=p,v=w,p=0),f=_+l*(h+S*R),g++)}var L=i(C,d,g);t>=R+this.paddingLeft+this.paddingRight&&s&&C.setPosition(cc.v2(f,L));var P,N=1,F=0===p?w:p;this.verticalDirection===a.TOP_TO_BOTTOM?(m=m||this.node._contentSize.height,(P=L+(N=-1)*(F*y+this.paddingBottom))m&&(m=P)),f+=I}}return m},_getVerticalBaseHeight:function(t){var e=0,i=0;if(this.resizeMode===r.CONTAINER){for(var n=0;np&&(p=v),R>=p&&(v=p,p=R,y=C.getAnchorPoint().x),this.verticalDirection===a.TOP_TO_BOTTOM&&(S=1-C.anchorY),f=f+l*S*w+l*this.spacingY;var I=l*(1-S)*w;if(e){var M=f+I+l*(l>0?this.paddingTop:this.paddingBottom),O=this.verticalDirection===a.BOTTOM_TO_TOP&&M>(1-c.y)*t,D=this.verticalDirection===a.TOP_TO_BOTTOM&&M<-c.y*t;(O||D)&&(R>=p?(0===v&&(v=p),d+=v,v=p):(d+=p,v=R,p=0),f=_+l*(h+S*w),g++)}var L=i(C,d,g);t>=w+(this.paddingTop+this.paddingBottom)&&s&&C.setPosition(cc.v2(L,f));var P,N=1,F=0===p?R:p;this.horizontalDirection===o.RIGHT_TO_LEFT?(N=-1,m=m||this.node._contentSize.width,(P=L+N*(F*y+this.paddingLeft))m&&(m=P)),f+=I}}return m},_doLayoutBasic:function(){for(var t=this.node.children,e=null,i=0;i0&&this.node.children.find((function(t){return t.activeInHierarchy}))&&(this._doLayout(),this._layoutDirty=!1)}});cc.Layout=e.exports=c}),{"../CCNode":25,"./CCComponent":101}],105:[(function(t,e){"use strict";var i=a(t("../../renderer/gfx")),n=a(t("../value-types/mat4")),r=a(t("../value-types/vec2")),s=a(t("../assets/material/material-variant"));function a(t){return t&&t.__esModule?t:{default:t}}var o=t("../utils/misc"),c=t("./CCRenderComponent"),u=t("../renderer/render-flow"),l=t("../graphics/graphics"),h=new r.default,_=new n.default,f=[];function d(t,e,i){f.length=0;for(var n=2*Math.PI/i,r=0;r=0&&o.y>=0&&o.x<=s&&o.y<=a;else if(this.type===p.ELLIPSE){var u=s/2,l=a/2,f=o.x-.5*s,d=o.y-.5*a;c=f*f/(u*u)+d*d/(l*l)<1}return this.inverted&&(c=!c),c},markForRender:function(t){var e=u.FLAG_RENDER|u.FLAG_UPDATE_RENDER_DATA|u.FLAG_POST_RENDER;t?(this.node._renderFlag|=e,this.markForValidate()):t||(this.node._renderFlag&=~e)},disableRender:function(){this.node._renderFlag&=~(u.FLAG_RENDER|u.FLAG_UPDATE_RENDER_DATA|u.FLAG_POST_RENDER)}});cc.Mask=e.exports=v}),{"../../renderer/gfx":265,"../assets/material/material-variant":84,"../graphics/graphics":138,"../renderer/render-flow":181,"../utils/misc":223,"../value-types/mat4":240,"../value-types/vec2":247,"./CCRenderComponent":110}],106:[(function(t,e){"use strict";var i=t("../components/CCRenderComponent"),n=t("../../core/utils/blend-func"),r=cc.Class({name:"cc.MotionStreak",extends:i,mixins:[n],editor:!1,ctor:function(){this._points=[]},properties:{preview:{default:!1,editorOnly:!0,notify:!1,animatable:!1},_fadeTime:1,fadeTime:{get:function(){return this._fadeTime},set:function(t){this._fadeTime=t,this.reset()},animatable:!1,tooltip:!1},_minSeg:1,minSeg:{get:function(){return this._minSeg},set:function(t){this._minSeg=t},animatable:!1,tooltip:!1},_stroke:64,stroke:{get:function(){return this._stroke},set:function(t){this._stroke=t},animatable:!1,tooltip:!1},_texture:{default:null,type:cc.Texture2D},texture:{get:function(){return this._texture},set:function(t){this._texture!==t&&(this._texture=t,this._updateMaterial())},type:cc.Texture2D,animatable:!1,tooltip:!1},_color:cc.Color.WHITE,color:{get:function(){return this._color.clone()},set:function(t){this._color.equals(t)||this._color.set(t)},type:cc.Color,tooltip:!1},_fastMode:!1,fastMode:{get:function(){return this._fastMode},set:function(t){this._fastMode=t},animatable:!1,tooltip:!1}},onEnable:function(){this._super(),this.reset()},_updateMaterial:function(){var t=this.getMaterial(0);t&&t.setProperty("texture",this._texture),n.prototype._updateMaterial.call(this)},onFocusInEditor:!1,onLostFocusInEditor:!1,reset:function(){this._points.length=0,this._assembler&&this._assembler._renderData.clear()},lateUpdate:function(t){this._assembler&&this._assembler.update(this,t)}});cc.MotionStreak=e.exports=r}),{"../../core/utils/blend-func":218,"../components/CCRenderComponent":110}],107:[(function(t,e){"use strict";var i=cc.Enum({Unified:0,Free:1}),n=cc.Enum({Horizontal:0,Vertical:1}),r=cc.Enum({PAGE_TURNING:0}),s=cc.Class({name:"cc.PageView",extends:cc.ScrollView,editor:!1,ctor:function(){this._curPageIdx=0,this._lastPageIdx=0,this._pages=[],this._initContentPos=cc.v2(),this._scrollCenterOffsetX=[],this._scrollCenterOffsetY=[]},properties:{sizeMode:{default:i.Unified,type:i,tooltip:!1,notify:function(){this._syncSizeMode()}},direction:{default:n.Horizontal,type:n,tooltip:!1,notify:function(){this._syncScrollDirection()}},scrollThreshold:{default:.5,type:cc.Float,slide:!0,range:[0,1,.01],tooltip:!1},autoPageTurningThreshold:{default:100,type:cc.Float,tooltip:!1},pageTurningEventTiming:{default:.1,type:cc.Float,range:[0,1,.01],tooltip:!1},indicator:{default:null,type:cc.PageViewIndicator,tooltip:!1,notify:function(){this.indicator&&this.indicator.setPageView(this)}},pageTurningSpeed:{default:.3,type:cc.Float,tooltip:!1},pageEvents:{default:[],type:cc.Component.EventHandler,tooltip:!1}},statics:{SizeMode:i,Direction:n,EventType:r},onEnable:function(){this._super(),this.node.on(cc.Node.EventType.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.on("scroll-ended-with-threshold",this._dispatchPageTurningEvent,this)},onDisable:function(){this._super(),this.node.off(cc.Node.EventType.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.off("scroll-ended-with-threshold",this._dispatchPageTurningEvent,this)},onLoad:function(){this._initPages(),this.indicator&&this.indicator.setPageView(this)},getCurrentPageIndex:function(){return this._curPageIdx},setCurrentPageIndex:function(t){this.scrollToPage(t,!0)},getPages:function(){return this._pages},addPage:function(t){t&&-1===this._pages.indexOf(t)&&this.content&&(this.content.addChild(t),this._pages.push(t),this._updatePageView())},insertPage:function(t,e){e<0||!t||-1!==this._pages.indexOf(t)||!this.content||(e>=this._pages.length?this.addPage(t):(this._pages.splice(e,0,t),this.content.addChild(t),this._updatePageView()))},removePage:function(t){if(t&&this.content){var e=this._pages.indexOf(t);-1!==e?this.removePageAtIndex(e):cc.warnID(4300,t.name)}},removePageAtIndex:function(t){var e=this._pages;if(!(t<0||t>=e.length)){var i=e[t];i&&(this.content.removeChild(i),e.splice(t,1),this._updatePageView())}},removeAllPages:function(){if(this.content){for(var t=this._pages,e=0,i=t.length;e=this._pages.length||(e=void 0!==e?e:.3,this._curPageIdx=t,this.scrollToOffset(this._moveOffsetValue(t),e,!0),this.indicator&&this.indicator._changedState())},getScrollEndedEventTiming:function(){return this.pageTurningEventTiming},_syncScrollDirection:function(){this.horizontal=this.direction===n.Horizontal,this.vertical=this.direction===n.Vertical},_syncSizeMode:function(){if(this.content){var t=this.content.getComponent(cc.Layout);if(t){if(this.sizeMode===i.Free&&this._pages.length>0){var e=this._pages[this._pages.length-1];this.direction===n.Horizontal?(t.paddingLeft=(this._view.width-this._pages[0].width)/2,t.paddingRight=(this._view.width-e.width)/2):this.direction===n.Vertical&&(t.paddingTop=(this._view.height-this._pages[0].height)/2,t.paddingBottom=(this._view.height-e.height)/2)}t.updateLayout()}}},_updatePageView:function(){var t=this.content.getComponent(cc.Layout);t&&t.enabled&&t.updateLayout();var e=this._pages.length;this._curPageIdx>=e&&(this._curPageIdx=0===e?0:e-1,this._lastPageIdx=this._curPageIdx);for(var i=this._initContentPos,r=0;r=0||this._pages.push(i)}this._syncScrollDirection(),this._syncSizeMode(),this._updatePageView()}},_dispatchPageTurningEvent:function(){this._lastPageIdx!==this._curPageIdx&&(this._lastPageIdx=this._curPageIdx,cc.Component.EventHandler.emitEvents(this.pageEvents,this,r.PAGE_TURNING),this.node.emit("page-turning",this))},_isScrollable:function(t,e,r){if(this.sizeMode===i.Free){var s,a;if(this.direction===n.Horizontal)return s=this._scrollCenterOffsetX[e],a=this._scrollCenterOffsetX[r],Math.abs(t.x)>=Math.abs(s-a)*this.scrollThreshold;if(this.direction===n.Vertical)return s=this._scrollCenterOffsetY[e],a=this._scrollCenterOffsetY[r],Math.abs(t.y)>=Math.abs(s-a)*this.scrollThreshold}else{if(this.direction===n.Horizontal)return Math.abs(t.x)>=this._view.width*this.scrollThreshold;if(this.direction===n.Vertical)return Math.abs(t.y)>=this._view.height*this.scrollThreshold}},_isQuicklyScrollable:function(t){if(this.direction===n.Horizontal){if(Math.abs(t.x)>this.autoPageTurningThreshold)return!0}else if(this.direction===n.Vertical&&Math.abs(t.y)>this.autoPageTurningThreshold)return!0;return!1},_moveOffsetValue:function(t){var e=cc.v2(0,0);return this.sizeMode===i.Free?this.direction===n.Horizontal?e.x=this._scrollCenterOffsetX[t]:this.direction===n.Vertical&&(e.y=this._scrollCenterOffsetY[t]):this.direction===n.Horizontal?e.x=t*this._view.width:this.direction===n.Vertical&&(e.y=t*this._view.height),e},_getDragDirection:function(t){return this.direction===n.Horizontal?0===t.x?0:t.x>0?1:-1:this.direction===n.Vertical?0===t.y?0:t.y<0?1:-1:void 0},_handleReleaseLogic:function(){this._autoScrollToPage(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent("scroll-ended"))},_autoScrollToPage:function(){if(this._startBounceBackIfNeeded()){var t=this._getHowMuchOutOfBoundary();((t=this._clampDelta(t)).x>0||t.y<0)&&(this._curPageIdx=0===this._pages.length?0:this._pages.length-1),(t.x<0||t.y>0)&&(this._curPageIdx=0),this.indicator&&this.indicator._changedState()}else{var e=this._touchBeganPosition.sub(this._touchEndPosition),i=this._curPageIdx,n=i+this._getDragDirection(e),r=this.pageTurningSpeed*Math.abs(i-n);if(n=t.length)){for(var i=0;it.length)for(i=0;i0;--i){var n=t[i-1];this.node.removeChild(n),t.splice(i-1,1)}this._layout&&this._layout.enabledInHierarchy&&this._layout.updateLayout(),this._changedState()}}}});cc.PageViewIndicator=e.exports=n}),{"./CCComponent":101}],109:[(function(t,e){"use strict";var i=t("../utils/misc"),n=t("./CCComponent"),r=cc.Enum({HORIZONTAL:0,VERTICAL:1,FILLED:2}),s=cc.Class({name:"cc.ProgressBar",extends:n,editor:!1,_initBarSprite:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e=this.node.getContentSize(),i=this.node.getAnchorPoint(),n=t.getContentSize();t.parent===this.node&&this.node.setContentSize(n),this.barSprite.fillType===cc.Sprite.FillType.RADIAL&&(this.mode=r.FILLED);var s=t.getContentSize();if(this.mode===r.HORIZONTAL?this.totalLength=s.width:this.mode===r.VERTICAL?this.totalLength=s.height:this.totalLength=this.barSprite.fillRange,t.parent===this.node){var a=-e.width*i.x;t.setPosition(cc.v2(a,0))}}},_updateBarStatus:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e,n,s,a=t.getAnchorPoint(),o=t.getContentSize(),c=t.getPosition(),u=cc.v2(0,.5),l=i.clamp01(this.progress),h=this.totalLength*l;switch(this.mode){case r.HORIZONTAL:this.reverse&&(u=cc.v2(1,.5)),e=cc.size(h,o.height),n=this.totalLength,s=o.height;break;case r.VERTICAL:u=this.reverse?cc.v2(.5,1):cc.v2(.5,0),e=cc.size(o.width,h),n=o.width,s=this.totalLength}if(this.mode===r.FILLED)this.barSprite.type!==cc.Sprite.Type.FILLED?cc.warn("ProgressBar FILLED mode only works when barSprite's Type is FILLED!"):(this.reverse&&(h*=-1),this.barSprite.fillRange=h);else if(this.barSprite.type!==cc.Sprite.Type.FILLED){var _=u.x-a.x,f=u.y-a.y,d=cc.v2(n*_,s*f);t.setPosition(c.x+d.x,c.y+d.y),t.setAnchorPoint(u),t.setContentSize(e)}else cc.warn("ProgressBar non-FILLED mode only works when barSprite's Type is non-FILLED!")}},properties:{barSprite:{default:null,type:cc.Sprite,tooltip:!1,notify:function(){this._initBarSprite()},animatable:!1},mode:{default:r.HORIZONTAL,type:r,tooltip:!1,notify:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e=t.getContentSize();this.mode===r.HORIZONTAL?this.totalLength=e.width:this.mode===r.VERTICAL?this.totalLength=e.height:this.mode===r.FILLED&&(this.totalLength=this.barSprite.fillRange)}},animatable:!1},_N$totalLength:1,totalLength:{range:[0,Number.MAX_VALUE],tooltip:!1,get:function(){return this._N$totalLength},set:function(t){this.mode===r.FILLED&&(t=i.clamp01(t)),this._N$totalLength=t,this._updateBarStatus()}},progress:{default:1,type:cc.Float,range:[0,1,.1],slide:!0,tooltip:!1,notify:function(){this._updateBarStatus()}},reverse:{default:!1,tooltip:!1,notify:function(){this.barSprite&&(this.barSprite.fillStart=1-this.barSprite.fillStart),this._updateBarStatus()},animatable:!1}},statics:{Mode:r}});cc.ProgressBar=e.exports=s}),{"../utils/misc":223,"./CCComponent":101}],110:[(function(t,e){"use strict";var i=s(t("../renderer/assembler")),n=s(t("../assets/material/material-variant")),r=t("../value-types");function s(t){return t&&t.__esModule?t:{default:t}}var a=t("./CCComponent"),o=t("../renderer/render-flow"),c=t("../assets/material/CCMaterial"),u=new r.Color,l=cc.Class({name:"RenderComponent",extends:a,editor:!1,properties:{_materials:{default:[],type:c},materials:{get:function(){return this._materials},set:function(t){this._materials=t,this._activateMaterial()},type:[c],displayName:"Materials",animatable:!1}},ctor:function(){this._vertsDirty=!0,this._assembler=null},_resetAssembler:function(){i.default.init(this),this._updateColor(),this.setVertsDirty()},__preload:function(){this._resetAssembler(),this._activateMaterial()},onEnable:function(){this.node._renderComponent&&(this.node._renderComponent.enabled=!1),this.node._renderComponent=this,this.node._renderFlag|=o.FLAG_OPACITY_COLOR,this.setVertsDirty()},onDisable:function(){this.node._renderComponent=null,this.disableRender()},onDestroy:function(){for(var t=this._materials,e=0;e=this._materials.length)return null;var e=this._materials[t];if(!e)return null;var i=n.default.create(e,this);return i!==e&&this.setMaterial(t,i),i},getMaterials:function(){for(var t=this._materials,e=0;e0?n:-n)),i*(e/r)},_calculatePosition:function(t,e,r,s,a,o){var c=t-e;a&&(c+=Math.abs(a));var u=0;c&&(u=s/c,u=i.clamp01(u));var l=(r-o)*u;return this.direction===n.VERTICAL?cc.v2(0,l):cc.v2(l,0)},_updateLength:function(t){if(this.handle){var e=this.handle.node,i=e.getContentSize();e.setAnchorPoint(cc.v2(0,0)),this.direction===n.HORIZONTAL?e.setContentSize(t,i.height):e.setContentSize(i.width,t)}},_processAutoHide:function(t){if(this.enableAutoHide&&!(this._autoHideRemainingTime<=0)&&!this._touching&&(this._autoHideRemainingTime-=t,this._autoHideRemainingTime<=this.autoHideTime)){this._autoHideRemainingTime=Math.max(0,this._autoHideRemainingTime);var e=this._opacity*(this._autoHideRemainingTime/this.autoHideTime);this._setOpacity(e)}},start:function(){this.enableAutoHide&&this._setOpacity(0)},hide:function(){this._autoHideRemainingTime=0,this._setOpacity(0)},show:function(){this._autoHideRemainingTime=this.autoHideTime,this._setOpacity(this._opacity)},update:function(t){this._processAutoHide(t)}});cc.Scrollbar=e.exports=r}),{"../utils/misc":223,"./CCComponent":101}],113:[(function(t,e){"use strict";var i=t("../CCNode").EventType,n=cc.v2(),r=cc.v2(),s=function(){return(new Date).getMilliseconds()},a=cc.Enum({SCROLL_TO_TOP:0,SCROLL_TO_BOTTOM:1,SCROLL_TO_LEFT:2,SCROLL_TO_RIGHT:3,SCROLLING:4,BOUNCE_TOP:5,BOUNCE_BOTTOM:6,BOUNCE_LEFT:7,BOUNCE_RIGHT:8,SCROLL_ENDED:9,TOUCH_UP:10,AUTOSCROLL_ENDED_WITH_THRESHOLD:11,SCROLL_BEGAN:12}),o={"scroll-to-top":a.SCROLL_TO_TOP,"scroll-to-bottom":a.SCROLL_TO_BOTTOM,"scroll-to-left":a.SCROLL_TO_LEFT,"scroll-to-right":a.SCROLL_TO_RIGHT,scrolling:a.SCROLLING,"bounce-bottom":a.BOUNCE_BOTTOM,"bounce-left":a.BOUNCE_LEFT,"bounce-right":a.BOUNCE_RIGHT,"bounce-top":a.BOUNCE_TOP,"scroll-ended":a.SCROLL_ENDED,"touch-up":a.TOUCH_UP,"scroll-ended-with-threshold":a.AUTOSCROLL_ENDED_WITH_THRESHOLD,"scroll-began":a.SCROLL_BEGAN},c=cc.Class({name:"cc.ScrollView",extends:t("./CCViewGroup"),editor:!1,ctor:function(){this._topBoundary=0,this._bottomBoundary=0,this._leftBoundary=0,this._rightBoundary=0,this._touchMoveDisplacements=[],this._touchMoveTimeDeltas=[],this._touchMovePreviousTimestamp=0,this._touchMoved=!1,this._autoScrolling=!1,this._autoScrollAttenuate=!1,this._autoScrollStartPosition=cc.v2(0,0),this._autoScrollTargetDelta=cc.v2(0,0),this._autoScrollTotalTime=0,this._autoScrollAccumulatedTime=0,this._autoScrollCurrentlyOutOfBoundary=!1,this._autoScrollBraking=!1,this._autoScrollBrakingStartPosition=cc.v2(0,0),this._outOfBoundaryAmount=cc.v2(0,0),this._outOfBoundaryAmountDirty=!0,this._stopMouseWheel=!1,this._mouseWheelEventElapsedTime=0,this._isScrollEndedWithThresholdEventFired=!1,this._scrollEventEmitMask=0,this._isBouncing=!1,this._scrolling=!1},properties:{content:{default:void 0,type:cc.Node,tooltip:!1,formerlySerializedAs:"content",notify:function(){this._calculateBoundary()}},horizontal:{default:!0,animatable:!1,tooltip:!1},vertical:{default:!0,animatable:!1,tooltip:!1},inertia:{default:!0,tooltip:!1},brake:{default:.5,type:cc.Float,range:[0,1,.1],tooltip:!1},elastic:{default:!0,animatable:!1,tooltip:!1},bounceDuration:{default:1,range:[0,10],tooltip:!1},horizontalScrollBar:{default:void 0,type:cc.Scrollbar,tooltip:!1,notify:function(){this.horizontalScrollBar&&(this.horizontalScrollBar.setTargetScrollView(this),this._updateScrollBar(0))},animatable:!1},verticalScrollBar:{default:void 0,type:cc.Scrollbar,tooltip:!1,notify:function(){this.verticalScrollBar&&(this.verticalScrollBar.setTargetScrollView(this),this._updateScrollBar(0))},animatable:!1},scrollEvents:{default:[],type:cc.Component.EventHandler,tooltip:!1},cancelInnerEvents:{default:!0,animatable:!1,tooltip:!1},_view:{get:function(){if(this.content)return this.content.parent}}},statics:{EventType:a},scrollToBottom:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i,!0)},scrollToTop:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,1),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToTopLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToTopRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToBottomLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToBottomRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToOffset:function(t,e,i){var n=this.getMaxScrollOffset(),r=cc.v2(0,0);0===n.x?r.x=0:r.x=t.x/n.x,0===n.y?r.y=1:r.y=(n.y-t.y)/n.y,this.scrollTo(r,e,i)},getScrollOffset:function(){var t=this._getContentTopBoundary()-this._topBoundary,e=this._getContentLeftBoundary()-this._leftBoundary;return cc.v2(e,t)},getMaxScrollOffset:function(){var t=this._view.getContentSize(),e=this.content.getContentSize(),i=e.width-t.width,n=e.height-t.height;return i=i>=0?i:0,n=n>=0?n:0,cc.v2(i,n)},scrollToPercentHorizontal:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(t,0),applyToHorizontal:!0,applyToVertical:!1});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},scrollTo:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(t),applyToHorizontal:!0,applyToVertical:!0});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},scrollToPercentVertical:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(0,t),applyToHorizontal:!1,applyToVertical:!0});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},stopAutoScroll:function(){this._autoScrolling=!1,this._autoScrollAccumulatedTime=this._autoScrollTotalTime},setContentPosition:function(t){t.fuzzyEquals(this.getContentPosition(),1e-4)||(this.content.setPosition(t),this._outOfBoundaryAmountDirty=!0)},getContentPosition:function(){return this.content.getPosition()},isScrolling:function(){return this._scrolling},isAutoScrolling:function(){return this._autoScrolling},_registerEvent:function(){this.node.on(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this,!0),this.node.on(cc.Node.EventType.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.on(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this,!0),this.node.on(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.on(cc.Node.EventType.MOUSE_WHEEL,this._onMouseWheel,this,!0)},_unregisterEvent:function(){this.node.off(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this,!0),this.node.off(cc.Node.EventType.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.off(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this,!0),this.node.off(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.off(cc.Node.EventType.MOUSE_WHEEL,this._onMouseWheel,this,!0)},_onMouseWheel:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){var i=cc.v2(0,0),n=-.1;cc.sys.os===cc.sys.OS_WINDOWS&&cc.sys.browserType===cc.sys.BROWSER_TYPE_FIREFOX&&(n=-.1/3),this.vertical?i=cc.v2(0,t.getScrollY()*n):this.horizontal&&(i=cc.v2(t.getScrollY()*n,0)),this._mouseWheelEventElapsedTime=0,this._processDeltaMove(i),this._stopMouseWheel||(this._handlePressLogic(),this.schedule(this._checkMouseWheel,1/60),this._stopMouseWheel=!0),this._stopPropagationIfTargetIsMe(t)}},_checkMouseWheel:function(t){if(!this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4))return this._processInertiaScroll(),this.unschedule(this._checkMouseWheel),this._dispatchEvent("scroll-ended"),void(this._stopMouseWheel=!1);this._mouseWheelEventElapsedTime+=t,this._mouseWheelEventElapsedTime>.1&&(this._onScrollBarTouchEnded(),this.unschedule(this._checkMouseWheel),this._dispatchEvent("scroll-ended"),this._stopMouseWheel=!1)},_calculateMovePercentDelta:function(t){var e=t.anchor,i=t.applyToHorizontal,n=t.applyToVertical;this._calculateBoundary(),e=e.clampf(cc.v2(0,0),cc.v2(1,1));var r=this._view.getContentSize(),s=this.content.getContentSize(),a=this._getContentBottomBoundary()-this._bottomBoundary;a=-a;var o=this._getContentLeftBoundary()-this._leftBoundary;o=-o;var c=cc.v2(0,0),u=0;return i&&(u=s.width-r.width,c.x=o-u*e.x),n&&(u=s.height-r.height,c.y=a-u*e.y),c},_moveContentToTopLeft:function(t){var e=this.content.getContentSize(),i=this._getContentBottomBoundary()-this._bottomBoundary;i=-i;var n=cc.v2(0,0),r=0,s=this._getContentLeftBoundary()-this._leftBoundary;s=-s,e.height7&&!this._touchMoved&&t.target!==this.node){var n=new cc.Event.EventTouch(t.getTouches(),t.bubbles);n.type=cc.Node.EventType.TOUCH_CANCEL,n.touch=t.touch,n.simulate=!0,t.target.dispatchEvent(n),this._touchMoved=!0}this._stopPropagationIfTargetIsMe(t)}}},_onTouchEnded:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){this._dispatchEvent("touch-up");var i=t.touch;this.content&&this._handleReleaseLogic(i),this._touchMoved?t.stopPropagation():this._stopPropagationIfTargetIsMe(t)}},_onTouchCancelled:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){if(!t.simulate){var i=t.touch;this.content&&this._handleReleaseLogic(i)}this._stopPropagationIfTargetIsMe(t)}},_processDeltaMove:function(t){this._scrollChildren(t),this._gatherTouchMove(t)},_getLocalAxisAlignDelta:function(t){return this.node.convertToNodeSpaceAR(t.getLocation(),n),this.node.convertToNodeSpaceAR(t.getPreviousLocation(),r),n.sub(r)},_handleMoveLogic:function(t){var e=this._getLocalAxisAlignDelta(t);this._processDeltaMove(e)},_scrollChildren:function(t){var e,i=t=this._clampDelta(t);this.elastic&&(e=this._getHowMuchOutOfBoundary(),i.x*=0===e.x?1:.5,i.y*=0===e.y?1:.5),this.elastic||(e=this._getHowMuchOutOfBoundary(i),i=i.add(e));var n="",r="";this.vertical&&(i.y>0?this.content.y-this.content.anchorY*this.content.height+i.y>=this._bottomBoundary&&(n="scroll-to-bottom"):i.y<0&&this.content.y-this.content.anchorY*this.content.height+this.content.height+i.y<=this._topBoundary&&(n="scroll-to-top")),this.horizontal&&(i.x<0?this.content.x-this.content.anchorX*this.content.width+this.content.width+i.x<=this._rightBoundary&&(r="scroll-to-right"):i.x>0&&this.content.x-this.content.anchorX*this.content.width+i.x>=this._leftBoundary&&(r="scroll-to-left")),this._moveContent(i,!1),(this.horizontal&&0!==i.x||this.vertical&&0!==i.y)&&(this._scrolling||(this._scrolling=!0,this._dispatchEvent("scroll-began")),this._dispatchEvent("scrolling")),""!==n&&this._dispatchEvent(n),""!==r&&this._dispatchEvent(r)},_handlePressLogic:function(){this._autoScrolling&&this._dispatchEvent("scroll-ended"),this._autoScrolling=!1,this._isBouncing=!1,this._touchMovePreviousTimestamp=s(),this._touchMoveDisplacements.length=0,this._touchMoveTimeDeltas.length=0,this._onScrollBarTouchBegan()},_clampDelta:function(t){var e=this.content.getContentSize(),i=this._view.getContentSize();return e.width=5;)this._touchMoveDisplacements.shift(),this._touchMoveTimeDeltas.shift();this._touchMoveDisplacements.push(t);var e=s();this._touchMoveTimeDeltas.push((e-this._touchMovePreviousTimestamp)/1e3),this._touchMovePreviousTimestamp=e},_startBounceBackIfNeeded:function(){if(!this.elastic)return!1;var t=this._getHowMuchOutOfBoundary();if((t=this._clampDelta(t)).fuzzyEquals(cc.v2(0,0),1e-4))return!1;var e=Math.max(this.bounceDuration,0);return this._startAutoScroll(t,e,!0),this._isBouncing||(t.y>0&&this._dispatchEvent("bounce-top"),t.y<0&&this._dispatchEvent("bounce-bottom"),t.x>0&&this._dispatchEvent("bounce-right"),t.x<0&&this._dispatchEvent("bounce-left"),this._isBouncing=!0),!0},_processInertiaScroll:function(){if(!this._startBounceBackIfNeeded()&&this.inertia){var t=this._calculateTouchMoveVelocity();!t.fuzzyEquals(cc.v2(0,0),1e-4)&&this.brake<1&&this._startInertiaScroll(t)}this._onScrollBarTouchEnded()},_handleReleaseLogic:function(t){var e=this._getLocalAxisAlignDelta(t);this._gatherTouchMove(e),this._processInertiaScroll(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent("scroll-ended"))},_isOutOfBoundary:function(){return!this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4)},_isNecessaryAutoScrollBrake:function(){if(this._autoScrollBraking)return!0;if(this._isOutOfBoundary()){if(!this._autoScrollCurrentlyOutOfBoundary)return this._autoScrollCurrentlyOutOfBoundary=!0,this._autoScrollBraking=!0,this._autoScrollBrakingStartPosition=this.getContentPosition(),!0}else this._autoScrollCurrentlyOutOfBoundary=!1;return!1},getScrollEndedEventTiming:function(){return 1e-4},_processAutoScrolling:function(t){var e=this._isNecessaryAutoScrollBrake(),i=e?.05:1;this._autoScrollAccumulatedTime+=t*(1/i);var n,r=Math.min(1,this._autoScrollAccumulatedTime/this._autoScrollTotalTime);this._autoScrollAttenuate&&(n=r,r=(n-=1)*n*n*n*n+1);var s=this._autoScrollStartPosition.add(this._autoScrollTargetDelta.mul(r)),a=Math.abs(r-1)<=1e-4;if(Math.abs(r-1)<=this.getScrollEndedEventTiming()&&!this._isScrollEndedWithThresholdEventFired&&(this._dispatchEvent("scroll-ended-with-threshold"),this._isScrollEndedWithThresholdEventFired=!0),this.elastic){var o=s.sub(this._autoScrollBrakingStartPosition);e&&(o=o.mul(i)),s=this._autoScrollBrakingStartPosition.add(o)}else{var c=s.sub(this.getContentPosition()),u=this._getHowMuchOutOfBoundary(c);u.fuzzyEquals(cc.v2(0,0),1e-4)||(s=s.add(u),a=!0)}a&&(this._autoScrolling=!1);var l=s.sub(this.getContentPosition());this._moveContent(this._clampDelta(l),a),this._dispatchEvent("scrolling"),this._autoScrolling||(this._isBouncing=!1,this._scrolling=!1,this._dispatchEvent("scroll-ended"))},_startInertiaScroll:function(t){var e=t.mul(.7);this._startAttenuatingAutoScroll(e,t)},_calculateAttenuatedFactor:function(t){return this.brake<=0?1-this.brake:(1-this.brake)*(1/(1+14e-6*t+t*t*8e-9))},_startAttenuatingAutoScroll:function(t,e){var i=this._calculateAutoScrollTimeByInitalSpeed(e.mag()),n=t.normalize(),r=this.content.getContentSize(),s=this._view.getContentSize(),a=r.width-s.width,o=r.height-s.height,c=this._calculateAttenuatedFactor(a),u=this._calculateAttenuatedFactor(o);n=cc.v2(n.x*a*(1-this.brake)*c,n.y*o*u*(1-this.brake));var l=t.mag(),h=n.mag()/l;n=n.add(t),this.brake>0&&h>7&&(h=Math.sqrt(h),n=t.mul(h).add(t)),this.brake>0&&h>3&&(i*=h=3),0===this.brake&&h>1&&(i*=h),this._startAutoScroll(n,i,!0)},_calculateAutoScrollTimeByInitalSpeed:function(t){return Math.sqrt(Math.sqrt(t/5))},_startAutoScroll:function(t,e,i){var n=this._flattenVectorByDirection(t);this._autoScrolling=!0,this._autoScrollTargetDelta=n,this._autoScrollAttenuate=i,this._autoScrollStartPosition=this.getContentPosition(),this._autoScrollTotalTime=e,this._autoScrollAccumulatedTime=0,this._autoScrollBraking=!1,this._isScrollEndedWithThresholdEventFired=!1,this._autoScrollBrakingStartPosition=cc.v2(0,0),this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4)||(this._autoScrollCurrentlyOutOfBoundary=!0)},_calculateTouchMoveVelocity:function(){var t=0;if((t=this._touchMoveTimeDeltas.reduce((function(t,e){return t+e}),t))<=0||t>=.5)return cc.v2(0,0);var e=cc.v2(0,0);return e=this._touchMoveDisplacements.reduce((function(t,e){return t.add(e)}),e),cc.v2(e.x*(1-this.brake)/t,e.y*(1-this.brake)/t)},_flattenVectorByDirection:function(t){var e=t;return e.x=this.horizontal?e.x:0,e.y=this.vertical?e.y:0,e},_moveContent:function(t,e){var i=this._flattenVectorByDirection(t),n=this.getContentPosition().add(i);this.setContentPosition(n);var r=this._getHowMuchOutOfBoundary();this._updateScrollBar(r),this.elastic&&e&&this._startBounceBackIfNeeded()},_getContentLeftBoundary:function(){return this.getContentPosition().x-this.content.getAnchorPoint().x*this.content.getContentSize().width},_getContentRightBoundary:function(){var t=this.content.getContentSize();return this._getContentLeftBoundary()+t.width},_getContentTopBoundary:function(){var t=this.content.getContentSize();return this._getContentBottomBoundary()+t.height},_getContentBottomBoundary:function(){return this.getContentPosition().y-this.content.getAnchorPoint().y*this.content.getContentSize().height},_getHowMuchOutOfBoundary:function(t){if((t=t||cc.v2(0,0)).fuzzyEquals(cc.v2(0,0),1e-4)&&!this._outOfBoundaryAmountDirty)return this._outOfBoundaryAmount;var e=cc.v2(0,0);return this._getContentLeftBoundary()+t.x>this._leftBoundary?e.x=this._leftBoundary-(this._getContentLeftBoundary()+t.x):this._getContentRightBoundary()+t.xthis._bottomBoundary&&(e.y=this._bottomBoundary-(this._getContentBottomBoundary()+t.y)),t.fuzzyEquals(cc.v2(0,0),1e-4)&&(this._outOfBoundaryAmount=e,this._outOfBoundaryAmountDirty=!1),this._clampDelta(e)},_updateScrollBarState:function(){if(this.content){var t=this.content.getContentSize(),e=this._view.getContentSize();this.verticalScrollBar&&(t.height0},set:function(t){this._setAlign(s,t)},animatable:!1,tooltip:!1},isAlignVerticalCenter:{get:function(){return(this._alignFlags&a)>0},set:function(t){t?(this.isAlignTop=!1,this.isAlignBottom=!1,this._alignFlags|=a):this._alignFlags&=~a},animatable:!1,tooltip:!1},isAlignBottom:{get:function(){return(this._alignFlags&o)>0},set:function(t){this._setAlign(o,t)},animatable:!1,tooltip:!1},isAlignLeft:{get:function(){return(this._alignFlags&c)>0},set:function(t){this._setAlign(c,t)},animatable:!1,tooltip:!1},isAlignHorizontalCenter:{get:function(){return(this._alignFlags&u)>0},set:function(t){t?(this.isAlignLeft=!1,this.isAlignRight=!1,this._alignFlags|=u):this._alignFlags&=~u},animatable:!1,tooltip:!1},isAlignRight:{get:function(){return(this._alignFlags&l)>0},set:function(t){this._setAlign(l,t)},animatable:!1,tooltip:!1},isStretchWidth:{get:function(){return(this._alignFlags&_)===_},visible:!1},isStretchHeight:{get:function(){return(this._alignFlags&h)===h},visible:!1},top:{get:function(){return this._top},set:function(t){this._top=t},tooltip:!1},bottom:{get:function(){return this._bottom},set:function(t){this._bottom=t},tooltip:!1},left:{get:function(){return this._left},set:function(t){this._left=t},tooltip:!1},right:{get:function(){return this._right},set:function(t){this._right=t},tooltip:!1},horizontalCenter:{get:function(){return this._horizontalCenter},set:function(t){this._horizontalCenter=t},tooltip:!1},verticalCenter:{get:function(){return this._verticalCenter},set:function(t){this._verticalCenter=t},tooltip:!1},isAbsoluteHorizontalCenter:{get:function(){return this._isAbsHorizontalCenter},set:function(t){this._isAbsHorizontalCenter=t},animatable:!1},isAbsoluteVerticalCenter:{get:function(){return this._isAbsVerticalCenter},set:function(t){this._isAbsVerticalCenter=t},animatable:!1},isAbsoluteTop:{get:function(){return this._isAbsTop},set:function(t){this._isAbsTop=t},animatable:!1},isAbsoluteBottom:{get:function(){return this._isAbsBottom},set:function(t){this._isAbsBottom=t},animatable:!1},isAbsoluteLeft:{get:function(){return this._isAbsLeft},set:function(t){this._isAbsLeft=t},animatable:!1},isAbsoluteRight:{get:function(){return this._isAbsRight},set:function(t){this._isAbsRight=t},animatable:!1},alignMode:{default:n.ON_WINDOW_RESIZE,type:n,tooltip:!1},_wasAlignOnce:{default:void 0,formerlySerializedAs:"isAlignOnce"},_target:null,_alignFlags:0,_left:0,_right:0,_top:0,_bottom:0,_verticalCenter:0,_horizontalCenter:0,_isAbsLeft:!0,_isAbsRight:!0,_isAbsTop:!0,_isAbsBottom:!0,_isAbsHorizontalCenter:!0,_isAbsVerticalCenter:!0,_originalWidth:0,_originalHeight:0},statics:{AlignMode:n},onLoad:function(){void 0!==this._wasAlignOnce&&(this.alignMode=this._wasAlignOnce?n.ONCE:n.ALWAYS,this._wasAlignOnce=void 0)},onEnable:function(){i.add(this)},onDisable:function(){i.remove(this)},_validateTargetInDEV:!1,_setAlign:function(t,e){if(e!==(this._alignFlags&t)>0){var i=(t&_)>0;e?(this._alignFlags|=t,i?(this.isAlignHorizontalCenter=!1,this.isStretchWidth&&(this._originalWidth=this.node.width)):(this.isAlignVerticalCenter=!1,this.isStretchHeight&&(this._originalHeight=this.node.height))):(i?this.isStretchWidth&&(this.node.width=this._originalWidth):this.isStretchHeight&&(this.node.height=this._originalHeight),this._alignFlags&=~t)}},updateAlignment:function(){i.updateAlignment(this.node)}});Object.defineProperty(f.prototype,"isAlignOnce",{get:function(){return this.alignMode===n.ONCE},set:function(t){this.alignMode=t?n.ONCE:n.ALWAYS}}),cc.Widget=e.exports=f}),{"../base-ui/CCWidgetManager":86,"./CCComponent":101}],119:[(function(t,e){"use strict";var i=t("../../platform/CCMacro"),n=t("../editbox/EditBoxImplBase"),r=t("../CCLabel"),s=t("./types"),a=s.InputMode,o=s.InputFlag,c=s.KeyboardReturnType;function u(t){return t.charAt(0).toUpperCase()+t.slice(1)}var l=cc.Class({name:"cc.EditBox",extends:cc.Component,editor:!1,properties:{_string:"",string:{tooltip:!1,get:function(){return this._string},set:function(t){t=""+t,this.maxLength>=0&&t.length>=this.maxLength&&(t=t.slice(0,this.maxLength)),this._string=t,this._updateString(t)}},textLabel:{tooltip:!1,default:null,type:r,notify:function(t){this.textLabel&&this.textLabel!==t&&(this._updateTextLabel(),this._updateLabels())}},placeholderLabel:{tooltip:!1,default:null,type:r,notify:function(t){this.placeholderLabel&&this.placeholderLabel!==t&&(this._updatePlaceholderLabel(),this._updateLabels())}},background:{tooltip:!1,default:null,type:cc.Sprite,notify:function(t){this.background&&this.background!==t&&this._updateBackgroundSprite()}},_N$backgroundImage:{default:void 0,type:cc.SpriteFrame},backgroundImage:{get:function(){return this.background?this.background.spriteFrame:null},set:function(t){this.background&&(this.background.spriteFrame=t)}},returnType:{default:c.DEFAULT,tooltip:!1,displayName:"KeyboardReturnType",type:c},_N$returnType:{default:void 0,type:cc.Float},inputFlag:{tooltip:!1,default:o.DEFAULT,type:o,notify:function(){this._updateString(this._string)}},inputMode:{tooltip:!1,default:a.ANY,type:a,notify:function(t){this.inputMode!==t&&(this._updateTextLabel(),this._updatePlaceholderLabel())}},fontSize:{get:function(){return this.textLabel?this.textLabel.fontSize:0},set:function(t){this.textLabel&&(this.textLabel.fontSize=t)}},_N$fontSize:{default:void 0,type:cc.Float},lineHeight:{get:function(){return this.textLabel?this.textLabel.lineHeight:0},set:function(t){this.textLabel&&(this.textLabel.lineHeight=t)}},_N$lineHeight:{default:void 0,type:cc.Float},fontColor:{get:function(){return this.textLabel?this.textLabel.node.color:cc.Color.BLACK},set:function(t){this.textLabel&&(this.textLabel.node.color=t,this.textLabel.node.opacity=t.a)}},_N$fontColor:void 0,placeholder:{tooltip:!1,get:function(){return this.placeholderLabel?this.placeholderLabel.string:""},set:function(t){this.placeholderLabel&&(this.placeholderLabel.string=t)}},_N$placeholder:{default:void 0,type:cc.String},placeholderFontSize:{get:function(){return this.placeholderLabel?this.placeholderLabel.fontSize:0},set:function(t){this.placeholderLabel&&(this.placeholderLabel.fontSize=t)}},_N$placeholderFontSize:{default:void 0,type:cc.Float},placeholderFontColor:{get:function(){return this.placeholderLabel?this.placeholderLabel.node.color:cc.Color.BLACK},set:function(t){this.placeholderLabel&&(this.placeholderLabel.node.color=t,this.placeholderLabel.node.opacity=t.a)}},_N$placeholderFontColor:void 0,maxLength:{tooltip:!1,default:20},_N$maxLength:{default:void 0,type:cc.Float},stayOnTop:{default:!1,notify:function(){cc.warn("editBox.stayOnTop is removed since v2.1.")}},_tabIndex:0,tabIndex:{tooltip:!1,get:function(){return this._tabIndex},set:function(t){this._tabIndex!==t&&(this._tabIndex=t,this._impl&&this._impl.setTabIndex(t))}},editingDidBegan:{default:[],type:cc.Component.EventHandler},textChanged:{default:[],type:cc.Component.EventHandler},editingDidEnded:{default:[],type:cc.Component.EventHandler},editingReturn:{default:[],type:cc.Component.EventHandler}},statics:{_ImplClass:n,KeyboardReturnType:c,InputFlag:o,InputMode:a},_init:function(){this._upgradeComp(),this._isLabelVisible=!0,this.node.on(cc.Node.EventType.SIZE_CHANGED,this._syncSize,this),(this._impl=new l._ImplClass).init(this),this._updateString(this._string),this._syncSize()},_updateBackgroundSprite:function(){var t=this.background;if(!t){var e=this.node.getChildByName("BACKGROUND_SPRITE");e||(e=new cc.Node("BACKGROUND_SPRITE")),(t=e.getComponent(cc.Sprite))||(t=e.addComponent(cc.Sprite)),e.parent=this.node,this.background=t}t.type=cc.Sprite.Type.SLICED,void 0!==this._N$backgroundImage&&(t.spriteFrame=this._N$backgroundImage,this._N$backgroundImage=void 0)},_updateTextLabel:function(){var t=this.textLabel;if(!t){var e=this.node.getChildByName("TEXT_LABEL");e||(e=new cc.Node("TEXT_LABEL")),(t=e.getComponent(r))||(t=e.addComponent(r)),e.parent=this.node,this.textLabel=t}t.node.setAnchorPoint(0,1),t.overflow=r.Overflow.CLAMP,this.inputMode===a.ANY?(t.verticalAlign=i.VerticalTextAlignment.TOP,t.enableWrapText=!0):(t.verticalAlign=i.VerticalTextAlignment.CENTER,t.enableWrapText=!1),t.string=this._updateLabelStringStyle(this._string),void 0!==this._N$fontColor&&(t.node.color=this._N$fontColor,t.node.opacity=this._N$fontColor.a,this._N$fontColor=void 0),void 0!==this._N$fontSize&&(t.fontSize=this._N$fontSize,this._N$fontSize=void 0),void 0!==this._N$lineHeight&&(t.lineHeight=this._N$lineHeight,this._N$lineHeight=void 0)},_updatePlaceholderLabel:function(){var t=this.placeholderLabel;if(!t){var e=this.node.getChildByName("PLACEHOLDER_LABEL");e||(e=new cc.Node("PLACEHOLDER_LABEL")),(t=e.getComponent(r))||(t=e.addComponent(r)),e.parent=this.node,this.placeholderLabel=t}t.node.setAnchorPoint(0,1),t.overflow=r.Overflow.CLAMP,this.inputMode===a.ANY?(t.verticalAlign=i.VerticalTextAlignment.TOP,t.enableWrapText=!0):(t.verticalAlign=i.VerticalTextAlignment.CENTER,t.enableWrapText=!1),t.string=this.placeholder,void 0!==this._N$placeholderFontColor&&(t.node.color=this._N$placeholderFontColor,t.node.opacity=this._N$placeholderFontColor.a,this._N$placeholderFontColor=void 0),void 0!==this._N$placeholderFontSize&&(t.fontSize=this._N$placeholderFontSize,this._N$placeholderFontSize=void 0)},_upgradeComp:function(){void 0!==this._N$returnType&&(this.returnType=this._N$returnType,this._N$returnType=void 0),void 0!==this._N$maxLength&&(this.maxLength=this._N$maxLength,this._N$maxLength=void 0),void 0!==this._N$backgroundImage&&this._updateBackgroundSprite(),void 0===this._N$fontColor&&void 0===this._N$fontSize&&void 0===this._N$lineHeight||this._updateTextLabel(),void 0===this._N$placeholderFontColor&&void 0===this._N$placeholderFontSize||this._updatePlaceholderLabel(),void 0!==this._N$placeholder&&(this.placeholder=this._N$placeholder,this._N$placeholder=void 0)},_syncSize:function(){if(this._impl){var t=this.node.getContentSize();this._impl.setSize(t.width,t.height)}},_showLabels:function(){this._isLabelVisible=!0,this._updateLabels()},_hideLabels:function(){this._isLabelVisible=!1,this.textLabel&&(this.textLabel.node.active=!1),this.placeholderLabel&&(this.placeholderLabel.node.active=!1)},_updateLabels:function(){if(this._isLabelVisible){var t=this._string;this.textLabel&&(this.textLabel.node.active=""!==t),this.placeholderLabel&&(this.placeholderLabel.node.active=""===t)}},_updateString:function(t){var e=this.textLabel;if(e){var i=t;i&&(i=this._updateLabelStringStyle(i)),e.string=i,this._updateLabels()}},_updateLabelStringStyle:function(t,e){var i=this.inputFlag;if(e||i!==o.PASSWORD)i===o.INITIAL_CAPS_ALL_CHARACTERS?t=t.toUpperCase():i===o.INITIAL_CAPS_WORD?t=t.replace(/(?:^|\s)\S/g,(function(t){return t.toUpperCase()})):i===o.INITIAL_CAPS_SENTENCE&&(t=u(t));else{for(var n="",r=t.length,s=0;s=0&&(e.value=e.value.slice(0,n)),t._delegate.editBoxTextChanged(e.value)}},n.onClick=function(){t._editing&&cc.sys.isMobile&&t._adjustWindowScroll()},n.onKeydown=function(i){i.keyCode===r.KEY.enter?(i.stopPropagation(),t._delegate.editBoxEditingReturn(),t._isTextArea||e.blur()):i.keyCode===r.KEY.tab&&(i.stopPropagation(),i.preventDefault(),o.next(t))},n.onBlur=function(){cc.sys.isMobile&&i&&n.compositionEnd(),t._editing=!1,v=null,t._hideDom(),t._delegate.editBoxEditingDidEnded()},e.addEventListener("compositionstart",n.compositionStart),e.addEventListener("compositionend",n.compositionEnd),e.addEventListener("input",n.onInput),e.addEventListener("keydown",n.onKeydown),e.addEventListener("blur",n.onBlur),e.addEventListener("touchstart",n.onClick)},_removeEventListeners:function(){var t=this._elem,e=this._eventListeners;t.removeEventListener("compositionstart",e.compositionStart),t.removeEventListener("compositionend",e.compositionEnd),t.removeEventListener("input",e.onInput),t.removeEventListener("keydown",e.onKeydown),t.removeEventListener("blur",e.onBlur),t.removeEventListener("touchstart",e.onClick),e.compositionStart=null,e.compositionEnd=null,e.onInput=null,e.onKeydown=null,e.onBlur=null,e.onClick=null}})}),{"../../platform/CCMacro":154,"../../platform/utils":173,"../../value-types/mat4":240,"../CCLabel":103,"./tabIndexUtil":122,"./types":123}],122:[(function(t,e){"use strict";e.exports={_tabIndexList:[],add:function(t){var e=this._tabIndexList;-1===e.indexOf(t)&&e.push(t)},remove:function(t){var e=this._tabIndexList,i=e.indexOf(t);-1!==i&&e.splice(i,1)},resort:function(){this._tabIndexList.sort((function(t,e){return t._delegate._tabIndex-e._delegate._tabIndex}))},next:function(t){var e=this._tabIndexList,i=e.indexOf(t);if(t.setFocus(!1),-1!==i){var n=e[i+1];n&&n._delegate._tabIndex>=0&&n.setFocus(!0)}}}}),{}],123:[(function(t,e){"use strict";var i=cc.Enum({DEFAULT:0,DONE:1,SEND:2,SEARCH:3,GO:4,NEXT:5}),n=cc.Enum({ANY:0,EMAIL_ADDR:1,NUMERIC:2,PHONE_NUMBER:3,URL:4,DECIMAL:5,SINGLE_LINE:6}),r=cc.Enum({PASSWORD:0,SENSITIVE:1,INITIAL_CAPS_WORD:2,INITIAL_CAPS_SENTENCE:3,INITIAL_CAPS_ALL_CHARACTERS:4,DEFAULT:5});e.exports={KeyboardReturnType:i,InputMode:n,InputFlag:r}}),{}],124:[(function(t,e){"use strict";t("./CCComponent"),t("./CCComponentEventHandler"),t("./missing-script");var i=t("./SubContextView");i||(i=cc.Class({name:"cc.SubContextView",extends:cc.Component}),cc.SubContextView=cc.WXSubContextView=cc.SwanSubContextView=i);var n=[t("./CCSprite"),t("./CCWidget"),t("./CCCanvas"),t("./CCAudioSource"),t("./CCAnimation"),t("./CCButton"),t("./CCLabel"),t("./CCProgressBar"),t("./CCMask"),t("./CCScrollBar"),t("./CCScrollView"),t("./CCPageViewIndicator"),t("./CCPageView"),t("./CCSlider"),t("./CCLayout"),t("./editbox/CCEditBox"),t("./CCLabelOutline"),t("./CCLabelShadow"),t("./CCRichText"),t("./CCToggleContainer"),t("./CCToggleGroup"),t("./CCToggle"),t("./CCBlockInputEvents"),t("./CCMotionStreak"),t("./CCSafeArea"),i];e.exports=n}),{"./CCAnimation":96,"./CCAudioSource":97,"./CCBlockInputEvents":98,"./CCButton":99,"./CCCanvas":100,"./CCComponent":101,"./CCComponentEventHandler":102,"./CCLabel":103,"./CCLabelOutline":void 0,"./CCLabelShadow":void 0,"./CCLayout":104,"./CCMask":105,"./CCMotionStreak":106,"./CCPageView":107,"./CCPageViewIndicator":108,"./CCProgressBar":109,"./CCRichText":void 0,"./CCSafeArea":111,"./CCScrollBar":112,"./CCScrollView":113,"./CCSlider":114,"./CCSprite":115,"./CCToggle":void 0,"./CCToggleContainer":void 0,"./CCToggleGroup":void 0,"./CCWidget":118,"./SubContextView":void 0,"./editbox/CCEditBox":119,"./missing-script":125}],125:[(function(t,e){"use strict";var i=cc.js,n=cc.Class({name:"cc.MissingScript",extends:cc.Component,editor:{inspector:"packages://inspector/inspectors/comps/missing-script.js"},properties:{compiled:{default:!1,serializable:!1},_$erialized:{default:null,visible:!1,editorOnly:!0}},ctor:!1,statics:{safeFindClass:function(t){return i._getClassById(t)||(cc.deserialize.reportMissingClass(t),n)}},onLoad:function(){cc.warnID(4600,this.node.name)}});cc._MissingScript=e.exports=n}),{}],126:[(function(t,e){"use strict";var i=cc.js;t("../event/event");var n=function(t,e){cc.Event.call(this,cc.Event.MOUSE,e),this._eventType=t,this._button=0,this._x=0,this._y=0,this._prevX=0,this._prevY=0,this._scrollX=0,this._scrollY=0};i.extend(n,cc.Event);var r=n.prototype;r.setScrollData=function(t,e){this._scrollX=t,this._scrollY=e},r.getScrollX=function(){return this._scrollX},r.getScrollY=function(){return this._scrollY},r.setLocation=function(t,e){this._x=t,this._y=e},r.getLocation=function(){return cc.v2(this._x,this._y)},r.getLocationInView=function(){return cc.v2(this._x,cc.view._designResolutionSize.height-this._y)},r._setPrevCursor=function(t,e){this._prevX=t,this._prevY=e},r.getPreviousLocation=function(){return cc.v2(this._prevX,this._prevY)},r.getDelta=function(){return cc.v2(this._x-this._prevX,this._y-this._prevY)},r.getDeltaX=function(){return this._x-this._prevX},r.getDeltaY=function(){return this._y-this._prevY},r.setButton=function(t){this._button=t},r.getButton=function(){return this._button},r.getLocationX=function(){return this._x},r.getLocationY=function(){return this._y},n.NONE=0,n.DOWN=1,n.UP=2,n.MOVE=3,n.SCROLL=4,n.BUTTON_LEFT=0,n.BUTTON_RIGHT=2,n.BUTTON_MIDDLE=1,n.BUTTON_4=3,n.BUTTON_5=4,n.BUTTON_6=5,n.BUTTON_7=6,n.BUTTON_8=7;var s=function(t,e){cc.Event.call(this,cc.Event.TOUCH,e),this._eventCode=0,this._touches=t||[],this.touch=null,this.currentTouch=null};i.extend(s,cc.Event),(r=s.prototype).getEventCode=function(){return this._eventCode},r.getTouches=function(){return this._touches},r._setEventCode=function(t){this._eventCode=t},r._setTouches=function(t){this._touches=t},r.setLocation=function(t,e){this.touch&&this.touch.setTouchInfo(this.touch.getID(),t,e)},r.getLocation=function(){return this.touch?this.touch.getLocation():cc.v2()},r.getLocationInView=function(){return this.touch?this.touch.getLocationInView():cc.v2()},r.getPreviousLocation=function(){return this.touch?this.touch.getPreviousLocation():cc.v2()},r.getStartLocation=function(){return this.touch?this.touch.getStartLocation():cc.v2()},r.getID=function(){return this.touch?this.touch.getID():null},r.getDelta=function(){return this.touch?this.touch.getDelta():cc.v2()},r.getDeltaX=function(){return this.touch?this.touch.getDelta().x:0},r.getDeltaY=function(){return this.touch?this.touch.getDelta().y:0},r.getLocationX=function(){return this.touch?this.touch.getLocationX():0},r.getLocationY=function(){return this.touch?this.touch.getLocationY():0},s.MAX_TOUCHES=5,s.BEGAN=0,s.MOVED=1,s.ENDED=2,s.CANCELED=3;var a=function(t,e){cc.Event.call(this,cc.Event.ACCELERATION,e),this.acc=t};i.extend(a,cc.Event);var o=function(t,e,i){cc.Event.call(this,cc.Event.KEYBOARD,i),this.keyCode=t,this.isPressed=e};i.extend(o,cc.Event),cc.Event.EventMouse=n,cc.Event.EventTouch=s,cc.Event.EventAcceleration=a,cc.Event.EventKeyboard=o,e.exports=cc.Event}),{"../event/event":133}],127:[(function(t,e){"use strict";var i=t("../platform/js");cc.EventListener=function(t,e,i){this._onEvent=i,this._type=t||0,this._listenerID=e||"",this._registered=!1,this._fixedPriority=0,this._node=null,this._target=null,this._paused=!0,this._isEnabled=!0},cc.EventListener.prototype={constructor:cc.EventListener,_setPaused:function(t){this._paused=t},_isPaused:function(){return this._paused},_setRegistered:function(t){this._registered=t},_isRegistered:function(){return this._registered},_getType:function(){return this._type},_getListenerID:function(){return this._listenerID},_setFixedPriority:function(t){this._fixedPriority=t},_getFixedPriority:function(){return this._fixedPriority},_setSceneGraphPriority:function(t){this._target=t,this._node=t},_getSceneGraphPriority:function(){return this._node},checkAvailable:function(){return null!==this._onEvent},clone:function(){return null},setEnabled:function(t){this._isEnabled=t},isEnabled:function(){return this._isEnabled},retain:function(){},release:function(){}},cc.EventListener.UNKNOWN=0,cc.EventListener.TOUCH_ONE_BY_ONE=1,cc.EventListener.TOUCH_ALL_AT_ONCE=2,cc.EventListener.KEYBOARD=3,cc.EventListener.MOUSE=4,cc.EventListener.ACCELERATION=6,cc.EventListener.CUSTOM=8;var n=cc.EventListener.ListenerID={MOUSE:"__cc_mouse",TOUCH_ONE_BY_ONE:"__cc_touch_one_by_one",TOUCH_ALL_AT_ONCE:"__cc_touch_all_at_once",KEYBOARD:"__cc_keyboard",ACCELERATION:"__cc_acceleration"},r=function(t,e){this._onCustomEvent=e,cc.EventListener.call(this,cc.EventListener.CUSTOM,t,this._callback)};i.extend(r,cc.EventListener),i.mixin(r.prototype,{_onCustomEvent:null,_callback:function(t){null!==this._onCustomEvent&&this._onCustomEvent(t)},checkAvailable:function(){return cc.EventListener.prototype.checkAvailable.call(this)&&null!==this._onCustomEvent},clone:function(){return new r(this._listenerID,this._onCustomEvent)}});var s=function(){cc.EventListener.call(this,cc.EventListener.MOUSE,n.MOUSE,this._callback)};i.extend(s,cc.EventListener),i.mixin(s.prototype,{onMouseDown:null,onMouseUp:null,onMouseMove:null,onMouseScroll:null,_callback:function(t){var e=cc.Event.EventMouse;switch(t._eventType){case e.DOWN:this.onMouseDown&&this.onMouseDown(t);break;case e.UP:this.onMouseUp&&this.onMouseUp(t);break;case e.MOVE:this.onMouseMove&&this.onMouseMove(t);break;case e.SCROLL:this.onMouseScroll&&this.onMouseScroll(t)}},clone:function(){var t=new s;return t.onMouseDown=this.onMouseDown,t.onMouseUp=this.onMouseUp,t.onMouseMove=this.onMouseMove,t.onMouseScroll=this.onMouseScroll,t},checkAvailable:function(){return!0}});var a=function(){cc.EventListener.call(this,cc.EventListener.TOUCH_ONE_BY_ONE,n.TOUCH_ONE_BY_ONE,null),this._claimedTouches=[]};i.extend(a,cc.EventListener),i.mixin(a.prototype,{constructor:a,_claimedTouches:null,swallowTouches:!1,onTouchBegan:null,onTouchMoved:null,onTouchEnded:null,onTouchCancelled:null,setSwallowTouches:function(t){this.swallowTouches=t},isSwallowTouches:function(){return this.swallowTouches},clone:function(){var t=new a;return t.onTouchBegan=this.onTouchBegan,t.onTouchMoved=this.onTouchMoved,t.onTouchEnded=this.onTouchEnded,t.onTouchCancelled=this.onTouchCancelled,t.swallowTouches=this.swallowTouches,t},checkAvailable:function(){return!!this.onTouchBegan||(cc.logID(1801),!1)}});var o=function(){cc.EventListener.call(this,cc.EventListener.TOUCH_ALL_AT_ONCE,n.TOUCH_ALL_AT_ONCE,null)};i.extend(o,cc.EventListener),i.mixin(o.prototype,{constructor:o,onTouchesBegan:null,onTouchesMoved:null,onTouchesEnded:null,onTouchesCancelled:null,clone:function(){var t=new o;return t.onTouchesBegan=this.onTouchesBegan,t.onTouchesMoved=this.onTouchesMoved,t.onTouchesEnded=this.onTouchesEnded,t.onTouchesCancelled=this.onTouchesCancelled,t},checkAvailable:function(){return null!==this.onTouchesBegan||null!==this.onTouchesMoved||null!==this.onTouchesEnded||null!==this.onTouchesCancelled||(cc.logID(1802),!1)}});var c=function(t){this._onAccelerationEvent=t,cc.EventListener.call(this,cc.EventListener.ACCELERATION,n.ACCELERATION,this._callback)};i.extend(c,cc.EventListener),i.mixin(c.prototype,{constructor:c,_onAccelerationEvent:null,_callback:function(t){this._onAccelerationEvent(t.acc,t)},checkAvailable:function(){return cc.assertID(this._onAccelerationEvent,1803),!0},clone:function(){return new c(this._onAccelerationEvent)}});var u=function(){cc.EventListener.call(this,cc.EventListener.KEYBOARD,n.KEYBOARD,this._callback)};i.extend(u,cc.EventListener),i.mixin(u.prototype,{constructor:u,onKeyPressed:null,onKeyReleased:null,_callback:function(t){t.isPressed?this.onKeyPressed&&this.onKeyPressed(t.keyCode,t):this.onKeyReleased&&this.onKeyReleased(t.keyCode,t)},clone:function(){var t=new u;return t.onKeyPressed=this.onKeyPressed,t.onKeyReleased=this.onKeyReleased,t},checkAvailable:function(){return null!==this.onKeyPressed||null!==this.onKeyReleased||(cc.logID(1800),!1)}}),cc.EventListener.create=function(t){cc.assertID(t&&t.event,1900);var e=t.event;delete t.event;var i=null;for(var n in e===cc.EventListener.TOUCH_ONE_BY_ONE?i=new a:e===cc.EventListener.TOUCH_ALL_AT_ONCE?i=new o:e===cc.EventListener.MOUSE?i=new s:e===cc.EventListener.CUSTOM?(i=new r(t.eventName,t.callback),delete t.eventName,delete t.callback):e===cc.EventListener.KEYBOARD?i=new u:e===cc.EventListener.ACCELERATION&&(i=new c(t.callback),delete t.callback),t)i[n]=t[n];return i},e.exports=cc.EventListener}),{"../platform/js":170}],128:[(function(t,e){"use strict";var i=t("../platform/js");t("./CCEventListener");var n=cc.EventListener.ListenerID,r=function(){this._fixedListeners=[],this._sceneGraphListeners=[],this.gt0Index=0};r.prototype={constructor:r,size:function(){return this._fixedListeners.length+this._sceneGraphListeners.length},empty:function(){return 0===this._fixedListeners.length&&0===this._sceneGraphListeners.length},push:function(t){0===t._getFixedPriority()?this._sceneGraphListeners.push(t):this._fixedListeners.push(t)},clearSceneGraphListeners:function(){this._sceneGraphListeners.length=0},clearFixedListeners:function(){this._fixedListeners.length=0},clear:function(){this._sceneGraphListeners.length=0,this._fixedListeners.length=0},getFixedPriorityListeners:function(){return this._fixedListeners},getSceneGraphPriorityListeners:function(){return this._sceneGraphListeners}};var s=function(t){var e=cc.Event,i=t.type;return i===e.ACCELERATION?n.ACCELERATION:i===e.KEYBOARD?n.KEYBOARD:i.startsWith(e.MOUSE)?n.MOUSE:(i.startsWith(e.TOUCH)&&cc.logID(2e3),"")},a={DIRTY_NONE:0,DIRTY_FIXED_PRIORITY:1,DIRTY_SCENE_GRAPH_PRIORITY:2,DIRTY_ALL:3,_listenersMap:{},_priorityDirtyFlagMap:{},_nodeListenersMap:{},_toAddedListeners:[],_toRemovedListeners:[],_dirtyListeners:{},_inDispatch:0,_isEnabled:!1,_currentTouch:null,_currentTouchListener:null,_internalCustomListenerIDs:[],_setDirtyForNode:function(t){var e=this._nodeListenersMap[t._id];if(e)for(var i=0,n=e.length;i0)for(var s=t._children,a=0,o=s.length;a=0;i--)(e=t[i])._setRegistered(!1),null!=e._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(e._getSceneGraphPriority(),e),e._setSceneGraphPriority(null)),0===this._inDispatch&&cc.js.array.removeAt(t,i)},_removeListenersForListenerID:function(t){var e,i=this._listenersMap[t];if(i){var n=i.getFixedPriorityListeners(),r=i.getSceneGraphPriorityListeners();this._removeAllListenersInVector(r),this._removeAllListenersInVector(n),delete this._priorityDirtyFlagMap[t],this._inDispatch||(i.clear(),delete this._listenersMap[t])}var s,a=this._toAddedListeners;for(e=a.length-1;e>=0;e--)(s=a[e])&&s._getListenerID()===t&&cc.js.array.removeAt(a,e)},_sortEventListeners:function(t){var e=this.DIRTY_NONE,i=this._priorityDirtyFlagMap;i[t]&&(e=i[t]),e!==this.DIRTY_NONE&&(i[t]=this.DIRTY_NONE,e&this.DIRTY_FIXED_PRIORITY&&this._sortListenersOfFixedPriority(t),e&this.DIRTY_SCENE_GRAPH_PRIORITY&&cc.director.getScene()&&this._sortListenersOfSceneGraphPriority(t))},_sortListenersOfSceneGraphPriority:function(t){var e=this._getListeners(t);if(e){var i=e.getSceneGraphPriorityListeners();i&&0!==i.length&&e.getSceneGraphPriorityListeners().sort(this._sortEventListenersOfSceneGraphPriorityDes)}},_sortEventListenersOfSceneGraphPriorityDes:function(t,e){var i=t._getSceneGraphPriority(),n=e._getSceneGraphPriority();if(!(e&&n&&n._activeInHierarchy&&null!==n._parent))return-1;if(!t||!i||!i._activeInHierarchy||null===i._parent)return 1;for(var r=i,s=n,a=!1;r._parent._id!==s._parent._id;)r=null===r._parent._parent?(a=!0)&&n:r._parent,s=null===s._parent._parent?(a=!0)&&i:s._parent;if(r._id===s._id){if(r._id===n._id)return-1;if(r._id===i._id)return 1}return a?r._localZOrder-s._localZOrder:s._localZOrder-r._localZOrder},_sortListenersOfFixedPriority:function(t){var e=this._listenersMap[t];if(e){var i=e.getFixedPriorityListeners();if(i&&0!==i.length){i.sort(this._sortListenersOfFixedPriorityAsc);for(var n=0,r=i.length;n=0);)++n;e.gt0Index=n}}},_sortListenersOfFixedPriorityAsc:function(t,e){return t._getFixedPriority()-e._getFixedPriority()},_onUpdateListeners:function(t){var e,i,n,r=t.getFixedPriorityListeners(),s=t.getSceneGraphPriorityListeners(),a=this._toRemovedListeners;if(s)for(e=s.length-1;e>=0;e--)(i=s[e])._isRegistered()||(cc.js.array.removeAt(s,e),-1!==(n=a.indexOf(i))&&a.splice(n,1));if(r)for(e=r.length-1;e>=0;e--)(i=r[e])._isRegistered()||(cc.js.array.removeAt(r,e),-1!==(n=a.indexOf(i))&&a.splice(n,1));s&&0===s.length&&t.clearSceneGraphListeners(),r&&0===r.length&&t.clearFixedListeners()},frameUpdateListeners:function(){var t=this._listenersMap,e=this._priorityDirtyFlagMap;for(var i in t)t[i].empty()&&(delete e[i],delete t[i]);var n=this._toAddedListeners;if(0!==n.length){for(var r=0,s=n.length;r0,3508),!(t>1)){var e;(e=this._listenersMap[n.TOUCH_ONE_BY_ONE])&&this._onUpdateListeners(e),(e=this._listenersMap[n.TOUCH_ALL_AT_ONCE])&&this._onUpdateListeners(e),cc.assertID(1===t,3509);var i=this._toAddedListeners;if(0!==i.length){for(var r=0,s=i.length;r0&&-1!==(r=t._claimedTouches.indexOf(n))){if(s=!0,!cc.macro.ENABLE_MULTI_TOUCH&&a._currentTouch&&a._currentTouch!==n)return!1;o===c.MOVED&&t.onTouchMoved?t.onTouchMoved(n,i):o===c.ENDED?(t.onTouchEnded&&t.onTouchEnded(n,i),t._registered&&t._claimedTouches.splice(r,1),a._clearCurTouch()):o===c.CANCELED&&(t.onTouchCancelled&&t.onTouchCancelled(n,i),t._registered&&t._claimedTouches.splice(r,1),a._clearCurTouch())}return i.isStopped()?(a._updateTouchListeners(i),!0):!(!s||!t.swallowTouches||(e.needsMutableSet&&e.touches.splice(n,1),0))},_dispatchTouchEvent:function(t){this._sortEventListeners(n.TOUCH_ONE_BY_ONE),this._sortEventListeners(n.TOUCH_ALL_AT_ONCE);var e=this._getListeners(n.TOUCH_ONE_BY_ONE),i=this._getListeners(n.TOUCH_ALL_AT_ONCE);if(null!==e||null!==i){var r=t.getTouches(),s=cc.js.array.copy(r),a={event:t,needsMutableSet:e&&i,touches:s,selTouch:null};if(e)for(var o=0;o0&&(this._dispatchEventToListeners(i,this._onTouchesEventCallback,{event:t,touches:s}),t.isStopped())||this._updateTouchListeners(t)}},_onTouchesEventCallback:function(t,e){if(!t._registered)return!1;var i=cc.Event.EventTouch,n=e.event,r=e.touches,s=n.getEventCode();return n.currentTarget=t._node,s===i.BEGAN&&t.onTouchesBegan?t.onTouchesBegan(r,n):s===i.MOVED&&t.onTouchesMoved?t.onTouchesMoved(r,n):s===i.ENDED&&t.onTouchesEnded?t.onTouchesEnded(r,n):s===i.CANCELED&&t.onTouchesCancelled&&t.onTouchesCancelled(r,n),!!n.isStopped()&&(a._updateTouchListeners(n),!0)},_associateNodeAndEventListener:function(t,e){var i=this._nodeListenersMap[t._id];i||(i=[],this._nodeListenersMap[t._id]=i),i.push(e)},_dissociateNodeAndEventListener:function(t,e){var i=this._nodeListenersMap[t._id];i&&(cc.js.array.remove(i,e),0===i.length&&delete this._nodeListenersMap[t._id])},_dispatchEventToListeners:function(t,e,i){var n,r,s=!1,a=t.getFixedPriorityListeners(),o=t.getSceneGraphPriorityListeners(),c=0;if(a&&0!==a.length)for(;c=0;c--){var u=o[c];if(u===t){cc.js.array.removeAt(o,c),u._setRegistered(!1);break}}this._currentTouchListener===t&&this._clearCurTouch()}},_clearCurTouch:function(){this._currentTouchListener=null,this._currentTouch=null},_removeListenerInCallback:function(t,e){if(null==t)return!1;for(var i=t.length-1;i>=0;i--){var n=t[i];if(n._onCustomEvent===e||n._onEvent===e)return n._setRegistered(!1),null!=n._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(n._getSceneGraphPriority(),n),n._setSceneGraphPriority(null)),0===this._inDispatch?cc.js.array.removeAt(t,i):this._toRemovedListeners.push(n),!0}return!1},_removeListenerInVector:function(t,e){if(null==t)return!1;for(var i=t.length-1;i>=0;i--){var n=t[i];if(n===e)return n._setRegistered(!1),null!=n._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(n._getSceneGraphPriority(),n),n._setSceneGraphPriority(null)),0===this._inDispatch?cc.js.array.removeAt(t,i):this._toRemovedListeners.push(n),!0}return!1},removeListeners:function(t,e){var i=this;if(cc.js.isNumber(t)||t instanceof cc._BaseNode)if(void 0!==t._id){var r,s=i._nodeListenersMap[t._id];if(s){var a=cc.js.array.copy(s);for(r=0;r=0;i--){var n=e[i];n&&this.off(t,n.callback,n.target)}},cc.EventTarget=e.exports=s}),{"../platform/callbacks-invoker":162,"../platform/js":170}],133:[(function(t,e){"use strict";var i=t("../platform/js");cc.Event=function(t,e){this.type=t,this.bubbles=!!e,this.target=null,this.currentTarget=null,this.eventPhase=0,this._propagationStopped=!1,this._propagationImmediateStopped=!1},cc.Event.prototype={constructor:cc.Event,unuse:function(){this.type=cc.Event.NO_TYPE,this.target=null,this.currentTarget=null,this.eventPhase=cc.Event.NONE,this._propagationStopped=!1,this._propagationImmediateStopped=!1},reuse:function(t,e){this.type=t,this.bubbles=e||!1},stopPropagation:function(){this._propagationStopped=!0},stopPropagationImmediate:function(){this._propagationImmediateStopped=!0},isStopped:function(){return this._propagationStopped||this._propagationImmediateStopped},getCurrentTarget:function(){return this.currentTarget},getType:function(){return this.type}},cc.Event.NO_TYPE="no_type",cc.Event.TOUCH="touch",cc.Event.MOUSE="mouse",cc.Event.KEYBOARD="keyboard",cc.Event.ACCELERATION="acceleration",cc.Event.NONE=0,cc.Event.CAPTURING_PHASE=1,cc.Event.AT_TARGET=2,cc.Event.BUBBLING_PHASE=3;var n=function(t,e){cc.Event.call(this,t,e),this.detail=null};i.extend(n,cc.Event),n.prototype.reset=n,n.prototype.setUserData=function(t){this.detail=t},n.prototype.getUserData=function(){return this.detail},n.prototype.getEventName=cc.Event.prototype.getType;var r=new i.Pool(10);n.put=function(t){r.put(t)},n.get=function(t,e){var i=r._get();return i?i.reset(t,e):i=new n(t,e),i},cc.Event.EventCustom=n,e.exports=cc.Event}),{"../platform/js":170}],134:[(function(t){"use strict";t("./event"),t("./event-listeners"),t("./event-target"),t("./system-event")}),{"./event":133,"./event-listeners":131,"./event-target":132,"./system-event":135}],135:[(function(t,e){"use strict";var i=t("../event/event-target"),n=t("../event-manager"),r=t("../platform/CCInputManager"),s=cc.Enum({KEY_DOWN:"keydown",KEY_UP:"keyup",DEVICEMOTION:"devicemotion"}),a=null,o=null,c=cc.Class({name:"SystemEvent",extends:i,statics:{EventType:s},setAccelerometerEnabled:function(t){t&&window.DeviceMotionEvent&&"function"==typeof DeviceMotionEvent.requestPermission?DeviceMotionEvent.requestPermission().then((function(t){console.log("Device Motion Event request permission: "+t),r.setAccelerometerEnabled("granted"===t)})):r.setAccelerometerEnabled(t)},setAccelerometerInterval:function(t){r.setAccelerometerInterval(t)},on:function(t,e,i,r){this._super(t,e,i,r),t!==s.KEY_DOWN&&t!==s.KEY_UP||(a||(a=cc.EventListener.create({event:cc.EventListener.KEYBOARD,onKeyPressed:function(t,e){e.type=s.KEY_DOWN,cc.systemEvent.dispatchEvent(e)},onKeyReleased:function(t,e){e.type=s.KEY_UP,cc.systemEvent.dispatchEvent(e)}})),n.hasEventListener(cc.EventListener.ListenerID.KEYBOARD)||n.addListener(a,1)),t===s.DEVICEMOTION&&(o||(o=cc.EventListener.create({event:cc.EventListener.ACCELERATION,callback:function(t,e){e.type=s.DEVICEMOTION,cc.systemEvent.dispatchEvent(e)}})),n.hasEventListener(cc.EventListener.ListenerID.ACCELERATION)||n.addListener(o,1))},off:function(t,e,i){if(this._super(t,e,i),a&&(t===s.KEY_DOWN||t===s.KEY_UP)){var r=this.hasEventListener(s.KEY_DOWN),c=this.hasEventListener(s.KEY_UP);r||c||n.removeListener(a)}o&&t===s.DEVICEMOTION&&n.removeListener(o)}});cc.SystemEvent=e.exports=c,cc.systemEvent=new cc.SystemEvent}),{"../event-manager":130,"../event/event-target":132,"../platform/CCInputManager":153}],136:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("../value-types/vec3")),r=a(t("../value-types/mat3")),s=a(t("./enums"));function a(t){return t&&t.__esModule?t:{default:t}}var o=new n.default,c=new n.default,u=new r.default,l=function(t,e,i){var r=u.m,s=i.m;r[0]=Math.abs(s[0]),r[1]=Math.abs(s[1]),r[2]=Math.abs(s[2]),r[3]=Math.abs(s[4]),r[4]=Math.abs(s[5]),r[5]=Math.abs(s[6]),r[6]=Math.abs(s[8]),r[7]=Math.abs(s[9]),r[8]=Math.abs(s[10]),n.default.transformMat3(t,e,u)},h=(function(){function t(t,e,i,r,a,o){this.center=void 0,this.halfExtents=void 0,this._type=void 0,this._type=s.default.SHAPE_AABB,this.center=new n.default(t,e,i),this.halfExtents=new n.default(r,a,o)}t.create=function(e,i,n,r,s,a){return new t(e,i,n,r,s,a)},t.clone=function(e){return new t(e.center.x,e.center.y,e.center.z,e.halfExtents.x,e.halfExtents.y,e.halfExtents.z)},t.copy=function(t,e){return n.default.copy(t.center,e.center),n.default.copy(t.halfExtents,e.halfExtents),t},t.fromPoints=function(t,e,i){return n.default.scale(t.center,n.default.add(o,e,i),.5),n.default.scale(t.halfExtents,n.default.sub(c,i,e),.5),t},t.set=function(t,e,i,r,s,a,o){return n.default.set(t.center,e,i,r),n.default.set(t.halfExtents,s,a,o),t};var e=t.prototype;return e.getBoundary=function(t,e){n.default.sub(t,this.center,this.halfExtents),n.default.add(e,this.center,this.halfExtents)},e.transform=function(t,e,i,r,s){s||(s=this),n.default.transformMat4(s.center,this.center,t),l(s.halfExtents,this.halfExtents,t)},t})();i.default=h,e.exports=i.default}),{"../value-types/mat3":239,"../value-types/vec3":248,"./enums":137}],137:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0,i.default={SHAPE_RAY:1,SHAPE_LINE:2,SHAPE_SPHERE:4,SHAPE_AABB:8,SHAPE_OBB:16,SHAPE_PLANE:32,SHAPE_TRIANGLE:64,SHAPE_FRUSTUM:128,SHAPE_FRUSTUM_ACCURATE:256},e.exports=i.default}),{}],138:[(function(t,e){"use strict";var i=t("../components/CCRenderComponent"),n=t("../assets/material/CCMaterial"),r=t("./types"),s=r.LineCap,a=r.LineJoin,o=cc.Class({name:"cc.Graphics",extends:i,editor:!1,ctor:function(){this._impl=new o._Impl(this)},properties:{_lineWidth:2,_strokeColor:cc.Color.BLACK,_lineJoin:a.MITER,_lineCap:s.BUTT,_fillColor:cc.Color.WHITE,_miterLimit:10,lineWidth:{get:function(){return this._lineWidth},set:function(t){this._lineWidth=t,this._impl.lineWidth=t}},lineJoin:{get:function(){return this._lineJoin},set:function(t){this._lineJoin=t,this._impl.lineJoin=t},type:a},lineCap:{get:function(){return this._lineCap},set:function(t){this._lineCap=t,this._impl.lineCap=t},type:s},strokeColor:{get:function(){return this._strokeColor},set:function(t){this._impl.strokeColor=this._strokeColor=cc.color(t)}},fillColor:{get:function(){return this._fillColor},set:function(t){this._impl.fillColor=this._fillColor=cc.color(t)}},miterLimit:{get:function(){return this._miterLimit},set:function(t){this._miterLimit=t,this._impl.miterLimit=t}}},statics:{LineJoin:a,LineCap:s},onRestore:function(){this._impl||(this._impl=new o._Impl(this))},onDestroy:function(){this.clear(!0),this._super(),this._impl=null},_getDefaultMaterial:function(){return n.getBuiltinMaterial("2d-graphics")},_updateMaterial:function(){var t=this._materials[0];t&&(void 0!==t.getDefine("CC_USE_MODEL")&&t.define("CC_USE_MODEL",!0),void 0!==t.getDefine("CC_SUPPORT_standard_derivatives")&&cc.sys.glExtension("OES_standard_derivatives")&&t.define("CC_SUPPORT_standard_derivatives",!0))},moveTo:function(t,e){this._impl.moveTo(t,e)},lineTo:function(t,e){this._impl.lineTo(t,e)},bezierCurveTo:function(t,e,i,n,r,s){this._impl.bezierCurveTo(t,e,i,n,r,s)},quadraticCurveTo:function(t,e,i,n){this._impl.quadraticCurveTo(t,e,i,n)},arc:function(t,e,i,n,r,s){this._impl.arc(t,e,i,n,r,s)},ellipse:function(t,e,i,n){this._impl.ellipse(t,e,i,n)},circle:function(t,e,i){this._impl.circle(t,e,i)},rect:function(t,e,i,n){this._impl.rect(t,e,i,n)},roundRect:function(t,e,i,n,r){this._impl.roundRect(t,e,i,n,r)},fillRect:function(t,e,i,n){this.rect(t,e,i,n),this.fill()},clear:function(t){this._impl.clear(t),this._assembler&&this._assembler.clear(t)},close:function(){this._impl.close()},stroke:function(){this._assembler||this._resetAssembler(),this._assembler.stroke(this)},fill:function(){this._assembler||this._resetAssembler(),this._assembler.fill(this)}});cc.Graphics=e.exports=o,cc.Graphics.Types=r,cc.Graphics.Helper=t("./helper")}),{"../assets/material/CCMaterial":77,"../components/CCRenderComponent":110,"./helper":139,"./types":141}],139:[(function(t,e){"use strict";var i=t("./types").PointFlags,n=Math.PI,r=Math.min,s=Math.max,a=Math.cos,o=Math.sin,c=Math.abs,u=Math.sign,l=.5522847493;e.exports={arc:function(t,e,i,u,l,h,_){var f,d,p,v=0,g=0,m=0,y=0,T=0,E=0,A=0,C=0,x=0,b=0,S=0,R=0,w=0;if(g=h-l,_=_||!1)if(c(g)>=2*n)g=2*n;else for(;g<0;)g+=2*n;else if(c(g)>=2*n)g=2*-n;else for(;g>0;)g-=2*n;for(p=0|s(1,r(c(g)/(.5*n)+.5,5)),m=c(4/3*(1-a(f=g/p/2))/o(f)),_||(m=-m),d=0;d<=p;d++)E=e+(y=a(v=l+g*(d/p)))*u,A=i+(T=o(v))*u,C=-T*u*m,x=y*u*m,0===d?t.moveTo(E,A):t.bezierCurveTo(b+R,S+w,E-C,A-x,E,A),b=E,S=A,R=C,w=x},ellipse:function(t,e,i,n,r){t.moveTo(e-n,i),t.bezierCurveTo(e-n,i+r*l,e-n*l,i+r,e,i+r),t.bezierCurveTo(e+n*l,i+r,e+n,i+r*l,e+n,i),t.bezierCurveTo(e+n,i-r*l,e+n*l,i-r,e,i-r),t.bezierCurveTo(e-n*l,i-r,e-n,i-r*l,e-n,i),t.close()},roundRect:function(t,e,i,n,s,a){if(a<.1)t.rect(e,i,n,s);else{var o=r(a,.5*c(n))*u(n),h=r(a,.5*c(s))*u(s);t.moveTo(e,i+h),t.lineTo(e,i+s-h),t.bezierCurveTo(e,i+s-h*(1-l),e+o*(1-l),i+s,e+o,i+s),t.lineTo(e+n-o,i+s),t.bezierCurveTo(e+n-o*(1-l),i+s,e+n,i+s-h*(1-l),e+n,i+s-h),t.lineTo(e+n,i+h),t.bezierCurveTo(e+n,i+h*(1-l),e+n-o*(1-l),i,e+n-o,i),t.lineTo(e+o,i),t.bezierCurveTo(e+o*(1-l),i,e,i+h*(1-l),e,i+h),t.close()}},tesselateBezier:function t(e,n,r,s,a,o,u,l,h,_,f){var d,p,v,g,m,y,T,E,A,C,x,b,S,R,w,I;_>10||(m=.5*(o+l),y=.5*(u+h),T=.5*((d=.5*(n+s))+(v=.5*(s+o))),E=.5*((p=.5*(r+a))+(g=.5*(a+u))),((w=c((s-l)*(R=h-r)-(a-h)*(S=l-n)))+(I=c((o-l)*R-(u-h)*S)))*(w+I)0){for(var p=new DataView(i,r),v=n,g=c.num,m=0;m0||this.disableRender()},_updateMaterial:function(){var t=this.textures;if(t&&t.length>0)for(var e=this._getDefaultMaterial(),i=0;i>2,f=l.vertexOffset,d=u._vData,p=u._iData;!i.worldMatDirty&&this._worldDatas[n]||this._updateWorldVertices(n,a,r,s,t.node._worldMatrix),d.set(this._worldDatas[n],_);for(var v=0;v0?a:null,!0);var h=o.prototype;if(e&&(l||(i.extend(o,e),h=o.prototype),o.$super=e),n){for(var _=n.length-1;_>=0;_--){var f=n[_];p(h,f.prototype),p(o,f,(function(t){return f.hasOwnProperty(t)&&!0})),w._isCCClass(f)&&p(s.getClassAttrs(o),s.getClassAttrs(f))}h.constructor=o}return l||(h.__initProps__=A),i.setClassName(t,o),o}function g(t,e,n,r){var s=cc.Component,a=cc._RF.peek();if(a&&i.isChildClassOf(e,s)){if(i.isChildClassOf(a.cls,s))return cc.errorID(3615),null;t=t||a.script}var o=v(t,e,n,r);if(a)if(i.isChildClassOf(e,s)){var c=a.uuid;c&&i._setClassId(c,o),a.cls=o}else i.isChildClassOf(a.cls,s)||(a.cls=o);return o}function m(t){for(var e=i.getClassName(t),n=t.constructor,r="new "+e+"(",s=0;s0){var a="].apply(this,arguments);\n";if(1===s)r+="CCClass.__ctors__[0"+a;else{r+="var cs=CCClass.__ctors__;\n";for(var o=0;o=0)){var s=e[r];if("function"==typeof s){var a=i.getPropertyDescriptor(t.prototype,r);if(a){var o=a.value;if("function"==typeof o){b.test(s)&&(n=!0,e[r]=(function(t,e){return function(){var i=this._super;this._super=t;var n=e.apply(this,arguments);return this._super=i,n}})(o,s));continue}}}}return n}function R(t,e,i,n,r,c){if(t.__props__=[],n&&n.__props__&&(t.__props__=n.__props__.slice()),r)for(var u=0;u=0)){var f=t[_];o.validateMethodWithProps(f,_,e,s,n)&&i.value(s.prototype,_,f,!0,!0)}var d=t.editor;return d&&cc.Component._registerEditorProps(s,d),s}/xyz/.test((function(){xyz})),w._isCCClass=function(t){return t&&t.hasOwnProperty("__ctors__")},w._fastDefine=function(t,e,n){i.setClassName(t,e);for(var r=e.__props__=e.__values__=Object.keys(n),o=s.getClassAttrs(e),c=0;c=2&&((o||u())[c+"min"]=_[0],o[c+"max"]=_[1],_.length>2&&(o[c+"step"]=_[2])),h("min","number"),h("max","number"),h("step","number"),h("userData","object")}cc.Class=w,e.exports={isArray:function(t){return t=d(t),Array.isArray(t)},fastDefine:w._fastDefine,getNewValueTypeCode:m,IDENTIFIER_RE:E,escapeForJS:y,getDefault:d}}),{"./CCEnum":151,"./attribute":161,"./js":170,"./preprocess-class":171,"./requiring-frame":172,"./utils":173}],150:[(function(t,e){"use strict";t("./CCClass");var i=t("./preprocess-class"),n=t("./js"),r="__ccclassCache__";function s(t){return t}function a(t,e){return t[e]||(t[e]={})}function o(t){return function(e){return"function"==typeof e?t(e):function(i){return t(i,e)}}}function c(t,e){return function(t){return function(i){return e(i,t)}}}var u=c.bind(null,!1);function l(){return c.bind(null,!1)}var h=l(),_=l();function f(t){return a(t,r)}function d(t){var e;try{e=t()}catch(i){return t}return"object"!=typeof e||null===e?e:t}function p(t){var e;try{e=new t}catch(i){return{}}return e}function v(t,e,r,s,a,o){var c,u=a&&(a.get||a.set);s&&(c=i.getFullFormOfProperty(s,u));var l=e[r],h=n.mixin(l||{},c||s||{});if(u)a.get&&(h.get=a.get),a.set&&(h.set=a.set);else{var _=void 0;if(a)a.initializer&&(_=d(a.initializer));else{var f=o.default||(o.default=p(t));f.hasOwnProperty(r)&&(_=f[r])}h.default=_}e[r]=h}var g=o((function(t,e){var i=n.getSuper(t);i===Object&&(i=null);var s={name:e,extends:i,ctor:t,__ES6__:!0},a=t[r];if(a){var o=a.proto;o&&n.mixin(s,o),t[r]=void 0}return cc.Class(s)}));function m(t,e,i){return t((function(t,n){var r=f(t);if(r){var s=void 0!==i?i:n,o=a(r,"proto");a(o,"editor")[e]=s}}),e)}function y(t){return t(s)}var T=y(o),E=m(u,"requireComponent"),A=y(h),C=m(_,"executionOrder"),x=y(o),b=y(o),S=y(h),R=y(h),w=y(h);cc._decorator=e.exports={ccclass:g,property:function(t,e,i){var n=null;function r(t,e,i){var r=f(t.constructor);if(r){var s=a(r,"proto"),o=a(s,"properties");v(t.constructor,o,e,n,i,r)}}if(void 0===e)return n=t,r;r(t,e,i)},executeInEditMode:T,requireComponent:E,menu:A,executionOrder:C,disallowMultiple:x,playOnFocus:b,inspector:S,icon:R,help:w,mixins:function(){for(var t=[],e=0;ee){var l=u.getID();delete a[l],delete o[l],this._touchCount--,-1===r?(r=c,this._indexBitsUsed|=1<>=1}return r},_glView:null,_updateCanvasBoundingRect:function(){var t=cc.game.canvas,e=this._canvasBoundingRect,i=document.documentElement,n=window.pageXOffset-i.clientLeft,r=window.pageYOffset-i.clientTop;if(t.getBoundingClientRect){var s=t.getBoundingClientRect();e.left=s.left+n,e.top=s.top+r,e.width=s.width,e.height=s.height}else t instanceof HTMLCanvasElement?(e.left=n,e.top=r,e.width=t.width,e.height=t.height):(e.left=n,e.top=r,e.width=parseInt(t.style.width),e.height=parseInt(t.style.height))},handleTouchesBegin:function(t){for(var e,i,s=n.now(),a=[],o=this._touches,c=this._touchesIntegerDict,u=this._touchesCache,l=0,h=t.length;l0){this._glView._convertTouchesWithScale(a);var d=new cc.Event.EventTouch(a);d._eventCode=cc.Event.EventTouch.BEGAN,r.dispatchEvent(d)}},handleTouchesMove:function(t){for(var e,i,s=n.now(),a=[],o=this._touches,c=this._touchesIntegerDict,u=0,l=t.length;u0){this._glView._convertTouchesWithScale(a);var _=new cc.Event.EventTouch(a);_._eventCode=cc.Event.EventTouch.MOVED,r.dispatchEvent(_)}},handleTouchesEnd:function(t){var e=this.getSetOfTouchesEndOrCancel(t);if(e.length>0){this._glView._convertTouchesWithScale(e);var i=new cc.Event.EventTouch(e);i._eventCode=cc.Event.EventTouch.ENDED,r.dispatchEvent(i)}this._preTouchPool.length=0},handleTouchesCancel:function(t){var e=this.getSetOfTouchesEndOrCancel(t);if(e.length>0){this._glView._convertTouchesWithScale(e);var i=new cc.Event.EventTouch(e);i._eventCode=cc.Event.EventTouch.CANCELED,r.dispatchEvent(i)}this._preTouchPool.length=0},getSetOfTouchesEndOrCancel:function(t){for(var e,i,n,r=[],s=this._touches,a=this._touchesIntegerDict,o=this._touchesCache,c=0,u=t.length;c=0;r--)if(i[r].getID()===n){e=i[r];break}return e||(e=t),e},setPreTouch:function(t){for(var e=!1,i=this._preTouchPool,n=t.getID(),r=i.length-1;r>=0;r--)if(i[r].getID()===n){i[r]=t,e=!0;break}e||(i.length<=50?i.push(t):(i[this._preTouchPoolPointer]=t,this._preTouchPoolPointer=(this._preTouchPoolPointer+1)%50))},getTouchByXY:function(t,e,i){var n=this._preTouchPoint,r=this._glView.convertToLocationInView(t,e,i),s=new cc.Touch(r.x,r.y,0);return s._setPrevPoint(n.x,n.y),n.x=r.x,n.y=r.y,s},getMouseEvent:function(t,e,i){var n=this._prevMousePoint,r=new cc.Event.EventMouse(i);return r._setPrevCursor(n.x,n.y),n.x=t.x,n.y=t.y,this._glView._convertMouseToLocationInView(n,e),r.setLocation(n.x,n.y),r},getPointByEvent:function(t,e){return cc.sys.browserType!==cc.sys.BROWSER_TYPE_QQ&&cc.sys.browserType!==cc.sys.BROWSER_TYPE_UC&&cc.sys.browserType!==cc.sys.BROWSER_TYPE_SAFARI||this._updateCanvasBoundingRect(),null!=t.pageX?{x:t.pageX,y:t.pageY}:(e.left-=document.body.scrollLeft,e.top-=document.body.scrollTop,{x:t.clientX,y:t.clientY})},getTouchesByEvent:function(t,e){for(var i,r,a,o=[],c=this._glView,u=this._preTouchPoint,l=t.changedTouches.length,h=0;hthis._accelInterval&&(this._accelCurTime-=this._accelInterval,r.dispatchEvent(new cc.Event.EventAcceleration(this._acceleration))),this._accelCurTime+=t}};e.exports=cc.internal.inputManager=a}),{"../event-manager":130,"./CCMacro":154,"./CCSys":158}],154:[(function(t,e){"use strict";cc.macro={RAD:Math.PI/180,DEG:180/Math.PI,REPEAT_FOREVER:Number.MAX_VALUE-1,FLT_EPSILON:1.192092896e-7,MIN_ZINDEX:-Math.pow(2,15),MAX_ZINDEX:Math.pow(2,15)-1,ONE:1,ZERO:0,SRC_ALPHA:770,SRC_ALPHA_SATURATE:776,SRC_COLOR:768,DST_ALPHA:772,DST_COLOR:774,ONE_MINUS_SRC_ALPHA:771,ONE_MINUS_SRC_COLOR:769,ONE_MINUS_DST_ALPHA:773,ONE_MINUS_DST_COLOR:775,ONE_MINUS_CONSTANT_ALPHA:32772,ONE_MINUS_CONSTANT_COLOR:32770,ORIENTATION_PORTRAIT:1,ORIENTATION_LANDSCAPE:2,ORIENTATION_AUTO:3,DENSITYDPI_DEVICE:"device-dpi",DENSITYDPI_HIGH:"high-dpi",DENSITYDPI_MEDIUM:"medium-dpi",DENSITYDPI_LOW:"low-dpi",FIX_ARTIFACTS_BY_STRECHING_TEXEL_TMX:!0,DIRECTOR_STATS_POSITION:cc.v2(0,0),ENABLE_STACKABLE_ACTIONS:!0,TOUCH_TIMEOUT:5e3,BATCH_VERTEX_COUNT:2e4,ENABLE_TILEDMAP_CULLING:!0,ENABLE_TRANSPARENT_CANVAS:!1,ENABLE_WEBGL_ANTIALIAS:!1,ENABLE_CULLING:!1,CLEANUP_IMAGE_CACHE:!1,SHOW_MESH_WIREFRAME:!1,SHOW_MESH_NORMAL:!1,ENABLE_MULTI_TOUCH:!0,ALLOW_IMAGE_BITMAP:!cc.sys.isMobile,ENABLE_NATIVE_TTF_RENDERER:!0},Object.defineProperty(cc.macro,"ROTATE_ACTION_CCW",{set:function(t){cc.RotateTo&&cc.RotateBy&&(cc.RotateTo._reverse=cc.RotateBy._reverse=t)}}),cc.macro.SUPPORT_TEXTURE_FORMATS=[".pkm",".pvr",".webp",".jpg",".jpeg",".bmp",".png"],cc.macro.KEY={none:0,back:6,menu:18,backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pause:19,capslock:20,escape:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,select:41,insert:45,Delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,num0:96,num1:97,num2:98,num3:99,num4:100,num5:101,num6:102,num7:103,num8:104,num9:105,"*":106,"+":107,"-":109,numdel:110,"/":111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,";":186,semicolon:186,equal:187,"=":187,",":188,comma:188,dash:189,".":190,period:190,forwardslash:191,grave:192,"[":219,openbracket:219,backslash:220,"]":221,closebracket:221,quote:222,dpadLeft:1e3,dpadRight:1001,dpadUp:1003,dpadDown:1004,dpadCenter:1005},cc.macro.ImageFormat=cc.Enum({JPG:0,PNG:1,TIFF:2,WEBP:3,PVR:4,ETC:5,S3TC:6,ATITC:7,TGA:8,RAWDATA:9,UNKNOWN:10}),cc.macro.BlendFactor=cc.Enum({ONE:1,ZERO:0,SRC_ALPHA:770,SRC_COLOR:768,DST_ALPHA:772,DST_COLOR:774,ONE_MINUS_SRC_ALPHA:771,ONE_MINUS_SRC_COLOR:769,ONE_MINUS_DST_ALPHA:773,ONE_MINUS_DST_COLOR:775}),cc.macro.TextAlignment=cc.Enum({LEFT:0,CENTER:1,RIGHT:2}),cc.macro.VerticalTextAlignment=cc.Enum({TOP:0,CENTER:1,BOTTOM:2}),e.exports=cc.macro}),{}],155:[(function(t,e){"use strict";var i=t("./js"),n=t("./CCClass"),r=1;function s(){this._name="",this._objFlags=0}n.fastDefine("cc.Object",s,{_name:"",_objFlags:0}),i.value(s,"Flags",{Destroyed:r,DontSave:8,EditorOnly:16,Dirty:32,DontDestroy:64,PersistentMask:-4192741,Destroying:128,Deactivating:256,LockedInEditor:512,HideInHierarchy:1024,IsPreloadStarted:8192,IsOnLoadStarted:32768,IsOnLoadCalled:16384,IsOnEnableCalled:2048,IsStartCalled:65536,IsEditorOnEnableCalled:4096,IsPositionLocked:1<<21,IsRotationLocked:1<<17,IsScaleLocked:1<<18,IsAnchorLocked:1<<19,IsSizeLocked:1<<20});var a=[];i.value(s,"_deferredDestroy",(function(){for(var t=a.length,e=0;e0)return void(t.webkitEnterFullscreen&&t.webkitEnterFullscreen());t.setAttribute("x5-video-player-fullscreen","true")}if(this._supportsFullScreen){if(t=t||document.documentElement,e){var n=this._fn.fullscreenchange;this._onfullscreenchange&&document.removeEventListener(n,this._onfullscreenchange),this._onfullscreenchange=e,document.addEventListener(n,e,!1)}if(i){var r=this._fn.fullscreenerror;this._onfullscreenerror&&document.removeEventListener(r,this._onfullscreenerror),this._onfullscreenerror=i,document.addEventListener(r,i,{once:!0})}var s=t[this._fn.requestFullscreen]();void 0===document[this._fn.fullscreenerror]&&window.Promise&&s instanceof Promise&&s.catch((function(){}))}},exitFullScreen:function(t){if(t&&"video"===t.tagName.toLowerCase()){if(cc.sys.os===cc.sys.OS_IOS&&cc.sys.isBrowser)return void(t.webkitExitFullscreen&&t.webkitExitFullscreen());t.setAttribute("x5-video-player-fullscreen","false")}return!this._supportsFullScreen||document[this._fn.exitFullscreen]()},autoFullScreen:function(t,e){t=t||document.body,this._ensureFullScreen(t,e),this.requestFullScreen(t,e)},disableAutoFullScreen:function(t){var e=cc.game.canvas||t,i=this._touchEvent;this._preOnTouch&&(e.removeEventListener(i,this._preOnTouch),this._preOnTouch=null)},_ensureFullScreen:function(t,e){var i=this,n=cc.game.canvas||t,r=this._fn.fullscreenerror,s=this._touchEvent;function a(){i._preOnFullScreenError=null,i._preOnTouch&&n.removeEventListener(s,i._preOnTouch),i._preOnTouch=function(){i._preOnTouch=null,i.requestFullScreen(t,e)},n.addEventListener(s,i._preOnTouch,{once:!0})}this._preOnFullScreenError&&t.removeEventListener(r,this._preOnFullScreenError),this._preOnFullScreenError=a,t.addEventListener(r,a,{once:!0})}},cc.screen.init()}),{}],158:[(function(t,e){"use strict";window._CCSettings&&_CCSettings.platform;var i="undefined"==typeof window?global:window,n=cc&&cc.sys?cc.sys:(function(){cc.sys={};var t,e,n=cc.sys;if(n.LANGUAGE_ENGLISH="en",n.LANGUAGE_CHINESE="zh",n.LANGUAGE_FRENCH="fr",n.LANGUAGE_ITALIAN="it",n.LANGUAGE_GERMAN="de",n.LANGUAGE_SPANISH="es",n.LANGUAGE_DUTCH="du",n.LANGUAGE_RUSSIAN="ru",n.LANGUAGE_KOREAN="ko",n.LANGUAGE_JAPANESE="ja",n.LANGUAGE_HUNGARIAN="hu",n.LANGUAGE_PORTUGUESE="pt",n.LANGUAGE_ARABIC="ar",n.LANGUAGE_NORWEGIAN="no",n.LANGUAGE_POLISH="pl",n.LANGUAGE_TURKISH="tr",n.LANGUAGE_UKRAINIAN="uk",n.LANGUAGE_ROMANIAN="ro",n.LANGUAGE_BULGARIAN="bg",n.LANGUAGE_UNKNOWN="unknown",n.OS_IOS="iOS",n.OS_ANDROID="Android",n.OS_WINDOWS="Windows",n.OS_MARMALADE="Marmalade",n.OS_LINUX="Linux",n.OS_BADA="Bada",n.OS_BLACKBERRY="Blackberry",n.OS_OSX="OS X",n.OS_WP8="WP8",n.OS_WINRT="WINRT",n.OS_UNKNOWN="Unknown",n.UNKNOWN=-1,n.WIN32=0,n.LINUX=1,n.MACOS=2,n.ANDROID=3,n.IPHONE=4,n.IPAD=5,n.BLACKBERRY=6,n.NACL=7,n.EMSCRIPTEN=8,n.TIZEN=9,n.WINRT=10,n.WP8=11,n.MOBILE_BROWSER=100,n.DESKTOP_BROWSER=101,n.EDITOR_PAGE=102,n.EDITOR_CORE=103,n.WECHAT_GAME=104,n.QQ_PLAY=105,n.FB_PLAYABLE_ADS=106,n.BAIDU_GAME=107,n.VIVO_GAME=108,n.OPPO_GAME=109,n.HUAWEI_GAME=110,n.XIAOMI_GAME=111,n.JKW_GAME=112,n.ALIPAY_GAME=113,n.WECHAT_GAME_SUB=114,n.BAIDU_GAME_SUB=115,n.QTT_GAME=116,n.BYTEDANCE_GAME=117,n.BYTEDANCE_GAME_SUB=118,n.LINKSURE=119,n.TAOBAO=120,n.BROWSER_TYPE_WECHAT="wechat",n.BROWSER_TYPE_ANDROID="androidbrowser",n.BROWSER_TYPE_IE="ie",n.BROWSER_TYPE_EDGE="edge",n.BROWSER_TYPE_QQ="qqbrowser",n.BROWSER_TYPE_MOBILE_QQ="mqqbrowser",n.BROWSER_TYPE_UC="ucbrowser",n.BROWSER_TYPE_UCBS="ucbs",n.BROWSER_TYPE_360="360browser",n.BROWSER_TYPE_BAIDU_APP="baiduboxapp",n.BROWSER_TYPE_BAIDU="baidubrowser",n.BROWSER_TYPE_MAXTHON="maxthon",n.BROWSER_TYPE_OPERA="opera",n.BROWSER_TYPE_OUPENG="oupeng",n.BROWSER_TYPE_MIUI="miuibrowser",n.BROWSER_TYPE_FIREFOX="firefox",n.BROWSER_TYPE_SAFARI="safari",n.BROWSER_TYPE_CHROME="chrome",n.BROWSER_TYPE_LIEBAO="liebao",n.BROWSER_TYPE_QZONE="qzone",n.BROWSER_TYPE_SOUGOU="sogou",n.BROWSER_TYPE_HUAWEI="huawei",n.BROWSER_TYPE_UNKNOWN="unknown",n.isNative=!1,n.isBrowser="object"==typeof window&&"object"==typeof document&&!0,n.glExtension=function(t){return!!cc.renderer.device.ext(t)},n.getMaxJointMatrixSize=function(){if(!n._maxJointMatrixSize){var t=cc.game._renderContext,e=Math.floor(t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS)/4)-10;n._maxJointMatrixSize=e<50?0:50}return n._maxJointMatrixSize},n.getSafeAreaRect=function(){var t=cc.view.getVisibleSize();return cc.rect(0,0,t.width,t.height)},i.__globalAdapter&&i.__globalAdapter.adaptSys)i.__globalAdapter.adaptSys(n);else{var r=window,s=r.navigator,a=document,o=a.documentElement,c=s.userAgent.toLowerCase();n.isMobile=/mobile|android|iphone|ipad/.test(c),"undefined"!=typeof FbPlayableAd?n.platform=n.FB_PLAYABLE_ADS:n.platform=n.isMobile?n.MOBILE_BROWSER:n.DESKTOP_BROWSER;var u=s.language;u=u||s.browserLanguage,n.languageCode=u.toLowerCase(),u=u?u.split("-")[0]:n.LANGUAGE_ENGLISH,n.language=u;var l=!1,h=!1,_="",f=0,d=/android\s*(\d+(?:\.\d+)*)/i.exec(c)||/android\s*(\d+(?:\.\d+)*)/i.exec(s.platform);d&&(l=!0,_=d[1]||"",f=parseInt(_)||0),(d=/(iPad|iPhone|iPod).*OS ((\d+_?){2,3})/i.exec(c))?(h=!0,_=d[2]||"",f=parseInt(_)||0):(/(iPhone|iPad|iPod)/.exec(s.platform)||"MacIntel"===s.platform&&s.maxTouchPoints&&s.maxTouchPoints>1)&&(h=!0,_="",f=0);var p=n.OS_UNKNOWN;-1!==s.appVersion.indexOf("Win")?p=n.OS_WINDOWS:h?p=n.OS_IOS:-1!==s.appVersion.indexOf("Mac")?p=n.OS_OSX:-1!==s.appVersion.indexOf("X11")&&-1===s.appVersion.indexOf("Linux")?p=n.OS_UNIX:l?p=n.OS_ANDROID:-1===s.appVersion.indexOf("Linux")&&-1===c.indexOf("ubuntu")||(p=n.OS_LINUX),n.os=p,n.osVersion=_,n.osMainVersion=f,n.browserType=n.BROWSER_TYPE_UNKNOWN,(function(){var t=/mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|ucbs|360 aphone|360browser|baiduboxapp|baidubrowser|maxthon|mxbrowser|miuibrowser/i.exec(c)||/qq|ucbrowser|ubrowser|edge|HuaweiBrowser/i.exec(c)||/chrome|safari|firefox|trident|opera|opr\/|oupeng/i.exec(c),e=t?t[0].toLowerCase():n.BROWSER_TYPE_UNKNOWN;"safari"===e&&l?e=n.BROWSER_TYPE_ANDROID:"qq"===e&&c.match(/android.*applewebkit/i)&&(e=n.BROWSER_TYPE_ANDROID);var i={micromessenger:n.BROWSER_TYPE_WECHAT,trident:n.BROWSER_TYPE_IE,edge:n.BROWSER_TYPE_EDGE,"360 aphone":n.BROWSER_TYPE_360,mxbrowser:n.BROWSER_TYPE_MAXTHON,"opr/":n.BROWSER_TYPE_OPERA,ubrowser:n.BROWSER_TYPE_UC,huaweibrowser:n.BROWSER_TYPE_HUAWEI};"qqbrowser"!==e&&"mqqbrowser"!==e||c.match(/wechat|micromessenger/i)&&(e=n.BROWSER_TYPE_WECHAT),n.browserType=i[e]||e})(),n.browserVersion="",(e=c.match(/(mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|uc|ucbs|360 aphone|360|baiduboxapp|baidu|maxthon|mxbrowser|miui(?:.hybrid)?)(mobile)?(browser)?\/?([\d.]+)/i))||(e=c.match(/(qq|chrome|safari|firefox|trident|opera|opr\/|oupeng)(mobile)?(browser)?\/?([\d.]+)/i)),n.browserVersion=e?e[4]:"";var v=window.innerWidth||document.documentElement.clientWidth,g=window.innerHeight||document.documentElement.clientHeight,m=window.devicePixelRatio||1;n.windowPixelResolution={width:m*v,height:m*g},n._checkWebGLRenderMode=function(){if(cc.game.renderType!==cc.game.RENDER_TYPE_WEBGL)throw new Error("This feature supports WebGL render mode only.")};var y=document.createElement("canvas");try{var T=n.localStorage=r.localStorage;T.setItem("storage",""),T.removeItem("storage"),T=null}catch(w){var E=function(){cc.warnID(5200)};n.localStorage={getItem:E,setItem:E,removeItem:E,clear:E}}var A=y.toDataURL("image/webp").startsWith("data:image/webp"),C=!!y.getContext("2d"),x=!1;r.WebGLRenderingContext&&(x=!0);var b,S=n.capabilities={canvas:C,opengl:x,webp:A,imageBitmap:!1};"undefined"!=typeof createImageBitmap&&"undefined"!=typeof Blob&&(y.width=y.height=2,createImageBitmap(y,{}).then((function(t){S.imageBitmap=!0,t.close&&t.close()})).catch((function(){}))),(void 0!==o.ontouchstart||void 0!==a.ontouchstart||s.msPointerEnabled)&&(S.touches=!0),void 0!==o.onmouseup&&(S.mouse=!0),void 0!==o.onkeyup&&(S.keyboard=!0),(r.DeviceMotionEvent||r.DeviceOrientationEvent)&&(S.accelerometer=!0),(function(){n.browserVersion;var t=!!(window.AudioContext||window.webkitAudioContext||window.mozAudioContext);b={ONLY_ONE:!1,WEB_AUDIO:t,DELAY_CREATE_CTX:!1},n.os===n.OS_IOS&&(b.USE_LOADER_EVENT="loadedmetadata"),n.browserType===n.BROWSER_TYPE_FIREFOX&&(b.DELAY_CREATE_CTX=!0,b.USE_LOADER_EVENT="canplay"),n.os===n.OS_ANDROID&&n.browserType===n.BROWSER_TYPE_UC&&(b.ONE_SOURCE=!0)})();try{b.WEB_AUDIO&&(b.context=new(window.AudioContext||window.webkitAudioContext||window.mozAudioContext),b.DELAY_CREATE_CTX&&setTimeout((function(){b.context=new(window.AudioContext||window.webkitAudioContext||window.mozAudioContext)}),0))}catch(I){b.WEB_AUDIO=!1,cc.logID(5201)}var R=[];(t=document.createElement("audio")).canPlayType&&(t.canPlayType('audio/ogg; codecs="vorbis"')&&R.push(".ogg"),t.canPlayType("audio/mpeg")&&R.push(".mp3"),t.canPlayType('audio/wav; codecs="1"')&&R.push(".wav"),t.canPlayType("audio/mp4")&&R.push(".mp4"),t.canPlayType("audio/x-m4a")&&R.push(".m4a")),b.format=R,n.__audioSupport=b}return n.NetworkType={NONE:0,LAN:1,WWAN:2},n.getNetworkType=function(){return n.NetworkType.LAN},n.getBatteryLevel=function(){return 1},n.garbageCollect=function(){},n.restartVM=function(){},n.isObjectValid=function(t){return!!t},n.dump=function(){var t="";t+="isMobile : "+this.isMobile+"\r\n",t+="language : "+this.language+"\r\n",t+="browserType : "+this.browserType+"\r\n",t+="browserVersion : "+this.browserVersion+"\r\n",t+="capabilities : "+JSON.stringify(this.capabilities)+"\r\n",t+="os : "+this.os+"\r\n",t+="osVersion : "+this.osVersion+"\r\n",t+="platform : "+this.platform+"\r\n",t+="Using "+(cc.game.renderType===cc.game.RENDER_TYPE_WEBGL?"WEBGL":"CANVAS")+" renderer.\r\n",cc.log(t)},n.openURL=function(t){window.open(t)},n.now=function(){return Date.now?Date.now():+new Date},n})();e.exports=n}),{}],159:[(function(t,e){"use strict";var i=t("../event/event-target"),n=t("../platform/js"),r=t("../renderer");t("../platform/CCClass");var s={init:function(){this.html=document.getElementsByTagName("html")[0]},availWidth:function(t){return t&&t!==this.html?t.clientWidth:window.innerWidth},availHeight:function(t){return t&&t!==this.html?t.clientHeight:window.innerHeight},meta:{width:"device-width"},adaptationType:cc.sys.browserType};switch(cc.sys.os===cc.sys.OS_IOS&&(s.adaptationType=cc.sys.BROWSER_TYPE_SAFARI),s.adaptationType){case cc.sys.BROWSER_TYPE_SAFARI:case cc.sys.BROWSER_TYPE_SOUGOU:case cc.sys.BROWSER_TYPE_UC:s.meta["minimal-ui"]="true",s.availWidth=function(t){return t.clientWidth},s.availHeight=function(t){return t.clientHeight}}var a=null,o=function(){i.call(this);var t=this,e=cc.ContainerStrategy,n=cc.ContentStrategy;s.init(this),t._frameSize=cc.size(0,0),t._designResolutionSize=cc.size(0,0),t._originalDesignResolutionSize=cc.size(0,0),t._scaleX=1,t._scaleY=1,t._viewportRect=cc.rect(0,0,0,0),t._visibleRect=cc.rect(0,0,0,0),t._autoFullScreen=!1,t._devicePixelRatio=1,t._maxPixelRatio=2,t._retinaEnabled=!1,t._resizeCallback=null,t._resizing=!1,t._resizeWithBrowserSize=!1,t._orientationChanging=!0,t._isRotated=!1,t._orientation=cc.macro.ORIENTATION_AUTO,t._isAdjustViewport=!0,t._antiAliasEnabled=!1,t._resolutionPolicy=null,t._rpExactFit=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.EXACT_FIT),t._rpShowAll=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.SHOW_ALL),t._rpNoBorder=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.NO_BORDER),t._rpFixedHeight=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.FIXED_HEIGHT),t._rpFixedWidth=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.FIXED_WIDTH),cc.game.once(cc.game.EVENT_ENGINE_INITED,this.init,this)};cc.js.extend(o,i),cc.js.mixin(o.prototype,{init:function(){this._initFrameSize();var t=cc.game.canvas.width,e=cc.game.canvas.height;this._designResolutionSize.width=t,this._designResolutionSize.height=e,this._originalDesignResolutionSize.width=t,this._originalDesignResolutionSize.height=e,this._viewportRect.width=t,this._viewportRect.height=e,this._visibleRect.width=t,this._visibleRect.height=e,cc.winSize.width=this._visibleRect.width,cc.winSize.height=this._visibleRect.height,cc.visibleRect&&cc.visibleRect.init(this._visibleRect)},_resizeEvent:function(t){var e;e=this.setDesignResolutionSize?this:cc.view;var i=cc.sys;if(i.browserType!==i.BROWSER_TYPE_UC||i.os!==i.OS_IOS){var n=e._frameSize.width,r=e._frameSize.height,s=e._isRotated;if(cc.sys.isMobile){var a=cc.game.container.style,o=a.margin;a.margin="0",a.display="none",e._initFrameSize(),a.margin=o,a.display="block"}else e._initFrameSize();if(!0===t||e._isRotated!==s||e._frameSize.width!==n||e._frameSize.height!==r){var c=e._originalDesignResolutionSize.width,u=e._originalDesignResolutionSize.height;e._resizing=!0,c>0&&e.setDesignResolutionSize(c,u,e._resolutionPolicy),e._resizing=!1,e.emit("canvas-resize"),e._resizeCallback&&e._resizeCallback.call()}}else setTimeout((function(){e._resizeEvent(t)}),0)},_orientationChange:function(){cc.view._orientationChanging=!0,cc.view._resizeEvent(),cc.sys.browserType===cc.sys.BROWSER_TYPE_SAFARI&&cc.sys.isMobile&&setTimeout((function(){window.innerHeight>window.innerWidth&&window.scrollTo(0,1)}),500)},_resize:function(){cc.view._resizeEvent(!1)},resizeWithBrowserSize:function(t){t?this._resizeWithBrowserSize||(this._resizeWithBrowserSize=!0,window.addEventListener("resize",this._resize),window.addEventListener("orientationchange",this._orientationChange)):this._resizeWithBrowserSize&&(this._resizeWithBrowserSize=!1,window.removeEventListener("resize",this._resize),window.removeEventListener("orientationchange",this._orientationChange))},setResizeCallback:function(t){"function"!=typeof t&&null!=t||(this._resizeCallback=t)},setOrientation:function(t){if((t&=cc.macro.ORIENTATION_AUTO)&&this._orientation!==t){this._orientation=t;var e=this._originalDesignResolutionSize.width,i=this._originalDesignResolutionSize.height;this.setDesignResolutionSize(e,i,this._resolutionPolicy)}},_initFrameSize:function(){var t=this._frameSize,e=s.availWidth(cc.game.frame),i=s.availHeight(cc.game.frame),n=e>=i;!cc.sys.isMobile||n&&this._orientation&cc.macro.ORIENTATION_LANDSCAPE||!n&&this._orientation&cc.macro.ORIENTATION_PORTRAIT?(t.width=e,t.height=i,cc.game.container.style["-webkit-transform"]="rotate(0deg)",cc.game.container.style.transform="rotate(0deg)",this._isRotated=!1):(t.width=i,t.height=e,cc.game.container.style["-webkit-transform"]="rotate(90deg)",cc.game.container.style.transform="rotate(90deg)",cc.game.container.style["-webkit-transform-origin"]="0px 0px 0px",cc.game.container.style.transformOrigin="0px 0px 0px",this._isRotated=!0),this._orientationChanging&&setTimeout((function(){cc.view._orientationChanging=!1}),1e3)},_setViewportMeta:function(t,e){var i=document.getElementById("cocosMetaElement");i&&e&&document.head.removeChild(i);var n,r,s,a=document.getElementsByName("viewport"),o=a?a[0]:null;for(r in n=o?o.content:"",(i=i||document.createElement("meta")).id="cocosMetaElement",i.name="viewport",i.content="",t)-1==n.indexOf(r)?n+=","+r+"="+t[r]:e&&(s=new RegExp(r+"s*=s*[^,]+"),n=n.replace(s,r+"="+t[r]));/^,/.test(n)&&(n=n.substr(1)),i.content=n,o&&(o.content=n),document.head.appendChild(i)},_adjustViewportMeta:function(){this._isAdjustViewport&&(this._setViewportMeta(s.meta,!1),this._isAdjustViewport=!1)},adjustViewportMeta:function(t){this._isAdjustViewport=t},enableRetina:function(t){this._retinaEnabled=!!t},isRetinaEnabled:function(){return this._retinaEnabled},enableAntiAlias:function(t){if(cc.warnID(9200),this._antiAliasEnabled!==t)if(this._antiAliasEnabled=t,cc.game.renderType===cc.game.RENDER_TYPE_WEBGL)cc.assetManager.assets.forEach((function(e){if(e instanceof cc.Texture2D){var i=cc.Texture2D.Filter;t?e.setFilters(i.LINEAR,i.LINEAR):e.setFilters(i.NEAREST,i.NEAREST)}}));else if(cc.game.renderType===cc.game.RENDER_TYPE_CANVAS){var e=cc.game.canvas.getContext("2d");e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t}},isAntiAliasEnabled:function(){return this._antiAliasEnabled},enableAutoFullScreen:function(t){t&&t!==this._autoFullScreen&&cc.sys.isMobile?(this._autoFullScreen=!0,cc.screen.autoFullScreen(cc.game.frame)):(this._autoFullScreen=!1,cc.screen.disableAutoFullScreen(cc.game.frame))},isAutoFullScreenEnabled:function(){return this._autoFullScreen},setCanvasSize:function(t,e){var i=cc.game.canvas,n=cc.game.container;i.width=t*this._devicePixelRatio,i.height=e*this._devicePixelRatio,i.style.width=t+"px",i.style.height=e+"px",n.style.width=t+"px",n.style.height=e+"px",this._resizeEvent()},getCanvasSize:function(){return cc.size(cc.game.canvas.width,cc.game.canvas.height)},getFrameSize:function(){return cc.size(this._frameSize.width,this._frameSize.height)},setFrameSize:function(t,e){this._frameSize.width=t,this._frameSize.height=e,cc.game.frame.style.width=t+"px",cc.game.frame.style.height=e+"px",this._resizeEvent(!0)},getVisibleSize:function(){return cc.size(this._visibleRect.width,this._visibleRect.height)},getVisibleSizeInPixel:function(){return cc.size(this._visibleRect.width*this._scaleX,this._visibleRect.height*this._scaleY)},getVisibleOrigin:function(){return cc.v2(this._visibleRect.x,this._visibleRect.y)},getVisibleOriginInPixel:function(){return cc.v2(this._visibleRect.x*this._scaleX,this._visibleRect.y*this._scaleY)},getResolutionPolicy:function(){return this._resolutionPolicy},setResolutionPolicy:function(t){var e=this;if(t instanceof cc.ResolutionPolicy)e._resolutionPolicy=t;else{var i=cc.ResolutionPolicy;t===i.EXACT_FIT&&(e._resolutionPolicy=e._rpExactFit),t===i.SHOW_ALL&&(e._resolutionPolicy=e._rpShowAll),t===i.NO_BORDER&&(e._resolutionPolicy=e._rpNoBorder),t===i.FIXED_HEIGHT&&(e._resolutionPolicy=e._rpFixedHeight),t===i.FIXED_WIDTH&&(e._resolutionPolicy=e._rpFixedWidth)}},setDesignResolutionSize:function(t,e,i){if(t>0&&e>0){this.setResolutionPolicy(i);var n=this._resolutionPolicy;if(n&&n.preApply(this),cc.sys.isMobile&&this._adjustViewportMeta(),this._orientationChanging=!0,this._resizing||this._initFrameSize(),n){this._originalDesignResolutionSize.width=this._designResolutionSize.width=t,this._originalDesignResolutionSize.height=this._designResolutionSize.height=e;var s=n.apply(this,this._designResolutionSize);if(s.scale&&2===s.scale.length&&(this._scaleX=s.scale[0],this._scaleY=s.scale[1]),s.viewport){var a=this._viewportRect,o=this._visibleRect,c=s.viewport;a.x=c.x,a.y=c.y,a.width=c.width,a.height=c.height,o.x=0,o.y=0,o.width=c.width/this._scaleX,o.height=c.height/this._scaleY}n.postApply(this),cc.winSize.width=this._visibleRect.width,cc.winSize.height=this._visibleRect.height,cc.visibleRect&&cc.visibleRect.init(this._visibleRect),r.updateCameraViewport(),cc.internal.inputManager._updateCanvasBoundingRect(),this.emit("design-resolution-changed")}else cc.logID(2201)}else cc.errorID(2200)},getDesignResolutionSize:function(){return cc.size(this._designResolutionSize.width,this._designResolutionSize.height)},setRealPixelResolution:function(t,e,i){this._setViewportMeta({width:t},!0),document.documentElement.style.width=t+"px",document.body.style.width=t+"px",document.body.style.left="0px",document.body.style.top="0px",this.setDesignResolutionSize(t,e,i)},setViewportInPoints:function(t,e,i,n){var r=this._scaleX,s=this._scaleY;cc.game._renderContext.viewport(t*r+this._viewportRect.x,e*s+this._viewportRect.y,i*r,n*s)},setScissorInPoints:function(t,e,i,n){var r=this._scaleX,s=this._scaleY,o=Math.ceil(t*r+this._viewportRect.x),c=Math.ceil(e*s+this._viewportRect.y),u=Math.ceil(i*r),l=Math.ceil(n*s),h=cc.game._renderContext;if(!a){var _=h.getParameter(h.SCISSOR_BOX);a=cc.rect(_[0],_[1],_[2],_[3])}a.x===o&&a.y===c&&a.width===u&&a.height===l||(a.x=o,a.y=c,a.width=u,a.height=l,h.scissor(o,c,u,l))},isScissorEnabled:function(){return cc.game._renderContext.isEnabled(gl.SCISSOR_TEST)},getScissorRect:function(){if(!a){var t=gl.getParameter(gl.SCISSOR_BOX);a=cc.rect(t[0],t[1],t[2],t[3])}var e=1/this._scaleX,i=1/this._scaleY;return cc.rect((a.x-this._viewportRect.x)*e,(a.y-this._viewportRect.y)*i,a.width*e,a.height*i)},getViewportRect:function(){return this._viewportRect},getScaleX:function(){return this._scaleX},getScaleY:function(){return this._scaleY},getDevicePixelRatio:function(){return this._devicePixelRatio},convertToLocationInView:function(t,e,i,n){var r=n||cc.v2(),s=i.adjustedLeft?i.adjustedLeft:i.left,a=i.adjustedTop?i.adjustedTop:i.top,o=this._devicePixelRatio*(t-s),c=this._devicePixelRatio*(a+i.height-e);return this._isRotated?(r.x=cc.game.canvas.width-c,r.y=o):(r.x=o,r.y=c),r},_convertMouseToLocationInView:function(t,e){var i=this._viewportRect;t.x=(this._devicePixelRatio*(t.x-e.left)-i.x)/this._scaleX,t.y=(this._devicePixelRatio*(e.top+e.height-t.y)-i.y)/this._scaleY},_convertPointWithScale:function(t){var e=this._viewportRect;t.x=(t.x-e.x)/this._scaleX,t.y=(t.y-e.y)/this._scaleY},_convertTouchesWithScale:function(t){for(var e,i,n,r=this._viewportRect,s=this._scaleX,a=this._scaleY,o=0;o=0;n--){var s=i[n];s.hasOwnProperty("__attrs__")&&s.__attrs__||r(s,(e=i[n+1])&&e.__attrs__)}return r(t,(e=i[0])&&e.__attrs__),t.__attrs__}function a(t){return t.hasOwnProperty("__attrs__")&&t.__attrs__||s(t)}function o(t,e){this.name=t,this.default=e}o.prototype.toString=function(){return this.name},cc.Integer=new o("Integer",0),cc.Float=new o("Float",0),cc.Boolean=new o("Boolean",!1),cc.String=new o("String",""),e.exports={PrimitiveType:o,attr:function(t,e){var i=a(t),r=e+n,s={};for(var o in i)o.startsWith(r)&&(s[o.slice(r.length)]=i[o]);return s},getClassAttrs:a,setClassAttr:function(t,e,i,r){a(t)[e+n+i]=r},DELIMETER:n,getTypeChecker_ET:!1,getObjTypeChecker_ET:!1,ScriptUuid:{}}}),{"./CCClass":149,"./js":170,"./utils":173}],162:[(function(t,e){"use strict";var i=t("./js"),n=i.array.fastRemoveAt;function r(){}function s(){this.callback=r,this.target=void 0,this.once=!1}s.prototype.set=function(t,e,i){this.callback=t,this.target=e,this.once=!!i};var a=new i.Pool(function(t){return t.callback=r,t.target=void 0,t.once=!1,!0},32);function o(){this.callbackInfos=[],this.isInvoking=!1,this.containCanceled=!1}a.get=function(){return this._get()||new s};var c=o.prototype;c.removeByCallback=function(t){for(var e=0;e=0;--t)this.callbackInfos[t]||n(this.callbackInfos,t);this.containCanceled=!1},c.clear=function(){this.cancelAll(),this.callbackInfos.length=0,this.isInvoking=!1,this.containCanceled=!1};var u=new i.Pool(function(t){return t.callbackInfos=[],t.isInvoking=!1,t.containCanceled=!1,!0},16);function l(){this._callbackTable=i.createMap(!0)}u.get=function(){return this._get()||new o},(c=l.prototype).on=function(t,e,i,n){var r=this._callbackTable[t];r||(r=this._callbackTable[t]=u.get());var s=a.get();s.set(e,i,n),r.callbackInfos.push(s)},c.hasEventListener=function(t,e,i){var n=this._callbackTable[t];if(!n)return!1;var r=n.callbackInfos;if(!e){if(n.isInvoking){for(var s=0;s0}for(var a=0;a=0?a[i[c]]=o:a[~c]=o}for(;r=0?u[i[h]]=l:u[~h]=l}}function A(t,e){for(var i=t[4][e[0]],n=i[0],r=new(0,n[0]),s=n[1],a=n[2],o=i[i.length-1],c=1;c=0?e[i]=t[5][n]:t[7][3*~n]=e}function b(t){return function(e,i,n,r){i[n]=r;for(var s=0;s=0){var h=o[u];e[a]=C(t,h,l)}else(0,w[u=~u])(t,e,a,l)}return r}function M(t,e){return t||N.reportMissingClass(e),Object}function O(t,e,i,n,r,s){var a=t(e);if(!a){if(r)return void(i[n]=(function(e,i,n){return function(){var r=t(n)||M(s,n);return e[i]=r,new r}})(i,n,e));a=M(s,e)}i[n]=a}function D(t,e,i){for(var r=i||n.default._getClassById,s=t[3],a=0;a=0?i[u]:~u,s[o]=u);var l=a[o];"number"==typeof l&&(a[o]=n[l])}}function N(t,e,i){"string"==typeof t&&(t=JSON.parse(t));var n=!e;(e=e||T.pool.get()).init(t),i=i||{};var r=t[0],s=!1;if("object"==typeof r&&(s=r.preprocessed,r=r.version),r0&&(i=_+this.globalVariables.join(",")+";");var n=c.flattenCodeArray(["return (function(R){",i||[],this.codeArray,"return o;","})"]);this.result=Function("O","F",n)(this.objs,this.funcs);for(var r=0,s=this.objsToClear_iN$t.length;r1)t.push(d+"="+this._targetExp+";"),e=d;else{if(1!==this._exps.length)return;e=this._targetExp}for(var i=0;i=0&&(_(t,i),!0)}function d(t,e){void 0===e&&(e=t,t=null),this.get=null,this.count=0,this._pool=new Array(e),this._cleanup=t}s.formatStr=function(){var t=arguments.length;if(0===t)return"";var e=arguments[0];if(1===t)return""+e;var i="string"==typeof e&&l.test(e);if(i)for(var n=1;n=0&&(t[i]=t[t.length-1],--t.length)},removeAt:_,fastRemoveAt:function(t,e){var i=t.length;e<0||e>=i||(t[e]=t[i-1],t.length=i-1)},contains:function(t,e){return t.indexOf(e)>=0},verifyType:function(t,e){if(t&&t.length>0)for(var i=0;i0){--this.count;var t=this._pool[this.count];return this._pool[this.count]=null,t}return null},d.prototype.put=function(t){var e=this._pool;if(this.count=0&&(this._pool.length=t,this.count>t&&(this.count=t))},s.Pool=d,cc.js=s,e.exports=s}),{"../utils/mutable-forward-iterator":224,"./id-generater":166}],171:[(function(t,e,i){"use strict";var n=t("./js"),r=t("./attribute"),s={default:{},serializable:{},editorOnly:{},formerlySerializedAs:{}};function a(t,e,i,n){if(!t.get&&!t.set&&t.hasOwnProperty("default")){var r="_N$"+e;t.get=function(){return this[r]},t.set=function(t){var e=this[r];this[r]=t,i.call(this,e)};var a={};for(var o in n[r]=a,s){var c=s[o];t.hasOwnProperty(o)&&(a[o]=t[o],c.canUsedInGet||delete t[o])}}}function o(t,e,i,n){if(Array.isArray(e)){if(!(e.length>0))return cc.errorID(5508,i,n);t.type=e=e[0]}"function"==typeof e&&(e===String?t.type=cc.String:e===Boolean?t.type=cc.Boolean:e===Number&&(t.type=cc.Float))}function c(t,e,i){var n=t?{_short:!0}:{_short:!0,default:e};return i&&(n.type=i),n}i.getFullFormOfProperty=function(t,e){return t&&t.constructor===Object?null:Array.isArray(t)&&t.length>0?c(e,[],t):"function"==typeof t?c(e,n.isChildClassOf(t,cc.ValueType)?new t:null,t):t instanceof r.PrimitiveType?c(e,t.default):c(e,t)},i.preprocessAttrs=function(t,e){for(var n in t){var r=t[n],s=i.getFullFormOfProperty(r,!1);if(s&&(r=t[n]=s),r){var c=r.notify;c&&a(r,n,c,t),"type"in r&&o(r,r.type,e,n)}}},i.validateMethodWithProps=function(t){return"function"==typeof t||null===t}}),{"./CCClass":149,"./attribute":161,"./js":170}],172:[(function(){"use strict";var t=[];cc._RF={push:function(e,i,n){void 0===n&&(n=i,i=""),t.push({uuid:i,script:n,module:e,exports:e.exports,beh:null})},pop:function(){var e=t.pop(),i=e.module,n=i.exports;if(n===e.exports){for(var r in n)return;i.exports=n=e.cls}},peek:function(){return t[t.length-1]}}}),{}],173:[(function(t,e){"use strict";t("./js"),e.exports={contains:function(t,e){if("function"==typeof t.contains)return t.contains(e);if("function"==typeof t.compareDocumentPosition)return!!(16&t.compareDocumentPosition(e));var i=e.parentNode;if(i)do{if(i===t)return!0;i=i.parentNode}while(null!==i);return!1},isDomNode:"object"==typeof window&&("function"==typeof Node?function(t){return t instanceof Node}:function(t){return t&&"object"==typeof t&&"number"==typeof t.nodeType&&"string"==typeof t.nodeName}),callInNextTick:function(t,e,i){t&&setTimeout((function(){t(e,i)}),0)}}}),{"./js":170}],174:[(function(t){"use strict";t("./platform/js"),t("./value-types"),t("./utils"),t("./platform/CCInputManager"),t("./platform/CCInputExtension"),t("./event"),t("./platform/CCSys"),t("./platform/CCMacro"),t("./asset-manager"),t("./CCDirector"),t("./renderer"),t("./platform/CCView"),t("./platform/CCScreen"),t("./CCScheduler"),t("./event-manager")}),{"./CCDirector":23,"./CCScheduler":28,"./asset-manager":46,"./event":134,"./event-manager":130,"./platform/CCInputExtension":152,"./platform/CCInputManager":153,"./platform/CCMacro":154,"./platform/CCScreen":157,"./platform/CCSys":158,"./platform/CCView":159,"./platform/js":170,"./renderer":180,"./utils":222,"./value-types":238}],175:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("./assembler")),r=a(t("./utils/dynamic-atlas/manager")),s=a(t("./webgl/render-data"));function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i>2,c=s._vData;n.length+o>c.length?c.set(n.subarray(0,c.length-o),o):c.set(n,o);for(var u=s._iData,l=a.indiceOffset,h=a.vertexOffset,_=0,f=r.length;_this.maxSize||(this._clean(t),i[e].push(t),this.count++)}},r.get=function(t){var e;if(this.enabled){var i=this._pool,n=o(t);e=i[n]&&i[n].pop()}return e?this.count--:e=new t,e},r.clear=function(){this._pool={},this.count=0},r._clean=function(t){t._renderComp=null},n}(r.default));r.default.register("assembler",c);var u=c;i.default=u,e.exports=i.default}),{"../utils/pool":225}],177:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./webgl/vertex-format"),s=(n=t("./assembler-pool"))&&n.__esModule?n:{default:n},a=(function(){function t(){this._extendNative&&this._extendNative()}var e=t.prototype;return e.init=function(t){this._renderComp=t},e.updateRenderData=function(){},e.fillBuffers=function(){},e.getVfmt=function(){return r.vfmtPosUvColor},t})();i.default=a,a.register=function(t,e){t.__assembler__=e},a.init=function(t){for(var e=t.constructor,i=e.__assembler__;!i;){if(!(e=e.$super))return void cc.warn("Can not find assembler for render component : ["+cc.js.getClassName(t)+"]");i=e.__assembler__}if(i.getConstructor&&(i=i.getConstructor(t)),!t._assembler||t._assembler.constructor!==i){var n=s.default.get(i);n.init(t),t._assembler=n}},cc.Assembler=a,e.exports=i.default}),{"./assembler-pool":176,"./webgl/vertex-format":213}],178:[(function(t,e){"use strict";var i=function(t){var e;try{e=t.getContext("2d")}catch(i){return void console.error(i)}this._canvas=t,this._ctx=e,this._caps={},this._stats={drawcalls:0},this._vx=this._vy=this._vw=this._vh=0,this._sx=this._sy=this._sw=this._sh=0};i.prototype._restoreTexture=function(){},i.prototype.setViewport=function(t,e,i,n){this._vx===t&&this._vy===e&&this._vw===i&&this._vh===n||(this._vx=t,this._vy=e,this._vw=i,this._vh=n)},i.prototype.setScissor=function(t,e,i,n){this._sx===t&&this._sy===e&&this._sw===i&&this._sh===n||(this._sx=t,this._sy=e,this._sw=i,this._sh=n)},i.prototype.clear=function(t){var e=this._ctx;e.clearRect(this._vx,this._vy,this._vw,this._vh),!t||0===t[0]&&0===t[1]&&0===t[2]||(e.fillStyle="rgb("+t[0]+","+t[1]+","+t[2]+")",e.globalAlpha=t[3],e.fillRect(this._vx,this._vy,this._vw,this._vh))},i.prototype.resetDrawCalls=function(){this._stats.drawcalls=0},i.prototype.getDrawCalls=function(){return this._stats.drawcalls},e.exports=i}),{}],179:[(function(t,e){"use strict";var i=function(t,e){this._device=t,this._width=4,this._height=4,this._image=null,e&&(void 0!==e.width&&(this._width=e.width),void 0!==e.height&&(this._height=e.height),this.updateImage(e))};i.prototype.update=function(t){this.updateImage(t)},i.prototype.updateImage=function(t){if(t.images&&t.images[0]){var e=t.images[0];e&&e!==this._image&&(this._image=e)}},i.prototype.destroy=function(){this._image=null},e.exports=i}),{}],180:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("../../renderer/gfx")),r=a(t("../../renderer/core/input-assembler")),s=a(t("../../renderer/core/pass"));function a(t){return t&&t.__esModule?t:{default:t}}var o=cc.renderer={Texture2D:null,InputAssembler:r.default,Pass:s.default,renderEngine:null,canvas:null,device:null,scene:null,drawCalls:0,_handle:null,_cameraNode:null,_camera:null,_forward:null,_flow:null,initWebGL:function(e,i){t("./webgl/assemblers");var r=t("./webgl/model-batcher");this.Texture2D=n.default.Texture2D,this.canvas=e,this._flow=cc.RenderFlow;var s=t("../../renderer/scene/scene"),a=t("../../renderer/renderers/forward-renderer");this.device=new n.default.Device(e,i),this.scene=new s;var o,c=(o=this.device,{defaultTexture:new n.default.Texture2D(o,{images:[],width:128,height:128,wrapS:n.default.WRAP_REPEAT,wrapT:n.default.WRAP_REPEAT,format:n.default.TEXTURE_FMT_RGB8,genMipmaps:!1}),programTemplates:[],programChunks:{}});this._forward=new a(this.device,c),this._handle=new r(this.device,this.scene),this._flow.init(this._handle,this._forward)},initCanvas:function(e){var i=t("./canvas"),n=t("./canvas/Texture2D"),r=t("./canvas/Device");this.Device=r,this.Texture2D=n,this.canvas=e,this.device=new r(e),this._camera={a:1,b:0,c:0,d:1,tx:0,ty:0},this._handle=new i.RenderComponentHandle(this.device,this._camera),this._forward=new i.ForwardRenderer,this._flow=cc.RenderFlow,this._flow.init(this._handle,this._forward)},updateCameraViewport:function(){if(cc.director){var t=cc.director.getScene();t&&t.setScale(1,1,1)}if(cc.game.renderType===cc.game.RENDER_TYPE_CANVAS){var e=cc.view.getViewportRect();this.device.setViewport(e.x,e.y,e.width,e.height),this._camera.a=cc.view.getScaleX(),this._camera.d=cc.view.getScaleY(),this._camera.tx=e.x,this._camera.ty=e.y+e.height}},render:function(t,e){this.device.resetDrawCalls(),t&&(this._flow.render(t,e),this.drawCalls=this.device.getDrawCalls())},clear:function(){this._handle.reset(),this._forward.clear()}};i.default=o,e.exports=i.default}),{"../../renderer/core/input-assembler":255,"../../renderer/core/pass":256,"../../renderer/gfx":265,"../../renderer/renderers/forward-renderer":284,"../../renderer/scene/scene":287,"./canvas":void 0,"./canvas/Device":178,"./canvas/Texture2D":179,"./webgl/assemblers":192,"./webgl/model-batcher":209}],181:[(function(t,e){"use strict";var i,n,r=0,s=1<0;)i&t&&(e=C(i,e)),i>>=1;return e}function b(t){var e=t._renderFlag;(A[e]=x(e))._func(t)}y.flows=A,y.createFlow=C;var S=[];y.registerValidate=function(t){t._inValidateList||(S.push(t),t._inValidateList=!0)},y.validateRenderers=function(){for(var t=0,e=S.length;tthis._width&&(this._x=n,this._y=this._nexty),this._y+c+n>this._nexty&&(this._nexty=this._y+c+n),this._nexty>this._height)return null;cc.dynamicAtlasManager.textureBleeding&&((o<=8||c<=8)&&(this._texture.drawTextureAt(i,this._x-1,this._y-1),this._texture.drawTextureAt(i,this._x-1,this._y+1),this._texture.drawTextureAt(i,this._x+1,this._y-1),this._texture.drawTextureAt(i,this._x+1,this._y+1)),this._texture.drawTextureAt(i,this._x-1,this._y),this._texture.drawTextureAt(i,this._x+1,this._y),this._texture.drawTextureAt(i,this._x,this._y-1),this._texture.drawTextureAt(i,this._x,this._y+1)),this._texture.drawTextureAt(i,this._x,this._y),this._innerTextureInfos[i._id]={x:this._x,y:this._y,texture:i},this._count++,s+=this._x,a+=this._y,this._x+=o+n,this._dirty=!0}var u={x:s,y:a,texture:this._texture};return this._innerSpriteFrames.push(t),u},update:function(){this._dirty&&(this._texture.update(),this._dirty=!1)},deleteInnerTexture:function(t){t&&this._innerTextureInfos[t._id]&&(delete this._innerTextureInfos[t._id],this._count--)},isEmpty:function(){return this._count<=0},reset:function(){this._x=n,this._y=n,this._nexty=n;for(var t=this._innerSpriteFrames,e=0,i=t.length;e=0;e--)n[e].deleteInnerTexture(t),n[e].isEmpty()&&(n[e].destroy(),n.splice(e,1),r--)},showDebug:function(t){if(t){if(!u||!u.isValid){var e=cc.visibleRect.width,i=cc.visibleRect.height;(u=new cc.Node("DYNAMIC_ATLAS_DEBUG_NODE")).width=e,u.height=i,u.x=e/2,u.y=i/2,u.zIndex=cc.macro.MAX_ZINDEX,u.parent=cc.director.getScene(),u.groupIndex=cc.Node.BuiltinGroupIndex.DEBUG,cc.Camera._setupDebugCamera();var s=u.addComponent(cc.ScrollView),o=new cc.Node("CONTENT"),c=o.addComponent(cc.Layout);c.type=cc.Layout.Type.VERTICAL,c.resizeMode=cc.Layout.ResizeMode.CONTAINER,o.parent=u,o.width=a,o.anchorY=1,o.x=a,s.content=o;for(var l=0;l<=r;l++){var h=new cc.Node("ATLAS"),_=(n[l]._texture,new cc.SpriteFrame);_.setTexture(n[l]._texture),h.addComponent(cc.Sprite).spriteFrame=_,h.parent=o}}return u}u&&(u.parent=null,u=null)},update:function(){if(this.enabled)for(var t=0;t<=r;t++)n[t].update()}};e.exports=cc.dynamicAtlasManager=f}),{"./atlas":182}],184:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../utils/text-utils"),o=t("../../../platform/CCMacro"),c=t("../../../components/CCLabel").Overflow,u=t("../utils").shareLabelInfo,l=function(){this.char="",this.valid=!0,this.x=0,this.y=0,this.line=0,this.hash=""},h=cc.rect(),_=null,f=[],d=[],p=[],v=[],g=null,m=0,y=0,T=0,E=0,A=0,C=1,x=null,b=cc.size(),S="",R=0,w=0,I=0,M=0,O=0,D=0,L=0,P=!1,N=0,F=0,B=0,U=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateRenderData=function(t){t._vertsDirty&&_!==t&&(_=t,this._reserveQuads(t,t.string.toString().length),this._updateFontFamily(t),this._updateProperties(t),this._updateLabelInfo(t),this._updateContent(),this.updateWorldVerts(t),_._actualFontSize=R,_.node.setContentSize(b),_._vertsDirty=!1,_=null,this._resetProperties())},r._updateFontScale=function(){C=R/w},r._updateFontFamily=function(t){var e=t.font;x=e.spriteFrame,g=e._fntConfig,u.fontAtlas=e._fontDefDictionary,this.packToDynamicAtlas(t,x)},r._updateLabelInfo=function(){u.hash="",u.margin=0},r._updateProperties=function(t){S=t.string.toString(),R=t.fontSize,w=g?g.fontSize:t.fontSize,I=t.horizontalAlign,M=t.verticalAlign,O=t.spacingX,L=t.overflow,D=t._lineHeight,b.width=t.node.width,b.height=t.node.height,L===c.NONE?(P=!1,b.width+=2*u.margin,b.height+=2*u.margin):L===c.RESIZE_HEIGHT?(P=!0,b.height+=2*u.margin):P=t.enableWrapText,u.lineHeight=D,u.fontSize=R,this._setupBMFontOverflowMetrics()},r._resetProperties=function(){g=null,x=null,u.hash="",u.margin=0},r._updateContent=function(){this._updateFontScale(),this._computeHorizontalKerningForText(),this._alignText()},r._computeHorizontalKerningForText=function(){var t,e=S,i=e.length,n=f;if(g&&(t=g.kerningDict),t&&!cc.js.isEmptyObject(t))for(var r=-1,s=0;s0&&n>0&&V+_.w*C>B&&!a.isUnicodeSpace(T)){p.push(o),o=0,i++,n=0,r-=D*this._getFontScale()+0,U=!0;break}d.x=V,d.y=r-_.offsetY*C+u.margin,this._recordLetterInfo(d,T,k,i),k+1d.y-_.h*C&&(w=d.y-_.h*C)}else{this._recordPlaceholderInfo(k,T);var H="";g&&(H=g.atlasName),console.log("Can't find letter definition in texture atlas "+H+" for letter:"+T)}else this._recordPlaceholderInfo(k,T)}U||(n=M,lw&&(h=w),s<(o=I)&&(s=o),v+=x)}else p.push(o),o=0,i++,n=0,r-=D*this._getFontScale()+0,this._recordPlaceholderInfo(v,T),v++}return p.push(o),y=(m=i+1)*D*this._getFontScale(),m>1&&(y+=0*(m-1)),b.width=N,b.height=F,N<=0&&(b.width=parseFloat(s.toFixed(2))+2*u.margin),F<=0&&(b.height=parseFloat(y.toFixed(2))+2*u.margin),E=b.height,A=0,L!==c.CLAMP&&(l>0&&(E=b.height+l),h<-y&&(A=y+h)),!0},r._getFirstCharLen=function(){return 1},r._getFontScale=function(){return L===c.SHRINK?C:1},r._getFirstWordLen=function(t,e,i){var n=t.charAt(e);if(a.isUnicodeCJK(n)||"\n"===n||a.isUnicodeSpace(n))return 1;var r=1,s=u.fontAtlas.getLetterDefinitionForChar(n,u);if(!s)return r;for(var o=s.xAdvance*C+O,c=e+1;cB&&!a.isUnicodeSpace(n)&&B>0)return r;if(o+=s.xAdvance*C+O,"\n"===n||a.isUnicodeSpace(n)||a.isUnicodeCJK(n))break;r++}return r},r._multilineTextWrapByWord=function(){return this._multilineTextWrap(this._getFirstWordLen)},r._multilineTextWrapByChar=function(){return this._multilineTextWrap(this._getFirstCharLen)},r._recordPlaceholderInfo=function(t,e){if(t>=d.length){var i=new l;d.push(i)}d[t].char=e,d[t].hash=e.charCodeAt(0)+u.hash,d[t].valid=!1},r._recordLetterInfo=function(t,e,i,n){if(i>=d.length){var r=new l;d.push(r)}var s=e.charCodeAt(0)+u.hash;d[i].line=n,d[i].char=e,d[i].hash=s,d[i].valid=u.fontAtlas.getLetter(s).valid,d[i].x=t.x,d[i].y=t.y},r._alignText=function(){y=0,p.length=0,this._multilineTextWrapByWord(),this._computeAlignmentOffset(),L===c.SHRINK&&R>0&&this._isVerticalClamp()&&this._shrinkLabelToContentSize(this._isVerticalClamp),this._updateQuads()||L===c.SHRINK&&this._shrinkLabelToContentSize(this._isHorizontalClamp)},r._scaleFontSizeDown=function(t){var e=!0;t||(t=.1,e=!1),R=t,e&&this._updateContent()},r._shrinkLabelToContentSize=function(t){for(var e=0,i=0|R,n=0;e>1;if(r<=0)break;C=r/w,this._multilineTextWrapByWord(),this._computeAlignmentOffset(),t()?i=n-1:e=n}var s=e;s>=0&&this._scaleFontSizeDown(s)},r._isVerticalClamp=function(){return y>b.height},r._isHorizontalClamp=function(){for(var t=!1,e=0,i=S.length;e0)if(P){if(p[a]>b.width&&(s>b.width||s<0)){t=!0;break}}else if(s>b.width){t=!0;break}}}return t},r._isHorizontalClamped=function(t,e){var i=p[e],n=t>b.width||t<0;return P?i>b.width&&n:n},r._updateQuads=function(){var t=x?x._texture:u.fontAtlas.getTexture(),e=_.node;this.verticesCount=this.indicesCount=0,this._renderData&&(this._renderData.dataLength=0);for(var i=b,n=e._anchorPoint.x*i.width,r=e._anchorPoint.y*i.height,s=!0,a=0,o=S.length;a0){if(p>E){var g=p-E;h.y+=g,h.height-=g,p-=g}p-f.h*C0&&this._isHorizontalClamped(y,m))if(L===c.CLAMP)h.width=0;else if(L===c.SHRINK){if(b.width>f.w){s=!1;break}h.width=0}if(h.height>0&&h.width>0){var R=this._determineRect(h),w=l.x+v[l.line];this.appendQuad(_,t,h,R,w-n,p-r,C)}}}return this._quadsUpdated(_),s},r._determineRect=function(t){var e=x.isRotated(),i=x._originalSize,n=x._rect,r=x._offset,s=r.x+(i.width-n.width)/2,a=r.y-(i.height-n.height)/2;if(e){var o=t.x;t.x=n.x+n.height-t.y-t.height-a,t.y=o+n.y-s,t.y<0&&(t.height=t.height+a)}else t.x+=n.x-s,t.y+=n.y+a;return e},r._computeAlignmentOffset=function(){switch(v.length=0,I){case o.TextAlignment.LEFT:for(var t=0;t0){var u=e.out||v;t.strokeStyle="rgba("+u.r+", "+u.g+", "+u.b+", "+u.a/255+")",t.lineWidth=2*e.margin,t.strokeText(this._char,s,a)}t.fillText(this._char,s,a),this._texture.handleLoadedTexture()},destroy:function(){this._texture.destroy(),this._texture=null,a._canvasPool.put(this._data)}},cc.js.mixin(T.prototype,{insertLetterTexture:function(t){var e=t._texture,i=e.width,n=e.height;if(this._x+i+g>this._width&&(this._x=g,this._y=this._nexty),this._y+n>this._nexty&&(this._nexty=this._y+n+g),this._nexty>this._height)return null;this._fontDefDictionary._texture.drawTextureAt(e,this._x,this._y),this._dirty=!0;var r=new d;return r.u=this._x+1,r.v=this._y+1,r.texture=this._fontDefDictionary._texture,r.valid=!0,r.w=t._width-2,r.h=t._height-2,r.xAdvance=r.w,r.offsetY=t._offsetY,this._x+=i+g,this._fontDefDictionary.addLetterDefinitions(t._hash,r),r},update:function(){this._dirty&&(this._fontDefDictionary._texture.update(),this._dirty=!1)},reset:function(){this._x=g,this._y=g,this._nexty=g;for(var t=this._fontDefDictionary._letterDefinitions,e=0,i=t.length;e0&&(n=n+e.margin+e.out.toHEX()),""+e.fontSize+e.fontFamily+i+n)},r._getFontDesc=function(){return f.fontSize.toString()+"px "+f.fontFamily},r._computeHorizontalKerningForText=function(){},r._determineRect=function(){return!1},n})(r.default);i.default=A,e.exports=i.default}),{"../../../assets/CCRenderTexture":66,"../../../components/CCComponent":101,"../../../components/CCLabel":103,"../../../components/CCLabelOutline":void 0,"../../../utils/text-utils":230,"../../webgl/assemblers/label/2d/bmfont":193,"../utils":188}],187:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a,o=t("../../../utils/text-utils"),c=t("../../../platform/CCMacro"),u=t("../../../components/CCLabel"),l=t("../../../components/CCLabelOutline"),h=t("../../../components/CCLabelShadow"),_=u.Overflow,f=t("../utils").deleteFromDynamicAtlas,d=t("../utils").getFontFamily,p=(1/255).toFixed(3),v=null,g=null,m=null,y="",T="",E=0,A=0,C=[],x=cc.Size.ZERO,b=0,S=0,R=0,w=null,I="",M=_.NONE,O=!1,D=!1,L=null,P=cc.Color.WHITE,N=null,F=cc.Color.BLACK,B=cc.rect(),U=cc.Size.ZERO,z=cc.Size.ZERO,k=!1,V=!1,H=!1,W=0,G=cc.Vec2.ZERO,j=0,Y=["left","center","right"],X=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r._getAssemblerData=function(){return(a=u._canvasPool.get()).canvas.width=a.canvas.height=1,a},r._resetAssemblerData=function(t){t&&u._canvasPool.put(t)},r.updateRenderData=function(e){t.prototype.updateRenderData.call(this,e),e._vertsDirty&&(this._updateProperties(e),this._calculateLabelFont(),this._updateLabelDimensions(),this._updateTexture(e),this._calDynamicAtlas(e),e._actualFontSize=E,e.node.setContentSize(z),this.updateVerts(e),e._vertsDirty=!1,v=null,g=null,m=null)},r.updateVerts=function(){},r._updatePaddingRect=function(){var t=0,e=0,i=0,n=0,r=0;if(U.width=U.height=0,L&&(t=e=i=n=r=L.width,U.width=U.height=2*r),N){var s=N.blur+r;i=Math.max(i,-N._offset.x+s),n=Math.max(n,N._offset.x+s),t=Math.max(t,N._offset.y+s),e=Math.max(e,-N._offset.y+s)}if(V){var a=A*Math.tan(.20943951);n+=a,U.width+=a}B.x=i,B.y=t,B.width=i+n,B.height=t+e},r._updateProperties=function(t){var e=t._assemblerData;v=e.context,g=e.canvas,m=t._frame._original?t._frame._original._texture:t._frame._texture,T=t.string.toString(),E=t._fontSize,A=E,W=t.underlineHeight||A/8,M=t.overflow,x.width=t.node.width,x.height=t.node.height,z=t.node.getContentSize(),b=t._lineHeight,S=t.horizontalAlign,R=t.verticalAlign,w=t.node.color,k=t.enableBold,V=t.enableItalic,H=t.enableUnderline,I=d(t),D=t.srcBlendFactor===cc.macro.BlendFactor.ONE,O=M!==_.NONE&&(M===_.RESIZE_HEIGHT||t.enableWrapText),(L=(L=l&&t.getComponent(l))&&L.enabled&&L.width>0?L:null)&&P.set(L.color),(N=(N=h&&t.getComponent(h))&&N.enabled?N:null)&&(F.set(N.color),F.a=F.a*t.node.color.a/255),this._updatePaddingRect()},r._calculateFillTextStartPosition=function(){var t=0;S===c.TextAlignment.RIGHT?t=x.width-B.width:S===c.TextAlignment.CENTER&&(t=(x.width-B.width)/2);var e=this._getLineHeight()*(C.length-1),i=E*(1-o.BASELINE_RATIO/2);if(R!==c.VerticalTextAlignment.TOP){var n=e+B.height+E-x.height;R===c.VerticalTextAlignment.BOTTOM?i-=n+=o.BASELINE_RATIO/2*E:i-=n/2}return i+=o.BASELINE_OFFSET*E,cc.v2(t+B.x,i+B.y)},r._setupOutline=function(){v.strokeStyle="rgba("+P.r+", "+P.g+", "+P.b+", "+P.a/255+")",v.lineWidth=2*L.width},r._setupShadow=function(){v.shadowColor="rgba("+F.r+", "+F.g+", "+F.b+", "+F.a/255+")",v.shadowBlur=N.blur,v.shadowOffsetX=N.offset.x,v.shadowOffsetY=-N.offset.y},r._drawTextEffect=function(t,e){if(N||L||H){var i=C.length>1&&N,n=this._measureText(v,y),r=0,s=0;N&&this._setupShadow(),L&&this._setupOutline();for(var a=0;at||x.height>t)&&cc.warn("The maximum texture size supported by the device is "+t),x.width=Math.min(x.width,t),x.height=Math.min(x.height,t);var e=!1;g.width!==x.width&&(g.width=x.width,e=!0),g.height!==x.height&&(g.height=x.height,e=!0),e&&(v.font=y),v.textAlign=Y[S]},r._getFontDesc=function(){var t=E.toString()+"px ";return t+=I,k&&(t="bold "+t),V&&(t="italic "+t),t},r._getLineHeight=function(){return 0|(0===b?E:b*E/A)},r._calculateParagraphLength=function(t,e){for(var i=[],n=0;n>1)<=0){cc.logID(4003);break}E=l,y=this._getFontDesc(),v.font=y;var h=this._getLineHeight();for(n=0,i=0;ia?u=l-1:c=l}0===c?cc.logID(4003):(E=c,y=this._getFontDesc(),v.font=y)}else{for(n=t.length*this._getLineHeight(),i=0;ir?e:r}i=(C.length+o.BASELINE_RATIO)*this._getLineHeight();var s=parseFloat(e.toFixed(2)),a=parseFloat(i.toFixed(2));x.width=s+B.width,x.height=a+B.height,z.width=s+U.width,z.height=a+U.height;break;case _.SHRINK:this._calculateShrinkFont(t),this._calculateWrapText(t);break;case _.CLAMP:this._calculateWrapText(t);break;case _.RESIZE_HEIGHT:this._calculateWrapText(t);var c=(C.length+o.BASELINE_RATIO)*this._getLineHeight();x.height=c+B.height,z.height=c+U.height}},n})(r.default);i.default=X,e.exports=i.default}),{"../../../components/CCLabel":103,"../../../components/CCLabelOutline":void 0,"../../../components/CCLabelShadow":void 0,"../../../platform/CCMacro":154,"../../../utils/text-utils":230,"../../assembler-2d":175,"../utils":188}],188:[(function(t,e){"use strict";var i=t("./dynamic-atlas/manager"),n=cc.Color.WHITE,r={fontAtlas:null,fontSize:0,lineHeight:0,hAlign:0,vAlign:0,hash:"",fontFamily:"",fontDesc:"Arial",color:n,isOutlined:!1,out:n,margin:0};e.exports={deleteFromDynamicAtlas:function(t,e){e&&e._original&&i&&(i.deleteAtlasSpriteFrame(e),e._resetDynamicAtlasFrame())},getFontFamily:function(t){return t.useSystemFont?t.fontFamily||"Arial":t.font?t.font._nativeAsset?t.font._nativeAsset:(cc.assetManager.postLoadNative(t.font,(function(){t.isValid&&t.setVertsDirty()})),"Arial"):"Arial"},shareLabelInfo:r}}),{"./dynamic-atlas/manager":183}],189:[(function(t,e){"use strict";function i(t,e,i){i=i||2;var r,a,o,c,u,h,_,f=e&&e.length,d=f?e[0]*i:t.length,p=n(t,0,d,i,!0),v=[];if(!p)return v;if(f&&(p=l(t,e,p,i)),t.length>80*i){r=o=t[0],a=c=t[1];for(var g=i;go&&(o=u),h>c&&(c=h);_=Math.max(o-r,c-a)}return s(p,v,i,r,a,_),v}function n(t,e,i,n,r){var s,a;if(r===M(t,e,i,n)>0)for(s=e;s=e;s-=n)a=R(s,t[s],t[s+1],a);return a&&E(a,a.next)&&(w(a),a=a.next),a}function r(t,e){if(!t)return t;e||(e=t);var i,n=t;do{if(i=!1,n.steiner||!E(n,n.next)&&0!==T(n.prev,n,n.next))n=n.next;else{if(w(n),(n=e=n.prev)===n.next)return null;i=!0}}while(i||n!==e);return e}function s(t,e,i,n,l,h,_){if(t){!_&&h&&d(t,n,l,h);for(var f,p,v=t;t.prev!==t.next;)if(f=t.prev,p=t.next,h?o(t,n,l,h):a(t))e.push(f.i/i),e.push(t.i/i),e.push(p.i/i),w(t),t=p.next,v=p.next;else if((t=p)===v){_?1===_?s(t=c(t,e,i),e,i,n,l,h,2):2===_&&u(t,e,i,n,l,h):s(r(t),e,i,n,l,h,1);break}}}function a(t){var e=t.prev,i=t,n=t.next;if(T(e,i,n)>=0)return!1;for(var r=t.next.next;r!==t.prev;){if(m(e.x,e.y,i.x,i.y,n.x,n.y,r.x,r.y)&&T(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function o(t,e,i,n){var r=t.prev,s=t,a=t.next;if(T(r,s,a)>=0)return!1;for(var o=r.xs.x?r.x>a.x?r.x:a.x:s.x>a.x?s.x:a.x,l=r.y>s.y?r.y>a.y?r.y:a.y:s.y>a.y?s.y:a.y,h=v(o,c,e,i,n),_=v(u,l,e,i,n),f=t.nextZ;f&&f.z<=_;){if(f!==t.prev&&f!==t.next&&m(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&T(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(f=t.prevZ;f&&f.z>=h;){if(f!==t.prev&&f!==t.next&&m(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&T(f.prev,f,f.next)>=0)return!1;f=f.prevZ}return!0}function c(t,e,i){var n=t;do{var r=n.prev,s=n.next.next;!E(r,s)&&A(r,n,n.next,s)&&x(r,s)&&x(s,r)&&(e.push(r.i/i),e.push(n.i/i),e.push(s.i/i),w(n),w(n.next),n=t=s),n=n.next}while(n!==t);return n}function u(t,e,i,n,a,o){var c=t;do{for(var u=c.next.next;u!==c.prev;){if(c.i!==u.i&&y(c,u)){var l=S(c,u);return c=r(c,c.next),l=r(l,l.next),s(c,e,i,n,a,o),void s(l,e,i,n,a,o)}u=u.next}c=c.next}while(c!==t)}function l(t,e,i,s){var a,o,c,u=[];for(a=0,o=e.length;a=n.next.y){var o=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(o<=r&&o>a){if(a=o,o===r){if(s===n.y)return n;if(s===n.next.y)return n.next}i=n.x=n.x&&n.x>=l&&m(si.x)&&x(n,t)&&(i=n,_=c),n=n.next;return i}function d(t,e,i,n){var r=t;do{null===r.z&&(r.z=v(r.x,r.y,e,i,n)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,p(r)}function p(t){var e,i,n,r,s,a,o,c,u=1;do{for(i=t,t=null,s=null,a=0;i;){for(a++,n=i,o=0,e=0;e0||c>0&&n;)0===o?(r=n,n=n.nextZ,c--):0!==c&&n?i.z<=n.z?(r=i,i=i.nextZ,o--):(r=n,n=n.nextZ,c--):(r=i,i=i.nextZ,o--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;i=n}s.nextZ=null,u*=2}while(a>1);return t}function v(t,e,i,n,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-i)/r)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)/r)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function g(t){var e=t,i=t;do{e.x=0&&(t-a)*(n-o)-(i-a)*(e-o)>=0&&(i-a)*(s-o)-(r-a)*(n-o)>=0}function y(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!C(t,e)&&x(t,e)&&x(e,t)&&b(t,e)}function T(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function E(t,e){return t.x===e.x&&t.y===e.y}function A(t,e,i,n){return!!(E(t,e)&&E(i,n)||E(t,n)&&E(i,e))||T(t,e,i)>0!=T(t,e,n)>0&&T(i,n,t)>0!=T(i,n,e)>0}function C(t,e){var i=t;do{if(i.i!==t.i&&i.next.i!==t.i&&i.i!==e.i&&i.next.i!==e.i&&A(i,i.next,t,e))return!0;i=i.next}while(i!==t);return!1}function x(t,e){return T(t.prev,t,t.next)<0?T(t,e,t.next)>=0&&T(t,t.prev,e)>=0:T(t,e,t.prev)<0||T(t,t.next,e)<0}function b(t,e){var i=t,n=!1,r=(t.x+e.x)/2,s=(t.y+e.y)/2;do{i.y>s!=i.next.y>s&&r<(i.next.x-i.x)*(s-i.y)/(i.next.y-i.y)+i.x&&(n=!n),i=i.next}while(i!==t);return n}function S(t,e){var i=new I(t.i,t.x,t.y),n=new I(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,i.next=r,r.prev=i,n.next=i,i.prev=n,s.next=n,n.prev=s,n}function R(t,e,i,n){var r=new I(t,e,i);return n?(r.next=n.next,r.prev=n,n.next.prev=r,n.next=r):(r.prev=r,r.next=r),r}function w(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function I(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function M(t,e,i,n){for(var r=0,s=e,a=i-n;s0&&(n+=t[r-1].length,i.holes.push(n))}return i}}),{}],190:[(function(t,e){"use strict";var i=t("../../../../graphics/helper"),n=t("../../../../graphics/types").PointFlags,r=cc.Graphics.Point=cc.Class({name:"cc.GraphicsPoint",extends:cc.Vec2,ctor:function(){this.reset()},reset:function(){this.dx=0,this.dy=0,this.dmx=0,this.dmy=0,this.flags=0,this.len=0}});function s(){this.reset()}function a(){this._tessTol=.25,this._distTol=.01,this._updatePathOffset=!1,this._paths=null,this._pathLength=0,this._pathOffset=0,this._points=null,this._pointsOffset=0,this._commandx=0,this._commandy=0,this._paths=[],this._points=[]}cc.js.mixin(s.prototype,{reset:function(){this.closed=!1,this.nbevel=0,this.complex=!0,this.points?this.points.length=0:this.points=[]}}),cc.js.mixin(a.prototype,{moveTo:function(t,e){this._updatePathOffset&&(this._pathOffset=this._pathLength,this._updatePathOffset=!1),this._addPath(),this._addPoint(t,e,n.PT_CORNER),this._commandx=t,this._commandy=e},lineTo:function(t,e){this._addPoint(t,e,n.PT_CORNER),this._commandx=t,this._commandy=e},bezierCurveTo:function(t,e,r,s,a,o){var c=this._curPath,u=c.points[c.points.length-1];u.x!==t||u.y!==e||r!==a||s!==o?(i.tesselateBezier(this,u.x,u.y,t,e,r,s,a,o,0,n.PT_CORNER),this._commandx=a,this._commandy=o):this.lineTo(a,o)},quadraticCurveTo:function(t,e,i,n){var r=this._commandx,s=this._commandy;this.bezierCurveTo(r+2/3*(t-r),s+2/3*(e-s),i+2/3*(t-i),n+2/3*(e-n),i,n)},arc:function(t,e,n,r,s,a){i.arc(this,t,e,n,r,s,a)},ellipse:function(t,e,n,r){i.ellipse(this,t,e,n,r),this._curPath.complex=!1},circle:function(t,e,n){i.ellipse(this,t,e,n,n),this._curPath.complex=!1},rect:function(t,e,i,n){this.moveTo(t,e),this.lineTo(t,e+n),this.lineTo(t+i,e+n),this.lineTo(t+i,e),this.close(),this._curPath.complex=!1},roundRect:function(t,e,n,r,s){i.roundRect(this,t,e,n,r,s),this._curPath.complex=!1},clear:function(t){this._pathLength=0,this._pathOffset=0,this._pointsOffset=0,this._curPath=null,t&&(this._paths.length=0,this._points.length=0)},close:function(){this._curPath.closed=!0},_addPath:function(){var t=this._pathLength,e=this._paths[t];return e?e.reset():(e=new s,this._paths.push(e)),this._pathLength++,this._curPath=e,e},_addPoint:function(t,e,i){var n=this._curPath;if(n){var s,a=this._points,o=n.points;(s=a[this._pointsOffset++])?(s.x=t,s.y=e):(s=new r(t,e),a.push(s)),s.flags=i,o.push(s)}}}),cc.Graphics._Impl=a,e.exports=a}),{"../../../../graphics/helper":139,"../../../../graphics/types":141}],191:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=s(t("../../../assembler")),r=s(t("../../../../../renderer/core/input-assembler"));function s(t){return t&&t.__esModule?t:{default:t}}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var o=t("../../mesh-buffer"),c=t("../../../index"),u=t("../../../../graphics/graphics"),l=t("../../../../graphics/types").PointFlags,h=u.LineJoin,_=u.LineCap,f=t("./earcut");t("./impl");var d=Math.PI,p=Math.min,v=Math.max,g=Math.ceil,m=Math.acos,y=Math.cos,T=Math.sin,E=Math.atan2;function A(t,e,i){return ti?i:t}var C=cc.gfx,x=new C.VertexFormat([{name:C.ATTR_POSITION,type:C.ATTR_TYPE_FLOAT32,num:2},{name:C.ATTR_COLOR,type:C.ATTR_TYPE_UINT8,num:4,normalize:!0},{name:"a_dist",type:C.ATTR_TYPE_FLOAT32,num:1}]);x.name="vfmtPosColorSdf";var b=(function(t){var e,i;function n(e){var i;return(i=t.call(this,e)||this)._buffer=null,i._buffers=[],i._bufferOffset=0,i}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,a(e,i);var s=n.prototype;return s.getVfmt=function(){return x},s.getVfmtFloatCount=function(){return 4},s.requestBuffer=function(){var t={indiceStart:0,vertexStart:0},e=new o(c._handle,this.getVfmt());t.meshbuffer=e;var i=new r.default(e._vb,e._ib);return t.ia=i,this._buffers.push(t),t},s.getBuffers=function(){return 0===this._buffers.length&&this.requestBuffer(),this._buffers},s.clear=function(t){this._bufferOffset=0;var e=this._buffers;if(t){for(var i=0,n=e.length;i65535||3*s>131070)&&(++this._bufferOffset,s=e,this._bufferOffsetr.vertexOffset&&r.requestStatic(e,3*e),this._buffer=n,n},s.stroke=function(t){this._curColor=t._strokeColor._val,this._flattenPaths(t._impl),this._expandStroke(t),t._impl._updatePathOffset=!0},s.fill=function(t){this._curColor=t._fillColor._val,this._expandFill(t),t._impl._updatePathOffset=!0},s._expandStroke=function(t){var e,i,n,r,s=.5*t.lineWidth,a=t.lineCap,o=t.lineJoin,c=t.miterLimit,u=t._impl,f=(e=s,i=d,n=u._tessTol,r=2*m(e/(e+n)),v(2,g(i/r)));this._calculateJoins(u,s,o,c);for(var p=u._paths,y=0,T=u._pathOffset,E=u._pathLength;T0&&(r=1/e);for(var a=t._paths,o=t._pathOffset,c=t._pathLength;o1e-6){var b=1/y;b>600&&(b=600),g.dmx*=b,g.dmy*=b}g.dx*d.dy-d.dx*g.dy>0&&(g.flags|=l.PT_LEFT),y*(T=v(11,p(d.len,g.len)*r))*T<1&&(g.flags|=l.PT_INNERBEVEL);var S=g.dmx*e,R=g.dmy*e,w=S*S+R*R;w>g.len*g.len+s&&w>d.len*d.len+s&&(g.flags|=l.PT_INNERBEVEL),g.flags&l.PT_CORNER&&(y*n*n<1||i===h.BEVEL||i===h.ROUND)&&(g.flags|=l.PT_BEVEL),0!=(g.flags&(l.PT_BEVEL|l.PT_INNERBEVEL))&&u.nbevel++,d=g,g=_[m+1]}}},s._flattenPaths=function(t){for(var e=t._paths,i=t._pathOffset,n=t._pathLength;i2&&a.equals(o)&&(r.closed=!0,s.pop(),a=s[s.length-1]);for(var c=0,u=s.length;cC&&(x-=2*d),this._vset(f,p,1),this._vset(u-s*n,e.y-a*n,-1);for(var b=A(g((C-x)/d)*r,2,r),S=0;S "+n+"/"+i+".")},e._updateCfgFlag=function(t){var e=this._cfgFields.updateFlags;this._setBufferFlag(this._cfg,e.offset,e.size,e.type,t)},e._setBufferValue=function(t,e,i,n,r){"float"==n&&4==i?t.setFloat32(e,r,jsb.__isLittleEndian__):"int32"==n&&4==i?t.setInt32(e,r,jsb.__isLittleEndian__):"bool"==n&&1==i?t.setInt8(e,r?1:0,jsb.__isLittleEndian__):"Color4B"==n&&4==i?(t.setUint8(e,r.r),t.setUint8(e+1,r.g),t.setUint8(e+2,r.b),t.setUint8(e+3,r.a)):"int8"==n&&1==i?t.setUint8(e,r):cc.warn("dont know how to set value to buffer, type/size -> "+n+"/"+i+".")},e._setFieldValue=function(t,e,i,n){var r=e[i];this._setBufferValue(t,r.offset,r.size,r.type,n)},e._getBufferValue=function(t,e,i,n){return"float"==n&&4==i?t.getFloat32(e,jsb.__isLittleEndian__):"int32"==n&&4==i?t.getInt32(e,jsb.__isLittleEndian__):"bool"==n&&1==i?0!=t.getInt8(e,jsb.__isLittleEndian__):"Color4B"==n&&4==i?{r:t.getUint8(e),g:t.getUint8(e+1),b:t.getUint8(e+2),a:t.getUint8(e+3)}:"int8"==n&&1==i?t.getUint8(e):void cc.warn("dont know how to get value from buffer, type/size -> "+n+"/"+i+".")},e._getFieldValue=function(t,e,i){var n=e[i];return this._getBufferValue(t,n.offset,n.size,n.type)},e._getLayoutValue=function(t){return this._getFieldValue(this._layoutInfo,this._layoutFields,t)},e._setLayoutValue=function(t,e){return this._setFieldValue(this._layoutInfo,this._layoutFields,t,e)},e._updateCfgFlag_Content=function(){this._updateCfgFlag(1)},e._updateCfgFlag_Font=function(){this._updateCfgFlag(2)},e._colorEqual=function(t,e){return t.r==e.r&&t.g==e.g&&t.b==e.b&&t.a==e.a},e._colorToObj=function(t,e,i,n){return{r:t,g:e,b:i,a:n}},e.setString=function(t){t!=this._layout.string&&(this._layout.string=t,this._updateCfgFlag_Content())},e.setFontPath=function(t){t!=this._layout.fontPath&&(this._layout.fontPath=t,this._updateCfgFlag_Font())},e.setFontSize=function(t,e){this._getFieldValue(this._cfg,this._cfgFields,"fontSize")!=t&&(this._setFieldValue(this._cfg,this._cfgFields,"fontSize",t),this._setFieldValue(this._cfg,this._cfgFields,"fontSizeRetina",e),this._updateCfgFlag_Font())},e.setOutline=function(t){var e=this._getLayoutValue("outlineSize");e>0!=t>0&&this._updateCfgFlag_Font(),e!=t&&(this._updateCfgFlag_Content(),this._setLayoutValue("outlineSize",t))},e.setOutlineColor=function(t){var e=this._getLayoutValue("outlineColor");this._colorEqual(e,t)||(this._setLayoutValue("outlineColor",t),this._updateCfgFlag_Content())},e.setLineHeight=function(t){this._getLayoutValue("lineHeight")!=t&&(this._setLayoutValue("lineHeight",t),this._updateCfgFlag_Content())},e.setOverFlow=function(t){this._getLayoutValue("overflow")!=t&&(this._setLayoutValue("overflow",t),this._updateCfgFlag_Content())},e.setEnableWrap=function(t){this._getLayoutValue("wrap")!=t&&(this._setLayoutValue("wrap",t),this._updateCfgFlag_Content())},e.setVerticalAlign=function(t){this._getLayoutValue("valign")!=t&&(this._setLayoutValue("valign",t),this._updateCfgFlag_Content())},e.setHorizontalAlign=function(t){this._getLayoutValue("halign")!=t&&(this._setLayoutValue("halign",t),this._updateCfgFlag_Content())},e.setContentSize=function(t,e){var i=this._getLayoutValue("width"),n=this._getLayoutValue("height");i==t&&n==e||(this._setLayoutValue("height",e),this._setLayoutValue("width",t),this._updateCfgFlag_Content())},e.setAnchorPoint=function(t,e){var i=this._getLayoutValue("anchorX"),n=this._getLayoutValue("anchorY");i==t&&n==e||(this._setLayoutValue("anchorX",t),this._setLayoutValue("anchorY",e),this._updateCfgFlag_Content())},e.setColor=function(t){var e=this._getLayoutValue("color");this._colorEqual(e,t)||(this._setLayoutValue("color",t),this._updateCfgFlag_Content())},e.setShadow=function(t,e,i){var n=this._getLayoutValue("shadowBlur"),r=this._getLayoutValue("shadowX"),s=this._getLayoutValue("shadowY");n>0!=i>0&&this._updateCfgFlag_Font();var a=!1;n!=i&&(this._setLayoutValue("shadowBlur",i),a=!0),r!=t&&(this._setLayoutValue("shadowX",t),a=!0),s!=e&&(this._setLayoutValue("shadowY",e),a=!0),a&&this._updateCfgFlag_Content()},e.setShadowColor=function(t){var e=this._getLayoutValue("shadowColor");this._colorEqual(e,t)||(this._setLayoutValue("shadowColor",t),this._updateCfgFlag_Content())},e.setItalic=function(t){this._getLayoutValue("italic")!=t&&(this._setLayoutValue("italic",t),this._updateCfgFlag_Content())},e.setBold=function(t){this._getLayoutValue("bold")!=t&&(this._setLayoutValue("bold",t),this._updateCfgFlag_Content(),this._updateCfgFlag_Font())},e.setUnderline=function(t){this._getLayoutValue("underline")!=t&&(this._setLayoutValue("underline",t),this._updateCfgFlag_Content())},e.setSpacingX=function(t){this._getLayoutValue("spaceX")==t||"number"!=typeof t||isNaN(t)||(this._setLayoutValue("spaceX",t),this._updateCfgFlag_Content())},e.updateRenderData=function(t){if(t._vertsDirty){t.font&&t.font.nativeUrl&&this.setFontPath(cc.assetManager.cacheManager.getCache(t.font.nativeUrl)||t.font.nativeUrl);var e=this._layout,i=t.node.color,n=t.node,r=t.fontSize;this.setString(t.string),this.setFontSize(t.fontSize,r/72*t.fontSize),this.setLineHeight(t.lineHeight),this.setEnableWrap(t.enableWrapText),this.setItalic(t.enableItalic),this.setUnderline(t.enableUnderline),this.setBold(t.enableBold),this.setOverFlow(t.overflow),this.setVerticalAlign(t.verticalAlign),this.setHorizontalAlign(t.horizontalAlign),this.setSpacingX(t.spacingX),this.setContentSize(n.getContentSize().width,n.getContentSize().height),this.setAnchorPoint(n.anchorX,n.anchorY),this.setColor(this._colorToObj(i.getR(),i.getG(),i.getB(),Math.ceil(i.getA()*n.opacity/255)));var s=n.getComponent(cc.LabelShadow);if(s&&s.enabled){var a=s.color;this.setShadow(s.offset.x,s.offset.y,s.blur),this.setShadowColor(this._colorToObj(a.getR(),a.getG(),a.getB(),Math.ceil(a.getA()*n.opacity/255)))}else this.setShadow(0,0,-1);this._updateTTFMaterial(t),e.render()}},e._bindMaterial=function(t){var e=this.labelMaterial;return e||(e=r.default.createWithBuiltin("2d-label",t),this.labelMaterial=e),e},e._updateTTFMaterial=function(t){var e=this._bindMaterial(t),i=this._label.node,n=this._layout,r=i.getComponent(cc.LabelOutline),s=0;if(r&&r.enabled&&r.width>0){s=Math.max(Math.min(r.width/10,.4),.1);var a=r.color;this.setOutlineColor(this._colorToObj(a.getR(),a.getG(),a.getB(),Math.ceil(a.getA()*i.opacity/255)))}this.setOutline(s),e.define("CC_USE_MODEL",!0),e.define("USE_TEXTURE_ALPHAONLY",!0),e.define("USE_SDF",s>0||t.enableBold),e.define("USE_SDF_EXTEND",t.enableBold?1:0),void 0!==e.getDefine("CC_SUPPORT_standard_derivatives")&&cc.sys.glExtension("OES_standard_derivatives")&&e.define("CC_SUPPORT_standard_derivatives",!0),n.setEffect(e.effect._nativeObj)},e.fillBuffers=function(){this._layout.render()},e.getVfmt=function(){},t})();i.default=s,e.exports=i.default}),{"../../../../../assets/material/CCMaterial":77,"../../../../../assets/material/material-variant":84,"../../../../../components/CCLabel":103,"../../../../../components/CCLabelOutline":void 0,"../../../../../components/CCLabelShadow":void 0}],196:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../../../utils/label/ttf"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../../../components/CCLabelShadow"),o=cc.color(255,255,255,255),c=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateUVs=function(t){for(var e=this._renderData.vDatas[0],i=t._frame.uv,n=this.uvOffset,r=this.floatsPerVert,s=0;s<4;s++){var a=2*s,o=r*s+n;e[o]=i[a],e[o+1]=i[a+1]}},r.updateColor=function(e){o._fastSetA(e.node._color.a);var i=o._val;t.prototype.updateColor.call(this,e,i)},r.updateVerts=function(t){var e=t.node,i=t._ttfTexture.width,n=t._ttfTexture.height,r=e.anchorX*e.width,s=e.anchorY*e.height,o=a&&t.getComponent(a);if(o&&o._enabled){var c=(i-e.width)/2,u=(n-e.height)/2,l=o.offset;-l.x>c?r+=i-e.width:c>l.x&&(r+=c-l.x),-l.y>u?s+=n-e.height:u>l.y&&(s+=u-l.y)}var h=this._local;h[0]=-r,h[1]=-s,h[2]=i-r,h[3]=n-s,this.updateUVs(t),this.updateWorldVerts(t)},n})(r.default);i.default=c,e.exports=i.default}),{"../../../../../components/CCLabelShadow":void 0,"../../../../utils/label/ttf":187}],197:[(function(t){"use strict";var e=u(t("../../../assembler")),i=u(t("../../../../components/CCLabel")),n=u(t("./2d/ttf")),r=u(t("./2d/bmfont")),s=u(t("./2d/letter")),a=u(t("./3d/ttf")),o=u(t("./3d/bmfont")),c=u(t("./3d/letter"));function u(t){return t&&t.__esModule?t:{default:t}}i.default._canvasPool={pool:[],get:function(){var t=this.pool.pop();if(!t){var e=document.createElement("canvas"),i=e.getContext("2d");t={canvas:e,context:i},i.textBaseline="alphabetic"}return t},put:function(t){this.pool.length>=32||this.pool.push(t)}},e.default.register(cc.Label,{getConstructor:function(t){var e=t.node.is3DNode,u=e?a.default:n.default;return t.font instanceof cc.BitmapFont?u=e?o.default:r.default:t.cacheMode===i.default.CacheMode.CHAR&&(cc.sys.platform===cc.sys.WECHAT_GAME_SUB?cc.warn("sorry, subdomain does not support CHAR mode currently!"):u=e?c.default:s.default),u},TTF:n.default,Bmfont:r.default,Letter:s.default,TTF3D:a.default,Bmfont3D:o.default,Letter3D:c.default,NativeTTF:void 0})}),{"../../../../components/CCLabel":103,"../../../assembler":177,"./2d/bmfont":193,"./2d/letter":194,"./2d/nativeTTF":195,"./2d/ttf":196,"./3d/bmfont":void 0,"./3d/letter":void 0,"./3d/ttf":void 0}],198:[(function(t,e,i){"use strict";i.__esModule=!0,i.MaskAssembler=void 0;var n,r=(n=t("../../assembler"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../components/CCMask"),o=t("../../render-flow"),c=t("./sprite/2d/simple"),u=t("./graphics"),l=t("../../../../renderer/gfx"),h=t("../vertex-format").vfmtPos,_=8,f=[];function d(){return 1<_&&cc.errorID(9e3,_),f.push(t)}function m(t,e){0===f.length&&cc.errorID(9001),f.pop(),0===f.length?e._flushMaterial(t._exitMaterial):E(e)}function y(t,e){var i=l.DS_FUNC_NEVER,n=d(),r=n,s=n,a=t.inverted?l.STENCIL_OP_REPLACE:l.STENCIL_OP_ZERO;v(t._clearMaterial,i,a,n,r,s);var o=e.getBuffer("mesh",h),c=o.request(4,6),u=c.indiceOffset,_=c.byteOffset>>2,f=c.vertexOffset,p=o._vData,g=o._iData;p[_++]=-1,p[_++]=-1,p[_++]=-1,p[_++]=1,p[_++]=1,p[_++]=1,p[_++]=1,p[_++]=-1,g[u++]=f,g[u++]=f+3,g[u++]=f+1,g[u++]=f+1,g[u++]=f+3,g[u++]=f+2,e.node=e._dummyNode,e.material=t._clearMaterial,e._flush()}function T(t,e){var i=l.DS_FUNC_NEVER,n=d(),r=n,s=n,o=t.inverted?l.STENCIL_OP_ZERO:l.STENCIL_OP_REPLACE;v(t._materials[0],i,o,n,r,s),e.material=t._materials[0],t._type===a.Type.IMAGE_STENCIL?(e.node=e._dummyNode,c.prototype.fillBuffers.call(t._assembler,t,e),e._flush()):(e.node=t.node,u.prototype.fillBuffers.call(t._graphics._assembler,t._graphics,e))}function E(t){var e=l.DS_FUNC_EQUAL,i=l.STENCIL_OP_KEEP,n=p(),r=n,s=d(),a=f[f.length-1];v(a._enableMaterial,e,i,n,r,s),t._flushMaterial(a._enableMaterial)}var A=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateRenderData=function(t){t._type===a.Type.IMAGE_STENCIL?t.spriteFrame?c.prototype.updateRenderData.call(this,t):t.setMaterial(0,null):(t._graphics.setMaterial(0,t._materials[0]),u.prototype.updateRenderData.call(t._graphics._assembler,t._graphics,t._graphics))},r.fillBuffers=function(t,e){(t._type!==a.Type.IMAGE_STENCIL||t.spriteFrame)&&(g(t),y(t,e),T(t,e),E(e)),t.node._renderFlag|=o.FLAG_UPDATE_RENDER_DATA},r.postFillBuffers=function(t,e){(t._type!==a.Type.IMAGE_STENCIL||t.spriteFrame)&&m(t,e),t.node._renderFlag|=o.FLAG_UPDATE_RENDER_DATA},n})(c);i.MaskAssembler=A,r.default.register(a,A)}),{"../../../../renderer/gfx":265,"../../../components/CCMask":105,"../../assembler":177,"../../render-flow":181,"../vertex-format":213,"./graphics":191,"./sprite/2d/simple":203}],199:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../components/CCMotionStreak"),o=t("../../render-flow");function c(t,e){this.point=t||cc.v2(),this.dir=e||cc.v2(),this.distance=0,this.time=0}c.prototype.setPoint=function(t,e){this.point.x=t,this.point.y=e},c.prototype.setDir=function(t,e){this.dir.x=t,this.dir.y=e},cc.v2(),cc.v2();var u=cc.v2(),l=cc.v2();function h(t,e){return t.x=-e.y,t.y=e.x,t}var _=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.initData=function(){this._renderData.createFlexData(0,16,42)},r.update=function(t,e){var i,n=t._stroke/2,r=t.node._worldMatrix.m,s=r[12],a=r[13],o=t._points;if(o.length>1){var _=o[0].point.x-s,f=o[0].point.y-a;_*_+f*f=0;R--){var w=o[R],I=w.point,M=w.dir;if(w.time-=e,w.time<0)o.splice(R,1);else{var O=w.time/b,D=o[R-1];if(!S){if(!D){o.splice(R,1);continue}I.x=D.point.x-M.x*O,I.y=D.point.y-M.y*O}S=!0,h(u,M);var L=(O*T<<24>>>0)+(y<<16)+(m<<8)+g,P=5*p;C[P]=I.x+u.x*n,C[P+1]=I.y+u.y*n,C[P+2]=1,C[P+3]=O,x[P+4]=L,C[P+=5]=I.x-u.x*n,C[P+1]=I.y-u.y*n,C[P+2]=0,C[P+3]=O,x[P+4]=L,p+=2}}d=p<=2?0:3*(p-2),A.used(p,d)}},r.fillBuffers=function(t,e){var i=this._renderData._flexBuffer,n=i.vData,r=i.usedVertices,s=i.usedIndices,a=i.usedVerticesFloats,c=e._meshBuffer,u=c.request(r,s),l=u.byteOffset>>2,h=c._vData;n.length+l>h.length?h.set(n.subarray(0,a),l):h.set(n,l);for(var _=c._iData,f=u.indiceOffset,d=u.vertexOffset,p=0,v=r;p1?1:n)<0?0:n;var r=(i=(i=i>1?1:i)<0?0:i)+(n=(n-=i)<0?0:n);r=r>1?1:r,this.updateUVs(t,i,r),this.updateVerts(t,i,r),t._vertsDirty=!1}},r.updateUVs=function(t,e,i){var n,r,s,o,c,u,l,h,_,f,d=t._spriteFrame,p=d._texture.width,v=d._texture.height,g=d._rect;d._rotated?(n=g.x/p,r=(g.y+g.width)/v,s=c=n,l=_=(g.x+g.height)/p,u=f=r,o=h=g.y/v):(n=g.x/p,r=(g.y+g.height)/v,s=l=n,c=_=(g.x+g.width)/p,o=u=r,h=f=g.y/v);var m=this._renderData.vDatas[0],y=this.uvOffset,T=this.floatsPerVert;switch(t._fillType){case a.HORIZONTAL:m[y]=s+(c-s)*e,m[y+1]=o+(u-o)*e,m[y+T]=s+(c-s)*i,m[y+T+1]=o+(u-o)*i,m[y+2*T]=l+(_-l)*e,m[y+2*T+1]=h+(f-h)*e,m[y+3*T]=l+(_-l)*i,m[y+3*T+1]=h+(f-h)*i;break;case a.VERTICAL:m[y]=s+(l-s)*e,m[y+1]=o+(h-o)*e,m[y+T]=c+(_-c)*e,m[y+T+1]=u+(f-u)*e,m[y+2*T]=s+(l-s)*i,m[y+2*T+1]=o+(h-o)*i,m[y+3*T]=c+(_-c)*i,m[y+3*T+1]=u+(f-u)*i;break;default:cc.errorID(2626)}},r.updateVerts=function(t,e,i){var n,r=t.node,s=r.width,o=r.height,c=r.anchorX*s,u=r.anchorY*o,l=-c,h=-u,_=s-c,f=o-u;switch(t._fillType){case a.HORIZONTAL:n=l+(_-l)*i,l+=(_-l)*e,_=n;break;case a.VERTICAL:n=h+(f-h)*i,h+=(f-h)*e,f=n;break;default:cc.errorID(2626)}var d=this._local;d[0]=l,d[1]=h,d[2]=_,d[3]=f,this.updateWorldVerts(t)},n})(r.default);i.default=o,e.exports=i.default}),{"../../../../../components/CCSprite":115,"../../../../assembler-2d":175}],201:[(function(t,e,i){"use strict";var n;function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}i.__esModule=!0,i.default=void 0;var s=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,r(e,i);var s=n.prototype;return s.initData=function(){this._renderData.createFlexData(0,4,6,this.getVfmt())},s.updateRenderData=function(t){this.packToDynamicAtlas(t,t._spriteFrame);var e=t.spriteFrame;if(e){var i=e.vertices;if(i){this.verticesCount=i.x.length,this.indicesCount=i.triangles.length;var n=this._renderData._flexBuffer;n.reserve(this.verticesCount,this.indicesCount)&&(this.updateColor(t),t._vertsDirty=!0),n.used(this.verticesCount,this.indicesCount),this.updateIndices(i.triangles),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),this.updateWorldVerts(t),t._vertsDirty=!1)}}},s.updateIndices=function(t){this._renderData.iDatas[0].set(t)},s.updateUVs=function(t){for(var e=t.spriteFrame.vertices,i=e.nu,n=e.nv,r=this.uvOffset,s=this.floatsPerVert,a=this._renderData.vDatas[0],o=0;o0){var h=r.y+o*(t-r.x);a[0].x=t,a[0].y=h}if((e-r.x)*l>0){var _=r.y+o*(e-r.x);a[2].x=e,a[2].y=_}}if(0!==Math.sin(s)){if(c=l/u,(n-r.y)*u>0){var f=r.x+c*(n-r.y);a[3].x=f,a[3].y=n}if((i-r.y)*u>0){var d=r.x+c*(i-r.y);a[1].x=d,a[1].y=i}}}function p(t){var e=t.node,i=e.width,n=e.height,r=e.anchorX*i,s=e.anchorY*n,a=-r,u=-s,l=i-r,h=n-s,d=c;d[0]=a,d[1]=u,d[2]=l,d[3]=h;var p=t._fillCenter,v=_.x=Math.min(Math.max(0,p.x),1)*(l-a)+a,g=_.y=Math.min(Math.max(0,p.y),1)*(h-u)+u;o[0].x=o[3].x=a,o[1].x=o[2].x=l,o[0].y=o[1].y=u,o[2].y=o[3].y=h,f.length=0,v!==d[0]&&(f[0]=[3,0]),v!==d[2]&&(f[2]=[1,2]),g!==d[1]&&(f[1]=[0,1]),g!==d[3]&&(f[3]=[2,3])}function v(t,e){var i,n;if(i=e.x-t.x,n=e.y-t.y,0!==i||0!==n){if(0===i)return n>0?.5*Math.PI:1.5*Math.PI;var r=Math.atan(n/i);return i<0&&(r+=Math.PI),r}}var g=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.initData=function(){this._renderData.createFlexData(0,4,6,this.getVfmt()),this.updateIndices()},r.updateRenderData=function(e){t.prototype.updateRenderData.call(this,e);var i,n,r,s,o,f,v,g,m,y=e.spriteFrame;if(this.packToDynamicAtlas(e,y),e._vertsDirty){var T=e._fillStart,E=e._fillRange;for(E<0&&(T+=E,E=-E);T>=1;)T-=1;for(;T<0;)T+=1;T*=a,E*=a,p(e),f=(i=y)._texture.width,v=i._texture.height,g=i._rect,m=u,i._rotated?(n=g.x/f,r=(g.x+g.height)/f,s=g.y/v,o=(g.y+g.width)/v,m[0]=m[2]=n,m[4]=m[6]=r,m[3]=m[7]=o,m[1]=m[5]=s):(n=g.x/f,r=(g.x+g.width)/f,s=g.y/v,o=(g.y+g.height)/v,m[0]=m[4]=n,m[2]=m[6]=r,m[1]=m[3]=o,m[5]=m[7]=s),d(c[0],c[2],c[1],c[3],_,T,l),d(c[0],c[2],c[1],c[3],_,T+E,h),this.updateVerts(e,T,E),e._vertsDirty=!1}},r.updateVerts=function(t,e,i){var n=e+i,r=this._local;r.length=0;for(var s=0,c=3*this.floatsPerVert,u=0;u<4;++u){var d=f[u];if(d)if(i>=a)r.length=s+c,this._generateTriangle(r,s,_,o[d[0]],o[d[1]]),s+=c;else{var p=v(_,o[d[0]]),g=v(_,o[d[1]]);g=n||(p>=e?(r.length=s+c,g>=n?this._generateTriangle(r,s,_,o[d[0]],h[u]):this._generateTriangle(r,s,_,o[d[0]],o[d[1]]),s+=c):g<=e||(g<=n?(r.length=s+c,this._generateTriangle(r,s,_,l[u],o[d[1]]),s+=c):(r.length=s+c,this._generateTriangle(r,s,_,l[u],h[u]),s+=c))),p+=a,g+=a}}this.allocWorldVerts(t),this.updateWorldVerts(t)},r.allocWorldVerts=function(t){var e=t.node._color._val,i=this._renderData,n=this.floatsPerVert,r=this._local,s=r.length/n;this.verticesCount=this.indicesCount=s;var a=i._flexBuffer;a.reserve(s,s)&&this.updateIndices(),a.used(this.verticesCount,this.indicesCount);for(var o=i.vDatas[0],c=i.uintVDatas[0],u=this.uvOffset,l=0;l0)){this._renderData.createData(0,this.verticesFloats,this.indicesCount);for(var t=this._renderData.iDatas[0],e=0,i=0;i<3;++i)for(var n=0;n<3;++n){var r=4*i+n;t[e++]=r,t[e++]=r+1,t[e++]=r+4,t[e++]=r+1,t[e++]=r+5,t[e++]=r+4}}},s.initLocal=function(){this._local=[],this._local.length=8},s.updateRenderData=function(t){var e=t._spriteFrame;this.packToDynamicAtlas(t,e),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),t._vertsDirty=!1)},s.updateVerts=function(t){var e=t.node,i=e.width,n=e.height,r=e.anchorX*i,s=e.anchorY*n,a=t.spriteFrame,o=a.insetLeft,c=a.insetRight,u=a.insetTop,l=a.insetBottom,h=i-o-c,_=n-u-l,f=i/(o+c),d=n/(u+l);f=isNaN(f)||f>1?1:f,d=isNaN(d)||d>1?1:d,h=h<0?0:h,_=_<0?0:_;var p=this._local;p[0]=-r,p[1]=-s,p[2]=o*f-r,p[3]=l*d-s,p[4]=p[2]+h,p[5]=p[3]+_,p[6]=i-r,p[7]=n-s,this.updateWorldVerts(t)},s.updateUVs=function(t){for(var e=this._renderData.vDatas[0],i=t.spriteFrame.uvSliced,n=this.uvOffset,r=this.floatsPerVert,s=0;s<4;++s)for(var a=0;a<4;++a){var o=4*s+a,c=i[o],u=o*r;e[u+n]=c.u,e[u+n+1]=c.v}},s.updateWorldVerts=function(t){for(var e=t.node._worldMatrix.m,i=e[0],n=e[1],r=e[4],s=e[5],a=e[12],o=e[13],c=this._local,u=this._renderData.vDatas[0],l=this.floatsPerVert,h=0;h<4;++h)for(var _=c[2*h+1],f=0;f<4;++f){var d=c[2*f],p=(4*h+f)*l;u[p]=d*i+_*r+a,u[p+1]=d*n+_*s+o}},n})(((n=t("../../../../assembler-2d"))&&n.__esModule?n:{default:n}).default);i.default=s,Object.assign(s.prototype,{verticesCount:16,indicesCount:54}),e.exports=i.default}),{"../../../../assembler-2d":175}],205:[(function(t,e,i){"use strict";var n;function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}i.__esModule=!0,i.default=void 0;var s=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,r(e,i);var s=n.prototype;return s.initData=function(){this.verticesCount=0,this.contentWidth=0,this.contentHeight=0,this.rectWidth=0,this.rectHeight=0,this.hRepeat=0,this.vRepeat=0,this.row=0,this.col=0,this._renderData.createFlexData(0,4,6,this.getVfmt()),this._updateIndices()},s.initLocal=function(){this._local={x:[],y:[]}},s._updateIndices=function(){for(var t=this._renderData.iDatas[0],e=0,i=0,n=t.length;e0?this.sizableWidth:0,this.sizableHeight=this.sizableHeight>0?this.sizableHeight:0;var _=this.hRepeat=0===c?this.sizableWidth:this.sizableWidth/c,f=this.vRepeat=0===h?this.sizableHeight:this.sizableHeight/h,d=(this.row=Math.ceil(f+2))*(this.col=Math.ceil(_+2));this.verticesCount=4*d,this.indicesCount=6*d;var p=this._renderData._flexBuffer;p.reserve(this.verticesCount,this.indicesCount)&&(this._updateIndices(),this.updateColor(t)),p.used(this.verticesCount,this.indicesCount),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),t._vertsDirty=!1)},s.updateVerts=function(t){var e=t._spriteFrame,i=e._rect,n=t.node,r=n.anchorX*n.width,s=n.anchorY*n.height,a=this.row,o=this.col,c=this.contentWidth,u=this.contentHeight,l=this._local,h=l.x,_=l.y;h.length=_.length=0;var f,d,p=e.insetLeft,v=e.insetRight,g=i.width-p-v,m=e.insetTop,y=e.insetBottom,T=i.height-m-y,E=n.width/(p+v)>1?1:n.width/(p+v),A=n.height/(m+y)>1?1:n.height/(m+y);f=g>0?Math.floor(1e3*this.sizableWidth)/1e3%g==0?g:this.sizableWidth%g:this.sizableWidth,d=T>0?Math.floor(1e3*this.sizableHeight)/1e3%T==0?T:this.sizableHeight%T:this.sizableHeight;for(var C=0;C<=o;C++)0===C?h[C]=-r:C>0&&C0?C===o-1?p+f+g*(C-2)-r:p+Math.min(g,this.sizableWidth)+g*(C-2)-r:p+this.sizableWidth-r:C===o&&(h[C]=Math.min(p+this.sizableWidth+v,c)-r);for(var x=0;x<=a;x++)0===x?_[x]=-s:x>0&&x0?x===a-1?y+d+(x-2)*T-s:y+Math.min(T,this.sizableHeight)+(x-2)*T-s:y+this.sizableHeight-s:x===a&&(_[x]=Math.min(y+this.sizableHeight+m,u)-s);this.updateWorldVerts(t)},s.updateWorldVerts=function(t){for(var e,i,n,r,s=this._renderData,a=this._local,o=a.x,c=a.y,u=s.vDatas[0],l=this.row,h=this.col,_=t.node._worldMatrix.m,f=_[0],d=_[1],p=_[4],v=_[5],g=_[12],m=_[13],y=this.floatsPerVert,T=0,E=0,A=l;Eu?this.sizableHeight>=C*u?1:f%1:f;for(var b=0,S=h;ba?this.sizableWidth>=b*a?1:_%1:_,m?(0===C?(E[0]=g[0].u,E[1]=g[0].u,E[2]=g[4].u+(g[8].u-g[4].u)*p):C>2,n=this.vData.length,r=!1;if(i>n){for(;ns){for(;s>2,this._handler.updateMeshRange(t,e)},e.reset=function(){var t=this._initVerticesCount*this._verticesBytes>>2;this._reallocVData(t),this._reallocIData(this._initIndicesCount),this.usedVertices=0,this.usedVerticesFloats=0,this.usedIndices=0},t})();i.default=n,cc.FlexBuffer=n,e.exports=i.default}),{}],208:[(function(t,e){"use strict";var i,n=(i=t("../../../renderer/gfx"))&&i.__esModule?i:{default:i},r=(cc.sys.os===cc.sys.OS_IOS||cc.sys.os===cc.sys.OS_OSX)&&cc.sys.isBrowser&&/(OS 1[4-9])|(Version\/1[4-9])/.test(window.navigator.userAgent),s=cc.Class({name:"cc.MeshBuffer",ctor:function(t,e){this.init(t,e)},init:function(t,e){this.byteOffset=0,this.indiceOffset=0,this.vertexOffset=0,this.indiceStart=0,this._dirty=!1,this._vertexFormat=e,this._vertexBytes=this._vertexFormat._bytes,this._arrOffset=0,this._vbArr=[],this._vb=new n.default.VertexBuffer(t._device,e,n.default.USAGE_DYNAMIC,new ArrayBuffer,0),this._vbArr[0]=this._vb,this._ibArr=[],this._ib=new n.default.IndexBuffer(t._device,n.default.INDEX_FMT_UINT16,n.default.USAGE_STATIC,new ArrayBuffer,0),this._ibArr[0]=this._ib,this._vData=null,this._uintVData=null,this._iData=null,this._batcher=t,this._initVDataCount=256*e._bytes,this._initIDataCount=1536,this._offsetInfo={byteOffset:0,vertexOffset:0,indiceOffset:0},this._reallocBuffer()},uploadData:function(){if(0!==this.byteOffset&&this._dirty){var t=new Float32Array(this._vData.buffer,0,this.byteOffset>>2),e=new Uint16Array(this._iData.buffer,0,this.indiceOffset);this._vb.update(0,t),this._ib.update(0,e),this._dirty=!1}},switchBuffer:function(){var t=++this._arrOffset;this.byteOffset=0,this.vertexOffset=0,this.indiceOffset=0,this.indiceStart=0,t65535&&(this.uploadData(),this._batcher._flush(),this.switchBuffer())},requestStatic:function(t,e){this.checkAndSwitchBuffer(t);var i=this.byteOffset+t*this._vertexBytes,n=this.indiceOffset+e,r=this._vData.byteLength,s=this._iData.length;if(i>r||n>s){for(;r65535&&(this.uploadData(),this._batcher._flush())},s.prototype.forwardIndiceStartToOffset=function(){this.uploadData(),this.switchBuffer()}),cc.MeshBuffer=e.exports=s}),{"../../../renderer/gfx":265}],209:[(function(t,e){"use strict";var i=s(t("../../../renderer/core/input-assembler")),n=s(t("../../../renderer/memop/recycle-pool")),r=s(t("../../../renderer/scene/model"));function s(t){return t&&t.__esModule?t:{default:t}}var a=t("./vertex-format"),o=a.vfmtPosUvColor,c=a.vfmt3D,u=t("./quad-buffer"),l=t("./mesh-buffer"),h=t("./spine-buffer"),_=t("../../assets/material/CCMaterial"),f=(new(t("../../platform/id-generater"))("VertextFormat"),{}),d=new _,p=new i.default;p._count=0;var v=function(t,e){this._renderScene=e,this._device=t,this.walking=!1,this.material=d,this.cullingMask=1,this._iaPool=new n.default(function(){return new i.default},16),this._modelPool=new n.default(function(){return new r.default},16),this._quadBuffer=this.getBuffer("quad",o),this._meshBuffer=this.getBuffer("mesh",o),this._quadBuffer3D=this.getBuffer("quad",c),this._meshBuffer3D=this.getBuffer("mesh",c),this._buffer=this._meshBuffer,this._batchedModels=[],this._dummyNode=new cc.Node,this._sortKey=0,this.node=this._dummyNode,this.parentOpacity=1,this.parentOpacityDirty=0,this.worldMatDirty=0};v.prototype={constructor:v,reset:function(){this._iaPool.reset();for(var t=this._renderScene,e=this._batchedModels,i=0;i>2);this._vb.update(0,t),this._dirty=!1}},switchBuffer:function(){this._super();var t=new Uint16Array(this._iData.buffer,0,this._initIDataCount);this._ib.update(0,t)},_reallocBuffer:function(){this._reallocVData(!0),this._reallocIData(),this._fillQuadBuffer()}});cc.QuadBuffer=e.exports=n}),{"./mesh-buffer":208}],211:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=a;var n,r=(n=t("./flex-buffer"))&&n.__esModule?n:{default:n},s=t("./vertex-format");function a(){this.vDatas=[],this.uintVDatas=[],this.iDatas=[],this.meshCount=0,this._infos=null,this._flexBuffer=null}cc.js.mixin(a.prototype,{init:function(){},clear:function(){this.vDatas.length=0,this.iDatas.length=0,this.uintVDatas.length=0,this.meshCount=0,this._infos=null,this._flexBuffer&&this._flexBuffer.reset()},updateMesh:function(t,e,i){this.vDatas[t]=e,this.uintVDatas[t]=new Uint32Array(e.buffer,0,e.length),this.iDatas[t]=i,this.meshCount=this.vDatas.length},updateMeshRange:function(){},createData:function(t,e,i){var n=new Float32Array(e),r=new Uint16Array(i);this.updateMesh(t,n,r)},createQuadData:function(t,e,i){this.createData(t,e,i),this.initQuadIndices(this.iDatas[t])},createFlexData:function(t,e,i,n){n=n||s.vfmtPosUvColor,this._flexBuffer=new r.default(this,t,e,i,n)},initQuadIndices:function(t){for(var e=t.length/6,i=0,n=0;ir||n>s){for(;r0&&(t=t.substring(0,i));var n=/(\/|\\)([^\/\\]+)$/g.exec(t.replace(/(\/|\\)$/,""));if(!n)return t;var r=n[2];return e&&t.substring(t.length-e.length).toLowerCase()===e.toLowerCase()?r.substring(0,r.length-e.length):r},dirname:function(t){var e=n.exec(t);return e?e[2]:""},changeExtname:function(t,e){e=e||"";var i=t.indexOf("?"),n="";return i>0&&(n=t.substring(i),t=t.substring(0,i)),(i=t.lastIndexOf("."))<0?t+e+n:t.substring(0,i)+e+n},changeBasename:function(t,e,i){if(0===e.indexOf("."))return this.changeExtname(t,e);var n=t.indexOf("?"),r="",s=i?this.extname(t):"";return n>0&&(r=t.substring(n),t=t.substring(0,n)),n=(n=t.lastIndexOf("/"))<=0?0:n+1,t.substring(0,n)+e+s+r},_normalize:function(t){var e=t=String(t);do{e=t,t=t.replace(r,"")}while(e.length!==t.length);return t},sep:cc.sys.os===cc.sys.OS_WINDOWS?"\\":"/",stripSep:function(t){return t.replace(/[\/\\]$/,"")}},e.exports=cc.path}),{"../platform/CCSys":158}],215:[(function(t,e){"use strict";var i=function(t,e,i,n,r,s){this.a=t,this.b=e,this.c=i,this.d=n,this.tx=r,this.ty=s};i.create=function(t,e,i,n,r,s){return{a:t,b:e,c:i,d:n,tx:r,ty:s}},i.identity=function(){return{a:1,b:0,c:0,d:1,tx:0,ty:0}},i.clone=function(t){return{a:t.a,b:t.b,c:t.c,d:t.d,tx:t.tx,ty:t.ty}},i.concat=function(t,e,i){var n=e.a,r=e.b,s=e.c,a=e.d,o=e.tx,c=e.ty;return t.a=n*i.a+r*i.c,t.b=n*i.b+r*i.d,t.c=s*i.a+a*i.c,t.d=s*i.b+a*i.d,t.tx=o*i.a+c*i.c+i.tx,t.ty=o*i.b+c*i.d+i.ty,t},i.invert=function(t,e){var i=e.a,n=e.b,r=e.c,s=e.d,a=1/(i*s-n*r),o=e.tx,c=e.ty;return t.a=a*s,t.b=-a*n,t.c=-a*r,t.d=a*i,t.tx=a*(r*c-s*o),t.ty=a*(n*o-i*c),t},i.fromMat4=function(t,e){var i=e.m;return t.a=i[0],t.b=i[1],t.c=i[4],t.d=i[5],t.tx=i[12],t.ty=i[13],t},i.transformVec2=function(t,e,i,n){var r,s;return void 0===n?(n=i,r=e.x,s=e.y):(r=e,s=i),t.x=n.a*r+n.c*s+n.tx,t.y=n.b*r+n.d*s+n.ty,t},i.transformSize=function(t,e,i){return t.width=i.a*e.width+i.c*e.height,t.height=i.b*e.width+i.d*e.height,t},i.transformRect=function(t,e,i){var n=e.x,r=e.y,s=n+e.width,a=r+e.height,o=i.a*n+i.c*r+i.tx,c=i.b*n+i.d*r+i.ty,u=i.a*s+i.c*r+i.tx,l=i.b*s+i.d*r+i.ty,h=i.a*n+i.c*a+i.tx,_=i.b*n+i.d*a+i.ty,f=i.a*s+i.c*a+i.tx,d=i.b*s+i.d*a+i.ty,p=Math.min(o,u,h,f),v=Math.max(o,u,h,f),g=Math.min(c,l,_,d),m=Math.max(c,l,_,d);return t.x=p,t.y=g,t.width=v-p,t.height=m-g,t},i.transformObb=function(t,e,i,n,r,s){var a=r.x,o=r.y,c=r.width,u=r.height,l=s.a*a+s.c*o+s.tx,h=s.b*a+s.d*o+s.ty,_=s.a*c,f=s.b*c,d=s.c*u,p=s.d*u;e.x=l,e.y=h,i.x=_+l,i.y=f+h,t.x=d+l,t.y=p+h,n.x=_+d+l,n.y=f+p+h},cc.AffineTransform=e.exports=i}),{}],216:[(function(t,e){"use strict";var i=t("../platform/CCObject").Flags,n=t("./misc"),r=t("../platform/js"),s=t("../platform/id-generater"),a=t("../event-manager"),o=t("../renderer/render-flow"),c=i.Destroying,u=i.DontDestroy,l=i.Deactivating,h=new s("Node");function _(t){return t?"string"==typeof t?r.getClassByName(t):t:(cc.errorID(3804),null)}function f(t,e){if(e._sealed)for(var i=0;i0&&(r=p(n._children,e)))return r}return null}function v(t,e,i){for(var n=0;n0&&v(r._children,e,i)}}var g=cc.Class({name:"cc._BaseNode",extends:cc.Object,properties:{_parent:null,_children:[],_active:!0,_components:[],_prefab:null,_persistNode:{get:function(){return(this._objFlags&u)>0},set:function(t){t?this._objFlags|=u:this._objFlags&=~u}},name:{get:function(){return this._name},set:function(t){this._name=t}},uuid:{get:function(){return this._id}},children:{get:function(){return this._children}},childrenCount:{get:function(){return this._children.length}},active:{get:function(){return this._active},set:function(t){if(t=!!t,this._active!==t){this._active=t;var e=this._parent;e&&e._activeInHierarchy&&cc.director._nodeActivator.activateNode(this,t)}}},activeInHierarchy:{get:function(){return this._activeInHierarchy}}},ctor:function(t){this._name=void 0!==t?t:"New Node",this._activeInHierarchy=!1,this._id=h.getNewId(),cc.director._scheduler&&cc.director._scheduler.enableForTarget(this),this.__eventTargets=[]},getParent:function(){return this._parent},setParent:function(t){if(this._parent!==t){var e=this._parent;if(this._parent=t||null,this._onSetParent(t),t&&(a._setDirtyForNode(this),t._children.push(this),t.emit&&t.emit("child-added",this),t._renderFlag|=o.FLAG_CHILDREN),e){if(!(e._objFlags&c)){var i=e._children.indexOf(this);e._children.splice(i,1),e.emit&&e.emit("child-removed",this),this._onHierarchyChanged(e),0===e._children.length&&(e._renderFlag&=~o.FLAG_CHILDREN)}}else t&&this._onHierarchyChanged(null)}},attr:function(t){r.mixin(this,t)},getChildByUuid:function(t){if(!t)return cc.log("Invalid uuid"),null;for(var e=this._children,i=0,n=e.length;i0?(u=n,i=n._children,r=0,c[o]=i[r],o++):(c[o]=n,o++,s=!0);c.length=0,a._stackId--},cleanup:function(){},removeFromParent:function(t){this._parent&&(void 0===t&&(t=!0),this._parent.removeChild(this,t))},removeChild:function(t,e){this._children.indexOf(t)>-1&&((e||void 0===e)&&t.cleanup(),t.parent=null)},removeAllChildren:function(t){var e=this._children;void 0===t&&(t=!0);for(var i=e.length-1;i>=0;i--){var n=e[i];n&&(t&&n.cleanup(),n.parent=null)}this._children.length=0},isChildOf:function(t){var e=this;do{if(e===t)return!0;e=e._parent}while(e);return!1},getComponent:function(t){var e=_(t);return e?f(this,e):null},getComponents:function(t){var e=_(t),i=[];return e&&d(this,e,i),i},getComponentInChildren:function(t){var e=_(t);return e?p(this._children,e):null},getComponentsInChildren:function(t){var e=_(t),i=[];return e&&(d(this,e,i),v(this._children,e,i)),i},_checkMultipleComp:!1,addComponent:function(t){var e;if("string"==typeof t){if(!(e=r.getClassByName(t)))return cc.errorID(3807,t),cc._RFpeek()&&cc.errorID(3808,t),null}else{if(!t)return cc.errorID(3804),null;e=t}if("function"!=typeof e)return cc.errorID(3809),null;if(!r.isChildClassOf(e,cc.Component))return cc.errorID(3810),null;var i=e._requireComponent;if(i&&!this.getComponent(i)&&!this.addComponent(i))return null;var n=new e;return n.node=this,this._components.push(n),this._activeInHierarchy&&cc.director._nodeActivator.activateComp(n),n},_addComponentAt:!1,removeComponent:function(t){t?(t instanceof cc.Component||(t=this.getComponent(t)),t&&t.destroy()):cc.errorID(3813)},_getDependComponent:!1,_removeComponent:function(t){if(t){if(!(this._objFlags&c)){var e=this._components.indexOf(t);-1!==e?this._components.splice(e,1):t.node!==this&&cc.errorID(3815)}}else cc.errorID(3814)},destroy:function(){cc.Object.prototype.destroy.call(this)&&(this.active=!1)},destroyAllChildren:function(){for(var t=this._children,e=0;e>>1;i<=n;r=i+n>>>1){var s=t[r];if(s>e+1e-6)n=r-1;else{if(!(s>2],s[a[r++]]=n[(3&o)<<2|c>>4],s[a[r++]]=n[15&c]}return s.join("")}}),{"./misc":223}],220:[(function(t,e){"use strict";cc.find=e.exports=function(t,e){if(null==t)return cc.errorID(3814),null;if(e);else{var i=cc.director.getScene();if(!i)return null;e=i}for(var n=e,r="/"!==t[0]?0:1,s=t.split("/"),a=r;a>1,t|=t>>2,t|=t>>4,t|=t>>8,1+(t|=t>>16)},BUILTIN_CLASSID_RE:/^(?:cc|dragonBones|sp|ccsg)\..+/},r=new Array(123),s=0;s<123;++s)r[s]=64;for(var a=0;a<64;++a)r["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charCodeAt(a)]=a;n.BASE64_VALUES=r,n.pushToMap=function(t,e,i,n){var r=t[e];r?Array.isArray(r)?n?(r.push(r[0]),r[0]=i):r.push(i):t[e]=n?[i,r]:[r,i]:t[e]=i},n.clampf=function(t,e,i){if(e>i){var n=e;e=i,i=n}return t=0&&this.removeAt(e)},n.removeAt=function(t){this.array.splice(t,1),t<=this.i&&--this.i},n.fastRemove=function(t){var e=this.array.indexOf(t);e>=0&&this.fastRemoveAt(e)},n.fastRemoveAt=function(t){var e=this.array;e[t]=e[e.length-1],--e.length,t<=this.i&&--this.i},n.push=function(t){this.array.push(t)},e.exports=i}),{}],225:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=(function(){function t(){this.enabled=!1,this.count=0,this.maxSize=1024}var e=t.prototype;return e.get=function(){},e.put=function(){},e.clear=function(){},t})();i.default=n,cc.pool={},n.register=function(t,e){cc.pool[t]=e},e.exports=i.default}),{}],226:[(function(t,e){"use strict";cc._PrefabInfo=cc.Class({name:"cc.PrefabInfo",properties:{root:null,asset:null,fileId:"",sync:!1}}),e.exports={syncWithPrefab:function(t){var e=t._prefab;if(!e.asset)return cc.errorID(3701,t.name),void(t._prefab=null);var i=t._objFlags,n=t._parent,r=t._id,s=t._name,a=t._active,o=t._eulerAngles.x,c=t._eulerAngles.y,u=t._eulerAngles.z,l=t._localZOrder,h=t._trs,_=h[0],f=h[1],d=h[2];cc.game._isCloning=!0,e.asset._doInstantiate(t),cc.game._isCloning=!1,t._objFlags=i,t._parent=n,t._id=r,t._prefab=e,t._name=s,t._active=a,t._localZOrder=l,(h=t._trs)[0]=_,h[1]=f,h[2]=d,t._eulerAngles.x=o,t._eulerAngles.y=c,t._eulerAngles.z=u}}}),{}],227:[(function(t,e){"use strict";var i=t("../../platform/CCMacro"),n=t("./perf-counter"),r=!1,s=15,a=null,o=null,c=null;function u(){if(!a){a={fps:{desc:"Framerate (FPS)",below:30,average:500},draws:{desc:"Draw Call"},frame:{desc:"Frame time (ms)",min:0,max:50,average:500},logic:{desc:"Game Logic (ms)",min:0,max:50,average:500,color:"#080"},render:{desc:"Renderer (ms)",min:0,max:50,average:500,color:"#f90"},mode:{desc:cc.game.renderType===cc.game.RENDER_TYPE_WEBGL?"WebGL":"Canvas",min:1}};var t=performance.now();for(var e in a)a[e]._counter=new n(e,a[e],t)}}function l(){if(!o||!o.isValid){(o=new cc.Node("PROFILER-NODE")).x=o.y=10,o.groupIndex=cc.Node.BuiltinGroupIndex.DEBUG,cc.Camera._setupDebugCamera(),o.zIndex=i.MAX_ZINDEX,cc.game.addPersistRootNode(o);var t=new cc.Node("LEFT-PANEL");t.anchorX=t.anchorY=0;var e=t.addComponent(cc.Label);e.fontSize=s,e.lineHeight=s,t.parent=o;var n=new cc.Node("RIGHT-PANEL");n.anchorX=1,n.anchorY=0,n.x=200;var r=n.addComponent(cc.Label);r.horizontalAlign=cc.Label.HorizontalAlign.RIGHT,r.fontSize=s,r.lineHeight=s,n.parent=o,cc.sys.platform!==cc.sys.BAIDU_GAME_SUB&&cc.sys.platform!==cc.sys.WECHAT_GAME_SUB&&(e.cacheMode=cc.Label.CacheMode.CHAR,r.cacheMode=cc.Label.CacheMode.CHAR),c={left:e,right:r}}}function h(){l();var t=cc.director._lastUpdate;a.frame._counter.start(t),a.logic._counter.start(t)}function _(){var t=performance.now();cc.director.isPaused()?a.frame._counter.start(t):a.logic._counter.end(t),a.render._counter.start(t)}function f(){var t=performance.now();a.render._counter.end(t),a.draws._counter.value=cc.renderer.drawCalls,a.frame._counter.end(t),a.fps._counter.frame(t);var e="",i="";for(var n in a){var r=a[n];r._counter.sample(t),e+=r.desc+"\n",i+=r._counter.human()+"\n"}c&&(c.left.string=e,c.right.string=i)}cc.profiler=e.exports={isShowingStats:function(){return r},hideStats:function(){r&&(o&&(o.active=!1),cc.director.off(cc.Director.EVENT_BEFORE_UPDATE,h),cc.director.off(cc.Director.EVENT_AFTER_UPDATE,_),cc.director.off(cc.Director.EVENT_AFTER_DRAW,f),r=!1)},showStats:function(){r||(u(),o&&(o.active=!0),cc.director.on(cc.Director.EVENT_BEFORE_UPDATE,h),cc.director.on(cc.Director.EVENT_AFTER_UPDATE,_),cc.director.on(cc.Director.EVENT_AFTER_DRAW,f),r=!0)}}}),{"../../platform/CCMacro":154,"./perf-counter":229}],228:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Counter",ctor:function(t,e,i){this._id=t,this._opts=e||{},this._value=0,this._total=0,this._averageValue=0,this._accumValue=0,this._accumSamples=0,this._accumStart=i},properties:{value:{get:function(){return this._value},set:function(t){this._value=t}}},_average:function(t,e){if(this._opts.average){this._accumValue+=t,++this._accumSamples;var i=e;i-this._accumStart>=this._opts.average&&(this._averageValue=this._accumValue/this._accumSamples,this._accumValue=0,this._accumStart=i,this._accumSamples=0)}},sample:function(t){this._average(this._value,t)},human:function(){var t=this._opts.average?this._averageValue:this._value;return Math.round(100*t)/100},alarm:function(){return this._opts.below&&this._valuethis._opts.over}});e.exports=i}),{}],229:[(function(t,e){"use strict";var i=t("./counter"),n=cc.Class({name:"cc.PerfCounter",extends:i,ctor:function(t,e,i){this._time=i},start:function(t){this._time=t},end:function(t){this._value=t-this._time,this._average(this._value)},tick:function(){this.end(),this.start()},frame:function(t){var e=t,i=e-this._time;this._total++,i>(this._opts.average||1e3)&&(this._value=1e3*this._total/i,this._total=0,this._time=e,this._average(this._value))}});e.exports=n}),{"./counter":228}],230:[(function(t,e){"use strict";var i,n=new(((i=t("../platform/js"))&&i.__esModule?i:{default:i}).default.Pool)(2);function r(t){this.count=0,this.limit=t,this.datas={},this.head=null,this.tail=null}n.get=function(){return this._get()||{key:null,value:null,prev:null,next:null}},r.prototype.moveToHead=function(t){t.next=this.head,t.prev=null,null!==this.head&&(this.head.prev=t),this.head=t,null===this.tail&&(this.tail=t),this.count++,this.datas[t.key]=t},r.prototype.put=function(t,e){var i=n.get();if(i.key=t,i.value=e,this.count>=this.limit){var r=this.tail;delete this.datas[r.key],this.count--,this.tail=r.prev,this.tail.next=null,r.prev=null,r.next=null,n.put(r)}this.moveToHead(i)},r.prototype.remove=function(t){null!==t.prev?t.prev.next=t.next:this.head=t.next,null!==t.next?t.next.prev=t.prev:this.tail=t.prev,delete this.datas[t.key],this.count--},r.prototype.get=function(t){var e=this.datas[t];return e?(this.remove(e),this.moveToHead(e),e.value):null},r.prototype.clear=function(){this.count=0,this.datas={},this.head=null,this.tail=null},r.prototype.has=function(t){return!!this.datas[t]},r.prototype.delete=function(t){var e=this.datas[t];this.remove(e)};var s=new r(100),a={BASELINE_RATIO:.26,MIDDLE_RATIO:.37,BASELINE_OFFSET:0,label_wordRex:/([a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430-\u044f\u0410-\u042f\u0401\u0451]+|\S)/,label_symbolRex:/^[!,.:;'}\]%\?>\u3001\u2018\u201c\u300b\uff1f\u3002\uff0c\uff01]/,label_lastWordRex:/([a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]+|\S)$/,label_lastEnglish:/[a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]+$/,label_firstEnglish:/^[a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]/,highSurrogateRex:/[\uD800-\uDBFF]/,lowSurrogateRex:/[\uDC00-\uDFFF]/,label_wrapinspection:!0,__CHINESE_REG:/^[\u4E00-\u9FFF\u3400-\u4DFF]+$/,__JAPANESE_REG:/[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]|[\u2605-\u2606]|[\u2190-\u2195]|\u203B/g,__KOREAN_REG:/^[\u1100-\u11FF]|[\u3130-\u318F]|[\uA960-\uA97F]|[\uAC00-\uD7AF]|[\uD7B0-\uD7FF]+$/,isUnicodeCJK:function(t){return this.__CHINESE_REG.test(t)||this.__JAPANESE_REG.test(t)||this.__KOREAN_REG.test(t)},isUnicodeSpace:function(t){return(t=t.charCodeAt(0))>=9&&t<=13||32===t||133===t||160===t||5760===t||t>=8192&&t<=8202||8232===t||8233===t||8239===t||8287===t||12288===t},safeMeasureText:function(t,e,i){var n=(i||t.font)+"\ud83c\udfae"+e,r=s.get(n);if(null!==r)return r;var a=t.measureText(e),o=a&&a.width||0;return s.put(n,o),o},_safeSubstring:function(t,e,i){var n=e,r=i,s=t[e];if(this.lowSurrogateRex.test(s)&&n--,void 0!==i)if(i-1!==e){var a=t[i-1];this.highSurrogateRex.test(a)&&r--}else this.highSurrogateRex.test(s)&&r++;return t.substring(n,r)},fragmentText:function(t,e,i,n){var r=[];if(0===t.length||i<0)return r.push(""),r;for(var s=t;e>i&&s.length>1;){for(var a=s.length*(i/e)|0,o=this._safeSubstring(s,a),c=e-n(o),u=o,l=0,h=0;c>i&&h++<10;)a*=i/c,a|=0,c=e-n(o=this._safeSubstring(s,a));for(h=0;c<=i&&h++<10;){if(o){var _=this.label_wordRex.exec(o);l=_?_[0].length:1,u=o}a+=l,c=e-n(o=this._safeSubstring(s,a))}0==(a-=l)?(a=1,u=this._safeSubstring(s,1)):1===a&&this.highSurrogateRex.test(s[0])&&(a=2,u=this._safeSubstring(s,2));var f,d=this._safeSubstring(s,0,a);this.label_wrapinspection&&this.label_symbolRex.test(u||o)&&(0==(a-=(f=this.label_lastWordRex.exec(d))?f[0].length:0)&&(a=1),u=this._safeSubstring(s,a),d=this._safeSubstring(s,0,a)),this.label_firstEnglish.test(u)&&(f=this.label_lastEnglish.exec(d))&&d!==f[0]&&(a-=f[0].length,u=this._safeSubstring(s,a),d=this._safeSubstring(s,0,a)),0===r.length?r.push(d):(d=d.trimLeft()).length>0&&r.push(d),e=n(s=u||o)}return 0===r.length?r.push(s):(s=s.trimLeft()).length>0&&r.push(s),r}};cc.textUtils=e.exports=a}),{"../platform/js":170}],231:[(function(t,e){"use strict";var i=t("../assets/CCTexture2D"),n={loadImage:function(t,e,i){cc.assertID(t,3103);var n=cc.assetManager.assets.get(t);if(n)return n.loaded?(e&&e.call(i,null,n),n):(n.once("load",(function(){e&&e.call(i,null,n)}),i),n);cc.assetManager.loadRemote(t,(function(t,n){e&&e.call(i,t,n)}))},cacheImage:function(t,e){if(t&&e){var n=new i;return n.initWithElement(e),cc.assetManager.assets.add(t,n),n}},postLoadTexture:function(t,e){t.loaded?e&&e():t.nativeUrl?cc.assetManager.postLoadNative(t,e):e&&e()}};e.exports=n}),{"../assets/CCTexture2D":73}],232:[(function(t,e){"use strict";var i=t("./node-unit"),n=t("./node-mem-pool");e.exports={NodeMemPool:new n(i)}}),{"./node-mem-pool":234,"./node-unit":235}],233:[(function(t,e){"use strict";var i=function(t){this._unitClass=t,this._pool=[],this._findOrder=[]},n=i.prototype;n._initNative=function(){this._nativeMemPool=new renderer.MemPool},n._buildUnit=function(t){return new this._unitClass(t,this)},n._destroyUnit=function(t){this._pool[t]=null;for(var e=0,i=this._findOrder.length;e1&&e.isAllFree()&&this._destroyUnit(t.unitID),e},e.exports=i}),{}],234:[(function(t,e){"use strict";var i,n=t("./mem-pool"),r=function(t){n.call(this,t)};(i=function(){}).prototype=n.prototype;var s=r.prototype=new i;s._initNative=function(){this._nativeMemPool=new renderer.NodeMemPool},s._destroyUnit=function(t){n.prototype._destroyUnit.call(this,t)},e.exports=r}),{"./mem-pool":233}],235:[(function(t,e){"use strict";var i,n=t("../../value-types/utils"),r=(Uint32Array,10*n.FLOAT_BYTES),s=16*n.FLOAT_BYTES,a=16*n.FLOAT_BYTES,o=(Uint32Array,Uint32Array,Int32Array,Uint8Array,Uint8Array,Uint32Array,n.FLOAT_BYTES,t("./unit-base")),c=function(t,e){o.call(this,t,e);var i=this._contentNum;this.trsList=new n.FLOAT_ARRAY_TYPE(10*i),this.localMatList=new n.FLOAT_ARRAY_TYPE(16*i),this.worldMatList=new n.FLOAT_ARRAY_TYPE(16*i);for(var c=0;c",e=this._signData[2*e+0];for(var n=0,r="",s=this._contentNum,a=0;a");var o=t+n;console.log("unitID:",this.unitID,"spaceNum:",t,"calc using num:",n,"store using num:",this._data[1],"calc total num:",o,"actually total num:",this._contentNum),console.log("free info:",i),console.log("using info:",r),n!=this._data[1]&&cc.error("using num error","calc using num:",n,"store using num:",this._data[1]),t+n!=this._contentNum&&cc.error("total num error","calc total num:",o,"actually total num:",this._contentNum)},e.exports=i}),{}],237:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("./value-type")),r=a(t("../platform/CCClass")),s=a(t("../utils/misc"));function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i>>0)+(n<<16)+(i<<8)+(0|e),s}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,c(e,i),n.copy=function(t,e){return t.r=e.r,t.g=e.g,t.b=e.b,t.a=e.a,t},n.clone=function(t){return new n(t.r,t.g,t.b,t.a)},n.set=function(t,e,i,n,r){return void 0===e&&(e=255),void 0===i&&(i=255),void 0===n&&(n=255),void 0===r&&(r=255),t.r=e,t.g=i,t.b=n,t.a=r,t},n.fromHex=function(t,e){var i=e>>24&255,n=e>>16&255,r=e>>8&255,s=255&e;return t.r=i,t.g=n,t.b=r,t.a=s,t},n.fromHEX=function(t,e){return e=0===e.indexOf("#")?e.substring(1):e,t.r=parseInt(e.substr(0,2),16)||0,t.g=parseInt(e.substr(2,2),16)||0,t.b=parseInt(e.substr(4,2),16)||0,t.a=parseInt(e.substr(6,2),16)||255,t._val=(t.a<<24>>>0)+(t.b<<16)+(t.g<<8)+t.r,t},n.add=function(t,e,i){return t.r=e.r+i.r,t.g=e.g+i.g,t.b=e.b+i.b,t.a=e.a+i.a,t},n.subtract=function(t,e,i){return t.r=e.r-i.r,t.g=e.g-i.g,t.b=e.b-i.b,t.a=e.a-i.a,t},n.multiply=function(t,e,i){return t.r=e.r*i.r,t.g=e.g*i.g,t.b=e.b*i.b,t.a=e.a*i.a,t},n.divide=function(t,e,i){return t.r=e.r/i.r,t.g=e.g/i.g,t.b=e.b/i.b,t.a=e.a/i.a,t},n.scale=function(t,e,i){return t.r=e.r*i,t.g=e.g*i,t.b=e.b*i,t.a=e.a*i,t},n.lerp=function(t,e,i,n){var r=e.r,s=e.g,a=e.b,o=e.a;return t.r=r+n*(i.r-r),t.g=s+n*(i.g-s),t.b=a+n*(i.b-a),t.a=o+n*(i.a-o),t},n.toArray=function(t,e,i){void 0===i&&(i=0);var r=e instanceof n||e.a>1?1/255:1;return t[i+0]=e.r*r,t[i+1]=e.g*r,t[i+2]=e.b*r,t[i+3]=e.a*r,t},n.fromArray=function(t,e,i){return void 0===i&&(i=0),e.r=255*t[i+0],e.g=255*t[i+1],e.b=255*t[i+2],e.a=255*t[i+3],e},n.premultiplyAlpha=function(t,e){var i=e.a/255;return t.r=e.r*i,t.g=e.g*i,t.b=e.b*i,t._fastSetA(e.a),t};var r,a,u,l=n.prototype;return l.clone=function(){var t=new n;return t._val=this._val,t},l.equals=function(t){return t&&this._val===t._val},l.lerp=function(t,e,i){i=i||new n;var r=this.r,s=this.g,a=this.b,o=this.a;return i.r=r+(t.r-r)*e,i.g=s+(t.g-s)*e,i.b=a+(t.b-a)*e,i.a=o+(t.a-o)*e,i},l.toString=function(){return"rgba("+this.r.toFixed()+", "+this.g.toFixed()+", "+this.b.toFixed()+", "+this.a.toFixed()+")"},l.getR=function(){return 255&this._val},l.setR=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4294967040&this._val|t)>>>0,this},l.getG=function(){return(65280&this._val)>>8},l.setG=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4294902015&this._val|t<<8)>>>0,this},l.getB=function(){return(16711680&this._val)>>16},l.setB=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4278255615&this._val|t<<16)>>>0,this},l.getA=function(){return(4278190080&this._val)>>>24},l.setA=function(t){return t=~~s.default.clampf(t,0,255),this._val=(16777215&this._val|t<<24)>>>0,this},l.toCSS=function(t){return t&&"rgba"!==t?"rgb"===t?"rgb("+this.r+","+this.g+","+this.b+")":"#"+this.toHEX(t):"rgba("+this.r+","+this.g+","+this.b+","+(this.a/255).toFixed(2)+")"},l.fromHEX=function(t){t=0===t.indexOf("#")?t.substring(1):t;var e=parseInt(t.substr(0,2),16)||0,i=parseInt(t.substr(2,2),16)||0,n=parseInt(t.substr(4,2),16)||0,r=parseInt(t.substr(6,2),16)||255;return this._val=(r<<24>>>0)+(n<<16)+(i<<8)+e,this},l.toHEX=function(t){var e=[(this.r<16?"0":"")+this.r.toString(16),(this.g<16?"0":"")+this.g.toString(16),(this.b<16?"0":"")+this.b.toString(16)];return"#rgb"===t?(e[0]=e[0][0],e[1]=e[1][0],e[2]=e[2][0]):"#rrggbbaa"===t&&e.push((this.a<16?"0":"")+this.a.toString(16)),e.join("")},l.toRGBValue=function(){return 16777215&this._val},l.fromHSV=function(t,e,i){var n,r,s;if(0===e)n=r=s=i;else if(0===i)n=r=s=0;else{1===t&&(t=0),t*=6;var a=Math.floor(t),o=t-a,c=i*(1-e),u=i*(1-e*o),l=i*(1-e*(1-o));switch(a){case 0:n=i,r=l,s=c;break;case 1:n=u,r=i,s=c;break;case 2:n=c,r=i,s=l;break;case 3:n=c,r=u,s=i;break;case 4:n=l,r=c,s=i;break;case 5:n=i,r=c,s=u}}return n*=255,r*=255,s*=255,this._val=(this.a<<24>>>0)+(s<<16)+(r<<8)+(0|n),this},l.toHSV=function(){var t=this.r/255,e=this.g/255,i=this.b/255,n={h:0,s:0,v:0},r=Math.max(t,e,i),s=Math.min(t,e,i),a=0;return n.v=r,n.s=r?(r-s)/r:0,n.s?(a=r-s,n.h=t===r?(e-i)/a:e===r?2+(i-t)/a:4+(t-e)/a,n.h/=6,n.h<0&&(n.h+=1)):n.h=0,n},l.set=function(t){return t._val?this._val=t._val:(this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a),this},l._fastSetA=function(t){this._val=(16777215&this._val|t<<24)>>>0},l.multiply=function(t){var e=(255&this._val)*t.r>>8,i=(65280&this._val)*t.g>>8,n=(16711680&this._val)*t.b>>8,r=((4278190080&this._val)>>>8)*t.a;return this._val=4278190080&r|16711680&n|65280&i|255&e,this},r=n,u=[{key:"WHITE",get:function(){return new n(255,255,255,255)}},{key:"BLACK",get:function(){return new n(0,0,0,255)}},{key:"TRANSPARENT",get:function(){return new n(0,0,0,0)}},{key:"GRAY",get:function(){return new n(127.5,127.5,127.5)}},{key:"RED",get:function(){return new n(255,0,0)}},{key:"GREEN",get:function(){return new n(0,255,0)}},{key:"BLUE",get:function(){return new n(0,0,255)}},{key:"YELLOW",get:function(){return new n(255,235,4)}},{key:"ORANGE",get:function(){return new n(255,127,0)}},{key:"CYAN",get:function(){return new n(0,255,255)}},{key:"MAGENTA",get:function(){return new n(255,0,255)}}],(a=[{key:"r",get:function(){return this.getR()},set:function(t){this.setR(t)}},{key:"g",get:function(){return this.getG()},set:function(t){this.setG(t)}},{key:"b",get:function(){return this.getB()},set:function(t){this.setB(t)}},{key:"a",get:function(){return this.getA()},set:function(t){this.setA(t)}}])&&o(r.prototype,a),u&&o(r,u),n})(n.default);i.default=u,u.div=u.divide,u.sub=u.subtract,u.mul=u.multiply,u.WHITE_R=u.WHITE,u.BLACK_R=u.BLACK,u.TRANSPARENT_R=u.TRANSPARENT,u.GRAY_R=u.GRAY,u.RED_R=u.RED,u.GREEN_R=u.GREEN,u.BLUE_R=u.BLUE,u.YELLOW_R=u.YELLOW,u.ORANGE_R=u.ORANGE,u.CYAN_R=u.CYAN,u.MAGENTA_R=u.MAGENTA,r.default.fastDefine("cc.Color",u,{r:0,g:0,b:0,a:255}),cc.Color=u,cc.color=function(t,e,i,n){return"string"==typeof t?(new u).fromHEX(t):"object"==typeof t?new u(t.r,t.g,t.b,t.a):new u(t,e,i,n)},e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./value-type":246}],238:[(function(t,e,i){"use strict";i.__esModule=!0;var n={Vec2:!0,Vec3:!0,Vec4:!0,Mat4:!0,Mat3:!0,Rect:!0,Size:!0,Color:!0,Quat:!0,Trs:!0};i.Vec4=i.Vec3=i.Vec2=i.Trs=i.Size=i.Rect=i.Quat=i.Mat4=i.Mat3=i.Color=void 0;var r=p(t("./vec2"));i.Vec2=r.default;var s=p(t("./vec3"));i.Vec3=s.default;var a=p(t("./vec4"));i.Vec4=a.default;var o=p(t("./mat4"));i.Mat4=o.default;var c=p(t("./mat3"));i.Mat3=c.default;var u=p(t("./rect"));i.Rect=u.default;var l=p(t("./size"));i.Size=l.default;var h=p(t("./color"));i.Color=h.default;var _=p(t("./quat"));i.Quat=_.default;var f=p(t("./trs"));i.Trs=f.default;var d=t("./utils");function p(t){return t&&t.__esModule?t:{default:t}}Object.keys(d).forEach((function(t){"default"!==t&&"__esModule"!==t&&(Object.prototype.hasOwnProperty.call(n,t)||t in i&&i[t]===d[t]||(i[t]=d[t]))})),cc.math=e.exports}),{"./color":237,"./mat3":239,"./mat4":240,"./quat":241,"./rect":242,"./size":243,"./trs":244,"./utils":245,"./vec2":247,"./vec3":248,"./vec4":249}],239:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("../value-types/utils"),s=(n=t("./vec3"))&&n.__esModule?n:{default:n},a=(function(){function t(t,e,i,n,s,a,o,c,u){if(void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===c&&(c=0),void 0===u&&(u=1),this.m=void 0,t instanceof r.FLOAT_ARRAY_TYPE)this.m=t;else{this.m=new r.FLOAT_ARRAY_TYPE(9);var l=this.m;l[0]=t,l[1]=e,l[2]=i,l[3]=n,l[4]=s,l[5]=a,l[6]=o,l[7]=c,l[8]=u}}return t.create=function(e,i,n,r,s,a,o,c,u){return void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===c&&(c=0),void 0===u&&(u=1),new t(e,i,n,r,s,a,o,c,u)},t.clone=function(e){var i=e.m;return new t(i[0],i[1],i[2],i[3],i[4],i[5],i[6],i[7],i[8])},t.copy=function(t,e){return t.m.set(e.m),t},t.set=function(t,e,i,n,r,s,a,o,c,u){var l=t.m;return l[0]=e,l[1]=i,l[2]=n,l[3]=r,l[4]=s,l[5]=a,l[6]=o,l[7]=c,l[8]=u,t},t.identity=function(t){var e=t.m;return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,t},t.transpose=function(t,e){var i=e.m,n=t.m;if(t===e){var r=i[1],s=i[2],a=i[5];n[1]=i[3],n[2]=i[6],n[3]=r,n[5]=i[7],n[6]=s,n[7]=a}else n[0]=i[0],n[1]=i[3],n[2]=i[6],n[3]=i[1],n[4]=i[4],n[5]=i[7],n[6]=i[2],n[7]=i[5],n[8]=i[8];return t},t.invert=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8],f=_*c-u*h,d=-_*o+u*l,p=h*o-c*l,v=r*f+s*d+a*p;return v?(v=1/v,n[0]=f*v,n[1]=(-_*s+a*h)*v,n[2]=(u*s-a*c)*v,n[3]=d*v,n[4]=(_*r-a*l)*v,n[5]=(-u*r+a*o)*v,n[6]=p*v,n[7]=(-h*r+s*l)*v,n[8]=(c*r-s*o)*v,t):t},t.adjoint=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8];return n[0]=c*_-u*h,n[1]=a*h-s*_,n[2]=s*u-a*c,n[3]=u*l-o*_,n[4]=r*_-a*l,n[5]=a*o-r*u,n[6]=o*h-c*l,n[7]=s*l-r*h,n[8]=r*c-s*o,t},t.determinant=function(t){var e=t.m,i=e[0],n=e[1],r=e[2],s=e[3],a=e[4],o=e[5],c=e[6],u=e[7],l=e[8];return i*(l*a-o*u)+n*(-l*s+o*c)+r*(u*s-a*c)},t.multiply=function(t,e,i){var n=e.m,r=i.m,s=t.m,a=n[0],o=n[1],c=n[2],u=n[3],l=n[4],h=n[5],_=n[6],f=n[7],d=n[8],p=r[0],v=r[1],g=r[2],m=r[3],y=r[4],T=r[5],E=r[6],A=r[7],C=r[8];return s[0]=p*a+v*u+g*_,s[1]=p*o+v*l+g*f,s[2]=p*c+v*h+g*d,s[3]=m*a+y*u+T*_,s[4]=m*o+y*l+T*f,s[5]=m*c+y*h+T*d,s[6]=E*a+A*u+C*_,s[7]=E*o+A*l+C*f,s[8]=E*c+A*h+C*d,t},t.multiplyMat4=function(t,e,i){var n=e.m,r=i.m,s=t.m,a=n[0],o=n[1],c=n[2],u=n[3],l=n[4],h=n[5],_=n[6],f=n[7],d=n[8],p=r[0],v=r[1],g=r[2],m=r[4],y=r[5],T=r[6],E=r[8],A=r[9],C=r[10];return s[0]=p*a+v*u+g*_,s[1]=p*o+v*l+g*f,s[2]=p*c+v*h+g*d,s[3]=m*a+y*u+T*_,s[4]=m*o+y*l+T*f,s[5]=m*c+y*h+T*d,s[6]=E*a+A*u+C*_,s[7]=E*o+A*l+C*f,s[8]=E*c+A*h+C*d,t},t.translate=function(t,e,i){var n=e.m,r=t.m,s=n[0],a=n[1],o=n[2],c=n[3],u=n[4],l=n[5],h=n[6],_=n[7],f=n[8],d=i.x,p=i.y;return r[0]=s,r[1]=a,r[2]=o,r[3]=c,r[4]=u,r[5]=l,r[6]=d*s+p*c+h,r[7]=d*a+p*u+_,r[8]=d*o+p*l+f,t},t.rotate=function(t,e,i){var n=e.m,r=t.m,s=n[0],a=n[1],o=n[2],c=n[3],u=n[4],l=n[5],h=n[6],_=n[7],f=n[8],d=Math.sin(i),p=Math.cos(i);return r[0]=p*s+d*c,r[1]=p*a+d*u,r[2]=p*o+d*l,r[3]=p*c-d*s,r[4]=p*u-d*a,r[5]=p*l-d*o,r[6]=h,r[7]=_,r[8]=f,t},t.scale=function(t,e,i){var n=i.x,r=i.y,s=e.m,a=t.m;return a[0]=n*s[0],a[1]=n*s[1],a[2]=n*s[2],a[3]=r*s[3],a[4]=r*s[4],a[5]=r*s[5],a[6]=s[6],a[7]=s[7],a[8]=s[8],t},t.fromMat4=function(t,e){var i=e.m,n=t.m;return n[0]=i[0],n[1]=i[1],n[2]=i[2],n[3]=i[4],n[4]=i[5],n[5]=i[6],n[6]=i[8],n[7]=i[9],n[8]=i[10],t},t.fromTranslation=function(t,e){var i=t.m;return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=1,i[5]=0,i[6]=e.x,i[7]=e.y,i[8]=1,t},t.fromRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e),r=t.m;return r[0]=n,r[1]=i,r[2]=0,r[3]=-i,r[4]=n,r[5]=0,r[6]=0,r[7]=0,r[8]=1,t},t.fromScaling=function(t,e){var i=t.m;return i[0]=e.x,i[1]=0,i[2]=0,i[3]=0,i[4]=e.y,i[5]=0,i[6]=0,i[7]=0,i[8]=1,t},t.fromQuat=function(t,e){var i=t.m,n=e.x,r=e.y,s=e.z,a=e.w,o=n+n,c=r+r,u=s+s,l=n*o,h=r*o,_=r*c,f=s*o,d=s*c,p=s*u,v=a*o,g=a*c,m=a*u;return i[0]=1-_-p,i[3]=h-m,i[6]=f+g,i[1]=h+m,i[4]=1-l-p,i[7]=d-v,i[2]=f-g,i[5]=d+v,i[8]=1-l-_,t},t.fromViewUp=function(e,i,n){var a,o,c;return(a=new s.default(0,1,0),o=new s.default,c=new s.default,function(e,i,n){return s.default.lengthSqr(i)0?(r=2*Math.sqrt(n+1),t.w=.25*r,t.x=(i[6]-i[9])/r,t.y=(i[8]-i[2])/r,t.z=(i[1]-i[4])/r):i[0]>i[5]&&i[0]>i[10]?(r=2*Math.sqrt(1+i[0]-i[5]-i[10]),t.w=(i[6]-i[9])/r,t.x=.25*r,t.y=(i[1]+i[4])/r,t.z=(i[8]+i[2])/r):i[5]>i[10]?(r=2*Math.sqrt(1+i[5]-i[0]-i[10]),t.w=(i[8]-i[2])/r,t.x=(i[1]+i[4])/r,t.y=.25*r,t.z=(i[6]+i[9])/r):(r=2*Math.sqrt(1+i[10]-i[0]-i[5]),t.w=(i[1]-i[4])/r,t.x=(i[8]+i[2])/r,t.y=(i[6]+i[9])/r,t.z=.25*r),t},r.toRTS=function(t,e,i,n){var r=t.m,o=I.m;n.x=s.default.set(w,r[0],r[1],r[2]).mag(),o[0]=r[0]/n.x,o[1]=r[1]/n.x,o[2]=r[2]/n.x,n.y=s.default.set(w,r[4],r[5],r[6]).mag(),o[3]=r[4]/n.y,o[4]=r[5]/n.y,o[5]=r[6]/n.y,n.z=s.default.set(w,r[8],r[9],r[10]).mag(),o[6]=r[8]/n.z,o[7]=r[9]/n.z,o[8]=r[10]/n.z,c.default.determinant(I)<0&&(n.x*=-1,o[0]*=-1,o[1]*=-1,o[2]*=-1),a.default.fromMat3(e,I),s.default.set(i,r[12],r[13],r[14])},r.fromRTS=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=e.w,c=r+r,u=s+s,l=a+a,h=r*c,_=r*u,f=r*l,d=s*u,p=s*l,v=a*l,g=o*c,m=o*u,y=o*l,T=n.x,E=n.y,A=n.z,C=t.m;return C[0]=(1-(d+v))*T,C[1]=(_+y)*T,C[2]=(f-m)*T,C[3]=0,C[4]=(_-y)*E,C[5]=(1-(h+v))*E,C[6]=(p+g)*E,C[7]=0,C[8]=(f+m)*A,C[9]=(p-g)*A,C[10]=(1-(h+d))*A,C[11]=0,C[12]=i.x,C[13]=i.y,C[14]=i.z,C[15]=1,t},r.fromRTSOrigin=function(t,e,i,n,r){var s=e.x,a=e.y,o=e.z,c=e.w,u=s+s,l=a+a,h=o+o,_=s*u,f=s*l,d=s*h,p=a*l,v=a*h,g=o*h,m=c*u,y=c*l,T=c*h,E=n.x,A=n.y,C=n.z,x=r.x,b=r.y,S=r.z,R=t.m;return R[0]=(1-(p+g))*E,R[1]=(f+T)*E,R[2]=(d-y)*E,R[3]=0,R[4]=(f-T)*A,R[5]=(1-(_+g))*A,R[6]=(v+m)*A,R[7]=0,R[8]=(d+y)*C,R[9]=(v-m)*C,R[10]=(1-(_+p))*C,R[11]=0,R[12]=i.x+x-(R[0]*x+R[4]*b+R[8]*S),R[13]=i.y+b-(R[1]*x+R[5]*b+R[9]*S),R[14]=i.z+S-(R[2]*x+R[6]*b+R[10]*S),R[15]=1,t},r.fromQuat=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w,a=i+i,o=n+n,c=r+r,u=i*a,l=n*a,h=n*o,_=r*a,f=r*o,d=r*c,p=s*a,v=s*o,g=s*c,m=t.m;return m[0]=1-h-d,m[1]=l+g,m[2]=_-v,m[3]=0,m[4]=l-g,m[5]=1-u-d,m[6]=f+p,m[7]=0,m[8]=_+v,m[9]=f-p,m[10]=1-u-h,m[11]=0,m[12]=0,m[13]=0,m[14]=0,m[15]=1,t},r.frustum=function(t,e,i,n,r,s,a){var o=1/(i-e),c=1/(r-n),u=1/(s-a),l=t.m;return l[0]=2*s*o,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=2*s*c,l[6]=0,l[7]=0,l[8]=(i+e)*o,l[9]=(r+n)*c,l[10]=(a+s)*u,l[11]=-1,l[12]=0,l[13]=0,l[14]=a*s*2*u,l[15]=0,t},r.perspective=function(t,e,i,n,r){var s=1/Math.tan(e/2),a=1/(n-r),o=t.m;return o[0]=s/i,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=s,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(r+n)*a,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*r*n*a,o[15]=0,t},r.ortho=function(t,e,i,n,r,s,a){var o=1/(e-i),c=1/(n-r),u=1/(s-a),l=t.m;return l[0]=-2*o,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=-2*c,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=2*u,l[11]=0,l[12]=(e+i)*o,l[13]=(r+n)*c,l[14]=(a+s)*u,l[15]=1,t},r.lookAt=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=n.x,c=n.y,u=n.z,l=r-i.x,h=s-i.y,_=a-i.z,f=1/Math.sqrt(l*l+h*h+_*_),d=c*(_*=f)-u*(h*=f),p=u*(l*=f)-o*_,v=o*h-c*l,g=h*(v*=f=1/Math.sqrt(d*d+p*p+v*v))-_*(p*=f),m=_*(d*=f)-l*v,y=l*p-h*d,T=t.m;return T[0]=d,T[1]=g,T[2]=l,T[3]=0,T[4]=p,T[5]=m,T[6]=h,T[7]=0,T[8]=v,T[9]=y,T[10]=_,T[11]=0,T[12]=-(d*r+p*s+v*a),T[13]=-(g*r+m*s+y*a),T[14]=-(l*r+h*s+_*a),T[15]=1,t},r.inverseTranspose=function(t,e){var i=e.m;h=i[0],_=i[1],f=i[2],d=i[3],p=i[4],v=i[5],g=i[6],m=i[7],y=i[8],T=i[9],E=i[10],A=i[11],C=i[12],x=i[13],b=i[14],S=i[15];var n=h*v-_*p,r=h*g-f*p,s=h*m-d*p,a=_*g-f*v,o=_*m-d*v,c=f*m-d*g,u=y*x-T*C,l=y*b-E*C,R=y*S-A*C,w=T*b-E*x,I=T*S-A*x,M=E*S-A*b,O=n*M-r*I+s*w+a*R-o*l+c*u;return O?(O=1/O,(i=t.m)[0]=(v*M-g*I+m*w)*O,i[1]=(g*R-p*M-m*l)*O,i[2]=(p*I-v*R+m*u)*O,i[3]=0,i[4]=(f*I-_*M-d*w)*O,i[5]=(h*M-f*R+d*l)*O,i[6]=(_*R-h*I-d*u)*O,i[7]=0,i[8]=(x*c-b*o+S*a)*O,i[9]=(b*s-C*c-S*r)*O,i[10]=(C*o-x*s+S*n)*O,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,t):null},r.add=function(t,e,i){var n=t.m,r=e.m,s=i.m;return n[0]=r[0]+s[0],n[1]=r[1]+s[1],n[2]=r[2]+s[2],n[3]=r[3]+s[3],n[4]=r[4]+s[4],n[5]=r[5]+s[5],n[6]=r[6]+s[6],n[7]=r[7]+s[7],n[8]=r[8]+s[8],n[9]=r[9]+s[9],n[10]=r[10]+s[10],n[11]=r[11]+s[11],n[12]=r[12]+s[12],n[13]=r[13]+s[13],n[14]=r[14]+s[14],n[15]=r[15]+s[15],t},r.subtract=function(t,e,i){var n=t.m,r=e.m,s=i.m;return n[0]=r[0]-s[0],n[1]=r[1]-s[1],n[2]=r[2]-s[2],n[3]=r[3]-s[3],n[4]=r[4]-s[4],n[5]=r[5]-s[5],n[6]=r[6]-s[6],n[7]=r[7]-s[7],n[8]=r[8]-s[8],n[9]=r[9]-s[9],n[10]=r[10]-s[10],n[11]=r[11]-s[11],n[12]=r[12]-s[12],n[13]=r[13]-s[13],n[14]=r[14]-s[14],n[15]=r[15]-s[15],t},r.multiplyScalar=function(t,e,i){var n=t.m,r=e.m;return n[0]=r[0]*i,n[1]=r[1]*i,n[2]=r[2]*i,n[3]=r[3]*i,n[4]=r[4]*i,n[5]=r[5]*i,n[6]=r[6]*i,n[7]=r[7]*i,n[8]=r[8]*i,n[9]=r[9]*i,n[10]=r[10]*i,n[11]=r[11]*i,n[12]=r[12]*i,n[13]=r[13]*i,n[14]=r[14]*i,n[15]=r[15]*i,t},r.multiplyScalarAndAdd=function(t,e,i,n){var r=t.m,s=e.m,a=i.m;return r[0]=s[0]+a[0]*n,r[1]=s[1]+a[1]*n,r[2]=s[2]+a[2]*n,r[3]=s[3]+a[3]*n,r[4]=s[4]+a[4]*n,r[5]=s[5]+a[5]*n,r[6]=s[6]+a[6]*n,r[7]=s[7]+a[7]*n,r[8]=s[8]+a[8]*n,r[9]=s[9]+a[9]*n,r[10]=s[10]+a[10]*n,r[11]=s[11]+a[11]*n,r[12]=s[12]+a[12]*n,r[13]=s[13]+a[13]*n,r[14]=s[14]+a[14]*n,r[15]=s[15]+a[15]*n,t},r.strictEquals=function(t,e){var i=t.m,n=e.m;return i[0]===n[0]&&i[1]===n[1]&&i[2]===n[2]&&i[3]===n[3]&&i[4]===n[4]&&i[5]===n[5]&&i[6]===n[6]&&i[7]===n[7]&&i[8]===n[8]&&i[9]===n[9]&&i[10]===n[10]&&i[11]===n[11]&&i[12]===n[12]&&i[13]===n[13]&&i[14]===n[14]&&i[15]===n[15]},r.equals=function(t,e,i){void 0===i&&(i=o.EPSILON);var n=t.m,r=e.m;return Math.abs(n[0]-r[0])<=i*Math.max(1,Math.abs(n[0]),Math.abs(r[0]))&&Math.abs(n[1]-r[1])<=i*Math.max(1,Math.abs(n[1]),Math.abs(r[1]))&&Math.abs(n[2]-r[2])<=i*Math.max(1,Math.abs(n[2]),Math.abs(r[2]))&&Math.abs(n[3]-r[3])<=i*Math.max(1,Math.abs(n[3]),Math.abs(r[3]))&&Math.abs(n[4]-r[4])<=i*Math.max(1,Math.abs(n[4]),Math.abs(r[4]))&&Math.abs(n[5]-r[5])<=i*Math.max(1,Math.abs(n[5]),Math.abs(r[5]))&&Math.abs(n[6]-r[6])<=i*Math.max(1,Math.abs(n[6]),Math.abs(r[6]))&&Math.abs(n[7]-r[7])<=i*Math.max(1,Math.abs(n[7]),Math.abs(r[7]))&&Math.abs(n[8]-r[8])<=i*Math.max(1,Math.abs(n[8]),Math.abs(r[8]))&&Math.abs(n[9]-r[9])<=i*Math.max(1,Math.abs(n[9]),Math.abs(r[9]))&&Math.abs(n[10]-r[10])<=i*Math.max(1,Math.abs(n[10]),Math.abs(r[10]))&&Math.abs(n[11]-r[11])<=i*Math.max(1,Math.abs(n[11]),Math.abs(r[11]))&&Math.abs(n[12]-r[12])<=i*Math.max(1,Math.abs(n[12]),Math.abs(r[12]))&&Math.abs(n[13]-r[13])<=i*Math.max(1,Math.abs(n[13]),Math.abs(r[13]))&&Math.abs(n[14]-r[14])<=i*Math.max(1,Math.abs(n[14]),Math.abs(r[14]))&&Math.abs(n[15]-r[15])<=i*Math.max(1,Math.abs(n[15]),Math.abs(r[15]))},r.adjoint=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8],f=i[9],d=i[10],p=i[11],v=i[12],g=i[13],m=i[14],y=i[15];return n[0]=u*(d*y-p*m)-f*(l*y-h*m)+g*(l*p-h*d),n[1]=-(s*(d*y-p*m)-f*(a*y-o*m)+g*(a*p-o*d)),n[2]=s*(l*y-h*m)-u*(a*y-o*m)+g*(a*h-o*l),n[3]=-(s*(l*p-h*d)-u*(a*p-o*d)+f*(a*h-o*l)),n[4]=-(c*(d*y-p*m)-_*(l*y-h*m)+v*(l*p-h*d)),n[5]=r*(d*y-p*m)-_*(a*y-o*m)+v*(a*p-o*d),n[6]=-(r*(l*y-h*m)-c*(a*y-o*m)+v*(a*h-o*l)),n[7]=r*(l*p-h*d)-c*(a*p-o*d)+_*(a*h-o*l),n[8]=c*(f*y-p*g)-_*(u*y-h*g)+v*(u*p-h*f),n[9]=-(r*(f*y-p*g)-_*(s*y-o*g)+v*(s*p-o*f)),n[10]=r*(u*y-h*g)-c*(s*y-o*g)+v*(s*h-o*u),n[11]=-(r*(u*p-h*f)-c*(s*p-o*f)+_*(s*h-o*u)),n[12]=-(c*(f*m-d*g)-_*(u*m-l*g)+v*(u*d-l*f)),n[13]=r*(f*m-d*g)-_*(s*m-a*g)+v*(s*d-a*f),n[14]=-(r*(u*m-l*g)-c*(s*m-a*g)+v*(s*l-a*u)),n[15]=r*(u*d-l*f)-c*(s*d-a*f)+_*(s*l-a*u),t},r.toArray=function(t,e,i){void 0===i&&(i=0);for(var n=e.m,r=0;r<16;r++)t[i+r]=n[r];return t},r.fromArray=function(t,e,i){void 0===i&&(i=0);for(var n=t.m,r=0;r<16;r++)n[r]=e[i+r];return t},n.clone=function(){var t=this.m;return new r(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.set=function(t){var e=this.m,i=t.m;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this},n.equals=function(t){return r.strictEquals(this,t)},n.fuzzyEquals=function(t){return r.equals(this,t)},n.toString=function(){var t=this.m;return t?"[\n"+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+",\n"+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+",\n"+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+",\n"+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+"\n]":"[\n1, 0, 0, 0\n0, 1, 0, 0\n0, 0, 1, 0\n0, 0, 0, 1\n]"},n.identity=function(){return r.identity(this)},n.transpose=function(t){return t=t||new r,r.transpose(t,this)},n.invert=function(t){return t=t||new r,r.invert(t,this)},n.adjoint=function(t){return t=t||new r,r.adjoint(t,this)},n.determinant=function(){return r.determinant(this)},n.add=function(t,e){return e=e||new r,r.add(e,this,t)},n.subtract=function(t){return r.subtract(this,this,t)},n.multiply=function(t){return r.multiply(this,this,t)},n.multiplyScalar=function(t){return r.multiplyScalar(this,this,t)},n.translate=function(t,e){return e=e||new r,r.translate(e,this,t)},n.scale=function(t,e){return e=e||new r,r.scale(e,this,t)},n.rotate=function(t,e,i){return i=i||new r,r.rotate(i,this,t,e)},n.getTranslation=function(t){return t=t||new s.default,r.getTranslation(t,this)},n.getScale=function(t){return t=t||new s.default,r.getScaling(t,this)},n.getRotation=function(t){return t=t||new a.default,r.getRotation(t,this)},n.fromRTS=function(t,e,i){return r.fromRTS(this,t,e,i)},n.fromQuat=function(t){return r.fromQuat(this,t)},r})(n.default);i.default=R,R.mul=R.multiply,R.sub=R.subtract,R.IDENTITY=Object.freeze(new R);var w=new s.default,I=new c.default;r.default.fastDefine("cc.Mat4",R,{m00:1,m01:0,m02:0,m03:0,m04:0,m05:1,m06:0,m07:0,m08:0,m09:0,m10:1,m11:0,m12:0,m13:0,m14:0,m15:1});for(var M=function(t){Object.defineProperty(R.prototype,"m"+t,{get:function(){return this.m[t]},set:function(e){this.m[t]=e}})},O=0;O<16;O++)M(O);cc.mat4=function(t,e,i,n,r,s,a,o,c,u,l,h,_,f,d,p){var v=new R(t,e,i,n,r,s,a,o,c,u,l,h,_,f,d,p);return void 0===t&&R.identity(v),v},cc.Mat4=R,e.exports=i.default}),{"../platform/CCClass":149,"./mat3":239,"./quat":241,"./utils":245,"./value-type":246,"./vec3":248}],241:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=c(t("./value-type")),r=c(t("../platform/CCClass")),s=c(t("./vec3")),a=c(t("./mat3")),o=t("./utils");function c(t){return t&&t.__esModule?t:{default:t}}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=0,h=0,_=0,f=0,d=(function(t){var e,i;i=t,(e=r).prototype=Object.create(i.prototype),e.prototype.constructor=e,u(e,i);var n=r.prototype;function r(e,i,n,r){var s;return void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=1),(s=t.call(this)||this).x=void 0,s.y=void 0,s.z=void 0,s.w=void 0,e&&"object"==typeof e?(s.x=e.x,s.y=e.y,s.z=e.z,s.w=e.w):(s.x=e,s.y=i,s.z=n,s.w=r),s}return n.mul=function(t,e){return r.multiply(e||new r,this,t)},r.clone=function(t){return new r(t.x,t.y,t.z,t.w)},r.copy=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t},r.set=function(t,e,i,n,r){return t.x=e,t.y=i,t.z=n,t.w=r,t},r.identity=function(t){return t.x=0,t.y=0,t.z=0,t.w=1,t},r.rotationTo=function(t,e,i){var n=s.default.dot(e,i);return n<-.999999?(s.default.cross(g,s.default.RIGHT,e),g.mag()<1e-6&&s.default.cross(g,s.default.UP,e),s.default.normalize(g,g),r.fromAxisAngle(t,g,Math.PI),t):n>.999999?(t.x=0,t.y=0,t.z=0,t.w=1,t):(s.default.cross(g,e,i),t.x=g.x,t.y=g.y,t.z=g.z,t.w=1+n,r.normalize(t,t))},r.getAxisAngle=function(t,e){var i=2*Math.acos(e.w),n=Math.sin(i/2);return 0!==n?(t.x=e.x/n,t.y=e.y/n,t.z=e.z/n):(t.x=1,t.y=0,t.z=0),i},r.multiply=function(t,e,i){return l=e.x*i.w+e.w*i.x+e.y*i.z-e.z*i.y,h=e.y*i.w+e.w*i.y+e.z*i.x-e.x*i.z,_=e.z*i.w+e.w*i.z+e.x*i.y-e.y*i.x,f=e.w*i.w-e.x*i.x-e.y*i.y-e.z*i.z,t.x=l,t.y=h,t.z=_,t.w=f,t},r.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i,t},r.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t.z=e.z+i.z*n,t.w=e.w+i.w*n,t},r.rotateX=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r+e.w*n,h=e.y*r+e.z*n,_=e.z*r-e.y*n,f=e.w*r-e.x*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateY=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r-e.z*n,h=e.y*r+e.w*n,_=e.z*r+e.x*n,f=e.w*r-e.y*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateZ=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r+e.y*n,h=e.y*r-e.x*n,_=e.z*r+e.w*n,f=e.w*r-e.z*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateAround=function(t,e,i,n){return r.invert(p,e),s.default.transformQuat(g,i,p),r.fromAxisAngle(p,g,n),r.multiply(t,e,p),t},r.rotateAroundLocal=function(t,e,i,n){return r.fromAxisAngle(p,i,n),r.multiply(t,e,p),t},r.calculateW=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=Math.sqrt(Math.abs(1-e.x*e.x-e.y*e.y-e.z*e.z)),t},r.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},r.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},r.slerp=function(t,e,i,n){var r=0,s=0,a=e.x*i.x+e.y*i.y+e.z*i.z+e.w*i.w;if(a<0&&(a=-a,i.x=-i.x,i.y=-i.y,i.z=-i.z,i.w=-i.w),1-a>1e-6){var o=Math.acos(a),c=Math.sin(o);r=Math.sin((1-n)*o)/c,s=Math.sin(n*o)/c}else r=1-n,s=n;return t.x=r*e.x+s*i.x,t.y=r*e.y+s*i.y,t.z=r*e.z+s*i.z,t.w=r*e.w+s*i.w,t},r.sqlerp=function(t,e,i,n,s,a){return r.slerp(p,e,s,a),r.slerp(v,i,n,a),r.slerp(t,p,v,2*a*(1-a)),t},r.invert=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w,n=i?1/i:0;return t.x=-e.x*n,t.y=-e.y*n,t.z=-e.z*n,t.w=e.w*n,t},r.conjugate=function(t,e){return t.x=-e.x,t.y=-e.y,t.z=-e.z,t.w=e.w,t},r.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w)},r.lengthSqr=function(t){return t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w},r.normalize=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w;return i>0&&(i=1/Math.sqrt(i),t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i),t},r.fromAxes=function(t,e,i,n){return a.default.set(m,e.x,e.y,e.z,i.x,i.y,i.z,n.x,n.y,n.z),r.normalize(t,r.fromMat3(t,m))},r.fromViewUp=function(t,e,i){return a.default.fromViewUp(m,e,i),r.normalize(t,r.fromMat3(t,m))},r.fromAxisAngle=function(t,e,i){i*=.5;var n=Math.sin(i);return t.x=n*e.x,t.y=n*e.y,t.z=n*e.z,t.w=Math.cos(i),t},r.fromAngleZ=function(t,e){return e*=y,t.x=t.y=0,t.z=Math.sin(e),t.w=Math.cos(e),t},r.fromMat3=function(t,e){var i=e.m,n=i[0],r=i[1],s=i[2],a=i[3],o=i[4],c=i[5],u=i[6],l=i[7],h=i[8],_=n+o+h;if(_>0){var f=.5/Math.sqrt(_+1);t.w=.25/f,t.x=(c-l)*f,t.y=(u-s)*f,t.z=(r-a)*f}else if(n>o&&n>h){var d=2*Math.sqrt(1+n-o-h);t.w=(c-l)/d,t.x=.25*d,t.y=(a+r)/d,t.z=(u+s)/d}else if(o>h){var p=2*Math.sqrt(1+o-n-h);t.w=(u-s)/p,t.x=(a+r)/p,t.y=.25*p,t.z=(l+c)/p}else{var v=2*Math.sqrt(1+h-n-o);t.w=(r-a)/v,t.x=(u+s)/v,t.y=(l+c)/v,t.z=.25*v}return t},r.fromEuler=function(t,e,i,n){e*=y,i*=y,n*=y;var r=Math.sin(e),s=Math.cos(e),a=Math.sin(i),o=Math.cos(i),c=Math.sin(n),u=Math.cos(n);return t.x=r*o*u+s*a*c,t.y=s*a*u+r*o*c,t.z=s*o*c-r*a*u,t.w=s*o*u-r*a*c,t},r.toAxisX=function(t,e){var i=2*e.y,n=2*e.z;return t.x=1-i*e.y-n*e.z,t.y=i*e.x+n*e.w,t.z=n*e.x+i*e.w,t},r.toAxisY=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=n*e.x-r*e.w,t.y=1-i*e.x-r*e.z,t.z=r*e.y+i*e.w,t},r.toAxisZ=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=r*e.x-n*e.w,t.y=r*e.y-i*e.w,t.z=1-i*e.x-n*e.y,t},r.toEuler=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w,c=0,u=0,l=0,h=n*r+s*a;if(h>.499999)c=0,u=(0,o.toDegree)(2*Math.atan2(n,a)),l=90;else if(h<-.499999)c=0,u=-(0,o.toDegree)(2*Math.atan2(n,a)),l=-90;else{var _=n*n,f=r*r,d=s*s;c=(0,o.toDegree)(Math.atan2(2*n*a-2*r*s,1-2*_-2*d)),u=(0,o.toDegree)(Math.atan2(2*r*a-2*n*s,1-2*f-2*d)),l=(0,o.toDegree)(Math.asin(2*h)),i&&(c=-180*Math.sign(c+1e-6)+c,u=-180*Math.sign(u+1e-6)+u,l=180*Math.sign(l+1e-6)-l)}return t.x=c,t.y=u,t.z=l,t},r.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},r.equals=function(t,e,i){return void 0===i&&(i=o.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))},r.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},r.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},n.clone=function(){return new r(this.x,this.y,this.z,this.w)},n.set=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this},n.equals=function(t){return t&&this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},n.toEuler=function(t){return r.toEuler(t,this)},n.fromEuler=function(t){return r.fromEuler(this,t.x,t.y,t.z)},n.lerp=function(t,e,i){return i=i||new r,r.slerp(i,this,t,e),i},n.multiply=function(t){return r.multiply(this,this,t)},n.rotateAround=function(t,e,i,n){return n=n||new r,r.rotateAround(n,t,e,i)},r})(n.default);i.default=d,d.mul=d.multiply,d.scale=d.multiplyScalar,d.mag=d.len,d.IDENTITY=Object.freeze(new d);var p=new d,v=new d,g=new s.default,m=new a.default,y=.5*Math.PI/180;r.default.fastDefine("cc.Quat",d,{x:0,y:0,z:0,w:1}),cc.quat=function(t,e,i,n){return new d(t,e,i,n)},cc.Quat=d,e.exports=i.default}),{"../platform/CCClass":149,"./mat3":239,"./utils":245,"./value-type":246,"./vec3":248}],242:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=o(t("./value-type")),r=o(t("../platform/CCClass")),s=o(t("./vec2")),a=o(t("./size"));function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i=t.x&&this.y<=t.y&&this.y+this.height>=t.y},l.containsRect=function(t){return this.x<=t.x&&this.x+this.width>=t.x+t.width&&this.y<=t.y&&this.y+this.height>=t.y+t.height},l.union=function(t,e){var i=this.x,n=this.y,r=this.width,s=this.height,a=e.x,o=e.y,c=e.width,u=e.height;return t.x=Math.min(i,a),t.y=Math.min(n,o),t.width=Math.max(i+r,a+c)-t.x,t.height=Math.max(n+s,o+u)-t.y,t},l.transformMat4=function(t,e){var i=this.x,n=this.y,r=i+this.width,s=n+this.height,a=e.m,o=a[0]*i+a[4]*n+a[12],c=a[1]*i+a[5]*n+a[13],u=a[0]*r+a[4]*n+a[12],l=a[1]*r+a[5]*n+a[13],h=a[0]*i+a[4]*s+a[12],_=a[1]*i+a[5]*s+a[13],f=a[0]*r+a[4]*s+a[12],d=a[1]*r+a[5]*s+a[13],p=Math.min(o,u,h,f),v=Math.max(o,u,h,f),g=Math.min(c,l,_,d),m=Math.max(c,l,_,d);return t.x=p,t.y=g,t.width=v-p,t.height=m-g,t},l.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.width.toFixed(2)+", "+this.height.toFixed(2)+")"},r=n,(o=[{key:"xMin",get:function(){return this.x},set:function(t){this.width+=this.x-t,this.x=t}},{key:"yMin",get:function(){return this.y},set:function(t){this.height+=this.y-t,this.y=t}},{key:"xMax",get:function(){return this.x+this.width},set:function(t){this.width=t-this.x}},{key:"yMax",get:function(){return this.y+this.height},set:function(t){this.height=t-this.y}},{key:"center",get:function(){return new s.default(this.x+.5*this.width,this.y+.5*this.height)},set:function(t){this.x=t.x-.5*this.width,this.y=t.y-.5*this.height}},{key:"origin",get:function(){return new s.default(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}},{key:"size",get:function(){return new a.default(this.width,this.height)},set:function(t){this.width=t.width,this.height=t.height}}])&&c(r.prototype,o),n})(n.default);i.default=l,r.default.fastDefine("cc.Rect",l,{x:0,y:0,width:0,height:0}),cc.Rect=l,cc.rect=function(t,e,i,n){return new l(t,e,i,n)},e.exports=i.default}),{"../platform/CCClass":149,"./size":243,"./value-type":246,"./vec2":247}],243:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=s(t("./value-type")),r=s(t("../platform/CCClass"));function s(t){return t&&t.__esModule?t:{default:t}}function a(t,e){for(var i=0;ii?i:t},i.clamp01=function(t){return t<0?0:t>1?1:t},i.equals=function(t,e){return Math.abs(t-e)<=s*Math.max(1,Math.abs(t),Math.abs(e))},i.inverseLerp=function(t,e,i){return(i-t)/(e-t)},i.lerp=function(t,e,i){return t+(e-t)*i},i.nextPow2=function(t){return--t,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i.pingPong=function(t,e){return t=h(t,2*e),e-Math.abs(t-e)},i.pseudoRandom=u,i.pseudoRandomRange=l,i.pseudoRandomRangeInt=function(t,e,i){return Math.floor(l(t,e,i))},i.random=void 0,i.randomRange=c,i.randomRangeInt=function(t,e){return Math.floor(c(t,e))},i.repeat=h,i.sign=function(t){return(t>0)-(t<0)},i.toDegree=function(t){return t*r},i.toRadian=function(t){return t*n};var n=Math.PI/180,r=180/Math.PI,s=1e-6;i.EPSILON=s,i.INT_BITS=32,i.INT_MAX=2147483647,i.INT_MIN=-1<<31;var a=Float64Array;i.FLOAT_ARRAY_TYPE=a,i.FLOAT_BYTES=8;var o=Math.random;function c(t,e){return Math.random()*(e-t)+t}function u(t){return(t=(9301*t+49297)%233280)/233280}function l(t,e,i){return u(t)*(i-e)+e}function h(t,e){return t-Math.floor(t/e)*e}i.random=o}),{}],246:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../platform/js"))&&n.__esModule?n:{default:n},s=(function(){function t(){}var e=t.prototype;return e.clone=function(){return cc.errorID("0100",r.default.getClassName(this)+".clone"),null},e.equals=function(){return cc.errorID("0100",r.default.getClassName(this)+".equals"),!1},e.lerp=function(){return cc.errorID("0100",r.default.getClassName(this)+".lerp"),this.clone()},e.set=function(){cc.errorID("0100",r.default.getClassName(this)+".set")},e.toString=function(){return""+{}},t})();i.default=s,r.default.setClassName("cc.ValueType",s),cc.ValueType=s,e.exports=i.default}),{"../platform/js":170}],247:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=o(t("./value-type")),r=o(t("../platform/CCClass")),s=o(t("../utils/misc")),a=t("./utils");function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=l*i,t.y=h*i),t},_.dot=function(t,e){return t.x*e.x+t.y*e.y},_.cross=function(t,e,i){return t.x=t.y=0,t.z=e.x*i.y-e.y*i.x,t},_.lerp=function(t,e,i,n){return l=e.x,h=e.y,t.x=l+n*(i.x-l),t.y=h+n*(i.y-h),t},_.random=function(t,e){e=e||1;var i=2*(0,a.random)()*Math.PI;return t.x=Math.cos(i)*e,t.y=Math.sin(i)*e,t},_.transformMat3=function(t,e,i){l=e.x,h=e.y;var n=i.m;return t.x=n[0]*l+n[3]*h+n[6],t.y=n[1]*l+n[4]*h+n[7],t},_.transformMat4=function(t,e,i){l=e.x,h=e.y;var n=i.m;return t.x=n[0]*l+n[4]*h+n[12],t.y=n[1]*l+n[5]*h+n[13],t},_.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y},_.equals=function(t,e,i){return void 0===i&&(i=a.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))},_.angle=function(t,e){_.normalize(f,t),_.normalize(d,e);var i=_.dot(f,d);return i>1?0:i<-1?Math.PI:Math.acos(i)},_.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t},_.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t},o.clone=function(){return new _(this.x,this.y)},o.set=function(t){return this.x=t.x,this.y=t.y,this},o.equals=function(t){return t&&this.x===t.x&&this.y===t.y},o.fuzzyEquals=function(t,e){return this.x-e<=t.x&&t.x<=this.x+e&&this.y-e<=t.y&&t.y<=this.y+e},o.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+")"},o.lerp=function(t,e,i){i=i||new _;var n=this.x,r=this.y;return i.x=n+(t.x-n)*e,i.y=r+(t.y-r)*e,i},o.clampf=function(t,e){return this.x=s.default.clampf(this.x,t.x,e.x),this.y=s.default.clampf(this.y,t.y,e.y),this},o.add=function(t,e){return(e=e||new _).x=this.x+t.x,e.y=this.y+t.y,e},o.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this},o.subtract=function(t){return this.x-=t.x,this.y-=t.y,this},o.multiplyScalar=function(t){return this.x*=t,this.y*=t,this},o.multiply=function(t){return this.x*=t.x,this.y*=t.y,this},o.divide=function(t){return this.x/=t,this.y/=t,this},o.negate=function(){return this.x=-this.x,this.y=-this.y,this},o.dot=function(t){return this.x*t.x+this.y*t.y},o.cross=function(t){return this.x*t.y-this.y*t.x},o.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},o.lengthSqr=function(){return this.x*this.x+this.y*this.y},o.normalizeSelf=function(){var t=this.x*this.x+this.y*this.y;if(1===t)return this;if(0===t)return this;var e=1/Math.sqrt(t);return this.x*=e,this.y*=e,this},o.normalize=function(t){return(t=t||new _).x=this.x,t.y=this.y,t.normalizeSelf(),t},o.angle=function(t){var e=this.magSqr(),i=t.magSqr();if(0===e||0===i)return console.warn("Can't get angle between zero vector"),0;var n=this.dot(t)/Math.sqrt(e*i);return n=s.default.clampf(n,-1,1),Math.acos(n)},o.signAngle=function(t){var e=this.angle(t);return this.cross(t)<0?-e:e},o.rotate=function(t,e){return(e=e||new _).x=this.x,e.y=this.y,e.rotateSelf(t)},o.rotateSelf=function(t){var e=Math.sin(t),i=Math.cos(t),n=this.x;return this.x=i*n-e*this.y,this.y=e*n+i*this.y,this},o.project=function(t){return t.multiplyScalar(this.dot(t)/t.dot(t))},o.transformMat4=function(t,e){return e=e||new _,_.transformMat4(e,this,t),e},o.maxAxis=function(){return Math.max(this.x,this.y)},n=_,r=[{key:"ONE",get:function(){return new _(1,1)}},{key:"ZERO",get:function(){return new _(0,0)}},{key:"UP",get:function(){return new _(0,1)}},{key:"RIGHT",get:function(){return new _(1,0)}}],null&&c(n.prototype,null),r&&c(n,r),_})(n.default);i.default=_,_.sub=_.subtract,_.mul=_.multiply,_.scale=_.multiplyScalar,_.mag=_.len,_.squaredMagnitude=_.lengthSqr,_.div=_.divide,_.ONE_R=_.ONE,_.ZERO_R=_.ZERO,_.UP_R=_.UP,_.RIGHT_R=_.RIGHT;var f=new _,d=new _;r.default.fastDefine("cc.Vec2",_,{x:0,y:0}),cc.v2=function(t,e){return new _(t,e)},cc.Vec2=_,e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./utils":245,"./value-type":246}],248:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=c(t("./value-type")),r=c(t("../platform/CCClass")),s=c(t("../utils/misc")),a=c(t("./vec2")),o=t("./utils");function c(t){return t&&t.__esModule?t:{default:t}}function u(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=h*i,t.y=_*i,t.z=f*i),t},d.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z},d.cross=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.x,o=i.y,c=i.z;return t.x=r*c-s*o,t.y=s*a-n*c,t.z=n*o-r*a,t},d.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t},d.random=function(t,e){e=e||1;var i=2*(0,o.random)()*Math.PI,n=2*(0,o.random)()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t},d.transformMat4=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m,r=n[3]*h+n[7]*_+n[11]*f+n[15];return r=r?1/r:1,t.x=(n[0]*h+n[4]*_+n[8]*f+n[12])*r,t.y=(n[1]*h+n[5]*_+n[9]*f+n[13])*r,t.z=(n[2]*h+n[6]*_+n[10]*f+n[14])*r,t},d.transformMat4Normal=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m,r=n[3]*h+n[7]*_+n[11]*f;return r=r?1/r:1,t.x=(n[0]*h+n[4]*_+n[8]*f)*r,t.y=(n[1]*h+n[5]*_+n[9]*f)*r,t.z=(n[2]*h+n[6]*_+n[10]*f)*r,t},d.transformMat3=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m;return t.x=h*n[0]+_*n[3]+f*n[6],t.y=h*n[1]+_*n[4]+f*n[7],t.z=h*n[2]+_*n[5]+f*n[8],t},d.transformAffine=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m;return t.x=n[0]*h+n[1]*_+n[2]*f+n[3],t.y=n[4]*h+n[5]*_+n[6]*f+n[7],t.x=n[8]*h+n[9]*_+n[10]*f+n[11],t},d.transformQuat=function(t,e,i){var n=i.w*e.x+i.y*e.z-i.z*e.y,r=i.w*e.y+i.z*e.x-i.x*e.z,s=i.w*e.z+i.x*e.y-i.y*e.x,a=-i.x*e.x-i.y*e.y-i.z*e.z;return t.x=n*i.w+a*-i.x+r*-i.z-s*-i.y,t.y=r*i.w+a*-i.y+s*-i.x-n*-i.z,t.z=s*i.w+a*-i.z+n*-i.y-r*-i.x,t},d.transformRTS=function(t,e,i,n,r){var s=e.x*r.x,a=e.y*r.y,o=e.z*r.z,c=i.w*s+i.y*o-i.z*a,u=i.w*a+i.z*s-i.x*o,l=i.w*o+i.x*a-i.y*s,h=-i.x*s-i.y*a-i.z*o;return t.x=c*i.w+h*-i.x+u*-i.z-l*-i.y+n.x,t.y=u*i.w+h*-i.y+l*-i.x-c*-i.z+n.y,t.z=l*i.w+h*-i.z+c*-i.y-u*-i.x+n.z,t},d.transformInverseRTS=function(t,e,i,n,r){var s=e.x-n.x,a=e.y-n.y,o=e.z-n.z,c=i.w*s-i.y*o+i.z*a,u=i.w*a-i.z*s+i.x*o,l=i.w*o-i.x*a+i.y*s,h=i.x*s+i.y*a+i.z*o;return t.x=(c*i.w+h*i.x+u*i.z-l*i.y)/r.x,t.y=(u*i.w+h*i.y+l*i.x-c*i.z)/r.y,t.z=(l*i.w+h*i.z+c*i.y-u*i.x)/r.z,t},d.rotateX=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=h,o=_*r-f*s,c=_*s+f*r;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.rotateY=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=f*s+h*r,o=_,c=f*r-h*s;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.rotateZ=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=h*r-_*s,o=h*s+_*r,c=f;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z},d.equals=function(t,e,i){void 0===i&&(i=o.EPSILON);var n=t.x,r=t.y,s=t.z,a=e.x,c=e.y,u=e.z;return Math.abs(n-a)<=i*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-c)<=i*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(s-u)<=i*Math.max(1,Math.abs(s),Math.abs(u))},d.angle=function(t,e){d.normalize(p,t),d.normalize(v,e);var i=d.dot(p,v);return i>1?0:i<-1?Math.PI:Math.acos(i)},d.projectOnPlane=function(t,e,i){return d.subtract(t,e,d.project(t,e,i))},d.project=function(t,e,i){var n=d.lengthSqr(i);return n<1e-6?d.set(t,0,0,0):d.multiplyScalar(t,i,d.dot(e,i)/n)},d.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t},d.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t},c.clone=function(){return new d(this.x,this.y,this.z)},c.set=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},c.equals=function(t){return t&&this.x===t.x&&this.y===t.y&&this.z===t.z},c.fuzzyEquals=function(t,e){return this.x-e<=t.x&&t.x<=this.x+e&&this.y-e<=t.y&&t.y<=this.y+e&&this.z-e<=t.z&&t.z<=this.z+e},c.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+")"},c.lerp=function(t,e,i){return i=i||new d,d.lerp(i,this,t,e),i},c.clampf=function(t,e){return this.x=s.default.clampf(this.x,t.x,e.x),this.y=s.default.clampf(this.y,t.y,e.y),this.z=s.default.clampf(this.z,t.z,e.z),this},c.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},c.add=function(t,e){return(e=e||new d).x=this.x+t.x,e.y=this.y+t.y,e.z=this.z+t.z,e},c.subtract=function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this},c.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this},c.multiply=function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this},c.divide=function(t){return this.x/=t,this.y/=t,this.z/=t,this},c.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},c.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z},c.cross=function(t,e){return e=e||new d,d.cross(e,this,t),e},c.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},c.lengthSqr=function(){return this.x*this.x+this.y*this.y+this.z*this.z},c.normalizeSelf=function(){return d.normalize(this,this),this},c.normalize=function(t){return t=t||new d,d.normalize(t,this),t},c.transformMat4=function(t,e){return e=e||new d,d.transformMat4(e,this,t),e},c.maxAxis=function(){return Math.max(this.x,this.y,this.z)},c.signAngle=function(t){cc.warnID(1408,"vec3.signAngle","v2.1","cc.v2(selfVector).signAngle(vector)");var e=new a.default(this.x,this.y),i=new a.default(t.x,t.y);return e.signAngle(i)},c.rotate=function(t,e){return cc.warnID(1408,"vec3.rotate","v2.1","cc.v2(selfVector).rotate(radians, out)"),a.default.prototype.rotate.call(this,t,e)},c.rotateSelf=function(t){return cc.warnID(1408,"vec3.rotateSelf","v2.1","cc.v2(selfVector).rotateSelf(radians)"),a.default.prototype.rotateSelf.call(this,t)},n=d,r=[{key:"ONE",get:function(){return new d(1,1,1)}},{key:"ZERO",get:function(){return new d}},{key:"UP",get:function(){return new d(0,1,0)}},{key:"RIGHT",get:function(){return new d(1,0,0)}},{key:"FORWARD",get:function(){return new d(0,0,1)}}],null&&u(n.prototype,null),r&&u(n,r),d})(n.default);i.default=d,d.sub=d.subtract,d.mul=d.multiply,d.scale=d.multiplyScalar,d.mag=d.len,d.squaredMagnitude=d.lengthSqr,d.div=d.divide,d.ONE_R=d.ONE,d.ZERO_R=d.ZERO,d.UP_R=d.UP,d.RIGHT_R=d.RIGHT,d.FRONT_R=d.FORWARD;var p=new d,v=new d;r.default.fastDefine("cc.Vec3",d,{x:0,y:0,z:0}),cc.v3=function(t,e,i){return new d(t,e,i)},cc.Vec3=d,e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./utils":245,"./value-type":246,"./vec2":247}],249:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0,i.v4=d;var n=a(t("../platform/CCClass")),r=a(t("./value-type")),s=t("./utils");function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=u*i,t.y=l*i,t.z=h*i,t.w=_*i),t},f.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},f.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},f.random=function(t,e){e=e||1;var i=2*(0,s.random)()*Math.PI,n=2*(0,s.random)()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t.w=0,t},f.transformMat4=function(t,e,i){u=e.x,l=e.y,h=e.z,_=e.w;var n=i.m;return t.x=n[0]*u+n[4]*l+n[8]*h+n[12]*_,t.y=n[1]*u+n[5]*l+n[9]*h+n[13]*_,t.z=n[2]*u+n[6]*l+n[10]*h+n[14]*_,t.w=n[3]*u+n[7]*l+n[11]*h+n[15]*_,t},f.transformAffine=function(t,e,i){u=e.x,l=e.y,h=e.z,_=e.w;var n=i.m;return t.x=n[0]*u+n[1]*l+n[2]*h+n[3]*_,t.y=n[4]*u+n[5]*l+n[6]*h+n[7]*_,t.x=n[8]*u+n[9]*l+n[10]*h+n[11]*_,t.w=e.w,t},f.transformQuat=function(t,e,i){var n=e.x,r=e.y,s=e.z;u=i.x,l=i.y,h=i.z;var a=(_=i.w)*n+l*s-h*r,o=_*r+h*n-u*s,c=_*s+u*r-l*n,f=-u*n-l*r-h*s;return t.x=a*_+f*-u+o*-h-c*-l,t.y=o*_+f*-l+c*-u-a*-h,t.z=c*_+f*-h+a*-l-o*-u,t.w=e.w,t},f.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},f.equals=function(t,e,i){return void 0===i&&(i=s.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))},f.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},f.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},a.clone=function(){return new f(this.x,this.y,this.z,this.w)},a.set=function(t,e,i,n){return t&&"object"==typeof t?(this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w):(this.x=t||0,this.y=e||0,this.z=i||0,this.w=n||0),this},a.equals=function(t,e){return void 0===e&&(e=s.EPSILON),Math.abs(this.x-t.x)<=e*Math.max(1,Math.abs(this.x),Math.abs(t.x))&&Math.abs(this.y-t.y)<=e*Math.max(1,Math.abs(this.y),Math.abs(t.y))&&Math.abs(this.z-t.z)<=e*Math.max(1,Math.abs(this.z),Math.abs(t.z))&&Math.abs(this.w-t.w)<=e*Math.max(1,Math.abs(this.w),Math.abs(t.w))},a.equals4f=function(t,e,i,n,r){return void 0===r&&(r=s.EPSILON),Math.abs(this.x-t)<=r*Math.max(1,Math.abs(this.x),Math.abs(t))&&Math.abs(this.y-e)<=r*Math.max(1,Math.abs(this.y),Math.abs(e))&&Math.abs(this.z-i)<=r*Math.max(1,Math.abs(this.z),Math.abs(i))&&Math.abs(this.w-n)<=r*Math.max(1,Math.abs(this.w),Math.abs(n))},a.strictEquals=function(t){return this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},a.strictEquals4f=function(t,e,i,n){return this.x===t&&this.y===e&&this.z===i&&this.w===n},a.lerp=function(t,e){return u=this.x,l=this.y,h=this.z,_=this.w,this.x=u+e*(t.x-u),this.y=l+e*(t.y-l),this.z=h+e*(t.z-h),this.w=_+e*(t.w-_),this},a.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+", "+this.w.toFixed(2)+")"},a.clampf=function(t,e){return this.x=(0,s.clamp)(this.x,t.x,e.x),this.y=(0,s.clamp)(this.y,t.y,e.y),this.z=(0,s.clamp)(this.z,t.z,e.z),this.w=(0,s.clamp)(this.w,t.w,e.w),this},a.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this},a.add=function(t,e){return(e=e||new f).x=this.x+t.x,e.y=this.y+t.y,e.z=this.z+t.z,e.w=this.w+t.w,e},a.subtract=function(t,e){return(e=e||new f).x=this.x-t.x,e.y=this.y-t.y,e.z=this.z-t.z,e.w=this.w-t.w,e},a.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},a.multiply=function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this},a.divide=function(t){return this.x/=t,this.y/=t,this.z/=t,this.w/=t,this},a.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},a.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},a.cross=function(t,e){e=e||new f;var i=this.x,n=this.y,r=this.z,s=t.x,a=t.y,o=t.z;return e.x=n*o-r*a,e.y=r*s-i*o,e.z=i*a-n*s,e},a.len=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return Math.sqrt(t*t+e*e+i*i+n*n)},a.lengthSqr=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return t*t+e*e+i*i+n*n},a.normalizeSelf=function(){return this.normalize(this),this},a.normalize=function(t){t=t||new f,u=this.x,l=this.y,h=this.z,_=this.w;var e=u*u+l*l+h*h+_*_;return e>0&&(e=1/Math.sqrt(e),t.x=u*e,t.y=l*e,t.z=h*e,t.w=_*e),t},a.transformMat4=function(t,e){e=e||new f,u=this.x,l=this.y,h=this.z,_=this.w;var i=t.m;return e.x=i[0]*u+i[4]*l+i[8]*h+i[12]*_,e.y=i[1]*u+i[5]*l+i[9]*h+i[13]*_,e.z=i[2]*u+i[6]*l+i[10]*h+i[14]*_,e.w=i[3]*u+i[7]*l+i[11]*h+i[15]*_,e},a.maxAxis=function(){return Math.max(this.x,this.y,this.z,this.w)},n=f,r=[{key:"ZERO",get:function(){return new f(0,0,0,0)}},{key:"ONE",get:function(){return new f(1,1,1,1)}},{key:"NEG_ONE",get:function(){return new f(-1,-1,-1,-1)}}],null&&o(n.prototype,null),r&&o(n,r),f})(r.default);function d(t,e,i,n){return new f(t,e,i,n)}i.default=f,f.sub=f.subtract,f.mul=f.multiply,f.div=f.divide,f.scale=f.multiplyScalar,f.mag=f.len,f.squaredMagnitude=f.lengthSqr,f.ZERO_R=f.ZERO,f.ONE_R=f.ONE,f.NEG_ONE_R=f.NEG_ONE,n.default.fastDefine("cc.Vec4",f,{x:0,y:0,z:0,w:0}),cc.v4=d,cc.Vec4=f}),{"../platform/CCClass":149,"./utils":245,"./value-type":246}],250:[(function(){"use strict";cc.js}),{}],251:[(function(t){"use strict";t("./core/CCGame"),t("./actions")}),{"./actions":7,"./core/CCGame":24}],252:[(function(t,e){"use strict";var i=t("../core/assets/CCAsset"),n=t("../core/assets/CCSpriteFrame"),r=cc.Class({name:"cc.ParticleAsset",extends:i,properties:{spriteFrame:{default:null,type:n}}});cc.ParticleAsset=e.exports=r}),{"../core/assets/CCAsset":58,"../core/assets/CCSpriteFrame":70}],253:[(function(t,e){"use strict";var i,n,r,s,a,o,c,u,l,h,_,f,d,p,v,g,m,y,T,E,A,C,x,b,S,R,w,I,M,O,D,L,P,N,F,B,U,z,k,V,H,W;(function(t){t[t.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",t[t.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",t[t.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL"})(i||(i={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.BUFFER=1]="BUFFER",t[t.TEXTURE=2]="TEXTURE",t[t.TEXTURE_VIEW=3]="TEXTURE_VIEW",t[t.RENDER_PASS=4]="RENDER_PASS",t[t.FRAMEBUFFER=5]="FRAMEBUFFER",t[t.SAMPLER=6]="SAMPLER",t[t.SHADER=7]="SHADER",t[t.PIPELINE_LAYOUT=8]="PIPELINE_LAYOUT",t[t.PIPELINE_STATE=9]="PIPELINE_STATE",t[t.BINDING_LAYOUT=10]="BINDING_LAYOUT",t[t.INPUT_ASSEMBLER=11]="INPUT_ASSEMBLER",t[t.COMMAND_ALLOCATOR=12]="COMMAND_ALLOCATOR",t[t.COMMAND_BUFFER=13]="COMMAND_BUFFER",t[t.QUEUE=14]="QUEUE",t[t.WINDOW=15]="WINDOW"})(n||(n={})),(function(t){t[t.UNREADY=0]="UNREADY",t[t.FAILED=1]="FAILED",t[t.SUCCESS=2]="SUCCESS"})(r||(r={})),(function(){function t(t){this._gfxType=n.UNKNOWN,this._status=r.UNREADY,this._gfxType=t}Object.defineProperty(t.prototype,"gfxType",{get:function(){return this._gfxType},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"status",{get:function(){return this._status},enumerable:!0,configurable:!0})})(),(function(t){t.ATTR_POSITION="a_position",t.ATTR_NORMAL="a_normal",t.ATTR_TANGENT="a_tangent",t.ATTR_BITANGENT="a_bitangent",t.ATTR_WEIGHTS="a_weights",t.ATTR_JOINTS="a_joints",t.ATTR_COLOR="a_color",t.ATTR_COLOR1="a_color1",t.ATTR_COLOR2="a_color2",t.ATTR_TEX_COORD="a_texCoord",t.ATTR_TEX_COORD1="a_texCoord1",t.ATTR_TEX_COORD2="a_texCoord2",t.ATTR_TEX_COORD3="a_texCoord3",t.ATTR_TEX_COORD4="a_texCoord4",t.ATTR_TEX_COORD5="a_texCoord5",t.ATTR_TEX_COORD6="a_texCoord6",t.ATTR_TEX_COORD7="a_texCoord7",t.ATTR_TEX_COORD8="a_texCoord8"})(s||(s={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.BOOL=1]="BOOL",t[t.BOOL2=2]="BOOL2",t[t.BOOL3=3]="BOOL3",t[t.BOOL4=4]="BOOL4",t[t.INT=5]="INT",t[t.INT2=6]="INT2",t[t.INT3=7]="INT3",t[t.INT4=8]="INT4",t[t.UINT=9]="UINT",t[t.UINT2=10]="UINT2",t[t.UINT3=11]="UINT3",t[t.UINT4=12]="UINT4",t[t.FLOAT=13]="FLOAT",t[t.FLOAT2=14]="FLOAT2",t[t.FLOAT3=15]="FLOAT3",t[t.FLOAT4=16]="FLOAT4",t[t.COLOR4=17]="COLOR4",t[t.MAT2=18]="MAT2",t[t.MAT2X3=19]="MAT2X3",t[t.MAT2X4=20]="MAT2X4",t[t.MAT3X2=21]="MAT3X2",t[t.MAT3=22]="MAT3",t[t.MAT3X4=23]="MAT3X4",t[t.MAT4X2=24]="MAT4X2",t[t.MAT4X3=25]="MAT4X3",t[t.MAT4=26]="MAT4",t[t.SAMPLER1D=27]="SAMPLER1D",t[t.SAMPLER1D_ARRAY=28]="SAMPLER1D_ARRAY",t[t.SAMPLER2D=29]="SAMPLER2D",t[t.SAMPLER2D_ARRAY=30]="SAMPLER2D_ARRAY",t[t.SAMPLER3D=31]="SAMPLER3D",t[t.SAMPLER_CUBE=32]="SAMPLER_CUBE",t[t.COUNT=33]="COUNT"})(a||(a={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A8=1]="A8",t[t.L8=2]="L8",t[t.LA8=3]="LA8",t[t.R8=4]="R8",t[t.R8SN=5]="R8SN",t[t.R8UI=6]="R8UI",t[t.R8I=7]="R8I",t[t.R16F=8]="R16F",t[t.R16UI=9]="R16UI",t[t.R16I=10]="R16I",t[t.R32F=11]="R32F",t[t.R32UI=12]="R32UI",t[t.R32I=13]="R32I",t[t.RG8=14]="RG8",t[t.RG8SN=15]="RG8SN",t[t.RG8UI=16]="RG8UI",t[t.RG8I=17]="RG8I",t[t.RG16F=18]="RG16F",t[t.RG16UI=19]="RG16UI",t[t.RG16I=20]="RG16I",t[t.RG32F=21]="RG32F",t[t.RG32UI=22]="RG32UI",t[t.RG32I=23]="RG32I",t[t.RGB8=24]="RGB8",t[t.SRGB8=25]="SRGB8",t[t.RGB8SN=26]="RGB8SN",t[t.RGB8UI=27]="RGB8UI",t[t.RGB8I=28]="RGB8I",t[t.RGB16F=29]="RGB16F",t[t.RGB16UI=30]="RGB16UI",t[t.RGB16I=31]="RGB16I",t[t.RGB32F=32]="RGB32F",t[t.RGB32UI=33]="RGB32UI",t[t.RGB32I=34]="RGB32I",t[t.RGBA8=35]="RGBA8",t[t.SRGB8_A8=36]="SRGB8_A8",t[t.RGBA8SN=37]="RGBA8SN",t[t.RGBA8UI=38]="RGBA8UI",t[t.RGBA8I=39]="RGBA8I",t[t.RGBA16F=40]="RGBA16F",t[t.RGBA16UI=41]="RGBA16UI",t[t.RGBA16I=42]="RGBA16I",t[t.RGBA32F=43]="RGBA32F",t[t.RGBA32UI=44]="RGBA32UI",t[t.RGBA32I=45]="RGBA32I",t[t.R5G6B5=46]="R5G6B5",t[t.R11G11B10F=47]="R11G11B10F",t[t.RGB5A1=48]="RGB5A1",t[t.RGBA4=49]="RGBA4",t[t.RGB10A2=50]="RGB10A2",t[t.RGB10A2UI=51]="RGB10A2UI",t[t.RGB9E5=52]="RGB9E5",t[t.D16=53]="D16",t[t.D16S8=54]="D16S8",t[t.D24=55]="D24",t[t.D24S8=56]="D24S8",t[t.D32F=57]="D32F",t[t.D32F_S8=58]="D32F_S8",t[t.BC1=59]="BC1",t[t.BC1_ALPHA=60]="BC1_ALPHA",t[t.BC1_SRGB=61]="BC1_SRGB",t[t.BC1_SRGB_ALPHA=62]="BC1_SRGB_ALPHA",t[t.BC2=63]="BC2",t[t.BC2_SRGB=64]="BC2_SRGB",t[t.BC3=65]="BC3",t[t.BC3_SRGB=66]="BC3_SRGB",t[t.BC4=67]="BC4",t[t.BC4_SNORM=68]="BC4_SNORM",t[t.BC5=69]="BC5",t[t.BC5_SNORM=70]="BC5_SNORM",t[t.BC6H_UF16=71]="BC6H_UF16",t[t.BC6H_SF16=72]="BC6H_SF16",t[t.BC7=73]="BC7",t[t.BC7_SRGB=74]="BC7_SRGB",t[t.ETC_RGB8=75]="ETC_RGB8",t[t.ETC2_RGB8=76]="ETC2_RGB8",t[t.ETC2_SRGB8=77]="ETC2_SRGB8",t[t.ETC2_RGB8_A1=78]="ETC2_RGB8_A1",t[t.ETC2_SRGB8_A1=79]="ETC2_SRGB8_A1",t[t.ETC2_RGBA8=80]="ETC2_RGBA8",t[t.ETC2_SRGB8_A8=81]="ETC2_SRGB8_A8",t[t.EAC_R11=82]="EAC_R11",t[t.EAC_R11SN=83]="EAC_R11SN",t[t.EAC_RG11=84]="EAC_RG11",t[t.EAC_RG11SN=85]="EAC_RG11SN",t[t.PVRTC_RGB2=86]="PVRTC_RGB2",t[t.PVRTC_RGBA2=87]="PVRTC_RGBA2",t[t.PVRTC_RGB4=88]="PVRTC_RGB4",t[t.PVRTC_RGBA4=89]="PVRTC_RGBA4",t[t.PVRTC2_2BPP=90]="PVRTC2_2BPP",t[t.PVRTC2_4BPP=91]="PVRTC2_4BPP"})(o||(o={})),(function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.INDEX=4]="INDEX",t[t.VERTEX=8]="VERTEX",t[t.UNIFORM=16]="UNIFORM",t[t.STORAGE=32]="STORAGE",t[t.INDIRECT=64]="INDIRECT"})(c||(c={})),(function(t){t[t.NONE=0]="NONE",t[t.DEVICE=1]="DEVICE",t[t.HOST=2]="HOST"})(u||(u={})),(function(t){t[t.NONE=0]="NONE",t[t.READ=1]="READ",t[t.WRITE=2]="WRITE"})(l||(l={})),(function(t){t[t.POINT_LIST=0]="POINT_LIST",t[t.LINE_LIST=1]="LINE_LIST",t[t.LINE_STRIP=2]="LINE_STRIP",t[t.LINE_LOOP=3]="LINE_LOOP",t[t.LINE_LIST_ADJACENCY=4]="LINE_LIST_ADJACENCY",t[t.LINE_STRIP_ADJACENCY=5]="LINE_STRIP_ADJACENCY",t[t.ISO_LINE_LIST=6]="ISO_LINE_LIST",t[t.TRIANGLE_LIST=7]="TRIANGLE_LIST",t[t.TRIANGLE_STRIP=8]="TRIANGLE_STRIP",t[t.TRIANGLE_FAN=9]="TRIANGLE_FAN",t[t.TRIANGLE_LIST_ADJACENCY=10]="TRIANGLE_LIST_ADJACENCY",t[t.TRIANGLE_STRIP_ADJACENCY=11]="TRIANGLE_STRIP_ADJACENCY",t[t.TRIANGLE_PATCH_ADJACENCY=12]="TRIANGLE_PATCH_ADJACENCY",t[t.QUAD_PATCH_LIST=13]="QUAD_PATCH_LIST"})(h||(h={})),(function(t){t[t.FILL=0]="FILL",t[t.POINT=1]="POINT",t[t.LINE=2]="LINE"})(_||(_={})),(function(t){t[t.GOURAND=0]="GOURAND",t[t.FLAT=1]="FLAT"})(f||(f={})),(function(t){t[t.NONE=0]="NONE",t[t.FRONT=1]="FRONT",t[t.BACK=2]="BACK"})(d||(d={})),(function(t){t[t.NEVER=0]="NEVER",t[t.LESS=1]="LESS",t[t.EQUAL=2]="EQUAL",t[t.LESS_EQUAL=3]="LESS_EQUAL",t[t.GREATER=4]="GREATER",t[t.NOT_EQUAL=5]="NOT_EQUAL",t[t.GREATER_EQUAL=6]="GREATER_EQUAL",t[t.ALWAYS=7]="ALWAYS"})(p||(p={})),(function(t){t[t.ZERO=0]="ZERO",t[t.KEEP=1]="KEEP",t[t.REPLACE=2]="REPLACE",t[t.INCR=3]="INCR",t[t.DECR=4]="DECR",t[t.INVERT=5]="INVERT",t[t.INCR_WRAP=6]="INCR_WRAP",t[t.DECR_WRAP=7]="DECR_WRAP"})(v||(v={})),(function(t){t[t.ADD=0]="ADD",t[t.SUB=1]="SUB",t[t.REV_SUB=2]="REV_SUB",t[t.MIN=3]="MIN",t[t.MAX=4]="MAX"})(g||(g={})),(function(t){t[t.ZERO=0]="ZERO",t[t.ONE=1]="ONE",t[t.SRC_ALPHA=2]="SRC_ALPHA",t[t.DST_ALPHA=3]="DST_ALPHA",t[t.ONE_MINUS_SRC_ALPHA=4]="ONE_MINUS_SRC_ALPHA",t[t.ONE_MINUS_DST_ALPHA=5]="ONE_MINUS_DST_ALPHA",t[t.SRC_COLOR=6]="SRC_COLOR",t[t.DST_COLOR=7]="DST_COLOR",t[t.ONE_MINUS_SRC_COLOR=8]="ONE_MINUS_SRC_COLOR",t[t.ONE_MINUS_DST_COLOR=9]="ONE_MINUS_DST_COLOR",t[t.SRC_ALPHA_SATURATE=10]="SRC_ALPHA_SATURATE",t[t.CONSTANT_COLOR=11]="CONSTANT_COLOR",t[t.ONE_MINUS_CONSTANT_COLOR=12]="ONE_MINUS_CONSTANT_COLOR",t[t.CONSTANT_ALPHA=13]="CONSTANT_ALPHA",t[t.ONE_MINUS_CONSTANT_ALPHA=14]="ONE_MINUS_CONSTANT_ALPHA"})(m||(m={})),(function(t){t[t.NONE=0]="NONE",t[t.R=1]="R",t[t.G=2]="G",t[t.B=4]="B",t[t.A=8]="A",t[t.ALL=15]="ALL"})(y||(y={})),(function(t){t[t.NONE=0]="NONE",t[t.POINT=1]="POINT",t[t.LINEAR=2]="LINEAR",t[t.ANISOTROPIC=3]="ANISOTROPIC"})(T||(T={})),(function(t){t[t.WRAP=0]="WRAP",t[t.MIRROR=1]="MIRROR",t[t.CLAMP=2]="CLAMP",t[t.BORDER=3]="BORDER"})(E||(E={})),(function(t){t[t.TEX1D=0]="TEX1D",t[t.TEX2D=1]="TEX2D",t[t.TEX3D=2]="TEX3D"})(A||(A={})),(function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.SAMPLED=4]="SAMPLED",t[t.STORAGE=8]="STORAGE",t[t.COLOR_ATTACHMENT=16]="COLOR_ATTACHMENT",t[t.DEPTH_STENCIL_ATTACHMENT=32]="DEPTH_STENCIL_ATTACHMENT",t[t.TRANSIENT_ATTACHMENT=64]="TRANSIENT_ATTACHMENT",t[t.INPUT_ATTACHMENT=128]="INPUT_ATTACHMENT"})(C||(C={})),(function(t){t[t.X1=0]="X1",t[t.X2=1]="X2",t[t.X4=2]="X4",t[t.X8=3]="X8",t[t.X16=4]="X16",t[t.X32=5]="X32",t[t.X64=6]="X64"})(x||(x={})),(function(t){t[t.NONE=0]="NONE",t[t.GEN_MIPMAP=1]="GEN_MIPMAP",t[t.CUBEMAP=2]="CUBEMAP",t[t.BAKUP_BUFFER=4]="BAKUP_BUFFER"})(b||(b={})),(function(t){t[t.TV1D=0]="TV1D",t[t.TV2D=1]="TV2D",t[t.TV3D=2]="TV3D",t[t.CUBE=3]="CUBE",t[t.TV1D_ARRAY=4]="TV1D_ARRAY",t[t.TV2D_ARRAY=5]="TV2D_ARRAY"})(S||(S={})),(function(t){t[t.VERTEX=0]="VERTEX",t[t.HULL=1]="HULL",t[t.DOMAIN=2]="DOMAIN",t[t.GEOMETRY=3]="GEOMETRY",t[t.FRAGMENT=4]="FRAGMENT",t[t.COMPUTE=5]="COMPUTE",t[t.COUNT=6]="COUNT"})(R||(R={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.UNIFORM_BUFFER=1]="UNIFORM_BUFFER",t[t.SAMPLER=2]="SAMPLER",t[t.STORAGE_BUFFER=3]="STORAGE_BUFFER"})(w||(w={})),(function(t){t[t.PRIMARY=0]="PRIMARY",t[t.SECONDARY=1]="SECONDARY"})(I||(I={})),(function(t){t[t.LOAD=0]="LOAD",t[t.CLEAR=1]="CLEAR",t[t.DISCARD=2]="DISCARD"})(M||(M={})),(function(t){t[t.STORE=0]="STORE",t[t.DISCARD=1]="DISCARD"})(O||(O={})),(function(t){t[t.UNDEFINED=0]="UNDEFINED",t[t.GENERAL=1]="GENERAL",t[t.COLOR_ATTACHMENT_OPTIMAL=2]="COLOR_ATTACHMENT_OPTIMAL",t[t.DEPTH_STENCIL_ATTACHMENT_OPTIMAL=3]="DEPTH_STENCIL_ATTACHMENT_OPTIMAL",t[t.DEPTH_STENCIL_READONLY_OPTIMAL=4]="DEPTH_STENCIL_READONLY_OPTIMAL",t[t.SHADER_READONLY_OPTIMAL=5]="SHADER_READONLY_OPTIMAL",t[t.TRANSFER_SRC_OPTIMAL=6]="TRANSFER_SRC_OPTIMAL",t[t.TRANSFER_DST_OPTIMAL=7]="TRANSFER_DST_OPTIMAL",t[t.PREINITIALIZED=8]="PREINITIALIZED",t[t.PRESENT_SRC=9]="PRESENT_SRC"})(D||(D={})),(function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.RAY_TRACING=2]="RAY_TRACING"})(L||(L={})),(function(t){t[t.VIEWPORT=0]="VIEWPORT",t[t.SCISSOR=1]="SCISSOR",t[t.LINE_WIDTH=2]="LINE_WIDTH",t[t.DEPTH_BIAS=3]="DEPTH_BIAS",t[t.BLEND_CONSTANTS=4]="BLEND_CONSTANTS",t[t.DEPTH_BOUNDS=5]="DEPTH_BOUNDS",t[t.STENCIL_WRITE_MASK=6]="STENCIL_WRITE_MASK",t[t.STENCIL_COMPARE_MASK=7]="STENCIL_COMPARE_MASK"})(P||(P={})),(function(t){t[t.FRONT=0]="FRONT",t[t.BACK=1]="BACK",t[t.ALL=2]="ALL"})(N||(N={})),(function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.TRANSFER=2]="TRANSFER"})(F||(F={})),(function(t){t[t.NONE=0]="NONE",t[t.COLOR=1]="COLOR",t[t.DEPTH=2]="DEPTH",t[t.STENCIL=4]="STENCIL",t[t.DEPTH_STENCIL=6]="DEPTH_STENCIL",t[t.ALL=7]="ALL"})(B||(B={})),(function(t){t[t.DEFAULT=100]="DEFAULT"})(U||(U={})),(function(t){t[t.MIN=0]="MIN",t[t.MAX=255]="MAX",t[t.DEFAULT=128]="DEFAULT"})(z||(z={})),(function(t){t[t.UBO_GLOBAL=23]="UBO_GLOBAL",t[t.UBO_SHADOW=22]="UBO_SHADOW",t[t.UBO_LOCAL=21]="UBO_LOCAL",t[t.UBO_FORWARD_LIGHTS=20]="UBO_FORWARD_LIGHTS",t[t.UBO_SKINNING=19]="UBO_SKINNING",t[t.UBO_SKINNING_TEXTURE=18]="UBO_SKINNING_TEXTURE",t[t.UBO_UI=17]="UBO_UI",t[t.SAMPLER_JOINTS=25]="SAMPLER_JOINTS",t[t.SAMPLER_ENVIRONMENT=26]="SAMPLER_ENVIRONMENT",t[t.CUSTUM_UBO_BINDING_END_POINT=17]="CUSTUM_UBO_BINDING_END_POINT",t[t.CUSTOM_SAMPLER_BINDING_START_POINT=30]="CUSTOM_SAMPLER_BINDING_START_POINT"})(k||(k={})),(function(t){t[t.minFilter=0]="minFilter",t[t.magFilter=1]="magFilter",t[t.mipFilter=2]="mipFilter",t[t.addressU=3]="addressU",t[t.addressV=4]="addressV",t[t.addressW=5]="addressW",t[t.maxAnisotropy=6]="maxAnisotropy",t[t.cmpFunc=7]="cmpFunc",t[t.minLOD=8]="minLOD",t[t.maxLOD=9]="maxLOD",t[t.mipLODBias=10]="mipLODBias",t[t.borderColor=11]="borderColor",t[t.total=15]="total"})(W||(W={}));var G={};G[G.bool=a.BOOL]="bool",G[G.int=a.INT]="int",G[G.ivec2=a.INT2]="ivec2invTypeParams",G[G.ivec3=a.INT3]="ivec3",G[G.ivec4=a.INT4]="ivec4",G[G.float=a.FLOAT]="float",G[G.vec2=a.FLOAT2]="vec2",G[G.vec3=a.FLOAT3]="vec3",G[G.vec4=a.FLOAT4]="vec4",G[G.mat2=a.MAT2]="mat2",G[G.mat3=a.MAT3]="mat3",G[G.mat4=a.MAT4]="mat4",G[G.sampler2D=a.SAMPLER2D]="sampler2D",G[G.samplerCube=a.SAMPLER_CUBE]="samplerCube";var j=((V={})[a.BOOL]=4,V[a.INT]=4,V[a.INT2]=8,V[a.INT3]=12,V[a.INT4]=16,V[a.FLOAT]=4,V[a.FLOAT2]=8,V[a.FLOAT3]=12,V[a.FLOAT4]=16,V[a.MAT2]=16,V[a.MAT3]=36,V[a.MAT4]=64,V[a.SAMPLER2D]=4,V[a.SAMPLER_CUBE]=4,V),Y=((H={})[a.BOOL]=o.R32I,H[a.INT]=o.R32I,H[a.INT2]=o.RG32I,H[a.INT3]=o.RGB32I,H[a.INT4]=o.RGBA32I,H[a.FLOAT]=o.R32F,H[a.FLOAT2]=o.RG32F,H[a.FLOAT3]=o.RGB32F,H[a.FLOAT4]=o.RGBA32F,H),X={BACK:1029,FRONT:1028,NONE:0,ADD:32774,SUB:32778,REV_SUB:32779,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,SRC_ALPHA_SATURATE:776,NEVER:512,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,NOTEQUAL:517,GEQUAL:518,ALWAYS:519,KEEP:7680,REPLACE:7681,INCR:7682,INCR_WRAP:34055,DECR:7683,DECR_WRAP:34056,INVERT:5386};Object.assign(X,U);var q={murmurhash2_32_gc:function(t,e){for(var i,n=t.length,r=e^n,s=0;n>=4;)i=1540483477*(65535&(i=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(i>>>16)&65535)<<16),r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:r^=(255&t.charCodeAt(s+2))<<16;case 2:r^=(255&t.charCodeAt(s+1))<<8;case 1:r=1540483477*(65535&(r^=255&t.charCodeAt(s)))+((1540483477*(r>>>16)&65535)<<16)}return r=1540483477*(65535&(r^=r>>>13))+((1540483477*(r>>>16)&65535)<<16),(r^=r>>>15)>>>0},SamplerInfoIndex:W,effectStructure:{$techniques:[{$passes:[{depthStencilState:{},rasterizerState:{},blendState:{targets:[{}]},properties:{any:{sampler:{},inspector:{}}}}]}]},typeMap:G,sizeMap:j,formatMap:Y,passParams:X,RenderQueue:{OPAQUE:0,TRANSPARENT:1,OVERLAY:2},RenderPriority:z,GFXGetTypeSize:function(t){switch(t){case a.BOOL:case a.INT:case a.UINT:case a.FLOAT:return 4;case a.BOOL2:case a.INT2:case a.UINT2:case a.FLOAT2:return 8;case a.BOOL3:case a.INT3:case a.UINT3:case a.FLOAT3:return 12;case a.BOOL4:case a.INT4:case a.UINT4:case a.FLOAT4:case a.MAT2:return 16;case a.MAT2X3:return 24;case a.MAT2X4:return 32;case a.MAT3X2:return 24;case a.MAT3:return 36;case a.MAT3X4:return 48;case a.MAT4X2:case a.MAT4X2:return 32;case a.MAT4:return 64;case a.SAMPLER1D:case a.SAMPLER1D_ARRAY:case a.SAMPLER2D:case a.SAMPLER2D_ARRAY:case a.SAMPLER3D:case a.SAMPLER_CUBE:return 4;default:return 0}},UniformBinding:k};e.exports=q}),{}],254:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("../memop"),r=u(t("../enums")),s=t("../../core/value-types"),a=u(t("./program-lib")),o=u(t("./view")),c=u(t("../gfx"));function u(t){return t&&t.__esModule?t:{default:t}}var l=new s.Mat4,h=new n.RecyclePool(function(){return{stage:null,items:null}},8),_=new n.RecyclePool(function(){return new Float32Array(2)},8),f=new n.RecyclePool(function(){return new Float32Array(3)},8),d=new n.RecyclePool(function(){return new Float32Array(4)},8),p=new n.RecyclePool(function(){return new Float32Array(9)},8),v=new n.RecyclePool(function(){return new Float32Array(16)},8),g=new n.RecyclePool(function(){return new Float32Array(64)},8),m=new n.RecyclePool(function(){return new Int32Array(2)},8),y=new n.RecyclePool(function(){return new Int32Array(3)},8),T=new n.RecyclePool(function(){return new Int32Array(4)},8),E=new n.RecyclePool(function(){return new Int32Array(64)},8),A=(function(){function t(t,e){var i;this._device=t,this._programLib=new a.default(t),this._opts=e,this._type2defaultValue=((i={})[r.default.PARAM_INT]=0,i[r.default.PARAM_INT2]=new s.Vec2(0,0),i[r.default.PARAM_INT3]=new s.Vec3(0,0,0),i[r.default.PARAM_INT4]=new s.Vec4(0,0,0,0),i[r.default.PARAM_FLOAT]=0,i[r.default.PARAM_FLOAT2]=new s.Vec2(0,0),i[r.default.PARAM_FLOAT3]=new s.Vec3(0,0,0),i[r.default.PARAM_FLOAT4]=new s.Vec4(0,0,0,0),i[r.default.PARAM_COLOR4]=new s.Color(0,0,0,1),i[r.default.PARAM_MAT3]=new s.Mat3,i[r.default.PARAM_MAT4]=new s.Mat4,i[r.default.PARAM_TEXTURE_2D]=e.defaultTexture,i[r.default.PARAM_TEXTURE_CUBE]=e.defaultTextureCube,i),this._stage2fn={},this._usedTextureUnits=0,this._viewPools=new n.RecyclePool(function(){return new o.default},8),this._drawItemsPools=new n.RecyclePool(function(){return{model:null,node:null,ia:null,effect:null,defines:null,uniforms:null}},100),this._stageItemsPools=new n.RecyclePool(function(){return new n.RecyclePool(function(){return{model:null,node:null,ia:null,effect:null,defines:null,passes:[],sortKey:-1,uniforms:null}},100)},16),this._definesChanged=!1}var e=t.prototype;return e._resetTextuerUnit=function(){this._usedTextureUnits=0},e._allocTextureUnit=function(){var t=this._device,e=this._usedTextureUnits;return e>=t._caps.maxTextureUnits&&console.warn("Trying to use "+e+" texture units while this GPU supports only "+t._caps.maxTextureUnits),this._usedTextureUnits+=1,e},e._registerStage=function(t,e){this._stage2fn[t]=e},e.clear=function(){this._programLib.clear(),this.reset()},e.reset=function(){this._viewPools.reset(),this._stageItemsPools.reset(),this._definesChanged=!1},e._requestView=function(){return this._viewPools.add()},e._render=function(t,e){var i=this._device;i.setFrameBuffer(t._framebuffer),i.setViewport(t._rect.x,t._rect.y,t._rect.w,t._rect.h);var n={};t._clearFlags&r.default.CLEAR_COLOR&&(n.color=s.Vec4.toArray([],t._color)),t._clearFlags&r.default.CLEAR_DEPTH&&(n.depth=t._depth),t._clearFlags&r.default.CLEAR_STENCIL&&(n.stencil=t._stencil),i.clear(n),this._drawItemsPools.reset();for(var a=0;at.count)return void console.error("Failed to set property ["+t.name+"] : The length of texture array ["+i.length+"] is bigger than ["+t.count+"].");for(var n=E.add(),s=0;s0&&n&&n.precision>0}e||cc.warnID(9102),this._highpSupported=e},t})();i.default=l,e.exports=i.default}),{"../gfx":265}],258:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;i>24)/255,(i.blendColor>>16&255)/255,(i.blendColor>>8&255)/255,(255&i.blendColor)/255),void(i.blendSep?(t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(t.blendFunc(i.blendSrc,i.blendDst),t.blendEquation(i.blendEq)))):void t.disable(t.BLEND);!1!==i.blend&&(e.blendColor!==i.blendColor&&t.blendColor((i.blendColor>>24)/255,(i.blendColor>>16&255)/255,(i.blendColor>>8&255)/255,(255&i.blendColor)/255),e.blendSep===i.blendSep?i.blendSep?(e.blendSrc===i.blendSrc&&e.blendDst===i.blendDst&&e.blendSrcAlpha===i.blendSrcAlpha&&e.blendDstAlpha===i.blendDstAlpha||t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),e.blendEq===i.blendEq&&e.blendAlphaEq===i.blendAlphaEq||t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(e.blendSrc===i.blendSrc&&e.blendDst===i.blendDst||t.blendFunc(i.blendSrc,i.blendDst),e.blendEq!==i.blendEq&&t.blendEquation(i.blendEq)):i.blendSep?(t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(t.blendFunc(i.blendSrc,i.blendDst),t.blendEquation(i.blendEq)))}function d(t,e,i){if(e.depthTest!==i.depthTest)return i.depthTest?(t.enable(t.DEPTH_TEST),t.depthFunc(i.depthFunc),void t.depthMask(i.depthWrite)):void t.disable(t.DEPTH_TEST);e.depthWrite!==i.depthWrite&&t.depthMask(i.depthWrite),!1!==i.depthTest?e.depthFunc!==i.depthFunc&&t.depthFunc(i.depthFunc):i.depthWrite&&(i.depthTest=!0,i.depthFunc=a.enums.DS_FUNC_ALWAYS,t.enable(t.DEPTH_TEST),t.depthFunc(i.depthFunc))}function p(t,e,i){if(i.stencilTest!==a.enums.STENCIL_INHERIT)return i.stencilTest!==e.stencilTest?i.stencilTest===a.enums.STENCIL_DISABLE?void t.disable(t.STENCIL_TEST):(t.enable(t.STENCIL_TEST),void(i.stencilSep?(t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMask(i.stencilWriteMaskFront),t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront)))):void(i.stencilTest!==a.enums.STENCIL_DISABLE&&(e.stencilSep===i.stencilSep?i.stencilSep?(e.stencilFuncFront===i.stencilFuncFront&&e.stencilRefFront===i.stencilRefFront&&e.stencilMaskFront===i.stencilMaskFront||t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),e.stencilWriteMaskFront!==i.stencilWriteMaskFront&&t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),e.stencilFailOpFront===i.stencilFailOpFront&&e.stencilZFailOpFront===i.stencilZFailOpFront&&e.stencilZPassOpFront===i.stencilZPassOpFront||t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),e.stencilFuncBack===i.stencilFuncBack&&e.stencilRefBack===i.stencilRefBack&&e.stencilMaskBack===i.stencilMaskBack||t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),e.stencilWriteMaskBack!==i.stencilWriteMaskBack&&t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),e.stencilFailOpBack===i.stencilFailOpBack&&e.stencilZFailOpBack===i.stencilZFailOpBack&&e.stencilZPassOpBack===i.stencilZPassOpBack||t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(e.stencilFuncFront===i.stencilFuncFront&&e.stencilRefFront===i.stencilRefFront&&e.stencilMaskFront===i.stencilMaskFront||t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),e.stencilWriteMaskFront!==i.stencilWriteMaskFront&&t.stencilMask(i.stencilWriteMaskFront),e.stencilFailOpFront===i.stencilFailOpFront&&e.stencilZFailOpFront===i.stencilZFailOpFront&&e.stencilZPassOpFront===i.stencilZPassOpFront||t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront)):i.stencilSep?(t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMask(i.stencilWriteMaskFront),t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront))))}function v(t,e,i){e.cullMode!==i.cullMode&&(i.cullMode!==a.enums.CULL_NONE?(t.enable(t.CULL_FACE),t.cullFace(i.cullMode)):t.disable(t.CULL_FACE))}function g(t,e,i,n){var r=!1;if(-1!==n.maxStream){if(i.maxStream!==n.maxStream)r=!0;else if(i.program!==n.program)r=!0;else for(var s=0;s>>0},n.setBlendFunc=function(t,e){this._next.blendSep=!1,this._next.blendSrc=t,this._next.blendDst=e},n.setBlendFuncSep=function(t,e,i,n){this._next.blendSep=!0,this._next.blendSrc=t,this._next.blendDst=e,this._next.blendSrcAlpha=i,this._next.blendDstAlpha=n},n.setBlendEq=function(t){this._next.blendSep=!1,this._next.blendEq=t},n.setBlendEqSep=function(t,e){this._next.blendSep=!0,this._next.blendEq=t,this._next.blendAlphaEq=e},n.setCullMode=function(t){this._next.cullMode=t},n.setVertexBuffer=function(t,e,i){void 0===i&&(i=0),this._next.vertexBuffers[t]=e,this._next.vertexBufferOffsets[t]=i,this._next.maxStream=this._caps.maxTextureUnits?console.warn("Can not set texture "+t+" at stage "+i+", max texture exceed: "+this._caps.maxTextureUnits):(this._next.textureUnits[i]=e,this.setUniform(t,i),this._next.maxTextureSlot=this._caps.maxTextureUnits)console.warn("Can not set "+n+" textures for "+t+", max texture exceed: "+this._caps.maxTextureUnits);else{for(var r=0;rthis._bytes){if(t)return void console.error("Failed to update data, bytes exceed.");this._needExpandDataStore=!0,this._bytes=t+e.byteLength,this._numIndices=this._bytes/this._bytesPerIndex}var i=this._device._gl,n=this._usage;i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,this._glID),this._needExpandDataStore?(i.bufferData(i.ELEMENT_ARRAY_BUFFER,e,n),this._needExpandDataStore=!1):i.bufferSubData(i.ELEMENT_ARRAY_BUFFER,t,e),this._device._restoreIndexBuffer()}}else console.error("The buffer is destroyed")},n.setUsage=function(t){this._usage=t},e=t,(i=[{key:"count",get:function(){return this._numIndices}}])&&s(e.prototype,i),t})();o.BYTES_PER_INDEX=a;var c=o;i.default=c,e.exports=i.default}),{"./enums":262}],265:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./enums");n={VertexFormat:t("./vertex-format"),IndexBuffer:t("./index-buffer"),VertexBuffer:t("./vertex-buffer"),Program:t("./program"),Texture:t("./texture"),Texture2D:t("./texture-2d"),TextureCube:t("./texture-cube"),RenderBuffer:t("./render-buffer"),FrameBuffer:t("./frame-buffer"),Device:t("./device"),attrTypeBytes:r.attrTypeBytes,glFilter:r.glFilter,glTextureFmt:r.glTextureFmt},Object.assign(n,r.enums);var s=n;i.default=s,cc.gfx=n,e.exports=i.default}),{"./device":261,"./enums":262,"./frame-buffer":263,"./index-buffer":264,"./program":267,"./render-buffer":268,"./texture":272,"./texture-2d":270,"./texture-cube":271,"./vertex-buffer":273,"./vertex-format":274}],266:[(function(t,e,i){"use strict";i.__esModule=!0,i.isPow2=function(t){return!(t&t-1||!t)}}),{}],267:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;i0&&t.push({type:e,fileID:-1,line:0,message:i})}}))}var a=(function(){function t(t,e){this._device=t,this._attributes=[],this._uniforms=[],this._samplers=[],this._errors=[],this._linked=!1,this._vertSource=e.vert,this._fragSource=e.frag,this._glID=null,this._id=r++}var e,i,a=t.prototype;return a.link=function(){if(!this._linked){var t=this._device._gl,e=o(t,t.VERTEX_SHADER,this._vertSource),i=o(t,t.FRAGMENT_SHADER,this._fragSource),n=t.createProgram();t.attachShader(n,e),t.attachShader(n,i),t.linkProgram(n);var r=!1,a=this._errors;if(t.getShaderParameter(e,t.COMPILE_STATUS)||(s(a,"vs",t.getShaderInfoLog(e)),r=!0),t.getShaderParameter(i,t.COMPILE_STATUS)||(s(a,"fs",t.getShaderInfoLog(i)),r=!0),t.deleteShader(e),t.deleteShader(i),r)return a;if(!t.getProgramParameter(n,t.LINK_STATUS))return a.push({info:"Failed to link shader program: "+t.getProgramInfoLog(n)}),a;this._glID=n;for(var c=t.getProgramParameter(n,t.ACTIVE_ATTRIBUTES),u=0;u=s.enums.TEXTURE_FMT_RGB_DXT1&&this._format<=s.enums.TEXTURE_FMT_RGBA_PVRTC_4BPPV1||this._format>=s.enums.TEXTURE_FMT_RGB_ETC2&&this._format<=s.enums.TEXTURE_FMT_RGBA_ETC2),void 0!==t.genMipmaps&&(this._genMipmap=t.genMipmaps,i=t.genMipmaps);var n=this._device.caps.maxTextureSize||Number.MAX_VALUE,r=Math.max(t.width||0,t.height||0);n1&&(i=!1,(t.width>t.height?t.width:t.height)>>t.images.length-1!=1&&console.error("texture-2d mipmap is invalid, should have a 1x1 mipmap."))}(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height)||(i=!1),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),void 0!==t.images&&t.images.length>0&&(this._setMipmap(t.images,t.flipY,t.premultiplyAlpha),t.images.length>1&&(this._genMipmap=!0)),i&&(e.hint(e.GENERATE_MIPMAP_HINT,e.NICEST),e.generateMipmap(e.TEXTURE_2D),this._genMipmap=!0),this._setTexInfo(),this._device._restoreTexture(0)},r.updateSubImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),this._setSubImage(i,t),this._device._restoreTexture(0)},r.updateImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),this._setImage(i,t),this._device._restoreTexture(0)},r._setSubImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.image;!s||ArrayBuffer.isView(s)||s instanceof ArrayBuffer?(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),this._compressed?i.compressedTexSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,e.width,e.height,t.format,s):i.texSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,e.width,e.height,t.format,t.pixelType,s)):(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!0):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),i.texSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,t.format,t.pixelType,s))},r._setImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.image;!s||ArrayBuffer.isView(s)||s instanceof ArrayBuffer?(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),this._compressed?i.compressedTexImage2D(i.TEXTURE_2D,e.level,t.internalFormat,e.width,e.height,0,s):i.texImage2D(i.TEXTURE_2D,e.level,t.internalFormat,e.width,e.height,0,t.format,t.pixelType,s)):(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!0):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),i.texImage2D(i.TEXTURE_2D,e.level,t.internalFormat,t.format,t.pixelType,s))},r._setMipmap=function(t,e,i){for(var n=(0,s.glTextureFmt)(this._format),r={width:this._width,height:this._height,flipY:e,premultiplyAlpha:i,level:0,image:null},a=0;a>a,r.height=this._height>>a,r.image=t[a],this._setImage(n,r)},r._setTexInfo=function(){var t=this._device._gl,e=(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height);e||this._wrapS===s.enums.WRAP_CLAMP&&this._wrapT===s.enums.WRAP_CLAMP||(console.warn("WebGL1 doesn't support all wrap modes with NPOT textures"),this._wrapS=s.enums.WRAP_CLAMP,this._wrapT=s.enums.WRAP_CLAMP);var i=this._genMipmap?this._mipFilter:-1;e||-1===i||(console.warn("NPOT textures do not support mipmap filter"),i=-1),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,(0,s.glFilter)(t,this._minFilter,i)),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,(0,s.glFilter)(t,this._magFilter,-1)),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,this._wrapS),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,this._wrapT);var n=this._device.ext("EXT_texture_filter_anisotropic");n&&t.texParameteri(t.TEXTURE_2D,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisotropy)},n})(r.default);i.default=c,e.exports=i.default}),{"./enums":262,"./misc":266,"./texture":272}],271:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("./texture"))&&n.__esModule?n:{default:n},s=t("./enums"),a=t("./misc");function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=(function(t){var e,i;function n(e,i){var n,r=(n=t.call(this,e)||this)._device._gl;return n._target=r.TEXTURE_CUBE_MAP,n._glID=r.createTexture(),n.update(i),n}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,o(e,i);var r=n.prototype;return r.update=function(t){var e=this._device._gl,i=this._genMipmaps;t&&(void 0!==t.width&&(this._width=t.width),void 0!==t.height&&(this._height=t.height),void 0!==t.anisotropy&&(this._anisotropy=t.anisotropy),void 0!==t.minFilter&&(this._minFilter=t.minFilter),void 0!==t.magFilter&&(this._magFilter=t.magFilter),void 0!==t.mipFilter&&(this._mipFilter=t.mipFilter),void 0!==t.wrapS&&(this._wrapS=t.wrapS),void 0!==t.wrapT&&(this._wrapT=t.wrapT),void 0!==t.format&&(this._format=t.format,this._compressed=this._format>=s.enums.TEXTURE_FMT_RGB_DXT1&&this._format<=s.enums.TEXTURE_FMT_RGBA_PVRTC_4BPPV1||this._format>=s.enums.TEXTURE_FMT_RGB_ETC2&&this._format<=s.enums.TEXTURE_FMT_RGBA_ETC2),void 0!==t.genMipmaps&&(this._genMipmaps=t.genMipmaps,i=t.genMipmaps),void 0!==t.images&&t.images.length>1&&(i=!1,t.width!==t.height&&console.warn("texture-cube width and height should be identical."),t.width>>t.images.length-1!=1&&console.error("texture-cube mipmap is invalid. please set mipmap as 1x1, 2x2, 4x4 ... nxn"))),(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height)||(i=!1),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),void 0!==t.images&&t.images.length>0&&(this._setMipmap(t.images,t.flipY,t.premultiplyAlpha),t.images.length>1&&(this._genMipmaps=!0)),i&&(e.hint(e.GENERATE_MIPMAP_HINT,e.NICEST),e.generateMipmap(e.TEXTURE_CUBE_MAP),this._genMipmaps=!0),this._setTexInfo(),this._device._restoreTexture(0)},r.updateSubImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),this._setSubImage(i,t),this._device._restoreTexture(0)},r.updateImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),this._setImage(i,t),this._device._restoreTexture(0)},r._setSubImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.faceIndex,a=e.image;void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),!a||ArrayBuffer.isView(a)||a instanceof ArrayBuffer?this._compressed?i.compressedTexSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,e.width,e.height,t.format,a):i.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,e.width,e.height,t.format,t.pixelType,a):i.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,t.format,t.pixelType,a)},r._setImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.faceIndex,a=e.image;void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),!a||ArrayBuffer.isView(a)||a instanceof ArrayBuffer?this._compressed?i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,e.width,e.height,0,a):i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,e.width,e.height,0,t.format,t.pixelType,a):i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,t.format,t.pixelType,a)},r._setMipmap=function(t,e,i){for(var n=(0,s.glTextureFmt)(this._format),r={width:this._width,height:this._height,faceIndex:0,flipY:e,premultiplyAlpha:i,level:0,image:null},a=0;a>a,r.height=this._height>>a;for(var c=0;c<6;++c)r.faceIndex=c,r.image=o[c],this._setImage(n,r)}},r._setTexInfo=function(){var t=this._device._gl,e=(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height);e||this._wrapS===s.enums.WRAP_CLAMP&&this._wrapT===s.enums.WRAP_CLAMP||(console.warn("WebGL1 doesn't support all wrap modes with NPOT textures"),this._wrapS=s.enums.WRAP_CLAMP,this._wrapT=s.enums.WRAP_CLAMP);var i=this._genMipmaps?this._mipFilter:-1;e||-1===i||(console.warn("NPOT textures do not support mipmap filter"),i=-1),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_MIN_FILTER,(0,s.glFilter)(t,this._minFilter,i)),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_MAG_FILTER,(0,s.glFilter)(t,this._magFilter,-1)),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_WRAP_S,this._wrapS),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_WRAP_T,this._wrapT);var n=this._device.ext("EXT_texture_filter_anisotropic");n&&t.texParameteri(t.TEXTURE_CUBE_MAP,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisotropy)},n})(r.default);i.default=c,e.exports=i.default}),{"./enums":262,"./misc":266,"./texture":272}],272:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("./enums"),r=0,s=(function(){function t(t){this._device=t,this._width=4,this._height=4,this._genMipmaps=!1,this._compressed=!1,this._anisotropy=1,this._minFilter=n.enums.FILTER_LINEAR,this._magFilter=n.enums.FILTER_LINEAR,this._mipFilter=n.enums.FILTER_LINEAR,this._wrapS=n.enums.WRAP_REPEAT,this._wrapT=n.enums.WRAP_REPEAT,this._format=n.enums.TEXTURE_FMT_RGBA8,this._target=-1,this._id=r++}return t.prototype.destroy=function(){null!==this._glID?(this._device._gl.deleteTexture(this._glID),this._device._stats.tex-=this.bytes,this._glID=null):console.error("The texture already destroyed")},t})();i.default=s,e.exports=i.default}),{"./enums":262}],273:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;ithis._bytes){if(t)return void console.error("Failed to update data, bytes exceed.");this._needExpandDataStore=!0,this._bytes=t+e.byteLength,this._numVertices=this._bytes/this._bytesPerVertex}var i=this._device._gl,n=this._usage;i.bindBuffer(i.ARRAY_BUFFER,this._glID),this._needExpandDataStore?(i.bufferData(i.ARRAY_BUFFER,e,n),this._needExpandDataStore=!1):i.bufferSubData(i.ARRAY_BUFFER,t,e),i.bindBuffer(i.ARRAY_BUFFER,null)}}else console.error("The buffer is destroyed")},r.getFormat=function(t){return this._format.element(t)},r.setUsage=function(t){this._usage=t},e=t,(i=[{key:"count",get:function(){return this._numVertices}}])&&n(e.prototype,i),t})();i.default=r,e.exports=i.default}),{"./enums":262}],274:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./enums"),s=(n=t("../murmurhash2_gc"))&&n.__esModule?n:{default:n},a=(function(){function t(t){this._attr2el={},this._elements=[],this._bytes=0;for(var e="",i=0,n=t.length;ithis._data.length)for(var e=this._data.length;e=this._data.length&&this._resize(2*this._data.length),this._data[this._count]=t,++this._count},n.pop=function(){--this._count,this._count<0&&(this._count=0);var t=this._data[this._count];return this._data[this._count]=void 0,t},n.fastRemove=function(t){if(!(t>=this._count||t<0)){var e=this._count-1;this._data[t]=this._data[e],this._data[e]=void 0,this._count-=1}},n.indexOf=function(t){return this._data.indexOf(t)},n.sort=function(t){return(0,r.default)(this._data,0,this._count,t)},e=t,(i=[{key:"length",get:function(){return this._count}},{key:"data",get:function(){return this._data}}])&&s(e.prototype,i),t})();i.default=a,e.exports=i.default}),{"./timsort":281}],277:[(function(t,e,i){"use strict";i.__esModule=!0,i.TypedArrayPool=i.RecyclePool=i.Pool=i.LinkedArray=i.FixedArray=i.CircularPool=void 0;var n=u(t("./circular-pool"));i.CircularPool=n.default;var r=u(t("./fixed-array"));i.FixedArray=r.default;var s=u(t("./linked-array"));i.LinkedArray=s.default;var a=u(t("./pool"));i.Pool=a.default;var o=u(t("./recycle-pool"));i.RecyclePool=o.default;var c=u(t("./typed-array-pool"));function u(t){return t&&t.__esModule?t:{default:t}}i.TypedArrayPool=c.default}),{"./circular-pool":275,"./fixed-array":276,"./linked-array":278,"./pool":279,"./recycle-pool":280,"./typed-array-pool":282}],278:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("./pool"))&&n.__esModule?n:{default:n};function s(t,e){for(var i=0;ithis._data.length)for(var e=this._data.length;e=this._data.length&&this.resize(2*this._data.length),this._data[this._count++]},n.remove=function(t){if(!(t>=this._count)){var e=this._count-1,i=this._data[t];this._data[t]=this._data[e],this._data[e]=i,this._count-=1}},n.sort=function(t){return(0,r.default)(this._data,0,this._count,t)},e=t,(i=[{key:"length",get:function(){return this._count}},{key:"data",get:function(){return this._data}}])&&s(e.prototype,i),t})();i.default=a,cc.RecyclePool=a,e.exports=i.default}),{"./timsort":281}],281:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=function(t,e,i,r){if(!Array.isArray(t))throw new TypeError("Can only sort arrays");void 0===e&&(e=0),void 0===i&&(i=t.length),void 0===r&&(r=c);var s=i-e;if(!(s<2)){var a=0;if(sh&&(f=h),_(t,e,e+f,e+a,r),a=f}o.pushRun(e,a),o.mergeRuns(),s-=a,e+=a}while(0!==s);o.forceMergeRuns()}};var n=32,r=7,s=256,a=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9];function o(t){return t<1e5?t<100?t<10?0:1:t<1e4?t<1e3?2:3:4:t<1e7?t<1e6?5:6:t<1e9?t<1e8?7:8:9}function c(t,e){if(t===e)return 0;if(~~t===t&&~~e===e){if(0===t||0===e)return t=0)return-1;if(t>=0)return 1;t=-t,e=-e}var i=o(t),n=o(e),r=0;return in&&(e*=a[i-n-1],t/=10,r=1),t===e?r:t=n;)e|=1&t,t>>=1;return t+e}function l(t,e,i,n){var r=e+1;if(r===i)return 1;if(n(t[r++],t[e])<0){for(;r=0;)r++;return r-e}function h(t,e,i){for(i--;e>>1;r(s,t[c])<0?o=c:a=c+1}var u=n-a;switch(u){case 3:t[a+3]=t[a+2];case 2:t[a+2]=t[a+1];case 1:t[a+1]=t[a];break;default:for(;u>0;)t[a+u]=t[a+u-1],u--}t[a]=s}}function f(t,e,i,n,r,s){var a=0,o=0,c=1;if(s(t,e[i+r])>0){for(o=n-r;c0;)a=c,(c=1+(c<<1))<=0&&(c=o);c>o&&(c=o),a+=r,c+=r}else{for(o=r+1;co&&(c=o);var u=a;a=r-c,c=r-u}for(a++;a>>1);s(t,e[i+l])>0?a=l+1:c=l}return c}function d(t,e,i,n,r,s){var a=0,o=0,c=1;if(s(t,e[i+r])<0){for(o=r+1;co&&(c=o);var u=a;a=r-c,c=r-u}else{for(o=n-r;c=0;)a=c,(c=1+(c<<1))<=0&&(c=o);c>o&&(c=o),a+=r,c+=r}for(a++;a>>1);s(t,e[i+l])<0?c=l:a=l+1}return c}var p=(function(){function t(t,e){this.array=t,this.compare=e,this.minGallop=r,this.length=t.length,this.tmpStorageLength=s,this.length<2*s&&(this.tmpStorageLength=this.length>>>1),this.tmp=new Array(this.tmpStorageLength),this.stackLength=this.length<120?5:this.length<1542?10:this.length<119151?19:40,this.runStart=new Array(this.stackLength),this.runLength=new Array(this.stackLength),this.stackSize=0}var e=t.prototype;return e.pushRun=function(t,e){this.runStart[this.stackSize]=t,this.runLength[this.stackSize]=e,this.stackSize+=1},e.mergeRuns=function(){for(;this.stackSize>1;){var t=this.stackSize-2;if(t>=1&&this.runLength[t-1]<=this.runLength[t]+this.runLength[t+1]||t>=2&&this.runLength[t-2]<=this.runLength[t]+this.runLength[t-1])this.runLength[t-1]this.runLength[t+1])break;this.mergeAt(t)}},e.forceMergeRuns=function(){for(;this.stackSize>1;){var t=this.stackSize-2;t>0&&this.runLength[t-1]=r||v>=r);if(g)break;_<0&&(_=0),_+=2}if(this.minGallop=_,_<1&&(this.minGallop=1),1===e){for(c=0;c=0;c--)a[p+c]=a[_+c];if(0===e){y=!0;break}}if(a[h--]=o[l--],1==--n){y=!0;break}if(0!=(m=n-f(a[u],o,0,n,n-1,s))){for(n-=m,p=1+(h-=m),_=1+(l-=m),c=0;c=r||m>=r);if(y)break;v<0&&(v=0),v+=2}if(this.minGallop=v,v<1&&(this.minGallop=1),1===n){for(p=1+(h-=e),_=1+(u-=e),c=e-1;c>=0;c--)a[p+c]=a[_+c];a[h]=o[l]}else{if(0===n)throw new Error("mergeHigh preconditions were not respected");for(_=h-(n-1),c=0;c=0;c--)a[p+c]=a[_+c];a[h]=o[l]}else for(_=h-(n-1),c=0;c65535)<<4,e|=i=((t>>>=e)>255)<<3,e|=i=((t>>>=i)>15)<<2,(e|=i=((t>>>=i)>3)<<1)|(t>>>=i)>>1}function o(t){var e=s(t),i=n[a(e)>>2];return i.length>0?i.pop():new ArrayBuffer(e)}var c={alloc_int8:function(t){var e=new Int8Array(o(t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint8:function(t){var e=new Uint8Array(o(t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_int16:function(t){var e=new Int16Array(o(2*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint16:function(t){var e=new Uint16Array(o(2*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_int32:function(t){var e=new Int32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint32:function(t){var e=new Uint32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_float32:function(t){var e=new Float32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_float64:function(t){var e=new Float64Array(o(8*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_dataview:function(t){var e=new DataView(o(t),0,t);return e.length!==t?e.subarray(0,t):e},free:function(t){var e;e=t.buffer,n[a(e.byteLength)>>2].push(e)},reset:function(){for(var t=Array(8),e=0;e<8;++e)t[e]=[]}};i.default=c,e.exports=i.default}),{}],283:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=function(t,e){for(var i,n=t.length,r=e^n,s=0;n>=4;)i=1540483477*(65535&(i=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(i>>>16)&65535)<<16),r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:r^=(255&t.charCodeAt(s+2))<<16;case 2:r^=(255&t.charCodeAt(s+1))<<8;case 1:r=1540483477*(65535&(r^=255&t.charCodeAt(s)))+((1540483477*(r>>>16)&65535)<<16)}return r=1540483477*(65535&(r^=r>>>13))+((1540483477*(r>>>16)&65535)<<16),(r^=r>>>15)>>>0},e.exports=i.default}),{}],284:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("../../core/value-types"),r=o(t("../core/base-renderer")),s=o(t("../enums")),a=t("../memop");function o(t){return t&&t.__esModule?t:{default:t}}function c(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=new Float32Array(16),h=new Float32Array(16),_=new Float32Array(16),f=new Float32Array(16),d=new Float32Array(4),p=new Float32Array(64),v=[],g=new Float32Array(4),m=new n.Vec4(0,0,0,0),y=new n.Vec3(0,0,0),T=new n.Vec3(0,0,0),E=new a.RecyclePool(function(){return new Float32Array(16)},8);function A(t,e){return t._priority-e._priority}var C=(function(t){var e,i;function r(e,i){var n;return(n=t.call(this,e,i)||this)._time=new Float32Array(4),n._lights=[],n._shadowLights=[],n._numLights=0,n._defines={},n._registerStage("shadowcast",n._shadowStage.bind(c(n))),n._registerStage("opaque",n._opaqueStage.bind(c(n))),n._registerStage("transparent",n._transparentStage.bind(c(n))),n}i=t,(e=r).prototype=Object.create(i.prototype),e.prototype.constructor=e,u(e,i);var a=r.prototype;return a.reset=function(){E.reset(),t.prototype.reset.call(this)},a.render=function(t,e){this.reset(),e&&(this._time[0]+=e,this._time[1]=e,this._time[2]++),this._device.setUniform("cc_time",this._time),this._updateLights(t);for(var i=this._device._gl.canvas,n=0;n0){for(var e=E.add(),i=E.add(),n=E.add(),r=Math.min(4,this._lights.length),a=0;a0?1:-1}),Math.log2||(Math.log2=function(t){return Math.log(t)*Math.LOG2E}),Number.isInteger||(Number.isInteger=function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t}),!console.time){var t=window.performance||Date,e=Object.create(null);console.time=function(i){e[i]=t.now()},console.timeEnd=function(i){var n=e[i],r=t.now()-n;console.log(i+": "+r+"ms")}}}),{}],298:[(function(){"use strict";Number.parseFloat=Number.parseFloat||parseFloat,Number.parseInt=Number.parseInt||parseInt}),{}],299:[(function(){"use strict";Object.assign||(Object.assign=function(t,e){return cc.js.mixin(t,e)}),Object.getOwnPropertyDescriptors||(Object.getOwnPropertyDescriptors=function(t){var e={},i=Object.getOwnPropertyNames(t);Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(t)));for(var n=0;nthis.length)&&(e=this.length),e-=t.length;var i=this.indexOf(t,e);return-1!==i&&i===e}),String.prototype.trimLeft||(String.prototype.trimLeft=function(){return this.replace(/^\s+/,"")})}),{}],301:[(function(){"use strict";var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};window.__extends=function(e,i){function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)},window.__assign=Object.assign||function(t){for(var e,i=1,n=arguments.length;i=0;o--)(r=t[o])&&(a=(s<3?r(a):s>3?r(e,i,a):r(e,i))||a);return s>3&&a&&Object.defineProperty(e,i,a),a},window.__param=function(t,e){return function(i,n){e(i,n,t)}},window.__metadata=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},window.__awaiter=function(t,e,i,n){return new(i||(i=Promise))(function(r,s){function a(t){try{c(n.next(t))}catch(e){s(e)}}function o(t){try{c(n.throw(t))}catch(e){s(e)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,o)}c((n=n.apply(t,e||[])).next())})},window.__generator=function(t,e){var i,n,r,s,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function o(t){return function(e){return c([t,e])}}function c(s){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(r=2&s[0]?n.return:s[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,s[1])).done)return r;switch(n=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(r=(r=a.trys).length>0&&r[r.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},window.__read=function(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,s=i.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=s.next()).done;)a.push(n.value)}catch(o){r={error:o}}finally{try{n&&!n.done&&(i=s.return)&&i.call(s)}finally{if(r)throw r.error}}return a},window.__spread=function(){for(var t=[],e=0;e1||o(t,e)})})}function o(t,e){try{(i=r[t](e)).value instanceof __await?Promise.resolve(i.value.v).then(c,u):l(s[0][2],i)}catch(n){l(s[0][3],n)}var i}function c(t){o("next",t)}function u(t){o("throw",t)}function l(t,e){t(e),s.shift(),s.length&&o(s[0][0],s[0][1])}},window.__asyncDelegator=function(t){var e,i;return e={},n("next"),n("throw",(function(t){throw t})),n("return"),e[Symbol.iterator]=function(){return this},e;function n(n,r){e[n]=t[n]?function(e){return(i=!i)?{value:__await(t[n](e)),done:"return"===n}:r?r(e):e}:r}},window.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,i=t[Symbol.asyncIterator];return i?i.call(t):(t="function"==typeof __values?__values(t):t[Symbol.iterator](),e={},n("next"),n("throw"),n("return"),e[Symbol.asyncIterator]=function(){return this},e);function n(i){e[i]=t[i]&&function(e){return new Promise(function(n,s){r(n,s,(e=t[i](e)).done,e.value)})}}function r(t,e,i,n){Promise.resolve(n).then((function(e){t({value:e,done:i})}),e)}},window.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t};var e=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e};window.__importStar=function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&__createBinding(i,t,n);return e(i,t),i},window.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},window.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)},window.__classPrivateFieldSet=function(t,e,i){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,i),i}}),{}],302:[(function(){"use strict";var t="undefined"==typeof window?global:window;function e(e,i){void 0===t[e]&&Object.defineProperty(t,e,{get:function(){var t;return"CC_WECHATGAMESUB"===e?t="cc.sys.platform === cc.sys.WECHAT_GAME_SUB":"CC_WECHATGAME"===e?t="cc.sys.platform === cc.sys.WECHAT_GAME":"CC_QQPLAY"===e&&(t="cc.sys.platform === cc.sys.QQ_PLAY"),cc.warnID(1400,e,t),i}})}function i(e){return"object"==typeof t[e]}(function(e,i){void 0===t[e]&&(t[e]=i)})("CC_BUILD",!1),t.CC_BUILD=!0,t.CC_DEV=!1,t.CC_DEBUG=!1,t.CC_JSB=!1,t.CC_NATIVERENDERER=!1,t.CC_SUPPORT_JIT=!0,t.CC_PHYSICS_BUILTIN=!1,t.CC_PHYSICS_CANNON=!1,t.CC_EDITOR=!1,t.CC_PREVIEW=!1,t.CC_TEST=!1,t.CC_RUNTIME=!1,t.CC_JSB=!1;var n=!(!i("wx")||!wx.getSharedCanvas),r=!(!i("wx")||!wx.getSystemInfoSync&&!wx.getSharedCanvas),s=i("bk");e("CC_WECHATGAMESUB",n),e("CC_WECHATGAME",r),e("CC_QQPLAY",s),t.CocosEngine=cc.ENGINE_VERSION="2.4.8"}),{}]},{},[294]); \ No newline at end of file +(function(t,e,i){function n(i){var r=e[i];if(!r){var s=t[i];if(!s)return;var a={};r=e[i]={exports:a},s[0]((function(t){return n(s[1][t]||t)}),r,a)}return r.exports}for(var r=0;r=0;i--)e.push(cc.v2(t[i].x,t[i].y));return e}function i(t){for(var e=[],i=0;i=this._duration},_cloneDecoration:function(t){t._repeatForever=this._repeatForever,t._speed=this._speed,t._timesForRepeat=this._timesForRepeat,t._easeList=this._easeList,t._speedMethod=this._speedMethod,t._repeatMethod=this._repeatMethod},_reverseEaseList:function(t){if(this._easeList){t._easeList=[];for(var e=0;e1.192092896e-7?this._duration:1.192092896e-7);e=1>e?e:1,this.update(e>0?e:0),this._repeatMethod&&this._timesForRepeat>1&&this.isDone()&&(this._repeatForever||this._timesForRepeat--,this.startWithTarget(this.target),this.step(this._elapsed-this._duration))},startWithTarget:function(t){cc.Action.prototype.startWithTarget.call(this,t),this._elapsed=0,this._firstTick=!0},reverse:function(){return cc.logID(1010),null},setAmplitudeRate:function(){cc.logID(1011)},getAmplitudeRate:function(){return cc.logID(1012),0},speed:function(t){return t<=0?(cc.logID(1013),this):(this._speedMethod=!0,this._speed*=t,this)},getSpeed:function(){return this._speed},setSpeed:function(t){return this._speed=t,this},repeat:function(t){return t=Math.round(t),isNaN(t)||t<1?(cc.logID(1014),this):(this._repeatMethod=!0,this._timesForRepeat*=t,this)},repeatForever:function(){return this._repeatMethod=!0,this._timesForRepeat=this.MAX_VALUE,this._repeatForever=!0,this}}),cc.actionInterval=function(t){return new cc.ActionInterval(t)},cc.Sequence=cc.Class({name:"cc.Sequence",extends:cc.ActionInterval,ctor:function(t){this._actions=[],this._split=null,this._last=0,this._reversed=!1;var e=t instanceof Array?t:arguments;if(1!==e.length){var i=e.length-1;if(i>=0&&null==e[i]&&cc.logID(1015),i>=0){for(var n,r=e[0],s=1;s1?e%1:e),this._last=n)},reverse:function(){var t=cc.Sequence._actionOneTwo(this._actions[1].reverse(),this._actions[0].reverse());return this._cloneDecoration(t),this._reverseEaseList(t),t._reversed=!0,t}}),cc.sequence=function(t){var e=t instanceof Array?t:arguments;if(1===e.length)return cc.errorID(1019),null;var i=e.length-1;i>=0&&null==e[i]&&cc.logID(1015);var n=null;if(i>=0){n=e[0];for(var r=1;r<=i;r++)e[r]&&(n=cc.Sequence._actionOneTwo(n,e[r]))}return n},cc.Sequence._actionOneTwo=function(t,e){var i=new cc.Sequence;return i.initWithTwoActions(t,e),i},cc.Repeat=cc.Class({name:"cc.Repeat",extends:cc.ActionInterval,ctor:function(t,e){this._times=0,this._total=0,this._nextDt=0,this._actionInstant=!1,this._innerAction=null,void 0!==e&&this.initWithAction(t,e)},initWithAction:function(t,e){var i=t._duration*e;return!!this.initWithDuration(i)&&(this._times=e,this._innerAction=t,t instanceof cc.ActionInstant&&(this._actionInstant=!0,this._times-=1),this._total=0,!0)},clone:function(){var t=new cc.Repeat;return this._cloneDecoration(t),t.initWithAction(this._innerAction.clone(),this._times),t},startWithTarget:function(t){this._total=0,this._nextDt=this._innerAction._duration/this._duration,cc.ActionInterval.prototype.startWithTarget.call(this,t),this._innerAction.startWithTarget(t)},stop:function(){this._innerAction.stop(),cc.Action.prototype.stop.call(this)},update:function(t){t=this._computeEaseTime(t);var e=this._innerAction,i=this._duration,n=this._times,r=this._nextDt;if(t>=r){for(;t>r&&this._total1?1:r;t>=1&&this._total=0&&null==e[i]&&cc.logID(1015),i>=0){for(var n,r=e[0],s=1;sr?this._two=cc.Sequence._actionOneTwo(e,cc.delayTime(n-r)):n0&&null==e[e.length-1]&&cc.logID(1015);for(var i=e[0],n=1;n180&&(i-=360),i<-180&&(i+=360),this._startAngle=e,this._angle=cc.RotateTo._reverse?i:-i},reverse:function(){cc.logID(1016)},update:function(t){t=this._computeEaseTime(t),this.target&&(this.target.angle=this._startAngle+this._angle*t)}}),cc.rotateTo=function(t,e){return new cc.RotateTo(t,e)},cc.RotateBy=cc.Class({name:"cc.RotateBy",extends:cc.ActionInterval,statics:{_reverse:!1},ctor:function(t,e){e*=cc.RotateBy._reverse?1:-1,this._deltaAngle=0,this._startAngle=0,void 0!==e&&this.initWithDuration(t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._deltaAngle=e,!0)},clone:function(){var t=new cc.RotateBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._deltaAngle),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._startAngle=t.angle},update:function(t){t=this._computeEaseTime(t),this.target&&(this.target.angle=this._startAngle+this._deltaAngle*t)},reverse:function(){var t=new cc.RotateBy;return t.initWithDuration(this._duration,-this._deltaAngle),this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.rotateBy=function(t,e){return new cc.RotateBy(t,e)},cc.MoveBy=cc.Class({name:"cc.MoveBy",extends:cc.ActionInterval,ctor:function(t,e,i){this._positionDelta=cc.v2(0,0),this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),void 0!==e&&cc.MoveBy.prototype.initWithDuration.call(this,t,e,i)},initWithDuration:function(t,e,i){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(void 0!==e.x&&(i=e.y,e=e.x),this._positionDelta.x=e,this._positionDelta.y=i,!0)},clone:function(){var t=new cc.MoveBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._positionDelta),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.x,i=t.y;this._previousPosition.x=e,this._previousPosition.y=i,this._startPosition.x=e,this._startPosition.y=i},update:function(t){if(t=this._computeEaseTime(t),this.target){var e=this._positionDelta.x*t,i=this._positionDelta.y*t,n=this._startPosition;if(cc.macro.ENABLE_STACKABLE_ACTIONS){var r=this.target.x,s=this.target.y,a=this._previousPosition;n.x=n.x+r-a.x,n.y=n.y+s-a.y,e+=n.x,i+=n.y,a.x=e,a.y=i,this.target.setPosition(e,i)}else this.target.setPosition(n.x+e,n.y+i)}},reverse:function(){var t=new cc.MoveBy(this._duration,cc.v2(-this._positionDelta.x,-this._positionDelta.y));return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.moveBy=function(t,e,i){return new cc.MoveBy(t,e,i)},cc.MoveTo=cc.Class({name:"cc.MoveTo",extends:cc.MoveBy,ctor:function(t,e,i){this._endPosition=cc.v2(0,0),void 0!==e&&this.initWithDuration(t,e,i)},initWithDuration:function(t,e,i){return!!cc.MoveBy.prototype.initWithDuration.call(this,t,e,i)&&(void 0!==e.x&&(i=e.y,e=e.x),this._endPosition.x=e,this._endPosition.y=i,!0)},clone:function(){var t=new cc.MoveTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endPosition),t},startWithTarget:function(t){cc.MoveBy.prototype.startWithTarget.call(this,t),this._positionDelta.x=this._endPosition.x-t.x,this._positionDelta.y=this._endPosition.y-t.y}}),cc.moveTo=function(t,e,i){return new cc.MoveTo(t,e,i)},cc.SkewTo=cc.Class({name:"cc.SkewTo",extends:cc.ActionInterval,ctor:function(t,e,i){this._skewX=0,this._skewY=0,this._startSkewX=0,this._startSkewY=0,this._endSkewX=0,this._endSkewY=0,this._deltaX=0,this._deltaY=0,void 0!==i&&cc.SkewTo.prototype.initWithDuration.call(this,t,e,i)},initWithDuration:function(t,e,i){var n=!1;return cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._endSkewX=e,this._endSkewY=i,n=!0),n},clone:function(){var t=new cc.SkewTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endSkewX,this._endSkewY),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._startSkewX=t.skewX%180,this._deltaX=this._endSkewX-this._startSkewX,this._deltaX>180&&(this._deltaX-=360),this._deltaX<-180&&(this._deltaX+=360),this._startSkewY=t.skewY%360,this._deltaY=this._endSkewY-this._startSkewY,this._deltaY>180&&(this._deltaY-=360),this._deltaY<-180&&(this._deltaY+=360)},update:function(t){t=this._computeEaseTime(t),this.target.skewX=this._startSkewX+this._deltaX*t,this.target.skewY=this._startSkewY+this._deltaY*t}}),cc.skewTo=function(t,e,i){return new cc.SkewTo(t,e,i)},cc.SkewBy=cc.Class({name:"cc.SkewBy",extends:cc.SkewTo,ctor:function(t,e,i){void 0!==i&&this.initWithDuration(t,e,i)},initWithDuration:function(t,e,i){var n=!1;return cc.SkewTo.prototype.initWithDuration.call(this,t,e,i)&&(this._skewX=e,this._skewY=i,n=!0),n},clone:function(){var t=new cc.SkewBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._skewX,this._skewY),t},startWithTarget:function(t){cc.SkewTo.prototype.startWithTarget.call(this,t),this._deltaX=this._skewX,this._deltaY=this._skewY,this._endSkewX=this._startSkewX+this._deltaX,this._endSkewY=this._startSkewY+this._deltaY},reverse:function(){var t=new cc.SkewBy(this._duration,-this._skewX,-this._skewY);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.skewBy=function(t,e,i){return new cc.SkewBy(t,e,i)},cc.JumpBy=cc.Class({name:"cc.JumpBy",extends:cc.ActionInterval,ctor:function(t,e,i,n,r){this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),this._delta=cc.v2(0,0),this._height=0,this._jumps=0,void 0!==n&&cc.JumpBy.prototype.initWithDuration.call(this,t,e,i,n,r)},initWithDuration:function(t,e,i,n,r){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(void 0===r&&(r=n,n=i,i=e.y,e=e.x),this._delta.x=e,this._delta.y=i,this._height=n,this._jumps=r,!0)},clone:function(){var t=new cc.JumpBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._delta,this._height,this._jumps),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.x,i=t.y;this._previousPosition.x=e,this._previousPosition.y=i,this._startPosition.x=e,this._startPosition.y=i},update:function(t){if(t=this._computeEaseTime(t),this.target){var e=t*this._jumps%1,i=4*this._height*e*(1-e);i+=this._delta.y*t;var n=this._delta.x*t,r=this._startPosition;if(cc.macro.ENABLE_STACKABLE_ACTIONS){var s=this.target.x,a=this.target.y,o=this._previousPosition;r.x=r.x+s-o.x,r.y=r.y+a-o.y,n+=r.x,i+=r.y,o.x=n,o.y=i,this.target.setPosition(n,i)}else this.target.setPosition(r.x+n,r.y+i)}},reverse:function(){var t=new cc.JumpBy(this._duration,cc.v2(-this._delta.x,-this._delta.y),this._height,this._jumps);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.jumpBy=function(t,e,i,n,r){return new cc.JumpBy(t,e,i,n,r)},cc.JumpTo=cc.Class({name:"cc.JumpTo",extends:cc.JumpBy,ctor:function(t,e,i,n,r){this._endPosition=cc.v2(0,0),void 0!==n&&this.initWithDuration(t,e,i,n,r)},initWithDuration:function(t,e,i,n,r){return!!cc.JumpBy.prototype.initWithDuration.call(this,t,e,i,n,r)&&(void 0===r&&(i=e.y,e=e.x),this._endPosition.x=e,this._endPosition.y=i,!0)},startWithTarget:function(t){cc.JumpBy.prototype.startWithTarget.call(this,t),this._delta.x=this._endPosition.x-this._startPosition.x,this._delta.y=this._endPosition.y-this._startPosition.y},clone:function(){var t=new cc.JumpTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._endPosition,this._height,this._jumps),t}}),cc.jumpTo=function(t,e,i,n,r){return new cc.JumpTo(t,e,i,n,r)},cc.BezierBy=cc.Class({name:"cc.BezierBy",extends:cc.ActionInterval,ctor:function(t,e){this._config=[],this._startPosition=cc.v2(0,0),this._previousPosition=cc.v2(0,0),e&&cc.BezierBy.prototype.initWithDuration.call(this,t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._config=e,!0)},clone:function(){var t=new cc.BezierBy;this._cloneDecoration(t);for(var e=[],i=0;ie/2?255:0}},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._originalState=t.opacity},stop:function(){this.target.opacity=this._originalState,cc.ActionInterval.prototype.stop.call(this)},reverse:function(){var t=new cc.Blink(this._duration,this._times);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.blink=function(t,e){return new cc.Blink(t,e)},cc.FadeTo=cc.Class({name:"cc.FadeTo",extends:cc.ActionInterval,ctor:function(t,e){this._toOpacity=0,this._fromOpacity=0,void 0!==e&&cc.FadeTo.prototype.initWithDuration.call(this,t,e)},initWithDuration:function(t,e){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._toOpacity=e,!0)},clone:function(){var t=new cc.FadeTo;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t},update:function(t){t=this._computeEaseTime(t);var e=void 0!==this._fromOpacity?this._fromOpacity:255;this.target.opacity=e+(this._toOpacity-e)*t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._fromOpacity=t.opacity}}),cc.fadeTo=function(t,e){return new cc.FadeTo(t,e)},cc.FadeIn=cc.Class({name:"cc.FadeIn",extends:cc.FadeTo,ctor:function(t){null==t&&(t=0),this._reverseAction=null,this.initWithDuration(t,255)},reverse:function(){var t=new cc.FadeOut;return t.initWithDuration(this._duration,0),this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.FadeIn;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t},startWithTarget:function(t){this._reverseAction&&(this._toOpacity=this._reverseAction._fromOpacity),cc.FadeTo.prototype.startWithTarget.call(this,t)}}),cc.fadeIn=function(t){return new cc.FadeIn(t)},cc.FadeOut=cc.Class({name:"cc.FadeOut",extends:cc.FadeTo,ctor:function(t){null==t&&(t=0),this._reverseAction=null,this.initWithDuration(t,0)},reverse:function(){var t=new cc.FadeIn;return t._reverseAction=this,t.initWithDuration(this._duration,255),this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.FadeOut;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._toOpacity),t}}),cc.fadeOut=function(t){return new cc.FadeOut(t)},cc.TintTo=cc.Class({name:"cc.TintTo",extends:cc.ActionInterval,ctor:function(t,e,i,n){this._to=cc.color(0,0,0),this._from=cc.color(0,0,0),e instanceof cc.Color&&(n=e.b,i=e.g,e=e.r),void 0!==n&&this.initWithDuration(t,e,i,n)},initWithDuration:function(t,e,i,n){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._to=cc.color(e,i,n),!0)},clone:function(){var t=new cc.TintTo;this._cloneDecoration(t);var e=this._to;return t.initWithDuration(this._duration,e.r,e.g,e.b),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._from=this.target.color},update:function(t){t=this._computeEaseTime(t);var e=this._from,i=this._to;e&&(this.target.color=cc.color(e.r+(i.r-e.r)*t,e.g+(i.g-e.g)*t,e.b+(i.b-e.b)*t))}}),cc.tintTo=function(t,e,i,n){return new cc.TintTo(t,e,i,n)},cc.TintBy=cc.Class({name:"cc.TintBy",extends:cc.ActionInterval,ctor:function(t,e,i,n){this._deltaR=0,this._deltaG=0,this._deltaB=0,this._fromR=0,this._fromG=0,this._fromB=0,void 0!==n&&this.initWithDuration(t,e,i,n)},initWithDuration:function(t,e,i,n){return!!cc.ActionInterval.prototype.initWithDuration.call(this,t)&&(this._deltaR=e,this._deltaG=i,this._deltaB=n,!0)},clone:function(){var t=new cc.TintBy;return this._cloneDecoration(t),t.initWithDuration(this._duration,this._deltaR,this._deltaG,this._deltaB),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t);var e=t.color;this._fromR=e.r,this._fromG=e.g,this._fromB=e.b},update:function(t){t=this._computeEaseTime(t),this.target.color=cc.color(this._fromR+this._deltaR*t,this._fromG+this._deltaG*t,this._fromB+this._deltaB*t)},reverse:function(){var t=new cc.TintBy(this._duration,-this._deltaR,-this._deltaG,-this._deltaB);return this._cloneDecoration(t),this._reverseEaseList(t),t}}),cc.tintBy=function(t,e,i,n){return new cc.TintBy(t,e,i,n)},cc.DelayTime=cc.Class({name:"cc.DelayTime",extends:cc.ActionInterval,update:function(){},reverse:function(){var t=new cc.DelayTime(this._duration);return this._cloneDecoration(t),this._reverseEaseList(t),t},clone:function(){var t=new cc.DelayTime;return this._cloneDecoration(t),t.initWithDuration(this._duration),t}}),cc.delayTime=function(t){return new cc.DelayTime(t)},cc.ReverseTime=cc.Class({name:"cc.ReverseTime",extends:cc.ActionInterval,ctor:function(t){this._other=null,t&&this.initWithAction(t)},initWithAction:function(t){return t?t===this._other?(cc.errorID(1029),!1):!!cc.ActionInterval.prototype.initWithDuration.call(this,t._duration)&&(this._other=t,!0):(cc.errorID(1028),!1)},clone:function(){var t=new cc.ReverseTime;return this._cloneDecoration(t),t.initWithAction(this._other.clone()),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._other.startWithTarget(t)},update:function(t){t=this._computeEaseTime(t),this._other&&this._other.update(1-t)},reverse:function(){return this._other.clone()},stop:function(){this._other.stop(),cc.Action.prototype.stop.call(this)}}),cc.reverseTime=function(t){return new cc.ReverseTime(t)},cc.TargetedAction=cc.Class({name:"cc.TargetedAction",extends:cc.ActionInterval,ctor:function(t,e){this._action=null,this._forcedTarget=null,e&&this.initWithTarget(t,e)},initWithTarget:function(t,e){return!!this.initWithDuration(e._duration)&&(this._forcedTarget=t,this._action=e,!0)},clone:function(){var t=new cc.TargetedAction;return this._cloneDecoration(t),t.initWithTarget(this._forcedTarget,this._action.clone()),t},startWithTarget:function(t){cc.ActionInterval.prototype.startWithTarget.call(this,t),this._action.startWithTarget(this._forcedTarget)},stop:function(){this._action.stop()},update:function(t){t=this._computeEaseTime(t),this._action.update(t)},getForcedTarget:function(){return this._forcedTarget},setForcedTarget:function(t){this._forcedTarget!==t&&(this._forcedTarget=t)}}),cc.targetedAction=function(t,e){return new cc.TargetedAction(t,e)}}),{}],6:[(function(t){"use strict";t("../core/platform/CCClass");var e=t("../core/platform/js"),i=function(){this.actions=[],this.target=null,this.actionIndex=0,this.currentAction=null,this.paused=!1,this.lock=!1};cc.ActionManager=function(){this._hashTargets=e.createMap(!0),this._arrayTargets=[],this._currentTarget=null,cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},cc.ActionManager.prototype={constructor:cc.ActionManager,_elementPool:[],_searchElementByTarget:function(t,e){for(var i=0;i=n&&i.actionIndex--;break}}},_removeActionByTag:function(t,e,i){for(var n=0,r=e.actions.length;n=0;--n){var r=e.actions[n];if(r&&r.getTag()===t){if(i&&r.getOriginalTarget()!==i)continue;this._removeActionAtIndex(n,e)}}},removeActionByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1002);var i=this._hashTargets;if(e){var n=i[e._id];n&&this._removeActionByTag(t,n,e)}else for(var r in i){var s=i[r];this._removeActionByTag(t,s)}},removeAllActionsByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1002);var i=this._hashTargets;if(e){var n=i[e._id];n&&this._removeAllActionsByTag(t,n,e)}else for(var r in i){var s=i[r];this._removeAllActionsByTag(t,s)}},getActionByTag:function(t,e){t===cc.Action.TAG_INVALID&&cc.logID(1004);var i=this._hashTargets[e._id];if(i){if(null!=i.actions)for(var n=0;n=t&&e.actionIndex--,0===e.actions.length&&this._deleteHashElement(e)},_deleteHashElement:function(t){var e=!1;if(t&&!t.lock&&this._hashTargets[t.target._id]){delete this._hashTargets[t.target._id];for(var i=this._arrayTargets,n=0,r=i.length;n=1?t:r%n>n/2?255:0},this.to(t,{opacity:1},i)}});var a=[];function o(t){return function(){a.length=0;for(var e=arguments.length,i=0;i=0?d=u.events[p]:(d=new a,u.ratios.push(f),u.events.push(d)),d.add(_.func,_.params)}}l.playState=function(t,e){t.clip&&(t.curveLoaded||h(this.target,t),t.animator=this,t.play(),"number"==typeof e&&t.setTime(e),this.play())},l.stopStatesExcept=function(t){var e=this._anims,i=e.array;for(e.i=0;e.i=0?(this._anims.fastRemoveAt(e),0===this._anims.array.length&&this.stop()):cc.errorID(3907),t.animator=null},l.sample=function(){var t=this._anims,e=t.array;for(t.i=0;t.i1e-6){y=!1;break}u._findFrameIndex=y?s:o;var A=u.values[0];return null==A||u._lerp||("number"==typeof A?u._lerp=r.prototype._lerpNumber:A instanceof cc.Quat?u._lerp=r.prototype._lerpQuat:A instanceof cc.Vec2?u._lerp=r.prototype._lerpVector2:A instanceof cc.Vec3?u._lerp=r.prototype._lerpVector3:A.lerp&&(u._lerp=r.prototype._lerpObject)),u},createTargetCurves:function(t,e,i){var n=e.props,r=e.comps;if(n)for(var s in n){var a=n[s],o=this.createPropCurve(t,s,a);i.push(o)}if(r)for(var c in r){var u=t.getComponent(c);if(u){var l=r[c];for(var h in l){var _=l[h],f=this.createPropCurve(u,h,_);i.push(f)}}}},createCurves:function(t,e){var i=this.curveData,n=i.paths,r=[];for(var s in this.createTargetCurves(e,i,r),n){var a=cc.find(s,e);if(a){var o=n[s];this.createTargetCurves(a,o,r)}}return r}});cc.AnimationClip=e.exports=c}),{"../core/utils/binary-search":217,"./animation-curves":11,"./motion-path-helper":17,"./types":19}],11:[(function(t,e){"use strict";var i=t("./bezier").bezierByTime,n=t("../core/utils/binary-search").binarySearchEpsilon,r=t("./types").WrapModeMask,s=t("./types").WrappedInfo;function a(t,e){if("string"==typeof e){var n=cc.easing[e];n?t=n(t):cc.errorID(3906,e)}else Array.isArray(e)&&(t=i(e,t));return t}var o=cc.Class({name:"cc.AnimCurve",sample:function(){},onTimeChangedManually:void 0});var c,u=cc.Class({name:"cc.DynamicAnimCurve",extends:o,ctor:function(){this._cachedIndex=0},properties:{target:null,prop:"",values:[],ratios:[],types:[]},_findFrameIndex:n,_lerp:void 0,_lerpNumber:function(t,e,i){return t+(e-t)*i},_lerpObject:function(t,e,i){return t.lerp(e,i)},_lerpQuat:(c=cc.quat(),function(t,e,i){return t.lerp(e,i,c)}),_lerpVector2:(function(){var t=cc.v2();return function(e,i,n){return e.lerp(i,n,t)}})(),_lerpVector3:(function(){var t=cc.v3();return function(e,i,n){return e.lerp(i,n,t)}})(),sample:function(t,e){var i=this.values,n=this.ratios,r=n.length;if(0!==r){var s,o=!0,c=this._cachedIndex;if(c<0&&(c=~c)>0&&cu&&e=r)s=i[r-1];else{var _=i[h-1];if(this._lerp){var f=n[h-1],d=n[h],p=this.types[h-1],v=(e-f)/(d-f);p&&(v=a(v,p));var g=i[h];s=this._lerp(_,g,v)}else s=_}else s=i[h];this.target[this.prop]=s}}});u.Linear=null,u.Bezier=function(t){return t};var l=function(){this.events=[]};l.prototype.add=function(t,e){this.events.push({func:t||"",params:e||[]})};var h=cc.Class({name:"cc.EventAnimCurve",extends:o,properties:{target:null,ratios:[],events:[],_wrappedInfo:{default:function(){return new s}},_lastWrappedInfo:null,_ignoreIndex:NaN},_wrapIterations:function(t){return t-(0|t)==0&&(t-=1),0|t},sample:function(t,e,i){var a=this.ratios.length,o=i.getWrappedInfo(i.time,this._wrappedInfo),c=o.direction,u=n(this.ratios,o.ratio);if(u<0&&(u=~u-1,c<0&&(u+=1)),this._ignoreIndex!==u&&(this._ignoreIndex=NaN),o.frameIndex=u,!this._lastWrappedInfo)return this._fireEvent(u),void(this._lastWrappedInfo=new s(o));var l=i.wrapMode,h=this._wrapIterations(o.iterations),_=this._lastWrappedInfo,f=this._wrapIterations(_.iterations),d=_.frameIndex,p=_.direction,v=-1!==f&&h!==f;if(d===u&&v&&1===a)this._fireEvent(0);else if(d!==u||v){c=p;do{if(d!==u){if(-1===c&&0===d&&u>0?((l&r.PingPong)===r.PingPong?c*=-1:d=a,f++):1===c&&d===a-1&&uh)break}d+=c,cc.director.getAnimationManager().pushDelayEvent(this,"_fireEvent",[d])}while(d!==u&&d>-1&&d=this.events.length||this._ignoreIndex===t)){var e=this.events[t].events;if(this.target.isValid)for(var i=this.target._components,n=0;nr)return~t.length;var s=(e=(e-n)/(r-n))/(1/i),a=0|s;return s-a<1e-6?a:a+1-s<1e-6?a+1:~(a+1)}}}),{"../core/utils/binary-search":217,"./bezier":14,"./types":19}],12:[(function(t,e){"use strict";var i=cc.js,n=cc.Class({ctor:function(){this._anims=new i.array.MutableForwardIterator([]),this._delayEvents=[],cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},update:function(t){var e=this._anims,i=e.array;for(e.i=0;e.i=0?this._anims.fastRemoveAt(e):cc.errorID(3907)},pushDelayEvent:function(t,e,i){this._delayEvents.push({target:t,func:e,args:i})}});cc.AnimationManager=e.exports=n}),{}],13:[(function(t,e){"use strict";var i=cc.js,n=t("./playable"),r=t("./types"),s=r.WrappedInfo,a=r.WrapMode,o=r.WrapModeMask;function c(t,e){n.call(this),this._currentFramePlayed=!1,this._delay=0,this._delayTime=0,this._wrappedInfo=new s,this._lastWrappedInfo=null,this._process=l,this._clip=t,this._name=e||t&&t.name,this.animator=null,this.curves=[],this.delay=0,this.repeatCount=1,this.duration=1,this.speed=1,this.wrapMode=a.Normal,this.time=0,this._target=null,this._lastframeEventOn=!1,this.emit=function(){for(var t=new Array(arguments.length),e=0,i=t.length;e1&&(0|e.iterations)>(0|t.iterations)&&this.emit("lastframe",this),t.set(e)),e.stopped&&(this.stop(),this.emit("finished",this))}function h(){var t=this.time,e=this.duration;t>e?0==(t%=e)&&(t=e):t<0&&0!=(t%=e)&&(t+=e);for(var i=t/e,n=this.curves,r=0,s=n.length;r0&&this._lastIterations>i||this.time<0&&this._lastIterations0&&(this._delayTime-=t,this._delayTime>0)||(this._currentFramePlayed?this.time+=t*this.speed:this._currentFramePlayed=!0,this._process())},u._needRevers=function(t){var e=this.wrapMode,i=!1;return(e&o.PingPong)===o.PingPong&&(t-(0|t)==0&&t>0&&(t-=1),1&t&&(i=!i)),(e&o.Reverse)===o.Reverse&&(i=!i),i},u.getWrappedInfo=function(t,e){e=e||new s;var i=!1,n=this.duration,r=this.repeatCount,a=t>0?t/n:-t/n;if(a>=r){a=r,i=!0;var c=r-(0|r);0===c&&(c=1),t=c*n*(t>0?1:-1)}if(t>n){var u=t%n;t=0===u?n:u}else t<0&&0!=(t%=n)&&(t+=n);var l=!1,h=this._wrapMode&o.ShouldWrap;h&&(l=this._needRevers(a));var _=l?-1:1;return this.speed<0&&(_*=-1),h&&l&&(t=n-t),e.ratio=t/n,e.time=t,e.direction=_,e.stopped=i,e.iterations=a,e},u.sample=function(){for(var t=this.getWrappedInfo(this.time,this._wrappedInfo),e=this.curves,i=0,n=e.length;i0}),(function(){this.curves.length=0})),i.getset(u,"wrapMode",(function(){return this._wrapMode}),(function(t){this._wrapMode=t,this.time=0,t&o.Loop?this.repeatCount=1/0:this.repeatCount=1})),i.getset(u,"repeatCount",(function(){return this._repeatCount}),(function(t){this._repeatCount=t;var e=this._wrapMode&o.ShouldWrap,i=(this.wrapMode&o.Reverse)===o.Reverse;this._process=t!==1/0||e||i?l:h})),i.getset(u,"delay",(function(){return this._delay}),(function(t){this._delayTime=this._delay=t})),cc.AnimationState=e.exports=c}),{"./playable":18,"./types":19}],14:[(function(t,e){"use strict";var i=Math.cos,n=Math.acos,r=Math.max,s=2*Math.PI,a=Math.sqrt;function o(t){return t<0?-Math.pow(-t,1/3):Math.pow(t,1/3)}function c(t,e){var c,u,l,h,_=e-0,f=e-t[0],d=3*_,p=3*f,v=3*(e-t[2]),g=1/(-_+p-v+(e-1)),m=(d-6*f+v)*g,y=m*(1/3),T=(-d+p)*g,E=1/3*(3*T-m*m),A=E*(1/3),C=(2*m*m*m-9*m*T+_*g*27)/27,x=C/2,b=x*x+A*A*A;if(b<0){var S=1/3*-E,R=a(S*S*S),w=-C/(2*R),I=n(w<-1?-1:w>1?1:w),M=2*o(R);return u=M*i(I*(1/3))-y,l=M*i((I+s)*(1/3))-y,h=M*i((I+2*s)*(1/3))-y,0<=u&&u<=1?0<=l&&l<=1?0<=h&&h<=1?r(u,l,h):r(u,l):0<=h&&h<=1?r(u,h):u:0<=l&&l<=1?0<=h&&h<=1?r(l,h):l:h}if(0===b)return l=-(c=x<0?o(-x):-o(x))-y,0<=(u=2*c-y)&&u<=1?0<=l&&l<=1?r(u,l):u:l;var O=a(b);return(c=o(-x+O))-o(x+O)-y}e.exports={bezier:function(t,e,i,n,r){var s=1-r;return s*(s*(t+(3*e-t)*r)+3*i*r*r)+n*r*r*r},bezierByTime:function(t,e){var i=c(t,e),n=t[1];return((1-i)*(n+(t[3]-n)*i)*3+i*i)*i}}}),{}],15:[(function(t,e){"use strict";var i={constant:function(){return 0},linear:function(t){return t},quadIn:function(t){return t*t},quadOut:function(t){return t*(2-t)},quadInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quartIn:function(t){return t*t*t*t},quartOut:function(t){return 1- --t*t*t*t},quartInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quintIn:function(t){return t*t*t*t*t},quintOut:function(t){return--t*t*t*t*t+1},quintInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sineIn:function(t){return 1-Math.cos(t*Math.PI/2)},sineOut:function(t){return Math.sin(t*Math.PI/2)},sineInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},expoIn:function(t){return 0===t?0:Math.pow(1024,t-1)},expoOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},expoInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circIn:function(t){return 1-Math.sqrt(1-t*t)},circOut:function(t){return Math.sqrt(1- --t*t)},circInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),-i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4))},elasticOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),i*Math.pow(2,-10*t)*Math.sin(2*(t-e)*Math.PI/.4)+1)},elasticInOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),(t*=2)<1?i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*-.5:i*Math.pow(2,-10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-i.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*i.bounceIn(2*t):.5*i.bounceOut(2*t-1)+.5},smooth:function(t){return t<=0?0:t>=1?1:t*t*(3-2*t)},fade:function(t){return t<=0?0:t>=1?1:t*t*t*(t*(6*t-15)+10)}};function n(t,e){return function(i){return i<.5?e(2*i)/2:t(2*i-1)/2+.5}}i.quadOutIn=n(i.quadIn,i.quadOut),i.cubicOutIn=n(i.cubicIn,i.cubicOut),i.quartOutIn=n(i.quartIn,i.quartOut),i.quintOutIn=n(i.quintIn,i.quintOut),i.sineOutIn=n(i.sineIn,i.sineOut),i.expoOutIn=n(i.expoIn,i.expoOut),i.circOutIn=n(i.circIn,i.circOut),i.backOutIn=n(i.backIn,i.backOut),i.bounceIn=function(t){return 1-i.bounceOut(1-t)},i.bounceInOut=function(t){return t<.5?.5*i.bounceIn(2*t):.5*i.bounceOut(2*t-1)+.5},i.bounceOutIn=n(i.bounceIn,i.bounceOut),cc.easing=e.exports=i}),{}],16:[(function(t){"use strict";t("./bezier"),t("./easing"),t("./types"),t("./motion-path-helper"),t("./animation-curves"),t("./animation-clip"),t("./animation-manager"),t("./animation-state"),t("./animation-animator")}),{"./animation-animator":9,"./animation-clip":10,"./animation-curves":11,"./animation-manager":12,"./animation-state":13,"./bezier":14,"./easing":15,"./motion-path-helper":17,"./types":19}],17:[(function(t,e){"use strict";var i=t("./animation-curves").DynamicAnimCurve,n=t("./animation-curves").computeRatioByType,r=t("./bezier").bezier,s=t("../core/utils/binary-search").binarySearchEpsilon,a=cc.v2;function o(t){this.points=t||[],this.beziers=[],this.ratios=[],this.progresses=[],this.length=0,this.computeBeziers()}function c(){this.start=a(),this.end=a(),this.startCtrlPoint=a(),this.endCtrlPoint=a()}function u(t){if(!Array.isArray(t))return!1;for(var e=0,i=t.length;e0)){c=r;break}c=r-1}if(n[r=c]===i)return r/(s-1);var u=n[r];return(r+(i-u)/(n[r+1]-u))/(s-1)},e.exports={sampleMotionPaths:function(t,e,r,c,l){function h(t){return t instanceof cc.Vec2?{in:t,pos:t,out:t}:Array.isArray(t)&&6===t.length?{in:a(t[2],t[3]),pos:a(t[0],t[1]),out:a(t[4],t[5])}:{in:cc.Vec2.ZERO,pos:cc.Vec2.ZERO,out:cc.Vec2.ZERO}}var _=e.values=e.values.map((function(t){return Array.isArray(t)&&(t=2===t.length?cc.v2(t[0],t[1]):cc.v3(t[0],t[1],t[2])),t}));if(0!==t.length&&0!==_.length){for(var f=!1,d=0;d0){f=!0;break}}if(f&&1!==_.length){for(var v=e.types,g=e.ratios,m=e.values=[],y=e.types=[],T=e.ratios=[],E=0,A=i.Linear,C=0,x=t.length;C0){var N=[];N.push(h(I));for(var F=0,B=S.length;F1e-6;){var V,H,W,G;if((b=n(b=L,O))<0)G=(0-b)*(H=z.beziers[0]).getLength(),W=H.start.sub(H.endCtrlPoint).normalize(),V=H.start.add(W.mul(G));else if(b>1)G=(b-1)*(H=z.beziers[z.beziers.length-1]).getLength(),W=H.end.sub(H.startCtrlPoint).normalize(),V=H.end.add(W.mul(G));else{var j=s(k,b);j<0&&(j=~j),b-=j>0?k[j-1]:0,b/=z.ratios[j],V=z.beziers[j].getPointAt(b)}D.push(V),L+=P}}else for(;1-L>1e-6;)b=n(b=L,O),D.push(I.lerp(M,b)),L+=P;for(A="constant"===O?O:i.Linear,F=0,B=D.length;F1e-6?(L-1)*w:0}g[g.length-1]!==T[T.length-1]&&X(_[_.length-1],A,g[g.length-1])}}function X(t,e,i){m.push(t),y.push(e),T.push(i)}},Curve:o,Bezier:c}}),{"../core/utils/binary-search":217,"./animation-curves":11,"./bezier":14}],18:[(function(t,e){"use strict";var i=cc.js,n=t("../core/CCDebug");function r(){this._isPlaying=!1,this._isPaused=!1,this._stepOnce=!1}var s=r.prototype;i.get(s,"isPlaying",(function(){return this._isPlaying}),!0),i.get(s,"isPaused",(function(){return this._isPaused}),!0);var a=function(){};s.onPlay=a,s.onPause=a,s.onResume=a,s.onStop=a,s.onError=a,s.play=function(){this._isPlaying?this._isPaused?(this._isPaused=!1,this.onResume()):this.onError(n.getError(3912)):(this._isPlaying=!0,this.onPlay())},s.stop=function(){this._isPlaying&&(this._isPlaying=!1,this.onStop(),this._isPaused=!1)},s.pause=function(){this._isPlaying&&!this._isPaused&&(this._isPaused=!0,this.onPause())},s.resume=function(){this._isPlaying&&this._isPaused&&(this._isPaused=!1,this.onResume())},s.step=function(){this.pause(),this._stepOnce=!0,this._isPlaying||this.play()},e.exports=r}),{"../core/CCDebug":22}],19:[(function(t,e){"use strict";var i={Loop:2,ShouldWrap:4,PingPong:22,Reverse:36},n=cc.Enum({Default:0,Normal:1,Reverse:i.Reverse,Loop:i.Loop,LoopReverse:i.Loop|i.Reverse,PingPong:i.PingPong,PingPongReverse:i.PingPong|i.Reverse});function r(t){t?this.set(t):(this.ratio=0,this.time=0,this.direction=1,this.stopped=!0,this.iterations=0,this.frameIndex=void 0)}cc.WrapMode=n,r.prototype.set=function(t){this.ratio=t.ratio,this.time=t.time,this.direction=t.direction,this.stopped=t.stopped,this.iterations=t.iterations,this.frameIndex=t.frameIndex},e.exports={WrapModeMask:i,WrapMode:n,WrappedInfo:r}}),{}],20:[(function(t,e){"use strict";var i,n,r=t("../core/event/event-target"),s=t("../core/platform/CCSys"),a=t("../core/assets/CCAudioClip").LoadMode,o=!1,c=[],u=function t(e){r.call(this),this._shouldRecycleOnEnded=!1,this._src=e,this._element=null,this.id=0,this._state=t.State.INITIALZING;var i=this;this._onended=function(){i._state=t.State.STOPPED,i.emit("ended")},this._onendedSecond=function(){i._unbindEnded(i._onendedSecond),i._bindEnded()}};cc.js.extend(u,r),u.State={ERROR:-1,INITIALZING:0,PLAYING:1,PAUSED:2,STOPPED:3},(i=u.prototype)._bindEnded=function(t){if(!(t=t||this._onended)._binded){t._binded=!0;var e=this._element;this._src&&e instanceof HTMLAudioElement?e.addEventListener("ended",t):e.onended=t}},i._unbindEnded=function(t){if((t=t||this._onended)._binded){t._binded=!1;var e=this._element;e instanceof HTMLAudioElement?e.removeEventListener("ended",t):e&&(e.onended=null)}},i._onLoaded=function(){this._createElement(),this._state=u.State.INITIALZING,this.setVolume(1),this.setLoop(!1)},i._createElement=function(){var t=this._src._nativeAsset;t instanceof HTMLAudioElement?(this._element||(this._element=document.createElement("audio")),this._element.src=t.src):this._element=new l(t,this)},i.play=function(){var t=this;this._src&&this._src._ensureLoaded((function(){t._state=u.State.PLAYING,t._bindEnded();var e=t._element.play();window.Promise&&e instanceof Promise&&e.catch((function(){})),t._touchToPlay()}))},i._touchToPlay=function(){if(this._src&&this._src.loadMode===a.DOM_AUDIO&&this._element.paused&&c.push({instance:this,offset:0,audio:this._element}),!o){o=!0;var t="ontouchend"in window?"touchend":"mousedown";cc.game.canvas.addEventListener(t,(function(){for(var t;t=c.pop();)t.audio.play(t.offset)}))}},i.destroy=function(){this._element=null},i.pause=function(){if(this.getState()===u.State.PLAYING){var t=this;this._src&&this._src._ensureLoaded((function(){t._unbindEnded(),t._element.pause(),t._state=u.State.PAUSED}))}},i.resume=function(){if(this.getState()===u.State.PAUSED){var t=this;this._src&&this._src._ensureLoaded((function(){t._bindEnded(),t._element.play(),t._state=u.State.PLAYING}))}},i.stop=function(){var t=this;this._src&&this._src._ensureLoaded((function(){t._element.pause(),t._element.currentTime=0;for(var e=0;ethis._buffer.duration)},enumerable:!0,configurable:!0}),Object.defineProperty(t,"loop",{get:function(){return this._loop},set:function(t){return this._currentSource&&(this._currentSource.loop=t),this._loop=t},enumerable:!0,configurable:!0}),Object.defineProperty(t,"volume",{get:function(){return this._volume},set:function(t){if(this._volume=t,this._gainObj.gain.setTargetAtTime)try{this._gainObj.gain.setTargetAtTime(t,this._context.currentTime,n)}catch(e){this._gainObj.gain.setTargetAtTime(t,this._context.currentTime,.01)}else this._gainObj.gain.value=t;s.os===s.OS_IOS&&!this.paused&&this._currentSource&&(this._currentSource.onended=null,this.pause(),this.play())},enumerable:!0,configurable:!0}),Object.defineProperty(t,"currentTime",{get:function(){return this.paused?this.playedLength:(this.playedLength=this._context.currentTime-this._startTime,this.playedLength%=this._buffer.duration,this.playedLength)},set:function(t){return this.paused?this.playedLength=t:(this.pause(),this.playedLength=t,this.play()),t},enumerable:!0,configurable:!0}),Object.defineProperty(t,"duration",{get:function(){return this._buffer.duration},enumerable:!0,configurable:!0})})(l.prototype),e.exports=cc._Audio=u}),{"../core/assets/CCAudioClip":59,"../core/event/event-target":132,"../core/platform/CCSys":158}],21:[(function(t,e){"use strict";var i=t("./CCAudio"),n=t("../core/assets/CCAudioClip"),r=cc.js,s=0,a=r.createMap(!0),o={},c=[],u=function(t){t._shouldRecycleOnEnded&&(t._finishCallback=null,t.off("ended"),t.off("stop"),t.src=null,c.includes(t)||(c.length<32?c.push(t):t.destroy()),t._shouldRecycleOnEnded=!1)},l=function(t){var e=s++,n=o[t];if(n||(n=o[t]=[]),f._maxAudioInstance<=n.length){var r=n.shift();h(r).stop()}var l=c.pop()||new i,_=function(){if(h(this.id)){delete a[this.id];var t=n.indexOf(this.id);cc.js.array.fastRemoveAt(n,t)}u(this)};return l.on("ended",(function(){this._finishCallback&&this._finishCallback(),this.getLoop()||_.call(this)}),l),l.on("stop",_,l),l.id=e,a[e]=l,n.push(e),l},h=function(t){return a[t]},_=function(t){return void 0===t?t=1:"string"==typeof t&&(t=Number.parseFloat(t)),t},f={AudioState:i.State,_maxAudioInstance:24,_id2audio:a,play:function(t,e,i){if(!(t instanceof n))return cc.error("Wrong type of AudioClip.");var r=t.nativeUrl,s=l(r);return s.src=t,t._ensureLoaded(),s._shouldRecycleOnEnded=!0,s.setLoop(e||!1),i=_(i),s.setVolume(i),s.play(),s.id},setLoop:function(t,e){var i=h(t);i&&i.setLoop&&i.setLoop(e)},isLoop:function(t){var e=h(t);return!(!e||!e.getLoop)&&e.getLoop()},setVolume:function(t,e){var i=h(t);i&&i.setVolume(e)},getVolume:function(t){var e=h(t);return e?e.getVolume():1},setCurrentTime:function(t,e){var i=h(t);return!!i&&(i.setCurrentTime(e),!0)},getCurrentTime:function(t){var e=h(t);return e?e.getCurrentTime():0},getDuration:function(t){var e=h(t);return e?e.getDuration():0},getState:function(t){var e=h(t);return e?e.getState():this.AudioState.ERROR},setFinishCallback:function(t,e){var i=h(t);i&&(i._finishCallback=e)},pause:function(t){var e=h(t);return!!e&&(e.pause(),!0)},_pauseIDCache:[],pauseAll:function(){for(var t in a){var e=a[t];e.getState()===i.State.PLAYING&&(this._pauseIDCache.push(t),e.pause())}},resume:function(t){var e=h(t);e&&e.resume()},resumeAll:function(){for(var t=0;t0;){var n=i.pop(),r=a[n];r&&(r.stop(),delete a[n])}},uncacheAll:function(){var t;for(var e in this.stopAll(),a)(t=a[e])&&t.destroy();for(;t=c.pop();)t.destroy();a=r.createMap(!0),o={}},_breakCache:null,_break:function(){for(var t in this._breakCache=[],a){var e=a[t];e.getState()===i.State.PLAYING&&(this._breakCache.push(t),e.pause())}},_restore:function(){if(this._breakCache){for(;this._breakCache.length>0;){var t=this._breakCache.pop(),e=h(t);e&&e.resume&&e.resume()}this._breakCache=null}},_music:{id:-1,loop:!1,volume:1},_effect:{volume:1,pauseCache:[]},playMusic:function(t,e){var i=this._music;return this.stop(i.id),i.id=this.play(t,e,i.volume),i.loop=e,i.id},stopMusic:function(){this.stop(this._music.id)},pauseMusic:function(){return this.pause(this._music.id),this._music.id},resumeMusic:function(){return this.resume(this._music.id),this._music.id},getMusicVolume:function(){return this._music.volume},setMusicVolume:function(t){t=_(t);var e=this._music;return e.volume=t,this.setVolume(e.id,e.volume),e.volume},isMusicPlaying:function(){return this.getState(this._music.id)===this.AudioState.PLAYING},playEffect:function(t,e){return this.play(t,e||!1,this._effect.volume)},setEffectsVolume:function(t){t=_(t);var e=this._music.id;for(var i in this._effect.volume=t,a){var n=a[i];n&&n.id!==e&&f.setVolume(i,t)}},getEffectsVolume:function(){return this._effect.volume},pauseEffect:function(t){return this.pause(t)},pauseAllEffects:function(){var t=this._music.id,e=this._effect;for(var i in e.pauseCache.length=0,a){var n=a[i];n&&n.id!==t&&n.getState()===this.AudioState.PLAYING&&(e.pauseCache.push(i),n.pause())}},resumeEffect:function(t){this.resume(t)},resumeAllEffects:function(){for(var t=this._effect.pauseCache,e=0;el.ERROR){var e=function(t){if(cc.game.canvas){if(!i){var e=document.createElement("Div");e.setAttribute("id","logInfoDiv"),e.setAttribute("width","200"),e.setAttribute("height",cc.game.canvas.height);var n=e.style;n.zIndex="99999",n.position="absolute",n.top=n.left="0",(i=document.createElement("textarea")).setAttribute("rows","20"),i.setAttribute("cols","30"),i.setAttribute("disabled","true");var r=i.style;r.backgroundColor="transparent",r.borderBottom="1px solid #cccccc",r.borderTopWidth=r.borderLeftWidth=r.borderRightWidth="0px",r.borderTopStyle=r.borderLeftStyle=r.borderRightStyle="none",r.padding="0px",r.margin=0,e.appendChild(i),cc.game.canvas.parentNode.appendChild(e)}i.value=i.value+t+"\r\n",i.scrollTop=i.scrollHeight}};cc.error=function(){e("ERROR : "+cc.js.formatStr.apply(null,arguments))},cc.assert=function(t,i){!t&&i&&(i=cc.js.formatStr.apply(null,cc.js.shiftArguments.apply(null,arguments)),e("ASSERT: "+i))},t!==l.ERROR_FOR_WEB_PAGE&&(cc.warn=function(){e("WARN : "+cc.js.formatStr.apply(null,arguments))}),t===l.INFO_FOR_WEB_PAGE&&(cc.log=function(){e(cc.js.formatStr.apply(null,arguments))})}else console&&console.log.apply&&(console.error||(console.error=console.log),console.warn||(console.warn=console.log),console.error.bind?cc.error=console.error.bind(console):cc.error=function(){return console.error.apply(console,arguments)},cc.assert=function(t,e){if(!t)throw e&&(e=cc.js.formatStr.apply(null,cc.js.shiftArguments.apply(null,arguments))),new Error(e)});t!==l.ERROR&&(console.warn.bind?cc.warn=console.warn.bind(console):cc.warn=function(){return console.warn.apply(console,arguments)}),t===l.INFO&&(console.log.bind?cc.log=console.log.bind(console):cc.log=function(){return console.log.apply(console,arguments)})}},getError:s("ERROR"),isDisplayStats:function(){return!!cc.profiler&&cc.profiler.isShowingStats()},setDisplayStats:function(t){cc.profiler&&cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS&&(t?cc.profiler.showStats():cc.profiler.hideStats(),cc.game.config.showFPS=!!t)}}}),{"../../DebugInfos":void 0,"./platform/utils":173}],23:[(function(t,e){"use strict";var i=t("./event/event-target"),n=t("./component-scheduler"),r=t("./node-activator"),s=t("./platform/CCObject"),a=t("./CCGame"),o=t("./renderer"),c=t("./event-manager"),u=t("./CCScheduler");cc.Director=function(){i.call(this),this._paused=!1,this._purgeDirectorInNextLoop=!1,this._winSizeInPoints=null,this._scene=null,this._loadingScene="",this._totalFrames=0,this._lastUpdate=0,this._deltaTime=0,this._startTime=0,this._maxParticleDeltaTime=0,this._scheduler=null,this._compScheduler=null,this._nodeActivator=null,this._actionManager=null;var t=this;a.on(a.EVENT_SHOW,(function(){t._lastUpdate=performance.now()})),a.once(a.EVENT_ENGINE_INITED,this.init,this)},cc.Director.prototype={constructor:cc.Director,init:function(){return this._totalFrames=0,this._lastUpdate=performance.now(),this._startTime=this._lastUpdate,this._paused=!1,this._purgeDirectorInNextLoop=!1,this._winSizeInPoints=cc.size(0,0),this._scheduler=new u,cc.ActionManager?(this._actionManager=new cc.ActionManager,this._scheduler.scheduleUpdate(this._actionManager,u.PRIORITY_SYSTEM,!1)):this._actionManager=null,this.sharedInit(),!0},sharedInit:function(){this._compScheduler=new n,this._nodeActivator=new r,c&&c.setEnabled(!0),cc.AnimationManager?(this._animationManager=new cc.AnimationManager,this._scheduler.scheduleUpdate(this._animationManager,u.PRIORITY_SYSTEM,!1)):this._animationManager=null,cc.CollisionManager?(this._collisionManager=new cc.CollisionManager,this._scheduler.scheduleUpdate(this._collisionManager,u.PRIORITY_SYSTEM,!1)):this._collisionManager=null,cc.PhysicsManager?(this._physicsManager=new cc.PhysicsManager,this._scheduler.scheduleUpdate(this._physicsManager,u.PRIORITY_SYSTEM,!1)):this._physicsManager=null,cc.Physics3DManager,this._physics3DManager=null,cc._widgetManager&&cc._widgetManager.init(this)},calculateDeltaTime:function(t){t||(t=performance.now()),this._deltaTime=t>this._lastUpdate?(t-this._lastUpdate)/1e3:0,this._lastUpdate=t},convertToGL:function(t){var e=a.container,i=cc.view,n=e.getBoundingClientRect(),r=n.left+window.pageXOffset-e.clientLeft,s=n.top+window.pageYOffset-e.clientTop,o=i._devicePixelRatio*(t.x-r),c=i._devicePixelRatio*(s+n.height-t.y);return i._isRotated?cc.v2(i._viewportRect.width-c,o):cc.v2(o,c)},convertToUI:function(t){var e=a.container,i=cc.view,n=e.getBoundingClientRect(),r=n.left+window.pageXOffset-e.clientLeft,s=n.top+window.pageYOffset-e.clientTop,o=cc.v2(0,0);return i._isRotated?(o.x=r+t.y/i._devicePixelRatio,o.y=s+n.height-(i._viewportRect.width-t.x)/i._devicePixelRatio):(o.x=r+t.x*i._devicePixelRatio,o.y=s+n.height-t.y*i._devicePixelRatio),o},end:function(){this._purgeDirectorInNextLoop=!0},getWinSize:function(){return cc.size(cc.winSize)},getWinSizeInPixels:function(){return cc.size(cc.winSize)},pause:function(){this._paused||(this._paused=!0)},purgeCachedData:function(){cc.assetManager.releaseAll()},purgeDirector:function(){this._scheduler.unscheduleAll(),this._compScheduler.unscheduleAll(),this._nodeActivator.reset(),c&&c.setEnabled(!1),cc.isValid(this._scene)&&this._scene.destroy(),this._scene=null,cc.renderer.clear(),cc.assetManager.builtins.clear(),cc.game.pause(),cc.assetManager.releaseAll()},reset:function(){this.purgeDirector(),c&&c.setEnabled(!0),this._actionManager&&this._scheduler.scheduleUpdate(this._actionManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._animationManager&&this._scheduler.scheduleUpdate(this._animationManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._collisionManager&&this._scheduler.scheduleUpdate(this._collisionManager,cc.Scheduler.PRIORITY_SYSTEM,!1),this._physicsManager&&this._scheduler.scheduleUpdate(this._physicsManager,cc.Scheduler.PRIORITY_SYSTEM,!1),cc.game.resume()},runSceneImmediate:function(t,e,i){cc.assertID(t instanceof cc.Scene||t instanceof cc.SceneAsset,1216),t instanceof cc.SceneAsset&&(t=t.scene),t._load();for(var n=Object.keys(a._persistRootNodes).map((function(t){return a._persistRootNodes[t]})),r=0;r2||e<0)&&(t.renderMode=0),"boolean"!=typeof t.registerSystemEvent&&(t.registerSystemEvent=!0),t.showFPS=1!==e&&!!t.showFPS,this.collisionMatrix=t.collisionMatrix||[],this.groupList=t.groupList||[],n._resetDebugSetting(t.debugMode),this.config=t,this._configLoaded=!0},_determineRenderType:function(){var t=this.config,e=parseInt(t.renderMode)||0;this.renderType=this.RENDER_TYPE_CANVAS;var i=!1;if(0===e?cc.sys.capabilities.opengl?(this.renderType=this.RENDER_TYPE_WEBGL,i=!0):cc.sys.capabilities.canvas&&(this.renderType=this.RENDER_TYPE_CANVAS,i=!0):1===e&&cc.sys.capabilities.canvas?(this.renderType=this.RENDER_TYPE_CANVAS,i=!0):2===e&&cc.sys.capabilities.opengl&&(this.renderType=this.RENDER_TYPE_WEBGL,i=!0),!i)throw new Error(n.getError(3820,e))},_initRenderer:function(){if(!this._rendererInitialized){var t,e,i,n,a=this.config.id,o=a instanceof HTMLElement?a:document.querySelector(a)||document.querySelector("#"+a);if("CANVAS"===o.tagName?(t=o.width,e=o.height,this.canvas=i=o,this.container=n=document.createElement("DIV"),i.parentNode&&i.parentNode.insertBefore(n,i)):("DIV"!==o.tagName&&cc.warnID(3819),t=o.clientWidth,e=o.clientHeight,this.canvas=i=document.createElement("CANVAS"),this.container=n=document.createElement("DIV"),o.appendChild(n)),n.setAttribute("id","Cocos2dGameContainer"),n.appendChild(i),this.frame=n.parentNode===document.body?document.documentElement:n.parentNode,(function(t){(" "+t.className+" ").indexOf(" gameCanvas ")>-1||(t.className&&(t.className+=" "),t.className+="gameCanvas")})(i),i.setAttribute("width",t||480),i.setAttribute("height",e||320),i.setAttribute("tabindex",99),this._determineRenderType(),this.renderType===this.RENDER_TYPE_WEBGL){var c={stencil:!0,antialias:cc.macro.ENABLE_WEBGL_ANTIALIAS,alpha:cc.macro.ENABLE_TRANSPARENT_CANVAS};r.initWebGL(i,c),this._renderContext=r.device._gl,!cc.macro.CLEANUP_IMAGE_CACHE&&s&&(s.enabled=!0)}this._renderContext||(this.renderType=this.RENDER_TYPE_CANVAS,r.initCanvas(i),this._renderContext=r.device._ctx),this.canvas.oncontextmenu=function(){if(!cc._isContextMenuEnable)return!1},this._rendererInitialized=!0}},_initEvents:function(){var t,e=window;this.config.registerSystemEvent&&cc.internal.inputManager.registerSystemEvent(this.canvas),void 0!==document.hidden?t="hidden":void 0!==document.mozHidden?t="mozHidden":void 0!==document.msHidden?t="msHidden":void 0!==document.webkitHidden&&(t="webkitHidden");var i=!1;function n(){i||(i=!0,a.emit(a.EVENT_HIDE))}function r(t,e,n,r,s){i&&(i=!1,a.emit(a.EVENT_SHOW,t,e,n,r,s))}if(t)for(var s=["visibilitychange","mozvisibilitychange","msvisibilitychange","webkitvisibilitychange","qbrowserVisibilityChange"],o=0;o-1&&(e.onfocus=r),"onpageshow"in window&&"onpagehide"in window&&(e.addEventListener("pagehide",n),e.addEventListener("pageshow",r),document.addEventListener("pagehide",n),document.addEventListener("pageshow",r)),this.on(a.EVENT_HIDE,(function(){a.pause()})),this.on(a.EVENT_SHOW,(function(){a.resume()}))}};i.call(a),cc.js.addon(a,i.prototype),cc.game=e.exports=a}),{"../audio/CCAudioEngine":21,"../core/renderer/utils/dynamic-atlas/manager":183,"./CCDebug":22,"./event/event-target":132,"./renderer/index.js":180}],25:[(function(t,e){"use strict";var i=t("./value-types"),n=t("./value-types/utils"),r=t("./utils/base-node"),s=t("./utils/prefab-helper"),a=t("./utils/trans-pool").NodeMemPool,o=t("./utils/affine-transform"),c=t("./event-manager"),u=t("./platform/CCMacro"),l=t("./platform/js"),h=(t("./event/event"),t("./event/event-target")),_=t("./renderer/render-flow"),f=cc.Object.Flags.Destroying,d=Math.PI/180,p=!!cc.ActionManager,v=function(){},g=new i.Vec3,m=new i.Quat,y=new i.Vec3,T=new i.Vec3,E=new i.Quat,A=new i.Quat,C=new i.Vec3,x=new i.Vec3,b=new i.Vec3,S=new i.Vec3,R=new i.Vec3,w=new i.Quat,I=new i.Quat,M=new i.Vec3,O=new i.Quat,D=new i.Vec3,L=new i.Quat,P=new i.Vec3,N=new i.Vec3,F=new i.Quat,B=new i.Quat,U=(new i.Quat,cc.mat4()),z=new i.Vec3,k=new l.Pool;k.get=function(){return this._get()||[]};var V=cc.Enum({DEBUG:31}),H=cc.Enum({POSITION:1,SCALE:2,ROTATION:4,SKEW:8,TRS:7,RS:6,TRSS:15,PHYSICS_POSITION:16,PHYSICS_SCALE:32,PHYSICS_ROTATION:64,PHYSICS_TRS:112,PHYSICS_RS:96,ALL_POSITION:17,ALL_SCALE:34,ALL_ROTATION:68,ALL_TRS:119,ALL:65535}),W=cc.Enum({TOUCH_START:"touchstart",TOUCH_MOVE:"touchmove",TOUCH_END:"touchend",TOUCH_CANCEL:"touchcancel",MOUSE_DOWN:"mousedown",MOUSE_MOVE:"mousemove",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_UP:"mouseup",MOUSE_WHEEL:"mousewheel",POSITION_CHANGED:"position-changed",ROTATION_CHANGED:"rotation-changed",SCALE_CHANGED:"scale-changed",SIZE_CHANGED:"size-changed",ANCHOR_CHANGED:"anchor-changed",COLOR_CHANGED:"color-changed",CHILD_ADDED:"child-added",CHILD_REMOVED:"child-removed",CHILD_REORDER:"child-reorder",GROUP_CHANGED:"group-changed",SIBLING_ORDER_CHANGED:"sibling-order-changed"}),G=[W.TOUCH_START,W.TOUCH_MOVE,W.TOUCH_END,W.TOUCH_CANCEL],j=[W.MOUSE_DOWN,W.MOUSE_ENTER,W.MOUSE_MOVE,W.MOUSE_LEAVE,W.MOUSE_UP,W.MOUSE_WHEEL],Y=!0,X=function(t){if(0!==t){Y&&cc.warn("`cc.Node.skewX/Y` is deprecated since v2.2.1, please use 3D node instead.",""),Y=!1}},q=null,Z=function(t,e){var i=t.getLocation(),n=this.owner;return!!n._hitTest(i,this)&&(e.type=W.TOUCH_START,e.touch=t,e.bubbles=!0,n.dispatchEvent(e),!0)},K=function(t,e){var i=this.owner;e.type=W.TOUCH_MOVE,e.touch=t,e.bubbles=!0,i.dispatchEvent(e)},Q=function(t,e){var i=t.getLocation(),n=this.owner;n._hitTest(i,this)?e.type=W.TOUCH_END:e.type=W.TOUCH_CANCEL,e.touch=t,e.bubbles=!0,n.dispatchEvent(e)},J=function(t,e){t.getLocation();var i=this.owner;e.type=W.TOUCH_CANCEL,e.touch=t,e.bubbles=!0,i.dispatchEvent(e)},$=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_DOWN,t.bubbles=!0,i.dispatchEvent(t))},tt=function(t){var e=t.getLocation(),i=this.owner;if(i._hitTest(e,this))this._previousIn||(q&&q._mouseListener&&(t.type=W.MOUSE_LEAVE,q.dispatchEvent(t),q._mouseListener._previousIn=!1),q=this.owner,t.type=W.MOUSE_ENTER,i.dispatchEvent(t),this._previousIn=!0),t.type=W.MOUSE_MOVE,t.bubbles=!0,i.dispatchEvent(t);else{if(!this._previousIn)return;t.type=W.MOUSE_LEAVE,i.dispatchEvent(t),this._previousIn=!1,q=null}t.stopPropagation()},et=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_UP,t.bubbles=!0,i.dispatchEvent(t),t.stopPropagation())},it=function(t){var e=t.getLocation(),i=this.owner;i._hitTest(e,this)&&(t.type=W.MOUSE_WHEEL,t.bubbles=!0,i.dispatchEvent(t),t.stopPropagation())};function nt(t,e){if(e){for(var i=0,n=null,r=t;r&&cc.Node.isNode(r);r=r._parent,++i)if(r.getComponent(e)){var s={index:i,node:r};n?n.push(s):n=[s]}return n}return null}function rt(t,e){if(!(t._objFlags&f)){if(t._bubblingListeners)for(var i=0,n=e.length;i=0;--r)if((n=i[r])._capturingListeners&&(e.currentTarget=n,n._capturingListeners.emit(e.type,e,i),e._propagationStopped))return void(i.length=0);if(i.length=0,e.eventPhase=2,e.currentTarget=t,t._capturingListeners&&t._capturingListeners.emit(e.type,e),!e._propagationImmediateStopped&&t._bubblingListeners&&t._bubblingListeners.emit(e.type,e),!e._propagationStopped&&e.bubbles)for(t._getBubblingTargets(e.type,i),e.eventPhase=3,r=0;r>16},set:function(t){t>u.MAX_ZINDEX?(cc.warnID(1636),t=u.MAX_ZINDEX):t0&&(this._renderFlag|=_.FLAG_CHILDREN)},_checkListenerMask:function(){if(this._touchListener){var t=this._touchListener.mask=nt(this,cc.Mask);this._mouseListener&&(this._mouseListener.mask=t)}else this._mouseListener&&(this._mouseListener.mask=nt(this,cc.Mask))},_checknSetupSysEvent:function(t){var e=!1,i=!1;return-1!==G.indexOf(t)?(this._touchListener||(this._touchListener=cc.EventListener.create({event:cc.EventListener.TOUCH_ONE_BY_ONE,swallowTouches:!0,owner:this,mask:nt(this,cc.Mask),onTouchBegan:Z,onTouchMoved:K,onTouchEnded:Q,onTouchCancelled:J}),c.addListener(this._touchListener,this),e=!0),i=!0):-1!==j.indexOf(t)&&(this._mouseListener||(this._mouseListener=cc.EventListener.create({event:cc.EventListener.MOUSE,_previousIn:!1,owner:this,mask:nt(this,cc.Mask),onMouseDown:$,onMouseMove:tt,onMouseUp:et,onMouseScroll:it}),c.addListener(this._mouseListener,this),e=!0),i=!0),e&&!this._activeInHierarchy&&cc.director.getScheduler().schedule((function(){this._activeInHierarchy||c.pauseTarget(this)}),this,0,0,0,!1),i},on:function(t,e,i,n){if(this._checknSetupSysEvent(t))return this._onDispatch(t,e,i,n);switch(t){case W.POSITION_CHANGED:this._eventMask|=1;break;case W.SCALE_CHANGED:this._eventMask|=2;break;case W.ROTATION_CHANGED:this._eventMask|=4;break;case W.SIZE_CHANGED:this._eventMask|=8;break;case W.ANCHOR_CHANGED:this._eventMask|=16;break;case W.COLOR_CHANGED:this._eventMask|=32}return this._bubblingListeners||(this._bubblingListeners=new h),this._bubblingListeners.on(t,e,i)},once:function(t,e,i,n){var r=this,s=null;(s=this._checknSetupSysEvent(t)&&n?this._capturingListeners=this._capturingListeners||new h:this._bubblingListeners=this._bubblingListeners||new h).once(t,e,i),s.once(t,(function(){r.off(t,e,i)}),void 0)},_onDispatch:function(t,e,i,n){if("boolean"==typeof i?(n=i,i=void 0):n=!!n,e){var r=null;return(r=n?this._capturingListeners=this._capturingListeners||new h:this._bubblingListeners=this._bubblingListeners||new h).hasEventListener(t,e,i)||(r.on(t,e,i),i&&i.__eventTargets&&i.__eventTargets.push(this)),e}cc.errorID(6800)},off:function(t,e,i,n){var r=-1!==G.indexOf(t),s=!r&&-1!==j.indexOf(t);if(r||s)this._offDispatch(t,e,i,n),r?this._touchListener&&!rt(this,G)&&(c.removeListener(this._touchListener),this._touchListener=null):s&&this._mouseListener&&!rt(this,j)&&(c.removeListener(this._mouseListener),this._mouseListener=null);else if(this._bubblingListeners&&(this._bubblingListeners.off(t,e,i),!this._bubblingListeners.hasEventListener(t)))switch(t){case W.POSITION_CHANGED:this._eventMask&=-2;break;case W.SCALE_CHANGED:this._eventMask&=-3;break;case W.ROTATION_CHANGED:this._eventMask&=-5;break;case W.SIZE_CHANGED:this._eventMask&=-9;break;case W.ANCHOR_CHANGED:this._eventMask&=-17;break;case W.COLOR_CHANGED:this._eventMask&=-33}},_offDispatch:function(t,e,i,n){if("boolean"==typeof i?(n=i,i=void 0):n=!!n,e){var r=n?this._capturingListeners:this._bubblingListeners;r&&(r.off(t,e,i),i&&i.__eventTargets&&l.array.fastRemove(i.__eventTargets,this))}else this._capturingListeners&&this._capturingListeners.removeAll(t),this._bubblingListeners&&this._bubblingListeners.removeAll(t)},targetOff:function(t){var e=this._bubblingListeners;e&&(e.targetOff(t),1&this._eventMask&&!e.hasEventListener(W.POSITION_CHANGED)&&(this._eventMask&=-2),2&this._eventMask&&!e.hasEventListener(W.SCALE_CHANGED)&&(this._eventMask&=-3),4&this._eventMask&&!e.hasEventListener(W.ROTATION_CHANGED)&&(this._eventMask&=-5),8&this._eventMask&&!e.hasEventListener(W.SIZE_CHANGED)&&(this._eventMask&=-9),16&this._eventMask&&!e.hasEventListener(W.ANCHOR_CHANGED)&&(this._eventMask&=-17),32&this._eventMask&&!e.hasEventListener(W.COLOR_CHANGED)&&(this._eventMask&=-33)),this._capturingListeners&&this._capturingListeners.targetOff(t),t&&t.__eventTargets&&l.array.fastRemove(t.__eventTargets,this),this._touchListener&&!rt(this,G)&&(c.removeListener(this._touchListener),this._touchListener=null),this._mouseListener&&!rt(this,j)&&(c.removeListener(this._mouseListener),this._mouseListener=null)},hasEventListener:function(t){var e=!1;return this._bubblingListeners&&(e=this._bubblingListeners.hasEventListener(t)),!e&&this._capturingListeners&&(e=this._capturingListeners.hasEventListener(t)),e},emit:function(t,e,i,n,r,s){this._bubblingListeners&&this._bubblingListeners.emit(t,e,i,n,r,s)},dispatchEvent:function(t){var e=k.get();st(this,t,e),k.put(e)},pauseSystemEvents:function(t){c.pauseTarget(this,t)},resumeSystemEvents:function(t){c.resumeTarget(this,t)},_hitTest:function(t,e){var n=this._contentSize.width,r=this._contentSize.height,s=P,a=N,o=cc.Camera.findCamera(this);if(o?o.getScreenToWorldPoint(t,s):s.set(t),this._updateWorldMatrix(),!i.Mat4.invert(U,this._worldMatrix))return!1;i.Vec2.transformMat4(a,s,U),a.x+=this._anchorPoint.x*n,a.y+=this._anchorPoint.y*r;var c=!1;if(a.x>=0&&a.y>=0&&a.x<=n&&a.y<=r&&(c=!0,e&&e.mask))for(var u=e.mask,l=this,h=u?u.length:0,_=0,f=0;l&&fd.index){u.length=f;break}}return c},_getCapturingTargets:function(t,e){for(var i=this.parent;i;)i._capturingListeners&&i._capturingListeners.hasEventListener(t)&&e.push(i),i=i.parent},_getBubblingTargets:function(t,e){for(var i=this.parent;i;)i._bubblingListeners&&i._bubblingListeners.hasEventListener(t)&&e.push(i),i=i.parent},runAction:p?function(t){if(this.active){cc.assertID(t,1618);var e=cc.director.getActionManager();return e._suppressDeprecation||(e._suppressDeprecation=!0,cc.warnID(1639)),e.addAction(t,this,!1),t}}:v,pauseAllActions:p?function(){cc.director.getActionManager().pauseTarget(this)}:v,resumeAllActions:p?function(){cc.director.getActionManager().resumeTarget(this)}:v,stopAllActions:p?function(){cc.director.getActionManager().removeAllActionsFromTarget(this)}:v,stopAction:p?function(t){cc.director.getActionManager().removeAction(t)}:v,stopActionByTag:p?function(t){t!==cc.Action.TAG_INVALID?cc.director.getActionManager().removeActionByTag(t,this):cc.logID(1612)}:v,getActionByTag:p?function(t){return t===cc.Action.TAG_INVALID?(cc.logID(1613),null):cc.director.getActionManager().getActionByTag(t,this)}:function(){return null},getNumberOfRunningActions:p?function(){return cc.director.getActionManager().getNumberOfRunningActionsInTarget(this)}:function(){return 0},getPosition:function(t){return t=t||new i.Vec3,i.Trs.toPosition(t,this._trs)},setPosition:function(t,e,i){var n;void 0===e?(n=t.x,e=t.y,i=t.z):n=t;var r=this._trs;void 0===i&&(i=r[2]),(r[0]!==n||r[1]!==e||r[2]!==i)&&(r[0]=n,r[1]=e,r[2]=i,this.setLocalDirty(H.ALL_POSITION),this._renderFlag|=_.FLAG_WORLD_TRANSFORM,1&this._eventMask&&this.emit(W.POSITION_CHANGED))},getScale:function(t){return void 0!==t?i.Trs.toScale(t,this._trs):(cc.errorID(1400,"cc.Node.getScale","cc.Node.scale or cc.Node.getScale(cc.Vec3)"),this._trs[7])},setScale:function(t,e,i){var n;t&&"number"!=typeof t?(n=t.x,e=t.y,i=t.z):void 0!==t&&void 0===e?(n=t,e=t,i=t):n=t;var r=this._trs;void 0===i&&(i=r[9]),r[7]===n&&r[8]===e&&r[9]===i||(r[7]=n,r[8]=e,r[9]=i,this.setLocalDirty(H.ALL_SCALE),this._renderFlag|=_.FLAG_TRANSFORM,2&this._eventMask&&this.emit(W.SCALE_CHANGED))},getRotation:function(t){return t instanceof i.Quat?i.Trs.toRotation(t,this._trs):-this.angle},setRotation:function(t,e,i,n){if("number"==typeof t&&void 0===e)this.angle=-t;else{var r=t;void 0===e&&(r=t.x,e=t.y,i=t.z,n=t.w);var s=this._trs;s[3]===r&&s[4]===e&&s[5]===i&&s[6]===n||(s[3]=r,s[4]=e,s[5]=i,s[6]=n,this.setLocalDirty(H.ALL_ROTATION),4&this._eventMask&&this.emit(W.ROTATION_CHANGED))}},getContentSize:function(){return cc.size(this._contentSize.width,this._contentSize.height)},setContentSize:function(t,e){var i=this._contentSize;if(void 0===e){if((0,n.approx)(t.width,i.width)&&(0,n.approx)(t.height,i.height))return;i.width=t.width,i.height=t.height}else{if((0,n.approx)(t,i.width)&&(0,n.approx)(e,i.height))return;i.width=t,i.height=e}8&this._eventMask&&this.emit(W.SIZE_CHANGED)},getAnchorPoint:function(){return cc.v2(this._anchorPoint)},setAnchorPoint:function(t,e){var i=this._anchorPoint;if(void 0===e){if(t.x===i.x&&t.y===i.y)return;i.x=t.x,i.y=t.y}else{if(t===i.x&&e===i.y)return;i.x=t,i.y=e}this.setLocalDirty(H.ALL_POSITION),16&this._eventMask&&this.emit(W.ANCHOR_CHANGED)},_invTransformPoint:function(t,e){this._parent?this._parent._invTransformPoint(t,e):i.Vec3.copy(t,e);var n=this._trs;return i.Trs.toPosition(y,n),i.Vec3.sub(t,t,y),i.Trs.toRotation(E,n),i.Quat.conjugate(A,E),i.Vec3.transformQuat(t,t,A),i.Trs.toScale(y,n),i.Vec3.inverseSafe(T,y),i.Vec3.mul(t,t,T),t},getWorldPosition:function(t){i.Trs.toPosition(t,this._trs);for(var e,n=this._parent;n;)e=n._trs,i.Trs.toScale(g,e),i.Vec3.mul(t,t,g),i.Trs.toRotation(m,e),i.Vec3.transformQuat(t,t,m),i.Trs.toPosition(g,e),i.Vec3.add(t,t,g),n=n._parent;return t},setWorldPosition:function(t){var e=this._trs;this._parent?this._parent._invTransformPoint(C,t):i.Vec3.copy(C,t),i.Trs.fromPosition(e,C),this.setLocalDirty(H.ALL_POSITION),1&this._eventMask&&this.emit(W.POSITION_CHANGED)},getWorldRotation:function(t){i.Trs.toRotation(F,this._trs),i.Quat.copy(t,F);for(var e=this._parent;e;)i.Trs.toRotation(F,e._trs),i.Quat.mul(t,F,t),e=e._parent;return t},setWorldRotation:function(t){this._parent?(this._parent.getWorldRotation(B),i.Quat.conjugate(B,B),i.Quat.mul(B,B,t)):i.Quat.copy(B,t),i.Trs.fromRotation(this._trs,B),this.setLocalDirty(H.ALL_ROTATION)},getWorldScale:function(t){i.Trs.toScale(x,this._trs),i.Vec3.copy(t,x);for(var e=this._parent;e;)i.Trs.toScale(x,e._trs),i.Vec3.mul(t,t,x),e=e._parent;return t},setWorldScale:function(t){this._parent?(this._parent.getWorldScale(b),i.Vec3.div(b,t,b)):i.Vec3.copy(b,t),i.Trs.fromScale(this._trs,b),this.setLocalDirty(H.ALL_SCALE)},getWorldRT:function(t){var e=S,n=w,r=this._trs;i.Trs.toPosition(e,r),i.Trs.toRotation(n,r);for(var s=this._parent;s;)r=s._trs,i.Trs.toScale(R,r),i.Vec3.mul(e,e,R),i.Trs.toRotation(I,r),i.Vec3.transformQuat(e,e,I),i.Trs.toPosition(R,r),i.Vec3.add(e,e,R),i.Quat.mul(n,I,n),s=s._parent;return i.Mat4.fromRT(t,n,e),t},lookAt:function(t,e){this.getWorldPosition(M),i.Vec3.sub(M,M,t),i.Vec3.normalize(M,M),i.Quat.fromViewUp(O,M,e),this.setWorldRotation(O)},_updateLocalMatrix:ut,_calculWorldMatrix:function(){this._localMatDirty&H.TRSS&&this._updateLocalMatrix();var t=this._parent;t?this._mulMat(this._worldMatrix,t._worldMatrix,this._matrix):i.Mat4.copy(this._worldMatrix,this._matrix),this._worldMatDirty=!1},_mulMat:_t,_updateWorldMatrix:function(){if(this._parent&&this._parent._updateWorldMatrix(),this._worldMatDirty){this._calculWorldMatrix();for(var t=this._children,e=0,i=t.length;e1){for(var n,r,s=1,a=t.length;s0&&(r=t[o-1])._localZOrder>n._localZOrder;o--)t[o]=r;t[o]=n}this.emit(W.CHILD_REORDER,this)}cc.director.__fastOff(cc.Director.EVENT_AFTER_UPDATE,this.sortAllChildren,this)}},_delaySort:function(){this._reorderChildDirty||(this._reorderChildDirty=!0,cc.director.__fastOn(cc.Director.EVENT_AFTER_UPDATE,this.sortAllChildren,this))},_restoreProperties:!1,onRestore:!1},pt=cc.Class(dt),vt=pt.prototype;l.getset(vt,"position",vt.getPosition,vt.setPosition,!1,!0),cc.Node=e.exports=pt}),{"./event-manager":130,"./event/event":133,"./event/event-target":132,"./platform/CCMacro":154,"./platform/js":170,"./renderer/render-flow":181,"./utils/affine-transform":215,"./utils/base-node":216,"./utils/prefab-helper":226,"./utils/trans-pool":232,"./value-types":238,"./value-types/utils":245}],26:[(function(t,e){"use strict";var i=t("./CCNode"),n=t("./renderer/render-flow"),r=(cc.Object.Flags.HideInHierarchy,i._LocalDirtyFlag),s=cc.Class({name:"cc.PrivateNode",extends:i,properties:{x:{get:function(){return this._originPos.x},set:function(t){var e=this._originPos;t!==e.x&&(e.x=t,this._posDirty(!0))},override:!0},y:{get:function(){return this._originPos.y},set:function(t){var e=this._originPos;t!==e.y&&(e.y=t,this._posDirty(!0))},override:!0},zIndex:{get:function(){return cc.macro.MIN_ZINDEX},set:function(){},override:!0},showInEditor:{default:!1,editorOnly:!0,override:!0}},ctor:function(){this._localZOrder=cc.macro.MIN_ZINDEX<<16,this._originPos=cc.v2()},_posDirty:function(t){this.setLocalDirty(r.POSITION),this._renderFlag|=n.FLAG_TRANSFORM,!0===t&&1&this._eventMask&&this.emit(i.EventType.POSITION_CHANGED)},_updateLocalMatrix:function(){if(this._localMatDirty){var t=this.parent;t&&(this._trs[0]=this._originPos.x-(t._anchorPoint.x-.5)*t._contentSize.width,this._trs[1]=this._originPos.y-(t._anchorPoint.y-.5)*t._contentSize.height),this._super()}},getPosition:function(){return new cc.Vec2(this._originPos)},setPosition:function(t,e){void 0===e&&(e=(t=t.x).y);var i=this._originPos;i.x===t&&i.y===e||(i.x=t,i.y=e,this._posDirty(!0))},setParent:function(t){var e=this._parent;this._super(t),e!==t&&(e&&e.off(i.EventType.ANCHOR_CHANGED,this._posDirty,this),t&&t.on(i.EventType.ANCHOR_CHANGED,this._posDirty,this))},_updateOrderOfArrival:function(){}}),a=s.prototype;cc.js.getset(a,"parent",a.getParent,a.setParent),cc.js.getset(a,"position",a.getPosition,a.setPosition),cc.PrivateNode=e.exports=s}),{"./CCNode":25,"./renderer/render-flow":181}],27:[(function(t,e){"use strict";cc.Scene=cc.Class({name:"cc.Scene",extends:t("./CCNode"),properties:{_is3DNode:{default:!0,override:!0},autoReleaseAssets:!1},ctor:function(){this._anchorPoint.x=0,this._anchorPoint.y=0,this._activeInHierarchy=!1,this._inited=!cc.game._isCloning,this.dependAssets=null},destroy:function(){if(cc.Object.prototype.destroy.call(this))for(var t=this._children,e=0;e0,this._repeat=r,this._runForever=this._repeat===cc.macro.REPEAT_FOREVER,!0},h.getInterval=function(){return this._interval},h.setInterval=function(t){this._interval=t},h.update=function(t){-1===this._elapsed?(this._elapsed=0,this._timesExecuted=0):(this._elapsed+=t,this._runForever&&!this._useDelay?this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0):(this._useDelay?this._elapsed>=this._delay&&(this.trigger(),this._elapsed-=this._delay,this._timesExecuted+=1,this._useDelay=!1):this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0,this._timesExecuted+=1),this._callback&&!this._runForever&&this._timesExecuted>this._repeat&&this.cancel()))},h.getCallback=function(){return this._callback},h.trigger=function(){this._target&&this._callback&&(this._lock=!0,this._callback.call(this._target,this._elapsed),this._lock=!1)},h.cancel=function(){this._scheduler.unschedule(this._callback,this._target)};var _=[];l.get=function(){return _.pop()||new l},l.put=function(t){_.length<20&&!t._lock&&(t._scheduler=t._target=t._callback=null,_.push(t))},cc.Scheduler=function(){this._timeScale=1,this._updatesNegList=[],this._updates0List=[],this._updatesPosList=[],this._hashForUpdates=i.createMap(!0),this._hashForTimers=i.createMap(!0),this._currentTarget=null,this._currentTargetSalvaged=!1,this._updateHashLocked=!1,this._arrayForTimers=[]},cc.Scheduler.prototype={constructor:cc.Scheduler,_removeHashElement:function(t){delete this._hashForTimers[t.target._id];for(var e=this._arrayForTimers,i=0,n=e.length;i=s&&n.timerIndex--,void(0===r.length&&(this._currentTarget===n?this._currentTargetSalvaged=!0:this._removeHashElement(n)))}}},unscheduleUpdate:function(t){if(t){var e=t._id;e||(t.__instanceId?(cc.warnID(1513),e=t._id=t.__instanceId):cc.errorID(1510));var i=this._hashForUpdates[e];i&&(this._updateHashLocked?i.entry.markedForDeletion=!0:this._removeUpdateFromHash(i.entry))}},unscheduleAllForTarget:function(t){if(t){var e=t._id;e||(t.__instanceId?(cc.warnID(1513),e=t._id=t.__instanceId):cc.errorID(1510));var i=this._hashForTimers[e];if(i){var n=i.timers;n.indexOf(i.currentTimer)>-1&&!i.currentTimerSalvaged&&(i.currentTimerSalvaged=!0);for(var r=0,s=n.length;r=0;e--)i=r[e],this.unscheduleAllForTarget(i.target);var s=0;if(t<0)for(e=0;e=t&&this.unscheduleUpdate(n.target),s==this._updatesNegList.length&&e++;if(t<=0)for(e=0;e=t&&this.unscheduleUpdate(n.target),s==this._updatesPosList.length&&e++},isScheduled:function(t,e){cc.assertID(t,1508),cc.assertID(e,1509);var i=e._id;i||(e.__instanceId?(cc.warnID(1513),i=e._id=e.__instanceId):cc.errorID(1510));var n=this._hashForTimers[i];if(!n)return!1;if(null==n.timers)return!1;for(var r=n.timers,s=0;s=t&&(r.paused=!0,s.push(r.target));if(t<=0)for(i=0;i=t&&(r.paused=!0,s.push(r.target));return s},resumeTargets:function(t){if(t)for(var e=0;e1?n:n[0]}},cc.AssetManager=P,cc.assetManager=new P,Object.defineProperty(cc,"resources",{get:function(){return D.get(L.RESOURCES)}}),e.exports=cc.assetManager}),{"./builtins":30,"./bundle":31,"./cache":32,"./depend-util":34,"./downloader":41,"./factory":42,"./fetch":43,"./helper":45,"./load":47,"./pack-manager":48,"./parser":49,"./pipeline":50,"./preprocess":51,"./releaseManager":52,"./request-item":53,"./shared":54,"./task":55,"./urlTransformer":56,"./utilities":57}],30:[(function(t,e){"use strict";var i=t("./cache"),n=t("./releaseManager"),r=t("./shared").BuiltinBundleName,s={_assets:new i({material:new i,effect:new i}),_loadBuiltins:function(t,e){var i=t+"s",n=this._assets.get(t);return cc.assetManager.internal.loadDir(i,null,null,(function(t,i){if(t)cc.error(t.message,t.stack);else for(var r=0;re.length)||47===t.charCodeAt(e.length)}return this.paths.forEach((function(n,r){if(r.startsWith(t)&&a(r,t)||!t)for(var o=0,c=n.length;o1){var f=Object.create(null);n.forEach((function(t){f[t._uuid]=t})),r={isCompleted:l,_map:f}}else r=n[0]}i&&i(e,r)}))},getXMLHttpRequest:function(){return new XMLHttpRequest},_parseLoadResArgs:i.parseLoadResArgs,getItem:function(t){return cc.assetManager.assets.has(t)?{content:cc.assetManager.assets.get(t)}:null},loadRes:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete,o=cc.path.extname(t);o&&(t=t.slice(0,-o.length)),cc.resources.load(t,e,s,a)},loadResArray:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete;t.forEach((function(e,i){var n=cc.path.extname(e);n&&(t[i]=e.slice(0,-n.length))})),cc.resources.load(t,e,s,a)},loadResDir:function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=(e=r.type,r.onProgress),a=r.onComplete;cc.resources.loadDir(t,e,s,(function(i,n){var r=[];i||(r=cc.resources.getDirWithPath(t,e).map((function(t){return t.path}))),a&&a(i,n,r)}))},getRes:function(t,e){return cc.assetManager.assets.has(t)?cc.assetManager.assets.get(t):cc.resources.get(t,e)},getResCount:function(){return cc.assetManager.assets.count},getDependsRecursively:function(t){return t?n.getDepsRecursively("string"==typeof t?t:t._uuid).concat([t._uuid]):[]},get assetLoader(){},get md5Pipe(){return h},get downloader(){return cc.assetManager.downloader},get loader(){return cc.assetManager.parser},addDownloadHandlers:function(t){var e=Object.create(null);for(var i in t){var n=t[i];e["."+i]=function(t,e,i){n({url:t},i)}}cc.assetManager.downloader.register(e)},addLoadHandlers:function(t){var e=Object.create(null);for(var i in t){var n=t[i];e["."+i]=function(t,e,i){n({content:t},i)}}cc.assetManager.parser.register(e)},flowInDeps:function(){},release:function(t){if(Array.isArray(t))for(var e=0;eN._maxInterval?N._maxInterval:cc.director._deltaTime;t-O>1e3*e&&(M=0,O=t)},P=function t(e,i){for(D=!1,L();R.length>0&&I0&&I0&&(s(P,m,y),D=!0),a.apply(this,arguments)}))}L(),I0){var i=n.create({name:t.name+" dependencies",input:c,progress:f,options:s,onProgress:t.onProgress,onError:n.prototype.recycle,onComplete:function(n){n||(t.output.push.apply(t.output,this.output),i.recycle()),r&&h(t),e(n)}});l.async(i)}else r&&h(t),e()}))}}),{"./pack-manager":48,"./shared":54,"./task":55,"./utilities":57}],44:[(function(t,e){"use strict";var i,n=t("../utils/text-utils"),r=null,s="BES bswy:->@123\u4e01\u3041\u1101",a=Object.create(null),o=-1,c=[],u=3e3,l=(i=void 0,function(){if(void 0===i)if(window.FontFace){var t=/Gecko.*Firefox\/(\d+)/.exec(window.navigator.userAgent),e=/OS X.*Version\/10\..*Safari/.exec(window.navigator.userAgent)&&/Apple/.exec(window.navigator.vendor);i=t?parseInt(t[1],10)>42:!e}else i=!1;return i});function h(){for(var t=!0,e=Date.now(),i=c.length-1;i>=0;i--){var a=c[i],l=a.fontFamilyName;if(e-a.startTime>u)cc.warnID(4933,l),a.onComplete(null,l),c.splice(i,1);else{var h=a.refWidth,_="40px "+l;r.font=_,h!==n.safeMeasureText(r,s,_)?(c.splice(i,1),a.onComplete(null,l)):t=!1}}t&&(clearInterval(o),o=-1)}var _={loadFont:function(t,e,i){var f=_._getFontFamily(t);if(a[f])return i(null,f);if(!r){var d=document.createElement("canvas");d.width=100,d.height=100,r=d.getContext("2d")}var p="40px "+f;r.font=p;var v=n.safeMeasureText(r,s,p),g=document.createElement("style");g.type="text/css";var m="";isNaN(f-0)?m+="@font-face { font-family:"+f+"; src:":m+="@font-face { font-family:'"+f+"'; src:",m+="url('"+t+"');",g.textContent=m+"}",document.body.appendChild(g);var y,T,E,A,C,x,b=document.createElement("div"),S=b.style;if(S.fontFamily=f,b.innerHTML=".",S.position="absolute",S.left="-100px",S.top="-100px",document.body.appendChild(b),l())y=Date.now(),T=f,E=i,A=new Promise(function(t,e){(function i(){Date.now()-y>=u?e():document.fonts.load("40px "+T).then((function(e){e.length>=1?t():setTimeout(i,100)}),(function(){e()}))})()}),C=null,x=new Promise(function(t,e){C=setTimeout(e,u)}),Promise.race([x,A]).then((function(){C&&(clearTimeout(C),C=null),E(null,T)}),(function(){cc.warnID(4933,T),E(null,T)}));else{var R={fontFamilyName:f,refWidth:v,onComplete:i,startTime:Date.now()};c.push(R),-1===o&&(o=setInterval(h,100))}a[f]=g},_getFontFamily:function(t){var e=t.lastIndexOf(".ttf");if(-1===e)return t;var i,n=t.lastIndexOf("/");return-1!==(i=-1===n?t.substring(0,e)+"_LABEL":t.substring(n+1,e)+"_LABEL").indexOf(" ")&&(i='"'+i+'"'),i}};e.exports=_}),{"../utils/text-utils":230}],45:[(function(t,e){"use strict";var i,n=t("./shared").bundles,r={decodeUuid:t("../utils/decode-uuid"),getUuidFromURL:(i=/.*[/\\][0-9a-fA-F]{2}[/\\]([0-9a-fA-F-]{8,})/,function(t){var e=t.match(i);return e?e[1]:""}),getUrlWithUuid:function(t,e){(e=e||Object.create(null)).__isNative__=e.isNative,e.ext=e.nativeExt;var i=n.find((function(e){return e.getAssetInfo(t)}));return i&&(e.bundle=i.name),cc.assetManager._transform(t,e)},isScene:function(t){return t&&(t.constructor===cc.SceneAsset||t instanceof cc.Scene)},normalize:function(t){return t&&(46===t.charCodeAt(0)&&47===t.charCodeAt(1)?t=t.slice(2):47===t.charCodeAt(0)&&(t=t.slice(1))),t}};e.exports=r}),{"../utils/decode-uuid":219,"./shared":54}],46:[(function(t){"use strict";t("./deprecated"),t("./CCAssetManager")}),{"./CCAssetManager":29,"./deprecated":35}],47:[(function(t,e){"use strict";var i=t("./pack-manager"),n=t("./pipeline"),r=t("./parser"),s=t("./utilities"),a=s.getDepends,o=s.cache,c=s.gatherAsset,u=s.setProperties,l=s.forEach,h=s.clear,_=s.checkCircleReference,f=t("./shared"),d=f.assets,p=f.files,v=f.parsed,g=f.pipeline,m=t("./task"),y=new n("loadOneAsset",[function(t,e){var n=t.output=t.input,r=n.options,s=n.isNative,a=n.uuid,o=n.file,c=r.reload;if(o||!c&&!s&&d.has(a))return e();i.load(n,t.options,(function(t,i){n.file=i,e(t)}))},function(t,e){var i=t.output=t.input,n=t.progress,s=t.options.__exclude__,a=i.id,o=i.file,c=i.options;if(i.isNative)r.parse(a,o,i.ext,c,(function(r,s){if(r)return e(r);i.content=s,n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),p.remove(a),v.remove(a),e()}));else{var u=i.uuid;if(u in s){var l=s[u],h=l.finish,f=l.content,g=l.err,m=l.callbacks;n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),h||_(u,u,s)?(f&&f.addRef&&f.addRef(),i.content=f,e(g)):m.push({done:e,item:i})}else if(!c.reload&&d.has(u)){var y=d.get(u);c.__asyncLoadAssets__||!y.__asyncLoadAssets__?(i.content=y.addRef(),n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),e()):T(t,y,e,!1)}else r.parse(a,o,"import",c,(function(i,n){if(i)return e(i);n._uuid=u,T(t,n,e,!0)}))}}]);function T(t,e,i,n){var r=t.input,s=t.progress,c=r.uuid,l=r.id,h=r.options,_=r.config,f=h.__asyncLoadAssets__,d=h.cacheAsset,y=[];e.addRef&&e.addRef(),a(c,e,Object.create(null),y,!1,f,_),s.canInvoke&&t.dispatch("progress",++s.finish,s.total+=y.length,r);var T=t.options.__exclude__[c]={content:e,finish:!1,callbacks:[{done:i,item:r}]},E=m.create({input:y,options:t.options,onProgress:t.onProgress,onError:m.prototype.recycle,progress:s,onComplete:function(t){if(e.decRef&&e.decRef(!1),e.__asyncLoadAssets__=f,T.finish=!0,T.err=t,!t){for(var i=Array.isArray(E.output)?E.output:[E.output],r=Object.create(null),s=0,a=i.length;sthis.pipes.length))return this.pipes.splice(e,0,t),this;cc.warnID(4921)},append:function(t){if("function"==typeof t)return this.pipes.push(t),this},remove:function(t){if("number"==typeof t)return this.pipes.splice(t,1),this},sync:function(t){var e=this.pipes;if(t instanceof i&&0!==e.length){null!=t.output&&(t.input=t.output,t.output=null),t._isFinish=!1;for(var n=0,r=e.length;n0&&h(t)>0)){r.remove(t._uuid);for(var n=i.getDeps(t._uuid),s=0,a=n.length;s0&&this._ref--,!1!==t&&cc.assetManager._releaseManager.tryRelease(this),this},destroy:function(){return this.loaded=!1,this._super()}}),e.exports=cc.Asset}),{"../platform/CCObject":155}],59:[(function(t,e){"use strict";var i=t("./CCAsset"),n=t("../event/event-target"),r=cc.Enum({WEB_AUDIO:0,DOM_AUDIO:1}),s=cc.Class({name:"cc.AudioClip",extends:i,mixins:[n],ctor:function(){this._loading=!1,this.loaded=!1,this._audio=null},properties:{duration:0,loadMode:{default:r.WEB_AUDIO,type:r},_nativeAsset:{get:function(){return this._audio},set:function(t){t instanceof cc.AudioClip?this._audio=t._nativeAsset:this._audio=t,this._audio&&(this.loaded=!0,this.emit("load"))},override:!0},_nativeDep:{get:function(){return{uuid:this._uuid,audioLoadMode:this.loadMode,ext:cc.path.extname(this._native),__isNative__:!0}},override:!0}},statics:{LoadMode:r,_loadByUrl:function(t,e){var i=cc.assetManager.assets.get(t);i?e(null,i):cc.assetManager.loadRemote(t,(function(t,i){if(t)return e(t);e(null,i)}))}},_ensureLoaded:function(t){if(this.isValid){if(this.loaded)return t&&t();if(t&&this.once("load",t),!this._loading){this._loading=!0;var e=this;cc.assetManager.postLoadNative(this,(function(){e._loading=!1}))}}},destroy:function(){cc.audioEngine.uncache(this),this._super()}});cc.AudioClip=s,e.exports=s}),{"../event/event-target":132,"./CCAsset":58}],60:[(function(t,e){"use strict";var i=function(){this.u=0,this.v=0,this.w=0,this.h=0,this.offsetX=0,this.offsetY=0,this.textureID=0,this.valid=!1,this.xAdvance=0},n=function(t){this._letterDefinitions={},this._texture=t};n.prototype={constructor:n,addLetterDefinitions:function(t,e){this._letterDefinitions[t]=e},cloneLetterDefinition:function(){var t={};for(var e in this._letterDefinitions){var n=new i;cc.js.mixin(n,this._letterDefinitions[e]),t[e]=n}return t},getTexture:function(){return this._texture},getLetter:function(t){return this._letterDefinitions[t]},getLetterDefinitionForChar:function(t){var e=t.charCodeAt(0);return this._letterDefinitions.hasOwnProperty(e)?this._letterDefinitions[e]:null},clear:function(){this._letterDefinitions={}}};var r=cc.Class({name:"cc.BitmapFont",extends:cc.Font,properties:{fntDataStr:{default:""},spriteFrame:{default:null,type:cc.SpriteFrame},fontSize:{default:-1},_fntConfig:null,_fontDefDictionary:null},onLoad:function(){var t=this.spriteFrame;this._fontDefDictionary||(this._fontDefDictionary=new n,t&&(this._fontDefDictionary._texture=t._texture));var e=this._fntConfig;if(e){var r=e.fontDefDictionary;for(var s in r){var a=new i,o=r[s].rect;a.offsetX=r[s].xOffset,a.offsetY=r[s].yOffset,a.w=o.width,a.h=o.height,a.u=o.x,a.v=o.y,a.textureID=0,a.valid=!0,a.xAdvance=r[s].xAdvance,this._fontDefDictionary.addLetterDefinitions(s,a)}}}});cc.BitmapFont=r,cc.BitmapFont.FontLetterDefinition=i,cc.BitmapFont.FontAtlas=n,e.exports=r}),{}],61:[(function(t,e){"use strict";var i=cc.Class({name:"cc.BufferAsset",extends:cc.Asset,ctor:function(){this._buffer=null},properties:{_nativeAsset:{get:function(){return this._buffer},set:function(t){this._buffer=t.buffer||t},override:!0},buffer:function(){return this._buffer}}});cc.BufferAsset=e.exports=i}),{}],62:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Font",extends:cc.Asset});cc.Font=e.exports=i}),{}],63:[(function(t,e){"use strict";var i=cc.Class({name:"cc.JsonAsset",extends:cc.Asset,properties:{json:null}});e.exports=cc.JsonAsset=i}),{}],64:[(function(t,e){"use strict";var i=cc.Class({name:"cc.LabelAtlas",extends:cc.BitmapFont,onLoad:function(){this.spriteFrame?this._fntConfig?this._super():cc.warnID(9101,this.name):cc.warnID(9100,this.name)}});cc.LabelAtlas=i,e.exports=i}),{}],65:[(function(t,e){"use strict";var i=cc.Enum({AUTO:0,SINGLE_INSTANCE:1,MULTI_INSTANCE:2}),n=cc.Class({name:"cc.Prefab",extends:cc.Asset,ctor:function(){this._createFunction=null,this._instantiatedTimes=0},properties:{data:null,optimizationPolicy:i.AUTO,asyncLoadAssets:!1,readonly:{default:!1,editorOnly:!0}},statics:{OptimizationPolicy:i,OptimizationPolicyThreshold:3},createNode:!1,compileCreateFunction:function(){var e=t("../platform/instantiate-jit");this._createFunction=e.compile(this.data)},_doInstantiate:function(t){return this.data._prefab||cc.warnID(3700),this._createFunction||this.compileCreateFunction(),this._createFunction(t)},_instantiate:function(){var t;return this.optimizationPolicy!==i.SINGLE_INSTANCE&&(this.optimizationPolicy===i.MULTI_INSTANCE||this._instantiatedTimes+1>=n.OptimizationPolicyThreshold)?(t=this._doInstantiate(),this.data._instantiate(t)):t=this.data._instantiate(),++this._instantiatedTimes,t},destroy:function(){this.data&&this.data.destroy(),this._super()}});cc.Prefab=e.exports=n,cc.js.obsolete(cc,"cc._Prefab","Prefab")}),{"../platform/instantiate-jit":168}],66:[(function(t,e){"use strict";var i,n=(i=t("../../renderer/gfx"))&&i.__esModule?i:{default:i},r=t("../renderer"),s=t("./CCTexture2D"),a=cc.Enum({RB_FMT_D24S8:n.default.RB_FMT_D24S8,RB_FMT_S8:n.default.RB_FMT_S8,RB_FMT_D16:n.default.RB_FMT_D16}),o=cc.Class({name:"cc.RenderTexture",extends:s,statics:{DepthStencilFormat:a},ctor:function(){this._framebuffer=null},initWithSize:function(t,e,i){this.width=Math.floor(t||cc.visibleRect.width),this.height=Math.floor(e||cc.visibleRect.height),this._resetUnderlyingMipmaps();var s,a={colors:[this._texture]};this._depthStencilBuffer&&this._depthStencilBuffer.destroy(),i&&(s=new n.default.RenderBuffer(r.device,i,t,e),i===n.default.RB_FMT_D24S8?a.depthStencil=s:i===n.default.RB_FMT_S8?a.stencil=s:i===n.default.RB_FMT_D16&&(a.depth=s)),this._depthStencilBuffer=s,this._framebuffer&&this._framebuffer.destroy(),this._framebuffer=new n.default.FrameBuffer(r.device,t,e,a),this._packable=!1,this.loaded=!0,this.emit("load")},updateSize:function(t,e){this.width=Math.floor(t||cc.visibleRect.width),this.height=Math.floor(e||cc.visibleRect.height),this._resetUnderlyingMipmaps();var i=this._depthStencilBuffer;i&&i.update(this.width,this.height),this._framebuffer._width=t,this._framebuffer._height=e},drawTextureAt:function(t,e,i){t._image&&0!==t._image.width&&this._texture.updateSubImage({x:e,y:i,image:t._image,width:t.width,height:t.height,level:0,flipY:!1,premultiplyAlpha:t._premultiplyAlpha})},readPixels:function(t,e,i,n,r){if(!this._framebuffer||!this._texture)return t;e=e||0,i=i||0;var s=n||this.width,a=r||this.height;t=t||new Uint8Array(s*a*4);var o=cc.game._renderContext,c=o.getParameter(o.FRAMEBUFFER_BINDING);return o.bindFramebuffer(o.FRAMEBUFFER,this._framebuffer.getHandle()),o.readPixels(e,i,s,a,o.RGBA,o.UNSIGNED_BYTE,t),o.bindFramebuffer(o.FRAMEBUFFER,c),t},destroy:function(){this._super(),this._framebuffer&&(this._framebuffer.destroy(),this._framebuffer=null)}});cc.RenderTexture=e.exports=o}),{"../../renderer/gfx":265,"../renderer":180,"./CCTexture2D":73}],67:[(function(t,e){"use strict";var i=cc.Class({name:"cc.SceneAsset",extends:cc.Asset,properties:{scene:null,asyncLoadAssets:void 0}});cc.SceneAsset=i,e.exports=i}),{}],68:[(function(){"use strict";var t=cc.Class({name:"cc.Script",extends:cc.Asset});cc._Script=t;var e=cc.Class({name:"cc.JavaScript",extends:t});cc._JavaScript=e;var i=cc.Class({name:"cc.TypeScript",extends:t});cc._TypeScript=i}),{}],69:[(function(t,e){"use strict";var i=cc.Class({name:"cc.SpriteAtlas",extends:cc.Asset,properties:{_spriteFrames:{default:{}}},getTexture:function(){var t=Object.keys(this._spriteFrames);if(t.length>0){var e=this._spriteFrames[t[0]];return e?e.getTexture():null}return null},getSpriteFrame:function(t){var e=this._spriteFrames[t];return e?(e.name||(e.name=t),e):null},getSpriteFrames:function(){var t=[],e=this._spriteFrames;for(var i in e)t.push(this.getSpriteFrame(i));return t}});cc.SpriteAtlas=i,e.exports=i}),{}],70:[(function(t,e){"use strict";var i=t("../event/event-target"),n=[{u:0,v:0},{u:0,v:0},{u:0,v:0},{u:0,v:0}],r=cc.Class({name:"cc.SpriteFrame",extends:t("../assets/CCAsset"),mixins:[i],properties:{_textureSetter:{set:function(t){t&&this._texture!==t&&this._refreshTexture(t)}},insetTop:{get:function(){return this._capInsets[1]},set:function(t){this._capInsets[1]=t,this._texture&&this._calculateSlicedUV()}},insetBottom:{get:function(){return this._capInsets[3]},set:function(t){this._capInsets[3]=t,this._texture&&this._calculateSlicedUV()}},insetLeft:{get:function(){return this._capInsets[0]},set:function(t){this._capInsets[0]=t,this._texture&&this._calculateSlicedUV()}},insetRight:{get:function(){return this._capInsets[2]},set:function(t){this._capInsets[2]=t,this._texture&&this._calculateSlicedUV()}}},ctor:function(){i.call(this);var t=arguments[0],e=arguments[1],n=arguments[2],r=arguments[3],s=arguments[4];this._rect=null,this.uv=[],this._texture=null,this._original=null,this._offset=null,this._originalSize=null,this._rotated=!1,this._flipX=!1,this._flipY=!1,this.vertices=null,this._capInsets=[0,0,0,0],this.uvSliced=[],void 0!==t&&this.setTexture(t,e,n,r,s)},textureLoaded:function(){return this._texture&&this._texture.loaded},onTextureLoaded:function(t,e){return this.textureLoaded()?(t.call(e),!0):(this.once("load",t,e),this.ensureLoadTexture(),!1)},isRotated:function(){return this._rotated},setRotated:function(t){this._rotated=t,this._texture&&this._calculateUV()},isFlipX:function(){return this._flipX},isFlipY:function(){return this._flipY},setFlipX:function(t){this._flipX=t,this._texture&&this._calculateUV()},setFlipY:function(t){this._flipY=t,this._texture&&this._calculateUV()},getRect:function(){return cc.rect(this._rect)},setRect:function(t){this._rect=t,this._texture&&this._calculateUV()},getOriginalSize:function(){return cc.size(this._originalSize)},setOriginalSize:function(t){this._originalSize?(this._originalSize.width=t.width,this._originalSize.height=t.height):this._originalSize=cc.size(t)},getTexture:function(){return this._texture},_textureLoadedCallback:function(){var t=this._texture;if(t){var e=t.width,i=t.height;this._rect?this._checkRect(this._texture):this._rect=cc.rect(0,0,e,i),this._originalSize||this.setOriginalSize(cc.size(e,i)),this._offset||this.setOffset(cc.v2(0,0)),this._calculateUV(),this.emit("load")}},_refreshTexture:function(t){this._texture=t,t.loaded?this._textureLoadedCallback():t.once("load",this._textureLoadedCallback,this)},getOffset:function(){return cc.v2(this._offset)},setOffset:function(t){this._offset=cc.v2(t)},clone:function(){return new r(this._texture,this.getRect(),this._rotated,this.getOffset(),this.getOriginalSize())},setTexture:function(t,e,i,n,r){if(1!==arguments.length||t!==this._texture){if(this._rect=e||null,n?this.setOffset(n):this._offset=null,r?this.setOriginalSize(r):this._originalSize=null,this._rotated=i||!1,"string"!=typeof t)return t instanceof cc.Texture2D&&this._refreshTexture(t),!0;cc.errorID(3401)}},ensureLoadTexture:function(){this._texture&&(this._texture.loaded||(this._refreshTexture(this._texture),cc.assetManager.postLoadNative(this._texture)))},_checkRect:function(t){var e=this._rect,i=e.x,n=e.y;this._rotated?(i+=e.height,n+=e.width):(i+=e.width,n+=e.height),i>t.width&&cc.errorID(3300,t.nativeUrl+"/"+this.name,i,t.width),n>t.height&&cc.errorID(3400,t.nativeUrl+"/"+this.name,n,t.height)},_flipXY:function(t){if(this._flipX){var e=t[0];t[0]=t[1],t[1]=e,e=t[2],t[2]=t[3],t[3]=e}if(this._flipY){var i=t[0];t[0]=t[2],t[2]=i,i=t[1],t[1]=t[3],t[3]=i}},_calculateSlicedUV:function(){var t=this._rect,e=this._texture.width,i=this._texture.height,r=this._capInsets[0],s=this._capInsets[2],a=t.width-r-s,o=this._capInsets[1],c=this._capInsets[3],u=t.height-o-c,l=this.uvSliced;if(l.length=0,this._rotated){n[0].u=t.x/e,n[1].u=(t.x+c)/e,n[2].u=(t.x+c+u)/e,n[3].u=(t.x+t.height)/e,n[3].v=t.y/i,n[2].v=(t.y+r)/i,n[1].v=(t.y+r+a)/i,n[0].v=(t.y+t.width)/i,this._flipXY(n);for(var h=0;h<4;++h)for(var _=n[h],f=0;f<4;++f){var d=n[3-f];l.push({u:_.u,v:d.v})}}else{n[0].u=t.x/e,n[1].u=(t.x+r)/e,n[2].u=(t.x+r+a)/e,n[3].u=(t.x+t.width)/e,n[3].v=t.y/i,n[2].v=(t.y+o)/i,n[1].v=(t.y+o+u)/i,n[0].v=(t.y+t.height)/i,this._flipXY(n);for(var p=0;p<4;++p)for(var v=n[p],g=0;g<4;++g){var m=n[g];l.push({u:m.u,v:v.v})}}},_setDynamicAtlasFrame:function(t){t&&(this._original={_texture:this._texture,_x:this._rect.x,_y:this._rect.y},this._texture=t.texture,this._rect.x=t.x,this._rect.y=t.y,this._calculateUV())},_resetDynamicAtlasFrame:function(){this._original&&(this._rect.x=this._original._x,this._rect.y=this._original._y,this._texture=this._original._texture,this._original=null,this._texture.loaded?this._calculateUV():this.ensureLoadTexture())},_calculateUV:function(){var t=this._rect,e=this._texture,i=this.uv,n=e.width,r=e.height;if(this._rotated){var s=0===n?0:t.x/n,a=0===n?0:(t.x+t.height)/n,o=0===r?0:(t.y+t.width)/r,c=0===r?0:t.y/r;i[0]=s,i[1]=c,i[2]=s,i[3]=o,i[4]=a,i[5]=c,i[6]=a,i[7]=o}else{var u=0===n?0:t.x/n,l=0===n?0:(t.x+t.width)/n,h=0===r?0:(t.y+t.height)/r,_=0===r?0:t.y/r;i[0]=u,i[1]=h,i[2]=l,i[3]=h,i[4]=u,i[5]=_,i[6]=l,i[7]=_}if(this._flipX){var f=i[0];i[0]=i[2],i[2]=f,f=i[1],i[1]=i[3],i[3]=f,f=i[4],i[4]=i[6],i[6]=f,f=i[5],i[5]=i[7],i[7]=f}if(this._flipY){var d=i[0];i[0]=i[4],i[4]=d,d=i[1],i[1]=i[5],i[5]=d,d=i[2],i[2]=i[6],i[6]=d,d=i[3],i[3]=i[7],i[7]=d}var p=this.vertices;if(p){p.nu.length=0,p.nv.length=0;for(var v=0;v0?this._image=t.images[0]:void 0!==t.image&&(this._image=t.image,t.images||(_.length=0,t.images=_),t.images.push(t.image)),this._texture&&this._texture.update(t),this._hashDirty=!0},initWithElement:function(t){if(t)if(this._image=t,t.complete||t instanceof HTMLCanvasElement)this.handleLoadedTexture();else if(cc.sys.capabilities.imageBitmap&&t instanceof ImageBitmap)this._checkImageBitmap(this.handleLoadedTexture.bind(this));else{var e=this;t.addEventListener("load",(function(){e.handleLoadedTexture()})),t.addEventListener("error",(function(t){cc.warnID(3119,t.message)}))}},initWithData:function(t,e,i,n){var r=d();return r.image=t,r.images=[r.image],r.genMipmaps=this._genMipmaps,r.premultiplyAlpha=this._premultiplyAlpha,r.flipY=this._flipY,r.minFilter=h[this._minFilter],r.magFilter=h[this._magFilter],r.wrapS=this._wrapS,r.wrapT=this._wrapT,r.format=this._getGFXPixelFormat(e),r.width=i,r.height=n,this._texture?this._texture.update(r):this._texture=new s.Texture2D(s.device,r),this.width=i,this.height=n,this._updateFormat(),this._checkPackable(),this.loaded=!0,this.emit("load"),!0},getHtmlElementObj:function(){return this._image},destroy:function(){cc.sys.capabilities.imageBitmap&&this._image instanceof ImageBitmap&&this._image.close&&this._image.close(),this._packable&&cc.dynamicAtlasManager&&cc.dynamicAtlasManager.deleteAtlasTexture(this),this._image=null,this._texture&&this._texture.destroy(),this._super()},getPixelFormat:function(){return this._format},hasPremultipliedAlpha:function(){return this._premultiplyAlpha||!1},isAlphaAtlas:function(){return this._isAlphaAtlas},handleLoadedTexture:function(){if(this._image&&this._image.width&&this._image.height){this.width=this._image.width,this.height=this._image.height;var t=d();t.image=this._image,t.images=[t.image],t.width=this.width,t.height=this.height,t.genMipmaps=this._genMipmaps,t.format=this._getGFXPixelFormat(this._format),t.premultiplyAlpha=this._premultiplyAlpha,t.flipY=this._flipY,t.minFilter=h[this._minFilter],t.magFilter=h[this._magFilter],t.wrapS=this._wrapS,t.wrapT=this._wrapT,this._texture?this._texture.update(t):this._texture=new s.Texture2D(s.device,t),this._updateFormat(),this._checkPackable(),this.loaded=!0,this.emit("load"),cc.macro.CLEANUP_IMAGE_CACHE&&this._cleanupImageCache()}},_cleanupImageCache:function(){this._image instanceof HTMLImageElement?this._clearImage():cc.sys.capabilities.imageBitmap&&this._image instanceof ImageBitmap&&this._image.close&&this._image.close()},description:function(){return""},releaseTexture:function(){this._image=null,this._texture&&this._texture.destroy()},setWrapMode:function(t,e){if(this._wrapS!==t||this._wrapT!==e){var i=d();i.wrapS=t,i.wrapT=e,this.update(i)}},setFilters:function(t,e){if(this._minFilter!==t||this._magFilter!==e){var i=d();i.minFilter=t,i.magFilter=e,this.update(i)}},setFlipY:function(t){if(this._flipY!==t){var e=d();e.flipY=t,e.premultiplyAlpha=this._premultiplyAlpha,this.update(e)}},setPremultiplyAlpha:function(t){if(this._premultiplyAlpha!==t){var e=d();e.flipY=this._flipY,e.premultiplyAlpha=t,this.update(e)}},_updateFormat:function(){this._isAlphaAtlas=this._format===c.RGBA_ETC1||this._format===c.RGB_A_PVRTC_4BPPV1||this._format===c.RGB_A_PVRTC_2BPPV1},_checkPackable:function(){var t=cc.dynamicAtlasManager;if(t)if(this._isCompressed())this._packable=!1;else{var e=this.width,i=this.height;!this._image||e>t.maxFrameSize||i>t.maxFrameSize||this._getHash()!==t.Atlas.DEFAULT_HASH?this._packable=!1:this._image&&this._image instanceof HTMLCanvasElement&&(this._packable=!0)}},_getOpts:function(){var t=d();return t.width=this.width,t.height=this.height,t.genMipmaps=this._genMipmaps,t.format=this._format,t.premultiplyAlpha=this._premultiplyAlpha,t.anisotropy=this._anisotropy,t.flipY=this._flipY,t.minFilter=h[this._minFilter],t.magFilter=h[this._magFilter],t.mipFilter=h[this._mipFilter],t.wrapS=this._wrapS,t.wrapT=this._wrapT,t},_getGFXPixelFormat:function(t){return t===c.RGBA_ETC1?t=c.RGB_ETC1:t===c.RGB_A_PVRTC_4BPPV1?t=c.RGB_PVRTC_4BPPV1:t===c.RGB_A_PVRTC_2BPPV1&&(t=c.RGB_PVRTC_2BPPV1),t},_resetUnderlyingMipmaps:function(t){var e=this._getOpts();e.images=t||[null],this._texture?this._texture.update(e):this._texture=new s.Texture2D(s.device,e)},_serialize:!1,_deserialize:function(t){var e=t.split(","),i=e[0];if(i){var n=p._parseExt(i,this._format);if(n.bestExt)this._setRawAsset(n.bestExt),this._format=n.bestFormat;else{if(!n.defaultExt)throw new Error(cc.debug.getError(3121));this._setRawAsset(n.defaultExt),cc.warnID(3120,n.defaultExt,n.defaultExt)}}8===e.length&&(this._minFilter=parseInt(e[1]),this._magFilter=parseInt(e[2]),this._wrapS=parseInt(e[3]),this._wrapT=parseInt(e[4]),this._premultiplyAlpha=49===e[5].charCodeAt(0),this._genMipmaps=49===e[6].charCodeAt(0),this._packable=49===e[7].charCodeAt(0))},_getHash:function(){if(!this._hashDirty)return this._hash;var t=this._genMipmaps?1:0,e=this._premultiplyAlpha?1:0,i=this._flipY?1:0,n=this._minFilter===l.LINEAR?1:2,r=this._magFilter===l.LINEAR?1:2,s=this._wrapS===u.REPEAT?1:this._wrapS===u.CLAMP_TO_EDGE?2:3,a=this._wrapT===u.REPEAT?1:this._wrapT===u.CLAMP_TO_EDGE?2:3,o=this._format;return this._image,this._hash=Number(""+n+r+o+s+a+t+e+i),this._hashDirty=!1,this._hash},_isCompressed:function(){return this._formatc.RGBA32F},_clearImage:function(){this._image.src=""},_checkImageBitmap:function(t){var e=this,i=this._image,n=this._flipY,r=this._premultiplyAlpha;this._flipY!==i.flipY||this._premultiplyAlpha!==i.premultiplyAlpha?createImageBitmap(i,{imageOrientation:n!==i.flipY?"flipY":"none",premultiplyAlpha:r?"premultiply":"none"}).then((function(s){i.close&&i.close(),s.flipY=n,s.premultiplyAlpha=r,e._image=s,t()}),(function(t){cc.error(t.message)})):t()}});cc.Texture2D=e.exports=p}),{"../../renderer/gfx":265,"../assets/CCAsset":58,"../event/event-target":132,"../platform/CCClass":149,"../platform/id-generater":166,"../renderer":180}],74:[(function(t,e){"use strict";var i=t("./CCAsset"),n=t("../event/event-target"),r=cc.Class({name:"cc.VideoClip",extends:i,mixins:[n]});cc.VideoClip=r,e.exports=r}),{"../event/event-target":132,"./CCAsset":58}],75:[(function(t){"use strict";t("./CCAsset"),t("./CCFont"),t("./CCPrefab"),t("./CCAudioClip"),t("./CCVideoClip"),t("./CCScripts"),t("./CCSceneAsset"),t("./CCSpriteFrame"),t("./CCTexture2D"),t("./CCRenderTexture"),t("./CCTTFFont"),t("./CCSpriteAtlas"),t("./CCBitmapFont"),t("./CCLabelAtlas"),t("./CCTextAsset"),t("./CCJsonAsset"),t("./CCBufferAsset"),t("./material")}),{"./CCAsset":58,"./CCAudioClip":59,"./CCBitmapFont":60,"./CCBufferAsset":61,"./CCFont":62,"./CCJsonAsset":63,"./CCLabelAtlas":64,"./CCPrefab":65,"./CCRenderTexture":66,"./CCSceneAsset":67,"./CCScripts":68,"./CCSpriteAtlas":69,"./CCSpriteFrame":70,"./CCTTFFont":71,"./CCTextAsset":72,"./CCTexture2D":73,"./CCVideoClip":74,"./material":82}],76:[(function(t,e){"use strict";var i,n=(i=t("../CCAsset"))&&i.__esModule?i:{default:i},r=t("./effect-parser"),s=cc.Class({name:"cc.EffectAsset",extends:n.default,ctor:function(){this._effect=null},properties:{properties:Object,techniques:[],shaders:[]},onLoad:function(){if(cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS){for(var t=cc.renderer._forward._programLib,e=0;e=i.length)){var n=0,r=i.length;void 0!==e&&(n=e,r=e+1);for(var s=n;s=i.length)){var n=0,r=i.length;void 0!==e&&(n=e,r=e+1);for(var s=n;s=this._techniques.length?cc.warn("Can not switch to technique with index ["+t+"]"):this._technique=this._techniques[t]},c.clear=function(){this._techniques=[]},c.clone=function(){for(var t=[],e=0;ethis.maxSize||(this._clean(t),e[i][r].push(t),this.count++)}},s.clear=function(){this._pool={},this.count=0},s._clean=function(t){t._owner=null},r}(r.default));r.default.register("material",o);var c=o;i.default=c,e.exports=i.default}),{"../../utils/pool":225,"./utils":85}],84:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=o(t("./CCMaterial")),s=o(t("./effect-variant")),a=o(t("./material-pool"));function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i0},render:function(t){if(!(t=t||cc.director.getScene()))return null;this.node.getWorldMatrix(u),this.beforeDraw(),a.renderCamera(this._camera,t)},_onAlignWithScreen:function(){var t=cc.game.canvas.height/cc.view._scaleY;this._targetTexture&&(t=cc.visibleRect.height);var e=this._fov*cc.macro.RAD;this.node.z=t/(2*Math.tan(e/2)),e=2*Math.atan(Math.tan(e/2)/this.zoomRatio),this._camera.setFov(e),this._camera.setOrthoHeight(t/2/this.zoomRatio),this.node.setRotation(0,0,0,1)},beforeDraw:function(){if(this._camera){if(this._alignWithScreen)this._onAlignWithScreen();else{var t=this._fov*cc.macro.RAD;t=2*Math.atan(Math.tan(t/2)/this.zoomRatio),this._camera.setFov(t),this._camera.setOrthoHeight(this._orthoSize/this.zoomRatio)}this._camera.dirty=!0}}});cc.js.mixin(T.prototype,{getNodeToCameraTransform:function(t){var e=r.identity();return t.getWorldMatrix(l),this.containsNode(t)&&(this.getWorldToCameraMatrix(u),i.Mat4.mul(l,l,u)),r.fromMat4(e,l),e},getCameraToWorldPoint:function(t,e){return this.getScreenToWorldPoint(t,e)},getWorldToCameraPoint:function(t,e){return this.getWorldToScreenPoint(t,e)},getCameraToWorldMatrix:function(t){return this.getScreenToWorldMatrix2D(t)},getWorldToCameraMatrix:function(t){return this.getWorldToScreenMatrix2D(t)}}),e.exports=cc.Camera=T}),{"../../renderer/scene/camera":285,"../CCGame":24,"../geom-utils":void 0,"../renderer/index":180,"../renderer/render-flow":181,"../utils/affine-transform":215,"../value-types":238}],88:[(function(t,e){"use strict";cc.Collider.Box=cc.Class({properties:{_offset:cc.v2(0,0),_size:cc.size(100,100),offset:{tooltip:!1,get:function(){return this._offset},set:function(t){this._offset=t},type:cc.Vec2},size:{tooltip:!1,get:function(){return this._size},set:function(t){this._size.width=t.width<0?0:t.width,this._size.height=t.height<0?0:t.height},type:cc.Size}},resetInEditor:!1});var i=cc.Class({name:"cc.BoxCollider",extends:cc.Collider,mixins:[cc.Collider.Box],editor:!1});cc.BoxCollider=e.exports=i}),{}],89:[(function(t,e){"use strict";cc.Collider.Circle=cc.Class({properties:{_offset:cc.v2(0,0),_radius:50,offset:{tooltip:!1,get:function(){return this._offset},set:function(t){this._offset=t},type:cc.Vec2},radius:{tooltip:!1,get:function(){return this._radius},set:function(t){this._radius=t<0?0:t}}},resetInEditor:!1});var i=cc.Class({name:"cc.CircleCollider",extends:cc.Collider,mixins:[cc.Collider.Circle],editor:!1});cc.CircleCollider=e.exports=i}),{}],90:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Collider",extends:cc.Component,properties:{editing:{default:!1,serializable:!1,tooltip:!1},tag:{tooltip:!1,default:0,range:[0,1e7],type:cc.Integer}},onDisable:function(){cc.director.getCollisionManager().removeCollider(this)},onEnable:function(){cc.director.getCollisionManager().addCollider(this)}});cc.Collider=e.exports=i}),{}],91:[(function(t,e){"use strict";var i,n=(i=t("../value-types/vec2"))&&i.__esModule?i:{default:i},r=t("./CCContact"),s=r.CollisionType,a=t("../CCNode").EventType,o=new n.default;function c(t,e,i,n,r,s){var a=t.x,o=t.y,c=t.width,u=t.height,l=e.m,h=l[0],_=l[1],f=l[4],d=l[5],p=h*a+f*o+l[12],v=_*a+d*o+l[13],g=h*c,m=_*c,y=f*u,T=d*u;n.x=p,n.y=v,r.x=g+p,r.y=m+v,i.x=y+p,i.y=T+v,s.x=g+y+p,s.y=m+T+v}var u=cc.Class({mixins:[cc.EventTarget],properties:{enabled:!1,enabledDrawBoundingBox:!1},ctor:function(){this._contacts=[],this._colliders=[],this._debugDrawer=null,this._enabledDebugDraw=!1,cc.director._scheduler&&cc.director._scheduler.enableForTarget(this)},update:function(){if(this.enabled){var t,e,i=this._colliders;for(t=0,e=i.length;tR&&(R=O),Ow&&(w=D),D=0){e.splice(i,1);for(var n=this._contacts,r=n.length-1;r>=0;r--){var o=n[r];o.collider1!==t&&o.collider2!==t||(o.touching&&this._doCollide(s.CollisionExit,o),n.splice(r,1))}t.node.off(a.GROUP_CHANGED,this.onNodeGroupChanged,this)}else cc.errorID(6600)},onNodeGroupChanged:function(t){for(var e=t.getComponents(cc.Collider),i=0,n=e.length;i0){t.moveTo(s[0].x,s[0].y);for(var a=1;a>>1;r<=s;a=r+s>>>1){var o=t[a],c=o.constructor._executionOrder;if(c>i)s=a-1;else if(cn)s=a-1;else{if(!(u0&&(t.array.sort(u),this._invoke(t),t.array.length=0),this._invoke(this._zero),this._zero.array.length=0;var e=this._pos;e.array.length>0&&(e.array.sort(u),this._invoke(e),e.array.length=0)}}),h=cc.Class({extends:c,add:function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.array.push(t);else{var i=e<0?this._neg.array:this._pos.array,n=a(i,t);n<0&&i.splice(~n,0,t)}},remove:function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.fastRemove(t);else{var i=e<0?this._neg:this._pos,n=a(i.array,t);n>=0&&i.removeAt(n)}},invoke:function(t){this._neg.array.length>0&&this._invoke(this._neg,t),this._invoke(this._zero,t),this._pos.array.length>0&&this._invoke(this._pos,t)}});function _(t,e,i,n){var r="var a=it.array;for(it.i=0;it.i=0?n.fastRemoveAt(this._deferredComps,e):(!t.start||t._objFlags&r||this.startInvoker.remove(t),t.update&&this.updateInvoker.remove(t),t.lateUpdate&&this.lateUpdateInvoker.remove(t))},enableComp:function(t,e){if(!(t._objFlags&s)){if(t.onEnable){if(e)return void e.add(t);if(t.onEnable(),!t.node._activeInHierarchy)return}this._onEnabled(t)}},disableComp:function(t){t._objFlags&s&&(t.onDisable&&t.onDisable(),this._onDisabled(t))},_scheduleImmediate:function(t){"function"!=typeof t.start||t._objFlags&r||this.startInvoker.add(t),"function"==typeof t.update&&this.updateInvoker.add(t),"function"==typeof t.lateUpdate&&this.lateUpdateInvoker.add(t)},_deferredSchedule:function(){for(var t=this._deferredComps,e=0,i=t.length;e0&&(this._deferredSchedule(),this.startInvoker.invoke())},startPhase:function(){this._updating=!0,this.startInvoker.invoke(),this._startForNewComps()},updatePhase:function(t){this.updateInvoker.invoke(t)},lateUpdatePhase:function(t){this.lateUpdateInvoker.invoke(t),this._updating=!1,this._startForNewComps()}});e.exports=g}),{"./platform/CCClass":149,"./platform/CCObject":155,"./platform/js":170,"./utils/misc":223}],96:[(function(t,e){"use strict";var i=t("../../animation/animation-animator"),n=t("../../animation/animation-clip"),r=t("../event/event-target"),s=t("../platform/js"),a=function(t,e){return t===e},o=cc.Enum({PLAY:"play",STOP:"stop",PAUSE:"pause",RESUME:"resume",LASTFRAME:"lastframe",FINISHED:"finished"}),c=cc.Class({name:"cc.Animation",extends:t("./CCComponent"),mixins:[r],editor:!1,statics:{EventType:o},ctor:function(){cc.EventTarget.call(this),this._animator=null,this._nameToState=s.createMap(!0),this._didInit=!1,this._currentClip=null},properties:{_defaultClip:{default:null,type:n},defaultClip:{type:n,get:function(){return this._defaultClip},set:function(){},tooltip:!1},currentClip:{get:function(){return this._currentClip},set:function(t){this._currentClip=t},type:n,visible:!1},_writableClips:{get:function(){return this._clips},set:function(t){this._didInit=!1,this._clips=t,this._init()},type:[n]},_clips:{default:[],type:[n],tooltip:!1,visible:!0},playOnLoad:{default:!1,tooltip:!1}},start:function(){if(this.playOnLoad&&this._defaultClip&&(!this._animator||!this._animator.isPlaying)){var t=this.getAnimationState(this._defaultClip.name);this._animator.playState(t)}},onEnable:function(){this._animator&&this._animator.resume()},onDisable:function(){this._animator&&this._animator.pause()},onDestroy:function(){this.stop()},getClips:function(){return this._clips},play:function(t,e){var i=this.playAdditive(t,e);return this._animator.stopStatesExcept(i),i},playAdditive:function(t,e){this._init();var i=this.getAnimationState(t||this._defaultClip&&this._defaultClip.name);if(i){this.enabled=!0;var n=this._animator;n.isPlaying&&i.isPlaying?i.isPaused?n.resumeState(i):(n.stopState(i),n.playState(i,e)):n.playState(i,e),this.enabledInHierarchy||n.pause(),this.currentClip=i.clip}return i},stop:function(t){if(this._didInit)if(t){var e=this._nameToState[t];e&&this._animator.stopState(e)}else this._animator.stop()},pause:function(t){if(this._didInit)if(t){var e=this._nameToState[t];e&&this._animator.pauseState(e)}else this.enabled=!1},resume:function(t){if(this._didInit)if(t){var e=this.getAnimationState(t);e&&this._animator.resumeState(e)}else this.enabled=!0},setCurrentTime:function(t,e){if(this._init(),e){var i=this.getAnimationState(e);i&&this._animator.setStateTime(i,t)}else this._animator.setStateTime(t)},getAnimationState:function(t){this._init();var e=this._nameToState[t];return e&&!e.curveLoaded&&this._animator._reloadClip(e),e||null},hasAnimationState:function(t){return this._init(),!!this._nameToState[t]},addClip:function(t,e){if(t){this._init(),cc.js.array.contains(this._clips,t)||this._clips.push(t),e=e||t.name;var i=this._nameToState[e];if(i){if(i.clip===t)return i;var n=this._clips.indexOf(i.clip);-1!==n&&this._clips.splice(n,1)}var r=new cc.AnimationState(t,e);return this._nameToState[e]=r,r}cc.warnID(3900)},removeClip:function(t,e){if(t){var i;for(var n in this._init(),this._nameToState)if(i=this._nameToState[n],a(i.clip,t))break;if(t===this._defaultClip){if(!e)return void cc.warnID(3902);this._defaultClip=null}if(i&&i.isPlaying){if(!e)return void cc.warnID(3903);this.stop(i.name)}this._clips=this._clips.filter((function(e){return!a(e,t)})),i&&delete this._nameToState[i.name]}else cc.warnID(3901)},sample:function(t){if(this._init(),t){var e=this.getAnimationState(t);e&&e.sample()}else this._animator.sample()},on:function(t,e,i,n){this._init();var r=this._EventTargetOn(t,e,i,n);if("lastframe"===t){var s=this._nameToState;for(var a in s)s[a]._lastframeEventOn=!0}return r},off:function(t,e,i,n){if(this._init(),"lastframe"===t){var r=this._nameToState;for(var s in r)r[s]._lastframeEventOn=!1}this._EventTargetOff(t,e,i,n)},_init:function(){this._didInit||(this._didInit=!0,this._animator=new i(this.node,this),this._createStates())},_createStates:function(){this._nameToState=s.createMap(!0);for(var t=null,e=!1,i=0;i0&&(i=this.time/this.duration),i>=1&&(i=1),this.transition===r.COLOR){var n=this._fromColor.lerp(this._toColor,i);this._setTargetColor(n)}else this.transition===r.SCALE&&this._originalScale&&(e.scale=this._fromScale.lerp(this._toScale,i));1===i&&(this._transitionFinished=!0)}},_registerNodeEvent:function(){this.node.on(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this),this.node.on(cc.Node.EventType.TOUCH_MOVE,this._onTouchMove,this),this.node.on(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this),this.node.on(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancel,this),this.node.on(cc.Node.EventType.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.on(cc.Node.EventType.MOUSE_LEAVE,this._onMouseMoveOut,this)},_unregisterNodeEvent:function(){this.node.off(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this),this.node.off(cc.Node.EventType.TOUCH_MOVE,this._onTouchMove,this),this.node.off(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this),this.node.off(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancel,this),this.node.off(cc.Node.EventType.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.off(cc.Node.EventType.MOUSE_LEAVE,this._onMouseMoveOut,this)},_registerTargetEvent:function(t){t.on(cc.Node.EventType.SCALE_CHANGED,this._onTargetScaleChanged,this)},_unregisterTargetEvent:function(t){t.off(cc.Node.EventType.SCALE_CHANGED,this._onTargetScaleChanged,this)},_getTargetSprite:function(t){var e=null;return t&&(e=t.getComponent(cc.Sprite)),e},_applyTarget:function(){var t=this._getTarget();this._sprite=this._getTargetSprite(t),this._originalScale||(this._originalScale=cc.Vec2.ZERO),this._originalScale.x=t.scaleX,this._originalScale.y=t.scaleY,this._registerTargetEvent(t)},_onTouchBegan:function(t){this.interactable&&this.enabledInHierarchy&&(this._pressed=!0,this._updateState(),t.stopPropagation())},_onTouchMove:function(t){if(this.interactable&&this.enabledInHierarchy&&this._pressed){var e,i=t.touch,n=this.node._hitTest(i.getLocation()),a=this._getTarget(),o=this._originalScale;this.transition===r.SCALE&&o?n?(this._fromScale.x=o.x,this._fromScale.y=o.y,this._toScale.x=o.x*this.zoomScale,this._toScale.y=o.y*this.zoomScale,this._transitionFinished=!1):(this.time=0,this._transitionFinished=!0,a.setScale(o.x,o.y)):(e=n?s.PRESSED:s.NORMAL,this._applyTransition(e)),t.stopPropagation()}},_onTouchEnded:function(t){this.interactable&&this.enabledInHierarchy&&(this._pressed&&(cc.Component.EventHandler.emitEvents(this.clickEvents,t),this.node.emit("click",this)),this._pressed=!1,this._updateState(),t.stopPropagation())},_onTouchCancel:function(){this.interactable&&this.enabledInHierarchy&&(this._pressed=!1,this._updateState())},_onMouseMoveIn:function(){!this._pressed&&this.interactable&&this.enabledInHierarchy&&(this.transition!==r.SPRITE||this.hoverSprite)&&(this._hovered||(this._hovered=!0,this._updateState()))},_onMouseMoveOut:function(){this._hovered&&(this._hovered=!1,this._updateState())},_updateState:function(){var t=this._getButtonState();this._applyTransition(t),this._updateDisabledState()},_getButtonState:function(){return this.interactable?this._pressed?s.PRESSED:this._hovered?s.HOVER:s.NORMAL:s.DISABLED},_updateColorTransitionImmediately:function(t){var e=this._getStateColor(t);this._setTargetColor(e),this._fromColor=e.clone(),this._toColor=e},_updateColorTransition:function(t){if(t===s.DISABLED)this._updateColorTransitionImmediately(t);else{var e=this._getTarget(),i=this._getStateColor(t);this._fromColor=e.color.clone(),this._toColor=i,this.time=0,this._transitionFinished=!1}},_updateSpriteTransition:function(t){var e=this._getStateSprite(t);this._sprite&&e&&(this._sprite.spriteFrame=e)},_updateScaleTransition:function(t){t===s.PRESSED?this._zoomUp():this._zoomBack()},_zoomUp:function(){this._originalScale&&(this._fromScale.x=this._originalScale.x,this._fromScale.y=this._originalScale.y,this._toScale.x=this._originalScale.x*this.zoomScale,this._toScale.y=this._originalScale.y*this.zoomScale,this.time=0,this._transitionFinished=!1)},_zoomBack:function(){if(this._originalScale){var t=this._getTarget();this._fromScale.x=t.scaleX,this._fromScale.y=t.scaleY,this._toScale.x=this._originalScale.x,this._toScale.y=this._originalScale.y,this.time=0,this._transitionFinished=!1}},_updateTransition:function(t){t===r.COLOR?this._updateColorTransitionImmediately(s.NORMAL):t===r.SPRITE&&this._updateSpriteTransition(s.NORMAL),this._updateState()},_applyTransition:function(t){var e=this.transition;e===r.COLOR?this._updateColorTransition(t):e===r.SPRITE?this._updateSpriteTransition(t):e===r.SCALE&&this._updateScaleTransition(t)},_resizeNodeToTargetNode:!1,_updateDisabledState:function(t){if(this._sprite&&(this.enableAutoGrayEffect||t)){var e=!1;this.transition===r.SPRITE&&this.disabledSprite||(e=this.enableAutoGrayEffect&&!this.interactable),this._switchGrayMaterial(e,this._sprite)}}});cc.Button=e.exports=a}),{"../utils/gray-sprite-state":221,"./CCComponent":101}],100:[(function(t,e){"use strict";var i=t("../camera/CCCamera"),n=t("./CCComponent"),r=cc.Class({name:"cc.Canvas",extends:n,editor:!1,resetInEditor:!1,statics:{instance:null},properties:{_designResolution:cc.size(960,640),designResolution:{get:function(){return cc.size(this._designResolution)},set:function(t){this._designResolution.width=t.width,this._designResolution.height=t.height,this.applySettings()},tooltip:!1},_fitWidth:!1,_fitHeight:!0,fitHeight:{get:function(){return this._fitHeight},set:function(t){this._fitHeight!==t&&(this._fitHeight=t,this.applySettings())},tooltip:!1},fitWidth:{get:function(){return this._fitWidth},set:function(t){this._fitWidth!==t&&(this._fitWidth=t,this.applySettings())},tooltip:!1}},_fitDesignResolution:!1,__preload:function(){if(r.instance)return cc.warnID(6700,this.node.name,r.instance.node.name);r.instance=this,this.applySettings();var t=this.getComponent(cc.Widget);t&&t.updateAlignment()},start:function(){if(!i.main&&cc.game.renderType!==cc.game.RENDER_TYPE_CANVAS){var t=new cc.Node("Main Camera");t.parent=this.node,t.setSiblingIndex(0);var e=t.addComponent(i),n=i.ClearFlags;e.clearFlags=n.COLOR|n.DEPTH|n.STENCIL,e.depth=-1}},onDestroy:function(){r.instance===this&&(r.instance=null)},applySettings:function(){var t,e=cc.ResolutionPolicy;t=this.fitHeight&&this.fitWidth?e.SHOW_ALL:this.fitHeight||this.fitWidth?this.fitWidth?e.FIXED_WIDTH:e.FIXED_HEIGHT:e.NO_BORDER;var i=this._designResolution;cc.view.setDesignResolutionSize(i.width,i.height,t)}});cc.Canvas=e.exports=r}),{"../camera/CCCamera":87,"./CCComponent":101}],101:[(function(t,e){"use strict";var i=t("../platform/CCObject"),n=t("../platform/js"),r=new(t("../platform/id-generater"))("Comp"),s=(i.Flags.IsOnEnableCalled,i.Flags.IsOnLoadCalled),a=!!cc.ActionManager,o=cc.Class({name:"cc.Component",extends:i,ctor:function(){this._id=r.getNewId(),this.__eventTargets=[]},properties:{node:{default:null,visible:!1},name:{get:function(){if(this._name)return this._name;var t=cc.js.getClassName(this),e=t.lastIndexOf(".");return e>=0&&(t=t.slice(e+1)),this.node.name+"<"+t+">"},set:function(t){this._name=t},visible:!1},uuid:{get:function(){return this._id},visible:!1},__scriptAsset:!1,_enabled:!0,enabled:{get:function(){return this._enabled},set:function(t){if(this._enabled!==t&&(this._enabled=t,this.node._activeInHierarchy)){var e=cc.director._compScheduler;t?e.enableComp(this):e.disableComp(this)}},visible:!1,animatable:!0},enabledInHierarchy:{get:function(){return this._enabled&&this.node&&this.node._activeInHierarchy},visible:!1},_isOnLoadCalled:{get:function(){return this._objFlags&s}}},update:null,lateUpdate:null,__preload:null,onLoad:null,start:null,onEnable:null,onDisable:null,onDestroy:null,onFocusInEditor:null,onLostFocusInEditor:null,resetInEditor:null,addComponent:function(t){return this.node.addComponent(t)},getComponent:function(t){return this.node.getComponent(t)},getComponents:function(t){return this.node.getComponents(t)},getComponentInChildren:function(t){return this.node.getComponentInChildren(t)},getComponentsInChildren:function(t){return this.node.getComponentsInChildren(t)},_getLocalBounds:null,onRestore:null,destroy:function(){this._super()&&this._enabled&&this.node._activeInHierarchy&&cc.director._compScheduler.disableComp(this)},_onPreDestroy:function(){a&&cc.director.getActionManager().removeAllActionsFromTarget(this),this.unscheduleAllCallbacks();for(var t=this.__eventTargets,e=t.length-1;e>=0;--e){var i=t[e];i&&i.targetOff(this)}t.length=0,cc.director._nodeActivator.destroyComp(this),this.node._removeComponent(this)},_instantiate:function(t){return t||(t=cc.instantiate._clone(this,this)),t.node=null,t},schedule:function(t,e,i,n){cc.assertID(t,1619),e=e||0,cc.assertID(e>=0,1620),i=isNaN(i)?cc.macro.REPEAT_FOREVER:i,n=n||0;var r=cc.director.getScheduler(),s=r.isTargetPaused(this);r.schedule(t,this,e,i,n,s)},scheduleOnce:function(t,e){this.schedule(t,0,0,e)},unschedule:function(t){t&&cc.director.getScheduler().unschedule(t,this)},unscheduleAllCallbacks:function(){cc.director.getScheduler().unscheduleAllForTarget(this)}});o._requireComponent=null,o._executionOrder=0,n.value(o,"_registerEditorProps",(function(t,e){var i=e.requireComponent;i&&(t._requireComponent=i);var n=e.executionOrder;n&&"number"==typeof n&&(t._executionOrder=n)})),o.prototype.__scriptUuid="",cc.Component=e.exports=o}),{"../platform/CCObject":155,"../platform/id-generater":166,"../platform/js":170}],102:[(function(){"use strict";cc.Component.EventHandler=cc.Class({name:"cc.ClickEvent",properties:{target:{default:null,type:cc.Node},component:"",_componentId:"",_componentName:{get:function(){return this._genCompIdIfNeeded(),this._compId2Name(this._componentId)},set:function(t){this._componentId=this._compName2Id(t)}},handler:{default:""},customEventData:{default:""}},statics:{emitEvents:function(t){var e;if(arguments.length>0)for(var i=0,n=(e=new Array(arguments.length-1)).length;ip&&(p=v),w>=p&&(v=p,p=w,y=C.getAnchorPoint().y),this.horizontalDirection===o.RIGHT_TO_LEFT&&(S=1-C.anchorX),f=f+l*S*R+l*this.spacingX;var I=l*(1-S)*R;if(e){var M=f+I+l*(l>0?this.paddingRight:this.paddingLeft),O=this.horizontalDirection===o.LEFT_TO_RIGHT&&M>(1-c.x)*t,D=this.horizontalDirection===o.RIGHT_TO_LEFT&&M<-c.x*t;(O||D)&&(w>=p?(0===v&&(v=p),d+=v,v=p):(d+=p,v=w,p=0),f=_+l*(h+S*R),g++)}var L=i(C,d,g);t>=R+this.paddingLeft+this.paddingRight&&s&&C.setPosition(cc.v2(f,L));var P,N=1,F=0===p?w:p;this.verticalDirection===a.TOP_TO_BOTTOM?(m=m||this.node._contentSize.height,(P=L+(N=-1)*(F*y+this.paddingBottom))m&&(m=P)),f+=I}}return m},_getVerticalBaseHeight:function(t){var e=0,i=0;if(this.resizeMode===r.CONTAINER){for(var n=0;np&&(p=v),R>=p&&(v=p,p=R,y=C.getAnchorPoint().x),this.verticalDirection===a.TOP_TO_BOTTOM&&(S=1-C.anchorY),f=f+l*S*w+l*this.spacingY;var I=l*(1-S)*w;if(e){var M=f+I+l*(l>0?this.paddingTop:this.paddingBottom),O=this.verticalDirection===a.BOTTOM_TO_TOP&&M>(1-c.y)*t,D=this.verticalDirection===a.TOP_TO_BOTTOM&&M<-c.y*t;(O||D)&&(R>=p?(0===v&&(v=p),d+=v,v=p):(d+=p,v=R,p=0),f=_+l*(h+S*w),g++)}var L=i(C,d,g);t>=w+(this.paddingTop+this.paddingBottom)&&s&&C.setPosition(cc.v2(L,f));var P,N=1,F=0===p?R:p;this.horizontalDirection===o.RIGHT_TO_LEFT?(N=-1,m=m||this.node._contentSize.width,(P=L+N*(F*y+this.paddingLeft))m&&(m=P)),f+=I}}return m},_doLayoutBasic:function(){for(var t=this.node.children,e=null,i=0;i0&&this.node.children.find((function(t){return t.activeInHierarchy}))&&(this._doLayout(),this._layoutDirty=!1)}});cc.Layout=e.exports=c}),{"../CCNode":25,"./CCComponent":101}],105:[(function(t,e){"use strict";var i=a(t("../../renderer/gfx")),n=a(t("../value-types/mat4")),r=a(t("../value-types/vec2")),s=a(t("../assets/material/material-variant"));function a(t){return t&&t.__esModule?t:{default:t}}var o=t("../utils/misc"),c=t("./CCRenderComponent"),u=t("../renderer/render-flow"),l=t("../graphics/graphics"),h=new r.default,_=new n.default,f=[];function d(t,e,i){f.length=0;for(var n=2*Math.PI/i,r=0;r=0&&o.y>=0&&o.x<=s&&o.y<=a;else if(this.type===p.ELLIPSE){var u=s/2,l=a/2,f=o.x-.5*s,d=o.y-.5*a;c=f*f/(u*u)+d*d/(l*l)<1}return this.inverted&&(c=!c),c},markForRender:function(t){var e=u.FLAG_RENDER|u.FLAG_UPDATE_RENDER_DATA|u.FLAG_POST_RENDER;t?(this.node._renderFlag|=e,this.markForValidate()):t||(this.node._renderFlag&=~e)},disableRender:function(){this.node._renderFlag&=~(u.FLAG_RENDER|u.FLAG_UPDATE_RENDER_DATA|u.FLAG_POST_RENDER)}});cc.Mask=e.exports=v}),{"../../renderer/gfx":265,"../assets/material/material-variant":84,"../graphics/graphics":138,"../renderer/render-flow":181,"../utils/misc":223,"../value-types/mat4":240,"../value-types/vec2":247,"./CCRenderComponent":110}],106:[(function(t,e){"use strict";var i=t("../components/CCRenderComponent"),n=t("../../core/utils/blend-func"),r=cc.Class({name:"cc.MotionStreak",extends:i,mixins:[n],editor:!1,ctor:function(){this._points=[]},properties:{preview:{default:!1,editorOnly:!0,notify:!1,animatable:!1},_fadeTime:1,fadeTime:{get:function(){return this._fadeTime},set:function(t){this._fadeTime=t,this.reset()},animatable:!1,tooltip:!1},_minSeg:1,minSeg:{get:function(){return this._minSeg},set:function(t){this._minSeg=t},animatable:!1,tooltip:!1},_stroke:64,stroke:{get:function(){return this._stroke},set:function(t){this._stroke=t},animatable:!1,tooltip:!1},_texture:{default:null,type:cc.Texture2D},texture:{get:function(){return this._texture},set:function(t){this._texture!==t&&(this._texture=t,this._updateMaterial())},type:cc.Texture2D,animatable:!1,tooltip:!1},_color:cc.Color.WHITE,color:{get:function(){return this._color.clone()},set:function(t){this._color.equals(t)||this._color.set(t)},type:cc.Color,tooltip:!1},_fastMode:!1,fastMode:{get:function(){return this._fastMode},set:function(t){this._fastMode=t},animatable:!1,tooltip:!1}},onEnable:function(){this._super(),this.reset()},_updateMaterial:function(){var t=this.getMaterial(0);t&&t.setProperty("texture",this._texture),n.prototype._updateMaterial.call(this)},onFocusInEditor:!1,onLostFocusInEditor:!1,reset:function(){this._points.length=0,this._assembler&&this._assembler._renderData.clear()},lateUpdate:function(t){this._assembler&&this._assembler.update(this,t)}});cc.MotionStreak=e.exports=r}),{"../../core/utils/blend-func":218,"../components/CCRenderComponent":110}],107:[(function(t,e){"use strict";var i=cc.Enum({Unified:0,Free:1}),n=cc.Enum({Horizontal:0,Vertical:1}),r=cc.Enum({PAGE_TURNING:0}),s=cc.Class({name:"cc.PageView",extends:cc.ScrollView,editor:!1,ctor:function(){this._curPageIdx=0,this._lastPageIdx=0,this._pages=[],this._initContentPos=cc.v2(),this._scrollCenterOffsetX=[],this._scrollCenterOffsetY=[]},properties:{sizeMode:{default:i.Unified,type:i,tooltip:!1,notify:function(){this._syncSizeMode()}},direction:{default:n.Horizontal,type:n,tooltip:!1,notify:function(){this._syncScrollDirection()}},scrollThreshold:{default:.5,type:cc.Float,slide:!0,range:[0,1,.01],tooltip:!1},autoPageTurningThreshold:{default:100,type:cc.Float,tooltip:!1},pageTurningEventTiming:{default:.1,type:cc.Float,range:[0,1,.01],tooltip:!1},indicator:{default:null,type:cc.PageViewIndicator,tooltip:!1,notify:function(){this.indicator&&this.indicator.setPageView(this)}},pageTurningSpeed:{default:.3,type:cc.Float,tooltip:!1},pageEvents:{default:[],type:cc.Component.EventHandler,tooltip:!1}},statics:{SizeMode:i,Direction:n,EventType:r},onEnable:function(){this._super(),this.node.on(cc.Node.EventType.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.on("scroll-ended-with-threshold",this._dispatchPageTurningEvent,this)},onDisable:function(){this._super(),this.node.off(cc.Node.EventType.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.off("scroll-ended-with-threshold",this._dispatchPageTurningEvent,this)},onLoad:function(){this._initPages(),this.indicator&&this.indicator.setPageView(this)},getCurrentPageIndex:function(){return this._curPageIdx},setCurrentPageIndex:function(t){this.scrollToPage(t,!0)},getPages:function(){return this._pages},addPage:function(t){t&&-1===this._pages.indexOf(t)&&this.content&&(this.content.addChild(t),this._pages.push(t),this._updatePageView())},insertPage:function(t,e){e<0||!t||-1!==this._pages.indexOf(t)||!this.content||(e>=this._pages.length?this.addPage(t):(this._pages.splice(e,0,t),this.content.addChild(t),this._updatePageView()))},removePage:function(t){if(t&&this.content){var e=this._pages.indexOf(t);-1!==e?this.removePageAtIndex(e):cc.warnID(4300,t.name)}},removePageAtIndex:function(t){var e=this._pages;if(!(t<0||t>=e.length)){var i=e[t];i&&(this.content.removeChild(i),e.splice(t,1),this._updatePageView())}},removeAllPages:function(){if(this.content){for(var t=this._pages,e=0,i=t.length;e=this._pages.length||(e=void 0!==e?e:.3,this._curPageIdx=t,this.scrollToOffset(this._moveOffsetValue(t),e,!0),this.indicator&&this.indicator._changedState())},getScrollEndedEventTiming:function(){return this.pageTurningEventTiming},_syncScrollDirection:function(){this.horizontal=this.direction===n.Horizontal,this.vertical=this.direction===n.Vertical},_syncSizeMode:function(){if(this.content){var t=this.content.getComponent(cc.Layout);if(t){if(this.sizeMode===i.Free&&this._pages.length>0){var e=this._pages[this._pages.length-1];this.direction===n.Horizontal?(t.paddingLeft=(this._view.width-this._pages[0].width)/2,t.paddingRight=(this._view.width-e.width)/2):this.direction===n.Vertical&&(t.paddingTop=(this._view.height-this._pages[0].height)/2,t.paddingBottom=(this._view.height-e.height)/2)}t.updateLayout()}}},_updatePageView:function(){var t=this.content.getComponent(cc.Layout);t&&t.enabled&&t.updateLayout();var e=this._pages.length;this._curPageIdx>=e&&(this._curPageIdx=0===e?0:e-1,this._lastPageIdx=this._curPageIdx);for(var i=this._initContentPos,r=0;r=0||this._pages.push(i)}this._syncScrollDirection(),this._syncSizeMode(),this._updatePageView()}},_dispatchPageTurningEvent:function(){this._lastPageIdx!==this._curPageIdx&&(this._lastPageIdx=this._curPageIdx,cc.Component.EventHandler.emitEvents(this.pageEvents,this,r.PAGE_TURNING),this.node.emit("page-turning",this))},_isScrollable:function(t,e,r){if(this.sizeMode===i.Free){var s,a;if(this.direction===n.Horizontal)return s=this._scrollCenterOffsetX[e],a=this._scrollCenterOffsetX[r],Math.abs(t.x)>=Math.abs(s-a)*this.scrollThreshold;if(this.direction===n.Vertical)return s=this._scrollCenterOffsetY[e],a=this._scrollCenterOffsetY[r],Math.abs(t.y)>=Math.abs(s-a)*this.scrollThreshold}else{if(this.direction===n.Horizontal)return Math.abs(t.x)>=this._view.width*this.scrollThreshold;if(this.direction===n.Vertical)return Math.abs(t.y)>=this._view.height*this.scrollThreshold}},_isQuicklyScrollable:function(t){if(this.direction===n.Horizontal){if(Math.abs(t.x)>this.autoPageTurningThreshold)return!0}else if(this.direction===n.Vertical&&Math.abs(t.y)>this.autoPageTurningThreshold)return!0;return!1},_moveOffsetValue:function(t){var e=cc.v2(0,0);return this.sizeMode===i.Free?this.direction===n.Horizontal?e.x=this._scrollCenterOffsetX[t]:this.direction===n.Vertical&&(e.y=this._scrollCenterOffsetY[t]):this.direction===n.Horizontal?e.x=t*this._view.width:this.direction===n.Vertical&&(e.y=t*this._view.height),e},_getDragDirection:function(t){return this.direction===n.Horizontal?0===t.x?0:t.x>0?1:-1:this.direction===n.Vertical?0===t.y?0:t.y<0?1:-1:void 0},_handleReleaseLogic:function(){this._autoScrollToPage(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent("scroll-ended"))},_autoScrollToPage:function(){if(this._startBounceBackIfNeeded()){var t=this._getHowMuchOutOfBoundary();((t=this._clampDelta(t)).x>0||t.y<0)&&(this._curPageIdx=0===this._pages.length?0:this._pages.length-1),(t.x<0||t.y>0)&&(this._curPageIdx=0),this.indicator&&this.indicator._changedState()}else{var e=this._touchBeganPosition.sub(this._touchEndPosition),i=this._curPageIdx,n=i+this._getDragDirection(e),r=this.pageTurningSpeed*Math.abs(i-n);if(n=t.length)){for(var i=0;it.length)for(i=0;i0;--i){var n=t[i-1];this.node.removeChild(n),t.splice(i-1,1)}this._layout&&this._layout.enabledInHierarchy&&this._layout.updateLayout(),this._changedState()}}}});cc.PageViewIndicator=e.exports=n}),{"./CCComponent":101}],109:[(function(t,e){"use strict";var i=t("../utils/misc"),n=t("./CCComponent"),r=cc.Enum({HORIZONTAL:0,VERTICAL:1,FILLED:2}),s=cc.Class({name:"cc.ProgressBar",extends:n,editor:!1,_initBarSprite:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e=this.node.getContentSize(),i=this.node.getAnchorPoint(),n=t.getContentSize();t.parent===this.node&&this.node.setContentSize(n),this.barSprite.fillType===cc.Sprite.FillType.RADIAL&&(this.mode=r.FILLED);var s=t.getContentSize();if(this.mode===r.HORIZONTAL?this.totalLength=s.width:this.mode===r.VERTICAL?this.totalLength=s.height:this.totalLength=this.barSprite.fillRange,t.parent===this.node){var a=-e.width*i.x;t.setPosition(cc.v2(a,0))}}},_updateBarStatus:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e,n,s,a=t.getAnchorPoint(),o=t.getContentSize(),c=t.getPosition(),u=cc.v2(0,.5),l=i.clamp01(this.progress),h=this.totalLength*l;switch(this.mode){case r.HORIZONTAL:this.reverse&&(u=cc.v2(1,.5)),e=cc.size(h,o.height),n=this.totalLength,s=o.height;break;case r.VERTICAL:u=this.reverse?cc.v2(.5,1):cc.v2(.5,0),e=cc.size(o.width,h),n=o.width,s=this.totalLength}if(this.mode===r.FILLED)this.barSprite.type!==cc.Sprite.Type.FILLED?cc.warn("ProgressBar FILLED mode only works when barSprite's Type is FILLED!"):(this.reverse&&(h*=-1),this.barSprite.fillRange=h);else if(this.barSprite.type!==cc.Sprite.Type.FILLED){var _=u.x-a.x,f=u.y-a.y,d=cc.v2(n*_,s*f);t.setPosition(c.x+d.x,c.y+d.y),t.setAnchorPoint(u),t.setContentSize(e)}else cc.warn("ProgressBar non-FILLED mode only works when barSprite's Type is non-FILLED!")}},properties:{barSprite:{default:null,type:cc.Sprite,tooltip:!1,notify:function(){this._initBarSprite()},animatable:!1},mode:{default:r.HORIZONTAL,type:r,tooltip:!1,notify:function(){if(this.barSprite){var t=this.barSprite.node;if(!t)return;var e=t.getContentSize();this.mode===r.HORIZONTAL?this.totalLength=e.width:this.mode===r.VERTICAL?this.totalLength=e.height:this.mode===r.FILLED&&(this.totalLength=this.barSprite.fillRange)}},animatable:!1},_N$totalLength:1,totalLength:{range:[0,Number.MAX_VALUE],tooltip:!1,get:function(){return this._N$totalLength},set:function(t){this.mode===r.FILLED&&(t=i.clamp01(t)),this._N$totalLength=t,this._updateBarStatus()}},progress:{default:1,type:cc.Float,range:[0,1,.1],slide:!0,tooltip:!1,notify:function(){this._updateBarStatus()}},reverse:{default:!1,tooltip:!1,notify:function(){this.barSprite&&(this.barSprite.fillStart=1-this.barSprite.fillStart),this._updateBarStatus()},animatable:!1}},statics:{Mode:r}});cc.ProgressBar=e.exports=s}),{"../utils/misc":223,"./CCComponent":101}],110:[(function(t,e){"use strict";var i=s(t("../renderer/assembler")),n=s(t("../assets/material/material-variant")),r=t("../value-types");function s(t){return t&&t.__esModule?t:{default:t}}var a=t("./CCComponent"),o=t("../renderer/render-flow"),c=t("../assets/material/CCMaterial"),u=new r.Color,l=cc.Class({name:"RenderComponent",extends:a,editor:!1,properties:{_materials:{default:[],type:c},materials:{get:function(){return this._materials},set:function(t){this._materials=t,this._activateMaterial()},type:[c],displayName:"Materials",animatable:!1}},ctor:function(){this._vertsDirty=!0,this._assembler=null},_resetAssembler:function(){i.default.init(this),this._updateColor(),this.setVertsDirty()},__preload:function(){this._resetAssembler(),this._activateMaterial()},onEnable:function(){this.node._renderComponent&&(this.node._renderComponent.enabled=!1),this.node._renderComponent=this,this.node._renderFlag|=o.FLAG_OPACITY_COLOR,this.setVertsDirty()},onDisable:function(){this.node._renderComponent=null,this.disableRender()},onDestroy:function(){for(var t=this._materials,e=0;e=this._materials.length)return null;var e=this._materials[t];if(!e)return null;var i=n.default.create(e,this);return i!==e&&this.setMaterial(t,i),i},getMaterials:function(){for(var t=this._materials,e=0;e0?n:-n)),i*(e/r)},_calculatePosition:function(t,e,r,s,a,o){var c=t-e;a&&(c+=Math.abs(a));var u=0;c&&(u=s/c,u=i.clamp01(u));var l=(r-o)*u;return this.direction===n.VERTICAL?cc.v2(0,l):cc.v2(l,0)},_updateLength:function(t){if(this.handle){var e=this.handle.node,i=e.getContentSize();e.setAnchorPoint(cc.v2(0,0)),this.direction===n.HORIZONTAL?e.setContentSize(t,i.height):e.setContentSize(i.width,t)}},_processAutoHide:function(t){if(this.enableAutoHide&&!(this._autoHideRemainingTime<=0)&&!this._touching&&(this._autoHideRemainingTime-=t,this._autoHideRemainingTime<=this.autoHideTime)){this._autoHideRemainingTime=Math.max(0,this._autoHideRemainingTime);var e=this._opacity*(this._autoHideRemainingTime/this.autoHideTime);this._setOpacity(e)}},start:function(){this.enableAutoHide&&this._setOpacity(0)},hide:function(){this._autoHideRemainingTime=0,this._setOpacity(0)},show:function(){this._autoHideRemainingTime=this.autoHideTime,this._setOpacity(this._opacity)},update:function(t){this._processAutoHide(t)}});cc.Scrollbar=e.exports=r}),{"../utils/misc":223,"./CCComponent":101}],113:[(function(t,e){"use strict";var i=t("../CCNode").EventType,n=cc.v2(),r=cc.v2(),s=function(){return(new Date).getMilliseconds()},a=cc.Enum({SCROLL_TO_TOP:0,SCROLL_TO_BOTTOM:1,SCROLL_TO_LEFT:2,SCROLL_TO_RIGHT:3,SCROLLING:4,BOUNCE_TOP:5,BOUNCE_BOTTOM:6,BOUNCE_LEFT:7,BOUNCE_RIGHT:8,SCROLL_ENDED:9,TOUCH_UP:10,AUTOSCROLL_ENDED_WITH_THRESHOLD:11,SCROLL_BEGAN:12}),o={"scroll-to-top":a.SCROLL_TO_TOP,"scroll-to-bottom":a.SCROLL_TO_BOTTOM,"scroll-to-left":a.SCROLL_TO_LEFT,"scroll-to-right":a.SCROLL_TO_RIGHT,scrolling:a.SCROLLING,"bounce-bottom":a.BOUNCE_BOTTOM,"bounce-left":a.BOUNCE_LEFT,"bounce-right":a.BOUNCE_RIGHT,"bounce-top":a.BOUNCE_TOP,"scroll-ended":a.SCROLL_ENDED,"touch-up":a.TOUCH_UP,"scroll-ended-with-threshold":a.AUTOSCROLL_ENDED_WITH_THRESHOLD,"scroll-began":a.SCROLL_BEGAN},c=cc.Class({name:"cc.ScrollView",extends:t("./CCViewGroup"),editor:!1,ctor:function(){this._topBoundary=0,this._bottomBoundary=0,this._leftBoundary=0,this._rightBoundary=0,this._touchMoveDisplacements=[],this._touchMoveTimeDeltas=[],this._touchMovePreviousTimestamp=0,this._touchMoved=!1,this._autoScrolling=!1,this._autoScrollAttenuate=!1,this._autoScrollStartPosition=cc.v2(0,0),this._autoScrollTargetDelta=cc.v2(0,0),this._autoScrollTotalTime=0,this._autoScrollAccumulatedTime=0,this._autoScrollCurrentlyOutOfBoundary=!1,this._autoScrollBraking=!1,this._autoScrollBrakingStartPosition=cc.v2(0,0),this._outOfBoundaryAmount=cc.v2(0,0),this._outOfBoundaryAmountDirty=!0,this._stopMouseWheel=!1,this._mouseWheelEventElapsedTime=0,this._isScrollEndedWithThresholdEventFired=!1,this._scrollEventEmitMask=0,this._isBouncing=!1,this._scrolling=!1},properties:{content:{default:void 0,type:cc.Node,tooltip:!1,formerlySerializedAs:"content",notify:function(){this._calculateBoundary()}},horizontal:{default:!0,animatable:!1,tooltip:!1},vertical:{default:!0,animatable:!1,tooltip:!1},inertia:{default:!0,tooltip:!1},brake:{default:.5,type:cc.Float,range:[0,1,.1],tooltip:!1},elastic:{default:!0,animatable:!1,tooltip:!1},bounceDuration:{default:1,range:[0,10],tooltip:!1},horizontalScrollBar:{default:void 0,type:cc.Scrollbar,tooltip:!1,notify:function(){this.horizontalScrollBar&&(this.horizontalScrollBar.setTargetScrollView(this),this._updateScrollBar(0))},animatable:!1},verticalScrollBar:{default:void 0,type:cc.Scrollbar,tooltip:!1,notify:function(){this.verticalScrollBar&&(this.verticalScrollBar.setTargetScrollView(this),this._updateScrollBar(0))},animatable:!1},scrollEvents:{default:[],type:cc.Component.EventHandler,tooltip:!1},cancelInnerEvents:{default:!0,animatable:!1,tooltip:!1},_view:{get:function(){if(this.content)return this.content.parent}}},statics:{EventType:a},scrollToBottom:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i,!0)},scrollToTop:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,1),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToTopLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToTopRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToBottomLeft:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(0,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToBottomRight:function(t,e){var i=this._calculateMovePercentDelta({anchor:cc.v2(1,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},scrollToOffset:function(t,e,i){var n=this.getMaxScrollOffset(),r=cc.v2(0,0);0===n.x?r.x=0:r.x=t.x/n.x,0===n.y?r.y=1:r.y=(n.y-t.y)/n.y,this.scrollTo(r,e,i)},getScrollOffset:function(){var t=this._getContentTopBoundary()-this._topBoundary,e=this._getContentLeftBoundary()-this._leftBoundary;return cc.v2(e,t)},getMaxScrollOffset:function(){var t=this._view.getContentSize(),e=this.content.getContentSize(),i=e.width-t.width,n=e.height-t.height;return i=i>=0?i:0,n=n>=0?n:0,cc.v2(i,n)},scrollToPercentHorizontal:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(t,0),applyToHorizontal:!0,applyToVertical:!1});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},scrollTo:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(t),applyToHorizontal:!0,applyToVertical:!0});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},scrollToPercentVertical:function(t,e,i){var n=this._calculateMovePercentDelta({anchor:cc.v2(0,t),applyToHorizontal:!1,applyToVertical:!0});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},stopAutoScroll:function(){this._autoScrolling=!1,this._autoScrollAccumulatedTime=this._autoScrollTotalTime},setContentPosition:function(t){t.fuzzyEquals(this.getContentPosition(),1e-4)||(this.content.setPosition(t),this._outOfBoundaryAmountDirty=!0)},getContentPosition:function(){return this.content.getPosition()},isScrolling:function(){return this._scrolling},isAutoScrolling:function(){return this._autoScrolling},_registerEvent:function(){this.node.on(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this,!0),this.node.on(cc.Node.EventType.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.on(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this,!0),this.node.on(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.on(cc.Node.EventType.MOUSE_WHEEL,this._onMouseWheel,this,!0)},_unregisterEvent:function(){this.node.off(cc.Node.EventType.TOUCH_START,this._onTouchBegan,this,!0),this.node.off(cc.Node.EventType.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.off(cc.Node.EventType.TOUCH_END,this._onTouchEnded,this,!0),this.node.off(cc.Node.EventType.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.off(cc.Node.EventType.MOUSE_WHEEL,this._onMouseWheel,this,!0)},_onMouseWheel:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){var i=cc.v2(0,0),n=-.1;cc.sys.os===cc.sys.OS_WINDOWS&&cc.sys.browserType===cc.sys.BROWSER_TYPE_FIREFOX&&(n=-.1/3),this.vertical?i=cc.v2(0,t.getScrollY()*n):this.horizontal&&(i=cc.v2(t.getScrollY()*n,0)),this._mouseWheelEventElapsedTime=0,this._processDeltaMove(i),this._stopMouseWheel||(this._handlePressLogic(),this.schedule(this._checkMouseWheel,1/60),this._stopMouseWheel=!0),this._stopPropagationIfTargetIsMe(t)}},_checkMouseWheel:function(t){if(!this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4))return this._processInertiaScroll(),this.unschedule(this._checkMouseWheel),this._dispatchEvent("scroll-ended"),void(this._stopMouseWheel=!1);this._mouseWheelEventElapsedTime+=t,this._mouseWheelEventElapsedTime>.1&&(this._onScrollBarTouchEnded(),this.unschedule(this._checkMouseWheel),this._dispatchEvent("scroll-ended"),this._stopMouseWheel=!1)},_calculateMovePercentDelta:function(t){var e=t.anchor,i=t.applyToHorizontal,n=t.applyToVertical;this._calculateBoundary(),e=e.clampf(cc.v2(0,0),cc.v2(1,1));var r=this._view.getContentSize(),s=this.content.getContentSize(),a=this._getContentBottomBoundary()-this._bottomBoundary;a=-a;var o=this._getContentLeftBoundary()-this._leftBoundary;o=-o;var c=cc.v2(0,0),u=0;return i&&(u=s.width-r.width,c.x=o-u*e.x),n&&(u=s.height-r.height,c.y=a-u*e.y),c},_moveContentToTopLeft:function(t){var e=this.content.getContentSize(),i=this._getContentBottomBoundary()-this._bottomBoundary;i=-i;var n=cc.v2(0,0),r=0,s=this._getContentLeftBoundary()-this._leftBoundary;s=-s,e.height7&&!this._touchMoved&&t.target!==this.node){var n=new cc.Event.EventTouch(t.getTouches(),t.bubbles);n.type=cc.Node.EventType.TOUCH_CANCEL,n.touch=t.touch,n.simulate=!0,t.target.dispatchEvent(n),this._touchMoved=!0}this._stopPropagationIfTargetIsMe(t)}}},_onTouchEnded:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){this._dispatchEvent("touch-up");var i=t.touch;this.content&&this._handleReleaseLogic(i),this._touchMoved?t.stopPropagation():this._stopPropagationIfTargetIsMe(t)}},_onTouchCancelled:function(t,e){if(this.enabledInHierarchy&&!this.hasNestedViewGroup(t,e)){if(!t.simulate){var i=t.touch;this.content&&this._handleReleaseLogic(i)}this._stopPropagationIfTargetIsMe(t)}},_processDeltaMove:function(t){this._scrollChildren(t),this._gatherTouchMove(t)},_getLocalAxisAlignDelta:function(t){return this.node.convertToNodeSpaceAR(t.getLocation(),n),this.node.convertToNodeSpaceAR(t.getPreviousLocation(),r),n.sub(r)},_handleMoveLogic:function(t){var e=this._getLocalAxisAlignDelta(t);this._processDeltaMove(e)},_scrollChildren:function(t){var e,i=t=this._clampDelta(t);this.elastic&&(e=this._getHowMuchOutOfBoundary(),i.x*=0===e.x?1:.5,i.y*=0===e.y?1:.5),this.elastic||(e=this._getHowMuchOutOfBoundary(i),i=i.add(e));var n="",r="";this.vertical&&(i.y>0?this.content.y-this.content.anchorY*this.content.height+i.y>=this._bottomBoundary&&(n="scroll-to-bottom"):i.y<0&&this.content.y-this.content.anchorY*this.content.height+this.content.height+i.y<=this._topBoundary&&(n="scroll-to-top")),this.horizontal&&(i.x<0?this.content.x-this.content.anchorX*this.content.width+this.content.width+i.x<=this._rightBoundary&&(r="scroll-to-right"):i.x>0&&this.content.x-this.content.anchorX*this.content.width+i.x>=this._leftBoundary&&(r="scroll-to-left")),this._moveContent(i,!1),(this.horizontal&&0!==i.x||this.vertical&&0!==i.y)&&(this._scrolling||(this._scrolling=!0,this._dispatchEvent("scroll-began")),this._dispatchEvent("scrolling")),""!==n&&this._dispatchEvent(n),""!==r&&this._dispatchEvent(r)},_handlePressLogic:function(){this._autoScrolling&&this._dispatchEvent("scroll-ended"),this._autoScrolling=!1,this._isBouncing=!1,this._touchMovePreviousTimestamp=s(),this._touchMoveDisplacements.length=0,this._touchMoveTimeDeltas.length=0,this._onScrollBarTouchBegan()},_clampDelta:function(t){var e=this.content.getContentSize(),i=this._view.getContentSize();return e.width=5;)this._touchMoveDisplacements.shift(),this._touchMoveTimeDeltas.shift();this._touchMoveDisplacements.push(t);var e=s();this._touchMoveTimeDeltas.push((e-this._touchMovePreviousTimestamp)/1e3),this._touchMovePreviousTimestamp=e},_startBounceBackIfNeeded:function(){if(!this.elastic)return!1;var t=this._getHowMuchOutOfBoundary();if((t=this._clampDelta(t)).fuzzyEquals(cc.v2(0,0),1e-4))return!1;var e=Math.max(this.bounceDuration,0);return this._startAutoScroll(t,e,!0),this._isBouncing||(t.y>0&&this._dispatchEvent("bounce-top"),t.y<0&&this._dispatchEvent("bounce-bottom"),t.x>0&&this._dispatchEvent("bounce-right"),t.x<0&&this._dispatchEvent("bounce-left"),this._isBouncing=!0),!0},_processInertiaScroll:function(){if(!this._startBounceBackIfNeeded()&&this.inertia){var t=this._calculateTouchMoveVelocity();!t.fuzzyEquals(cc.v2(0,0),1e-4)&&this.brake<1&&this._startInertiaScroll(t)}this._onScrollBarTouchEnded()},_handleReleaseLogic:function(t){var e=this._getLocalAxisAlignDelta(t);this._gatherTouchMove(e),this._processInertiaScroll(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent("scroll-ended"))},_isOutOfBoundary:function(){return!this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4)},_isNecessaryAutoScrollBrake:function(){if(this._autoScrollBraking)return!0;if(this._isOutOfBoundary()){if(!this._autoScrollCurrentlyOutOfBoundary)return this._autoScrollCurrentlyOutOfBoundary=!0,this._autoScrollBraking=!0,this._autoScrollBrakingStartPosition=this.getContentPosition(),!0}else this._autoScrollCurrentlyOutOfBoundary=!1;return!1},getScrollEndedEventTiming:function(){return 1e-4},_processAutoScrolling:function(t){var e=this._isNecessaryAutoScrollBrake(),i=e?.05:1;this._autoScrollAccumulatedTime+=t*(1/i);var n,r=Math.min(1,this._autoScrollAccumulatedTime/this._autoScrollTotalTime);this._autoScrollAttenuate&&(n=r,r=(n-=1)*n*n*n*n+1);var s=this._autoScrollStartPosition.add(this._autoScrollTargetDelta.mul(r)),a=Math.abs(r-1)<=1e-4;if(Math.abs(r-1)<=this.getScrollEndedEventTiming()&&!this._isScrollEndedWithThresholdEventFired&&(this._dispatchEvent("scroll-ended-with-threshold"),this._isScrollEndedWithThresholdEventFired=!0),this.elastic){var o=s.sub(this._autoScrollBrakingStartPosition);e&&(o=o.mul(i)),s=this._autoScrollBrakingStartPosition.add(o)}else{var c=s.sub(this.getContentPosition()),u=this._getHowMuchOutOfBoundary(c);u.fuzzyEquals(cc.v2(0,0),1e-4)||(s=s.add(u),a=!0)}a&&(this._autoScrolling=!1);var l=s.sub(this.getContentPosition());this._moveContent(this._clampDelta(l),a),this._dispatchEvent("scrolling"),this._autoScrolling||(this._isBouncing=!1,this._scrolling=!1,this._dispatchEvent("scroll-ended"))},_startInertiaScroll:function(t){var e=t.mul(.7);this._startAttenuatingAutoScroll(e,t)},_calculateAttenuatedFactor:function(t){return this.brake<=0?1-this.brake:(1-this.brake)*(1/(1+14e-6*t+t*t*8e-9))},_startAttenuatingAutoScroll:function(t,e){var i=this._calculateAutoScrollTimeByInitalSpeed(e.mag()),n=t.normalize(),r=this.content.getContentSize(),s=this._view.getContentSize(),a=r.width-s.width,o=r.height-s.height,c=this._calculateAttenuatedFactor(a),u=this._calculateAttenuatedFactor(o);n=cc.v2(n.x*a*(1-this.brake)*c,n.y*o*u*(1-this.brake));var l=t.mag(),h=n.mag()/l;n=n.add(t),this.brake>0&&h>7&&(h=Math.sqrt(h),n=t.mul(h).add(t)),this.brake>0&&h>3&&(i*=h=3),0===this.brake&&h>1&&(i*=h),this._startAutoScroll(n,i,!0)},_calculateAutoScrollTimeByInitalSpeed:function(t){return Math.sqrt(Math.sqrt(t/5))},_startAutoScroll:function(t,e,i){var n=this._flattenVectorByDirection(t);this._autoScrolling=!0,this._autoScrollTargetDelta=n,this._autoScrollAttenuate=i,this._autoScrollStartPosition=this.getContentPosition(),this._autoScrollTotalTime=e,this._autoScrollAccumulatedTime=0,this._autoScrollBraking=!1,this._isScrollEndedWithThresholdEventFired=!1,this._autoScrollBrakingStartPosition=cc.v2(0,0),this._getHowMuchOutOfBoundary().fuzzyEquals(cc.v2(0,0),1e-4)||(this._autoScrollCurrentlyOutOfBoundary=!0)},_calculateTouchMoveVelocity:function(){var t=0;if((t=this._touchMoveTimeDeltas.reduce((function(t,e){return t+e}),t))<=0||t>=.5)return cc.v2(0,0);var e=cc.v2(0,0);return e=this._touchMoveDisplacements.reduce((function(t,e){return t.add(e)}),e),cc.v2(e.x*(1-this.brake)/t,e.y*(1-this.brake)/t)},_flattenVectorByDirection:function(t){var e=t;return e.x=this.horizontal?e.x:0,e.y=this.vertical?e.y:0,e},_moveContent:function(t,e){var i=this._flattenVectorByDirection(t),n=this.getContentPosition().add(i);this.setContentPosition(n);var r=this._getHowMuchOutOfBoundary();this._updateScrollBar(r),this.elastic&&e&&this._startBounceBackIfNeeded()},_getContentLeftBoundary:function(){return this.getContentPosition().x-this.content.getAnchorPoint().x*this.content.getContentSize().width},_getContentRightBoundary:function(){var t=this.content.getContentSize();return this._getContentLeftBoundary()+t.width},_getContentTopBoundary:function(){var t=this.content.getContentSize();return this._getContentBottomBoundary()+t.height},_getContentBottomBoundary:function(){return this.getContentPosition().y-this.content.getAnchorPoint().y*this.content.getContentSize().height},_getHowMuchOutOfBoundary:function(t){if((t=t||cc.v2(0,0)).fuzzyEquals(cc.v2(0,0),1e-4)&&!this._outOfBoundaryAmountDirty)return this._outOfBoundaryAmount;var e=cc.v2(0,0);return this._getContentLeftBoundary()+t.x>this._leftBoundary?e.x=this._leftBoundary-(this._getContentLeftBoundary()+t.x):this._getContentRightBoundary()+t.xthis._bottomBoundary&&(e.y=this._bottomBoundary-(this._getContentBottomBoundary()+t.y)),t.fuzzyEquals(cc.v2(0,0),1e-4)&&(this._outOfBoundaryAmount=e,this._outOfBoundaryAmountDirty=!1),this._clampDelta(e)},_updateScrollBarState:function(){if(this.content){var t=this.content.getContentSize(),e=this._view.getContentSize();this.verticalScrollBar&&(t.height0},set:function(t){this._setAlign(s,t)},animatable:!1,tooltip:!1},isAlignVerticalCenter:{get:function(){return(this._alignFlags&a)>0},set:function(t){t?(this.isAlignTop=!1,this.isAlignBottom=!1,this._alignFlags|=a):this._alignFlags&=~a},animatable:!1,tooltip:!1},isAlignBottom:{get:function(){return(this._alignFlags&o)>0},set:function(t){this._setAlign(o,t)},animatable:!1,tooltip:!1},isAlignLeft:{get:function(){return(this._alignFlags&c)>0},set:function(t){this._setAlign(c,t)},animatable:!1,tooltip:!1},isAlignHorizontalCenter:{get:function(){return(this._alignFlags&u)>0},set:function(t){t?(this.isAlignLeft=!1,this.isAlignRight=!1,this._alignFlags|=u):this._alignFlags&=~u},animatable:!1,tooltip:!1},isAlignRight:{get:function(){return(this._alignFlags&l)>0},set:function(t){this._setAlign(l,t)},animatable:!1,tooltip:!1},isStretchWidth:{get:function(){return(this._alignFlags&_)===_},visible:!1},isStretchHeight:{get:function(){return(this._alignFlags&h)===h},visible:!1},top:{get:function(){return this._top},set:function(t){this._top=t},tooltip:!1},bottom:{get:function(){return this._bottom},set:function(t){this._bottom=t},tooltip:!1},left:{get:function(){return this._left},set:function(t){this._left=t},tooltip:!1},right:{get:function(){return this._right},set:function(t){this._right=t},tooltip:!1},horizontalCenter:{get:function(){return this._horizontalCenter},set:function(t){this._horizontalCenter=t},tooltip:!1},verticalCenter:{get:function(){return this._verticalCenter},set:function(t){this._verticalCenter=t},tooltip:!1},isAbsoluteHorizontalCenter:{get:function(){return this._isAbsHorizontalCenter},set:function(t){this._isAbsHorizontalCenter=t},animatable:!1},isAbsoluteVerticalCenter:{get:function(){return this._isAbsVerticalCenter},set:function(t){this._isAbsVerticalCenter=t},animatable:!1},isAbsoluteTop:{get:function(){return this._isAbsTop},set:function(t){this._isAbsTop=t},animatable:!1},isAbsoluteBottom:{get:function(){return this._isAbsBottom},set:function(t){this._isAbsBottom=t},animatable:!1},isAbsoluteLeft:{get:function(){return this._isAbsLeft},set:function(t){this._isAbsLeft=t},animatable:!1},isAbsoluteRight:{get:function(){return this._isAbsRight},set:function(t){this._isAbsRight=t},animatable:!1},alignMode:{default:n.ON_WINDOW_RESIZE,type:n,tooltip:!1},_wasAlignOnce:{default:void 0,formerlySerializedAs:"isAlignOnce"},_target:null,_alignFlags:0,_left:0,_right:0,_top:0,_bottom:0,_verticalCenter:0,_horizontalCenter:0,_isAbsLeft:!0,_isAbsRight:!0,_isAbsTop:!0,_isAbsBottom:!0,_isAbsHorizontalCenter:!0,_isAbsVerticalCenter:!0,_originalWidth:0,_originalHeight:0},statics:{AlignMode:n},onLoad:function(){void 0!==this._wasAlignOnce&&(this.alignMode=this._wasAlignOnce?n.ONCE:n.ALWAYS,this._wasAlignOnce=void 0)},onEnable:function(){i.add(this)},onDisable:function(){i.remove(this)},_validateTargetInDEV:!1,_setAlign:function(t,e){if(e!==(this._alignFlags&t)>0){var i=(t&_)>0;e?(this._alignFlags|=t,i?(this.isAlignHorizontalCenter=!1,this.isStretchWidth&&(this._originalWidth=this.node.width)):(this.isAlignVerticalCenter=!1,this.isStretchHeight&&(this._originalHeight=this.node.height))):(i?this.isStretchWidth&&(this.node.width=this._originalWidth):this.isStretchHeight&&(this.node.height=this._originalHeight),this._alignFlags&=~t)}},updateAlignment:function(){i.updateAlignment(this.node)}});Object.defineProperty(f.prototype,"isAlignOnce",{get:function(){return this.alignMode===n.ONCE},set:function(t){this.alignMode=t?n.ONCE:n.ALWAYS}}),cc.Widget=e.exports=f}),{"../base-ui/CCWidgetManager":86,"./CCComponent":101}],119:[(function(t,e){"use strict";var i=t("../../platform/CCMacro"),n=t("../editbox/EditBoxImplBase"),r=t("../CCLabel"),s=t("./types"),a=s.InputMode,o=s.InputFlag,c=s.KeyboardReturnType;function u(t){return t.charAt(0).toUpperCase()+t.slice(1)}var l=cc.Class({name:"cc.EditBox",extends:cc.Component,editor:!1,properties:{_string:"",string:{tooltip:!1,get:function(){return this._string},set:function(t){t=""+t,this.maxLength>=0&&t.length>=this.maxLength&&(t=t.slice(0,this.maxLength)),this._string=t,this._updateString(t)}},textLabel:{tooltip:!1,default:null,type:r,notify:function(t){this.textLabel&&this.textLabel!==t&&(this._updateTextLabel(),this._updateLabels())}},placeholderLabel:{tooltip:!1,default:null,type:r,notify:function(t){this.placeholderLabel&&this.placeholderLabel!==t&&(this._updatePlaceholderLabel(),this._updateLabels())}},background:{tooltip:!1,default:null,type:cc.Sprite,notify:function(t){this.background&&this.background!==t&&this._updateBackgroundSprite()}},_N$backgroundImage:{default:void 0,type:cc.SpriteFrame},backgroundImage:{get:function(){return this.background?this.background.spriteFrame:null},set:function(t){this.background&&(this.background.spriteFrame=t)}},returnType:{default:c.DEFAULT,tooltip:!1,displayName:"KeyboardReturnType",type:c},_N$returnType:{default:void 0,type:cc.Float},inputFlag:{tooltip:!1,default:o.DEFAULT,type:o,notify:function(){this._updateString(this._string)}},inputMode:{tooltip:!1,default:a.ANY,type:a,notify:function(t){this.inputMode!==t&&(this._updateTextLabel(),this._updatePlaceholderLabel())}},fontSize:{get:function(){return this.textLabel?this.textLabel.fontSize:0},set:function(t){this.textLabel&&(this.textLabel.fontSize=t)}},_N$fontSize:{default:void 0,type:cc.Float},lineHeight:{get:function(){return this.textLabel?this.textLabel.lineHeight:0},set:function(t){this.textLabel&&(this.textLabel.lineHeight=t)}},_N$lineHeight:{default:void 0,type:cc.Float},fontColor:{get:function(){return this.textLabel?this.textLabel.node.color:cc.Color.BLACK},set:function(t){this.textLabel&&(this.textLabel.node.color=t,this.textLabel.node.opacity=t.a)}},_N$fontColor:void 0,placeholder:{tooltip:!1,get:function(){return this.placeholderLabel?this.placeholderLabel.string:""},set:function(t){this.placeholderLabel&&(this.placeholderLabel.string=t)}},_N$placeholder:{default:void 0,type:cc.String},placeholderFontSize:{get:function(){return this.placeholderLabel?this.placeholderLabel.fontSize:0},set:function(t){this.placeholderLabel&&(this.placeholderLabel.fontSize=t)}},_N$placeholderFontSize:{default:void 0,type:cc.Float},placeholderFontColor:{get:function(){return this.placeholderLabel?this.placeholderLabel.node.color:cc.Color.BLACK},set:function(t){this.placeholderLabel&&(this.placeholderLabel.node.color=t,this.placeholderLabel.node.opacity=t.a)}},_N$placeholderFontColor:void 0,maxLength:{tooltip:!1,default:20},_N$maxLength:{default:void 0,type:cc.Float},stayOnTop:{default:!1,notify:function(){cc.warn("editBox.stayOnTop is removed since v2.1.")}},_tabIndex:0,tabIndex:{tooltip:!1,get:function(){return this._tabIndex},set:function(t){this._tabIndex!==t&&(this._tabIndex=t,this._impl&&this._impl.setTabIndex(t))}},editingDidBegan:{default:[],type:cc.Component.EventHandler},textChanged:{default:[],type:cc.Component.EventHandler},editingDidEnded:{default:[],type:cc.Component.EventHandler},editingReturn:{default:[],type:cc.Component.EventHandler}},statics:{_ImplClass:n,KeyboardReturnType:c,InputFlag:o,InputMode:a},_init:function(){this._upgradeComp(),this._isLabelVisible=!0,this.node.on(cc.Node.EventType.SIZE_CHANGED,this._syncSize,this),(this._impl=new l._ImplClass).init(this),this._updateString(this._string),this._syncSize()},_updateBackgroundSprite:function(){var t=this.background;if(!t){var e=this.node.getChildByName("BACKGROUND_SPRITE");e||(e=new cc.Node("BACKGROUND_SPRITE")),(t=e.getComponent(cc.Sprite))||(t=e.addComponent(cc.Sprite)),e.parent=this.node,this.background=t}t.type=cc.Sprite.Type.SLICED,void 0!==this._N$backgroundImage&&(t.spriteFrame=this._N$backgroundImage,this._N$backgroundImage=void 0)},_updateTextLabel:function(){var t=this.textLabel;if(!t){var e=this.node.getChildByName("TEXT_LABEL");e||(e=new cc.Node("TEXT_LABEL")),(t=e.getComponent(r))||(t=e.addComponent(r)),e.parent=this.node,this.textLabel=t}t.node.setAnchorPoint(0,1),t.overflow=r.Overflow.CLAMP,this.inputMode===a.ANY?(t.verticalAlign=i.VerticalTextAlignment.TOP,t.enableWrapText=!0):(t.verticalAlign=i.VerticalTextAlignment.CENTER,t.enableWrapText=!1),t.string=this._updateLabelStringStyle(this._string),void 0!==this._N$fontColor&&(t.node.color=this._N$fontColor,t.node.opacity=this._N$fontColor.a,this._N$fontColor=void 0),void 0!==this._N$fontSize&&(t.fontSize=this._N$fontSize,this._N$fontSize=void 0),void 0!==this._N$lineHeight&&(t.lineHeight=this._N$lineHeight,this._N$lineHeight=void 0)},_updatePlaceholderLabel:function(){var t=this.placeholderLabel;if(!t){var e=this.node.getChildByName("PLACEHOLDER_LABEL");e||(e=new cc.Node("PLACEHOLDER_LABEL")),(t=e.getComponent(r))||(t=e.addComponent(r)),e.parent=this.node,this.placeholderLabel=t}t.node.setAnchorPoint(0,1),t.overflow=r.Overflow.CLAMP,this.inputMode===a.ANY?(t.verticalAlign=i.VerticalTextAlignment.TOP,t.enableWrapText=!0):(t.verticalAlign=i.VerticalTextAlignment.CENTER,t.enableWrapText=!1),t.string=this.placeholder,void 0!==this._N$placeholderFontColor&&(t.node.color=this._N$placeholderFontColor,t.node.opacity=this._N$placeholderFontColor.a,this._N$placeholderFontColor=void 0),void 0!==this._N$placeholderFontSize&&(t.fontSize=this._N$placeholderFontSize,this._N$placeholderFontSize=void 0)},_upgradeComp:function(){void 0!==this._N$returnType&&(this.returnType=this._N$returnType,this._N$returnType=void 0),void 0!==this._N$maxLength&&(this.maxLength=this._N$maxLength,this._N$maxLength=void 0),void 0!==this._N$backgroundImage&&this._updateBackgroundSprite(),void 0===this._N$fontColor&&void 0===this._N$fontSize&&void 0===this._N$lineHeight||this._updateTextLabel(),void 0===this._N$placeholderFontColor&&void 0===this._N$placeholderFontSize||this._updatePlaceholderLabel(),void 0!==this._N$placeholder&&(this.placeholder=this._N$placeholder,this._N$placeholder=void 0)},_syncSize:function(){if(this._impl){var t=this.node.getContentSize();this._impl.setSize(t.width,t.height)}},_showLabels:function(){this._isLabelVisible=!0,this._updateLabels()},_hideLabels:function(){this._isLabelVisible=!1,this.textLabel&&(this.textLabel.node.active=!1),this.placeholderLabel&&(this.placeholderLabel.node.active=!1)},_updateLabels:function(){if(this._isLabelVisible){var t=this._string;this.textLabel&&(this.textLabel.node.active=""!==t),this.placeholderLabel&&(this.placeholderLabel.node.active=""===t)}},_updateString:function(t){var e=this.textLabel;if(e){var i=t;i&&(i=this._updateLabelStringStyle(i)),e.string=i,this._updateLabels()}},_updateLabelStringStyle:function(t,e){var i=this.inputFlag;if(e||i!==o.PASSWORD)i===o.INITIAL_CAPS_ALL_CHARACTERS?t=t.toUpperCase():i===o.INITIAL_CAPS_WORD?t=t.replace(/(?:^|\s)\S/g,(function(t){return t.toUpperCase()})):i===o.INITIAL_CAPS_SENTENCE&&(t=u(t));else{for(var n="",r=t.length,s=0;s=0&&(e.value=e.value.slice(0,n)),t._delegate.editBoxTextChanged(e.value)}},n.onClick=function(){t._editing&&cc.sys.isMobile&&t._adjustWindowScroll()},n.onKeydown=function(i){i.keyCode===r.KEY.enter?(i.stopPropagation(),t._delegate.editBoxEditingReturn(),t._isTextArea||e.blur()):i.keyCode===r.KEY.tab&&(i.stopPropagation(),i.preventDefault(),o.next(t))},n.onBlur=function(){cc.sys.isMobile&&i&&n.compositionEnd(),t._editing=!1,v=null,t._hideDom(),t._delegate.editBoxEditingDidEnded()},e.addEventListener("compositionstart",n.compositionStart),e.addEventListener("compositionend",n.compositionEnd),e.addEventListener("input",n.onInput),e.addEventListener("keydown",n.onKeydown),e.addEventListener("blur",n.onBlur),e.addEventListener("touchstart",n.onClick)},_removeEventListeners:function(){var t=this._elem,e=this._eventListeners;t.removeEventListener("compositionstart",e.compositionStart),t.removeEventListener("compositionend",e.compositionEnd),t.removeEventListener("input",e.onInput),t.removeEventListener("keydown",e.onKeydown),t.removeEventListener("blur",e.onBlur),t.removeEventListener("touchstart",e.onClick),e.compositionStart=null,e.compositionEnd=null,e.onInput=null,e.onKeydown=null,e.onBlur=null,e.onClick=null}})}),{"../../platform/CCMacro":154,"../../platform/utils":173,"../../value-types/mat4":240,"../CCLabel":103,"./tabIndexUtil":122,"./types":123}],122:[(function(t,e){"use strict";e.exports={_tabIndexList:[],add:function(t){var e=this._tabIndexList;-1===e.indexOf(t)&&e.push(t)},remove:function(t){var e=this._tabIndexList,i=e.indexOf(t);-1!==i&&e.splice(i,1)},resort:function(){this._tabIndexList.sort((function(t,e){return t._delegate._tabIndex-e._delegate._tabIndex}))},next:function(t){var e=this._tabIndexList,i=e.indexOf(t);if(t.setFocus(!1),-1!==i){var n=e[i+1];n&&n._delegate._tabIndex>=0&&n.setFocus(!0)}}}}),{}],123:[(function(t,e){"use strict";var i=cc.Enum({DEFAULT:0,DONE:1,SEND:2,SEARCH:3,GO:4,NEXT:5}),n=cc.Enum({ANY:0,EMAIL_ADDR:1,NUMERIC:2,PHONE_NUMBER:3,URL:4,DECIMAL:5,SINGLE_LINE:6}),r=cc.Enum({PASSWORD:0,SENSITIVE:1,INITIAL_CAPS_WORD:2,INITIAL_CAPS_SENTENCE:3,INITIAL_CAPS_ALL_CHARACTERS:4,DEFAULT:5});e.exports={KeyboardReturnType:i,InputMode:n,InputFlag:r}}),{}],124:[(function(t,e){"use strict";t("./CCComponent"),t("./CCComponentEventHandler"),t("./missing-script");var i=t("./SubContextView");i||(i=cc.Class({name:"cc.SubContextView",extends:cc.Component}),cc.SubContextView=cc.WXSubContextView=cc.SwanSubContextView=i);var n=[t("./CCSprite"),t("./CCWidget"),t("./CCCanvas"),t("./CCAudioSource"),t("./CCAnimation"),t("./CCButton"),t("./CCLabel"),t("./CCProgressBar"),t("./CCMask"),t("./CCScrollBar"),t("./CCScrollView"),t("./CCPageViewIndicator"),t("./CCPageView"),t("./CCSlider"),t("./CCLayout"),t("./editbox/CCEditBox"),t("./CCLabelOutline"),t("./CCLabelShadow"),t("./CCRichText"),t("./CCToggleContainer"),t("./CCToggleGroup"),t("./CCToggle"),t("./CCBlockInputEvents"),t("./CCMotionStreak"),t("./CCSafeArea"),i];e.exports=n}),{"./CCAnimation":96,"./CCAudioSource":97,"./CCBlockInputEvents":98,"./CCButton":99,"./CCCanvas":100,"./CCComponent":101,"./CCComponentEventHandler":102,"./CCLabel":103,"./CCLabelOutline":void 0,"./CCLabelShadow":void 0,"./CCLayout":104,"./CCMask":105,"./CCMotionStreak":106,"./CCPageView":107,"./CCPageViewIndicator":108,"./CCProgressBar":109,"./CCRichText":void 0,"./CCSafeArea":111,"./CCScrollBar":112,"./CCScrollView":113,"./CCSlider":114,"./CCSprite":115,"./CCToggle":void 0,"./CCToggleContainer":void 0,"./CCToggleGroup":void 0,"./CCWidget":118,"./SubContextView":void 0,"./editbox/CCEditBox":119,"./missing-script":125}],125:[(function(t,e){"use strict";var i=cc.js,n=cc.Class({name:"cc.MissingScript",extends:cc.Component,editor:{inspector:"packages://inspector/inspectors/comps/missing-script.js"},properties:{compiled:{default:!1,serializable:!1},_$erialized:{default:null,visible:!1,editorOnly:!0}},ctor:!1,statics:{safeFindClass:function(t){return i._getClassById(t)||(cc.deserialize.reportMissingClass(t),n)}},onLoad:function(){cc.warnID(4600,this.node.name)}});cc._MissingScript=e.exports=n}),{}],126:[(function(t,e){"use strict";var i=cc.js;t("../event/event");var n=function(t,e){cc.Event.call(this,cc.Event.MOUSE,e),this._eventType=t,this._button=0,this._x=0,this._y=0,this._prevX=0,this._prevY=0,this._scrollX=0,this._scrollY=0};i.extend(n,cc.Event);var r=n.prototype;r.setScrollData=function(t,e){this._scrollX=t,this._scrollY=e},r.getScrollX=function(){return this._scrollX},r.getScrollY=function(){return this._scrollY},r.setLocation=function(t,e){this._x=t,this._y=e},r.getLocation=function(){return cc.v2(this._x,this._y)},r.getLocationInView=function(){return cc.v2(this._x,cc.view._designResolutionSize.height-this._y)},r._setPrevCursor=function(t,e){this._prevX=t,this._prevY=e},r.getPreviousLocation=function(){return cc.v2(this._prevX,this._prevY)},r.getDelta=function(){return cc.v2(this._x-this._prevX,this._y-this._prevY)},r.getDeltaX=function(){return this._x-this._prevX},r.getDeltaY=function(){return this._y-this._prevY},r.setButton=function(t){this._button=t},r.getButton=function(){return this._button},r.getLocationX=function(){return this._x},r.getLocationY=function(){return this._y},n.NONE=0,n.DOWN=1,n.UP=2,n.MOVE=3,n.SCROLL=4,n.BUTTON_LEFT=0,n.BUTTON_RIGHT=2,n.BUTTON_MIDDLE=1,n.BUTTON_4=3,n.BUTTON_5=4,n.BUTTON_6=5,n.BUTTON_7=6,n.BUTTON_8=7;var s=function(t,e){cc.Event.call(this,cc.Event.TOUCH,e),this._eventCode=0,this._touches=t||[],this.touch=null,this.currentTouch=null};i.extend(s,cc.Event),(r=s.prototype).getEventCode=function(){return this._eventCode},r.getTouches=function(){return this._touches},r._setEventCode=function(t){this._eventCode=t},r._setTouches=function(t){this._touches=t},r.setLocation=function(t,e){this.touch&&this.touch.setTouchInfo(this.touch.getID(),t,e)},r.getLocation=function(){return this.touch?this.touch.getLocation():cc.v2()},r.getLocationInView=function(){return this.touch?this.touch.getLocationInView():cc.v2()},r.getPreviousLocation=function(){return this.touch?this.touch.getPreviousLocation():cc.v2()},r.getStartLocation=function(){return this.touch?this.touch.getStartLocation():cc.v2()},r.getID=function(){return this.touch?this.touch.getID():null},r.getDelta=function(){return this.touch?this.touch.getDelta():cc.v2()},r.getDeltaX=function(){return this.touch?this.touch.getDelta().x:0},r.getDeltaY=function(){return this.touch?this.touch.getDelta().y:0},r.getLocationX=function(){return this.touch?this.touch.getLocationX():0},r.getLocationY=function(){return this.touch?this.touch.getLocationY():0},s.MAX_TOUCHES=5,s.BEGAN=0,s.MOVED=1,s.ENDED=2,s.CANCELED=3;var a=function(t,e){cc.Event.call(this,cc.Event.ACCELERATION,e),this.acc=t};i.extend(a,cc.Event);var o=function(t,e,i){cc.Event.call(this,cc.Event.KEYBOARD,i),this.keyCode=t,this.isPressed=e};i.extend(o,cc.Event),cc.Event.EventMouse=n,cc.Event.EventTouch=s,cc.Event.EventAcceleration=a,cc.Event.EventKeyboard=o,e.exports=cc.Event}),{"../event/event":133}],127:[(function(t,e){"use strict";var i=t("../platform/js");cc.EventListener=function(t,e,i){this._onEvent=i,this._type=t||0,this._listenerID=e||"",this._registered=!1,this._fixedPriority=0,this._node=null,this._target=null,this._paused=!0,this._isEnabled=!0},cc.EventListener.prototype={constructor:cc.EventListener,_setPaused:function(t){this._paused=t},_isPaused:function(){return this._paused},_setRegistered:function(t){this._registered=t},_isRegistered:function(){return this._registered},_getType:function(){return this._type},_getListenerID:function(){return this._listenerID},_setFixedPriority:function(t){this._fixedPriority=t},_getFixedPriority:function(){return this._fixedPriority},_setSceneGraphPriority:function(t){this._target=t,this._node=t},_getSceneGraphPriority:function(){return this._node},checkAvailable:function(){return null!==this._onEvent},clone:function(){return null},setEnabled:function(t){this._isEnabled=t},isEnabled:function(){return this._isEnabled},retain:function(){},release:function(){}},cc.EventListener.UNKNOWN=0,cc.EventListener.TOUCH_ONE_BY_ONE=1,cc.EventListener.TOUCH_ALL_AT_ONCE=2,cc.EventListener.KEYBOARD=3,cc.EventListener.MOUSE=4,cc.EventListener.ACCELERATION=6,cc.EventListener.CUSTOM=8;var n=cc.EventListener.ListenerID={MOUSE:"__cc_mouse",TOUCH_ONE_BY_ONE:"__cc_touch_one_by_one",TOUCH_ALL_AT_ONCE:"__cc_touch_all_at_once",KEYBOARD:"__cc_keyboard",ACCELERATION:"__cc_acceleration"},r=function(t,e){this._onCustomEvent=e,cc.EventListener.call(this,cc.EventListener.CUSTOM,t,this._callback)};i.extend(r,cc.EventListener),i.mixin(r.prototype,{_onCustomEvent:null,_callback:function(t){null!==this._onCustomEvent&&this._onCustomEvent(t)},checkAvailable:function(){return cc.EventListener.prototype.checkAvailable.call(this)&&null!==this._onCustomEvent},clone:function(){return new r(this._listenerID,this._onCustomEvent)}});var s=function(){cc.EventListener.call(this,cc.EventListener.MOUSE,n.MOUSE,this._callback)};i.extend(s,cc.EventListener),i.mixin(s.prototype,{onMouseDown:null,onMouseUp:null,onMouseMove:null,onMouseScroll:null,_callback:function(t){var e=cc.Event.EventMouse;switch(t._eventType){case e.DOWN:this.onMouseDown&&this.onMouseDown(t);break;case e.UP:this.onMouseUp&&this.onMouseUp(t);break;case e.MOVE:this.onMouseMove&&this.onMouseMove(t);break;case e.SCROLL:this.onMouseScroll&&this.onMouseScroll(t)}},clone:function(){var t=new s;return t.onMouseDown=this.onMouseDown,t.onMouseUp=this.onMouseUp,t.onMouseMove=this.onMouseMove,t.onMouseScroll=this.onMouseScroll,t},checkAvailable:function(){return!0}});var a=function(){cc.EventListener.call(this,cc.EventListener.TOUCH_ONE_BY_ONE,n.TOUCH_ONE_BY_ONE,null),this._claimedTouches=[]};i.extend(a,cc.EventListener),i.mixin(a.prototype,{constructor:a,_claimedTouches:null,swallowTouches:!1,onTouchBegan:null,onTouchMoved:null,onTouchEnded:null,onTouchCancelled:null,setSwallowTouches:function(t){this.swallowTouches=t},isSwallowTouches:function(){return this.swallowTouches},clone:function(){var t=new a;return t.onTouchBegan=this.onTouchBegan,t.onTouchMoved=this.onTouchMoved,t.onTouchEnded=this.onTouchEnded,t.onTouchCancelled=this.onTouchCancelled,t.swallowTouches=this.swallowTouches,t},checkAvailable:function(){return!!this.onTouchBegan||(cc.logID(1801),!1)}});var o=function(){cc.EventListener.call(this,cc.EventListener.TOUCH_ALL_AT_ONCE,n.TOUCH_ALL_AT_ONCE,null)};i.extend(o,cc.EventListener),i.mixin(o.prototype,{constructor:o,onTouchesBegan:null,onTouchesMoved:null,onTouchesEnded:null,onTouchesCancelled:null,clone:function(){var t=new o;return t.onTouchesBegan=this.onTouchesBegan,t.onTouchesMoved=this.onTouchesMoved,t.onTouchesEnded=this.onTouchesEnded,t.onTouchesCancelled=this.onTouchesCancelled,t},checkAvailable:function(){return null!==this.onTouchesBegan||null!==this.onTouchesMoved||null!==this.onTouchesEnded||null!==this.onTouchesCancelled||(cc.logID(1802),!1)}});var c=function(t){this._onAccelerationEvent=t,cc.EventListener.call(this,cc.EventListener.ACCELERATION,n.ACCELERATION,this._callback)};i.extend(c,cc.EventListener),i.mixin(c.prototype,{constructor:c,_onAccelerationEvent:null,_callback:function(t){this._onAccelerationEvent(t.acc,t)},checkAvailable:function(){return cc.assertID(this._onAccelerationEvent,1803),!0},clone:function(){return new c(this._onAccelerationEvent)}});var u=function(){cc.EventListener.call(this,cc.EventListener.KEYBOARD,n.KEYBOARD,this._callback)};i.extend(u,cc.EventListener),i.mixin(u.prototype,{constructor:u,onKeyPressed:null,onKeyReleased:null,_callback:function(t){t.isPressed?this.onKeyPressed&&this.onKeyPressed(t.keyCode,t):this.onKeyReleased&&this.onKeyReleased(t.keyCode,t)},clone:function(){var t=new u;return t.onKeyPressed=this.onKeyPressed,t.onKeyReleased=this.onKeyReleased,t},checkAvailable:function(){return null!==this.onKeyPressed||null!==this.onKeyReleased||(cc.logID(1800),!1)}}),cc.EventListener.create=function(t){cc.assertID(t&&t.event,1900);var e=t.event;delete t.event;var i=null;for(var n in e===cc.EventListener.TOUCH_ONE_BY_ONE?i=new a:e===cc.EventListener.TOUCH_ALL_AT_ONCE?i=new o:e===cc.EventListener.MOUSE?i=new s:e===cc.EventListener.CUSTOM?(i=new r(t.eventName,t.callback),delete t.eventName,delete t.callback):e===cc.EventListener.KEYBOARD?i=new u:e===cc.EventListener.ACCELERATION&&(i=new c(t.callback),delete t.callback),t)i[n]=t[n];return i},e.exports=cc.EventListener}),{"../platform/js":170}],128:[(function(t,e){"use strict";var i=t("../platform/js");t("./CCEventListener");var n=cc.EventListener.ListenerID,r=function(){this._fixedListeners=[],this._sceneGraphListeners=[],this.gt0Index=0};r.prototype={constructor:r,size:function(){return this._fixedListeners.length+this._sceneGraphListeners.length},empty:function(){return 0===this._fixedListeners.length&&0===this._sceneGraphListeners.length},push:function(t){0===t._getFixedPriority()?this._sceneGraphListeners.push(t):this._fixedListeners.push(t)},clearSceneGraphListeners:function(){this._sceneGraphListeners.length=0},clearFixedListeners:function(){this._fixedListeners.length=0},clear:function(){this._sceneGraphListeners.length=0,this._fixedListeners.length=0},getFixedPriorityListeners:function(){return this._fixedListeners},getSceneGraphPriorityListeners:function(){return this._sceneGraphListeners}};var s=function(t){var e=cc.Event,i=t.type;return i===e.ACCELERATION?n.ACCELERATION:i===e.KEYBOARD?n.KEYBOARD:i.startsWith(e.MOUSE)?n.MOUSE:(i.startsWith(e.TOUCH)&&cc.logID(2e3),"")},a={DIRTY_NONE:0,DIRTY_FIXED_PRIORITY:1,DIRTY_SCENE_GRAPH_PRIORITY:2,DIRTY_ALL:3,_listenersMap:{},_priorityDirtyFlagMap:{},_nodeListenersMap:{},_toAddedListeners:[],_toRemovedListeners:[],_dirtyListeners:{},_inDispatch:0,_isEnabled:!1,_currentTouch:null,_currentTouchListener:null,_internalCustomListenerIDs:[],_setDirtyForNode:function(t){var e=this._nodeListenersMap[t._id];if(e)for(var i=0,n=e.length;i0)for(var s=t._children,a=0,o=s.length;a=0;i--)(e=t[i])._setRegistered(!1),null!=e._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(e._getSceneGraphPriority(),e),e._setSceneGraphPriority(null)),0===this._inDispatch&&cc.js.array.removeAt(t,i)},_removeListenersForListenerID:function(t){var e,i=this._listenersMap[t];if(i){var n=i.getFixedPriorityListeners(),r=i.getSceneGraphPriorityListeners();this._removeAllListenersInVector(r),this._removeAllListenersInVector(n),delete this._priorityDirtyFlagMap[t],this._inDispatch||(i.clear(),delete this._listenersMap[t])}var s,a=this._toAddedListeners;for(e=a.length-1;e>=0;e--)(s=a[e])&&s._getListenerID()===t&&cc.js.array.removeAt(a,e)},_sortEventListeners:function(t){var e=this.DIRTY_NONE,i=this._priorityDirtyFlagMap;i[t]&&(e=i[t]),e!==this.DIRTY_NONE&&(i[t]=this.DIRTY_NONE,e&this.DIRTY_FIXED_PRIORITY&&this._sortListenersOfFixedPriority(t),e&this.DIRTY_SCENE_GRAPH_PRIORITY&&cc.director.getScene()&&this._sortListenersOfSceneGraphPriority(t))},_sortListenersOfSceneGraphPriority:function(t){var e=this._getListeners(t);if(e){var i=e.getSceneGraphPriorityListeners();i&&0!==i.length&&e.getSceneGraphPriorityListeners().sort(this._sortEventListenersOfSceneGraphPriorityDes)}},_sortEventListenersOfSceneGraphPriorityDes:function(t,e){var i=t._getSceneGraphPriority(),n=e._getSceneGraphPriority();if(!(e&&n&&n._activeInHierarchy&&null!==n._parent))return-1;if(!t||!i||!i._activeInHierarchy||null===i._parent)return 1;for(var r=i,s=n,a=!1;r._parent._id!==s._parent._id;)r=null===r._parent._parent?(a=!0)&&n:r._parent,s=null===s._parent._parent?(a=!0)&&i:s._parent;if(r._id===s._id){if(r._id===n._id)return-1;if(r._id===i._id)return 1}return a?r._localZOrder-s._localZOrder:s._localZOrder-r._localZOrder},_sortListenersOfFixedPriority:function(t){var e=this._listenersMap[t];if(e){var i=e.getFixedPriorityListeners();if(i&&0!==i.length){i.sort(this._sortListenersOfFixedPriorityAsc);for(var n=0,r=i.length;n=0);)++n;e.gt0Index=n}}},_sortListenersOfFixedPriorityAsc:function(t,e){return t._getFixedPriority()-e._getFixedPriority()},_onUpdateListeners:function(t){var e,i,n,r=t.getFixedPriorityListeners(),s=t.getSceneGraphPriorityListeners(),a=this._toRemovedListeners;if(s)for(e=s.length-1;e>=0;e--)(i=s[e])._isRegistered()||(cc.js.array.removeAt(s,e),-1!==(n=a.indexOf(i))&&a.splice(n,1));if(r)for(e=r.length-1;e>=0;e--)(i=r[e])._isRegistered()||(cc.js.array.removeAt(r,e),-1!==(n=a.indexOf(i))&&a.splice(n,1));s&&0===s.length&&t.clearSceneGraphListeners(),r&&0===r.length&&t.clearFixedListeners()},frameUpdateListeners:function(){var t=this._listenersMap,e=this._priorityDirtyFlagMap;for(var i in t)t[i].empty()&&(delete e[i],delete t[i]);var n=this._toAddedListeners;if(0!==n.length){for(var r=0,s=n.length;r0,3508),!(t>1)){var e;(e=this._listenersMap[n.TOUCH_ONE_BY_ONE])&&this._onUpdateListeners(e),(e=this._listenersMap[n.TOUCH_ALL_AT_ONCE])&&this._onUpdateListeners(e),cc.assertID(1===t,3509);var i=this._toAddedListeners;if(0!==i.length){for(var r=0,s=i.length;r0&&-1!==(r=t._claimedTouches.indexOf(n))){if(s=!0,!cc.macro.ENABLE_MULTI_TOUCH&&a._currentTouch&&a._currentTouch!==n)return!1;o===c.MOVED&&t.onTouchMoved?t.onTouchMoved(n,i):o===c.ENDED?(t.onTouchEnded&&t.onTouchEnded(n,i),t._registered&&t._claimedTouches.splice(r,1),a._clearCurTouch()):o===c.CANCELED&&(t.onTouchCancelled&&t.onTouchCancelled(n,i),t._registered&&t._claimedTouches.splice(r,1),a._clearCurTouch())}return i.isStopped()?(a._updateTouchListeners(i),!0):!(!s||!t.swallowTouches||(e.needsMutableSet&&e.touches.splice(n,1),0))},_dispatchTouchEvent:function(t){this._sortEventListeners(n.TOUCH_ONE_BY_ONE),this._sortEventListeners(n.TOUCH_ALL_AT_ONCE);var e=this._getListeners(n.TOUCH_ONE_BY_ONE),i=this._getListeners(n.TOUCH_ALL_AT_ONCE);if(null!==e||null!==i){var r=t.getTouches(),s=cc.js.array.copy(r),a={event:t,needsMutableSet:e&&i,touches:s,selTouch:null};if(e)for(var o=0;o0&&(this._dispatchEventToListeners(i,this._onTouchesEventCallback,{event:t,touches:s}),t.isStopped())||this._updateTouchListeners(t)}},_onTouchesEventCallback:function(t,e){if(!t._registered)return!1;var i=cc.Event.EventTouch,n=e.event,r=e.touches,s=n.getEventCode();return n.currentTarget=t._node,s===i.BEGAN&&t.onTouchesBegan?t.onTouchesBegan(r,n):s===i.MOVED&&t.onTouchesMoved?t.onTouchesMoved(r,n):s===i.ENDED&&t.onTouchesEnded?t.onTouchesEnded(r,n):s===i.CANCELED&&t.onTouchesCancelled&&t.onTouchesCancelled(r,n),!!n.isStopped()&&(a._updateTouchListeners(n),!0)},_associateNodeAndEventListener:function(t,e){var i=this._nodeListenersMap[t._id];i||(i=[],this._nodeListenersMap[t._id]=i),i.push(e)},_dissociateNodeAndEventListener:function(t,e){var i=this._nodeListenersMap[t._id];i&&(cc.js.array.remove(i,e),0===i.length&&delete this._nodeListenersMap[t._id])},_dispatchEventToListeners:function(t,e,i){var n,r,s=!1,a=t.getFixedPriorityListeners(),o=t.getSceneGraphPriorityListeners(),c=0;if(a&&0!==a.length)for(;c=0;c--){var u=o[c];if(u===t){cc.js.array.removeAt(o,c),u._setRegistered(!1);break}}this._currentTouchListener===t&&this._clearCurTouch()}},_clearCurTouch:function(){this._currentTouchListener=null,this._currentTouch=null},_removeListenerInCallback:function(t,e){if(null==t)return!1;for(var i=t.length-1;i>=0;i--){var n=t[i];if(n._onCustomEvent===e||n._onEvent===e)return n._setRegistered(!1),null!=n._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(n._getSceneGraphPriority(),n),n._setSceneGraphPriority(null)),0===this._inDispatch?cc.js.array.removeAt(t,i):this._toRemovedListeners.push(n),!0}return!1},_removeListenerInVector:function(t,e){if(null==t)return!1;for(var i=t.length-1;i>=0;i--){var n=t[i];if(n===e)return n._setRegistered(!1),null!=n._getSceneGraphPriority()&&(this._dissociateNodeAndEventListener(n._getSceneGraphPriority(),n),n._setSceneGraphPriority(null)),0===this._inDispatch?cc.js.array.removeAt(t,i):this._toRemovedListeners.push(n),!0}return!1},removeListeners:function(t,e){var i=this;if(cc.js.isNumber(t)||t instanceof cc._BaseNode)if(void 0!==t._id){var r,s=i._nodeListenersMap[t._id];if(s){var a=cc.js.array.copy(s);for(r=0;r=0;i--){var n=e[i];n&&this.off(t,n.callback,n.target)}},cc.EventTarget=e.exports=s}),{"../platform/callbacks-invoker":162,"../platform/js":170}],133:[(function(t,e){"use strict";var i=t("../platform/js");cc.Event=function(t,e){this.type=t,this.bubbles=!!e,this.target=null,this.currentTarget=null,this.eventPhase=0,this._propagationStopped=!1,this._propagationImmediateStopped=!1},cc.Event.prototype={constructor:cc.Event,unuse:function(){this.type=cc.Event.NO_TYPE,this.target=null,this.currentTarget=null,this.eventPhase=cc.Event.NONE,this._propagationStopped=!1,this._propagationImmediateStopped=!1},reuse:function(t,e){this.type=t,this.bubbles=e||!1},stopPropagation:function(){this._propagationStopped=!0},stopPropagationImmediate:function(){this._propagationImmediateStopped=!0},isStopped:function(){return this._propagationStopped||this._propagationImmediateStopped},getCurrentTarget:function(){return this.currentTarget},getType:function(){return this.type}},cc.Event.NO_TYPE="no_type",cc.Event.TOUCH="touch",cc.Event.MOUSE="mouse",cc.Event.KEYBOARD="keyboard",cc.Event.ACCELERATION="acceleration",cc.Event.NONE=0,cc.Event.CAPTURING_PHASE=1,cc.Event.AT_TARGET=2,cc.Event.BUBBLING_PHASE=3;var n=function(t,e){cc.Event.call(this,t,e),this.detail=null};i.extend(n,cc.Event),n.prototype.reset=n,n.prototype.setUserData=function(t){this.detail=t},n.prototype.getUserData=function(){return this.detail},n.prototype.getEventName=cc.Event.prototype.getType;var r=new i.Pool(10);n.put=function(t){r.put(t)},n.get=function(t,e){var i=r._get();return i?i.reset(t,e):i=new n(t,e),i},cc.Event.EventCustom=n,e.exports=cc.Event}),{"../platform/js":170}],134:[(function(t){"use strict";t("./event"),t("./event-listeners"),t("./event-target"),t("./system-event")}),{"./event":133,"./event-listeners":131,"./event-target":132,"./system-event":135}],135:[(function(t,e){"use strict";var i=t("../event/event-target"),n=t("../event-manager"),r=t("../platform/CCInputManager"),s=cc.Enum({KEY_DOWN:"keydown",KEY_UP:"keyup",DEVICEMOTION:"devicemotion"}),a=null,o=null,c=cc.Class({name:"SystemEvent",extends:i,statics:{EventType:s},setAccelerometerEnabled:function(t){t&&window.DeviceMotionEvent&&"function"==typeof DeviceMotionEvent.requestPermission?DeviceMotionEvent.requestPermission().then((function(t){console.log("Device Motion Event request permission: "+t),r.setAccelerometerEnabled("granted"===t)})):r.setAccelerometerEnabled(t)},setAccelerometerInterval:function(t){r.setAccelerometerInterval(t)},on:function(t,e,i,r){this._super(t,e,i,r),t!==s.KEY_DOWN&&t!==s.KEY_UP||(a||(a=cc.EventListener.create({event:cc.EventListener.KEYBOARD,onKeyPressed:function(t,e){e.type=s.KEY_DOWN,cc.systemEvent.dispatchEvent(e)},onKeyReleased:function(t,e){e.type=s.KEY_UP,cc.systemEvent.dispatchEvent(e)}})),n.hasEventListener(cc.EventListener.ListenerID.KEYBOARD)||n.addListener(a,1)),t===s.DEVICEMOTION&&(o||(o=cc.EventListener.create({event:cc.EventListener.ACCELERATION,callback:function(t,e){e.type=s.DEVICEMOTION,cc.systemEvent.dispatchEvent(e)}})),n.hasEventListener(cc.EventListener.ListenerID.ACCELERATION)||n.addListener(o,1))},off:function(t,e,i){if(this._super(t,e,i),a&&(t===s.KEY_DOWN||t===s.KEY_UP)){var r=this.hasEventListener(s.KEY_DOWN),c=this.hasEventListener(s.KEY_UP);r||c||n.removeListener(a)}o&&t===s.DEVICEMOTION&&n.removeListener(o)}});cc.SystemEvent=e.exports=c,cc.systemEvent=new cc.SystemEvent}),{"../event-manager":130,"../event/event-target":132,"../platform/CCInputManager":153}],136:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("../value-types/vec3")),r=a(t("../value-types/mat3")),s=a(t("./enums"));function a(t){return t&&t.__esModule?t:{default:t}}var o=new n.default,c=new n.default,u=new r.default,l=function(t,e,i){var r=u.m,s=i.m;r[0]=Math.abs(s[0]),r[1]=Math.abs(s[1]),r[2]=Math.abs(s[2]),r[3]=Math.abs(s[4]),r[4]=Math.abs(s[5]),r[5]=Math.abs(s[6]),r[6]=Math.abs(s[8]),r[7]=Math.abs(s[9]),r[8]=Math.abs(s[10]),n.default.transformMat3(t,e,u)},h=(function(){function t(t,e,i,r,a,o){this.center=void 0,this.halfExtents=void 0,this._type=void 0,this._type=s.default.SHAPE_AABB,this.center=new n.default(t,e,i),this.halfExtents=new n.default(r,a,o)}t.create=function(e,i,n,r,s,a){return new t(e,i,n,r,s,a)},t.clone=function(e){return new t(e.center.x,e.center.y,e.center.z,e.halfExtents.x,e.halfExtents.y,e.halfExtents.z)},t.copy=function(t,e){return n.default.copy(t.center,e.center),n.default.copy(t.halfExtents,e.halfExtents),t},t.fromPoints=function(t,e,i){return n.default.scale(t.center,n.default.add(o,e,i),.5),n.default.scale(t.halfExtents,n.default.sub(c,i,e),.5),t},t.set=function(t,e,i,r,s,a,o){return n.default.set(t.center,e,i,r),n.default.set(t.halfExtents,s,a,o),t};var e=t.prototype;return e.getBoundary=function(t,e){n.default.sub(t,this.center,this.halfExtents),n.default.add(e,this.center,this.halfExtents)},e.transform=function(t,e,i,r,s){s||(s=this),n.default.transformMat4(s.center,this.center,t),l(s.halfExtents,this.halfExtents,t)},t})();i.default=h,e.exports=i.default}),{"../value-types/mat3":239,"../value-types/vec3":248,"./enums":137}],137:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0,i.default={SHAPE_RAY:1,SHAPE_LINE:2,SHAPE_SPHERE:4,SHAPE_AABB:8,SHAPE_OBB:16,SHAPE_PLANE:32,SHAPE_TRIANGLE:64,SHAPE_FRUSTUM:128,SHAPE_FRUSTUM_ACCURATE:256},e.exports=i.default}),{}],138:[(function(t,e){"use strict";var i=t("../components/CCRenderComponent"),n=t("../assets/material/CCMaterial"),r=t("./types"),s=r.LineCap,a=r.LineJoin,o=cc.Class({name:"cc.Graphics",extends:i,editor:!1,ctor:function(){this._impl=new o._Impl(this)},properties:{_lineWidth:2,_strokeColor:cc.Color.BLACK,_lineJoin:a.MITER,_lineCap:s.BUTT,_fillColor:cc.Color.WHITE,_miterLimit:10,lineWidth:{get:function(){return this._lineWidth},set:function(t){this._lineWidth=t,this._impl.lineWidth=t}},lineJoin:{get:function(){return this._lineJoin},set:function(t){this._lineJoin=t,this._impl.lineJoin=t},type:a},lineCap:{get:function(){return this._lineCap},set:function(t){this._lineCap=t,this._impl.lineCap=t},type:s},strokeColor:{get:function(){return this._strokeColor},set:function(t){this._impl.strokeColor=this._strokeColor=cc.color(t)}},fillColor:{get:function(){return this._fillColor},set:function(t){this._impl.fillColor=this._fillColor=cc.color(t)}},miterLimit:{get:function(){return this._miterLimit},set:function(t){this._miterLimit=t,this._impl.miterLimit=t}}},statics:{LineJoin:a,LineCap:s},onRestore:function(){this._impl||(this._impl=new o._Impl(this))},onDestroy:function(){this.clear(!0),this._super(),this._impl=null},_getDefaultMaterial:function(){return n.getBuiltinMaterial("2d-graphics")},_updateMaterial:function(){var t=this._materials[0];t&&(void 0!==t.getDefine("CC_USE_MODEL")&&t.define("CC_USE_MODEL",!0),void 0!==t.getDefine("CC_SUPPORT_standard_derivatives")&&cc.sys.glExtension("OES_standard_derivatives")&&t.define("CC_SUPPORT_standard_derivatives",!0))},moveTo:function(t,e){this._impl.moveTo(t,e)},lineTo:function(t,e){this._impl.lineTo(t,e)},bezierCurveTo:function(t,e,i,n,r,s){this._impl.bezierCurveTo(t,e,i,n,r,s)},quadraticCurveTo:function(t,e,i,n){this._impl.quadraticCurveTo(t,e,i,n)},arc:function(t,e,i,n,r,s){this._impl.arc(t,e,i,n,r,s)},ellipse:function(t,e,i,n){this._impl.ellipse(t,e,i,n)},circle:function(t,e,i){this._impl.circle(t,e,i)},rect:function(t,e,i,n){this._impl.rect(t,e,i,n)},roundRect:function(t,e,i,n,r){this._impl.roundRect(t,e,i,n,r)},fillRect:function(t,e,i,n){this.rect(t,e,i,n),this.fill()},clear:function(t){this._impl.clear(t),this._assembler&&this._assembler.clear(t)},close:function(){this._impl.close()},stroke:function(){this._assembler||this._resetAssembler(),this._assembler.stroke(this)},fill:function(){this._assembler||this._resetAssembler(),this._assembler.fill(this)}});cc.Graphics=e.exports=o,cc.Graphics.Types=r,cc.Graphics.Helper=t("./helper")}),{"../assets/material/CCMaterial":77,"../components/CCRenderComponent":110,"./helper":139,"./types":141}],139:[(function(t,e){"use strict";var i=t("./types").PointFlags,n=Math.PI,r=Math.min,s=Math.max,a=Math.cos,o=Math.sin,c=Math.abs,u=Math.sign,l=.5522847493;e.exports={arc:function(t,e,i,u,l,h,_){var f,d,p,v=0,g=0,m=0,y=0,T=0,E=0,A=0,C=0,x=0,b=0,S=0,R=0,w=0;if(g=h-l,_=_||!1)if(c(g)>=2*n)g=2*n;else for(;g<0;)g+=2*n;else if(c(g)>=2*n)g=2*-n;else for(;g>0;)g-=2*n;for(p=0|s(1,r(c(g)/(.5*n)+.5,5)),m=c(4/3*(1-a(f=g/p/2))/o(f)),_||(m=-m),d=0;d<=p;d++)E=e+(y=a(v=l+g*(d/p)))*u,A=i+(T=o(v))*u,C=-T*u*m,x=y*u*m,0===d?t.moveTo(E,A):t.bezierCurveTo(b+R,S+w,E-C,A-x,E,A),b=E,S=A,R=C,w=x},ellipse:function(t,e,i,n,r){t.moveTo(e-n,i),t.bezierCurveTo(e-n,i+r*l,e-n*l,i+r,e,i+r),t.bezierCurveTo(e+n*l,i+r,e+n,i+r*l,e+n,i),t.bezierCurveTo(e+n,i-r*l,e+n*l,i-r,e,i-r),t.bezierCurveTo(e-n*l,i-r,e-n,i-r*l,e-n,i),t.close()},roundRect:function(t,e,i,n,s,a){if(a<.1)t.rect(e,i,n,s);else{var o=r(a,.5*c(n))*u(n),h=r(a,.5*c(s))*u(s);t.moveTo(e,i+h),t.lineTo(e,i+s-h),t.bezierCurveTo(e,i+s-h*(1-l),e+o*(1-l),i+s,e+o,i+s),t.lineTo(e+n-o,i+s),t.bezierCurveTo(e+n-o*(1-l),i+s,e+n,i+s-h*(1-l),e+n,i+s-h),t.lineTo(e+n,i+h),t.bezierCurveTo(e+n,i+h*(1-l),e+n-o*(1-l),i,e+n-o,i),t.lineTo(e+o,i),t.bezierCurveTo(e+o*(1-l),i,e,i+h*(1-l),e,i+h),t.close()}},tesselateBezier:function t(e,n,r,s,a,o,u,l,h,_,f){var d,p,v,g,m,y,T,E,A,C,x,b,S,R,w,I;_>10||(m=.5*(o+l),y=.5*(u+h),T=.5*((d=.5*(n+s))+(v=.5*(s+o))),E=.5*((p=.5*(r+a))+(g=.5*(a+u))),((w=c((s-l)*(R=h-r)-(a-h)*(S=l-n)))+(I=c((o-l)*R-(u-h)*S)))*(w+I)0){for(var p=new DataView(i,r),v=n,g=c.num,m=0;m0||this.disableRender()},_updateMaterial:function(){var t=this.textures;if(t&&t.length>0)for(var e=this._getDefaultMaterial(),i=0;i>2,f=l.vertexOffset,d=u._vData,p=u._iData;!i.worldMatDirty&&this._worldDatas[n]||this._updateWorldVertices(n,a,r,s,t.node._worldMatrix),d.set(this._worldDatas[n],_);for(var v=0;v0?a:null,!0);var h=o.prototype;if(e&&(l||(i.extend(o,e),h=o.prototype),o.$super=e),n){for(var _=n.length-1;_>=0;_--){var f=n[_];p(h,f.prototype),p(o,f,(function(t){return f.hasOwnProperty(t)&&!0})),w._isCCClass(f)&&p(s.getClassAttrs(o),s.getClassAttrs(f))}h.constructor=o}return l||(h.__initProps__=A),i.setClassName(t,o),o}function g(t,e,n,r){var s=cc.Component,a=cc._RF.peek();if(a&&i.isChildClassOf(e,s)){if(i.isChildClassOf(a.cls,s))return cc.errorID(3615),null;t=t||a.script}var o=v(t,e,n,r);if(a)if(i.isChildClassOf(e,s)){var c=a.uuid;c&&i._setClassId(c,o),a.cls=o}else i.isChildClassOf(a.cls,s)||(a.cls=o);return o}function m(t){for(var e=i.getClassName(t),n=t.constructor,r="new "+e+"(",s=0;s0){var a="].apply(this,arguments);\n";if(1===s)r+="CCClass.__ctors__[0"+a;else{r+="var cs=CCClass.__ctors__;\n";for(var o=0;o=0)){var s=e[r];if("function"==typeof s){var a=i.getPropertyDescriptor(t.prototype,r);if(a){var o=a.value;if("function"==typeof o){b.test(s)&&(n=!0,e[r]=(function(t,e){return function(){var i=this._super;this._super=t;var n=e.apply(this,arguments);return this._super=i,n}})(o,s));continue}}}}return n}function R(t,e,i,n,r,c){if(t.__props__=[],n&&n.__props__&&(t.__props__=n.__props__.slice()),r)for(var u=0;u=0)){var f=t[_];o.validateMethodWithProps(f,_,e,s,n)&&i.value(s.prototype,_,f,!0,!0)}var d=t.editor;return d&&cc.Component._registerEditorProps(s,d),s}/xyz/.test((function(){xyz})),w._isCCClass=function(t){return t&&t.hasOwnProperty("__ctors__")},w._fastDefine=function(t,e,n){i.setClassName(t,e);for(var r=e.__props__=e.__values__=Object.keys(n),o=s.getClassAttrs(e),c=0;c=2&&((o||u())[c+"min"]=_[0],o[c+"max"]=_[1],_.length>2&&(o[c+"step"]=_[2])),h("min","number"),h("max","number"),h("step","number"),h("userData","object")}cc.Class=w,e.exports={isArray:function(t){return t=d(t),Array.isArray(t)},fastDefine:w._fastDefine,getNewValueTypeCode:m,IDENTIFIER_RE:E,escapeForJS:y,getDefault:d}}),{"./CCEnum":151,"./attribute":161,"./js":170,"./preprocess-class":171,"./requiring-frame":172,"./utils":173}],150:[(function(t,e){"use strict";t("./CCClass");var i=t("./preprocess-class"),n=t("./js"),r="__ccclassCache__";function s(t){return t}function a(t,e){return t[e]||(t[e]={})}function o(t){return function(e){return"function"==typeof e?t(e):function(i){return t(i,e)}}}function c(t,e){return function(t){return function(i){return e(i,t)}}}var u=c.bind(null,!1);function l(){return c.bind(null,!1)}var h=l(),_=l();function f(t){return a(t,r)}function d(t){var e;try{e=t()}catch(i){return t}return"object"!=typeof e||null===e?e:t}function p(t){var e;try{e=new t}catch(i){return{}}return e}function v(t,e,r,s,a,o){var c,u=a&&(a.get||a.set);s&&(c=i.getFullFormOfProperty(s,u));var l=e[r],h=n.mixin(l||{},c||s||{});if(u)a.get&&(h.get=a.get),a.set&&(h.set=a.set);else{var _=void 0;if(a)a.initializer&&(_=d(a.initializer));else{var f=o.default||(o.default=p(t));f.hasOwnProperty(r)&&(_=f[r])}h.default=_}e[r]=h}var g=o((function(t,e){var i=n.getSuper(t);i===Object&&(i=null);var s={name:e,extends:i,ctor:t,__ES6__:!0},a=t[r];if(a){var o=a.proto;o&&n.mixin(s,o),t[r]=void 0}return cc.Class(s)}));function m(t,e,i){return t((function(t,n){var r=f(t);if(r){var s=void 0!==i?i:n,o=a(r,"proto");a(o,"editor")[e]=s}}),e)}function y(t){return t(s)}var T=y(o),E=m(u,"requireComponent"),A=y(h),C=m(_,"executionOrder"),x=y(o),b=y(o),S=y(h),R=y(h),w=y(h);cc._decorator=e.exports={ccclass:g,property:function(t,e,i){var n=null;function r(t,e,i){var r=f(t.constructor);if(r){var s=a(r,"proto"),o=a(s,"properties");v(t.constructor,o,e,n,i,r)}}if(void 0===e)return n=t,r;r(t,e,i)},executeInEditMode:T,requireComponent:E,menu:A,executionOrder:C,disallowMultiple:x,playOnFocus:b,inspector:S,icon:R,help:w,mixins:function(){for(var t=[],e=0;ee){var l=u.getID();delete a[l],delete o[l],this._touchCount--,-1===r?(r=c,this._indexBitsUsed|=1<>=1}return r},_glView:null,_updateCanvasBoundingRect:function(){var t=cc.game.canvas,e=this._canvasBoundingRect,i=document.documentElement,n=window.pageXOffset-i.clientLeft,r=window.pageYOffset-i.clientTop;if(t.getBoundingClientRect){var s=t.getBoundingClientRect();e.left=s.left+n,e.top=s.top+r,e.width=s.width,e.height=s.height}else t instanceof HTMLCanvasElement?(e.left=n,e.top=r,e.width=t.width,e.height=t.height):(e.left=n,e.top=r,e.width=parseInt(t.style.width),e.height=parseInt(t.style.height))},handleTouchesBegin:function(t){for(var e,i,s=n.now(),a=[],o=this._touches,c=this._touchesIntegerDict,u=this._touchesCache,l=0,h=t.length;l0){this._glView._convertTouchesWithScale(a);var d=new cc.Event.EventTouch(a);d._eventCode=cc.Event.EventTouch.BEGAN,r.dispatchEvent(d)}},handleTouchesMove:function(t){for(var e,i,s=n.now(),a=[],o=this._touches,c=this._touchesIntegerDict,u=0,l=t.length;u0){this._glView._convertTouchesWithScale(a);var _=new cc.Event.EventTouch(a);_._eventCode=cc.Event.EventTouch.MOVED,r.dispatchEvent(_)}},handleTouchesEnd:function(t){var e=this.getSetOfTouchesEndOrCancel(t);if(e.length>0){this._glView._convertTouchesWithScale(e);var i=new cc.Event.EventTouch(e);i._eventCode=cc.Event.EventTouch.ENDED,r.dispatchEvent(i)}this._preTouchPool.length=0},handleTouchesCancel:function(t){var e=this.getSetOfTouchesEndOrCancel(t);if(e.length>0){this._glView._convertTouchesWithScale(e);var i=new cc.Event.EventTouch(e);i._eventCode=cc.Event.EventTouch.CANCELED,r.dispatchEvent(i)}this._preTouchPool.length=0},getSetOfTouchesEndOrCancel:function(t){for(var e,i,n,r=[],s=this._touches,a=this._touchesIntegerDict,o=this._touchesCache,c=0,u=t.length;c=0;r--)if(i[r].getID()===n){e=i[r];break}return e||(e=t),e},setPreTouch:function(t){for(var e=!1,i=this._preTouchPool,n=t.getID(),r=i.length-1;r>=0;r--)if(i[r].getID()===n){i[r]=t,e=!0;break}e||(i.length<=50?i.push(t):(i[this._preTouchPoolPointer]=t,this._preTouchPoolPointer=(this._preTouchPoolPointer+1)%50))},getTouchByXY:function(t,e,i){var n=this._preTouchPoint,r=this._glView.convertToLocationInView(t,e,i),s=new cc.Touch(r.x,r.y,0);return s._setPrevPoint(n.x,n.y),n.x=r.x,n.y=r.y,s},getMouseEvent:function(t,e,i){var n=this._prevMousePoint,r=new cc.Event.EventMouse(i);return r._setPrevCursor(n.x,n.y),n.x=t.x,n.y=t.y,this._glView._convertMouseToLocationInView(n,e),r.setLocation(n.x,n.y),r},getPointByEvent:function(t,e){return cc.sys.browserType!==cc.sys.BROWSER_TYPE_QQ&&cc.sys.browserType!==cc.sys.BROWSER_TYPE_UC&&cc.sys.browserType!==cc.sys.BROWSER_TYPE_SAFARI||this._updateCanvasBoundingRect(),null!=t.pageX?{x:t.pageX,y:t.pageY}:(e.left-=document.body.scrollLeft,e.top-=document.body.scrollTop,{x:t.clientX,y:t.clientY})},getTouchesByEvent:function(t,e){for(var i,r,a,o=[],c=this._glView,u=this._preTouchPoint,l=t.changedTouches.length,h=0;hthis._accelInterval&&(this._accelCurTime-=this._accelInterval,r.dispatchEvent(new cc.Event.EventAcceleration(this._acceleration))),this._accelCurTime+=t}};e.exports=cc.internal.inputManager=a}),{"../event-manager":130,"./CCMacro":154,"./CCSys":158}],154:[(function(t,e){"use strict";cc.macro={RAD:Math.PI/180,DEG:180/Math.PI,REPEAT_FOREVER:Number.MAX_VALUE-1,FLT_EPSILON:1.192092896e-7,MIN_ZINDEX:-Math.pow(2,15),MAX_ZINDEX:Math.pow(2,15)-1,ONE:1,ZERO:0,SRC_ALPHA:770,SRC_ALPHA_SATURATE:776,SRC_COLOR:768,DST_ALPHA:772,DST_COLOR:774,ONE_MINUS_SRC_ALPHA:771,ONE_MINUS_SRC_COLOR:769,ONE_MINUS_DST_ALPHA:773,ONE_MINUS_DST_COLOR:775,ONE_MINUS_CONSTANT_ALPHA:32772,ONE_MINUS_CONSTANT_COLOR:32770,ORIENTATION_PORTRAIT:1,ORIENTATION_LANDSCAPE:2,ORIENTATION_AUTO:3,DENSITYDPI_DEVICE:"device-dpi",DENSITYDPI_HIGH:"high-dpi",DENSITYDPI_MEDIUM:"medium-dpi",DENSITYDPI_LOW:"low-dpi",FIX_ARTIFACTS_BY_STRECHING_TEXEL_TMX:!0,DIRECTOR_STATS_POSITION:cc.v2(0,0),ENABLE_STACKABLE_ACTIONS:!0,TOUCH_TIMEOUT:5e3,BATCH_VERTEX_COUNT:2e4,ENABLE_TILEDMAP_CULLING:!0,ENABLE_TRANSPARENT_CANVAS:!1,ENABLE_WEBGL_ANTIALIAS:!1,ENABLE_CULLING:!1,CLEANUP_IMAGE_CACHE:!1,SHOW_MESH_WIREFRAME:!1,SHOW_MESH_NORMAL:!1,ENABLE_MULTI_TOUCH:!0,ALLOW_IMAGE_BITMAP:!cc.sys.isMobile,ENABLE_NATIVE_TTF_RENDERER:!0},Object.defineProperty(cc.macro,"ROTATE_ACTION_CCW",{set:function(t){cc.RotateTo&&cc.RotateBy&&(cc.RotateTo._reverse=cc.RotateBy._reverse=t)}}),cc.macro.SUPPORT_TEXTURE_FORMATS=[".pkm",".pvr",".webp",".jpg",".jpeg",".bmp",".png"],cc.macro.KEY={none:0,back:6,menu:18,backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pause:19,capslock:20,escape:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,select:41,insert:45,Delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,num0:96,num1:97,num2:98,num3:99,num4:100,num5:101,num6:102,num7:103,num8:104,num9:105,"*":106,"+":107,"-":109,numdel:110,"/":111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,";":186,semicolon:186,equal:187,"=":187,",":188,comma:188,dash:189,".":190,period:190,forwardslash:191,grave:192,"[":219,openbracket:219,backslash:220,"]":221,closebracket:221,quote:222,dpadLeft:1e3,dpadRight:1001,dpadUp:1003,dpadDown:1004,dpadCenter:1005},cc.macro.ImageFormat=cc.Enum({JPG:0,PNG:1,TIFF:2,WEBP:3,PVR:4,ETC:5,S3TC:6,ATITC:7,TGA:8,RAWDATA:9,UNKNOWN:10}),cc.macro.BlendFactor=cc.Enum({ONE:1,ZERO:0,SRC_ALPHA:770,SRC_COLOR:768,DST_ALPHA:772,DST_COLOR:774,ONE_MINUS_SRC_ALPHA:771,ONE_MINUS_SRC_COLOR:769,ONE_MINUS_DST_ALPHA:773,ONE_MINUS_DST_COLOR:775}),cc.macro.TextAlignment=cc.Enum({LEFT:0,CENTER:1,RIGHT:2}),cc.macro.VerticalTextAlignment=cc.Enum({TOP:0,CENTER:1,BOTTOM:2}),e.exports=cc.macro}),{}],155:[(function(t,e){"use strict";var i=t("./js"),n=t("./CCClass"),r=1;function s(){this._name="",this._objFlags=0}n.fastDefine("cc.Object",s,{_name:"",_objFlags:0}),i.value(s,"Flags",{Destroyed:r,DontSave:8,EditorOnly:16,Dirty:32,DontDestroy:64,PersistentMask:-4192741,Destroying:128,Deactivating:256,LockedInEditor:512,HideInHierarchy:1024,IsPreloadStarted:8192,IsOnLoadStarted:32768,IsOnLoadCalled:16384,IsOnEnableCalled:2048,IsStartCalled:65536,IsEditorOnEnableCalled:4096,IsPositionLocked:1<<21,IsRotationLocked:1<<17,IsScaleLocked:1<<18,IsAnchorLocked:1<<19,IsSizeLocked:1<<20});var a=[];i.value(s,"_deferredDestroy",(function(){for(var t=a.length,e=0;e0)return void(t.webkitEnterFullscreen&&t.webkitEnterFullscreen());t.setAttribute("x5-video-player-fullscreen","true")}if(this._supportsFullScreen){if(t=t||document.documentElement,e){var n=this._fn.fullscreenchange;this._onfullscreenchange&&document.removeEventListener(n,this._onfullscreenchange),this._onfullscreenchange=e,document.addEventListener(n,e,!1)}if(i){var r=this._fn.fullscreenerror;this._onfullscreenerror&&document.removeEventListener(r,this._onfullscreenerror),this._onfullscreenerror=i,document.addEventListener(r,i,{once:!0})}var s=t[this._fn.requestFullscreen]();void 0===document[this._fn.fullscreenerror]&&window.Promise&&s instanceof Promise&&s.catch((function(){}))}},exitFullScreen:function(t){if(t&&"video"===t.tagName.toLowerCase()){if(cc.sys.os===cc.sys.OS_IOS&&cc.sys.isBrowser)return void(t.webkitExitFullscreen&&t.webkitExitFullscreen());t.setAttribute("x5-video-player-fullscreen","false")}return!this._supportsFullScreen||document[this._fn.exitFullscreen]()},autoFullScreen:function(t,e){t=t||document.body,this._ensureFullScreen(t,e),this.requestFullScreen(t,e)},disableAutoFullScreen:function(t){var e=cc.game.canvas||t,i=this._touchEvent;this._preOnTouch&&(e.removeEventListener(i,this._preOnTouch),this._preOnTouch=null)},_ensureFullScreen:function(t,e){var i=this,n=cc.game.canvas||t,r=this._fn.fullscreenerror,s=this._touchEvent;function a(){i._preOnFullScreenError=null,i._preOnTouch&&n.removeEventListener(s,i._preOnTouch),i._preOnTouch=function(){i._preOnTouch=null,i.requestFullScreen(t,e)},n.addEventListener(s,i._preOnTouch,{once:!0})}this._preOnFullScreenError&&t.removeEventListener(r,this._preOnFullScreenError),this._preOnFullScreenError=a,t.addEventListener(r,a,{once:!0})}},cc.screen.init()}),{}],158:[(function(t,e){"use strict";window._CCSettings&&_CCSettings.platform;var i="undefined"==typeof window?global:window,n=cc&&cc.sys?cc.sys:(function(){cc.sys={};var t,e,n=cc.sys;if(n.LANGUAGE_ENGLISH="en",n.LANGUAGE_CHINESE="zh",n.LANGUAGE_FRENCH="fr",n.LANGUAGE_ITALIAN="it",n.LANGUAGE_GERMAN="de",n.LANGUAGE_SPANISH="es",n.LANGUAGE_DUTCH="du",n.LANGUAGE_RUSSIAN="ru",n.LANGUAGE_KOREAN="ko",n.LANGUAGE_JAPANESE="ja",n.LANGUAGE_HUNGARIAN="hu",n.LANGUAGE_PORTUGUESE="pt",n.LANGUAGE_ARABIC="ar",n.LANGUAGE_NORWEGIAN="no",n.LANGUAGE_POLISH="pl",n.LANGUAGE_TURKISH="tr",n.LANGUAGE_UKRAINIAN="uk",n.LANGUAGE_ROMANIAN="ro",n.LANGUAGE_BULGARIAN="bg",n.LANGUAGE_UNKNOWN="unknown",n.OS_IOS="iOS",n.OS_ANDROID="Android",n.OS_WINDOWS="Windows",n.OS_MARMALADE="Marmalade",n.OS_LINUX="Linux",n.OS_BADA="Bada",n.OS_BLACKBERRY="Blackberry",n.OS_OSX="OS X",n.OS_WP8="WP8",n.OS_WINRT="WINRT",n.OS_UNKNOWN="Unknown",n.UNKNOWN=-1,n.WIN32=0,n.LINUX=1,n.MACOS=2,n.ANDROID=3,n.IPHONE=4,n.IPAD=5,n.BLACKBERRY=6,n.NACL=7,n.EMSCRIPTEN=8,n.TIZEN=9,n.WINRT=10,n.WP8=11,n.MOBILE_BROWSER=100,n.DESKTOP_BROWSER=101,n.EDITOR_PAGE=102,n.EDITOR_CORE=103,n.WECHAT_GAME=104,n.QQ_PLAY=105,n.FB_PLAYABLE_ADS=106,n.BAIDU_GAME=107,n.VIVO_GAME=108,n.OPPO_GAME=109,n.HUAWEI_GAME=110,n.XIAOMI_GAME=111,n.JKW_GAME=112,n.ALIPAY_GAME=113,n.WECHAT_GAME_SUB=114,n.BAIDU_GAME_SUB=115,n.QTT_GAME=116,n.BYTEDANCE_GAME=117,n.BYTEDANCE_GAME_SUB=118,n.LINKSURE=119,n.TAOBAO=120,n.BROWSER_TYPE_WECHAT="wechat",n.BROWSER_TYPE_ANDROID="androidbrowser",n.BROWSER_TYPE_IE="ie",n.BROWSER_TYPE_EDGE="edge",n.BROWSER_TYPE_QQ="qqbrowser",n.BROWSER_TYPE_MOBILE_QQ="mqqbrowser",n.BROWSER_TYPE_UC="ucbrowser",n.BROWSER_TYPE_UCBS="ucbs",n.BROWSER_TYPE_360="360browser",n.BROWSER_TYPE_BAIDU_APP="baiduboxapp",n.BROWSER_TYPE_BAIDU="baidubrowser",n.BROWSER_TYPE_MAXTHON="maxthon",n.BROWSER_TYPE_OPERA="opera",n.BROWSER_TYPE_OUPENG="oupeng",n.BROWSER_TYPE_MIUI="miuibrowser",n.BROWSER_TYPE_FIREFOX="firefox",n.BROWSER_TYPE_SAFARI="safari",n.BROWSER_TYPE_CHROME="chrome",n.BROWSER_TYPE_LIEBAO="liebao",n.BROWSER_TYPE_QZONE="qzone",n.BROWSER_TYPE_SOUGOU="sogou",n.BROWSER_TYPE_HUAWEI="huawei",n.BROWSER_TYPE_UNKNOWN="unknown",n.isNative=!1,n.isBrowser="object"==typeof window&&"object"==typeof document&&!0,n.glExtension=function(t){return!!cc.renderer.device.ext(t)},n.getMaxJointMatrixSize=function(){if(!n._maxJointMatrixSize){var t=cc.game._renderContext,e=Math.floor(t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS)/4)-10;n._maxJointMatrixSize=e<50?0:50}return n._maxJointMatrixSize},n.getSafeAreaRect=function(){var t=cc.view.getVisibleSize();return cc.rect(0,0,t.width,t.height)},i.__globalAdapter&&i.__globalAdapter.adaptSys)i.__globalAdapter.adaptSys(n);else{var r=window,s=r.navigator,a=document,o=a.documentElement,c=s.userAgent.toLowerCase();n.isMobile=/mobile|android|iphone|ipad/.test(c),"undefined"!=typeof FbPlayableAd?n.platform=n.FB_PLAYABLE_ADS:n.platform=n.isMobile?n.MOBILE_BROWSER:n.DESKTOP_BROWSER;var u=s.language;u=u||s.browserLanguage,n.languageCode=u.toLowerCase(),u=u?u.split("-")[0]:n.LANGUAGE_ENGLISH,n.language=u;var l=!1,h=!1,_="",f=0,d=/android\s*(\d+(?:\.\d+)*)/i.exec(c)||/android\s*(\d+(?:\.\d+)*)/i.exec(s.platform);d&&(l=!0,_=d[1]||"",f=parseInt(_)||0),(d=/(iPad|iPhone|iPod).*OS ((\d+_?){2,3})/i.exec(c))?(h=!0,_=d[2]||"",f=parseInt(_)||0):(/(iPhone|iPad|iPod)/.exec(s.platform)||"MacIntel"===s.platform&&s.maxTouchPoints&&s.maxTouchPoints>1)&&(h=!0,_="",f=0);var p=n.OS_UNKNOWN;-1!==s.appVersion.indexOf("Win")?p=n.OS_WINDOWS:h?p=n.OS_IOS:-1!==s.appVersion.indexOf("Mac")?p=n.OS_OSX:-1!==s.appVersion.indexOf("X11")&&-1===s.appVersion.indexOf("Linux")?p=n.OS_UNIX:l?p=n.OS_ANDROID:-1===s.appVersion.indexOf("Linux")&&-1===c.indexOf("ubuntu")||(p=n.OS_LINUX),n.os=p,n.osVersion=_,n.osMainVersion=f,n.browserType=n.BROWSER_TYPE_UNKNOWN,(function(){var t=/mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|ucbs|360 aphone|360browser|baiduboxapp|baidubrowser|maxthon|mxbrowser|miuibrowser/i.exec(c)||/qq|ucbrowser|ubrowser|edge|HuaweiBrowser/i.exec(c)||/chrome|safari|firefox|trident|opera|opr\/|oupeng/i.exec(c),e=t?t[0].toLowerCase():n.BROWSER_TYPE_UNKNOWN;"safari"===e&&l?e=n.BROWSER_TYPE_ANDROID:"qq"===e&&c.match(/android.*applewebkit/i)&&(e=n.BROWSER_TYPE_ANDROID);var i={micromessenger:n.BROWSER_TYPE_WECHAT,trident:n.BROWSER_TYPE_IE,edge:n.BROWSER_TYPE_EDGE,"360 aphone":n.BROWSER_TYPE_360,mxbrowser:n.BROWSER_TYPE_MAXTHON,"opr/":n.BROWSER_TYPE_OPERA,ubrowser:n.BROWSER_TYPE_UC,huaweibrowser:n.BROWSER_TYPE_HUAWEI};"qqbrowser"!==e&&"mqqbrowser"!==e||c.match(/wechat|micromessenger/i)&&(e=n.BROWSER_TYPE_WECHAT),n.browserType=i[e]||e})(),n.browserVersion="",(e=c.match(/(mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|uc|ucbs|360 aphone|360|baiduboxapp|baidu|maxthon|mxbrowser|miui(?:.hybrid)?)(mobile)?(browser)?\/?([\d.]+)/i))||(e=c.match(/(qq|chrome|safari|firefox|trident|opera|opr\/|oupeng)(mobile)?(browser)?\/?([\d.]+)/i)),n.browserVersion=e?e[4]:"";var v=window.innerWidth||document.documentElement.clientWidth,g=window.innerHeight||document.documentElement.clientHeight,m=window.devicePixelRatio||1;n.windowPixelResolution={width:m*v,height:m*g},n._checkWebGLRenderMode=function(){if(cc.game.renderType!==cc.game.RENDER_TYPE_WEBGL)throw new Error("This feature supports WebGL render mode only.")};var y=document.createElement("canvas");try{var T=n.localStorage=r.localStorage;T.setItem("storage",""),T.removeItem("storage"),T=null}catch(w){var E=function(){cc.warnID(5200)};n.localStorage={getItem:E,setItem:E,removeItem:E,clear:E}}var A=y.toDataURL("image/webp").startsWith("data:image/webp"),C=!!y.getContext("2d"),x=!1;r.WebGLRenderingContext&&(x=!0);var b,S=n.capabilities={canvas:C,opengl:x,webp:A,imageBitmap:!1};"undefined"!=typeof createImageBitmap&&"undefined"!=typeof Blob&&(y.width=y.height=2,createImageBitmap(y,{}).then((function(t){S.imageBitmap=!0,t.close&&t.close()})).catch((function(){}))),(void 0!==o.ontouchstart||void 0!==a.ontouchstart||s.msPointerEnabled)&&(S.touches=!0),void 0!==o.onmouseup&&(S.mouse=!0),void 0!==o.onkeyup&&(S.keyboard=!0),(r.DeviceMotionEvent||r.DeviceOrientationEvent)&&(S.accelerometer=!0),(function(){n.browserVersion;var t=!!(window.AudioContext||window.webkitAudioContext||window.mozAudioContext);b={ONLY_ONE:!1,WEB_AUDIO:t,DELAY_CREATE_CTX:!1},n.os===n.OS_IOS&&(b.USE_LOADER_EVENT="loadedmetadata"),n.browserType===n.BROWSER_TYPE_FIREFOX&&(b.DELAY_CREATE_CTX=!0,b.USE_LOADER_EVENT="canplay"),n.os===n.OS_ANDROID&&n.browserType===n.BROWSER_TYPE_UC&&(b.ONE_SOURCE=!0)})();try{b.WEB_AUDIO&&(b.context=new(window.AudioContext||window.webkitAudioContext||window.mozAudioContext),b.DELAY_CREATE_CTX&&setTimeout((function(){b.context=new(window.AudioContext||window.webkitAudioContext||window.mozAudioContext)}),0))}catch(I){b.WEB_AUDIO=!1,cc.logID(5201)}var R=[];(t=document.createElement("audio")).canPlayType&&(t.canPlayType('audio/ogg; codecs="vorbis"')&&R.push(".ogg"),t.canPlayType("audio/mpeg")&&R.push(".mp3"),t.canPlayType('audio/wav; codecs="1"')&&R.push(".wav"),t.canPlayType("audio/mp4")&&R.push(".mp4"),t.canPlayType("audio/x-m4a")&&R.push(".m4a")),b.format=R,n.__audioSupport=b}return n.NetworkType={NONE:0,LAN:1,WWAN:2},n.getNetworkType=function(){return n.NetworkType.LAN},n.getBatteryLevel=function(){return 1},n.garbageCollect=function(){},n.restartVM=function(){},n.isObjectValid=function(t){return!!t},n.dump=function(){var t="";t+="isMobile : "+this.isMobile+"\r\n",t+="language : "+this.language+"\r\n",t+="browserType : "+this.browserType+"\r\n",t+="browserVersion : "+this.browserVersion+"\r\n",t+="capabilities : "+JSON.stringify(this.capabilities)+"\r\n",t+="os : "+this.os+"\r\n",t+="osVersion : "+this.osVersion+"\r\n",t+="platform : "+this.platform+"\r\n",t+="Using "+(cc.game.renderType===cc.game.RENDER_TYPE_WEBGL?"WEBGL":"CANVAS")+" renderer.\r\n",cc.log(t)},n.openURL=function(t){window.open(t)},n.now=function(){return Date.now?Date.now():+new Date},n})();e.exports=n}),{}],159:[(function(t,e){"use strict";var i=t("../event/event-target"),n=t("../platform/js"),r=t("../renderer");t("../platform/CCClass");var s={init:function(){this.html=document.getElementsByTagName("html")[0]},availWidth:function(t){return t&&t!==this.html?t.clientWidth:window.innerWidth},availHeight:function(t){return t&&t!==this.html?t.clientHeight:window.innerHeight},meta:{width:"device-width"},adaptationType:cc.sys.browserType};switch(cc.sys.os===cc.sys.OS_IOS&&(s.adaptationType=cc.sys.BROWSER_TYPE_SAFARI),s.adaptationType){case cc.sys.BROWSER_TYPE_SAFARI:case cc.sys.BROWSER_TYPE_SOUGOU:case cc.sys.BROWSER_TYPE_UC:s.meta["minimal-ui"]="true",s.availWidth=function(t){return t.clientWidth},s.availHeight=function(t){return t.clientHeight}}var a=null,o=function(){i.call(this);var t=this,e=cc.ContainerStrategy,n=cc.ContentStrategy;s.init(this),t._frameSize=cc.size(0,0),t._designResolutionSize=cc.size(0,0),t._originalDesignResolutionSize=cc.size(0,0),t._scaleX=1,t._scaleY=1,t._viewportRect=cc.rect(0,0,0,0),t._visibleRect=cc.rect(0,0,0,0),t._autoFullScreen=!1,t._devicePixelRatio=1,t._maxPixelRatio=2,t._retinaEnabled=!1,t._resizeCallback=null,t._resizing=!1,t._resizeWithBrowserSize=!1,t._orientationChanging=!0,t._isRotated=!1,t._orientation=cc.macro.ORIENTATION_AUTO,t._isAdjustViewport=!0,t._antiAliasEnabled=!1,t._resolutionPolicy=null,t._rpExactFit=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.EXACT_FIT),t._rpShowAll=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.SHOW_ALL),t._rpNoBorder=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.NO_BORDER),t._rpFixedHeight=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.FIXED_HEIGHT),t._rpFixedWidth=new cc.ResolutionPolicy(e.EQUAL_TO_FRAME,n.FIXED_WIDTH),cc.game.once(cc.game.EVENT_ENGINE_INITED,this.init,this)};cc.js.extend(o,i),cc.js.mixin(o.prototype,{init:function(){this._initFrameSize();var t=cc.game.canvas.width,e=cc.game.canvas.height;this._designResolutionSize.width=t,this._designResolutionSize.height=e,this._originalDesignResolutionSize.width=t,this._originalDesignResolutionSize.height=e,this._viewportRect.width=t,this._viewportRect.height=e,this._visibleRect.width=t,this._visibleRect.height=e,cc.winSize.width=this._visibleRect.width,cc.winSize.height=this._visibleRect.height,cc.visibleRect&&cc.visibleRect.init(this._visibleRect)},_resizeEvent:function(t){var e;e=this.setDesignResolutionSize?this:cc.view;var i=cc.sys;if(i.browserType!==i.BROWSER_TYPE_UC||i.os!==i.OS_IOS){var n=e._frameSize.width,r=e._frameSize.height,s=e._isRotated;if(cc.sys.isMobile){var a=cc.game.container.style,o=a.margin;a.margin="0",a.display="none",e._initFrameSize(),a.margin=o,a.display="block"}else e._initFrameSize();if(!0===t||e._isRotated!==s||e._frameSize.width!==n||e._frameSize.height!==r){var c=e._originalDesignResolutionSize.width,u=e._originalDesignResolutionSize.height;e._resizing=!0,c>0&&e.setDesignResolutionSize(c,u,e._resolutionPolicy),e._resizing=!1,e.emit("canvas-resize"),e._resizeCallback&&e._resizeCallback.call()}}else setTimeout((function(){e._resizeEvent(t)}),0)},_orientationChange:function(){cc.view._orientationChanging=!0,cc.view._resizeEvent(),cc.sys.browserType===cc.sys.BROWSER_TYPE_SAFARI&&cc.sys.isMobile&&setTimeout((function(){window.innerHeight>window.innerWidth&&window.scrollTo(0,1)}),500)},_resize:function(){cc.view._resizeEvent(!1)},resizeWithBrowserSize:function(t){t?this._resizeWithBrowserSize||(this._resizeWithBrowserSize=!0,window.addEventListener("resize",this._resize),window.addEventListener("orientationchange",this._orientationChange)):this._resizeWithBrowserSize&&(this._resizeWithBrowserSize=!1,window.removeEventListener("resize",this._resize),window.removeEventListener("orientationchange",this._orientationChange))},setResizeCallback:function(t){"function"!=typeof t&&null!=t||(this._resizeCallback=t)},setOrientation:function(t){if((t&=cc.macro.ORIENTATION_AUTO)&&this._orientation!==t){this._orientation=t;var e=this._originalDesignResolutionSize.width,i=this._originalDesignResolutionSize.height;this.setDesignResolutionSize(e,i,this._resolutionPolicy)}},_initFrameSize:function(){var t=this._frameSize,e=s.availWidth(cc.game.frame),i=s.availHeight(cc.game.frame),n=e>=i;!cc.sys.isMobile||n&&this._orientation&cc.macro.ORIENTATION_LANDSCAPE||!n&&this._orientation&cc.macro.ORIENTATION_PORTRAIT?(t.width=e,t.height=i,cc.game.container.style["-webkit-transform"]="rotate(0deg)",cc.game.container.style.transform="rotate(0deg)",this._isRotated=!1):(t.width=i,t.height=e,cc.game.container.style["-webkit-transform"]="rotate(90deg)",cc.game.container.style.transform="rotate(90deg)",cc.game.container.style["-webkit-transform-origin"]="0px 0px 0px",cc.game.container.style.transformOrigin="0px 0px 0px",this._isRotated=!0),this._orientationChanging&&setTimeout((function(){cc.view._orientationChanging=!1}),1e3)},_setViewportMeta:function(t,e){var i=document.getElementById("cocosMetaElement");i&&e&&document.head.removeChild(i);var n,r,s,a=document.getElementsByName("viewport"),o=a?a[0]:null;for(r in n=o?o.content:"",(i=i||document.createElement("meta")).id="cocosMetaElement",i.name="viewport",i.content="",t)-1==n.indexOf(r)?n+=","+r+"="+t[r]:e&&(s=new RegExp(r+"s*=s*[^,]+"),n=n.replace(s,r+"="+t[r]));/^,/.test(n)&&(n=n.substr(1)),i.content=n,o&&(o.content=n),document.head.appendChild(i)},_adjustViewportMeta:function(){this._isAdjustViewport&&(this._setViewportMeta(s.meta,!1),this._isAdjustViewport=!1)},adjustViewportMeta:function(t){this._isAdjustViewport=t},enableRetina:function(t){this._retinaEnabled=!!t},isRetinaEnabled:function(){return this._retinaEnabled},enableAntiAlias:function(t){if(cc.warnID(9200),this._antiAliasEnabled!==t)if(this._antiAliasEnabled=t,cc.game.renderType===cc.game.RENDER_TYPE_WEBGL)cc.assetManager.assets.forEach((function(e){if(e instanceof cc.Texture2D){var i=cc.Texture2D.Filter;t?e.setFilters(i.LINEAR,i.LINEAR):e.setFilters(i.NEAREST,i.NEAREST)}}));else if(cc.game.renderType===cc.game.RENDER_TYPE_CANVAS){var e=cc.game.canvas.getContext("2d");e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t}},isAntiAliasEnabled:function(){return this._antiAliasEnabled},enableAutoFullScreen:function(t){t&&t!==this._autoFullScreen&&cc.sys.isMobile?(this._autoFullScreen=!0,cc.screen.autoFullScreen(cc.game.frame)):(this._autoFullScreen=!1,cc.screen.disableAutoFullScreen(cc.game.frame))},isAutoFullScreenEnabled:function(){return this._autoFullScreen},setCanvasSize:function(t,e){var i=cc.game.canvas,n=cc.game.container;i.width=t*this._devicePixelRatio,i.height=e*this._devicePixelRatio,i.style.width=t+"px",i.style.height=e+"px",n.style.width=t+"px",n.style.height=e+"px",this._resizeEvent()},getCanvasSize:function(){return cc.size(cc.game.canvas.width,cc.game.canvas.height)},getFrameSize:function(){return cc.size(this._frameSize.width,this._frameSize.height)},setFrameSize:function(t,e){this._frameSize.width=t,this._frameSize.height=e,cc.game.frame.style.width=t+"px",cc.game.frame.style.height=e+"px",this._resizeEvent(!0)},getVisibleSize:function(){return cc.size(this._visibleRect.width,this._visibleRect.height)},getVisibleSizeInPixel:function(){return cc.size(this._visibleRect.width*this._scaleX,this._visibleRect.height*this._scaleY)},getVisibleOrigin:function(){return cc.v2(this._visibleRect.x,this._visibleRect.y)},getVisibleOriginInPixel:function(){return cc.v2(this._visibleRect.x*this._scaleX,this._visibleRect.y*this._scaleY)},getResolutionPolicy:function(){return this._resolutionPolicy},setResolutionPolicy:function(t){var e=this;if(t instanceof cc.ResolutionPolicy)e._resolutionPolicy=t;else{var i=cc.ResolutionPolicy;t===i.EXACT_FIT&&(e._resolutionPolicy=e._rpExactFit),t===i.SHOW_ALL&&(e._resolutionPolicy=e._rpShowAll),t===i.NO_BORDER&&(e._resolutionPolicy=e._rpNoBorder),t===i.FIXED_HEIGHT&&(e._resolutionPolicy=e._rpFixedHeight),t===i.FIXED_WIDTH&&(e._resolutionPolicy=e._rpFixedWidth)}},setDesignResolutionSize:function(t,e,i){if(t>0&&e>0){this.setResolutionPolicy(i);var n=this._resolutionPolicy;if(n&&n.preApply(this),cc.sys.isMobile&&this._adjustViewportMeta(),this._orientationChanging=!0,this._resizing||this._initFrameSize(),n){this._originalDesignResolutionSize.width=this._designResolutionSize.width=t,this._originalDesignResolutionSize.height=this._designResolutionSize.height=e;var s=n.apply(this,this._designResolutionSize);if(s.scale&&2===s.scale.length&&(this._scaleX=s.scale[0],this._scaleY=s.scale[1]),s.viewport){var a=this._viewportRect,o=this._visibleRect,c=s.viewport;a.x=c.x,a.y=c.y,a.width=c.width,a.height=c.height,o.x=0,o.y=0,o.width=c.width/this._scaleX,o.height=c.height/this._scaleY}n.postApply(this),cc.winSize.width=this._visibleRect.width,cc.winSize.height=this._visibleRect.height,cc.visibleRect&&cc.visibleRect.init(this._visibleRect),r.updateCameraViewport(),cc.internal.inputManager._updateCanvasBoundingRect(),this.emit("design-resolution-changed")}else cc.logID(2201)}else cc.errorID(2200)},getDesignResolutionSize:function(){return cc.size(this._designResolutionSize.width,this._designResolutionSize.height)},setRealPixelResolution:function(t,e,i){this._setViewportMeta({width:t},!0),document.documentElement.style.width=t+"px",document.body.style.width=t+"px",document.body.style.left="0px",document.body.style.top="0px",this.setDesignResolutionSize(t,e,i)},setViewportInPoints:function(t,e,i,n){var r=this._scaleX,s=this._scaleY;cc.game._renderContext.viewport(t*r+this._viewportRect.x,e*s+this._viewportRect.y,i*r,n*s)},setScissorInPoints:function(t,e,i,n){var r=this._scaleX,s=this._scaleY,o=Math.ceil(t*r+this._viewportRect.x),c=Math.ceil(e*s+this._viewportRect.y),u=Math.ceil(i*r),l=Math.ceil(n*s),h=cc.game._renderContext;if(!a){var _=h.getParameter(h.SCISSOR_BOX);a=cc.rect(_[0],_[1],_[2],_[3])}a.x===o&&a.y===c&&a.width===u&&a.height===l||(a.x=o,a.y=c,a.width=u,a.height=l,h.scissor(o,c,u,l))},isScissorEnabled:function(){return cc.game._renderContext.isEnabled(gl.SCISSOR_TEST)},getScissorRect:function(){if(!a){var t=gl.getParameter(gl.SCISSOR_BOX);a=cc.rect(t[0],t[1],t[2],t[3])}var e=1/this._scaleX,i=1/this._scaleY;return cc.rect((a.x-this._viewportRect.x)*e,(a.y-this._viewportRect.y)*i,a.width*e,a.height*i)},getViewportRect:function(){return this._viewportRect},getScaleX:function(){return this._scaleX},getScaleY:function(){return this._scaleY},getDevicePixelRatio:function(){return this._devicePixelRatio},convertToLocationInView:function(t,e,i,n){var r=n||cc.v2(),s=i.adjustedLeft?i.adjustedLeft:i.left,a=i.adjustedTop?i.adjustedTop:i.top,o=this._devicePixelRatio*(t-s),c=this._devicePixelRatio*(a+i.height-e);return this._isRotated?(r.x=cc.game.canvas.width-c,r.y=o):(r.x=o,r.y=c),r},_convertMouseToLocationInView:function(t,e){var i=this._viewportRect;t.x=(this._devicePixelRatio*(t.x-e.left)-i.x)/this._scaleX,t.y=(this._devicePixelRatio*(e.top+e.height-t.y)-i.y)/this._scaleY},_convertPointWithScale:function(t){var e=this._viewportRect;t.x=(t.x-e.x)/this._scaleX,t.y=(t.y-e.y)/this._scaleY},_convertTouchesWithScale:function(t){for(var e,i,n,r=this._viewportRect,s=this._scaleX,a=this._scaleY,o=0;o=0;n--){var s=i[n];s.hasOwnProperty("__attrs__")&&s.__attrs__||r(s,(e=i[n+1])&&e.__attrs__)}return r(t,(e=i[0])&&e.__attrs__),t.__attrs__}function a(t){return t.hasOwnProperty("__attrs__")&&t.__attrs__||s(t)}function o(t,e){this.name=t,this.default=e}o.prototype.toString=function(){return this.name},cc.Integer=new o("Integer",0),cc.Float=new o("Float",0),cc.Boolean=new o("Boolean",!1),cc.String=new o("String",""),e.exports={PrimitiveType:o,attr:function(t,e){var i=a(t),r=e+n,s={};for(var o in i)o.startsWith(r)&&(s[o.slice(r.length)]=i[o]);return s},getClassAttrs:a,setClassAttr:function(t,e,i,r){a(t)[e+n+i]=r},DELIMETER:n,getTypeChecker_ET:!1,getObjTypeChecker_ET:!1,ScriptUuid:{}}}),{"./CCClass":149,"./js":170,"./utils":173}],162:[(function(t,e){"use strict";var i=t("./js"),n=i.array.fastRemoveAt;function r(){}function s(){this.callback=r,this.target=void 0,this.once=!1}s.prototype.set=function(t,e,i){this.callback=t,this.target=e,this.once=!!i};var a=new i.Pool(function(t){return t.callback=r,t.target=void 0,t.once=!1,!0},32);function o(){this.callbackInfos=[],this.isInvoking=!1,this.containCanceled=!1}a.get=function(){return this._get()||new s};var c=o.prototype;c.removeByCallback=function(t){for(var e=0;e=0;--t)this.callbackInfos[t]||n(this.callbackInfos,t);this.containCanceled=!1},c.clear=function(){this.cancelAll(),this.callbackInfos.length=0,this.isInvoking=!1,this.containCanceled=!1};var u=new i.Pool(function(t){return t.callbackInfos=[],t.isInvoking=!1,t.containCanceled=!1,!0},16);function l(){this._callbackTable=i.createMap(!0)}u.get=function(){return this._get()||new o},(c=l.prototype).on=function(t,e,i,n){var r=this._callbackTable[t];r||(r=this._callbackTable[t]=u.get());var s=a.get();s.set(e,i,n),r.callbackInfos.push(s)},c.hasEventListener=function(t,e,i){var n=this._callbackTable[t];if(!n)return!1;var r=n.callbackInfos;if(!e){if(n.isInvoking){for(var s=0;s0}for(var a=0;a=0?a[i[c]]=o:a[~c]=o}for(;r=0?u[i[h]]=l:u[~h]=l}}function E(t,e){for(var i=t[4][e[0]],n=i[0],r=new(0,n[0]),s=n[1],a=n[2],o=i[i.length-1],c=1;c=0?e[i]=t[5][n]:t[7][3*~n]=e}function x(t){return function(e,i,n,r){i[n]=r;for(var s=0;s=0){var h=o[u];e[a]=A(t,h,l)}else(0,R[u=~u])(t,e,a,l)}return r}function I(t,e){return t||P.reportMissingClass(e),Object}function M(t,e,i,n,r,s){var a=t(e);if(!a){if(r)return void(i[n]=(function(e,i,n){return function(){var r=t(n)||I(s,n);return e[i]=r,new r}})(i,n,e));a=I(s,e)}i[n]=a}function O(t,e,i){for(var r=i||n.default._getClassById,s=t[3],a=0;a=0?i[u]:~u,s[o]=u);var l=a[o];"number"==typeof l&&(a[o]=n[l])}}function P(t,e,i){"string"==typeof t&&(t=JSON.parse(t));var n=!e;(e=e||y.pool.get()).init(t),i=i||{};var r=t[0],s=!1;if("object"==typeof r&&(s=r.preprocessed,r=r.version),r<1)throw new Error(cc.debug.getError(5304,r));i._version=r,i.result=e,t[0]=i,s||(O(t,!1,i.classFinder),D(t)),cc.game._isCloning=!0;var a=t[5],o=w(t);return cc.game._isCloning=!1,t[7]&&T(t[7],a,t[2]),L(t),n&&y.pool.put(e),a[o]}R[0]=function(t,e,i,n){e[i]=n},R[1]=C,R[2]=x(C),R[3]=x(b),R[4]=S,R[5]=function(t,e,i,n){v[n[0]](e[i],n)},R[6]=b,R[7]=function(t,e,i,n){e[i].set(n)},R[8]=function(t,e,i,n){var r=new d[n[0]];v[n[0]](r,n),e[i]=r},R[9]=x(S),R[10]=function(t,e,i,n){var r=t[3][n[0]];e[i]=A(t,r,n[1])},R[11]=function(t,e,i,n){var r=n[0];e[i]=r;for(var s=1;s0&&(i=_+this.globalVariables.join(",")+";");var n=c.flattenCodeArray(["return (function(R){",i||[],this.codeArray,"return o;","})"]);this.result=Function("O","F",n)(this.objs,this.funcs);for(var r=0,s=this.objsToClear_iN$t.length;r1)t.push(d+"="+this._targetExp+";"),e=d;else{if(1!==this._exps.length)return;e=this._targetExp}for(var i=0;i=0&&(_(t,i),!0)}function d(t,e){void 0===e&&(e=t,t=null),this.get=null,this.count=0,this._pool=new Array(e),this._cleanup=t}s.formatStr=function(){var t=arguments.length;if(0===t)return"";var e=arguments[0];if(1===t)return""+e;var i="string"==typeof e&&l.test(e);if(i)for(var n=1;n=0&&(t[i]=t[t.length-1],--t.length)},removeAt:_,fastRemoveAt:function(t,e){var i=t.length;e<0||e>=i||(t[e]=t[i-1],t.length=i-1)},contains:function(t,e){return t.indexOf(e)>=0},verifyType:function(t,e){if(t&&t.length>0)for(var i=0;i0){--this.count;var t=this._pool[this.count];return this._pool[this.count]=null,t}return null},d.prototype.put=function(t){var e=this._pool;if(this.count=0&&(this._pool.length=t,this.count>t&&(this.count=t))},s.Pool=d,cc.js=s,e.exports=s}),{"../utils/mutable-forward-iterator":224,"./id-generater":166}],171:[(function(t,e,i){"use strict";var n=t("./js"),r=t("./attribute"),s={default:{},serializable:{},editorOnly:{},formerlySerializedAs:{}};function a(t,e,i,n){if(!t.get&&!t.set&&t.hasOwnProperty("default")){var r="_N$"+e;t.get=function(){return this[r]},t.set=function(t){var e=this[r];this[r]=t,i.call(this,e)};var a={};for(var o in n[r]=a,s){var c=s[o];t.hasOwnProperty(o)&&(a[o]=t[o],c.canUsedInGet||delete t[o])}}}function o(t,e,i,n){if(Array.isArray(e)){if(!(e.length>0))return cc.errorID(5508,i,n);t.type=e=e[0]}"function"==typeof e&&(e===String?t.type=cc.String:e===Boolean?t.type=cc.Boolean:e===Number&&(t.type=cc.Float))}function c(t,e,i){var n=t?{_short:!0}:{_short:!0,default:e};return i&&(n.type=i),n}i.getFullFormOfProperty=function(t,e){return t&&t.constructor===Object?null:Array.isArray(t)&&t.length>0?c(e,[],t):"function"==typeof t?c(e,n.isChildClassOf(t,cc.ValueType)?new t:null,t):t instanceof r.PrimitiveType?c(e,t.default):c(e,t)},i.preprocessAttrs=function(t,e){for(var n in t){var r=t[n],s=i.getFullFormOfProperty(r,!1);if(s&&(r=t[n]=s),r){var c=r.notify;c&&a(r,n,c,t),"type"in r&&o(r,r.type,e,n)}}},i.validateMethodWithProps=function(t){return"function"==typeof t||null===t}}),{"./CCClass":149,"./attribute":161,"./js":170}],172:[(function(){"use strict";var t=[];cc._RF={push:function(e,i,n){void 0===n&&(n=i,i=""),t.push({uuid:i,script:n,module:e,exports:e.exports,beh:null})},pop:function(){var e=t.pop(),i=e.module,n=i.exports;if(n===e.exports){for(var r in n)return;i.exports=n=e.cls}},peek:function(){return t[t.length-1]}}}),{}],173:[(function(t,e){"use strict";t("./js"),e.exports={contains:function(t,e){if("function"==typeof t.contains)return t.contains(e);if("function"==typeof t.compareDocumentPosition)return!!(16&t.compareDocumentPosition(e));var i=e.parentNode;if(i)do{if(i===t)return!0;i=i.parentNode}while(null!==i);return!1},isDomNode:"object"==typeof window&&("function"==typeof Node?function(t){return t instanceof Node}:function(t){return t&&"object"==typeof t&&"number"==typeof t.nodeType&&"string"==typeof t.nodeName}),callInNextTick:function(t,e,i){t&&setTimeout((function(){t(e,i)}),0)}}}),{"./js":170}],174:[(function(t){"use strict";t("./platform/js"),t("./value-types"),t("./utils"),t("./platform/CCInputManager"),t("./platform/CCInputExtension"),t("./event"),t("./platform/CCSys"),t("./platform/CCMacro"),t("./asset-manager"),t("./CCDirector"),t("./renderer"),t("./platform/CCView"),t("./platform/CCScreen"),t("./CCScheduler"),t("./event-manager")}),{"./CCDirector":23,"./CCScheduler":28,"./asset-manager":46,"./event":134,"./event-manager":130,"./platform/CCInputExtension":152,"./platform/CCInputManager":153,"./platform/CCMacro":154,"./platform/CCScreen":157,"./platform/CCSys":158,"./platform/CCView":159,"./platform/js":170,"./renderer":180,"./utils":222,"./value-types":238}],175:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("./assembler")),r=a(t("./utils/dynamic-atlas/manager")),s=a(t("./webgl/render-data"));function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i>2,c=s._vData;n.length+o>c.length?c.set(n.subarray(0,c.length-o),o):c.set(n,o);for(var u=s._iData,l=a.indiceOffset,h=a.vertexOffset,_=0,f=r.length;_this.maxSize||(this._clean(t),i[e].push(t),this.count++)}},r.get=function(t){var e;if(this.enabled){var i=this._pool,n=o(t);e=i[n]&&i[n].pop()}return e?this.count--:e=new t,e},r.clear=function(){this._pool={},this.count=0},r._clean=function(t){t._renderComp=null},n}(r.default));r.default.register("assembler",c);var u=c;i.default=u,e.exports=i.default}),{"../utils/pool":225}],177:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./webgl/vertex-format"),s=(n=t("./assembler-pool"))&&n.__esModule?n:{default:n},a=(function(){function t(){this._extendNative&&this._extendNative()}var e=t.prototype;return e.init=function(t){this._renderComp=t},e.updateRenderData=function(){},e.fillBuffers=function(){},e.getVfmt=function(){return r.vfmtPosUvColor},t})();i.default=a,a.register=function(t,e){t.__assembler__=e},a.init=function(t){for(var e=t.constructor,i=e.__assembler__;!i;){if(!(e=e.$super))return void cc.warn("Can not find assembler for render component : ["+cc.js.getClassName(t)+"]");i=e.__assembler__}if(i.getConstructor&&(i=i.getConstructor(t)),!t._assembler||t._assembler.constructor!==i){var n=s.default.get(i);n.init(t),t._assembler=n}},cc.Assembler=a,e.exports=i.default}),{"./assembler-pool":176,"./webgl/vertex-format":213}],178:[(function(t,e){"use strict";var i=function(t){var e;try{e=t.getContext("2d")}catch(i){return void console.error(i)}this._canvas=t,this._ctx=e,this._caps={},this._stats={drawcalls:0},this._vx=this._vy=this._vw=this._vh=0,this._sx=this._sy=this._sw=this._sh=0};i.prototype._restoreTexture=function(){},i.prototype.setViewport=function(t,e,i,n){this._vx===t&&this._vy===e&&this._vw===i&&this._vh===n||(this._vx=t,this._vy=e,this._vw=i,this._vh=n)},i.prototype.setScissor=function(t,e,i,n){this._sx===t&&this._sy===e&&this._sw===i&&this._sh===n||(this._sx=t,this._sy=e,this._sw=i,this._sh=n)},i.prototype.clear=function(t){var e=this._ctx;e.clearRect(this._vx,this._vy,this._vw,this._vh),!t||0===t[0]&&0===t[1]&&0===t[2]||(e.fillStyle="rgb("+t[0]+","+t[1]+","+t[2]+")",e.globalAlpha=t[3],e.fillRect(this._vx,this._vy,this._vw,this._vh))},i.prototype.resetDrawCalls=function(){this._stats.drawcalls=0},i.prototype.getDrawCalls=function(){return this._stats.drawcalls},e.exports=i}),{}],179:[(function(t,e){"use strict";var i=function(t,e){this._device=t,this._width=4,this._height=4,this._image=null,e&&(void 0!==e.width&&(this._width=e.width),void 0!==e.height&&(this._height=e.height),this.updateImage(e))};i.prototype.update=function(t){this.updateImage(t)},i.prototype.updateImage=function(t){if(t.images&&t.images[0]){var e=t.images[0];e&&e!==this._image&&(this._image=e)}},i.prototype.destroy=function(){this._image=null},e.exports=i}),{}],180:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("../../renderer/gfx")),r=a(t("../../renderer/core/input-assembler")),s=a(t("../../renderer/core/pass"));function a(t){return t&&t.__esModule?t:{default:t}}var o=cc.renderer={Texture2D:null,InputAssembler:r.default,Pass:s.default,renderEngine:null,canvas:null,device:null,scene:null,drawCalls:0,_handle:null,_cameraNode:null,_camera:null,_forward:null,_flow:null,initWebGL:function(e,i){t("./webgl/assemblers");var r=t("./webgl/model-batcher");this.Texture2D=n.default.Texture2D,this.canvas=e,this._flow=cc.RenderFlow;var s=t("../../renderer/scene/scene"),a=t("../../renderer/renderers/forward-renderer");this.device=new n.default.Device(e,i),this.scene=new s;var o,c=(o=this.device,{defaultTexture:new n.default.Texture2D(o,{images:[],width:128,height:128,wrapS:n.default.WRAP_REPEAT,wrapT:n.default.WRAP_REPEAT,format:n.default.TEXTURE_FMT_RGB8,genMipmaps:!1}),programTemplates:[],programChunks:{}});this._forward=new a(this.device,c),this._handle=new r(this.device,this.scene),this._flow.init(this._handle,this._forward)},initCanvas:function(e){var i=t("./canvas"),n=t("./canvas/Texture2D"),r=t("./canvas/Device");this.Device=r,this.Texture2D=n,this.canvas=e,this.device=new r(e),this._camera={a:1,b:0,c:0,d:1,tx:0,ty:0},this._handle=new i.RenderComponentHandle(this.device,this._camera),this._forward=new i.ForwardRenderer,this._flow=cc.RenderFlow,this._flow.init(this._handle,this._forward)},updateCameraViewport:function(){if(cc.director){var t=cc.director.getScene();t&&t.setScale(1,1,1)}if(cc.game.renderType===cc.game.RENDER_TYPE_CANVAS){var e=cc.view.getViewportRect();this.device.setViewport(e.x,e.y,e.width,e.height),this._camera.a=cc.view.getScaleX(),this._camera.d=cc.view.getScaleY(),this._camera.tx=e.x,this._camera.ty=e.y+e.height}},render:function(t,e){this.device.resetDrawCalls(),t&&(this._flow.render(t,e),this.drawCalls=this.device.getDrawCalls())},clear:function(){this._handle.reset(),this._forward.clear()}};i.default=o,e.exports=i.default}),{"../../renderer/core/input-assembler":255,"../../renderer/core/pass":256,"../../renderer/gfx":265,"../../renderer/renderers/forward-renderer":284,"../../renderer/scene/scene":287,"./canvas":void 0,"./canvas/Device":178,"./canvas/Texture2D":179,"./webgl/assemblers":192,"./webgl/model-batcher":209}],181:[(function(t,e){"use strict";var i,n,r=0,s=1<0;)i&t&&(e=C(i,e)),i>>=1;return e}function b(t){var e=t._renderFlag;(A[e]=x(e))._func(t)}y.flows=A,y.createFlow=C;var S=[];y.registerValidate=function(t){t._inValidateList||(S.push(t),t._inValidateList=!0)},y.validateRenderers=function(){for(var t=0,e=S.length;tthis._width&&(this._x=n,this._y=this._nexty),this._y+c+n>this._nexty&&(this._nexty=this._y+c+n),this._nexty>this._height)return null;cc.dynamicAtlasManager.textureBleeding&&((o<=8||c<=8)&&(this._texture.drawTextureAt(i,this._x-1,this._y-1),this._texture.drawTextureAt(i,this._x-1,this._y+1),this._texture.drawTextureAt(i,this._x+1,this._y-1),this._texture.drawTextureAt(i,this._x+1,this._y+1)),this._texture.drawTextureAt(i,this._x-1,this._y),this._texture.drawTextureAt(i,this._x+1,this._y),this._texture.drawTextureAt(i,this._x,this._y-1),this._texture.drawTextureAt(i,this._x,this._y+1)),this._texture.drawTextureAt(i,this._x,this._y),this._innerTextureInfos[i._id]={x:this._x,y:this._y,texture:i},this._count++,s+=this._x,a+=this._y,this._x+=o+n,this._dirty=!0}var u={x:s,y:a,texture:this._texture};return this._innerSpriteFrames.push(t),u},update:function(){this._dirty&&(this._texture.update(),this._dirty=!1)},deleteInnerTexture:function(t){t&&this._innerTextureInfos[t._id]&&(delete this._innerTextureInfos[t._id],this._count--)},isEmpty:function(){return this._count<=0},reset:function(){this._x=n,this._y=n,this._nexty=n;for(var t=this._innerSpriteFrames,e=0,i=t.length;e=0;e--)n[e].deleteInnerTexture(t),n[e].isEmpty()&&(n[e].destroy(),n.splice(e,1),r--)},showDebug:function(t){if(t){if(!u||!u.isValid){var e=cc.visibleRect.width,i=cc.visibleRect.height;(u=new cc.Node("DYNAMIC_ATLAS_DEBUG_NODE")).width=e,u.height=i,u.x=e/2,u.y=i/2,u.zIndex=cc.macro.MAX_ZINDEX,u.parent=cc.director.getScene(),u.groupIndex=cc.Node.BuiltinGroupIndex.DEBUG,cc.Camera._setupDebugCamera();var s=u.addComponent(cc.ScrollView),o=new cc.Node("CONTENT"),c=o.addComponent(cc.Layout);c.type=cc.Layout.Type.VERTICAL,c.resizeMode=cc.Layout.ResizeMode.CONTAINER,o.parent=u,o.width=a,o.anchorY=1,o.x=a,s.content=o;for(var l=0;l<=r;l++){var h=new cc.Node("ATLAS"),_=(n[l]._texture,new cc.SpriteFrame);_.setTexture(n[l]._texture),h.addComponent(cc.Sprite).spriteFrame=_,h.parent=o}}return u}u&&(u.parent=null,u=null)},update:function(){if(this.enabled)for(var t=0;t<=r;t++)n[t].update()}};e.exports=cc.dynamicAtlasManager=f}),{"./atlas":182}],184:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../utils/text-utils"),o=t("../../../platform/CCMacro"),c=t("../../../components/CCLabel").Overflow,u=t("../utils").shareLabelInfo,l=function(){this.char="",this.valid=!0,this.x=0,this.y=0,this.line=0,this.hash=""},h=cc.rect(),_=null,f=[],d=[],p=[],v=[],g=null,m=0,y=0,T=0,E=0,A=0,C=1,x=null,b=cc.size(),S="",R=0,w=0,I=0,M=0,O=0,D=0,L=0,P=!1,N=0,F=0,B=0,U=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateRenderData=function(t){t._vertsDirty&&_!==t&&(_=t,this._reserveQuads(t,t.string.toString().length),this._updateFontFamily(t),this._updateProperties(t),this._updateLabelInfo(t),this._updateContent(),this.updateWorldVerts(t),_._actualFontSize=R,_.node.setContentSize(b),_._vertsDirty=!1,_=null,this._resetProperties())},r._updateFontScale=function(){C=R/w},r._updateFontFamily=function(t){var e=t.font;x=e.spriteFrame,g=e._fntConfig,u.fontAtlas=e._fontDefDictionary,this.packToDynamicAtlas(t,x)},r._updateLabelInfo=function(){u.hash="",u.margin=0},r._updateProperties=function(t){S=t.string.toString(),R=t.fontSize,w=g?g.fontSize:t.fontSize,I=t.horizontalAlign,M=t.verticalAlign,O=t.spacingX,L=t.overflow,D=t._lineHeight,b.width=t.node.width,b.height=t.node.height,L===c.NONE?(P=!1,b.width+=2*u.margin,b.height+=2*u.margin):L===c.RESIZE_HEIGHT?(P=!0,b.height+=2*u.margin):P=t.enableWrapText,u.lineHeight=D,u.fontSize=R,this._setupBMFontOverflowMetrics()},r._resetProperties=function(){g=null,x=null,u.hash="",u.margin=0},r._updateContent=function(){this._updateFontScale(),this._computeHorizontalKerningForText(),this._alignText()},r._computeHorizontalKerningForText=function(){var t,e=S,i=e.length,n=f;if(g&&(t=g.kerningDict),t&&!cc.js.isEmptyObject(t))for(var r=-1,s=0;s0&&n>0&&V+_.w*C>B&&!a.isUnicodeSpace(T)){p.push(o),o=0,i++,n=0,r-=D*this._getFontScale()+0,U=!0;break}d.x=V,d.y=r-_.offsetY*C+u.margin,this._recordLetterInfo(d,T,k,i),k+1d.y-_.h*C&&(w=d.y-_.h*C)}else{this._recordPlaceholderInfo(k,T);var H="";g&&(H=g.atlasName),console.log("Can't find letter definition in texture atlas "+H+" for letter:"+T)}else this._recordPlaceholderInfo(k,T)}U||(n=M,lw&&(h=w),s<(o=I)&&(s=o),v+=x)}else p.push(o),o=0,i++,n=0,r-=D*this._getFontScale()+0,this._recordPlaceholderInfo(v,T),v++}return p.push(o),y=(m=i+1)*D*this._getFontScale(),m>1&&(y+=0*(m-1)),b.width=N,b.height=F,N<=0&&(b.width=parseFloat(s.toFixed(2))+2*u.margin),F<=0&&(b.height=parseFloat(y.toFixed(2))+2*u.margin),E=b.height,A=0,L!==c.CLAMP&&(l>0&&(E=b.height+l),h<-y&&(A=y+h)),!0},r._getFirstCharLen=function(){return 1},r._getFontScale=function(){return L===c.SHRINK?C:1},r._getFirstWordLen=function(t,e,i){var n=t.charAt(e);if(a.isUnicodeCJK(n)||"\n"===n||a.isUnicodeSpace(n))return 1;var r=1,s=u.fontAtlas.getLetterDefinitionForChar(n,u);if(!s)return r;for(var o=s.xAdvance*C+O,c=e+1;cB&&!a.isUnicodeSpace(n)&&B>0)return r;if(o+=s.xAdvance*C+O,"\n"===n||a.isUnicodeSpace(n)||a.isUnicodeCJK(n))break;r++}return r},r._multilineTextWrapByWord=function(){return this._multilineTextWrap(this._getFirstWordLen)},r._multilineTextWrapByChar=function(){return this._multilineTextWrap(this._getFirstCharLen)},r._recordPlaceholderInfo=function(t,e){if(t>=d.length){var i=new l;d.push(i)}d[t].char=e,d[t].hash=e.charCodeAt(0)+u.hash,d[t].valid=!1},r._recordLetterInfo=function(t,e,i,n){if(i>=d.length){var r=new l;d.push(r)}var s=e.charCodeAt(0)+u.hash;d[i].line=n,d[i].char=e,d[i].hash=s,d[i].valid=u.fontAtlas.getLetter(s).valid,d[i].x=t.x,d[i].y=t.y},r._alignText=function(){y=0,p.length=0,this._multilineTextWrapByWord(),this._computeAlignmentOffset(),L===c.SHRINK&&R>0&&this._isVerticalClamp()&&this._shrinkLabelToContentSize(this._isVerticalClamp),this._updateQuads()||L===c.SHRINK&&this._shrinkLabelToContentSize(this._isHorizontalClamp)},r._scaleFontSizeDown=function(t){var e=!0;t||(t=.1,e=!1),R=t,e&&this._updateContent()},r._shrinkLabelToContentSize=function(t){for(var e=0,i=0|R,n=0;e>1;if(r<=0)break;C=r/w,this._multilineTextWrapByWord(),this._computeAlignmentOffset(),t()?i=n-1:e=n}var s=e;s>=0&&this._scaleFontSizeDown(s)},r._isVerticalClamp=function(){return y>b.height},r._isHorizontalClamp=function(){for(var t=!1,e=0,i=S.length;e0)if(P){if(p[a]>b.width&&(s>b.width||s<0)){t=!0;break}}else if(s>b.width){t=!0;break}}}return t},r._isHorizontalClamped=function(t,e){var i=p[e],n=t>b.width||t<0;return P?i>b.width&&n:n},r._updateQuads=function(){var t=x?x._texture:u.fontAtlas.getTexture(),e=_.node;this.verticesCount=this.indicesCount=0,this._renderData&&(this._renderData.dataLength=0);for(var i=b,n=e._anchorPoint.x*i.width,r=e._anchorPoint.y*i.height,s=!0,a=0,o=S.length;a0){if(p>E){var g=p-E;h.y+=g,h.height-=g,p-=g}p-f.h*C0&&this._isHorizontalClamped(y,m))if(L===c.CLAMP)h.width=0;else if(L===c.SHRINK){if(b.width>f.w){s=!1;break}h.width=0}if(h.height>0&&h.width>0){var R=this._determineRect(h),w=l.x+v[l.line];this.appendQuad(_,t,h,R,w-n,p-r,C)}}}return this._quadsUpdated(_),s},r._determineRect=function(t){var e=x.isRotated(),i=x._originalSize,n=x._rect,r=x._offset,s=r.x+(i.width-n.width)/2,a=r.y-(i.height-n.height)/2;if(e){var o=t.x;t.x=n.x+n.height-t.y-t.height-a,t.y=o+n.y-s,t.y<0&&(t.height=t.height+a)}else t.x+=n.x-s,t.y+=n.y+a;return e},r._computeAlignmentOffset=function(){switch(v.length=0,I){case o.TextAlignment.LEFT:for(var t=0;t0){var u=e.out||v;t.strokeStyle="rgba("+u.r+", "+u.g+", "+u.b+", "+u.a/255+")",t.lineWidth=2*e.margin,t.strokeText(this._char,s,a)}t.fillText(this._char,s,a),this._texture.handleLoadedTexture()},destroy:function(){this._texture.destroy(),this._texture=null,a._canvasPool.put(this._data)}},cc.js.mixin(T.prototype,{insertLetterTexture:function(t){var e=t._texture,i=e.width,n=e.height;if(this._x+i+g>this._width&&(this._x=g,this._y=this._nexty),this._y+n>this._nexty&&(this._nexty=this._y+n+g),this._nexty>this._height)return null;this._fontDefDictionary._texture.drawTextureAt(e,this._x,this._y),this._dirty=!0;var r=new d;return r.u=this._x+1,r.v=this._y+1,r.texture=this._fontDefDictionary._texture,r.valid=!0,r.w=t._width-2,r.h=t._height-2,r.xAdvance=r.w,r.offsetY=t._offsetY,this._x+=i+g,this._fontDefDictionary.addLetterDefinitions(t._hash,r),r},update:function(){this._dirty&&(this._fontDefDictionary._texture.update(),this._dirty=!1)},reset:function(){this._x=g,this._y=g,this._nexty=g;for(var t=this._fontDefDictionary._letterDefinitions,e=0,i=t.length;e0&&(n=n+e.margin+e.out.toHEX()),""+e.fontSize+e.fontFamily+i+n)},r._getFontDesc=function(){return f.fontSize.toString()+"px "+f.fontFamily},r._computeHorizontalKerningForText=function(){},r._determineRect=function(){return!1},n})(r.default);i.default=A,e.exports=i.default}),{"../../../assets/CCRenderTexture":66,"../../../components/CCComponent":101,"../../../components/CCLabel":103,"../../../components/CCLabelOutline":void 0,"../../../utils/text-utils":230,"../../webgl/assemblers/label/2d/bmfont":193,"../utils":188}],187:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a,o=t("../../../utils/text-utils"),c=t("../../../platform/CCMacro"),u=t("../../../components/CCLabel"),l=t("../../../components/CCLabelOutline"),h=t("../../../components/CCLabelShadow"),_=u.Overflow,f=t("../utils").deleteFromDynamicAtlas,d=t("../utils").getFontFamily,p=(1/255).toFixed(3),v=null,g=null,m=null,y="",T="",E=0,A=0,C=[],x=cc.Size.ZERO,b=0,S=0,R=0,w=null,I="",M=_.NONE,O=!1,D=!1,L=null,P=cc.Color.WHITE,N=null,F=cc.Color.BLACK,B=cc.rect(),U=cc.Size.ZERO,z=cc.Size.ZERO,k=!1,V=!1,H=!1,W=0,G=cc.Vec2.ZERO,j=0,Y=["left","center","right"],X=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r._getAssemblerData=function(){return(a=u._canvasPool.get()).canvas.width=a.canvas.height=1,a},r._resetAssemblerData=function(t){t&&u._canvasPool.put(t)},r.updateRenderData=function(e){t.prototype.updateRenderData.call(this,e),e._vertsDirty&&(this._updateProperties(e),this._calculateLabelFont(),this._updateLabelDimensions(),this._updateTexture(e),this._calDynamicAtlas(e),e._actualFontSize=E,e.node.setContentSize(z),this.updateVerts(e),e._vertsDirty=!1,v=null,g=null,m=null)},r.updateVerts=function(){},r._updatePaddingRect=function(){var t=0,e=0,i=0,n=0,r=0;if(U.width=U.height=0,L&&(t=e=i=n=r=L.width,U.width=U.height=2*r),N){var s=N.blur+r;i=Math.max(i,-N._offset.x+s),n=Math.max(n,N._offset.x+s),t=Math.max(t,N._offset.y+s),e=Math.max(e,-N._offset.y+s)}if(V){var a=A*Math.tan(.20943951);n+=a,U.width+=a}B.x=i,B.y=t,B.width=i+n,B.height=t+e},r._updateProperties=function(t){var e=t._assemblerData;v=e.context,g=e.canvas,m=t._frame._original?t._frame._original._texture:t._frame._texture,T=t.string.toString(),E=t._fontSize,A=E,W=t.underlineHeight||A/8,M=t.overflow,x.width=t.node.width,x.height=t.node.height,z=t.node.getContentSize(),b=t._lineHeight,S=t.horizontalAlign,R=t.verticalAlign,w=t.node.color,k=t.enableBold,V=t.enableItalic,H=t.enableUnderline,I=d(t),D=t.srcBlendFactor===cc.macro.BlendFactor.ONE,O=M!==_.NONE&&(M===_.RESIZE_HEIGHT||t.enableWrapText),(L=(L=l&&t.getComponent(l))&&L.enabled&&L.width>0?L:null)&&P.set(L.color),(N=(N=h&&t.getComponent(h))&&N.enabled?N:null)&&(F.set(N.color),F.a=F.a*t.node.color.a/255),this._updatePaddingRect()},r._calculateFillTextStartPosition=function(){var t=0;S===c.TextAlignment.RIGHT?t=x.width-B.width:S===c.TextAlignment.CENTER&&(t=(x.width-B.width)/2);var e=this._getLineHeight()*(C.length-1),i=E*(1-o.BASELINE_RATIO/2);if(R!==c.VerticalTextAlignment.TOP){var n=e+B.height+E-x.height;R===c.VerticalTextAlignment.BOTTOM?i-=n+=o.BASELINE_RATIO/2*E:i-=n/2}return i+=o.BASELINE_OFFSET*E,cc.v2(t+B.x,i+B.y)},r._setupOutline=function(){v.strokeStyle="rgba("+P.r+", "+P.g+", "+P.b+", "+P.a/255+")",v.lineWidth=2*L.width},r._setupShadow=function(){v.shadowColor="rgba("+F.r+", "+F.g+", "+F.b+", "+F.a/255+")",v.shadowBlur=N.blur,v.shadowOffsetX=N.offset.x,v.shadowOffsetY=-N.offset.y},r._drawTextEffect=function(t,e){if(N||L||H){var i=C.length>1&&N,n=this._measureText(v,y),r=0,s=0;N&&this._setupShadow(),L&&this._setupOutline();for(var a=0;at||x.height>t)&&cc.warn("The maximum texture size supported by the device is "+t),x.width=Math.min(x.width,t),x.height=Math.min(x.height,t);var e=!1;g.width!==x.width&&(g.width=x.width,e=!0),g.height!==x.height&&(g.height=x.height,e=!0),e&&(v.font=y),v.textAlign=Y[S]},r._getFontDesc=function(){var t=E.toString()+"px ";return t+=I,k&&(t="bold "+t),V&&(t="italic "+t),t},r._getLineHeight=function(){return 0|(0===b?E:b*E/A)},r._calculateParagraphLength=function(t,e){for(var i=[],n=0;n>1)<=0){cc.logID(4003);break}E=l,y=this._getFontDesc(),v.font=y;var h=this._getLineHeight();for(n=0,i=0;ia?u=l-1:c=l}0===c?cc.logID(4003):(E=c,y=this._getFontDesc(),v.font=y)}else{for(n=t.length*this._getLineHeight(),i=0;ir?e:r}i=(C.length+o.BASELINE_RATIO)*this._getLineHeight();var s=parseFloat(e.toFixed(2)),a=parseFloat(i.toFixed(2));x.width=s+B.width,x.height=a+B.height,z.width=s+U.width,z.height=a+U.height;break;case _.SHRINK:this._calculateShrinkFont(t),this._calculateWrapText(t);break;case _.CLAMP:this._calculateWrapText(t);break;case _.RESIZE_HEIGHT:this._calculateWrapText(t);var c=(C.length+o.BASELINE_RATIO)*this._getLineHeight();x.height=c+B.height,z.height=c+U.height}},n})(r.default);i.default=X,e.exports=i.default}),{"../../../components/CCLabel":103,"../../../components/CCLabelOutline":void 0,"../../../components/CCLabelShadow":void 0,"../../../platform/CCMacro":154,"../../../utils/text-utils":230,"../../assembler-2d":175,"../utils":188}],188:[(function(t,e){"use strict";var i=t("./dynamic-atlas/manager"),n=cc.Color.WHITE,r={fontAtlas:null,fontSize:0,lineHeight:0,hAlign:0,vAlign:0,hash:"",fontFamily:"",fontDesc:"Arial",color:n,isOutlined:!1,out:n,margin:0};e.exports={deleteFromDynamicAtlas:function(t,e){e&&e._original&&i&&(i.deleteAtlasSpriteFrame(e),e._resetDynamicAtlasFrame())},getFontFamily:function(t){return t.useSystemFont?t.fontFamily||"Arial":t.font?t.font._nativeAsset?t.font._nativeAsset:(cc.assetManager.postLoadNative(t.font,(function(){t.isValid&&t.setVertsDirty()})),"Arial"):"Arial"},shareLabelInfo:r}}),{"./dynamic-atlas/manager":183}],189:[(function(t,e){"use strict";function i(t,e,i){i=i||2;var r,a,o,c,u,h,_,f=e&&e.length,d=f?e[0]*i:t.length,p=n(t,0,d,i,!0),v=[];if(!p)return v;if(f&&(p=l(t,e,p,i)),t.length>80*i){r=o=t[0],a=c=t[1];for(var g=i;go&&(o=u),h>c&&(c=h);_=Math.max(o-r,c-a)}return s(p,v,i,r,a,_),v}function n(t,e,i,n,r){var s,a;if(r===M(t,e,i,n)>0)for(s=e;s=e;s-=n)a=R(s,t[s],t[s+1],a);return a&&E(a,a.next)&&(w(a),a=a.next),a}function r(t,e){if(!t)return t;e||(e=t);var i,n=t;do{if(i=!1,n.steiner||!E(n,n.next)&&0!==T(n.prev,n,n.next))n=n.next;else{if(w(n),(n=e=n.prev)===n.next)return null;i=!0}}while(i||n!==e);return e}function s(t,e,i,n,l,h,_){if(t){!_&&h&&d(t,n,l,h);for(var f,p,v=t;t.prev!==t.next;)if(f=t.prev,p=t.next,h?o(t,n,l,h):a(t))e.push(f.i/i),e.push(t.i/i),e.push(p.i/i),w(t),t=p.next,v=p.next;else if((t=p)===v){_?1===_?s(t=c(t,e,i),e,i,n,l,h,2):2===_&&u(t,e,i,n,l,h):s(r(t),e,i,n,l,h,1);break}}}function a(t){var e=t.prev,i=t,n=t.next;if(T(e,i,n)>=0)return!1;for(var r=t.next.next;r!==t.prev;){if(m(e.x,e.y,i.x,i.y,n.x,n.y,r.x,r.y)&&T(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function o(t,e,i,n){var r=t.prev,s=t,a=t.next;if(T(r,s,a)>=0)return!1;for(var o=r.xs.x?r.x>a.x?r.x:a.x:s.x>a.x?s.x:a.x,l=r.y>s.y?r.y>a.y?r.y:a.y:s.y>a.y?s.y:a.y,h=v(o,c,e,i,n),_=v(u,l,e,i,n),f=t.nextZ;f&&f.z<=_;){if(f!==t.prev&&f!==t.next&&m(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&T(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(f=t.prevZ;f&&f.z>=h;){if(f!==t.prev&&f!==t.next&&m(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&T(f.prev,f,f.next)>=0)return!1;f=f.prevZ}return!0}function c(t,e,i){var n=t;do{var r=n.prev,s=n.next.next;!E(r,s)&&A(r,n,n.next,s)&&x(r,s)&&x(s,r)&&(e.push(r.i/i),e.push(n.i/i),e.push(s.i/i),w(n),w(n.next),n=t=s),n=n.next}while(n!==t);return n}function u(t,e,i,n,a,o){var c=t;do{for(var u=c.next.next;u!==c.prev;){if(c.i!==u.i&&y(c,u)){var l=S(c,u);return c=r(c,c.next),l=r(l,l.next),s(c,e,i,n,a,o),void s(l,e,i,n,a,o)}u=u.next}c=c.next}while(c!==t)}function l(t,e,i,s){var a,o,c,u=[];for(a=0,o=e.length;a=n.next.y){var o=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(o<=r&&o>a){if(a=o,o===r){if(s===n.y)return n;if(s===n.next.y)return n.next}i=n.x=n.x&&n.x>=l&&m(si.x)&&x(n,t)&&(i=n,_=c),n=n.next;return i}function d(t,e,i,n){var r=t;do{null===r.z&&(r.z=v(r.x,r.y,e,i,n)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,p(r)}function p(t){var e,i,n,r,s,a,o,c,u=1;do{for(i=t,t=null,s=null,a=0;i;){for(a++,n=i,o=0,e=0;e0||c>0&&n;)0===o?(r=n,n=n.nextZ,c--):0!==c&&n?i.z<=n.z?(r=i,i=i.nextZ,o--):(r=n,n=n.nextZ,c--):(r=i,i=i.nextZ,o--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;i=n}s.nextZ=null,u*=2}while(a>1);return t}function v(t,e,i,n,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-i)/r)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)/r)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function g(t){var e=t,i=t;do{e.x=0&&(t-a)*(n-o)-(i-a)*(e-o)>=0&&(i-a)*(s-o)-(r-a)*(n-o)>=0}function y(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!C(t,e)&&x(t,e)&&x(e,t)&&b(t,e)}function T(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function E(t,e){return t.x===e.x&&t.y===e.y}function A(t,e,i,n){return!!(E(t,e)&&E(i,n)||E(t,n)&&E(i,e))||T(t,e,i)>0!=T(t,e,n)>0&&T(i,n,t)>0!=T(i,n,e)>0}function C(t,e){var i=t;do{if(i.i!==t.i&&i.next.i!==t.i&&i.i!==e.i&&i.next.i!==e.i&&A(i,i.next,t,e))return!0;i=i.next}while(i!==t);return!1}function x(t,e){return T(t.prev,t,t.next)<0?T(t,e,t.next)>=0&&T(t,t.prev,e)>=0:T(t,e,t.prev)<0||T(t,t.next,e)<0}function b(t,e){var i=t,n=!1,r=(t.x+e.x)/2,s=(t.y+e.y)/2;do{i.y>s!=i.next.y>s&&r<(i.next.x-i.x)*(s-i.y)/(i.next.y-i.y)+i.x&&(n=!n),i=i.next}while(i!==t);return n}function S(t,e){var i=new I(t.i,t.x,t.y),n=new I(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,i.next=r,r.prev=i,n.next=i,i.prev=n,s.next=n,n.prev=s,n}function R(t,e,i,n){var r=new I(t,e,i);return n?(r.next=n.next,r.prev=n,n.next.prev=r,n.next=r):(r.prev=r,r.next=r),r}function w(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function I(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function M(t,e,i,n){for(var r=0,s=e,a=i-n;s0&&(n+=t[r-1].length,i.holes.push(n))}return i}}),{}],190:[(function(t,e){"use strict";var i=t("../../../../graphics/helper"),n=t("../../../../graphics/types").PointFlags,r=cc.Graphics.Point=cc.Class({name:"cc.GraphicsPoint",extends:cc.Vec2,ctor:function(){this.reset()},reset:function(){this.dx=0,this.dy=0,this.dmx=0,this.dmy=0,this.flags=0,this.len=0}});function s(){this.reset()}function a(){this._tessTol=.25,this._distTol=.01,this._updatePathOffset=!1,this._paths=null,this._pathLength=0,this._pathOffset=0,this._points=null,this._pointsOffset=0,this._commandx=0,this._commandy=0,this._paths=[],this._points=[]}cc.js.mixin(s.prototype,{reset:function(){this.closed=!1,this.nbevel=0,this.complex=!0,this.points?this.points.length=0:this.points=[]}}),cc.js.mixin(a.prototype,{moveTo:function(t,e){this._updatePathOffset&&(this._pathOffset=this._pathLength,this._updatePathOffset=!1),this._addPath(),this._addPoint(t,e,n.PT_CORNER),this._commandx=t,this._commandy=e},lineTo:function(t,e){this._addPoint(t,e,n.PT_CORNER),this._commandx=t,this._commandy=e},bezierCurveTo:function(t,e,r,s,a,o){var c=this._curPath,u=c.points[c.points.length-1];u.x!==t||u.y!==e||r!==a||s!==o?(i.tesselateBezier(this,u.x,u.y,t,e,r,s,a,o,0,n.PT_CORNER),this._commandx=a,this._commandy=o):this.lineTo(a,o)},quadraticCurveTo:function(t,e,i,n){var r=this._commandx,s=this._commandy;this.bezierCurveTo(r+2/3*(t-r),s+2/3*(e-s),i+2/3*(t-i),n+2/3*(e-n),i,n)},arc:function(t,e,n,r,s,a){i.arc(this,t,e,n,r,s,a)},ellipse:function(t,e,n,r){i.ellipse(this,t,e,n,r),this._curPath.complex=!1},circle:function(t,e,n){i.ellipse(this,t,e,n,n),this._curPath.complex=!1},rect:function(t,e,i,n){this.moveTo(t,e),this.lineTo(t,e+n),this.lineTo(t+i,e+n),this.lineTo(t+i,e),this.close(),this._curPath.complex=!1},roundRect:function(t,e,n,r,s){i.roundRect(this,t,e,n,r,s),this._curPath.complex=!1},clear:function(t){this._pathLength=0,this._pathOffset=0,this._pointsOffset=0,this._curPath=null,t&&(this._paths.length=0,this._points.length=0)},close:function(){this._curPath.closed=!0},_addPath:function(){var t=this._pathLength,e=this._paths[t];return e?e.reset():(e=new s,this._paths.push(e)),this._pathLength++,this._curPath=e,e},_addPoint:function(t,e,i){var n=this._curPath;if(n){var s,a=this._points,o=n.points;(s=a[this._pointsOffset++])?(s.x=t,s.y=e):(s=new r(t,e),a.push(s)),s.flags=i,o.push(s)}}}),cc.Graphics._Impl=a,e.exports=a}),{"../../../../graphics/helper":139,"../../../../graphics/types":141}],191:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=s(t("../../../assembler")),r=s(t("../../../../../renderer/core/input-assembler"));function s(t){return t&&t.__esModule?t:{default:t}}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var o=t("../../mesh-buffer"),c=t("../../../index"),u=t("../../../../graphics/graphics"),l=t("../../../../graphics/types").PointFlags,h=u.LineJoin,_=u.LineCap,f=t("./earcut");t("./impl");var d=Math.PI,p=Math.min,v=Math.max,g=Math.ceil,m=Math.acos,y=Math.cos,T=Math.sin,E=Math.atan2;function A(t,e,i){return ti?i:t}var C=cc.gfx,x=new C.VertexFormat([{name:C.ATTR_POSITION,type:C.ATTR_TYPE_FLOAT32,num:2},{name:C.ATTR_COLOR,type:C.ATTR_TYPE_UINT8,num:4,normalize:!0},{name:"a_dist",type:C.ATTR_TYPE_FLOAT32,num:1}]);x.name="vfmtPosColorSdf";var b=(function(t){var e,i;function n(e){var i;return(i=t.call(this,e)||this)._buffer=null,i._buffers=[],i._bufferOffset=0,i}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,a(e,i);var s=n.prototype;return s.getVfmt=function(){return x},s.getVfmtFloatCount=function(){return 4},s.requestBuffer=function(){var t={indiceStart:0,vertexStart:0},e=new o(c._handle,this.getVfmt());t.meshbuffer=e;var i=new r.default(e._vb,e._ib);return t.ia=i,this._buffers.push(t),t},s.getBuffers=function(){return 0===this._buffers.length&&this.requestBuffer(),this._buffers},s.clear=function(t){this._bufferOffset=0;var e=this._buffers;if(t){for(var i=0,n=e.length;i65535||3*s>131070)&&(++this._bufferOffset,s=e,this._bufferOffsetr.vertexOffset&&r.requestStatic(e,3*e),this._buffer=n,n},s.stroke=function(t){this._curColor=t._strokeColor._val,this._flattenPaths(t._impl),this._expandStroke(t),t._impl._updatePathOffset=!0},s.fill=function(t){this._curColor=t._fillColor._val,this._expandFill(t),t._impl._updatePathOffset=!0},s._expandStroke=function(t){var e,i,n,r,s=.5*t.lineWidth,a=t.lineCap,o=t.lineJoin,c=t.miterLimit,u=t._impl,f=(e=s,i=d,n=u._tessTol,r=2*m(e/(e+n)),v(2,g(i/r)));this._calculateJoins(u,s,o,c);for(var p=u._paths,y=0,T=u._pathOffset,E=u._pathLength;T0&&(r=1/e);for(var a=t._paths,o=t._pathOffset,c=t._pathLength;o1e-6){var b=1/y;b>600&&(b=600),g.dmx*=b,g.dmy*=b}g.dx*d.dy-d.dx*g.dy>0&&(g.flags|=l.PT_LEFT),y*(T=v(11,p(d.len,g.len)*r))*T<1&&(g.flags|=l.PT_INNERBEVEL);var S=g.dmx*e,R=g.dmy*e,w=S*S+R*R;w>g.len*g.len+s&&w>d.len*d.len+s&&(g.flags|=l.PT_INNERBEVEL),g.flags&l.PT_CORNER&&(y*n*n<1||i===h.BEVEL||i===h.ROUND)&&(g.flags|=l.PT_BEVEL),0!=(g.flags&(l.PT_BEVEL|l.PT_INNERBEVEL))&&u.nbevel++,d=g,g=_[m+1]}}},s._flattenPaths=function(t){for(var e=t._paths,i=t._pathOffset,n=t._pathLength;i2&&a.equals(o)&&(r.closed=!0,s.pop(),a=s[s.length-1]);for(var c=0,u=s.length;cC&&(x-=2*d),this._vset(f,p,1),this._vset(u-s*n,e.y-a*n,-1);for(var b=A(g((C-x)/d)*r,2,r),S=0;S "+n+"/"+i+".")},e._updateCfgFlag=function(t){var e=this._cfgFields.updateFlags;this._setBufferFlag(this._cfg,e.offset,e.size,e.type,t)},e._setBufferValue=function(t,e,i,n,r){"float"==n&&4==i?t.setFloat32(e,r,jsb.__isLittleEndian__):"int32"==n&&4==i?t.setInt32(e,r,jsb.__isLittleEndian__):"bool"==n&&1==i?t.setInt8(e,r?1:0,jsb.__isLittleEndian__):"Color4B"==n&&4==i?(t.setUint8(e,r.r),t.setUint8(e+1,r.g),t.setUint8(e+2,r.b),t.setUint8(e+3,r.a)):"int8"==n&&1==i?t.setUint8(e,r):cc.warn("dont know how to set value to buffer, type/size -> "+n+"/"+i+".")},e._setFieldValue=function(t,e,i,n){var r=e[i];this._setBufferValue(t,r.offset,r.size,r.type,n)},e._getBufferValue=function(t,e,i,n){return"float"==n&&4==i?t.getFloat32(e,jsb.__isLittleEndian__):"int32"==n&&4==i?t.getInt32(e,jsb.__isLittleEndian__):"bool"==n&&1==i?0!=t.getInt8(e,jsb.__isLittleEndian__):"Color4B"==n&&4==i?{r:t.getUint8(e),g:t.getUint8(e+1),b:t.getUint8(e+2),a:t.getUint8(e+3)}:"int8"==n&&1==i?t.getUint8(e):void cc.warn("dont know how to get value from buffer, type/size -> "+n+"/"+i+".")},e._getFieldValue=function(t,e,i){var n=e[i];return this._getBufferValue(t,n.offset,n.size,n.type)},e._getLayoutValue=function(t){return this._getFieldValue(this._layoutInfo,this._layoutFields,t)},e._setLayoutValue=function(t,e){return this._setFieldValue(this._layoutInfo,this._layoutFields,t,e)},e._updateCfgFlag_Content=function(){this._updateCfgFlag(1)},e._updateCfgFlag_Font=function(){this._updateCfgFlag(2)},e._colorEqual=function(t,e){return t.r==e.r&&t.g==e.g&&t.b==e.b&&t.a==e.a},e._colorToObj=function(t,e,i,n){return{r:t,g:e,b:i,a:n}},e.setString=function(t){t!=this._layout.string&&(this._layout.string=t,this._updateCfgFlag_Content())},e.setFontPath=function(t){t!=this._layout.fontPath&&(this._layout.fontPath=t,this._updateCfgFlag_Font())},e.setFontSize=function(t,e){this._getFieldValue(this._cfg,this._cfgFields,"fontSize")!=t&&(this._setFieldValue(this._cfg,this._cfgFields,"fontSize",t),this._setFieldValue(this._cfg,this._cfgFields,"fontSizeRetina",e),this._updateCfgFlag_Font())},e.setOutline=function(t){var e=this._getLayoutValue("outlineSize");e>0!=t>0&&this._updateCfgFlag_Font(),e!=t&&(this._updateCfgFlag_Content(),this._setLayoutValue("outlineSize",t))},e.setOutlineColor=function(t){var e=this._getLayoutValue("outlineColor");this._colorEqual(e,t)||(this._setLayoutValue("outlineColor",t),this._updateCfgFlag_Content())},e.setLineHeight=function(t){this._getLayoutValue("lineHeight")!=t&&(this._setLayoutValue("lineHeight",t),this._updateCfgFlag_Content())},e.setOverFlow=function(t){this._getLayoutValue("overflow")!=t&&(this._setLayoutValue("overflow",t),this._updateCfgFlag_Content())},e.setEnableWrap=function(t){this._getLayoutValue("wrap")!=t&&(this._setLayoutValue("wrap",t),this._updateCfgFlag_Content())},e.setVerticalAlign=function(t){this._getLayoutValue("valign")!=t&&(this._setLayoutValue("valign",t),this._updateCfgFlag_Content())},e.setHorizontalAlign=function(t){this._getLayoutValue("halign")!=t&&(this._setLayoutValue("halign",t),this._updateCfgFlag_Content())},e.setContentSize=function(t,e){var i=this._getLayoutValue("width"),n=this._getLayoutValue("height");i==t&&n==e||(this._setLayoutValue("height",e),this._setLayoutValue("width",t),this._updateCfgFlag_Content())},e.setAnchorPoint=function(t,e){var i=this._getLayoutValue("anchorX"),n=this._getLayoutValue("anchorY");i==t&&n==e||(this._setLayoutValue("anchorX",t),this._setLayoutValue("anchorY",e),this._updateCfgFlag_Content())},e.setColor=function(t){var e=this._getLayoutValue("color");this._colorEqual(e,t)||(this._setLayoutValue("color",t),this._updateCfgFlag_Content())},e.setShadow=function(t,e,i){var n=this._getLayoutValue("shadowBlur"),r=this._getLayoutValue("shadowX"),s=this._getLayoutValue("shadowY");n>0!=i>0&&this._updateCfgFlag_Font();var a=!1;n!=i&&(this._setLayoutValue("shadowBlur",i),a=!0),r!=t&&(this._setLayoutValue("shadowX",t),a=!0),s!=e&&(this._setLayoutValue("shadowY",e),a=!0),a&&this._updateCfgFlag_Content()},e.setShadowColor=function(t){var e=this._getLayoutValue("shadowColor");this._colorEqual(e,t)||(this._setLayoutValue("shadowColor",t),this._updateCfgFlag_Content())},e.setItalic=function(t){this._getLayoutValue("italic")!=t&&(this._setLayoutValue("italic",t),this._updateCfgFlag_Content())},e.setBold=function(t){this._getLayoutValue("bold")!=t&&(this._setLayoutValue("bold",t),this._updateCfgFlag_Content(),this._updateCfgFlag_Font())},e.setUnderline=function(t){this._getLayoutValue("underline")!=t&&(this._setLayoutValue("underline",t),this._updateCfgFlag_Content())},e.setSpacingX=function(t){this._getLayoutValue("spaceX")==t||"number"!=typeof t||isNaN(t)||(this._setLayoutValue("spaceX",t),this._updateCfgFlag_Content())},e.updateRenderData=function(t){if(t._vertsDirty){t.font&&t.font.nativeUrl&&this.setFontPath(cc.assetManager.cacheManager.getCache(t.font.nativeUrl)||t.font.nativeUrl);var e=this._layout,i=t.node.color,n=t.node,r=t.fontSize;this.setString(t.string),this.setFontSize(t.fontSize,r/72*t.fontSize),this.setLineHeight(t.lineHeight),this.setEnableWrap(t.enableWrapText),this.setItalic(t.enableItalic),this.setUnderline(t.enableUnderline),this.setBold(t.enableBold),this.setOverFlow(t.overflow),this.setVerticalAlign(t.verticalAlign),this.setHorizontalAlign(t.horizontalAlign),this.setSpacingX(t.spacingX),this.setContentSize(n.getContentSize().width,n.getContentSize().height),this.setAnchorPoint(n.anchorX,n.anchorY),this.setColor(this._colorToObj(i.getR(),i.getG(),i.getB(),Math.ceil(i.getA()*n.opacity/255)));var s=n.getComponent(cc.LabelShadow);if(s&&s.enabled){var a=s.color;this.setShadow(s.offset.x,s.offset.y,s.blur),this.setShadowColor(this._colorToObj(a.getR(),a.getG(),a.getB(),Math.ceil(a.getA()*n.opacity/255)))}else this.setShadow(0,0,-1);this._updateTTFMaterial(t),e.render()}},e._bindMaterial=function(t){var e=this.labelMaterial;return e||(e=r.default.createWithBuiltin("2d-label",t),this.labelMaterial=e),e},e._updateTTFMaterial=function(t){var e=this._bindMaterial(t),i=this._label.node,n=this._layout,r=i.getComponent(cc.LabelOutline),s=0;if(r&&r.enabled&&r.width>0){s=Math.max(Math.min(r.width/10,.4),.1);var a=r.color;this.setOutlineColor(this._colorToObj(a.getR(),a.getG(),a.getB(),Math.ceil(a.getA()*i.opacity/255)))}this.setOutline(s),e.define("CC_USE_MODEL",!0),e.define("USE_TEXTURE_ALPHAONLY",!0),e.define("USE_SDF",s>0||t.enableBold),e.define("USE_SDF_EXTEND",t.enableBold?1:0),void 0!==e.getDefine("CC_SUPPORT_standard_derivatives")&&cc.sys.glExtension("OES_standard_derivatives")&&e.define("CC_SUPPORT_standard_derivatives",!0),n.setEffect(e.effect._nativeObj)},e.fillBuffers=function(){this._layout.render()},e.getVfmt=function(){},t})();i.default=s,e.exports=i.default}),{"../../../../../assets/material/CCMaterial":77,"../../../../../assets/material/material-variant":84,"../../../../../components/CCLabel":103,"../../../../../components/CCLabelOutline":void 0,"../../../../../components/CCLabelShadow":void 0}],196:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../../../utils/label/ttf"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../../../components/CCLabelShadow"),o=cc.color(255,255,255,255),c=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateUVs=function(t){for(var e=this._renderData.vDatas[0],i=t._frame.uv,n=this.uvOffset,r=this.floatsPerVert,s=0;s<4;s++){var a=2*s,o=r*s+n;e[o]=i[a],e[o+1]=i[a+1]}},r.updateColor=function(e){o._fastSetA(e.node._color.a);var i=o._val;t.prototype.updateColor.call(this,e,i)},r.updateVerts=function(t){var e=t.node,i=t._ttfTexture.width,n=t._ttfTexture.height,r=e.anchorX*e.width,s=e.anchorY*e.height,o=a&&t.getComponent(a);if(o&&o._enabled){var c=(i-e.width)/2,u=(n-e.height)/2,l=o.offset;-l.x>c?r+=i-e.width:c>l.x&&(r+=c-l.x),-l.y>u?s+=n-e.height:u>l.y&&(s+=u-l.y)}var h=this._local;h[0]=-r,h[1]=-s,h[2]=i-r,h[3]=n-s,this.updateUVs(t),this.updateWorldVerts(t)},n})(r.default);i.default=c,e.exports=i.default}),{"../../../../../components/CCLabelShadow":void 0,"../../../../utils/label/ttf":187}],197:[(function(t){"use strict";var e=u(t("../../../assembler")),i=u(t("../../../../components/CCLabel")),n=u(t("./2d/ttf")),r=u(t("./2d/bmfont")),s=u(t("./2d/letter")),a=u(t("./3d/ttf")),o=u(t("./3d/bmfont")),c=u(t("./3d/letter"));function u(t){return t&&t.__esModule?t:{default:t}}i.default._canvasPool={pool:[],get:function(){var t=this.pool.pop();if(!t){var e=document.createElement("canvas"),i=e.getContext("2d");t={canvas:e,context:i},i.textBaseline="alphabetic"}return t},put:function(t){this.pool.length>=32||this.pool.push(t)}},e.default.register(cc.Label,{getConstructor:function(t){var e=t.node.is3DNode,u=e?a.default:n.default;return t.font instanceof cc.BitmapFont?u=e?o.default:r.default:t.cacheMode===i.default.CacheMode.CHAR&&(cc.sys.platform===cc.sys.WECHAT_GAME_SUB?cc.warn("sorry, subdomain does not support CHAR mode currently!"):u=e?c.default:s.default),u},TTF:n.default,Bmfont:r.default,Letter:s.default,TTF3D:a.default,Bmfont3D:o.default,Letter3D:c.default,NativeTTF:void 0})}),{"../../../../components/CCLabel":103,"../../../assembler":177,"./2d/bmfont":193,"./2d/letter":194,"./2d/nativeTTF":195,"./2d/ttf":196,"./3d/bmfont":void 0,"./3d/letter":void 0,"./3d/ttf":void 0}],198:[(function(t,e,i){"use strict";i.__esModule=!0,i.MaskAssembler=void 0;var n,r=(n=t("../../assembler"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../components/CCMask"),o=t("../../render-flow"),c=t("./sprite/2d/simple"),u=t("./graphics"),l=t("../../../../renderer/gfx"),h=t("../vertex-format").vfmtPos,_=8,f=[];function d(){return 1<_&&cc.errorID(9e3,_),f.push(t)}function m(t,e){0===f.length&&cc.errorID(9001),f.pop(),0===f.length?e._flushMaterial(t._exitMaterial):E(e)}function y(t,e){var i=l.DS_FUNC_NEVER,n=d(),r=n,s=n,a=t.inverted?l.STENCIL_OP_REPLACE:l.STENCIL_OP_ZERO;v(t._clearMaterial,i,a,n,r,s);var o=e.getBuffer("mesh",h),c=o.request(4,6),u=c.indiceOffset,_=c.byteOffset>>2,f=c.vertexOffset,p=o._vData,g=o._iData;p[_++]=-1,p[_++]=-1,p[_++]=-1,p[_++]=1,p[_++]=1,p[_++]=1,p[_++]=1,p[_++]=-1,g[u++]=f,g[u++]=f+3,g[u++]=f+1,g[u++]=f+1,g[u++]=f+3,g[u++]=f+2,e.node=e._dummyNode,e.material=t._clearMaterial,e._flush()}function T(t,e){var i=l.DS_FUNC_NEVER,n=d(),r=n,s=n,o=t.inverted?l.STENCIL_OP_ZERO:l.STENCIL_OP_REPLACE;v(t._materials[0],i,o,n,r,s),e.material=t._materials[0],t._type===a.Type.IMAGE_STENCIL?(e.node=e._dummyNode,c.prototype.fillBuffers.call(t._assembler,t,e),e._flush()):(e.node=t.node,u.prototype.fillBuffers.call(t._graphics._assembler,t._graphics,e))}function E(t){var e=l.DS_FUNC_EQUAL,i=l.STENCIL_OP_KEEP,n=p(),r=n,s=d(),a=f[f.length-1];v(a._enableMaterial,e,i,n,r,s),t._flushMaterial(a._enableMaterial)}var A=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.updateRenderData=function(t){t._type===a.Type.IMAGE_STENCIL?t.spriteFrame?c.prototype.updateRenderData.call(this,t):t.setMaterial(0,null):(t._graphics.setMaterial(0,t._materials[0]),u.prototype.updateRenderData.call(t._graphics._assembler,t._graphics,t._graphics))},r.fillBuffers=function(t,e){(t._type!==a.Type.IMAGE_STENCIL||t.spriteFrame)&&(g(t),y(t,e),T(t,e),E(e)),t.node._renderFlag|=o.FLAG_UPDATE_RENDER_DATA},r.postFillBuffers=function(t,e){(t._type!==a.Type.IMAGE_STENCIL||t.spriteFrame)&&m(t,e),t.node._renderFlag|=o.FLAG_UPDATE_RENDER_DATA},n})(c);i.MaskAssembler=A,r.default.register(a,A)}),{"../../../../renderer/gfx":265,"../../../components/CCMask":105,"../../assembler":177,"../../render-flow":181,"../vertex-format":213,"./graphics":191,"./sprite/2d/simple":203}],199:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../../assembler-2d"))&&n.__esModule?n:{default:n};function s(t,e){return(s=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var a=t("../../../components/CCMotionStreak"),o=t("../../render-flow");function c(t,e){this.point=t||cc.v2(),this.dir=e||cc.v2(),this.distance=0,this.time=0}c.prototype.setPoint=function(t,e){this.point.x=t,this.point.y=e},c.prototype.setDir=function(t,e){this.dir.x=t,this.dir.y=e},cc.v2(),cc.v2();var u=cc.v2(),l=cc.v2();function h(t,e){return t.x=-e.y,t.y=e.x,t}var _=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.initData=function(){this._renderData.createFlexData(0,16,42)},r.update=function(t,e){var i,n=t._stroke/2,r=t.node._worldMatrix.m,s=r[12],a=r[13],o=t._points;if(o.length>1){var _=o[0].point.x-s,f=o[0].point.y-a;_*_+f*f=0;R--){var w=o[R],I=w.point,M=w.dir;if(w.time-=e,w.time<0)o.splice(R,1);else{var O=w.time/b,D=o[R-1];if(!S){if(!D){o.splice(R,1);continue}I.x=D.point.x-M.x*O,I.y=D.point.y-M.y*O}S=!0,h(u,M);var L=(O*T<<24>>>0)+(y<<16)+(m<<8)+g,P=5*p;C[P]=I.x+u.x*n,C[P+1]=I.y+u.y*n,C[P+2]=1,C[P+3]=O,x[P+4]=L,C[P+=5]=I.x-u.x*n,C[P+1]=I.y-u.y*n,C[P+2]=0,C[P+3]=O,x[P+4]=L,p+=2}}d=p<=2?0:3*(p-2),A.used(p,d)}},r.fillBuffers=function(t,e){var i=this._renderData._flexBuffer,n=i.vData,r=i.usedVertices,s=i.usedIndices,a=i.usedVerticesFloats,c=e._meshBuffer,u=c.request(r,s),l=u.byteOffset>>2,h=c._vData;n.length+l>h.length?h.set(n.subarray(0,a),l):h.set(n,l);for(var _=c._iData,f=u.indiceOffset,d=u.vertexOffset,p=0,v=r;p1?1:n)<0?0:n;var r=(i=(i=i>1?1:i)<0?0:i)+(n=(n-=i)<0?0:n);r=r>1?1:r,this.updateUVs(t,i,r),this.updateVerts(t,i,r),t._vertsDirty=!1}},r.updateUVs=function(t,e,i){var n,r,s,o,c,u,l,h,_,f,d=t._spriteFrame,p=d._texture.width,v=d._texture.height,g=d._rect;d._rotated?(n=g.x/p,r=(g.y+g.width)/v,s=c=n,l=_=(g.x+g.height)/p,u=f=r,o=h=g.y/v):(n=g.x/p,r=(g.y+g.height)/v,s=l=n,c=_=(g.x+g.width)/p,o=u=r,h=f=g.y/v);var m=this._renderData.vDatas[0],y=this.uvOffset,T=this.floatsPerVert;switch(t._fillType){case a.HORIZONTAL:m[y]=s+(c-s)*e,m[y+1]=o+(u-o)*e,m[y+T]=s+(c-s)*i,m[y+T+1]=o+(u-o)*i,m[y+2*T]=l+(_-l)*e,m[y+2*T+1]=h+(f-h)*e,m[y+3*T]=l+(_-l)*i,m[y+3*T+1]=h+(f-h)*i;break;case a.VERTICAL:m[y]=s+(l-s)*e,m[y+1]=o+(h-o)*e,m[y+T]=c+(_-c)*e,m[y+T+1]=u+(f-u)*e,m[y+2*T]=s+(l-s)*i,m[y+2*T+1]=o+(h-o)*i,m[y+3*T]=c+(_-c)*i,m[y+3*T+1]=u+(f-u)*i;break;default:cc.errorID(2626)}},r.updateVerts=function(t,e,i){var n,r=t.node,s=r.width,o=r.height,c=r.anchorX*s,u=r.anchorY*o,l=-c,h=-u,_=s-c,f=o-u;switch(t._fillType){case a.HORIZONTAL:n=l+(_-l)*i,l+=(_-l)*e,_=n;break;case a.VERTICAL:n=h+(f-h)*i,h+=(f-h)*e,f=n;break;default:cc.errorID(2626)}var d=this._local;d[0]=l,d[1]=h,d[2]=_,d[3]=f,this.updateWorldVerts(t)},n})(r.default);i.default=o,e.exports=i.default}),{"../../../../../components/CCSprite":115,"../../../../assembler-2d":175}],201:[(function(t,e,i){"use strict";var n;function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}i.__esModule=!0,i.default=void 0;var s=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,r(e,i);var s=n.prototype;return s.initData=function(){this._renderData.createFlexData(0,4,6,this.getVfmt())},s.updateRenderData=function(t){this.packToDynamicAtlas(t,t._spriteFrame);var e=t.spriteFrame;if(e){var i=e.vertices;if(i){this.verticesCount=i.x.length,this.indicesCount=i.triangles.length;var n=this._renderData._flexBuffer;n.reserve(this.verticesCount,this.indicesCount)&&(this.updateColor(t),t._vertsDirty=!0),n.used(this.verticesCount,this.indicesCount),this.updateIndices(i.triangles),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),this.updateWorldVerts(t),t._vertsDirty=!1)}}},s.updateIndices=function(t){this._renderData.iDatas[0].set(t)},s.updateUVs=function(t){for(var e=t.spriteFrame.vertices,i=e.nu,n=e.nv,r=this.uvOffset,s=this.floatsPerVert,a=this._renderData.vDatas[0],o=0;o0){var h=r.y+o*(t-r.x);a[0].x=t,a[0].y=h}if((e-r.x)*l>0){var _=r.y+o*(e-r.x);a[2].x=e,a[2].y=_}}if(0!==Math.sin(s)){if(c=l/u,(n-r.y)*u>0){var f=r.x+c*(n-r.y);a[3].x=f,a[3].y=n}if((i-r.y)*u>0){var d=r.x+c*(i-r.y);a[1].x=d,a[1].y=i}}}function p(t){var e=t.node,i=e.width,n=e.height,r=e.anchorX*i,s=e.anchorY*n,a=-r,u=-s,l=i-r,h=n-s,d=c;d[0]=a,d[1]=u,d[2]=l,d[3]=h;var p=t._fillCenter,v=_.x=Math.min(Math.max(0,p.x),1)*(l-a)+a,g=_.y=Math.min(Math.max(0,p.y),1)*(h-u)+u;o[0].x=o[3].x=a,o[1].x=o[2].x=l,o[0].y=o[1].y=u,o[2].y=o[3].y=h,f.length=0,v!==d[0]&&(f[0]=[3,0]),v!==d[2]&&(f[2]=[1,2]),g!==d[1]&&(f[1]=[0,1]),g!==d[3]&&(f[3]=[2,3])}function v(t,e){var i,n;if(i=e.x-t.x,n=e.y-t.y,0!==i||0!==n){if(0===i)return n>0?.5*Math.PI:1.5*Math.PI;var r=Math.atan(n/i);return i<0&&(r+=Math.PI),r}}var g=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,s(e,i);var r=n.prototype;return r.initData=function(){this._renderData.createFlexData(0,4,6,this.getVfmt()),this.updateIndices()},r.updateRenderData=function(e){t.prototype.updateRenderData.call(this,e);var i,n,r,s,o,f,v,g,m,y=e.spriteFrame;if(this.packToDynamicAtlas(e,y),e._vertsDirty){var T=e._fillStart,E=e._fillRange;for(E<0&&(T+=E,E=-E);T>=1;)T-=1;for(;T<0;)T+=1;T*=a,E*=a,p(e),f=(i=y)._texture.width,v=i._texture.height,g=i._rect,m=u,i._rotated?(n=g.x/f,r=(g.x+g.height)/f,s=g.y/v,o=(g.y+g.width)/v,m[0]=m[2]=n,m[4]=m[6]=r,m[3]=m[7]=o,m[1]=m[5]=s):(n=g.x/f,r=(g.x+g.width)/f,s=g.y/v,o=(g.y+g.height)/v,m[0]=m[4]=n,m[2]=m[6]=r,m[1]=m[3]=o,m[5]=m[7]=s),d(c[0],c[2],c[1],c[3],_,T,l),d(c[0],c[2],c[1],c[3],_,T+E,h),this.updateVerts(e,T,E),e._vertsDirty=!1}},r.updateVerts=function(t,e,i){var n=e+i,r=this._local;r.length=0;for(var s=0,c=3*this.floatsPerVert,u=0;u<4;++u){var d=f[u];if(d)if(i>=a)r.length=s+c,this._generateTriangle(r,s,_,o[d[0]],o[d[1]]),s+=c;else{var p=v(_,o[d[0]]),g=v(_,o[d[1]]);g=n||(p>=e?(r.length=s+c,g>=n?this._generateTriangle(r,s,_,o[d[0]],h[u]):this._generateTriangle(r,s,_,o[d[0]],o[d[1]]),s+=c):g<=e||(g<=n?(r.length=s+c,this._generateTriangle(r,s,_,l[u],o[d[1]]),s+=c):(r.length=s+c,this._generateTriangle(r,s,_,l[u],h[u]),s+=c))),p+=a,g+=a}}this.allocWorldVerts(t),this.updateWorldVerts(t)},r.allocWorldVerts=function(t){var e=t.node._color._val,i=this._renderData,n=this.floatsPerVert,r=this._local,s=r.length/n;this.verticesCount=this.indicesCount=s;var a=i._flexBuffer;a.reserve(s,s)&&this.updateIndices(),a.used(this.verticesCount,this.indicesCount);for(var o=i.vDatas[0],c=i.uintVDatas[0],u=this.uvOffset,l=0;l0)){this._renderData.createData(0,this.verticesFloats,this.indicesCount);for(var t=this._renderData.iDatas[0],e=0,i=0;i<3;++i)for(var n=0;n<3;++n){var r=4*i+n;t[e++]=r,t[e++]=r+1,t[e++]=r+4,t[e++]=r+1,t[e++]=r+5,t[e++]=r+4}}},s.initLocal=function(){this._local=[],this._local.length=8},s.updateRenderData=function(t){var e=t._spriteFrame;this.packToDynamicAtlas(t,e),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),t._vertsDirty=!1)},s.updateVerts=function(t){var e=t.node,i=e.width,n=e.height,r=e.anchorX*i,s=e.anchorY*n,a=t.spriteFrame,o=a.insetLeft,c=a.insetRight,u=a.insetTop,l=a.insetBottom,h=i-o-c,_=n-u-l,f=i/(o+c),d=n/(u+l);f=isNaN(f)||f>1?1:f,d=isNaN(d)||d>1?1:d,h=h<0?0:h,_=_<0?0:_;var p=this._local;p[0]=-r,p[1]=-s,p[2]=o*f-r,p[3]=l*d-s,p[4]=p[2]+h,p[5]=p[3]+_,p[6]=i-r,p[7]=n-s,this.updateWorldVerts(t)},s.updateUVs=function(t){for(var e=this._renderData.vDatas[0],i=t.spriteFrame.uvSliced,n=this.uvOffset,r=this.floatsPerVert,s=0;s<4;++s)for(var a=0;a<4;++a){var o=4*s+a,c=i[o],u=o*r;e[u+n]=c.u,e[u+n+1]=c.v}},s.updateWorldVerts=function(t){for(var e=t.node._worldMatrix.m,i=e[0],n=e[1],r=e[4],s=e[5],a=e[12],o=e[13],c=this._local,u=this._renderData.vDatas[0],l=this.floatsPerVert,h=0;h<4;++h)for(var _=c[2*h+1],f=0;f<4;++f){var d=c[2*f],p=(4*h+f)*l;u[p]=d*i+_*r+a,u[p+1]=d*n+_*s+o}},n})(((n=t("../../../../assembler-2d"))&&n.__esModule?n:{default:n}).default);i.default=s,Object.assign(s.prototype,{verticesCount:16,indicesCount:54}),e.exports=i.default}),{"../../../../assembler-2d":175}],205:[(function(t,e,i){"use strict";var n;function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}i.__esModule=!0,i.default=void 0;var s=(function(t){var e,i;function n(){return t.apply(this,arguments)||this}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,r(e,i);var s=n.prototype;return s.initData=function(){this.verticesCount=0,this.contentWidth=0,this.contentHeight=0,this.rectWidth=0,this.rectHeight=0,this.hRepeat=0,this.vRepeat=0,this.row=0,this.col=0,this._renderData.createFlexData(0,4,6,this.getVfmt()),this._updateIndices()},s.initLocal=function(){this._local={x:[],y:[]}},s._updateIndices=function(){for(var t=this._renderData.iDatas[0],e=0,i=0,n=t.length;e0?this.sizableWidth:0,this.sizableHeight=this.sizableHeight>0?this.sizableHeight:0;var _=this.hRepeat=0===c?this.sizableWidth:this.sizableWidth/c,f=this.vRepeat=0===h?this.sizableHeight:this.sizableHeight/h,d=(this.row=Math.ceil(f+2))*(this.col=Math.ceil(_+2));this.verticesCount=4*d,this.indicesCount=6*d;var p=this._renderData._flexBuffer;p.reserve(this.verticesCount,this.indicesCount)&&(this._updateIndices(),this.updateColor(t)),p.used(this.verticesCount,this.indicesCount),t._vertsDirty&&(this.updateUVs(t),this.updateVerts(t),t._vertsDirty=!1)},s.updateVerts=function(t){var e=t._spriteFrame,i=e._rect,n=t.node,r=n.anchorX*n.width,s=n.anchorY*n.height,a=this.row,o=this.col,c=this.contentWidth,u=this.contentHeight,l=this._local,h=l.x,_=l.y;h.length=_.length=0;var f,d,p=e.insetLeft,v=e.insetRight,g=i.width-p-v,m=e.insetTop,y=e.insetBottom,T=i.height-m-y,E=n.width/(p+v)>1?1:n.width/(p+v),A=n.height/(m+y)>1?1:n.height/(m+y);f=g>0?Math.floor(1e3*this.sizableWidth)/1e3%g==0?g:this.sizableWidth%g:this.sizableWidth,d=T>0?Math.floor(1e3*this.sizableHeight)/1e3%T==0?T:this.sizableHeight%T:this.sizableHeight;for(var C=0;C<=o;C++)0===C?h[C]=-r:C>0&&C0?C===o-1?p+f+g*(C-2)-r:p+Math.min(g,this.sizableWidth)+g*(C-2)-r:p+this.sizableWidth-r:C===o&&(h[C]=Math.min(p+this.sizableWidth+v,c)-r);for(var x=0;x<=a;x++)0===x?_[x]=-s:x>0&&x0?x===a-1?y+d+(x-2)*T-s:y+Math.min(T,this.sizableHeight)+(x-2)*T-s:y+this.sizableHeight-s:x===a&&(_[x]=Math.min(y+this.sizableHeight+m,u)-s);this.updateWorldVerts(t)},s.updateWorldVerts=function(t){for(var e,i,n,r,s=this._renderData,a=this._local,o=a.x,c=a.y,u=s.vDatas[0],l=this.row,h=this.col,_=t.node._worldMatrix.m,f=_[0],d=_[1],p=_[4],v=_[5],g=_[12],m=_[13],y=this.floatsPerVert,T=0,E=0,A=l;Eu?this.sizableHeight>=C*u?1:f%1:f;for(var b=0,S=h;ba?this.sizableWidth>=b*a?1:_%1:_,m?(0===C?(E[0]=g[0].u,E[1]=g[0].u,E[2]=g[4].u+(g[8].u-g[4].u)*p):C>2,n=this.vData.length,r=!1;if(i>n){for(;ns){for(;s>2,this._handler.updateMeshRange(t,e)},e.reset=function(){var t=this._initVerticesCount*this._verticesBytes>>2;this._reallocVData(t),this._reallocIData(this._initIndicesCount),this.usedVertices=0,this.usedVerticesFloats=0,this.usedIndices=0},t})();i.default=n,cc.FlexBuffer=n,e.exports=i.default}),{}],208:[(function(t,e){"use strict";var i,n=(i=t("../../../renderer/gfx"))&&i.__esModule?i:{default:i},r=(cc.sys.os===cc.sys.OS_IOS||cc.sys.os===cc.sys.OS_OSX)&&cc.sys.isBrowser&&/(OS 1[4-9])|(Version\/1[4-9])/.test(window.navigator.userAgent),s=cc.Class({name:"cc.MeshBuffer",ctor:function(t,e){this.init(t,e)},init:function(t,e){this.byteOffset=0,this.indiceOffset=0,this.vertexOffset=0,this.indiceStart=0,this._dirty=!1,this._vertexFormat=e,this._vertexBytes=this._vertexFormat._bytes,this._arrOffset=0,this._vbArr=[],this._vb=new n.default.VertexBuffer(t._device,e,n.default.USAGE_DYNAMIC,new ArrayBuffer,0),this._vbArr[0]=this._vb,this._ibArr=[],this._ib=new n.default.IndexBuffer(t._device,n.default.INDEX_FMT_UINT16,n.default.USAGE_STATIC,new ArrayBuffer,0),this._ibArr[0]=this._ib,this._vData=null,this._uintVData=null,this._iData=null,this._batcher=t,this._initVDataCount=256*e._bytes,this._initIDataCount=1536,this._offsetInfo={byteOffset:0,vertexOffset:0,indiceOffset:0},this._reallocBuffer()},uploadData:function(){if(0!==this.byteOffset&&this._dirty){var t=new Float32Array(this._vData.buffer,0,this.byteOffset>>2),e=new Uint16Array(this._iData.buffer,0,this.indiceOffset);this._vb.update(0,t),this._ib.update(0,e),this._dirty=!1}},switchBuffer:function(){var t=++this._arrOffset;this.byteOffset=0,this.vertexOffset=0,this.indiceOffset=0,this.indiceStart=0,t65535&&(this.uploadData(),this._batcher._flush(),this.switchBuffer())},requestStatic:function(t,e){this.checkAndSwitchBuffer(t);var i=this.byteOffset+t*this._vertexBytes,n=this.indiceOffset+e,r=this._vData.byteLength,s=this._iData.length;if(i>r||n>s){for(;r65535&&(this.uploadData(),this._batcher._flush())},s.prototype.forwardIndiceStartToOffset=function(){this.uploadData(),this.switchBuffer()}),cc.MeshBuffer=e.exports=s}),{"../../../renderer/gfx":265}],209:[(function(t,e){"use strict";var i=s(t("../../../renderer/core/input-assembler")),n=s(t("../../../renderer/memop/recycle-pool")),r=s(t("../../../renderer/scene/model"));function s(t){return t&&t.__esModule?t:{default:t}}var a=t("./vertex-format"),o=a.vfmtPosUvColor,c=a.vfmt3D,u=t("./quad-buffer"),l=t("./mesh-buffer"),h=t("./spine-buffer"),_=t("../../assets/material/CCMaterial"),f=(new(t("../../platform/id-generater"))("VertextFormat"),{}),d=new _,p=new i.default;p._count=0;var v=function(t,e){this._renderScene=e,this._device=t,this.walking=!1,this.material=d,this.cullingMask=1,this._iaPool=new n.default(function(){return new i.default},16),this._modelPool=new n.default(function(){return new r.default},16),this._quadBuffer=this.getBuffer("quad",o),this._meshBuffer=this.getBuffer("mesh",o),this._quadBuffer3D=this.getBuffer("quad",c),this._meshBuffer3D=this.getBuffer("mesh",c),this._buffer=this._meshBuffer,this._batchedModels=[],this._dummyNode=new cc.Node,this._sortKey=0,this.node=this._dummyNode,this.parentOpacity=1,this.parentOpacityDirty=0,this.worldMatDirty=0};v.prototype={constructor:v,reset:function(){this._iaPool.reset();for(var t=this._renderScene,e=this._batchedModels,i=0;i>2);this._vb.update(0,t),this._dirty=!1}},switchBuffer:function(){this._super();var t=new Uint16Array(this._iData.buffer,0,this._initIDataCount);this._ib.update(0,t)},_reallocBuffer:function(){this._reallocVData(!0),this._reallocIData(),this._fillQuadBuffer()}});cc.QuadBuffer=e.exports=n}),{"./mesh-buffer":208}],211:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=a;var n,r=(n=t("./flex-buffer"))&&n.__esModule?n:{default:n},s=t("./vertex-format");function a(){this.vDatas=[],this.uintVDatas=[],this.iDatas=[],this.meshCount=0,this._infos=null,this._flexBuffer=null}cc.js.mixin(a.prototype,{init:function(){},clear:function(){this.vDatas.length=0,this.iDatas.length=0,this.uintVDatas.length=0,this.meshCount=0,this._infos=null,this._flexBuffer&&this._flexBuffer.reset()},updateMesh:function(t,e,i){this.vDatas[t]=e,this.uintVDatas[t]=new Uint32Array(e.buffer,0,e.length),this.iDatas[t]=i,this.meshCount=this.vDatas.length},updateMeshRange:function(){},createData:function(t,e,i){var n=new Float32Array(e),r=new Uint16Array(i);this.updateMesh(t,n,r)},createQuadData:function(t,e,i){this.createData(t,e,i),this.initQuadIndices(this.iDatas[t])},createFlexData:function(t,e,i,n){n=n||s.vfmtPosUvColor,this._flexBuffer=new r.default(this,t,e,i,n)},initQuadIndices:function(t){for(var e=t.length/6,i=0,n=0;ir||n>s){for(;r0&&(t=t.substring(0,i));var n=/(\/|\\)([^\/\\]+)$/g.exec(t.replace(/(\/|\\)$/,""));if(!n)return t;var r=n[2];return e&&t.substring(t.length-e.length).toLowerCase()===e.toLowerCase()?r.substring(0,r.length-e.length):r},dirname:function(t){var e=n.exec(t);return e?e[2]:""},changeExtname:function(t,e){e=e||"";var i=t.indexOf("?"),n="";return i>0&&(n=t.substring(i),t=t.substring(0,i)),(i=t.lastIndexOf("."))<0?t+e+n:t.substring(0,i)+e+n},changeBasename:function(t,e,i){if(0===e.indexOf("."))return this.changeExtname(t,e);var n=t.indexOf("?"),r="",s=i?this.extname(t):"";return n>0&&(r=t.substring(n),t=t.substring(0,n)),n=(n=t.lastIndexOf("/"))<=0?0:n+1,t.substring(0,n)+e+s+r},_normalize:function(t){var e=t=String(t);do{e=t,t=t.replace(r,"")}while(e.length!==t.length);return t},sep:cc.sys.os===cc.sys.OS_WINDOWS?"\\":"/",stripSep:function(t){return t.replace(/[\/\\]$/,"")}},e.exports=cc.path}),{"../platform/CCSys":158}],215:[(function(t,e){"use strict";var i=function(t,e,i,n,r,s){this.a=t,this.b=e,this.c=i,this.d=n,this.tx=r,this.ty=s};i.create=function(t,e,i,n,r,s){return{a:t,b:e,c:i,d:n,tx:r,ty:s}},i.identity=function(){return{a:1,b:0,c:0,d:1,tx:0,ty:0}},i.clone=function(t){return{a:t.a,b:t.b,c:t.c,d:t.d,tx:t.tx,ty:t.ty}},i.concat=function(t,e,i){var n=e.a,r=e.b,s=e.c,a=e.d,o=e.tx,c=e.ty;return t.a=n*i.a+r*i.c,t.b=n*i.b+r*i.d,t.c=s*i.a+a*i.c,t.d=s*i.b+a*i.d,t.tx=o*i.a+c*i.c+i.tx,t.ty=o*i.b+c*i.d+i.ty,t},i.invert=function(t,e){var i=e.a,n=e.b,r=e.c,s=e.d,a=1/(i*s-n*r),o=e.tx,c=e.ty;return t.a=a*s,t.b=-a*n,t.c=-a*r,t.d=a*i,t.tx=a*(r*c-s*o),t.ty=a*(n*o-i*c),t},i.fromMat4=function(t,e){var i=e.m;return t.a=i[0],t.b=i[1],t.c=i[4],t.d=i[5],t.tx=i[12],t.ty=i[13],t},i.transformVec2=function(t,e,i,n){var r,s;return void 0===n?(n=i,r=e.x,s=e.y):(r=e,s=i),t.x=n.a*r+n.c*s+n.tx,t.y=n.b*r+n.d*s+n.ty,t},i.transformSize=function(t,e,i){return t.width=i.a*e.width+i.c*e.height,t.height=i.b*e.width+i.d*e.height,t},i.transformRect=function(t,e,i){var n=e.x,r=e.y,s=n+e.width,a=r+e.height,o=i.a*n+i.c*r+i.tx,c=i.b*n+i.d*r+i.ty,u=i.a*s+i.c*r+i.tx,l=i.b*s+i.d*r+i.ty,h=i.a*n+i.c*a+i.tx,_=i.b*n+i.d*a+i.ty,f=i.a*s+i.c*a+i.tx,d=i.b*s+i.d*a+i.ty,p=Math.min(o,u,h,f),v=Math.max(o,u,h,f),g=Math.min(c,l,_,d),m=Math.max(c,l,_,d);return t.x=p,t.y=g,t.width=v-p,t.height=m-g,t},i.transformObb=function(t,e,i,n,r,s){var a=r.x,o=r.y,c=r.width,u=r.height,l=s.a*a+s.c*o+s.tx,h=s.b*a+s.d*o+s.ty,_=s.a*c,f=s.b*c,d=s.c*u,p=s.d*u;e.x=l,e.y=h,i.x=_+l,i.y=f+h,t.x=d+l,t.y=p+h,n.x=_+d+l,n.y=f+p+h},cc.AffineTransform=e.exports=i}),{}],216:[(function(t,e){"use strict";var i=t("../platform/CCObject").Flags,n=t("./misc"),r=t("../platform/js"),s=t("../platform/id-generater"),a=t("../event-manager"),o=t("../renderer/render-flow"),c=i.Destroying,u=i.DontDestroy,l=i.Deactivating,h=new s("Node");function _(t){return t?"string"==typeof t?r.getClassByName(t):t:(cc.errorID(3804),null)}function f(t,e){if(e._sealed)for(var i=0;i0&&(r=p(n._children,e)))return r}return null}function v(t,e,i){for(var n=0;n0&&v(r._children,e,i)}}var g=cc.Class({name:"cc._BaseNode",extends:cc.Object,properties:{_parent:null,_children:[],_active:!0,_components:[],_prefab:null,_persistNode:{get:function(){return(this._objFlags&u)>0},set:function(t){t?this._objFlags|=u:this._objFlags&=~u}},name:{get:function(){return this._name},set:function(t){this._name=t}},uuid:{get:function(){return this._id}},children:{get:function(){return this._children}},childrenCount:{get:function(){return this._children.length}},active:{get:function(){return this._active},set:function(t){if(t=!!t,this._active!==t){this._active=t;var e=this._parent;e&&e._activeInHierarchy&&cc.director._nodeActivator.activateNode(this,t)}}},activeInHierarchy:{get:function(){return this._activeInHierarchy}}},ctor:function(t){this._name=void 0!==t?t:"New Node",this._activeInHierarchy=!1,this._id=h.getNewId(),cc.director._scheduler&&cc.director._scheduler.enableForTarget(this),this.__eventTargets=[]},getParent:function(){return this._parent},setParent:function(t){if(this._parent!==t){var e=this._parent;if(this._parent=t||null,this._onSetParent(t),t&&(a._setDirtyForNode(this),t._children.push(this),t.emit&&t.emit("child-added",this),t._renderFlag|=o.FLAG_CHILDREN),e){if(!(e._objFlags&c)){var i=e._children.indexOf(this);e._children.splice(i,1),e.emit&&e.emit("child-removed",this),this._onHierarchyChanged(e),0===e._children.length&&(e._renderFlag&=~o.FLAG_CHILDREN)}}else t&&this._onHierarchyChanged(null)}},attr:function(t){r.mixin(this,t)},getChildByUuid:function(t){if(!t)return cc.log("Invalid uuid"),null;for(var e=this._children,i=0,n=e.length;i0?(u=n,i=n._children,r=0,c[o]=i[r],o++):(c[o]=n,o++,s=!0);c.length=0,a._stackId--},cleanup:function(){},removeFromParent:function(t){this._parent&&(void 0===t&&(t=!0),this._parent.removeChild(this,t))},removeChild:function(t,e){this._children.indexOf(t)>-1&&((e||void 0===e)&&t.cleanup(),t.parent=null)},removeAllChildren:function(t){var e=this._children;void 0===t&&(t=!0);for(var i=e.length-1;i>=0;i--){var n=e[i];n&&(t&&n.cleanup(),n.parent=null)}this._children.length=0},isChildOf:function(t){var e=this;do{if(e===t)return!0;e=e._parent}while(e);return!1},getComponent:function(t){var e=_(t);return e?f(this,e):null},getComponents:function(t){var e=_(t),i=[];return e&&d(this,e,i),i},getComponentInChildren:function(t){var e=_(t);return e?p(this._children,e):null},getComponentsInChildren:function(t){var e=_(t),i=[];return e&&(d(this,e,i),v(this._children,e,i)),i},_checkMultipleComp:!1,addComponent:function(t){var e;if("string"==typeof t){if(!(e=r.getClassByName(t)))return cc.errorID(3807,t),cc._RFpeek()&&cc.errorID(3808,t),null}else{if(!t)return cc.errorID(3804),null;e=t}if("function"!=typeof e)return cc.errorID(3809),null;if(!r.isChildClassOf(e,cc.Component))return cc.errorID(3810),null;var i=e._requireComponent;if(i&&!this.getComponent(i)&&!this.addComponent(i))return null;var n=new e;return n.node=this,this._components.push(n),this._activeInHierarchy&&cc.director._nodeActivator.activateComp(n),n},_addComponentAt:!1,removeComponent:function(t){t?(t instanceof cc.Component||(t=this.getComponent(t)),t&&t.destroy()):cc.errorID(3813)},_getDependComponent:!1,_removeComponent:function(t){if(t){if(!(this._objFlags&c)){var e=this._components.indexOf(t);-1!==e?this._components.splice(e,1):t.node!==this&&cc.errorID(3815)}}else cc.errorID(3814)},destroy:function(){cc.Object.prototype.destroy.call(this)&&(this.active=!1)},destroyAllChildren:function(){for(var t=this._children,e=0;e>>1;i<=n;r=i+n>>>1){var s=t[r];if(s>e+1e-6)n=r-1;else{if(!(s>2],s[a[r++]]=n[(3&o)<<2|c>>4],s[a[r++]]=n[15&c]}return s.join("")}}),{"./misc":223}],220:[(function(t,e){"use strict";cc.find=e.exports=function(t,e){if(null==t)return cc.errorID(3814),null;if(e);else{var i=cc.director.getScene();if(!i)return null;e=i}for(var n=e,r="/"!==t[0]?0:1,s=t.split("/"),a=r;a>1,t|=t>>2,t|=t>>4,t|=t>>8,1+(t|=t>>16)},BUILTIN_CLASSID_RE:/^(?:cc|dragonBones|sp|ccsg)\..+/},r=new Array(123),s=0;s<123;++s)r[s]=64;for(var a=0;a<64;++a)r["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charCodeAt(a)]=a;n.BASE64_VALUES=r,n.pushToMap=function(t,e,i,n){var r=t[e];r?Array.isArray(r)?n?(r.push(r[0]),r[0]=i):r.push(i):t[e]=n?[i,r]:[r,i]:t[e]=i},n.clampf=function(t,e,i){if(e>i){var n=e;e=i,i=n}return t=0&&this.removeAt(e)},n.removeAt=function(t){this.array.splice(t,1),t<=this.i&&--this.i},n.fastRemove=function(t){var e=this.array.indexOf(t);e>=0&&this.fastRemoveAt(e)},n.fastRemoveAt=function(t){var e=this.array;e[t]=e[e.length-1],--e.length,t<=this.i&&--this.i},n.push=function(t){this.array.push(t)},e.exports=i}),{}],225:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=(function(){function t(){this.enabled=!1,this.count=0,this.maxSize=1024}var e=t.prototype;return e.get=function(){},e.put=function(){},e.clear=function(){},t})();i.default=n,cc.pool={},n.register=function(t,e){cc.pool[t]=e},e.exports=i.default}),{}],226:[(function(t,e){"use strict";cc._PrefabInfo=cc.Class({name:"cc.PrefabInfo",properties:{root:null,asset:null,fileId:"",sync:!1}}),e.exports={syncWithPrefab:function(t){var e=t._prefab;if(!e.asset)return cc.errorID(3701,t.name),void(t._prefab=null);var i=t._objFlags,n=t._parent,r=t._id,s=t._name,a=t._active,o=t._eulerAngles.x,c=t._eulerAngles.y,u=t._eulerAngles.z,l=t._localZOrder,h=t._trs,_=h[0],f=h[1],d=h[2];cc.game._isCloning=!0,e.asset._doInstantiate(t),cc.game._isCloning=!1,t._objFlags=i,t._parent=n,t._id=r,t._prefab=e,t._name=s,t._active=a,t._localZOrder=l,(h=t._trs)[0]=_,h[1]=f,h[2]=d,t._eulerAngles.x=o,t._eulerAngles.y=c,t._eulerAngles.z=u}}}),{}],227:[(function(t,e){"use strict";var i=t("../../platform/CCMacro"),n=t("./perf-counter"),r=!1,s=15,a=null,o=null,c=null;function u(){if(!a){a={fps:{desc:"Framerate (FPS)",below:30,average:500},draws:{desc:"Draw Call"},frame:{desc:"Frame time (ms)",min:0,max:50,average:500},logic:{desc:"Game Logic (ms)",min:0,max:50,average:500,color:"#080"},render:{desc:"Renderer (ms)",min:0,max:50,average:500,color:"#f90"},mode:{desc:cc.game.renderType===cc.game.RENDER_TYPE_WEBGL?"WebGL":"Canvas",min:1}};var t=performance.now();for(var e in a)a[e]._counter=new n(e,a[e],t)}}function l(){if(!o||!o.isValid){(o=new cc.Node("PROFILER-NODE")).x=o.y=10,o.groupIndex=cc.Node.BuiltinGroupIndex.DEBUG,cc.Camera._setupDebugCamera(),o.zIndex=i.MAX_ZINDEX,cc.game.addPersistRootNode(o);var t=new cc.Node("LEFT-PANEL");t.anchorX=t.anchorY=0;var e=t.addComponent(cc.Label);e.fontSize=s,e.lineHeight=s,t.parent=o;var n=new cc.Node("RIGHT-PANEL");n.anchorX=1,n.anchorY=0,n.x=200;var r=n.addComponent(cc.Label);r.horizontalAlign=cc.Label.HorizontalAlign.RIGHT,r.fontSize=s,r.lineHeight=s,n.parent=o,cc.sys.platform!==cc.sys.BAIDU_GAME_SUB&&cc.sys.platform!==cc.sys.WECHAT_GAME_SUB&&(e.cacheMode=cc.Label.CacheMode.CHAR,r.cacheMode=cc.Label.CacheMode.CHAR),c={left:e,right:r}}}function h(){l();var t=cc.director._lastUpdate;a.frame._counter.start(t),a.logic._counter.start(t)}function _(){var t=performance.now();cc.director.isPaused()?a.frame._counter.start(t):a.logic._counter.end(t),a.render._counter.start(t)}function f(){var t=performance.now();a.render._counter.end(t),a.draws._counter.value=cc.renderer.drawCalls,a.frame._counter.end(t),a.fps._counter.frame(t);var e="",i="";for(var n in a){var r=a[n];r._counter.sample(t),e+=r.desc+"\n",i+=r._counter.human()+"\n"}c&&(c.left.string=e,c.right.string=i)}cc.profiler=e.exports={isShowingStats:function(){return r},hideStats:function(){r&&(o&&(o.active=!1),cc.director.off(cc.Director.EVENT_BEFORE_UPDATE,h),cc.director.off(cc.Director.EVENT_AFTER_UPDATE,_),cc.director.off(cc.Director.EVENT_AFTER_DRAW,f),r=!1)},showStats:function(){r||(u(),o&&(o.active=!0),cc.director.on(cc.Director.EVENT_BEFORE_UPDATE,h),cc.director.on(cc.Director.EVENT_AFTER_UPDATE,_),cc.director.on(cc.Director.EVENT_AFTER_DRAW,f),r=!0)}}}),{"../../platform/CCMacro":154,"./perf-counter":229}],228:[(function(t,e){"use strict";var i=cc.Class({name:"cc.Counter",ctor:function(t,e,i){this._id=t,this._opts=e||{},this._value=0,this._total=0,this._averageValue=0,this._accumValue=0,this._accumSamples=0,this._accumStart=i},properties:{value:{get:function(){return this._value},set:function(t){this._value=t}}},_average:function(t,e){if(this._opts.average){this._accumValue+=t,++this._accumSamples;var i=e;i-this._accumStart>=this._opts.average&&(this._averageValue=this._accumValue/this._accumSamples,this._accumValue=0,this._accumStart=i,this._accumSamples=0)}},sample:function(t){this._average(this._value,t)},human:function(){var t=this._opts.average?this._averageValue:this._value;return Math.round(100*t)/100},alarm:function(){return this._opts.below&&this._valuethis._opts.over}});e.exports=i}),{}],229:[(function(t,e){"use strict";var i=t("./counter"),n=cc.Class({name:"cc.PerfCounter",extends:i,ctor:function(t,e,i){this._time=i},start:function(t){this._time=t},end:function(t){this._value=t-this._time,this._average(this._value)},tick:function(){this.end(),this.start()},frame:function(t){var e=t,i=e-this._time;this._total++,i>(this._opts.average||1e3)&&(this._value=1e3*this._total/i,this._total=0,this._time=e,this._average(this._value))}});e.exports=n}),{"./counter":228}],230:[(function(t,e){"use strict";var i,n=new(((i=t("../platform/js"))&&i.__esModule?i:{default:i}).default.Pool)(2);function r(t){this.count=0,this.limit=t,this.datas={},this.head=null,this.tail=null}n.get=function(){return this._get()||{key:null,value:null,prev:null,next:null}},r.prototype.moveToHead=function(t){t.next=this.head,t.prev=null,null!==this.head&&(this.head.prev=t),this.head=t,null===this.tail&&(this.tail=t),this.count++,this.datas[t.key]=t},r.prototype.put=function(t,e){var i=n.get();if(i.key=t,i.value=e,this.count>=this.limit){var r=this.tail;delete this.datas[r.key],this.count--,this.tail=r.prev,this.tail.next=null,r.prev=null,r.next=null,n.put(r)}this.moveToHead(i)},r.prototype.remove=function(t){null!==t.prev?t.prev.next=t.next:this.head=t.next,null!==t.next?t.next.prev=t.prev:this.tail=t.prev,delete this.datas[t.key],this.count--},r.prototype.get=function(t){var e=this.datas[t];return e?(this.remove(e),this.moveToHead(e),e.value):null},r.prototype.clear=function(){this.count=0,this.datas={},this.head=null,this.tail=null},r.prototype.has=function(t){return!!this.datas[t]},r.prototype.delete=function(t){var e=this.datas[t];this.remove(e)};var s=new r(100),a={BASELINE_RATIO:.26,MIDDLE_RATIO:.37,BASELINE_OFFSET:0,label_wordRex:/([a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430-\u044f\u0410-\u042f\u0401\u0451]+|\S)/,label_symbolRex:/^[!,.:;'}\]%\?>\u3001\u2018\u201c\u300b\uff1f\u3002\uff0c\uff01]/,label_lastWordRex:/([a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]+|\S)$/,label_lastEnglish:/[a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]+$/,label_firstEnglish:/^[a-zA-Z0-9\xc4\xd6\xdc\xe4\xf6\xfc\xdf\xe9\xe8\xe7\xe0\xf9\xea\xe2\xee\xf4\xfb\u0430\xed\xec\xcd\xcc\xef\xc1\xc0\xe1\xe0\xc9\xc8\xd2\xd3\xf2\xf3\u0150\u0151\xd9\xda\u0170\xfa\u0171\xf1\xd1\xe6\xc6\u0153\u0152\xc3\xc2\xe3\xd4\xf5\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9\xf3\xfa\u016f\u0165\u010f\u0148\u011a\u0160\u010c\u0158\u017d\xc1\xcd\xc9\xd3\xda\u0164\u017c\u017a\u015b\xf3\u0144\u0142\u0119\u0107\u0105\u017b\u0179\u015a\xd3\u0143\u0141\u0118\u0106\u0104-\u044f\u0410-\u042f\u0401\u0451]/,highSurrogateRex:/[\uD800-\uDBFF]/,lowSurrogateRex:/[\uDC00-\uDFFF]/,label_wrapinspection:!0,__CHINESE_REG:/^[\u4E00-\u9FFF\u3400-\u4DFF]+$/,__JAPANESE_REG:/[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]|[\u2605-\u2606]|[\u2190-\u2195]|\u203B/g,__KOREAN_REG:/^[\u1100-\u11FF]|[\u3130-\u318F]|[\uA960-\uA97F]|[\uAC00-\uD7AF]|[\uD7B0-\uD7FF]+$/,isUnicodeCJK:function(t){return this.__CHINESE_REG.test(t)||this.__JAPANESE_REG.test(t)||this.__KOREAN_REG.test(t)},isUnicodeSpace:function(t){return(t=t.charCodeAt(0))>=9&&t<=13||32===t||133===t||160===t||5760===t||t>=8192&&t<=8202||8232===t||8233===t||8239===t||8287===t||12288===t},safeMeasureText:function(t,e,i){var n=(i||t.font)+"\ud83c\udfae"+e,r=s.get(n);if(null!==r)return r;var a=t.measureText(e),o=a&&a.width||0;return s.put(n,o),o},_safeSubstring:function(t,e,i){var n=e,r=i,s=t[e];if(this.lowSurrogateRex.test(s)&&n--,void 0!==i)if(i-1!==e){var a=t[i-1];this.highSurrogateRex.test(a)&&r--}else this.highSurrogateRex.test(s)&&r++;return t.substring(n,r)},fragmentText:function(t,e,i,n){var r=[];if(0===t.length||i<0)return r.push(""),r;for(var s=t;e>i&&s.length>1;){for(var a=s.length*(i/e)|0,o=this._safeSubstring(s,a),c=e-n(o),u=o,l=0,h=0;c>i&&h++<10;)a*=i/c,a|=0,c=e-n(o=this._safeSubstring(s,a));for(h=0;c<=i&&h++<10;){if(o){var _=this.label_wordRex.exec(o);l=_?_[0].length:1,u=o}a+=l,c=e-n(o=this._safeSubstring(s,a))}0==(a-=l)?(a=1,u=this._safeSubstring(s,1)):1===a&&this.highSurrogateRex.test(s[0])&&(a=2,u=this._safeSubstring(s,2));var f,d=this._safeSubstring(s,0,a);this.label_wrapinspection&&this.label_symbolRex.test(u||o)&&(0==(a-=(f=this.label_lastWordRex.exec(d))?f[0].length:0)&&(a=1),u=this._safeSubstring(s,a),d=this._safeSubstring(s,0,a)),this.label_firstEnglish.test(u)&&(f=this.label_lastEnglish.exec(d))&&d!==f[0]&&(a-=f[0].length,u=this._safeSubstring(s,a),d=this._safeSubstring(s,0,a)),0===r.length?r.push(d):(d=d.trimLeft()).length>0&&r.push(d),e=n(s=u||o)}return 0===r.length?r.push(s):(s=s.trimLeft()).length>0&&r.push(s),r}};cc.textUtils=e.exports=a}),{"../platform/js":170}],231:[(function(t,e){"use strict";var i=t("../assets/CCTexture2D"),n={loadImage:function(t,e,i){cc.assertID(t,3103);var n=cc.assetManager.assets.get(t);if(n)return n.loaded?(e&&e.call(i,null,n),n):(n.once("load",(function(){e&&e.call(i,null,n)}),i),n);cc.assetManager.loadRemote(t,(function(t,n){e&&e.call(i,t,n)}))},cacheImage:function(t,e){if(t&&e){var n=new i;return n.initWithElement(e),cc.assetManager.assets.add(t,n),n}},postLoadTexture:function(t,e){t.loaded?e&&e():t.nativeUrl?cc.assetManager.postLoadNative(t,e):e&&e()}};e.exports=n}),{"../assets/CCTexture2D":73}],232:[(function(t,e){"use strict";var i=t("./node-unit"),n=t("./node-mem-pool");e.exports={NodeMemPool:new n(i)}}),{"./node-mem-pool":234,"./node-unit":235}],233:[(function(t,e){"use strict";var i=function(t){this._unitClass=t,this._pool=[],this._findOrder=[]},n=i.prototype;n._initNative=function(){this._nativeMemPool=new renderer.MemPool},n._buildUnit=function(t){return new this._unitClass(t,this)},n._destroyUnit=function(t){this._pool[t]=null;for(var e=0,i=this._findOrder.length;e1&&e.isAllFree()&&this._destroyUnit(t.unitID),e},e.exports=i}),{}],234:[(function(t,e){"use strict";var i,n=t("./mem-pool"),r=function(t){n.call(this,t)};(i=function(){}).prototype=n.prototype;var s=r.prototype=new i;s._initNative=function(){this._nativeMemPool=new renderer.NodeMemPool},s._destroyUnit=function(t){n.prototype._destroyUnit.call(this,t)},e.exports=r}),{"./mem-pool":233}],235:[(function(t,e){"use strict";var i,n=t("../../value-types/utils"),r=(Uint32Array,10*n.FLOAT_BYTES),s=16*n.FLOAT_BYTES,a=16*n.FLOAT_BYTES,o=(Uint32Array,Uint32Array,Int32Array,Uint8Array,Uint8Array,Uint32Array,n.FLOAT_BYTES,t("./unit-base")),c=function(t,e){o.call(this,t,e);var i=this._contentNum;this.trsList=new n.FLOAT_ARRAY_TYPE(10*i),this.localMatList=new n.FLOAT_ARRAY_TYPE(16*i),this.worldMatList=new n.FLOAT_ARRAY_TYPE(16*i);for(var c=0;c",e=this._signData[2*e+0];for(var n=0,r="",s=this._contentNum,a=0;a");var o=t+n;console.log("unitID:",this.unitID,"spaceNum:",t,"calc using num:",n,"store using num:",this._data[1],"calc total num:",o,"actually total num:",this._contentNum),console.log("free info:",i),console.log("using info:",r),n!=this._data[1]&&cc.error("using num error","calc using num:",n,"store using num:",this._data[1]),t+n!=this._contentNum&&cc.error("total num error","calc total num:",o,"actually total num:",this._contentNum)},e.exports=i}),{}],237:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=a(t("./value-type")),r=a(t("../platform/CCClass")),s=a(t("../utils/misc"));function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i>>0)+(n<<16)+(i<<8)+(0|e),s}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,c(e,i),n.copy=function(t,e){return t.r=e.r,t.g=e.g,t.b=e.b,t.a=e.a,t},n.clone=function(t){return new n(t.r,t.g,t.b,t.a)},n.set=function(t,e,i,n,r){return void 0===e&&(e=255),void 0===i&&(i=255),void 0===n&&(n=255),void 0===r&&(r=255),t.r=e,t.g=i,t.b=n,t.a=r,t},n.fromHex=function(t,e){var i=e>>24&255,n=e>>16&255,r=e>>8&255,s=255&e;return t.r=i,t.g=n,t.b=r,t.a=s,t},n.fromHEX=function(t,e){return e=0===e.indexOf("#")?e.substring(1):e,t.r=parseInt(e.substr(0,2),16)||0,t.g=parseInt(e.substr(2,2),16)||0,t.b=parseInt(e.substr(4,2),16)||0,t.a=parseInt(e.substr(6,2),16)||255,t._val=(t.a<<24>>>0)+(t.b<<16)+(t.g<<8)+t.r,t},n.add=function(t,e,i){return t.r=e.r+i.r,t.g=e.g+i.g,t.b=e.b+i.b,t.a=e.a+i.a,t},n.subtract=function(t,e,i){return t.r=e.r-i.r,t.g=e.g-i.g,t.b=e.b-i.b,t.a=e.a-i.a,t},n.multiply=function(t,e,i){return t.r=e.r*i.r,t.g=e.g*i.g,t.b=e.b*i.b,t.a=e.a*i.a,t},n.divide=function(t,e,i){return t.r=e.r/i.r,t.g=e.g/i.g,t.b=e.b/i.b,t.a=e.a/i.a,t},n.scale=function(t,e,i){return t.r=e.r*i,t.g=e.g*i,t.b=e.b*i,t.a=e.a*i,t},n.lerp=function(t,e,i,n){var r=e.r,s=e.g,a=e.b,o=e.a;return t.r=r+n*(i.r-r),t.g=s+n*(i.g-s),t.b=a+n*(i.b-a),t.a=o+n*(i.a-o),t},n.toArray=function(t,e,i){void 0===i&&(i=0);var r=e instanceof n||e.a>1?1/255:1;return t[i+0]=e.r*r,t[i+1]=e.g*r,t[i+2]=e.b*r,t[i+3]=e.a*r,t},n.fromArray=function(t,e,i){return void 0===i&&(i=0),e.r=255*t[i+0],e.g=255*t[i+1],e.b=255*t[i+2],e.a=255*t[i+3],e},n.premultiplyAlpha=function(t,e){var i=e.a/255;return t.r=e.r*i,t.g=e.g*i,t.b=e.b*i,t._fastSetA(e.a),t};var r,a,u,l=n.prototype;return l.clone=function(){var t=new n;return t._val=this._val,t},l.equals=function(t){return t&&this._val===t._val},l.lerp=function(t,e,i){i=i||new n;var r=this.r,s=this.g,a=this.b,o=this.a;return i.r=r+(t.r-r)*e,i.g=s+(t.g-s)*e,i.b=a+(t.b-a)*e,i.a=o+(t.a-o)*e,i},l.toString=function(){return"rgba("+this.r.toFixed()+", "+this.g.toFixed()+", "+this.b.toFixed()+", "+this.a.toFixed()+")"},l.getR=function(){return 255&this._val},l.setR=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4294967040&this._val|t)>>>0,this},l.getG=function(){return(65280&this._val)>>8},l.setG=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4294902015&this._val|t<<8)>>>0,this},l.getB=function(){return(16711680&this._val)>>16},l.setB=function(t){return t=~~s.default.clampf(t,0,255),this._val=(4278255615&this._val|t<<16)>>>0,this},l.getA=function(){return(4278190080&this._val)>>>24},l.setA=function(t){return t=~~s.default.clampf(t,0,255),this._val=(16777215&this._val|t<<24)>>>0,this},l.toCSS=function(t){return t&&"rgba"!==t?"rgb"===t?"rgb("+this.r+","+this.g+","+this.b+")":"#"+this.toHEX(t):"rgba("+this.r+","+this.g+","+this.b+","+(this.a/255).toFixed(2)+")"},l.fromHEX=function(t){t=0===t.indexOf("#")?t.substring(1):t;var e=parseInt(t.substr(0,2),16)||0,i=parseInt(t.substr(2,2),16)||0,n=parseInt(t.substr(4,2),16)||0,r=parseInt(t.substr(6,2),16)||255;return this._val=(r<<24>>>0)+(n<<16)+(i<<8)+e,this},l.toHEX=function(t){var e=[(this.r<16?"0":"")+this.r.toString(16),(this.g<16?"0":"")+this.g.toString(16),(this.b<16?"0":"")+this.b.toString(16)];return"#rgb"===t?(e[0]=e[0][0],e[1]=e[1][0],e[2]=e[2][0]):"#rrggbbaa"===t&&e.push((this.a<16?"0":"")+this.a.toString(16)),e.join("")},l.toRGBValue=function(){return 16777215&this._val},l.fromHSV=function(t,e,i){var n,r,s;if(0===e)n=r=s=i;else if(0===i)n=r=s=0;else{1===t&&(t=0),t*=6;var a=Math.floor(t),o=t-a,c=i*(1-e),u=i*(1-e*o),l=i*(1-e*(1-o));switch(a){case 0:n=i,r=l,s=c;break;case 1:n=u,r=i,s=c;break;case 2:n=c,r=i,s=l;break;case 3:n=c,r=u,s=i;break;case 4:n=l,r=c,s=i;break;case 5:n=i,r=c,s=u}}return n*=255,r*=255,s*=255,this._val=(this.a<<24>>>0)+(s<<16)+(r<<8)+(0|n),this},l.toHSV=function(){var t=this.r/255,e=this.g/255,i=this.b/255,n={h:0,s:0,v:0},r=Math.max(t,e,i),s=Math.min(t,e,i),a=0;return n.v=r,n.s=r?(r-s)/r:0,n.s?(a=r-s,n.h=t===r?(e-i)/a:e===r?2+(i-t)/a:4+(t-e)/a,n.h/=6,n.h<0&&(n.h+=1)):n.h=0,n},l.set=function(t){return t._val?this._val=t._val:(this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a),this},l._fastSetA=function(t){this._val=(16777215&this._val|t<<24)>>>0},l.multiply=function(t){var e=(255&this._val)*t.r>>8,i=(65280&this._val)*t.g>>8,n=(16711680&this._val)*t.b>>8,r=((4278190080&this._val)>>>8)*t.a;return this._val=4278190080&r|16711680&n|65280&i|255&e,this},r=n,u=[{key:"WHITE",get:function(){return new n(255,255,255,255)}},{key:"BLACK",get:function(){return new n(0,0,0,255)}},{key:"TRANSPARENT",get:function(){return new n(0,0,0,0)}},{key:"GRAY",get:function(){return new n(127.5,127.5,127.5)}},{key:"RED",get:function(){return new n(255,0,0)}},{key:"GREEN",get:function(){return new n(0,255,0)}},{key:"BLUE",get:function(){return new n(0,0,255)}},{key:"YELLOW",get:function(){return new n(255,235,4)}},{key:"ORANGE",get:function(){return new n(255,127,0)}},{key:"CYAN",get:function(){return new n(0,255,255)}},{key:"MAGENTA",get:function(){return new n(255,0,255)}}],(a=[{key:"r",get:function(){return this.getR()},set:function(t){this.setR(t)}},{key:"g",get:function(){return this.getG()},set:function(t){this.setG(t)}},{key:"b",get:function(){return this.getB()},set:function(t){this.setB(t)}},{key:"a",get:function(){return this.getA()},set:function(t){this.setA(t)}}])&&o(r.prototype,a),u&&o(r,u),n})(n.default);i.default=u,u.div=u.divide,u.sub=u.subtract,u.mul=u.multiply,u.WHITE_R=u.WHITE,u.BLACK_R=u.BLACK,u.TRANSPARENT_R=u.TRANSPARENT,u.GRAY_R=u.GRAY,u.RED_R=u.RED,u.GREEN_R=u.GREEN,u.BLUE_R=u.BLUE,u.YELLOW_R=u.YELLOW,u.ORANGE_R=u.ORANGE,u.CYAN_R=u.CYAN,u.MAGENTA_R=u.MAGENTA,r.default.fastDefine("cc.Color",u,{r:0,g:0,b:0,a:255}),cc.Color=u,cc.color=function(t,e,i,n){return"string"==typeof t?(new u).fromHEX(t):"object"==typeof t?new u(t.r,t.g,t.b,t.a):new u(t,e,i,n)},e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./value-type":246}],238:[(function(t,e,i){"use strict";i.__esModule=!0;var n={Vec2:!0,Vec3:!0,Vec4:!0,Mat4:!0,Mat3:!0,Rect:!0,Size:!0,Color:!0,Quat:!0,Trs:!0};i.Vec4=i.Vec3=i.Vec2=i.Trs=i.Size=i.Rect=i.Quat=i.Mat4=i.Mat3=i.Color=void 0;var r=p(t("./vec2"));i.Vec2=r.default;var s=p(t("./vec3"));i.Vec3=s.default;var a=p(t("./vec4"));i.Vec4=a.default;var o=p(t("./mat4"));i.Mat4=o.default;var c=p(t("./mat3"));i.Mat3=c.default;var u=p(t("./rect"));i.Rect=u.default;var l=p(t("./size"));i.Size=l.default;var h=p(t("./color"));i.Color=h.default;var _=p(t("./quat"));i.Quat=_.default;var f=p(t("./trs"));i.Trs=f.default;var d=t("./utils");function p(t){return t&&t.__esModule?t:{default:t}}Object.keys(d).forEach((function(t){"default"!==t&&"__esModule"!==t&&(Object.prototype.hasOwnProperty.call(n,t)||t in i&&i[t]===d[t]||(i[t]=d[t]))})),cc.math=e.exports}),{"./color":237,"./mat3":239,"./mat4":240,"./quat":241,"./rect":242,"./size":243,"./trs":244,"./utils":245,"./vec2":247,"./vec3":248,"./vec4":249}],239:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("../value-types/utils"),s=(n=t("./vec3"))&&n.__esModule?n:{default:n},a=(function(){function t(t,e,i,n,s,a,o,c,u){if(void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===c&&(c=0),void 0===u&&(u=1),this.m=void 0,t instanceof r.FLOAT_ARRAY_TYPE)this.m=t;else{this.m=new r.FLOAT_ARRAY_TYPE(9);var l=this.m;l[0]=t,l[1]=e,l[2]=i,l[3]=n,l[4]=s,l[5]=a,l[6]=o,l[7]=c,l[8]=u}}return t.create=function(e,i,n,r,s,a,o,c,u){return void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===c&&(c=0),void 0===u&&(u=1),new t(e,i,n,r,s,a,o,c,u)},t.clone=function(e){var i=e.m;return new t(i[0],i[1],i[2],i[3],i[4],i[5],i[6],i[7],i[8])},t.copy=function(t,e){return t.m.set(e.m),t},t.set=function(t,e,i,n,r,s,a,o,c,u){var l=t.m;return l[0]=e,l[1]=i,l[2]=n,l[3]=r,l[4]=s,l[5]=a,l[6]=o,l[7]=c,l[8]=u,t},t.identity=function(t){var e=t.m;return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,t},t.transpose=function(t,e){var i=e.m,n=t.m;if(t===e){var r=i[1],s=i[2],a=i[5];n[1]=i[3],n[2]=i[6],n[3]=r,n[5]=i[7],n[6]=s,n[7]=a}else n[0]=i[0],n[1]=i[3],n[2]=i[6],n[3]=i[1],n[4]=i[4],n[5]=i[7],n[6]=i[2],n[7]=i[5],n[8]=i[8];return t},t.invert=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8],f=_*c-u*h,d=-_*o+u*l,p=h*o-c*l,v=r*f+s*d+a*p;return v?(v=1/v,n[0]=f*v,n[1]=(-_*s+a*h)*v,n[2]=(u*s-a*c)*v,n[3]=d*v,n[4]=(_*r-a*l)*v,n[5]=(-u*r+a*o)*v,n[6]=p*v,n[7]=(-h*r+s*l)*v,n[8]=(c*r-s*o)*v,t):t},t.adjoint=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8];return n[0]=c*_-u*h,n[1]=a*h-s*_,n[2]=s*u-a*c,n[3]=u*l-o*_,n[4]=r*_-a*l,n[5]=a*o-r*u,n[6]=o*h-c*l,n[7]=s*l-r*h,n[8]=r*c-s*o,t},t.determinant=function(t){var e=t.m,i=e[0],n=e[1],r=e[2],s=e[3],a=e[4],o=e[5],c=e[6],u=e[7],l=e[8];return i*(l*a-o*u)+n*(-l*s+o*c)+r*(u*s-a*c)},t.multiply=function(t,e,i){var n=e.m,r=i.m,s=t.m,a=n[0],o=n[1],c=n[2],u=n[3],l=n[4],h=n[5],_=n[6],f=n[7],d=n[8],p=r[0],v=r[1],g=r[2],m=r[3],y=r[4],T=r[5],E=r[6],A=r[7],C=r[8];return s[0]=p*a+v*u+g*_,s[1]=p*o+v*l+g*f,s[2]=p*c+v*h+g*d,s[3]=m*a+y*u+T*_,s[4]=m*o+y*l+T*f,s[5]=m*c+y*h+T*d,s[6]=E*a+A*u+C*_,s[7]=E*o+A*l+C*f,s[8]=E*c+A*h+C*d,t},t.multiplyMat4=function(t,e,i){var n=e.m,r=i.m,s=t.m,a=n[0],o=n[1],c=n[2],u=n[3],l=n[4],h=n[5],_=n[6],f=n[7],d=n[8],p=r[0],v=r[1],g=r[2],m=r[4],y=r[5],T=r[6],E=r[8],A=r[9],C=r[10];return s[0]=p*a+v*u+g*_,s[1]=p*o+v*l+g*f,s[2]=p*c+v*h+g*d,s[3]=m*a+y*u+T*_,s[4]=m*o+y*l+T*f,s[5]=m*c+y*h+T*d,s[6]=E*a+A*u+C*_,s[7]=E*o+A*l+C*f,s[8]=E*c+A*h+C*d,t},t.translate=function(t,e,i){var n=e.m,r=t.m,s=n[0],a=n[1],o=n[2],c=n[3],u=n[4],l=n[5],h=n[6],_=n[7],f=n[8],d=i.x,p=i.y;return r[0]=s,r[1]=a,r[2]=o,r[3]=c,r[4]=u,r[5]=l,r[6]=d*s+p*c+h,r[7]=d*a+p*u+_,r[8]=d*o+p*l+f,t},t.rotate=function(t,e,i){var n=e.m,r=t.m,s=n[0],a=n[1],o=n[2],c=n[3],u=n[4],l=n[5],h=n[6],_=n[7],f=n[8],d=Math.sin(i),p=Math.cos(i);return r[0]=p*s+d*c,r[1]=p*a+d*u,r[2]=p*o+d*l,r[3]=p*c-d*s,r[4]=p*u-d*a,r[5]=p*l-d*o,r[6]=h,r[7]=_,r[8]=f,t},t.scale=function(t,e,i){var n=i.x,r=i.y,s=e.m,a=t.m;return a[0]=n*s[0],a[1]=n*s[1],a[2]=n*s[2],a[3]=r*s[3],a[4]=r*s[4],a[5]=r*s[5],a[6]=s[6],a[7]=s[7],a[8]=s[8],t},t.fromMat4=function(t,e){var i=e.m,n=t.m;return n[0]=i[0],n[1]=i[1],n[2]=i[2],n[3]=i[4],n[4]=i[5],n[5]=i[6],n[6]=i[8],n[7]=i[9],n[8]=i[10],t},t.fromTranslation=function(t,e){var i=t.m;return i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=1,i[5]=0,i[6]=e.x,i[7]=e.y,i[8]=1,t},t.fromRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e),r=t.m;return r[0]=n,r[1]=i,r[2]=0,r[3]=-i,r[4]=n,r[5]=0,r[6]=0,r[7]=0,r[8]=1,t},t.fromScaling=function(t,e){var i=t.m;return i[0]=e.x,i[1]=0,i[2]=0,i[3]=0,i[4]=e.y,i[5]=0,i[6]=0,i[7]=0,i[8]=1,t},t.fromQuat=function(t,e){var i=t.m,n=e.x,r=e.y,s=e.z,a=e.w,o=n+n,c=r+r,u=s+s,l=n*o,h=r*o,_=r*c,f=s*o,d=s*c,p=s*u,v=a*o,g=a*c,m=a*u;return i[0]=1-_-p,i[3]=h-m,i[6]=f+g,i[1]=h+m,i[4]=1-l-p,i[7]=d-v,i[2]=f-g,i[5]=d+v,i[8]=1-l-_,t},t.fromViewUp=function(e,i,n){var a,o,c;return(a=new s.default(0,1,0),o=new s.default,c=new s.default,function(e,i,n){return s.default.lengthSqr(i)0?(r=2*Math.sqrt(n+1),t.w=.25*r,t.x=(i[6]-i[9])/r,t.y=(i[8]-i[2])/r,t.z=(i[1]-i[4])/r):i[0]>i[5]&&i[0]>i[10]?(r=2*Math.sqrt(1+i[0]-i[5]-i[10]),t.w=(i[6]-i[9])/r,t.x=.25*r,t.y=(i[1]+i[4])/r,t.z=(i[8]+i[2])/r):i[5]>i[10]?(r=2*Math.sqrt(1+i[5]-i[0]-i[10]),t.w=(i[8]-i[2])/r,t.x=(i[1]+i[4])/r,t.y=.25*r,t.z=(i[6]+i[9])/r):(r=2*Math.sqrt(1+i[10]-i[0]-i[5]),t.w=(i[1]-i[4])/r,t.x=(i[8]+i[2])/r,t.y=(i[6]+i[9])/r,t.z=.25*r),t},r.toRTS=function(t,e,i,n){var r=t.m,o=I.m;n.x=s.default.set(w,r[0],r[1],r[2]).mag(),o[0]=r[0]/n.x,o[1]=r[1]/n.x,o[2]=r[2]/n.x,n.y=s.default.set(w,r[4],r[5],r[6]).mag(),o[3]=r[4]/n.y,o[4]=r[5]/n.y,o[5]=r[6]/n.y,n.z=s.default.set(w,r[8],r[9],r[10]).mag(),o[6]=r[8]/n.z,o[7]=r[9]/n.z,o[8]=r[10]/n.z,c.default.determinant(I)<0&&(n.x*=-1,o[0]*=-1,o[1]*=-1,o[2]*=-1),a.default.fromMat3(e,I),s.default.set(i,r[12],r[13],r[14])},r.fromRTS=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=e.w,c=r+r,u=s+s,l=a+a,h=r*c,_=r*u,f=r*l,d=s*u,p=s*l,v=a*l,g=o*c,m=o*u,y=o*l,T=n.x,E=n.y,A=n.z,C=t.m;return C[0]=(1-(d+v))*T,C[1]=(_+y)*T,C[2]=(f-m)*T,C[3]=0,C[4]=(_-y)*E,C[5]=(1-(h+v))*E,C[6]=(p+g)*E,C[7]=0,C[8]=(f+m)*A,C[9]=(p-g)*A,C[10]=(1-(h+d))*A,C[11]=0,C[12]=i.x,C[13]=i.y,C[14]=i.z,C[15]=1,t},r.fromRTSOrigin=function(t,e,i,n,r){var s=e.x,a=e.y,o=e.z,c=e.w,u=s+s,l=a+a,h=o+o,_=s*u,f=s*l,d=s*h,p=a*l,v=a*h,g=o*h,m=c*u,y=c*l,T=c*h,E=n.x,A=n.y,C=n.z,x=r.x,b=r.y,S=r.z,R=t.m;return R[0]=(1-(p+g))*E,R[1]=(f+T)*E,R[2]=(d-y)*E,R[3]=0,R[4]=(f-T)*A,R[5]=(1-(_+g))*A,R[6]=(v+m)*A,R[7]=0,R[8]=(d+y)*C,R[9]=(v-m)*C,R[10]=(1-(_+p))*C,R[11]=0,R[12]=i.x+x-(R[0]*x+R[4]*b+R[8]*S),R[13]=i.y+b-(R[1]*x+R[5]*b+R[9]*S),R[14]=i.z+S-(R[2]*x+R[6]*b+R[10]*S),R[15]=1,t},r.fromQuat=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w,a=i+i,o=n+n,c=r+r,u=i*a,l=n*a,h=n*o,_=r*a,f=r*o,d=r*c,p=s*a,v=s*o,g=s*c,m=t.m;return m[0]=1-h-d,m[1]=l+g,m[2]=_-v,m[3]=0,m[4]=l-g,m[5]=1-u-d,m[6]=f+p,m[7]=0,m[8]=_+v,m[9]=f-p,m[10]=1-u-h,m[11]=0,m[12]=0,m[13]=0,m[14]=0,m[15]=1,t},r.frustum=function(t,e,i,n,r,s,a){var o=1/(i-e),c=1/(r-n),u=1/(s-a),l=t.m;return l[0]=2*s*o,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=2*s*c,l[6]=0,l[7]=0,l[8]=(i+e)*o,l[9]=(r+n)*c,l[10]=(a+s)*u,l[11]=-1,l[12]=0,l[13]=0,l[14]=a*s*2*u,l[15]=0,t},r.perspective=function(t,e,i,n,r){var s=1/Math.tan(e/2),a=1/(n-r),o=t.m;return o[0]=s/i,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=s,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(r+n)*a,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*r*n*a,o[15]=0,t},r.ortho=function(t,e,i,n,r,s,a){var o=1/(e-i),c=1/(n-r),u=1/(s-a),l=t.m;return l[0]=-2*o,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=-2*c,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=2*u,l[11]=0,l[12]=(e+i)*o,l[13]=(r+n)*c,l[14]=(a+s)*u,l[15]=1,t},r.lookAt=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=n.x,c=n.y,u=n.z,l=r-i.x,h=s-i.y,_=a-i.z,f=1/Math.sqrt(l*l+h*h+_*_),d=c*(_*=f)-u*(h*=f),p=u*(l*=f)-o*_,v=o*h-c*l,g=h*(v*=f=1/Math.sqrt(d*d+p*p+v*v))-_*(p*=f),m=_*(d*=f)-l*v,y=l*p-h*d,T=t.m;return T[0]=d,T[1]=g,T[2]=l,T[3]=0,T[4]=p,T[5]=m,T[6]=h,T[7]=0,T[8]=v,T[9]=y,T[10]=_,T[11]=0,T[12]=-(d*r+p*s+v*a),T[13]=-(g*r+m*s+y*a),T[14]=-(l*r+h*s+_*a),T[15]=1,t},r.inverseTranspose=function(t,e){var i=e.m;h=i[0],_=i[1],f=i[2],d=i[3],p=i[4],v=i[5],g=i[6],m=i[7],y=i[8],T=i[9],E=i[10],A=i[11],C=i[12],x=i[13],b=i[14],S=i[15];var n=h*v-_*p,r=h*g-f*p,s=h*m-d*p,a=_*g-f*v,o=_*m-d*v,c=f*m-d*g,u=y*x-T*C,l=y*b-E*C,R=y*S-A*C,w=T*b-E*x,I=T*S-A*x,M=E*S-A*b,O=n*M-r*I+s*w+a*R-o*l+c*u;return O?(O=1/O,(i=t.m)[0]=(v*M-g*I+m*w)*O,i[1]=(g*R-p*M-m*l)*O,i[2]=(p*I-v*R+m*u)*O,i[3]=0,i[4]=(f*I-_*M-d*w)*O,i[5]=(h*M-f*R+d*l)*O,i[6]=(_*R-h*I-d*u)*O,i[7]=0,i[8]=(x*c-b*o+S*a)*O,i[9]=(b*s-C*c-S*r)*O,i[10]=(C*o-x*s+S*n)*O,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,t):null},r.add=function(t,e,i){var n=t.m,r=e.m,s=i.m;return n[0]=r[0]+s[0],n[1]=r[1]+s[1],n[2]=r[2]+s[2],n[3]=r[3]+s[3],n[4]=r[4]+s[4],n[5]=r[5]+s[5],n[6]=r[6]+s[6],n[7]=r[7]+s[7],n[8]=r[8]+s[8],n[9]=r[9]+s[9],n[10]=r[10]+s[10],n[11]=r[11]+s[11],n[12]=r[12]+s[12],n[13]=r[13]+s[13],n[14]=r[14]+s[14],n[15]=r[15]+s[15],t},r.subtract=function(t,e,i){var n=t.m,r=e.m,s=i.m;return n[0]=r[0]-s[0],n[1]=r[1]-s[1],n[2]=r[2]-s[2],n[3]=r[3]-s[3],n[4]=r[4]-s[4],n[5]=r[5]-s[5],n[6]=r[6]-s[6],n[7]=r[7]-s[7],n[8]=r[8]-s[8],n[9]=r[9]-s[9],n[10]=r[10]-s[10],n[11]=r[11]-s[11],n[12]=r[12]-s[12],n[13]=r[13]-s[13],n[14]=r[14]-s[14],n[15]=r[15]-s[15],t},r.multiplyScalar=function(t,e,i){var n=t.m,r=e.m;return n[0]=r[0]*i,n[1]=r[1]*i,n[2]=r[2]*i,n[3]=r[3]*i,n[4]=r[4]*i,n[5]=r[5]*i,n[6]=r[6]*i,n[7]=r[7]*i,n[8]=r[8]*i,n[9]=r[9]*i,n[10]=r[10]*i,n[11]=r[11]*i,n[12]=r[12]*i,n[13]=r[13]*i,n[14]=r[14]*i,n[15]=r[15]*i,t},r.multiplyScalarAndAdd=function(t,e,i,n){var r=t.m,s=e.m,a=i.m;return r[0]=s[0]+a[0]*n,r[1]=s[1]+a[1]*n,r[2]=s[2]+a[2]*n,r[3]=s[3]+a[3]*n,r[4]=s[4]+a[4]*n,r[5]=s[5]+a[5]*n,r[6]=s[6]+a[6]*n,r[7]=s[7]+a[7]*n,r[8]=s[8]+a[8]*n,r[9]=s[9]+a[9]*n,r[10]=s[10]+a[10]*n,r[11]=s[11]+a[11]*n,r[12]=s[12]+a[12]*n,r[13]=s[13]+a[13]*n,r[14]=s[14]+a[14]*n,r[15]=s[15]+a[15]*n,t},r.strictEquals=function(t,e){var i=t.m,n=e.m;return i[0]===n[0]&&i[1]===n[1]&&i[2]===n[2]&&i[3]===n[3]&&i[4]===n[4]&&i[5]===n[5]&&i[6]===n[6]&&i[7]===n[7]&&i[8]===n[8]&&i[9]===n[9]&&i[10]===n[10]&&i[11]===n[11]&&i[12]===n[12]&&i[13]===n[13]&&i[14]===n[14]&&i[15]===n[15]},r.equals=function(t,e,i){void 0===i&&(i=o.EPSILON);var n=t.m,r=e.m;return Math.abs(n[0]-r[0])<=i*Math.max(1,Math.abs(n[0]),Math.abs(r[0]))&&Math.abs(n[1]-r[1])<=i*Math.max(1,Math.abs(n[1]),Math.abs(r[1]))&&Math.abs(n[2]-r[2])<=i*Math.max(1,Math.abs(n[2]),Math.abs(r[2]))&&Math.abs(n[3]-r[3])<=i*Math.max(1,Math.abs(n[3]),Math.abs(r[3]))&&Math.abs(n[4]-r[4])<=i*Math.max(1,Math.abs(n[4]),Math.abs(r[4]))&&Math.abs(n[5]-r[5])<=i*Math.max(1,Math.abs(n[5]),Math.abs(r[5]))&&Math.abs(n[6]-r[6])<=i*Math.max(1,Math.abs(n[6]),Math.abs(r[6]))&&Math.abs(n[7]-r[7])<=i*Math.max(1,Math.abs(n[7]),Math.abs(r[7]))&&Math.abs(n[8]-r[8])<=i*Math.max(1,Math.abs(n[8]),Math.abs(r[8]))&&Math.abs(n[9]-r[9])<=i*Math.max(1,Math.abs(n[9]),Math.abs(r[9]))&&Math.abs(n[10]-r[10])<=i*Math.max(1,Math.abs(n[10]),Math.abs(r[10]))&&Math.abs(n[11]-r[11])<=i*Math.max(1,Math.abs(n[11]),Math.abs(r[11]))&&Math.abs(n[12]-r[12])<=i*Math.max(1,Math.abs(n[12]),Math.abs(r[12]))&&Math.abs(n[13]-r[13])<=i*Math.max(1,Math.abs(n[13]),Math.abs(r[13]))&&Math.abs(n[14]-r[14])<=i*Math.max(1,Math.abs(n[14]),Math.abs(r[14]))&&Math.abs(n[15]-r[15])<=i*Math.max(1,Math.abs(n[15]),Math.abs(r[15]))},r.adjoint=function(t,e){var i=e.m,n=t.m,r=i[0],s=i[1],a=i[2],o=i[3],c=i[4],u=i[5],l=i[6],h=i[7],_=i[8],f=i[9],d=i[10],p=i[11],v=i[12],g=i[13],m=i[14],y=i[15];return n[0]=u*(d*y-p*m)-f*(l*y-h*m)+g*(l*p-h*d),n[1]=-(s*(d*y-p*m)-f*(a*y-o*m)+g*(a*p-o*d)),n[2]=s*(l*y-h*m)-u*(a*y-o*m)+g*(a*h-o*l),n[3]=-(s*(l*p-h*d)-u*(a*p-o*d)+f*(a*h-o*l)),n[4]=-(c*(d*y-p*m)-_*(l*y-h*m)+v*(l*p-h*d)),n[5]=r*(d*y-p*m)-_*(a*y-o*m)+v*(a*p-o*d),n[6]=-(r*(l*y-h*m)-c*(a*y-o*m)+v*(a*h-o*l)),n[7]=r*(l*p-h*d)-c*(a*p-o*d)+_*(a*h-o*l),n[8]=c*(f*y-p*g)-_*(u*y-h*g)+v*(u*p-h*f),n[9]=-(r*(f*y-p*g)-_*(s*y-o*g)+v*(s*p-o*f)),n[10]=r*(u*y-h*g)-c*(s*y-o*g)+v*(s*h-o*u),n[11]=-(r*(u*p-h*f)-c*(s*p-o*f)+_*(s*h-o*u)),n[12]=-(c*(f*m-d*g)-_*(u*m-l*g)+v*(u*d-l*f)),n[13]=r*(f*m-d*g)-_*(s*m-a*g)+v*(s*d-a*f),n[14]=-(r*(u*m-l*g)-c*(s*m-a*g)+v*(s*l-a*u)),n[15]=r*(u*d-l*f)-c*(s*d-a*f)+_*(s*l-a*u),t},r.toArray=function(t,e,i){void 0===i&&(i=0);for(var n=e.m,r=0;r<16;r++)t[i+r]=n[r];return t},r.fromArray=function(t,e,i){void 0===i&&(i=0);for(var n=t.m,r=0;r<16;r++)n[r]=e[i+r];return t},n.clone=function(){var t=this.m;return new r(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.set=function(t){var e=this.m,i=t.m;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this},n.equals=function(t){return r.strictEquals(this,t)},n.fuzzyEquals=function(t){return r.equals(this,t)},n.toString=function(){var t=this.m;return t?"[\n"+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+",\n"+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+",\n"+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+",\n"+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+"\n]":"[\n1, 0, 0, 0\n0, 1, 0, 0\n0, 0, 1, 0\n0, 0, 0, 1\n]"},n.identity=function(){return r.identity(this)},n.transpose=function(t){return t=t||new r,r.transpose(t,this)},n.invert=function(t){return t=t||new r,r.invert(t,this)},n.adjoint=function(t){return t=t||new r,r.adjoint(t,this)},n.determinant=function(){return r.determinant(this)},n.add=function(t,e){return e=e||new r,r.add(e,this,t)},n.subtract=function(t){return r.subtract(this,this,t)},n.multiply=function(t){return r.multiply(this,this,t)},n.multiplyScalar=function(t){return r.multiplyScalar(this,this,t)},n.translate=function(t,e){return e=e||new r,r.translate(e,this,t)},n.scale=function(t,e){return e=e||new r,r.scale(e,this,t)},n.rotate=function(t,e,i){return i=i||new r,r.rotate(i,this,t,e)},n.getTranslation=function(t){return t=t||new s.default,r.getTranslation(t,this)},n.getScale=function(t){return t=t||new s.default,r.getScaling(t,this)},n.getRotation=function(t){return t=t||new a.default,r.getRotation(t,this)},n.fromRTS=function(t,e,i){return r.fromRTS(this,t,e,i)},n.fromQuat=function(t){return r.fromQuat(this,t)},r})(n.default);i.default=R,R.mul=R.multiply,R.sub=R.subtract,R.IDENTITY=Object.freeze(new R);var w=new s.default,I=new c.default;r.default.fastDefine("cc.Mat4",R,{m00:1,m01:0,m02:0,m03:0,m04:0,m05:1,m06:0,m07:0,m08:0,m09:0,m10:1,m11:0,m12:0,m13:0,m14:0,m15:1});for(var M=function(t){Object.defineProperty(R.prototype,"m"+t,{get:function(){return this.m[t]},set:function(e){this.m[t]=e}})},O=0;O<16;O++)M(O);cc.mat4=function(t,e,i,n,r,s,a,o,c,u,l,h,_,f,d,p){var v=new R(t,e,i,n,r,s,a,o,c,u,l,h,_,f,d,p);return void 0===t&&R.identity(v),v},cc.Mat4=R,e.exports=i.default}),{"../platform/CCClass":149,"./mat3":239,"./quat":241,"./utils":245,"./value-type":246,"./vec3":248}],241:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=c(t("./value-type")),r=c(t("../platform/CCClass")),s=c(t("./vec3")),a=c(t("./mat3")),o=t("./utils");function c(t){return t&&t.__esModule?t:{default:t}}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=0,h=0,_=0,f=0,d=(function(t){var e,i;i=t,(e=r).prototype=Object.create(i.prototype),e.prototype.constructor=e,u(e,i);var n=r.prototype;function r(e,i,n,r){var s;return void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=1),(s=t.call(this)||this).x=void 0,s.y=void 0,s.z=void 0,s.w=void 0,e&&"object"==typeof e?(s.x=e.x,s.y=e.y,s.z=e.z,s.w=e.w):(s.x=e,s.y=i,s.z=n,s.w=r),s}return n.mul=function(t,e){return r.multiply(e||new r,this,t)},r.clone=function(t){return new r(t.x,t.y,t.z,t.w)},r.copy=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t},r.set=function(t,e,i,n,r){return t.x=e,t.y=i,t.z=n,t.w=r,t},r.identity=function(t){return t.x=0,t.y=0,t.z=0,t.w=1,t},r.rotationTo=function(t,e,i){var n=s.default.dot(e,i);return n<-.999999?(s.default.cross(g,s.default.RIGHT,e),g.mag()<1e-6&&s.default.cross(g,s.default.UP,e),s.default.normalize(g,g),r.fromAxisAngle(t,g,Math.PI),t):n>.999999?(t.x=0,t.y=0,t.z=0,t.w=1,t):(s.default.cross(g,e,i),t.x=g.x,t.y=g.y,t.z=g.z,t.w=1+n,r.normalize(t,t))},r.getAxisAngle=function(t,e){var i=2*Math.acos(e.w),n=Math.sin(i/2);return 0!==n?(t.x=e.x/n,t.y=e.y/n,t.z=e.z/n):(t.x=1,t.y=0,t.z=0),i},r.multiply=function(t,e,i){return l=e.x*i.w+e.w*i.x+e.y*i.z-e.z*i.y,h=e.y*i.w+e.w*i.y+e.z*i.x-e.x*i.z,_=e.z*i.w+e.w*i.z+e.x*i.y-e.y*i.x,f=e.w*i.w-e.x*i.x-e.y*i.y-e.z*i.z,t.x=l,t.y=h,t.z=_,t.w=f,t},r.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i,t},r.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t.z=e.z+i.z*n,t.w=e.w+i.w*n,t},r.rotateX=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r+e.w*n,h=e.y*r+e.z*n,_=e.z*r-e.y*n,f=e.w*r-e.x*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateY=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r-e.z*n,h=e.y*r+e.w*n,_=e.z*r+e.x*n,f=e.w*r-e.y*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateZ=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i);return l=e.x*r+e.y*n,h=e.y*r-e.x*n,_=e.z*r+e.w*n,f=e.w*r-e.z*n,t.x=l,t.y=h,t.z=_,t.w=f,t},r.rotateAround=function(t,e,i,n){return r.invert(p,e),s.default.transformQuat(g,i,p),r.fromAxisAngle(p,g,n),r.multiply(t,e,p),t},r.rotateAroundLocal=function(t,e,i,n){return r.fromAxisAngle(p,i,n),r.multiply(t,e,p),t},r.calculateW=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=Math.sqrt(Math.abs(1-e.x*e.x-e.y*e.y-e.z*e.z)),t},r.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},r.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},r.slerp=function(t,e,i,n){var r=0,s=0,a=e.x*i.x+e.y*i.y+e.z*i.z+e.w*i.w;if(a<0&&(a=-a,i.x=-i.x,i.y=-i.y,i.z=-i.z,i.w=-i.w),1-a>1e-6){var o=Math.acos(a),c=Math.sin(o);r=Math.sin((1-n)*o)/c,s=Math.sin(n*o)/c}else r=1-n,s=n;return t.x=r*e.x+s*i.x,t.y=r*e.y+s*i.y,t.z=r*e.z+s*i.z,t.w=r*e.w+s*i.w,t},r.sqlerp=function(t,e,i,n,s,a){return r.slerp(p,e,s,a),r.slerp(v,i,n,a),r.slerp(t,p,v,2*a*(1-a)),t},r.invert=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w,n=i?1/i:0;return t.x=-e.x*n,t.y=-e.y*n,t.z=-e.z*n,t.w=e.w*n,t},r.conjugate=function(t,e){return t.x=-e.x,t.y=-e.y,t.z=-e.z,t.w=e.w,t},r.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w)},r.lengthSqr=function(t){return t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w},r.normalize=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w;return i>0&&(i=1/Math.sqrt(i),t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i),t},r.fromAxes=function(t,e,i,n){return a.default.set(m,e.x,e.y,e.z,i.x,i.y,i.z,n.x,n.y,n.z),r.normalize(t,r.fromMat3(t,m))},r.fromViewUp=function(t,e,i){return a.default.fromViewUp(m,e,i),r.normalize(t,r.fromMat3(t,m))},r.fromAxisAngle=function(t,e,i){i*=.5;var n=Math.sin(i);return t.x=n*e.x,t.y=n*e.y,t.z=n*e.z,t.w=Math.cos(i),t},r.fromAngleZ=function(t,e){return e*=y,t.x=t.y=0,t.z=Math.sin(e),t.w=Math.cos(e),t},r.fromMat3=function(t,e){var i=e.m,n=i[0],r=i[1],s=i[2],a=i[3],o=i[4],c=i[5],u=i[6],l=i[7],h=i[8],_=n+o+h;if(_>0){var f=.5/Math.sqrt(_+1);t.w=.25/f,t.x=(c-l)*f,t.y=(u-s)*f,t.z=(r-a)*f}else if(n>o&&n>h){var d=2*Math.sqrt(1+n-o-h);t.w=(c-l)/d,t.x=.25*d,t.y=(a+r)/d,t.z=(u+s)/d}else if(o>h){var p=2*Math.sqrt(1+o-n-h);t.w=(u-s)/p,t.x=(a+r)/p,t.y=.25*p,t.z=(l+c)/p}else{var v=2*Math.sqrt(1+h-n-o);t.w=(r-a)/v,t.x=(u+s)/v,t.y=(l+c)/v,t.z=.25*v}return t},r.fromEuler=function(t,e,i,n){e*=y,i*=y,n*=y;var r=Math.sin(e),s=Math.cos(e),a=Math.sin(i),o=Math.cos(i),c=Math.sin(n),u=Math.cos(n);return t.x=r*o*u+s*a*c,t.y=s*a*u+r*o*c,t.z=s*o*c-r*a*u,t.w=s*o*u-r*a*c,t},r.toAxisX=function(t,e){var i=2*e.y,n=2*e.z;return t.x=1-i*e.y-n*e.z,t.y=i*e.x+n*e.w,t.z=n*e.x+i*e.w,t},r.toAxisY=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=n*e.x-r*e.w,t.y=1-i*e.x-r*e.z,t.z=r*e.y+i*e.w,t},r.toAxisZ=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=r*e.x-n*e.w,t.y=r*e.y-i*e.w,t.z=1-i*e.x-n*e.y,t},r.toEuler=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w,c=0,u=0,l=0,h=n*r+s*a;if(h>.499999)c=0,u=(0,o.toDegree)(2*Math.atan2(n,a)),l=90;else if(h<-.499999)c=0,u=-(0,o.toDegree)(2*Math.atan2(n,a)),l=-90;else{var _=n*n,f=r*r,d=s*s;c=(0,o.toDegree)(Math.atan2(2*n*a-2*r*s,1-2*_-2*d)),u=(0,o.toDegree)(Math.atan2(2*r*a-2*n*s,1-2*f-2*d)),l=(0,o.toDegree)(Math.asin(2*h)),i&&(c=-180*Math.sign(c+1e-6)+c,u=-180*Math.sign(u+1e-6)+u,l=180*Math.sign(l+1e-6)-l)}return t.x=c,t.y=u,t.z=l,t},r.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},r.equals=function(t,e,i){return void 0===i&&(i=o.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))},r.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},r.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},n.clone=function(){return new r(this.x,this.y,this.z,this.w)},n.set=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this},n.equals=function(t){return t&&this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},n.toEuler=function(t){return r.toEuler(t,this)},n.fromEuler=function(t){return r.fromEuler(this,t.x,t.y,t.z)},n.lerp=function(t,e,i){return i=i||new r,r.slerp(i,this,t,e),i},n.multiply=function(t){return r.multiply(this,this,t)},n.rotateAround=function(t,e,i,n){return n=n||new r,r.rotateAround(n,t,e,i)},r})(n.default);i.default=d,d.mul=d.multiply,d.scale=d.multiplyScalar,d.mag=d.len,d.IDENTITY=Object.freeze(new d);var p=new d,v=new d,g=new s.default,m=new a.default,y=.5*Math.PI/180;r.default.fastDefine("cc.Quat",d,{x:0,y:0,z:0,w:1}),cc.quat=function(t,e,i,n){return new d(t,e,i,n)},cc.Quat=d,e.exports=i.default}),{"../platform/CCClass":149,"./mat3":239,"./utils":245,"./value-type":246,"./vec3":248}],242:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=o(t("./value-type")),r=o(t("../platform/CCClass")),s=o(t("./vec2")),a=o(t("./size"));function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i=t.x&&this.y<=t.y&&this.y+this.height>=t.y},l.containsRect=function(t){return this.x<=t.x&&this.x+this.width>=t.x+t.width&&this.y<=t.y&&this.y+this.height>=t.y+t.height},l.union=function(t,e){var i=this.x,n=this.y,r=this.width,s=this.height,a=e.x,o=e.y,c=e.width,u=e.height;return t.x=Math.min(i,a),t.y=Math.min(n,o),t.width=Math.max(i+r,a+c)-t.x,t.height=Math.max(n+s,o+u)-t.y,t},l.transformMat4=function(t,e){var i=this.x,n=this.y,r=i+this.width,s=n+this.height,a=e.m,o=a[0]*i+a[4]*n+a[12],c=a[1]*i+a[5]*n+a[13],u=a[0]*r+a[4]*n+a[12],l=a[1]*r+a[5]*n+a[13],h=a[0]*i+a[4]*s+a[12],_=a[1]*i+a[5]*s+a[13],f=a[0]*r+a[4]*s+a[12],d=a[1]*r+a[5]*s+a[13],p=Math.min(o,u,h,f),v=Math.max(o,u,h,f),g=Math.min(c,l,_,d),m=Math.max(c,l,_,d);return t.x=p,t.y=g,t.width=v-p,t.height=m-g,t},l.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.width.toFixed(2)+", "+this.height.toFixed(2)+")"},r=n,(o=[{key:"xMin",get:function(){return this.x},set:function(t){this.width+=this.x-t,this.x=t}},{key:"yMin",get:function(){return this.y},set:function(t){this.height+=this.y-t,this.y=t}},{key:"xMax",get:function(){return this.x+this.width},set:function(t){this.width=t-this.x}},{key:"yMax",get:function(){return this.y+this.height},set:function(t){this.height=t-this.y}},{key:"center",get:function(){return new s.default(this.x+.5*this.width,this.y+.5*this.height)},set:function(t){this.x=t.x-.5*this.width,this.y=t.y-.5*this.height}},{key:"origin",get:function(){return new s.default(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}},{key:"size",get:function(){return new a.default(this.width,this.height)},set:function(t){this.width=t.width,this.height=t.height}}])&&c(r.prototype,o),n})(n.default);i.default=l,r.default.fastDefine("cc.Rect",l,{x:0,y:0,width:0,height:0}),cc.Rect=l,cc.rect=function(t,e,i,n){return new l(t,e,i,n)},e.exports=i.default}),{"../platform/CCClass":149,"./size":243,"./value-type":246,"./vec2":247}],243:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=s(t("./value-type")),r=s(t("../platform/CCClass"));function s(t){return t&&t.__esModule?t:{default:t}}function a(t,e){for(var i=0;ii?i:t},i.clamp01=function(t){return t<0?0:t>1?1:t},i.equals=function(t,e){return Math.abs(t-e)<=s*Math.max(1,Math.abs(t),Math.abs(e))},i.inverseLerp=function(t,e,i){return(i-t)/(e-t)},i.lerp=function(t,e,i){return t+(e-t)*i},i.nextPow2=function(t){return--t,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t},i.pingPong=function(t,e){return t=h(t,2*e),e-Math.abs(t-e)},i.pseudoRandom=u,i.pseudoRandomRange=l,i.pseudoRandomRangeInt=function(t,e,i){return Math.floor(l(t,e,i))},i.random=void 0,i.randomRange=c,i.randomRangeInt=function(t,e){return Math.floor(c(t,e))},i.repeat=h,i.sign=function(t){return(t>0)-(t<0)},i.toDegree=function(t){return t*r},i.toRadian=function(t){return t*n};var n=Math.PI/180,r=180/Math.PI,s=1e-6;i.EPSILON=s,i.INT_BITS=32,i.INT_MAX=2147483647,i.INT_MIN=-1<<31;var a=Float64Array;i.FLOAT_ARRAY_TYPE=a,i.FLOAT_BYTES=8;var o=Math.random;function c(t,e){return Math.random()*(e-t)+t}function u(t){return(t=(9301*t+49297)%233280)/233280}function l(t,e,i){return u(t)*(i-e)+e}function h(t,e){return t-Math.floor(t/e)*e}i.random=o}),{}],246:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("../platform/js"))&&n.__esModule?n:{default:n},s=(function(){function t(){}var e=t.prototype;return e.clone=function(){return cc.errorID("0100",r.default.getClassName(this)+".clone"),null},e.equals=function(){return cc.errorID("0100",r.default.getClassName(this)+".equals"),!1},e.lerp=function(){return cc.errorID("0100",r.default.getClassName(this)+".lerp"),this.clone()},e.set=function(){cc.errorID("0100",r.default.getClassName(this)+".set")},e.toString=function(){return""+{}},t})();i.default=s,r.default.setClassName("cc.ValueType",s),cc.ValueType=s,e.exports=i.default}),{"../platform/js":170}],247:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=o(t("./value-type")),r=o(t("../platform/CCClass")),s=o(t("../utils/misc")),a=t("./utils");function o(t){return t&&t.__esModule?t:{default:t}}function c(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=l*i,t.y=h*i),t},_.dot=function(t,e){return t.x*e.x+t.y*e.y},_.cross=function(t,e,i){return t.x=t.y=0,t.z=e.x*i.y-e.y*i.x,t},_.lerp=function(t,e,i,n){return l=e.x,h=e.y,t.x=l+n*(i.x-l),t.y=h+n*(i.y-h),t},_.random=function(t,e){e=e||1;var i=2*(0,a.random)()*Math.PI;return t.x=Math.cos(i)*e,t.y=Math.sin(i)*e,t},_.transformMat3=function(t,e,i){l=e.x,h=e.y;var n=i.m;return t.x=n[0]*l+n[3]*h+n[6],t.y=n[1]*l+n[4]*h+n[7],t},_.transformMat4=function(t,e,i){l=e.x,h=e.y;var n=i.m;return t.x=n[0]*l+n[4]*h+n[12],t.y=n[1]*l+n[5]*h+n[13],t},_.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y},_.equals=function(t,e,i){return void 0===i&&(i=a.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))},_.angle=function(t,e){_.normalize(f,t),_.normalize(d,e);var i=_.dot(f,d);return i>1?0:i<-1?Math.PI:Math.acos(i)},_.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t},_.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t},o.clone=function(){return new _(this.x,this.y)},o.set=function(t){return this.x=t.x,this.y=t.y,this},o.equals=function(t){return t&&this.x===t.x&&this.y===t.y},o.fuzzyEquals=function(t,e){return this.x-e<=t.x&&t.x<=this.x+e&&this.y-e<=t.y&&t.y<=this.y+e},o.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+")"},o.lerp=function(t,e,i){i=i||new _;var n=this.x,r=this.y;return i.x=n+(t.x-n)*e,i.y=r+(t.y-r)*e,i},o.clampf=function(t,e){return this.x=s.default.clampf(this.x,t.x,e.x),this.y=s.default.clampf(this.y,t.y,e.y),this},o.add=function(t,e){return(e=e||new _).x=this.x+t.x,e.y=this.y+t.y,e},o.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this},o.subtract=function(t){return this.x-=t.x,this.y-=t.y,this},o.multiplyScalar=function(t){return this.x*=t,this.y*=t,this},o.multiply=function(t){return this.x*=t.x,this.y*=t.y,this},o.divide=function(t){return this.x/=t,this.y/=t,this},o.negate=function(){return this.x=-this.x,this.y=-this.y,this},o.dot=function(t){return this.x*t.x+this.y*t.y},o.cross=function(t){return this.x*t.y-this.y*t.x},o.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},o.lengthSqr=function(){return this.x*this.x+this.y*this.y},o.normalizeSelf=function(){var t=this.x*this.x+this.y*this.y;if(1===t)return this;if(0===t)return this;var e=1/Math.sqrt(t);return this.x*=e,this.y*=e,this},o.normalize=function(t){return(t=t||new _).x=this.x,t.y=this.y,t.normalizeSelf(),t},o.angle=function(t){var e=this.magSqr(),i=t.magSqr();if(0===e||0===i)return console.warn("Can't get angle between zero vector"),0;var n=this.dot(t)/Math.sqrt(e*i);return n=s.default.clampf(n,-1,1),Math.acos(n)},o.signAngle=function(t){var e=this.angle(t);return this.cross(t)<0?-e:e},o.rotate=function(t,e){return(e=e||new _).x=this.x,e.y=this.y,e.rotateSelf(t)},o.rotateSelf=function(t){var e=Math.sin(t),i=Math.cos(t),n=this.x;return this.x=i*n-e*this.y,this.y=e*n+i*this.y,this},o.project=function(t){return t.multiplyScalar(this.dot(t)/t.dot(t))},o.transformMat4=function(t,e){return e=e||new _,_.transformMat4(e,this,t),e},o.maxAxis=function(){return Math.max(this.x,this.y)},n=_,r=[{key:"ONE",get:function(){return new _(1,1)}},{key:"ZERO",get:function(){return new _(0,0)}},{key:"UP",get:function(){return new _(0,1)}},{key:"RIGHT",get:function(){return new _(1,0)}}],null&&c(n.prototype,null),r&&c(n,r),_})(n.default);i.default=_,_.sub=_.subtract,_.mul=_.multiply,_.scale=_.multiplyScalar,_.mag=_.len,_.squaredMagnitude=_.lengthSqr,_.div=_.divide,_.ONE_R=_.ONE,_.ZERO_R=_.ZERO,_.UP_R=_.UP,_.RIGHT_R=_.RIGHT;var f=new _,d=new _;r.default.fastDefine("cc.Vec2",_,{x:0,y:0}),cc.v2=function(t,e){return new _(t,e)},cc.Vec2=_,e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./utils":245,"./value-type":246}],248:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=c(t("./value-type")),r=c(t("../platform/CCClass")),s=c(t("../utils/misc")),a=c(t("./vec2")),o=t("./utils");function c(t){return t&&t.__esModule?t:{default:t}}function u(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=h*i,t.y=_*i,t.z=f*i),t},d.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z},d.cross=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.x,o=i.y,c=i.z;return t.x=r*c-s*o,t.y=s*a-n*c,t.z=n*o-r*a,t},d.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t},d.random=function(t,e){e=e||1;var i=2*(0,o.random)()*Math.PI,n=2*(0,o.random)()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t},d.transformMat4=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m,r=n[3]*h+n[7]*_+n[11]*f+n[15];return r=r?1/r:1,t.x=(n[0]*h+n[4]*_+n[8]*f+n[12])*r,t.y=(n[1]*h+n[5]*_+n[9]*f+n[13])*r,t.z=(n[2]*h+n[6]*_+n[10]*f+n[14])*r,t},d.transformMat4Normal=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m,r=n[3]*h+n[7]*_+n[11]*f;return r=r?1/r:1,t.x=(n[0]*h+n[4]*_+n[8]*f)*r,t.y=(n[1]*h+n[5]*_+n[9]*f)*r,t.z=(n[2]*h+n[6]*_+n[10]*f)*r,t},d.transformMat3=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m;return t.x=h*n[0]+_*n[3]+f*n[6],t.y=h*n[1]+_*n[4]+f*n[7],t.z=h*n[2]+_*n[5]+f*n[8],t},d.transformAffine=function(t,e,i){h=e.x,_=e.y,f=e.z;var n=i.m;return t.x=n[0]*h+n[1]*_+n[2]*f+n[3],t.y=n[4]*h+n[5]*_+n[6]*f+n[7],t.x=n[8]*h+n[9]*_+n[10]*f+n[11],t},d.transformQuat=function(t,e,i){var n=i.w*e.x+i.y*e.z-i.z*e.y,r=i.w*e.y+i.z*e.x-i.x*e.z,s=i.w*e.z+i.x*e.y-i.y*e.x,a=-i.x*e.x-i.y*e.y-i.z*e.z;return t.x=n*i.w+a*-i.x+r*-i.z-s*-i.y,t.y=r*i.w+a*-i.y+s*-i.x-n*-i.z,t.z=s*i.w+a*-i.z+n*-i.y-r*-i.x,t},d.transformRTS=function(t,e,i,n,r){var s=e.x*r.x,a=e.y*r.y,o=e.z*r.z,c=i.w*s+i.y*o-i.z*a,u=i.w*a+i.z*s-i.x*o,l=i.w*o+i.x*a-i.y*s,h=-i.x*s-i.y*a-i.z*o;return t.x=c*i.w+h*-i.x+u*-i.z-l*-i.y+n.x,t.y=u*i.w+h*-i.y+l*-i.x-c*-i.z+n.y,t.z=l*i.w+h*-i.z+c*-i.y-u*-i.x+n.z,t},d.transformInverseRTS=function(t,e,i,n,r){var s=e.x-n.x,a=e.y-n.y,o=e.z-n.z,c=i.w*s-i.y*o+i.z*a,u=i.w*a-i.z*s+i.x*o,l=i.w*o-i.x*a+i.y*s,h=i.x*s+i.y*a+i.z*o;return t.x=(c*i.w+h*i.x+u*i.z-l*i.y)/r.x,t.y=(u*i.w+h*i.y+l*i.x-c*i.z)/r.y,t.z=(l*i.w+h*i.z+c*i.y-u*i.x)/r.z,t},d.rotateX=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=h,o=_*r-f*s,c=_*s+f*r;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.rotateY=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=f*s+h*r,o=_,c=f*r-h*s;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.rotateZ=function(t,e,i,n){h=e.x-i.x,_=e.y-i.y,f=e.z-i.z;var r=Math.cos(n),s=Math.sin(n),a=h*r-_*s,o=h*s+_*r,c=f;return t.x=a+i.x,t.y=o+i.y,t.z=c+i.z,t},d.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z},d.equals=function(t,e,i){void 0===i&&(i=o.EPSILON);var n=t.x,r=t.y,s=t.z,a=e.x,c=e.y,u=e.z;return Math.abs(n-a)<=i*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-c)<=i*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(s-u)<=i*Math.max(1,Math.abs(s),Math.abs(u))},d.angle=function(t,e){d.normalize(p,t),d.normalize(v,e);var i=d.dot(p,v);return i>1?0:i<-1?Math.PI:Math.acos(i)},d.projectOnPlane=function(t,e,i){return d.subtract(t,e,d.project(t,e,i))},d.project=function(t,e,i){var n=d.lengthSqr(i);return n<1e-6?d.set(t,0,0,0):d.multiplyScalar(t,i,d.dot(e,i)/n)},d.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t},d.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t},c.clone=function(){return new d(this.x,this.y,this.z)},c.set=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},c.equals=function(t){return t&&this.x===t.x&&this.y===t.y&&this.z===t.z},c.fuzzyEquals=function(t,e){return this.x-e<=t.x&&t.x<=this.x+e&&this.y-e<=t.y&&t.y<=this.y+e&&this.z-e<=t.z&&t.z<=this.z+e},c.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+")"},c.lerp=function(t,e,i){return i=i||new d,d.lerp(i,this,t,e),i},c.clampf=function(t,e){return this.x=s.default.clampf(this.x,t.x,e.x),this.y=s.default.clampf(this.y,t.y,e.y),this.z=s.default.clampf(this.z,t.z,e.z),this},c.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},c.add=function(t,e){return(e=e||new d).x=this.x+t.x,e.y=this.y+t.y,e.z=this.z+t.z,e},c.subtract=function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this},c.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this},c.multiply=function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this},c.divide=function(t){return this.x/=t,this.y/=t,this.z/=t,this},c.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},c.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z},c.cross=function(t,e){return e=e||new d,d.cross(e,this,t),e},c.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},c.lengthSqr=function(){return this.x*this.x+this.y*this.y+this.z*this.z},c.normalizeSelf=function(){return d.normalize(this,this),this},c.normalize=function(t){return t=t||new d,d.normalize(t,this),t},c.transformMat4=function(t,e){return e=e||new d,d.transformMat4(e,this,t),e},c.maxAxis=function(){return Math.max(this.x,this.y,this.z)},c.signAngle=function(t){cc.warnID(1408,"vec3.signAngle","v2.1","cc.v2(selfVector).signAngle(vector)");var e=new a.default(this.x,this.y),i=new a.default(t.x,t.y);return e.signAngle(i)},c.rotate=function(t,e){return cc.warnID(1408,"vec3.rotate","v2.1","cc.v2(selfVector).rotate(radians, out)"),a.default.prototype.rotate.call(this,t,e)},c.rotateSelf=function(t){return cc.warnID(1408,"vec3.rotateSelf","v2.1","cc.v2(selfVector).rotateSelf(radians)"),a.default.prototype.rotateSelf.call(this,t)},n=d,r=[{key:"ONE",get:function(){return new d(1,1,1)}},{key:"ZERO",get:function(){return new d}},{key:"UP",get:function(){return new d(0,1,0)}},{key:"RIGHT",get:function(){return new d(1,0,0)}},{key:"FORWARD",get:function(){return new d(0,0,1)}}],null&&u(n.prototype,null),r&&u(n,r),d})(n.default);i.default=d,d.sub=d.subtract,d.mul=d.multiply,d.scale=d.multiplyScalar,d.mag=d.len,d.squaredMagnitude=d.lengthSqr,d.div=d.divide,d.ONE_R=d.ONE,d.ZERO_R=d.ZERO,d.UP_R=d.UP,d.RIGHT_R=d.RIGHT,d.FRONT_R=d.FORWARD;var p=new d,v=new d;r.default.fastDefine("cc.Vec3",d,{x:0,y:0,z:0}),cc.v3=function(t,e,i){return new d(t,e,i)},cc.Vec3=d,e.exports=i.default}),{"../platform/CCClass":149,"../utils/misc":223,"./utils":245,"./value-type":246,"./vec2":247}],249:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0,i.v4=d;var n=a(t("../platform/CCClass")),r=a(t("./value-type")),s=t("./utils");function a(t){return t&&t.__esModule?t:{default:t}}function o(t,e){for(var i=0;i0&&(i=1/Math.sqrt(i),t.x=u*i,t.y=l*i,t.z=h*i,t.w=_*i),t},f.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},f.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},f.random=function(t,e){e=e||1;var i=2*(0,s.random)()*Math.PI,n=2*(0,s.random)()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t.w=0,t},f.transformMat4=function(t,e,i){u=e.x,l=e.y,h=e.z,_=e.w;var n=i.m;return t.x=n[0]*u+n[4]*l+n[8]*h+n[12]*_,t.y=n[1]*u+n[5]*l+n[9]*h+n[13]*_,t.z=n[2]*u+n[6]*l+n[10]*h+n[14]*_,t.w=n[3]*u+n[7]*l+n[11]*h+n[15]*_,t},f.transformAffine=function(t,e,i){u=e.x,l=e.y,h=e.z,_=e.w;var n=i.m;return t.x=n[0]*u+n[1]*l+n[2]*h+n[3]*_,t.y=n[4]*u+n[5]*l+n[6]*h+n[7]*_,t.x=n[8]*u+n[9]*l+n[10]*h+n[11]*_,t.w=e.w,t},f.transformQuat=function(t,e,i){var n=e.x,r=e.y,s=e.z;u=i.x,l=i.y,h=i.z;var a=(_=i.w)*n+l*s-h*r,o=_*r+h*n-u*s,c=_*s+u*r-l*n,f=-u*n-l*r-h*s;return t.x=a*_+f*-u+o*-h-c*-l,t.y=o*_+f*-l+c*-u-a*-h,t.z=c*_+f*-h+a*-l-o*-u,t.w=e.w,t},f.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},f.equals=function(t,e,i){return void 0===i&&(i=s.EPSILON),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))},f.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},f.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},a.clone=function(){return new f(this.x,this.y,this.z,this.w)},a.set=function(t,e,i,n){return t&&"object"==typeof t?(this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w):(this.x=t||0,this.y=e||0,this.z=i||0,this.w=n||0),this},a.equals=function(t,e){return void 0===e&&(e=s.EPSILON),Math.abs(this.x-t.x)<=e*Math.max(1,Math.abs(this.x),Math.abs(t.x))&&Math.abs(this.y-t.y)<=e*Math.max(1,Math.abs(this.y),Math.abs(t.y))&&Math.abs(this.z-t.z)<=e*Math.max(1,Math.abs(this.z),Math.abs(t.z))&&Math.abs(this.w-t.w)<=e*Math.max(1,Math.abs(this.w),Math.abs(t.w))},a.equals4f=function(t,e,i,n,r){return void 0===r&&(r=s.EPSILON),Math.abs(this.x-t)<=r*Math.max(1,Math.abs(this.x),Math.abs(t))&&Math.abs(this.y-e)<=r*Math.max(1,Math.abs(this.y),Math.abs(e))&&Math.abs(this.z-i)<=r*Math.max(1,Math.abs(this.z),Math.abs(i))&&Math.abs(this.w-n)<=r*Math.max(1,Math.abs(this.w),Math.abs(n))},a.strictEquals=function(t){return this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},a.strictEquals4f=function(t,e,i,n){return this.x===t&&this.y===e&&this.z===i&&this.w===n},a.lerp=function(t,e){return u=this.x,l=this.y,h=this.z,_=this.w,this.x=u+e*(t.x-u),this.y=l+e*(t.y-l),this.z=h+e*(t.z-h),this.w=_+e*(t.w-_),this},a.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+", "+this.w.toFixed(2)+")"},a.clampf=function(t,e){return this.x=(0,s.clamp)(this.x,t.x,e.x),this.y=(0,s.clamp)(this.y,t.y,e.y),this.z=(0,s.clamp)(this.z,t.z,e.z),this.w=(0,s.clamp)(this.w,t.w,e.w),this},a.addSelf=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this},a.add=function(t,e){return(e=e||new f).x=this.x+t.x,e.y=this.y+t.y,e.z=this.z+t.z,e.w=this.w+t.w,e},a.subtract=function(t,e){return(e=e||new f).x=this.x-t.x,e.y=this.y-t.y,e.z=this.z-t.z,e.w=this.w-t.w,e},a.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},a.multiply=function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this},a.divide=function(t){return this.x/=t,this.y/=t,this.z/=t,this.w/=t,this},a.negate=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},a.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},a.cross=function(t,e){e=e||new f;var i=this.x,n=this.y,r=this.z,s=t.x,a=t.y,o=t.z;return e.x=n*o-r*a,e.y=r*s-i*o,e.z=i*a-n*s,e},a.len=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return Math.sqrt(t*t+e*e+i*i+n*n)},a.lengthSqr=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return t*t+e*e+i*i+n*n},a.normalizeSelf=function(){return this.normalize(this),this},a.normalize=function(t){t=t||new f,u=this.x,l=this.y,h=this.z,_=this.w;var e=u*u+l*l+h*h+_*_;return e>0&&(e=1/Math.sqrt(e),t.x=u*e,t.y=l*e,t.z=h*e,t.w=_*e),t},a.transformMat4=function(t,e){e=e||new f,u=this.x,l=this.y,h=this.z,_=this.w;var i=t.m;return e.x=i[0]*u+i[4]*l+i[8]*h+i[12]*_,e.y=i[1]*u+i[5]*l+i[9]*h+i[13]*_,e.z=i[2]*u+i[6]*l+i[10]*h+i[14]*_,e.w=i[3]*u+i[7]*l+i[11]*h+i[15]*_,e},a.maxAxis=function(){return Math.max(this.x,this.y,this.z,this.w)},n=f,r=[{key:"ZERO",get:function(){return new f(0,0,0,0)}},{key:"ONE",get:function(){return new f(1,1,1,1)}},{key:"NEG_ONE",get:function(){return new f(-1,-1,-1,-1)}}],null&&o(n.prototype,null),r&&o(n,r),f})(r.default);function d(t,e,i,n){return new f(t,e,i,n)}i.default=f,f.sub=f.subtract,f.mul=f.multiply,f.div=f.divide,f.scale=f.multiplyScalar,f.mag=f.len,f.squaredMagnitude=f.lengthSqr,f.ZERO_R=f.ZERO,f.ONE_R=f.ONE,f.NEG_ONE_R=f.NEG_ONE,n.default.fastDefine("cc.Vec4",f,{x:0,y:0,z:0,w:0}),cc.v4=d,cc.Vec4=f}),{"../platform/CCClass":149,"./utils":245,"./value-type":246}],250:[(function(){"use strict";cc.js}),{}],251:[(function(t){"use strict";t("./core/CCGame"),t("./actions")}),{"./actions":7,"./core/CCGame":24}],252:[(function(t,e){"use strict";var i=t("../core/assets/CCAsset"),n=t("../core/assets/CCSpriteFrame"),r=cc.Class({name:"cc.ParticleAsset",extends:i,properties:{spriteFrame:{default:null,type:n}}});cc.ParticleAsset=e.exports=r}),{"../core/assets/CCAsset":58,"../core/assets/CCSpriteFrame":70}],253:[(function(t,e){"use strict";var i,n,r,s,a,o,c,u,l,h,_,f,d,p,v,g,m,y,T,E,A,C,x,b,S,R,w,I,M,O,D,L,P,N,F,B,U,z,k,V,H,W;(function(t){t[t.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",t[t.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",t[t.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL"})(i||(i={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.BUFFER=1]="BUFFER",t[t.TEXTURE=2]="TEXTURE",t[t.TEXTURE_VIEW=3]="TEXTURE_VIEW",t[t.RENDER_PASS=4]="RENDER_PASS",t[t.FRAMEBUFFER=5]="FRAMEBUFFER",t[t.SAMPLER=6]="SAMPLER",t[t.SHADER=7]="SHADER",t[t.PIPELINE_LAYOUT=8]="PIPELINE_LAYOUT",t[t.PIPELINE_STATE=9]="PIPELINE_STATE",t[t.BINDING_LAYOUT=10]="BINDING_LAYOUT",t[t.INPUT_ASSEMBLER=11]="INPUT_ASSEMBLER",t[t.COMMAND_ALLOCATOR=12]="COMMAND_ALLOCATOR",t[t.COMMAND_BUFFER=13]="COMMAND_BUFFER",t[t.QUEUE=14]="QUEUE",t[t.WINDOW=15]="WINDOW"})(n||(n={})),(function(t){t[t.UNREADY=0]="UNREADY",t[t.FAILED=1]="FAILED",t[t.SUCCESS=2]="SUCCESS"})(r||(r={})),(function(){function t(t){this._gfxType=n.UNKNOWN,this._status=r.UNREADY,this._gfxType=t}Object.defineProperty(t.prototype,"gfxType",{get:function(){return this._gfxType},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"status",{get:function(){return this._status},enumerable:!0,configurable:!0})})(),(function(t){t.ATTR_POSITION="a_position",t.ATTR_NORMAL="a_normal",t.ATTR_TANGENT="a_tangent",t.ATTR_BITANGENT="a_bitangent",t.ATTR_WEIGHTS="a_weights",t.ATTR_JOINTS="a_joints",t.ATTR_COLOR="a_color",t.ATTR_COLOR1="a_color1",t.ATTR_COLOR2="a_color2",t.ATTR_TEX_COORD="a_texCoord",t.ATTR_TEX_COORD1="a_texCoord1",t.ATTR_TEX_COORD2="a_texCoord2",t.ATTR_TEX_COORD3="a_texCoord3",t.ATTR_TEX_COORD4="a_texCoord4",t.ATTR_TEX_COORD5="a_texCoord5",t.ATTR_TEX_COORD6="a_texCoord6",t.ATTR_TEX_COORD7="a_texCoord7",t.ATTR_TEX_COORD8="a_texCoord8"})(s||(s={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.BOOL=1]="BOOL",t[t.BOOL2=2]="BOOL2",t[t.BOOL3=3]="BOOL3",t[t.BOOL4=4]="BOOL4",t[t.INT=5]="INT",t[t.INT2=6]="INT2",t[t.INT3=7]="INT3",t[t.INT4=8]="INT4",t[t.UINT=9]="UINT",t[t.UINT2=10]="UINT2",t[t.UINT3=11]="UINT3",t[t.UINT4=12]="UINT4",t[t.FLOAT=13]="FLOAT",t[t.FLOAT2=14]="FLOAT2",t[t.FLOAT3=15]="FLOAT3",t[t.FLOAT4=16]="FLOAT4",t[t.COLOR4=17]="COLOR4",t[t.MAT2=18]="MAT2",t[t.MAT2X3=19]="MAT2X3",t[t.MAT2X4=20]="MAT2X4",t[t.MAT3X2=21]="MAT3X2",t[t.MAT3=22]="MAT3",t[t.MAT3X4=23]="MAT3X4",t[t.MAT4X2=24]="MAT4X2",t[t.MAT4X3=25]="MAT4X3",t[t.MAT4=26]="MAT4",t[t.SAMPLER1D=27]="SAMPLER1D",t[t.SAMPLER1D_ARRAY=28]="SAMPLER1D_ARRAY",t[t.SAMPLER2D=29]="SAMPLER2D",t[t.SAMPLER2D_ARRAY=30]="SAMPLER2D_ARRAY",t[t.SAMPLER3D=31]="SAMPLER3D",t[t.SAMPLER_CUBE=32]="SAMPLER_CUBE",t[t.COUNT=33]="COUNT"})(a||(a={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A8=1]="A8",t[t.L8=2]="L8",t[t.LA8=3]="LA8",t[t.R8=4]="R8",t[t.R8SN=5]="R8SN",t[t.R8UI=6]="R8UI",t[t.R8I=7]="R8I",t[t.R16F=8]="R16F",t[t.R16UI=9]="R16UI",t[t.R16I=10]="R16I",t[t.R32F=11]="R32F",t[t.R32UI=12]="R32UI",t[t.R32I=13]="R32I",t[t.RG8=14]="RG8",t[t.RG8SN=15]="RG8SN",t[t.RG8UI=16]="RG8UI",t[t.RG8I=17]="RG8I",t[t.RG16F=18]="RG16F",t[t.RG16UI=19]="RG16UI",t[t.RG16I=20]="RG16I",t[t.RG32F=21]="RG32F",t[t.RG32UI=22]="RG32UI",t[t.RG32I=23]="RG32I",t[t.RGB8=24]="RGB8",t[t.SRGB8=25]="SRGB8",t[t.RGB8SN=26]="RGB8SN",t[t.RGB8UI=27]="RGB8UI",t[t.RGB8I=28]="RGB8I",t[t.RGB16F=29]="RGB16F",t[t.RGB16UI=30]="RGB16UI",t[t.RGB16I=31]="RGB16I",t[t.RGB32F=32]="RGB32F",t[t.RGB32UI=33]="RGB32UI",t[t.RGB32I=34]="RGB32I",t[t.RGBA8=35]="RGBA8",t[t.SRGB8_A8=36]="SRGB8_A8",t[t.RGBA8SN=37]="RGBA8SN",t[t.RGBA8UI=38]="RGBA8UI",t[t.RGBA8I=39]="RGBA8I",t[t.RGBA16F=40]="RGBA16F",t[t.RGBA16UI=41]="RGBA16UI",t[t.RGBA16I=42]="RGBA16I",t[t.RGBA32F=43]="RGBA32F",t[t.RGBA32UI=44]="RGBA32UI",t[t.RGBA32I=45]="RGBA32I",t[t.R5G6B5=46]="R5G6B5",t[t.R11G11B10F=47]="R11G11B10F",t[t.RGB5A1=48]="RGB5A1",t[t.RGBA4=49]="RGBA4",t[t.RGB10A2=50]="RGB10A2",t[t.RGB10A2UI=51]="RGB10A2UI",t[t.RGB9E5=52]="RGB9E5",t[t.D16=53]="D16",t[t.D16S8=54]="D16S8",t[t.D24=55]="D24",t[t.D24S8=56]="D24S8",t[t.D32F=57]="D32F",t[t.D32F_S8=58]="D32F_S8",t[t.BC1=59]="BC1",t[t.BC1_ALPHA=60]="BC1_ALPHA",t[t.BC1_SRGB=61]="BC1_SRGB",t[t.BC1_SRGB_ALPHA=62]="BC1_SRGB_ALPHA",t[t.BC2=63]="BC2",t[t.BC2_SRGB=64]="BC2_SRGB",t[t.BC3=65]="BC3",t[t.BC3_SRGB=66]="BC3_SRGB",t[t.BC4=67]="BC4",t[t.BC4_SNORM=68]="BC4_SNORM",t[t.BC5=69]="BC5",t[t.BC5_SNORM=70]="BC5_SNORM",t[t.BC6H_UF16=71]="BC6H_UF16",t[t.BC6H_SF16=72]="BC6H_SF16",t[t.BC7=73]="BC7",t[t.BC7_SRGB=74]="BC7_SRGB",t[t.ETC_RGB8=75]="ETC_RGB8",t[t.ETC2_RGB8=76]="ETC2_RGB8",t[t.ETC2_SRGB8=77]="ETC2_SRGB8",t[t.ETC2_RGB8_A1=78]="ETC2_RGB8_A1",t[t.ETC2_SRGB8_A1=79]="ETC2_SRGB8_A1",t[t.ETC2_RGBA8=80]="ETC2_RGBA8",t[t.ETC2_SRGB8_A8=81]="ETC2_SRGB8_A8",t[t.EAC_R11=82]="EAC_R11",t[t.EAC_R11SN=83]="EAC_R11SN",t[t.EAC_RG11=84]="EAC_RG11",t[t.EAC_RG11SN=85]="EAC_RG11SN",t[t.PVRTC_RGB2=86]="PVRTC_RGB2",t[t.PVRTC_RGBA2=87]="PVRTC_RGBA2",t[t.PVRTC_RGB4=88]="PVRTC_RGB4",t[t.PVRTC_RGBA4=89]="PVRTC_RGBA4",t[t.PVRTC2_2BPP=90]="PVRTC2_2BPP",t[t.PVRTC2_4BPP=91]="PVRTC2_4BPP"})(o||(o={})),(function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.INDEX=4]="INDEX",t[t.VERTEX=8]="VERTEX",t[t.UNIFORM=16]="UNIFORM",t[t.STORAGE=32]="STORAGE",t[t.INDIRECT=64]="INDIRECT"})(c||(c={})),(function(t){t[t.NONE=0]="NONE",t[t.DEVICE=1]="DEVICE",t[t.HOST=2]="HOST"})(u||(u={})),(function(t){t[t.NONE=0]="NONE",t[t.READ=1]="READ",t[t.WRITE=2]="WRITE"})(l||(l={})),(function(t){t[t.POINT_LIST=0]="POINT_LIST",t[t.LINE_LIST=1]="LINE_LIST",t[t.LINE_STRIP=2]="LINE_STRIP",t[t.LINE_LOOP=3]="LINE_LOOP",t[t.LINE_LIST_ADJACENCY=4]="LINE_LIST_ADJACENCY",t[t.LINE_STRIP_ADJACENCY=5]="LINE_STRIP_ADJACENCY",t[t.ISO_LINE_LIST=6]="ISO_LINE_LIST",t[t.TRIANGLE_LIST=7]="TRIANGLE_LIST",t[t.TRIANGLE_STRIP=8]="TRIANGLE_STRIP",t[t.TRIANGLE_FAN=9]="TRIANGLE_FAN",t[t.TRIANGLE_LIST_ADJACENCY=10]="TRIANGLE_LIST_ADJACENCY",t[t.TRIANGLE_STRIP_ADJACENCY=11]="TRIANGLE_STRIP_ADJACENCY",t[t.TRIANGLE_PATCH_ADJACENCY=12]="TRIANGLE_PATCH_ADJACENCY",t[t.QUAD_PATCH_LIST=13]="QUAD_PATCH_LIST"})(h||(h={})),(function(t){t[t.FILL=0]="FILL",t[t.POINT=1]="POINT",t[t.LINE=2]="LINE"})(_||(_={})),(function(t){t[t.GOURAND=0]="GOURAND",t[t.FLAT=1]="FLAT"})(f||(f={})),(function(t){t[t.NONE=0]="NONE",t[t.FRONT=1]="FRONT",t[t.BACK=2]="BACK"})(d||(d={})),(function(t){t[t.NEVER=0]="NEVER",t[t.LESS=1]="LESS",t[t.EQUAL=2]="EQUAL",t[t.LESS_EQUAL=3]="LESS_EQUAL",t[t.GREATER=4]="GREATER",t[t.NOT_EQUAL=5]="NOT_EQUAL",t[t.GREATER_EQUAL=6]="GREATER_EQUAL",t[t.ALWAYS=7]="ALWAYS"})(p||(p={})),(function(t){t[t.ZERO=0]="ZERO",t[t.KEEP=1]="KEEP",t[t.REPLACE=2]="REPLACE",t[t.INCR=3]="INCR",t[t.DECR=4]="DECR",t[t.INVERT=5]="INVERT",t[t.INCR_WRAP=6]="INCR_WRAP",t[t.DECR_WRAP=7]="DECR_WRAP"})(v||(v={})),(function(t){t[t.ADD=0]="ADD",t[t.SUB=1]="SUB",t[t.REV_SUB=2]="REV_SUB",t[t.MIN=3]="MIN",t[t.MAX=4]="MAX"})(g||(g={})),(function(t){t[t.ZERO=0]="ZERO",t[t.ONE=1]="ONE",t[t.SRC_ALPHA=2]="SRC_ALPHA",t[t.DST_ALPHA=3]="DST_ALPHA",t[t.ONE_MINUS_SRC_ALPHA=4]="ONE_MINUS_SRC_ALPHA",t[t.ONE_MINUS_DST_ALPHA=5]="ONE_MINUS_DST_ALPHA",t[t.SRC_COLOR=6]="SRC_COLOR",t[t.DST_COLOR=7]="DST_COLOR",t[t.ONE_MINUS_SRC_COLOR=8]="ONE_MINUS_SRC_COLOR",t[t.ONE_MINUS_DST_COLOR=9]="ONE_MINUS_DST_COLOR",t[t.SRC_ALPHA_SATURATE=10]="SRC_ALPHA_SATURATE",t[t.CONSTANT_COLOR=11]="CONSTANT_COLOR",t[t.ONE_MINUS_CONSTANT_COLOR=12]="ONE_MINUS_CONSTANT_COLOR",t[t.CONSTANT_ALPHA=13]="CONSTANT_ALPHA",t[t.ONE_MINUS_CONSTANT_ALPHA=14]="ONE_MINUS_CONSTANT_ALPHA"})(m||(m={})),(function(t){t[t.NONE=0]="NONE",t[t.R=1]="R",t[t.G=2]="G",t[t.B=4]="B",t[t.A=8]="A",t[t.ALL=15]="ALL"})(y||(y={})),(function(t){t[t.NONE=0]="NONE",t[t.POINT=1]="POINT",t[t.LINEAR=2]="LINEAR",t[t.ANISOTROPIC=3]="ANISOTROPIC"})(T||(T={})),(function(t){t[t.WRAP=0]="WRAP",t[t.MIRROR=1]="MIRROR",t[t.CLAMP=2]="CLAMP",t[t.BORDER=3]="BORDER"})(E||(E={})),(function(t){t[t.TEX1D=0]="TEX1D",t[t.TEX2D=1]="TEX2D",t[t.TEX3D=2]="TEX3D"})(A||(A={})),(function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.SAMPLED=4]="SAMPLED",t[t.STORAGE=8]="STORAGE",t[t.COLOR_ATTACHMENT=16]="COLOR_ATTACHMENT",t[t.DEPTH_STENCIL_ATTACHMENT=32]="DEPTH_STENCIL_ATTACHMENT",t[t.TRANSIENT_ATTACHMENT=64]="TRANSIENT_ATTACHMENT",t[t.INPUT_ATTACHMENT=128]="INPUT_ATTACHMENT"})(C||(C={})),(function(t){t[t.X1=0]="X1",t[t.X2=1]="X2",t[t.X4=2]="X4",t[t.X8=3]="X8",t[t.X16=4]="X16",t[t.X32=5]="X32",t[t.X64=6]="X64"})(x||(x={})),(function(t){t[t.NONE=0]="NONE",t[t.GEN_MIPMAP=1]="GEN_MIPMAP",t[t.CUBEMAP=2]="CUBEMAP",t[t.BAKUP_BUFFER=4]="BAKUP_BUFFER"})(b||(b={})),(function(t){t[t.TV1D=0]="TV1D",t[t.TV2D=1]="TV2D",t[t.TV3D=2]="TV3D",t[t.CUBE=3]="CUBE",t[t.TV1D_ARRAY=4]="TV1D_ARRAY",t[t.TV2D_ARRAY=5]="TV2D_ARRAY"})(S||(S={})),(function(t){t[t.VERTEX=0]="VERTEX",t[t.HULL=1]="HULL",t[t.DOMAIN=2]="DOMAIN",t[t.GEOMETRY=3]="GEOMETRY",t[t.FRAGMENT=4]="FRAGMENT",t[t.COMPUTE=5]="COMPUTE",t[t.COUNT=6]="COUNT"})(R||(R={})),(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.UNIFORM_BUFFER=1]="UNIFORM_BUFFER",t[t.SAMPLER=2]="SAMPLER",t[t.STORAGE_BUFFER=3]="STORAGE_BUFFER"})(w||(w={})),(function(t){t[t.PRIMARY=0]="PRIMARY",t[t.SECONDARY=1]="SECONDARY"})(I||(I={})),(function(t){t[t.LOAD=0]="LOAD",t[t.CLEAR=1]="CLEAR",t[t.DISCARD=2]="DISCARD"})(M||(M={})),(function(t){t[t.STORE=0]="STORE",t[t.DISCARD=1]="DISCARD"})(O||(O={})),(function(t){t[t.UNDEFINED=0]="UNDEFINED",t[t.GENERAL=1]="GENERAL",t[t.COLOR_ATTACHMENT_OPTIMAL=2]="COLOR_ATTACHMENT_OPTIMAL",t[t.DEPTH_STENCIL_ATTACHMENT_OPTIMAL=3]="DEPTH_STENCIL_ATTACHMENT_OPTIMAL",t[t.DEPTH_STENCIL_READONLY_OPTIMAL=4]="DEPTH_STENCIL_READONLY_OPTIMAL",t[t.SHADER_READONLY_OPTIMAL=5]="SHADER_READONLY_OPTIMAL",t[t.TRANSFER_SRC_OPTIMAL=6]="TRANSFER_SRC_OPTIMAL",t[t.TRANSFER_DST_OPTIMAL=7]="TRANSFER_DST_OPTIMAL",t[t.PREINITIALIZED=8]="PREINITIALIZED",t[t.PRESENT_SRC=9]="PRESENT_SRC"})(D||(D={})),(function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.RAY_TRACING=2]="RAY_TRACING"})(L||(L={})),(function(t){t[t.VIEWPORT=0]="VIEWPORT",t[t.SCISSOR=1]="SCISSOR",t[t.LINE_WIDTH=2]="LINE_WIDTH",t[t.DEPTH_BIAS=3]="DEPTH_BIAS",t[t.BLEND_CONSTANTS=4]="BLEND_CONSTANTS",t[t.DEPTH_BOUNDS=5]="DEPTH_BOUNDS",t[t.STENCIL_WRITE_MASK=6]="STENCIL_WRITE_MASK",t[t.STENCIL_COMPARE_MASK=7]="STENCIL_COMPARE_MASK"})(P||(P={})),(function(t){t[t.FRONT=0]="FRONT",t[t.BACK=1]="BACK",t[t.ALL=2]="ALL"})(N||(N={})),(function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.TRANSFER=2]="TRANSFER"})(F||(F={})),(function(t){t[t.NONE=0]="NONE",t[t.COLOR=1]="COLOR",t[t.DEPTH=2]="DEPTH",t[t.STENCIL=4]="STENCIL",t[t.DEPTH_STENCIL=6]="DEPTH_STENCIL",t[t.ALL=7]="ALL"})(B||(B={})),(function(t){t[t.DEFAULT=100]="DEFAULT"})(U||(U={})),(function(t){t[t.MIN=0]="MIN",t[t.MAX=255]="MAX",t[t.DEFAULT=128]="DEFAULT"})(z||(z={})),(function(t){t[t.UBO_GLOBAL=23]="UBO_GLOBAL",t[t.UBO_SHADOW=22]="UBO_SHADOW",t[t.UBO_LOCAL=21]="UBO_LOCAL",t[t.UBO_FORWARD_LIGHTS=20]="UBO_FORWARD_LIGHTS",t[t.UBO_SKINNING=19]="UBO_SKINNING",t[t.UBO_SKINNING_TEXTURE=18]="UBO_SKINNING_TEXTURE",t[t.UBO_UI=17]="UBO_UI",t[t.SAMPLER_JOINTS=25]="SAMPLER_JOINTS",t[t.SAMPLER_ENVIRONMENT=26]="SAMPLER_ENVIRONMENT",t[t.CUSTUM_UBO_BINDING_END_POINT=17]="CUSTUM_UBO_BINDING_END_POINT",t[t.CUSTOM_SAMPLER_BINDING_START_POINT=30]="CUSTOM_SAMPLER_BINDING_START_POINT"})(k||(k={})),(function(t){t[t.minFilter=0]="minFilter",t[t.magFilter=1]="magFilter",t[t.mipFilter=2]="mipFilter",t[t.addressU=3]="addressU",t[t.addressV=4]="addressV",t[t.addressW=5]="addressW",t[t.maxAnisotropy=6]="maxAnisotropy",t[t.cmpFunc=7]="cmpFunc",t[t.minLOD=8]="minLOD",t[t.maxLOD=9]="maxLOD",t[t.mipLODBias=10]="mipLODBias",t[t.borderColor=11]="borderColor",t[t.total=15]="total"})(W||(W={}));var G={};G[G.bool=a.BOOL]="bool",G[G.int=a.INT]="int",G[G.ivec2=a.INT2]="ivec2invTypeParams",G[G.ivec3=a.INT3]="ivec3",G[G.ivec4=a.INT4]="ivec4",G[G.float=a.FLOAT]="float",G[G.vec2=a.FLOAT2]="vec2",G[G.vec3=a.FLOAT3]="vec3",G[G.vec4=a.FLOAT4]="vec4",G[G.mat2=a.MAT2]="mat2",G[G.mat3=a.MAT3]="mat3",G[G.mat4=a.MAT4]="mat4",G[G.sampler2D=a.SAMPLER2D]="sampler2D",G[G.samplerCube=a.SAMPLER_CUBE]="samplerCube";var j=((V={})[a.BOOL]=4,V[a.INT]=4,V[a.INT2]=8,V[a.INT3]=12,V[a.INT4]=16,V[a.FLOAT]=4,V[a.FLOAT2]=8,V[a.FLOAT3]=12,V[a.FLOAT4]=16,V[a.MAT2]=16,V[a.MAT3]=36,V[a.MAT4]=64,V[a.SAMPLER2D]=4,V[a.SAMPLER_CUBE]=4,V),Y=((H={})[a.BOOL]=o.R32I,H[a.INT]=o.R32I,H[a.INT2]=o.RG32I,H[a.INT3]=o.RGB32I,H[a.INT4]=o.RGBA32I,H[a.FLOAT]=o.R32F,H[a.FLOAT2]=o.RG32F,H[a.FLOAT3]=o.RGB32F,H[a.FLOAT4]=o.RGBA32F,H),X={BACK:1029,FRONT:1028,NONE:0,ADD:32774,SUB:32778,REV_SUB:32779,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,SRC_ALPHA_SATURATE:776,NEVER:512,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,NOTEQUAL:517,GEQUAL:518,ALWAYS:519,KEEP:7680,REPLACE:7681,INCR:7682,INCR_WRAP:34055,DECR:7683,DECR_WRAP:34056,INVERT:5386};Object.assign(X,U);var q={murmurhash2_32_gc:function(t,e){for(var i,n=t.length,r=e^n,s=0;n>=4;)i=1540483477*(65535&(i=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(i>>>16)&65535)<<16),r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:r^=(255&t.charCodeAt(s+2))<<16;case 2:r^=(255&t.charCodeAt(s+1))<<8;case 1:r=1540483477*(65535&(r^=255&t.charCodeAt(s)))+((1540483477*(r>>>16)&65535)<<16)}return r=1540483477*(65535&(r^=r>>>13))+((1540483477*(r>>>16)&65535)<<16),(r^=r>>>15)>>>0},SamplerInfoIndex:W,effectStructure:{$techniques:[{$passes:[{depthStencilState:{},rasterizerState:{},blendState:{targets:[{}]},properties:{any:{sampler:{},inspector:{}}}}]}]},typeMap:G,sizeMap:j,formatMap:Y,passParams:X,RenderQueue:{OPAQUE:0,TRANSPARENT:1,OVERLAY:2},RenderPriority:z,GFXGetTypeSize:function(t){switch(t){case a.BOOL:case a.INT:case a.UINT:case a.FLOAT:return 4;case a.BOOL2:case a.INT2:case a.UINT2:case a.FLOAT2:return 8;case a.BOOL3:case a.INT3:case a.UINT3:case a.FLOAT3:return 12;case a.BOOL4:case a.INT4:case a.UINT4:case a.FLOAT4:case a.MAT2:return 16;case a.MAT2X3:return 24;case a.MAT2X4:return 32;case a.MAT3X2:return 24;case a.MAT3:return 36;case a.MAT3X4:return 48;case a.MAT4X2:case a.MAT4X2:return 32;case a.MAT4:return 64;case a.SAMPLER1D:case a.SAMPLER1D_ARRAY:case a.SAMPLER2D:case a.SAMPLER2D_ARRAY:case a.SAMPLER3D:case a.SAMPLER_CUBE:return 4;default:return 0}},UniformBinding:k};e.exports=q}),{}],254:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("../memop"),r=u(t("../enums")),s=t("../../core/value-types"),a=u(t("./program-lib")),o=u(t("./view")),c=u(t("../gfx"));function u(t){return t&&t.__esModule?t:{default:t}}var l=new s.Mat4,h=new n.RecyclePool(function(){return{stage:null,items:null}},8),_=new n.RecyclePool(function(){return new Float32Array(2)},8),f=new n.RecyclePool(function(){return new Float32Array(3)},8),d=new n.RecyclePool(function(){return new Float32Array(4)},8),p=new n.RecyclePool(function(){return new Float32Array(9)},8),v=new n.RecyclePool(function(){return new Float32Array(16)},8),g=new n.RecyclePool(function(){return new Float32Array(64)},8),m=new n.RecyclePool(function(){return new Int32Array(2)},8),y=new n.RecyclePool(function(){return new Int32Array(3)},8),T=new n.RecyclePool(function(){return new Int32Array(4)},8),E=new n.RecyclePool(function(){return new Int32Array(64)},8),A=(function(){function t(t,e){var i;this._device=t,this._programLib=new a.default(t),this._opts=e,this._type2defaultValue=((i={})[r.default.PARAM_INT]=0,i[r.default.PARAM_INT2]=new s.Vec2(0,0),i[r.default.PARAM_INT3]=new s.Vec3(0,0,0),i[r.default.PARAM_INT4]=new s.Vec4(0,0,0,0),i[r.default.PARAM_FLOAT]=0,i[r.default.PARAM_FLOAT2]=new s.Vec2(0,0),i[r.default.PARAM_FLOAT3]=new s.Vec3(0,0,0),i[r.default.PARAM_FLOAT4]=new s.Vec4(0,0,0,0),i[r.default.PARAM_COLOR4]=new s.Color(0,0,0,1),i[r.default.PARAM_MAT3]=new s.Mat3,i[r.default.PARAM_MAT4]=new s.Mat4,i[r.default.PARAM_TEXTURE_2D]=e.defaultTexture,i[r.default.PARAM_TEXTURE_CUBE]=e.defaultTextureCube,i),this._stage2fn={},this._usedTextureUnits=0,this._viewPools=new n.RecyclePool(function(){return new o.default},8),this._drawItemsPools=new n.RecyclePool(function(){return{model:null,node:null,ia:null,effect:null,defines:null,uniforms:null}},100),this._stageItemsPools=new n.RecyclePool(function(){return new n.RecyclePool(function(){return{model:null,node:null,ia:null,effect:null,defines:null,passes:[],sortKey:-1,uniforms:null}},100)},16),this._definesChanged=!1}var e=t.prototype;return e._resetTextuerUnit=function(){this._usedTextureUnits=0},e._allocTextureUnit=function(){var t=this._device,e=this._usedTextureUnits;return e>=t._caps.maxTextureUnits&&console.warn("Trying to use "+e+" texture units while this GPU supports only "+t._caps.maxTextureUnits),this._usedTextureUnits+=1,e},e._registerStage=function(t,e){this._stage2fn[t]=e},e.clear=function(){this._programLib.clear(),this.reset()},e.reset=function(){this._viewPools.reset(),this._stageItemsPools.reset(),this._definesChanged=!1},e._requestView=function(){return this._viewPools.add()},e._render=function(t,e){var i=this._device;i.setFrameBuffer(t._framebuffer),i.setViewport(t._rect.x,t._rect.y,t._rect.w,t._rect.h);var n={};t._clearFlags&r.default.CLEAR_COLOR&&(n.color=s.Vec4.toArray([],t._color)),t._clearFlags&r.default.CLEAR_DEPTH&&(n.depth=t._depth),t._clearFlags&r.default.CLEAR_STENCIL&&(n.stencil=t._stencil),i.clear(n),this._drawItemsPools.reset();for(var a=0;at.count)return void console.error("Failed to set property ["+t.name+"] : The length of texture array ["+i.length+"] is bigger than ["+t.count+"].");for(var n=E.add(),s=0;s0&&n&&n.precision>0}e||cc.warnID(9102),this._highpSupported=e},t})();i.default=l,e.exports=i.default}),{"../gfx":265}],258:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;i>24)/255,(i.blendColor>>16&255)/255,(i.blendColor>>8&255)/255,(255&i.blendColor)/255),void(i.blendSep?(t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(t.blendFunc(i.blendSrc,i.blendDst),t.blendEquation(i.blendEq)))):void t.disable(t.BLEND);!1!==i.blend&&(e.blendColor!==i.blendColor&&t.blendColor((i.blendColor>>24)/255,(i.blendColor>>16&255)/255,(i.blendColor>>8&255)/255,(255&i.blendColor)/255),e.blendSep===i.blendSep?i.blendSep?(e.blendSrc===i.blendSrc&&e.blendDst===i.blendDst&&e.blendSrcAlpha===i.blendSrcAlpha&&e.blendDstAlpha===i.blendDstAlpha||t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),e.blendEq===i.blendEq&&e.blendAlphaEq===i.blendAlphaEq||t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(e.blendSrc===i.blendSrc&&e.blendDst===i.blendDst||t.blendFunc(i.blendSrc,i.blendDst),e.blendEq!==i.blendEq&&t.blendEquation(i.blendEq)):i.blendSep?(t.blendFuncSeparate(i.blendSrc,i.blendDst,i.blendSrcAlpha,i.blendDstAlpha),t.blendEquationSeparate(i.blendEq,i.blendAlphaEq)):(t.blendFunc(i.blendSrc,i.blendDst),t.blendEquation(i.blendEq)))}function d(t,e,i){if(e.depthTest!==i.depthTest)return i.depthTest?(t.enable(t.DEPTH_TEST),t.depthFunc(i.depthFunc),void t.depthMask(i.depthWrite)):void t.disable(t.DEPTH_TEST);e.depthWrite!==i.depthWrite&&t.depthMask(i.depthWrite),!1!==i.depthTest?e.depthFunc!==i.depthFunc&&t.depthFunc(i.depthFunc):i.depthWrite&&(i.depthTest=!0,i.depthFunc=a.enums.DS_FUNC_ALWAYS,t.enable(t.DEPTH_TEST),t.depthFunc(i.depthFunc))}function p(t,e,i){if(i.stencilTest!==a.enums.STENCIL_INHERIT)return i.stencilTest!==e.stencilTest?i.stencilTest===a.enums.STENCIL_DISABLE?void t.disable(t.STENCIL_TEST):(t.enable(t.STENCIL_TEST),void(i.stencilSep?(t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMask(i.stencilWriteMaskFront),t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront)))):void(i.stencilTest!==a.enums.STENCIL_DISABLE&&(e.stencilSep===i.stencilSep?i.stencilSep?(e.stencilFuncFront===i.stencilFuncFront&&e.stencilRefFront===i.stencilRefFront&&e.stencilMaskFront===i.stencilMaskFront||t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),e.stencilWriteMaskFront!==i.stencilWriteMaskFront&&t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),e.stencilFailOpFront===i.stencilFailOpFront&&e.stencilZFailOpFront===i.stencilZFailOpFront&&e.stencilZPassOpFront===i.stencilZPassOpFront||t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),e.stencilFuncBack===i.stencilFuncBack&&e.stencilRefBack===i.stencilRefBack&&e.stencilMaskBack===i.stencilMaskBack||t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),e.stencilWriteMaskBack!==i.stencilWriteMaskBack&&t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),e.stencilFailOpBack===i.stencilFailOpBack&&e.stencilZFailOpBack===i.stencilZFailOpBack&&e.stencilZPassOpBack===i.stencilZPassOpBack||t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(e.stencilFuncFront===i.stencilFuncFront&&e.stencilRefFront===i.stencilRefFront&&e.stencilMaskFront===i.stencilMaskFront||t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),e.stencilWriteMaskFront!==i.stencilWriteMaskFront&&t.stencilMask(i.stencilWriteMaskFront),e.stencilFailOpFront===i.stencilFailOpFront&&e.stencilZFailOpFront===i.stencilZFailOpFront&&e.stencilZPassOpFront===i.stencilZPassOpFront||t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront)):i.stencilSep?(t.stencilFuncSeparate(t.FRONT,i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMaskSeparate(t.FRONT,i.stencilWriteMaskFront),t.stencilOpSeparate(t.FRONT,i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront),t.stencilFuncSeparate(t.BACK,i.stencilFuncBack,i.stencilRefBack,i.stencilMaskBack),t.stencilMaskSeparate(t.BACK,i.stencilWriteMaskBack),t.stencilOpSeparate(t.BACK,i.stencilFailOpBack,i.stencilZFailOpBack,i.stencilZPassOpBack)):(t.stencilFunc(i.stencilFuncFront,i.stencilRefFront,i.stencilMaskFront),t.stencilMask(i.stencilWriteMaskFront),t.stencilOp(i.stencilFailOpFront,i.stencilZFailOpFront,i.stencilZPassOpFront))))}function v(t,e,i){e.cullMode!==i.cullMode&&(i.cullMode!==a.enums.CULL_NONE?(t.enable(t.CULL_FACE),t.cullFace(i.cullMode)):t.disable(t.CULL_FACE))}function g(t,e,i,n){var r=!1;if(-1!==n.maxStream){if(i.maxStream!==n.maxStream)r=!0;else if(i.program!==n.program)r=!0;else for(var s=0;s>>0},n.setBlendFunc=function(t,e){this._next.blendSep=!1,this._next.blendSrc=t,this._next.blendDst=e},n.setBlendFuncSep=function(t,e,i,n){this._next.blendSep=!0,this._next.blendSrc=t,this._next.blendDst=e,this._next.blendSrcAlpha=i,this._next.blendDstAlpha=n},n.setBlendEq=function(t){this._next.blendSep=!1,this._next.blendEq=t},n.setBlendEqSep=function(t,e){this._next.blendSep=!0,this._next.blendEq=t,this._next.blendAlphaEq=e},n.setCullMode=function(t){this._next.cullMode=t},n.setVertexBuffer=function(t,e,i){void 0===i&&(i=0),this._next.vertexBuffers[t]=e,this._next.vertexBufferOffsets[t]=i,this._next.maxStream=this._caps.maxTextureUnits?console.warn("Can not set texture "+t+" at stage "+i+", max texture exceed: "+this._caps.maxTextureUnits):(this._next.textureUnits[i]=e,this.setUniform(t,i),this._next.maxTextureSlot=this._caps.maxTextureUnits)console.warn("Can not set "+n+" textures for "+t+", max texture exceed: "+this._caps.maxTextureUnits);else{for(var r=0;rthis._bytes){if(t)return void console.error("Failed to update data, bytes exceed.");this._needExpandDataStore=!0,this._bytes=t+e.byteLength,this._numIndices=this._bytes/this._bytesPerIndex}var i=this._device._gl,n=this._usage;i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,this._glID),this._needExpandDataStore?(i.bufferData(i.ELEMENT_ARRAY_BUFFER,e,n),this._needExpandDataStore=!1):i.bufferSubData(i.ELEMENT_ARRAY_BUFFER,t,e),this._device._restoreIndexBuffer()}}else console.error("The buffer is destroyed")},n.setUsage=function(t){this._usage=t},e=t,(i=[{key:"count",get:function(){return this._numIndices}}])&&s(e.prototype,i),t})();o.BYTES_PER_INDEX=a;var c=o;i.default=c,e.exports=i.default}),{"./enums":262}],265:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./enums");n={VertexFormat:t("./vertex-format"),IndexBuffer:t("./index-buffer"),VertexBuffer:t("./vertex-buffer"),Program:t("./program"),Texture:t("./texture"),Texture2D:t("./texture-2d"),TextureCube:t("./texture-cube"),RenderBuffer:t("./render-buffer"),FrameBuffer:t("./frame-buffer"),Device:t("./device"),attrTypeBytes:r.attrTypeBytes,glFilter:r.glFilter,glTextureFmt:r.glTextureFmt},Object.assign(n,r.enums);var s=n;i.default=s,cc.gfx=n,e.exports=i.default}),{"./device":261,"./enums":262,"./frame-buffer":263,"./index-buffer":264,"./program":267,"./render-buffer":268,"./texture":272,"./texture-2d":270,"./texture-cube":271,"./vertex-buffer":273,"./vertex-format":274}],266:[(function(t,e,i){"use strict";i.__esModule=!0,i.isPow2=function(t){return!(t&t-1||!t)}}),{}],267:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;i0&&t.push({type:e,fileID:-1,line:0,message:i})}}))}var a=(function(){function t(t,e){this._device=t,this._attributes=[],this._uniforms=[],this._samplers=[],this._errors=[],this._linked=!1,this._vertSource=e.vert,this._fragSource=e.frag,this._glID=null,this._id=r++}var e,i,a=t.prototype;return a.link=function(){if(!this._linked){var t=this._device._gl,e=o(t,t.VERTEX_SHADER,this._vertSource),i=o(t,t.FRAGMENT_SHADER,this._fragSource),n=t.createProgram();t.attachShader(n,e),t.attachShader(n,i),t.linkProgram(n);var r=!1,a=this._errors;if(t.getShaderParameter(e,t.COMPILE_STATUS)||(s(a,"vs",t.getShaderInfoLog(e)),r=!0),t.getShaderParameter(i,t.COMPILE_STATUS)||(s(a,"fs",t.getShaderInfoLog(i)),r=!0),t.deleteShader(e),t.deleteShader(i),r)return a;if(!t.getProgramParameter(n,t.LINK_STATUS))return a.push({info:"Failed to link shader program: "+t.getProgramInfoLog(n)}),a;this._glID=n;for(var c=t.getProgramParameter(n,t.ACTIVE_ATTRIBUTES),u=0;u=s.enums.TEXTURE_FMT_RGB_DXT1&&this._format<=s.enums.TEXTURE_FMT_RGBA_PVRTC_4BPPV1||this._format>=s.enums.TEXTURE_FMT_RGB_ETC2&&this._format<=s.enums.TEXTURE_FMT_RGBA_ETC2),void 0!==t.genMipmaps&&(this._genMipmap=t.genMipmaps,i=t.genMipmaps);var n=this._device.caps.maxTextureSize||Number.MAX_VALUE,r=Math.max(t.width||0,t.height||0);n1&&(i=!1,(t.width>t.height?t.width:t.height)>>t.images.length-1!=1&&console.error("texture-2d mipmap is invalid, should have a 1x1 mipmap."))}(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height)||(i=!1),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),void 0!==t.images&&t.images.length>0&&(this._setMipmap(t.images,t.flipY,t.premultiplyAlpha),t.images.length>1&&(this._genMipmap=!0)),i&&(e.hint(e.GENERATE_MIPMAP_HINT,e.NICEST),e.generateMipmap(e.TEXTURE_2D),this._genMipmap=!0),this._setTexInfo(),this._device._restoreTexture(0)},r.updateSubImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),this._setSubImage(i,t),this._device._restoreTexture(0)},r.updateImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,this._glID),this._setImage(i,t),this._device._restoreTexture(0)},r._setSubImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.image;!s||ArrayBuffer.isView(s)||s instanceof ArrayBuffer?(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),this._compressed?i.compressedTexSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,e.width,e.height,t.format,s):i.texSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,e.width,e.height,t.format,t.pixelType,s)):(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!0):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),i.texSubImage2D(i.TEXTURE_2D,e.level,e.x,e.y,t.format,t.pixelType,s))},r._setImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.image;!s||ArrayBuffer.isView(s)||s instanceof ArrayBuffer?(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),this._compressed?i.compressedTexImage2D(i.TEXTURE_2D,e.level,t.internalFormat,e.width,e.height,0,s):i.texImage2D(i.TEXTURE_2D,e.level,t.internalFormat,e.width,e.height,0,t.format,t.pixelType,s)):(void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!0):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),i.texImage2D(i.TEXTURE_2D,e.level,t.internalFormat,t.format,t.pixelType,s))},r._setMipmap=function(t,e,i){for(var n=(0,s.glTextureFmt)(this._format),r={width:this._width,height:this._height,flipY:e,premultiplyAlpha:i,level:0,image:null},a=0;a>a,r.height=this._height>>a,r.image=t[a],this._setImage(n,r)},r._setTexInfo=function(){var t=this._device._gl,e=(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height);e||this._wrapS===s.enums.WRAP_CLAMP&&this._wrapT===s.enums.WRAP_CLAMP||(console.warn("WebGL1 doesn't support all wrap modes with NPOT textures"),this._wrapS=s.enums.WRAP_CLAMP,this._wrapT=s.enums.WRAP_CLAMP);var i=this._genMipmap?this._mipFilter:-1;e||-1===i||(console.warn("NPOT textures do not support mipmap filter"),i=-1),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,(0,s.glFilter)(t,this._minFilter,i)),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,(0,s.glFilter)(t,this._magFilter,-1)),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,this._wrapS),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,this._wrapT);var n=this._device.ext("EXT_texture_filter_anisotropic");n&&t.texParameteri(t.TEXTURE_2D,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisotropy)},n})(r.default);i.default=c,e.exports=i.default}),{"./enums":262,"./misc":266,"./texture":272}],271:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("./texture"))&&n.__esModule?n:{default:n},s=t("./enums"),a=t("./misc");function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var c=(function(t){var e,i;function n(e,i){var n,r=(n=t.call(this,e)||this)._device._gl;return n._target=r.TEXTURE_CUBE_MAP,n._glID=r.createTexture(),n.update(i),n}i=t,(e=n).prototype=Object.create(i.prototype),e.prototype.constructor=e,o(e,i);var r=n.prototype;return r.update=function(t){var e=this._device._gl,i=this._genMipmaps;t&&(void 0!==t.width&&(this._width=t.width),void 0!==t.height&&(this._height=t.height),void 0!==t.anisotropy&&(this._anisotropy=t.anisotropy),void 0!==t.minFilter&&(this._minFilter=t.minFilter),void 0!==t.magFilter&&(this._magFilter=t.magFilter),void 0!==t.mipFilter&&(this._mipFilter=t.mipFilter),void 0!==t.wrapS&&(this._wrapS=t.wrapS),void 0!==t.wrapT&&(this._wrapT=t.wrapT),void 0!==t.format&&(this._format=t.format,this._compressed=this._format>=s.enums.TEXTURE_FMT_RGB_DXT1&&this._format<=s.enums.TEXTURE_FMT_RGBA_PVRTC_4BPPV1||this._format>=s.enums.TEXTURE_FMT_RGB_ETC2&&this._format<=s.enums.TEXTURE_FMT_RGBA_ETC2),void 0!==t.genMipmaps&&(this._genMipmaps=t.genMipmaps,i=t.genMipmaps),void 0!==t.images&&t.images.length>1&&(i=!1,t.width!==t.height&&console.warn("texture-cube width and height should be identical."),t.width>>t.images.length-1!=1&&console.error("texture-cube mipmap is invalid. please set mipmap as 1x1, 2x2, 4x4 ... nxn"))),(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height)||(i=!1),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),void 0!==t.images&&t.images.length>0&&(this._setMipmap(t.images,t.flipY,t.premultiplyAlpha),t.images.length>1&&(this._genMipmaps=!0)),i&&(e.hint(e.GENERATE_MIPMAP_HINT,e.NICEST),e.generateMipmap(e.TEXTURE_CUBE_MAP),this._genMipmaps=!0),this._setTexInfo(),this._device._restoreTexture(0)},r.updateSubImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),this._setSubImage(i,t),this._device._restoreTexture(0)},r.updateImage=function(t){var e=this._device._gl,i=(0,s.glTextureFmt)(this._format);e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_CUBE_MAP,this._glID),this._setImage(i,t),this._device._restoreTexture(0)},r._setSubImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.faceIndex,a=e.image;void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),!a||ArrayBuffer.isView(a)||a instanceof ArrayBuffer?this._compressed?i.compressedTexSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,e.width,e.height,t.format,a):i.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,e.width,e.height,t.format,t.pixelType,a):i.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,e.x,e.y,t.format,t.pixelType,a)},r._setImage=function(t,e){var i=this._device._gl,n=e.flipY,r=e.premultiplyAlpha,s=e.faceIndex,a=e.image;void 0===n?i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!1):i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n),void 0===r?i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1):i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r),!a||ArrayBuffer.isView(a)||a instanceof ArrayBuffer?this._compressed?i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,e.width,e.height,0,a):i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,e.width,e.height,0,t.format,t.pixelType,a):i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+s,e.level,t.internalFormat,t.format,t.pixelType,a)},r._setMipmap=function(t,e,i){for(var n=(0,s.glTextureFmt)(this._format),r={width:this._width,height:this._height,faceIndex:0,flipY:e,premultiplyAlpha:i,level:0,image:null},a=0;a>a,r.height=this._height>>a;for(var c=0;c<6;++c)r.faceIndex=c,r.image=o[c],this._setImage(n,r)}},r._setTexInfo=function(){var t=this._device._gl,e=(0,a.isPow2)(this._width)&&(0,a.isPow2)(this._height);e||this._wrapS===s.enums.WRAP_CLAMP&&this._wrapT===s.enums.WRAP_CLAMP||(console.warn("WebGL1 doesn't support all wrap modes with NPOT textures"),this._wrapS=s.enums.WRAP_CLAMP,this._wrapT=s.enums.WRAP_CLAMP);var i=this._genMipmaps?this._mipFilter:-1;e||-1===i||(console.warn("NPOT textures do not support mipmap filter"),i=-1),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_MIN_FILTER,(0,s.glFilter)(t,this._minFilter,i)),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_MAG_FILTER,(0,s.glFilter)(t,this._magFilter,-1)),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_WRAP_S,this._wrapS),t.texParameteri(t.TEXTURE_CUBE_MAP,t.TEXTURE_WRAP_T,this._wrapT);var n=this._device.ext("EXT_texture_filter_anisotropic");n&&t.texParameteri(t.TEXTURE_CUBE_MAP,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisotropy)},n})(r.default);i.default=c,e.exports=i.default}),{"./enums":262,"./misc":266,"./texture":272}],272:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("./enums"),r=0,s=(function(){function t(t){this._device=t,this._width=4,this._height=4,this._genMipmaps=!1,this._compressed=!1,this._anisotropy=1,this._minFilter=n.enums.FILTER_LINEAR,this._magFilter=n.enums.FILTER_LINEAR,this._mipFilter=n.enums.FILTER_LINEAR,this._wrapS=n.enums.WRAP_REPEAT,this._wrapT=n.enums.WRAP_REPEAT,this._format=n.enums.TEXTURE_FMT_RGBA8,this._target=-1,this._id=r++}return t.prototype.destroy=function(){null!==this._glID?(this._device._gl.deleteTexture(this._glID),this._device._stats.tex-=this.bytes,this._glID=null):console.error("The texture already destroyed")},t})();i.default=s,e.exports=i.default}),{"./enums":262}],273:[(function(t,e,i){"use strict";function n(t,e){for(var i=0;ithis._bytes){if(t)return void console.error("Failed to update data, bytes exceed.");this._needExpandDataStore=!0,this._bytes=t+e.byteLength,this._numVertices=this._bytes/this._bytesPerVertex}var i=this._device._gl,n=this._usage;i.bindBuffer(i.ARRAY_BUFFER,this._glID),this._needExpandDataStore?(i.bufferData(i.ARRAY_BUFFER,e,n),this._needExpandDataStore=!1):i.bufferSubData(i.ARRAY_BUFFER,t,e),i.bindBuffer(i.ARRAY_BUFFER,null)}}else console.error("The buffer is destroyed")},r.getFormat=function(t){return this._format.element(t)},r.setUsage=function(t){this._usage=t},e=t,(i=[{key:"count",get:function(){return this._numVertices}}])&&n(e.prototype,i),t})();i.default=r,e.exports=i.default}),{"./enums":262}],274:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=t("./enums"),s=(n=t("../murmurhash2_gc"))&&n.__esModule?n:{default:n},a=(function(){function t(t){this._attr2el={},this._elements=[],this._bytes=0;for(var e="",i=0,n=t.length;ithis._data.length)for(var e=this._data.length;e=this._data.length&&this._resize(2*this._data.length),this._data[this._count]=t,++this._count},n.pop=function(){--this._count,this._count<0&&(this._count=0);var t=this._data[this._count];return this._data[this._count]=void 0,t},n.fastRemove=function(t){if(!(t>=this._count||t<0)){var e=this._count-1;this._data[t]=this._data[e],this._data[e]=void 0,this._count-=1}},n.indexOf=function(t){return this._data.indexOf(t)},n.sort=function(t){return(0,r.default)(this._data,0,this._count,t)},e=t,(i=[{key:"length",get:function(){return this._count}},{key:"data",get:function(){return this._data}}])&&s(e.prototype,i),t})();i.default=a,e.exports=i.default}),{"./timsort":281}],277:[(function(t,e,i){"use strict";i.__esModule=!0,i.TypedArrayPool=i.RecyclePool=i.Pool=i.LinkedArray=i.FixedArray=i.CircularPool=void 0;var n=u(t("./circular-pool"));i.CircularPool=n.default;var r=u(t("./fixed-array"));i.FixedArray=r.default;var s=u(t("./linked-array"));i.LinkedArray=s.default;var a=u(t("./pool"));i.Pool=a.default;var o=u(t("./recycle-pool"));i.RecyclePool=o.default;var c=u(t("./typed-array-pool"));function u(t){return t&&t.__esModule?t:{default:t}}i.TypedArrayPool=c.default}),{"./circular-pool":275,"./fixed-array":276,"./linked-array":278,"./pool":279,"./recycle-pool":280,"./typed-array-pool":282}],278:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n,r=(n=t("./pool"))&&n.__esModule?n:{default:n};function s(t,e){for(var i=0;ithis._data.length)for(var e=this._data.length;e=this._data.length&&this.resize(2*this._data.length),this._data[this._count++]},n.remove=function(t){if(!(t>=this._count)){var e=this._count-1,i=this._data[t];this._data[t]=this._data[e],this._data[e]=i,this._count-=1}},n.sort=function(t){return(0,r.default)(this._data,0,this._count,t)},e=t,(i=[{key:"length",get:function(){return this._count}},{key:"data",get:function(){return this._data}}])&&s(e.prototype,i),t})();i.default=a,cc.RecyclePool=a,e.exports=i.default}),{"./timsort":281}],281:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=function(t,e,i,r){if(!Array.isArray(t))throw new TypeError("Can only sort arrays");void 0===e&&(e=0),void 0===i&&(i=t.length),void 0===r&&(r=c);var s=i-e;if(!(s<2)){var a=0;if(sh&&(f=h),_(t,e,e+f,e+a,r),a=f}o.pushRun(e,a),o.mergeRuns(),s-=a,e+=a}while(0!==s);o.forceMergeRuns()}};var n=32,r=7,s=256,a=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9];function o(t){return t<1e5?t<100?t<10?0:1:t<1e4?t<1e3?2:3:4:t<1e7?t<1e6?5:6:t<1e9?t<1e8?7:8:9}function c(t,e){if(t===e)return 0;if(~~t===t&&~~e===e){if(0===t||0===e)return t=0)return-1;if(t>=0)return 1;t=-t,e=-e}var i=o(t),n=o(e),r=0;return in&&(e*=a[i-n-1],t/=10,r=1),t===e?r:t=n;)e|=1&t,t>>=1;return t+e}function l(t,e,i,n){var r=e+1;if(r===i)return 1;if(n(t[r++],t[e])<0){for(;r=0;)r++;return r-e}function h(t,e,i){for(i--;e>>1;r(s,t[c])<0?o=c:a=c+1}var u=n-a;switch(u){case 3:t[a+3]=t[a+2];case 2:t[a+2]=t[a+1];case 1:t[a+1]=t[a];break;default:for(;u>0;)t[a+u]=t[a+u-1],u--}t[a]=s}}function f(t,e,i,n,r,s){var a=0,o=0,c=1;if(s(t,e[i+r])>0){for(o=n-r;c0;)a=c,(c=1+(c<<1))<=0&&(c=o);c>o&&(c=o),a+=r,c+=r}else{for(o=r+1;co&&(c=o);var u=a;a=r-c,c=r-u}for(a++;a>>1);s(t,e[i+l])>0?a=l+1:c=l}return c}function d(t,e,i,n,r,s){var a=0,o=0,c=1;if(s(t,e[i+r])<0){for(o=r+1;co&&(c=o);var u=a;a=r-c,c=r-u}else{for(o=n-r;c=0;)a=c,(c=1+(c<<1))<=0&&(c=o);c>o&&(c=o),a+=r,c+=r}for(a++;a>>1);s(t,e[i+l])<0?c=l:a=l+1}return c}var p=(function(){function t(t,e){this.array=t,this.compare=e,this.minGallop=r,this.length=t.length,this.tmpStorageLength=s,this.length<2*s&&(this.tmpStorageLength=this.length>>>1),this.tmp=new Array(this.tmpStorageLength),this.stackLength=this.length<120?5:this.length<1542?10:this.length<119151?19:40,this.runStart=new Array(this.stackLength),this.runLength=new Array(this.stackLength),this.stackSize=0}var e=t.prototype;return e.pushRun=function(t,e){this.runStart[this.stackSize]=t,this.runLength[this.stackSize]=e,this.stackSize+=1},e.mergeRuns=function(){for(;this.stackSize>1;){var t=this.stackSize-2;if(t>=1&&this.runLength[t-1]<=this.runLength[t]+this.runLength[t+1]||t>=2&&this.runLength[t-2]<=this.runLength[t]+this.runLength[t-1])this.runLength[t-1]this.runLength[t+1])break;this.mergeAt(t)}},e.forceMergeRuns=function(){for(;this.stackSize>1;){var t=this.stackSize-2;t>0&&this.runLength[t-1]=r||v>=r);if(g)break;_<0&&(_=0),_+=2}if(this.minGallop=_,_<1&&(this.minGallop=1),1===e){for(c=0;c=0;c--)a[p+c]=a[_+c];if(0===e){y=!0;break}}if(a[h--]=o[l--],1==--n){y=!0;break}if(0!=(m=n-f(a[u],o,0,n,n-1,s))){for(n-=m,p=1+(h-=m),_=1+(l-=m),c=0;c=r||m>=r);if(y)break;v<0&&(v=0),v+=2}if(this.minGallop=v,v<1&&(this.minGallop=1),1===n){for(p=1+(h-=e),_=1+(u-=e),c=e-1;c>=0;c--)a[p+c]=a[_+c];a[h]=o[l]}else{if(0===n)throw new Error("mergeHigh preconditions were not respected");for(_=h-(n-1),c=0;c=0;c--)a[p+c]=a[_+c];a[h]=o[l]}else for(_=h-(n-1),c=0;c65535)<<4,e|=i=((t>>>=e)>255)<<3,e|=i=((t>>>=i)>15)<<2,(e|=i=((t>>>=i)>3)<<1)|(t>>>=i)>>1}function o(t){var e=s(t),i=n[a(e)>>2];return i.length>0?i.pop():new ArrayBuffer(e)}var c={alloc_int8:function(t){var e=new Int8Array(o(t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint8:function(t){var e=new Uint8Array(o(t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_int16:function(t){var e=new Int16Array(o(2*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint16:function(t){var e=new Uint16Array(o(2*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_int32:function(t){var e=new Int32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_uint32:function(t){var e=new Uint32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_float32:function(t){var e=new Float32Array(o(4*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_float64:function(t){var e=new Float64Array(o(8*t),0,t);return e.length!==t?e.subarray(0,t):e},alloc_dataview:function(t){var e=new DataView(o(t),0,t);return e.length!==t?e.subarray(0,t):e},free:function(t){var e;e=t.buffer,n[a(e.byteLength)>>2].push(e)},reset:function(){for(var t=Array(8),e=0;e<8;++e)t[e]=[]}};i.default=c,e.exports=i.default}),{}],283:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=function(t,e){for(var i,n=t.length,r=e^n,s=0;n>=4;)i=1540483477*(65535&(i=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(i>>>16)&65535)<<16),r=1540483477*(65535&r)+((1540483477*(r>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:r^=(255&t.charCodeAt(s+2))<<16;case 2:r^=(255&t.charCodeAt(s+1))<<8;case 1:r=1540483477*(65535&(r^=255&t.charCodeAt(s)))+((1540483477*(r>>>16)&65535)<<16)}return r=1540483477*(65535&(r^=r>>>13))+((1540483477*(r>>>16)&65535)<<16),(r^=r>>>15)>>>0},e.exports=i.default}),{}],284:[(function(t,e,i){"use strict";i.__esModule=!0,i.default=void 0;var n=t("../../core/value-types"),r=o(t("../core/base-renderer")),s=o(t("../enums")),a=t("../memop");function o(t){return t&&t.__esModule?t:{default:t}}function c(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function u(t,e){return(u=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var l=new Float32Array(16),h=new Float32Array(16),_=new Float32Array(16),f=new Float32Array(16),d=new Float32Array(4),p=new Float32Array(64),v=[],g=new Float32Array(4),m=new n.Vec4(0,0,0,0),y=new n.Vec3(0,0,0),T=new n.Vec3(0,0,0),E=new a.RecyclePool(function(){return new Float32Array(16)},8);function A(t,e){return t._priority-e._priority}var C=(function(t){var e,i;function r(e,i){var n;return(n=t.call(this,e,i)||this)._time=new Float32Array(4),n._lights=[],n._shadowLights=[],n._numLights=0,n._defines={},n._registerStage("shadowcast",n._shadowStage.bind(c(n))),n._registerStage("opaque",n._opaqueStage.bind(c(n))),n._registerStage("transparent",n._transparentStage.bind(c(n))),n}i=t,(e=r).prototype=Object.create(i.prototype),e.prototype.constructor=e,u(e,i);var a=r.prototype;return a.reset=function(){E.reset(),t.prototype.reset.call(this)},a.render=function(t,e){this.reset(),e&&(this._time[0]+=e,this._time[1]=e,this._time[2]++),this._device.setUniform("cc_time",this._time),this._updateLights(t);for(var i=this._device._gl.canvas,n=0;n0){for(var e=E.add(),i=E.add(),n=E.add(),r=Math.min(4,this._lights.length),a=0;a0?1:-1}),Math.log2||(Math.log2=function(t){return Math.log(t)*Math.LOG2E}),Number.isInteger||(Number.isInteger=function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t}),!console.time){var t=window.performance||Date,e=Object.create(null);console.time=function(i){e[i]=t.now()},console.timeEnd=function(i){var n=e[i],r=t.now()-n;console.log(i+": "+r+"ms")}}}),{}],298:[(function(){"use strict";Number.parseFloat=Number.parseFloat||parseFloat,Number.parseInt=Number.parseInt||parseInt}),{}],299:[(function(){"use strict";Object.assign||(Object.assign=function(t,e){return cc.js.mixin(t,e)}),Object.getOwnPropertyDescriptors||(Object.getOwnPropertyDescriptors=function(t){var e={},i=Object.getOwnPropertyNames(t);Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(t)));for(var n=0;nthis.length)&&(e=this.length),e-=t.length;var i=this.indexOf(t,e);return-1!==i&&i===e}),String.prototype.trimLeft||(String.prototype.trimLeft=function(){return this.replace(/^\s+/,"")})}),{}],301:[(function(){"use strict";var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};window.__extends=function(e,i){function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)},window.__assign=Object.assign||function(t){for(var e,i=1,n=arguments.length;i=0;o--)(r=t[o])&&(a=(s<3?r(a):s>3?r(e,i,a):r(e,i))||a);return s>3&&a&&Object.defineProperty(e,i,a),a},window.__param=function(t,e){return function(i,n){e(i,n,t)}},window.__metadata=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},window.__awaiter=function(t,e,i,n){return new(i||(i=Promise))(function(r,s){function a(t){try{c(n.next(t))}catch(e){s(e)}}function o(t){try{c(n.throw(t))}catch(e){s(e)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(a,o)}c((n=n.apply(t,e||[])).next())})},window.__generator=function(t,e){var i,n,r,s,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function o(t){return function(e){return c([t,e])}}function c(s){if(i)throw new TypeError("Generator is already executing.");for(;a;)try{if(i=1,n&&(r=2&s[0]?n.return:s[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,s[1])).done)return r;switch(n=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(r=(r=a.trys).length>0&&r[r.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},window.__read=function(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,s=i.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=s.next()).done;)a.push(n.value)}catch(o){r={error:o}}finally{try{n&&!n.done&&(i=s.return)&&i.call(s)}finally{if(r)throw r.error}}return a},window.__spread=function(){for(var t=[],e=0;e1||o(t,e)})})}function o(t,e){try{(i=r[t](e)).value instanceof __await?Promise.resolve(i.value.v).then(c,u):l(s[0][2],i)}catch(n){l(s[0][3],n)}var i}function c(t){o("next",t)}function u(t){o("throw",t)}function l(t,e){t(e),s.shift(),s.length&&o(s[0][0],s[0][1])}},window.__asyncDelegator=function(t){var e,i;return e={},n("next"),n("throw",(function(t){throw t})),n("return"),e[Symbol.iterator]=function(){return this},e;function n(n,r){e[n]=t[n]?function(e){return(i=!i)?{value:__await(t[n](e)),done:"return"===n}:r?r(e):e}:r}},window.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,i=t[Symbol.asyncIterator];return i?i.call(t):(t="function"==typeof __values?__values(t):t[Symbol.iterator](),e={},n("next"),n("throw"),n("return"),e[Symbol.asyncIterator]=function(){return this},e);function n(i){e[i]=t[i]&&function(e){return new Promise(function(n,s){r(n,s,(e=t[i](e)).done,e.value)})}}function r(t,e,i,n){Promise.resolve(n).then((function(e){t({value:e,done:i})}),e)}},window.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t};var e=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e};window.__importStar=function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&__createBinding(i,t,n);return e(i,t),i},window.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},window.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)},window.__classPrivateFieldSet=function(t,e,i){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,i),i}}),{}],302:[(function(){"use strict";var t="undefined"==typeof window?global:window;function e(e,i){void 0===t[e]&&Object.defineProperty(t,e,{get:function(){var t;return"CC_WECHATGAMESUB"===e?t="cc.sys.platform === cc.sys.WECHAT_GAME_SUB":"CC_WECHATGAME"===e?t="cc.sys.platform === cc.sys.WECHAT_GAME":"CC_QQPLAY"===e&&(t="cc.sys.platform === cc.sys.QQ_PLAY"),cc.warnID(1400,e,t),i}})}function i(e){return"object"==typeof t[e]}(function(e,i){void 0===t[e]&&(t[e]=i)})("CC_BUILD",!1),t.CC_BUILD=!0,t.CC_DEV=!1,t.CC_DEBUG=!1,t.CC_JSB=!1,t.CC_NATIVERENDERER=!1,t.CC_SUPPORT_JIT=!0,t.CC_PHYSICS_BUILTIN=!1,t.CC_PHYSICS_CANNON=!1,t.CC_EDITOR=!1,t.CC_PREVIEW=!1,t.CC_TEST=!1,t.CC_RUNTIME=!1,t.CC_JSB=!1;var n=!(!i("wx")||!wx.getSharedCanvas),r=!(!i("wx")||!wx.getSystemInfoSync&&!wx.getSharedCanvas),s=i("bk");e("CC_WECHATGAMESUB",n),e("CC_WECHATGAME",r),e("CC_QQPLAY",s),t.CocosEngine=cc.ENGINE_VERSION="2.4.8"}),{}]},{},[294]); \ No newline at end of file diff --git a/build/SunMoves/index.html b/build/SunMoves/index.html index 0e5ae3a..513dd63 100644 --- a/build/SunMoves/index.html +++ b/build/SunMoves/index.html @@ -4,40 +4,23 @@ - 后裔逐日 - + 思赞 - - - - - - - - - - - - - - - @@ -47,98 +30,167 @@ font-family: 'MyFont'; src: url('data:application/font-woff;charset=utf-8;base64,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Tkcg5byg5paH6b6ZIChib3BvbW9mbyk7IFNhbmRvbGwgQ29tbXVuaWNhdGlvbnMg7IKw64+M7Luk666k64uI7LyA7J207IWYLCBTb29oeXVuIFBBUksg67CV7IiY7ZiELCBZZWppbiBXRSDsnITsmIjsp4QgJiBEb25naG9vbiBIQU4g7ZWc64+Z7ZuIIChoYW5ndWwgZWxlbWVudHMsIGxldHRlcnMgJiBzeWxsYWJsZXMpRHIuIEtlbiBMdW5kZSAocHJvamVjdCBhcmNoaXRlY3QsIGdseXBoIHNldCBkZWZpbml0aW9uICYgb3ZlcmFsbCBwcm9kdWN0aW9uKTsgTWFzYXRha2EgSEFUVE9SSSDmnI3pg6jmraPosrQgKHByb2R1Y3Rpb24gJiBpZGVvZ3JhcGggZWxlbWVudHMpOyBaYWNoYXJ5IFF1aW5uIFNjaGV1cmVuICh2YXJpYWJsZSBmb250ICYgb3ZlcmFsbCBwcm9kdWN0aW9uKWh0dHA6Ly93d3cuYWRvYmUuY29tL3R5cGUvVGhpcyBGb250IFNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBTSUwgT3BlbiBGb250IExpY2Vuc2UsIFZlcnNpb24gMS4xLiBUaGlzIEZvbnQgU29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgU0lMIE9wZW4gRm9udCBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UsIHBlcm1pc3Npb25zIGFuZCBsaW1pdGF0aW9ucyBnb3Zlcm5pbmcgeW91ciB1c2Ugb2YgdGhpcyBGb250IFNvZnR3YXJlLmh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMU291cmNlIEhhbiBTZXJpZiBTQ0hlYXZ5AKkAIAAyADAAMQA3AC0AMgAwADIAMwAgAEEAZABvAGIAZQAgACgAaAB0AHQAcAA6AC8ALwB3AHcAdwAuAGEAZABvAGIAZQAuAGMAbwBtAC8AKQAsACAAdwBpAHQAaAAgAFIAZQBzAGUAcgB2AGUAZAAgAEYAbwBuAHQAIABOAGEAbQBlACAAJwBTAG8AdQByAGMAZQAnAC4AUwBvAHUAcgBjAGUAIABIAGEAbgAgAFMAZQByAGkAZgAgAFMAQwAgAEgAZQBhAHYAeQBSAGUAZwB1AGwAYQByADIALgAwADAAMgA7AEEARABCAE8AOwBTAG8AdQByAGMAZQBIAGEAbgBTAGUAcgBpAGYAUwBDAC0ASABlAGEAdgB5ADsAQQBEAE8AQgBFAFMAbwB1AHIAYwBlACAASABhAG4AIABTAGUAcgBpAGYAIABTAEMAIABIAGUAYQB2AHkAVgBlAHIAcwBpAG8AbgAgADIALgAwADAAMgA7AGgAbwB0AGMAbwBuAHYAIAAxAC4AMQAuADAAOwBtAGEAawBlAG8AdABmAGUAeABlACAAMgAuADYALgAwAFMAbwB1AHIAYwBlAEgAYQBuAFMAZQByAGkAZgBTAEMALQBIAGUAYQB2AHkAUwBvAHUAcgBjAGUAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABBAGQAbwBiAGUAIABpAG4AIAB0AGgAZQAgAFUAbgBpAHQAZQBkACAAUwB0AGEAdABlAHMAIABhAG4AZAAvAG8AcgAgAG8AdABoAGUAcgAgAGMAbwB1AG4AdAByAGkAZQBzAC4AQQBkAG8AYgBlAFIAeQBvAGsAbwAgAE4ASQBTAEgASQBaAFUASwBBACCJf1habbxbUAAgACgAawBhAG4AYQAgACYAIABpAGQAZQBvAGcAcgBhAHAAaABzACkAOwAgAEYAcgBhAG4AawAgAEcAcgBpAGUA3wBoAGEAbQBtAGUAcgAgACgATABhAHQAaQBuACwAIABHAHIAZQBlAGsAIAAmACAAQwB5AHIAaQBsAGwAaQBjACkAOwAgAFcAZQBuAGwAbwBuAGcAIABaAEgAQQBOAEcAIF8gZYefmQAgACgAYgBvAHAAbwBtAG8AZgBvACkAOwAgAFMAYQBuAGQAbwBsAGwAIABDAG8AbQBtAHUAbgBpAGMAYQB0AGkAbwBuAHMAIMCws8zO5LukssjPAMd0wVgALAAgAFMAbwBvAGgAeQB1AG4AIABQAEEAUgBLACC8FcIY1gQALAAgAFkAZQBqAGkAbgAgAFcARQAgxwTGCMnEACAAJgAgAEQAbwBuAGcAaABvAG8AbgAgAEgAQQBOACDVXLPZ1sgAIAAoAGgAYQBuAGcAdQBsACAAZQBsAGUAbQBlAG4AdABzACwAIABsAGUAdAB0AGUAcgBzACAAJgAgAHMAeQBsAGwAYQBiAGwAZQBzACkARAByAC4AIABLAGUAbgAgAEwAdQBuAGQAZQAgACgAcAByAG8AagBlAGMAdAAgAGEAcgBjAGgAaQB0AGUAYwB0ACwAIABnAGwAeQBwAGgAIABzAGUAdAAgAGQAZQBmAGkAbgBpAHQAaQBvAG4AIAAmACAAbwB2AGUAcgBhAGwAbAAgAHAAcgBvAGQAdQBjAHQAaQBvAG4AKQA7ACAATQBhAHMAYQB0AGEAawBhACAASABBAFQAVABPAFIASQAgZw2Q6GtjjLQAIAAoAHAAcgBvAGQAdQBjAHQAaQBvAG4AIAAmACAAaQBkAGUAbwBnAHIAYQBwAGgAIABlAGwAZQBtAGUAbgB0AHMAKQA7ACAAWgBhAGMAaABhAHIAeQAgAFEAdQBpAG4AbgAgAFMAYwBoAGUAdQByAGUAbgAgACgAdgBhAHIAaQBhAGIAbABlACAAZgBvAG4AdAAgACYAIABvAHYAZQByAGEAbABsACAAcAByAG8AZAB1AGMAdABpAG8AbgApAGgAdAB0AHAAOgAvAC8AdwB3AHcALgBhAGQAbwBiAGUALgBjAG8AbQAvAHQAeQBwAGUALwBUAGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAgAGkAcwAgAGwAaQBjAGUAbgBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALAAgAFYAZQByAHMAaQBvAG4AIAAxAC4AMQAuACAAVABoAGkAcwAgAEYAbwBuAHQAIABTAG8AZgB0AHcAYQByAGUAIABpAHMAIABkAGkAcwB0AHIAaQBiAHUAdABlAGQAIABvAG4AIABhAG4AIAAiAEEAUwAgAEkAUwAiACAAQgBBAFMASQBTACwAIABXAEkAVABIAE8AVQBUACAAVwBBAFIAUgBBAE4AVABJAEUAUwAgAE8AUgAgAEMATwBOAEQASQBUAEkATwBOAFMAIABPAEYAIABBAE4AWQAgAEsASQBOAEQALAAgAGUAaQB0AGgAZQByACAAZQB4AHAAcgBlAHMAcwAgAG8AcgAgAGkAbQBwAGwAaQBlAGQALgAgAFMAZQBlACAAdABoAGUAIABTAEkATAAgAE8AcABlAG4AIABGAG8AbgB0ACAATABpAGMAZQBuAHMAZQAgAGYAbwByACAAdABoAGUAIABzAHAAZQBjAGkAZgBpAGMAIABsAGEAbgBnAHUAYQBnAGUALAAgAHAAZQByAG0AaQBzAHMAaQBvAG4AcwAgAGEAbgBkACAAbABpAG0AaQB0AGEAdABpAG8AbgBzACAAZwBvAHYAZQByAG4AaQBuAGcAIAB5AG8AdQByACAAdQBzAGUAIABvAGYAIAB0AGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAuAGgAdAB0AHAAOgAvAC8AcwBjAHIAaQBwAHQAcwAuAHMAaQBsAC4AbwByAGcALwBPAEYATABTAG8AdQByAGMAZQAgAEgAYQBuACAAUwBlAHIAaQBmACAAUwBDAEgAZQBhAHYAeQAAAwAAAAAAAP+1ADIAAAAAAAAAAAAAAAAAAAAAAAAAXg==')format('opentype'); } - body, html { - height: 100%; + body { + background-color: black; margin: 0; - background-color: #000; /* 背景色设置为黑色 */ + font-family: 'MyFont', sans-serif; display: flex; - justify-content: center; + flex-direction: column; align-items: center; - font-family: 'MyFont', serif; + justify-content: center; + min-height: 100vh; + overflow: hidden; + padding: 20px; + box-sizing: border-box; } - .title{ - position: absolute; - color:#fff; - top: 35%; - font-size: 45px; - font-weight: 800; - } - .star-container { - position: absolute; + + .container { + width: 90%; + max-width: 600px; display: flex; - top: 45%; + flex-direction: column; + align-items: center; + position: absolute; + margin-bottom: 100px; } - - .star { + + .progress-container { + width: 100%; + height: 16px; + margin: 20px 0; + position: relative; + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAANCAYAAACHMDjlAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Rjc1REI2N0E2ODI0MTFFRkI1RDZCRjJGNkU0OEFGRDciIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Rjc1REI2Nzk2ODI0MTFFRkI1RDZCRjJGNkU0OEFGRDciIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MDQ4RDIwNjY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MDQ4RDIwNzY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlFPNlMAAAOoSURBVHja7JxZaBNBHMZncxqzCa30MF5QtWA9qWAftFix4vGkFqVCFaWKoFQ86Ku+VB8VDxRRq6ioKFqPB0HtiydapNSrFeuBZ5seGNsmabs26/9vprpqEiMEm4fvBx/Z3Zmd3TDwfZmdzCq7yvNFItF14bJZTSUupy3PpIgUOhTiwwIAAMD/RCGZQiHd1xHQ7mta6LSiiK5EXsDyD3UXkm6SfDHqDFWd1u0t7YGCq7ffqv5uzSy/BAAAgP+P7nRY+/JzPfnpqY5pXQFtGx1rilGff/TPJF1JZIBsIe0knSctjTLycKiDrVvffOyYdexSQ6a3PaCi7wAAYOCpe96qrlyYMztrmLuXQqScRiLBKFUrSUWkTaQ9f2vXJD9dpMlR6myU4cEsIZ37IzxIlHLrfJ09hZVV9cMQHgAAkDw0tQXUI1X1HvZo9uoIcwr8pOiCDA9mN6ksSnNTSGp/gLhJl0h3SYXi5yMnLtsgGzLCI5AznBk/UkgREyjRis5ea8xs/Rx0oLsAACC5aCNvZo9mrybPHm8oUqWnF/12yj7SesNAg7NhDukO6SIPPLjgEGm2bKSaNE5WXkXaG+VelpEO9OeHw24prXnqHVnb0JqCbgIAgOSEPZq92mGzrDEEw0FScZRT9pNWyO0c0g2ZFRwkB7mBa4bKvN0utx+TXkdp9KsMG8Zlt5rH1jxpcaN7AAAguWGvttvMY0R46oK5TuqLUv0V6Yncbjf4/vfzOECOkdaRTpEWkFpk4UNSAakhQqM8F3JSbvt7tL5XeZMyOtA1AACQ3LBXk2e/ZO+Wh06IyH+OeibC/8iqlfte0lzSadJa0nHjEGa5+HO9xgfSIsNIpFuGx2XjaCTY87Uyb2Lm+6k56Z/RPQAAkJyQR/vYq8mzj4rwk6R+LsoQ6ZH7L6X3f/qtCc6IEtJh3jHFcc0XIjy5fotUKsIz9b8Q0sUzXRdVxfOyW9NTHUF0EwAAJBdp5M3k0V72avbsCFV4mcZqEV7vVyhDJCbmedNHxXNtnxy2PIpUyFPzvVqozq3axo4e4c5sfPfF5g9qNnQZAAAMPEPTBneVLh7v9aQ5q8mbdyjKL6MPIzzfwdMZcT1N+peV6L2xCnlhCt1YRdZwt71s2aSCe3XNLn+3ZhJYiQ4AAAOF7hxk7ZuR6+nMGOK42RXQKmIsIuxHi7dxS4JvtrnTr21OcdlLiudnTzMpIlXgXVgAADAQhN+FpQtfh7/3AXnzqUS/C+ubAAMA3lcWYmzreJUAAAAASUVORK5CYII='); + background-size: 100% 100%; + background-repeat: no-repeat; + background-position: center; + } + + .progress-bar { + margin-left: 4%; + margin-top: 2px; + height: 12px; + background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgUAAAAOCAYAAAC/xG/nAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODA0OEQyMDI2Nzc3MTFFRkJBNzVFNEFEMEI1RUQ4QTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODA0OEQyMDM2Nzc3MTFFRkJBNzVFNEFEMEI1RUQ4QTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MDQ4RDIwMDY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MDQ4RDIwMTY3NzcxMUVGQkE3NUU0QUQwQjVFRDhBMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pm2I2nkAAAn3SURBVHja7F07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'); + background-size: cover; + transition: width 0.5s ease-out; + } + + .progress-icon { + position: absolute; + transform: translate(-50%, -50%); + top: 72.2%; + margin-left: 4%; + z-index: 100; + transition: left 0.5s ease-out; + } + + .progress-icon img { + width: 35px; + height: auto; + } + + .tagClass { + position: absolute; + left: 33%; + width: 30px; + } + + .tagClass img { + width: 100%; + height: auto; + } + + .header-container { position: relative; display: flex; - width: 23px; - height: 45px; - opacity: 0.5; - transform: scale(0.5); - background-image: url('data:image/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAuCAYAAABJcBuEAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUM0MENGRjkxNUI0MTFFRkE2MDNDQUJCRTk1NEE3Q0UiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUM0MENGRkExNUI0MTFFRkE2MDNDQUJCRTk1NEE3Q0UiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQzQwQ0ZGNzE1QjQxMUVGQTYwM0NBQkJFOTU0QTdDRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQzQwQ0ZGODE1QjQxMUVGQTYwM0NBQkJFOTU0QTdDRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoQoElsAAAIYSURBVHjaYvz5OImBAiANxIxA/IRcA5gYKAOSUEw2YKHQAdIU6qc4BNSBWGMgQ0ATmgYGzAGWlEYBJQ4QBmI1JPZbeqcBd2jwM0LZdE+EPjjYdHEADxD7IfH9oGJ0c0AIEHMj8bmhYnRzQB6RYjRxACjBGWIRB4l50NoBIPXteOTbSTWTVAek4PA9DBhA1dDEATJA3EWEui6oWqo6AFRiLgdifiLU8kPVslLTAZOA2IaE0AKpnUgNBzBCgzSTjNwC0tNLqLbE5wB2IJ4NxKUUFNdFQDwHahZJDtAC4iNAnMxAOUiCmqVFjAPkoXF3AYhNGKgHQGZdhJotjxLHwFYxKMEYQ2s0Byo0UgiBv0C8H4i3APFZUAg8hzarHwDxNwbag69Qu0B2PmdE6xfwQVNvBRALUNnij9CiejoQf8KVBkASndAEs5WKlm+FNmA7kS3HlwtA0eILxE1UsLwJatZzUsuB/0BcD8QFFFheADXjPyVFMSjrdJBheQcxxTGxdUEVNNsQCzZD9VCtMgIFYRyueMSSfuLxBTu57YH3QJxPhLp8qFqatIhWA/EhPPL7oWpo2ijFF7c19GgVH4VidHAciI/Rq1+ALXv107Njsgktob2HitHNAT+BeB0Sfx1UjK694y042HQboNgLbVzA2HR3wGcgvoLEHpAxotMDOUYEAtcZBniU7OZAO+AJpWZQ6oCXFGZlBoAAAwDUK2BIc/JCPQAAAABJRU5ErkJggg=='); - animation: twinkle 1s ease-in-out infinite; - } - .star{ - padding-left: 10px; - } - /* 为每颗星星设置不同的动画延迟 */ - .star:nth-child(1) { - - animation-delay: 0s; - } - - .star:nth-child(2) { - - animation-delay: 0.2s; - } - - .star:nth-child(3) { - animation-delay: 0.4s; - } - .star:nth-child(4) { - animation-delay: 0.6s; - } - .star:nth-child(5) { - animation-delay: 0.8s; - } - .star:nth-child(6) { - animation-delay: 1s; - } - - /* 星星闪烁动画 */ - @keyframes twinkle { - 0%, 100% { - opacity: 0.5; - transform: scale(0.5); - } - 50% { - opacity: 1; - transform: scale(1); - } + flex-direction: column; + align-items: center; + margin-bottom: 20px; } - + .header-container img { + width: 100%; + max-width: 200px; + height: auto; + } + .header-container div { + color: white; + font-size: 1rem; + margin-top: 5px; + position: absolute; + bottom: 0px; + } + + @media (max-width: 480px) { + .header-container img { + max-width: 170px; + } + + .tagClass { + width: 20px; + } + + .progress-icon img { + width: 70px; + } + } + +

+
+ Head Icon +
注意力
+
+
+ Tag Icon +
+
+
+
+ Highlight Icon +
+
+
+ - - - + + + + + diff --git a/build/SunMoves/main.a4f77.js b/build/SunMoves/main.64c65.js similarity index 83% rename from build/SunMoves/main.a4f77.js rename to build/SunMoves/main.64c65.js index 687d573..f4d59e5 100644 --- a/build/SunMoves/main.a4f77.js +++ b/build/SunMoves/main.64c65.js @@ -11,13 +11,15 @@ window.boot = function () { var MAIN = cc.AssetManager.BuiltinBundleName.MAIN; function setLoadingDisplay () { // Loading splash scene - var splash = document.getElementById('splash'); - var star = document.getElementById('_star'); + var progressBar = document.getElementById('progress-bar'); + var progressIcon = document.getElementById('progress-icon'); + var progressContainer = document.querySelector('.progress-container'); onProgress = function (finish, total) { }; cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () { - splash.style.display = 'none'; - star.style.display = 'none'; + progressBar.style.display = 'none'; + progressIcon.style.display = 'none'; + progressContainer.style.display = 'none'; }); } @@ -102,7 +104,16 @@ window.boot = function () { count++; if (count === bundleRoot.length + 1) { cc.assetManager.loadBundle(MAIN, function (err) { - if (!err) cc.game.run(option, onStart); + if (!err){ + let time = 4 - window.progress_Index/3*0.2; + if(time <= 0) cc.game.run(option, onStart); + else{ + window.addSpeed_Index = 3; + setTimeout(() => { + cc.game.run(option, onStart); + }, time*1000/1.5); + } + } }); } } @@ -117,7 +128,7 @@ window.boot = function () { if (window.jsb) { var isRuntime = (typeof loadRuntime === 'function'); if (isRuntime) { - require('src/settings.9a03e.js'); + require('src/settings.d5bf7.js'); require('src/cocos2d-runtime.js'); if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { require('src/physics.js'); @@ -125,7 +136,7 @@ if (window.jsb) { require('jsb-adapter/engine/index.js'); } else { - require('src/settings.9a03e.js'); + require('src/settings.d5bf7.js'); require('src/cocos2d-jsb.js'); if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { require('src/physics.js'); diff --git a/build/SunMoves/src/settings.9a03e.js b/build/SunMoves/src/settings.d5bf7.js similarity index 81% rename from build/SunMoves/src/settings.9a03e.js rename to build/SunMoves/src/settings.d5bf7.js index 6ff1905..f02d293 100644 --- a/build/SunMoves/src/settings.9a03e.js +++ b/build/SunMoves/src/settings.d5bf7.js @@ -1 +1 @@ -window._CCSettings={platform:"web-mobile",groupList:["default"],collisionMatrix:[[true]],hasResourcesBundle:true,hasStartSceneBundle:false,remoteBundles:[],subpackages:[],launchScene:"db://assets/Scene/LoadScene.fire",orientation:"portrait",jsList:[],bundleVers:{internal:"52d36",resources:"2d635",main:"57d1e"}}; \ No newline at end of file +window._CCSettings={platform:"web-mobile",groupList:["default"],collisionMatrix:[[true]],hasResourcesBundle:true,hasStartSceneBundle:false,remoteBundles:[],subpackages:[],launchScene:"db://assets/Scene/LoadScene.fire",orientation:"portrait",jsList:[],bundleVers:{internal:"52d36",resources:"a8f46",main:"ecbbc"}}; \ No newline at end of file diff --git a/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js b/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js index 90cb91c..3f5caf7 100644 --- a/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js +++ b/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js @@ -31,6 +31,7 @@ var NewClass = /** @class */ (function (_super) { } // onLoad () {} NewClass.prototype.start = function () { + this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this); }; //初始化数据 NewClass.prototype.init = function (_id, color, speed, repeat) { @@ -55,9 +56,16 @@ var NewClass = /** @class */ (function (_super) { if (type == true) this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; }; + //计算两点之间直线距离 + NewClass.prototype.distanceBetweenTwoPoints = function (x1, y1, x2, y2) { + return Math.sqrt(Math.pow((x2 - x1), 2) + Math.pow((y2 - y1), 2)); + }; //点击事件 NewClass.prototype.clickBtn = function (event, data) { - if (data === "1") { + var pos = this.node.convertToNodeSpaceAR(event.getLocation()); + var distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0); + distance = Math.floor(distance * 10) / 10; + if (this.node.name != "qiu4") { if (this.move == false && this.touch == true) { if (this.node.parent.parent.name == "GameNode") { if (this.node.parent.parent.getComponent("GameManager").begin == true) { @@ -70,13 +78,15 @@ var NewClass = /** @class */ (function (_super) { .start(); this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_1 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_1); } } else { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_2 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_2); } } } @@ -84,7 +94,8 @@ var NewClass = /** @class */ (function (_super) { if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_3 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_3); } } }; diff --git a/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js.map b/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js.map index 9afb398..a3f4297 100644 --- a/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js.map +++ b/library/imports/4b/4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\Sun.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACM,IAAA,KAAsB,EAAE,CAAC,UAAU,EAAlC,OAAO,aAAA,EAAE,QAAQ,cAAiB,CAAC;AAE1C;IAAsC,4BAAY;IAAlD;;IAqEA,CAAC;IA9DG,eAAe;IACf,wBAAK,GAAL;IACA,CAAC;IACD,OAAO;IACP,uBAAI,GAAJ,UAAK,GAAG,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,SAAS,GAAI,GAAG,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,MAAM;QACN,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;aACzC,aAAa,CACV,EAAE,CAAC,KAAK,EAAE;aACT,EAAE,CAAC,CAAC,EAAC,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,EAAC,GAAG,GAAE,CAAC;aAC5B,KAAK,CAAC,GAAG,CAAC;aACV,EAAE,CAAC,CAAC,EAAC,EAAC,OAAO,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;aAC7B,KAAK,CAAC,GAAG,CAAC,CACd;aACA,KAAK,EAAE,CAAC;IACb,CAAC;IACD,SAAS;IACT,6BAAU,GAAV,UAAW,IAAI;QACX,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACjD,IAAG,IAAI,IAAI,IAAI;YACX,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IAC/F,CAAC;IACD,MAAM;IACN,2BAAQ,GAAR,UAAS,KAAK,EAAC,IAAI;QACf,IAAG,IAAI,KAAK,GAAG,EAAC;YACZ,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAC;gBACzC,IAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,UAAU,EAAC;oBAC1C,IAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK,IAAI,IAAI,EAAC;wBACjE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;6BAC3C,EAAE,CAAC,GAAG,EAAC,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;6BAC7B,KAAK,EAAE,CAAC;wBACT,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BAClB,EAAE,CAAC,GAAG,EAAC,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;6BACnB,EAAE,CAAC,GAAG,EAAC,EAAC,KAAK,EAAC,CAAC,EAAC,CAAC;6BACjB,KAAK,EAAE,CAAC;wBACT,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACtB,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBACvD;iBACJ;qBACG;oBACA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACtB,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACvD;aAEJ;SACJ;aACG;YACA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,KAAK,IAAI,IAAI,EAAC;gBACzF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACtB,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvD;SACJ;IACL,CAAC;IApEgB,QAAQ;QAD5B,OAAO;OACa,QAAQ,CAqE5B;IAAD,eAAC;CArED,AAqEC,CArEqC,EAAE,CAAC,SAAS,GAqEjD;kBArEoB,QAAQ","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n id_Number:number\r\n _speed:number\r\n _color:number\r\n touch:boolean\r\n _repeat:boolean\r\n move:boolean\r\n // onLoad () {}\r\n start () {\r\n }\r\n //初始化数据\r\n init(_id,color,speed,repeat){\r\n this.touch = true;\r\n this.move = false;\r\n this.id_Number = _id;\r\n this._color = color;\r\n this._speed = speed;\r\n this._repeat = repeat;\r\n //太阳动画\r\n cc.tween(this.node.getChildByName(\"shan\"))\r\n .repeatForever(\r\n cc.tween()\r\n .to(1,{opacity:0,scale:0.5,})\r\n .delay(0.2)\r\n .to(1,{opacity:255,scale:1.2})\r\n .delay(0.5)\r\n )\r\n .start();\r\n }\r\n //用于作弊 测试\r\n showNumber(type){\r\n this.node.getChildByName(\"number\").active = type;\r\n if(type == true)\r\n this.node.getChildByName(\"number\").getComponent(cc.Label).string = this.id_Number + \"\";\r\n }\r\n //点击事件\r\n clickBtn(event,data){\r\n if(data === \"1\"){\r\n if( this.move == false && this.touch == true){\r\n if(this.node.parent.parent.name == \"GameNode\"){\r\n if(this.node.parent.parent.getComponent(\"GameManager\").begin == true){\r\n cc.tween(this.node.getChildByName(\"action\"))\r\n .to(0.5,{opacity:0,scale:1.8})\r\n .start();\r\n cc.tween(this.node)\r\n .to(0.3,{scale:1.3})\r\n .to(0.3,{scale:1})\r\n .start();\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n cc.fx.Notifications.emit(\"clickSun\",this.id_Number);\r\n }\r\n }\r\n else{\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n cc.fx.Notifications.emit(\"clickSun\",this.id_Number);\r\n }\r\n \r\n }\r\n }\r\n else{\r\n if( this.touch == true && this.node.parent.parent.getComponent(\"GuideManager\").begin == true){\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n cc.fx.Notifications.emit(\"clickSun\",this.id_Number);\r\n }\r\n }\r\n }\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\Sun.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACM,IAAA,KAAsB,EAAE,CAAC,UAAU,EAAlC,OAAO,aAAA,EAAE,QAAQ,cAAiB,CAAC;AAE1C;IAAsC,4BAAY;IAAlD;;IAgFA,CAAC;IAzEG,eAAe;IACf,wBAAK,GAAL;QACI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO;IACP,uBAAI,GAAJ,UAAK,GAAG,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,SAAS,GAAI,GAAG,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,MAAM;QACN,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;aACzC,aAAa,CACV,EAAE,CAAC,KAAK,EAAE;aACT,EAAE,CAAC,CAAC,EAAC,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,EAAC,GAAG,GAAE,CAAC;aAC5B,KAAK,CAAC,GAAG,CAAC;aACV,EAAE,CAAC,CAAC,EAAC,EAAC,OAAO,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;aAC7B,KAAK,CAAC,GAAG,CAAC,CACd;aACA,KAAK,EAAE,CAAC;IACb,CAAC;IACD,SAAS;IACT,6BAAU,GAAV,UAAW,IAAI;QACX,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACjD,IAAG,IAAI,IAAI,IAAI;YACX,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IAC/F,CAAC;IACD,YAAY;IACZ,2CAAwB,GAAxB,UAAyB,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,SAAA,CAAC,EAAE,GAAG,EAAE,CAAC,EAAI,CAAC,CAAA,GAAG,SAAA,CAAC,EAAE,GAAG,EAAE,CAAC,EAAI,CAAC,CAAA,CAAC,CAAC;IACtD,CAAC;IACD,MAAM;IACN,2BAAQ,GAAR,UAAS,KAAK,EAAC,IAAI;QACf,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,IAAI,QAAQ,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAC,EAAE,CAAC,GAAC,EAAE,CAAC;QACtC,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAC;YACxB,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAC;gBACzC,IAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,UAAU,EAAC;oBAC1C,IAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK,IAAI,IAAI,EAAC;wBACjE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;6BAC3C,EAAE,CAAC,GAAG,EAAC,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;6BAC7B,KAAK,EAAE,CAAC;wBACT,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BAClB,EAAE,CAAC,GAAG,EAAC,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC;6BACnB,EAAE,CAAC,GAAG,EAAC,EAAC,KAAK,EAAC,CAAC,EAAC,CAAC;6BACjB,KAAK,EAAE,CAAC;wBACT,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACtB,IAAI,MAAI,GAAG,EAAC,EAAE,EAAC,IAAI,CAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,CAAC;wBACjD,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,MAAI,CAAC,CAAC;qBAC7C;iBACJ;qBACG;oBACA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACtB,IAAI,MAAI,GAAG,EAAC,EAAE,EAAC,IAAI,CAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,CAAC;oBACjD,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,MAAI,CAAC,CAAC;iBAC7C;aAEJ;SACJ;aACG;YACA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,KAAK,IAAI,IAAI,EAAC;gBACzF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACtB,IAAI,MAAI,GAAG,EAAC,EAAE,EAAC,IAAI,CAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAC,CAAC;gBACjD,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAC,MAAI,CAAC,CAAC;aAC7C;SACJ;IACL,CAAC;IA/EgB,QAAQ;QAD5B,OAAO;OACa,QAAQ,CAgF5B;IAAD,eAAC;CAhFD,AAgFC,CAhFqC,EAAE,CAAC,SAAS,GAgFjD;kBAhFoB,QAAQ","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n id_Number:number\r\n _speed:number\r\n _color:number\r\n touch:boolean\r\n _repeat:boolean\r\n move:boolean\r\n // onLoad () {}\r\n start () {\r\n this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this);\r\n }\r\n //初始化数据\r\n init(_id,color,speed,repeat){\r\n this.touch = true;\r\n this.move = false;\r\n this.id_Number = _id;\r\n this._color = color;\r\n this._speed = speed;\r\n this._repeat = repeat;\r\n //太阳动画\r\n cc.tween(this.node.getChildByName(\"shan\"))\r\n .repeatForever(\r\n cc.tween()\r\n .to(1,{opacity:0,scale:0.5,})\r\n .delay(0.2)\r\n .to(1,{opacity:255,scale:1.2})\r\n .delay(0.5)\r\n )\r\n .start();\r\n }\r\n //用于作弊 测试\r\n showNumber(type){\r\n this.node.getChildByName(\"number\").active = type;\r\n if(type == true)\r\n this.node.getChildByName(\"number\").getComponent(cc.Label).string = this.id_Number + \"\";\r\n }\r\n //计算两点之间直线距离\r\n distanceBetweenTwoPoints(x1: number, y1: number, x2: number, y2: number): number {\r\n return Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\r\n }\r\n //点击事件\r\n clickBtn(event,data){\r\n let pos = this.node.convertToNodeSpaceAR(event.getLocation());\r\n let distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0);\r\n distance = Math.floor(distance*10)/10;\r\n if(this.node.name != \"qiu4\"){\r\n if( this.move == false && this.touch == true){\r\n if(this.node.parent.parent.name == \"GameNode\"){\r\n if(this.node.parent.parent.getComponent(\"GameManager\").begin == true){\r\n cc.tween(this.node.getChildByName(\"action\"))\r\n .to(0.5,{opacity:0,scale:1.8})\r\n .start();\r\n cc.tween(this.node)\r\n .to(0.3,{scale:1.3})\r\n .to(0.3,{scale:1})\r\n .start();\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n let data = {id:this.id_Number,distance:distance};\r\n cc.fx.Notifications.emit(\"clickSun\",data);\r\n }\r\n }\r\n else{\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n let data = {id:this.id_Number,distance:distance};\r\n cc.fx.Notifications.emit(\"clickSun\",data);\r\n }\r\n \r\n }\r\n }\r\n else{\r\n if( this.touch == true && this.node.parent.parent.getComponent(\"GuideManager\").begin == true){\r\n this.touch = false;\r\n this.node.zIndex = -1;\r\n let data = {id:this.id_Number,distance:distance};\r\n cc.fx.Notifications.emit(\"clickSun\",data);\r\n }\r\n }\r\n }\r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js b/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js index d665b48..f5052fb 100644 --- a/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js +++ b/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js @@ -58,6 +58,7 @@ var WeChat = /** @class */ (function () { WeChat.getResult = function (res) { if (res) { var data = res.data; + // @ts-ignore wx.config({ debug: false, appId: data.appId, @@ -66,6 +67,7 @@ var WeChat = /** @class */ (function () { signature: data.signature, jsApiList: ['onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] }); + // @ts-ignore wx.checkJsApi({ jsApiList: ['updateAppMessageShareData'], success: function (res) { @@ -80,7 +82,9 @@ var WeChat = /** @class */ (function () { } }; WeChat.changeShare = function () { + // @ts-ignore wx.ready(function () { + // @ts-ignore wx.updateAppMessageShareData({ title: '记忆力认知测评', desc: '你的注意力和工作记忆有问题吗?', @@ -92,6 +96,7 @@ var WeChat = /** @class */ (function () { } }); setTimeout(function () { + // @ts-ignore wx.updateTimelineShareData({ title: '记忆力认知测评', link: shareConfig.shareLine, diff --git a/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js.map b/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js.map index 3fe9f29..cf521a7 100644 --- a/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js.map +++ b/library/imports/72/7290c680-dfdc-4c59-9736-a614cc2a8bcf.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\module\\Share\\share.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\n\nvar shareConfig = {\n gameId: \"100009\",\n shareLine: \"zDLsruVI\",\n EK:\"hui231%1\"\n };\n\n// 定义微信配置数据的接口\ninterface IWeChatConfig {\n appId: string;\n timestamp: number;\n nonceStr: string;\n signature: string;\n jsApiList: [];\n}\n\n// 微信操作类\nexport class WeChat {\n static setShare(url) {\n var urlTemp = this.removeQueryParams(url);\n shareConfig.shareLine = urlTemp;\n WeChat.getSignature(url);\n }\n\n static getResult(res){\n if(res){\n var data = res.data;\n wx.config({\n debug: false,\n appId: data.appId,\n timestamp: data.timestamp,\n nonceStr: data.nonceStr,\n signature: data.signature,\n jsApiList: ['onMenuShareTimeline','updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage']\n });\n wx.checkJsApi({\n jsApiList: ['updateAppMessageShareData'], // 需要检测的JS接口列表,所有JS接口列表见附录2,\n success: function(res) {\n setTimeout(() => { \n WeChat.changeShare();\n }, 200);\n setTimeout(() => {\n WeChat.changeShare();\n }, 500);\n }\n });\n }\n }\n\n static changeShare(){\n wx.ready(() => {\n wx.updateAppMessageShareData({ \n title: '记忆力认知测评', // 分享标题\n desc: '你的注意力和工作记忆有问题吗?', // 分享描述\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享好友成功回调\");\n }\n });\n setTimeout(() => {\n wx.updateTimelineShareData({ \n title: '记忆力认知测评', // 分享标题\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享朋友圈成功回调\");\n }\n })\n }, 200);\n\n }); \n }\n\n static getSignature(url: string): Promise {\n return new Promise((resolve) => {\n WeChat.getShareInfo((encodeURIComponent(url)),WeChat.getResult);\n });\n }\n static async getShareInfo(shareUrl: string, callback:Function): Promise {\n const time = Math.floor((new Date().getTime()) / 1000)\n const url = cc.fx.HttpUtil.apiSign(`/api/share/cfg?gameId=${cc.fx.GameConfig.GM_INFO.gameId}&time=${time}&url=${shareUrl}`,{})\n return cc.fx.HttpUtil.get(url,callback,3)\n }\n\n \n static containsNanana(str) {\n return /test/i.test(str);\n }\n\n static removeQueryParams(url) {\n return url.replace(/\\?.*$/, '');\n }\n\n}\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\module\\Share\\share.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\n\nvar shareConfig = {\n gameId: \"100009\",\n shareLine: \"zDLsruVI\",\n EK:\"hui231%1\"\n };\n\n// 定义微信配置数据的接口\ninterface IWeChatConfig {\n appId: string;\n timestamp: number;\n nonceStr: string;\n signature: string;\n jsApiList: [];\n}\n\n// 微信操作类\nexport class WeChat {\n static setShare(url) {\n var urlTemp = this.removeQueryParams(url);\n shareConfig.shareLine = urlTemp;\n WeChat.getSignature(url);\n }\n\n static getResult(res){\n if(res){\n var data = res.data;\n // @ts-ignore\n wx.config({\n debug: false,\n appId: data.appId,\n timestamp: data.timestamp,\n nonceStr: data.nonceStr,\n signature: data.signature,\n jsApiList: ['onMenuShareTimeline','updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage']\n });\n // @ts-ignore\n wx.checkJsApi({\n jsApiList: ['updateAppMessageShareData'], // 需要检测的JS接口列表,所有JS接口列表见附录2,\n success: function(res) {\n setTimeout(() => { \n WeChat.changeShare();\n }, 200);\n setTimeout(() => {\n WeChat.changeShare();\n }, 500);\n }\n });\n }\n }\n\n static changeShare(){\n // @ts-ignore\n wx.ready(() => {\n // @ts-ignore\n wx.updateAppMessageShareData({ \n title: '记忆力认知测评', // 分享标题\n desc: '你的注意力和工作记忆有问题吗?', // 分享描述\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享好友成功回调\");\n }\n });\n setTimeout(() => {\n // @ts-ignore\n wx.updateTimelineShareData({ \n title: '记忆力认知测评', // 分享标题\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享朋友圈成功回调\");\n }\n })\n }, 200);\n\n }); \n }\n\n static getSignature(url: string): Promise {\n return new Promise((resolve) => {\n WeChat.getShareInfo((encodeURIComponent(url)),WeChat.getResult);\n });\n }\n static async getShareInfo(shareUrl: string, callback:Function): Promise {\n const time = Math.floor((new Date().getTime()) / 1000)\n const url = cc.fx.HttpUtil.apiSign(`/api/share/cfg?gameId=${cc.fx.GameConfig.GM_INFO.gameId}&time=${time}&url=${shareUrl}`,{})\n return cc.fx.HttpUtil.get(url,callback,3)\n }\n\n \n static containsNanana(str) {\n return /test/i.test(str);\n }\n\n static removeQueryParams(url) {\n return url.replace(/\\?.*$/, '');\n }\n\n}\n"]} \ No newline at end of file diff --git a/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js b/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js index 1d9e284..d6063c2 100644 --- a/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js +++ b/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js @@ -107,6 +107,9 @@ var NewClass = /** @class */ (function (_super) { }; //根据内容填充排行榜 NewClass.prototype.setRank = function (num, data) { + if (!data) { + return; + } var hitNode = null; if (num == 0) { hitNode = this.one; @@ -125,7 +128,7 @@ var NewClass = /** @class */ (function (_super) { } if (hitNode) { hitNode.active = true; - cc.fx.GameTool.subName(data.nickName, 4); + data.nickName = cc.fx.GameTool.subName(data.nickName, 4); hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); diff --git a/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js.map b/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js.map index fcb00c8..e1a0c3b 100644 --- a/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js.map +++ b/library/imports/80/805c69df-dfdf-4759-97ae-5a7341f424c7.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\GameOver.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n @property(cc.Label)\r\n count: cc.Label = null;\r\n @property(cc.Label)\r\n time: cc.Label = null;\r\n @property(cc.Node)\r\n selfNode: cc.Node = null;\r\n @property(cc.Node)\r\n one: cc.Node = null;\r\n @property(cc.Node)\r\n two: cc.Node = null;\r\n @property(cc.Node)\r\n three: cc.Node = null;\r\n @property(cc.Node)\r\n four: cc.Node = null;\r\n @property(cc.Node)\r\n five: cc.Node = null;\r\n listData: any;\r\n selfData: any;\r\n // onLoad () {}\r\n start () {\r\n this.count.string = cc.fx.GameConfig.GM_INFO.total + \"\";\r\n if(cc.fx.GameConfig.GM_INFO.mean_Time > 10){\r\n cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random()*10+\"\")+5)/10\r\n }\r\n this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + \"s\";\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.listData = [];\r\n this.selfData = null;\r\n this.one.active = false;\r\n this.two.active = false;\r\n this.three.active = false;\r\n this.four.active = false;\r\n this.five.active = false;\r\n var urlNow = window.location.href;\r\n if(this.containsTrain(urlNow)){\r\n this.node.getChildByName(\"again\").active = false;\r\n this.node.getChildByName(\"back\").active = false;\r\n this.node.getChildByName(\"finishi\").active = true;\r\n }\r\n else{\r\n this.node.getChildByName(\"again\").active = true;\r\n this.node.getChildByName(\"back\").active = true;\r\n this.node.getChildByName(\"finishi\").active = false;\r\n }\r\n this.getRank();\r\n }\r\n //打开排行榜\r\n jumpFinishi(){\r\n let url = \"https://train.sparkus.cn/poster/game/\" + cc.fx.GameConfig.GM_INFO.scode + \"?suc=1\";\r\n window.location.href = url;\r\n }\r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n //重新开始玩\r\n again(){\r\n cc.director.loadScene(\"GameScene\");\r\n }\r\n //判断来源\r\n containsTrain(str) {\r\n return /from=train/i.test(str);\r\n }\r\n //获取排行榜\r\n getRank(){\r\n //获取排行榜数据 所需数据量\r\n let dataFile = {\r\n length:5\r\n }\r\n cc.fx.GameTool.getRank(dataFile,data =>this.getRankData(data));\r\n }\r\n //设置排行信息\r\n getRankData(data){\r\n if(data){\r\n cc.fx.GameTool.getRankData(data,this,4);\r\n cc.fx.GameTool.setPic(this.selfNode.getChildByName(\"pic\").getChildByName(\"icon\"),this.selfData.pic);\r\n for(let i=0;i<=4;i++){\r\n this.setRank(i,this.listData[i]);\r\n }\r\n }\r\n }\r\n //根据内容填充排行榜\r\n setRank(num,data){\r\n var hitNode = null;\r\n if(num == 0){\r\n hitNode = this.one;\r\n }\r\n else if(num == 1){\r\n hitNode = this.two;\r\n }\r\n else if(num == 2){\r\n hitNode = this.three;\r\n }\r\n else if(num == 3){\r\n hitNode = this.four;\r\n }\r\n else if(num == 4){\r\n hitNode = this.five;\r\n }\r\n if(hitNode){\r\n hitNode.active = true;\r\n cc.fx.GameTool.subName(data.nickName,4);\r\n hitNode.getChildByName(\"name\").getComponent(cc.Label).string = data.nickName;\r\n hitNode.getChildByName(\"total\").getComponent(cc.Label).string = data.totalSunCount;\r\n cc.fx.GameTool.setPic(hitNode.getChildByName(\"pic\").getChildByName(\"icon\"),data.pic);\r\n }\r\n } \r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\GameOver.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n @property(cc.Label)\r\n count: cc.Label = null;\r\n @property(cc.Label)\r\n time: cc.Label = null;\r\n @property(cc.Node)\r\n selfNode: cc.Node = null;\r\n @property(cc.Node)\r\n one: cc.Node = null;\r\n @property(cc.Node)\r\n two: cc.Node = null;\r\n @property(cc.Node)\r\n three: cc.Node = null;\r\n @property(cc.Node)\r\n four: cc.Node = null;\r\n @property(cc.Node)\r\n five: cc.Node = null;\r\n listData: any;\r\n selfData: any;\r\n // onLoad () {}\r\n start () {\r\n this.count.string = cc.fx.GameConfig.GM_INFO.total + \"\";\r\n if(cc.fx.GameConfig.GM_INFO.mean_Time > 10){\r\n cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random()*10+\"\")+5)/10\r\n }\r\n this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + \"s\";\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.listData = [];\r\n this.selfData = null;\r\n this.one.active = false;\r\n this.two.active = false;\r\n this.three.active = false;\r\n this.four.active = false;\r\n this.five.active = false;\r\n var urlNow = window.location.href;\r\n if(this.containsTrain(urlNow)){\r\n this.node.getChildByName(\"again\").active = false;\r\n this.node.getChildByName(\"back\").active = false;\r\n this.node.getChildByName(\"finishi\").active = true;\r\n }\r\n else{\r\n this.node.getChildByName(\"again\").active = true;\r\n this.node.getChildByName(\"back\").active = true;\r\n this.node.getChildByName(\"finishi\").active = false;\r\n }\r\n this.getRank();\r\n }\r\n //打开排行榜\r\n jumpFinishi(){\r\n let url = \"https://train.sparkus.cn/poster/game/\" + cc.fx.GameConfig.GM_INFO.scode + \"?suc=1\";\r\n window.location.href = url;\r\n }\r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n //重新开始玩\r\n again(){\r\n cc.director.loadScene(\"GameScene\");\r\n }\r\n //判断来源\r\n containsTrain(str) {\r\n return /from=train/i.test(str);\r\n }\r\n //获取排行榜\r\n getRank(){\r\n //获取排行榜数据 所需数据量\r\n let dataFile = {\r\n length:5\r\n }\r\n cc.fx.GameTool.getRank(dataFile,data =>this.getRankData(data));\r\n }\r\n //设置排行信息\r\n getRankData(data){\r\n if(data){\r\n cc.fx.GameTool.getRankData(data,this,4);\r\n cc.fx.GameTool.setPic(this.selfNode.getChildByName(\"pic\").getChildByName(\"icon\"),this.selfData.pic);\r\n for(let i=0;i<=4;i++){\r\n this.setRank(i,this.listData[i]);\r\n }\r\n }\r\n }\r\n //根据内容填充排行榜\r\n setRank(num,data){\r\n if(!data){\r\n return;\r\n }\r\n var hitNode = null;\r\n if(num == 0){\r\n hitNode = this.one;\r\n }\r\n else if(num == 1){\r\n hitNode = this.two;\r\n }\r\n else if(num == 2){\r\n hitNode = this.three;\r\n }\r\n else if(num == 3){\r\n hitNode = this.four;\r\n }\r\n else if(num == 4){\r\n hitNode = this.five;\r\n }\r\n if(hitNode){\r\n hitNode.active = true;\r\n data.nickName = cc.fx.GameTool.subName(data.nickName,4);\r\n hitNode.getChildByName(\"name\").getComponent(cc.Label).string = data.nickName;\r\n hitNode.getChildByName(\"total\").getComponent(cc.Label).string = data.totalSunCount;\r\n cc.fx.GameTool.setPic(hitNode.getChildByName(\"pic\").getChildByName(\"icon\"),data.pic);\r\n }\r\n } \r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js b/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js index 6552a26..17e856a 100644 --- a/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js +++ b/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js @@ -234,6 +234,7 @@ var GameManager = /** @class */ (function (_super) { this.ball_Array[k].removeFromParent(); this.ball_Array[k] = null; } + cc.fx.GameConfig.GM_INFO.gap = []; }; //点击太阳执行方法 GameManager.prototype.clickSun = function (data) { @@ -243,12 +244,13 @@ var GameManager = /** @class */ (function (_super) { var clickTime = cc.fx.GameTool.getTime(); this.time_Array.push((clickTime - this.timeStart)); this.timeStart = cc.fx.GameTool.getTime(); - if (data == this.clickNow) { + if (data.id == this.clickNow) { cc.fx.AudioManager._instance.playAudioButton(); if (this.clickNow > 0) { this.createLine(cc.v2(this.ball_Array[this.clickNow - 1].x, this.ball_Array[this.clickNow - 1].y), cc.v2(this.ball_Array[this.clickNow].x, this.ball_Array[this.clickNow].y), 0.2); } this.clickNow += 1; + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); if (this.ball_Array[this.clickNow - 1]) this.ball_Array[this.clickNow - 1].getChildByName("guang").active = false; if (this.clickNow == this.now_Array.length) { @@ -303,7 +305,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -337,12 +340,12 @@ var GameManager = /** @class */ (function (_super) { } } else { - this.setLoss(); + this.setLoss(data); } } }; //执行失败 - GameManager.prototype.setLoss = function () { + GameManager.prototype.setLoss = function (data) { cc.fx.AudioManager._instance.playWarning(); this.begin = false; this.overTime = cc.fx.GameTool.getTime(); @@ -378,6 +381,7 @@ var GameManager = /** @class */ (function (_super) { sunArray.push(0); } } + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); cc.fx.GameConfig.CLICK_DATA = { type: 1, @@ -392,7 +396,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -927,7 +932,7 @@ var GameManager = /** @class */ (function (_super) { this.begin = false; this.over = true; this.unschedule(this.updateCountDownTime); - this.setLoss(); + this.setLoss({ distance: 0 }); var time = 0; if (this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time / this.clickCount + ""); diff --git a/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js.map b/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js.map index 6ce1e86..3d32f7d 100644 --- a/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js.map +++ b/library/imports/b0/b0432040-dbde-438c-839c-ba2b5d18a3b5.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\GameManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["// 主游戏控制类\r\nconst {ccclass, property} = cc._decorator;\r\n@ccclass\r\nexport default class GameManager extends cc.Component {\r\n @property(cc.Node)\r\n ball: cc.Node = null;\r\n @property(cc.Prefab)\r\n qiu1: cc.Prefab = null;\r\n @property(cc.Prefab)\r\n qiu2: cc.Prefab = null;\r\n @property(cc.Prefab)\r\n qiu3: cc.Prefab = null;\r\n @property(cc.Prefab)\r\n linePrefab: cc.Prefab = null;\r\n @property(cc.Node)\r\n hit: cc.Node = null;\r\n bg1: cc.Node = null;\r\n bg2: cc.Node = null;\r\n time: cc.Label = null;\r\n begin: boolean = false;\r\n fuhuo: boolean = false;\r\n over: boolean = false;\r\n show: boolean = false;\r\n countTime:number;\r\n timeCount:number;\r\n fitTop:number;\r\n fitBot:number;\r\n level:number;\r\n clickNow:number;\r\n startTime:number;\r\n overTime:number;\r\n winTime:number;\r\n clickCount:number;\r\n timeStart:number;\r\n route_Array: any[];\r\n now_Array: any[];\r\n ball_Array: any[];\r\n Line_Array: any[];\r\n Pos_Array: any[];\r\n time_Array: any[];\r\n color_Array: any[];\r\n @property(cc.Label)\r\n levelLabel: cc.Label = null;\r\n static _instance: any;\r\n moveArray: number[];\r\n repeat: number;\r\n numberRepeat: number;\r\n round: number;\r\n pause: boolean;\r\n onLoad () {}\r\n start () {\r\n this.fit();\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.node.getChildByName(\"GameOver\").zIndex = 100;\r\n this.node.getChildByName(\"GameOver\").active = false;\r\n this.ball.zIndex = 100;\r\n this.bg1 = this.node.getChildByName(\"bg1\");\r\n this.bg2 = this.node.getChildByName(\"bg2\");\r\n this.time = this.node.getChildByName(\"Top\").getChildByName(\"time\").getComponent(cc.Label);\r\n this.node.getChildByName(\"showBtn\").active = false;\r\n this.begin = false;\r\n this.over = false;\r\n this.fuhuo = true;\r\n this.pause = true;\r\n this.show = false;\r\n this.round = 0; \r\n this.level = 2;\r\n this.countTime = 60;\r\n if(cc.fx.GameConfig.GM_INFO.custom != 0){\r\n this.level = cc.fx.GameConfig.GM_INFO.custom;\r\n // this.levelLabel.string = this.level + \"\";\r\n cc.fx.GameConfig.GM_INFO.custom += 1;\r\n this.countTime = 12000000;\r\n }\r\n // this.levelLabel.string = this.level + \"\";\r\n this.timeCount = 0.1;\r\n this.clickNow = 0;\r\n this.clickCount = 0;\r\n this.timeStart = 0;\r\n this.repeat = -1;\r\n this.numberRepeat = -1;\r\n this.route_Array = [];\r\n this.moveArray = [];\r\n this.now_Array = [];\r\n this.ball_Array = [];\r\n this.Pos_Array = [];\r\n this.time_Array = [];\r\n this.color_Array = [];\r\n cc.fx.GameConfig.GAME_DATA = [];\r\n cc.fx.GameConfig.GM_INFO.success = false;\r\n this.startTime = 0;\r\n this.overTime = 0;\r\n this.winTime = 0;\r\n cc.fx.GameConfig.GM_INFO.total = 0;\r\n cc.fx.GameConfig.GM_INFO.mean_Time = 0;\r\n this.schedule(this.updateCountDownTime,1);\r\n this.startGame();\r\n }\r\n //根据是否全面屏,做独立适配方面\r\n fit(){\r\n this.fitTop = 450; //600\r\n this.fitBot = -600; //-700\r\n var jg = this.setFit();\r\n if(!jg){\r\n this.fitTop = 600;\r\n this.fitBot = -700;\r\n }\r\n }\r\n //判断全面屏\r\n getSetScreenResolutionFlag () {\r\n let size = cc.winSize;\r\n let width = size.width;\r\n let height = size.height;\r\n if ((height / width) > (16.2 / 9)) return false;\r\n return true;\r\n }\r\n //判断全面屏适配\r\n setFit () {\r\n let flag = this.getSetScreenResolutionFlag();\r\n if (flag) {\r\n } else {\r\n }\r\n return flag;\r\n }\r\n //返回首页\r\n backScene(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //下一关,或者重新开始,或者返回上一关,根据level决定\r\n reStart(type){\r\n // if(cc.fx.GameConfig.GM_INFO.custom != 0){\r\n // cc.director.loadScene(\"LoadScene\");\r\n // return;\r\n // }\r\n this.node.getChildByName(\"showBtn\").active = false;\r\n this.destroyLine();\r\n this.timeCount = 0.1;\r\n this.clickNow = 0;\r\n this.timeStart = 0;\r\n this.repeat = -1;\r\n this.numberRepeat = -1;\r\n this.begin = false;\r\n this.route_Array = [];\r\n this.now_Array = [];\r\n this.ball_Array = [];\r\n this.Pos_Array = [];\r\n this.moveArray = [];\r\n this.time_Array = [];\r\n this.color_Array = [];\r\n if(type == 0){\r\n this.bgMove(1);\r\n }\r\n else if(type == 1){\r\n this.startGame();\r\n }\r\n else if(type == 2){\r\n this.bgMove(-1);\r\n }\r\n \r\n }\r\n //获取时间戳\r\n getTime(){\r\n const timestamp = new Date().getTime();\r\n return timestamp;\r\n }\r\n //获胜\r\n passLevel(){\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n let timeArray = [];\r\n let timeCount = 0;\r\n let ball = this.ball_Array[0];\r\n for(let i=1; i< this.ball_Array.length; i++){\r\n let time = this.calculateDistance(this.ball_Array[i].x,this.ball_Array[i].y,\r\n this.ball_Array[i-1].x,this.ball_Array[i-1].y,2);\r\n timeArray.push(time);\r\n }\r\n for(let k=1; k< this.ball_Array.length; k++){\r\n setTimeout(() => {\r\n cc.tween(ball)\r\n .to(timeArray[k-1],{x:this.ball_Array[k].x,y:this.ball_Array[k].y})\r\n .call(() =>{\r\n this.ball_Array[k].active = false;\r\n if(k == this.ball_Array.length-1){\r\n setTimeout(() => {\r\n this.ball.opacity = 255;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n ball.active = false;\r\n this.clearSun();\r\n this.reStart(0);\r\n }, 200);\r\n }\r\n })\r\n .start();\r\n }, timeCount*1000);\r\n timeCount += (timeArray[k-1]+0.1);\r\n }\r\n }\r\n }\r\n //失败\r\n loseLevel(type){\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n let ball = this.ball_Array[0];\r\n for(let k=1; k< this.ball_Array.length; k++){\r\n cc.tween(this.ball_Array[k])\r\n .to(2,{x:ball.x,y:ball.y})\r\n .call(() =>{\r\n this.ball_Array[k].active = false;\r\n if(k == this.ball_Array.length-1){\r\n this.ball.opacity = 255;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n this.clearSun();\r\n this.reStart(type);\r\n }\r\n })\r\n .start()\r\n }\r\n }\r\n }\r\n //清理太阳\r\n clearSun(){\r\n for(let k=0; k< this.ball_Array.length; k++){\r\n this.ball_Array[k].removeFromParent();\r\n this.ball_Array[k] = null;\r\n }\r\n }\r\n //点击太阳执行方法\r\n clickSun(data){\r\n if(this.begin == true){\r\n this.clickCount += 1;\r\n let clickTime = cc.fx.GameTool.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = cc.fx.GameTool.getTime();\r\n if(data == this.clickNow){\r\n cc.fx.AudioManager._instance.playAudioButton();\r\n if(this.clickNow > 0){\r\n this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),\r\n cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),\r\n 0.2); \r\n }\r\n this.clickNow += 1;\r\n if(this.ball_Array[this.clickNow-1])\r\n this.ball_Array[this.clickNow-1].getChildByName(\"guang\").active = false;\r\n if(this.clickNow == this.now_Array.length){\r\n this.pause = true;\r\n cc.fx.GameConfig.GM_INFO.total += this.clickNow;\r\n this.overTime = cc.fx.GameTool.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n cc.fx.GameConfig.GM_INFO.mean_Time += (this.overTime - this.startTime);\r\n }\r\n let finish_time = parseInt((this.overTime - this.startTime)/100+\"\");\r\n this.startTime = 0; this.overTime = 0;\r\n let color = \"y\";\r\n if(this.level < 4 && this.level > 1)color = \"yr\";\r\n else if(this.level >= 4) color = \"yrb\";\r\n let win = this.node.getChildByName(\"Win\");\r\n win.active = true; win.setScale(0);\r\n cc.fx.AudioManager._instance.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 50){\r\n cc.fx.GameConfig.CLICK_DATA.duration = 50;\r\n }\r\n this.setData();\r\n cc.tween(win)\r\n .delay(0.4)\r\n .to(0.01,{scale:2.5})\r\n .to(0.35,{scale:1})\r\n .delay(0.4)\r\n .call(() =>{\r\n win.active = false;\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n if(this.level >= 15){\r\n cc.fx.GameConfig.GM_INFO.success = true;\r\n this.level += 0;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n this.passLevel();\r\n }\r\n else{\r\n this.level += 1;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n this.passLevel();\r\n }\r\n }\r\n })\r\n .start();\r\n }\r\n }\r\n else{\r\n this.setLoss();\r\n }\r\n }\r\n }\r\n //执行失败\r\n setLoss(){\r\n cc.fx.AudioManager._instance.playWarning();\r\n this.begin = false;\r\n this.overTime = cc.fx.GameTool.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n cc.fx.GameConfig.GM_INFO.mean_Time += (this.overTime - this.startTime);\r\n }\r\n let finish_time = parseInt((this.overTime - this.startTime)/100+\"\");\r\n if(finish_time > 58) finish_time = 58;\r\n this.startTime = 0; this.overTime = 0;\r\n let color = \"y\";\r\n if(this.level < 4 && this.level > 1)color = \"yr\";\r\n else if(this.level >= 4) color = \"yrb\";\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 50){\r\n cc.fx.GameConfig.CLICK_DATA.duration = 50;\r\n }\r\n this.setData();\r\n if(this.fuhuo == true){\r\n this.fuhuo = false;\r\n this.loseLevel(1);\r\n } \r\n else{\r\n if(this.level > 2){\r\n this.level -= 1;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n // this.fuhuo = false;\r\n this.loseLevel(2);\r\n }\r\n else{\r\n this.loseLevel(1);\r\n }\r\n }\r\n let over = this.node.getChildByName(\"Over\");\r\n cc.tween(over)\r\n .to(0.25,{opacity:255})\r\n .delay(0.1)\r\n .to(0.2,{opacity:0})\r\n .delay(0.1)\r\n .to(0.15,{opacity:255})\r\n .delay(0.1)\r\n .to(0.1,{opacity:0})\r\n .start();\r\n }\r\n //开始游戏\r\n startGame(){\r\n if(this.over == false && this.countTime > 0){\r\n this.pause = true;\r\n this.createSun();\r\n this.begin = false;\r\n cc.tween(this.ball)\r\n .to(0.5,{opacity:255,scale:1.3})\r\n .start();\r\n }\r\n }\r\n //执行太阳运行动画,以及后面移动动画\r\n runGame(){\r\n let time = -650;\r\n for(let i=0; i {\r\n if(this.over == false){\r\n let temp = this.now_Array[i].timeCount;\r\n if(temp > 0.5) temp = 0.5;\r\n if(i != 0){\r\n if(this.ball && this.now_Array[i]){\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.now_Array[i].x,this.now_Array[i].y),\r\n this.now_Array[i].time-temp);\r\n }\r\n }\r\n \r\n cc.tween(this.ball)\r\n .to(this.now_Array[i].time-temp,{x:this.now_Array[i].x,y:this.now_Array[i].y})\r\n .to(0.1,{scale:1})\r\n .call(()=>{\r\n this.createBall(i,this.now_Array[i].color,this.now_Array[i].speed,this.now_Array[i].repeat);\r\n if(i == this.now_Array.length -1){\r\n this.ball.opacity = 0;\r\n setTimeout(() => {\r\n this.destroyLine();\r\n this.beginGame();\r\n if(cc.fx.GameConfig.LEVEL_INFO[this.level-1].moveNumber<1){\r\n this.pause = false;\r\n }\r\n else{\r\n this.moveAction();\r\n }\r\n \r\n }, 150);\r\n }\r\n })\r\n .start()\r\n }\r\n }, time);\r\n }\r\n }\r\n //设置移动重叠数据\r\n createMove(){\r\n if(this.over == false){\r\n let info = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n //改变移动速度\r\n var speed = 7;\r\n if(info.moveSpeed >= 2){\r\n speed = 7 - info.moveSpeed/2;\r\n }\r\n if(info.repeat == 1){\r\n this.repeat = parseInt((Math.random()*(info.number-1)+1) + \"\");\r\n let tempNumber = 0;\r\n // this.repeat = 4;\r\n if(this.repeat > 4){\r\n this.numberRepeat = parseInt(Math.random()*4 + \"\");\r\n if(this.repeat == (info.number-1)) //如果是最后一个 不能跟第一个重叠\r\n this.numberRepeat = this.repeat - parseInt( (Math.random()*3 + 2)+ \"\")\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n this.Pos_Array[this.repeat ] = tempNumber;\r\n }\r\n else{ // 0 1 2 3 4 5 \r\n // 6 - 3 - 1 = 2 4 01 4\r\n if(this.repeat == 0) this.repeat = 1;\r\n if((info.number-1-this.repeat ) == 2){\r\n this.numberRepeat = info.number - 1;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n else if((info.number-1-this.repeat ) == 1){\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n } \r\n else if((info.number-1-this.repeat ) == 0){\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n } \r\n else if((info.number-1-this.repeat ) > 2){\r\n this.numberRepeat = parseInt(Math.random()*(info.number-this.repeat -2) + \"\") + this.repeat + 2 ;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n else{\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n this.Pos_Array[this.repeat] = tempNumber;\r\n }\r\n }\r\n if(info.moveNumber > 0){\r\n //0 1 2 3 4 5 6 7 8 9\r\n //可移动区分\r\n let pos = cc.v2(0,0);\r\n for(let z=0; z Math.random() - 0.5);\r\n if(this.moveArray[0] == 1){\r\n for(let r=info.number-1; r>=0; r--){\r\n if(this.moveArray[r] == 0){\r\n this.moveArray[r] = 1;\r\n this.moveArray[0] = 0;\r\n r = -1;\r\n }\r\n }\r\n }\r\n //将重叠的设置为不可移动 1 1 1 1 0 0 1 0 0 0 / 2 7\r\n for(let k =0; k= 0; m--){\r\n if(m != k && this.moveArray[m] == 0 && m!= this.repeat && m!= this.numberRepeat){\r\n this.moveArray[m] = 1;\r\n this.moveArray[k] = 0;\r\n m = -1;\r\n }\r\n }\r\n }\r\n }\r\n for(let i =0; i {\r\n pos = this.getPos2(true,i);\r\n this.Pos_Array[i] = pos;\r\n }, timeOut*300);\r\n }\r\n }\r\n\r\n }\r\n }\r\n }\r\n //移动后数据 重新刷一遍赋值\r\n updateArray(){\r\n for(let i=0; i= 2){\r\n speed = 7 - info.moveSpeed/2;\r\n } \r\n if(info.moveNumber > 0){\r\n //0 1 2 3 4 5 6 7 8 9\r\n //可移动区分\r\n //将重叠的设置为不可移动 1 1 1 1 0 0 1 0 0 0 / 2 7\r\n for(let k =0; k= 0; m--){\r\n if(m != k && this.moveArray[m] == 0 && m!= this.repeat && m!= this.numberRepeat){\r\n this.moveArray[m] = 1;\r\n this.moveArray[k] = 0;\r\n m = -1;\r\n }\r\n }\r\n }\r\n }\r\n let lastNumber = 0;\r\n //锁定最后一个可移动的\r\n for(let j =0; j{\r\n this.ball_Array[i].getComponent(\"Sun\").move = false;\r\n })\r\n .start();\r\n }\r\n //如果是最后一个\r\n else{\r\n let time = speed*this.calculateDistance(this.ball_Array[i].x,this.ball_Array[i].y,this.Pos_Array[i].x,this.Pos_Array[i].y,3);\r\n this.ball_Array[i].getComponent(\"Sun\").move = true;\r\n cc.tween(this.ball_Array[i])\r\n .to(time,{position:this.Pos_Array[i]})\r\n .call(() =>{\r\n this.ball_Array[i].getComponent(\"Sun\").move = false;\r\n })\r\n .start();\r\n }\r\n }\r\n }\r\n }\r\n }\r\n //每次重新开始新一轮儿游戏\r\n beginGame(){\r\n this.begin = true;\r\n this.startTime = cc.fx.GameTool.getTime();\r\n this.timeStart = cc.fx.GameTool.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n let tiemOut = 0;\r\n for(let l=0; l {\r\n if(this.over == false){\r\n let pos = this.getPos(false,l);\r\n this.Pos_Array.push(pos);\r\n if(this.Pos_Array.length == levelData.number){\r\n this.createMove();\r\n this.createPos();\r\n }\r\n }\r\n\r\n }, tiemOut*100);\r\n }\r\n }\r\n //创建太阳位置,颜色信息等数据\r\n createPos(){\r\n let data = {x:this.ball.x,y:this.ball.y,time:0,timeCount:0,color:0,speed:0,repeat:false};\r\n let levelData = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n //颜色区分\r\n let colorArray = [0,1];\r\n for(let j=0; j Math.random() - 0.5);\r\n }\r\n colorArray.sort(() => Math.random() - 0.5);\r\n if(levelData.number == 4) colorArray = [0,0,0,0];\r\n this.color_Array = colorArray;\r\n //存储太阳数据\r\n for(let i=0; i 0){\r\n for(let i=0; i 0){\r\n for(let i=0; i 160){\r\n if(num == true){\r\n cc.fx.GameConfig\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxMove){\r\n jg = true;\r\n } \r\n else jg = false;\r\n }\r\n else{\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxMove){\r\n jg = true;\r\n } \r\n else jg = false;\r\n }\r\n }\r\n return jg;\r\n }\r\n //命中动画\r\n hitAction(data){\r\n this.hit.active = true; this.hit.opacity = 0;\r\n this.hit.setPosition\r\n this.hit.setPosition(this.ball_Array[data].x+35,this.ball_Array[data].y+35);\r\n cc.tween(this.hit)\r\n .to(0,{opacity:255})\r\n .to(0.2,{position:cc.v3(this.hit.x-35,this.hit.y-35,0)})\r\n .delay(0.2)\r\n .to(0.1,{opacity:0})\r\n .call(() =>{\r\n this.hit.active = false;\r\n })\r\n .start();\r\n }\r\n //创造太阳\r\n createBall(number,color,speed,repeat){\r\n let ball = null;\r\n if(color == 0)ball = cc.instantiate(this.qiu1);\r\n else if(color == 1)ball = cc.instantiate(this.qiu2);\r\n else if(color == 2)ball = cc.instantiate(this.qiu3);\r\n ball.parent = this.node.getChildByName(\"Sun\");\r\n ball.zIndex = this.now_Array.length - number;\r\n ball.setPosition(this.ball.x,this.ball.y);\r\n ball.getComponent(\"Sun\").init(number,color,speed,repeat);\r\n this.ball_Array.push(ball);\r\n }\r\n //销毁连线\r\n destroyLine() {\r\n for(let i =0; i< this.node.getChildByName(\"Line\").children.length;i++){\r\n if(this.node.getChildByName(\"Line\").children[i]){\r\n this.node.getChildByName(\"Line\").children[i].removeFromParent();\r\n this.node.getChildByName(\"Line\").children[i] = null;\r\n }\r\n }\r\n this.node.getChildByName(\"Line\").removeAllChildren();\r\n }\r\n //创建连线\r\n createLine(start,end,time){\r\n let line = cc.instantiate(this.linePrefab);\r\n line.parent = this.node.getChildByName(\"Line\");\r\n line.setPosition(start.x,start.y);\r\n const dx = end.x - start.x;\r\n const dy = end.y - start.y;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n line.height = distance;\r\n line.getComponent(cc.Sprite).fillRange = 0;\r\n line.angle = -this.calculateAngle(start.x,start.y,end.x,end.y);\r\n cc.tween(line.getComponent(cc.Sprite))\r\n .to(time,{fillRange:1})\r\n .start();\r\n }\r\n //获取两点之间的角度,将来都可放工具类\r\n calculateAngle(x1, y1, x2, y2) {\r\n var angle = Math.atan2(y2-y1,x2-x1)*180 / Math.PI - 90;\r\n return -angle;\r\n }\r\n //获取两点之间的距离 返回对应时间\r\n calculateDistance(x1, y1, x2, y2, num) {\r\n const dx = x2 - x1;\r\n const dy = y2 - y1;\r\n let time = 0;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n if(num == 1){\r\n if(distance > 800) distance = 800;\r\n time = distance/800 * 0.6;\r\n }\r\n else if(num == 2){\r\n if(distance > 1200) distance = 1200;\r\n time = distance/1200 * 1;\r\n }\r\n else if(num == 3){\r\n if(distance > 1200) distance = 1200;\r\n time = distance/1200 * 1.5;\r\n }\r\n\r\n return time;\r\n }\r\n //获取两点之间距离 返回距离判断\r\n getDistance2(x1, y1, x2, y2,num) {\r\n var jg = false;\r\n const dx = x2 - x1;\r\n const dy = y2 - y1;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n if(distance > 160){\r\n if(num == true){\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxDistance) jg = true;\r\n else jg = false;\r\n }\r\n else{\r\n jg = true;\r\n }\r\n }\r\n return jg;\r\n }\r\n //背景移动\r\n bgMove(type){\r\n let random = Math.random()*300 + 300;\r\n let posX = Math.random()*600 - 300;\r\n let y1 = this.bg1.y - random*type;\r\n let time1 = 0.7*(random/400);\r\n cc.tween(this.ball)\r\n .to(0.3,{scale:1.3})\r\n .to(time1,{x:posX})\r\n .start();\r\n cc.tween(this.bg1)\r\n .delay(0.3)\r\n .to(time1,{y:y1})\r\n .start();\r\n setTimeout(() => {\r\n if(this.over == false) this.startGame();\r\n }, time1*1500);\r\n }\r\n //如果是倒计时 调用此方法\r\n updateCountDownTime () {\r\n if (this.countTime > 0 && this.pause == false) {\r\n this.countTime -= 1;\r\n this.time.string = cc.fx.GameTool.getTimeMargin(this.countTime);\r\n if(this.countTime < 5){\r\n cc.tween(this.time.node)\r\n .to(0.25,{scale:1.5,color:cc.color(255,0,0)})\r\n .to(0.25,{scale:1,color:cc.color(255,255,255)})\r\n .start()\r\n let over = this.node.getChildByName(\"Over\");\r\n cc.tween(over)\r\n .to(0.2,{opacity:255})\r\n .delay(0.1)\r\n .to(0.2,{opacity:0})\r\n .start();\r\n }\r\n if(this.countTime <= 0){\r\n this.begin = false;\r\n this.over = true;\r\n this.unschedule(this.updateCountDownTime);\r\n this.setLoss();\r\n var time = 0;\r\n if(this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time/this.clickCount + \"\");\r\n cc.fx.GameConfig.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n cc.fx.GameConfig.GM_INFO.mean_Time = cc.fx.GameConfig.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.gameOver(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n cc.fx.GameTool.setGameData();\r\n }\r\n //上传排行榜数据\r\n gameOver(time){\r\n cc.fx.GameTool.setRank(time);\r\n this.node.getChildByName(\"GameOver\").active = true;\r\n this.node.getChildByName(\"GameOver\").opacity = 0;\r\n cc.tween(this.node.getChildByName(\"GameOver\"))\r\n .to(0.4,{opacity:255})\r\n .delay(2)\r\n .to(0.4,{opacity:50})\r\n .call(() =>{\r\n cc.director.loadScene(\"OverScene\");\r\n })\r\n .start()\r\n }\r\n //作弊,测试用\r\n showNumber(){\r\n if(this.show == false) this.show = true;\r\n else if(this.show == true) this.show = false;\r\n for(let i=0; i (16.2 / 9)) return false;\r\n return true;\r\n }\r\n //判断全面屏适配\r\n setFit () {\r\n let flag = this.getSetScreenResolutionFlag();\r\n if (flag) {\r\n } else {\r\n }\r\n return flag;\r\n }\r\n //返回首页\r\n backScene(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //下一关,或者重新开始,或者返回上一关,根据level决定\r\n reStart(type){\r\n // if(cc.fx.GameConfig.GM_INFO.custom != 0){\r\n // cc.director.loadScene(\"LoadScene\");\r\n // return;\r\n // }\r\n this.node.getChildByName(\"showBtn\").active = false;\r\n this.destroyLine();\r\n this.timeCount = 0.1;\r\n this.clickNow = 0;\r\n this.timeStart = 0;\r\n this.repeat = -1;\r\n this.numberRepeat = -1;\r\n this.begin = false;\r\n this.route_Array = [];\r\n this.now_Array = [];\r\n this.ball_Array = [];\r\n this.Pos_Array = [];\r\n this.moveArray = [];\r\n this.time_Array = [];\r\n this.color_Array = [];\r\n if(type == 0){\r\n this.bgMove(1);\r\n }\r\n else if(type == 1){\r\n this.startGame();\r\n }\r\n else if(type == 2){\r\n this.bgMove(-1);\r\n }\r\n \r\n }\r\n //获取时间戳\r\n getTime(){\r\n const timestamp = new Date().getTime();\r\n return timestamp;\r\n }\r\n //获胜\r\n passLevel(){\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n let timeArray = [];\r\n let timeCount = 0;\r\n let ball = this.ball_Array[0];\r\n for(let i=1; i< this.ball_Array.length; i++){\r\n let time = this.calculateDistance(this.ball_Array[i].x,this.ball_Array[i].y,\r\n this.ball_Array[i-1].x,this.ball_Array[i-1].y,2);\r\n timeArray.push(time);\r\n }\r\n for(let k=1; k< this.ball_Array.length; k++){\r\n setTimeout(() => {\r\n cc.tween(ball)\r\n .to(timeArray[k-1],{x:this.ball_Array[k].x,y:this.ball_Array[k].y})\r\n .call(() =>{\r\n this.ball_Array[k].active = false;\r\n if(k == this.ball_Array.length-1){\r\n setTimeout(() => {\r\n this.ball.opacity = 255;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n ball.active = false;\r\n this.clearSun();\r\n this.reStart(0);\r\n }, 200);\r\n }\r\n })\r\n .start();\r\n }, timeCount*1000);\r\n timeCount += (timeArray[k-1]+0.1);\r\n }\r\n }\r\n }\r\n //失败\r\n loseLevel(type){\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n let ball = this.ball_Array[0];\r\n for(let k=1; k< this.ball_Array.length; k++){\r\n cc.tween(this.ball_Array[k])\r\n .to(2,{x:ball.x,y:ball.y})\r\n .call(() =>{\r\n this.ball_Array[k].active = false;\r\n if(k == this.ball_Array.length-1){\r\n this.ball.opacity = 255;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n this.clearSun();\r\n this.reStart(type);\r\n }\r\n })\r\n .start()\r\n }\r\n }\r\n }\r\n //清理太阳\r\n clearSun(){\r\n for(let k=0; k< this.ball_Array.length; k++){\r\n this.ball_Array[k].removeFromParent();\r\n this.ball_Array[k] = null;\r\n }\r\n cc.fx.GameConfig.GM_INFO.gap = [];\r\n }\r\n //点击太阳执行方法\r\n clickSun(data){\r\n if(this.begin == true){\r\n this.clickCount += 1;\r\n let clickTime = cc.fx.GameTool.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = cc.fx.GameTool.getTime();\r\n\r\n if(data.id == this.clickNow){\r\n cc.fx.AudioManager._instance.playAudioButton();\r\n if(this.clickNow > 0){\r\n this.createLine(cc.v2(this.ball_Array[this.clickNow-1].x,this.ball_Array[this.clickNow-1].y),\r\n cc.v2(this.ball_Array[this.clickNow].x,this.ball_Array[this.clickNow].y),\r\n 0.2); \r\n }\r\n this.clickNow += 1;\r\n cc.fx.GameConfig.GM_INFO.gap.push(data.distance);\r\n if(this.ball_Array[this.clickNow-1])\r\n this.ball_Array[this.clickNow-1].getChildByName(\"guang\").active = false;\r\n if(this.clickNow == this.now_Array.length){\r\n this.pause = true;\r\n cc.fx.GameConfig.GM_INFO.total += this.clickNow;\r\n this.overTime = cc.fx.GameTool.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n cc.fx.GameConfig.GM_INFO.mean_Time += (this.overTime - this.startTime);\r\n }\r\n let finish_time = parseInt((this.overTime - this.startTime)/100+\"\");\r\n this.startTime = 0; this.overTime = 0;\r\n let color = \"y\";\r\n if(this.level < 4 && this.level > 1)color = \"yr\";\r\n else if(this.level >= 4) color = \"yrb\";\r\n let win = this.node.getChildByName(\"Win\");\r\n win.active = true; win.setScale(0);\r\n cc.fx.AudioManager._instance.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 50){\r\n cc.fx.GameConfig.CLICK_DATA.duration = 50;\r\n }\r\n \r\n this.setData();\r\n cc.tween(win)\r\n .delay(0.4)\r\n .to(0.01,{scale:2.5})\r\n .to(0.35,{scale:1})\r\n .delay(0.4)\r\n .call(() =>{\r\n win.active = false;\r\n this.destroyLine();\r\n if(this.over == false && this.countTime >= 0){\r\n if(this.level >= 15){\r\n cc.fx.GameConfig.GM_INFO.success = true;\r\n this.level += 0;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n this.passLevel();\r\n }\r\n else{\r\n this.level += 1;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n this.passLevel();\r\n }\r\n }\r\n })\r\n .start();\r\n }\r\n }\r\n else{\r\n this.setLoss(data);\r\n }\r\n }\r\n }\r\n //执行失败\r\n setLoss(data){\r\n cc.fx.AudioManager._instance.playWarning();\r\n this.begin = false;\r\n this.overTime = cc.fx.GameTool.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n cc.fx.GameConfig.GM_INFO.mean_Time += (this.overTime - this.startTime);\r\n }\r\n let finish_time = parseInt((this.overTime - this.startTime)/100+\"\");\r\n if(finish_time > 58) finish_time = 58;\r\n this.startTime = 0; this.overTime = 0;\r\n let color = \"y\";\r\n if(this.level < 4 && this.level > 1)color = \"yr\";\r\n else if(this.level >= 4) color = \"yrb\";\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 50){\r\n cc.fx.GameConfig.CLICK_DATA.duration = 50;\r\n }\r\n\r\n this.setData();\r\n if(this.fuhuo == true){\r\n this.fuhuo = false;\r\n this.loseLevel(1);\r\n } \r\n else{\r\n if(this.level > 2){\r\n this.level -= 1;\r\n // this.levelLabel.string = this.level + \"\";\r\n this.fuhuo = true;\r\n // this.fuhuo = false;\r\n this.loseLevel(2);\r\n }\r\n else{\r\n this.loseLevel(1);\r\n }\r\n }\r\n let over = this.node.getChildByName(\"Over\");\r\n cc.tween(over)\r\n .to(0.25,{opacity:255})\r\n .delay(0.1)\r\n .to(0.2,{opacity:0})\r\n .delay(0.1)\r\n .to(0.15,{opacity:255})\r\n .delay(0.1)\r\n .to(0.1,{opacity:0})\r\n .start();\r\n }\r\n //开始游戏\r\n startGame(){\r\n if(this.over == false && this.countTime > 0){\r\n this.pause = true;\r\n this.createSun();\r\n this.begin = false;\r\n cc.tween(this.ball)\r\n .to(0.5,{opacity:255,scale:1.3})\r\n .start();\r\n }\r\n }\r\n //执行太阳运行动画,以及后面移动动画\r\n runGame(){\r\n let time = -650;\r\n for(let i=0; i {\r\n if(this.over == false){\r\n let temp = this.now_Array[i].timeCount;\r\n if(temp > 0.5) temp = 0.5;\r\n if(i != 0){\r\n if(this.ball && this.now_Array[i]){\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.now_Array[i].x,this.now_Array[i].y),\r\n this.now_Array[i].time-temp);\r\n }\r\n }\r\n \r\n cc.tween(this.ball)\r\n .to(this.now_Array[i].time-temp,{x:this.now_Array[i].x,y:this.now_Array[i].y})\r\n .to(0.1,{scale:1})\r\n .call(()=>{\r\n this.createBall(i,this.now_Array[i].color,this.now_Array[i].speed,this.now_Array[i].repeat);\r\n if(i == this.now_Array.length -1){\r\n this.ball.opacity = 0;\r\n setTimeout(() => {\r\n this.destroyLine();\r\n this.beginGame();\r\n if(cc.fx.GameConfig.LEVEL_INFO[this.level-1].moveNumber<1){\r\n this.pause = false;\r\n }\r\n else{\r\n this.moveAction();\r\n }\r\n \r\n }, 150);\r\n }\r\n })\r\n .start()\r\n }\r\n }, time);\r\n }\r\n }\r\n //设置移动重叠数据\r\n createMove(){\r\n if(this.over == false){\r\n let info = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n //改变移动速度\r\n var speed = 7;\r\n if(info.moveSpeed >= 2){\r\n speed = 7 - info.moveSpeed/2;\r\n }\r\n if(info.repeat == 1){\r\n this.repeat = parseInt((Math.random()*(info.number-1)+1) + \"\");\r\n let tempNumber = 0;\r\n // this.repeat = 4;\r\n if(this.repeat > 4){\r\n this.numberRepeat = parseInt(Math.random()*4 + \"\");\r\n if(this.repeat == (info.number-1)) //如果是最后一个 不能跟第一个重叠\r\n this.numberRepeat = this.repeat - parseInt( (Math.random()*3 + 2)+ \"\")\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n this.Pos_Array[this.repeat ] = tempNumber;\r\n }\r\n else{ // 0 1 2 3 4 5 \r\n // 6 - 3 - 1 = 2 4 01 4\r\n if(this.repeat == 0) this.repeat = 1;\r\n if((info.number-1-this.repeat ) == 2){\r\n this.numberRepeat = info.number - 1;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n else if((info.number-1-this.repeat ) == 1){\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n } \r\n else if((info.number-1-this.repeat ) == 0){\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n } \r\n else if((info.number-1-this.repeat ) > 2){\r\n this.numberRepeat = parseInt(Math.random()*(info.number-this.repeat -2) + \"\") + this.repeat + 2 ;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n else{\r\n this.numberRepeat = this.repeat - 2;\r\n tempNumber = this.Pos_Array[this.numberRepeat];\r\n }\r\n this.Pos_Array[this.repeat] = tempNumber;\r\n }\r\n }\r\n if(info.moveNumber > 0){\r\n //0 1 2 3 4 5 6 7 8 9\r\n //可移动区分\r\n let pos = cc.v2(0,0);\r\n for(let z=0; z Math.random() - 0.5);\r\n if(this.moveArray[0] == 1){\r\n for(let r=info.number-1; r>=0; r--){\r\n if(this.moveArray[r] == 0){\r\n this.moveArray[r] = 1;\r\n this.moveArray[0] = 0;\r\n r = -1;\r\n }\r\n }\r\n }\r\n //将重叠的设置为不可移动 1 1 1 1 0 0 1 0 0 0 / 2 7\r\n for(let k =0; k= 0; m--){\r\n if(m != k && this.moveArray[m] == 0 && m!= this.repeat && m!= this.numberRepeat){\r\n this.moveArray[m] = 1;\r\n this.moveArray[k] = 0;\r\n m = -1;\r\n }\r\n }\r\n }\r\n }\r\n for(let i =0; i {\r\n pos = this.getPos2(true,i);\r\n this.Pos_Array[i] = pos;\r\n }, timeOut*300);\r\n }\r\n }\r\n\r\n }\r\n }\r\n }\r\n //移动后数据 重新刷一遍赋值\r\n updateArray(){\r\n for(let i=0; i= 2){\r\n speed = 7 - info.moveSpeed/2;\r\n } \r\n if(info.moveNumber > 0){\r\n //0 1 2 3 4 5 6 7 8 9\r\n //可移动区分\r\n //将重叠的设置为不可移动 1 1 1 1 0 0 1 0 0 0 / 2 7\r\n for(let k =0; k= 0; m--){\r\n if(m != k && this.moveArray[m] == 0 && m!= this.repeat && m!= this.numberRepeat){\r\n this.moveArray[m] = 1;\r\n this.moveArray[k] = 0;\r\n m = -1;\r\n }\r\n }\r\n }\r\n }\r\n let lastNumber = 0;\r\n //锁定最后一个可移动的\r\n for(let j =0; j{\r\n this.ball_Array[i].getComponent(\"Sun\").move = false;\r\n })\r\n .start();\r\n }\r\n //如果是最后一个\r\n else{\r\n let time = speed*this.calculateDistance(this.ball_Array[i].x,this.ball_Array[i].y,this.Pos_Array[i].x,this.Pos_Array[i].y,3);\r\n this.ball_Array[i].getComponent(\"Sun\").move = true;\r\n cc.tween(this.ball_Array[i])\r\n .to(time,{position:this.Pos_Array[i]})\r\n .call(() =>{\r\n this.ball_Array[i].getComponent(\"Sun\").move = false;\r\n })\r\n .start();\r\n }\r\n }\r\n }\r\n }\r\n }\r\n //每次重新开始新一轮儿游戏\r\n beginGame(){\r\n this.begin = true;\r\n this.startTime = cc.fx.GameTool.getTime();\r\n this.timeStart = cc.fx.GameTool.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n let tiemOut = 0;\r\n for(let l=0; l {\r\n if(this.over == false){\r\n let pos = this.getPos(false,l);\r\n this.Pos_Array.push(pos);\r\n if(this.Pos_Array.length == levelData.number){\r\n this.createMove();\r\n this.createPos();\r\n }\r\n }\r\n\r\n }, tiemOut*100);\r\n }\r\n }\r\n //创建太阳位置,颜色信息等数据\r\n createPos(){\r\n let data = {x:this.ball.x,y:this.ball.y,time:0,timeCount:0,color:0,speed:0,repeat:false};\r\n let levelData = cc.fx.GameConfig.LEVEL_INFO[this.level-1];\r\n //颜色区分\r\n let colorArray = [0,1];\r\n for(let j=0; j Math.random() - 0.5);\r\n }\r\n colorArray.sort(() => Math.random() - 0.5);\r\n if(levelData.number == 4) colorArray = [0,0,0,0];\r\n this.color_Array = colorArray;\r\n //存储太阳数据\r\n for(let i=0; i 0){\r\n for(let i=0; i 0){\r\n for(let i=0; i 160){\r\n if(num == true){\r\n cc.fx.GameConfig\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxMove){\r\n jg = true;\r\n } \r\n else jg = false;\r\n }\r\n else{\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxMove){\r\n jg = true;\r\n } \r\n else jg = false;\r\n }\r\n }\r\n return jg;\r\n }\r\n //命中动画\r\n hitAction(data){\r\n this.hit.active = true; this.hit.opacity = 0;\r\n this.hit.setPosition\r\n this.hit.setPosition(this.ball_Array[data].x+35,this.ball_Array[data].y+35);\r\n cc.tween(this.hit)\r\n .to(0,{opacity:255})\r\n .to(0.2,{position:cc.v3(this.hit.x-35,this.hit.y-35,0)})\r\n .delay(0.2)\r\n .to(0.1,{opacity:0})\r\n .call(() =>{\r\n this.hit.active = false;\r\n })\r\n .start();\r\n }\r\n //创造太阳\r\n createBall(number,color,speed,repeat){\r\n let ball = null;\r\n if(color == 0)ball = cc.instantiate(this.qiu1);\r\n else if(color == 1)ball = cc.instantiate(this.qiu2);\r\n else if(color == 2)ball = cc.instantiate(this.qiu3);\r\n ball.parent = this.node.getChildByName(\"Sun\");\r\n ball.zIndex = this.now_Array.length - number;\r\n ball.setPosition(this.ball.x,this.ball.y);\r\n ball.getComponent(\"Sun\").init(number,color,speed,repeat);\r\n this.ball_Array.push(ball);\r\n }\r\n //销毁连线\r\n destroyLine() {\r\n for(let i =0; i< this.node.getChildByName(\"Line\").children.length;i++){\r\n if(this.node.getChildByName(\"Line\").children[i]){\r\n this.node.getChildByName(\"Line\").children[i].removeFromParent();\r\n this.node.getChildByName(\"Line\").children[i] = null;\r\n }\r\n }\r\n this.node.getChildByName(\"Line\").removeAllChildren();\r\n }\r\n //创建连线\r\n createLine(start,end,time){\r\n let line = cc.instantiate(this.linePrefab);\r\n line.parent = this.node.getChildByName(\"Line\");\r\n line.setPosition(start.x,start.y);\r\n const dx = end.x - start.x;\r\n const dy = end.y - start.y;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n line.height = distance;\r\n line.getComponent(cc.Sprite).fillRange = 0;\r\n line.angle = -this.calculateAngle(start.x,start.y,end.x,end.y);\r\n cc.tween(line.getComponent(cc.Sprite))\r\n .to(time,{fillRange:1})\r\n .start();\r\n }\r\n //获取两点之间的角度,将来都可放工具类\r\n calculateAngle(x1, y1, x2, y2) {\r\n var angle = Math.atan2(y2-y1,x2-x1)*180 / Math.PI - 90;\r\n return -angle;\r\n }\r\n //获取两点之间的距离 返回对应时间\r\n calculateDistance(x1, y1, x2, y2, num) {\r\n const dx = x2 - x1;\r\n const dy = y2 - y1;\r\n let time = 0;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n if(num == 1){\r\n if(distance > 800) distance = 800;\r\n time = distance/800 * 0.6;\r\n }\r\n else if(num == 2){\r\n if(distance > 1200) distance = 1200;\r\n time = distance/1200 * 1;\r\n }\r\n else if(num == 3){\r\n if(distance > 1200) distance = 1200;\r\n time = distance/1200 * 1.5;\r\n }\r\n\r\n return time;\r\n }\r\n //获取两点之间距离 返回距离判断\r\n getDistance2(x1, y1, x2, y2,num) {\r\n var jg = false;\r\n const dx = x2 - x1;\r\n const dy = y2 - y1;\r\n var distance = Math.sqrt(dx*dx + dy*dy);\r\n if(distance > 160){\r\n if(num == true){\r\n if(distance < cc.fx.GameConfig.LEVEL_INFO[this.level-1].maxDistance) jg = true;\r\n else jg = false;\r\n }\r\n else{\r\n jg = true;\r\n }\r\n }\r\n return jg;\r\n }\r\n //背景移动\r\n bgMove(type){\r\n let random = Math.random()*300 + 300;\r\n let posX = Math.random()*600 - 300;\r\n let y1 = this.bg1.y - random*type;\r\n let time1 = 0.7*(random/400);\r\n cc.tween(this.ball)\r\n .to(0.3,{scale:1.3})\r\n .to(time1,{x:posX})\r\n .start();\r\n cc.tween(this.bg1)\r\n .delay(0.3)\r\n .to(time1,{y:y1})\r\n .start();\r\n setTimeout(() => {\r\n if(this.over == false) this.startGame();\r\n }, time1*1500);\r\n }\r\n //如果是倒计时 调用此方法\r\n updateCountDownTime () {\r\n if (this.countTime > 0 && this.pause == false) {\r\n this.countTime -= 1;\r\n this.time.string = cc.fx.GameTool.getTimeMargin(this.countTime);\r\n if(this.countTime < 5){\r\n cc.tween(this.time.node)\r\n .to(0.25,{scale:1.5,color:cc.color(255,0,0)})\r\n .to(0.25,{scale:1,color:cc.color(255,255,255)})\r\n .start()\r\n let over = this.node.getChildByName(\"Over\");\r\n cc.tween(over)\r\n .to(0.2,{opacity:255})\r\n .delay(0.1)\r\n .to(0.2,{opacity:0})\r\n .start();\r\n }\r\n if(this.countTime <= 0){\r\n this.begin = false;\r\n this.over = true;\r\n this.unschedule(this.updateCountDownTime);\r\n this.setLoss({distance:0});\r\n var time = 0;\r\n if(this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time/this.clickCount + \"\");\r\n cc.fx.GameConfig.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n cc.fx.GameConfig.GM_INFO.mean_Time = cc.fx.GameConfig.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.gameOver(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n cc.fx.GameTool.setGameData();\r\n }\r\n //上传排行榜数据\r\n gameOver(time){\r\n cc.fx.GameTool.setRank(time);\r\n this.node.getChildByName(\"GameOver\").active = true;\r\n this.node.getChildByName(\"GameOver\").opacity = 0;\r\n cc.tween(this.node.getChildByName(\"GameOver\"))\r\n .to(0.4,{opacity:255})\r\n .delay(2)\r\n .to(0.4,{opacity:50})\r\n .call(() =>{\r\n cc.director.loadScene(\"OverScene\");\r\n })\r\n .start()\r\n }\r\n //作弊,测试用\r\n showNumber(){\r\n if(this.show == false) this.show = true;\r\n else if(this.show == true) this.show = false;\r\n for(let i=0; i { + // if (err) { + // WeChat.setShare(location.href); + // // self.Authentication(); + // return; + // } + // let jsonData: object = res.json!; + // self.GM_INFO = jsonData["data"]; + // self.setCode(self.getKey("scode")); + // WeChat.setShare(location.href); + // // self.Authentication(); + // }) + // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { + // if (err) { + // return; + // } + // let jsonData: object = res.json!; + // self.CLICK_DATA = jsonData["data"]; + // }) cc.resources.load('Json/LEVEL_INFO', function (err, res) { if (err) { return; @@ -83,9 +83,12 @@ var GameConfig = /** @class */ (function () { url: "https://api.sparkus.cn", success: false, matchId: null, - custom: 0 //用于测试跳关卡 + custom: 0, + gap: [] //存储点击到太阳中心距离 }; this.setCode(this.getKey("scode")); + share_1.WeChat.setShare(location.href); + this.Authentication(); }; GameConfig.CLICK_init = function () { this.CLICK_DATA = @@ -102,7 +105,8 @@ var GameConfig = /** @class */ (function () { difficultyLevel: 0, sunList: [], stepTimeList: [], - remainder: 120 //游戏剩余时间 + remainder: 120, + gap: [] //点击到太阳中心距离 }; }; GameConfig.LEVEL_INFO_init = function () { diff --git a/library/imports/c5/c5692be7-8703-45e4-9f67-23b54d290356.js.map b/library/imports/c5/c5692be7-8703-45e4-9f67-23b54d290356.js.map index b99f9d0..822aea9 100644 --- a/library/imports/c5/c5692be7-8703-45e4-9f67-23b54d290356.js.map +++ b/library/imports/c5/c5692be7-8703-45e4-9f67-23b54d290356.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\module\\Config\\GameConfig.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { WeChat } from \"../Share/share\";\r\n\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n@ccclass('GameConfig')\r\nexport class GameConfig {\r\n //所有控制信息都通过GameAppStart内控制\r\n private static _instance : GameConfig = null;\r\n //用于盛放埋点数据上传,每次上传后清空\r\n static GM_INFO: {\r\n // isEnd: false,\r\n mean_Time: number; //平均放箭速度\r\n total: number; //总共对的个数\r\n currSeed: number; //用于随机数种子\r\n gameId: string; //游戏ID\r\n userId: number; //用户ID\r\n scode: string; //用户code\r\n guide: boolean; //是否有引导\r\n url: string; //访问域名\r\n success: boolean; //用户游戏成功与否\r\n matchId: any; //用于埋点上传的ID\r\n custom: number; //用于测试跳关卡\r\n };\r\n static CLICK_DATA: {\r\n type: number; //上传数据类型\r\n success: boolean; //此局游戏胜负 \r\n round: number; //回合数\r\n totalSunCount: number; //太阳总数\r\n movedSunCount: number; //可移动太阳个数\r\n sunSpeed: number; //太阳移动速度\r\n overlapSunCount: number; //重叠太阳个数\r\n colorList: any[]; //太阳颜色数组\r\n duration: number; //每次点击的反应时间\r\n difficultyLevel: number; //此次难度\r\n sunList: any[]; //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: any[]; //每次点击间隔\r\n remainder: number; //游戏剩余时间\r\n };\r\n static LEVEL_INFO: { //第一难度\r\n number: number; //太阳总数 \r\n moveNumber: number; //太阳可移动个数\r\n moveSpeed: number; //太阳移动速度等级\r\n maxDistance: number; //布局后移动最大距离\r\n maxMove: number; //每个太阳之间距离最大间距\r\n repeat: number; //是否重叠,现在0 不重叠 1 重叠1个\r\n }[];\r\n static GAME_DATA: any[];\r\n\r\n\r\n static get Instance()\r\n {\r\n if (this._instance == null)\r\n {\r\n this._instance = new GameConfig();\r\n }\r\n return this._instance;\r\n }\r\n\r\n static getKey(key){\r\n var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)', 'i');\r\n var r = window.location.search.substr(1).match(reg);\r\n if (r != null) {\r\n return unescape(r[2]);\r\n }\r\n return \"\";\r\n }\r\n\r\n static init(){\r\n this.GM_INFO_init();\r\n this.CLICK_init();\r\n this.LEVEL_INFO_init();\r\n \r\n var self = this;\r\n cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.GM_INFO = jsonData[\"data\"];\r\n self.setCode(self.getKey(\"scode\"));\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n\r\n })\r\n cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n \r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.CLICK_DATA = jsonData[\"data\"];\r\n })\r\n cc.resources.load('Json/LEVEL_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.LEVEL_INFO = jsonData[\"data\"];\r\n })\r\n\r\n //GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次\r\n self.GAME_DATA = [\r\n ]\r\n }\r\n \r\n //数据备用\r\n static GM_INFO_init() {\r\n this.GM_INFO = {\r\n // isEnd: false,\r\n mean_Time: 0, //平均放箭速度\r\n total: 0, //总共对的个数\r\n currSeed: 203213, //用于随机数种子\r\n gameId: '100009', //游戏ID\r\n userId: 0, //用户ID\r\n scode: \"\", //用户code,从网页后缀获取\r\n guide: true, //是否有引导\r\n url: \"https://api.sparkus.cn\",//访问域名\r\n success: false, //用户游戏成功与否\r\n matchId: null, //用于埋点上传的ID\r\n custom: 0 //用于测试跳关卡\r\n };\r\n this.setCode(this.getKey(\"scode\"));\r\n }\r\n static CLICK_init() {\r\n this.CLICK_DATA =\r\n {\r\n type: 1, //上传数据类型\r\n success: false, //此局游戏胜负 \r\n round: 0, //回合数\r\n totalSunCount: 0, //太阳总数\r\n movedSunCount: 0, //可移动太阳个数\r\n sunSpeed: 0, //太阳移动速度\r\n overlapSunCount: 0, //重叠太阳个数\r\n colorList: [], //太阳颜色数组\r\n duration: 0, //每次点击的反应时间\r\n difficultyLevel: 0, //此次难度\r\n sunList: [], //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: [], //每次点击间隔\r\n remainder: 120 //游戏剩余时间\r\n }\r\n }\r\n static LEVEL_INFO_init() {\r\n this.LEVEL_INFO = [\r\n { //第一难度\r\n number: 3, //太阳总数 \r\n moveNumber: 0, //太阳可移动个数\r\n moveSpeed: 0, //太阳移动速度等级\r\n maxDistance: 200, //布局后移动最大距离\r\n maxMove: 1200, //每个太阳之间距离最大间距\r\n repeat: 0 //是否重叠,现在0 不重叠 1 重叠1个\r\n },\r\n { //第二难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第三难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第四难度\r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第五难度\r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第六难度\r\n number: 6,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第七难度\r\n number: 6,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第八难度\r\n number: 7,\r\n moveNumber: 0,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第九难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十一难度\r\n number: 8,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十二难度\r\n number: 8,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十三难度\r\n number: 9,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十四难度\r\n number: 9,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十五难度\r\n number: 10,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //11 \r\n number: 3,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //12 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //13 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //14 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //15 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //16 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //17 \r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //18 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //19 \r\n number: 5,\r\n moveNumber: 2,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //20 \r\n number: 5,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n }\r\n\r\n ]\r\n }\r\n static Authentication(){\r\n cc.fx.GameTool.Authentication();\r\n }\r\n\r\n static setCode(code){\r\n this.GM_INFO.scode = code;\r\n }\r\n\r\n}\r\n\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\module\\Config\\GameConfig.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { WeChat } from \"../Share/share\";\r\n\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n@ccclass('GameConfig')\r\nexport class GameConfig {\r\n //所有控制信息都通过GameAppStart内控制\r\n private static _instance : GameConfig = null;\r\n //用于盛放埋点数据上传,每次上传后清空\r\n\r\n static LEVEL_INFO: { //第一难度\r\n number: number; //太阳总数 \r\n moveNumber: number; //太阳可移动个数\r\n moveSpeed: number; //太阳移动速度等级\r\n maxDistance: number; //布局后移动最大距离\r\n maxMove: number; //每个太阳之间距离最大间距\r\n repeat: number; //是否重叠,现在0 不重叠 1 重叠1个\r\n }[];\r\n static GAME_DATA: any[];\r\n static CLICK_DATA: {\r\n type: number; //上传数据类型\r\n success: boolean; //此局游戏胜负 \r\n round: number; //回合数\r\n totalSunCount: number; //太阳总数\r\n movedSunCount: number; //可移动太阳个数\r\n sunSpeed: number; //太阳移动速度\r\n overlapSunCount: number; //重叠太阳个数\r\n colorList: any[]; //太阳颜色数组\r\n duration: number; //每次点击的反应时间\r\n difficultyLevel: number; //此次难度\r\n sunList: any[]; //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: any[]; //每次点击间隔\r\n remainder: number; //游戏剩余时间\r\n gap: any[]; //点击到太阳中心距离\r\n };\r\n static GM_INFO: {\r\n // isEnd: false,\r\n mean_Time: number; //平均放箭速度\r\n total: number; //总共对的个数\r\n currSeed: number; //用于随机数种子\r\n gameId: string; //游戏ID\r\n userId: number; //用户ID\r\n scode: string; //用户code,从网页后缀获取\r\n guide: boolean; //是否有引导\r\n url: string; //访问域名\r\n success: boolean; //用户游戏成功与否\r\n matchId: any; //用于埋点上传的ID\r\n custom: number; //用于测试跳关卡\r\n gap: any[]; //存储点击到太阳中心距离\r\n };\r\n\r\n\r\n static get Instance()\r\n {\r\n if (this._instance == null)\r\n {\r\n this._instance = new GameConfig();\r\n }\r\n return this._instance;\r\n }\r\n\r\n static getKey(key){\r\n var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)', 'i');\r\n var r = window.location.search.substr(1).match(reg);\r\n if (r != null) {\r\n return unescape(r[2]);\r\n }\r\n return \"\";\r\n }\r\n\r\n static init(){\r\n this.GM_INFO_init();\r\n this.CLICK_init();\r\n this.LEVEL_INFO_init();\r\n \r\n var self = this;\r\n // cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => {\r\n // if (err) {\r\n // WeChat.setShare(location.href);\r\n // // self.Authentication();\r\n // return;\r\n // }\r\n // let jsonData: object = res.json!;\r\n // self.GM_INFO = jsonData[\"data\"];\r\n // self.setCode(self.getKey(\"scode\"));\r\n // WeChat.setShare(location.href);\r\n // // self.Authentication();\r\n\r\n // })\r\n // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => {\r\n // if (err) {\r\n \r\n // return;\r\n // }\r\n // let jsonData: object = res.json!;\r\n // self.CLICK_DATA = jsonData[\"data\"];\r\n // })\r\n cc.resources.load('Json/LEVEL_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.LEVEL_INFO = jsonData[\"data\"];\r\n })\r\n\r\n //GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次\r\n self.GAME_DATA = [\r\n ]\r\n }\r\n \r\n //数据备用\r\n static GM_INFO_init() {\r\n this.GM_INFO = {\r\n // isEnd: false,\r\n mean_Time: 0, //平均放箭速度\r\n total: 0, //总共对的个数\r\n currSeed: 203213, //用于随机数种子\r\n gameId: '100009', //游戏ID\r\n userId: 0, //用户ID\r\n scode: \"\", //用户code,从网页后缀获取\r\n guide: true, //是否有引导\r\n url: \"https://api.sparkus.cn\",//访问域名\r\n success: false, //用户游戏成功与否\r\n matchId: null, //用于埋点上传的ID\r\n custom: 0, //用于测试跳关卡\r\n gap:[] //存储点击到太阳中心距离\r\n };\r\n this.setCode(this.getKey(\"scode\"));\r\n WeChat.setShare(location.href);\r\n this.Authentication();\r\n }\r\n static CLICK_init() {\r\n this.CLICK_DATA =\r\n {\r\n type: 1, //上传数据类型\r\n success: false, //此局游戏胜负 \r\n round: 0, //回合数\r\n totalSunCount: 0, //太阳总数\r\n movedSunCount: 0, //可移动太阳个数\r\n sunSpeed: 0, //太阳移动速度\r\n overlapSunCount: 0, //重叠太阳个数\r\n colorList: [], //太阳颜色数组\r\n duration: 0, //每次点击的反应时间\r\n difficultyLevel: 0, //此次难度\r\n sunList: [], //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: [], //每次点击间隔\r\n remainder: 120, //游戏剩余时间\r\n gap:[] //点击到太阳中心距离\r\n }\r\n\r\n }\r\n static LEVEL_INFO_init() {\r\n this.LEVEL_INFO = [\r\n { //第一难度\r\n number: 3, //太阳总数 \r\n moveNumber: 0, //太阳可移动个数\r\n moveSpeed: 0, //太阳移动速度等级\r\n maxDistance: 200, //布局后移动最大距离\r\n maxMove: 1200, //每个太阳之间距离最大间距\r\n repeat: 0 //是否重叠,现在0 不重叠 1 重叠1个\r\n },\r\n { //第二难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第三难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第四难度\r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第五难度\r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第六难度\r\n number: 6,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第七难度\r\n number: 6,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第八难度\r\n number: 7,\r\n moveNumber: 0,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第九难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十一难度\r\n number: 8,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十二难度\r\n number: 8,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十三难度\r\n number: 9,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十四难度\r\n number: 9,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十五难度\r\n number: 10,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //11 \r\n number: 3,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //12 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //13 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //14 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //15 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //16 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //17 \r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //18 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //19 \r\n number: 5,\r\n moveNumber: 2,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //20 \r\n number: 5,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n }\r\n\r\n ]\r\n }\r\n static Authentication(){\r\n cc.fx.GameTool.Authentication();\r\n }\r\n\r\n static setCode(code){\r\n this.GM_INFO.scode = code;\r\n }\r\n\r\n}\r\n\r\n"]} \ No newline at end of file diff --git a/library/imports/d1/d1323772-4ab2-4527-bd20-501fe4fb9723.json b/library/imports/d1/d1323772-4ab2-4527-bd20-501fe4fb9723.json index dedb08f..14bd69d 100644 --- a/library/imports/d1/d1323772-4ab2-4527-bd20-501fe4fb9723.json +++ b/library/imports/d1/d1323772-4ab2-4527-bd20-501fe4fb9723.json @@ -13,7 +13,7 @@ }, { "__type__": "cc.Node", - "_name": "qiu1", + "_name": "qiu4", "_objFlags": 0, "_parent": null, "_children": [ diff --git a/library/imports/e1/e1d57e63-4f2f-467d-9c55-0a889d5533a8.json b/library/imports/e1/e1d57e63-4f2f-467d-9c55-0a889d5533a8.json index 9d7f039..3c48b58 100644 --- a/library/imports/e1/e1d57e63-4f2f-467d-9c55-0a889d5533a8.json +++ b/library/imports/e1/e1d57e63-4f2f-467d-9c55-0a889d5533a8.json @@ -17,7 +17,8 @@ "difficultyLevel": 0, "sunList": [], "stepTimeList": [], - "remainder": 120 + "remainder": 120, + "gap": [] } } } \ No newline at end of file diff --git a/library/uuid-to-mtime.json b/library/uuid-to-mtime.json index 280ba4e..58510fd 100644 --- a/library/uuid-to-mtime.json +++ b/library/uuid-to-mtime.json @@ -85,8 +85,8 @@ "relativePath": "prefab\\qiu3.prefab" }, "d1323772-4ab2-4527-bd20-501fe4fb9723": { - "asset": 1717128451209, - "meta": 1717128451214, + "asset": 1729825469831, + "meta": 1729825469838, "relativePath": "prefab\\qiu4.prefab" }, "4b9c5a7e-c645-48a4-9aca-5df381ce4ef5": { @@ -240,8 +240,8 @@ "relativePath": "resources\\20240524-174503.png" }, "4eaf518b-35ec-4262-928d-4d497c3f2830": { - "asset": 1717136309187, - "meta": 1717136309194, + "asset": 1729827209862, + "meta": 1729827209870, "relativePath": "Scene\\GameScene.fire" }, "1fc00204-78cd-4d9f-b8bb-d393dd8392f9": { @@ -365,23 +365,18 @@ "relativePath": "Script\\module\\Storage\\Storage.ts" }, "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d": { - "asset": 1724225513531, - "meta": 1724225513549, + "asset": 1729825485213, + "meta": 1729825485220, "relativePath": "Scene\\LoadScene.fire" }, - "4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f": { - "asset": 1718607296698, - "meta": 1718607561426, - "relativePath": "Script\\Sun.ts" - }, "ff9e9b41-3a4c-4198-b442-6a4a1646297d": { "asset": 1718612502779, "meta": 1718612898273, "relativePath": "resources\\Json" }, "e1d57e63-4f2f-467d-9c55-0a889d5533a8": { - "asset": 1718613823190, - "meta": 1718613998653, + "asset": 1729764377579, + "meta": 1729824830797, "relativePath": "resources\\Json\\CLICK_DATA.json" }, "2cddbdcb-5dba-4b13-960c-9ebe6d17a7db": { @@ -394,11 +389,6 @@ "meta": 1718621499350, "relativePath": "Script\\module\\Music\\AudioManager.ts" }, - "b0432040-dbde-438c-839c-ba2b5d18a3b5": { - "asset": 1718621730315, - "meta": 1718621731706, - "relativePath": "Script\\GameManager.ts" - }, "3fd2f87a-bc73-4978-8494-8b35b4f716ad": { "asset": 1718621727785, "meta": 1718621731780, @@ -420,8 +410,8 @@ "relativePath": "Script\\module\\Share" }, "ca0f9934-a015-436e-9402-f8e30d4c5de6": { - "asset": 1722331720004, - "meta": 1722331746561, + "asset": 1725446344193, + "meta": 1725446368490, "relativePath": "Script\\module\\RankList\\ItemRender.ts" }, "e74a9f7d-2031-4e69-bcb2-9998174088b2": { @@ -436,502 +426,502 @@ }, "9836134e-b892-4283-b6b2-78b5acf3ed45": { "asset": 1714966328642, - "meta": 1724742459551, + "meta": 1729824826966, "relativePath": "effects" }, "abc2cb62-7852-4525-a90d-d474487b88f2": { "asset": 1714966328642, - "meta": 1724742459657, + "meta": 1729824827076, "relativePath": "effects\\builtin-phong.effect" }, "e2f00085-c597-422d-9759-52c360279106": { "asset": 1714966328642, - "meta": 1724742459706, + "meta": 1729824827133, "relativePath": "effects\\builtin-toon.effect" }, "430eccbf-bf2c-4e6e-8c0c-884bbb487f32": { "asset": 1714966328642, - "meta": 1724742459718, + "meta": 1729824827143, "relativePath": "effects\\__builtin-editor-gizmo-line.effect" }, "6c5cf6e1-b044-4eac-9431-835644d57381": { "asset": 1714966328642, - "meta": 1724742459724, + "meta": 1729824827151, "relativePath": "effects\\__builtin-editor-gizmo-unlit.effect" }, "115286d1-2e10-49ee-aab4-341583f607e8": { "asset": 1714966328642, - "meta": 1724742459751, + "meta": 1729824827175, "relativePath": "effects\\__builtin-editor-gizmo.effect" }, "f8e6b000-5643-4b86-9080-aa680ce1f599": { "asset": 1714966328706, - "meta": 1724742459551, + "meta": 1729824826967, "relativePath": "image" }, "5c3eedba-6c41-4c0c-9ba7-d91f813cbd1c": { "asset": 1714966328721, - "meta": 1724742459553, + "meta": 1729824826968, "relativePath": "materials" }, "fc09f9bd-2cce-4605-b630-8145ef809ed6": { "asset": 1714966328721, - "meta": 1724742459555, + "meta": 1729824826968, "relativePath": "misc" }, "e851e89b-faa2-4484-bea6-5c01dd9f06e2": { "asset": 1714966328658, - "meta": 1724742459813, + "meta": 1729824827215, "relativePath": "image\\default_btn_normal.png" }, "99170b0b-d210-46f1-b213-7d9e3f23098a": { "asset": 1714966328673, - "meta": 1724742459801, + "meta": 1729824828104, "relativePath": "image\\default_progressbar_bg.png" }, "db019bf7-f71c-4111-98cf-918ea180cb48": { "asset": 1714966328737, - "meta": 1724742459557, + "meta": 1729824826969, "relativePath": "model" }, "4bab67cb-18e6-4099-b840-355f0473f890": { "asset": 1714966328689, - "meta": 1724742459849, + "meta": 1729824828102, "relativePath": "image\\default_scrollbar_bg.png" }, "e39e96e6-6f6e-413f-bcf1-ac7679bb648a": { "asset": 1714966328737, - "meta": 1724742459815, + "meta": 1729824827232, "relativePath": "model\\prefab" }, "617323dd-11f4-4dd3-8eec-0caf6b3b45b9": { "asset": 1714966328689, - "meta": 1724742459844, + "meta": 1729824828113, "relativePath": "image\\default_scrollbar_vertical_bg.png" }, "6e056173-d285-473c-b206-40a7fff5386e": { "asset": 1714966328689, - "meta": 1724742459851, + "meta": 1729824828112, "relativePath": "image\\default_sprite.png" }, "600301aa-3357-4a10-b086-84f011fa32ba": { "asset": 1714966328642, - "meta": 1724742459804, + "meta": 1729824827231, "relativePath": "image\\default-particle.png" }, "71561142-4c83-4933-afca-cb7a17f67053": { "asset": 1714966328658, - "meta": 1724742459852, + "meta": 1729824827218, "relativePath": "image\\default_btn_disabled.png" }, "edd215b9-2796-4a05-aaf5-81f96c9281ce": { "asset": 1714966328658, - "meta": 1724742459799, + "meta": 1729824827220, "relativePath": "image\\default_editbox_bg.png" }, "b43ff3c2-02bb-4874-81f7-f2dea6970f18": { "asset": 1714966328658, - "meta": 1724742459809, + "meta": 1729824827229, "relativePath": "image\\default_btn_pressed.png" }, "f6e6dd15-71d1-4ffe-ace7-24fd39942c05": { "asset": 1714966328752, - "meta": 1724742459557, + "meta": 1729824826970, "relativePath": "obsolete" }, "567dcd80-8bf4-4535-8a5a-313f1caf078a": { "asset": 1714966328673, - "meta": 1724742459842, + "meta": 1729824828107, "relativePath": "image\\default_radio_button_off.png" }, "c4480a0a-6ac5-443f-8b40-361a14257fc8": { "asset": 1714966328706, - "meta": 1724742460105, + "meta": 1729824828409, "relativePath": "materials\\builtin-phong.mtl" }, "f743d2b6-b7ea-4c14-a55b-547ed4d0a045": { "asset": 1714966328752, - "meta": 1724742459557, + "meta": 1729824826972, "relativePath": "particle" }, "d81ec8ad-247c-4e62-aa3c-d35c4193c7af": { "asset": 1714966328673, - "meta": 1724742459841, + "meta": 1729824827227, "relativePath": "image\\default_panel.png" }, "a87cc147-01b2-43f8-8e42-a7ca90b0c757": { "asset": 1714966328721, - "meta": 1724742460047, + "meta": 1729824828303, "relativePath": "model\\prefab\\box.prefab" }, "cfef78f1-c8df-49b7-8ed0-4c953ace2621": { "asset": 1714966328673, - "meta": 1724742459807, + "meta": 1729824828111, "relativePath": "image\\default_progressbar.png" }, "fe1417b6-fe6b-46a4-ae7c-9fd331f33a2a": { "asset": 1714966328737, - "meta": 1724742460057, + "meta": 1729824828326, "relativePath": "model\\prefab\\capsule.prefab" }, "ae6c6c98-11e4-452f-8758-75f5c6a56e83": { "asset": 1714966328831, - "meta": 1724742459559, + "meta": 1729824826972, "relativePath": "prefab" }, "9d60001f-b5f4-4726-a629-2659e3ded0b8": { "asset": 1714966328673, - "meta": 1724742459846, + "meta": 1729824828115, "relativePath": "image\\default_radio_button_on.png" }, "b5fc2cf2-7942-483d-be1f-bbeadc4714ad": { "asset": 1714966328737, - "meta": 1724742460047, + "meta": 1729824828314, "relativePath": "model\\prefab\\cone.prefab" }, "3f376125-a699-40ca-ad05-04d662eaa1f2": { "asset": 1714966328737, - "meta": 1724742460047, + "meta": 1729824828334, "relativePath": "model\\prefab\\plane.prefab" }, "0275e94c-56a7-410f-bd1a-fc7483f7d14a": { "asset": 1714966328705, - "meta": 1724742459848, + "meta": 1729824828109, "relativePath": "image\\default_sprite_splash.png" }, "1c5e4038-953a-44c2-b620-0bbfc6170477": { "asset": 1714966328737, - "meta": 1724742460051, + "meta": 1729824828326, "relativePath": "model\\prefab\\cylinder.prefab" }, "6c9ef10d-b479-420b-bfe6-39cdda6a8ae0": { "asset": 1714966328737, - "meta": 1724742460051, + "meta": 1729824828342, "relativePath": "model\\prefab\\quad.prefab" }, "d6d3ca85-4681-47c1-b5dd-d036a9d39ea2": { "asset": 1714966328689, - "meta": 1724742459796, + "meta": 1729824828105, "relativePath": "image\\default_scrollbar_vertical.png" }, "2d9a4b85-b0ab-4c46-84c5-18f393ab2058": { "asset": 1714966328737, - "meta": 1724742460057, + "meta": 1729824828342, "relativePath": "model\\prefab\\sphere.prefab" }, "de510076-056b-484f-b94c-83bef217d0e1": { "asset": 1714966328737, - "meta": 1724742460051, + "meta": 1729824828338, "relativePath": "model\\prefab\\torus.prefab" }, "0291c134-b3da-4098-b7b5-e397edbe947f": { "asset": 1714966328689, - "meta": 1724742459854, + "meta": 1729824827225, "relativePath": "image\\default_scrollbar.png" }, "897ef7a1-4860-4f64-968d-f5924b18668a": { "asset": 1714966328752, - "meta": 1724742459864, + "meta": 1729824828124, "relativePath": "prefab\\2d-camera.prefab" }, "972b9a4d-47ee-4c74-b5c3-61d8a69bc29f": { "asset": 1714966328768, - "meta": 1724742459867, + "meta": 1729824828132, "relativePath": "prefab\\button.prefab" }, "a3ee0214-b432-4865-9666-4a3211814282": { "asset": 1714966328800, - "meta": 1724742459865, + "meta": 1729824828125, "relativePath": "prefab\\light" }, "2c937608-2562-40ea-b264-7395df6f0cea": { "asset": 1714966328768, - "meta": 1724742459873, + "meta": 1729824828129, "relativePath": "prefab\\canvas.prefab" }, "70d7cdb0-04cd-41bb-9480-c06a4785f386": { "asset": 1714966328768, - "meta": 1724742459863, + "meta": 1729824828122, "relativePath": "prefab\\3d-camera.prefab" }, "70bbeb73-6dc2-4ee4-8faf-76b3a0e34ec4": { "asset": 1714966328768, - "meta": 1724742459871, + "meta": 1729824828126, "relativePath": "prefab\\3d-particle.prefab" }, "ed88f13d-fcad-4848-aa35-65a2cb973584": { "asset": 1714966328768, - "meta": 1724742459868, + "meta": 1729824828128, "relativePath": "prefab\\3d-stage.prefab" }, "61aeb05b-3b32-452b-8eed-2b76deeed554": { "asset": 1714966328783, - "meta": 1724742459870, + "meta": 1729824828131, "relativePath": "prefab\\editbox.prefab" }, "27756ebb-3d33-44b0-9b96-e858fadd4dd4": { "asset": 1714966328783, - "meta": 1724742459879, + "meta": 1729824828138, "relativePath": "prefab\\label.prefab" }, "2be36297-9abb-4fee-8049-9ed5e271da8a": { "asset": 1714966328721, - "meta": 1724742459926, + "meta": 1729824828184, "relativePath": "misc\\default_video.mp4" }, "785a442c-3ceb-45be-a46e-7317f625f3b9": { "asset": 1714966328783, - "meta": 1724742459881, + "meta": 1729824828141, "relativePath": "prefab\\layout.prefab" }, "5965ffac-69da-4b55-bcde-9225d0613c28": { "asset": 1714966328800, - "meta": 1724742459888, + "meta": 1729824828146, "relativePath": "prefab\\progressBar.prefab" }, "cd33edea-55f5-46c2-958d-357a01384a36": { "asset": 1714966328800, - "meta": 1724742459885, + "meta": 1729824828145, "relativePath": "prefab\\particlesystem.prefab" }, "32044bd2-481f-4cf1-a656-e2b2fb1594eb": { "asset": 1714966328800, - "meta": 1724742459891, + "meta": 1729824828153, "relativePath": "prefab\\scrollview.prefab" }, "4a37dd57-78cd-4cec-aad4-f11a73d12b63": { "asset": 1714966328800, - "meta": 1724742459887, + "meta": 1729824828151, "relativePath": "prefab\\richtext.prefab" }, "ca8401fe-ad6e-41a8-bd46-8e3e4e9945be": { "asset": 1714966328800, - "meta": 1724742459883, + "meta": 1729824828143, "relativePath": "prefab\\pageview.prefab" }, "73a0903d-d80e-4e3c-aa67-f999543c08f5": { "asset": 1714966328706, - "meta": 1724742459913, + "meta": 1729824828167, "relativePath": "image\\default_toggle_checkmark.png" }, "0004d1cf-a0ad-47d8-ab17-34d3db9d35a3": { "asset": 1714966328800, - "meta": 1724742459889, + "meta": 1729824828148, "relativePath": "prefab\\slider.prefab" }, "96083d03-c332-4a3f-9386-d03e2d19e8ee": { "asset": 1714966328815, - "meta": 1724742459900, + "meta": 1729824828174, "relativePath": "prefab\\sprite.prefab" }, "d8afc78c-4eac-4a9f-83dd-67bc70344d33": { "asset": 1714966328862, - "meta": 1724742459559, + "meta": 1729824826973, "relativePath": "resources" }, "294c1663-4adf-4a1e-a795-53808011a38a": { "asset": 1714966328862, - "meta": 1724742459911, + "meta": 1729824828170, "relativePath": "resources\\effects" }, "1f55e3be-b89b-4b79-88de-47fd31018044": { "asset": 1714966328815, - "meta": 1724742459916, + "meta": 1729824828177, "relativePath": "prefab\\sprite_splash.prefab" }, "bbee2217-c261-49bd-a8ce-708d6bcc3500": { "asset": 1714966328893, - "meta": 1724742459912, + "meta": 1729824828172, "relativePath": "resources\\materials" }, "30682f87-9f0d-4f17-8a44-72863791461b": { "asset": 1714966328831, - "meta": 1724742459933, + "meta": 1729824828199, "relativePath": "resources\\effects\\builtin-2d-graphics.effect" }, "144c3297-af63-49e8-b8ef-1cfa29b3be28": { "asset": 1714966328831, - "meta": 1724742459941, + "meta": 1729824828211, "relativePath": "resources\\effects\\builtin-2d-gray-sprite.effect" }, "b181c1e4-0a72-4a91-bfb0-ae6f36ca60bd": { "asset": 1714966328706, - "meta": 1724742459915, + "meta": 1729824828175, "relativePath": "image\\default_toggle_pressed.png" }, "d29077ba-1627-4a72-9579-7b56a235340c": { "asset": 1714966328706, - "meta": 1724742459917, + "meta": 1729824828171, "relativePath": "image\\default_toggle_normal.png" }, "f18742d7-56d2-4eb5-ae49-2d9d710b37c8": { "asset": 1714966328831, - "meta": 1724742459949, + "meta": 1729824828221, "relativePath": "resources\\effects\\builtin-2d-label.effect" }, "c25b9d50-c8fc-4d27-beeb-6e7c1f2e5c0f": { "asset": 1714966328706, - "meta": 1724742459910, + "meta": 1729824828169, "relativePath": "image\\default_toggle_disabled.png" }, "0e93aeaa-0b53-4e40-b8e0-6268b4e07bd7": { "asset": 1714966328831, - "meta": 1724742459957, + "meta": 1729824828229, "relativePath": "resources\\effects\\builtin-2d-spine.effect" }, "2874f8dd-416c-4440-81b7-555975426e93": { "asset": 1714966328846, - "meta": 1724742459963, + "meta": 1729824828237, "relativePath": "resources\\effects\\builtin-2d-sprite.effect" }, "829a282c-b049-4019-bd38-5ace8d8a6417": { "asset": 1714966328846, - "meta": 1724742460006, + "meta": 1729824828284, "relativePath": "resources\\effects\\builtin-3d-particle.effect" }, "2a7c0036-e0b3-4fe1-8998-89a54b8a2bec": { "asset": 1714966328846, - "meta": 1724742460018, + "meta": 1729824828301, "relativePath": "resources\\effects\\builtin-3d-trail.effect" }, "c0040c95-c57f-49cd-9cbc-12316b73d0d4": { "asset": 1714966328846, - "meta": 1724742460024, + "meta": 1729824828309, "relativePath": "resources\\effects\\builtin-clear-stencil.effect" }, "7de03a80-4457-438d-95a7-3e7cdffd6086": { "asset": 1714966328815, - "meta": 1724742459919, + "meta": 1729824828179, "relativePath": "prefab\\tiledmap.prefab" }, "6d91e591-4ce0-465c-809f-610ec95019c6": { "asset": 1714966328862, - "meta": 1724742460039, + "meta": 1729824828326, "relativePath": "resources\\effects\\builtin-unlit.effect" }, "0e42ba95-1fa1-46aa-b2cf-143cd1bcee2c": { "asset": 1714966328815, - "meta": 1724742459918, + "meta": 1729824828180, "relativePath": "prefab\\tiledtile.prefab" }, "d1b8be49-b0a0-435c-83b7-552bed4bbe35": { "asset": 1714966328815, - "meta": 1724742459924, + "meta": 1729824828189, "relativePath": "prefab\\toggleGroup.prefab" }, "8a96b965-2dc0-4e03-aa90-3b79cb93b5b4": { "asset": 1714966328752, - "meta": 1724742459928, + "meta": 1729824828187, "relativePath": "obsolete\\atom.png" }, "0d784963-d024-4ea6-a7db-03be0ad63010": { "asset": 1714966328815, - "meta": 1724742459920, + "meta": 1729824828181, "relativePath": "prefab\\toggle.prefab" }, "bf0a434c-84dd-4a8e-a08a-7a36f180cc75": { "asset": 1714966328815, - "meta": 1724742459922, + "meta": 1729824828183, "relativePath": "prefab\\toggleContainer.prefab" }, "232d2782-c4bd-4bb4-9e01-909f03d6d3b9": { "asset": 1714966328815, - "meta": 1724742459925, + "meta": 1729824828200, "relativePath": "prefab\\videoplayer.prefab" }, "d0a82d39-bede-46c4-b698-c81ff0dedfff": { "asset": 1714966328752, - "meta": 1724742459937, + "meta": 1729824828186, "relativePath": "particle\\atom.png" }, "8c5001fd-07ee-4a4b-a8a0-63e15195e94d": { "asset": 1714966328831, - "meta": 1724742460027, + "meta": 1729824828288, "relativePath": "prefab\\webview.prefab" }, "61906da3-7003-4bda-9abc-5769c76faee4": { "asset": 1714966328783, - "meta": 1724742460057, + "meta": 1729824828345, "relativePath": "prefab\\light\\ambient.prefab" }, "ddb99b39-7004-47cd-9705-751905c43c46": { "asset": 1714966328800, - "meta": 1724742460059, + "meta": 1729824828338, "relativePath": "prefab\\light\\directional.prefab" }, "0cf30284-9073-46bc-9eba-e62b69dbbff3": { "asset": 1714966328800, - "meta": 1724742460059, + "meta": 1729824828338, "relativePath": "prefab\\light\\point.prefab" }, "f5331fd2-bf42-4ee3-a3fd-3e1657600eff": { "asset": 1714966328800, - "meta": 1724742460059, + "meta": 1729824828345, "relativePath": "prefab\\light\\spot.prefab" }, "6f801092-0c37-4f30-89ef-c8d960825b36": { "asset": 1714966328862, - "meta": 1724742460124, + "meta": 1729824828426, "relativePath": "resources\\materials\\builtin-2d-base.mtl" }, "a153945d-2511-4c14-be7b-05d242f47d57": { "asset": 1714966328862, - "meta": 1724742460127, + "meta": 1729824828430, "relativePath": "resources\\materials\\builtin-2d-graphics.mtl" }, "7afd064b-113f-480e-b793-8817d19f63c3": { "asset": 1714966328878, - "meta": 1724742460127, + "meta": 1729824828430, "relativePath": "resources\\materials\\builtin-2d-spine.mtl" }, "3a7bb79f-32fd-422e-ada2-96f518fed422": { "asset": 1714966328862, - "meta": 1724742460126, + "meta": 1729824828432, "relativePath": "resources\\materials\\builtin-2d-gray-sprite.mtl" }, "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432": { "asset": 1714966328878, - "meta": 1724742460127, + "meta": 1729824828434, "relativePath": "resources\\materials\\builtin-2d-sprite.mtl" }, "432fa09c-cf03-4cff-a186-982604408a07": { "asset": 1714966328878, - "meta": 1724742460130, + "meta": 1729824828432, "relativePath": "resources\\materials\\builtin-3d-particle.mtl" }, "e02d87d4-e599-4d16-8001-e14891ac6506": { "asset": 1714966328878, - "meta": 1724742460127, + "meta": 1729824828432, "relativePath": "resources\\materials\\builtin-2d-label.mtl" }, "cf7e0bb8-a81c-44a9-ad79-d28d43991032": { "asset": 1714966328878, - "meta": 1724742460127, + "meta": 1729824828435, "relativePath": "resources\\materials\\builtin-clear-stencil.mtl" }, "466d4f9b-e5f4-4ea8-85d5-3c6e9a65658a": { "asset": 1714966328878, - "meta": 1724742460130, + "meta": 1729824828435, "relativePath": "resources\\materials\\builtin-3d-trail.mtl" }, "2a296057-247c-4a1c-bbeb-0548b6c98650": { "asset": 1714966328893, - "meta": 1724742460130, + "meta": 1729824828435, "relativePath": "resources\\materials\\builtin-unlit.mtl" }, "b2687ac4-099e-403c-a192-ff477686f4f5": { "asset": 1714966328752, - "meta": 1724742460151, + "meta": 1729824828460, "relativePath": "particle\\atom.plist" }, "b8223619-7e38-47c4-841f-9160c232495a": { "asset": 1714966328752, - "meta": 1724742460151, + "meta": 1729824828460, "relativePath": "obsolete\\atom.plist" }, "954fec8b-cd16-4bb9-a3b7-7719660e7558": { "asset": 1714966328737, - "meta": 1724742461686, + "meta": 1729824830469, "relativePath": "model\\primitives.fbx" }, "454ad829-851a-40ea-8ab9-941e828357ca": { @@ -939,29 +929,39 @@ "meta": 1724209211325, "relativePath": "Script\\Load.ts" }, - "c5692be7-8703-45e4-9f67-23b54d290356": { - "asset": 1724225484732, - "meta": 1724225501506, - "relativePath": "Script\\module\\Config\\GameConfig.ts" - }, "771a3d9a-4013-4654-a777-fbaea0c93280": { "asset": 1724210553551, "meta": 1724221992898, "relativePath": "Script\\module\\Crypto\\HttpUtil.ts" }, "7290c680-dfdc-4c59-9736-a614cc2a8bcf": { - "asset": 1724229802950, - "meta": 1724742461829, + "asset": 1724747593286, + "meta": 1725446368511, "relativePath": "Script\\module\\Share\\share.ts" }, "805c69df-dfdf-4759-97ae-5a7341f424c7": { - "asset": 1724224643312, - "meta": 1724224644778, + "asset": 1725446355051, + "meta": 1725446368405, "relativePath": "Script\\GameOver.ts" }, "43bfc27a-ff6e-45b3-87c7-504d0f781397": { - "asset": 1724225488107, - "meta": 1724225501619, + "asset": 1725446351034, + "meta": 1725446368575, "relativePath": "Script\\module\\Tool\\GameTool.ts" + }, + "4be67b1d-91ec-42ca-a2e5-d0d1ddf4dd5f": { + "asset": 1729826055065, + "meta": 1729826215581, + "relativePath": "Script\\Sun.ts" + }, + "c5692be7-8703-45e4-9f67-23b54d290356": { + "asset": 1729827204714, + "meta": 1729827205193, + "relativePath": "Script\\module\\Config\\GameConfig.ts" + }, + "b0432040-dbde-438c-839c-ba2b5d18a3b5": { + "asset": 1729836062510, + "meta": 1729841254124, + "relativePath": "Script\\GameManager.ts" } } \ No newline at end of file diff --git a/local/layout.editor.json b/local/layout.editor.json index df068ac..94db6ad 100644 --- a/local/layout.editor.json +++ b/local/layout.editor.json @@ -13,13 +13,13 @@ "type": "dock-h", "children": [ { - "width": 207.28125, + "width": 206.83334350585938, "height": 571, "type": "dock-v", "children": [ { - "width": 207.28125, - "height": 308.13543701171875, + "width": 206.83334350585938, + "height": 307.9895935058594, "type": "panel", "active": 0, "children": [ @@ -27,8 +27,8 @@ ] }, { - "width": 207.28125, - "height": 259.8645935058594, + "width": 206.83334350585938, + "height": 260, "type": "panel", "active": 0, "children": [ @@ -38,7 +38,7 @@ ] }, { - "width": 758.3333740234375, + "width": 758.40625, "height": 571, "type": "panel", "active": 0, @@ -47,7 +47,7 @@ ] }, { - "width": 308.38543701171875, + "width": 308.76043701171875, "height": 571, "type": "panel", "active": 0, @@ -70,10 +70,10 @@ }, "panels": { "builder": { - "x": 512, - "y": 4, - "width": 516, - "height": 674 + "x": 376, + "y": 18, + "width": 520, + "height": 676 }, "project-settings": { "x": -8, @@ -92,6 +92,12 @@ "y": 0, "width": 1016, "height": 672 + }, + "preferences": { + "x": 309, + "y": 4, + "width": 601, + "height": 566 } }, "panelLabelWidth": {} diff --git a/local/local.json b/local/local.json index e8f2361..905405b 100644 --- a/local/local.json +++ b/local/local.json @@ -1,17 +1,17 @@ { - "last-edit": "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d", + "last-edit": "4eaf518b-35ec-4262-928d-4d497c3f2830", "recent-items": [ "40ba7e70-1826-4aa1-92f3-aa63ae39294b", "32254f37-ac95-4912-a787-b8e0429ba0f1", - "3a232388-d8dc-4f79-a1ea-82f6385b7ce2", - "5e515837-650e-4584-a089-e2a025e36c39", - "13110e4f-3587-4e6b-8811-0ca16cac8149", - "d1323772-4ab2-4527-bd20-501fe4fb9723", "774829bb-123e-48b6-930e-6b3e02491506", "2d2f792f-a40c-49bb-a189-ed176a246e49", "2a951e22-b1e0-4155-972d-251ef3fa8f5a", "4b9c5a7e-c645-48a4-9aca-5df381ce4ef5", - "4eaf518b-35ec-4262-928d-4d497c3f2830", - "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d" + "3a232388-d8dc-4f79-a1ea-82f6385b7ce2", + "5e515837-650e-4584-a089-e2a025e36c39", + "13110e4f-3587-4e6b-8811-0ca16cac8149", + "d1323772-4ab2-4527-bd20-501fe4fb9723", + "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d", + "4eaf518b-35ec-4262-928d-4d497c3f2830" ] } diff --git a/local/node-tree-state.json b/local/node-tree-state.json index d19f9d7..0dc6121 100644 --- a/local/node-tree-state.json +++ b/local/node-tree-state.json @@ -171,7 +171,6 @@ "a9Y/TP/QhAdq9i2KGsTC0d", "a1BRwywGFMT6iJxK+nijOf", "7aHA1K+7hE8YNbYjVirEih", - "78pYT7vxBK7YbD2aVkC4Kw", "a5NTB6LZBO4a2Z6RkeebsY", "411Nmuus1J2b6okQS3uSCm", "c1+P7wcW9K3oQyAJA29gUv", @@ -181,7 +180,6 @@ "ecZU+ZNaxJvovWhjTwolW3", "1eUcABlmZJH62rOyXieYFR", "9ah+lyxSVO6Jf1EY5aebLK", - "6bCpWS8ktAfIpBUoWywuvF", "97jJpx7PFP3KaIhLHDBrwq", "beOm6xY9JGcpUIgHepr4za", "05VwVz2ohMvbMUbFxpVLs6", @@ -191,8 +189,6 @@ "50E0EvF9tGWqRoojKDG6C/", "68QXyex9ZCjpGvlESAcHm3", "a7NUURWktGVbn5uaL7RgDc", - "78Sk802p9L/Ip+ZPEFbJnp", - "cfD+6eekJE44Ilk2xG5ORu", "83fdXjJEdM1rCZghbgf9lv", "ddR9GXKuBKg5J0qSoBz++j", "cf4fwLe4hJXLYT5vY7WfC9", @@ -213,6 +209,7 @@ "a5esZu+45LA5mBpvttspPD", "17ShTgeAhDwo3s1DbpMsss", "0aJYZZT5NGTrkFDn1E9SRd", - "f2CmP+tLxPdocwGLXkBfpm" + "f2CmP+tLxPdocwGLXkBfpm", + "eeS/xld09DaIkwXw+zwnnw" ] } diff --git a/settings/project.json b/settings/project.json index cecb215..a4267a2 100644 --- a/settings/project.json +++ b/settings/project.json @@ -1,5 +1,5 @@ { - "last-module-event-record-time": 1723622207819, + "last-module-event-record-time": 1729827212440, "group-list": [ "default" ], diff --git a/temp/BackupAssets/assets/prefab/qiu4.prefab b/temp/BackupAssets/assets/prefab/qiu4.prefab index aa3f1fa..0d24832 100644 --- a/temp/BackupAssets/assets/prefab/qiu4.prefab +++ b/temp/BackupAssets/assets/prefab/qiu4.prefab @@ -13,7 +13,7 @@ }, { "__type__": "cc.Node", - "_name": "qiu1", + "_name": "qiu4", "_objFlags": 0, "_parent": null, "_children": [ diff --git a/temp/quick-scripts/dst/__file_stats__.json b/temp/quick-scripts/dst/__file_stats__.json index 7a09de6..ca40894 100644 --- a/temp/quick-scripts/dst/__file_stats__.json +++ b/temp/quick-scripts/dst/__file_stats__.json @@ -1 +1 @@ -{"version":"1.0.8","stats":{"C:/Work/Project/Sun_moves/temp/quick-scripts/src/__qc_index__.js":"2024-08-27T07:07:42.061Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/RankManager.js":"2024-08-27T07:07:42.034Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Load.js":"2024-08-27T07:07:42.010Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GuideManager.js":"2024-08-27T07:07:42.006Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js":"2024-08-27T07:07:42.022Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Sun.js":"2024-08-27T07:07:42.011Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameOver.js":"2024-08-27T07:07:42.023Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameManager.js":"2024-08-27T07:07:42.025Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/DynamicAtlasManager.js":"2024-08-27T07:07:42.015Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Crypto/HttpUtil.js":"2024-08-27T07:07:42.021Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/RankList/ItemRender.js":"2024-08-27T07:07:42.028Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Notification/Notification.js":"2024-08-27T07:07:42.012Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Music/AudioManager.js":"2024-08-27T07:07:42.014Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js":"2024-08-27T07:07:42.026Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Storage/Storage.js":"2024-08-27T07:07:42.005Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/GameStart/GameAppStart.js":"2024-08-27T07:07:42.017Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Share/share.js":"2024-08-27T07:07:42.019Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Tool/GameTool.js":"2024-08-27T07:07:42.007Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Crypto/crypto-js.min.js":"2024-08-27T07:07:42.033Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/RankList/List.js":"2024-08-27T07:07:42.030Z"}} +{"version":"1.0.8","stats":{"C:/Work/Project/Sun_moves/temp/quick-scripts/src/__qc_index__.js":"2024-10-25T02:53:51.336Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameOver.js":"2024-10-25T02:53:51.292Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js":"2024-10-25T02:53:51.291Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GuideManager.js":"2024-10-25T02:53:51.267Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Load.js":"2024-10-25T02:53:51.273Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/DynamicAtlasManager.js":"2024-10-25T02:53:51.281Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/RankManager.js":"2024-10-25T02:53:51.303Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Sun.js":"2024-10-25T02:53:51.276Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameManager.js":"2024-10-25T02:53:51.294Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Crypto/HttpUtil.js":"2024-10-25T02:53:51.288Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Share/share.js":"2024-10-25T02:53:51.285Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Music/AudioManager.js":"2024-10-25T02:53:51.280Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/GameStart/GameAppStart.js":"2024-10-25T02:53:51.283Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/RankList/ItemRender.js":"2024-10-25T02:53:51.297Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Notification/Notification.js":"2024-10-25T02:53:51.278Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js":"2024-10-25T02:53:51.296Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Tool/GameTool.js":"2024-10-25T02:53:51.270Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Storage/Storage.js":"2024-10-25T02:53:51.264Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/RankList/List.js":"2024-10-25T02:53:51.299Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/module/Crypto/crypto-js.min.js":"2024-10-25T02:53:51.300Z"}} diff --git a/temp/quick-scripts/dst/__qc_bundle__.js b/temp/quick-scripts/dst/__qc_bundle__.js index c602f9b..06a0a99 100644 --- a/temp/quick-scripts/dst/__qc_bundle__.js +++ b/temp/quick-scripts/dst/__qc_bundle__.js @@ -45,7 +45,7 @@ require('./assets/migration/use_v2.1-2.2.1_cc.Toggle_event'); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/RankManager.js'; + var __filename = 'preview-scripts/assets/Script/GameOver.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -53,8 +53,8 @@ require('./assets/migration/use_v2.1-2.2.1_cc.Toggle_event'); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, 'e74a999IDFOabyymZgXQIiy', 'RankManager'); -// Script/RankManager.ts +cc._RF.push(module, '805c6nf399HWZeuWnNB9CTH', 'GameOver'); +// Script/GameOver.ts "use strict"; var __extends = (this && this.__extends) || (function () { @@ -77,235 +77,141 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key, return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports, "__esModule", { value: true }); -var List_1 = require("./module/RankList/List"); var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; -//排行榜 -var RankManager = /** @class */ (function (_super) { - __extends(RankManager, _super); - function RankManager() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.Player = null; - _this.selfNode = null; - _this.phone = null; - return _this; - } - RankManager.prototype.onLoad = function () { - this.init(); - }; - //初始化数据 - RankManager.prototype.init = function () { - this.rankList = cc.find("ScrollView", this.node).getComponent(List_1.default); - this.Player.getChildByName("rank").active = false; - this.listData = []; - this.selfData = null; - this.rankNumber = 100; - this.rankTotal = 100; - this.selfNode.opacity = 0; - }; - RankManager.prototype.start = function () { - this.Player.active = false; - this.getRank(); - }; - //调用获取排行榜接口 - RankManager.prototype.getRank = function () { - var _this = this; - var dataFile = { - length: 100 - }; - cc.fx.GameTool.getRank(dataFile, function (data) { return _this.getRankData(data); }); - }; - //实际设置排行数据 - RankManager.prototype.getRankData = function (data) { - if (data) { - console.log(data); - cc.fx.GameTool.getRankData(data, this, 6); - this.setPic(this.selfData.pic); - } - }; - //返回按钮 - RankManager.prototype.backClick = function () { - cc.director.loadScene("LoadScene"); - }; - //最上方用户动画 - RankManager.prototype.playerAction = function () { - var _this = this; - //-254 377 210 453 - this.Player.getChildByName("rank").active = false; - var time = 1; - this.tween = cc.tween(this.Player) - .to(2, { position: cc.v3(210, 453, 0) }) - .call(function () { - _this.Player.getChildByName("rank").active = true; - _this.Player.getChildByName("rank").getChildByName("number") - .getComponent(cc.Label).string = parseInt(time * 100 + "") + "%"; - }) - .start(); - time = (this.listData.length - this.rankNumber) / this.listData.length; - if (this.listData.length >= 99) { - if (this.rankNumber >= 99) { - time = (Math.random() * 49 + 1) / 100; - var matchId = cc.sys.localStorage.getItem("matchNumber"); - if (matchId == null || matchId == undefined) { - time = 0; - } - } - } - setTimeout(function () { - if (_this.tween) - _this.tween.stop(); - _this.Player.getChildByName("rank").active = true; - _this.Player.getChildByName("rank").getChildByName("number") - .getComponent(cc.Label).string = parseInt(time * 100 + "") + "%"; - }, time * 2000); - }; - //设置头像 处理的逻辑比较多,不用公共类的了 - RankManager.prototype.setPic = function (pic) { - var _this = this; - this.phone.node.parent.getChildByName("icon").active = false; - this.phone.node.active = false; - this.Player.active = true; - this.Player.opacity = 0; - this.Player.getChildByName("mask").getChildByName("icon").active = false; - this.Player.getChildByName("mask").getChildByName("phone").active = false; - fetch(pic) - .then(function (response) { - return response.headers.get('Content-Length'); - }) - .then(function (errNo) { - if (errNo == "5093") { - _this.phone.node.parent.getChildByName("icon").active = true; - _this.Player.getChildByName("mask").getChildByName("icon").active = true; - } - }) - .catch(function (error) { - // console.error('Error fetching X-Info:', error); - }); - var self = this; - cc.assetManager.loadRemote(pic, { ext: '.png' }, function (err, texture) { - self.Player.opacity = 255; - if (texture) { - self.phone.node.active = true; - self.phone.spriteFrame = new cc.SpriteFrame(texture); - self.Player.getChildByName("mask").getChildByName("icon").active = false; - self.Player.getChildByName("mask").getChildByName("phone").active = true; - self.Player.getChildByName("mask").getChildByName("phone").getComponent(cc.Sprite) - .spriteFrame = new cc.SpriteFrame(texture); - setTimeout(function () { - self.playerAction(); - }, 500); - } - else { - self.Player.getChildByName("mask").getChildByName("icon").active = true; - setTimeout(function () { - self.playerAction(); - }, 500); - } - }); - }; - __decorate([ - property(cc.Node) //用户上方头像 - ], RankManager.prototype, "Player", void 0); - __decorate([ - property(cc.Node) //用户最下方个人信息 - ], RankManager.prototype, "selfNode", void 0); - __decorate([ - property(cc.Sprite) //用户头像换图 - ], RankManager.prototype, "phone", void 0); - RankManager = __decorate([ - ccclass - ], RankManager); - return RankManager; -}(cc.Component)); -exports.default = RankManager; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwrQ0FBMEM7QUFDcEMsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFDNUMsS0FBSztBQUVMO0lBQXlDLCtCQUFZO0lBQXJEO1FBQUEscUVBK0hDO1FBN0hHLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixXQUFLLEdBQWMsSUFBSSxDQUFDOztJQXlINUIsQ0FBQztJQWpIRyw0QkFBTSxHQUFOO1FBQ0ksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQyxjQUFJLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUUsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsMkJBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJ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LENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzQyxVQUFVLENBQUM7b0JBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN4QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDWDtpQkFDRztnQkFDQSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDeEUsVUFBVSxDQUFDO29CQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDeEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ1g7UUFFTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUEzSEQ7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFVLFFBQVE7K0NBQ2I7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFVLFdBQVc7aURBQ2Q7SUFFekI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFRLFFBQVE7OENBQ1o7SUFOUCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBK0gvQjtJQUFELGtCQUFDO0NBL0hELEFBK0hDLENBL0h3QyxFQUFFLENBQUMsU0FBUyxHQStIcEQ7a0JBL0hvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCBMaXN0IGZyb20gXCIuL21vZHVsZS9SYW5rTGlzdC9MaXN0XCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6MTAwXHJcbiAgICAgICAgfVxyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rKGRhdGFGaWxlLGRhdGEgPT50aGlzLmdldFJhbmtEYXRhKGRhdGEpKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNik7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGljKHRoaXMuc2VsZkRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+i/lOWbnuaMiemSrlxyXG4gICAgYmFja0NsaWNrKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/mnIDkuIrmlrnnlKjmiLfliqjnlLtcclxuICAgIHBsYXllckFjdGlvbigpe1xyXG4gICAgICAgIC8vLTI1NCAzNzcgIDIxMCA0NTNcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgbGV0IHRpbWUgPSAxO1xyXG4gICAgICAgIHRoaXMudHdlZW4gPSBjYy50d2Vlbih0aGlzLlBsYXllcilcclxuICAgICAgICAudG8oMix7cG9zaXRpb246Y2MudjMoMjEwLDQ1MywwKX0pXHJcbiAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIilcclxuICAgICAgICAgICAgLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gIHBhcnNlSW50KHRpbWUqMTAwICsgXCJcIikgKyBcIiVcIjtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIHRpbWUgPSAodGhpcy5saXN0RGF0YS5sZW5ndGggLSB0aGlzLnJhbmtOdW1iZXIpL3RoaXMubGlzdERhdGEubGVuZ3RoO1xyXG4gICAgICAgIGlmKHRoaXMubGlzdERhdGEubGVuZ3RoID49IDk5KXtcclxuICAgICAgICAgICAgaWYodGhpcy5yYW5rTnVtYmVyID49IDk5KXtcclxuICAgICAgICAgICAgICAgIHRpbWUgPSAoTWF0aC5yYW5kb20oKSo0OSsxKS8xMDBcclxuICAgICAgICAgICAgICAgIHZhciBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hOdW1iZXJcIik7XHJcbiAgICAgICAgICAgICAgICBpZihtYXRjaElkID09IG51bGwgfHwgbWF0Y2hJZCA9PSB1bmRlZmluZWQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0aGlzLnR3ZWVuKXRoaXMudHdlZW4uc3RvcCgpO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpXHJcbiAgICAgICAgICAgIC5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9ICBwYXJzZUludCh0aW1lKjEwMCArIFwiXCIpICsgXCIlXCI7XHJcbiAgICAgICAgfSwgdGltZSoyMDAwKTtcclxuXHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruWktOWDjyAg5aSE55CG55qE6YC76L6R5q+U6L6D5aSa77yM5LiN55So5YWs5YWx57G755qE5LqGXHJcbiAgICBwdWJsaWMgc2V0UGljKHBpYyl7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBmZXRjaChwaWMpXHJcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtTGVuZ3RoJyk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgIGlmKGVyck5vID09IFwiNTA5M1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucGhvbmUubm9kZS5wYXJlbnQuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdmFyIHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGNjLmFzc2V0TWFuYWdlci5sb2FkUmVtb3RlKHBpYywge2V4dDonLnBuZyd9LChlcnIsIHRleHR1cmU6Y2MuVGV4dHVyZTJEKSA9PiB7XHJcbiAgICAgICAgICAgIHNlbGYuUGxheWVyLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRleHR1cmUpe1xyXG4gICAgICAgICAgICAgICAgc2VsZi5waG9uZS5ub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKVxyXG4gICAgICAgICAgICAgICAgLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYucGxheWVyQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICB9LCA1MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/Load.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, '454adgphRpA6oq5lB6Cg1fK', 'Load'); -// Script/Load.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, requireComponent = _a.requireComponent; var NewClass = /** @class */ (function (_super) { __extends(NewClass, _super); function NewClass() { - return _super !== null && _super.apply(this, arguments) || this; + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.count = null; + _this.time = null; + _this.selfNode = null; + _this.one = null; + _this.two = null; + _this.three = null; + _this.four = null; + _this.five = null; + return _this; } + // onLoad () {} NewClass.prototype.start = function () { - window.initMgr(); - // WeChat.setShare(location.href); - cc.fx.GameConfig.init(); - // cc.fx.AudioManager._instance.init(); + this.count.string = cc.fx.GameConfig.GM_INFO.total + ""; + if (cc.fx.GameConfig.GM_INFO.mean_Time > 10) { + cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random() * 10 + "") + 5) / 10; + } + this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + "s"; + this.init(); + }; + //初始化数据 + NewClass.prototype.init = function () { + this.listData = []; + this.selfData = null; + this.one.active = false; + this.two.active = false; + this.three.active = false; + this.four.active = false; + this.five.active = false; var urlNow = window.location.href; if (this.containsTrain(urlNow)) { - console.log("无排行版本"); - this.node.getChildByName("Rank").active = false; + this.node.getChildByName("again").active = false; + this.node.getChildByName("back").active = false; + this.node.getChildByName("finishi").active = true; } else { - console.log("有排行版本"); + this.node.getChildByName("again").active = true; + this.node.getChildByName("back").active = true; + this.node.getChildByName("finishi").active = false; } + this.getRank(); }; - //判断来源 - NewClass.prototype.containsTrain = function (str) { - return /from=train/i.test(str); - }; - //开始游戏,跳转至引导页面 - NewClass.prototype.startGame = function () { - cc.director.loadScene("GuideScene"); - }; - //备用,用来测试跳转 指定关卡 - NewClass.prototype.clickBtn = function (event, data) { - cc.fx.GameConfig.GM_INFO.custom = parseInt(data); - cc.director.loadScene("GameScene"); + //打开排行榜 + 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.openRank = function () { cc.director.loadScene("RankScene"); }; - NewClass.prototype.update = function (dt) { + //重新开始玩 + NewClass.prototype.again = function () { + cc.director.loadScene("GameScene"); }; + //判断来源 + NewClass.prototype.containsTrain = function (str) { + return /from=train/i.test(str); + }; + //获取排行榜 + NewClass.prototype.getRank = function () { + var _this = this; + //获取排行榜数据 所需数据量 + var dataFile = { + length: 5 + }; + cc.fx.GameTool.getRank(dataFile, function (data) { return _this.getRankData(data); }); + }; + //设置排行信息 + NewClass.prototype.getRankData = function (data) { + if (data) { + cc.fx.GameTool.getRankData(data, this, 4); + cc.fx.GameTool.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"), this.selfData.pic); + for (var i = 0; i <= 4; i++) { + this.setRank(i, this.listData[i]); + } + } + }; + //根据内容填充排行榜 + NewClass.prototype.setRank = function (num, data) { + if (!data) { + return; + } + var hitNode = null; + if (num == 0) { + hitNode = this.one; + } + else if (num == 1) { + hitNode = this.two; + } + else if (num == 2) { + hitNode = this.three; + } + else if (num == 3) { + hitNode = this.four; + } + else if (num == 4) { + hitNode = this.five; + } + if (hitNode) { + hitNode.active = true; + data.nickName = cc.fx.GameTool.subName(data.nickName, 4); + hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; + hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; + cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); + } + }; + __decorate([ + property(cc.Label) + ], NewClass.prototype, "count", void 0); + __decorate([ + property(cc.Label) + ], NewClass.prototype, "time", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "selfNode", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "one", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "two", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "three", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "four", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "five", void 0); NewClass = __decorate([ ccclass ], NewClass); @@ -324,7 +230,54 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBRzVEO0lBQXNDLDRCQUFZO0lBQWxEOztJQXFDQSxDQUFDO0lBcENHLHdCQUFLLEdBQUw7UUFDSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsa0NBQWtDO1FBQ2xDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLHVDQUF1QztRQUN2QyxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUM7WUFDMUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ25EO2FBQ0c7WUFDQSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVELE1BQU07SUFDTixnQ0FBYSxHQUFiLFVBQWMsR0FBRztRQUNiLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsY0FBYztJQUNkLDRCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsZ0JBQWdCO0lBQ2hCLDJCQUFRLEdBQVIsVUFBUyxLQUFLLEVBQUMsSUFBSTtRQUNmLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxPQUFPO0lBQ1AsMkJBQVEsR0FBUjtRQUNJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFUyx5QkFBTSxHQUFoQixVQUFpQixFQUFVO0lBQzNCLENBQUM7SUFwQ2dCLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FxQzVCO0lBQUQsZUFBQztDQXJDRCxBQXFDQyxDQXJDcUMsRUFBRSxDQUFDLFNBQVMsR0FxQ2pEO2tCQXJDb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlQ2hhdCB9IGZyb20gXCIuL21vZHVsZS9TaGFyZS9zaGFyZVwiO1xyXG5cclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5LCByZXF1aXJlQ29tcG9uZW50fSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgd2luZG93LmluaXRNZ3IoKTtcclxuICAgICAgICAvLyBXZUNoYXQuc2V0U2hhcmUobG9jYXRpb24uaHJlZik7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5pbml0KCk7XHJcbiAgICAgICAgLy8gY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5pbml0KCk7XHJcbiAgICAgICAgdmFyIHVybE5vdyA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xyXG4gICAgICAgIGlmKHRoaXMuY29udGFpbnNUcmFpbih1cmxOb3cpKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCLml6DmjpLooYzniYjmnKxcIik7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlJhbmtcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJ5o6S6KGM54mI5pysXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvL+WIpOaWreadpea6kFxyXG4gICAgY29udGFpbnNUcmFpbihzdHIpIHtcclxuICAgICAgICByZXR1cm4gL2Zyb209dHJhaW4vaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvIDlp4vmuLjmiI/vvIzot7Povazoh7PlvJXlr7zpobXpnaJcclxuICAgIHN0YXJ0R2FtZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkd1aWRlU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+Wkh+eUqO+8jOeUqOadpea1i+ivlei3s+i9rCDmjIflrprlhbPljaFcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5jdXN0b20gPSBwYXJzZUludChkYXRhKTtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9ICAgXHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByb3RlY3RlZCB1cGRhdGUoZHQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgfVxyXG59XHJcbiJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUcxQztJQUFzQyw0QkFBWTtJQUFsRDtRQUFBLHFFQWtIQztRQWhIRyxXQUFLLEdBQWEsSUFBSSxDQUFDO1FBRXZCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFFdEIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixTQUFHLEdBQVksSUFBSSxDQUFDO1FBRXBCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsV0FBSyxHQUFZLElBQUksQ0FBQztRQUV0QixVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBWSxJQUFJLENBQUM7O0lBa0d6QixDQUFDO0lBL0ZHLGVBQWU7SUFDZix3QkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDeEQsSUFBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFBQztZQUN2QyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFBO1NBQzVFO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsdUJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDbEMsSUFBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFDO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1NBQ3JEO2FBQ0c7WUFDQSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztTQUN0RDtRQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsT0FBTztJQUNQLDhCQUFXLEdBQVg7UUFDSSxJQUFJLEdBQUcsR0FBRyx1Q0FBdUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUM5RixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7SUFDL0IsQ0FBQztJQUNELE9BQU87SUFDUCwyQkFBUSxHQUFSO1FBQ0ksRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELE9BQU87SUFDUCx3QkFBSyxHQUFMO1FBQ0ksRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELE1BQU07SUFDTixnQ0FBYSxHQUFiLFVBQWMsR0FBRztRQUNiLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsT0FBTztJQUNQLDBCQUFPLEdBQVA7UUFBQSxpQkFNQztRQUxHLGdCQUFnQjtRQUNoQixJQUFJLFFBQVEsR0FBRztZQUNYLE1BQU0sRUFBQyxDQUFDO1NBQ1gsQ0FBQTtRQUNBLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUMsVUFBQSxJQUFJLElBQUcsT0FBQSxLQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUF0QixDQUFzQixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUNELFFBQVE7SUFDUiw4QkFBVyxHQUFYLFVBQVksSUFBSTtRQUNaLElBQUcsSUFBSSxFQUFDO1lBQ0gsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksRUFBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JHLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFDLENBQUMsSUFBRSxDQUFDLEVBQUMsQ0FBQyxFQUFFLEVBQUM7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNwQztTQUNKO0lBQ0wsQ0FBQztJQUNELFdBQVc7SUFDWCwwQkFBTyxHQUFQLFVBQVEsR0FBRyxFQUFDLElBQUk7UUFDWixJQUFHLENBQUMsSUFBSSxFQUFDO1lBQ0wsT0FBTztTQUNWO1FBQ0QsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUcsR0FBRyxJQUFJLENBQUMsRUFBQztZQUNSLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3RCO2FBQ0ksSUFBRyxHQUFHLElBQUksQ0FBQyxFQUFDO1lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDdEI7YUFDSSxJQUFHLEdBQUcsSUFBSSxDQUFDLEVBQUM7WUFDYixPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUN4QjthQUNJLElBQUcsR0FBRyxJQUFJLENBQUMsRUFBQztZQUNiLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3ZCO2FBQ0ksSUFBRyxHQUFHLElBQUksQ0FBQyxFQUFDO1lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDdkI7UUFDRCxJQUFHLE9BQU8sRUFBQztZQUNQLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekQsT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNsRixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pGO0lBQ0wsQ0FBQztJQS9HRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDOzJDQUNJO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7MENBQ0c7SUFFdEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs4Q0FDTztJQUV6QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNFO0lBRXBCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7eUNBQ0U7SUFFcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDSTtJQUV0QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MENBQ0c7SUFoQkosUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQWtINUI7SUFBRCxlQUFDO0NBbEhELEFBa0hDLENBbEhxQyxFQUFFLENBQUMsU0FBUyxHQWtIakQ7a0JBbEhvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgY291bnQ6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBvbmU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0d286IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0aHJlZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGZvdXI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmaXZlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGxpc3REYXRhOiBhbnk7XHJcbiAgICBzZWxmRGF0YTogYW55O1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5jb3VudC5zdHJpbmcgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKyBcIlwiO1xyXG4gICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPiAxMCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSArIFwic1wiO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5vbmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50d28uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50aHJlZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZvdXIuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5maXZlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHZhciB1cmxOb3cgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcclxuICAgICAgICBpZih0aGlzLmNvbnRhaW5zVHJhaW4odXJsTm93KSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJiYWNrXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJmaW5pc2hpXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJhY2tcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiZmluaXNoaVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAganVtcEZpbmlzaGkoKXtcclxuICAgICAgICBsZXQgdXJsID0gXCJodHRwczovL3RyYWluLnNwYXJrdXMuY24vcG9zdGVyL2dhbWUvXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc2NvZGUgKyBcIj9zdWM9MVwiO1xyXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgfVxyXG4gICAgLy/miZPlvIDmjpLooYzmppxcclxuICAgIG9wZW5SYW5rKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiUmFua1NjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ph43mlrDlvIDlp4vnjqlcclxuICAgIGFnYWluKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3mnaXmupBcclxuICAgIGNvbnRhaW5zVHJhaW4oc3RyKSB7XHJcbiAgICAgICAgcmV0dXJuIC9mcm9tPXRyYWluL2kudGVzdChzdHIpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bmjpLooYzmppxcclxuICAgIGdldFJhbmsoKXtcclxuICAgICAgICAvL+iOt+WPluaOkuihjOamnOaVsOaNriAg5omA6ZyA5pWw5o2u6YePXHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6NVxyXG4gICAgICAgIH1cclxuICAgICAgICAgY2MuZnguR2FtZVRvb2wuZ2V0UmFuayhkYXRhRmlsZSxkYXRhID0+dGhpcy5nZXRSYW5rRGF0YShkYXRhKSk7XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruaOkuihjOS/oeaBr1xyXG4gICAgZ2V0UmFua0RhdGEoZGF0YSl7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNCk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD00O2krKyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFJhbmsoaSx0aGlzLmxpc3REYXRhW2ldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5qC55o2u5YaF5a655aGr5YWF5o6S6KGM5qacXHJcbiAgICBzZXRSYW5rKG51bSxkYXRhKXtcclxuICAgICAgICBpZighZGF0YSl7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdmFyIGhpdE5vZGUgPSBudWxsO1xyXG4gICAgICAgIGlmKG51bSA9PSAwKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudHdvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudGhyZWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDMpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5mb3VyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSA0KXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMuZml2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoaGl0Tm9kZSl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgIGRhdGEubmlja05hbWUgPSBjYy5meC5HYW1lVG9vbC5zdWJOYW1lKGRhdGEubmlja05hbWUsNCk7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gZGF0YS5uaWNrTmFtZTtcclxuICAgICAgICAgICAgaGl0Tm9kZS5nZXRDaGlsZEJ5TmFtZShcInRvdGFsXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gZGF0YS50b3RhbFN1bkNvdW50O1xyXG4gICAgICAgICAgICAgY2MuZnguR2FtZVRvb2wuc2V0UGljKGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLGRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbn1cclxuIl19 +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.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, '7a231Rz0d9LBYYgY3bDYlLB', 'use_v2.1-2.2.1_cc.Toggle_event'); +// migration/use_v2.1-2.2.1_cc.Toggle_event.js + +"use strict"; + +/* + * This script is automatically generated by Cocos Creator and is only used for projects compatible with the v2.1.0 ~ 2.2.1 version. + * You do not need to manually add this script in any other project. + * If you don't use cc.Toggle in your project, you can delete this script directly. + * If your project is hosted in VCS such as git, submit this script together. + * + * 此脚本由 Cocos Creator 自动生成,仅用于兼容 v2.1.0 ~ 2.2.1 版本的工程, + * 你无需在任何其它项目中手动添加此脚本。 + * 如果你的项目中没用到 Toggle,可直接删除该脚本。 + * 如果你的项目有托管于 git 等版本库,请将此脚本一并上传。 + */ +if (cc.Toggle) { + // Whether to trigger 'toggle' and 'checkEvents' events when modifying 'toggle.isChecked' in the code + // 在代码中修改 'toggle.isChecked' 时是否触发 'toggle' 与 'checkEvents' 事件 + cc.Toggle._triggerEventInScript_isChecked = true; +} + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcbWlncmF0aW9uXFx1c2VfdjIuMS0yLjIuMV9jYy5Ub2dnbGVfZXZlbnQuanMiXSwibmFtZXMiOlsiY2MiLCJUb2dnbGUiLCJfdHJpZ2dlckV2ZW50SW5TY3JpcHRfaXNDaGVja2VkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxJQUFJQSxFQUFFLENBQUNDLE1BQVAsRUFBZTtBQUNYO0FBQ0E7QUFDQUQsRUFBQUEsRUFBRSxDQUFDQyxNQUFILENBQVVDLCtCQUFWLEdBQTRDLElBQTVDO0FBQ0giLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFRoaXMgc2NyaXB0IGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IENvY29zIENyZWF0b3IgYW5kIGlzIG9ubHkgdXNlZCBmb3IgcHJvamVjdHMgY29tcGF0aWJsZSB3aXRoIHRoZSB2Mi4xLjAg772eIDIuMi4xIHZlcnNpb24uXHJcbiAqIFlvdSBkbyBub3QgbmVlZCB0byBtYW51YWxseSBhZGQgdGhpcyBzY3JpcHQgaW4gYW55IG90aGVyIHByb2plY3QuXHJcbiAqIElmIHlvdSBkb24ndCB1c2UgY2MuVG9nZ2xlIGluIHlvdXIgcHJvamVjdCwgeW91IGNhbiBkZWxldGUgdGhpcyBzY3JpcHQgZGlyZWN0bHkuXHJcbiAqIElmIHlvdXIgcHJvamVjdCBpcyBob3N0ZWQgaW4gVkNTIHN1Y2ggYXMgZ2l0LCBzdWJtaXQgdGhpcyBzY3JpcHQgdG9nZXRoZXIuXHJcbiAqXHJcbiAqIOatpOiEmuacrOeUsSBDb2NvcyBDcmVhdG9yIOiHquWKqOeUn+aIkO+8jOS7heeUqOS6juWFvOWuuSB2Mi4xLjAgfiAyLjIuMSDniYjmnKznmoTlt6XnqIvvvIxcclxuICog5L2g5peg6ZyA5Zyo5Lu75L2V5YW25a6D6aG555uu5Lit5omL5Yqo5re75Yqg5q2k6ISa5pys44CCXHJcbiAqIOWmguaenOS9oOeahOmhueebruS4reayoeeUqOWIsCBUb2dnbGXvvIzlj6/nm7TmjqXliKDpmaTor6XohJrmnKzjgIJcclxuICog5aaC5p6c5L2g55qE6aG555uu5pyJ5omY566h5LqOIGdpdCDnrYnniYjmnKzlupPvvIzor7flsIbmraTohJrmnKzkuIDlubbkuIrkvKDjgIJcclxuICovXHJcblxyXG5pZiAoY2MuVG9nZ2xlKSB7XHJcbiAgICAvLyBXaGV0aGVyIHRvIHRyaWdnZXIgJ3RvZ2dsZScgYW5kICdjaGVja0V2ZW50cycgZXZlbnRzIHdoZW4gbW9kaWZ5aW5nICd0b2dnbGUuaXNDaGVja2VkJyBpbiB0aGUgY29kZVxyXG4gICAgLy8g5Zyo5Luj56CB5Lit5L+u5pS5ICd0b2dnbGUuaXNDaGVja2VkJyDml7bmmK/lkKbop6blj5EgJ3RvZ2dsZScg5LiOICdjaGVja0V2ZW50cycg5LqL5Lu2XHJcbiAgICBjYy5Ub2dnbGUuX3RyaWdnZXJFdmVudEluU2NyaXB0X2lzQ2hlY2tlZCA9IHRydWU7XHJcbn1cclxuIl19 //------QC-SOURCE-SPLIT------ (function() { @@ -710,7 +663,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js'; + var __filename = 'preview-scripts/assets/Script/Load.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -718,27 +671,75 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, '7a231Rz0d9LBYYgY3bDYlLB', 'use_v2.1-2.2.1_cc.Toggle_event'); -// migration/use_v2.1-2.2.1_cc.Toggle_event.js +cc._RF.push(module, '454adgphRpA6oq5lB6Cg1fK', 'Load'); +// Script/Load.ts "use strict"; - -/* - * This script is automatically generated by Cocos Creator and is only used for projects compatible with the v2.1.0 ~ 2.2.1 version. - * You do not need to manually add this script in any other project. - * If you don't use cc.Toggle in your project, you can delete this script directly. - * If your project is hosted in VCS such as git, submit this script together. - * - * 此脚本由 Cocos Creator 自动生成,仅用于兼容 v2.1.0 ~ 2.2.1 版本的工程, - * 你无需在任何其它项目中手动添加此脚本。 - * 如果你的项目中没用到 Toggle,可直接删除该脚本。 - * 如果你的项目有托管于 git 等版本库,请将此脚本一并上传。 - */ -if (cc.Toggle) { - // Whether to trigger 'toggle' and 'checkEvents' events when modifying 'toggle.isChecked' in the code - // 在代码中修改 'toggle.isChecked' 时是否触发 'toggle' 与 'checkEvents' 事件 - cc.Toggle._triggerEventInScript_isChecked = true; -} +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, requireComponent = _a.requireComponent; +var NewClass = /** @class */ (function (_super) { + __extends(NewClass, _super); + function NewClass() { + return _super !== null && _super.apply(this, arguments) || this; + } + NewClass.prototype.start = function () { + window.initMgr(); + // WeChat.setShare(location.href); + cc.fx.GameConfig.init(); + // cc.fx.AudioManager._instance.init(); + var urlNow = window.location.href; + if (this.containsTrain(urlNow)) { + console.log("无排行版本"); + this.node.getChildByName("Rank").active = false; + } + else { + console.log("有排行版本"); + } + }; + //判断来源 + NewClass.prototype.containsTrain = function (str) { + return /from=train/i.test(str); + }; + //开始游戏,跳转至引导页面 + NewClass.prototype.startGame = function () { + cc.director.loadScene("GuideScene"); + }; + //备用,用来测试跳转 指定关卡 + NewClass.prototype.clickBtn = function (event, data) { + cc.fx.GameConfig.GM_INFO.custom = parseInt(data); + cc.director.loadScene("GameScene"); + }; + //打开排行榜 + NewClass.prototype.openRank = function () { + cc.director.loadScene("RankScene"); + }; + NewClass.prototype.update = function (dt) { + }; + NewClass = __decorate([ + ccclass + ], NewClass); + return NewClass; +}(cc.Component)); +exports.default = NewClass; cc._RF.pop(); } @@ -751,7 +752,235 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcbWlncmF0aW9uXFx1c2VfdjIuMS0yLjIuMV9jYy5Ub2dnbGVfZXZlbnQuanMiXSwibmFtZXMiOlsiY2MiLCJUb2dnbGUiLCJfdHJpZ2dlckV2ZW50SW5TY3JpcHRfaXNDaGVja2VkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxJQUFJQSxFQUFFLENBQUNDLE1BQVAsRUFBZTtBQUNYO0FBQ0E7QUFDQUQsRUFBQUEsRUFBRSxDQUFDQyxNQUFILENBQVVDLCtCQUFWLEdBQTRDLElBQTVDO0FBQ0giLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFRoaXMgc2NyaXB0IGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IENvY29zIENyZWF0b3IgYW5kIGlzIG9ubHkgdXNlZCBmb3IgcHJvamVjdHMgY29tcGF0aWJsZSB3aXRoIHRoZSB2Mi4xLjAg772eIDIuMi4xIHZlcnNpb24uXHJcbiAqIFlvdSBkbyBub3QgbmVlZCB0byBtYW51YWxseSBhZGQgdGhpcyBzY3JpcHQgaW4gYW55IG90aGVyIHByb2plY3QuXHJcbiAqIElmIHlvdSBkb24ndCB1c2UgY2MuVG9nZ2xlIGluIHlvdXIgcHJvamVjdCwgeW91IGNhbiBkZWxldGUgdGhpcyBzY3JpcHQgZGlyZWN0bHkuXHJcbiAqIElmIHlvdXIgcHJvamVjdCBpcyBob3N0ZWQgaW4gVkNTIHN1Y2ggYXMgZ2l0LCBzdWJtaXQgdGhpcyBzY3JpcHQgdG9nZXRoZXIuXHJcbiAqXHJcbiAqIOatpOiEmuacrOeUsSBDb2NvcyBDcmVhdG9yIOiHquWKqOeUn+aIkO+8jOS7heeUqOS6juWFvOWuuSB2Mi4xLjAgfiAyLjIuMSDniYjmnKznmoTlt6XnqIvvvIxcclxuICog5L2g5peg6ZyA5Zyo5Lu75L2V5YW25a6D6aG555uu5Lit5omL5Yqo5re75Yqg5q2k6ISa5pys44CCXHJcbiAqIOWmguaenOS9oOeahOmhueebruS4reayoeeUqOWIsCBUb2dnbGXvvIzlj6/nm7TmjqXliKDpmaTor6XohJrmnKzjgIJcclxuICog5aaC5p6c5L2g55qE6aG555uu5pyJ5omY566h5LqOIGdpdCDnrYnniYjmnKzlupPvvIzor7flsIbmraTohJrmnKzkuIDlubbkuIrkvKDjgIJcclxuICovXHJcblxyXG5pZiAoY2MuVG9nZ2xlKSB7XHJcbiAgICAvLyBXaGV0aGVyIHRvIHRyaWdnZXIgJ3RvZ2dsZScgYW5kICdjaGVja0V2ZW50cycgZXZlbnRzIHdoZW4gbW9kaWZ5aW5nICd0b2dnbGUuaXNDaGVja2VkJyBpbiB0aGUgY29kZVxyXG4gICAgLy8g5Zyo5Luj56CB5Lit5L+u5pS5ICd0b2dnbGUuaXNDaGVja2VkJyDml7bmmK/lkKbop6blj5EgJ3RvZ2dsZScg5LiOICdjaGVja0V2ZW50cycg5LqL5Lu2XHJcbiAgICBjYy5Ub2dnbGUuX3RyaWdnZXJFdmVudEluU2NyaXB0X2lzQ2hlY2tlZCA9IHRydWU7XHJcbn1cclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBRzVEO0lBQXNDLDRCQUFZO0lBQWxEOztJQXFDQSxDQUFDO0lBcENHLHdCQUFLLEdBQUw7UUFDSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsa0NBQWtDO1FBQ2xDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLHVDQUF1QztRQUN2QyxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUM7WUFDMUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ25EO2FBQ0c7WUFDQSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVELE1BQU07SUFDTixnQ0FBYSxHQUFiLFVBQWMsR0FBRztRQUNiLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsY0FBYztJQUNkLDRCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsZ0JBQWdCO0lBQ2hCLDJCQUFRLEdBQVIsVUFBUyxLQUFLLEVBQUMsSUFBSTtRQUNmLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxPQUFPO0lBQ1AsMkJBQVEsR0FBUjtRQUNJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFUyx5QkFBTSxHQUFoQixVQUFpQixFQUFVO0lBQzNCLENBQUM7SUFwQ2dCLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FxQzVCO0lBQUQsZUFBQztDQXJDRCxBQXFDQyxDQXJDcUMsRUFBRSxDQUFDLFNBQVMsR0FxQ2pEO2tCQXJDb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlQ2hhdCB9IGZyb20gXCIuL21vZHVsZS9TaGFyZS9zaGFyZVwiO1xyXG5cclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5LCByZXF1aXJlQ29tcG9uZW50fSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgd2luZG93LmluaXRNZ3IoKTtcclxuICAgICAgICAvLyBXZUNoYXQuc2V0U2hhcmUobG9jYXRpb24uaHJlZik7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5pbml0KCk7XHJcbiAgICAgICAgLy8gY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5pbml0KCk7XHJcbiAgICAgICAgdmFyIHVybE5vdyA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xyXG4gICAgICAgIGlmKHRoaXMuY29udGFpbnNUcmFpbih1cmxOb3cpKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCLml6DmjpLooYzniYjmnKxcIik7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlJhbmtcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJ5o6S6KGM54mI5pysXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvL+WIpOaWreadpea6kFxyXG4gICAgY29udGFpbnNUcmFpbihzdHIpIHtcclxuICAgICAgICByZXR1cm4gL2Zyb209dHJhaW4vaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvIDlp4vmuLjmiI/vvIzot7Povazoh7PlvJXlr7zpobXpnaJcclxuICAgIHN0YXJ0R2FtZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkd1aWRlU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+Wkh+eUqO+8jOeUqOadpea1i+ivlei3s+i9rCDmjIflrprlhbPljaFcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5jdXN0b20gPSBwYXJzZUludChkYXRhKTtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9ICAgXHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByb3RlY3RlZCB1cGRhdGUoZHQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgfVxyXG59XHJcbiJdfQ== +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/DynamicAtlasManager.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, '5c9b8FZiaNLMrMDs9T3rByf', 'DynamicAtlasManager'); +// Script/DynamicAtlasManager.js + +"use strict"; + +cc.Class({ + "extends": cc.Component, + properties: {}, + onLoad: function onLoad() { + cc.dynamicAtlasManager.enabled = false; + } +}); + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxEeW5hbWljQXRsYXNNYW5hZ2VyLmpzIl0sIm5hbWVzIjpbImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwib25Mb2FkIiwiZHluYW1pY0F0bGFzTWFuYWdlciIsImVuYWJsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUFBLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ0wsYUFBU0QsRUFBRSxDQUFDRSxTQURQO0FBR0xDLEVBQUFBLFVBQVUsRUFBRSxFQUhQO0FBTUxDLEVBQUFBLE1BTkssb0JBTUs7QUFDTkosSUFBQUEsRUFBRSxDQUFDSyxtQkFBSCxDQUF1QkMsT0FBdkIsR0FBaUMsS0FBakM7QUFDSDtBQVJJLENBQVQiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImNjLkNsYXNzKHtcclxuICAgIGV4dGVuZHM6IGNjLkNvbXBvbmVudCxcclxuXHJcbiAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICB9LFxyXG5cclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgY2MuZHluYW1pY0F0bGFzTWFuYWdlci5lbmFibGVkID0gZmFsc2U7XHJcbiAgICB9LFxyXG59KTtcclxuIl19 +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/RankManager.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, 'e74a999IDFOabyymZgXQIiy', 'RankManager'); +// Script/RankManager.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 List_1 = require("./module/RankList/List"); +var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; +//排行榜 +var RankManager = /** @class */ (function (_super) { + __extends(RankManager, _super); + function RankManager() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.Player = null; + _this.selfNode = null; + _this.phone = null; + return _this; + } + RankManager.prototype.onLoad = function () { + this.init(); + }; + //初始化数据 + RankManager.prototype.init = function () { + this.rankList = cc.find("ScrollView", this.node).getComponent(List_1.default); + this.Player.getChildByName("rank").active = false; + this.listData = []; + this.selfData = null; + this.rankNumber = 100; + this.rankTotal = 100; + this.selfNode.opacity = 0; + }; + RankManager.prototype.start = function () { + this.Player.active = false; + this.getRank(); + }; + //调用获取排行榜接口 + RankManager.prototype.getRank = function () { + var _this = this; + var dataFile = { + length: 100 + }; + cc.fx.GameTool.getRank(dataFile, function (data) { return _this.getRankData(data); }); + }; + //实际设置排行数据 + RankManager.prototype.getRankData = function (data) { + if (data) { + console.log(data); + cc.fx.GameTool.getRankData(data, this, 6); + this.setPic(this.selfData.pic); + } + }; + //返回按钮 + RankManager.prototype.backClick = function () { + cc.director.loadScene("LoadScene"); + }; + //最上方用户动画 + RankManager.prototype.playerAction = function () { + var _this = this; + //-254 377 210 453 + this.Player.getChildByName("rank").active = false; + var time = 1; + this.tween = cc.tween(this.Player) + .to(2, { position: cc.v3(210, 453, 0) }) + .call(function () { + _this.Player.getChildByName("rank").active = true; + _this.Player.getChildByName("rank").getChildByName("number") + .getComponent(cc.Label).string = parseInt(time * 100 + "") + "%"; + }) + .start(); + time = (this.listData.length - this.rankNumber) / this.listData.length; + if (this.listData.length >= 99) { + if (this.rankNumber >= 99) { + time = (Math.random() * 49 + 1) / 100; + var matchId = cc.sys.localStorage.getItem("matchNumber"); + if (matchId == null || matchId == undefined) { + time = 0; + } + } + } + setTimeout(function () { + if (_this.tween) + _this.tween.stop(); + _this.Player.getChildByName("rank").active = true; + _this.Player.getChildByName("rank").getChildByName("number") + .getComponent(cc.Label).string = parseInt(time * 100 + "") + "%"; + }, time * 2000); + }; + //设置头像 处理的逻辑比较多,不用公共类的了 + RankManager.prototype.setPic = function (pic) { + var _this = this; + this.phone.node.parent.getChildByName("icon").active = false; + this.phone.node.active = false; + this.Player.active = true; + this.Player.opacity = 0; + this.Player.getChildByName("mask").getChildByName("icon").active = false; + this.Player.getChildByName("mask").getChildByName("phone").active = false; + fetch(pic) + .then(function (response) { + return response.headers.get('Content-Length'); + }) + .then(function (errNo) { + if (errNo == "5093") { + _this.phone.node.parent.getChildByName("icon").active = true; + _this.Player.getChildByName("mask").getChildByName("icon").active = true; + } + }) + .catch(function (error) { + // console.error('Error fetching X-Info:', error); + }); + var self = this; + cc.assetManager.loadRemote(pic, { ext: '.png' }, function (err, texture) { + self.Player.opacity = 255; + if (texture) { + self.phone.node.active = true; + self.phone.spriteFrame = new cc.SpriteFrame(texture); + self.Player.getChildByName("mask").getChildByName("icon").active = false; + self.Player.getChildByName("mask").getChildByName("phone").active = true; + self.Player.getChildByName("mask").getChildByName("phone").getComponent(cc.Sprite) + .spriteFrame = new cc.SpriteFrame(texture); + setTimeout(function () { + self.playerAction(); + }, 500); + } + else { + self.Player.getChildByName("mask").getChildByName("icon").active = true; + setTimeout(function () { + self.playerAction(); + }, 500); + } + }); + }; + __decorate([ + property(cc.Node) //用户上方头像 + ], RankManager.prototype, "Player", void 0); + __decorate([ + property(cc.Node) //用户最下方个人信息 + ], RankManager.prototype, "selfNode", void 0); + __decorate([ + property(cc.Sprite) //用户头像换图 + ], RankManager.prototype, "phone", void 0); + RankManager = __decorate([ + ccclass + ], RankManager); + return RankManager; +}(cc.Component)); +exports.default = RankManager; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwrQ0FBMEM7QUFDcEMsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFDNUMsS0FBSztBQUVMO0lBQXlDLCtCQUFZO0lBQXJEO1FBQUEscUVBK0hDO1FBN0hHLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixXQUFLLEdBQWMsSUFBSSxDQUFDOztJQXlINUIsQ0FBQztJQWpIRyw0QkFBTSxHQUFOO1FBQ0ksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQyxjQUFJLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUUsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsMkJBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELFdBQVc7SUFDWCw2QkFBTyxHQUFQO1FBQUEsaUJBS0M7UUFKRyxJQUFJLFFBQVEsR0FBRztZQUNYLE1BQU0sRUFBQyxHQUFHO1NBQ2IsQ0FBQTtRQUNBLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUMsVUFBQSxJQUFJLElBQUcsT0FBQSxLQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUF0QixDQUFzQixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUNELFVBQVU7SUFDVixpQ0FBVyxHQUFYLFVBQVksSUFBSTtRQUNaLElBQUcsSUFBSSxFQUFDO1lBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqQixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFDLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDbEM7SUFDTCxDQUFDO0lBQ0QsTUFBTTtJQUNOLCtCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsU0FBUztJQUNULGtDQUFZLEdBQVo7UUFBQSxpQkE2QkM7UUE1QkcsbUJBQW1CO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDakMsRUFBRSxDQUFDLENBQUMsRUFBQyxFQUFDLFFBQVEsRUFBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQzthQUNqQyxJQUFJLENBQUM7WUFDRixLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ2pELEtBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUM7aUJBQzFELFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFJLFFBQVEsQ0FBQyxJQUFJLEdBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUNwRSxDQUFDLENBQUM7YUFDRCxLQUFLLEVBQUUsQ0FBQztRQUNULElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNyRSxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFBQztZQUMxQixJQUFHLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxFQUFDO2dCQUNyQixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUMsRUFBRSxHQUFDLENBQUMsQ0FBQyxHQUFDLEdBQUcsQ0FBQTtnQkFDL0IsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUN6RCxJQUFHLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxJQUFJLFNBQVMsRUFBQztvQkFDdkMsSUFBSSxHQUFHLENBQUMsQ0FBQztpQkFDWjthQUNKO1NBQ0o7UUFDRCxVQUFVLENBQUM7WUFDUCxJQUFHLEtBQUksQ0FBQyxLQUFLO2dCQUFDLEtBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDaEMsS0FBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNqRCxLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO2lCQUMxRCxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBSSxRQUFRLENBQUMsSUFBSSxHQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7UUFDcEUsQ0FBQyxFQUFFLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsQixDQUFDO0lBQ0Qsd0JBQXdCO0lBQ2pCLDRCQUFNLEdBQWIsVUFBYyxHQUFHO1FBQWpCLGlCQTBDQztRQXpDRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDN0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzFFLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVCxJQUFJLENBQUMsVUFBQSxRQUFRO1lBQ1YsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxVQUFBLEtBQUs7WUFDUCxJQUFHLEtBQUssSUFBSSxNQUFNLEVBQUM7Z0JBQ2YsS0FBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUM1RCxLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzthQUMzRTtRQUNMLENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxVQUFBLEtBQUs7WUFDUixrREFBa0Q7UUFDdEQsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUM7UUFDaEIsRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUMsR0FBRyxFQUFDLE1BQU0sRUFBQyxFQUFDLFVBQUMsR0FBRyxFQUFFLE9BQW9CO1lBQ25FLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztZQUMxQixJQUFHLE9BQU8sRUFBQztnQkFDUCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO2dCQUN6RSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDekUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDO3FCQUNqRixXQUFXLEdBQUcsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzQyxVQUFVLENBQUM7b0JBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN4QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDWDtpQkFDRztnQkFDQSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDeEUsVUFBVSxDQUFDO29CQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDeEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ1g7UUFFTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUEzSEQ7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFVLFFBQVE7K0NBQ2I7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFVLFdBQVc7aURBQ2Q7SUFFekI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFRLFFBQVE7OENBQ1o7SUFOUCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBK0gvQjtJQUFELGtCQUFDO0NBL0hELEFBK0hDLENBL0h3QyxFQUFFLENBQUMsU0FBUyxHQStIcEQ7a0JBL0hvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCBMaXN0IGZyb20gXCIuL21vZHVsZS9SYW5rTGlzdC9MaXN0XCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6MTAwXHJcbiAgICAgICAgfVxyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rKGRhdGFGaWxlLGRhdGEgPT50aGlzLmdldFJhbmtEYXRhKGRhdGEpKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNik7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGljKHRoaXMuc2VsZkRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+i/lOWbnuaMiemSrlxyXG4gICAgYmFja0NsaWNrKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/mnIDkuIrmlrnnlKjmiLfliqjnlLtcclxuICAgIHBsYXllckFjdGlvbigpe1xyXG4gICAgICAgIC8vLTI1NCAzNzcgIDIxMCA0NTNcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgbGV0IHRpbWUgPSAxO1xyXG4gICAgICAgIHRoaXMudHdlZW4gPSBjYy50d2Vlbih0aGlzLlBsYXllcilcclxuICAgICAgICAudG8oMix7cG9zaXRpb246Y2MudjMoMjEwLDQ1MywwKX0pXHJcbiAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIilcclxuICAgICAgICAgICAgLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gIHBhcnNlSW50KHRpbWUqMTAwICsgXCJcIikgKyBcIiVcIjtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIHRpbWUgPSAodGhpcy5saXN0RGF0YS5sZW5ndGggLSB0aGlzLnJhbmtOdW1iZXIpL3RoaXMubGlzdERhdGEubGVuZ3RoO1xyXG4gICAgICAgIGlmKHRoaXMubGlzdERhdGEubGVuZ3RoID49IDk5KXtcclxuICAgICAgICAgICAgaWYodGhpcy5yYW5rTnVtYmVyID49IDk5KXtcclxuICAgICAgICAgICAgICAgIHRpbWUgPSAoTWF0aC5yYW5kb20oKSo0OSsxKS8xMDBcclxuICAgICAgICAgICAgICAgIHZhciBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hOdW1iZXJcIik7XHJcbiAgICAgICAgICAgICAgICBpZihtYXRjaElkID09IG51bGwgfHwgbWF0Y2hJZCA9PSB1bmRlZmluZWQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0aGlzLnR3ZWVuKXRoaXMudHdlZW4uc3RvcCgpO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpXHJcbiAgICAgICAgICAgIC5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9ICBwYXJzZUludCh0aW1lKjEwMCArIFwiXCIpICsgXCIlXCI7XHJcbiAgICAgICAgfSwgdGltZSoyMDAwKTtcclxuXHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruWktOWDjyAg5aSE55CG55qE6YC76L6R5q+U6L6D5aSa77yM5LiN55So5YWs5YWx57G755qE5LqGXHJcbiAgICBwdWJsaWMgc2V0UGljKHBpYyl7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBmZXRjaChwaWMpXHJcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtTGVuZ3RoJyk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgIGlmKGVyck5vID09IFwiNTA5M1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucGhvbmUubm9kZS5wYXJlbnQuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdmFyIHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGNjLmFzc2V0TWFuYWdlci5sb2FkUmVtb3RlKHBpYywge2V4dDonLnBuZyd9LChlcnIsIHRleHR1cmU6Y2MuVGV4dHVyZTJEKSA9PiB7XHJcbiAgICAgICAgICAgIHNlbGYuUGxheWVyLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRleHR1cmUpe1xyXG4gICAgICAgICAgICAgICAgc2VsZi5waG9uZS5ub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKVxyXG4gICAgICAgICAgICAgICAgLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYucGxheWVyQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICB9LCA1MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -797,6 +1026,7 @@ var NewClass = /** @class */ (function (_super) { } // onLoad () {} NewClass.prototype.start = function () { + this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this); }; //初始化数据 NewClass.prototype.init = function (_id, color, speed, repeat) { @@ -821,9 +1051,16 @@ var NewClass = /** @class */ (function (_super) { if (type == true) this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; }; + //计算两点之间直线距离 + NewClass.prototype.distanceBetweenTwoPoints = function (x1, y1, x2, y2) { + return Math.sqrt(Math.pow((x2 - x1), 2) + Math.pow((y2 - y1), 2)); + }; //点击事件 NewClass.prototype.clickBtn = function (event, data) { - if (data === "1") { + var pos = this.node.convertToNodeSpaceAR(event.getLocation()); + var distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0); + distance = Math.floor(distance * 10) / 10; + if (this.node.name != "qiu4") { if (this.move == false && this.touch == true) { if (this.node.parent.parent.name == "GameNode") { if (this.node.parent.parent.getComponent("GameManager").begin == true) { @@ -836,13 +1073,15 @@ var NewClass = /** @class */ (function (_super) { .start(); this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_1 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_1); } } else { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_2 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_2); } } } @@ -850,7 +1089,8 @@ var NewClass = /** @class */ (function (_super) { if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_3 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_3); } } }; @@ -872,195 +1112,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,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NkJBQ2pCLEtBQUssRUFBRSxDQUFDO3dCQUNULElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO3dCQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7cUJBQ3ZEO2lCQUNKO3FCQUNHO29CQUNBLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO29CQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3ZEO2FBRUo7U0FDSjthQUNHO1lBQ0EsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUM7Z0JBQ3pGLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2dCQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDdkQ7U0FDSjtJQUNMLENBQUM7SUFwRWdCLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FxRTVCO0lBQUQsZUFBQztDQXJFRCxBQXFFQyxDQXJFcUMsRUFBRSxDQUFDLFNBQVMsR0FxRWpEO2tCQXJFb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgaWRfTnVtYmVyOm51bWJlclxyXG4gICAgX3NwZWVkOm51bWJlclxyXG4gICAgX2NvbG9yOm51bWJlclxyXG4gICAgdG91Y2g6Ym9vbGVhblxyXG4gICAgX3JlcGVhdDpib29sZWFuXHJcbiAgICBtb3ZlOmJvb2xlYW5cclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoX2lkLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgdGhpcy50b3VjaCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pZF9OdW1iZXIgID0gX2lkO1xyXG4gICAgICAgIHRoaXMuX2NvbG9yID0gY29sb3I7XHJcbiAgICAgICAgdGhpcy5fc3BlZWQgPSBzcGVlZDtcclxuICAgICAgICB0aGlzLl9yZXBlYXQgPSByZXBlYXQ7XHJcbiAgICAgICAgLy/lpKrpmLPliqjnlLtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaGFuXCIpKVxyXG4gICAgICAgIC5yZXBlYXRGb3JldmVyKFxyXG4gICAgICAgICAgICBjYy50d2VlbigpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjAsc2NhbGU6MC41LH0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjI1NSxzY2FsZToxLjJ9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC41KVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v55So5LqO5L2c5byKIOa1i+ivlVxyXG4gICAgc2hvd051bWJlcih0eXBlKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIikuYWN0aXZlID0gdHlwZTtcclxuICAgICAgICBpZih0eXBlID09IHRydWUpXHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuaWRfTnVtYmVyICsgXCJcIjtcclxuICAgIH1cclxuICAgIC8v54K55Ye75LqL5Lu2XHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBpZihkYXRhID09PSBcIjFcIil7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLm1vdmUgPT0gZmFsc2UgJiYgdGhpcy50b3VjaCA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50Lm5hbWUgPT0gXCJHYW1lTm9kZVwiKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHYW1lTWFuYWdlclwiKS5iZWdpbiA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYWN0aW9uXCIpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjAsc2NhbGU6MS44fSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIix0aGlzLmlkX051bWJlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMuZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYoIHRoaXMudG91Y2ggPT0gdHJ1ZSAmJiB0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHdWlkZU1hbmFnZXJcIikuYmVnaW4gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuekluZGV4ID0gLTE7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5Ob3RpZmljYXRpb25zLmVtaXQoXCJjbGlja1N1blwiLHRoaXMuaWRfTnVtYmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= -//------QC-SOURCE-SPLIT------ - - (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.selfNode = null; - _this.one = null; - _this.two = null; - _this.three = null; - _this.four = null; - _this.five = null; - return _this; - } - // onLoad () {} - NewClass.prototype.start = function () { - this.count.string = cc.fx.GameConfig.GM_INFO.total + ""; - if (cc.fx.GameConfig.GM_INFO.mean_Time > 10) { - cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random() * 10 + "") + 5) / 10; - } - this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + "s"; - this.init(); - }; - //初始化数据 - NewClass.prototype.init = function () { - this.listData = []; - this.selfData = null; - this.one.active = false; - this.two.active = false; - this.three.active = false; - this.four.active = false; - this.five.active = false; - var urlNow = window.location.href; - if (this.containsTrain(urlNow)) { - this.node.getChildByName("again").active = false; - this.node.getChildByName("back").active = false; - this.node.getChildByName("finishi").active = true; - } - else { - this.node.getChildByName("again").active = true; - this.node.getChildByName("back").active = true; - this.node.getChildByName("finishi").active = false; - } - this.getRank(); - }; - //打开排行榜 - 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.openRank = function () { - cc.director.loadScene("RankScene"); - }; - //重新开始玩 - NewClass.prototype.again = function () { - cc.director.loadScene("GameScene"); - }; - //判断来源 - NewClass.prototype.containsTrain = function (str) { - return /from=train/i.test(str); - }; - //获取排行榜 - NewClass.prototype.getRank = function () { - var _this = this; - //获取排行榜数据 所需数据量 - var dataFile = { - length: 5 - }; - cc.fx.GameTool.getRank(dataFile, function (data) { return _this.getRankData(data); }); - }; - //设置排行信息 - NewClass.prototype.getRankData = function (data) { - if (data) { - cc.fx.GameTool.getRankData(data, this, 4); - cc.fx.GameTool.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"), this.selfData.pic); - for (var i = 0; i <= 4; i++) { - this.setRank(i, this.listData[i]); - } - } - }; - //根据内容填充排行榜 - NewClass.prototype.setRank = function (num, data) { - var hitNode = null; - if (num == 0) { - hitNode = this.one; - } - else if (num == 1) { - hitNode = this.two; - } - else if (num == 2) { - hitNode = this.three; - } - else if (num == 3) { - hitNode = this.four; - } - else if (num == 4) { - hitNode = this.five; - } - if (hitNode) { - hitNode.active = true; - cc.fx.GameTool.subName(data.nickName, 4); - hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; - hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; - cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); - } - }; - __decorate([ - property(cc.Label) - ], NewClass.prototype, "count", void 0); - __decorate([ - property(cc.Label) - ], NewClass.prototype, "time", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "selfNode", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "one", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "two", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "three", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "four", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "five", 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUcxQztJQUFzQyw0QkFBWTtJQUFsRDtRQUFBLHFFQStHQztRQTdHRyxXQUFLLEdBQWEsSUFBSSxDQUFDO1FBRXZCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFFdEIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixTQUFHLEdBQVksSUFBSSxDQUFDO1FBRXBCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsV0FBSyxHQUFZLElBQUksQ0FBQztRQUV0QixVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBWSxJQUFJLENBQUM7O0lBK0Z6QixDQUFDO0lBNUZHLGVBQWU7SUFDZix3QkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDeEQsSUFBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFBQztZQUN2QyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFBO1NBQzVFO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUks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QyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNsRixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pGO0lBQ0wsQ0FBQztJQTVHRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDOzJDQUNJO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7MENBQ0c7SUFFdEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs4Q0FDTztJQUV6QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNFO0lBRXBCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7eUNBQ0U7SUFFcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDSTtJQUV0QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MENBQ0c7SUFoQkosUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQStHNUI7SUFBRCxlQUFDO0NBL0dELEFBK0dDLENBL0dxQyxFQUFFLENBQUMsU0FBUyxHQStHakQ7a0JBL0dvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgY291bnQ6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBvbmU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0d286IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0aHJlZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGZvdXI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmaXZlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGxpc3REYXRhOiBhbnk7XHJcbiAgICBzZWxmRGF0YTogYW55O1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5jb3VudC5zdHJpbmcgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKyBcIlwiO1xyXG4gICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPiAxMCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSArIFwic1wiO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5vbmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50d28uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50aHJlZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZvdXIuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5maXZlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHZhciB1cmxOb3cgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcclxuICAgICAgICBpZih0aGlzLmNvbnRhaW5zVHJhaW4odXJsTm93KSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJiYWNrXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJmaW5pc2hpXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJhY2tcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiZmluaXNoaVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAganVtcEZpbmlzaGkoKXtcclxuICAgICAgICBsZXQgdXJsID0gXCJodHRwczovL3RyYWluLnNwYXJrdXMuY24vcG9zdGVyL2dhbWUvXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc2NvZGUgKyBcIj9zdWM9MVwiO1xyXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgfVxyXG4gICAgLy/miZPlvIDmjpLooYzmppxcclxuICAgIG9wZW5SYW5rKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiUmFua1NjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ph43mlrDlvIDlp4vnjqlcclxuICAgIGFnYWluKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3mnaXmupBcclxuICAgIGNvbnRhaW5zVHJhaW4oc3RyKSB7XHJcbiAgICAgICAgcmV0dXJuIC9mcm9tPXRyYWluL2kudGVzdChzdHIpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bmjpLooYzmppxcclxuICAgIGdldFJhbmsoKXtcclxuICAgICAgICAvL+iOt+WPluaOkuihjOamnOaVsOaNriAg5omA6ZyA5pWw5o2u6YePXHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6NVxyXG4gICAgICAgIH1cclxuICAgICAgICAgY2MuZnguR2FtZVRvb2wuZ2V0UmFuayhkYXRhRmlsZSxkYXRhID0+dGhpcy5nZXRSYW5rRGF0YShkYXRhKSk7XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruaOkuihjOS/oeaBr1xyXG4gICAgZ2V0UmFua0RhdGEoZGF0YSl7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNCk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD00O2krKyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFJhbmsoaSx0aGlzLmxpc3REYXRhW2ldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5qC55o2u5YaF5a655aGr5YWF5o6S6KGM5qacXHJcbiAgICBzZXRSYW5rKG51bSxkYXRhKXtcclxuICAgICAgICB2YXIgaGl0Tm9kZSA9IG51bGw7XHJcbiAgICAgICAgaWYobnVtID09IDApe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy50d287XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy50aHJlZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUgPSB0aGlzLmZvdXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDQpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5maXZlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihoaXROb2RlKXtcclxuICAgICAgICAgICAgaGl0Tm9kZS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgY2MuZnguR2FtZVRvb2wuc3ViTmFtZShkYXRhLm5pY2tOYW1lLDQpO1xyXG4gICAgICAgICAgICBoaXROb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZVwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IGRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IGRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgIGNjLmZ4LkdhbWVUb29sLnNldFBpYyhoaXROb2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKSxkYXRhLnBpYyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgIFxyXG59XHJcbiJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztvQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLElBQUksTUFBSSxHQUFHLEVBQUMsRUFBRSxFQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxDQUFDO29CQUNqRCxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQUksQ0FBQyxDQUFDO2lCQUM3QzthQUVKO1NBQ0o7YUFDRztZQUNBLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFDO2dCQUN6RixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztnQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLElBQUksTUFBSSxHQUFHLEVBQUMsRUFBRSxFQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxDQUFDO2dCQUNqRCxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQUksQ0FBQyxDQUFDO2FBQzdDO1NBQ0o7SUFDTCxDQUFDO0lBL0VnQixRQUFRO1FBRDVCLE9BQU87T0FDYSxRQUFRLENBZ0Y1QjtJQUFELGVBQUM7Q0FoRkQsQUFnRkMsQ0FoRnFDLEVBQUUsQ0FBQyxTQUFTLEdBZ0ZqRDtrQkFoRm9CLFFBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5fSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIGlkX051bWJlcjpudW1iZXJcclxuICAgIF9zcGVlZDpudW1iZXJcclxuICAgIF9jb2xvcjpudW1iZXJcclxuICAgIHRvdWNoOmJvb2xlYW5cclxuICAgIF9yZXBlYXQ6Ym9vbGVhblxyXG4gICAgbW92ZTpib29sZWFuXHJcbiAgICAvLyBvbkxvYWQgKCkge31cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLm5vZGUub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfU1RBUlQsIHRoaXMuY2xpY2tCdG4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoX2lkLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgdGhpcy50b3VjaCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pZF9OdW1iZXIgID0gX2lkO1xyXG4gICAgICAgIHRoaXMuX2NvbG9yID0gY29sb3I7XHJcbiAgICAgICAgdGhpcy5fc3BlZWQgPSBzcGVlZDtcclxuICAgICAgICB0aGlzLl9yZXBlYXQgPSByZXBlYXQ7XHJcbiAgICAgICAgLy/lpKrpmLPliqjnlLtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaGFuXCIpKVxyXG4gICAgICAgIC5yZXBlYXRGb3JldmVyKFxyXG4gICAgICAgICAgICBjYy50d2VlbigpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjAsc2NhbGU6MC41LH0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjI1NSxzY2FsZToxLjJ9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC41KVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v55So5LqO5L2c5byKIOa1i+ivlVxyXG4gICAgc2hvd051bWJlcih0eXBlKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIikuYWN0aXZlID0gdHlwZTtcclxuICAgICAgICBpZih0eXBlID09IHRydWUpXHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuaWRfTnVtYmVyICsgXCJcIjtcclxuICAgIH1cclxuICAgIC8v6K6h566X5Lik54K55LmL6Ze055u057q/6Led56a7XHJcbiAgICBkaXN0YW5jZUJldHdlZW5Ud29Qb2ludHMoeDE6IG51bWJlciwgeTE6IG51bWJlciwgeDI6IG51bWJlciwgeTI6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIE1hdGguc3FydCgoeDIgLSB4MSkgKiogMiArICh5MiAtIHkxKSAqKiAyKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75LqL5Lu2XHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBsZXQgcG9zID0gdGhpcy5ub2RlLmNvbnZlcnRUb05vZGVTcGFjZUFSKGV2ZW50LmdldExvY2F0aW9uKCkpO1xyXG4gICAgICAgIGxldCBkaXN0YW5jZSA9IHRoaXMuZGlzdGFuY2VCZXR3ZWVuVHdvUG9pbnRzKHBvcy54LCAwLCBwb3MueSwgMCk7XHJcbiAgICAgICAgZGlzdGFuY2UgPSBNYXRoLmZsb29yKGRpc3RhbmNlKjEwKS8xMDtcclxuICAgICAgICBpZih0aGlzLm5vZGUubmFtZSAhPSBcInFpdTRcIil7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLm1vdmUgPT0gZmFsc2UgJiYgdGhpcy50b3VjaCA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50Lm5hbWUgPT0gXCJHYW1lTm9kZVwiKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHYW1lTWFuYWdlclwiKS5iZWdpbiA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYWN0aW9uXCIpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjAsc2NhbGU6MS44fSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGEgPSB7aWQ6dGhpcy5pZF9OdW1iZXIsZGlzdGFuY2U6ZGlzdGFuY2V9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5Ob3RpZmljYXRpb25zLmVtaXQoXCJjbGlja1N1blwiLGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IHtpZDp0aGlzLmlkX051bWJlcixkaXN0YW5jZTpkaXN0YW5jZX07XHJcbiAgICAgICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIixkYXRhKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLnRvdWNoID09IHRydWUgJiYgdGhpcy5ub2RlLnBhcmVudC5wYXJlbnQuZ2V0Q29tcG9uZW50KFwiR3VpZGVNYW5hZ2VyXCIpLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgbGV0IGRhdGEgPSB7aWQ6dGhpcy5pZF9OdW1iZXIsZGlzdGFuY2U6ZGlzdGFuY2V9O1xyXG4gICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIixkYXRhKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= //------QC-SOURCE-SPLIT------ (function() { @@ -1309,6 +1361,7 @@ var GameManager = /** @class */ (function (_super) { this.ball_Array[k].removeFromParent(); this.ball_Array[k] = null; } + cc.fx.GameConfig.GM_INFO.gap = []; }; //点击太阳执行方法 GameManager.prototype.clickSun = function (data) { @@ -1318,12 +1371,13 @@ var GameManager = /** @class */ (function (_super) { var clickTime = cc.fx.GameTool.getTime(); this.time_Array.push((clickTime - this.timeStart)); this.timeStart = cc.fx.GameTool.getTime(); - if (data == this.clickNow) { + if (data.id == this.clickNow) { cc.fx.AudioManager._instance.playAudioButton(); if (this.clickNow > 0) { this.createLine(cc.v2(this.ball_Array[this.clickNow - 1].x, this.ball_Array[this.clickNow - 1].y), cc.v2(this.ball_Array[this.clickNow].x, this.ball_Array[this.clickNow].y), 0.2); } this.clickNow += 1; + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); if (this.ball_Array[this.clickNow - 1]) this.ball_Array[this.clickNow - 1].getChildByName("guang").active = false; if (this.clickNow == this.now_Array.length) { @@ -1378,7 +1432,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -1412,12 +1467,12 @@ var GameManager = /** @class */ (function (_super) { } } else { - this.setLoss(); + this.setLoss(data); } } }; //执行失败 - GameManager.prototype.setLoss = function () { + GameManager.prototype.setLoss = function (data) { cc.fx.AudioManager._instance.playWarning(); this.begin = false; this.overTime = cc.fx.GameTool.getTime(); @@ -1453,6 +1508,7 @@ var GameManager = /** @class */ (function (_super) { sunArray.push(0); } } + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); cc.fx.GameConfig.CLICK_DATA = { type: 1, @@ -1467,7 +1523,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -2002,7 +2059,7 @@ var GameManager = /** @class */ (function (_super) { this.begin = false; this.over = true; this.unschedule(this.updateCountDownTime); - this.setLoss(); + this.setLoss({ distance: 0 }); var time = 0; if (this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time / this.clickCount + ""); @@ -2089,45 +2146,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUE0NUJDO1FBMTVCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBcTNCaEMsQ0FBQztJQTkyQkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNw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LENBQUM7WUFDTCxJQUFJLEdBQUcsT0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDMUMsVUFBVSxDQUFDO2dCQUNQLElBQUcsS0FBSSxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUM7b0JBQ2xCLElBQUksSUFBSSxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN2QyxJQUFHLElBQUksR0FBRyxHQUFHO3dCQUFFLElBQUksR0FBRyxHQUFHLENBQUM7b0JBQzFCLElBQUcsQ0FBQyxJQUFJLENBQUMsRUFBQzt3QkFDTixJQUFHLEtBQUksQ0FBQyxJQUFJLElBQUksS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBQzs0QkFDOUIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3RixLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQzt5QkFDaEM7cUJBQ0o7b0JBRUQsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDO3lCQUNsQixFQUFFLENBQUMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUMsSUFBSSxFQUFDLEVBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO3lCQUM3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QUFDO1lBQUUsVUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsUUFBUTtRQUNSLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsR0FBQyxTQUFTLENBQUMsTUFBTSxFQUFDLENBQUMsRUFBRSxFQUFDO1lBQ2hDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUFHLEdBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakksSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxHQUFDLFNBQVMsQ0FBQztZQUMvRyxJQUFJLEdBQUcsRUFBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxTQUFTLENBQUMsU0FBUyxFQUFDLE1B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QUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hFO0lBQ0wsQ0FBQztJQUNELDhCQUFRLEdBQVI7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELCtCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsNEJBQU0sR0FBTixVQUFRLEVBQUU7SUFDVixDQUFDO0lBejVCRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzZDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7NkNBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzs2Q0FDRztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBNDVCL0I7SUFBRCxrQkFBQztDQTU1QkQsQUE0NUJDLENBNTVCd0MsRUFBRSxDQUFDLFNBQVMsR0E0NUJwRDtrQkE1NUJvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHYW1lTWFuYWdlciBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGJhbGw6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTE6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUzOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIGxpbmVQcmVmYWI6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGhpdDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzE6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgYmcyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIGJlZ2luOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBmdWh1bzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgb3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgc2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgY291bnRUaW1lOm51bWJlcjtcclxuICAgIHRpbWVDb3VudDpudW1iZXI7XHJcbiAgICBmaXRUb3A6bnVtYmVyO1xyXG4gICAgZml0Qm90Om51bWJlcjtcclxuICAgIGxldmVsOm51bWJlcjtcclxuICAgIGNsaWNrTm93Om51bWJlcjtcclxuICAgIHN0YXJ0VGltZTpudW1iZXI7XHJcbiAgICBvdmVyVGltZTpudW1iZXI7XHJcbiAgICB3aW5UaW1lOm51bWJlcjtcclxuICAgIGNsaWNrQ291bnQ6bnVtYmVyO1xyXG4gICAgdGltZVN0YXJ0Om51bWJlcjtcclxuICAgIHJvdXRlX0FycmF5OiBhbnlbXTtcclxuICAgIG5vd19BcnJheTogYW55W107XHJcbiAgICBiYWxsX0FycmF5OiBhbnlbXTtcclxuICAgIExpbmVfQXJyYXk6IGFueVtdO1xyXG4gICAgUG9zX0FycmF5OiBhbnlbXTtcclxuICAgIHRpbWVfQXJyYXk6IGFueVtdO1xyXG4gICAgY29sb3JfQXJyYXk6IGFueVtdO1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgbGV2ZWxMYWJlbDogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgc3RhdGljIF9pbnN0YW5jZTogYW55O1xyXG4gICAgbW92ZUFycmF5OiBudW1iZXJbXTtcclxuICAgIHJlcGVhdDogbnVtYmVyO1xyXG4gICAgbnVtYmVyUmVwZWF0OiBudW1iZXI7XHJcbiAgICByb3VuZDogbnVtYmVyO1xyXG4gICAgcGF1c2U6IGJvb2xlYW47XHJcbiAgICBvbkxvYWQgKCkge31cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLmZpdCgpO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS56SW5kZXggPSAxMDA7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5iYWxsLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLmJnMSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJnMVwiKTtcclxuICAgICAgICB0aGlzLmJnMiA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJnMlwiKTtcclxuICAgICAgICB0aGlzLnRpbWUgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJUb3BcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0aW1lXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5vdmVyID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yb3VuZCA9IDA7IFxyXG4gICAgICAgIHRoaXMubGV2ZWwgPSAyO1xyXG4gICAgICAgIHRoaXMuY291bnRUaW1lID0gNjA7XHJcbiAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAgICAgdGhpcy5sZXZlbCA9IGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSArPSAxO1xyXG4gICAgICAgICAgICB0aGlzLmNvdW50VGltZSA9IDEyMDAwMDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgdGhpcy50aW1lQ291bnQgPSAwLjE7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy5jbGlja0NvdW50ID0gMDtcclxuICAgICAgICB0aGlzLnRpbWVTdGFydCA9IDA7XHJcbiAgICAgICAgdGhpcy5yZXBlYXQgPSAtMTtcclxuICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm1vdmVBcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubm93X0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5iYWxsX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HQU1FX0RBVEEgPSBbXTtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy50b3RhbCA9IDA7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSA9IDA7XHJcbiAgICAgICAgdGhpcy5zY2hlZHVsZSh0aGlzLnVwZGF0ZUNvdW50RG93blRpbWUsMSk7XHJcbiAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgIH1cclxuICAgIC8v5qC55o2u5piv5ZCm5YWo6Z2i5bGP77yM5YGa54us56uL6YCC6YWN5pa56Z2iXHJcbiAgICBmaXQoKXtcclxuICAgICAgICB0aGlzLmZpdFRvcCA9IDQ1MDsgIC8vNjAwXHJcbiAgICAgICAgdGhpcy5maXRCb3QgPSAtNjAwOyAvLy03MDBcclxuICAgICAgICB2YXIgamcgPSB0aGlzLnNldEZpdCgpO1xyXG4gICAgICAgIGlmKCFqZyl7XHJcbiAgICAgICAgICAgIHRoaXMuZml0VG9wID0gNjAwO1xyXG4gICAgICAgICAgICB0aGlzLmZpdEJvdCA9IC03MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY9cclxuICAgIGdldFNldFNjcmVlblJlc29sdXRpb25GbGFnICgpIHtcclxuICAgICAgICBsZXQgc2l6ZSA9IGNjLndpblNpemU7XHJcbiAgICAgICAgbGV0IHdpZHRoID0gc2l6ZS53aWR0aDtcclxuICAgICAgICBsZXQgaGVpZ2h0ID0gc2l6ZS5oZWlnaHQ7XHJcbiAgICAgICAgaWYgKChoZWlnaHQgLyB3aWR0aCkgPiAoMTYuMiAvIDkpKSByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICAvL+WIpOaWreWFqOmdouWxj+mAgumFjVxyXG4gICAgc2V0Rml0ICgpIHtcclxuICAgICAgICBsZXQgZmxhZyA9IHRoaXMuZ2V0U2V0U2NyZWVuUmVzb2x1dGlvbkZsYWcoKTtcclxuICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmbGFnO1xyXG4gICAgfVxyXG4gICAgLy/ov5Tlm57pppbpobVcclxuICAgIGJhY2tTY2VuZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkxvYWRTY2VuZVwiKTtcclxuICAgIH1cclxuICAgIC8v5LiL5LiA5YWz77yM5oiW6ICF6YeN5paw5byA5aeL77yM5oiW6ICF6L+U5Zue5LiK5LiA5YWz77yM5qC55o2ubGV2ZWzlhrPlrppcclxuICAgIHJlU3RhcnQodHlwZSl7XHJcbiAgICAgICAgLy8gaWYoY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9ICBjYy5meC5HYW1lVG9vbC5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgIHRoaXMudGltZV9BcnJheS5wdXNoKChjbGlja1RpbWUgLSB0aGlzLnRpbWVTdGFydCkpXHJcbiAgICAgICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgaWYoZGF0YSA9PSB0aGlzLmNsaWNrTm93KXtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkF1ZGlvTWFuYWdlci5faW5zdGFuY2UucGxheUF1ZGlvQnV0dG9uKCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLngsdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ddLngsdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ddLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgIDAuMik7ICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNsaWNrTm93ICs9IDE7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS5nZXRDaGlsZEJ5TmFtZShcImd1YW5nXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja05vdyA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy50b3RhbCArPSB0aGlzLmNsaWNrTm93O1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3ZlclRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuc3RhcnRUaW1lID4gMCAmJiB0aGlzLm92ZXJUaW1lID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHdpbiA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIldpblwiKTtcclxuICAgICAgICAgICAgICAgICAgICB3aW4uYWN0aXZlID0gdHJ1ZTsgd2luLnNldFNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4LkF1ZGlvTWFuYWdlci5faW5zdGFuY2UucGxheVdpbigpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91bmQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgc3VuQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheS5sZW5ndGggPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMubW92ZUFycmF5Lmxlbmd0aDttKyspe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYobSA9PSB0aGlzLnJlcGVhdCB8fCBtID09IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKHRoaXMubW92ZUFycmF5W21dKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDttKyspe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYobSA9PSB0aGlzLnJlcGVhdCB8fCBtID09IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZU51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1blNwZWVkOmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVTcGVlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXBTdW5Db3VudDpjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID4gNTApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPSA1MDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc3VjY2VzcyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZXZlbCArPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NMZXZlbCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5omn6KGM5aSx6LSlXHJcbiAgICBzZXRMb3NzKCl7XHJcbiAgICAgICAgY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5wbGF5V2FybmluZygpO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgaWYoZmluaXNoX3RpbWUgPiA1OCkgZmluaXNoX3RpbWUgPSA1ODtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEgPSBcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgc3VjY2VzczpmYWxzZSxcclxuICAgICAgICAgICAgcm91bmQ6dGhpcy5yb3VuZCxcclxuICAgICAgICAgICAgdG90YWxTdW5Db3VudDp0aGlzLm5vd19BcnJheS5sZW5ndGgsXHJcbiAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZU51bWJlcixcclxuICAgICAgICAgICAgc3VuU3BlZWQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ucmVwZWF0LFxyXG4gICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgZHVyYXRpb246ZmluaXNoX3RpbWUvMTAsXHJcbiAgICAgICAgICAgIGRpZmZpY3VsdHlMZXZlbDp0aGlzLmxldmVsLFxyXG4gICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICBzdGVwVGltZUxpc3Q6dGhpcy50aW1lX0FycmF5LFxyXG4gICAgICAgICAgICByZW1haW5kZXI6dGhpcy5jb3VudFRpbWVcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID4gNTApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPSA1MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgaWYodGhpcy5mdWh1byA9PSB0cnVlKXtcclxuICAgICAgICAgICAgdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgxKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPiAyKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgLT0gMTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBvdmVyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiT3ZlclwiKTtcclxuICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgIC50bygwLjI1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMTUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjEse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+a4uOaIj1xyXG4gICAgc3RhcnRHYW1lKCl7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID4gMCl7XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVN1bigpO1xyXG4gICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKDAuNSx7b3BhY2l0eToyNTUsc2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpKrpmLPov5DooYzliqjnlLvvvIzku6Xlj4rlkI7pnaLnp7vliqjliqjnlLtcclxuICAgIHJ1bkdhbWUoKXtcclxuICAgICAgICBsZXQgdGltZSA9IC02NTA7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5ub3dfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aW1lID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZSoxMDAwICsgdGltZTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZUNvdW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRlbXAgPiAwLjUpIHRlbXAgPSAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoaSAhPSAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsICYmIHRoaXMubm93X0FycmF5W2ldKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSksY2MudjIodGhpcy5ub3dfQXJyYXlbaV0ueCx0aGlzLm5vd19BcnJheVtpXS55KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aGlzLm5vd19BcnJheVtpXS50aW1lLXRlbXAse3g6dGhpcy5ub3dfQXJyYXlbaV0ueCx5OnRoaXMubm93X0FycmF5W2ldLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjEse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlQmFsbChpLHRoaXMubm93X0FycmF5W2ldLmNvbG9yLHRoaXMubm93X0FycmF5W2ldLnNwZWVkLHRoaXMubm93X0FycmF5W2ldLnJlcGVhdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGkgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoIC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJlZ2luR2FtZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXI8MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LCB0aW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruenu+WKqOmHjeWPoOaVsOaNrlxyXG4gICAgY3JlYXRlTW92ZSgpe1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/mlLnlj5jnp7vliqjpgJ/luqZcclxuICAgICAgICB2YXIgc3BlZWQgPSA3O1xyXG4gICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICBzcGVlZCA9IDcgLSBpbmZvLm1vdmVTcGVlZC8yO1xyXG4gICAgICAgIH0gIFxyXG4gICAgICAgIGlmKGluZm8ubW92ZU51bWJlciA+IDApe1xyXG4gICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgLy/lj6/np7vliqjljLrliIZcclxuICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICBmb3IobGV0IGsgPTA7IGs8dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO2srKyl7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheVtrXT09MSAmJiAoayA9PSB0aGlzLnJlcGVhdCB8fCBrID09IHRoaXMubnVtYmVyUmVwZWF0KSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYobSAhPSBrICYmIHRoaXMubW92ZUFycmF5W21dID09IDAgJiYgbSE9IHRoaXMucmVwZWF0ICYmIG0hPSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtICA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBsYXN0TnVtYmVyID0gMDtcclxuICAgICAgICAgICAgLy/plIHlrprmnIDlkI7kuIDkuKrlj6/np7vliqjnmoRcclxuICAgICAgICAgICAgZm9yKGxldCBqID0wOyBqPG1vdmVBcnJheS5sZW5ndGg7aisrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtqXT09MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdE51bWJlciA9IGo7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBpID0wOyBpPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtpXSA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IGxhc3ROdW1iZXIpeyAgICAvL+WmguaenOS4jeaYr+acgOWQjuS4gOS4quenu+WKqOeahFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHNwZWVkKnRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksdGhpcy5Qb3NfQXJyYXlbaV0ueCx0aGlzLlBvc19BcnJheVtpXS55LDMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlbaV0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50byh0aW1lLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVtpXX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAvL+WmguaenOaYr+acgOWQjuS4gOS4qlxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+avj+asoemHjeaWsOW8gOWni+aWsOS4gOi9ruWEv+a4uOaIj1xyXG4gICAgYmVnaW5HYW1lKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgLy8gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8v5Yib5bu65aSq6Ziz5omA6ZyA5pWw5o2uXHJcbiAgICBjcmVhdGVTdW4oKXtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgbGV0IHRpZW1PdXQgPSAwO1xyXG4gICAgICAgIGZvcihsZXQgbD0wOyBsPGxldmVsRGF0YS5udW1iZXI7bCsrKXtcclxuICAgICAgICAgICAgdGllbU91dCArPSAxO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBvcyA9IHRoaXMuZ2V0UG9zKGZhbHNlLGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5LnB1c2gocG9zKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLlBvc19BcnJheS5sZW5ndGggPT0gbGV2ZWxEYXRhLm51bWJlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVBvcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH0sIHRpZW1PdXQqMTAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs+S9jee9ru+8jOminOiJsuS/oeaBr+etieaVsOaNrlxyXG4gICAgY3JlYXRlUG9zKCl7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7eDp0aGlzLmJhbGwueCx5OnRoaXMuYmFsbC55LHRpbWU6MCx0aW1lQ291bnQ6MCxjb2xvcjowLHNwZWVkOjAscmVwZWF0OmZhbHNlfTtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGpnO1xyXG4gICAgfVxyXG4gICAgLy/lkb3kuK3liqjnlLtcclxuICAgIGhpdEFjdGlvbihkYXRhKXtcclxuICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSB0cnVlOyB0aGlzLmhpdC5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvblxyXG4gICAgICAgIHRoaXMuaGl0LnNldFBvc2l0aW9uKHRoaXMuYmFsbF9BcnJheVtkYXRhXS54KzM1LHRoaXMuYmFsbF9BcnJheVtkYXRhXS55KzM1KTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmhpdClcclxuICAgICAgICAudG8oMCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC50bygwLjIse3Bvc2l0aW9uOmNjLnYzKHRoaXMuaGl0LngtMzUsdGhpcy5oaXQueS0zNSwwKX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDlpKrpmLNcclxuICAgIGNyZWF0ZUJhbGwobnVtYmVyLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgbGV0IGJhbGwgPSBudWxsO1xyXG4gICAgICAgIGlmKGNvbG9yID09IDApYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1MSk7XHJcbiAgICAgICAgZWxzZSBpZihjb2xvciA9PSAxKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTIpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMiliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUzKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMubm93X0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/plIDmr4Hov57nur9cclxuICAgIGRlc3Ryb3lMaW5lKCkge1xyXG4gICAgICAgIGZvcihsZXQgaSA9MDsgaTwgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbi5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgaWYodGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0gPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgIH1cclxuICAgIC8v5Yib5bu66L+e57q/XHJcbiAgICBjcmVhdGVMaW5lKHN0YXJ0LGVuZCx0aW1lKXtcclxuICAgICAgICBsZXQgbGluZSA9IGNjLmluc3RhbnRpYXRlKHRoaXMubGluZVByZWZhYik7XHJcbiAgICAgICAgbGluZS5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpO1xyXG4gICAgICAgIGxpbmUuc2V0UG9zaXRpb24oc3RhcnQueCxzdGFydC55KTtcclxuICAgICAgICBjb25zdCBkeCA9IGVuZC54IC0gc3RhcnQueDtcclxuICAgICAgICBjb25zdCBkeSA9IGVuZC55IC0gc3RhcnQueTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgbGluZS5oZWlnaHQgPSBkaXN0YW5jZTtcclxuICAgICAgICBsaW5lLmdldENvbXBvbmVudChjYy5TcHJpdGUpLmZpbGxSYW5nZSA9IDA7XHJcbiAgICAgICAgbGluZS5hbmdsZSA9IC10aGlzLmNhbGN1bGF0ZUFuZ2xlKHN0YXJ0Lngsc3RhcnQueSxlbmQueCxlbmQueSk7XHJcbiAgICAgICAgY2MudHdlZW4obGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKSlcclxuICAgICAgICAudG8odGltZSx7ZmlsbFJhbmdlOjF9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTop5LluqbvvIzlsIbmnaXpg73lj6/mlL7lt6XlhbfnsbtcclxuICAgIGNhbGN1bGF0ZUFuZ2xlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgdmFyIGFuZ2xlID0gTWF0aC5hdGFuMih5Mi15MSx4Mi14MSkqMTgwIC8gTWF0aC5QSSAtIDkwO1xyXG4gICAgICAgIHJldHVybiAtYW5nbGU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOeahOi3neemuyDov5Tlm57lr7nlupTml7bpl7RcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLCBudW0pIHtcclxuICAgICAgICBjb25zdCBkeCA9IHgyIC0geDE7XHJcbiAgICAgICAgY29uc3QgZHkgPSB5MiAtIHkxO1xyXG4gICAgICAgIGxldCB0aW1lID0gMDtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDgwMCkgZGlzdGFuY2UgPSA4MDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDEyMDApIGRpc3RhbmNlID0gMTIwMDtcclxuICAgICAgICAgICAgdGltZSA9IGRpc3RhbmNlLzEyMDAgKiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAzKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMS41O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemuyAg6L+U5Zue6Led56a75Yik5patXHJcbiAgICBnZXREaXN0YW5jZTIoeDEsIHkxLCB4MiwgeTIsbnVtKSB7XHJcbiAgICAgICAgdmFyIGpnID0gZmFsc2U7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiAxNjApe1xyXG4gICAgICAgICAgICBpZihudW0gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZU1hcmdpbih0aGlzLmNvdW50VGltZSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY291bnRUaW1lIDwgNSl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLnRpbWUubm9kZSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLjUsY29sb3I6Y2MuY29sb3IoMjU1LDAsMCl9KVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMjUse3NjYWxlOjEsY29sb3I6Y2MuY29sb3IoMjU1LDI1NSwyNTUpfSlcclxuICAgICAgICAgICAgICAgIC5zdGFydCgpXHJcbiAgICAgICAgICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMix7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8PSAwKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja0NvdW50ID4gMCkgdGltZSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gcGFyc2VJbnQodGltZS8xMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2FtZU92ZXIodGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+S4iuS8oOavj+asoeaTjeS9nOaVsOaNrlxyXG4gICAgc2V0RGF0YSgpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRHYW1lRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIGdhbWVPdmVyKHRpbWUpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRSYW5rKHRpbWUpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMub24oXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuLCB0aGlzKTtcclxuICAgIH1cclxuICAgIG9uRGlzYWJsZSAoKSB7XHJcbiAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/DynamicAtlasManager.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, '5c9b8FZiaNLMrMDs9T3rByf', 'DynamicAtlasManager'); -// Script/DynamicAtlasManager.js - -"use strict"; - -cc.Class({ - "extends": cc.Component, - properties: {}, - onLoad: function onLoad() { - cc.dynamicAtlasManager.enabled = false; - } -}); - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxEeW5hbWljQXRsYXNNYW5hZ2VyLmpzIl0sIm5hbWVzIjpbImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwib25Mb2FkIiwiZHluYW1pY0F0bGFzTWFuYWdlciIsImVuYWJsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUFBLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ0wsYUFBU0QsRUFBRSxDQUFDRSxTQURQO0FBR0xDLEVBQUFBLFVBQVUsRUFBRSxFQUhQO0FBTUxDLEVBQUFBLE1BTkssb0JBTUs7QUFDTkosSUFBQUEsRUFBRSxDQUFDSyxtQkFBSCxDQUF1QkMsT0FBdkIsR0FBaUMsS0FBakM7QUFDSDtBQVJJLENBQVQiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImNjLkNsYXNzKHtcclxuICAgIGV4dGVuZHM6IGNjLkNvbXBvbmVudCxcclxuXHJcbiAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICB9LFxyXG5cclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgY2MuZHluYW1pY0F0bGFzTWFuYWdlci5lbmFibGVkID0gZmFsc2U7XHJcbiAgICB9LFxyXG59KTtcclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFvNkJDO1FBbDZCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBNjNCaEMsQ0FBQztJQXQzQkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNw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Q0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7NkNBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzttREFDUztJQUU3QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNFO0lBMkJwQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO21EQUNTO0lBdkNYLFdBQVc7UUFEL0IsT0FBTztPQUNhLFdBQVcsQ0FvNkIvQjtJQUFELGtCQUFDO0NBcDZCRCxBQW82QkMsQ0FwNkJ3QyxFQUFFLENBQUMsU0FBUyxHQW82QnBEO2tCQXA2Qm9CLFdBQVciLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyDkuLvmuLjmiI/mjqfliLbnsbtcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5fSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICE9IDApe1xyXG4gICAgICAgICAgICB0aGlzLmxldmVsID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbTtcclxuICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zdWNjZXNzID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMud2luVGltZSA9IDA7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gMDtcclxuICAgICAgICB0aGlzLnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSwxKTtcclxuICAgICAgICB0aGlzLnN0YXJ0R2FtZSgpO1xyXG4gICAgfVxyXG4gICAgLy/moLnmja7mmK/lkKblhajpnaLlsY/vvIzlgZrni6znq4vpgILphY3mlrnpnaJcclxuICAgIGZpdCgpe1xyXG4gICAgICAgIHRoaXMuZml0VG9wID0gNDUwOyAgLy82MDBcclxuICAgICAgICB0aGlzLmZpdEJvdCA9IC02MDA7IC8vLTcwMFxyXG4gICAgICAgIHZhciBqZyA9IHRoaXMuc2V0Rml0KCk7XHJcbiAgICAgICAgaWYoIWpnKXtcclxuICAgICAgICAgICAgdGhpcy5maXRUb3AgPSA2MDA7XHJcbiAgICAgICAgICAgIHRoaXMuZml0Qm90ID0gLTcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIpOaWreWFqOmdouWxj1xyXG4gICAgZ2V0U2V0U2NyZWVuUmVzb2x1dGlvbkZsYWcgKCkge1xyXG4gICAgICAgIGxldCBzaXplID0gY2Mud2luU2l6ZTtcclxuICAgICAgICBsZXQgd2lkdGggPSBzaXplLndpZHRoO1xyXG4gICAgICAgIGxldCBoZWlnaHQgPSBzaXplLmhlaWdodDtcclxuICAgICAgICBpZiAoKGhlaWdodCAvIHdpZHRoKSA+ICgxNi4yIC8gOSkpIHJldHVybiBmYWxzZTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGP6YCC6YWNXHJcbiAgICBzZXRGaXQgKCkge1xyXG4gICAgICAgIGxldCBmbGFnID0gdGhpcy5nZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZygpO1xyXG4gICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZsYWc7XHJcbiAgICB9XHJcbiAgICAvL+i/lOWbnummlumhtVxyXG4gICAgYmFja1NjZW5lKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/kuIvkuIDlhbPvvIzmiJbogIXph43mlrDlvIDlp4vvvIzmiJbogIXov5Tlm57kuIrkuIDlhbPvvIzmoLnmja5sZXZlbOWGs+WumlxyXG4gICAgcmVTdGFydCh0eXBlKXtcclxuICAgICAgICAvLyBpZihjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICE9IDApe1xyXG4gICAgICAgIC8vICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICAgICAgLy8gICAgIHJldHVybjtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgdGhpcy50aW1lQ291bnQgPSAwLjE7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy50aW1lU3RhcnQgPSAwO1xyXG4gICAgICAgIHRoaXMucmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSAtMTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubm93X0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5iYWxsX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm1vdmVBcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBpZih0eXBlID09IDApe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDEpe1xyXG4gICAgICAgICAgICB0aGlzLnN0YXJ0R2FtZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHR5cGUgPT0gMil7XHJcbiAgICAgICAgICAgIHRoaXMuYmdNb3ZlKC0xKTtcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgIH1cclxuICAgIC8v6I635Y+W5pe26Ze05oizXHJcbiAgICBnZXRUaW1lKCl7XHJcbiAgICAgICAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgcmV0dXJuIHRpbWVzdGFtcDtcclxuICAgIH1cclxuICAgIC8v6I636IOcXHJcbiAgICBwYXNzTGV2ZWwoKXtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICBsZXQgdGltZUFycmF5ID0gW107XHJcbiAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICBsZXQgYmFsbCA9IHRoaXMuYmFsbF9BcnJheVswXTtcclxuICAgICAgICAgICAgZm9yKGxldCBpPTE7IGk8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ktMV0ueCx0aGlzLmJhbGxfQXJyYXlbaS0xXS55LDIpO1xyXG4gICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2VlbihiYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aW1lQXJyYXlbay0xXSx7eDp0aGlzLmJhbGxfQXJyYXlba10ueCx5OnRoaXMuYmFsbF9BcnJheVtrXS55fSlcclxuICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2tdLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhbGwuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhclN1bigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgfSwgdGltZUNvdW50KjEwMDApO1xyXG4gICAgICAgICAgICAgICAgdGltZUNvdW50ICs9ICh0aW1lQXJyYXlbay0xXSswLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpLHotKVcclxuICAgIGxvc2VMZXZlbCh0eXBlKXtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICBsZXQgYmFsbCA9IHRoaXMuYmFsbF9BcnJheVswXTtcclxuICAgICAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlba10pXHJcbiAgICAgICAgICAgICAgICAudG8oMix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2tdLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZVN0YXJ0KHR5cGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/muIXnkIblpKrpmLNcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYXAgPSBbXTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9ICBjYy5meC5HYW1lVG9vbC5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgIHRoaXMudGltZV9BcnJheS5wdXNoKChjbGlja1RpbWUgLSB0aGlzLnRpbWVTdGFydCkpXHJcbiAgICAgICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuXHJcbiAgICAgICAgICAgIGlmKGRhdGEuaWQgPT0gdGhpcy5jbGlja05vdyl7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5BdWRpb01hbmFnZXIuX2luc3RhbmNlLnBsYXlBdWRpb0J1dHRvbigpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja05vdyA+IDApe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS54LHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgIGNjLnYyKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93XS54LHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93XS55KSxcclxuICAgICAgICAgICAgICAgICAgICAwLjIpOyAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGlja05vdyArPSAxO1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhcC5wdXNoKGRhdGEuZGlzdGFuY2UpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0pXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5BdWRpb01hbmFnZXIuX2luc3RhbmNlLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEgPSBcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzczp0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91bmQ6dGhpcy5yb3VuZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsU3VuQ291bnQ6dGhpcy5ub3dfQXJyYXkubGVuZ3RoLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLnJlcGVhdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVyYXRpb246ZmluaXNoX3RpbWUvMTAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZmaWN1bHR5TGV2ZWw6dGhpcy5sZXZlbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwVGltZUxpc3Q6dGhpcy50aW1lX0FycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtYWluZGVyOnRoaXMuY291bnRUaW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOmNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuQ0xJQ0tfREFUQS5kdXJhdGlvbiA+IDUwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID0gNTA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHdpbilcclxuICAgICAgICAgICAgICAgICAgICAuZGVsYXkoMC40KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjAxLHtzY2FsZToyLjV9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjM1LHtzY2FsZToxfSlcclxuICAgICAgICAgICAgICAgICAgICAuZGVsYXkoMC40KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW4uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+PSAxNSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnN1Y2Nlc3MgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZXZlbCArPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NMZXZlbCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb3NzKGRhdGEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoZGF0YSl7XHJcbiAgICAgICAgY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5wbGF5V2FybmluZygpO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgaWYoZmluaXNoX3RpbWUgPiA1OCkgZmluaXNoX3RpbWUgPSA1ODtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uZ2FwLnB1c2goZGF0YS5kaXN0YW5jZSk7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBID0gXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0eXBlOjEsXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6ZmFsc2UsXHJcbiAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgIHRvdGFsU3VuQ291bnQ6dGhpcy5ub3dfQXJyYXkubGVuZ3RoLFxyXG4gICAgICAgICAgICBtb3ZlZFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVTcGVlZCxcclxuICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLnJlcGVhdCxcclxuICAgICAgICAgICAgY29sb3JMaXN0OnRoaXMuY29sb3JfQXJyYXksXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICBkaWZmaWN1bHR5TGV2ZWw6dGhpcy5sZXZlbCxcclxuICAgICAgICAgICAgc3VuTGlzdDpzdW5BcnJheSxcclxuICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgcmVtYWluZGVyOnRoaXMuY291bnRUaW1lLFxyXG4gICAgICAgICAgICBnYXA6Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhcFxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPiA1MCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuQ0xJQ0tfREFUQS5kdXJhdGlvbiA9IDUwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgaWYodGhpcy5mdWh1byA9PSB0cnVlKXtcclxuICAgICAgICAgICAgdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgxKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPiAyKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgLT0gMTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBvdmVyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiT3ZlclwiKTtcclxuICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgIC50bygwLjI1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMTUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjEse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+a4uOaIj1xyXG4gICAgc3RhcnRHYW1lKCl7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID4gMCl7XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVN1bigpO1xyXG4gICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKDAuNSx7b3BhY2l0eToyNTUsc2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpKrpmLPov5DooYzliqjnlLvvvIzku6Xlj4rlkI7pnaLnp7vliqjliqjnlLtcclxuICAgIHJ1bkdhbWUoKXtcclxuICAgICAgICBsZXQgdGltZSA9IC02NTA7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5ub3dfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aW1lID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZSoxMDAwICsgdGltZTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZUNvdW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRlbXAgPiAwLjUpIHRlbXAgPSAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoaSAhPSAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsICYmIHRoaXMubm93X0FycmF5W2ldKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSksY2MudjIodGhpcy5ub3dfQXJyYXlbaV0ueCx0aGlzLm5vd19BcnJheVtpXS55KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aGlzLm5vd19BcnJheVtpXS50aW1lLXRlbXAse3g6dGhpcy5ub3dfQXJyYXlbaV0ueCx5OnRoaXMubm93X0FycmF5W2ldLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjEse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlQmFsbChpLHRoaXMubm93X0FycmF5W2ldLmNvbG9yLHRoaXMubm93X0FycmF5W2ldLnNwZWVkLHRoaXMubm93X0FycmF5W2ldLnJlcGVhdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGkgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoIC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJlZ2luR2FtZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXI8MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LCB0aW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruenu+WKqOmHjeWPoOaVsOaNrlxyXG4gICAgY3JlYXRlTW92ZSgpe1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/mlLnlj5jnp7vliqjpgJ/luqZcclxuICAgICAgICB2YXIgc3BlZWQgPSA3O1xyXG4gICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICBzcGVlZCA9IDcgLSBpbmZvLm1vdmVTcGVlZC8yO1xyXG4gICAgICAgIH0gIFxyXG4gICAgICAgIGlmKGluZm8ubW92ZU51bWJlciA+IDApe1xyXG4gICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgLy/lj6/np7vliqjljLrliIZcclxuICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICBmb3IobGV0IGsgPTA7IGs8dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO2srKyl7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheVtrXT09MSAmJiAoayA9PSB0aGlzLnJlcGVhdCB8fCBrID09IHRoaXMubnVtYmVyUmVwZWF0KSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYobSAhPSBrICYmIHRoaXMubW92ZUFycmF5W21dID09IDAgJiYgbSE9IHRoaXMucmVwZWF0ICYmIG0hPSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtICA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBsYXN0TnVtYmVyID0gMDtcclxuICAgICAgICAgICAgLy/plIHlrprmnIDlkI7kuIDkuKrlj6/np7vliqjnmoRcclxuICAgICAgICAgICAgZm9yKGxldCBqID0wOyBqPG1vdmVBcnJheS5sZW5ndGg7aisrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtqXT09MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdE51bWJlciA9IGo7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBpID0wOyBpPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtpXSA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IGxhc3ROdW1iZXIpeyAgICAvL+WmguaenOS4jeaYr+acgOWQjuS4gOS4quenu+WKqOeahFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHNwZWVkKnRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksdGhpcy5Qb3NfQXJyYXlbaV0ueCx0aGlzLlBvc19BcnJheVtpXS55LDMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlbaV0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50byh0aW1lLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVtpXX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAvL+WmguaenOaYr+acgOWQjuS4gOS4qlxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+avj+asoemHjeaWsOW8gOWni+aWsOS4gOi9ruWEv+a4uOaIj1xyXG4gICAgYmVnaW5HYW1lKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgLy8gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8v5Yib5bu65aSq6Ziz5omA6ZyA5pWw5o2uXHJcbiAgICBjcmVhdGVTdW4oKXtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgbGV0IHRpZW1PdXQgPSAwO1xyXG4gICAgICAgIGZvcihsZXQgbD0wOyBsPGxldmVsRGF0YS5udW1iZXI7bCsrKXtcclxuICAgICAgICAgICAgdGllbU91dCArPSAxO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBvcyA9IHRoaXMuZ2V0UG9zKGZhbHNlLGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5LnB1c2gocG9zKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLlBvc19BcnJheS5sZW5ndGggPT0gbGV2ZWxEYXRhLm51bWJlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVBvcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH0sIHRpZW1PdXQqMTAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs+S9jee9ru+8jOminOiJsuS/oeaBr+etieaVsOaNrlxyXG4gICAgY3JlYXRlUG9zKCl7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7eDp0aGlzLmJhbGwueCx5OnRoaXMuYmFsbC55LHRpbWU6MCx0aW1lQ291bnQ6MCxjb2xvcjowLHNwZWVkOjAscmVwZWF0OmZhbHNlfTtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGpnO1xyXG4gICAgfVxyXG4gICAgLy/lkb3kuK3liqjnlLtcclxuICAgIGhpdEFjdGlvbihkYXRhKXtcclxuICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSB0cnVlOyB0aGlzLmhpdC5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvblxyXG4gICAgICAgIHRoaXMuaGl0LnNldFBvc2l0aW9uKHRoaXMuYmFsbF9BcnJheVtkYXRhXS54KzM1LHRoaXMuYmFsbF9BcnJheVtkYXRhXS55KzM1KTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmhpdClcclxuICAgICAgICAudG8oMCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC50bygwLjIse3Bvc2l0aW9uOmNjLnYzKHRoaXMuaGl0LngtMzUsdGhpcy5oaXQueS0zNSwwKX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDlpKrpmLNcclxuICAgIGNyZWF0ZUJhbGwobnVtYmVyLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgbGV0IGJhbGwgPSBudWxsO1xyXG4gICAgICAgIGlmKGNvbG9yID09IDApYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1MSk7XHJcbiAgICAgICAgZWxzZSBpZihjb2xvciA9PSAxKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTIpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMiliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUzKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMubm93X0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/plIDmr4Hov57nur9cclxuICAgIGRlc3Ryb3lMaW5lKCkge1xyXG4gICAgICAgIGZvcihsZXQgaSA9MDsgaTwgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbi5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgaWYodGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0gPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgIH1cclxuICAgIC8v5Yib5bu66L+e57q/XHJcbiAgICBjcmVhdGVMaW5lKHN0YXJ0LGVuZCx0aW1lKXtcclxuICAgICAgICBsZXQgbGluZSA9IGNjLmluc3RhbnRpYXRlKHRoaXMubGluZVByZWZhYik7XHJcbiAgICAgICAgbGluZS5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpO1xyXG4gICAgICAgIGxpbmUuc2V0UG9zaXRpb24oc3RhcnQueCxzdGFydC55KTtcclxuICAgICAgICBjb25zdCBkeCA9IGVuZC54IC0gc3RhcnQueDtcclxuICAgICAgICBjb25zdCBkeSA9IGVuZC55IC0gc3RhcnQueTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgbGluZS5oZWlnaHQgPSBkaXN0YW5jZTtcclxuICAgICAgICBsaW5lLmdldENvbXBvbmVudChjYy5TcHJpdGUpLmZpbGxSYW5nZSA9IDA7XHJcbiAgICAgICAgbGluZS5hbmdsZSA9IC10aGlzLmNhbGN1bGF0ZUFuZ2xlKHN0YXJ0Lngsc3RhcnQueSxlbmQueCxlbmQueSk7XHJcbiAgICAgICAgY2MudHdlZW4obGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKSlcclxuICAgICAgICAudG8odGltZSx7ZmlsbFJhbmdlOjF9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTop5LluqbvvIzlsIbmnaXpg73lj6/mlL7lt6XlhbfnsbtcclxuICAgIGNhbGN1bGF0ZUFuZ2xlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgdmFyIGFuZ2xlID0gTWF0aC5hdGFuMih5Mi15MSx4Mi14MSkqMTgwIC8gTWF0aC5QSSAtIDkwO1xyXG4gICAgICAgIHJldHVybiAtYW5nbGU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOeahOi3neemuyDov5Tlm57lr7nlupTml7bpl7RcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLCBudW0pIHtcclxuICAgICAgICBjb25zdCBkeCA9IHgyIC0geDE7XHJcbiAgICAgICAgY29uc3QgZHkgPSB5MiAtIHkxO1xyXG4gICAgICAgIGxldCB0aW1lID0gMDtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDgwMCkgZGlzdGFuY2UgPSA4MDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDEyMDApIGRpc3RhbmNlID0gMTIwMDtcclxuICAgICAgICAgICAgdGltZSA9IGRpc3RhbmNlLzEyMDAgKiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAzKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMS41O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemuyAg6L+U5Zue6Led56a75Yik5patXHJcbiAgICBnZXREaXN0YW5jZTIoeDEsIHkxLCB4MiwgeTIsbnVtKSB7XHJcbiAgICAgICAgdmFyIGpnID0gZmFsc2U7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiAxNjApe1xyXG4gICAgICAgICAgICBpZihudW0gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZU1hcmdpbih0aGlzLmNvdW50VGltZSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY291bnRUaW1lIDwgNSl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLnRpbWUubm9kZSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLjUsY29sb3I6Y2MuY29sb3IoMjU1LDAsMCl9KVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMjUse3NjYWxlOjEsY29sb3I6Y2MuY29sb3IoMjU1LDI1NSwyNTUpfSlcclxuICAgICAgICAgICAgICAgIC5zdGFydCgpXHJcbiAgICAgICAgICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMix7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8PSAwKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcyh7ZGlzdGFuY2U6MH0pO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja0NvdW50ID4gMCkgdGltZSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gcGFyc2VJbnQodGltZS8xMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2FtZU92ZXIodGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+S4iuS8oOavj+asoeaTjeS9nOaVsOaNrlxyXG4gICAgc2V0RGF0YSgpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRHYW1lRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIGdhbWVPdmVyKHRpbWUpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRSYW5rKHRpbWUpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMub24oXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuLCB0aGlzKTtcclxuICAgIH1cclxuICAgIG9uRGlzYWJsZSAoKSB7XHJcbiAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= //------QC-SOURCE-SPLIT------ (function() { @@ -2521,7 +2540,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/RankList/ItemRender.js'; + var __filename = 'preview-scripts/assets/Script/module/Share/share.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -2529,106 +2548,140 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, 'ca0f9k0oBVDbpQC+OMNTF3m', 'ItemRender'); -// Script/module/RankList/ItemRender.ts +cc._RF.push(module, '7290caA39xMWZc2phTMKovP', 'share'); +// Script/module/Share/share.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; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (this && this.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } }; Object.defineProperty(exports, "__esModule", { value: true }); -var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; -var ItemRender = /** @class */ (function (_super) { - __extends(ItemRender, _super); - function ItemRender() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /**数据 */ - _this.data = null; - /**索引 0表示第一项*/ - _this.itemIndex = 0; - return _this; +exports.WeChat = void 0; +var shareConfig = { + gameId: "100009", + shareLine: "zDLsruVI", + EK: "hui231%1" +}; +// 微信操作类 +var WeChat = /** @class */ (function () { + function WeChat() { } - /**数据改变时调用 */ - ItemRender.prototype.dataChanged = function () { - var name = cc.fx.GameTool.subName(this.data.name, 6); - this.node.getChildByName("rankLab").getComponent(cc.Label).string = this.data.rank + ""; - this.node.getChildByName("nameLab").getComponent(cc.Label).string = name + ""; - this.node.getChildByName("totalLab").getComponent(cc.Label).string = this.data.total + ""; - this.node.getChildByName("rank").getChildByName("one").active = false; - this.node.getChildByName("rank").getChildByName("two").active = false; - this.node.getChildByName("rank").getChildByName("three").active = false; - if (this.data.rank == 1) { - this.node.getChildByName("rank").getChildByName("one").active = true; - this.node.getChildByName("rankLab").active = false; - } - else if (this.data.rank == 2) { - this.node.getChildByName("rank").getChildByName("two").active = true; - this.node.getChildByName("rankLab").active = false; - } - else if (this.data.rank == 3) { - this.node.getChildByName("rank").getChildByName("three").active = true; - this.node.getChildByName("rankLab").active = false; - } - else { - this.node.getChildByName("rankLab").active = true; - } - this.setPic(); + WeChat.setShare = function (url) { + var urlTemp = this.removeQueryParams(url); + shareConfig.shareLine = urlTemp; + WeChat.getSignature(url); }; - ItemRender.prototype.setPic = function () { - var _this = this; - this.node.getChildByName("pic").getChildByName("icon").active = false; - this.node.getChildByName("pic").getChildByName("pic").active = false; - var self = this; - var url = this.data.pic; - fetch(url) - .then(function (response) { - return response.headers.get('Content-Length'); - }) - .then(function (errNo) { - // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值 - if (errNo == "5093") { - // console.log(this.data.rank,"没头像"); - _this.node.getChildByName("pic").getChildByName("icon").active = true; - } - }) - .catch(function (error) { - // console.error('Error fetching X-Info:', error); - }); - cc.assetManager.loadRemote(url, { ext: '.png' }, function (err, texture) { - if (texture) { - _this.node.getChildByName("pic").getChildByName("pic").active = true; - var sprite = _this.node.getChildByName("pic").getChildByName("pic").getComponent(cc.Sprite); - sprite.spriteFrame = new cc.SpriteFrame(texture); - // console.log(this.data.rank,"设置头像成功",err); - } - else { - // console.log("设置头像失败",url); - console.log(err, texture); - } + WeChat.getResult = function (res) { + if (res) { + var data = res.data; + // @ts-ignore + wx.config({ + debug: false, + appId: data.appId, + timestamp: data.timestamp, + nonceStr: data.nonceStr, + signature: data.signature, + jsApiList: ['onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] + }); + // @ts-ignore + wx.checkJsApi({ + jsApiList: ['updateAppMessageShareData'], + success: function (res) { + setTimeout(function () { + WeChat.changeShare(); + }, 200); + setTimeout(function () { + WeChat.changeShare(); + }, 500); + } + }); + } + }; + WeChat.changeShare = function () { + // @ts-ignore + wx.ready(function () { + // @ts-ignore + wx.updateAppMessageShareData({ + title: '记忆力认知测评', + desc: '你的注意力和工作记忆有问题吗?', + link: shareConfig.shareLine, + imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', + success: function () { + // 设置成功 + console.log("分享好友成功回调"); + } + }); + setTimeout(function () { + // @ts-ignore + wx.updateTimelineShareData({ + title: '记忆力认知测评', + link: shareConfig.shareLine, + imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', + success: function () { + // 设置成功 + console.log("分享朋友圈成功回调"); + } + }); + }, 200); }); }; - ItemRender = __decorate([ - ccclass - ], ItemRender); - return ItemRender; -}(cc.Component)); -exports.default = ItemRender; + WeChat.getSignature = function (url) { + return new Promise(function (resolve) { + WeChat.getShareInfo((encodeURIComponent(url)), WeChat.getResult); + }); + }; + WeChat.getShareInfo = function (shareUrl, callback) { + return __awaiter(this, void 0, Promise, function () { + var time, url; + return __generator(this, function (_a) { + time = Math.floor((new Date().getTime()) / 1000); + url = cc.fx.HttpUtil.apiSign("/api/share/cfg?gameId=" + cc.fx.GameConfig.GM_INFO.gameId + "&time=" + time + "&url=" + shareUrl, {}); + return [2 /*return*/, cc.fx.HttpUtil.get(url, callback, 3)]; + }); + }); + }; + WeChat.containsNanana = function (str) { + return /test/i.test(str); + }; + WeChat.removeQueryParams = function (url) { + return url.replace(/\?.*$/, ''); + }; + return WeChat; +}()); +exports.WeChat = WeChat; cc._RF.pop(); } @@ -2641,82 +2694,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFJhbmtMaXN0XFxJdGVtUmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdNLElBQUEsS0FBd0IsRUFBRSxDQUFDLFVBQVUsRUFBbkMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFrQixDQUFDO0FBRzVDO0lBQXdDLDhCQUFZO0lBQXBEO1FBQUEscUVBbUVDO1FBbEVHLFFBQVE7UUFDRCxVQUFJLEdBQU8sSUFBSSxDQUFDO1FBQ3ZCLGNBQWM7UUFDUCxlQUFTLEdBQVUsQ0FBQyxDQUFDOztJQStEaEMsQ0FBQztJQTdERyxhQUFhO0lBQ04sZ0NBQVcsR0FBbEI7UUFDSSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDOUUsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQzFGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMs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b0I7WUFDbEUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFoRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FtRTlCO0lBQUQsaUJBQUM7Q0FuRUQsQUFtRUMsQ0FuRXVDLEVBQUUsQ0FBQyxTQUFTLEdBbUVuRDtrQkFuRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IExpc3QsIHsgTGlzdFR5cGUgfSBmcm9tIFwiLi9MaXN0XCI7XHJcblxyXG5jb25zdCB7IGNjY2xhc3MsIHByb3BlcnR5IH0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSXRlbVJlbmRlciBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICAvKirmlbDmja4gKi9cclxuICAgIHB1YmxpYyBkYXRhOmFueSA9IG51bGw7XHJcbiAgICAvKirntKLlvJUgMOihqOekuuesrOS4gOmhuSovXHJcbiAgICBwdWJsaWMgaXRlbUluZGV4Om51bWJlciA9IDA7XHJcblxyXG4gICAgLyoq5pWw5o2u5pS55Y+Y5pe26LCD55SoICovXHJcbiAgICBwdWJsaWMgZGF0YUNoYW5nZWQoKXtcclxuICAgICAgICBsZXQgbmFtZSA9IGNjLmZ4LkdhbWVUb29sLnN1Yk5hbWUodGhpcy5kYXRhLm5hbWUsNik7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuZGF0YS5yYW5rICsgXCJcIjtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gbmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLHtleHQ6Jy5wbmcnfSwoZXJyLCB0ZXh0dXJlOmNjLlRleHR1cmUyRCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0ZXh0dXJlKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5hY3RpdmU9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB2YXIgc3ByaXRlID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENvbXBvbmVudChjYy5TcHJpdGUpO1xyXG4gICAgICAgICAgICAgICAgc3ByaXRlLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLorr7nva7lpLTlg4/miJDlip9cIixlcnIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIuiuvue9ruWktOWDj+Wksei0pVwiLHVybCk7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIsdGV4dHVyZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG5cclxufVxyXG4iXX0= -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/Notification/Notification.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, '55403VjGlpPL564gsdiZBg3', 'Notification'); -// Script/module/Notification/Notification.ts - -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Notifications = void 0; -//全局通知 -var Notifications = { - _eventMap: [], - on: function (masgId, callback, target) { - if (this._eventMap[masgId] === undefined) { - this._eventMap[masgId] = []; - } - this._eventMap[masgId].push({ callback: callback, target: target }); - }, - emit: function (masgId, parameter) { - var array = this._eventMap[masgId]; - if (array === undefined) - return; - for (var i = 0; i < array.length; i++) { - var element = array[i]; - if (element) - element.callback.call(element.target, parameter); - } - }, - off: function (masgId, callback) { - var array = this._eventMap[masgId]; - if (array === undefined) - return; - for (var i = 0; i < array.length; i++) { - var element = array[i]; - if (element && element.callback === callback) { - array[i] = undefined; - break; - } - } - }, - offMasgId: function (masgId) { - this._eventMap[masgId] = undefined; - }, - removeAllMsg: function () { - for (var k in this._eventMap) { - if (this._eventMap[k]) { - this.offMasgId(k); - } - } - } -}; -exports.Notifications = Notifications; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXE5vdGlmaWNhdGlvblxcTm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE1BQU07QUFDTixJQUFJLGFBQWEsR0FBRztJQUNoQixTQUFTLEVBQUUsRUFBRTtJQUNiLEVBQUUsRUFBRSxVQUFVLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTTtRQUNsQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssU0FBUyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLEVBQUUsVUFBVSxNQUFNLEVBQUUsU0FBUztRQUM3QixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBRWhDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLE9BQU87Z0JBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFRCxHQUFHLEVBQUUsVUFBVSxNQUFNLEVBQUUsUUFBUTtRQUMzQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBQ2hDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRTtnQkFDMUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztnQkFDckIsTUFBTTthQUNUO1NBQ0o7SUFDTCxDQUFDO0lBRUQsU0FBUyxFQUFFLFVBQVUsTUFBTTtRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsWUFBWSxFQUFFO1FBQ1YsS0FBSyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzFCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyQjtTQUNKO0lBQ0wsQ0FBQztDQUNKLENBQUM7QUFDTyxzQ0FBYSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v5YWo5bGA6YCa55+lXG52YXIgTm90aWZpY2F0aW9ucyA9IHtcbiAgICBfZXZlbnRNYXA6IFtdLFxuICAgIG9uOiBmdW5jdGlvbiAobWFzZ0lkLCBjYWxsYmFjaywgdGFyZ2V0KSB7XG4gICAgICAgIGlmICh0aGlzLl9ldmVudE1hcFttYXNnSWRdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2V2ZW50TWFwW21hc2dJZF0gPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdLnB1c2goeyBjYWxsYmFjazogY2FsbGJhY2ssIHRhcmdldDogdGFyZ2V0IH0pO1xuICAgIH0sXG5cbiAgICBlbWl0OiBmdW5jdGlvbiAobWFzZ0lkLCBwYXJhbWV0ZXIpIHtcbiAgICAgICAgbGV0IGFycmF5ID0gdGhpcy5fZXZlbnRNYXBbbWFzZ0lkXTtcbiAgICAgICAgaWYgKGFycmF5ID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgZWxlbWVudCA9IGFycmF5W2ldO1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQpIGVsZW1lbnQuY2FsbGJhY2suY2FsbChlbGVtZW50LnRhcmdldCwgcGFyYW1ldGVyKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBvZmY6IGZ1bmN0aW9uIChtYXNnSWQsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBhcnJheSA9IHRoaXMuX2V2ZW50TWFwW21hc2dJZF07XG4gICAgICAgIGlmIChhcnJheSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBlbGVtZW50ID0gYXJyYXlbaV07XG4gICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LmNhbGxiYWNrID09PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGFycmF5W2ldID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcblxuICAgIG9mZk1hc2dJZDogZnVuY3Rpb24gKG1hc2dJZCkge1xuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdID0gdW5kZWZpbmVkO1xuICAgIH0sXG5cbiAgICByZW1vdmVBbGxNc2c6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yIChsZXQgayBpbiB0aGlzLl9ldmVudE1hcCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2V2ZW50TWFwW2tdKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vZmZNYXNnSWQoayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuZXhwb3J0IHsgTm90aWZpY2F0aW9ucyB9OyJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFNoYXJlXFxzaGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFJLFdBQVcsR0FBRztJQUNkLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLEVBQUUsRUFBQyxVQUFVO0NBQ2QsQ0FBQztBQVdKLFFBQVE7QUFDUjtJQUFBO0lBb0ZBLENBQUM7SUFuRlUsZUFBUSxHQUFmLFVBQWdCLEdBQUc7UUFDZixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDaEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sZ0JBQVMsR0FBaEIsVUFBaUIsR0FBRztRQUNoQixJQUFHLEdBQUcsRUFBQztZQUNILElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDcEIsYUFBYTtZQUNiLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0JBQ04sS0FBSyxFQUFFLEtBQUs7Z0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUN6QixTQUFTLEVBQUUsQ0FBQyxxQkFBcUIsRUFBQywyQkFBMkIsRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsQ0FBQzthQUNySCxDQUFDLENBQUM7WUFDSCxhQUFhO1lBQ2IsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDVixTQUFTLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLFVBQVMsR0FBRztvQkFDakIsVUFBVSxDQUFDO3dCQUNQLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDekIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUNSLFVBQVUsQ0FBQzt3QkFDUCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDWixDQUFDO2FBQ0osQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU0sa0JBQVcsR0FBbEI7UUFDSSxhQUFhO1FBQ2IsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNMLGFBQWE7WUFDYixFQUFFLENBQUMseUJBQXlCLENBQUM7Z0JBQ3pCLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7Z0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7Z0JBQ3ZELE9BQU8sRUFBRTtvQkFDUCxPQUFPO29CQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzFCLENBQUM7YUFDSixDQUFDLENBQUM7WUFDSCxVQUFVLENBQUM7Z0JBQ1AsYUFBYTtnQkFDYixFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZCLEtBQUssRUFBRSxTQUFTO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7b0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7b0JBQ3ZELE9BQU8sRUFBRTt3QkFDUCxPQUFPO3dCQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzNCLENBQUM7aUJBQ0YsQ0FBQyxDQUFBO1lBQ1IsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRVosQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sbUJBQVksR0FBbkIsVUFBb0IsR0FBVztRQUMzQixPQUFPLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTztZQUN2QixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ1ksbUJBQVksR0FBekIsVUFBMEIsUUFBZ0IsRUFBRSxRQUFpQjt1Q0FBRyxPQUFPOzs7Z0JBQzdELElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO2dCQUNoRCxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDJCQUF5QixFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxjQUFTLElBQUksYUFBUSxRQUFVLEVBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQzlILHNCQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQyxFQUFBOzs7S0FDNUM7SUFHTSxxQkFBYyxHQUFyQixVQUFzQixHQUFHO1FBQ3JCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sd0JBQWlCLEdBQXhCLFVBQXlCLEdBQUc7UUFDeEIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUwsYUFBQztBQUFELENBcEZBLEFBb0ZDLElBQUE7QUFwRlksd0JBQU0iLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcblxudmFyIHNoYXJlQ29uZmlnID0ge1xuICAgIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgICBzaGFyZUxpbmU6IFwiekRMc3J1VklcIixcbiAgICBFSzpcImh1aTIzMSUxXCJcbiAgfTtcblxuLy8g5a6a5LmJ5b6u5L+h6YWN572u5pWw5o2u55qE5o6l5Y+jXG5pbnRlcmZhY2UgSVdlQ2hhdENvbmZpZyB7XG4gICAgYXBwSWQ6IHN0cmluZztcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICBub25jZVN0cjogc3RyaW5nO1xuICAgIHNpZ25hdHVyZTogc3RyaW5nO1xuICAgIGpzQXBpTGlzdDogW107XG59XG5cbi8vIOW+ruS/oeaTjeS9nOexu1xuZXhwb3J0IGNsYXNzIFdlQ2hhdCB7XG4gICAgc3RhdGljIHNldFNoYXJlKHVybCkge1xuICAgICAgICB2YXIgdXJsVGVtcCA9IHRoaXMucmVtb3ZlUXVlcnlQYXJhbXModXJsKTtcbiAgICAgICAgc2hhcmVDb25maWcuc2hhcmVMaW5lID0gdXJsVGVtcDtcbiAgICAgICAgV2VDaGF0LmdldFNpZ25hdHVyZSh1cmwpO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSZXN1bHQocmVzKXtcbiAgICAgICAgaWYocmVzKXtcbiAgICAgICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGE7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB3eC5jb25maWcoe1xuICAgICAgICAgICAgICAgIGRlYnVnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBhcHBJZDogZGF0YS5hcHBJZCxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGRhdGEudGltZXN0YW1wLFxuICAgICAgICAgICAgICAgIG5vbmNlU3RyOiBkYXRhLm5vbmNlU3RyLFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZTogZGF0YS5zaWduYXR1cmUsXG4gICAgICAgICAgICAgICAganNBcGlMaXN0OiBbJ29uTWVudVNoYXJlVGltZWxpbmUnLCd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJywgJ3VwZGF0ZVRpbWVsaW5lU2hhcmVEYXRhJywgJ29uTWVudVNoYXJlQXBwTWVzc2FnZSddXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHd4LmNoZWNrSnNBcGkoe1xuICAgICAgICAgICAgICAgIGpzQXBpTGlzdDogWyd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJ10sIC8vIOmcgOimgeajgOa1i+eahEpT5o6l5Y+j5YiX6KGo77yM5omA5pyJSlPmjqXlj6PliJfooajop4HpmYTlvZUyLFxuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKHJlcykge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdGF0aWMgY2hhbmdlU2hhcmUoKXtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB3eC5yZWFkeSgoKSA9PiB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB3eC51cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhKHsgXG4gICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICBkZXNjOiAn5L2g55qE5rOo5oSP5Yqb5ZKM5bel5L2c6K6w5b+G5pyJ6Zeu6aKY5ZCX77yfJywgLy8g5YiG5Lqr5o+P6L+wXG4gICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgIGltZ1VybDogJ2h0dHBzOi8vc3RhdGljLnNwYXJrdXMuY24vcHVibGljL3Nob290c3VuLmpwZycsIC8vIOWIhuS6q+Wbvuagh1xuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCLliIbkuqvlpb3lj4vmiJDlip/lm57osINcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgd3gudXBkYXRlVGltZWxpbmVTaGFyZURhdGEoeyBcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5pyL5Y+L5ZyI5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSwgMjAwKTtcblxuICAgICAgICB9KTsgXG4gICAgfVxuXG4gICAgc3RhdGljIGdldFNpZ25hdHVyZSh1cmw6IHN0cmluZyk6IFByb21pc2U8SVdlQ2hhdENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIFdlQ2hhdC5nZXRTaGFyZUluZm8oKGVuY29kZVVSSUNvbXBvbmVudCh1cmwpKSxXZUNoYXQuZ2V0UmVzdWx0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBhc3luYyBnZXRTaGFyZUluZm8oc2hhcmVVcmw6IHN0cmluZywgY2FsbGJhY2s6RnVuY3Rpb24pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCB0aW1lID0gTWF0aC5mbG9vcigobmV3IERhdGUoKS5nZXRUaW1lKCkpIC8gMTAwMClcbiAgICAgICAgY29uc3QgdXJsID0gY2MuZnguSHR0cFV0aWwuYXBpU2lnbihgL2FwaS9zaGFyZS9jZmc/Z2FtZUlkPSR7Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhbWVJZH0mdGltZT0ke3RpbWV9JnVybD0ke3NoYXJlVXJsfWAse30pXG4gICAgICAgIHJldHVybiBjYy5meC5IdHRwVXRpbC5nZXQodXJsLGNhbGxiYWNrLDMpXG4gICAgfVxuXG4gICAgXG4gICAgc3RhdGljIGNvbnRhaW5zTmFuYW5hKHN0cikge1xuICAgICAgICByZXR1cm4gL3Rlc3QvaS50ZXN0KHN0cik7XG4gICAgfVxuXG4gICAgc3RhdGljIHJlbW92ZVF1ZXJ5UGFyYW1zKHVybCkge1xuICAgICAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcPy4qJC8sICcnKTtcbiAgICB9XG5cbn1cbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -3027,6 +3005,328 @@ cc._RF.pop(); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXE11c2ljXFxBdWRpb01hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU0sSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBMEMsZ0NBQVk7SUFBdEQ7UUFBQSxxRUFvU0M7UUFsU0csTUFBTTtRQUVOLG1CQUFhLEdBQWlCLElBQUksQ0FBQztRQUNuQyxJQUFJO1FBRUosc0JBQWdCLEdBQWlCLElBQUksQ0FBQztRQUN0QyxLQUFLO1FBRUwsa0JBQVksR0FBaUIsSUFBSSxDQUFDO1FBQ2xDLElBQUk7UUFFSixjQUFRLEdBQWlCLElBQUksQ0FBQztRQUM5QixNQUFNO1FBRU4sWUFBTSxHQUFpQixJQUFJLENBQUM7O0lBb1JoQyxDQUFDO3FCQXBTb0IsWUFBWTtJQStCN0IsMkJBQUksR0FBSjtRQUVJLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCOzs7V0FHRztRQUNILElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUNELDJCQUFJLEdBQUosVUFBTSxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxTQUFTO1FBQ3hDLElBQUksU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPO1FBQzVDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYTtZQUFFLE9BQU87UUFDOUMsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENB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eUMsRUFBRSxDQUFDLFNBQVMsR0FvU3JEO2tCQXBTb0IsWUFBWTtBQW9TaEMsQ0FBQztBQUVGLDJCQUEyQiIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xuQGNjY2xhc3NcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEF1ZGlvTWFuYWdlciBleHRlbmRzIGNjLkNvbXBvbmVudCB7XG5cbiAgICAvL+iDjOaZr+mfs+S5kFxuICAgIEBwcm9wZXJ0eShjYy5BdWRpb0NsaXApXG4gICAgYXVkaW9HYW1lQmdtMDogY2MuQXVkaW9DbGlwID0gbnVsbDtcbiAgICAvL+i3s+i3g1xuICAgIEBwcm9wZXJ0eShjYy5BdWRpb0NsaXApXG4gICAgYXVkaW9CdXR0b25DbGljazogY2MuQXVkaW9DbGlwID0gbnVsbDtcbiAgICAvL+iQveWcsOS4ilxuICAgIEBwcm9wZXJ0eShjYy5BdWRpb0NsaXApXG4gICAgYXVkaW9XYXJuaW5nOiBjYy5BdWRpb0NsaXAgPSBudWxsO1xuICAgIC8v56Kw5pKeXG4gICAgQHByb3BlcnR5KGNjLkF1ZGlvQ2xpcClcbiAgICBhdWRpb1dpbjogY2MuQXVkaW9DbGlwID0gbnVsbDtcbiAgICAvL+iQveaWueWdl+S4ilxuICAgIEBwcm9wZXJ0eShjYy5BdWRpb0NsaXApXG4gICAgbHVvZHVpOiBjYy5BdWRpb0NsaXAgPSBudWxsO1xuXG4gICAgbUF1ZGlvTWFwOiB7fTtcbiAgICBiZ011c2ljVm9sdW1lOiBudW1iZXI7XG4gICAgZWZmZWN0TXVzaWNWb2x1bWU6IG51bWJlcjtcbiAgICBtTXVzaWNTd2l0Y2g6IG51bWJlcjtcbiAgICBtRWZmZWN0U3dpdGNoOiBudW1iZXI7XG4gICAgYnJpY2tTb3VuZDogYW55O1xuICAgIHJld2FyZDogYm9vbGVhbjtcbiAgICBmaW5pc2g6IGJvb2xlYW47XG4gICAgcmV3YXJkQ291bnQ6IG51bWJlcjtcblxuICAgIG1NdXNpY0tleTogYW55O1xuICAgIHN0YXRpYyBfaW5zdGFuY2U6IGFueTtcblxuICAgIGN0b3IgKCkge1xuICAgICAgICBcbiAgICAgICAgdGhpcy5tQXVkaW9NYXAgPSB7fTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIOm7mOiupOmfs+mHj+Wkp+Wwj1xuICAgICAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5iZ011c2ljVm9sdW1lID0gMC4xO1xuICAgICAgICB0aGlzLmVmZmVjdE11c2ljVm9sdW1lID0gMTtcblxuICAgICAgICB0aGlzLm1NdXNpY1N3aXRjaCA9IDE7XG4gICAgICAgIHRoaXMubUVmZmVjdFN3aXRjaCA9IDE7XG4gICAgfVxuICAgIHBsYXkgKGF1ZGlvU291cmNlLCBsb29wLCBjYWxsYmFjaywgaXNCZ011c2ljKSB7XG4gICAgICAgIGlmIChpc0JnTXVzaWMgJiYgIXRoaXMubU11c2ljU3dpdGNoKSByZXR1cm47XG4gICAgICAgIGlmICghaXNCZ011c2ljICYmICF0aGlzLm1FZmZlY3RTd2l0Y2gpIHJldHVybjtcbiAgICAgICAgdmFyIHZvbHVtZSA9IGlzQmdNdXNpYyA/IHRoaXMuYmdNdXNpY1ZvbHVtZSA6IHRoaXMuZWZmZWN0TXVzaWNWb2x1bWU7XG5cbiAgICAgICAgaWYgKGNjLnN5cy5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgIGlmKGF1ZGlvU291cmNlID09IHRoaXMuYnJpY2tTb3VuZCl7XG4gICAgICAgICAgICAgICAgdm9sdW1lID0gMC4xO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIHZvbHVtZSA9IDE7XG4gICAgICAgICAgICB2YXIgY29udGV4dCA9IGNjLmF1ZGlvRW5naW5lLnBsYXkoYXVkaW9Tb3VyY2UsIGxvb3AsIHZvbHVtZSk7XG4gICAgICAgICAgICBpZiAoY2FsbGJhY2spe1xuICAgICAgICAgICAgICAgIGNjLmF1ZGlvRW5naW5lLnNldEZpbmlzaENhbGxiYWNrKGNvbnRleHQsIGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrLmNhbGwodGhpcyk7XG4gICAgICAgICAgICAgICAgfS5iaW5kKHRoaXMpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGNjLnd3eC5PdXRQdXQubG9nKCdwbGF5IGF1ZGlvIGVmZmVjdCBpc0Jyb3dzZXI6ICcgKyBjb250ZXh0LnNyYyk7XG5cbiAgICAgICAgICAgIHRoaXMubUF1ZGlvTWFwW2F1ZGlvU291cmNlXSA9IGNvbnRleHQ7XG4gICAgICAgICAgICByZXR1cm4gYXVkaW9Tb3VyY2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gYXVkaW9Tb3VyY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzYXZlICgpIHtcbiAgICAgICAgLy8gY2Mud3d4LlN0b3JhZ2Uuc2V0SXRlbShjYy53d3guU3RvcmFnZS5LZXlfU2V0dGluZ19NdXNpY19Wb2x1bWUsIHRoaXMubU11c2ljU3dpdGNoKTtcbiAgICAgICAgLy8gY2Mud3d4LlN0b3JhZ2Uuc2V0SXRlbShjYy53d3guU3RvcmFnZS5LZXlfU2V0dGluZ19FZmZlY3RfVm9sdW1lLCB0aGlzLm1FZmZlY3RTd2l0Y2gpO1xuICAgIH1cbiAgICBvbkxvYWQoKSB7XG5cbiAgICAgICAgaWYgKEF1ZGlvTWFuYWdlci5faW5zdGFuY2UgPT0gbnVsbCkge1xuICAgICAgICAgICAgQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZSA9IHRoaXM7XG4gICAgICAgICAgICBjYy5nYW1lLmFkZFBlcnNpc3RSb290Tm9kZSh0aGlzLm5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5ub2RlLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJld2FyZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmZpbmlzaCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJld2FyZENvdW50ID0gMDtcbiAgICAgICAgdGhpcy5jdG9yKCk7XG5cbiAgICAgICAgdGhpcy5wcmVsb2FkKCk7XG4gICAgfVxuICAgIHByZWxvYWQgKCkge1xuICAgICAgICBpZiAoIShjYy5zeXMucGxhdGZvcm0gPT09IGNjLnN5cy5XRUNIQVRfR0FNRSkpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgdmFyIG11c2ljcyA9IFtcbiAgICAgICAgICAgIHRoaXMuYXVkaW9HYW1lQmdtMCxcbiAgICAgICAgXTtcbiAgICAgICAgbXVzaWNzLmZvckVhY2goZnVuY3Rpb24ocGF0aCkge1xuICAgICAgICAgICAgLy8gdmFyIG11c2ljUGF0aCA9IHd4RG93bmxvYWRlci5SRU1PVEVfU0VSVkVSX1JPT1QgKyBwYXRoO1xuICAgICAgICAgICAgLy8gaWYgKG11c2ljUGF0aCAhPSB3eERvd25sb2FkZXIuUkVNT1RFX1NFUlZFUl9ST09UICYmIG11c2ljUGF0aC5lbmRzV2l0aCgnLm1wMycpKSB7XG4gICAgICAgICAgICAvLyAgICAgY2MubG9hZGVyLmxvYWQobXVzaWNQYXRoLCBmdW5jdGlvbihlcnIsIHJlbW90ZVVybCkge1xuICAgICAgICAgICAgLy8gICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAvLyAgICAgICAgICAgICBjYy5lcnJvcihlcnIubWVzc2FnZSB8fCBlcnIpO1xuICAgICAgICAgICAgLy8gICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLy8gICAgICAgICB9XG4gICAgICAgICAgICAvLyAgICAgfSk7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgZ2V0QXVkaW9NdXNpY1N3aXRjaCgpXG4gICAge1xuICAgICAgICByZXR1cm4gdGhpcy5tTXVzaWNTd2l0Y2g7XG5cbiAgICB9XG4gICAgZ2V0QXVkaW9FZmZlY3RTd2l0Y2goKVxuICAgIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubUVmZmVjdFN3aXRjaDtcbiAgICB9XG4gICAgdHJ1bkF1ZGlvU291bmQob24pXG4gICAge1xuICAgICAgICB0aGlzLnN3aXRjaE11c2ljKG9uKTtcbiAgICAgICAgdGhpcy5zd2l0Y2hFZmZlY3Qob24pXG4gICAgfVxuICAgIHN3aXRjaE11c2ljIChvbikge1xuICAgICAgICBpZiAodGhpcy5tTXVzaWNTd2l0Y2ggIT0gKG9uPzE6MCkpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHRoaXMubU11c2ljU3dpdGNoID0gMS10aGlzLm1NdXNpY1N3aXRjaDtcbiAgICAgICAgICAgIC8vIHRoaXMuc2F2ZSgpO1xuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgaWYob24pXG4gICAgICAgIHtcbiAgICAgICAgICAgIHRoaXMucGxheU11c2ljR2FtZSgpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAge1xuICAgICAgICAgICAgdGhpcy5zdG9wTXVzaWMoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzd2l0Y2hFZmZlY3QgKG9uKSB7XG4gICAgICAgIGlmICh0aGlzLm1FZmZlY3RTd2l0Y2ggIT0gKG9uPzE6MCkpe1xuICAgICAgICAgICAgdGhpcy5tRWZmZWN0U3dpdGNoID0gMS10aGlzLm1FZmZlY3RTd2l0Y2g7XG4gICAgICAgICAgICAvLyB0aGlzLnNhdmUoKTtcblxuICAgICAgICB9XG4gICAgfVxuICAgIG9uSGlkZSAoKSB7XG4gICAgICAgIGNjLmF1ZGlvRW5naW5lLnBhdXNlQWxsKCk7XG5cbiAgICAgICAgLy8gaWYgKENDX0pTQikge1xuICAgICAgICAvLyB9IGVsc2Uge1xuICAgICAgICAvLyAgICAgZm9yICh2YXIga2V5IGluIHRoaXMubUF1ZGlvTWFwKSB7XG4gICAgICAgIC8vICAgICAgICAgaWYgKGtleSA9PT0gdGhpcy5tTXVzaWNLZXkpIHtcbiAgICAgICAgLy8gICAgICAgICAgICAgdGhpcy5tQXVkaW9NYXBba2V5XS5wYXVzZSgpO1xuICAgICAgICAvLyAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vICAgICAgICAgICAgIHRoaXMubUF1ZGlvTWFwW2tleV0uc3RvcCgpO1xuICAgICAgICAvLyAgICAgICAgIH1cbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIG9uU2hvdyAoKSB7XG4gICAgICAgIGNjLmF1ZGlvRW5naW5lLnJlc3VtZUFsbCgpO1xuXG4gICAgICAgIC8vIGlmIChDQ19KU0IpIHtcbiAgICAgICAgLy8gfSBlbHNlIHtcbiAgICAgICAgLy8gICAgIGlmICghdGhpcy5tTXVzaWNTd2l0Y2gpIHJldHVybjtcbiAgICAgICAgLy8gICAgIHZhciBjb250ZXh0ID0gdGhpcy5tQXVkaW9NYXBbdGhpcy5tTXVzaWNLZXldO1xuICAgICAgICAvLyAgICAgaWYgKGNvbnRleHQpIHtcbiAgICAgICAgLy8gICAgICAgICBjb250ZXh0LnBsYXkoKTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cbiAgICBwbGF5TXVzaWMgKGtleSwgY2FsbGJhY2ssIGxvb3ApIHtcbiAgICAgICAgbG9vcCA9IHR5cGVvZiBsb29wID09ICd1bmRlZmluZWQnICB8fCBsb29wID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLnN0b3BNdXNpYygpO1xuICAgICAgICB0aGlzLm1NdXNpY0tleSA9IHRoaXMucGxheShrZXksIGxvb3AsIGNhbGxiYWNrLCB0cnVlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICog5ri45oiP6IOM5pmv6Z+z5LmQXG4gICAgICovXG4gICAgcGxheU11c2ljR2FtZSAoKSB7XG4gICAgICAgIHRoaXMucGxheU11c2ljKHRoaXMuYXVkaW9HYW1lQmdtMCx7fSx0cnVlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICog5YGc5q2i6IOM5pmv6Z+z5LmQ5pKt5pS+XG4gICAgICovXG4gICAgc3RvcE11c2ljICgpIHtcbiAgICAgICAgLy8gY2Mud3d4Lk91dFB1dC5sb2coJ3N0b3BNdXNpYyBhdWRpbyBlZmZlY3Qgd3g6ICcgKyB0aGlzLm1NdXNpY0tleSk7XG5cbiAgICAgICAgdmFyIGNvbnRleHQgPSB0aGlzLm1BdWRpb01hcFt0aGlzLm1NdXNpY0tleV07XG5cbiAgICAgICAgaWYgKHR5cGVvZihjb250ZXh0KSAhPSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaWYgKGNjLnN5cy5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgICAgICBjYy5hdWRpb0VuZ2luZS5zdG9wKGNvbnRleHQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb250ZXh0LnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNjLmF1ZGlvRW5naW5lLnN0b3AoY29udGV4dCk7XG5cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyDngrjlvLnjgIHngavnrq3niIbngrjpn7PmlYhcbiAgICBwbGF5SnVtcCAoKSB7XG4gICAgIFxuICAgIH1cbiAgICAvL+a/gOWFiemfs+aViFxuICAgIHBsYXlMdW8oKVxuICAgIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGxheSh0aGlzLmx1b2R1aSwgZmFsc2UsbnVsbCx0aGlzLm1FZmZlY3RTd2l0Y2gpO1xuICAgIH1cbiAgICAvL+aKgOiDvemfs+aViFxuICAgIHBsYXlHcm91bmQoKVxuICAgIHtcbiAgICAgXG4gICAgfVxuXG4gICAgLy/mioDog73pn7PmlYhcbiAgICBwbGF5UHooKVxuICAgIHtcbiAgICBcbiAgICB9XG4gICAgLypcbiAgICAgKiDmuLjmiI/lvIDlp4vpn7PmlYhcbiAgICAgKlxuICAgICAqL1xuICAgICBwbGF5R2FtZVN0YXJ0KClcbiAgICAge1xuICAgICBcbiAgICAgfVxuICAgICAvKlxuICAgICAgKiDlpLHotKXnmoTmuLjmiI/nu5PmnZ9cbiAgICAgICovXG4gICAgIHBsYXlHYW1lT3ZlcigpXG4gICAgIHtcbiAgIFxuICAgICB9XG4gICAgLypcbiAgICAgICog5oiQ5Yqf55qE5ri45oiP57uT5p2fXG4gICAgICAqL1xuICAgIHBsYXlHYW1lUmVzdWx0RmFpbGVkKClcbiAgICB7XG5cbiAgICB9XG4gICAgLypcbiAgKiDmiJDlip/nmoTmuLjmiI/nu5PmnZ9cbiAgKi9cbiAgICBwbGF5R2FtZVJlc3VsdFN1Y2Nlc3MoKVxuICAgIHtcblxuICAgIH1cbiAgICAvKipcbiAgICAgKiDmiqXorabnmoTpn7PmlYhcbiAgICAgKi9cbiAgICBwbGF5V2FybmluZygpXG4gICAge1xuICAgICAgICByZXR1cm4gdGhpcy5wbGF5KHRoaXMuYXVkaW9XYXJuaW5nLCBmYWxzZSxudWxsLHRoaXMubUVmZmVjdFN3aXRjaCk7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiDmlrnlnZfnorDmkp7nmoTlo7Dpn7NcbiAgICAgKi9cbiAgICBwbGF5QnJpY2soKVxuICAgIHtcbiAgICAgICAgLy8gcmV0dXJuIHRoaXMucGxheSh0aGlzLmJyaWNrU291bmQsZmFsc2UpO1xuICAgIH1cbiAgICAvL+aWueWdl+egtOeijueahOWjsOmfs1xuICAgIGJyaWNrQm9vbSgpe1xuICAgXG4gICAgfVxuICAgIC8qKlxuICAgICAqIOaMiemSrlxuICAgICAqL1xuICAgIHBsYXlBdWRpb0J1dHRvbiAoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBsYXkodGhpcy5hdWRpb0J1dHRvbkNsaWNrLCBmYWxzZSxudWxsLHRoaXMubUVmZmVjdFN3aXRjaCk7XG4gICAgfVxuXG4gICAgcGxheVdpbigpXG4gICAge1xuICAgICAgICByZXR1cm4gdGhpcy5wbGF5KHRoaXMuYXVkaW9XaW4sIGZhbHNlLG51bGwsdGhpcy5tRWZmZWN0U3dpdGNoKTtcbiAgICB9XG5cbiAgICBwbGF5UmFuZG9tTWF0Y2goKVxuICAgIHtcbiAgICAgICAgdGhpcy5wbGF5TXVzaWModGhpcy5hdWRpb0dhbWVCZ20wLHt9LHRydWUpO1xuICAgIH1cbiAgICBwbGF5TWF0Y2hGb3VuZFNvdW5kKClcbiAgICB7XG4gICAgICAgIHRoaXMuc3RvcE11c2ljKCk7XG4gICAgICAgIC8vIHJldHVybiB0aGlzLnBsYXkodGhpcy5tYXRjaEZvdW5kU291bmQsIGZhbHNlKTtcbiAgICB9XG5cbn07XG5cbi8vIGV4cG9ydCB7IEF1ZGlvTWFuYWdlciB9OyJdfQ== +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/module/GameStart/GameAppStart.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, '61d4ccY2ztLMYIh8WvqPPAw', 'GameAppStart'); +// Script/module/GameStart/GameAppStart.ts + +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var GameConfig_1 = require("../Config/GameConfig"); +var HttpUtil_1 = require("../Crypto/HttpUtil"); +var AudioManager_1 = require("../Music/AudioManager"); +var Notification_1 = require("../Notification/Notification"); +var Storage_1 = require("../Storage/Storage"); +var GameTool_1 = require("../Tool/GameTool"); +window.initMgr = function () { + if (cc.fx) { + return; + } + cc.fx = {}; + console.log("初始化"); + //基础状态信息 + cc.fx.StateInfo = { + debugMode: true, + networkConnected: true, + networkType: 'none', + isOnForeground: true //当前是否是在前台 + }; + //应用系统信息 + //配置文件 + cc.fx.GameConfig = GameConfig_1.GameConfig; + cc.fx.HttpUtil = HttpUtil_1.default; + cc.fx.GameTool = GameTool_1.GameTool; + cc.fx.AudioManager = AudioManager_1.default; + cc.fx.Notifications = Notification_1.Notifications; + cc.fx.StorageMessage = Storage_1.StorageMessage; + cc.fx.ShareInfo = { + queryId: -1 //分享id + }; + /* + * 客户端埋点分享类型 + */ + cc.fx.BurialShareType = { + Default: "default", + Invite: "invite", + DailyInviteRoomJoin: 'invite_join_room', + DailyInviteFriend: 'invite_friend', + DailyInviteGroup: 'invate_group', + DailyInviteGroupAlive: 'invate_alive', + DailyInviteGroupReward: 'invate_rewared', + DailyInviteGroupBox: 'invate_box', + DailyInviteGroupBall: 'invate_ball', + MatchResult: 'matchResult', + MatchFix5: 'MatchFix5', + MatchFix20: 'MatchFix20', + MatchFix100: 'MatchFix100', + MatchFix500: 'MatchFix500', + NewerRedEnvelope: 'newerRedEnvelope', + CoinRoomResult: 'coinRoomResult', + HighRate: "highRate", + CoinRoomWinStreak: 'coinRoomWinStreak', + CoinRoomBankruptcy1: 'coinRoomBankruptcy1', + CoinRoomBankruptcy2: 'coinRoomBankruptcy2', + CoinRoomBankruptcy3: 'coinRoomBankruptcy3', + }; + /* + * 分享到哪儿给奖励 group frined all + */ + cc.fx.ShareWhereReward = { + Group: "group", + Friend: "friend", + All: "all", + }; + //暂时不用 + cc.fx.clickStatEventType = { + clickStatEventTypeVideoAD: 20173201, + clickStatEventTypeClickAdVideo: 20173202, + clickStatEventTypeBannerAD: 20173203, + clickStatEventTypeUserFrom: 99990001, + clickStatEventTypeShare: 99990002, + clickStatEventTypeClickAdBtn: 99990007, + clickStatEventTypeBannerAD2: 67890033, + clickStatEventTypeSubmitVersionInfo: 9999, + clickStatEventTypeClickFirstAd: 99990003, + clickStatEventTypeClickSecondAd: 99990004, + clickStatEventTypeWxLoginStart: 10001, + clickStatEventTypeWxLoginSuccess: 10002, + clickStatEventTypeWxLoginFailed: 10003, + clickStatEventTypeAuthorizationStart: 10003, + clickStatEventTypeAuthorizationSuccess: 10004, + clickStatEventTypeAuthorizationFailed: 10005, + clickStatEventTypeLoginSDKStart: 10007, + clickStatEventTypeLoginSDKSuccess: 10008, + clickStatEventTypeLoginSDKFailed: 10009, + clickStatEventTypeTCP_Start: 10009, + clickStatEventTypeTCP_Success: 10010, + clickStatEventTypeTCP_Failed: 10011, + }; +}; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXEdhbWVTdGFydFxcR2FtZUFwcFN0YXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbURBQWtEO0FBQ2xELCtDQUEwQztBQUMxQyxzREFBaUQ7QUFFakQsNkRBQTZEO0FBQzdELDhDQUFvRDtBQUNwRCw2Q0FBNEM7QUFFNUMsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUNiLElBQUcsRUFBRSxDQUFDLEVBQUUsRUFDUjtRQUNJLE9BQU87S0FDVjtJQUNELEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixRQUFRO0lBQ1IsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEdBQUc7UUFDZCxTQUFTLEVBQUUsSUFBSTtRQUNmLGdCQUFnQixFQUFFLElBQUk7UUFDdEIsV0FBVyxFQUFFLE1BQU07UUFDbkIsY0FBYyxFQUFFLElBQUksQ0FBTSxVQUFVO0tBQ3ZDLENBQUM7SUFFRixRQUFRO0lBQ1IsTUFBTTtJQUNOLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxHQUFHLHVCQUFVLENBQUM7SUFDOUIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEdBQUcsa0JBQVEsQ0FBQztJQUMxQixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsR0FBRyxtQkFBUSxDQUFDO0lBQzFCLEVBQUUsQ0FBQyxFQUFFLENBQUMsWUFBWSxHQUFHLHNCQUFZLENBQUM7SUFDbEMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEdBQUcsNEJBQWEsQ0FBQztJQUNwQyxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQWMsR0FBRyx3QkFBYyxDQUFDO0lBRXRDLEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxHQUFHO1FBQ2QsT0FBTyxFQUFHLENBQUMsQ0FBQyxDQUFjLE1BQU07S0FDbkMsQ0FBQztJQUVGOztNQUVFO0lBQ0YsRUFBRSxDQUFDLEVBQUUsQ0FBQyxlQUFlLEdBQUc7UUFDcEIsT0FBTyxFQUFHLFNBQVM7UUFDbkIsTUFBTSxFQUFHLFFBQVE7UUFFakIsbUJBQW1CLEVBQUMsa0JBQWtCO1FBQ3RDLGlCQUFpQixFQUFHLGVBQWU7UUFDbkMsZ0JBQWdCLEVBQUcsY0FBYztRQUNqQyxxQkFBcUIsRUFBRSxjQUFjO1FBQ3JDLHNCQUFzQixFQUFFLGdCQUFnQjtRQUN4QyxtQkFBbUIsRUFBRSxZQUFZO1FBQ2pDLG9CQUFvQixFQUFFLGFBQWE7UUFFbkMsV0FBVyxFQUFHLGFBQWE7UUFDM0IsU0FBUyxFQUFFLFdBQVc7UUFDdEIsVUFBVSxFQUFFLFlBQVk7UUFDeEIsV0FBVyxFQUFFLGFBQWE7UUFDMUIsV0FBVyxFQUFFLGFBQWE7UUFDMUIsZ0JBQWdCLEVBQUUsa0JBQWtCO1FBQ3BDLGNBQWMsRUFBRSxnQkFBZ0I7UUFDaEMsUUFBUSxFQUFHLFVBQVU7UUFDckIsaUJBQWlCLEVBQUUsbUJBQW1CO1FBQ3RDLG1CQUFtQixFQUFFLHFCQUFxQjtRQUMxQyxtQkFBbUIsRUFBRSxxQkFBcUI7UUFDMUMsbUJBQW1CLEVBQUUscUJBQXFCO0tBQzdDLENBQUM7SUFFRjs7T0FFRztJQUNILEVBQUUsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLEdBQUc7UUFDckIsS0FBSyxFQUFFLE9BQU87UUFDZCxNQUFNLEVBQUcsUUFBUTtRQUNqQixHQUFHLEVBQUcsS0FBSztLQUNkLENBQUM7SUFHRixNQUFNO0lBQ04sRUFBRSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsR0FBRztRQUN2Qix5QkFBeUIsRUFBRyxRQUFRO1FBQ3BDLDhCQUE4QixFQUFHLFFBQVE7UUFDekMsMEJBQTBCLEVBQUcsUUFBUTtRQUNyQywwQkFBMEIsRUFBRyxRQUFRO1FBQ3JDLHVCQUF1QixFQUFHLFFBQVE7UUFDbEMsNEJBQTRCLEVBQUcsUUFBUTtRQUN2QywyQkFBMkIsRUFBRyxRQUFRO1FBQ3RDLG1DQUFtQyxFQUFHLElBQUk7UUFDMUMsOEJBQThCLEVBQUcsUUFBUTtRQUN6QywrQkFBK0IsRUFBRyxRQUFRO1FBQzFDLDhCQUE4QixFQUFHLEtBQUs7UUFDdEMsZ0NBQWdDLEVBQUcsS0FBSztRQUN4QywrQkFBK0IsRUFBRyxLQUFLO1FBQ3ZDLG9DQUFvQyxFQUFHLEtBQUs7UUFDNUMsc0NBQXNDLEVBQUcsS0FBSztRQUM5QyxxQ0FBcUMsRUFBRyxLQUFLO1FBQzdDLCtCQUErQixFQUFHLEtBQUs7UUFDdkMsaUNBQWlDLEVBQUcsS0FBSztRQUN6QyxnQ0FBZ0MsRUFBRyxLQUFLO1FBQ3hDLDJCQUEyQixFQUFHLEtBQUs7UUFDbkMsNkJBQTZCLEVBQUcsS0FBSztRQUNyQyw0QkFBNEIsRUFBRyxLQUFLO0tBQ3ZDLENBQUM7QUFFTixDQUFDLENBQUMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHYW1lQ29uZmlnIH0gZnJvbSBcIi4uL0NvbmZpZy9HYW1lQ29uZmlnXCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi4vQ3J5cHRvL0h0dHBVdGlsXCI7XHJcbmltcG9ydCBBdWRpb01hbmFnZXIgZnJvbSBcIi4uL011c2ljL0F1ZGlvTWFuYWdlclwiO1xyXG5cclxuaW1wb3J0IHsgTm90aWZpY2F0aW9ucyB9IGZyb20gXCIuLi9Ob3RpZmljYXRpb24vTm90aWZpY2F0aW9uXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VNZXNzYWdlIH0gZnJvbSBcIi4uL1N0b3JhZ2UvU3RvcmFnZVwiO1xyXG5pbXBvcnQgeyBHYW1lVG9vbCB9IGZyb20gXCIuLi9Ub29sL0dhbWVUb29sXCI7XHJcblxyXG53aW5kb3cuaW5pdE1nciA9IGZ1bmN0aW9uKCkge1xyXG4gICAgaWYoY2MuZngpXHJcbiAgICB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY2MuZnggPSB7fTtcclxuICAgIGNvbnNvbGUubG9nKFwi5Yid5aeL5YyWXCIpO1xyXG4gICAgLy/ln7rnoYDnirbmgIHkv6Hmga9cclxuICAgIGNjLmZ4LlN0YXRlSW5mbyA9IHtcclxuICAgICAgICBkZWJ1Z01vZGU6IHRydWUsXHJcbiAgICAgICAgbmV0d29ya0Nvbm5lY3RlZDogdHJ1ZSwgICAvL+e9kee7nOeKtuaAgVxyXG4gICAgICAgIG5ldHdvcmtUeXBlOiAnbm9uZScsICAgICAgLy/nvZHnu5znsbvlnotcclxuICAgICAgICBpc09uRm9yZWdyb3VuZDogdHJ1ZSAgICAgIC8v5b2T5YmN5piv5ZCm5piv5Zyo5YmN5Y+wXHJcbiAgICB9O1xyXG5cclxuICAgIC8v5bqU55So57O757uf5L+h5oGvXHJcbiAgICAvL+mFjee9ruaWh+S7tlxyXG4gICAgY2MuZnguR2FtZUNvbmZpZyA9IEdhbWVDb25maWc7XHJcbiAgICBjYy5meC5IdHRwVXRpbCA9IEh0dHBVdGlsO1xyXG4gICAgY2MuZnguR2FtZVRvb2wgPSBHYW1lVG9vbDtcclxuICAgIGNjLmZ4LkF1ZGlvTWFuYWdlciA9IEF1ZGlvTWFuYWdlcjtcclxuICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMgPSBOb3RpZmljYXRpb25zO1xyXG4gICAgY2MuZnguU3RvcmFnZU1lc3NhZ2UgPSBTdG9yYWdlTWVzc2FnZTtcclxuXHJcbiAgICBjYy5meC5TaGFyZUluZm8gPSB7XHJcbiAgICAgICAgcXVlcnlJZCA6IC0xICAgICAgICAgICAgICAvL+WIhuS6q2lkXHJcbiAgICB9O1xyXG5cclxuICAgIC8qXHJcbiAgICAgICAgKiDlrqLmiLfnq6/ln4vngrnliIbkuqvnsbvlnotcclxuICAgICovXHJcbiAgICBjYy5meC5CdXJpYWxTaGFyZVR5cGUgPSB7XHJcbiAgICAgICAgRGVmYXVsdCA6IFwiZGVmYXVsdFwiLCAgICAgICAgLy/pu5jorqTliIbkuqvnsbvlnoss5YiG5Lqr5Yiw576kXHJcbiAgICAgICAgSW52aXRlIDogXCJpbnZpdGVcIiwgICAgICAgICAgLy8g6YKA6K+35aW95Y+LXHJcblxyXG4gICAgICAgIERhaWx5SW52aXRlUm9vbUpvaW46J2ludml0ZV9qb2luX3Jvb20nLCAvL+mCgOivt+WlveWPi+WKoOWFpVxyXG4gICAgICAgIERhaWx5SW52aXRlRnJpZW5kIDogJ2ludml0ZV9mcmllbmQnLCAvLyDml6XluLjpgoDor7flpb3lj4tcclxuICAgICAgICBEYWlseUludml0ZUdyb3VwIDogJ2ludmF0ZV9ncm91cCcsIC8vIOaXpeW4uOWIhuS6q+e+pFxyXG4gICAgICAgIERhaWx5SW52aXRlR3JvdXBBbGl2ZTogJ2ludmF0ZV9hbGl2ZScsIC8v5pel5bi45YiG5Lqr576k5aSN5rS7XHJcbiAgICAgICAgRGFpbHlJbnZpdGVHcm91cFJld2FyZDogJ2ludmF0ZV9yZXdhcmVkJywvL+WIhuS6q+WlluWKsee/u+WAjVxyXG4gICAgICAgIERhaWx5SW52aXRlR3JvdXBCb3g6ICdpbnZhdGVfYm94JywgIC8v5a6d566x5YiG5Lqr5aWW5YqxXHJcbiAgICAgICAgRGFpbHlJbnZpdGVHcm91cEJhbGw6ICdpbnZhdGVfYmFsbCcsICAvL+WIhuS6q+mihuWPlueQg+eQg1xyXG5cclxuICAgICAgICBNYXRjaFJlc3VsdCA6ICdtYXRjaFJlc3VsdCcsICAvLyDmr5TotZvnu5PnrpfliIbkuqtcclxuICAgICAgICBNYXRjaEZpeDU6ICdNYXRjaEZpeDUnLCAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gNeWFg+e6ouWMhei1m1xyXG4gICAgICAgIE1hdGNoRml4MjA6ICdNYXRjaEZpeDIwJywgICAgICAgICAgICAgICAgICAgICAgICAvLyAyMOWFg+e6ouWMhei1m1xyXG4gICAgICAgIE1hdGNoRml4MTAwOiAnTWF0Y2hGaXgxMDAnLCAgICAgICAgICAgICAgICAgICAgICAvLyAxMDDlhYPnuqLljIXotZtcclxuICAgICAgICBNYXRjaEZpeDUwMDogJ01hdGNoRml4NTAwJywgICAgICAgICAgICAgICAgICAgICAgLy8gNTAw5YWD57qi5YyF6LWbXHJcbiAgICAgICAgTmV3ZXJSZWRFbnZlbG9wZTogJ25ld2VyUmVkRW52ZWxvcGUnLCAgICAgICAgICAgIC8vIOaWsOaJi+e6ouWMhVxyXG4gICAgICAgIENvaW5Sb29tUmVzdWx0OiAnY29pblJvb21SZXN1bHQnLCAgICAgICAgICAgICAgICAvLyDph5HluIHmoYznu5PnrpdcclxuICAgICAgICBIaWdoUmF0ZSA6IFwiaGlnaFJhdGVcIiwvL+mrmOWAjeWIhuS6q1xyXG4gICAgICAgIENvaW5Sb29tV2luU3RyZWFrOiAnY29pblJvb21XaW5TdHJlYWsnLCAgICAgICAgIC8vIOi/nuiDnFxyXG4gICAgICAgIENvaW5Sb29tQmFua3J1cHRjeTE6ICdjb2luUm9vbUJhbmtydXB0Y3kxJywgICAgICAgICAvLyDph5HluIHmoYznoLTkuqdcclxuICAgICAgICBDb2luUm9vbUJhbmtydXB0Y3kyOiAnY29pblJvb21CYW5rcnVwdGN5MicsICAgICAgICAgLy8g6YeR5biB5qGM56C05LqnXHJcbiAgICAgICAgQ29pblJvb21CYW5rcnVwdGN5MzogJ2NvaW5Sb29tQmFua3J1cHRjeTMnLCAgICAgICAgIC8vIOmHkeW4geahjOegtOS6p1xyXG4gICAgfTtcclxuXHJcbiAgICAvKlxyXG4gICAgICog5YiG5Lqr5Yiw5ZOq5YS/57uZ5aWW5YqxIGdyb3VwIGZyaW5lZCBhbGxcclxuICAgICAqL1xyXG4gICAgY2MuZnguU2hhcmVXaGVyZVJld2FyZCA9IHtcclxuICAgICAgICBHcm91cCA6XCJncm91cFwiLCAvL+W+ruS/oee+pFxyXG4gICAgICAgIEZyaWVuZCA6IFwiZnJpZW5kXCIsLy/lpb3lj4tcclxuICAgICAgICBBbGwgOiBcImFsbFwiLCAvL+S4jeWMuuWIhlxyXG4gICAgfTtcclxuXHJcblxyXG4gICAgLy/mmoLml7bkuI3nlKhcclxuICAgIGNjLmZ4LmNsaWNrU3RhdEV2ZW50VHlwZSA9IHtcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVWaWRlb0FEIDogMjAxNzMyMDEsLy/op4bpopHmkq3mlL7lrozmiJBcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVDbGlja0FkVmlkZW8gOiAyMDE3MzIwMiwvL+inhumikeaSreaUvuS4uuWujOaIkFxyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUJhbm5lckFEIDogMjAxNzMyMDMsLy9iYW5uZXLmkq3mlL7kuLrlrozmiJBcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVVc2VyRnJvbSA6IDk5OTkwMDAxLC8v55So5oi35p2l5rqQXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlU2hhcmUgOiA5OTk5MDAwMiwvL+eUqOaIt+WIhuS6q1xyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUNsaWNrQWRCdG4gOiA5OTk5MDAwNywvL+eCueWHu+WIhua1gWljb25cclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVCYW5uZXJBRDIgOiA2Nzg5MDAzMywgLy8gYmFubmVy5bm/5ZGK5bmy6aKEXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlU3VibWl0VmVyc2lvbkluZm8gOiA5OTk5LCAvL+S4iuaKpeW+ruS/oeeJiOacrOWPiuWfuuehgOW6k+S/oeaBr1xyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUNsaWNrRmlyc3RBZCA6IDk5OTkwMDAzLCAvL+WIhua1gWljb27mmL7npLpcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVDbGlja1NlY29uZEFkIDogOTk5OTAwMDQsIC8v546p5a6254K55Ye75YiG5rWB5oyJ6ZKuXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlV3hMb2dpblN0YXJ0IDogMTAwMDEsLy/lvq7kv6HnmbvlvZXlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVXeExvZ2luU3VjY2VzcyA6IDEwMDAyLC8v5b6u5L+h55m75b2V5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlV3hMb2dpbkZhaWxlZCA6IDEwMDAzLC8v5b6u5L+h55m75b2V5aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlQXV0aG9yaXphdGlvblN0YXJ0IDogMTAwMDMsLy/mjojmnYPlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVBdXRob3JpemF0aW9uU3VjY2VzcyA6IDEwMDA0LC8v5o6I5p2D5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlQXV0aG9yaXphdGlvbkZhaWxlZCA6IDEwMDA1LC8v5o6I5p2D5aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlTG9naW5TREtTdGFydCA6IDEwMDA3LC8v55m75b2VU0RL5byA5aeLXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlTG9naW5TREtTdWNjZXNzIDogMTAwMDgsLy/nmbvlvZVTREvmiJDlip9cclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVMb2dpblNES0ZhaWxlZCA6IDEwMDA5LC8v55m75b2VU0RL5pe25aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlVENQX1N0YXJ0IDogMTAwMDksLy9UQ1Dov57mjqXlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVUQ1BfU3VjY2VzcyA6IDEwMDEwLC8vVENQ6L+e5o6l5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlVENQX0ZhaWxlZCA6IDEwMDExLC8vVENQ6L+e5o6l5aSx6LSlXHJcbiAgICB9O1xyXG5cclxufTsiXX0= +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/module/RankList/ItemRender.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, 'ca0f9k0oBVDbpQC+OMNTF3m', 'ItemRender'); +// Script/module/RankList/ItemRender.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 ItemRender = /** @class */ (function (_super) { + __extends(ItemRender, _super); + function ItemRender() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /**数据 */ + _this.data = null; + /**索引 0表示第一项*/ + _this.itemIndex = 0; + return _this; + } + /**数据改变时调用 */ + ItemRender.prototype.dataChanged = function () { + var name = cc.fx.GameTool.subName(this.data.name, 6); + this.node.getChildByName("rankLab").getComponent(cc.Label).string = this.data.rank + ""; + this.node.getChildByName("nameLab").getComponent(cc.Label).string = name + ""; + this.node.getChildByName("totalLab").getComponent(cc.Label).string = this.data.total + ""; + this.node.getChildByName("rank").getChildByName("one").active = false; + this.node.getChildByName("rank").getChildByName("two").active = false; + this.node.getChildByName("rank").getChildByName("three").active = false; + if (this.data.rank == 1) { + this.node.getChildByName("rank").getChildByName("one").active = true; + this.node.getChildByName("rankLab").active = false; + } + else if (this.data.rank == 2) { + this.node.getChildByName("rank").getChildByName("two").active = true; + this.node.getChildByName("rankLab").active = false; + } + else if (this.data.rank == 3) { + this.node.getChildByName("rank").getChildByName("three").active = true; + this.node.getChildByName("rankLab").active = false; + } + else { + this.node.getChildByName("rankLab").active = true; + } + this.setPic(); + }; + ItemRender.prototype.setPic = function () { + var _this = this; + this.node.getChildByName("pic").getChildByName("icon").active = false; + this.node.getChildByName("pic").getChildByName("pic").active = false; + var self = this; + var url = this.data.pic; + fetch(url) + .then(function (response) { + return response.headers.get('Content-Length'); + }) + .then(function (errNo) { + // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值 + if (errNo == "5093") { + // console.log(this.data.rank,"没头像"); + _this.node.getChildByName("pic").getChildByName("icon").active = true; + } + }) + .catch(function (error) { + // console.error('Error fetching X-Info:', error); + }); + cc.assetManager.loadRemote(url, { ext: '.png' }, function (err, texture) { + if (texture) { + _this.node.getChildByName("pic").getChildByName("pic").active = true; + var sprite = _this.node.getChildByName("pic").getChildByName("pic").getComponent(cc.Sprite); + sprite.spriteFrame = new cc.SpriteFrame(texture); + // console.log(this.data.rank,"设置头像成功",err); + } + else { + // console.log("设置头像失败",url); + console.log(err, texture); + } + }); + }; + ItemRender = __decorate([ + ccclass + ], ItemRender); + return ItemRender; +}(cc.Component)); +exports.default = ItemRender; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFJhbmtMaXN0XFxJdGVtUmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdNLElBQUEsS0FBd0IsRUFBRSxDQUFDLFVBQVUsRUFBbkMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFrQixDQUFDO0FBRzVDO0lBQXdDLDhCQUFZO0lBQXBEO1FBQUEscUVBbUVDO1FBbEVHLFFBQVE7UUFDRCxVQUFJLEdBQU8sSUFBSSxDQUFDO1FBQ3ZCLGNBQWM7UUFDUCxlQUFTLEdBQVUsQ0FBQyxDQUFDOztJQStEaEMsQ0FBQztJQTdERyxhQUFhO0lBQ04sZ0NBQVcsR0FBbEI7UUFDSSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDOUUsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQzFGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMs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b0I7WUFDbEUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFoRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FtRTlCO0lBQUQsaUJBQUM7Q0FuRUQsQUFtRUMsQ0FuRXVDLEVBQUUsQ0FBQyxTQUFTLEdBbUVuRDtrQkFuRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IExpc3QsIHsgTGlzdFR5cGUgfSBmcm9tIFwiLi9MaXN0XCI7XHJcblxyXG5jb25zdCB7IGNjY2xhc3MsIHByb3BlcnR5IH0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSXRlbVJlbmRlciBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICAvKirmlbDmja4gKi9cclxuICAgIHB1YmxpYyBkYXRhOmFueSA9IG51bGw7XHJcbiAgICAvKirntKLlvJUgMOihqOekuuesrOS4gOmhuSovXHJcbiAgICBwdWJsaWMgaXRlbUluZGV4Om51bWJlciA9IDA7XHJcblxyXG4gICAgLyoq5pWw5o2u5pS55Y+Y5pe26LCD55SoICovXHJcbiAgICBwdWJsaWMgZGF0YUNoYW5nZWQoKXtcclxuICAgICAgICBsZXQgbmFtZSA9IGNjLmZ4LkdhbWVUb29sLnN1Yk5hbWUodGhpcy5kYXRhLm5hbWUsNik7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuZGF0YS5yYW5rICsgXCJcIjtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gbmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLHtleHQ6Jy5wbmcnfSwoZXJyLCB0ZXh0dXJlOmNjLlRleHR1cmUyRCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0ZXh0dXJlKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5hY3RpdmU9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB2YXIgc3ByaXRlID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENvbXBvbmVudChjYy5TcHJpdGUpO1xyXG4gICAgICAgICAgICAgICAgc3ByaXRlLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLorr7nva7lpLTlg4/miJDlip9cIixlcnIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIuiuvue9ruWktOWDj+Wksei0pVwiLHVybCk7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIsdGV4dHVyZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG5cclxufVxyXG4iXX0= +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/module/Notification/Notification.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, '55403VjGlpPL564gsdiZBg3', 'Notification'); +// Script/module/Notification/Notification.ts + +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Notifications = void 0; +//全局通知 +var Notifications = { + _eventMap: [], + on: function (masgId, callback, target) { + if (this._eventMap[masgId] === undefined) { + this._eventMap[masgId] = []; + } + this._eventMap[masgId].push({ callback: callback, target: target }); + }, + emit: function (masgId, parameter) { + var array = this._eventMap[masgId]; + if (array === undefined) + return; + for (var i = 0; i < array.length; i++) { + var element = array[i]; + if (element) + element.callback.call(element.target, parameter); + } + }, + off: function (masgId, callback) { + var array = this._eventMap[masgId]; + if (array === undefined) + return; + for (var i = 0; i < array.length; i++) { + var element = array[i]; + if (element && element.callback === callback) { + array[i] = undefined; + break; + } + } + }, + offMasgId: function (masgId) { + this._eventMap[masgId] = undefined; + }, + removeAllMsg: function () { + for (var k in this._eventMap) { + if (this._eventMap[k]) { + this.offMasgId(k); + } + } + } +}; +exports.Notifications = Notifications; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXE5vdGlmaWNhdGlvblxcTm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE1BQU07QUFDTixJQUFJLGFBQWEsR0FBRztJQUNoQixTQUFTLEVBQUUsRUFBRTtJQUNiLEVBQUUsRUFBRSxVQUFVLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTTtRQUNsQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssU0FBUyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLEVBQUUsVUFBVSxNQUFNLEVBQUUsU0FBUztRQUM3QixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBRWhDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLE9BQU87Z0JBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFRCxHQUFHLEVBQUUsVUFBVSxNQUFNLEVBQUUsUUFBUTtRQUMzQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxLQUFLLFNBQVM7WUFBRSxPQUFPO1FBQ2hDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRTtnQkFDMUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztnQkFDckIsTUFBTTthQUNUO1NBQ0o7SUFDTCxDQUFDO0lBRUQsU0FBUyxFQUFFLFVBQVUsTUFBTTtRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsWUFBWSxFQUFFO1FBQ1YsS0FBSyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzFCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyQjtTQUNKO0lBQ0wsQ0FBQztDQUNKLENBQUM7QUFDTyxzQ0FBYSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v5YWo5bGA6YCa55+lXG52YXIgTm90aWZpY2F0aW9ucyA9IHtcbiAgICBfZXZlbnRNYXA6IFtdLFxuICAgIG9uOiBmdW5jdGlvbiAobWFzZ0lkLCBjYWxsYmFjaywgdGFyZ2V0KSB7XG4gICAgICAgIGlmICh0aGlzLl9ldmVudE1hcFttYXNnSWRdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2V2ZW50TWFwW21hc2dJZF0gPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdLnB1c2goeyBjYWxsYmFjazogY2FsbGJhY2ssIHRhcmdldDogdGFyZ2V0IH0pO1xuICAgIH0sXG5cbiAgICBlbWl0OiBmdW5jdGlvbiAobWFzZ0lkLCBwYXJhbWV0ZXIpIHtcbiAgICAgICAgbGV0IGFycmF5ID0gdGhpcy5fZXZlbnRNYXBbbWFzZ0lkXTtcbiAgICAgICAgaWYgKGFycmF5ID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgZWxlbWVudCA9IGFycmF5W2ldO1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQpIGVsZW1lbnQuY2FsbGJhY2suY2FsbChlbGVtZW50LnRhcmdldCwgcGFyYW1ldGVyKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBvZmY6IGZ1bmN0aW9uIChtYXNnSWQsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBhcnJheSA9IHRoaXMuX2V2ZW50TWFwW21hc2dJZF07XG4gICAgICAgIGlmIChhcnJheSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBlbGVtZW50ID0gYXJyYXlbaV07XG4gICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LmNhbGxiYWNrID09PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGFycmF5W2ldID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcblxuICAgIG9mZk1hc2dJZDogZnVuY3Rpb24gKG1hc2dJZCkge1xuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdID0gdW5kZWZpbmVkO1xuICAgIH0sXG5cbiAgICByZW1vdmVBbGxNc2c6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yIChsZXQgayBpbiB0aGlzLl9ldmVudE1hcCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2V2ZW50TWFwW2tdKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vZmZNYXNnSWQoayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuZXhwb3J0IHsgTm90aWZpY2F0aW9ucyB9OyJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -3081,25 +3381,25 @@ var GameConfig = /** @class */ (function () { 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/GM_INFO', (err: any, res: cc.JsonAsset) => { + // if (err) { + // WeChat.setShare(location.href); + // // self.Authentication(); + // return; + // } + // let jsonData: object = res.json!; + // self.GM_INFO = jsonData["data"]; + // self.setCode(self.getKey("scode")); + // WeChat.setShare(location.href); + // // self.Authentication(); + // }) + // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { + // if (err) { + // return; + // } + // let jsonData: object = res.json!; + // self.CLICK_DATA = jsonData["data"]; + // }) cc.resources.load('Json/LEVEL_INFO', function (err, res) { if (err) { return; @@ -3124,9 +3424,12 @@ var GameConfig = /** @class */ (function () { url: "https://api.sparkus.cn", success: false, matchId: null, - custom: 0 //用于测试跳关卡 + custom: 0, + gap: [] //存储点击到太阳中心距离 }; this.setCode(this.getKey("scode")); + share_1.WeChat.setShare(location.href); + this.Authentication(); }; GameConfig.CLICK_init = function () { this.CLICK_DATA = @@ -3143,7 +3446,8 @@ var GameConfig = /** @class */ (function () { difficultyLevel: 0, sunList: [], stepTimeList: [], - remainder: 120 //游戏剩余时间 + remainder: 120, + gap: [] //点击到太阳中心距离 }; }; GameConfig.LEVEL_INFO_init = function () { @@ -3377,340 +3681,7 @@ cc._RF.pop(); }); } })(); -//# 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 -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/Storage/Storage.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, '1002938VFRJd70RiAno9Iys', 'Storage'); -// Script/module/Storage/Storage.ts - -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.StorageMessage = void 0; -//缓存浏览器数据 -var StorageMessage = { - getStorage: function (key) { - var result = null; - if (cc.sys.localStorage.getItem(key)) { - var result = cc.sys.localStorage.getItem(key); - } - if (result) { - result = JSON.parse(result); - } - return result; - }, - setStorage: function (key, value) { - //主动拉起分享接口 - var temp = JSON.stringify(value); - cc.sys.localStorage.setItem(key, temp); - }, - removeStorage: function (key) { - //主动删除消息接口 - if (cc.sys.localStorage.getItem(key)) { - cc.sys.localStorage.removeItem(key); - } - }, -}; -exports.StorageMessage = StorageMessage; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFN0b3JhZ2VcXFN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsU0FBUztBQUNULElBQUksY0FBYyxHQUFHO0lBQ2pCLFVBQVUsRUFBRyxVQUFTLEdBQUc7UUFDckIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMvQztRQUVELElBQUcsTUFBTSxFQUFDO1lBQ1IsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDN0I7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBQ0QsVUFBVSxFQUFHLFVBQVMsR0FBRyxFQUFDLEtBQUs7UUFDM0IsVUFBVTtRQUNWLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUMxQyxDQUFDO0lBQ0QsYUFBYSxFQUFHLFVBQVMsR0FBRztRQUMxQixVQUFVO1FBQ1YsSUFBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUM7WUFDbEMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1NBQ3BDO0lBQ0gsQ0FBQztDQUNKLENBQUM7QUFFTyx3Q0FBYyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v57yT5a2Y5rWP6KeI5Zmo5pWw5o2uXG52YXIgU3RvcmFnZU1lc3NhZ2UgPSB7XG4gICAgZ2V0U3RvcmFnZSA6IGZ1bmN0aW9uKGtleSl7XG4gICAgICAgIHZhciByZXN1bHQgPSBudWxsO1xuICAgICAgICBpZihjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KSl7XG4gICAgICAgICAgdmFyIHJlc3VsdCA9IGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpZihyZXN1bHQpe1xuICAgICAgICAgIHJlc3VsdCA9IEpTT04ucGFyc2UocmVzdWx0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sXG4gICAgc2V0U3RvcmFnZSA6IGZ1bmN0aW9uKGtleSx2YWx1ZSl7XG4gICAgICAgIC8v5Li75Yqo5ouJ6LW35YiG5Lqr5o6l5Y+jXG4gICAgICAgIHZhciB0ZW1wID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICBjYy5zeXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCB0ZW1wKVxuICAgIH0sXG4gICAgcmVtb3ZlU3RvcmFnZSA6IGZ1bmN0aW9uKGtleSl7XG4gICAgICAvL+S4u+WKqOWIoOmZpOa2iOaBr+aOpeWPo1xuICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICBjYy5zeXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KVxuICAgICAgfVxuICAgIH0sXG59O1xuXG5leHBvcnQgeyBTdG9yYWdlTWVzc2FnZSB9OyJdfQ== -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/GameStart/GameAppStart.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, '61d4ccY2ztLMYIh8WvqPPAw', 'GameAppStart'); -// Script/module/GameStart/GameAppStart.ts - -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var GameConfig_1 = require("../Config/GameConfig"); -var HttpUtil_1 = require("../Crypto/HttpUtil"); -var AudioManager_1 = require("../Music/AudioManager"); -var Notification_1 = require("../Notification/Notification"); -var Storage_1 = require("../Storage/Storage"); -var GameTool_1 = require("../Tool/GameTool"); -window.initMgr = function () { - if (cc.fx) { - return; - } - cc.fx = {}; - console.log("初始化"); - //基础状态信息 - cc.fx.StateInfo = { - debugMode: true, - networkConnected: true, - networkType: 'none', - isOnForeground: true //当前是否是在前台 - }; - //应用系统信息 - //配置文件 - cc.fx.GameConfig = GameConfig_1.GameConfig; - cc.fx.HttpUtil = HttpUtil_1.default; - cc.fx.GameTool = GameTool_1.GameTool; - cc.fx.AudioManager = AudioManager_1.default; - cc.fx.Notifications = Notification_1.Notifications; - cc.fx.StorageMessage = Storage_1.StorageMessage; - cc.fx.ShareInfo = { - queryId: -1 //分享id - }; - /* - * 客户端埋点分享类型 - */ - cc.fx.BurialShareType = { - Default: "default", - Invite: "invite", - DailyInviteRoomJoin: 'invite_join_room', - DailyInviteFriend: 'invite_friend', - DailyInviteGroup: 'invate_group', - DailyInviteGroupAlive: 'invate_alive', - DailyInviteGroupReward: 'invate_rewared', - DailyInviteGroupBox: 'invate_box', - DailyInviteGroupBall: 'invate_ball', - MatchResult: 'matchResult', - MatchFix5: 'MatchFix5', - MatchFix20: 'MatchFix20', - MatchFix100: 'MatchFix100', - MatchFix500: 'MatchFix500', - NewerRedEnvelope: 'newerRedEnvelope', - CoinRoomResult: 'coinRoomResult', - HighRate: "highRate", - CoinRoomWinStreak: 'coinRoomWinStreak', - CoinRoomBankruptcy1: 'coinRoomBankruptcy1', - CoinRoomBankruptcy2: 'coinRoomBankruptcy2', - CoinRoomBankruptcy3: 'coinRoomBankruptcy3', - }; - /* - * 分享到哪儿给奖励 group frined all - */ - cc.fx.ShareWhereReward = { - Group: "group", - Friend: "friend", - All: "all", - }; - //暂时不用 - cc.fx.clickStatEventType = { - clickStatEventTypeVideoAD: 20173201, - clickStatEventTypeClickAdVideo: 20173202, - clickStatEventTypeBannerAD: 20173203, - clickStatEventTypeUserFrom: 99990001, - clickStatEventTypeShare: 99990002, - clickStatEventTypeClickAdBtn: 99990007, - clickStatEventTypeBannerAD2: 67890033, - clickStatEventTypeSubmitVersionInfo: 9999, - clickStatEventTypeClickFirstAd: 99990003, - clickStatEventTypeClickSecondAd: 99990004, - clickStatEventTypeWxLoginStart: 10001, - clickStatEventTypeWxLoginSuccess: 10002, - clickStatEventTypeWxLoginFailed: 10003, - clickStatEventTypeAuthorizationStart: 10003, - clickStatEventTypeAuthorizationSuccess: 10004, - clickStatEventTypeAuthorizationFailed: 10005, - clickStatEventTypeLoginSDKStart: 10007, - clickStatEventTypeLoginSDKSuccess: 10008, - clickStatEventTypeLoginSDKFailed: 10009, - clickStatEventTypeTCP_Start: 10009, - clickStatEventTypeTCP_Success: 10010, - clickStatEventTypeTCP_Failed: 10011, - }; -}; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXEdhbWVTdGFydFxcR2FtZUFwcFN0YXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbURBQWtEO0FBQ2xELCtDQUEwQztBQUMxQyxzREFBaUQ7QUFFakQsNkRBQTZEO0FBQzdELDhDQUFvRDtBQUNwRCw2Q0FBNEM7QUFFNUMsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUNiLElBQUcsRUFBRSxDQUFDLEVBQUUsRUFDUjtRQUNJLE9BQU87S0FDVjtJQUNELEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixRQUFRO0lBQ1IsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEdBQUc7UUFDZCxTQUFTLEVBQUUsSUFBSTtRQUNmLGdCQUFnQixFQUFFLElBQUk7UUFDdEIsV0FBVyxFQUFFLE1BQU07UUFDbkIsY0FBYyxFQUFFLElBQUksQ0FBTSxVQUFVO0tBQ3ZDLENBQUM7SUFFRixRQUFRO0lBQ1IsTUFBTTtJQUNOLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxHQUFHLHVCQUFVLENBQUM7SUFDOUIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEdBQUcsa0JBQVEsQ0FBQztJQUMxQixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsR0FBRyxtQkFBUSxDQUFDO0lBQzFCLEVBQUUsQ0FBQyxFQUFFLENBQUMsWUFBWSxHQUFHLHNCQUFZLENBQUM7SUFDbEMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEdBQUcsNEJBQWEsQ0FBQztJQUNwQyxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQWMsR0FBRyx3QkFBYyxDQUFDO0lBRXRDLEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxHQUFHO1FBQ2QsT0FBTyxFQUFHLENBQUMsQ0FBQyxDQUFjLE1BQU07S0FDbkMsQ0FBQztJQUVGOztNQUVFO0lBQ0YsRUFBRSxDQUFDLEVBQUUsQ0FBQyxlQUFlLEdBQUc7UUFDcEIsT0FBTyxFQUFHLFNBQVM7UUFDbkIsTUFBTSxFQUFHLFFBQVE7UUFFakIsbUJBQW1CLEVBQUMsa0JBQWtCO1FBQ3RDLGlCQUFpQixFQUFHLGVBQWU7UUFDbkMsZ0JBQWdCLEVBQUcsY0FBYztRQUNqQyxxQkFBcUIsRUFBRSxjQUFjO1FBQ3JDLHNCQUFzQixFQUFFLGdCQUFnQjtRQUN4QyxtQkFBbUIsRUFBRSxZQUFZO1FBQ2pDLG9CQUFvQixFQUFFLGFBQWE7UUFFbkMsV0FBVyxFQUFHLGFBQWE7UUFDM0IsU0FBUyxFQUFFLFdBQVc7UUFDdEIsVUFBVSxFQUFFLFlBQVk7UUFDeEIsV0FBVyxFQUFFLGFBQWE7UUFDMUIsV0FBVyxFQUFFLGFBQWE7UUFDMUIsZ0JBQWdCLEVBQUUsa0JBQWtCO1FBQ3BDLGNBQWMsRUFBRSxnQkFBZ0I7UUFDaEMsUUFBUSxFQUFHLFVBQVU7UUFDckIsaUJBQWlCLEVBQUUsbUJBQW1CO1FBQ3RDLG1CQUFtQixFQUFFLHFCQUFxQjtRQUMxQyxtQkFBbUIsRUFBRSxxQkFBcUI7UUFDMUMsbUJBQW1CLEVBQUUscUJBQXFCO0tBQzdDLENBQUM7SUFFRjs7T0FFRztJQUNILEVBQUUsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLEdBQUc7UUFDckIsS0FBSyxFQUFFLE9BQU87UUFDZCxNQUFNLEVBQUcsUUFBUTtRQUNqQixHQUFHLEVBQUcsS0FBSztLQUNkLENBQUM7SUFHRixNQUFNO0lBQ04sRUFBRSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsR0FBRztRQUN2Qix5QkFBeUIsRUFBRyxRQUFRO1FBQ3BDLDhCQUE4QixFQUFHLFFBQVE7UUFDekMsMEJBQTBCLEVBQUcsUUFBUTtRQUNyQywwQkFBMEIsRUFBRyxRQUFRO1FBQ3JDLHVCQUF1QixFQUFHLFFBQVE7UUFDbEMsNEJBQTRCLEVBQUcsUUFBUTtRQUN2QywyQkFBMkIsRUFBRyxRQUFRO1FBQ3RDLG1DQUFtQyxFQUFHLElBQUk7UUFDMUMsOEJBQThCLEVBQUcsUUFBUTtRQUN6QywrQkFBK0IsRUFBRyxRQUFRO1FBQzFDLDhCQUE4QixFQUFHLEtBQUs7UUFDdEMsZ0NBQWdDLEVBQUcsS0FBSztRQUN4QywrQkFBK0IsRUFBRyxLQUFLO1FBQ3ZDLG9DQUFvQyxFQUFHLEtBQUs7UUFDNUMsc0NBQXNDLEVBQUcsS0FBSztRQUM5QyxxQ0FBcUMsRUFBRyxLQUFLO1FBQzdDLCtCQUErQixFQUFHLEtBQUs7UUFDdkMsaUNBQWlDLEVBQUcsS0FBSztRQUN6QyxnQ0FBZ0MsRUFBRyxLQUFLO1FBQ3hDLDJCQUEyQixFQUFHLEtBQUs7UUFDbkMsNkJBQTZCLEVBQUcsS0FBSztRQUNyQyw0QkFBNEIsRUFBRyxLQUFLO0tBQ3ZDLENBQUM7QUFFTixDQUFDLENBQUMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHYW1lQ29uZmlnIH0gZnJvbSBcIi4uL0NvbmZpZy9HYW1lQ29uZmlnXCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi4vQ3J5cHRvL0h0dHBVdGlsXCI7XHJcbmltcG9ydCBBdWRpb01hbmFnZXIgZnJvbSBcIi4uL011c2ljL0F1ZGlvTWFuYWdlclwiO1xyXG5cclxuaW1wb3J0IHsgTm90aWZpY2F0aW9ucyB9IGZyb20gXCIuLi9Ob3RpZmljYXRpb24vTm90aWZpY2F0aW9uXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VNZXNzYWdlIH0gZnJvbSBcIi4uL1N0b3JhZ2UvU3RvcmFnZVwiO1xyXG5pbXBvcnQgeyBHYW1lVG9vbCB9IGZyb20gXCIuLi9Ub29sL0dhbWVUb29sXCI7XHJcblxyXG53aW5kb3cuaW5pdE1nciA9IGZ1bmN0aW9uKCkge1xyXG4gICAgaWYoY2MuZngpXHJcbiAgICB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY2MuZnggPSB7fTtcclxuICAgIGNvbnNvbGUubG9nKFwi5Yid5aeL5YyWXCIpO1xyXG4gICAgLy/ln7rnoYDnirbmgIHkv6Hmga9cclxuICAgIGNjLmZ4LlN0YXRlSW5mbyA9IHtcclxuICAgICAgICBkZWJ1Z01vZGU6IHRydWUsXHJcbiAgICAgICAgbmV0d29ya0Nvbm5lY3RlZDogdHJ1ZSwgICAvL+e9kee7nOeKtuaAgVxyXG4gICAgICAgIG5ldHdvcmtUeXBlOiAnbm9uZScsICAgICAgLy/nvZHnu5znsbvlnotcclxuICAgICAgICBpc09uRm9yZWdyb3VuZDogdHJ1ZSAgICAgIC8v5b2T5YmN5piv5ZCm5piv5Zyo5YmN5Y+wXHJcbiAgICB9O1xyXG5cclxuICAgIC8v5bqU55So57O757uf5L+h5oGvXHJcbiAgICAvL+mFjee9ruaWh+S7tlxyXG4gICAgY2MuZnguR2FtZUNvbmZpZyA9IEdhbWVDb25maWc7XHJcbiAgICBjYy5meC5IdHRwVXRpbCA9IEh0dHBVdGlsO1xyXG4gICAgY2MuZnguR2FtZVRvb2wgPSBHYW1lVG9vbDtcclxuICAgIGNjLmZ4LkF1ZGlvTWFuYWdlciA9IEF1ZGlvTWFuYWdlcjtcclxuICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMgPSBOb3RpZmljYXRpb25zO1xyXG4gICAgY2MuZnguU3RvcmFnZU1lc3NhZ2UgPSBTdG9yYWdlTWVzc2FnZTtcclxuXHJcbiAgICBjYy5meC5TaGFyZUluZm8gPSB7XHJcbiAgICAgICAgcXVlcnlJZCA6IC0xICAgICAgICAgICAgICAvL+WIhuS6q2lkXHJcbiAgICB9O1xyXG5cclxuICAgIC8qXHJcbiAgICAgICAgKiDlrqLmiLfnq6/ln4vngrnliIbkuqvnsbvlnotcclxuICAgICovXHJcbiAgICBjYy5meC5CdXJpYWxTaGFyZVR5cGUgPSB7XHJcbiAgICAgICAgRGVmYXVsdCA6IFwiZGVmYXVsdFwiLCAgICAgICAgLy/pu5jorqTliIbkuqvnsbvlnoss5YiG5Lqr5Yiw576kXHJcbiAgICAgICAgSW52aXRlIDogXCJpbnZpdGVcIiwgICAgICAgICAgLy8g6YKA6K+35aW95Y+LXHJcblxyXG4gICAgICAgIERhaWx5SW52aXRlUm9vbUpvaW46J2ludml0ZV9qb2luX3Jvb20nLCAvL+mCgOivt+WlveWPi+WKoOWFpVxyXG4gICAgICAgIERhaWx5SW52aXRlRnJpZW5kIDogJ2ludml0ZV9mcmllbmQnLCAvLyDml6XluLjpgoDor7flpb3lj4tcclxuICAgICAgICBEYWlseUludml0ZUdyb3VwIDogJ2ludmF0ZV9ncm91cCcsIC8vIOaXpeW4uOWIhuS6q+e+pFxyXG4gICAgICAgIERhaWx5SW52aXRlR3JvdXBBbGl2ZTogJ2ludmF0ZV9hbGl2ZScsIC8v5pel5bi45YiG5Lqr576k5aSN5rS7XHJcbiAgICAgICAgRGFpbHlJbnZpdGVHcm91cFJld2FyZDogJ2ludmF0ZV9yZXdhcmVkJywvL+WIhuS6q+WlluWKsee/u+WAjVxyXG4gICAgICAgIERhaWx5SW52aXRlR3JvdXBCb3g6ICdpbnZhdGVfYm94JywgIC8v5a6d566x5YiG5Lqr5aWW5YqxXHJcbiAgICAgICAgRGFpbHlJbnZpdGVHcm91cEJhbGw6ICdpbnZhdGVfYmFsbCcsICAvL+WIhuS6q+mihuWPlueQg+eQg1xyXG5cclxuICAgICAgICBNYXRjaFJlc3VsdCA6ICdtYXRjaFJlc3VsdCcsICAvLyDmr5TotZvnu5PnrpfliIbkuqtcclxuICAgICAgICBNYXRjaEZpeDU6ICdNYXRjaEZpeDUnLCAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gNeWFg+e6ouWMhei1m1xyXG4gICAgICAgIE1hdGNoRml4MjA6ICdNYXRjaEZpeDIwJywgICAgICAgICAgICAgICAgICAgICAgICAvLyAyMOWFg+e6ouWMhei1m1xyXG4gICAgICAgIE1hdGNoRml4MTAwOiAnTWF0Y2hGaXgxMDAnLCAgICAgICAgICAgICAgICAgICAgICAvLyAxMDDlhYPnuqLljIXotZtcclxuICAgICAgICBNYXRjaEZpeDUwMDogJ01hdGNoRml4NTAwJywgICAgICAgICAgICAgICAgICAgICAgLy8gNTAw5YWD57qi5YyF6LWbXHJcbiAgICAgICAgTmV3ZXJSZWRFbnZlbG9wZTogJ25ld2VyUmVkRW52ZWxvcGUnLCAgICAgICAgICAgIC8vIOaWsOaJi+e6ouWMhVxyXG4gICAgICAgIENvaW5Sb29tUmVzdWx0OiAnY29pblJvb21SZXN1bHQnLCAgICAgICAgICAgICAgICAvLyDph5HluIHmoYznu5PnrpdcclxuICAgICAgICBIaWdoUmF0ZSA6IFwiaGlnaFJhdGVcIiwvL+mrmOWAjeWIhuS6q1xyXG4gICAgICAgIENvaW5Sb29tV2luU3RyZWFrOiAnY29pblJvb21XaW5TdHJlYWsnLCAgICAgICAgIC8vIOi/nuiDnFxyXG4gICAgICAgIENvaW5Sb29tQmFua3J1cHRjeTE6ICdjb2luUm9vbUJhbmtydXB0Y3kxJywgICAgICAgICAvLyDph5HluIHmoYznoLTkuqdcclxuICAgICAgICBDb2luUm9vbUJhbmtydXB0Y3kyOiAnY29pblJvb21CYW5rcnVwdGN5MicsICAgICAgICAgLy8g6YeR5biB5qGM56C05LqnXHJcbiAgICAgICAgQ29pblJvb21CYW5rcnVwdGN5MzogJ2NvaW5Sb29tQmFua3J1cHRjeTMnLCAgICAgICAgIC8vIOmHkeW4geahjOegtOS6p1xyXG4gICAgfTtcclxuXHJcbiAgICAvKlxyXG4gICAgICog5YiG5Lqr5Yiw5ZOq5YS/57uZ5aWW5YqxIGdyb3VwIGZyaW5lZCBhbGxcclxuICAgICAqL1xyXG4gICAgY2MuZnguU2hhcmVXaGVyZVJld2FyZCA9IHtcclxuICAgICAgICBHcm91cCA6XCJncm91cFwiLCAvL+W+ruS/oee+pFxyXG4gICAgICAgIEZyaWVuZCA6IFwiZnJpZW5kXCIsLy/lpb3lj4tcclxuICAgICAgICBBbGwgOiBcImFsbFwiLCAvL+S4jeWMuuWIhlxyXG4gICAgfTtcclxuXHJcblxyXG4gICAgLy/mmoLml7bkuI3nlKhcclxuICAgIGNjLmZ4LmNsaWNrU3RhdEV2ZW50VHlwZSA9IHtcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVWaWRlb0FEIDogMjAxNzMyMDEsLy/op4bpopHmkq3mlL7lrozmiJBcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVDbGlja0FkVmlkZW8gOiAyMDE3MzIwMiwvL+inhumikeaSreaUvuS4uuWujOaIkFxyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUJhbm5lckFEIDogMjAxNzMyMDMsLy9iYW5uZXLmkq3mlL7kuLrlrozmiJBcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVVc2VyRnJvbSA6IDk5OTkwMDAxLC8v55So5oi35p2l5rqQXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlU2hhcmUgOiA5OTk5MDAwMiwvL+eUqOaIt+WIhuS6q1xyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUNsaWNrQWRCdG4gOiA5OTk5MDAwNywvL+eCueWHu+WIhua1gWljb25cclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVCYW5uZXJBRDIgOiA2Nzg5MDAzMywgLy8gYmFubmVy5bm/5ZGK5bmy6aKEXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlU3VibWl0VmVyc2lvbkluZm8gOiA5OTk5LCAvL+S4iuaKpeW+ruS/oeeJiOacrOWPiuWfuuehgOW6k+S/oeaBr1xyXG4gICAgICAgIGNsaWNrU3RhdEV2ZW50VHlwZUNsaWNrRmlyc3RBZCA6IDk5OTkwMDAzLCAvL+WIhua1gWljb27mmL7npLpcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVDbGlja1NlY29uZEFkIDogOTk5OTAwMDQsIC8v546p5a6254K55Ye75YiG5rWB5oyJ6ZKuXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlV3hMb2dpblN0YXJ0IDogMTAwMDEsLy/lvq7kv6HnmbvlvZXlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVXeExvZ2luU3VjY2VzcyA6IDEwMDAyLC8v5b6u5L+h55m75b2V5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlV3hMb2dpbkZhaWxlZCA6IDEwMDAzLC8v5b6u5L+h55m75b2V5aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlQXV0aG9yaXphdGlvblN0YXJ0IDogMTAwMDMsLy/mjojmnYPlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVBdXRob3JpemF0aW9uU3VjY2VzcyA6IDEwMDA0LC8v5o6I5p2D5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlQXV0aG9yaXphdGlvbkZhaWxlZCA6IDEwMDA1LC8v5o6I5p2D5aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlTG9naW5TREtTdGFydCA6IDEwMDA3LC8v55m75b2VU0RL5byA5aeLXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlTG9naW5TREtTdWNjZXNzIDogMTAwMDgsLy/nmbvlvZVTREvmiJDlip9cclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVMb2dpblNES0ZhaWxlZCA6IDEwMDA5LC8v55m75b2VU0RL5pe25aSx6LSlXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlVENQX1N0YXJ0IDogMTAwMDksLy9UQ1Dov57mjqXlvIDlp4tcclxuICAgICAgICBjbGlja1N0YXRFdmVudFR5cGVUQ1BfU3VjY2VzcyA6IDEwMDEwLC8vVENQ6L+e5o6l5oiQ5YqfXHJcbiAgICAgICAgY2xpY2tTdGF0RXZlbnRUeXBlVENQX0ZhaWxlZCA6IDEwMDExLC8vVENQ6L+e5o6l5aSx6LSlXHJcbiAgICB9O1xyXG5cclxufTsiXX0= -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/Share/share.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, '7290caA39xMWZc2phTMKovP', 'share'); -// Script/module/Share/share.ts - -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.WeChat = void 0; -var shareConfig = { - gameId: "100009", - shareLine: "zDLsruVI", - EK: "hui231%1" -}; -// 微信操作类 -var WeChat = /** @class */ (function () { - function WeChat() { - } - WeChat.setShare = function (url) { - var urlTemp = this.removeQueryParams(url); - shareConfig.shareLine = urlTemp; - WeChat.getSignature(url); - }; - WeChat.getResult = function (res) { - if (res) { - var data = res.data; - wx.config({ - debug: false, - appId: data.appId, - timestamp: data.timestamp, - nonceStr: data.nonceStr, - signature: data.signature, - jsApiList: ['onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] - }); - wx.checkJsApi({ - jsApiList: ['updateAppMessageShareData'], - success: function (res) { - setTimeout(function () { - WeChat.changeShare(); - }, 200); - setTimeout(function () { - WeChat.changeShare(); - }, 500); - } - }); - } - }; - WeChat.changeShare = function () { - wx.ready(function () { - wx.updateAppMessageShareData({ - title: '记忆力认知测评', - desc: '你的注意力和工作记忆有问题吗?', - link: shareConfig.shareLine, - imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', - success: function () { - // 设置成功 - console.log("分享好友成功回调"); - } - }); - setTimeout(function () { - wx.updateTimelineShareData({ - title: '记忆力认知测评', - link: shareConfig.shareLine, - imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', - success: function () { - // 设置成功 - console.log("分享朋友圈成功回调"); - } - }); - }, 200); - }); - }; - WeChat.getSignature = function (url) { - return new Promise(function (resolve) { - WeChat.getShareInfo((encodeURIComponent(url)), WeChat.getResult); - }); - }; - WeChat.getShareInfo = function (shareUrl, callback) { - return __awaiter(this, void 0, Promise, function () { - var time, url; - return __generator(this, function (_a) { - time = Math.floor((new Date().getTime()) / 1000); - url = cc.fx.HttpUtil.apiSign("/api/share/cfg?gameId=" + cc.fx.GameConfig.GM_INFO.gameId + "&time=" + time + "&url=" + shareUrl, {}); - return [2 /*return*/, cc.fx.HttpUtil.get(url, callback, 3)]; - }); - }); - }; - WeChat.containsNanana = function (str) { - return /test/i.test(str); - }; - WeChat.removeQueryParams = function (url) { - return url.replace(/\?.*$/, ''); - }; - return WeChat; -}()); -exports.WeChat = WeChat; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFNoYXJlXFxzaGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFJLFdBQVcsR0FBRztJQUNkLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLEVBQUUsRUFBQyxVQUFVO0NBQ2QsQ0FBQztBQVdKLFFBQVE7QUFDUjtJQUFBO0lBK0VBLENBQUM7SUE5RVUsZUFBUSxHQUFmLFVBQWdCLEdBQUc7UUFDZixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDaEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sZ0JBQVMsR0FBaEIsVUFBaUIsR0FBRztRQUNoQixJQUFHLEdBQUcsRUFBQztZQUNILElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDcEIsRUFBRSxDQUFDLE1BQU0sQ0FBQztnQkFDTixLQUFLLEVBQUUsS0FBSztnQkFDWixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2dCQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixFQUFDLDJCQUEyQixFQUFFLHlCQUF5QixFQUFFLHVCQUF1QixDQUFDO2FBQ3JILENBQUMsQ0FBQztZQUNILEVBQUUsQ0FBQyxVQUFVLENBQUM7Z0JBQ1YsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7Z0JBQ3hDLE9BQU8sRUFBRSxVQUFTLEdBQUc7b0JBQ2pCLFVBQVUsQ0FBQzt3QkFDUCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDUixVQUFVLENBQUM7d0JBQ1AsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ1osQ0FBQzthQUNKLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVNLGtCQUFXLEdBQWxCO1FBQ0ksRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNMLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztnQkFDekIsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLElBQUksRUFBRSxXQUFXLENBQUMsU0FBUztnQkFDM0IsTUFBTSxFQUFFLCtDQUErQztnQkFDdkQsT0FBTyxFQUFFO29CQUNQLE9BQU87b0JBQ1AsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDMUIsQ0FBQzthQUNKLENBQUMsQ0FBQztZQUNILFVBQVUsQ0FBQztnQkFDUCxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZCLEtBQUssRUFBRSxTQUFTO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7b0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7b0JBQ3ZELE9BQU8sRUFBRTt3QkFDUCxPQUFPO3dCQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzNCLENBQUM7aUJBQ0YsQ0FBQyxDQUFBO1lBQ1IsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRVosQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sbUJBQVksR0FBbkIsVUFBb0IsR0FBVztRQUMzQixPQUFPLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTztZQUN2QixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ1ksbUJBQVksR0FBekIsVUFBMEIsUUFBZ0IsRUFBRSxRQUFpQjt1Q0FBRyxPQUFPOzs7Z0JBQzdELElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO2dCQUNoRCxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDJCQUF5QixFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxjQUFTLElBQUksYUFBUSxRQUFVLEVBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQzlILHNCQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQyxFQUFBOzs7S0FDNUM7SUFHTSxxQkFBYyxHQUFyQixVQUFzQixHQUFHO1FBQ3JCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sd0JBQWlCLEdBQXhCLFVBQXlCLEdBQUc7UUFDeEIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUwsYUFBQztBQUFELENBL0VBLEFBK0VDLElBQUE7QUEvRVksd0JBQU0iLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcblxudmFyIHNoYXJlQ29uZmlnID0ge1xuICAgIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgICBzaGFyZUxpbmU6IFwiekRMc3J1VklcIixcbiAgICBFSzpcImh1aTIzMSUxXCJcbiAgfTtcblxuLy8g5a6a5LmJ5b6u5L+h6YWN572u5pWw5o2u55qE5o6l5Y+jXG5pbnRlcmZhY2UgSVdlQ2hhdENvbmZpZyB7XG4gICAgYXBwSWQ6IHN0cmluZztcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICBub25jZVN0cjogc3RyaW5nO1xuICAgIHNpZ25hdHVyZTogc3RyaW5nO1xuICAgIGpzQXBpTGlzdDogW107XG59XG5cbi8vIOW+ruS/oeaTjeS9nOexu1xuZXhwb3J0IGNsYXNzIFdlQ2hhdCB7XG4gICAgc3RhdGljIHNldFNoYXJlKHVybCkge1xuICAgICAgICB2YXIgdXJsVGVtcCA9IHRoaXMucmVtb3ZlUXVlcnlQYXJhbXModXJsKTtcbiAgICAgICAgc2hhcmVDb25maWcuc2hhcmVMaW5lID0gdXJsVGVtcDtcbiAgICAgICAgV2VDaGF0LmdldFNpZ25hdHVyZSh1cmwpO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSZXN1bHQocmVzKXtcbiAgICAgICAgaWYocmVzKXtcbiAgICAgICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGE7XG4gICAgICAgICAgICB3eC5jb25maWcoe1xuICAgICAgICAgICAgICAgIGRlYnVnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBhcHBJZDogZGF0YS5hcHBJZCxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGRhdGEudGltZXN0YW1wLFxuICAgICAgICAgICAgICAgIG5vbmNlU3RyOiBkYXRhLm5vbmNlU3RyLFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZTogZGF0YS5zaWduYXR1cmUsXG4gICAgICAgICAgICAgICAganNBcGlMaXN0OiBbJ29uTWVudVNoYXJlVGltZWxpbmUnLCd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJywgJ3VwZGF0ZVRpbWVsaW5lU2hhcmVEYXRhJywgJ29uTWVudVNoYXJlQXBwTWVzc2FnZSddXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHd4LmNoZWNrSnNBcGkoe1xuICAgICAgICAgICAgICAgIGpzQXBpTGlzdDogWyd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJ10sIC8vIOmcgOimgeajgOa1i+eahEpT5o6l5Y+j5YiX6KGo77yM5omA5pyJSlPmjqXlj6PliJfooajop4HpmYTlvZUyLFxuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKHJlcykge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdGF0aWMgY2hhbmdlU2hhcmUoKXtcbiAgICAgICAgd3gucmVhZHkoKCkgPT4ge1xuICAgICAgICAgICAgd3gudXBkYXRlQXBwTWVzc2FnZVNoYXJlRGF0YSh7IFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn6K6w5b+G5Yqb6K6k55+l5rWL6K+EJywgLy8g5YiG5Lqr5qCH6aKYXG4gICAgICAgICAgICAgICAgZGVzYzogJ+S9oOeahOazqOaEj+WKm+WSjOW3peS9nOiusOW/huaciemXrumimOWQl++8nycsIC8vIOWIhuS6q+aPj+i/sFxuICAgICAgICAgICAgICAgIGxpbms6IHNoYXJlQ29uZmlnLnNoYXJlTGluZSwgLy8g5YiG5Lqr6ZO+5o6l77yM6K+l6ZO+5o6l5Z+f5ZCN5oiW6Lev5b6E5b+F6aG75LiO5b2T5YmN6aG16Z2i5a+55bqU55qE5YWs5LyX5Y+3SlPlronlhajln5/lkI3kuIDoh7RcbiAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAvLyDorr7nva7miJDlip9cbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5aW95Y+L5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgd3gudXBkYXRlVGltZWxpbmVTaGFyZURhdGEoeyBcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5pyL5Y+L5ZyI5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSwgMjAwKTtcblxuICAgICAgICB9KTsgXG4gICAgfVxuXG4gICAgc3RhdGljIGdldFNpZ25hdHVyZSh1cmw6IHN0cmluZyk6IFByb21pc2U8SVdlQ2hhdENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIFdlQ2hhdC5nZXRTaGFyZUluZm8oKGVuY29kZVVSSUNvbXBvbmVudCh1cmwpKSxXZUNoYXQuZ2V0UmVzdWx0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBhc3luYyBnZXRTaGFyZUluZm8oc2hhcmVVcmw6IHN0cmluZywgY2FsbGJhY2s6RnVuY3Rpb24pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCB0aW1lID0gTWF0aC5mbG9vcigobmV3IERhdGUoKS5nZXRUaW1lKCkpIC8gMTAwMClcbiAgICAgICAgY29uc3QgdXJsID0gY2MuZnguSHR0cFV0aWwuYXBpU2lnbihgL2FwaS9zaGFyZS9jZmc/Z2FtZUlkPSR7Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhbWVJZH0mdGltZT0ke3RpbWV9JnVybD0ke3NoYXJlVXJsfWAse30pXG4gICAgICAgIHJldHVybiBjYy5meC5IdHRwVXRpbC5nZXQodXJsLGNhbGxiYWNrLDMpXG4gICAgfVxuXG4gICAgXG4gICAgc3RhdGljIGNvbnRhaW5zTmFuYW5hKHN0cikge1xuICAgICAgICByZXR1cm4gL3Rlc3QvaS50ZXN0KHN0cik7XG4gICAgfVxuXG4gICAgc3RhdGljIHJlbW92ZVF1ZXJ5UGFyYW1zKHVybCkge1xuICAgICAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcPy4qJC8sICcnKTtcbiAgICB9XG5cbn1cbiJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXENvbmZpZ1xcR2FtZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBd0M7QUFHbEMsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFFNUM7SUFBQTtJQXVXQSxDQUFDO21CQXZXWSxVQUFVO0lBK0NuQixzQkFBVyxzQkFBUTthQUFuQjtZQUVJLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQzFCO2dCQUNJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFVLEVBQUUsQ0FBQzthQUNyQztZQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMxQixDQUFDOzs7T0FBQTtJQUVNLGlCQUFNLEdBQWIsVUFBYyxHQUFHO1FBQ2IsSUFBSSxHQUFHLEdBQUcsSUFBSSxNQUFNLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDWCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGVBQUksR0FBWDtRQUNJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXZCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQix1RUFBdUU7UUFDdkUsaUJBQWlCO1FBQ2pCLDBDQUEw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QixPQUFPLEVBQUUsSUFBSTtnQkFDYixNQUFNLEVBQUUsQ0FBQzthQUNaO1lBQ0Q7Z0JBQ0ksTUFBTSxFQUFFLENBQUM7Z0JBQ1QsVUFBVSxFQUFFLENBQUM7Z0JBQ2IsU0FBUyxFQUFFLENBQUM7Z0JBQ1osV0FBVyxFQUFFLEdBQUc7Z0JBQ2hCLE9BQU8sRUFBRSxJQUFJO2dCQUNiLE1BQU0sRUFBRSxDQUFDO2FBQ1o7WUFDRDtnQkFDSSxNQUFNLEVBQUUsQ0FBQztnQkFDVCxVQUFVLEVBQUUsQ0FBQztnQkFDYixTQUFTLEVBQUUsQ0FBQztnQkFDWixXQUFXLEVBQUUsR0FBRztnQkFDaEIsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsTUFBTSxFQUFFLENBQUM7YUFDWjtTQUVKLENBQUE7SUFDTCxDQUFDO0lBQ00seUJBQWMsR0FBckI7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sa0JBQU8sR0FBZCxVQUFlLElBQUk7UUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQzs7SUFwV0QsMEJBQTBCO0lBQ1gsb0JBQVMsR0FBZ0IsSUFBSSxDQUFDO0lBRnBDLFVBQVU7UUFEdEIsT0FBTyxDQUFDLFlBQVksQ0FBQztPQUNULFVBQVUsQ0F1V3RCO0lBQUQsaUJBQUM7Q0F2V0QsQUF1V0MsSUFBQTtBQXZXWSxnQ0FBVSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlQ2hhdCB9IGZyb20gXCIuLi9TaGFyZS9zaGFyZVwiO1xyXG5cclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzKCdHYW1lQ29uZmlnJylcclxuZXhwb3J0IGNsYXNzIEdhbWVDb25maWcgIHtcclxuICAgIC8v5omA5pyJ5o6n5Yi25L+h5oGv6YO96YCa6L+HR2FtZUFwcFN0YXJ05YaF5o6n5Yi2XHJcbiAgICBwcml2YXRlIHN0YXRpYyBfaW5zdGFuY2UgOiBHYW1lQ29uZmlnID0gbnVsbDtcclxuICAgIC8v55So5LqO55ub5pS+5Z+L54K55pWw5o2u5LiK5Lyg77yM5q+P5qyh5LiK5Lyg5ZCO5riF56m6XHJcblxyXG4gICAgc3RhdGljIExFVkVMX0lORk86IHsgLy/nrKzkuIDpmr7luqZcclxuICAgICAgICBudW1iZXI6IG51bWJlcjsgLy/lpKrpmLPmgLvmlbAgXHJcbiAgICAgICAgbW92ZU51bWJlcjogbnVtYmVyOyAvL+WkqumYs+WPr+enu+WKqOS4quaVsFxyXG4gICAgICAgIG1vdmVTcGVlZDogbnVtYmVyOyAvL+WkqumYs+enu+WKqOmAn+W6puetiee6p1xyXG4gICAgICAgIG1heERpc3RhbmNlOiBudW1iZXI7IC8v5biD5bGA5ZCO56e75Yqo5pyA5aSn6Led56a7XHJcbiAgICAgICAgbWF4TW92ZTogbnVtYmVyOyAvL+avj+S4quWkqumYs+S5i+mXtOi3neemu+acgOWkp+mXtOi3nVxyXG4gICAgICAgIHJlcGVhdDogbnVtYmVyOyAvL+aYr+WQpumHjeWPoO+8jOeOsOWcqDAg5LiN6YeN5Y+gIDEg6YeN5Y+gMeS4qlxyXG4gICAgfVtdO1xyXG4gICAgc3RhdGljIEdBTUVfREFUQTogYW55W107XHJcbiAgICBzdGF0aWMgQ0xJQ0tfREFUQToge1xyXG4gICAgICAgIHR5cGU6IG51bWJlcjsgLy/kuIrkvKDmlbDmja7nsbvlnotcclxuICAgICAgICBzdWNjZXNzOiBib29sZWFuOyAvL+atpOWxgOa4uOaIj+iDnOi0nyAgICBcclxuICAgICAgICByb3VuZDogbnVtYmVyOyAvL+WbnuWQiOaVsFxyXG4gICAgICAgIHRvdGFsU3VuQ291bnQ6IG51bWJlcjsgLy/lpKrpmLPmgLvmlbBcclxuICAgICAgICBtb3ZlZFN1bkNvdW50OiBudW1iZXI7IC8v5Y+v56e75Yqo5aSq6Ziz5Liq5pWwXHJcbiAgICAgICAgc3VuU3BlZWQ6IG51bWJlcjsgLy/lpKrpmLPnp7vliqjpgJ/luqZcclxuICAgICAgICBvdmVybGFwU3VuQ291bnQ6IG51bWJlcjsgLy/ph43lj6DlpKrpmLPkuKrmlbBcclxuICAgICAgICBjb2xvckxpc3Q6IGFueVtdOyAvL+WkqumYs+minOiJsuaVsOe7hFxyXG4gICAgICAgIGR1cmF0aW9uOiBudW1iZXI7IC8v5q+P5qyh54K55Ye755qE5Y+N5bqU5pe26Ze0XHJcbiAgICAgICAgZGlmZmljdWx0eUxldmVsOiBudW1iZXI7IC8v5q2k5qyh6Zq+5bqmXHJcbiAgICAgICAgc3VuTGlzdDogYW55W107IC8v5aSq6Ziz5pWw57uE77yM55So5LqO5a2Y5pS+5aSq6Ziz57G75Z6LIDA65pmu6YCaIDE656e75YqoIDI66YeN5Y+gXHJcbiAgICAgICAgc3RlcFRpbWVMaXN0OiBhbnlbXTsgLy/mr4/mrKHngrnlh7vpl7TpmpRcclxuICAgICAgICByZW1haW5kZXI6IG51bWJlcjsgLy/muLjmiI/liankvZnml7bpl7RcclxuICAgICAgICBnYXA6IGFueVtdOyAvL+eCueWHu+WIsOWkqumYs+S4reW/g+i3neemu1xyXG4gICAgfTtcclxuICAgIHN0YXRpYyBHTV9JTkZPOiB7XHJcbiAgICAgICAgLy8gaXNFbmQ6IGZhbHNlLFxyXG4gICAgICAgIG1lYW5fVGltZTogbnVtYmVyOyAvL+W5s+Wdh+aUvueuremAn+W6plxyXG4gICAgICAgIHRvdGFsOiBudW1iZXI7IC8v5oC75YWx5a+555qE5Liq5pWwXHJcbiAgICAgICAgY3VyclNlZWQ6IG51bWJlcjsgLy/nlKjkuo7pmo/mnLrmlbDnp43lrZBcclxuICAgICAgICBnYW1lSWQ6IHN0cmluZzsgLy/muLjmiI9JRFxyXG4gICAgICAgIHVzZXJJZDogbnVtYmVyOyAvL+eUqOaIt0lEXHJcbiAgICAgICAgc2NvZGU6IHN0cmluZzsgLy/nlKjmiLdjb2RlLOS7jue9kemhteWQjue8gOiOt+WPllxyXG4gICAgICAgIGd1aWRlOiBib29sZWFuOyAvL+aYr+WQpuacieW8leWvvFxyXG4gICAgICAgIHVybDogc3RyaW5nOyAvL+iuv+mXruWfn+WQjVxyXG4gICAgICAgIHN1Y2Nlc3M6IGJvb2xlYW47IC8v55So5oi35ri45oiP5oiQ5Yqf5LiO5ZCmXHJcbiAgICAgICAgbWF0Y2hJZDogYW55OyAvL+eUqOS6juWfi+eCueS4iuS8oOeahElEXHJcbiAgICAgICAgY3VzdG9tOiBudW1iZXI7IC8v55So5LqO5rWL6K+V6Lez5YWz5Y2hXHJcbiAgICAgICAgZ2FwOiBhbnlbXTsgLy/lrZjlgqjngrnlh7vliLDlpKrpmLPkuK3lv4Pot53nprtcclxuICAgIH07XHJcblxyXG5cclxuICAgIHN0YXRpYyBnZXQgSW5zdGFuY2UoKVxyXG4gICAge1xyXG4gICAgICAgIGlmICh0aGlzLl9pbnN0YW5jZSA9PSBudWxsKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5faW5zdGFuY2UgPSBuZXcgR2FtZUNvbmZpZygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGdldEtleShrZXkpe1xyXG4gICAgICAgIHZhciByZWcgPSBuZXcgUmVnRXhwKCcoXnwmKScgKyBrZXkgKyAnPShbXiZdKikoJnwkKScsICdpJyk7XHJcbiAgICAgICAgdmFyIHIgPSB3aW5kb3cubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKS5tYXRjaChyZWcpO1xyXG4gICAgICAgIGlmIChyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZXNjYXBlKHJbMl0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMuR01fSU5GT19pbml0KCk7XHJcbiAgICAgICAgdGhpcy5DTElDS19pbml0KCk7XHJcbiAgICAgICAgdGhpcy5MRVZFTF9JTkZPX2luaXQoKTtcclxuICAgICAgICBcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgLy8gY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vR01fSU5GTycsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAvLyAgICAgaWYgKGVycikge1xyXG4gICAgICAgIC8vICAgICAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIC8vICAgICAgICAgLy8gc2VsZi5BdXRoZW50aWNhdGlvbigpO1xyXG4gICAgICAgIC8vICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgLy8gICAgIGxldCBqc29uRGF0YTogb2JqZWN0ID0gcmVzLmpzb24hO1xyXG4gICAgICAgIC8vICAgICBzZWxmLkdNX0lORk8gPSBqc29uRGF0YVtcImRhdGFcIl07XHJcbiAgICAgICAgLy8gICAgIHNlbGYuc2V0Q29kZShzZWxmLmdldEtleShcInNjb2RlXCIpKTtcclxuICAgICAgICAvLyAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIC8vICAgICAvLyBzZWxmLkF1dGhlbnRpY2F0aW9uKCk7XHJcblxyXG4gICAgICAgIC8vIH0pXHJcbiAgICAgICAgLy8gY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vQ0xJQ0tfREFUQScsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAvLyAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAvLyAgICAgICAgIHJldHVybjtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vICAgICBsZXQganNvbkRhdGE6IG9iamVjdCA9IHJlcy5qc29uITtcclxuICAgICAgICAvLyAgICAgc2VsZi5DTElDS19EQVRBID0ganNvbkRhdGFbXCJkYXRhXCJdO1xyXG4gICAgICAgIC8vIH0pXHJcbiAgICAgICAgY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vTEVWRUxfSU5GTycsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBqc29uRGF0YTogb2JqZWN0ID0gcmVzLmpzb24hO1xyXG4gICAgICAgICAgICBzZWxmLkxFVkVMX0lORk8gPSBqc29uRGF0YVtcImRhdGFcIl07XHJcbiAgICAgICAgfSlcclxuXHJcbiAgICAgICAgLy9HQU1FX0RBVEEg5bqf5byD5LqG77yM5pqC5pe25LiN5Yig6Zmk5Lul6Ziy5ZCO6Z2i5L+u5pS55ZueIOS4gOaVtOWxgOS8oOS4gOasoVxyXG4gICAgICAgIHNlbGYuR0FNRV9EQVRBID0gW1xyXG4gICAgICAgIF1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLy/mlbDmja7lpIfnlKhcclxuICAgIHN0YXRpYyBHTV9JTkZPX2luaXQoKSB7XHJcbiAgICAgICAgdGhpcy5HTV9JTkZPID0ge1xyXG4gICAgICAgICAgICAvLyBpc0VuZDogZmFsc2UsXHJcbiAgICAgICAgICAgIG1lYW5fVGltZTogMCwgICAgICAgICAgICAgICAgLy/lubPlnYfmlL7nrq3pgJ/luqZcclxuICAgICAgICAgICAgdG90YWw6IDAsICAgICAgICAgICAgICAgICAgICAvL+aAu+WFseWvueeahOS4quaVsFxyXG4gICAgICAgICAgICBjdXJyU2VlZDogMjAzMjEzLCAgICAgICAgICAgLy/nlKjkuo7pmo/mnLrmlbDnp43lrZBcclxuICAgICAgICAgICAgZ2FtZUlkOiAnMTAwMDA5JywgICAgICAgICAgIC8v5ri45oiPSURcclxuICAgICAgICAgICAgdXNlcklkOiAwLCAgICAgICAgICAgICAgICAgIC8v55So5oi3SURcclxuICAgICAgICAgICAgc2NvZGU6IFwiXCIsICAgICAgICAgICAgICAgICAgLy/nlKjmiLdjb2RlLOS7jue9kemhteWQjue8gOiOt+WPllxyXG4gICAgICAgICAgICBndWlkZTogdHJ1ZSwgICAgICAgICAgICAgICAgIC8v5piv5ZCm5pyJ5byV5a+8XHJcbiAgICAgICAgICAgIHVybDogXCJodHRwczovL2FwaS5zcGFya3VzLmNuXCIsLy/orr/pl67ln5/lkI1cclxuICAgICAgICAgICAgc3VjY2VzczogZmFsc2UsICAgICAgICAgICAgIC8v55So5oi35ri45oiP5oiQ5Yqf5LiO5ZCmXHJcbiAgICAgICAgICAgIG1hdGNoSWQ6IG51bGwsICAgICAgICAgICAgICAvL+eUqOS6juWfi+eCueS4iuS8oOeahElEXHJcbiAgICAgICAgICAgIGN1c3RvbTogMCwgICAgICAgICAgICAgICAgICAgLy/nlKjkuo7mtYvor5Xot7PlhbPljaFcclxuICAgICAgICAgICAgZ2FwOltdICAgICAgICAgICAgICAgICAgICAgIC8v5a2Y5YKo54K55Ye75Yiw5aSq6Ziz5Lit5b+D6Led56a7XHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnNldENvZGUodGhpcy5nZXRLZXkoXCJzY29kZVwiKSk7XHJcbiAgICAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIHRoaXMuQXV0aGVudGljYXRpb24oKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBDTElDS19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuQ0xJQ0tfREFUQSA9XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0eXBlOiAxLCAgICAgICAgICAgIC8v5LiK5Lyg5pWw5o2u57G75Z6LXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6IGZhbHNlLCAgICAgLy/mraTlsYDmuLjmiI/og5zotJ8gICAgXHJcbiAgICAgICAgICAgIHJvdW5kOiAwLCAgICAgICAgICAgLy/lm57lkIjmlbBcclxuICAgICAgICAgICAgdG90YWxTdW5Db3VudDogMCwgICAvL+WkqumYs+aAu+aVsFxyXG4gICAgICAgICAgICBtb3ZlZFN1bkNvdW50OiAwLCAgIC8v5Y+v56e75Yqo5aSq6Ziz5Liq5pWwXHJcbiAgICAgICAgICAgIHN1blNwZWVkOiAwLCAgICAgICAgLy/lpKrpmLPnp7vliqjpgJ/luqZcclxuICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OiAwLCAvL+mHjeWPoOWkqumYs+S4quaVsFxyXG4gICAgICAgICAgICBjb2xvckxpc3Q6IFtdLCAgICAgIC8v5aSq6Ziz6aKc6Imy5pWw57uEXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwLCAgICAgICAgLy/mr4/mrKHngrnlh7vnmoTlj43lupTml7bpl7RcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOiAwLCAvL+atpOasoemavuW6plxyXG4gICAgICAgICAgICBzdW5MaXN0OiBbXSwgICAgICAgIC8v5aSq6Ziz5pWw57uE77yM55So5LqO5a2Y5pS+5aSq6Ziz57G75Z6LIDA65pmu6YCaIDE656e75YqoIDI66YeN5Y+gXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDogW10sICAgLy/mr4/mrKHngrnlh7vpl7TpmpRcclxuICAgICAgICAgICAgcmVtYWluZGVyOiAxMjAsICAgICAgLy/muLjmiI/liankvZnml7bpl7RcclxuICAgICAgICAgICAgZ2FwOltdICAgICAgICAgICAgICAvL+eCueWHu+WIsOWkqumYs+S4reW/g+i3neemu1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBzdGF0aWMgTEVWRUxfSU5GT19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuTEVWRUxfSU5GTyA9IFtcclxuICAgICAgICAgICAgeyAgIC8v56ys5LiA6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDMsICAgICAgIC8v5aSq6Ziz5oC75pWwIFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCwgICAvL+WkqumYs+WPr+enu+WKqOS4quaVsFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiAwLCAgICAvL+WkqumYs+enu+WKqOmAn+W6puetiee6p1xyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCwgLy/luIPlsYDlkI7np7vliqjmnIDlpKfot53nprtcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsICAgIC8v5q+P5Liq5aSq6Ziz5LmL6Ze06Led56a75pyA5aSn6Ze06LedXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDAgICAgICAgIC8v5piv5ZCm6YeN5Y+g77yM546w5ZyoMCDkuI3ph43lj6AgMSDph43lj6Ax5LiqXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS6jOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogMCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS4iemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogMCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWbm+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS6lOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWFremavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA2LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS4g+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA2LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWFq+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS5nemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS4gOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA4LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS6jOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA4LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS4iemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA5LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeWbm+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA5LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS6lOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiAxMCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDUsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMiBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDAsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMyBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNiBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNyBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xOCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xOSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDIsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8yMCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDMsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIF1cclxuICAgIH1cclxuICAgIHN0YXRpYyBBdXRoZW50aWNhdGlvbigpe1xyXG4gICAgICAgIGNjLmZ4LkdhbWVUb29sLkF1dGhlbnRpY2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHNldENvZGUoY29kZSl7XHJcbiAgICAgICAgdGhpcy5HTV9JTkZPLnNjb2RlID0gY29kZTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -4012,6 +3983,708 @@ cc._RF.pop(); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFRvb2xcXEdhbWVUb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLCtCQUErQjtBQUMvQixJQUFJLFFBQVEsR0FBRztJQUNYLFVBQVUsRUFBRSxDQUFDO0lBQ2IsUUFBUSxFQUFFLENBQUM7SUFDWCxVQUFVLEVBQUUsQ0FBQztJQUNiLFVBQVU7SUFDVixjQUFjO1FBQ1YsSUFBSSxJQUFJLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDckQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLElBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0UsSUFBRyxJQUFJLElBQUksVUFBVSxJQUFJLElBQUksSUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBQztZQUM5QyxJQUFJLEdBQUcsR0FBRyw4RUFBOEU7Z0JBQ3hGLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBQyxHQUFHLENBQUMsQ0FBQztZQUM3QixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7U0FDOUI7YUFDRztZQUNBLElBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBQztnQkFDM0IsSUFBSSxHQUFHLEdBQUcsOEVBQThFO29CQUN4RixrQkFBa0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2xDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN6QixNQUFNLENB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UyxHQUFHLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFBLGVBQWU7UUFDdEQsSUFBSSxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUEsT0FBTztRQUMvQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUcsR0FBRyxHQUFHLEVBQUU7WUFBRSxDQUFDLEdBQUcsR0FBRyxHQUFDLEdBQUcsQ0FBQztRQUN6QixJQUFJLFFBQVEsR0FBRyxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFBLGFBQWE7UUFDOUQsSUFBSSxJQUFJLEdBQUcsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUN6QixJQUFHLFFBQVEsR0FBRyxFQUFFO1lBQUUsSUFBSSxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUM7UUFDeEMsT0FBTyxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQTtJQUN6QixDQUFDO0lBRUQsT0FBTztJQUNQLE9BQU87UUFDSCxJQUFNLFNBQVMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFDRCxVQUFVLEVBQUM7SUFFWCxDQUFDO0lBQ0QsZUFBZSxFQUFDO0lBRWhCLENBQUM7Q0FFSixDQUFDO0FBQ08sNEJBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLy/mnIDlpKflt6XlhbfnsbsgIOWQhOenjeWFrOWFseaWueazle+8jOS7peWPiuWkhOeQhuS4iuS8oO+8jOiOt+WPluWQjuerr+aOpeWPo+aVsOaNrlxyXG52YXIgR2FtZVRvb2wgPSB7XHJcbiAgICBfc3RhcnRUaW1lOiAwLFxyXG4gICAgX2VuZFRpbWU6IDAsXHJcbiAgICBfdG90YWxUaW1lOiAwLFxyXG4gICAgLy/ojrflj5Z1c2VySWRcclxuICAgIEF1dGhlbnRpY2F0aW9uKCl7XHJcbiAgICAgICAgbGV0IG5hbWUgPSBcInVzZXJfXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uZ2FtZUlkO1xyXG4gICAgICAgIHZhciBkYXRhID0gbnVsbDtcclxuICAgICAgICBpZihsb2NhbFN0b3JhZ2UuZ2V0SXRlbShuYW1lKSkgZGF0YSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSkpO1xyXG4gICAgICAgIGlmKGRhdGEgPT0gXCJ1bmRpZmVuZFwiIHx8IGRhdGE9PW51bGwgfHwgZGF0YSA9PSBcIlwiKXtcclxuICAgICAgICAgICAgbGV0IHVybCA9IFwiaHR0cHM6Ly9hcGkuc3Bhcmt1cy5jbi9hcGkvdXNlci9hdXRoL2xvZ2luP2RvbWFpbj1odWkzMjU3OVdkWVBzZ1lxJmNhbGxiYWNrPVwiK1xyXG4gICAgICAgICAgICBlbmNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaHJlZik7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi6ZO+5o6l5rKhSUTlh4blpIfot7PovaxcIix1cmwpO1xyXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYoIXRoaXMuaXNOdW1iZXIoZGF0YS51c2VySWQpKXtcclxuICAgICAgICAgICAgICAgIGxldCB1cmwgPSBcImh0dHBzOi8vYXBpLnNwYXJrdXMuY24vYXBpL3VzZXIvYXV0aC9sb2dpbj9kb21haW49aHVpMzI1NzlXZFlQc2dZcSZjYWxsYmFjaz1cIitcclxuICAgICAgICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChsb2NhdGlvbi5ocmVmKTtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi6ZO+5o6l5LiN5ZCI5rOVXCIsdXJsKTtcclxuICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5TdG9yYWdlTWVzc2FnZS5zZXRTdG9yYWdlKG5hbWUsZGF0YSk7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udXNlcklkID0gcGFyc2VJbnQoZGF0YS51c2VySWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICBpc051bWJlcih2YWx1ZSkge1xyXG4gICAgICAgIHZhciByZXN1bHQgPSBmYWxzZTtcclxuICAgICAgICByZXN1bHQgPSB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInO1xyXG4gICAgICAgIGlmKHJlc3VsdCkgaWYodmFsdWUgPCAyMDAwMDApIHJlc3VsdCA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9LFxyXG5cclxuICAgIC8v5Z+L54K55LiK5LygXHJcbiAgICBzZXRHYW1lRGF0YSgpe1xyXG4gICAgICAgIC8vR0FNRV9EQVRBIOWIneWni+WMliDmr4/mrKHmuIXpm7ZcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR0FNRV9EQVRBLnB1c2goY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBKTtcclxuICAgICAgICBsZXQgbGV2ZWwgPSBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEucm91bmQ7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19pbml0KCk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSBjYy5meC5HYW1lQ29uZmlnLkdBTUVfREFUQTtcclxuICAgICAgICBsZXQgbWF0Y2hJZCA9IHRoaXMuZ2V0TWF0Y2hJZChsZXZlbCk7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcImdhbWVJZFwiOmNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYW1lSWQsXHJcbiAgICAgICAgICAgIFwidXNlcklkXCI6Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnVzZXJJZCxcclxuICAgICAgICAgICAgXCJzY29kZVwiOmNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zY29kZSxcclxuICAgICAgICAgICAgXCJtYXRjaElkXCI6bWF0Y2hJZCxcclxuICAgICAgICAgICAgXCJkYXRhXCI6IGRhdGFcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBjb25zb2xlLmxvZyhcIuS4iuS8oOaVsOaNrjpcIixwb3N0RGF0YSk7XHJcbiAgICAgICAgY2MuZnguSHR0cFV0aWwudXBsb2FkVXNlckxvZ0RhdGEocG9zdERhdGEsZnVuY3Rpb24oKXt9KVxyXG4gICAgfSxcclxuICAgIC8v5LiK5Lyg5o6S6KGM5qacICB0eXBl5Li6MVxyXG4gICAgc2V0UmFuayhkYXRhKXtcclxuICAgICAgICAvL0dBTUVfREFUQSDliJ3lp4vljJYg5q+P5qyh5riF6Zu2XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcImdhbWVJZFwiOmNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYW1lSWQsXHJcbiAgICAgICAgICAgIFwidXNlcklkXCI6Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnVzZXJJZCxcclxuICAgICAgICAgICAgXCJ0eXBlXCI6MSxcclxuICAgICAgICAgICAgXCJyZWFjdGlvblRpbWVcIjogZGF0YSxcclxuICAgICAgICAgICAgXCJ0b3RhbFN1bkNvdW50XCI6IGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy50b3RhbCxcclxuICAgICAgICAgICAgXCJzdWNjZXNzXCI6IGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zdWNjZXNzXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjYy5meC5IdHRwVXRpbC5yYW5rRGF0YSgxLGZ1bmN0aW9uKCl7fSxwb3N0RGF0YSk7XHJcbiAgICB9LFxyXG4gICAgLy/ojrflj5bmjpLooYzmppwgdHlwZeS4ujJcclxuICAgIGdldFJhbmsoZGF0YSxjYWxsYmFjayl7XHJcbiAgICAgICAgbGV0IHJhbmtMZW5ndGggPSBkYXRhLmxlbmd0aDtcclxuICAgICAgICBsZXQgcG9zdERhdGEgPSB7XHJcbiAgICAgICAgICAgIFwiZ2FtZUlkXCI6Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhbWVJZCxcclxuICAgICAgICAgICAgXCJ1c2VySWRcIjpjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udXNlcklkLFxyXG4gICAgICAgICAgICBcInBhZ2VcIjoxLFxyXG4gICAgICAgICAgICBcInBhZ2VTaXplXCI6cmFua0xlbmd0aFxyXG4gICAgICAgIH07IFxyXG4gICAgICAgIC8v5Zue6LCD6L+bZ2V0UmFua0RhdGFcclxuICAgICAgICBjYy5meC5IdHRwVXRpbC5yYW5rRGF0YSgyLGRhdGEgPT57Y2FsbGJhY2soZGF0YSl9LHBvc3REYXRhKTtcclxuICAgIH0sXHJcbiAgICAvL+iOt+WPlm1hdGNoSWQgIOeUqOS6juS4iuS8oOavj+asoeeCueWHu+aVsOaNrumHjOmdouiusOW9lWlk5pa55L6/5p+l6K+iXHJcbiAgICBnZXRNYXRjaElkIChsZXZlbCl7XHJcbiAgICAgICAgbGV0IG1hdGNoSWQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJtYXRjaElkXCIpO1xyXG4gICAgICAgIGxldCB0ZW1wSWQgPSBtYXRjaElkO1xyXG4gICAgICAgIGlmKG1hdGNoSWQgPT0gXCJ1bmRpZmVuZFwiIHx8IG1hdGNoSWQ9PW51bGwpe1xyXG4gICAgICAgICAgICBtYXRjaElkID0gIHRoaXMuc2V0TWF0Y2hJZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBpZih0aGlzLmNvbnRhaW5zTmFuYW5hKG1hdGNoSWQpID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgbGV0IGNoYXIgPSBwYXJzZUludCh0ZW1wSWQuc3Vic3RyaW5nKDEwLHRlbXBJZC5sZW5ndGgpKTtcclxuICAgICAgICAgICAgICAgIGlmKGxldmVsID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGNoYXIgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICBtYXRjaElkICA9IHRlbXBJZC5zbGljZSgwLCAxMCkgKyBjaGFyICsgXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmNvbnRhaW5zTmFuYW5hKG1hdGNoSWQpKSBtYXRjaElkID0gdGhpcy5zZXRNYXRjaElkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1hdGNoSWQgPSBtYXRjaElkO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixtYXRjaElkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShtYXRjaElkKSA9PSB0cnVlKXtcclxuICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG1hdGNoSWQ7XHJcbiAgICB9LFxyXG4gICAgLy/mo4DmtYttYXRjaElkIOWmguaenOaciee8k+WtmOS7peWJjeeahG5hbmFuYeaVsOaNrua4hemZpFxyXG4gICAgY29udGFpbnNOYW5hbmEoc3RyKSB7XHJcbiAgICAgICAgcmV0dXJuIC9uYS9pLnRlc3Qoc3RyKTtcclxuICAgIH0sXHJcbiAgICAvL+mHjeaWsOiuvue9rk1hdGNoSWRcclxuICAgIHNldE1hdGNoSWQgKCl7XHJcbiAgICAgICAgLy8g5a6a5LmJ5YyF5ZCr5Y+v55So5a2X56ym55qE5a2X56ym6ZuGXHJcbiAgICAgICAgY29uc3QgY2hhcmFjdGVycyA9ICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSc7XHJcbiAgICAgICAgLy8g5Yib5bu65LiA5Liq5pWw57uE5Lul5L+d5a2Y6ZqP5py65a2X56ymXHJcbiAgICAgICAgY29uc3QgdXVpZEFycmF5ID0gW107XHJcbiAgICAgICAgLy8g5b6q546vMTDmrKEg55Sf5oiQMTDkvY3nmoRVVUlEXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAvLyDnlJ/miJDpmo/mnLrntKLlvJXvvIzojIPlm7TmmK/lrZfnrKbpm4bnmoTplb/luqZcclxuICAgICAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIC8vIOS7juWtl+espumbhuS4reiOt+WPlumaj+acuuWtl+esplxyXG4gICAgICAgICAgICBjb25zdCByYW5kb21DaGFyID0gY2hhcmFjdGVycy5jaGFyQXQocmFuZG9tSW5kZXgpO1xyXG4gICAgICAgICAgICAvLyDlsIblrZfnrKbmt7vliqDliLDmlbDnu4TkuK1cclxuICAgICAgICAgICAgdXVpZEFycmF5LnB1c2gocmFuZG9tQ2hhcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBkYXRhID0gIHV1aWRBcnJheS5qb2luKCcnKSArIDEgKyBcIlwiO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoTnVtYmVyXCIsMSk7XHJcbiAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShkYXRhKSkgZGF0YSA9IHRoaXMuc2V0TWF0Y2hJZCgpO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixkYXRhKTtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWF0Y2hJZCA9IGRhdGE7XHJcbiAgICAgICAgcmV0dXJuIGRhdGE7XHJcbiAgICB9LFxyXG4gICAgLy/miKrlj5blkI3lrZdcclxuICAgIHN1Yk5hbWUobmFtZSxsZW5ndGgpe1xyXG4gICAgICAgIGlmKG5hbWUubGVuZ3RoID4gbGVuZ3RoKXtcclxuICAgICAgICAgICAgbmFtZSA9IG5hbWUuc3Vic3RyaW5nKDAsbGVuZ3RoKSArIFwiLi4uXCJcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5hbWU7XHJcbiAgICB9LFxyXG4gICAgLy/orr7nva7lpLTlg49cclxuICAgIHNldFBpYyhub2RlLHBpYyl7XHJcbiAgICAgICAgbm9kZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBsZXQgdXJsID0gcGljO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBmZXRjaCh1cmwpXHJcbiAgICAgICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1MZW5ndGgnKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnRoZW4oZXJyTm8gPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgICAgIG5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sIDEwMCk7XHJcbiAgICBcclxuICAgICAgICBjYy5hc3NldE1hbmFnZXIubG9hZFJlbW90ZSh1cmwgLCB7ZXh0OicucG5nJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICBub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBub2RlLmdldENvbXBvbmVudChjYy5TcHJpdGUpLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhlcnIsdGV4dHVyZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9LFxyXG4gICAgLy/nrKzkuIDkuKrlj4LmlbDmiornm67moIfluKbov5vmnaXlpITnkIbvvIznrKzkuozkuKrlj4LmlbDkuLrlkI3lrZfplb/luqbvvIzkuI3lkIzlnLrmma/kuI3lkIzpnIDmsYJcclxuICAgIC8v5ZCN5a2XNOefre+8jOWwj+aOkuihjO+8jOWQjeWtlzbplb/vvIzlpKfmjpLooYxcclxuICAgIGdldFJhbmtEYXRhKGRhdGEsdGFyZ2V0LG5hbWVMZW5ndGgpe1xyXG4gICAgICAgIHRhcmdldC5saXN0RGF0YSA9IGRhdGEuZGF0YS5saXN0O1xyXG4gICAgICAgIHRhcmdldC5zZWxmRGF0YSA9IGRhdGEuZGF0YS5pbmZvO1xyXG4gICAgICAgIGxldCByYW5rRGF0YSA9IFtdO1xyXG4gICAgICAgIGxldCBzZWxmID0gZmFsc2U7XHJcbiAgICAgICAgIGNjLmZ4LkdhbWVUb29sLnNldFBpYyh0YXJnZXQuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLHRhcmdldC5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgIGZvcihsZXQgaT0wO2k8PXRhcmdldC5saXN0RGF0YS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICByYW5rRGF0YS5wdXNoKHtyYW5rOihpKzEpLCBuYW1lOnRhcmdldC5saXN0RGF0YVtpXS5uaWNrTmFtZSwgdG90YWw6dGFyZ2V0Lmxpc3REYXRhW2ldLnRvdGFsU3VuQ291bnQsIHBpYzp0YXJnZXQubGlzdERhdGFbaV0ucGljfSk7XHJcbiAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy51c2VySWQgPT0gdGFyZ2V0Lmxpc3REYXRhW2ldLnVzZXJJZCl7XHJcbiAgICAgICAgICAgICAgICBzZWxmID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRhcmdldC5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgIHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPShpKzEpICsgXCJcIjsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaSA9PSAodGFyZ2V0Lmxpc3REYXRhLmxlbmd0aC0xKSAmJiBzZWxmID09IGZhbHNlKXtcclxuICAgICAgICAgICAgICAgIHRhcmdldC5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgIHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBcIjk5K1wiOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgbmFtZSA9IGNjLmZ4LkdhbWVUb29sLnN1Yk5hbWUodGFyZ2V0LnNlbGZEYXRhLm5pY2tOYW1lLG5hbWVMZW5ndGgpO1xyXG4gICAgICAgIHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBuYW1lO1xyXG4gICAgICAgIHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInRvdGFsTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGFyZ2V0LnNlbGZEYXRhLnRvdGFsU3VuQ291bnQ7XHJcbiAgICAgICAgc3dpdGNoKHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcpe1xyXG4gICAgICAgICAgICBjYXNlIFwiMVwiOlxyXG4gICAgICAgICAgICAgICAgdGFyZ2V0LnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm9uZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgXCIyXCI6XHJcbiAgICAgICAgICAgICAgICB0YXJnZXQuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidHdvXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBcIjNcIjpcclxuICAgICAgICAgICAgICAgIHRhcmdldC5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0aHJlZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyDlpKfmjpLooYxcclxuICAgICAgICBpZihuYW1lTGVuZ3RoID09IDYpe1xyXG4gICAgICAgICAgICB0YXJnZXQucmFua0xpc3Quc2V0RGF0YShyYW5rRGF0YSk7XHJcbiAgICAgICAgICAgIHRhcmdldC5zZWxmTm9kZS5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICBpZih0YXJnZXQuc2VsZkRhdGEudG90YWxTdW5Db3VudCA9PSAwKSB0YXJnZXQuc2VsZk5vZGUub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZzogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGxldCBzaXplID0gY2Mud2luU2l6ZTtcclxuICAgICAgICBsZXQgd2lkdGggPSBzaXplLndpZHRoO1xyXG4gICAgICAgIGxldCBoZWlnaHQgPSBzaXplLmhlaWdodDtcclxuICAgICAgICBpZiAoKGhlaWdodCAvIHdpZHRoKSA+ICgxNi4yIC8gOSkpIHJldHVybiBmYWxzZTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0sXHJcbiAgICAvL+WIpOaWreWFqOmdouWxj+mAgumFjVxyXG4gICAgc2V0Rml0OiBmdW5jdGlvbiAoY2FudmFzKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSAgY2MuZnguR2FtZVRvb2wuZ2V0U2V0U2NyZWVuUmVzb2x1dGlvbkZsYWcoKTtcclxuICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgIFx0Ly8gY29uc29sZS5sb2coXCLkuI3mmK/lhajpnaLlsY9cIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICBcdC8vIGNvbnNvbGUubG9nKFwi5piv5YWo6Z2i5bGPXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH0sXHJcbiAgICAvL+iOt+WPlua4uOaIj+S/oeaBr1xyXG4gICAgZ2V0R2FtZUluZm86IGZ1bmN0aW9uKG5vZGUpe1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH0sXHJcbiAgICAvL+iuvue9rua4uOaIj+S/oeaBr1xyXG4gICAgc2V0R2FtZUluZm86IGZ1bmN0aW9uKHBkKXtcclxuICAgXHJcbiAgICB9LFxyXG4gICAgLy/ovpPlhaXnp5Is6L+U5Zue6ZyA6KaB5bGV56S65pe26Ze05qC85byPXHJcbiAgICBnZXRUaW1lTWFyZ2luOihzZWNvbmQpID0+IHtcclxuICAgICAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgICAgIHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gMDtcclxuICAgICAgICBob3VyID0gcGFyc2VJbnQoKHRvdGFsIC8gMzYwMCkgKyBcIlwiKTsvL+iuoeeul+aVtOaVsOWwj+aXtuaVsFxyXG4gICAgICAgIGxldCBhZnRlckhvdXIgPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwOy8v5Y+W5b6X566X5Ye65bCP5pe25pWw5ZCO5Ymp5L2Z55qE56eS5pWwXHJcbiAgICAgICAgbGV0IG1pbiA9IHBhcnNlSW50KChhZnRlckhvdXIgLyA2MCkrXCJcIik7Ly/orqHnrpfmlbTmlbDliIZcclxuICAgICAgICBsZXQgbSA9IFwiXCIgKyBtaW47ICBcclxuICAgICAgICBpZihtaW4gPCAxMCkgbSA9IFwiMFwiK21pbjtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwIC0gbWluICogNjA7Ly/lj5blvpfnrpflh7rliIblkI7liankvZnnmoTnp5LmlbBcclxuICAgICAgICBsZXQgbWlhbyA9IGFmdGVyTWluICsgXCJcIjtcclxuICAgICAgICBpZihhZnRlck1pbiA8IDEwKSBtaWFvID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gbSArICc6JyArIG1pYW9cclxuICAgIH0sXHJcblxyXG4gICAgLy/ojrflj5bml7bpl7TmiLNcclxuICAgIGdldFRpbWUoKXtcclxuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gdGltZXN0YW1wO1xyXG4gICAgfSxcclxuICAgIHB1c2hMaXN0ZXI6ZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIFxyXG4gICAgfSxcclxuICAgIHJlbW92ZUFsbExpc3RlcjpmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgXHJcbiAgICB9LFxyXG5cclxufTtcclxuZXhwb3J0IHsgR2FtZVRvb2wgfTsiXX0= +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/module/Storage/Storage.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, '1002938VFRJd70RiAno9Iys', 'Storage'); +// Script/module/Storage/Storage.ts + +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.StorageMessage = void 0; +//缓存浏览器数据 +var StorageMessage = { + getStorage: function (key) { + var result = null; + if (cc.sys.localStorage.getItem(key)) { + var result = cc.sys.localStorage.getItem(key); + } + if (result) { + result = JSON.parse(result); + } + return result; + }, + setStorage: function (key, value) { + //主动拉起分享接口 + var temp = JSON.stringify(value); + cc.sys.localStorage.setItem(key, temp); + }, + removeStorage: function (key) { + //主动删除消息接口 + if (cc.sys.localStorage.getItem(key)) { + cc.sys.localStorage.removeItem(key); + } + }, +}; +exports.StorageMessage = StorageMessage; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFN0b3JhZ2VcXFN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsU0FBUztBQUNULElBQUksY0FBYyxHQUFHO0lBQ2pCLFVBQVUsRUFBRyxVQUFTLEdBQUc7UUFDckIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMvQztRQUVELElBQUcsTUFBTSxFQUFDO1lBQ1IsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDN0I7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBQ0QsVUFBVSxFQUFHLFVBQVMsR0FBRyxFQUFDLEtBQUs7UUFDM0IsVUFBVTtRQUNWLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUMxQyxDQUFDO0lBQ0QsYUFBYSxFQUFHLFVBQVMsR0FBRztRQUMxQixVQUFVO1FBQ1YsSUFBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUM7WUFDbEMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1NBQ3BDO0lBQ0gsQ0FBQztDQUNKLENBQUM7QUFFTyx3Q0FBYyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v57yT5a2Y5rWP6KeI5Zmo5pWw5o2uXG52YXIgU3RvcmFnZU1lc3NhZ2UgPSB7XG4gICAgZ2V0U3RvcmFnZSA6IGZ1bmN0aW9uKGtleSl7XG4gICAgICAgIHZhciByZXN1bHQgPSBudWxsO1xuICAgICAgICBpZihjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KSl7XG4gICAgICAgICAgdmFyIHJlc3VsdCA9IGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpZihyZXN1bHQpe1xuICAgICAgICAgIHJlc3VsdCA9IEpTT04ucGFyc2UocmVzdWx0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sXG4gICAgc2V0U3RvcmFnZSA6IGZ1bmN0aW9uKGtleSx2YWx1ZSl7XG4gICAgICAgIC8v5Li75Yqo5ouJ6LW35YiG5Lqr5o6l5Y+jXG4gICAgICAgIHZhciB0ZW1wID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICBjYy5zeXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCB0ZW1wKVxuICAgIH0sXG4gICAgcmVtb3ZlU3RvcmFnZSA6IGZ1bmN0aW9uKGtleSl7XG4gICAgICAvL+S4u+WKqOWIoOmZpOa2iOaBr+aOpeWPo1xuICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICBjYy5zeXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KVxuICAgICAgfVxuICAgIH0sXG59O1xuXG5leHBvcnQgeyBTdG9yYWdlTWVzc2FnZSB9OyJdfQ== +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/module/RankList/List.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, 'd5421HgLShFKIjj5f18m1mi', 'List'); +// Script/module/RankList/List.ts + +"use strict"; +// Learn TypeScript: +// - https://docs.cocos.com/creator/manual/en/scripting/typescript.html +// Learn Attribute: +// - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html +// Learn life-cycle callbacks: +// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html +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 }); +exports.StartAxisType = exports.ListType = void 0; +var ItemRender_1 = require("./ItemRender"); +var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; +/**列表排列方式 */ +var ListType; +(function (ListType) { + /**水平排列 */ + ListType[ListType["Horizontal"] = 1] = "Horizontal"; + /**垂直排列 */ + ListType[ListType["Vertical"] = 2] = "Vertical"; + /**网格排列 */ + ListType[ListType["Grid"] = 3] = "Grid"; +})(ListType = exports.ListType || (exports.ListType = {})); +/**网格布局中的方向 */ +var StartAxisType; +(function (StartAxisType) { + /**水平排列 */ + StartAxisType[StartAxisType["Horizontal"] = 1] = "Horizontal"; + /**垂直排列 */ + StartAxisType[StartAxisType["Vertical"] = 2] = "Vertical"; +})(StartAxisType = exports.StartAxisType || (exports.StartAxisType = {})); +/** + * 列表 + * 根据cocos_example的listView改动而来 + * @author chenkai 2020.7.8 + * @example + * 1.创建cocos的ScrollView组件,添加List,设置List属性即可 + * + */ +var List = /** @class */ (function (_super) { + __extends(List, _super); + function List() { + var _this = _super !== null && _super.apply(this, arguments) || this; + //==================== 属性面板 ========================= + /**列表选项 */ + _this.itemRender = null; + /**排列方式 */ + _this.type = ListType.Vertical; + /**网格布局中的方向 */ + _this.startAxis = StartAxisType.Horizontal; + /**列表项之间X间隔 */ + _this.spaceX = 0; + /**列表项之间Y间隔 */ + _this.spaceY = 0; + /**上间距 */ + _this.padding_top = 0; + /**下间距 */ + _this.padding_buttom = 0; + /**左间距 */ + _this.padding_left = 0; + _this._padding = 0; + /**右间距 */ + _this.padding_right = 0; + //====================== 滚动容器 =============================== + /**列表滚动容器 */ + _this.scrollView = null; + /**scrollView的内容容器 */ + _this.content = null; + //======================== 列表项 =========================== + /**列表项数据 */ + _this.itemDataList = []; + /**应创建的实例数量 */ + _this.spawnCount = 0; + /**存放列表项实例的数组 */ + _this.itemList = []; + /**item的高度 */ + _this.itemHeight = 0; + /**item的宽度 */ + _this.itemWidth = 0; + /**存放不再使用中的列表项 */ + _this.itemPool = []; + //======================= 计算参数 ========================== + /**距离scrollView中心点的距离,超过这个距离的item会被重置,一般设置为 scrollVIew.height/2 + item.heigt/2 + space,因为这个距离item正好超出scrollView显示范围 */ + _this.halfScrollView = 0; + /**上一次content的X值,用于和现在content的X值比较,得出是向左还是向右滚动 */ + _this.lastContentPosX = 0; + /**上一次content的Y值,用于和现在content的Y值比较,得出是向上还是向下滚动 */ + _this.lastContentPosY = 0; + /**网格行数 */ + _this.gridRow = 0; + /**网格列数 */ + _this.gridCol = 0; + /**刷新时间,单位s */ + _this.updateTimer = 0; + /**刷新间隔,单位s */ + _this.updateInterval = 0.1; + /**是否滚动容器 */ + _this.bScrolling = false; + /**刷新的函数 */ + _this.updateFun = function () { }; + return _this; + } + List.prototype.onLoad = function () { + this.itemHeight = this.itemRender.height; + this.itemWidth = this.itemRender.width; + this.scrollView = this.node.getComponent(cc.ScrollView); + this.content = this.scrollView.content; + this.content.anchorX = 0; + this.content.anchorY = 1; + this.content.removeAllChildren(); + this.scrollView.node.on("scrolling", this.onScrolling, this); + }; + /** + * 列表数据 (列表数据复制使用,如果列表数据改变,则需要重新设置一遍数据) + * @param itemDataList item数据列表 + */ + List.prototype.setData = function (itemDataList) { + this.itemDataList = itemDataList.slice(); + this.updateContent(); + }; + /**计算列表的各项参数 */ + List.prototype.countListParam = function () { + var dataLen = this.itemDataList.length; + if (this.type == ListType.Vertical) { + this.scrollView.horizontal = false; + this.scrollView.vertical = true; + this.content.width = this.content.parent.width; + this.content.height = dataLen * this.itemHeight + (dataLen - 1) * this.spaceY + this.padding_top + this.padding_buttom; + this.spawnCount = Math.round(this.scrollView.node.height / (this.itemHeight + this.spaceY)) + 2; //计算创建的item实例数量,比当前scrollView容器能放下的item数量再加上2个 + this.halfScrollView = this.scrollView.node.height / 2 + this.itemHeight / 2 + this.spaceY; //计算bufferZone,item的显示范围 + this.updateFun = this.updateV; + } + else if (this.type == ListType.Horizontal) { + this.scrollView.horizontal = true; + this.scrollView.vertical = false; + this.content.width = dataLen * this.itemWidth + (dataLen - 1) * this.spaceX + this.padding_left + this.padding_right; + this.content.height = this.content.parent.height; + this.spawnCount = Math.round(this.scrollView.node.width / (this.itemWidth + this.spaceX)) + 2; + this.halfScrollView = this.scrollView.node.width / 2 + this.itemWidth / 2 + this.spaceX; + this.updateFun = this.udpateH; + } + else if (this.type == ListType.Grid) { + if (this.startAxis == StartAxisType.Vertical) { + this.scrollView.horizontal = false; + this.scrollView.vertical = true; + this.content.width = this.content.parent.width; + //如果left和right间隔过大,导致放不下一个item,则left和right都设置为0,相当于不生效 + if (this.padding_left + this.padding_right + this.itemWidth + this.spaceX > this.content.width) { + this.padding_left = 0; + this.padding_right = 0; + console.error("padding_left或padding_right过大"); + } + this.gridCol = Math.floor((this.content.width - this.padding_left - this.padding_right) / (this.itemWidth + this.spaceX)); + this.gridRow = Math.ceil(dataLen / this.gridCol); + this.content.height = this.gridRow * this.itemHeight + (this.gridRow - 1) * this.spaceY + this.padding_top + this.padding_buttom; + this.spawnCount = Math.round(this.scrollView.node.height / (this.itemHeight + this.spaceY)) * this.gridCol + this.gridCol * 2; + this.halfScrollView = this.scrollView.node.height / 2 + this.itemHeight / 2 + this.spaceY; + this.updateFun = this.updateGrid_V; + } + else if (this.startAxis == StartAxisType.Horizontal) { + this.scrollView.horizontal = true; + this.scrollView.vertical = false; + //计算高间隔 + this.content.height = this.content.parent.height; + //如果left和right间隔过大,导致放不下一个item,则left和right都设置为0,相当于不生效 + if (this.padding_top + this.padding_buttom + this.itemHeight + this.spaceY > this.content.height) { + this.padding_top = 0; + this.padding_buttom = 0; + console.error("padding_top或padding_buttom过大"); + } + this.gridRow = Math.floor((this.content.height - this.padding_top - this.padding_buttom) / (this.itemHeight + this.spaceY)); + this.gridCol = Math.ceil(dataLen / this.gridRow); + this.content.width = this.gridCol * this.itemWidth + (this.gridCol - 1) * this.spaceX + this.padding_left + this.padding_right; + this.spawnCount = Math.round(this.scrollView.node.width / (this.itemWidth + this.spaceX)) * this.gridRow + this.gridRow * 2; + this.halfScrollView = this.scrollView.node.width / 2 + this.itemWidth / 2 + this.spaceX; + this.updateFun = this.updateGrid_H; + } + } + }; + /** + * 创建列表 + * @param startIndex 起始显示的数据索引 0表示第一项 + * @param offset scrollView偏移量 + */ + List.prototype.createList = function (startIndex, offset) { + //当需要显示的数据长度 > 虚拟列表长度, 删除最末尾几个数据时,列表需要重置位置到scrollView最底端 + if (this.itemDataList.length > this.spawnCount && (startIndex + this.spawnCount - 1) >= this.itemDataList.length) { + startIndex = this.itemDataList.length - this.spawnCount; + offset = this.scrollView.getMaxScrollOffset(); + //当需要显示的数据长度 <= 虚拟列表长度, 隐藏多余的虚拟列表项 + } + else if (this.itemDataList.length <= this.spawnCount) { + startIndex = 0; + } + for (var i = 0; i < this.spawnCount; i++) { + var item = void 0; + //需要显示的数据索引在数据范围内,则item实例显示出来 + if (i + startIndex < this.itemDataList.length) { + if (this.itemList[i] == null) { + item = this.getItem(); + this.itemList.push(item); + item.parent = this.content; + } + else { + item = this.itemList[i]; + } + //需要显示的数据索引超过了数据范围,则item实例隐藏起来 + } + else { + //item实例数量 > 需要显示的数据量 + if (this.itemList.length > (this.itemDataList.length - startIndex)) { + item = this.itemList.pop(); + item.removeFromParent(); + this.itemPool.push(item); + } + continue; + } + var itemRender = item.getComponent(ItemRender_1.default); + itemRender.itemIndex = i + startIndex; + itemRender.data = this.itemDataList[i + startIndex]; + itemRender.dataChanged(); + if (this.type == ListType.Vertical) { + //因为content的锚点X是0,所以item的x值是content.with/2表示居中,锚点Y是1,所以item的y值从content顶部向下是0到负无穷。所以item.y= -item.height/2时,是在content的顶部。 + item.setPosition(this.content.width / 2, -item.height * (0.5 + i + startIndex) - this.spaceY * (i + startIndex) - this.padding_top); + } + else if (this.type == ListType.Horizontal) { + item.setPosition(item.width * (0.5 + i + startIndex) + this.spaceX * (i + startIndex) + this.padding_left, -this.content.height / 2); + } + else if (this.type == ListType.Grid) { + if (this.startAxis == StartAxisType.Vertical) { + var row = Math.floor((i + startIndex) / this.gridCol); + var col = (i + startIndex) % this.gridCol; + item.setPosition(item.width * (0.5 + col) + this.spaceX * col + this.padding_left, -item.height * (0.5 + row) - this.spaceY * row - this.padding_top); + item.opacity = 255; + } + else if (this.startAxis == StartAxisType.Horizontal) { + var row = (i + startIndex) % this.gridRow; + var col = Math.floor((i + startIndex) / this.gridRow); + item.setPosition(item.width * (0.5 + col) + this.spaceX * col + this.padding_left, -item.height * (0.5 + row) - this.spaceY * row - this.padding_top); + item.opacity = 255; + } + } + } + this.scrollView.scrollToOffset(offset); + }; + /**获取一个列表项 */ + List.prototype.getItem = function () { + if (this.itemPool.length == 0) { + return cc.instantiate(this.itemRender); + } + else { + return this.itemPool.pop(); + } + }; + List.prototype.update = function (dt) { + if (this.bScrolling == false) { + return; + } + this.updateTimer += dt; + if (this.updateTimer < this.updateInterval) { + return; + } + this.updateTimer = 0; + this.bScrolling = false; + this.updateFun(); + }; + List.prototype.onScrolling = function () { + this.bScrolling = true; + }; + /**垂直排列 */ + List.prototype.updateV = function () { + var items = this.itemList; + var item; + var bufferZone = this.halfScrollView; + var isUp = this.scrollView.content.y > this.lastContentPosY; + var offset = (this.itemHeight + this.spaceY) * items.length; + for (var i = 0; i < items.length; i++) { + item = items[i]; + var viewPos = this.getPositionInView(item); + if (isUp) { + //item上滑时,超出了scrollView上边界,将item移动到下方复用,item移动到下方的位置必须不超过content的下边界 + if (viewPos.y > bufferZone && item.y - offset - this.padding_buttom > -this.content.height) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex + items.length; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.y = item.y - offset; + } + } + else { + //item下滑时,超出了scrollView下边界,将item移动到上方复用,item移动到上方的位置必须不超过content的上边界 + if (viewPos.y < -bufferZone && item.y + offset + this.padding_top < 0) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex - items.length; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.y = item.y + offset; + } + } + } + this.lastContentPosY = this.scrollView.content.y; + }; + /**水平排列 */ + List.prototype.udpateH = function () { + var items = this.itemList; + var item; + var bufferZone = this.halfScrollView; + var isRight = this.scrollView.content.x > this.lastContentPosX; + var offset = (this.itemWidth + this.spaceX) * items.length; + for (var i = 0; i < items.length; i++) { + item = items[i]; + var viewPos = this.getPositionInView(item); + if (isRight) { + //item右滑时,超出了scrollView右边界,将item移动到左方复用,item移动到左方的位置必须不超过content的左边界 + if (viewPos.x > bufferZone && item.x - offset - this.padding_left > 0) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex - items.length; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.x = item.x - offset; + } + } + else { + //item左滑时,超出了scrollView左边界,将item移动到右方复用,item移动到右方的位置必须不超过content的右边界 + if (viewPos.x < -bufferZone && item.x + offset + this.padding_right < this.content.width) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex + items.length; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.x = item.x + offset; + } + } + } + this.lastContentPosX = this.scrollView.content.x; + }; + /**网格垂直排列 */ + List.prototype.updateGrid_V = function () { + var items = this.itemList; + var item; + var bufferZone = this.halfScrollView; + var isUp = this.scrollView.content.y > this.lastContentPosY; + var offset = (this.itemHeight + this.spaceY) * (this.spawnCount / this.gridCol); + for (var i = 0; i < items.length; i++) { + item = items[i]; + var viewPos = this.getPositionInView(item); + if (isUp) { + //item上滑时,超出了scrollView上边界,将item移动到下方复用,item移动到下方的位置必须不超过content的下边界 + if (viewPos.y > bufferZone && item.y - offset - this.padding_buttom > -this.content.height) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex + (this.spawnCount / this.gridCol) * this.gridCol; + if (this.itemDataList[itemIndex] != null) { + item.y = item.y - offset; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.opacity = 255; + } + else { + item.y = item.y - offset; + itemRender.itemIndex = itemIndex; + item.opacity = 0; + } + } + } + else { //item下滑时,超出了scrollView下边界,将item移动到上方复用,item移动到上方的位置必须不超过content的上边界 + if (viewPos.y < -bufferZone && item.y + offset + this.padding_top < 0) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex - (this.spawnCount / this.gridCol) * this.gridCol; + if (this.itemDataList[itemIndex] != null) { + item.y = item.y + offset; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.opacity = 255; + } + else { + item.y = item.y + offset; + itemRender.itemIndex = itemIndex; + item.opacity = 0; + } + } + } + } + this.lastContentPosY = this.scrollView.content.y; + }; + /**网格水平排列 */ + List.prototype.updateGrid_H = function () { + var items = this.itemList; + var item; + var bufferZone = this.halfScrollView; + var isRight = this.scrollView.content.x > this.lastContentPosX; + var offset = (this.itemWidth + this.spaceX) * (this.spawnCount / this.gridRow); + for (var i = 0; i < items.length; i++) { + item = items[i]; + var viewPos = this.getPositionInView(item); + if (isRight) { + //item右滑时,超出了scrollView右边界,将item移动到左方复用,item移动到左方的位置必须不超过content的左边界 + if (viewPos.x > bufferZone && item.x - offset - this.padding_left > 0) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex - (this.spawnCount / this.gridRow) * this.gridRow; + if (this.itemDataList[itemIndex] != null) { + item.x = item.x - offset; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.opacity = 255; + } + else { + item.x = item.x - offset; + itemRender.itemIndex = itemIndex; + item.opacity = 0; + } + } + } + else { + //item左滑时,超出了scrollView左边界,将item移动到右方复用,item移动到右方的位置必须不超过content的右边界 + if (viewPos.x < -bufferZone && item.x + offset + this.padding_right < this.content.width) { + var itemRender = item.getComponent(ItemRender_1.default); + var itemIndex = itemRender.itemIndex + (this.spawnCount / this.gridRow) * this.gridRow; + if (this.itemDataList[itemIndex] != null) { + item.x = item.x + offset; + itemRender.itemIndex = itemIndex; + itemRender.data = this.itemDataList[itemIndex]; + itemRender.dataChanged(); + item.opacity = 255; + } + else { + item.x = item.x + offset; + itemRender.itemIndex = itemIndex; + item.opacity = 0; + } + } + } + } + this.lastContentPosX = this.scrollView.content.x; + }; + /**获取item在scrollView的局部坐标 */ + List.prototype.getPositionInView = function (item) { + var worldPos = item.parent.convertToWorldSpaceAR(item.position); + var viewPos = this.scrollView.node.convertToNodeSpaceAR(worldPos); + return viewPos; + }; + /**获取列表数据 */ + List.prototype.getListData = function () { + return this.itemDataList; + }; + /** + * 增加一项数据到列表的末尾 + * @param data 数据 + */ + List.prototype.addItem = function (data) { + this.itemDataList.push(data); + this.updateContent(); + }; + /** + * 增加一项数据到列表指定位置 + * @param index 位置,0表示第1项 + * @param data 数据 + */ + List.prototype.addItemAt = function (index, data) { + if (this.itemDataList[index] != null || this.itemDataList.length == index) { + this.itemDataList.splice(index, 1, data); + this.updateContent(); + } + }; + /** + * 删除一项数据 + * @param index 删除项的位置 ,0表示第1项 + */ + List.prototype.deleteItem = function (index) { + if (this.itemDataList[index] != null) { + this.itemDataList.splice(index, 1); + this.updateContent(); + } + }; + /** + * 改变一项数据 + * @param index 位置,0表示第1项 + * @param data 替换的数据 + */ + List.prototype.changeItem = function (index, data) { + if (this.itemDataList[index] != null) { + this.itemDataList[index] = data; + this.updateContent(); + } + }; + /**获取第一个Item的位置 */ + List.prototype.updateContent = function () { + //显示列表实例为0个 + if (this.itemList.length == 0) { + this.countListParam(); + this.createList(0, new cc.Vec2(0, 0)); + //显示列表的实例不为0个,则需要重新排列item实例数组 + } + else { + if (this.type == ListType.Vertical) { + this.itemList.sort(function (a, b) { + return b.y - a.y; + }); + } + else if (this.type == ListType.Horizontal) { + this.itemList.sort(function (a, b) { + return a.x - b.x; + }); + } + else if (this.type == ListType.Grid) { + if (this.startAxis == StartAxisType.Vertical) { + this.itemList.sort(function (a, b) { + return a.x - b.x; + }); + this.itemList.sort(function (a, b) { + return b.y - a.y; + }); + } + else if (this.startAxis == StartAxisType.Horizontal) { + this.itemList.sort(function (a, b) { + return b.y - a.y; + }); + this.itemList.sort(function (a, b) { + return a.x - b.x; + }); + } + } + this.countListParam(); + //获取第一个item实例需要显示的数据索引 + var startIndex = this.itemList[0].getComponent(ItemRender_1.default).itemIndex; + if (this.type == ListType.Grid && this.startAxis == StartAxisType.Vertical) { + startIndex += (startIndex + this.spawnCount) % this.gridCol; + } + else if (this.type == ListType.Grid && this.startAxis == StartAxisType.Horizontal) { + startIndex += (startIndex + this.spawnCount) % this.gridRow; + } + //getScrollOffset()和scrollToOffset()的x值是相反的 + var offset = this.scrollView.getScrollOffset(); + offset.x = -offset.x; + this.createList(startIndex, offset); + } + }; + /**销毁 */ + List.prototype.onDestroy = function () { + //清理列表项 + var len = this.itemList.length; + for (var i = 0; i < len; i++) { + if (cc.isValid(this.itemList[i], true)) { + this.itemList[i].destroy(); + } + } + this.itemList.length = 0; + //清理对象池 + len = this.itemPool.length; + for (var i = 0; i < len; i++) { + if (cc.isValid(this.itemPool[i], true)) { + this.itemPool[i].destroy(); + } + } + this.itemPool.length = 0; + //清理列表数据 + this.itemDataList.length = 0; + }; + __decorate([ + property({ type: cc.Node, tooltip: "列表项" }) + ], List.prototype, "itemRender", void 0); + __decorate([ + property({ type: cc.Enum(ListType), tooltip: "排列方式" }) + ], List.prototype, "type", void 0); + __decorate([ + property({ type: cc.Enum(StartAxisType), tooltip: "网格布局中的方向", visible: function () { return this.type == ListType.Grid; } }) + ], List.prototype, "startAxis", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "列表项X间隔", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) + ], List.prototype, "spaceX", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "列表项Y间隔", visible: function () { return this.type == ListType.Vertical || this.type == ListType.Grid; } }) + ], List.prototype, "spaceY", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "上间距", visible: function () { return (this.type == ListType.Vertical || this.type == ListType.Grid); } }) + ], List.prototype, "padding_top", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "下间距", visible: function () { return (this.type == ListType.Vertical || this.type == ListType.Grid); } }) + ], List.prototype, "padding_buttom", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "左间距", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) + ], List.prototype, "padding_left", void 0); + __decorate([ + property(cc.Integer) + ], List.prototype, "_padding", void 0); + __decorate([ + property({ type: cc.Integer, tooltip: "右间距", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) + ], List.prototype, "padding_right", void 0); + List = __decorate([ + ccclass + ], List); + return List; +}(cc.Component)); +exports.default = List; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFJhbmtMaXN0XFxMaXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsd0VBQXdFO0FBQ3hFLG1CQUFtQjtBQUNuQixrRkFBa0Y7QUFDbEYsOEJBQThCO0FBQzlCLGtGQUFrRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRiwyQ0FBcUM7QUFFL0IsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFFNUMsWUFBWTtBQUNaLElBQVksUUFPWDtBQVBELFdBQVksUUFBUTtJQUNoQixVQUFVO0lBQ1YsbURBQWMsQ0FBQTtJQUNkLFVBQVU7SUFDViwrQ0FBWSxDQUFBO0lBQ1osVUFBVTtJQUNWLHVDQUFRLENBQUE7QUFDWixDQUFDLEVBUFcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFPbkI7QUFFRCxjQUFjO0FBQ2QsSUFBWSxhQUtYO0FBTEQsV0FBWSxhQUFhO0lBQ3JCLFVBQVU7SUFDViw2REFBYyxDQUFBO0lBQ2QsVUFBVTtJQUNWLHlEQUFZLENBQUE7QUFDaEIsQ0FBQyxFQUxXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBS3hCO0FBRUQ7Ozs7Ozs7R0FPRztBQUVIO0lBQWtDLHdCQUFZO0lBQTlDO1FBQUEscUVBeWlCQztRQXZpQkcscURBQXFEO1FBQ3JELFVBQVU7UUFFSCxnQkFBVSxHQUFZLElBQUksQ0FBQztRQUVsQyxVQUFVO1FBRUgsVUFBSSxHQUFhLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFFMUMsY0FBYztRQUVQLGVBQVMsR0FBa0IsYUFBYSxDQUFDLFVBQVUsQ0FBQztRQUUzRCxjQUFjO1FBRVAsWUFBTSxHQUFXLENBQUMsQ0FBQztRQUUxQixjQUFjO1FBRVAsWUFBTSxHQUFXLENBQUMsQ0FBQztRQUUxQixTQUFTO1FBRUYsaUJBQVcsR0FBVyxDQUFDLENB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SSxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQzs4Q0FDdEc7SUFLaEM7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQzswQ0FDTztJQUk1QjtRQURDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxnQkFBSyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLENBQUM7K0NBQ3JHO0lBMUNoQixJQUFJO1FBRHhCLE9BQU87T0FDYSxJQUFJLENBeWlCeEI7SUFBRCxXQUFDO0NBemlCRCxBQXlpQkMsQ0F6aUJpQyxFQUFFLENBQUMsU0FBUyxHQXlpQjdDO2tCQXppQm9CLElBQUkiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMZWFybiBUeXBlU2NyaXB0OlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy90eXBlc2NyaXB0Lmh0bWxcclxuLy8gTGVhcm4gQXR0cmlidXRlOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9yZWZlcmVuY2UvYXR0cmlidXRlcy5odG1sXHJcbi8vIExlYXJuIGxpZmUtY3ljbGUgY2FsbGJhY2tzOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9saWZlLWN5Y2xlLWNhbGxiYWNrcy5odG1sXHJcblxyXG5pbXBvcnQgSXRlbVJlbmRlciBmcm9tIFwiLi9JdGVtUmVuZGVyXCJcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG4vKirliJfooajmjpLliJfmlrnlvI8gKi9cclxuZXhwb3J0IGVudW0gTGlzdFR5cGUge1xyXG4gICAgLyoq5rC05bmz5o6S5YiXICovXHJcbiAgICBIb3Jpem9udGFsID0gMSxcclxuICAgIC8qKuWeguebtOaOkuWIlyAqL1xyXG4gICAgVmVydGljYWwgPSAyLFxyXG4gICAgLyoq572R5qC85o6S5YiXICovXHJcbiAgICBHcmlkID0gM1xyXG59XHJcblxyXG4vKirnvZHmoLzluIPlsYDkuK3nmoTmlrnlkJEgKi9cclxuZXhwb3J0IGVudW0gU3RhcnRBeGlzVHlwZSB7XHJcbiAgICAvKirmsLTlubPmjpLliJcgKi9cclxuICAgIEhvcml6b250YWwgPSAxLFxyXG4gICAgLyoq5Z6C55u05o6S5YiXICovXHJcbiAgICBWZXJ0aWNhbCA9IDIsXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDliJfooahcclxuICog5qC55o2uY29jb3NfZXhhbXBsZeeahGxpc3RWaWV35pS55Yqo6ICM5p2lXHJcbiAqIEBhdXRob3IgY2hlbmthaSAyMDIwLjcuOFxyXG4gKiBAZXhhbXBsZVxyXG4gKiAgMS7liJvlu7pjb2Nvc+eahFNjcm9sbFZpZXfnu4Tku7bvvIzmt7vliqBMaXN077yM6K6+572uTGlzdOWxnuaAp+WNs+WPr1xyXG4gKiAgXHJcbiAqL1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaXN0IGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuXHJcbiAgICAvLz09PT09PT09PT09PT09PT09PT09IOWxnuaAp+mdouadvyA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAvKirliJfooajpgInpobkgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLk5vZGUsIHRvb2x0aXA6IFwi5YiX6KGo6aG5XCIgfSlcclxuICAgIHB1YmxpYyBpdGVtUmVuZGVyOiBjYy5Ob2RlID0gbnVsbDtcclxuXHJcbiAgICAvKirmjpLliJfmlrnlvI8gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkVudW0oTGlzdFR5cGUpLCB0b29sdGlwOiBcIuaOkuWIl+aWueW8j1wiIH0pXHJcbiAgICBwdWJsaWMgdHlwZTogTGlzdFR5cGUgPSBMaXN0VHlwZS5WZXJ0aWNhbDtcclxuXHJcbiAgICAvKirnvZHmoLzluIPlsYDkuK3nmoTmlrnlkJEgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkVudW0oU3RhcnRBeGlzVHlwZSksIHRvb2x0aXA6IFwi572R5qC85biD5bGA5Lit55qE5pa55ZCRXCIsIHZpc2libGUoKSB7IHJldHVybiB0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCB9IH0pXHJcbiAgICBwdWJsaWMgc3RhcnRBeGlzOiBTdGFydEF4aXNUeXBlID0gU3RhcnRBeGlzVHlwZS5Ib3Jpem9udGFsO1xyXG5cclxuICAgIC8qKuWIl+ihqOmhueS5i+mXtFjpl7TpmpQgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5YiX6KGo6aG5WOmXtOmalFwiLCB2aXNpYmxlKCkgeyByZXR1cm4gKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5Ib3Jpem9udGFsIHx8IHRoaXMudHlwZSA9PSBMaXN0VHlwZS5HcmlkKSB9IH0pXHJcbiAgICBwdWJsaWMgc3BhY2VYOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8qKuWIl+ihqOmhueS5i+mXtFnpl7TpmpQgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5YiX6KGo6aG5WemXtOmalFwiLCB2aXNpYmxlKCkgeyByZXR1cm4gdGhpcy50eXBlID09IExpc3RUeXBlLlZlcnRpY2FsIHx8IHRoaXMudHlwZSA9PSBMaXN0VHlwZS5HcmlkIH0gfSlcclxuICAgIHB1YmxpYyBzcGFjZVk6IG51bWJlciA9IDA7XHJcblxyXG4gICAgLyoq5LiK6Ze06LedICovXHJcbiAgICBAcHJvcGVydHkoeyB0eXBlOiBjYy5JbnRlZ2VyLCB0b29sdGlwOiBcIuS4iumXtOi3nVwiLCB2aXNpYmxlKCkgeyByZXR1cm4gKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCB8fCB0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkgfSB9KVxyXG4gICAgcHVibGljIHBhZGRpbmdfdG9wOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8qKuS4i+mXtOi3nSAqL1xyXG4gICAgQHByb3BlcnR5KHsgdHlwZTogY2MuSW50ZWdlciwgdG9vbHRpcDogXCLkuIvpl7Tot51cIiwgdmlzaWJsZSgpIHsgcmV0dXJuICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuVmVydGljYWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX2J1dHRvbTogbnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirlt6bpl7Tot50gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5bem6Ze06LedXCIsIHZpc2libGUoKSB7IHJldHVybiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX2xlZnQ6IG51bWJlciA9IDA7XHJcblxyXG5cclxuXHJcbiAgICBAcHJvcGVydHkoY2MuSW50ZWdlcilcclxuICAgIHB1YmxpYyBfcGFkZGluZzogbnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirlj7Ppl7Tot50gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5Y+z6Ze06LedXCIsIHZpc2libGUoKSB7IHJldHVybiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX3JpZ2h0OiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8vPT09PT09PT09PT09PT09PT09PT09PSDmu5rliqjlrrnlmaggPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgLyoq5YiX6KGo5rua5Yqo5a655ZmoICovXHJcbiAgICBwdWJsaWMgc2Nyb2xsVmlldzogY2MuU2Nyb2xsVmlldyA9IG51bGw7XHJcbiAgICAvKipzY3JvbGxWaWV355qE5YaF5a655a655ZmoICovXHJcbiAgICBwcml2YXRlIGNvbnRlbnQ6IGNjLk5vZGUgPSBudWxsO1xyXG5cclxuICAgIC8vPT09PT09PT09PT09PT09PT09PT09PT09IOWIl+ihqOmhuSA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgIC8qKuWIl+ihqOmhueaVsOaNriAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtRGF0YUxpc3Q6IEFycmF5PGFueT4gPSBbXTtcclxuICAgIC8qKuW6lOWIm+W7uueahOWunuS+i+aVsOmHjyAqL1xyXG4gICAgcHJpdmF0ZSBzcGF3bkNvdW50OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5a2Y5pS+5YiX6KGo6aG55a6e5L6L55qE5pWw57uEICovXHJcbiAgICBwcml2YXRlIGl0ZW1MaXN0OiBBcnJheTxjYy5Ob2RlPiA9IFtdO1xyXG4gICAgLyoqaXRlbeeahOmrmOW6piAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtSGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gICAgLyoqaXRlbeeahOWuveW6piAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtV2lkdGg6IG51bWJlciA9IDA7XHJcbiAgICAvKirlrZjmlL7kuI3lho3kvb/nlKjkuK3nmoTliJfooajpobkgKi9cclxuICAgIHByaXZhdGUgaXRlbVBvb2w6IEFycmF5PGNjLk5vZGU+ID0gW107XHJcblxyXG4gICAgLy89PT09PT09PT09PT09PT09PT09PT09PSDorqHnrpflj4LmlbAgPT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgIC8qKui3neemu3Njcm9sbFZpZXfkuK3lv4PngrnnmoTot53nprvvvIzotoXov4fov5nkuKrot53nprvnmoRpdGVt5Lya6KKr6YeN572u77yM5LiA6Iis6K6+572u5Li6IHNjcm9sbFZJZXcuaGVpZ2h0LzIgKyBpdGVtLmhlaWd0LzIgKyBzcGFjZe+8jOWboOS4uui/meS4qui3neemu2l0ZW3mraPlpb3otoXlh7pzY3JvbGxWaWV35pi+56S66IyD5Zu0ICovXHJcbiAgICBwcml2YXRlIGhhbGZTY3JvbGxWaWV3OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5LiK5LiA5qyhY29udGVudOeahFjlgLzvvIznlKjkuo7lkoznjrDlnKhjb250ZW5055qEWOWAvOavlOi+g++8jOW+l+WHuuaYr+WQkeW3pui/mOaYr+WQkeWPs+a7muWKqCAqL1xyXG4gICAgcHJpdmF0ZSBsYXN0Q29udGVudFBvc1g6IG51bWJlciA9IDA7XHJcbiAgICAvKirkuIrkuIDmrKFjb250ZW5055qEWeWAvO+8jOeUqOS6juWSjOeOsOWcqGNvbnRlbnTnmoRZ5YC85q+U6L6D77yM5b6X5Ye65piv5ZCR5LiK6L+Y5piv5ZCR5LiL5rua5YqoICovXHJcbiAgICBwcml2YXRlIGxhc3RDb250ZW50UG9zWTogbnVtYmVyID0gMDtcclxuICAgIC8qKue9keagvOihjOaVsCAqL1xyXG4gICAgcHJpdmF0ZSBncmlkUm93OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq572R5qC85YiX5pWwICovXHJcbiAgICBwcml2YXRlIGdyaWRDb2w6IG51bWJlciA9IDA7XHJcbiAgICAvKirliLfmlrDml7bpl7TvvIzljZXkvY1zICovXHJcbiAgICBwcml2YXRlIHVwZGF0ZVRpbWVyOiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5Yi35paw6Ze06ZqU77yM5Y2V5L2NcyAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVJbnRlcnZhbDogbnVtYmVyID0gMC4xO1xyXG4gICAgLyoq5piv5ZCm5rua5Yqo5a655ZmoICovXHJcbiAgICBwcml2YXRlIGJTY3JvbGxpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIC8qKuWIt+aWsOeahOWHveaVsCAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVGdW46IEZ1bmN0aW9uID0gZnVuY3Rpb24gKCkgeyB9O1xyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLml0ZW1IZWlnaHQgPSB0aGlzLml0ZW1SZW5kZXIuaGVpZ2h0O1xyXG4gICAgICAgIHRoaXMuaXRlbVdpZHRoID0gdGhpcy5pdGVtUmVuZGVyLndpZHRoO1xyXG4gICAgICAgIHRoaXMuc2Nyb2xsVmlldyA9IHRoaXMubm9kZS5nZXRDb21wb25lbnQoY2MuU2Nyb2xsVmlldyk7XHJcbiAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQ7XHJcbiAgICAgICAgdGhpcy5jb250ZW50LmFuY2hvclggPSAwO1xyXG4gICAgICAgIHRoaXMuY29udGVudC5hbmNob3JZID0gMTtcclxuICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgICAgICB0aGlzLnNjcm9sbFZpZXcubm9kZS5vbihcInNjcm9sbGluZ1wiLCB0aGlzLm9uU2Nyb2xsaW5nLCB0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOWIl+ihqOaVsOaNriAo5YiX6KGo5pWw5o2u5aSN5Yi25L2/55So77yM5aaC5p6c5YiX6KGo5pWw5o2u5pS55Y+Y77yM5YiZ6ZyA6KaB6YeN5paw6K6+572u5LiA6YGN5pWw5o2uKVxyXG4gICAgICogQHBhcmFtIGl0ZW1EYXRhTGlzdCBpdGVt5pWw5o2u5YiX6KGoXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZXREYXRhKGl0ZW1EYXRhTGlzdDogQXJyYXk8YW55Pikge1xyXG4gICAgICAgIHRoaXMuaXRlbURhdGFMaXN0ID0gaXRlbURhdGFMaXN0LnNsaWNlKCk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICAvKirorqHnrpfliJfooajnmoTlkITpobnlj4LmlbAgKi9cclxuICAgIHByaXZhdGUgY291bnRMaXN0UGFyYW0oKSB7XHJcbiAgICAgICAgbGV0IGRhdGFMZW4gPSB0aGlzLml0ZW1EYXRhTGlzdC5sZW5ndGg7XHJcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcuaG9yaXpvbnRhbCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnQud2lkdGggPSB0aGlzLmNvbnRlbnQucGFyZW50LndpZHRoO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnQuaGVpZ2h0ID0gZGF0YUxlbiAqIHRoaXMuaXRlbUhlaWdodCArIChkYXRhTGVuIC0gMSkgKiB0aGlzLnNwYWNlWSArIHRoaXMucGFkZGluZ190b3AgKyB0aGlzLnBhZGRpbmdfYnV0dG9tO1xyXG4gICAgICAgICAgICB0aGlzLnNwYXduQ291bnQgPSBNYXRoLnJvdW5kKHRoaXMuc2Nyb2xsVmlldy5ub2RlLmhlaWdodCAvICh0aGlzLml0ZW1IZWlnaHQgKyB0aGlzLnNwYWNlWSkpICsgMjsgLy/orqHnrpfliJvlu7rnmoRpdGVt5a6e5L6L5pWw6YeP77yM5q+U5b2T5YmNc2Nyb2xsVmlld+WuueWZqOiDveaUvuS4i+eahGl0ZW3mlbDph4/lho3liqDkuIoy5LiqXHJcbiAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS5oZWlnaHQgLyAyICsgdGhpcy5pdGVtSGVpZ2h0IC8gMiArIHRoaXMuc3BhY2VZOyAvL+iuoeeul2J1ZmZlclpvbmXvvIxpdGVt55qE5pi+56S66IyD5Zu0XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51cGRhdGVWO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgdGhpcy5zY3JvbGxWaWV3Lmhvcml6b250YWwgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50LndpZHRoID0gZGF0YUxlbiAqIHRoaXMuaXRlbVdpZHRoICsgKGRhdGFMZW4gLSAxKSAqIHRoaXMuc3BhY2VYICsgdGhpcy5wYWRkaW5nX2xlZnQgKyB0aGlzLnBhZGRpbmdfcmlnaHQ7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGVudC5oZWlnaHQgPSB0aGlzLmNvbnRlbnQucGFyZW50LmhlaWdodDtcclxuICAgICAgICAgICAgdGhpcy5zcGF3bkNvdW50ID0gTWF0aC5yb3VuZCh0aGlzLnNjcm9sbFZpZXcubm9kZS53aWR0aCAvICh0aGlzLml0ZW1XaWR0aCArIHRoaXMuc3BhY2VYKSkgKyAyO1xyXG4gICAgICAgICAgICB0aGlzLmhhbGZTY3JvbGxWaWV3ID0gdGhpcy5zY3JvbGxWaWV3Lm5vZGUud2lkdGggLyAyICsgdGhpcy5pdGVtV2lkdGggLyAyICsgdGhpcy5zcGFjZVg7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51ZHBhdGVIO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy5ob3Jpem9udGFsID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZW50LndpZHRoID0gdGhpcy5jb250ZW50LnBhcmVudC53aWR0aDtcclxuICAgICAgICAgICAgICAgIC8v5aaC5p6cbGVmdOWSjHJpZ2h06Ze06ZqU6L+H5aSn77yM5a+86Ie05pS+5LiN5LiL5LiA5LiqaXRlbe+8jOWImWxlZnTlkoxyaWdodOmDveiuvue9ruS4ujDvvIznm7jlvZPkuo7kuI3nlJ/mlYhcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBhZGRpbmdfbGVmdCArIHRoaXMucGFkZGluZ19yaWdodCArIHRoaXMuaXRlbVdpZHRoICsgdGhpcy5zcGFjZVggPiB0aGlzLmNvbnRlbnQud2lkdGgpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhZGRpbmdfbGVmdCA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWRkaW5nX3JpZ2h0ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFwicGFkZGluZ19sZWZ05oiWcGFkZGluZ19yaWdodOi/h+Wkp1wiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyaWRDb2wgPSBNYXRoLmZsb29yKCh0aGlzLmNvbnRlbnQud2lkdGggLSB0aGlzLnBhZGRpbmdfbGVmdCAtIHRoaXMucGFkZGluZ19yaWdodCkgLyAodGhpcy5pdGVtV2lkdGggKyB0aGlzLnNwYWNlWCkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ncmlkUm93ID0gTWF0aC5jZWlsKGRhdGFMZW4gLyB0aGlzLmdyaWRDb2wpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZW50LmhlaWdodCA9IHRoaXMuZ3JpZFJvdyAqIHRoaXMuaXRlbUhlaWdodCArICh0aGlzLmdyaWRSb3cgLSAxKSAqIHRoaXMuc3BhY2VZICsgdGhpcy5wYWRkaW5nX3RvcCArIHRoaXMucGFkZGluZ19idXR0b207XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNwYXduQ291bnQgPSBNYXRoLnJvdW5kKHRoaXMuc2Nyb2xsVmlldy5ub2RlLmhlaWdodCAvICh0aGlzLml0ZW1IZWlnaHQgKyB0aGlzLnNwYWNlWSkpICogdGhpcy5ncmlkQ29sICsgdGhpcy5ncmlkQ29sICogMjtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS5oZWlnaHQgLyAyICsgdGhpcy5pdGVtSGVpZ2h0IC8gMiArIHRoaXMuc3BhY2VZO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVGdW4gPSB0aGlzLnVwZGF0ZUdyaWRfVjtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnN0YXJ0QXhpcyA9PSBTdGFydEF4aXNUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy5ob3Jpem9udGFsID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy52ZXJ0aWNhbCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgLy/orqHnrpfpq5jpl7TpmpRcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudC5oZWlnaHQgPSB0aGlzLmNvbnRlbnQucGFyZW50LmhlaWdodDtcclxuICAgICAgICAgICAgICAgIC8v5aaC5p6cbGVmdOWSjHJpZ2h06Ze06ZqU6L+H5aSn77yM5a+86Ie05pS+5LiN5LiL5LiA5LiqaXRlbe+8jOWImWxlZnTlkoxyaWdodOmDveiuvue9ruS4ujDvvIznm7jlvZPkuo7kuI3nlJ/mlYhcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBhZGRpbmdfdG9wICsgdGhpcy5wYWRkaW5nX2J1dHRvbSArIHRoaXMuaXRlbUhlaWdodCArIHRoaXMuc3BhY2VZID4gdGhpcy5jb250ZW50LmhlaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFkZGluZ190b3AgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFkZGluZ19idXR0b20gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJwYWRkaW5nX3RvcOaIlnBhZGRpbmdfYnV0dG9t6L+H5aSnXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFJvdyA9IE1hdGguZmxvb3IoKHRoaXMuY29udGVudC5oZWlnaHQgLSB0aGlzLnBhZGRpbmdfdG9wIC0gdGhpcy5wYWRkaW5nX2J1dHRvbSkgLyAodGhpcy5pdGVtSGVpZ2h0ICsgdGhpcy5zcGFjZVkpKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZENvbCA9IE1hdGguY2VpbChkYXRhTGVuIC8gdGhpcy5ncmlkUm93KTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudC53aWR0aCA9IHRoaXMuZ3JpZENvbCAqIHRoaXMuaXRlbVdpZHRoICsgKHRoaXMuZ3JpZENvbCAtIDEpICogdGhpcy5zcGFjZVggKyB0aGlzLnBhZGRpbmdfbGVmdCArIHRoaXMucGFkZGluZ19yaWdodDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3Bhd25Db3VudCA9IE1hdGgucm91bmQodGhpcy5zY3JvbGxWaWV3Lm5vZGUud2lkdGggLyAodGhpcy5pdGVtV2lkdGggKyB0aGlzLnNwYWNlWCkpICogdGhpcy5ncmlkUm93ICsgdGhpcy5ncmlkUm93ICogMjtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS53aWR0aCAvIDIgKyB0aGlzLml0ZW1XaWR0aCAvIDIgKyB0aGlzLnNwYWNlWDtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51cGRhdGVHcmlkX0g7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliJvlu7rliJfooaggXHJcbiAgICAgKiBAcGFyYW0gc3RhcnRJbmRleCDotbflp4vmmL7npLrnmoTmlbDmja7ntKLlvJUgMOihqOekuuesrOS4gOmhuVxyXG4gICAgICogQHBhcmFtIG9mZnNldCAgICAgc2Nyb2xsVmlld+WBj+enu+mHj1xyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGNyZWF0ZUxpc3Qoc3RhcnRJbmRleDogbnVtYmVyLCBvZmZzZXQ6IGNjLlZlYzIpIHtcclxuICAgICAgICAvL+W9k+mcgOimgeaYvuekuueahOaVsOaNrumVv+W6piA+IOiZmuaLn+WIl+ihqOmVv+W6pu+8jCDliKDpmaTmnIDmnKvlsL7lh6DkuKrmlbDmja7ml7bvvIzliJfooajpnIDopoHph43nva7kvY3nva7liLBzY3JvbGxWaWV35pyA5bqV56uvXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCA+IHRoaXMuc3Bhd25Db3VudCAmJiAoc3RhcnRJbmRleCArIHRoaXMuc3Bhd25Db3VudCAtIDEpID49IHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICBzdGFydEluZGV4ID0gdGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIC0gdGhpcy5zcGF3bkNvdW50O1xyXG4gICAgICAgICAgICBvZmZzZXQgPSB0aGlzLnNjcm9sbFZpZXcuZ2V0TWF4U2Nyb2xsT2Zmc2V0KCk7XHJcblxyXG4gICAgICAgICAgICAvL+W9k+mcgOimgeaYvuekuueahOaVsOaNrumVv+W6piA8PSDomZrmi5/liJfooajplb/luqbvvIwg6ZqQ6JeP5aSa5L2Z55qE6Jma5ouf5YiX6KGo6aG5IFxyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIDw9IHRoaXMuc3Bhd25Db3VudCkge1xyXG4gICAgICAgICAgICBzdGFydEluZGV4ID0gMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5zcGF3bkNvdW50OyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IGl0ZW06IGNjLk5vZGU7XHJcbiAgICAgICAgICAgIC8v6ZyA6KaB5pi+56S655qE5pWw5o2u57Si5byV5Zyo5pWw5o2u6IyD5Zu05YaF77yM5YiZaXRlbeWunuS+i+aYvuekuuWHuuadpVxyXG4gICAgICAgICAgICBpZiAoaSArIHN0YXJ0SW5kZXggPCB0aGlzLml0ZW1EYXRhTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1MaXN0W2ldID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5nZXRJdGVtKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucGFyZW50ID0gdGhpcy5jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5pdGVtTGlzdFtpXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8v6ZyA6KaB5pi+56S655qE5pWw5o2u57Si5byV6LaF6L+H5LqG5pWw5o2u6IyD5Zu077yM5YiZaXRlbeWunuS+i+makOiXj+i1t+adpVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5a6e5L6L5pWw6YePID4g6ZyA6KaB5pi+56S655qE5pWw5o2u6YePXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pdGVtTGlzdC5sZW5ndGggPiAodGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIC0gc3RhcnRJbmRleCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5pdGVtTGlzdC5wb3AoKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1Qb29sLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpICsgc3RhcnRJbmRleDtcclxuICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaSArIHN0YXJ0SW5kZXhdO1xyXG4gICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLlZlcnRpY2FsKSB7XHJcbiAgICAgICAgICAgICAgICAvL+WboOS4umNvbnRlbnTnmoTplJrngrlY5pivMO+8jOaJgOS7pWl0ZW3nmoR45YC85pivY29udGVudC53aXRoLzLooajnpLrlsYXkuK3vvIzplJrngrlZ5pivMe+8jOaJgOS7pWl0ZW3nmoR55YC85LuOY29udGVudOmhtumDqOWQkeS4i+aYrzDliLDotJ/ml6DnqbfjgILmiYDku6VpdGVtLnk9IC1pdGVtLmhlaWdodC8y5pe277yM5piv5ZyoY29udGVudOeahOmhtumDqOOAglxyXG4gICAgICAgICAgICAgICAgaXRlbS5zZXRQb3NpdGlvbih0aGlzLmNvbnRlbnQud2lkdGggLyAyLCAtaXRlbS5oZWlnaHQgKiAoMC41ICsgaSArIHN0YXJ0SW5kZXgpIC0gdGhpcy5zcGFjZVkgKiAoaSArIHN0YXJ0SW5kZXgpIC0gdGhpcy5wYWRkaW5nX3RvcCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgIGl0ZW0uc2V0UG9zaXRpb24oaXRlbS53aWR0aCAqICgwLjUgKyBpICsgc3RhcnRJbmRleCkgKyB0aGlzLnNwYWNlWCAqIChpICsgc3RhcnRJbmRleCkgKyB0aGlzLnBhZGRpbmdfbGVmdCwgLXRoaXMuY29udGVudC5oZWlnaHQgLyAyKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgcm93ID0gTWF0aC5mbG9vcigoaSArIHN0YXJ0SW5kZXgpIC8gdGhpcy5ncmlkQ29sKTtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgY29sID0gKGkgKyBzdGFydEluZGV4KSAlIHRoaXMuZ3JpZENvbDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnNldFBvc2l0aW9uKGl0ZW0ud2lkdGggKiAoMC41ICsgY29sKSArIHRoaXMuc3BhY2VYICogY29sICsgdGhpcy5wYWRkaW5nX2xlZnQsIC1pdGVtLmhlaWdodCAqICgwLjUgKyByb3cpIC0gdGhpcy5zcGFjZVkgKiByb3cgLSB0aGlzLnBhZGRpbmdfdG9wKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuSG9yaXpvbnRhbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciByb3cgPSAoaSArIHN0YXJ0SW5kZXgpICUgdGhpcy5ncmlkUm93O1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBjb2wgPSBNYXRoLmZsb29yKChpICsgc3RhcnRJbmRleCkgLyB0aGlzLmdyaWRSb3cpO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uc2V0UG9zaXRpb24oaXRlbS53aWR0aCAqICgwLjUgKyBjb2wpICsgdGhpcy5zcGFjZVggKiBjb2wgKyB0aGlzLnBhZGRpbmdfbGVmdCwgLWl0ZW0uaGVpZ2h0ICogKDAuNSArIHJvdykgLSB0aGlzLnNwYWNlWSAqIHJvdyAtIHRoaXMucGFkZGluZ190b3ApO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zY3JvbGxWaWV3LnNjcm9sbFRvT2Zmc2V0KG9mZnNldCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoq6I635Y+W5LiA5Liq5YiX6KGo6aG5ICovXHJcbiAgICBwcml2YXRlIGdldEl0ZW0oKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbVBvb2wubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGNjLmluc3RhbnRpYXRlKHRoaXMuaXRlbVJlbmRlcik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXRlbVBvb2wucG9wKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZShkdCkge1xyXG4gICAgICAgIGlmICh0aGlzLmJTY3JvbGxpbmcgPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnVwZGF0ZVRpbWVyICs9IGR0O1xyXG4gICAgICAgIGlmICh0aGlzLnVwZGF0ZVRpbWVyIDwgdGhpcy51cGRhdGVJbnRlcnZhbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMudXBkYXRlVGltZXIgPSAwO1xyXG4gICAgICAgIHRoaXMuYlNjcm9sbGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlRnVuKCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25TY3JvbGxpbmcoKSB7XHJcbiAgICAgICAgdGhpcy5iU2Nyb2xsaW5nID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKirlnoLnm7TmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdXBkYXRlVigpIHtcclxuICAgICAgICBsZXQgaXRlbXMgPSB0aGlzLml0ZW1MaXN0O1xyXG4gICAgICAgIGxldCBpdGVtO1xyXG4gICAgICAgIGxldCBidWZmZXJab25lID0gdGhpcy5oYWxmU2Nyb2xsVmlldztcclxuICAgICAgICBsZXQgaXNVcCA9IHRoaXMuc2Nyb2xsVmlldy5jb250ZW50LnkgPiB0aGlzLmxhc3RDb250ZW50UG9zWTtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gKHRoaXMuaXRlbUhlaWdodCArIHRoaXMuc3BhY2VZKSAqIGl0ZW1zLmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGl0ZW0gPSBpdGVtc1tpXTtcclxuICAgICAgICAgICAgbGV0IHZpZXdQb3MgPSB0aGlzLmdldFBvc2l0aW9uSW5WaWV3KGl0ZW0pO1xyXG4gICAgICAgICAgICBpZiAoaXNVcCkge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5LiK5ruR5pe277yM6LaF5Ye65LqGc2Nyb2xsVmlld+S4iui+ueeVjO+8jOWwhml0ZW3np7vliqjliLDkuIvmlrnlpI3nlKjvvIxpdGVt56e75Yqo5Yiw5LiL5pa555qE5L2N572u5b+F6aG75LiN6LaF6L+HY29udGVudOeahOS4i+i+ueeVjFxyXG4gICAgICAgICAgICAgICAgaWYgKHZpZXdQb3MueSA+IGJ1ZmZlclpvbmUgJiYgaXRlbS55IC0gb2Zmc2V0IC0gdGhpcy5wYWRkaW5nX2J1dHRvbSA+IC10aGlzLmNvbnRlbnQuaGVpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5LiL5ruR5pe277yM6LaF5Ye65LqGc2Nyb2xsVmlld+S4i+i+ueeVjO+8jOWwhml0ZW3np7vliqjliLDkuIrmlrnlpI3nlKjvvIxpdGVt56e75Yqo5Yiw5LiK5pa555qE5L2N572u5b+F6aG75LiN6LaF6L+HY29udGVudOeahOS4iui+ueeVjFxyXG4gICAgICAgICAgICAgICAgaWYgKHZpZXdQb3MueSA8IC1idWZmZXJab25lICYmIGl0ZW0ueSArIG9mZnNldCArIHRoaXMucGFkZGluZ190b3AgPCAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggLSBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NZID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueTtcclxuICAgIH1cclxuXHJcbiAgICAvKirmsLTlubPmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdWRwYXRlSCgpIHtcclxuICAgICAgICBsZXQgaXRlbXMgPSB0aGlzLml0ZW1MaXN0O1xyXG4gICAgICAgIGxldCBpdGVtO1xyXG4gICAgICAgIGxldCBidWZmZXJab25lID0gdGhpcy5oYWxmU2Nyb2xsVmlldztcclxuICAgICAgICBsZXQgaXNSaWdodCA9IHRoaXMuc2Nyb2xsVmlldy5jb250ZW50LnggPiB0aGlzLmxhc3RDb250ZW50UG9zWDtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gKHRoaXMuaXRlbVdpZHRoICsgdGhpcy5zcGFjZVgpICogaXRlbXMubGVuZ3RoO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldO1xyXG4gICAgICAgICAgICBsZXQgdmlld1BvcyA9IHRoaXMuZ2V0UG9zaXRpb25JblZpZXcoaXRlbSk7XHJcbiAgICAgICAgICAgIGlmIChpc1JpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lj7Pmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35Y+z6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOW3puaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlt6bmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5bem6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54ID4gYnVmZmVyWm9uZSAmJiBpdGVtLnggLSBvZmZzZXQgLSB0aGlzLnBhZGRpbmdfbGVmdCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtIGl0ZW1zLmxlbmd0aDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGEgPSB0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YUNoYW5nZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnggPSBpdGVtLnggLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lt6bmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35bem6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOWPs+aWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlj7PmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5Y+z6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS54ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3JpZ2h0IDwgdGhpcy5jb250ZW50LndpZHRoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NYID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueDtcclxuICAgIH1cclxuXHJcbiAgICAvKirnvZHmoLzlnoLnm7TmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdXBkYXRlR3JpZF9WKCkge1xyXG4gICAgICAgIGxldCBpdGVtcyA9IHRoaXMuaXRlbUxpc3Q7XHJcbiAgICAgICAgbGV0IGl0ZW06IGNjLk5vZGU7XHJcbiAgICAgICAgbGV0IGJ1ZmZlclpvbmUgPSB0aGlzLmhhbGZTY3JvbGxWaWV3O1xyXG4gICAgICAgIGxldCBpc1VwID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueSA+IHRoaXMubGFzdENvbnRlbnRQb3NZO1xyXG4gICAgICAgIGxldCBvZmZzZXQgPSAodGhpcy5pdGVtSGVpZ2h0ICsgdGhpcy5zcGFjZVkpICogKHRoaXMuc3Bhd25Db3VudCAvIHRoaXMuZ3JpZENvbCk7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpdGVtID0gaXRlbXNbaV07XHJcbiAgICAgICAgICAgIGxldCB2aWV3UG9zID0gdGhpcy5nZXRQb3NpdGlvbkluVmlldyhpdGVtKTtcclxuICAgICAgICAgICAgaWYgKGlzVXApIHtcclxuICAgICAgICAgICAgICAgIC8vaXRlbeS4iua7keaXtu+8jOi2heWHuuS6hnNjcm9sbFZpZXfkuIrovrnnlYzvvIzlsIZpdGVt56e75Yqo5Yiw5LiL5pa55aSN55So77yMaXRlbeenu+WKqOWIsOS4i+aWueeahOS9jee9ruW/hemhu+S4jei2hei/h2NvbnRlbnTnmoTkuIvovrnnlYxcclxuICAgICAgICAgICAgICAgIGlmICh2aWV3UG9zLnkgPiBidWZmZXJab25lICYmIGl0ZW0ueSAtIG9mZnNldCAtIHRoaXMucGFkZGluZ19idXR0b20gPiAtdGhpcy5jb250ZW50LmhlaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtUmVuZGVyOiBJdGVtUmVuZGVyID0gaXRlbS5nZXRDb21wb25lbnQoSXRlbVJlbmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1JbmRleCA9IGl0ZW1SZW5kZXIuaXRlbUluZGV4ICsgKHRoaXMuc3Bhd25Db3VudCAvIHRoaXMuZ3JpZENvbCkgKiB0aGlzLmdyaWRDb2w7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2l0ZW1JbmRleF0gIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnkgPSBpdGVtLnkgLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuaXRlbUluZGV4ID0gaXRlbUluZGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGEgPSB0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnkgPSBpdGVtLnkgLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuaXRlbUluZGV4ID0gaXRlbUluZGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHsvL2l0ZW3kuIvmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35LiL6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOS4iuaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDkuIrmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5LiK6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy55IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS55ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3RvcCA8IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRDb2wpICogdGhpcy5ncmlkQ29sO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhQ2hhbmdlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5sYXN0Q29udGVudFBvc1kgPSB0aGlzLnNjcm9sbFZpZXcuY29udGVudC55O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKue9keagvOawtOW5s+aOkuWIlyAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVHcmlkX0goKSB7XHJcbiAgICAgICAgbGV0IGl0ZW1zID0gdGhpcy5pdGVtTGlzdDtcclxuICAgICAgICBsZXQgaXRlbTtcclxuICAgICAgICBsZXQgYnVmZmVyWm9uZSA9IHRoaXMuaGFsZlNjcm9sbFZpZXc7XHJcbiAgICAgICAgbGV0IGlzUmlnaHQgPSB0aGlzLnNjcm9sbFZpZXcuY29udGVudC54ID4gdGhpcy5sYXN0Q29udGVudFBvc1g7XHJcbiAgICAgICAgbGV0IG9mZnNldCA9ICh0aGlzLml0ZW1XaWR0aCArIHRoaXMuc3BhY2VYKSAqICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRSb3cpO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldO1xyXG4gICAgICAgICAgICBsZXQgdmlld1BvcyA9IHRoaXMuZ2V0UG9zaXRpb25JblZpZXcoaXRlbSk7XHJcbiAgICAgICAgICAgIGlmIChpc1JpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lj7Pmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35Y+z6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOW3puaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlt6bmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5bem6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54ID4gYnVmZmVyWm9uZSAmJiBpdGVtLnggLSBvZmZzZXQgLSB0aGlzLnBhZGRpbmdfbGVmdCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRSb3cpICogdGhpcy5ncmlkUm93O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhQ2hhbmdlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lt6bmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35bem6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOWPs+aWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlj7PmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5Y+z6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS54ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3JpZ2h0IDwgdGhpcy5jb250ZW50LndpZHRoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyAodGhpcy5zcGF3bkNvdW50IC8gdGhpcy5ncmlkUm93KSAqIHRoaXMuZ3JpZFJvdztcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ueCA9IGl0ZW0ueCArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YSA9IHRoaXMuaXRlbURhdGFMaXN0W2l0ZW1JbmRleF07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YUNoYW5nZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ueCA9IGl0ZW0ueCArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NYID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueDtcclxuICAgIH1cclxuXHJcbiAgICAvKirojrflj5ZpdGVt5Zyoc2Nyb2xsVmlld+eahOWxgOmDqOWdkOaghyAqL1xyXG4gICAgcHJpdmF0ZSBnZXRQb3NpdGlvbkluVmlldyhpdGVtKSB7XHJcbiAgICAgICAgbGV0IHdvcmxkUG9zID0gaXRlbS5wYXJlbnQuY29udmVydFRvV29ybGRTcGFjZUFSKGl0ZW0ucG9zaXRpb24pO1xyXG4gICAgICAgIGxldCB2aWV3UG9zID0gdGhpcy5zY3JvbGxWaWV3Lm5vZGUuY29udmVydFRvTm9kZVNwYWNlQVIod29ybGRQb3MpO1xyXG4gICAgICAgIHJldHVybiB2aWV3UG9zO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKuiOt+WPluWIl+ihqOaVsOaNriAqL1xyXG4gICAgcHVibGljIGdldExpc3REYXRhKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1EYXRhTGlzdDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOWinuWKoOS4gOmhueaVsOaNruWIsOWIl+ihqOeahOacq+WwvlxyXG4gICAgICogQHBhcmFtIGRhdGEg5pWw5o2uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhZGRJdGVtKGRhdGE6IGFueSkge1xyXG4gICAgICAgIHRoaXMuaXRlbURhdGFMaXN0LnB1c2goZGF0YSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDlop7liqDkuIDpobnmlbDmja7liLDliJfooajmjIflrprkvY3nva5cclxuICAgICAqIEBwYXJhbSBpbmRleCAgIOS9jee9ru+8jDDooajnpLrnrKwx6aG5XHJcbiAgICAgKiBAcGFyYW0gZGF0YSAg5pWw5o2uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhZGRJdGVtQXQoaW5kZXg6IG51bWJlciwgZGF0YTogYW55KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSAhPSBudWxsIHx8IHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCA9PSBpbmRleCkge1xyXG4gICAgICAgICAgICB0aGlzLml0ZW1EYXRhTGlzdC5zcGxpY2UoaW5kZXgsIDEsIGRhdGEpO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliKDpmaTkuIDpobnmlbDmja5cclxuICAgICAqIEBwYXJhbSBpbmRleCDliKDpmaTpobnnmoTkvY3nva4gLDDooajnpLrnrKwx6aG5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBkZWxldGVJdGVtKGluZGV4OiBudW1iZXIpIHtcclxuICAgICAgICBpZiAodGhpcy5pdGVtRGF0YUxpc3RbaW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtRGF0YUxpc3Quc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5pS55Y+Y5LiA6aG55pWw5o2uXHJcbiAgICAgKiBAcGFyYW0gaW5kZXggICDkvY3nva4sMOihqOekuuesrDHpoblcclxuICAgICAqIEBwYXJhbSBkYXRhICDmm7/mjaLnmoTmlbDmja5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGNoYW5nZUl0ZW0oaW5kZXg6IG51bWJlciwgZGF0YTogYW55KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSA9IGRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ29udGVudCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKirojrflj5bnrKzkuIDkuKpJdGVt55qE5L2N572uICovXHJcbiAgICBwcml2YXRlIHVwZGF0ZUNvbnRlbnQoKSB7XHJcbiAgICAgICAgLy/mmL7npLrliJfooajlrp7kvovkuLow5LiqXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbUxpc3QubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5jb3VudExpc3RQYXJhbSgpO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpc3QoMCwgbmV3IGNjLlZlYzIoMCwgMCkpO1xyXG4gICAgICAgICAgICAvL+aYvuekuuWIl+ihqOeahOWunuS+i+S4jeS4ujDkuKrvvIzliJnpnIDopoHph43mlrDmjpLliJdpdGVt5a6e5L6L5pWw57uEXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBiLnkgLSBhLnk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuSG9yaXpvbnRhbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhLnggLSBiLng7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1MaXN0LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhLnggLSBiLng7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYi55IC0gYS55O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnN0YXJ0QXhpcyA9PSBTdGFydEF4aXNUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1MaXN0LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBiLnkgLSBhLnk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYS54IC0gYi54O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNvdW50TGlzdFBhcmFtKCk7XHJcblxyXG4gICAgICAgICAgICAvL+iOt+WPluesrOS4gOS4qml0ZW3lrp7kvovpnIDopoHmmL7npLrnmoTmlbDmja7ntKLlvJVcclxuICAgICAgICAgICAgdmFyIHN0YXJ0SW5kZXggPSB0aGlzLml0ZW1MaXN0WzBdLmdldENvbXBvbmVudChJdGVtUmVuZGVyKS5pdGVtSW5kZXg7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQgJiYgdGhpcy5zdGFydEF4aXMgPT0gU3RhcnRBeGlzVHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICAgICAgc3RhcnRJbmRleCArPSAoc3RhcnRJbmRleCArIHRoaXMuc3Bhd25Db3VudCkgJSB0aGlzLmdyaWRDb2w7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQgJiYgdGhpcy5zdGFydEF4aXMgPT0gU3RhcnRBeGlzVHlwZS5Ib3Jpem9udGFsKSB7XHJcbiAgICAgICAgICAgICAgICBzdGFydEluZGV4ICs9IChzdGFydEluZGV4ICsgdGhpcy5zcGF3bkNvdW50KSAlIHRoaXMuZ3JpZFJvdztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy9nZXRTY3JvbGxPZmZzZXQoKeWSjHNjcm9sbFRvT2Zmc2V0KCnnmoR45YC85piv55u45Y+N55qEXHJcbiAgICAgICAgICAgIHZhciBvZmZzZXQ6IGNjLlZlYzIgPSB0aGlzLnNjcm9sbFZpZXcuZ2V0U2Nyb2xsT2Zmc2V0KCk7XHJcbiAgICAgICAgICAgIG9mZnNldC54ID0gLSBvZmZzZXQueDtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlTGlzdChzdGFydEluZGV4LCBvZmZzZXQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKirplIDmr4EgKi9cclxuICAgIHB1YmxpYyBvbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgLy/muIXnkIbliJfooajpoblcclxuICAgICAgICBsZXQgbGVuID0gdGhpcy5pdGVtTGlzdC5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoY2MuaXNWYWxpZCh0aGlzLml0ZW1MaXN0W2ldLCB0cnVlKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdFtpXS5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pdGVtTGlzdC5sZW5ndGggPSAwO1xyXG4gICAgICAgIC8v5riF55CG5a+56LGh5rGgXHJcbiAgICAgICAgbGVuID0gdGhpcy5pdGVtUG9vbC5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoY2MuaXNWYWxpZCh0aGlzLml0ZW1Qb29sW2ldLCB0cnVlKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtUG9vbFtpXS5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pdGVtUG9vbC5sZW5ndGggPSAwO1xyXG4gICAgICAgIC8v5riF55CG5YiX6KGo5pWw5o2uXHJcbiAgICAgICAgdGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoID0gMDtcclxuICAgIH1cclxufVxyXG4iXX0= //------QC-SOURCE-SPLIT------ (function() { @@ -6363,649 +7036,4 @@ cc._RF.pop(); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXENyeXB0b1xcY3J5cHRvLWpzLm1pbi5qcyJdLCJuYW1lcyI6WyJ0IiwiciIsImV4cG9ydHMiLCJtb2R1bGUiLCJkZWZpbmUiLCJhbWQiLCJDcnlwdG9KUyIsImUiLCJPYmplY3QiLCJjcmVhdGUiLCJwcm90b3R5cGUiLCJpIiwibiIsImxpYiIsIm8iLCJCYXNlIiwiZXh0ZW5kIiwibWl4SW4iLCJoYXNPd25Qcm9wZXJ0eSIsImluaXQiLCIkc3VwZXIiLCJhcHBseSIsImFyZ3VtZW50cyIsInRvU3RyaW5nIiwiY2xvbmUiLCJzIiwiV29yZEFycmF5Iiwid29yZHMiLCJzaWdCeXRlcyIsImxlbmd0aCIsImMiLCJzdHJpbmdpZnkiLCJjb25jYXQiLCJjbGFtcCIsImNlaWwiLCJjYWxsIiwic2xpY2UiLCJyYW5kb20iLCJhIiwicHVzaCIsImVuYyIsIkhleCIsImpvaW4iLCJwYXJzZSIsInBhcnNlSW50Iiwic3Vic3RyIiwiaCIsIkxhdGluMSIsIlN0cmluZyIsImZyb21DaGFyQ29kZSIsImNoYXJDb2RlQXQiLCJsIiwiVXRmOCIsImRlY29kZVVSSUNvbXBvbmVudCIsImVzY2FwZSIsIkVycm9yIiwidW5lc2NhcGUiLCJlbmNvZGVVUklDb21wb25lbnQiLCJmIiwiQnVmZmVyZWRCbG9ja0FsZ29yaXRobSIsInJlc2V0IiwiX2RhdGEiLCJfbkRhdGFCeXRlcyIsIl9hcHBlbmQiLCJfcHJvY2VzcyIsImJsb2NrU2l6ZSIsIm1heCIsIl9taW5CdWZmZXJTaXplIiwibWluIiwiX2RvUHJvY2Vzc0Jsb2NrIiwidSIsInNwbGljZSIsIkhhc2hlciIsImNmZyIsIl9kb1Jlc2V0IiwidXBkYXRlIiwiZmluYWxpemUiLCJfZG9GaW5hbGl6ZSIsIl9jcmVhdGVIZWxwZXIiLCJfY3JlYXRlSG1hY0hlbHBlciIsIkhNQUMiLCJhbGdvIiwiTWF0aCIsIkJhc2U2NCIsIl9tYXAiLCJjaGFyQXQiLCJfcmV2ZXJzZU1hcCIsImluZGV4T2YiLCJhYnMiLCJzaW4iLCJNRDUiLCJfaGFzaCIsImQiLCJ2IiwicCIsIl8iLCJ5IiwiZyIsIkIiLCJ3IiwiayIsIlMiLCJtIiwieCIsImIiLCJIIiwieiIsIkEiLCJDIiwiRCIsImZsb29yIiwiSG1hY01ENSIsIlNIQTEiLCJIbWFjU0hBMSIsInNxcnQiLCJwb3ciLCJTSEEyNTYiLCJIbWFjU0hBMjU2IiwiVXRmMTYiLCJVdGYxNkJFIiwiVXRmMTZMRSIsIkFycmF5QnVmZmVyIiwiVWludDhBcnJheSIsIkludDhBcnJheSIsIlVpbnQ4Q2xhbXBlZEFycmF5IiwiSW50MTZBcnJheSIsIlVpbnQxNkFycmF5IiwiSW50MzJBcnJheSIsIlVpbnQzMkFycmF5IiwiRmxvYXQzMkFycmF5IiwiRmxvYXQ2NEFycmF5IiwiYnVmZmVyIiwiYnl0ZU9mZnNldCIsImJ5dGVMZW5ndGgiLCJSSVBFTUQxNjAiLCJSIiwiRSIsIk0iLCJGIiwiSG1hY1JJUEVNRDE2MCIsIl9oYXNoZXIiLCJfb0tleSIsIl9pS2V5IiwiUEJLREYyIiwia2V5U2l6ZSIsImhhc2hlciIsIml0ZXJhdGlvbnMiLCJjb21wdXRlIiwiRXZwS0RGIiwiU0hBMjI0IiwiSG1hY1NIQTIyNCIsIng2NCIsIldvcmQiLCJoaWdoIiwibG93IiwidG9YMzIiLCJTSEEzIiwib3V0cHV0TGVuZ3RoIiwiX3N0YXRlIiwiSG1hY1NIQTMiLCJTSEE1MTIiLCJQIiwiVyIsIk8iLCJVIiwiSSIsIksiLCJYIiwiTCIsImoiLCJOIiwiVCIsIloiLCJxIiwiRyIsIkoiLCIkIiwiUSIsIlYiLCJZIiwidHQiLCJydCIsImV0IiwiaXQiLCJudCIsIm90Iiwic3QiLCJhdCIsImN0IiwiaHQiLCJsdCIsImZ0IiwidXQiLCJkdCIsInZ0IiwicHQiLCJfdCIsInl0IiwiZ3QiLCJCdCIsInd0Iiwia3QiLCJTdCIsIm10IiwieHQiLCJidCIsIkhtYWNTSEE1MTIiLCJTSEEzODQiLCJIbWFjU0hBMzg0IiwiQ2lwaGVyIiwiY3JlYXRlRW5jcnlwdG9yIiwiX0VOQ19YRk9STV9NT0RFIiwiY3JlYXRlRGVjcnlwdG9yIiwiX0RFQ19YRk9STV9NT0RFIiwiX3hmb3JtTW9kZSIsIl9rZXkiLCJwcm9jZXNzIiwiaXZTaXplIiwiZW5jcnlwdCIsImRlY3J5cHQiLCJTdHJlYW1DaXBoZXIiLCJtb2RlIiwiQmxvY2tDaXBoZXJNb2RlIiwiRW5jcnlwdG9yIiwiRGVjcnlwdG9yIiwiX2NpcGhlciIsIl9pdiIsIkNCQyIsIl9wcmV2QmxvY2siLCJwcm9jZXNzQmxvY2siLCJlbmNyeXB0QmxvY2siLCJkZWNyeXB0QmxvY2siLCJwYWQiLCJQa2NzNyIsInVucGFkIiwiQmxvY2tDaXBoZXIiLCJwYWRkaW5nIiwiaXYiLCJfbW9kZSIsIl9fY3JlYXRvciIsIkNpcGhlclBhcmFtcyIsImZvcm1hdHRlciIsImZvcm1hdCIsIk9wZW5TU0wiLCJjaXBoZXJ0ZXh0Iiwic2FsdCIsIlNlcmlhbGl6YWJsZUNpcGhlciIsImtleSIsImFsZ29yaXRobSIsIl9wYXJzZSIsImtkZiIsImV4ZWN1dGUiLCJQYXNzd29yZEJhc2VkQ2lwaGVyIiwiQ0ZCIiwiRUNCIiwiQW5zaVg5MjMiLCJJc28xMDEyNiIsIklzbzk3OTcxIiwiWmVyb1BhZGRpbmciLCJPRkIiLCJfa2V5c3RyZWFtIiwiTm9QYWRkaW5nIiwiQUVTIiwiX25Sb3VuZHMiLCJfa2V5UHJpb3JSZXNldCIsIl9rZXlTY2hlZHVsZSIsIl9pbnZLZXlTY2hlZHVsZSIsIl9kb0NyeXB0QmxvY2siLCJfbEJsb2NrIiwiX3JCbG9jayIsIkRFUyIsIl9zdWJLZXlzIiwiX2ludlN1YktleXMiLCJUcmlwbGVERVMiLCJfZGVzMSIsIl9kZXMyIiwiX2RlczMiLCJfUyIsIl9pIiwiX2oiLCJSQzQiLCJSQzREcm9wIiwiZHJvcCIsIkNUUkdsYWRtYW4iLCJfY291bnRlciIsIl9YIiwiX0MiLCJfYiIsIlJhYmJpdCIsIkNUUiIsIlJhYmJpdExlZ2FjeSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxDQUFDLFVBQVNBLENBQVQsRUFBV0MsQ0FBWCxFQUFhO0FBQUMsY0FBVSxPQUFPQyxPQUFqQixHQUF5QkMsTUFBTSxDQUFDRCxPQUFQLEdBQWVBLE9BQU8sR0FBQ0QsQ0FBQyxFQUFqRCxHQUFvRCxjQUFZLE9BQU9HLE1BQW5CLElBQTJCQSxNQUFNLENBQUNDLEdBQWxDLEdBQXNDRCxNQUFNLENBQUMsRUFBRCxFQUFJSCxDQUFKLENBQTVDLEdBQW1ERCxDQUFDLENBQUNNLFFBQUYsR0FBV0wsQ0FBQyxFQUFuSDtBQUFzSCxDQUFwSSxTQUEwSSxZQUFVO0FBQUMsTUFBSUQsQ0FBQyxHQUFDQSxDQUFDLElBQUUsVUFBU0EsQ0FBVCxFQUFXQyxDQUFYLEVBQWE7QUFBQyxRQUFJTSxDQUFDLEdBQUNDLE1BQU0sQ0FBQ0MsTUFBUCxJQUFlLFlBQVU7QUFBQyxlQUFTVCxDQUFULEdBQVksQ0FBRTs7QUFBQSxhQUFPLFVBQVNDLENBQVQsRUFBVztBQUFDLFlBQUlNLENBQUo7QUFBTSxlQUFPUCxDQUFDLENBQUNVLFNBQUYsR0FBWVQsQ0FBWixFQUFjTSxDQUFDLEdBQUMsSUFBSVAsQ0FBSixFQUFoQixFQUFzQkEsQ0FBQyxDQUFDVSxTQUFGLEdBQVksSUFBbEMsRUFBdUNILENBQTlDO0FBQWdELE9BQXpFO0FBQTBFLEtBQW5HLEVBQXJCO0FBQUEsUUFBMkhJLENBQUMsR0FBQyxFQUE3SDtBQUFBLFFBQWdJQyxDQUFDLEdBQUNELENBQUMsQ0FBQ0UsR0FBRixHQUFNLEVBQXhJO0FBQUEsUUFBMklDLENBQUMsR0FBQ0YsQ0FBQyxDQUFDRyxJQUFGLEdBQU8sWUFBVTtBQUFDLGFBQU07QUFBQ0MsUUFBQUEsTUFBTSxFQUFDLGdCQUFTaEIsQ0FBVCxFQUFXO0FBQUMsY0FBSUMsQ0FBQyxHQUFDTSxDQUFDLENBQUMsSUFBRCxDQUFQO0FBQWMsaUJBQU9QLENBQUMsSUFBRUMsQ0FBQyxDQUFDZ0IsS0FBRixDQUFRakIsQ0FBUixDQUFILEVBQWNDLENBQUMsQ0FBQ2lCLGNBQUYsQ0FBaUIsTUFBakIsS0FBMEIsS0FBS0MsSUFBTCxLQUFZbEIsQ0FBQyxDQUFDa0IsSUFBeEMsS0FBK0NsQixDQUFDLENBQUNrQixJQUFGLEdBQU8sWUFBVTtBQUFDbEIsWUFBQUEsQ0FBQyxDQUFDbUIsTUFBRixDQUFTRCxJQUFULENBQWNFLEtBQWQsQ0FBb0IsSUFBcEIsRUFBeUJDLFNBQXpCO0FBQW9DLFdBQXJHLENBQWQsRUFBcUhyQixDQUFDLENBQUNrQixJQUFGLENBQU9ULFNBQVAsR0FBaUJULENBQXRJLEVBQXdJQSxDQUFDLENBQUNtQixNQUFGLEdBQVMsSUFBakosRUFBc0puQixDQUE3SjtBQUErSixTQUFqTTtBQUFrTVEsUUFBQUEsTUFBTSxFQUFDLGtCQUFVO0FBQUMsY0FBSVQsQ0FBQyxHQUFDLEtBQUtnQixNQUFMLEVBQU47QUFBb0IsaUJBQU9oQixDQUFDLENBQUNtQixJQUFGLENBQU9FLEtBQVAsQ0FBYXJCLENBQWIsRUFBZXNCLFNBQWYsR0FBMEJ0QixDQUFqQztBQUFtQyxTQUEzUTtBQUE0UW1CLFFBQUFBLElBQUksRUFBQyxnQkFBVSxDQUFFLENBQTdSO0FBQThSRixRQUFBQSxLQUFLLEVBQUMsZUFBU2pCLENBQVQsRUFBVztBQUFDLGVBQUksSUFBSUMsQ0FBUixJQUFhRCxDQUFiO0FBQWVBLFlBQUFBLENBQUMsQ0FBQ2tCLGNBQUYsQ0FBaUJqQixDQUFqQixNQUFzQixLQUFLQSxDQUFMLElBQVFELENBQUMsQ0FBQ0MsQ0FBRCxDQUEvQjtBQUFmOztBQUFtREQsVUFBQUEsQ0FBQyxDQUFDa0IsY0FBRixDQUFpQixVQUFqQixNQUErQixLQUFLSyxRQUFMLEdBQWN2QixDQUFDLENBQUN1QixRQUEvQztBQUF5RCxTQUE1WjtBQUE2WkMsUUFBQUEsS0FBSyxFQUFDLGlCQUFVO0FBQUMsaUJBQU8sS0FBS0wsSUFBTCxDQUFVVCxTQUFWLENBQW9CTSxNQUFwQixDQUEyQixJQUEzQixDQUFQO0FBQXdDO0FBQXRkLE9BQU47QUFBOGQsS0FBemUsRUFBcEo7QUFBQSxRQUFnb0JTLENBQUMsR0FBQ2IsQ0FBQyxDQUFDYyxTQUFGLEdBQVlaLENBQUMsQ0FBQ0UsTUFBRixDQUFTO0FBQUNHLE1BQUFBLElBQUksRUFBQyxjQUFTbkIsQ0FBVCxFQUFXTyxDQUFYLEVBQWE7QUFBQ1AsUUFBQUEsQ0FBQyxHQUFDLEtBQUsyQixLQUFMLEdBQVczQixDQUFDLElBQUUsRUFBaEIsRUFBbUJPLENBQUMsSUFBRU4sQ0FBSCxHQUFLLEtBQUsyQixRQUFMLEdBQWNyQixDQUFuQixHQUFxQixLQUFLcUIsUUFBTCxHQUFjLElBQUU1QixDQUFDLENBQUM2QixNQUExRDtBQUFpRSxPQUFyRjtBQUFzRk4sTUFBQUEsUUFBUSxFQUFDLGtCQUFTdkIsQ0FBVCxFQUFXO0FBQUMsZUFBTSxDQUFDQSxDQUFDLElBQUU4QixDQUFKLEVBQU9DLFNBQVAsQ0FBaUIsSUFBakIsQ0FBTjtBQUE2QixPQUF4STtBQUF5SUMsTUFBQUEsTUFBTSxFQUFDLGdCQUFTaEMsQ0FBVCxFQUFXO0FBQUMsWUFBSUMsQ0FBQyxHQUFDLEtBQUswQixLQUFYO0FBQUEsWUFBaUJwQixDQUFDLEdBQUNQLENBQUMsQ0FBQzJCLEtBQXJCO0FBQUEsWUFBMkJoQixDQUFDLEdBQUMsS0FBS2lCLFFBQWxDO0FBQUEsWUFBMkNoQixDQUFDLEdBQUNaLENBQUMsQ0FBQzRCLFFBQS9DO0FBQXdELFlBQUcsS0FBS0ssS0FBTCxJQUFhdEIsQ0FBQyxHQUFDLENBQWxCLEVBQW9CLEtBQUksSUFBSUcsQ0FBQyxHQUFDLENBQVYsRUFBWUEsQ0FBQyxHQUFDRixDQUFkLEVBQWdCRSxDQUFDLEVBQWpCLEVBQW9CO0FBQUMsY0FBSVcsQ0FBQyxHQUFDbEIsQ0FBQyxDQUFDTyxDQUFDLEtBQUcsQ0FBTCxDQUFELEtBQVcsS0FBR0EsQ0FBQyxHQUFDLENBQUYsR0FBSSxDQUFsQixHQUFvQixHQUExQjtBQUE4QmIsVUFBQUEsQ0FBQyxDQUFDVSxDQUFDLEdBQUNHLENBQUYsS0FBTSxDQUFQLENBQUQsSUFBWVcsQ0FBQyxJQUFFLEtBQUcsQ0FBQ2QsQ0FBQyxHQUFDRyxDQUFILElBQU0sQ0FBTixHQUFRLENBQTFCO0FBQTRCLFNBQW5HLE1BQXdHLEtBQUksSUFBSUEsQ0FBQyxHQUFDLENBQVYsRUFBWUEsQ0FBQyxHQUFDRixDQUFkLEVBQWdCRSxDQUFDLElBQUUsQ0FBbkI7QUFBcUJiLFVBQUFBLENBQUMsQ0FBQ1UsQ0FBQyxHQUFDRyxDQUFGLEtBQU0sQ0FBUCxDQUFELEdBQVdQLENBQUMsQ0FBQ08sQ0FBQyxLQUFHLENBQUwsQ0FBWjtBQUFyQjtBQUF5QyxlQUFPLEtBQUtjLFFBQUwsSUFBZWhCLENBQWYsRUFBaUIsSUFBeEI7QUFBNkIsT0FBbFk7QUFBbVlxQixNQUFBQSxLQUFLLEVBQUMsaUJBQVU7QUFBQyxZQUFJaEMsQ0FBQyxHQUFDLEtBQUswQixLQUFYO0FBQUEsWUFBaUJwQixDQUFDLEdBQUMsS0FBS3FCLFFBQXhCO0FBQWlDM0IsUUFBQUEsQ0FBQyxDQUFDTSxDQUFDLEtBQUcsQ0FBTCxDQUFELElBQVUsY0FBWSxLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQTdCLEVBQStCTixDQUFDLENBQUM0QixNQUFGLEdBQVM3QixDQUFDLENBQUNrQyxJQUFGLENBQU8zQixDQUFDLEdBQUMsQ0FBVCxDQUF4QztBQUFvRCxPQUF6ZTtBQUEwZWlCLE1BQUFBLEtBQUssRUFBQyxpQkFBVTtBQUFDLFlBQUl4QixDQUFDLEdBQUNjLENBQUMsQ0FBQ1UsS0FBRixDQUFRVyxJQUFSLENBQWEsSUFBYixDQUFOO0FBQXlCLGVBQU9uQyxDQUFDLENBQUMyQixLQUFGLEdBQVEsS0FBS0EsS0FBTCxDQUFXUyxLQUFYLENBQWlCLENBQWpCLENBQVIsRUFBNEJwQyxDQUFuQztBQUFxQyxPQUF6akI7QUFBMGpCcUMsTUFBQUEsTUFBTSxFQUFDLGdCQUFTcEMsQ0FBVCxFQUFXO0FBQUMsYUFBSSxJQUFJTSxDQUFKLEVBQU1JLENBQUMsR0FBQyxFQUFSLEVBQVdDLENBQUMsR0FBQyxTQUFGQSxDQUFFLENBQVNYLENBQVQsRUFBVztBQUFDLGNBQUlBLENBQUMsR0FBQ0EsQ0FBTjtBQUFBLGNBQVFNLENBQUMsR0FBQyxTQUFWO0FBQUEsY0FBb0JJLENBQUMsR0FBQyxVQUF0QjtBQUFpQyxpQkFBTyxZQUFVO0FBQUNKLFlBQUFBLENBQUMsR0FBQyxTQUFPLFFBQU1BLENBQWIsS0FBaUJBLENBQUMsSUFBRSxFQUFwQixJQUF3QkksQ0FBMUIsRUFBNEJWLENBQUMsR0FBQyxRQUFNLFFBQU1BLENBQVosS0FBZ0JBLENBQUMsSUFBRSxFQUFuQixJQUF1QlUsQ0FBckQ7QUFBdUQsZ0JBQUlDLENBQUMsR0FBQyxDQUFDTCxDQUFDLElBQUUsRUFBSixJQUFRTixDQUFSLEdBQVVVLENBQWhCO0FBQWtCLG1CQUFPQyxDQUFDLElBQUUsVUFBSCxFQUFjQSxDQUFDLElBQUUsRUFBakIsRUFBb0JBLENBQUMsSUFBRVosQ0FBQyxDQUFDcUMsTUFBRixLQUFXLEVBQVgsR0FBYyxDQUFkLEdBQWdCLENBQUMsQ0FBbkIsQ0FBNUI7QUFBa0QsV0FBN0k7QUFBOEksU0FBeE0sRUFBeU12QixDQUFDLEdBQUMsQ0FBL00sRUFBaU5BLENBQUMsR0FBQ2IsQ0FBbk4sRUFBcU5hLENBQUMsSUFBRSxDQUF4TixFQUEwTjtBQUFDLGNBQUl3QixDQUFDLEdBQUMxQixDQUFDLENBQUMsY0FBWUwsQ0FBQyxJQUFFUCxDQUFDLENBQUNxQyxNQUFGLEVBQWYsQ0FBRCxDQUFQO0FBQW9DOUIsVUFBQUEsQ0FBQyxHQUFDLFlBQVUrQixDQUFDLEVBQWIsRUFBZ0IzQixDQUFDLENBQUM0QixJQUFGLENBQU8sYUFBV0QsQ0FBQyxFQUFaLEdBQWUsQ0FBdEIsQ0FBaEI7QUFBeUM7O0FBQUEsZUFBTyxJQUFJYixDQUFDLENBQUNOLElBQU4sQ0FBV1IsQ0FBWCxFQUFhVixDQUFiLENBQVA7QUFBdUI7QUFBNTRCLEtBQVQsQ0FBOW9CO0FBQUEsUUFBc2lEcUMsQ0FBQyxHQUFDM0IsQ0FBQyxDQUFDNkIsR0FBRixHQUFNLEVBQTlpRDtBQUFBLFFBQWlqRFYsQ0FBQyxHQUFDUSxDQUFDLENBQUNHLEdBQUYsR0FBTTtBQUFDVixNQUFBQSxTQUFTLEVBQUMsbUJBQVMvQixDQUFULEVBQVc7QUFBQyxhQUFJLElBQUlDLENBQUMsR0FBQ0QsQ0FBQyxDQUFDMkIsS0FBUixFQUFjcEIsQ0FBQyxHQUFDUCxDQUFDLENBQUM0QixRQUFsQixFQUEyQmpCLENBQUMsR0FBQyxFQUE3QixFQUFnQ0MsQ0FBQyxHQUFDLENBQXRDLEVBQXdDQSxDQUFDLEdBQUNMLENBQTFDLEVBQTRDSyxDQUFDLEVBQTdDLEVBQWdEO0FBQUMsY0FBSUUsQ0FBQyxHQUFDYixDQUFDLENBQUNXLENBQUMsS0FBRyxDQUFMLENBQUQsS0FBVyxLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQWxCLEdBQW9CLEdBQTFCO0FBQThCRCxVQUFBQSxDQUFDLENBQUM0QixJQUFGLENBQU8sQ0FBQ3pCLENBQUMsS0FBRyxDQUFMLEVBQVFTLFFBQVIsQ0FBaUIsRUFBakIsQ0FBUCxHQUE2QlosQ0FBQyxDQUFDNEIsSUFBRixDQUFPLENBQUMsS0FBR3pCLENBQUosRUFBT1MsUUFBUCxDQUFnQixFQUFoQixDQUFQLENBQTdCO0FBQXlEOztBQUFBLGVBQU9aLENBQUMsQ0FBQytCLElBQUYsQ0FBTyxFQUFQLENBQVA7QUFBa0IsT0FBakw7QUFBa0xDLE1BQUFBLEtBQUssRUFBQyxlQUFTM0MsQ0FBVCxFQUFXO0FBQUMsYUFBSSxJQUFJQyxDQUFDLEdBQUNELENBQUMsQ0FBQzZCLE1BQVIsRUFBZXRCLENBQUMsR0FBQyxFQUFqQixFQUFvQkksQ0FBQyxHQUFDLENBQTFCLEVBQTRCQSxDQUFDLEdBQUNWLENBQTlCLEVBQWdDVSxDQUFDLElBQUUsQ0FBbkM7QUFBcUNKLFVBQUFBLENBQUMsQ0FBQ0ksQ0FBQyxLQUFHLENBQUwsQ0FBRCxJQUFVaUMsUUFBUSxDQUFDNUMsQ0FBQyxDQUFDNkMsTUFBRixDQUFTbEMsQ0FBVCxFQUFXLENBQVgsQ0FBRCxFQUFlLEVBQWYsQ0FBUixJQUE0QixLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQTdDO0FBQXJDOztBQUFvRixlQUFPLElBQUljLENBQUMsQ0FBQ04sSUFBTixDQUFXWixDQUFYLEVBQWFOLENBQUMsR0FBQyxDQUFmLENBQVA7QUFBeUI7QUFBalQsS0FBempEO0FBQUEsUUFBNDJENkMsQ0FBQyxHQUFDUixDQUFDLENBQUNTLE1BQUYsR0FBUztBQUFDaEIsTUFBQUEsU0FBUyxFQUFDLG1CQUFTL0IsQ0FBVCxFQUFXO0FBQUMsYUFBSSxJQUFJQyxDQUFDLEdBQUNELENBQUMsQ0FBQzJCLEtBQVIsRUFBY3BCLENBQUMsR0FBQ1AsQ0FBQyxDQUFDNEIsUUFBbEIsRUFBMkJqQixDQUFDLEdBQUMsRUFBN0IsRUFBZ0NDLENBQUMsR0FBQyxDQUF0QyxFQUF3Q0EsQ0FBQyxHQUFDTCxDQUExQyxFQUE0Q0ssQ0FBQyxFQUE3QyxFQUFnRDtBQUFDLGNBQUlFLENBQUMsR0FBQ2IsQ0FBQyxDQUFDVyxDQUFDLEtBQUcsQ0FBTCxDQUFELEtBQVcsS0FBR0EsQ0FBQyxHQUFDLENBQUYsR0FBSSxDQUFsQixHQUFvQixHQUExQjtBQUE4QkQsVUFBQUEsQ0FBQyxDQUFDNEIsSUFBRixDQUFPUyxNQUFNLENBQUNDLFlBQVAsQ0FBb0JuQyxDQUFwQixDQUFQO0FBQStCOztBQUFBLGVBQU9ILENBQUMsQ0FBQytCLElBQUYsQ0FBTyxFQUFQLENBQVA7QUFBa0IsT0FBdko7QUFBd0pDLE1BQUFBLEtBQUssRUFBQyxlQUFTM0MsQ0FBVCxFQUFXO0FBQUMsYUFBSSxJQUFJQyxDQUFDLEdBQUNELENBQUMsQ0FBQzZCLE1BQVIsRUFBZXRCLENBQUMsR0FBQyxFQUFqQixFQUFvQkksQ0FBQyxHQUFDLENBQTFCLEVBQTRCQSxDQUFDLEdBQUNWLENBQTlCLEVBQWdDVSxDQUFDLEVBQWpDO0FBQW9DSixVQUFBQSxDQUFDLENBQUNJLENBQUMsS0FBRyxDQUFMLENBQUQsSUFBVSxDQUFDLE1BQUlYLENBQUMsQ0FBQ2tELFVBQUYsQ0FBYXZDLENBQWIsQ0FBTCxLQUF1QixLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQXhDO0FBQXBDOztBQUE4RSxlQUFPLElBQUljLENBQUMsQ0FBQ04sSUFBTixDQUFXWixDQUFYLEVBQWFOLENBQWIsQ0FBUDtBQUF1QjtBQUEvUSxLQUF2M0Q7QUFBQSxRQUF3b0VrRCxDQUFDLEdBQUNiLENBQUMsQ0FBQ2MsSUFBRixHQUFPO0FBQUNyQixNQUFBQSxTQUFTLEVBQUMsbUJBQVMvQixDQUFULEVBQVc7QUFBQyxZQUFHO0FBQUMsaUJBQU9xRCxrQkFBa0IsQ0FBQ0MsTUFBTSxDQUFDUixDQUFDLENBQUNmLFNBQUYsQ0FBWS9CLENBQVosQ0FBRCxDQUFQLENBQXpCO0FBQWtELFNBQXRELENBQXNELE9BQU1BLENBQU4sRUFBUTtBQUFDLGdCQUFNLElBQUl1RCxLQUFKLENBQVUsc0JBQVYsQ0FBTjtBQUF3QztBQUFDLE9BQS9IO0FBQWdJWixNQUFBQSxLQUFLLEVBQUMsZUFBUzNDLENBQVQsRUFBVztBQUFDLGVBQU84QyxDQUFDLENBQUNILEtBQUYsQ0FBUWEsUUFBUSxDQUFDQyxrQkFBa0IsQ0FBQ3pELENBQUQsQ0FBbkIsQ0FBaEIsQ0FBUDtBQUFnRDtBQUFsTSxLQUFqcEU7QUFBQSxRQUFxMUUwRCxDQUFDLEdBQUM5QyxDQUFDLENBQUMrQyxzQkFBRixHQUF5QjdDLENBQUMsQ0FBQ0UsTUFBRixDQUFTO0FBQUM0QyxNQUFBQSxLQUFLLEVBQUMsaUJBQVU7QUFBQyxhQUFLQyxLQUFMLEdBQVcsSUFBSXBDLENBQUMsQ0FBQ04sSUFBTixFQUFYLEVBQXNCLEtBQUsyQyxXQUFMLEdBQWlCLENBQXZDO0FBQXlDLE9BQTNEO0FBQTREQyxNQUFBQSxPQUFPLEVBQUMsaUJBQVMvRCxDQUFULEVBQVc7QUFBQyxvQkFBVSxPQUFPQSxDQUFqQixLQUFxQkEsQ0FBQyxHQUFDbUQsQ0FBQyxDQUFDUixLQUFGLENBQVEzQyxDQUFSLENBQXZCLEdBQW1DLEtBQUs2RCxLQUFMLENBQVc3QixNQUFYLENBQWtCaEMsQ0FBbEIsQ0FBbkMsRUFBd0QsS0FBSzhELFdBQUwsSUFBa0I5RCxDQUFDLENBQUM0QixRQUE1RTtBQUFxRixPQUFySztBQUFzS29DLE1BQUFBLFFBQVEsRUFBQyxrQkFBUy9ELENBQVQsRUFBVztBQUFDLFlBQUlNLENBQUMsR0FBQyxLQUFLc0QsS0FBWDtBQUFBLFlBQWlCbEQsQ0FBQyxHQUFDSixDQUFDLENBQUNvQixLQUFyQjtBQUFBLFlBQTJCZixDQUFDLEdBQUNMLENBQUMsQ0FBQ3FCLFFBQS9CO0FBQUEsWUFBd0NkLENBQUMsR0FBQyxLQUFLbUQsU0FBL0M7QUFBQSxZQUF5RDNCLENBQUMsR0FBQyxJQUFFeEIsQ0FBN0Q7QUFBQSxZQUErRGdCLENBQUMsR0FBQ2xCLENBQUMsR0FBQzBCLENBQW5FO0FBQXFFUixRQUFBQSxDQUFDLEdBQUM3QixDQUFDLEdBQUNELENBQUMsQ0FBQ2tDLElBQUYsQ0FBT0osQ0FBUCxDQUFELEdBQVc5QixDQUFDLENBQUNrRSxHQUFGLENBQU0sQ0FBQyxJQUFFcEMsQ0FBSCxJQUFNLEtBQUtxQyxjQUFqQixFQUFnQyxDQUFoQyxDQUFkO0FBQWlELFlBQUlyQixDQUFDLEdBQUNoQixDQUFDLEdBQUNoQixDQUFSO0FBQUEsWUFBVXFDLENBQUMsR0FBQ25ELENBQUMsQ0FBQ29FLEdBQUYsQ0FBTSxJQUFFdEIsQ0FBUixFQUFVbEMsQ0FBVixDQUFaOztBQUF5QixZQUFHa0MsQ0FBSCxFQUFLO0FBQUMsZUFBSSxJQUFJWSxDQUFDLEdBQUMsQ0FBVixFQUFZQSxDQUFDLEdBQUNaLENBQWQsRUFBZ0JZLENBQUMsSUFBRTVDLENBQW5CO0FBQXFCLGlCQUFLdUQsZUFBTCxDQUFxQjFELENBQXJCLEVBQXVCK0MsQ0FBdkI7QUFBckI7O0FBQStDLGNBQUlZLENBQUMsR0FBQzNELENBQUMsQ0FBQzRELE1BQUYsQ0FBUyxDQUFULEVBQVd6QixDQUFYLENBQU47QUFBb0J2QyxVQUFBQSxDQUFDLENBQUNxQixRQUFGLElBQVl1QixDQUFaO0FBQWM7O0FBQUEsZUFBTyxJQUFJMUIsQ0FBQyxDQUFDTixJQUFOLENBQVdtRCxDQUFYLEVBQWFuQixDQUFiLENBQVA7QUFBdUIsT0FBeGI7QUFBeWIzQixNQUFBQSxLQUFLLEVBQUMsaUJBQVU7QUFBQyxZQUFJeEIsQ0FBQyxHQUFDYyxDQUFDLENBQUNVLEtBQUYsQ0FBUVcsSUFBUixDQUFhLElBQWIsQ0FBTjtBQUF5QixlQUFPbkMsQ0FBQyxDQUFDNkQsS0FBRixHQUFRLEtBQUtBLEtBQUwsQ0FBV3JDLEtBQVgsRUFBUixFQUEyQnhCLENBQWxDO0FBQW9DLE9BQXZnQjtBQUF3Z0JtRSxNQUFBQSxjQUFjLEVBQUM7QUFBdmhCLEtBQVQsQ0FBaDNFO0FBQUEsUUFBbzVGRyxDQUFDLElBQUUxRCxDQUFDLENBQUM0RCxNQUFGLEdBQVNkLENBQUMsQ0FBQzFDLE1BQUYsQ0FBUztBQUFDeUQsTUFBQUEsR0FBRyxFQUFDM0QsQ0FBQyxDQUFDRSxNQUFGLEVBQUw7QUFBZ0JHLE1BQUFBLElBQUksRUFBQyxjQUFTbkIsQ0FBVCxFQUFXO0FBQUMsYUFBS3lFLEdBQUwsR0FBUyxLQUFLQSxHQUFMLENBQVN6RCxNQUFULENBQWdCaEIsQ0FBaEIsQ0FBVCxFQUE0QixLQUFLNEQsS0FBTCxFQUE1QjtBQUF5QyxPQUExRTtBQUEyRUEsTUFBQUEsS0FBSyxFQUFDLGlCQUFVO0FBQUNGLFFBQUFBLENBQUMsQ0FBQ0UsS0FBRixDQUFRekIsSUFBUixDQUFhLElBQWIsR0FBbUIsS0FBS3VDLFFBQUwsRUFBbkI7QUFBbUMsT0FBL0g7QUFBZ0lDLE1BQUFBLE1BQU0sRUFBQyxnQkFBUzNFLENBQVQsRUFBVztBQUFDLGVBQU8sS0FBSytELE9BQUwsQ0FBYS9ELENBQWIsR0FBZ0IsS0FBS2dFLFFBQUwsRUFBaEIsRUFBZ0MsSUFBdkM7QUFBNEMsT0FBL0w7QUFBZ01ZLE1BQUFBLFFBQVEsRUFBQyxrQkFBUzVFLENBQVQsRUFBVztBQUFDQSxRQUFBQSxDQUFDLElBQUUsS0FBSytELE9BQUwsQ0FBYS9ELENBQWIsQ0FBSDs7QUFBbUIsWUFBSUMsQ0FBQyxHQUFDLEtBQUs0RSxXQUFMLEVBQU47O0FBQXlCLGVBQU81RSxDQUFQO0FBQVMsT0FBMVE7QUFBMlFnRSxNQUFBQSxTQUFTLEVBQUMsRUFBclI7QUFBd1JhLE1BQUFBLGFBQWEsRUFBQyx1QkFBUzlFLENBQVQsRUFBVztBQUFDLGVBQU8sVUFBU0MsQ0FBVCxFQUFXTSxDQUFYLEVBQWE7QUFBQyxpQkFBTyxJQUFJUCxDQUFDLENBQUNtQixJQUFOLENBQVdaLENBQVgsRUFBY3FFLFFBQWQsQ0FBdUIzRSxDQUF2QixDQUFQO0FBQWlDLFNBQXREO0FBQXVELE9BQXpXO0FBQTBXOEUsTUFBQUEsaUJBQWlCLEVBQUMsMkJBQVMvRSxDQUFULEVBQVc7QUFBQyxlQUFPLFVBQVNDLENBQVQsRUFBV00sQ0FBWCxFQUFhO0FBQUMsaUJBQU8sSUFBSStELENBQUMsQ0FBQ1UsSUFBRixDQUFPN0QsSUFBWCxDQUFnQm5CLENBQWhCLEVBQWtCTyxDQUFsQixFQUFxQnFFLFFBQXJCLENBQThCM0UsQ0FBOUIsQ0FBUDtBQUF3QyxTQUE3RDtBQUE4RDtBQUF0YyxLQUFULENBQVQsRUFBMmRVLENBQUMsQ0FBQ3NFLElBQUYsR0FBTyxFQUFwZSxDQUFyNUY7O0FBQTYzRyxXQUFPdEUsQ0FBUDtBQUFTLEdBQXA1RyxDQUFxNUd1RSxJQUFyNUcsQ0FBVDs7QUFBbzZHLFNBQU8sWUFBVTtBQUFDLGFBQVNqRixDQUFULENBQVdELENBQVgsRUFBYUMsQ0FBYixFQUFlTSxDQUFmLEVBQWlCO0FBQUMsV0FBSSxJQUFJSSxDQUFDLEdBQUMsRUFBTixFQUFTRyxDQUFDLEdBQUMsQ0FBWCxFQUFhVyxDQUFDLEdBQUMsQ0FBbkIsRUFBcUJBLENBQUMsR0FBQ3hCLENBQXZCLEVBQXlCd0IsQ0FBQyxFQUExQjtBQUE2QixZQUFHQSxDQUFDLEdBQUMsQ0FBTCxFQUFPO0FBQUMsY0FBSWEsQ0FBQyxHQUFDL0IsQ0FBQyxDQUFDUCxDQUFDLENBQUNrRCxVQUFGLENBQWF6QixDQUFDLEdBQUMsQ0FBZixDQUFELENBQUQsSUFBc0JBLENBQUMsR0FBQyxDQUFGLEdBQUksQ0FBaEM7QUFBQSxjQUFrQ0ssQ0FBQyxHQUFDdkIsQ0FBQyxDQUFDUCxDQUFDLENBQUNrRCxVQUFGLENBQWF6QixDQUFiLENBQUQsQ0FBRCxLQUFxQixJQUFFQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQS9EO0FBQWlFZCxVQUFBQSxDQUFDLENBQUNHLENBQUMsS0FBRyxDQUFMLENBQUQsSUFBVSxDQUFDd0IsQ0FBQyxHQUFDUixDQUFILEtBQU8sS0FBR2hCLENBQUMsR0FBQyxDQUFGLEdBQUksQ0FBeEIsRUFBMEJBLENBQUMsRUFBM0I7QUFBOEI7QUFBcEk7O0FBQW9JLGFBQU9GLENBQUMsQ0FBQ0gsTUFBRixDQUFTRSxDQUFULEVBQVdHLENBQVgsQ0FBUDtBQUFxQjs7QUFBQSxRQUFJUCxDQUFDLEdBQUNQLENBQU47QUFBQSxRQUFRVyxDQUFDLEdBQUNKLENBQUMsQ0FBQ00sR0FBWjtBQUFBLFFBQWdCRCxDQUFDLEdBQUNELENBQUMsQ0FBQ2UsU0FBcEI7QUFBQSxRQUE4QlosQ0FBQyxHQUFDUCxDQUFDLENBQUNpQyxHQUFsQztBQUFzQzFCLElBQUFBLENBQUMsQ0FBQ3FFLE1BQUYsR0FBUztBQUFDcEQsTUFBQUEsU0FBUyxFQUFDLG1CQUFTL0IsQ0FBVCxFQUFXO0FBQUMsWUFBSUMsQ0FBQyxHQUFDRCxDQUFDLENBQUMyQixLQUFSO0FBQUEsWUFBY3BCLENBQUMsR0FBQ1AsQ0FBQyxDQUFDNEIsUUFBbEI7QUFBQSxZQUEyQmpCLENBQUMsR0FBQyxLQUFLeUUsSUFBbEM7QUFBdUNwRixRQUFBQSxDQUFDLENBQUNpQyxLQUFGOztBQUFVLGFBQUksSUFBSXJCLENBQUMsR0FBQyxFQUFOLEVBQVNFLENBQUMsR0FBQyxDQUFmLEVBQWlCQSxDQUFDLEdBQUNQLENBQW5CLEVBQXFCTyxDQUFDLElBQUUsQ0FBeEI7QUFBMEIsZUFBSSxJQUFJVyxDQUFDLEdBQUN4QixDQUFDLENBQUNhLENBQUMsS0FBRyxDQUFMLENBQUQsS0FBVyxLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQWxCLEdBQW9CLEdBQTFCLEVBQThCd0IsQ0FBQyxHQUFDckMsQ0FBQyxDQUFDYSxDQUFDLEdBQUMsQ0FBRixLQUFNLENBQVAsQ0FBRCxLQUFhLEtBQUcsQ0FBQ0EsQ0FBQyxHQUFDLENBQUgsSUFBTSxDQUFOLEdBQVEsQ0FBeEIsR0FBMEIsR0FBMUQsRUFBOERnQixDQUFDLEdBQUM3QixDQUFDLENBQUNhLENBQUMsR0FBQyxDQUFGLEtBQU0sQ0FBUCxDQUFELEtBQWEsS0FBRyxDQUFDQSxDQUFDLEdBQUMsQ0FBSCxJQUFNLENBQU4sR0FBUSxDQUF4QixHQUEwQixHQUExRixFQUE4RmdDLENBQUMsR0FBQ3JCLENBQUMsSUFBRSxFQUFILEdBQU1hLENBQUMsSUFBRSxDQUFULEdBQVdSLENBQTNHLEVBQTZHcUIsQ0FBQyxHQUFDLENBQW5ILEVBQXFIQSxDQUFDLEdBQUMsQ0FBRixJQUFLckMsQ0FBQyxHQUFDLE1BQUlxQyxDQUFOLEdBQVE1QyxDQUFsSSxFQUFvSTRDLENBQUMsRUFBckk7QUFBd0l2QyxZQUFBQSxDQUFDLENBQUMyQixJQUFGLENBQU81QixDQUFDLENBQUMwRSxNQUFGLENBQVN2QyxDQUFDLEtBQUcsS0FBRyxJQUFFSyxDQUFMLENBQUosR0FBWSxFQUFyQixDQUFQO0FBQXhJO0FBQTFCOztBQUFtTSxZQUFJTyxDQUFDLEdBQUMvQyxDQUFDLENBQUMwRSxNQUFGLENBQVMsRUFBVCxDQUFOO0FBQW1CLFlBQUczQixDQUFILEVBQUssT0FBSzlDLENBQUMsQ0FBQ2lCLE1BQUYsR0FBUyxDQUFkO0FBQWlCakIsVUFBQUEsQ0FBQyxDQUFDMkIsSUFBRixDQUFPbUIsQ0FBUDtBQUFqQjtBQUEyQixlQUFPOUMsQ0FBQyxDQUFDOEIsSUFBRixDQUFPLEVBQVAsQ0FBUDtBQUFrQixPQUFoVjtBQUFpVkMsTUFBQUEsS0FBSyxFQUFDLGVBQVMzQyxDQUFULEVBQVc7QUFBQyxZQUFJTyxDQUFDLEdBQUNQLENBQUMsQ0FBQzZCLE1BQVI7QUFBQSxZQUFlbEIsQ0FBQyxHQUFDLEtBQUt5RSxJQUF0QjtBQUFBLFlBQTJCeEUsQ0FBQyxHQUFDLEtBQUswRSxXQUFsQzs7QUFBOEMsWUFBRyxDQUFDMUUsQ0FBSixFQUFNO0FBQUNBLFVBQUFBLENBQUMsR0FBQyxLQUFLMEUsV0FBTCxHQUFpQixFQUFuQjs7QUFBc0IsZUFBSSxJQUFJeEUsQ0FBQyxHQUFDLENBQVYsRUFBWUEsQ0FBQyxHQUFDSCxDQUFDLENBQUNrQixNQUFoQixFQUF1QmYsQ0FBQyxFQUF4QjtBQUEyQkYsWUFBQUEsQ0FBQyxDQUFDRCxDQUFDLENBQUN1QyxVQUFGLENBQWFwQyxDQUFiLENBQUQsQ0FBRCxHQUFtQkEsQ0FBbkI7QUFBM0I7QUFBZ0Q7O0FBQUEsWUFBSVcsQ0FBQyxHQUFDZCxDQUFDLENBQUMwRSxNQUFGLENBQVMsRUFBVCxDQUFOOztBQUFtQixZQUFHNUQsQ0FBSCxFQUFLO0FBQUMsY0FBSWEsQ0FBQyxHQUFDdEMsQ0FBQyxDQUFDdUYsT0FBRixDQUFVOUQsQ0FBVixDQUFOO0FBQW1CYSxVQUFBQSxDQUFDLEtBQUcsQ0FBQyxDQUFMLEtBQVMvQixDQUFDLEdBQUMrQixDQUFYO0FBQWM7O0FBQUEsZUFBT3JDLENBQUMsQ0FBQ0QsQ0FBRCxFQUFHTyxDQUFILEVBQUtLLENBQUwsQ0FBUjtBQUFnQixPQUF4aUI7QUFBeWlCd0UsTUFBQUEsSUFBSSxFQUFDO0FBQTlpQixLQUFUO0FBQTRuQixHQUF4MUIsSUFBMjFCLFVBQVNuRixDQUFULEVBQVc7QUFBQyxhQUFTTSxDQUFULENBQVdQLENBQVgsRUFBYUMsQ0FBYixFQUFlTSxDQUFmLEVBQWlCSSxDQUFqQixFQUFtQkMsQ0FBbkIsRUFBcUJFLENBQXJCLEVBQXVCVyxDQUF2QixFQUF5QjtBQUFDLFVBQUlhLENBQUMsR0FBQ3RDLENBQUMsSUFBRUMsQ0FBQyxHQUFDTSxDQUFGLEdBQUksQ0FBQ04sQ0FBRCxHQUFHVSxDQUFULENBQUQsR0FBYUMsQ0FBYixHQUFlYSxDQUFyQjtBQUF1QixhQUFNLENBQUNhLENBQUMsSUFBRXhCLENBQUgsR0FBS3dCLENBQUMsS0FBRyxLQUFHeEIsQ0FBYixJQUFnQmIsQ0FBdEI7QUFBd0I7O0FBQUEsYUFBU1UsQ0FBVCxDQUFXWCxDQUFYLEVBQWFDLENBQWIsRUFBZU0sQ0FBZixFQUFpQkksQ0FBakIsRUFBbUJDLENBQW5CLEVBQXFCRSxDQUFyQixFQUF1QlcsQ0FBdkIsRUFBeUI7QUFBQyxVQUFJYSxDQUFDLEdBQUN0QyxDQUFDLElBQUVDLENBQUMsR0FBQ1UsQ0FBRixHQUFJSixDQUFDLEdBQUMsQ0FBQ0ksQ0FBVCxDQUFELEdBQWFDLENBQWIsR0FBZWEsQ0FBckI7QUFBdUIsYUFBTSxDQUFDYSxDQUFDLElBQUV4QixDQUFILEdBQUt3QixDQUFDLEtBQUcsS0FBR3hCLENBQWIsSUFBZ0JiLENBQXRCO0FBQXdCOztBQUFBLGFBQVNXLENBQVQsQ0FBV1osQ0FBWCxFQUFhQyxDQUFiLEVBQWVNLENBQWYsRUFBaUJJLENBQWpCLEVBQW1CQyxDQUFuQixFQUFxQkUsQ0FBckIsRUFBdUJXLENBQXZCLEVBQXlCO0FBQUMsVUFBSWEsQ0FBQyxHQUFDdEMsQ0FBQyxJQUFFQyxDQUFDLEdBQUNNLENBQUYsR0FBSUksQ0FBTixDQUFELEdBQVVDLENBQVYsR0FBWWEsQ0FBbEI7QUFBb0IsYUFBTSxDQUFDYSxDQUFDLElBQUV4QixDQUFILEdBQUt3QixDQUFDLEtBQUcsS0FBR3hCLENBQWIsSUFBZ0JiLENBQXRCO0FBQXdCOztBQUFBLGFBQVNhLENBQVQsQ0FBV2QsQ0FBWCxFQUFhQyxDQUFiLEVBQWVNLENBQWYsRUFBaUJJLENBQWpCLEVBQW1CQyxDQUFuQixFQUFxQkUsQ0FBckIsRUFBdUJXLENBQXZCLEVBQXlCO0FBQUMsVUFBSWEsQ0FBQyxHQUFDdEMsQ0FBQyxJQUFFTyxDQUFDLElBQUVOLENBQUMsR0FBQyxDQUFDVSxDQUFMLENBQUgsQ0FBRCxHQUFhQyxDQUFiLEdBQWVhLENBQXJCO0FBQXVCLGFBQU0sQ0FBQ2EsQ0FBQyxJQUFFeEIsQ0FBSCxHQUFLd0IsQ0FBQyxLQUFHLEtBQUd4QixDQUFiLElBQWdCYixDQUF0QjtBQUF3Qjs7QUFBQSxRQUFJd0IsQ0FBQyxHQUFDekIsQ0FBTjtBQUFBLFFBQVFzQyxDQUFDLEdBQUNiLENBQUMsQ0FBQ1osR0FBWjtBQUFBLFFBQWdCaUIsQ0FBQyxHQUFDUSxDQUFDLENBQUNaLFNBQXBCO0FBQUEsUUFBOEJvQixDQUFDLEdBQUNSLENBQUMsQ0FBQ2tDLE1BQWxDO0FBQUEsUUFBeUNyQixDQUFDLEdBQUMxQixDQUFDLENBQUN3RCxJQUE3QztBQUFBLFFBQWtEdkIsQ0FBQyxHQUFDLEVBQXBEO0FBQXVELEtBQUMsWUFBVTtBQUFDLFdBQUksSUFBSTFELENBQUMsR0FBQyxDQUFWLEVBQVlBLENBQUMsR0FBQyxFQUFkLEVBQWlCQSxDQUFDLEVBQWxCO0FBQXFCMEQsUUFBQUEsQ0FBQyxDQUFDMUQsQ0FBRCxDQUFELEdBQUssYUFBV0MsQ0FBQyxDQUFDdUYsR0FBRixDQUFNdkYsQ0FBQyxDQUFDd0YsR0FBRixDQUFNekYsQ0FBQyxHQUFDLENBQVIsQ0FBTixDQUFYLEdBQTZCLENBQWxDO0FBQXJCO0FBQXlELEtBQXBFLEVBQUQ7QUFBd0UsUUFBSXNFLENBQUMsR0FBQ25CLENBQUMsQ0FBQ3VDLEdBQUYsR0FBTTVDLENBQUMsQ0FBQzlCLE1BQUYsQ0FBUztBQUFDMEQsTUFBQUEsUUFBUSxFQUFDLG9CQUFVO0FBQUMsYUFBS2lCLEtBQUwsR0FBVyxJQUFJN0QsQ0FBQyxDQUFDWCxJQUFOLENBQVcsQ0FBQyxVQUFELEVBQVksVUFBWixFQUF1QixVQUF2QixFQUFrQyxTQUFsQyxDQUFYLENBQVg7QUFBb0UsT0FBekY7QUFBMEZrRCxNQUFBQSxlQUFlLEVBQUMseUJBQVNyRSxDQUFULEVBQVdDLENBQVgsRUFBYTtBQUFDLGFBQUksSUFBSXdCLENBQUMsR0FBQyxDQUFWLEVBQVlBLENBQUMsR0FBQyxFQUFkLEVBQWlCQSxDQUFDLEVBQWxCLEVBQXFCO0FBQUMsY0FBSWEsQ0FBQyxHQUFDckMsQ0FBQyxHQUFDd0IsQ0FBUjtBQUFBLGNBQVVLLENBQUMsR0FBQzlCLENBQUMsQ0FBQ3NDLENBQUQsQ0FBYjtBQUFpQnRDLFVBQUFBLENBQUMsQ0FBQ3NDLENBQUQsQ0FBRCxHQUFLLFlBQVVSLENBQUMsSUFBRSxDQUFILEdBQUtBLENBQUMsS0FBRyxFQUFuQixJQUF1QixjQUFZQSxDQUFDLElBQUUsRUFBSCxHQUFNQSxDQUFDLEtBQUcsQ0FBdEIsQ0FBNUI7QUFBcUQ7O0FBQUEsWUFBSWdCLENBQUMsR0FBQyxLQUFLNkMsS0FBTCxDQUFXaEUsS0FBakI7QUFBQSxZQUF1QndCLENBQUMsR0FBQ25ELENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBMUI7QUFBQSxZQUFnQ3FFLENBQUMsR0FBQ3RFLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBbkM7QUFBQSxZQUF5QzJGLENBQUMsR0FBQzVGLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBNUM7QUFBQSxZQUFrRDRGLENBQUMsR0FBQzdGLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBckQ7QUFBQSxZQUEyRDZGLENBQUMsR0FBQzlGLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBOUQ7QUFBQSxZQUFvRThGLENBQUMsR0FBQy9GLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBdkU7QUFBQSxZQUE2RStGLENBQUMsR0FBQ2hHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBaEY7QUFBQSxZQUFzRmdHLENBQUMsR0FBQ2pHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBekY7QUFBQSxZQUErRmlHLENBQUMsR0FBQ2xHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBbEc7QUFBQSxZQUF3R2tHLENBQUMsR0FBQ25HLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLENBQUgsQ0FBM0c7QUFBQSxZQUFpSG1HLENBQUMsR0FBQ3BHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBcEg7QUFBQSxZQUEySG9HLENBQUMsR0FBQ3JHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBOUg7QUFBQSxZQUFxSXFHLENBQUMsR0FBQ3RHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBeEk7QUFBQSxZQUErSXNHLENBQUMsR0FBQ3ZHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBbEo7QUFBQSxZQUF5SnVHLENBQUMsR0FBQ3hHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBNUo7QUFBQSxZQUFtS3dHLENBQUMsR0FBQ3pHLENBQUMsQ0FBQ0MsQ0FBQyxHQUFDLEVBQUgsQ0FBdEs7QUFBQSxZQUE2S3lHLENBQUMsR0FBQzVELENBQUMsQ0FBQyxDQUFELENBQWhMO0FBQUEsWUFBb0w2RCxDQUFDLEdBQUM3RCxDQUFDLENBQUMsQ0FBRCxDQUF2TDtBQUFBLFlBQTJMOEQsQ0FBQyxHQUFDOUQsQ0FBQyxDQUFDLENBQUQsQ0FBOUw7QUFBQSxZQUFrTStELENBQUMsR0FBQy9ELENBQUMsQ0FBQyxDQUFELENBQXJNO0FBQXlNNEQsUUFBQUEsQ0FBQyxHQUFDbkcsQ0FBQyxDQUFDbUcsQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTMUQsQ0FBVCxFQUFXLENBQVgsRUFBYU8sQ0FBQyxDQUFDLENBQUQsQ0FBZCxDQUFILEVBQXNCbUQsQ0FBQyxHQUFDdEcsQ0FBQyxDQUFDc0csQ0FBRCxFQUFHSCxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTdEMsQ0FBVCxFQUFXLEVBQVgsRUFBY1osQ0FBQyxDQUFDLENBQUQsQ0FBZixDQUF6QixFQUE2Q2tELENBQUMsR0FBQ3JHLENBQUMsQ0FBQ3FHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU2YsQ0FBVCxFQUFXLEVBQVgsRUFBY2xDLENBQUMsQ0FBQyxDQUFELENBQWYsQ0FBaEQsRUFBb0VpRCxDQUFDLEdBQUNwRyxDQUFDLENBQUNvRyxDQUFELEVBQUdDLENBQUgsRUFBS0MsQ0FBTCxFQUFPSCxDQUFQLEVBQVNiLENBQVQsRUFBVyxFQUFYLEVBQWNuQyxDQUFDLENBQUMsQ0FBRCxDQUFmLENBQXZFLEVBQTJGZ0QsQ0FBQyxHQUFDbkcsQ0FBQyxDQUFDbUcsQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTZixDQUFULEVBQVcsQ0FBWCxFQUFhcEMsQ0FBQyxDQUFDLENBQUQsQ0FBZCxDQUE5RixFQUFpSG1ELENBQUMsR0FBQ3RHLENBQUMsQ0FBQ3NHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2IsQ0FBVCxFQUFXLEVBQVgsRUFBY3JDLENBQUMsQ0FBQyxDQUFELENBQWYsQ0FBcEgsRUFBd0lrRCxDQUFDLEdBQUNyRyxDQUFDLENBQUNxRyxDQUFELEVBQUdDLENBQUgsRUFBS0gsQ0FBTCxFQUFPQyxDQUFQLEVBQVNYLENBQVQsRUFBVyxFQUFYLEVBQWN0QyxDQUFDLENBQUMsQ0FBRCxDQUFmLENBQTNJLEVBQStKaUQsQ0FBQyxHQUFDcEcsQ0FBQyxDQUFDb0csQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0gsQ0FBUCxFQUFTVCxDQUFULEVBQVcsRUFBWCxFQUFjdkMsQ0FBQyxDQUFDLENBQUQsQ0FBZixDQUFsSyxFQUFzTGdELENBQUMsR0FBQ25HLENBQUMsQ0FBQ21HLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1gsQ0FBVCxFQUFXLENBQVgsRUFBYXhDLENBQUMsQ0FBQyxDQUFELENBQWQsQ0FBekwsRUFBNE1tRCxDQUFDLEdBQUN0RyxDQUFDLENBQUNzRyxDQUFELEVBQUdILENBQUgsRUFBS0MsQ0FBTCxFQUFPQyxDQUFQLEVBQVNULENBQVQsRUFBVyxFQUFYLEVBQWN6QyxDQUFDLENBQUMsQ0FBRCxDQUFmLENBQS9NLEVBQW1Pa0QsQ0FBQyxHQUFDckcsQ0FBQyxDQUFDcUcsQ0FBRCxFQUFHQyxDQUFILEVBQUtILENBQUwsRUFBT0MsQ0FBUCxFQUFTUCxDQUFULEVBQVcsRUFBWCxFQUFjMUMsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUF0TyxFQUEyUGlELENBQUMsR0FBQ3BHLENBQUMsQ0FBQ29HLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU0wsQ0FBVCxFQUFXLEVBQVgsRUFBYzNDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBOVAsRUFBbVJnRCxDQUFDLEdBQUNuRyxDQUFDLENBQUNtRyxDQUFELEVBQUdDLENBQUgsRUFBS0MsQ0FBTCxFQUFPQyxDQUFQLEVBQVNQLENBQVQsRUFBVyxDQUFYLEVBQWE1QyxDQUFDLENBQUMsRUFBRCxDQUFkLENBQXRSLEVBQTBTbUQsQ0FBQyxHQUFDdEcsQ0FBQyxDQUFDc0csQ0FBRCxFQUFHSCxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTTCxDQUFULEVBQVcsRUFBWCxFQUFjN0MsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUE3UyxFQUFrVWtELENBQUMsR0FBQ3JHLENBQUMsQ0FBQ3FHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU0gsQ0FBVCxFQUFXLEVBQVgsRUFBYzlDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBclUsRUFBMFZpRCxDQUFDLEdBQUNwRyxDQUFDLENBQUNvRyxDQUFELEVBQUdDLENBQUgsRUFBS0MsQ0FBTCxFQUFPSCxDQUFQLEVBQVNELENBQVQsRUFBVyxFQUFYLEVBQWMvQyxDQUFDLENBQUMsRUFBRCxDQUFmLENBQTdWLEVBQWtYZ0QsQ0FBQyxHQUFDL0YsQ0FBQyxDQUFDK0YsQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTdkMsQ0FBVCxFQUFXLENBQVgsRUFBYVosQ0FBQyxDQUFDLEVBQUQsQ0FBZCxDQUFyWCxFQUF5WW1ELENBQUMsR0FBQ2xHLENBQUMsQ0FBQ2tHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1osQ0FBVCxFQUFXLENBQVgsRUFBYXRDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBNVksRUFBZ2FrRCxDQUFDLEdBQUNqRyxDQUFDLENBQUNpRyxDQUFELEVBQUdDLENBQUgsRUFBS0gsQ0FBTCxFQUFPQyxDQUFQLEVBQVNOLENBQVQsRUFBVyxFQUFYLEVBQWMzQyxDQUFDLENBQUMsRUFBRCxDQUFmLENBQW5hLEVBQXdiaUQsQ0FBQyxHQUFDaEcsQ0FBQyxDQUFDZ0csQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0gsQ0FBUCxFQUFTdkQsQ0FBVCxFQUFXLEVBQVgsRUFBY08sQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUEzYixFQUFnZGdELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2QsQ0FBVCxFQUFXLENBQVgsRUFBYXJDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBbmQsRUFBdWVtRCxDQUFDLEdBQUNsRyxDQUFDLENBQUNrRyxDQUFELEVBQUdILENBQUgsRUFBS0MsQ0FBTCxFQUFPQyxDQUFQLEVBQVNSLENBQVQsRUFBVyxDQUFYLEVBQWExQyxDQUFDLENBQUMsRUFBRCxDQUFkLENBQTFlLEVBQThma0QsQ0FBQyxHQUFDakcsQ0FBQyxDQUFDaUcsQ0FBRCxFQUFHQyxDQUFILEVBQUtILENBQUwsRUFBT0MsQ0FBUCxFQUFTRixDQUFULEVBQVcsRUFBWCxFQUFjL0MsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUFqZ0IsRUFBc2hCaUQsQ0FBQyxHQUFDaEcsQ0FBQyxDQUFDZ0csQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0gsQ0FBUCxFQUFTWixDQUFULEVBQVcsRUFBWCxFQUFjcEMsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUF6aEIsRUFBOGlCZ0QsQ0FBQyxHQUFDL0YsQ0FBQyxDQUFDK0YsQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTVixDQUFULEVBQVcsQ0FBWCxFQUFhekMsQ0FBQyxDQUFDLEVBQUQsQ0FBZCxDQUFqakIsRUFBcWtCbUQsQ0FBQyxHQUFDbEcsQ0FBQyxDQUFDa0csQ0FBRCxFQUFHSCxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTSixDQUFULEVBQVcsQ0FBWCxFQUFhOUMsQ0FBQyxDQUFDLEVBQUQsQ0FBZCxDQUF4a0IsRUFBNGxCa0QsQ0FBQyxHQUFDakcsQ0FBQyxDQUFDaUcsQ0FBRCxFQUFHQyxDQUFILEVBQUtILENBQUwsRUFBT0MsQ0FBUCxFQUFTZCxDQUFULEVBQVcsRUFBWCxFQUFjbkMsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUEvbEIsRUFBb25CaUQsQ0FBQyxHQUFDaEcsQ0FBQyxDQUFDZ0csQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0gsQ0FBUCxFQUFTUixDQUFULEVBQVcsRUFBWCxFQUFjeEMsQ0FBQyxDQUFDLEVBQUQsQ0FBZixDQUF2bkIsRUFBNG9CZ0QsQ0FBQyxHQUFDL0YsQ0FBQyxDQUFDK0YsQ0FBRCxFQUFHQyxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTTixDQUFULEVBQVcsQ0FBWCxFQUFhN0MsQ0FBQyxDQUFDLEVBQUQsQ0FBZCxDQUEvb0IsRUFBbXFCbUQsQ0FBQyxHQUFDbEcsQ0FBQyxDQUFDa0csQ0FBRCxFQUFHSCxDQUFILEVBQUtDLENBQUwsRUFBT0MsQ0FBUCxFQUFTaEIsQ0FBVCxFQUFXLENBQVgsRUFBYWxDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBdHFCLEVBQTByQmtELENBQUMsR0FBQ2pHLENBQUMsQ0FBQ2lHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU1YsQ0FBVCxFQUFXLEVBQVgsRUFBY3ZDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBN3JCLEVBQWt0QmlELENBQUMsR0FBQ2hHLENBQUMsQ0FBQ2dHLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU0osQ0FBVCxFQUFXLEVBQVgsRUFBYzVDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBcnRCLEVBQTB1QmdELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2QsQ0FBVCxFQUFXLENBQVgsRUFBYXJDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBN3VCLEVBQWl3Qm1ELENBQUMsR0FBQ2pHLENBQUMsQ0FBQ2lHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1YsQ0FBVCxFQUFXLEVBQVgsRUFBY3hDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBcHdCLEVBQXl4QmtELENBQUMsR0FBQ2hHLENBQUMsQ0FBQ2dHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU04sQ0FBVCxFQUFXLEVBQVgsRUFBYzNDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBNXhCLEVBQWl6QmlELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU0YsQ0FBVCxFQUFXLEVBQVgsRUFBYzlDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBcHpCLEVBQXkwQmdELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU3ZDLENBQVQsRUFBVyxDQUFYLEVBQWFaLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBNTBCLEVBQWcyQm1ELENBQUMsR0FBQ2pHLENBQUMsQ0FBQ2lHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2QsQ0FBVCxFQUFXLEVBQVgsRUFBY3BDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBbjJCLEVBQXczQmtELENBQUMsR0FBQ2hHLENBQUMsQ0FBQ2dHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU1YsQ0FBVCxFQUFXLEVBQVgsRUFBY3ZDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBMzNCLEVBQWc1QmlELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU04sQ0FBVCxFQUFXLEVBQVgsRUFBYzFDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBbjVCLEVBQXc2QmdELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU04sQ0FBVCxFQUFXLENBQVgsRUFBYTdDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBMzZCLEVBQSs3Qm1ELENBQUMsR0FBQ2pHLENBQUMsQ0FBQ2lHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU3pELENBQVQsRUFBVyxFQUFYLEVBQWNPLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBbDhCLEVBQXU5QmtELENBQUMsR0FBQ2hHLENBQUMsQ0FBQ2dHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU2QsQ0FBVCxFQUFXLEVBQVgsRUFBY25DLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBMTlCLEVBQSsrQmlELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU1YsQ0FBVCxFQUFXLEVBQVgsRUFBY3RDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBbC9CLEVBQXVnQ2dELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1YsQ0FBVCxFQUFXLENBQVgsRUFBYXpDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBMWdDLEVBQThoQ21ELENBQUMsR0FBQ2pHLENBQUMsQ0FBQ2lHLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU04sQ0FBVCxFQUFXLEVBQVgsRUFBYzVDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBamlDLEVBQXNqQ2tELENBQUMsR0FBQ2hHLENBQUMsQ0FBQ2dHLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU0YsQ0FBVCxFQUFXLEVBQVgsRUFBYy9DLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBempDLEVBQThrQ2lELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU2QsQ0FBVCxFQUFXLEVBQVgsRUFBY2xDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBamxDLEVBQXNtQ2dELENBQUMsR0FBQzVGLENBQUMsQ0FBQzRGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBUzFELENBQVQsRUFBVyxDQUFYLEVBQWFPLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBem1DLEVBQTZuQ21ELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1gsQ0FBVCxFQUFXLEVBQVgsRUFBY3ZDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBaG9DLEVBQXFwQ2tELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU0gsQ0FBVCxFQUFXLEVBQVgsRUFBYzlDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBeHBDLEVBQTZxQ2lELENBQUMsR0FBQzdGLENBQUMsQ0FBQzZGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU1gsQ0FBVCxFQUFXLEVBQVgsRUFBY3JDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBaHJDLEVBQXFzQ2dELENBQUMsR0FBQzVGLENBQUMsQ0FBQzRGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1AsQ0FBVCxFQUFXLENBQVgsRUFBYTVDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBeHNDLEVBQTR0Q21ELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2YsQ0FBVCxFQUFXLEVBQVgsRUFBY25DLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBL3RDLEVBQW92Q2tELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU1AsQ0FBVCxFQUFXLEVBQVgsRUFBYzFDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBdnZDLEVBQTR3Q2lELENBQUMsR0FBQzdGLENBQUMsQ0FBQzZGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU3BDLENBQVQsRUFBVyxFQUFYLEVBQWNaLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBL3dDLEVBQW95Q2dELENBQUMsR0FBQzVGLENBQUMsQ0FBQzRGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1gsQ0FBVCxFQUFXLENBQVgsRUFBYXhDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBdnlDLEVBQTJ6Q21ELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU0gsQ0FBVCxFQUFXLEVBQVgsRUFBYy9DLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBOXpDLEVBQW0xQ2tELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU1gsQ0FBVCxFQUFXLEVBQVgsRUFBY3RDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBdDFDLEVBQTIyQ2lELENBQUMsR0FBQzdGLENBQUMsQ0FBQzZGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU0gsQ0FBVCxFQUFXLEVBQVgsRUFBYzdDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBOTJDLEVBQW00Q2dELENBQUMsR0FBQzVGLENBQUMsQ0FBQzRGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU2YsQ0FBVCxFQUFXLENBQVgsRUFBYXBDLENBQUMsQ0FBQyxFQUFELENBQWQsQ0FBdDRDLEVBQTA1Q21ELENBQUMsR0FBQy9GLENBQUMsQ0FBQytGLENBQUQsRUFBR0gsQ0FBSCxFQUFLQyxDQUFMLEVBQU9DLENBQVAsRUFBU1AsQ0FBVCxFQUFXLEVBQVgsRUFBYzNDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBNzVDLEVBQWs3Q2tELENBQUMsR0FBQzlGLENBQUMsQ0FBQzhGLENBQUQsRUFBR0MsQ0FBSCxFQUFLSCxDQUFMLEVBQU9DLENBQVAsRUFBU2YsQ0FBVCxFQUFXLEVBQVgsRUFBY2xDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBcjdDLEVBQTA4Q2lELENBQUMsR0FBQzdGLENBQUMsQ0FBQzZGLENBQUQsRUFBR0MsQ0FBSCxFQUFLQyxDQUFMLEVBQU9ILENBQVAsRUFBU1AsQ0FBVCxFQUFXLEVBQVgsRUFBY3pDLENBQUMsQ0FBQyxFQUFELENBQWYsQ0FBNzhDLEVBQWsrQ1osQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUs0RCxDQUFMLEdBQU8sQ0FBOStDLEVBQWcvQzVELENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0EsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLNkQsQ0FBTCxHQUFPLENBQTUvQyxFQUE4L0M3RCxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBSzhELENBQUwsR0FBTyxDQUExZ0QsRUFBNGdEOUQsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUsrRCxDQUFMLEdBQU8sQ0FBeGhEO0FBQTBoRCxPQUF2N0Q7QUFBdzdEaEMsTUFBQUEsV0FBVyxFQUFDLHVCQUFVO0FBQUMsWUFBSTdFLENBQUMsR0FBQyxLQUFLNkQsS0FBWDtBQUFBLFlBQWlCdEQsQ0FBQyxHQUFDUCxDQUFDLENBQUMyQixLQUFyQjtBQUFBLFlBQTJCaEIsQ0FBQyxHQUFDLElBQUUsS0FBS21ELFdBQXBDO0FBQUEsWUFBZ0RsRCxDQUFDLEdBQUMsSUFBRVosQ0FBQyxDQUFDNEIsUUFBdEQ7QUFBK0RyQixRQUFBQSxDQUFDLENBQUNLLENBQUMsS0FBRyxDQUFMLENBQUQsSUFBVSxPQUFLLEtBQUdBLENBQUMsR0FBQyxFQUFwQjtBQUF1QixZQUFJRSxDQUFDLEdBQUNiLENBQUMsQ0FBQzZHLEtBQUYsQ0FBUW5HLENBQUMsR0FBQyxVQUFWLENBQU47QUFBQSxZQUE0QmMsQ0FBQyxHQUFDZCxDQUE5QjtBQUFnQ0osUUFBQUEsQ0FBQyxDQUFDLENBQUNLLENBQUMsR0FBQyxFQUFGLEtBQU8sQ0FBUCxJQUFVLENBQVgsSUFBYyxFQUFmLENBQUQsR0FBb0IsWUFBVUUsQ0FBQyxJQUFFLENBQUgsR0FBS0EsQ0FBQyxLQUFHLEVBQW5CLElBQXVCLGNBQVlBLENBQUMsSUFBRSxFQUFILEdBQU1BLENBQUMsS0FBRyxDQUF0QixDQUEzQyxFQUFvRVAsQ0FBQyxDQUFDLENBQUNLLENBQUMsR0FBQyxFQUFGLEtBQU8sQ0FBUCxJQUFVLENBQVgsSUFBYyxFQUFmLENBQUQsR0FBb0IsWUFBVWEsQ0FBQyxJQUFFLENBQUgsR0FBS0EsQ0FBQyxLQUFHLEVBQW5CLElBQXVCLGNBQVlBLENBQUMsSUFBRSxFQUFILEdBQU1BLENBQUMsS0FBRyxDQUF0QixDQUEvRyxFQUF3SXpCLENBQUMsQ0FBQzRCLFFBQUYsR0FBVyxLQUFHckIsQ0FBQyxDQUFDc0IsTUFBRixHQUFTLENBQVosQ0FBbkosRUFBa0ssS0FBS21DLFFBQUwsRUFBbEs7O0FBQWtMLGFBQUksSUFBSTFCLENBQUMsR0FBQyxLQUFLcUQsS0FBWCxFQUFpQjdELENBQUMsR0FBQ1EsQ0FBQyxDQUFDWCxLQUFyQixFQUEyQm1CLENBQUMsR0FBQyxDQUFqQyxFQUFtQ0EsQ0FBQyxHQUFDLENBQXJDLEVBQXVDQSxDQUFDLEVBQXhDLEVBQTJDO0FBQUMsY0FBSUssQ0FBQyxHQUFDckIsQ0FBQyxDQUFDZ0IsQ0FBRCxDQUFQO0FBQVdoQixVQUFBQSxDQUFDLENBQUNnQixDQUFELENBQUQsR0FBSyxZQUFVSyxDQUFDLElBQUUsQ0FBSCxHQUFLQSxDQUFDLEtBQUcsRUFBbkIsSUFBdUIsY0FBWUEsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLENBQXRCLENBQTVCO0FBQXFEOztBQUFBLGVBQU9iLENBQVA7QUFBUyxPQUE1MkU7QUFBNjJFZCxNQUFBQSxLQUFLLEVBQUMsaUJBQVU7QUFBQyxZQUFJeEIsQ0FBQyxHQUFDOEMsQ0FBQyxDQUFDdEIsS0FBRixDQUFRVyxJQUFSLENBQWEsSUFBYixDQUFOO0FBQXlCLGVBQU9uQyxDQUFDLENBQUMyRixLQUFGLEdBQVEsS0FBS0EsS0FBTCxDQUFXbkUsS0FBWCxFQUFSLEVBQTJCeEIsQ0FBbEM7QUFBb0M7QUFBMzdFLEtBQVQsQ0FBWjtBQUFtOUV5QixJQUFBQSxDQUFDLENBQUNpRSxHQUFGLEdBQU01QyxDQUFDLENBQUNnQyxhQUFGLENBQWdCUixDQUFoQixDQUFOLEVBQXlCN0MsQ0FBQyxDQUFDc0YsT0FBRixHQUFVakUsQ0FBQyxDQUFDaUMsaUJBQUYsQ0FBb0JULENBQXBCLENBQW5DO0FBQTBELEdBQXo3RixDQUEwN0ZZLElBQTE3RixDQUEzMUIsRUFBMnhILFlBQVU7QUFBQyxRQUFJakYsQ0FBQyxHQUFDRCxDQUFOO0FBQUEsUUFBUU8sQ0FBQyxHQUFDTixDQUFDLENBQUNZLEdBQVo7QUFBQSxRQUFnQkYsQ0FBQyxHQUFDSixDQUFDLENBQUNtQixTQUFwQjtBQUFBLFFBQThCZCxDQUFDLEdBQUNMLENBQUMsQ0FBQ2lFLE1BQWxDO0FBQUEsUUFBeUMxRCxDQUFDLEdBQUNiLENBQUMsQ0FBQ2dGLElBQTdDO0FBQUEsUUFBa0R4RCxDQUFDLEdBQUMsRUFBcEQ7QUFBQSxRQUF1RGEsQ0FBQyxHQUFDeEIsQ0FBQyxDQUFDa0csSUFBRixHQUFPcEcsQ0FBQyxDQUFDSSxNQUFGLENBQVM7QUFBQzBELE1BQUFBLFFBQVEsRUFBQyxvQkFBVTtBQUFDLGFBQUtpQixLQUFMLEdBQVcsSUFBSWhGLENBQUMsQ0FBQ1EsSUFBTixDQUFXLENBQUMsVUFBRCxFQUFZLFVBQVosRUFBdUIsVUFBdkIsRUFBa0MsU0FBbEMsRUFBNEMsVUFBNUMsQ0FBWCxDQUFYO0FBQStFLE9BQXBHO0FBQXFHa0QsTUFBQUEsZUFBZSxFQUFDLHlCQUFTckUsQ0FBVCxFQUFXQyxDQUFYLEVBQWE7QUFBQyxhQUFJLElBQUlNLENBQUMsR0FBQyxLQUFLb0YsS0FBTCxDQUFXaEUsS0FBakIsRUFBdUJoQixDQUFDLEdBQUNKLENBQUMsQ0FBQyxDQUFELENBQTFCLEVBQThCSyxDQUFDLEdBQUNMLENBQUMsQ0FBQyxDQUFELENBQWpDLEVBQXFDTyxDQUFDLEdBQUNQLENBQUMsQ0FBQyxDQUFELENBQXhDLEVBQTRDK0IsQ0FBQyxHQUFDL0IsQ0FBQyxDQUFDLENBQUQsQ0FBL0MsRUFBbUR1QixDQUFDLEdBQUN2QixDQUFDLENBQUMsQ0FBRCxDQUF0RCxFQUEwRHVDLENBQUMsR0FBQyxDQUFoRSxFQUFrRUEsQ0FBQyxHQUFDLEVBQXBFLEVBQXVFQSxDQUFDLEVBQXhFLEVBQTJFO0FBQUMsY0FBR0EsQ0FBQyxHQUFDLEVBQUwsRUFBUXJCLENBQUMsQ0FBQ3FCLENBQUQsQ0FBRCxHQUFLLElBQUU5QyxDQUFDLENBQUNDLENBQUMsR0FBQzZDLENBQUgsQ0FBUixDQUFSLEtBQTBCO0FBQUMsZ0JBQUlLLENBQUMsR0FBQzFCLENBQUMsQ0FBQ3FCLENBQUMsR0FBQyxDQUFILENBQUQsR0FBT3JCLENBQUMsQ0FBQ3FCLENBQUMsR0FBQyxDQUFILENBQVIsR0FBY3JCLENBQUMsQ0FBQ3FCLENBQUMsR0FBQyxFQUFILENBQWYsR0FBc0JyQixDQUFDLENBQUNxQixDQUFDLEdBQUMsRUFBSCxDQUE3QjtBQUFvQ3JCLFlBQUFBLENBQUMsQ0FBQ3FCLENBQUQsQ0FBRCxHQUFLSyxDQUFDLElBQUUsQ0FBSCxHQUFLQSxDQUFDLEtBQUcsRUFBZDtBQUFpQjtBQUFBLGNBQUlPLENBQUMsR0FBQyxDQUFDL0MsQ0FBQyxJQUFFLENBQUgsR0FBS0EsQ0FBQyxLQUFHLEVBQVYsSUFBY21CLENBQWQsR0FBZ0JMLENBQUMsQ0FBQ3FCLENBQUQsQ0FBdkI7QUFBMkJZLFVBQUFBLENBQUMsSUFBRVosQ0FBQyxHQUFDLEVBQUYsR0FBSyxDQUFDbEMsQ0FBQyxHQUFDRSxDQUFGLEdBQUksQ0FBQ0YsQ0FBRCxHQUFHMEIsQ0FBUixJQUFXLFVBQWhCLEdBQTJCUSxDQUFDLEdBQUMsRUFBRixHQUFLLENBQUNsQyxDQUFDLEdBQUNFLENBQUYsR0FBSXdCLENBQUwsSUFBUSxVQUFiLEdBQXdCUSxDQUFDLEdBQUMsRUFBRixHQUFLLENBQUNsQyxDQUFDLEdBQUNFLENBQUYsR0FBSUYsQ0FBQyxHQUFDMEIsQ0FBTixHQUFReEIsQ0FBQyxHQUFDd0IsQ0FBWCxJQUFjLFVBQW5CLEdBQThCLENBQUMxQixDQUFDLEdBQUNFLENBQUYsR0FBSXdCLENBQUwsSUFBUSxTQUE1RixFQUFzR1IsQ0FBQyxHQUFDUSxDQUF4RyxFQUEwR0EsQ0FBQyxHQUFDeEIsQ0FBNUcsRUFBOEdBLENBQUMsR0FBQ0YsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLENBQTFILEVBQTRIQSxDQUFDLEdBQUNELENBQTlILEVBQWdJQSxDQUFDLEdBQUMrQyxDQUFsSTtBQUFvSTs7QUFBQW5ELFFBQUFBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0EsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLSSxDQUFMLEdBQU8sQ0FBWixFQUFjSixDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0ssQ0FBTCxHQUFPLENBQTFCLEVBQTRCTCxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS08sQ0FBTCxHQUFPLENBQXhDLEVBQTBDUCxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBSytCLENBQUwsR0FBTyxDQUF0RCxFQUF3RC9CLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0EsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLdUIsQ0FBTCxHQUFPLENBQXBFO0FBQXNFLE9BQXBnQjtBQUFxZ0IrQyxNQUFBQSxXQUFXLEVBQUMsdUJBQVU7QUFBQyxZQUFJN0UsQ0FBQyxHQUFDLEtBQUs2RCxLQUFYO0FBQUEsWUFBaUI1RCxDQUFDLEdBQUNELENBQUMsQ0FBQzJCLEtBQXJCO0FBQUEsWUFBMkJwQixDQUFDLEdBQUMsSUFBRSxLQUFLdUQsV0FBcEM7QUFBQSxZQUFnRG5ELENBQUMsR0FBQyxJQUFFWCxDQUFDLENBQUM0QixRQUF0RDtBQUErRCxlQUFPM0IsQ0FBQyxDQUFDVSxDQUFDLEtBQUcsQ0FBTCxDQUFELElBQVUsT0FBSyxLQUFHQSxDQUFDLEdBQUMsRUFBcEIsRUFBdUJWLENBQUMsQ0FBQyxDQUFDVSxDQUFDLEdBQUMsRUFBRixLQUFPLENBQVAsSUFBVSxDQUFYLElBQWMsRUFBZixDQUFELEdBQW9CdUUsSUFBSSxDQUFDNEIsS0FBTCxDQUFXdkcsQ0FBQyxHQUFDLFVBQWIsQ0FBM0MsRUFBb0VOLENBQUMsQ0FBQyxDQUFDVSxDQUFDLEdBQUMsRUFBRixLQUFPLENBQVAsSUFBVSxDQUFYLElBQWMsRUFBZixDQUFELEdBQW9CSixDQUF4RixFQUEwRlAsQ0FBQyxDQUFDNEIsUUFBRixHQUFXLElBQUUzQixDQUFDLENBQUM0QixNQUF6RyxFQUFnSCxLQUFLbUMsUUFBTCxFQUFoSCxFQUFnSSxLQUFLMkIsS0FBNUk7QUFBa0osT0FBN3VCO0FBQTh1Qm5FLE1BQUFBLEtBQUssRUFBQyxpQkFBVTtBQUFDLFlBQUl4QixDQUFDLEdBQUNZLENBQUMsQ0FBQ1ksS0FBRixDQUFRVyxJQUFSLENBQWEsSUFBYixDQUFOO0FBQXlCLGVBQU9uQyxDQUFDLENBQUMyRixLQUFGLEdBQVEsS0FBS0EsS0FBTCxDQUFXbkUsS0FBWCxFQUFSLEVBQTJCeEIsQ0FBbEM7QUFBb0M7QUFBNXpCLEtBQVQsQ0FBaEU7QUFBdzRCQyxJQUFBQSxDQUFDLENBQUMrRyxJQUFGLEdBQU9wRyxDQUFDLENBQUNrRSxhQUFGLENBQWdCeEMsQ0FBaEIsQ0FBUCxFQUEwQnJDLENBQUMsQ0FBQ2dILFFBQUYsR0FBV3JHLENBQUMsQ0FBQ21FLGlCQUFGLENBQW9CekMsQ0FBcEIsQ0FBckM7QUFBNEQsR0FBLzhCLEVBQTN4SCxFQUE2dUosVUFBU3JDLENBQVQsRUFBVztBQUFDLFFBQUlNLENBQUMsR0FBQ1AsQ0FBTjtBQUFBLFFBQVFXLENBQUMsR0FBQ0osQ0FBQyxDQUFDTSxHQUFaO0FBQUEsUUFBZ0JELENBQUMsR0FBQ0QsQ0FBQyxDQUFDZSxTQUFwQjtBQUFBLFFBQThCWixDQUFDLEdBQUNILENBQUMsQ0FBQzZELE1BQWxDO0FBQUEsUUFBeUMvQyxDQUFDLEdBQUNsQixDQUFDLENBQUMwRSxJQUE3QztBQUFBLFFBQWtEM0MsQ0FBQyxHQUFDLEVBQXBEO0FBQUEsUUFBdURSLENBQUMsR0FBQyxFQUF6RDtBQUE0RCxLQUFDLFlBQVU7QUFBQyxlQUFTOUIsQ0FBVCxDQUFXQSxDQUFYLEVBQWE7QUFBQyxhQUFJLElBQUlPLENBQUMsR0FBQ04sQ0FBQyxDQUFDaUgsSUFBRixDQUFPbEgsQ0FBUCxDQUFOLEVBQWdCVyxDQUFDLEdBQUMsQ0FBdEIsRUFBd0JBLENBQUMsSUFBRUosQ0FBM0IsRUFBNkJJLENBQUMsRUFBOUI7QUFBaUMsY0FBRyxFQUFFWCxDQUFDLEdBQUNXLENBQUosQ0FBSCxFQUFVLE9BQU0sQ0FBQyxDQUFQO0FBQTNDOztBQUFvRCxlQUFNLENBQUMsQ0FBUDtBQUFTOztBQUFBLGVBQVNKLENBQVQsQ0FBV1AsQ0FBWCxFQUFhO0FBQUMsZUFBTyxjQUFZQSxDQUFDLElBQUUsSUFBRUEsQ0FBSixDQUFiLElBQXFCLENBQTVCO0FBQThCOztBQUFBLFdBQUksSUFBSVcsQ0FBQyxHQUFDLENBQU4sRUFBUUMsQ0FBQyxHQUFDLENBQWQsRUFBZ0JBLENBQUMsR0FBQyxFQUFsQjtBQUFzQlosUUFBQUEsQ0FBQyxDQUFDVyxDQUFELENBQUQsS0FBT0MsQ0FBQyxHQUFDLENBQUYsS0FBTTBCLENBQUMsQ0FBQzFCLENBQUQsQ0FBRCxHQUFLTCxDQUFDLENBQUNOLENBQUMsQ0FBQ2tILEdBQUYsQ0FBTXhHLENBQU4sRUFBUSxFQUFSLENBQUQsQ0FBWixHQUEyQm1CLENBQUMsQ0FBQ2xCLENBQUQsQ0FBRCxHQUFLTCxDQUFDLENBQUNOLENBQUMsQ0FBQ2tILEdBQUYsQ0FBTXhHLENBQU4sRUFBUSxJQUFFLENBQVYsQ0FBRCxDQUFqQyxFQUFnREMsQ0FBQyxFQUF4RCxHQUE0REQsQ0FBQyxFQUE3RDtBQUF0QjtBQUFzRixLQUF4TixFQUFEO0FBQTROLFFBQUltQyxDQUFDLEdBQUMsRUFBTjtBQUFBLFFBQVNLLENBQUMsR0FBQzFCLENBQUMsQ0FBQzJGLE1BQUYsR0FBU3RHLENBQUMsQ0FBQ0UsTUFBRixDQUFTO0FBQUMwRCxNQUFBQSxRQUFRLEVBQUMsb0JBQVU7QUFBQyxhQUFLaUIsS0FBTCxHQUFXLElBQUkvRSxDQUFDLENBQUNPLElBQU4sQ0FBV21CLENBQUMsQ0FBQ0YsS0FBRixDQUFRLENBQVIsQ0FBWCxDQUFYO0FBQWtDLE9BQXZEO0FBQXdEaUMsTUFBQUEsZUFBZSxFQUFDLHlCQUFTckUsQ0FBVCxFQUFXQyxDQUFYLEVBQWE7QUFBQyxhQUFJLElBQUlNLENBQUMsR0FBQyxLQUFLb0YsS0FBTCxDQUFXaEUsS0FBakIsRUFBdUJoQixDQUFDLEdBQUNKLENBQUMsQ0FBQyxDQUFELENBQTFCLEVBQThCSyxDQUFDLEdBQUNMLENBQUMsQ0FBQyxDQUFELENBQWpDLEVBQXFDTyxDQUFDLEdBQUNQLENBQUMsQ0FBQyxDQUFELENBQXhDLEVBQTRDa0IsQ0FBQyxHQUFDbEIsQ0FBQyxDQUFDLENBQUQsQ0FBL0MsRUFBbUQrQixDQUFDLEdBQUMvQixDQUFDLENBQUMsQ0FBRCxDQUF0RCxFQUEwRDRDLENBQUMsR0FBQzVDLENBQUMsQ0FBQyxDQUFELENBQTdELEVBQWlFbUQsQ0FBQyxHQUFDbkQsQ0FBQyxDQUFDLENBQUQsQ0FBcEUsRUFBd0UrRCxDQUFDLEdBQUMvRCxDQUFDLENBQUMsQ0FBRCxDQUEzRSxFQUErRXFGLENBQUMsR0FBQyxDQUFyRixFQUF1RkEsQ0FBQyxHQUFDLEVBQXpGLEVBQTRGQSxDQUFDLEVBQTdGLEVBQWdHO0FBQUMsY0FBR0EsQ0FBQyxHQUFDLEVBQUwsRUFBUTlDLENBQUMsQ0FBQzhDLENBQUQsQ0FBRCxHQUFLLElBQUU1RixDQUFDLENBQUNDLENBQUMsR0FBQzJGLENBQUgsQ0FBUixDQUFSLEtBQTBCO0FBQUMsZ0JBQUlDLENBQUMsR0FBQy9DLENBQUMsQ0FBQzhDLENBQUMsR0FBQyxFQUFILENBQVA7QUFBQSxnQkFBY0UsQ0FBQyxHQUFDLENBQUNELENBQUMsSUFBRSxFQUFILEdBQU1BLENBQUMsS0FBRyxDQUFYLEtBQWVBLENBQUMsSUFBRSxFQUFILEdBQU1BLENBQUMsS0FBRyxFQUF6QixJQUE2QkEsQ0FBQyxLQUFHLENBQWpEO0FBQUEsZ0JBQW1ERSxDQUFDLEdBQUNqRCxDQUFDLENBQUM4QyxDQUFDLEdBQUMsQ0FBSCxDQUF0RDtBQUFBLGdCQUE0REksQ0FBQyxHQUFDLENBQUNELENBQUMsSUFBRSxFQUFILEdBQU1BLENBQUMsS0FBRyxFQUFYLEtBQWdCQSxDQUFDLElBQUUsRUFBSCxHQUFNQSxDQUFDLEtBQUcsRUFBMUIsSUFBOEJBLENBQUMsS0FBRyxFQUFoRztBQUFtR2pELFlBQUFBLENBQUMsQ0FBQzhDLENBQUQsQ0FBRCxHQUFLRSxDQUFDLEdBQUNoRCxDQUFDLENBQUM4QyxDQUFDLEdBQUMsQ0FBSCxDQUFILEdBQVNJLENBQVQsR0FBV2xELENBQUMsQ0FBQzhDLENBQUMsR0FBQyxFQUFILENBQWpCO0FBQXdCO0FBQUEsY0FBSUssQ0FBQyxHQUFDM0QsQ0FBQyxHQUFDYSxDQUFGLEdBQUksQ0FBQ2IsQ0FBRCxHQUFHb0IsQ0FBYjtBQUFBLGNBQWV3QyxDQUFDLEdBQUN2RixDQUFDLEdBQUNDLENBQUYsR0FBSUQsQ0FBQyxHQUFDRyxDQUFOLEdBQVFGLENBQUMsR0FBQ0UsQ0FBM0I7QUFBQSxjQUE2QnFGLENBQUMsR0FBQyxDQUFDeEYsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLENBQVgsS0FBZUEsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLEVBQXpCLEtBQThCQSxDQUFDLElBQUUsRUFBSCxHQUFNQSxDQUFDLEtBQUcsRUFBeEMsQ0FBL0I7QUFBQSxjQUEyRXlGLENBQUMsR0FBQyxDQUFDOUQsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLENBQVgsS0FBZUEsQ0FBQyxJQUFFLEVBQUgsR0FBTUEsQ0FBQyxLQUFHLEVBQXpCLEtBQThCQSxDQUFDLElBQUUsQ0FBSCxHQUFLQSxDQUFDLEtBQUcsRUFBdkMsQ0FBN0U7QUFBQSxjQUF3SCtELENBQUMsR0FBQy9CLENBQUMsR0FBQzhCLENBQUYsR0FBSUgsQ0FBSixHQUFNbkUsQ0FBQyxDQUFDOEQsQ0FBRCxDQUFQLEdBQVc5QyxDQUFDLENBQUM4QyxDQUFELENBQXRJO0FBQUEsY0FBMElVLENBQUMsR0FBQ0gsQ0FBQyxHQUFDRCxDQUE5STtBQUFnSjVCLFVBQUFBLENBQUMsR0FBQ1osQ0FBRixFQUFJQSxDQUFDLEdBQUNQLENBQU4sRUFBUUEsQ0FBQyxHQUFDYixDQUFWLEVBQVlBLENBQUMsR0FBQ2IsQ0FBQyxHQUFDNEUsQ0FBRixHQUFJLENBQWxCLEVBQW9CNUUsQ0FBQyxHQUFDWCxDQUF0QixFQUF3QkEsQ0FBQyxHQUFDRixDQUExQixFQUE0QkEsQ0FBQyxHQUFDRCxDQUE5QixFQUFnQ0EsQ0FBQyxHQUFDMEYsQ0FBQyxHQUFDQyxDQUFGLEdBQUksQ0FBdEM7QUFBd0M7O0FBQUEvRixRQUFBQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0ksQ0FBTCxHQUFPLENBQVosRUFBY0osQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtLLENBQUwsR0FBTyxDQUExQixFQUE0QkwsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtPLENBQUwsR0FBTyxDQUF4QyxFQUEwQ1AsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtrQixDQUFMLEdBQU8sQ0FBdEQsRUFBd0RsQixDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBSytCLENBQUwsR0FBTyxDQUFwRSxFQUFzRS9CLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBS0EsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLNEMsQ0FBTCxHQUFPLENBQWxGLEVBQW9GNUMsQ0FBQyxDQUFDLENBQUQsQ0FBRCxHQUFLQSxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUttRCxDQUFMLEdBQU8sQ0FBaEcsRUFBa0duRCxDQUFDLENBQUMsQ0FBRCxDQUFELEdBQUtBLENBQUMsQ0FBQyxDQUFELENBQUQsR0FBSytELENBQUwsR0FBTyxDQUE5RztBQUFnSCxPQUFybkI7QUFBc25CTyxNQUFBQSxXQUFXLEVBQUMsdUJBQVU7QUFBQyxZQUFJN0UsQ0FBQyxHQUFDLEtBQUs2RCxLQUFYO0FBQUEsWUFBaUJ0RCxDQUFDLEdBQUNQLENBQUMsQ0FBQzJCLEtBQXJCO0FBQUEsWUFBMkJoQixDQUFDLEdBQUMsSUFBRSxLQUFLbUQsV0FBcEM7QUFBQSxZQUFnRGxELENBQUMsR0FBQyxJQUFFWixDQUFDLENBQUM0QixRQUF0RDtBQUErRCxlQUFPckIsQ0FBQyxDQUFDSyxDQUFDLEtBQUcsQ0FBTCxDQUFELElBQVUsT0FBSyxLQUFHQSxDQUFDLEdBQUMsRUFBcEIsRUFBdUJMLENBQUMsQ0FBQyxDQUFDSyxDQUFDLEdBQUMsRUFBRixLQUFPLENBQVAsSUFBVSxDQUFYLElBQWMsRUFBZixDQUFELEdBQW9CWCxDQUFDLENBQUM2RyxLQUFGLENBQVFuRyxDQUFDLEdBQUMsVUFBVixDQUEzQyxFQUFpRUosQ0FBQyxDQUFDLENBQUNLLENBQUMsR0FBQyxFQUFGLEtBQU8sQ0FBUCxJQUFVLENBQVgsSUFBYyxFQUFmLENBQUQsR0FBb0JELENBQXJGLEVBQXVGWCxDQUFDLENBQUM0QixRQUFGLEdBQVcsSUFBRXJCLENBQUMsQ0FBQ3NCLE1BQXRHLEVBQTZHLEtBQUttQyxRQUFMLEVBQTdHLEVBQTZILEtBQUsyQixLQUF6STtBQUErSSxPQUEzMUI7QUFBNDFCbkUsTUFBQUEsS0FBSyxFQUFDLGlCQUFVO0FBQUMsWUFBSXhCLENBQUMsR0FBQ2MsQ0FBQyxDQUFDVSxLQUFGLENBQVFXLElBQVIsQ0FBYSxJQUFiLENBQU47QUFBeUIsZUFBT25DLENBQUMsQ0FBQzJGLEtBQUYsR0FBUSxLQUFLQSxLQUFMLENBQVduRSxLQUFYLEVBQVIsRUFBMkJ4QixDQUFsQztBQUFvQztBQUExNkIsS0FBVCxDQUFwQjtBQUEwOEJPLElBQUFBLENBQUMsQ0FBQzZHLE1BQUYsR0FBU3RHLENBQUMsQ0FBQ2dFLGFBQUYsQ0FBZ0IzQixDQUFoQixDQUFULEVBQTRCNUMsQ0FBQyxDQUFDOEcsVUFBRixHQUFhdkcsQ0FBQyxDQUFDaUUsaUJBQUYsQ0FBb0I1QixDQUFwQixDQUF6QztBQUFnRSxHQUE5eUMsQ0FBK3lDK0IsSUFBL3lDLENBQTd1SixFQUFraU0sWUFBVTtBQUFDLGFBQVNqRixDQUFULENBQVdELENBQVgsRUFBYTtBQUFDLGFBQU9BLENBQUMsSUFBRSxDQUFILEdBQUssVUFBTCxHQUFnQkEsQ0FBQyxLQUFHLENBQUosR0FBTSxRQUE3QjtBQUFzQzs7QUFBQSxRQUFJTyxDQUFDLEdBQUNQLENBQU47QUFBQSxRQUFRVyxDQUFDLEdBQUNKLENBQUMsQ0FBQ00sR0FBWjtBQUFBLFFBQWdCRCxDQUFDLEdBQUNELENBQUMsQ0FBQ2UsU0FBcEI7QUFBQSxRQUE4QlosQ0FBQyxHQUFDUCxDQUFDLENBQUNpQyxHQUFsQztBQUFzQzFCLElBQUFBLENBQUMsQ0FBQ3dHLEtBQUYsR0FBUXhHLENBQUMsQ0FBQ3lHLE9BQUYsR0FBVTtBQUFDeEYsTUFBQUEsU0FBUyxFQUFDLG1CQUFTL0IsQ0FBVCxFQUFXO0FBQUMsYUFBSSxJQUFJQyxDQUFDLEdBQUNELENBQUMsQ0FBQzJCLEtBQVIsRUFBY3BCLENBQUMsR0FBQ1AsQ0FBQyxDQUFDNEIsUUFBbEIsRUFBMkJqQixDQUFDLEdBQUMsRUFBN0IsRUFBZ0NDLENBQUMsR0FBQyxDQUF0QyxFQUF3Q0EsQ0FBQyxHQUFDTCxDQUExQyxFQUE0Q0ssQ0FBQyxJQUFFLENBQS9DLEVBQWlEO0FBQUMsY0FBSUUsQ0FBQyxHQUFDYixDQUFDLENBQUNXLENBQUMsS0FBRyxDQUFMLENBQUQsS0FBVyxLQUFHQSxDQUFDLEdBQUMsQ0FBRixHQUFJLENBQWxCLEdBQW9CLEtBQTFCO0FBQWdDRCxVQUFBQSxDQUFDLENBQUM0QixJQUFGLENBQU9TLE1BQU0sQ0FBQ0MsWUFBUCxDQUFvQm5DLENBQXBCLENBQVA7QUFBK0I7O0FBQUEsZUFBT0gsQ0FBQyxDQUFDK0IsSUFBRixDQUFPLEVBQVAsQ0FBUDtBQUFrQixPQUExSjtBQUEySkMsTUFBQUEsS0FBSyxFQUFDLGVBQVMzQyxDQUFULEVBQVc7QUFBQyxhQUFJLElBQUlDLENBQUMsR0FBQ0QsQ0FBQyxDQUFDNkIsTUFBUixFQUFldEIsQ0FBQyxHQUFDLEVBQWpCLEVBQW9CSSxDQUFDLEdBQUMsQ0FBMUIsRUFBNEJBLENBQUMsR0FBQ1YsQ0FBOUIsRUFBZ0NVLENBQUMsRUFBakM7QUFBb0NKLFVBQUFBLENBQUMsQ0FBQ0ksQ0FBQyxLQUFHLENBQUwsQ0FBRCxJQUFVWCxDQUFDLENBQUNrRCxVQUFGLENBQWF2QyxDQUFiLEtBQWlCLEtBQUdBLENBQUMsR0FBQyxDQUFGLEdBQUksRUFBbEM7QUFBcEM7O0FBQXlFLGVBQU9DLENBQUMsQ0FBQ0gsTUFBRixDQUFTRixDQUFULEVBQVcsSUFBRU4sQ0FBYixDQUFQO0FBQXVCO0FBQTdRLEtBQWxCO0FBQWlTYSxJQUFBQSxDQUFDLENBQUMwRyxPQUFGLEdBQVU7QUFBQ3pGLE1BQUFBLFNBQVMsRUFBQyxtQkFBUy9CLENBQVQsRUFBVztBQUFDLGFBQUksSUFBSU8sQ0FBQyxHQUFDUCxDQUFDLENBQUMyQixLQUFSLEVBQWNoQixDQUFDLEdBQUNYLENBQUMsQ0FBQzRCLFFBQWxCLEVBQTJCaEIsQ0FBQyxHQUFDLEVBQTdCLEVBQWdDRSxDQUFDLEdBQUMsQ0FBdEMsRUFBd0NBLENBQUMsR0FBQ0gsQ0FBMUMsRUFBNENHLENBQUMsSUFBRSxDQUEvQyxFQUFpRDtBQUFDLGNBQUlXLENBQUMsR0FBQ3hCLENBQUMsQ0FBQ00sQ0FBQyxDQUFDTyxDQUFDLEtBQUcsQ0FBTCxDQUFELEtBQVcsS0FBR0EsQ0FBQyxHQUFDLENBQUYsR0FBSSxDQUFsQixHQUFvQixLQUFyQixDQUFQO0FBQW1DRixVQUFBQSxDQUFDLENBQUMyQixJQUFGLENBQU9TLE1BQU0sQ0FBQ0MsWUFBUCxDQUFvQnhCLENBQXBCLENBQVA7QUFBK0I7O0FBQUEsZUFBT2IsQ0FBQyxDQUFDOEIsSUFBRixDQUFPLEVBQVAsQ0FBUDtBQUFrQixPQUE3SjtBQUE4SkMsTUFBQUEsS0FBSyxFQUFDLGVBQVMzQyxDQUFULEVBQVc7QUFBQyxhQUFJLElBQUlPLENBQUMsR0FBQ1AsQ0FBQyxDQUFDNkIsTUFBUixFQUFlbEIsQ0FBQyxHQUFDLEVBQWpCLEVBQW9CRyxDQUFDLEdBQUMsQ0FBMUIsRUFBNEJBLENBQUMsR0FBQ1AsQ0FBOUIsRUFBZ0NPLENBQUMsRUFBakM7QUFBb0NILFVBQUFBLENBQUMsQ0FBQ0csQ0FBQyxLQUFHLENBQUwsQ0FBRCxJQUFVYixDQUFDLENBQUNELENBQUMsQ0FBQ2tELFVBQUYsQ0FBYXBDLENBQWIsS0FBaUIsS0FBR0EsQ0FBQyxHQUFDLENBQUYsR0FBSSxFQUF6QixDQUFYO0FBQXBDOztBQUE0RSxlQUFPRixDQUFDLENBQUNILE1BQUYsQ0FBU0UsQ0FBVCxFQUFXLElBQUVKLENBQWIsQ0FBUDtBQUF1QjtBQUFuUixLQUFWO0FBQStSLEdBQXJxQixFQUFsaU0sRUFBMHNOLFlBQVU7QUFBQyxRQUFHLGNBQVksT0FBT2tILFdBQXRCLEVBQWtDO0FBQUMsVUFBSXhILENBQUMsR0FBQ0QsQ0FBTjtBQUFBLFVBQVFPLENBQUMsR0FBQ04sQ0FBQyxDQUFDWSxHQUFaO0FBQUEsVUFBZ0JGLENBQUMsR0FBQ0osQ0FBQyxDQUFDbUIsU0FBcEI7QUFBQSxVQUE4QmQsQ0FBQyxHQUFDRCxDQUFDLENBQUNRLElBQWxDO0FBQUEsVUFBdUNMLENBQUMsR0FBQ0gsQ0FBQyxDQUFDUSxJQUFGLEdBQU8sVUFBU25CLENBQVQsRUFBVztBQUFDLFlBQUdBLENBQUMsWUFBWXlILFdBQWIsS0FBMkJ6SCxDQUFDLEdBQUMsSUFBSTBILFVBQUosQ0FBZTFILENBQWYsQ0FBN0IsR0FBZ0QsQ0FBQ0EsQ0FBQyxZQUFZMkgsU0FBYixJQUF3QixlQUFhLE9BQU9DLGlCQUFwQixJQUF1QzVILENBQUMsWUFBWTRILGlCQUE1RSxJQUErRjVILENBQUMsWUFBWTZILFVBQTVHLElBQXdIN0gsQ0FBQyxZQUFZOEgsV0FBckksSUFBa0o5SCxDQUFDLFlBQVkrSCxVQUEvSixJQUEySy9ILENBQUMsWUFBWWdJLFdBQXhMLElBQXFNaEksQ0FBQyxZQUFZaUksWUFBbE4sSUFBZ09qSSxDQUFDLFlBQVlrSSxZQUE5TyxNQUE4UGxJLENBQUMsR0FBQyxJQUFJMEgsVUFBSixDQUFlMUgsQ0FBQyxDQUFDbUksTUFBakIsRUFBd0JuSSxDQUFDLENBQUNvSSxVQUExQixFQUFxQ3BJLENBQUMsQ0FBQ3FJLFVBQXZDLENBQWhRLENBQWhELEVBQW9XckksQ0FBQyxZQUFZMEgsVUFBcFgsRUFBK1g7QUFBQyxlQUFJLElBQUl6SCxDQUFDLEdBQUNELENBQUMsQ0FBQ3FJLFVBQVIsRUFBbUI5SCxDQUFDLEdBQUMsRUFBckIsRUFBd0JJLENBQUMsR0FBQyxDQUE5QixFQUFnQ0EsQ0FBQyxHQUFDVixDQUFsQyxFQUFvQ1UsQ0FBQyxFQUFyQztBQUF3Q0osWUFBQUEsQ0FBQyxDQUFDSSxDQUFDLEtBQUcsQ0FBTCxDQUFELElBQVVYLENBQUMsQ0FBQ1csQ0FBRCxDQUFELElBQU0sS0FBR0EsQ0FBQyxHQUFDLENBQUYsR0FBSSxDQUF2QjtBQUF4Qzs7QUFBaUVDLFVBQUFBLENBQUMsQ0FBQ3VCLElBQUYsQ0FBTyxJQUFQLEVBQVk1QixDQUFaLEVBQWNOLENBQWQ7QUFBaUIsU0FBbGQsTUFBdWRXLENBQUMsQ0FBQ1MsS0FBRixDQUFRLElBQVIsRUFBYUMsU0FBYjtBQUF3QixPQUEzaUI7O0FBQTRpQlIsTUFBQUEsQ0FBQyxDQUFDSixTQUFGLEdBQVlDLENBQVo7QUFBYztBQUFDLEdBQXptQixFQUExc04sRUFBc3pPLFVBQVNWLENBQVQsRUFBVztBQUFDLGFBQVNNLENBQVQsQ0FBV1AsQ0FBWCxFQUFhQyxDQUFiLEVBQWVNLENBQWYsRUFBaUI7QUFBQyxhQUFPUCxDQUFDLEdBQUNDLENBQUYsR0FBSU0sQ0FBWDtBQUFhOztBQUFBLGFBQVNJLENBQVQsQ0FBV1gsQ0FBWCxFQUFhQyxDQUFiLEVBQWVNLENBQWYsRUFBaUI7QUFBQyxhQUFPUCxDQUFDLEdBQUNDLENBQUYsR0FBSSxDQUFDRCxDQUFELEdBQUdPLENBQWQ7QUFBZ0I7O0FBQUEsYUFBU0ssQ0FBVCxDQUFXWixDQUFYLEVBQWFDLENBQWIsRUFBZU0sQ0FBZixFQUFpQjtBQUFDLGFBQU0sQ0FBQ1AsQ0FBQyxHQUFDLENBQUNDLENBQUosSUFBT00sQ0FBYjtBQUFlOztBQUFBLGFBQVNPLENBQVQsQ0FBV2QsQ0FBWCxFQUFhQyxDQUFiLEVBQWVNLENBQWYsRUFBaUI7QUFBQyxhQUFPUCxDQUFDLEdBQUNPLENBQUYsR0FBSU4sQ0FBQyxHQUFDLENBQUNNLENBQWQ7QUFBZ0I7O0FBQUEsYUFBU2tCLENBQVQsQ0FBV3pCLENBQVgsRUFBYUMsQ0FBYixFQUFlTSxDQUFmLEVBQWlCO0FBQUMsYUFBT1AsQ0FBQyxJQUFFQyxDQUFDLEdBQUMsQ0FBQ00sQ0FBTCxDQUFSO0FBQWdCOztBQUFBLGFBQVMrQixDQUFULENBQVd0QyxDQUFYLEVBQWFDLENBQWIsRUFBZTtBQUFDLGFBQU9ELENBQUMsSUFBRUMsQ0FBSCxHQUFLRCxDQUFDLEtBQUcsS0FBR0MsQ0FBbkI7QUFBcUI7O0FBQUEsUUFBSTZCLENBQUMsR0FBQzlCLENBQU47QUFBQSxRQUFROEMsQ0FBQyxHQUFDaEIsQ0FBQyxDQUFDakIsR0FBWjtBQUFBLFFBQWdCc0MsQ0FBQyxHQUFDTCxDQUFDLENBQUNwQixTQUFwQjtBQUFBLFFBQThCZ0MsQ0FBQyxHQUFDWixDQUFDLENBQUMwQixNQUFsQztBQUFBLFFBQXlDRixDQUFDLEdBQUN4QyxDQUFDLENBQUNtRCxJQUE3QztBQUFBLFFBQWtEVyxDQUFDLEdBQUN6QyxDQUFDLENBQUMxQyxNQUFGLENBQVMsQ0FBQyxDQUFELEVBQUcsQ0FBSCxFQUFLLENBQUwsRUFBTyxDQUFQLEVBQVMsQ0FBVCxFQUFXLENBQVgsRUFBYSxDQUFiLEVBQWUsQ0FBZixFQUFpQixDQUFqQixFQUFtQixDQUFuQixFQUFxQixFQUFyQixFQUF3QixFQUF4QixFQUEyQixFQUEzQixFQUE4QixFQUE5QixFQUFpQyxFQUFqQyxFQUFvQyxFQUFwQyxFQUF1QyxDQUF2QyxFQUF5QyxDQUF6QyxFQUEyQyxFQUEzQyxFQUE4QyxDQUE5QyxFQUFnRCxFQUFoRCxFQUFtRCxDQUFuRCxFQUFxRCxFQUFyRCxFQUF3RCxDQUF4RCxFQUEwRCxFQUExRCxFQUE2RCxDQUE3RCxFQUErRCxDQUEvRCxFQUFpRSxDQUFqRSxFQUFtRSxDQUFuRSxFQUFxRSxFQUFyRSxFQUF3RSxFQUF4RSxFQUEyRSxDQUEzRSxFQUE2RSxDQUE3RSxFQUErRSxFQUEvRSxFQUFrRixFQUFsRixFQUFxRixDQUFyRixFQUF1RixDQUF2RixFQUF5RixFQUF6RixFQUE0RixDQUE1RixFQUE4RixDQUE5RixFQUFnRyxDQUFoRyxFQUFrRyxDQUFsRyxFQUFvRyxDQUFwRyxFQUFzRyxDQUF0RyxFQUF3RyxFQUF4RyxFQUEyRyxFQUEzRyxFQUE4RyxDQUE5RyxFQUFnSCxFQUFoSCxFQUFtSCxDQUFuSCxFQUFxSCxDQUFySCxFQUF1SCxFQUF2SCxFQUEwSCxFQUExSCxFQUE2SCxDQUE3SCxFQUErSCxDQUEvSCxFQUFpSSxFQUFqSSxFQUFvSSxDQUFwSSxFQUFzSSxFQUF0SSxFQUF5SSxDQUF6SSxFQUEySSxDQUEzSSxFQUE2SSxFQUE3SSxFQUFnSixFQUFoSixFQUFtSixDQUFuSixFQUFxSixDQUFySixFQUF1SixDQUF2SixFQUF5SixDQUF6SixFQUEySixDQUEzSixFQUE2SixDQUE3SixFQUErSixDQUEvSixFQUFpSyxDQUFqSyxFQUFtSyxFQUFuSyxFQUFzSyxDQUF0SyxFQUF3SyxFQUF4SyxFQUEySyxFQUEzSyxFQUE4SyxDQUE5SyxFQUFnTCxDQUFoTCxFQUFrTCxDQUFsTCxFQUFvTCxFQUFwTCxFQUF1TCxDQUF2TCxFQUF5TCxFQUF6TCxFQUE0TCxFQUE1TCxDQUFULENBQXBEO0FBQUEsUUFBOFBvRixDQUFDLEdBQUMxQyxDQUFDLENBQUMxQyxNQUFGLENBQVMsQ0FBQyxDQUFELEVBQUcsRUFBSCxFQUFNLENBQU4sRUFBUSxDQUFSLEVBQVUsQ0FBVixFQUFZLENBQVosRUFBYyxFQUFkLEVBQWlCLENBQWpCLEVBQW1CLEVBQW5CLEVBQXNCLENBQXRCLEVBQXdCLEVBQXhCLEVBQTJCLENBQTNCLEVBQTZCLENBQTdCLEVBQStCLEVBQS9CLEVBQWtDLENBQWxDLEVBQW9DLEVBQXBDLEVBQXVDLENBQXZDLEVBQXlDLEVBQXpDLEVBQTRDLENBQTVDLEVBQThDLENBQTlDLEVBQWdELENBQWhELEVBQWtELEVBQWxELEVBQXFELENBQXJELEVBQXVELEVBQXZELEVBQTBELEVBQTFELEVBQTZELEVBQTdELEVBQWdFLENBQWhFLEVBQWtFLEVBQWxFLEVBQXFFLENBQXJFLEVBQXVFLENBQXZFLEVBQXlFLENBQXpFLEVBQTJFLENBQTNFLEVBQTZFLEVBQTdFLEVBQWdGLENBQWhGLEVBQWtGLENBQWxGLEVBQW9GLENBQXBGLEVBQXNGLENBQXRGLEVBQXdGLEVBQXhGLEVBQTJGLENBQTNGLEVBQTZGLENBQTdGLEVBQStGLEVBQS9GLEVBQWtHLENBQWxHLEVBQW9HLEVBQXBHLEVBQXVHLENBQXZHLEVBQXlHLEVBQXpHLEVBQTRHLENBQTVHLEVBQThHLENBQTlHLEVBQWdILEVBQWhILEVBQW1ILENBQW5ILEVBQXFILENBQXJILEVBQXVILENBQXZILEVBQXlILENBQXpILEVBQTJILENBQTNILEVBQTZILEVBQTdILEVBQWdJLEVBQWhJLEVBQW1JLENBQW5JLEVBQXFJLENBQXJJLEVBQXVJLEVBQXZJLEVBQTBJLENBQTFJLEVBQTRJLEVBQTVJLEVBQStJLENBQS9JLEVBQWlKLENBQWpKLEVBQW1KLEVBQW5KLEVBQXNKLEVBQXRKLEVBQXlKLEVBQXpKLEVBQTRKLEVBQTVKLEVBQStKLEVBQS9KLEVBQWtLLENBQWxLLEVBQW9LLENBQXBLLEVBQXNLLENBQXRLLEVBQXdLLENBQXhLLEVBQTBLLENBQTFLLEVBQTRLLENBQTVLLEVBQThLLENBQTlLLEVBQWdMLEVBQWhMLEVBQW1MLEVBQW5MLEVBQXNMLENBQXRMLEVBQXdMLENBQXhMLEVBQTBMLENBQTFMLEVBQTRMLEVBQTVMLENBQVQsQ0FBaFE7QUFBQSxRQUEwY3FGLENBQUMsR0FBQzNDLENBQUMsQ0FBQzFDLE1BQUYsQ0FBUyxDQUFDLEVBQUQsRUFBSSxFQUFKLEVBQU8sRUFBUCxFQUFVLEVBQVYsRUFBYSxDQUFiLEVBQWUsQ0FBZixFQUFpQixDQUFqQixFQUFtQixDQUFuQixFQUFxQixFQUFyQixFQUF3QixFQUF4QixFQUEyQixFQUEzQixFQUE4QixFQUE5QixFQUFpQyxDQUFqQyxFQUFtQyxDQUFuQyxFQUFxQyxDQUFyQyxFQUF1QyxDQUF2QyxFQUF5QyxDQUF6QyxFQUEyQyxDQUEzQyxFQUE2QyxDQUE3QyxFQUErQyxFQUEvQyxFQUFrRCxFQUFsRCxFQUFxRCxDQUFyRCxFQUF1RCxDQUF2RCxFQUF5RCxFQUF6RCxFQUE0RCxDQUE1RCxFQUE4RCxFQUE5RCxFQUFpRSxFQUFqRSxFQUFvRSxDQUFwRSxFQUFzRSxFQUF0RSxFQUF5RSxDQUF6RSxFQUEyRSxFQUEzRSxFQUE4RSxFQUE5RSxFQUFpRixFQUFqRixFQUFvRixFQUFwRixFQUF1RixDQUF2RixFQUF5RixDQUF6RixFQUEyRixFQUEzRixFQUE4RixDQUE5RixFQUFnRyxFQUFoRyxFQUFtRyxFQUFuRyxFQUFzRyxFQUF0RyxFQUF5RyxDQUF6RyxFQUEyRyxFQUEzRyxFQUE4RyxDQUE5RyxFQUFnSCxDQUFoSCxFQUFrSCxFQUFsSCxFQUFxSCxDQUFySCxFQUF1SCxDQUF2SCxFQUF5SCxFQUF6SCxFQUE0SCxFQUE1SCxFQUErSCxFQUEvSCxFQUFrSSxFQUFsSSxFQUFxSSxFQUFySSxFQUF3SSxFQUF4SSxFQUEySSxDQUEzSSxFQUE2SSxDQUE3SSxFQUErSSxDQUEvSSxFQUFpSixFQUFqSixFQUFvSixDQUFwSixFQUFzSixDQUF0SixFQUF3SixDQUF4SixFQUEwSixDQUExSixFQUE0SixDQUE1SixFQUE4SixFQUE5SixFQUFpSyxDQUFqSyxFQUFtSyxFQUFuSyxFQUFzSyxDQUF0SyxFQUF3SyxFQUF4SyxFQUEySyxDQUEzSyxFQUE2SyxDQUE3SyxFQUErSyxFQUEvSyxFQUFrTCxFQUFsTCxFQUFxTCxDQUFyTCxFQUF1TCxFQUF2TCxFQUEwTCxFQUExTCxFQUE2TCxFQUE3TCxFQUFnTSxFQUFoTSxFQUFtTSxDQUFuTSxFQUFxTSxDQUFyTSxFQUF1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ckIsQ0FBQyxHQUFDLENBQWI7QUFBZTtBQUExSyxHQURueVgsRUFDKzhYUCxDQUR0OVg7QUFDdzlYLENBRGpoZixDQUFELEVBRUEiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIiFmdW5jdGlvbih0LHIpe1wib2JqZWN0XCI9PXR5cGVvZiBleHBvcnRzP21vZHVsZS5leHBvcnRzPWV4cG9ydHM9cigpOlwiZnVuY3Rpb25cIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10scik6dC5DcnlwdG9KUz1yKCl9KHRoaXMsZnVuY3Rpb24oKXt2YXIgdD10fHxmdW5jdGlvbih0LHIpe3ZhciBlPU9iamVjdC5jcmVhdGV8fGZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gZnVuY3Rpb24ocil7dmFyIGU7cmV0dXJuIHQucHJvdG90eXBlPXIsZT1uZXcgdCx0LnByb3RvdHlwZT1udWxsLGV9fSgpLGk9e30sbj1pLmxpYj17fSxvPW4uQmFzZT1mdW5jdGlvbigpe3JldHVybntleHRlbmQ6ZnVuY3Rpb24odCl7dmFyIHI9ZSh0aGlzKTtyZXR1cm4gdCYmci5taXhJbih0KSxyLmhhc093blByb3BlcnR5KFwiaW5pdFwiKSYmdGhpcy5pbml0IT09ci5pbml0fHwoci5pbml0PWZ1bmN0aW9uKCl7ci4kc3VwZXIuaW5pdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KSxyLmluaXQucHJvdG90eXBlPXIsci4kc3VwZXI9dGhpcyxyfSxjcmVhdGU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmV4dGVuZCgpO3JldHVybiB0LmluaXQuYXBwbHkodCxhcmd1bWVudHMpLHR9LGluaXQ6ZnVuY3Rpb24oKXt9LG1peEluOmZ1bmN0aW9uKHQpe2Zvcih2YXIgciBpbiB0KXQuaGFzT3duUHJvcGVydHkocikmJih0aGlzW3JdPXRbcl0pO3QuaGFzT3duUHJvcGVydHkoXCJ0b1N0cmluZ1wiKSYmKHRoaXMudG9TdHJpbmc9dC50b1N0cmluZyl9LGNsb25lOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaW5pdC5wcm90b3R5cGUuZXh0ZW5kKHRoaXMpfX19KCkscz1uLldvcmRBcnJheT1vLmV4dGVuZCh7aW5pdDpmdW5jdGlvbih0LGUpe3Q9dGhpcy53b3Jkcz10fHxbXSxlIT1yP3RoaXMuc2lnQnl0ZXM9ZTp0aGlzLnNpZ0J5dGVzPTQqdC5sZW5ndGh9LHRvU3RyaW5nOmZ1bmN0aW9uKHQpe3JldHVybih0fHxjKS5zdHJpbmdpZnkodGhpcyl9LGNvbmNhdDpmdW5jdGlvbih0KXt2YXIgcj10aGlzLndvcmRzLGU9dC53b3JkcyxpPXRoaXMuc2lnQnl0ZXMsbj10LnNpZ0J5dGVzO2lmKHRoaXMuY2xhbXAoKSxpJTQpZm9yKHZhciBvPTA7bzxuO28rKyl7dmFyIHM9ZVtvPj4+Ml0+Pj4yNC1vJTQqOCYyNTU7cltpK28+Pj4yXXw9czw8MjQtKGkrbyklNCo4fWVsc2UgZm9yKHZhciBvPTA7bzxuO28rPTQpcltpK28+Pj4yXT1lW28+Pj4yXTtyZXR1cm4gdGhpcy5zaWdCeXRlcys9bix0aGlzfSxjbGFtcDpmdW5jdGlvbigpe3ZhciByPXRoaXMud29yZHMsZT10aGlzLnNpZ0J5dGVzO3JbZT4+PjJdJj00Mjk0OTY3Mjk1PDwzMi1lJTQqOCxyLmxlbmd0aD10LmNlaWwoZS80KX0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1vLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQud29yZHM9dGhpcy53b3Jkcy5zbGljZSgwKSx0fSxyYW5kb206ZnVuY3Rpb24ocil7Zm9yKHZhciBlLGk9W10sbj1mdW5jdGlvbihyKXt2YXIgcj1yLGU9OTg3NjU0MzIxLGk9NDI5NDk2NzI5NTtyZXR1cm4gZnVuY3Rpb24oKXtlPTM2OTY5Kig2NTUzNSZlKSsoZT4+MTYpJmkscj0xOGUzKig2NTUzNSZyKSsocj4+MTYpJmk7dmFyIG49KGU8PDE2KStyJmk7cmV0dXJuIG4vPTQyOTQ5NjcyOTYsbis9LjUsbioodC5yYW5kb20oKT4uNT8xOi0xKX19LG89MDtvPHI7bys9NCl7dmFyIGE9big0Mjk0OTY3Mjk2KihlfHx0LnJhbmRvbSgpKSk7ZT05ODc2NTQwNzEqYSgpLGkucHVzaCg0Mjk0OTY3Mjk2KmEoKXwwKX1yZXR1cm4gbmV3IHMuaW5pdChpLHIpfX0pLGE9aS5lbmM9e30sYz1hLkhleD17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10LndvcmRzLGU9dC5zaWdCeXRlcyxpPVtdLG49MDtuPGU7bisrKXt2YXIgbz1yW24+Pj4yXT4+PjI0LW4lNCo4JjI1NTtpLnB1c2goKG8+Pj40KS50b1N0cmluZygxNikpLGkucHVzaCgoMTUmbykudG9TdHJpbmcoMTYpKX1yZXR1cm4gaS5qb2luKFwiXCIpfSxwYXJzZTpmdW5jdGlvbih0KXtmb3IodmFyIHI9dC5sZW5ndGgsZT1bXSxpPTA7aTxyO2krPTIpZVtpPj4+M118PXBhcnNlSW50KHQuc3Vic3RyKGksMiksMTYpPDwyNC1pJTgqNDtyZXR1cm4gbmV3IHMuaW5pdChlLHIvMil9fSxoPWEuTGF0aW4xPXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7Zm9yKHZhciByPXQud29yZHMsZT10LnNpZ0J5dGVzLGk9W10sbj0wO248ZTtuKyspe3ZhciBvPXJbbj4+PjJdPj4+MjQtbiU0KjgmMjU1O2kucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKX1yZXR1cm4gaS5qb2luKFwiXCIpfSxwYXJzZTpmdW5jdGlvbih0KXtmb3IodmFyIHI9dC5sZW5ndGgsZT1bXSxpPTA7aTxyO2krKyllW2k+Pj4yXXw9KDI1NSZ0LmNoYXJDb2RlQXQoaSkpPDwyNC1pJTQqODtyZXR1cm4gbmV3IHMuaW5pdChlLHIpfX0sbD1hLlV0Zjg9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUoaC5zdHJpbmdpZnkodCkpKX1jYXRjaCh0KXt0aHJvdyBuZXcgRXJyb3IoXCJNYWxmb3JtZWQgVVRGLTggZGF0YVwiKX19LHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVybiBoLnBhcnNlKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudCh0KSkpfX0sZj1uLkJ1ZmZlcmVkQmxvY2tBbGdvcml0aG09by5leHRlbmQoe3Jlc2V0OmZ1bmN0aW9uKCl7dGhpcy5fZGF0YT1uZXcgcy5pbml0LHRoaXMuX25EYXRhQnl0ZXM9MH0sX2FwcGVuZDpmdW5jdGlvbih0KXtcInN0cmluZ1wiPT10eXBlb2YgdCYmKHQ9bC5wYXJzZSh0KSksdGhpcy5fZGF0YS5jb25jYXQodCksdGhpcy5fbkRhdGFCeXRlcys9dC5zaWdCeXRlc30sX3Byb2Nlc3M6ZnVuY3Rpb24ocil7dmFyIGU9dGhpcy5fZGF0YSxpPWUud29yZHMsbj1lLnNpZ0J5dGVzLG89dGhpcy5ibG9ja1NpemUsYT00Km8sYz1uL2E7Yz1yP3QuY2VpbChjKTp0Lm1heCgoMHxjKS10aGlzLl9taW5CdWZmZXJTaXplLDApO3ZhciBoPWMqbyxsPXQubWluKDQqaCxuKTtpZihoKXtmb3IodmFyIGY9MDtmPGg7Zis9byl0aGlzLl9kb1Byb2Nlc3NCbG9jayhpLGYpO3ZhciB1PWkuc3BsaWNlKDAsaCk7ZS5zaWdCeXRlcy09bH1yZXR1cm4gbmV3IHMuaW5pdCh1LGwpfSxjbG9uZTpmdW5jdGlvbigpe3ZhciB0PW8uY2xvbmUuY2FsbCh0aGlzKTtyZXR1cm4gdC5fZGF0YT10aGlzLl9kYXRhLmNsb25lKCksdH0sX21pbkJ1ZmZlclNpemU6MH0pLHU9KG4uSGFzaGVyPWYuZXh0ZW5kKHtjZmc6by5leHRlbmQoKSxpbml0OmZ1bmN0aW9uKHQpe3RoaXMuY2ZnPXRoaXMuY2ZnLmV4dGVuZCh0KSx0aGlzLnJlc2V0KCl9LHJlc2V0OmZ1bmN0aW9uKCl7Zi5yZXNldC5jYWxsKHRoaXMpLHRoaXMuX2RvUmVzZXQoKX0sdXBkYXRlOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9hcHBlbmQodCksdGhpcy5fcHJvY2VzcygpLHRoaXN9LGZpbmFsaXplOmZ1bmN0aW9uKHQpe3QmJnRoaXMuX2FwcGVuZCh0KTt2YXIgcj10aGlzLl9kb0ZpbmFsaXplKCk7cmV0dXJuIHJ9LGJsb2NrU2l6ZToxNixfY3JlYXRlSGVscGVyOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUpe3JldHVybiBuZXcgdC5pbml0KGUpLmZpbmFsaXplKHIpfX0sX2NyZWF0ZUhtYWNIZWxwZXI6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIsZSl7cmV0dXJuIG5ldyB1LkhNQUMuaW5pdCh0LGUpLmZpbmFsaXplKHIpfX19KSxpLmFsZ289e30pO3JldHVybiBpfShNYXRoKTtyZXR1cm4gZnVuY3Rpb24oKXtmdW5jdGlvbiByKHQscixlKXtmb3IodmFyIGk9W10sbz0wLHM9MDtzPHI7cysrKWlmKHMlNCl7dmFyIGE9ZVt0LmNoYXJDb2RlQXQocy0xKV08PHMlNCoyLGM9ZVt0LmNoYXJDb2RlQXQocyldPj4+Ni1zJTQqMjtpW28+Pj4yXXw9KGF8Yyk8PDI0LW8lNCo4LG8rK31yZXR1cm4gbi5jcmVhdGUoaSxvKX12YXIgZT10LGk9ZS5saWIsbj1pLldvcmRBcnJheSxvPWUuZW5jO28uQmFzZTY0PXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7dmFyIHI9dC53b3JkcyxlPXQuc2lnQnl0ZXMsaT10aGlzLl9tYXA7dC5jbGFtcCgpO2Zvcih2YXIgbj1bXSxvPTA7bzxlO28rPTMpZm9yKHZhciBzPXJbbz4+PjJdPj4+MjQtbyU0KjgmMjU1LGE9cltvKzE+Pj4yXT4+PjI0LShvKzEpJTQqOCYyNTUsYz1yW28rMj4+PjJdPj4+MjQtKG8rMiklNCo4JjI1NSxoPXM8PDE2fGE8PDh8YyxsPTA7bDw0JiZvKy43NSpsPGU7bCsrKW4ucHVzaChpLmNoYXJBdChoPj4+NiooMy1sKSY2MykpO3ZhciBmPWkuY2hhckF0KDY0KTtpZihmKWZvcig7bi5sZW5ndGglNDspbi5wdXNoKGYpO3JldHVybiBuLmpvaW4oXCJcIil9LHBhcnNlOmZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLGk9dGhpcy5fbWFwLG49dGhpcy5fcmV2ZXJzZU1hcDtpZighbil7bj10aGlzLl9yZXZlcnNlTWFwPVtdO2Zvcih2YXIgbz0wO288aS5sZW5ndGg7bysrKW5baS5jaGFyQ29kZUF0KG8pXT1vfXZhciBzPWkuY2hhckF0KDY0KTtpZihzKXt2YXIgYT10LmluZGV4T2Yocyk7YSE9PS0xJiYoZT1hKX1yZXR1cm4gcih0LGUsbil9LF9tYXA6XCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPVwifX0oKSxmdW5jdGlvbihyKXtmdW5jdGlvbiBlKHQscixlLGksbixvLHMpe3ZhciBhPXQrKHImZXx+ciZpKStuK3M7cmV0dXJuKGE8PG98YT4+PjMyLW8pK3J9ZnVuY3Rpb24gaSh0LHIsZSxpLG4sbyxzKXt2YXIgYT10KyhyJml8ZSZ+aSkrbitzO3JldHVybihhPDxvfGE+Pj4zMi1vKStyfWZ1bmN0aW9uIG4odCxyLGUsaSxuLG8scyl7dmFyIGE9dCsocl5lXmkpK24rcztyZXR1cm4oYTw8b3xhPj4+MzItbykrcn1mdW5jdGlvbiBvKHQscixlLGksbixvLHMpe3ZhciBhPXQrKGVeKHJ8fmkpKStuK3M7cmV0dXJuKGE8PG98YT4+PjMyLW8pK3J9dmFyIHM9dCxhPXMubGliLGM9YS5Xb3JkQXJyYXksaD1hLkhhc2hlcixsPXMuYWxnbyxmPVtdOyFmdW5jdGlvbigpe2Zvcih2YXIgdD0wO3Q8NjQ7dCsrKWZbdF09NDI5NDk2NzI5NipyLmFicyhyLnNpbih0KzEpKXwwfSgpO3ZhciB1PWwuTUQ1PWguZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bmV3IGMuaW5pdChbMTczMjU4NDE5Myw0MDIzMjMzNDE3LDI1NjIzODMxMDIsMjcxNzMzODc4XSl9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe2Zvcih2YXIgcz0wO3M8MTY7cysrKXt2YXIgYT1yK3MsYz10W2FdO3RbYV09MTY3MTE5MzUmKGM8PDh8Yz4+PjI0KXw0Mjc4MjU1MzYwJihjPDwyNHxjPj4+OCl9dmFyIGg9dGhpcy5faGFzaC53b3JkcyxsPXRbciswXSx1PXRbcisxXSxkPXRbcisyXSx2PXRbciszXSxwPXRbcis0XSxfPXRbcis1XSx5PXRbcis2XSxnPXRbcis3XSxCPXRbcis4XSx3PXRbcis5XSxrPXRbcisxMF0sUz10W3IrMTFdLG09dFtyKzEyXSx4PXRbcisxM10sYj10W3IrMTRdLEg9dFtyKzE1XSx6PWhbMF0sQT1oWzFdLEM9aFsyXSxEPWhbM107ej1lKHosQSxDLEQsbCw3LGZbMF0pLEQ9ZShELHosQSxDLHUsMTIsZlsxXSksQz1lKEMsRCx6LEEsZCwxNyxmWzJdKSxBPWUoQSxDLEQseix2LDIyLGZbM10pLHo9ZSh6LEEsQyxELHAsNyxmWzRdKSxEPWUoRCx6LEEsQyxfLDEyLGZbNV0pLEM9ZShDLEQseixBLHksMTcsZls2XSksQT1lKEEsQyxELHosZywyMixmWzddKSx6PWUoeixBLEMsRCxCLDcsZls4XSksRD1lKEQseixBLEMsdywxMixmWzldKSxDPWUoQyxELHosQSxrLDE3LGZbMTBdKSxBPWUoQSxDLEQseixTLDIyLGZbMTFdKSx6PWUoeixBLEMsRCxtLDcsZlsxMl0pLEQ9ZShELHosQSxDLHgsMTIsZlsxM10pLEM9ZShDLEQseixBLGIsMTcsZlsxNF0pLEE9ZShBLEMsRCx6LEgsMjIsZlsxNV0pLHo9aSh6LEEsQyxELHUsNSxmWzE2XSksRD1pKEQseixBLEMseSw5LGZbMTddKSxDPWkoQyxELHosQSxTLDE0LGZbMThdKSxBPWkoQSxDLEQseixsLDIwLGZbMTldKSx6PWkoeixBLEMsRCxfLDUsZlsyMF0pLEQ9aShELHosQSxDLGssOSxmWzIxXSksQz1pKEMsRCx6LEEsSCwxNCxmWzIyXSksQT1pKEEsQyxELHoscCwyMCxmWzIzXSksej1pKHosQSxDLEQsdyw1LGZbMjRdKSxEPWkoRCx6LEEsQyxiLDksZlsyNV0pLEM9aShDLEQseixBLHYsMTQsZlsyNl0pLEE9aShBLEMsRCx6LEIsMjAsZlsyN10pLHo9aSh6LEEsQyxELHgsNSxmWzI4XSksRD1pKEQseixBLEMsZCw5LGZbMjldKSxDPWkoQyxELHosQSxnLDE0LGZbMzBdKSxBPWkoQSxDLEQseixtLDIwLGZbMzFdKSx6PW4oeixBLEMsRCxfLDQsZlszMl0pLEQ9bihELHosQSxDLEIsMTEsZlszM10pLEM9bihDLEQseixBLFMsMTYsZlszNF0pLEE9bihBLEMsRCx6LGIsMjMsZlszNV0pLHo9bih6LEEsQyxELHUsNCxmWzM2XSksRD1uKEQseixBLEMscCwxMSxmWzM3XSksQz1uKEMsRCx6LEEsZywxNixmWzM4XSksQT1uKEEsQyxELHosaywyMyxmWzM5XSksej1uKHosQSxDLEQseCw0LGZbNDBdKSxEPW4oRCx6LEEsQyxsLDExLGZbNDFdKSxDPW4oQyxELHosQSx2LDE2LGZbNDJdKSxBPW4oQSxDLEQseix5LDIzLGZbNDNdKSx6PW4oeixBLEMsRCx3LDQsZls0NF0pLEQ9bihELHosQSxDLG0sMTEsZls0NV0pLEM9bihDLEQseixBLEgsMTYsZls0Nl0pLEE9bihBLEMsRCx6LGQsMjMsZls0N10pLHo9byh6LEEsQyxELGwsNixmWzQ4XSksRD1vKEQseixBLEMsZywxMCxmWzQ5XSksQz1vKEMsRCx6LEEsYiwxNSxmWzUwXSksQT1vKEEsQyxELHosXywyMSxmWzUxXSksej1vKHosQSxDLEQsbSw2LGZbNTJdKSxEPW8oRCx6LEEsQyx2LDEwLGZbNTNdKSxDPW8oQyxELHosQSxrLDE1LGZbNTRdKSxBPW8oQSxDLEQseix1LDIxLGZbNTVdKSx6PW8oeixBLEMsRCxCLDYsZls1Nl0pLEQ9byhELHosQSxDLEgsMTAsZls1N10pLEM9byhDLEQseixBLHksMTUsZls1OF0pLEE9byhBLEMsRCx6LHgsMjEsZls1OV0pLHo9byh6LEEsQyxELHAsNixmWzYwXSksRD1vKEQseixBLEMsUywxMCxmWzYxXSksQz1vKEMsRCx6LEEsZCwxNSxmWzYyXSksQT1vKEEsQyxELHosdywyMSxmWzYzXSksaFswXT1oWzBdK3p8MCxoWzFdPWhbMV0rQXwwLGhbMl09aFsyXStDfDAsaFszXT1oWzNdK0R8MH0sX2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9kYXRhLGU9dC53b3JkcyxpPTgqdGhpcy5fbkRhdGFCeXRlcyxuPTgqdC5zaWdCeXRlcztlW24+Pj41XXw9MTI4PDwyNC1uJTMyO3ZhciBvPXIuZmxvb3IoaS80Mjk0OTY3Mjk2KSxzPWk7ZVsobis2ND4+Pjk8PDQpKzE1XT0xNjcxMTkzNSYobzw8OHxvPj4+MjQpfDQyNzgyNTUzNjAmKG88PDI0fG8+Pj44KSxlWyhuKzY0Pj4+OTw8NCkrMTRdPTE2NzExOTM1JihzPDw4fHM+Pj4yNCl8NDI3ODI1NTM2MCYoczw8MjR8cz4+PjgpLHQuc2lnQnl0ZXM9NCooZS5sZW5ndGgrMSksdGhpcy5fcHJvY2VzcygpO2Zvcih2YXIgYT10aGlzLl9oYXNoLGM9YS53b3JkcyxoPTA7aDw0O2grKyl7dmFyIGw9Y1toXTtjW2hdPTE2NzExOTM1JihsPDw4fGw+Pj4yNCl8NDI3ODI1NTM2MCYobDw8MjR8bD4+PjgpfXJldHVybiBhfSxjbG9uZTpmdW5jdGlvbigpe3ZhciB0PWguY2xvbmUuY2FsbCh0aGlzKTtyZXR1cm4gdC5faGFzaD10aGlzLl9oYXNoLmNsb25lKCksdH19KTtzLk1ENT1oLl9jcmVhdGVIZWxwZXIodSkscy5IbWFjTUQ1PWguX2NyZWF0ZUhtYWNIZWxwZXIodSl9KE1hdGgpLGZ1bmN0aW9uKCl7dmFyIHI9dCxlPXIubGliLGk9ZS5Xb3JkQXJyYXksbj1lLkhhc2hlcixvPXIuYWxnbyxzPVtdLGE9by5TSEExPW4uZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bmV3IGkuaW5pdChbMTczMjU4NDE5Myw0MDIzMjMzNDE3LDI1NjIzODMxMDIsMjcxNzMzODc4LDMyODUzNzc1MjBdKX0sX2RvUHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPXRoaXMuX2hhc2gud29yZHMsaT1lWzBdLG49ZVsxXSxvPWVbMl0sYT1lWzNdLGM9ZVs0XSxoPTA7aDw4MDtoKyspe2lmKGg8MTYpc1toXT0wfHRbcitoXTtlbHNle3ZhciBsPXNbaC0zXV5zW2gtOF1ec1toLTE0XV5zW2gtMTZdO3NbaF09bDw8MXxsPj4+MzF9dmFyIGY9KGk8PDV8aT4+PjI3KStjK3NbaF07Zis9aDwyMD8obiZvfH5uJmEpKzE1MTg1MDAyNDk6aDw0MD8obl5vXmEpKzE4NTk3NzUzOTM6aDw2MD8obiZvfG4mYXxvJmEpLTE4OTQwMDc1ODg6KG5eb15hKS04OTk0OTc1MTQsYz1hLGE9byxvPW48PDMwfG4+Pj4yLG49aSxpPWZ9ZVswXT1lWzBdK2l8MCxlWzFdPWVbMV0rbnwwLGVbMl09ZVsyXStvfDAsZVszXT1lWzNdK2F8MCxlWzRdPWVbNF0rY3wwfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2RhdGEscj10LndvcmRzLGU9OCp0aGlzLl9uRGF0YUJ5dGVzLGk9OCp0LnNpZ0J5dGVzO3JldHVybiByW2k+Pj41XXw9MTI4PDwyNC1pJTMyLHJbKGkrNjQ+Pj45PDw0KSsxNF09TWF0aC5mbG9vcihlLzQyOTQ5NjcyOTYpLHJbKGkrNjQ+Pj45PDw0KSsxNV09ZSx0LnNpZ0J5dGVzPTQqci5sZW5ndGgsdGhpcy5fcHJvY2VzcygpLHRoaXMuX2hhc2h9LGNsb25lOmZ1bmN0aW9uKCl7dmFyIHQ9bi5jbG9uZS5jYWxsKHRoaXMpO3JldHVybiB0Ll9oYXNoPXRoaXMuX2hhc2guY2xvbmUoKSx0fX0pO3IuU0hBMT1uLl9jcmVhdGVIZWxwZXIoYSksci5IbWFjU0hBMT1uLl9jcmVhdGVIbWFjSGVscGVyKGEpfSgpLGZ1bmN0aW9uKHIpe3ZhciBlPXQsaT1lLmxpYixuPWkuV29yZEFycmF5LG89aS5IYXNoZXIscz1lLmFsZ28sYT1bXSxjPVtdOyFmdW5jdGlvbigpe2Z1bmN0aW9uIHQodCl7Zm9yKHZhciBlPXIuc3FydCh0KSxpPTI7aTw9ZTtpKyspaWYoISh0JWkpKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGUodCl7cmV0dXJuIDQyOTQ5NjcyOTYqKHQtKDB8dCkpfDB9Zm9yKHZhciBpPTIsbj0wO248NjQ7KXQoaSkmJihuPDgmJihhW25dPWUoci5wb3coaSwuNSkpKSxjW25dPWUoci5wb3coaSwxLzMpKSxuKyspLGkrK30oKTt2YXIgaD1bXSxsPXMuU0hBMjU2PW8uZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bmV3IG4uaW5pdChhLnNsaWNlKDApKX0sX2RvUHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPXRoaXMuX2hhc2gud29yZHMsaT1lWzBdLG49ZVsxXSxvPWVbMl0scz1lWzNdLGE9ZVs0XSxsPWVbNV0sZj1lWzZdLHU9ZVs3XSxkPTA7ZDw2NDtkKyspe2lmKGQ8MTYpaFtkXT0wfHRbcitkXTtlbHNle3ZhciB2PWhbZC0xNV0scD0odjw8MjV8dj4+PjcpXih2PDwxNHx2Pj4+MTgpXnY+Pj4zLF89aFtkLTJdLHk9KF88PDE1fF8+Pj4xNyleKF88PDEzfF8+Pj4xOSleXz4+PjEwO2hbZF09cCtoW2QtN10reStoW2QtMTZdfXZhciBnPWEmbF5+YSZmLEI9aSZuXmkmb15uJm8sdz0oaTw8MzB8aT4+PjIpXihpPDwxOXxpPj4+MTMpXihpPDwxMHxpPj4+MjIpLGs9KGE8PDI2fGE+Pj42KV4oYTw8MjF8YT4+PjExKV4oYTw8N3xhPj4+MjUpLFM9dStrK2crY1tkXStoW2RdLG09dytCO3U9ZixmPWwsbD1hLGE9cytTfDAscz1vLG89bixuPWksaT1TK218MH1lWzBdPWVbMF0raXwwLGVbMV09ZVsxXStufDAsZVsyXT1lWzJdK298MCxlWzNdPWVbM10rc3wwLGVbNF09ZVs0XSthfDAsZVs1XT1lWzVdK2x8MCxlWzZdPWVbNl0rZnwwLGVbN109ZVs3XSt1fDB9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxlPXQud29yZHMsaT04KnRoaXMuX25EYXRhQnl0ZXMsbj04KnQuc2lnQnl0ZXM7cmV0dXJuIGVbbj4+PjVdfD0xMjg8PDI0LW4lMzIsZVsobis2ND4+Pjk8PDQpKzE0XT1yLmZsb29yKGkvNDI5NDk2NzI5NiksZVsobis2ND4+Pjk8PDQpKzE1XT1pLHQuc2lnQnl0ZXM9NCplLmxlbmd0aCx0aGlzLl9wcm9jZXNzKCksdGhpcy5faGFzaH0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1vLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQuX2hhc2g9dGhpcy5faGFzaC5jbG9uZSgpLHR9fSk7ZS5TSEEyNTY9by5fY3JlYXRlSGVscGVyKGwpLGUuSG1hY1NIQTI1Nj1vLl9jcmVhdGVIbWFjSGVscGVyKGwpfShNYXRoKSxmdW5jdGlvbigpe2Z1bmN0aW9uIHIodCl7cmV0dXJuIHQ8PDgmNDI3ODI1NTM2MHx0Pj4+OCYxNjcxMTkzNX12YXIgZT10LGk9ZS5saWIsbj1pLldvcmRBcnJheSxvPWUuZW5jO28uVXRmMTY9by5VdGYxNkJFPXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7Zm9yKHZhciByPXQud29yZHMsZT10LnNpZ0J5dGVzLGk9W10sbj0wO248ZTtuKz0yKXt2YXIgbz1yW24+Pj4yXT4+PjE2LW4lNCo4JjY1NTM1O2kucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKX1yZXR1cm4gaS5qb2luKFwiXCIpfSxwYXJzZTpmdW5jdGlvbih0KXtmb3IodmFyIHI9dC5sZW5ndGgsZT1bXSxpPTA7aTxyO2krKyllW2k+Pj4xXXw9dC5jaGFyQ29kZUF0KGkpPDwxNi1pJTIqMTY7cmV0dXJuIG4uY3JlYXRlKGUsMipyKX19O28uVXRmMTZMRT17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10LndvcmRzLGk9dC5zaWdCeXRlcyxuPVtdLG89MDtvPGk7bys9Mil7dmFyIHM9cihlW28+Pj4yXT4+PjE2LW8lNCo4JjY1NTM1KTtuLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShzKSl9cmV0dXJuIG4uam9pbihcIlwiKX0scGFyc2U6ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXQubGVuZ3RoLGk9W10sbz0wO288ZTtvKyspaVtvPj4+MV18PXIodC5jaGFyQ29kZUF0KG8pPDwxNi1vJTIqMTYpO3JldHVybiBuLmNyZWF0ZShpLDIqZSl9fX0oKSxmdW5jdGlvbigpe2lmKFwiZnVuY3Rpb25cIj09dHlwZW9mIEFycmF5QnVmZmVyKXt2YXIgcj10LGU9ci5saWIsaT1lLldvcmRBcnJheSxuPWkuaW5pdCxvPWkuaW5pdD1mdW5jdGlvbih0KXtpZih0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXImJih0PW5ldyBVaW50OEFycmF5KHQpKSwodCBpbnN0YW5jZW9mIEludDhBcnJheXx8XCJ1bmRlZmluZWRcIiE9dHlwZW9mIFVpbnQ4Q2xhbXBlZEFycmF5JiZ0IGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXl8fHQgaW5zdGFuY2VvZiBJbnQxNkFycmF5fHx0IGluc3RhbmNlb2YgVWludDE2QXJyYXl8fHQgaW5zdGFuY2VvZiBJbnQzMkFycmF5fHx0IGluc3RhbmNlb2YgVWludDMyQXJyYXl8fHQgaW5zdGFuY2VvZiBGbG9hdDMyQXJyYXl8fHQgaW5zdGFuY2VvZiBGbG9hdDY0QXJyYXkpJiYodD1uZXcgVWludDhBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoKSksdCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpe2Zvcih2YXIgcj10LmJ5dGVMZW5ndGgsZT1bXSxpPTA7aTxyO2krKyllW2k+Pj4yXXw9dFtpXTw8MjQtaSU0Kjg7bi5jYWxsKHRoaXMsZSxyKX1lbHNlIG4uYXBwbHkodGhpcyxhcmd1bWVudHMpfTtvLnByb3RvdHlwZT1pfX0oKSxmdW5jdGlvbihyKXtmdW5jdGlvbiBlKHQscixlKXtyZXR1cm4gdF5yXmV9ZnVuY3Rpb24gaSh0LHIsZSl7cmV0dXJuIHQmcnx+dCZlfWZ1bmN0aW9uIG4odCxyLGUpe3JldHVybih0fH5yKV5lfWZ1bmN0aW9uIG8odCxyLGUpe3JldHVybiB0JmV8ciZ+ZX1mdW5jdGlvbiBzKHQscixlKXtyZXR1cm4gdF4ocnx+ZSl9ZnVuY3Rpb24gYSh0LHIpe3JldHVybiB0PDxyfHQ+Pj4zMi1yfXZhciBjPXQsaD1jLmxpYixsPWguV29yZEFycmF5LGY9aC5IYXNoZXIsdT1jLmFsZ28sZD1sLmNyZWF0ZShbMCwxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNSw3LDQsMTMsMSwxMCw2LDE1LDMsMTIsMCw5LDUsMiwxNCwxMSw4LDMsMTAsMTQsNCw5LDE1LDgsMSwyLDcsMCw2LDEzLDExLDUsMTIsMSw5LDExLDEwLDAsOCwxMiw0LDEzLDMsNywxNSwxNCw1LDYsMiw0LDAsNSw5LDcsMTIsMiwxMCwxNCwxLDMsOCwxMSw2LDE1LDEzXSksdj1sLmNyZWF0ZShbNSwxNCw3LDAsOSwyLDExLDQsMTMsNiwxNSw4LDEsMTAsMywxMiw2LDExLDMsNywwLDEzLDUsMTAsMTQsMTUsOCwxMiw0LDksMSwyLDE1LDUsMSwzLDcsMTQsNiw5LDExLDgsMTIsMiwxMCwwLDQsMTMsOCw2LDQsMSwzLDExLDE1LDAsNSwxMiwyLDEzLDksNywxMCwxNCwxMiwxNSwxMCw0LDEsNSw4LDcsNiwyLDEzLDE0LDAsMyw5LDExXSkscD1sLmNyZWF0ZShbMTEsMTQsMTUsMTIsNSw4LDcsOSwxMSwxMywxNCwxNSw2LDcsOSw4LDcsNiw4LDEzLDExLDksNywxNSw3LDEyLDE1LDksMTEsNywxMywxMiwxMSwxMyw2LDcsMTQsOSwxMywxNSwxNCw4LDEzLDYsNSwxMiw3LDUsMTEsMTIsMTQsMTUsMTQsMTUsOSw4LDksMTQsNSw2LDgsNiw1LDEyLDksMTUsNSwxMSw2LDgsMTMsMTIsNSwxMiwxMywxNCwxMSw4LDUsNl0pLF89bC5jcmVhdGUoWzgsOSw5LDExLDEzLDE1LDE1LDUsNyw3LDgsMTEsMTQsMTQsMTIsNiw5LDEzLDE1LDcsMTIsOCw5LDExLDcsNywxMiw3LDYsMTUsMTMsMTEsOSw3LDE1LDExLDgsNiw2LDE0LDEyLDEzLDUsMTQsMTMsMTMsNyw1LDE1LDUsOCwxMSwxNCwxNCw2LDE0LDYsOSwxMiw5LDEyLDUsMTUsOCw4LDUsMTIsOSwxMiw1LDE0LDYsOCwxMyw2LDUsMTUsMTMsMTEsMTFdKSx5PWwuY3JlYXRlKFswLDE1MTg1MDAyNDksMTg1OTc3NTM5MywyNDAwOTU5NzA4LDI4NDA4NTM4MzhdKSxnPWwuY3JlYXRlKFsxMzUyODI5OTI2LDE1NDg2MDM2ODQsMTgzNjA3MjY5MSwyMDUzOTk0MjE3LDBdKSxCPXUuUklQRU1EMTYwPWYuZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bC5jcmVhdGUoWzE3MzI1ODQxOTMsNDAyMzIzMzQxNywyNTYyMzgzMTAyLDI3MTczMzg3OCwzMjg1Mzc3NTIwXSl9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe2Zvcih2YXIgYz0wO2M8MTY7YysrKXt2YXIgaD1yK2MsbD10W2hdO3RbaF09MTY3MTE5MzUmKGw8PDh8bD4+PjI0KXw0Mjc4MjU1MzYwJihsPDwyNHxsPj4+OCl9dmFyIGYsdSxCLHcsayxTLG0seCxiLEgsej10aGlzLl9oYXNoLndvcmRzLEE9eS53b3JkcyxDPWcud29yZHMsRD1kLndvcmRzLFI9di53b3JkcyxFPXAud29yZHMsTT1fLndvcmRzO1M9Zj16WzBdLG09dT16WzFdLHg9Qj16WzJdLGI9dz16WzNdLEg9az16WzRdO2Zvcih2YXIgRixjPTA7Yzw4MDtjKz0xKUY9Zit0W3IrRFtjXV18MCxGKz1jPDE2P2UodSxCLHcpK0FbMF06YzwzMj9pKHUsQix3KStBWzFdOmM8NDg/bih1LEIsdykrQVsyXTpjPDY0P28odSxCLHcpK0FbM106cyh1LEIsdykrQVs0XSxGfD0wLEY9YShGLEVbY10pLEY9RitrfDAsZj1rLGs9dyx3PWEoQiwxMCksQj11LHU9RixGPVMrdFtyK1JbY11dfDAsRis9YzwxNj9zKG0seCxiKStDWzBdOmM8MzI/byhtLHgsYikrQ1sxXTpjPDQ4P24obSx4LGIpK0NbMl06Yzw2ND9pKG0seCxiKStDWzNdOmUobSx4LGIpK0NbNF0sRnw9MCxGPWEoRixNW2NdKSxGPUYrSHwwLFM9SCxIPWIsYj1hKHgsMTApLHg9bSxtPUY7Rj16WzFdK0IrYnwwLHpbMV09elsyXSt3K0h8MCx6WzJdPXpbM10raytTfDAselszXT16WzRdK2YrbXwwLHpbNF09elswXSt1K3h8MCx6WzBdPUZ9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxyPXQud29yZHMsZT04KnRoaXMuX25EYXRhQnl0ZXMsaT04KnQuc2lnQnl0ZXM7cltpPj4+NV18PTEyODw8MjQtaSUzMixyWyhpKzY0Pj4+OTw8NCkrMTRdPTE2NzExOTM1JihlPDw4fGU+Pj4yNCl8NDI3ODI1NTM2MCYoZTw8MjR8ZT4+PjgpLHQuc2lnQnl0ZXM9NCooci5sZW5ndGgrMSksdGhpcy5fcHJvY2VzcygpO2Zvcih2YXIgbj10aGlzLl9oYXNoLG89bi53b3JkcyxzPTA7czw1O3MrKyl7dmFyIGE9b1tzXTtvW3NdPTE2NzExOTM1JihhPDw4fGE+Pj4yNCl8NDI3ODI1NTM2MCYoYTw8MjR8YT4+PjgpfXJldHVybiBufSxjbG9uZTpmdW5jdGlvbigpe3ZhciB0PWYuY2xvbmUuY2FsbCh0aGlzKTtyZXR1cm4gdC5faGFzaD10aGlzLl9oYXNoLmNsb25lKCksdH19KTtjLlJJUEVNRDE2MD1mLl9jcmVhdGVIZWxwZXIoQiksYy5IbWFjUklQRU1EMTYwPWYuX2NyZWF0ZUhtYWNIZWxwZXIoQil9KE1hdGgpLGZ1bmN0aW9uKCl7dmFyIHI9dCxlPXIubGliLGk9ZS5CYXNlLG49ci5lbmMsbz1uLlV0Zjgscz1yLmFsZ287cy5ITUFDPWkuZXh0ZW5kKHtpbml0OmZ1bmN0aW9uKHQscil7dD10aGlzLl9oYXNoZXI9bmV3IHQuaW5pdCxcInN0cmluZ1wiPT10eXBlb2YgciYmKHI9by5wYXJzZShyKSk7dmFyIGU9dC5ibG9ja1NpemUsaT00KmU7ci5zaWdCeXRlcz5pJiYocj10LmZpbmFsaXplKHIpKSxyLmNsYW1wKCk7Zm9yKHZhciBuPXRoaXMuX29LZXk9ci5jbG9uZSgpLHM9dGhpcy5faUtleT1yLmNsb25lKCksYT1uLndvcmRzLGM9cy53b3JkcyxoPTA7aDxlO2grKylhW2hdXj0xNTQ5NTU2ODI4LGNbaF1ePTkwOTUyMjQ4NjtuLnNpZ0J5dGVzPXMuc2lnQnl0ZXM9aSx0aGlzLnJlc2V0KCl9LHJlc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5faGFzaGVyO3QucmVzZXQoKSx0LnVwZGF0ZSh0aGlzLl9pS2V5KX0sdXBkYXRlOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9oYXNoZXIudXBkYXRlKHQpLHRoaXN9LGZpbmFsaXplOmZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX2hhc2hlcixlPXIuZmluYWxpemUodCk7ci5yZXNldCgpO3ZhciBpPXIuZmluYWxpemUodGhpcy5fb0tleS5jbG9uZSgpLmNvbmNhdChlKSk7cmV0dXJuIGl9fSl9KCksZnVuY3Rpb24oKXt2YXIgcj10LGU9ci5saWIsaT1lLkJhc2Usbj1lLldvcmRBcnJheSxvPXIuYWxnbyxzPW8uU0hBMSxhPW8uSE1BQyxjPW8uUEJLREYyPWkuZXh0ZW5kKHtjZmc6aS5leHRlbmQoe2tleVNpemU6NCxoYXNoZXI6cyxpdGVyYXRpb25zOjF9KSxpbml0OmZ1bmN0aW9uKHQpe3RoaXMuY2ZnPXRoaXMuY2ZnLmV4dGVuZCh0KX0sY29tcHV0ZTpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT10aGlzLmNmZyxpPWEuY3JlYXRlKGUuaGFzaGVyLHQpLG89bi5jcmVhdGUoKSxzPW4uY3JlYXRlKFsxXSksYz1vLndvcmRzLGg9cy53b3JkcyxsPWUua2V5U2l6ZSxmPWUuaXRlcmF0aW9ucztjLmxlbmd0aDxsOyl7dmFyIHU9aS51cGRhdGUocikuZmluYWxpemUocyk7aS5yZXNldCgpO2Zvcih2YXIgZD11LndvcmRzLHY9ZC5sZW5ndGgscD11LF89MTtfPGY7XysrKXtwPWkuZmluYWxpemUocCksaS5yZXNldCgpO2Zvcih2YXIgeT1wLndvcmRzLGc9MDtnPHY7ZysrKWRbZ11ePXlbZ119by5jb25jYXQodSksaFswXSsrfXJldHVybiBvLnNpZ0J5dGVzPTQqbCxvfX0pO3IuUEJLREYyPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gYy5jcmVhdGUoZSkuY29tcHV0ZSh0LHIpfX0oKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLmxpYixpPWUuQmFzZSxuPWUuV29yZEFycmF5LG89ci5hbGdvLHM9by5NRDUsYT1vLkV2cEtERj1pLmV4dGVuZCh7Y2ZnOmkuZXh0ZW5kKHtrZXlTaXplOjQsaGFzaGVyOnMsaXRlcmF0aW9uczoxfSksaW5pdDpmdW5jdGlvbih0KXt0aGlzLmNmZz10aGlzLmNmZy5leHRlbmQodCl9LGNvbXB1dGU6ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dGhpcy5jZmcsaT1lLmhhc2hlci5jcmVhdGUoKSxvPW4uY3JlYXRlKCkscz1vLndvcmRzLGE9ZS5rZXlTaXplLGM9ZS5pdGVyYXRpb25zO3MubGVuZ3RoPGE7KXtoJiZpLnVwZGF0ZShoKTt2YXIgaD1pLnVwZGF0ZSh0KS5maW5hbGl6ZShyKTtpLnJlc2V0KCk7Zm9yKHZhciBsPTE7bDxjO2wrKyloPWkuZmluYWxpemUoaCksaS5yZXNldCgpO28uY29uY2F0KGgpfXJldHVybiBvLnNpZ0J5dGVzPTQqYSxvfX0pO3IuRXZwS0RGPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gYS5jcmVhdGUoZSkuY29tcHV0ZSh0LHIpfX0oKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLmxpYixpPWUuV29yZEFycmF5LG49ci5hbGdvLG89bi5TSEEyNTYscz1uLlNIQTIyND1vLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBpLmluaXQoWzMyMzgzNzEwMzIsOTE0MTUwNjYzLDgxMjcwMjk5OSw0MTQ0OTEyNjk3LDQyOTA3NzU4NTcsMTc1MDYwMzAyNSwxNjk0MDc2ODM5LDMyMDQwNzU0MjhdKX0sX2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD1vLl9kb0ZpbmFsaXplLmNhbGwodGhpcyk7cmV0dXJuIHQuc2lnQnl0ZXMtPTQsdH19KTtyLlNIQTIyND1vLl9jcmVhdGVIZWxwZXIocyksci5IbWFjU0hBMjI0PW8uX2NyZWF0ZUhtYWNIZWxwZXIocyl9KCksZnVuY3Rpb24ocil7dmFyIGU9dCxpPWUubGliLG49aS5CYXNlLG89aS5Xb3JkQXJyYXkscz1lLng2ND17fTtzLldvcmQ9bi5leHRlbmQoe2luaXQ6ZnVuY3Rpb24odCxyKXt0aGlzLmhpZ2g9dCx0aGlzLmxvdz1yfX0pLHMuV29yZEFycmF5PW4uZXh0ZW5kKHtpbml0OmZ1bmN0aW9uKHQsZSl7dD10aGlzLndvcmRzPXR8fFtdLGUhPXI/dGhpcy5zaWdCeXRlcz1lOnRoaXMuc2lnQnl0ZXM9OCp0Lmxlbmd0aH0sdG9YMzI6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy53b3JkcyxyPXQubGVuZ3RoLGU9W10saT0wO2k8cjtpKyspe3ZhciBuPXRbaV07ZS5wdXNoKG4uaGlnaCksZS5wdXNoKG4ubG93KX1yZXR1cm4gby5jcmVhdGUoZSx0aGlzLnNpZ0J5dGVzKX0sY2xvbmU6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9bi5jbG9uZS5jYWxsKHRoaXMpLHI9dC53b3Jkcz10aGlzLndvcmRzLnNsaWNlKDApLGU9ci5sZW5ndGgsaT0wO2k8ZTtpKyspcltpXT1yW2ldLmNsb25lKCk7cmV0dXJuIHR9fSl9KCksZnVuY3Rpb24ocil7dmFyIGU9dCxpPWUubGliLG49aS5Xb3JkQXJyYXksbz1pLkhhc2hlcixzPWUueDY0LGE9cy5Xb3JkLGM9ZS5hbGdvLGg9W10sbD1bXSxmPVtdOyFmdW5jdGlvbigpe2Zvcih2YXIgdD0xLHI9MCxlPTA7ZTwyNDtlKyspe2hbdCs1KnJdPShlKzEpKihlKzIpLzIlNjQ7dmFyIGk9ciU1LG49KDIqdCszKnIpJTU7dD1pLHI9bn1mb3IodmFyIHQ9MDt0PDU7dCsrKWZvcih2YXIgcj0wO3I8NTtyKyspbFt0KzUqcl09cisoMip0KzMqciklNSo1O2Zvcih2YXIgbz0xLHM9MDtzPDI0O3MrKyl7Zm9yKHZhciBjPTAsdT0wLGQ9MDtkPDc7ZCsrKXtpZigxJm8pe3ZhciB2PSgxPDxkKS0xO3Y8MzI/dV49MTw8djpjXj0xPDx2LTMyfTEyOCZvP289bzw8MV4xMTM6bzw8PTF9ZltzXT1hLmNyZWF0ZShjLHUpfX0oKTt2YXIgdT1bXTshZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDt0PDI1O3QrKyl1W3RdPWEuY3JlYXRlKCl9KCk7dmFyIGQ9Yy5TSEEzPW8uZXh0ZW5kKHtjZmc6by5jZmcuZXh0ZW5kKHtvdXRwdXRMZW5ndGg6NTEyfSksX2RvUmVzZXQ6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5fc3RhdGU9W10scj0wO3I8MjU7cisrKXRbcl09bmV3IGEuaW5pdDt0aGlzLmJsb2NrU2l6ZT0oMTYwMC0yKnRoaXMuY2ZnLm91dHB1dExlbmd0aCkvMzJ9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT10aGlzLl9zdGF0ZSxpPXRoaXMuYmxvY2tTaXplLzIsbj0wO248aTtuKyspe3ZhciBvPXRbcisyKm5dLHM9dFtyKzIqbisxXTtvPTE2NzExOTM1JihvPDw4fG8+Pj4yNCl8NDI3ODI1NTM2MCYobzw8MjR8bz4+PjgpLHM9MTY3MTE5MzUmKHM8PDh8cz4+PjI0KXw0Mjc4MjU1MzYwJihzPDwyNHxzPj4+OCk7dmFyIGE9ZVtuXTthLmhpZ2hePXMsYS5sb3dePW99Zm9yKHZhciBjPTA7YzwyNDtjKyspe2Zvcih2YXIgZD0wO2Q8NTtkKyspe2Zvcih2YXIgdj0wLHA9MCxfPTA7Xzw1O18rKyl7dmFyIGE9ZVtkKzUqX107dl49YS5oaWdoLHBePWEubG93fXZhciB5PXVbZF07eS5oaWdoPXYseS5sb3c9cH1mb3IodmFyIGQ9MDtkPDU7ZCsrKWZvcih2YXIgZz11WyhkKzQpJTVdLEI9dVsoZCsxKSU1XSx3PUIuaGlnaCxrPUIubG93LHY9Zy5oaWdoXih3PDwxfGs+Pj4zMSkscD1nLmxvd14oazw8MXx3Pj4+MzEpLF89MDtfPDU7XysrKXt2YXIgYT1lW2QrNSpfXTthLmhpZ2hePXYsYS5sb3dePXB9Zm9yKHZhciBTPTE7UzwyNTtTKyspe3ZhciBhPWVbU10sbT1hLmhpZ2gseD1hLmxvdyxiPWhbU107aWYoYjwzMil2YXIgdj1tPDxifHg+Pj4zMi1iLHA9eDw8YnxtPj4+MzItYjtlbHNlIHZhciB2PXg8PGItMzJ8bT4+PjY0LWIscD1tPDxiLTMyfHg+Pj42NC1iO3ZhciBIPXVbbFtTXV07SC5oaWdoPXYsSC5sb3c9cH12YXIgej11WzBdLEE9ZVswXTt6LmhpZ2g9QS5oaWdoLHoubG93PUEubG93O2Zvcih2YXIgZD0wO2Q8NTtkKyspZm9yKHZhciBfPTA7Xzw1O18rKyl7dmFyIFM9ZCs1Kl8sYT1lW1NdLEM9dVtTXSxEPXVbKGQrMSklNSs1Kl9dLFI9dVsoZCsyKSU1KzUqX107YS5oaWdoPUMuaGlnaF5+RC5oaWdoJlIuaGlnaCxhLmxvdz1DLmxvd15+RC5sb3cmUi5sb3d9dmFyIGE9ZVswXSxFPWZbY107YS5oaWdoXj1FLmhpZ2gsYS5sb3dePUUubG93fX0sX2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9kYXRhLGU9dC53b3JkcyxpPSg4KnRoaXMuX25EYXRhQnl0ZXMsOCp0LnNpZ0J5dGVzKSxvPTMyKnRoaXMuYmxvY2tTaXplO2VbaT4+PjVdfD0xPDwyNC1pJTMyLGVbKHIuY2VpbCgoaSsxKS9vKSpvPj4+NSktMV18PTEyOCx0LnNpZ0J5dGVzPTQqZS5sZW5ndGgsdGhpcy5fcHJvY2VzcygpO2Zvcih2YXIgcz10aGlzLl9zdGF0ZSxhPXRoaXMuY2ZnLm91dHB1dExlbmd0aC84LGM9YS84LGg9W10sbD0wO2w8YztsKyspe3ZhciBmPXNbbF0sdT1mLmhpZ2gsZD1mLmxvdzt1PTE2NzExOTM1Jih1PDw4fHU+Pj4yNCl8NDI3ODI1NTM2MCYodTw8MjR8dT4+PjgpLGQ9MTY3MTE5MzUmKGQ8PDh8ZD4+PjI0KXw0Mjc4MjU1MzYwJihkPDwyNHxkPj4+OCksaC5wdXNoKGQpLGgucHVzaCh1KX1yZXR1cm4gbmV3IG4uaW5pdChoLGEpfSxjbG9uZTpmdW5jdGlvbigpe2Zvcih2YXIgdD1vLmNsb25lLmNhbGwodGhpcykscj10Ll9zdGF0ZT10aGlzLl9zdGF0ZS5zbGljZSgwKSxlPTA7ZTwyNTtlKyspcltlXT1yW2VdLmNsb25lKCk7cmV0dXJuIHR9fSk7ZS5TSEEzPW8uX2NyZWF0ZUhlbHBlcihkKSxlLkhtYWNTSEEzPW8uX2NyZWF0ZUhtYWNIZWxwZXIoZCl9KE1hdGgpLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gcigpe3JldHVybiBzLmNyZWF0ZS5hcHBseShzLGFyZ3VtZW50cyl9dmFyIGU9dCxpPWUubGliLG49aS5IYXNoZXIsbz1lLng2NCxzPW8uV29yZCxhPW8uV29yZEFycmF5LGM9ZS5hbGdvLGg9W3IoMTExNjM1MjQwOCwzNjA5NzY3NDU4KSxyKDE4OTk0NDc0NDEsNjAyODkxNzI1KSxyKDMwNDkzMjM0NzEsMzk2NDQ4NDM5OSkscigzOTIxMDA5NTczLDIxNzMyOTU1NDgpLHIoOTYxOTg3MTYzLDQwODE2Mjg0NzIpLHIoMTUwODk3MDk5MywzMDUzODM0MjY1KSxyKDI0NTM2MzU3NDgsMjkzNzY3MTU3OSkscigyODcwNzYzMjIxLDM2NjQ2MDk1NjApLHIoMzYyNDM4MTA4MCwyNzM0ODgzMzk0KSxyKDMxMDU5ODQwMSwxMTY0OTk2NTQyKSxyKDYwNzIyNTI3OCwxMzIzNjEwNzY0KSxyKDE0MjY4ODE5ODcsMzU5MDMwNDk5NCkscigxOTI1MDc4Mzg4LDQwNjgxODIzODMpLHIoMjE2MjA3ODIwNiw5OTEzMzYxMTMpLHIoMjYxNDg4ODEwMyw2MzM4MDMzMTcpLHIoMzI0ODIyMjU4MCwzNDc5Nzc0ODY4KSxyKDM4MzUzOTA0MDEsMjY2NjYxMzQ1OCkscig0MDIyMjI0Nzc0LDk0NDcxMTEzOSkscigyNjQzNDcwNzgsMjM0MTI2Mjc3Mykscig2MDQ4MDc2MjgsMjAwNzgwMDkzMykscig3NzAyNTU5ODMsMTQ5NTk5MDkwMSkscigxMjQ5MTUwMTIyLDE4NTY0MzEyMzUpLHIoMTU1NTA4MTY5MiwzMTc1MjE4MTMyKSxyKDE5OTYwNjQ5ODYsMjE5ODk1MDgzNykscigyNTU0MjIwODgyLDM5OTk3MTkzMzkpLHIoMjgyMTgzNDM0OSw3NjY3ODQwMTYpLHIoMjk1Mjk5NjgwOCwyNTY2NTk0ODc5KSxyKDMyMTAzMTM2NzEsMzIwMzMzNzk1NikscigzMzM2NTcxODkxLDEwMzQ0NTcwMjYpLHIoMzU4NDUyODcxMSwyNDY2OTQ4OTAxKSxyKDExMzkyNjk5MywzNzU4MzI2MzgzKSxyKDMzODI0MTg5NSwxNjg3MTc5MzYpLHIoNjY2MzA3MjA1LDExODgxNzk5NjQpLHIoNzczNTI5OTEyLDE1NDYwNDU3MzQpLHIoMTI5NDc1NzM3MiwxNTIyODA1NDg1KSxyKDEzOTYxODIyOTEsMjY0MzgzMzgyMykscigxNjk1MTgzNzAwLDIzNDM1MjczOTApLHIoMTk4NjY2MTA1MSwxMDE0NDc3NDgwKSxyKDIxNzcwMjYzNTAsMTIwNjc1OTE0MikscigyNDU2OTU2MDM3LDM0NDA3NzYyNykscigyNzMwNDg1OTIxLDEyOTA4NjM0NjApLHIoMjgyMDMwMjQxMSwzMTU4NDU0MjczKSxyKDMyNTk3MzA4MDAsMzUwNTk1MjY1NykscigzMzQ1NzY0NzcxLDEwNjIxNzAwOCkscigzNTE2MDY1ODE3LDM2MDYwMDgzNDQpLHIoMzYwMDM1MjgwNCwxNDMyNzI1Nzc2KSxyKDQwOTQ1NzE5MDksMTQ2NzAzMTU5NCkscigyNzU0MjMzNDQsODUxMTY5NzIwKSxyKDQzMDIyNzczNCwzMTAwODIzNzUyKSxyKDUwNjk0ODYxNiwxMzYzMjU4MTk1KSxyKDY1OTA2MDU1NiwzNzUwNjg1NTkzKSxyKDg4Mzk5Nzg3NywzNzg1MDUwMjgwKSxyKDk1ODEzOTU3MSwzMzE4MzA3NDI3KSxyKDEzMjI4MjIyMTgsMzgxMjcyMzQwMykscigxNTM3MDAyMDYzLDIwMDMwMzQ5OTUpLHIoMTc0Nzg3Mzc3OSwzNjAyMDM2ODk5KSxyKDE5NTU1NjIyMjIsMTU3NTk5MDAxMikscigyMDI0MTA0ODE1LDExMjU1OTI5MjgpLHIoMjIyNzczMDQ1MiwyNzE2OTA0MzA2KSxyKDIzNjE4NTI0MjQsNDQyNzc2MDQ0KSxyKDI0Mjg0MzY0NzQsNTkzNjk4MzQ0KSxyKDI3NTY3MzQxODcsMzczMzExMDI0OSkscigzMjA0MDMxNDc5LDI5OTkzNTE1NzMpLHIoMzMyOTMyNTI5OCwzODE1OTIwNDI3KSxyKDMzOTE1Njk2MTQsMzkyODM4MzkwMCkscigzNTE1MjY3MjcxLDU2NjI4MDcxMSkscigzOTQwMTg3NjA2LDM0NTQwNjk1MzQpLHIoNDExODYzMDI3MSw0MDAwMjM5OTkyKSxyKDExNjQxODQ3NCwxOTE0MTM4NTU0KSxyKDE3NDI5MjQyMSwyNzMxMDU1MjcwKSxyKDI4OTM4MDM1NiwzMjAzOTkzMDA2KSxyKDQ2MDM5MzI2OSwzMjA2MjAzMTUpLHIoNjg1NDcxNzMzLDU4NzQ5NjgzNikscig4NTIxNDI5NzEsMTA4Njc5Mjg1MSkscigxMDE3MDM2Mjk4LDM2NTU0MzEwMCkscigxMTI2MDAwNTgwLDI2MTgyOTc2NzYpLHIoMTI4ODAzMzQ3MCwzNDA5ODU1MTU4KSxyKDE1MDE1MDU5NDgsNDIzNDUwOTg2NikscigxNjA3MTY3OTE1LDk4NzE2NzQ2OCkscigxODE2NDAyMzE2LDEyNDYxODk1OTEpXSxsPVtdOyFmdW5jdGlvbigpe2Zvcih2YXIgdD0wO3Q8ODA7dCsrKWxbdF09cigpfSgpO3ZhciBmPWMuU0hBNTEyPW4uZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bmV3IGEuaW5pdChbbmV3IHMuaW5pdCgxNzc5MDMzNzAzLDQwODkyMzU3MjApLG5ldyBzLmluaXQoMzE0NDEzNDI3NywyMjI3ODczNTk1KSxuZXcgcy5pbml0KDEwMTM5MDQyNDIsNDI3MTE3NTcyMyksbmV3IHMuaW5pdCgyNzczNDgwNzYyLDE1OTU3NTAxMjkpLG5ldyBzLmluaXQoMTM1OTg5MzExOSwyOTE3NTY1MTM3KSxuZXcgcy5pbml0KDI2MDA4MjI5MjQsNzI1NTExMTk5KSxuZXcgcy5pbml0KDUyODczNDYzNSw0MjE1Mzg5NTQ3KSxuZXcgcy5pbml0KDE1NDE0NTkyMjUsMzI3MDMzMjA5KV0pfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dGhpcy5faGFzaC53b3JkcyxpPWVbMF0sbj1lWzFdLG89ZVsyXSxzPWVbM10sYT1lWzRdLGM9ZVs1XSxmPWVbNl0sdT1lWzddLGQ9aS5oaWdoLHY9aS5sb3cscD1uLmhpZ2gsXz1uLmxvdyx5PW8uaGlnaCxnPW8ubG93LEI9cy5oaWdoLHc9cy5sb3csaz1hLmhpZ2gsUz1hLmxvdyxtPWMuaGlnaCx4PWMubG93LGI9Zi5oaWdoLEg9Zi5sb3csej11LmhpZ2gsQT11LmxvdyxDPWQsRD12LFI9cCxFPV8sTT15LEY9ZyxQPUIsVz13LE89ayxVPVMsST1tLEs9eCxYPWIsTD1ILGo9eixOPUEsVD0wO1Q8ODA7VCsrKXt2YXIgWj1sW1RdO2lmKFQ8MTYpdmFyIHE9Wi5oaWdoPTB8dFtyKzIqVF0sRz1aLmxvdz0wfHRbcisyKlQrMV07ZWxzZXt2YXIgSj1sW1QtMTVdLCQ9Si5oaWdoLFE9Si5sb3csVj0oJD4+PjF8UTw8MzEpXigkPj4+OHxRPDwyNCleJD4+PjcsWT0oUT4+PjF8JDw8MzEpXihRPj4+OHwkPDwyNCleKFE+Pj43fCQ8PDI1KSx0dD1sW1QtMl0scnQ9dHQuaGlnaCxldD10dC5sb3csaXQ9KHJ0Pj4+MTl8ZXQ8PDEzKV4ocnQ8PDN8ZXQ+Pj4yOSlecnQ+Pj42LG50PShldD4+PjE5fHJ0PDwxMyleKGV0PDwzfHJ0Pj4+MjkpXihldD4+PjZ8cnQ8PDI2KSxvdD1sW1QtN10sc3Q9b3QuaGlnaCxhdD1vdC5sb3csY3Q9bFtULTE2XSxodD1jdC5oaWdoLGx0PWN0LmxvdyxHPVkrYXQscT1WK3N0KyhHPj4+MDxZPj4+MD8xOjApLEc9RytudCxxPXEraXQrKEc+Pj4wPG50Pj4+MD8xOjApLEc9RytsdCxxPXEraHQrKEc+Pj4wPGx0Pj4+MD8xOjApO1ouaGlnaD1xLFoubG93PUd9dmFyIGZ0PU8mSV5+TyZYLHV0PVUmS15+VSZMLGR0PUMmUl5DJk1eUiZNLHZ0PUQmRV5EJkZeRSZGLHB0PShDPj4+Mjh8RDw8NCleKEM8PDMwfEQ+Pj4yKV4oQzw8MjV8RD4+PjcpLF90PShEPj4+Mjh8Qzw8NCleKEQ8PDMwfEM+Pj4yKV4oRDw8MjV8Qz4+PjcpLHl0PShPPj4+MTR8VTw8MTgpXihPPj4+MTh8VTw8MTQpXihPPDwyM3xVPj4+OSksZ3Q9KFU+Pj4xNHxPPDwxOCleKFU+Pj4xOHxPPDwxNCleKFU8PDIzfE8+Pj45KSxCdD1oW1RdLHd0PUJ0LmhpZ2gsa3Q9QnQubG93LFN0PU4rZ3QsbXQ9ait5dCsoU3Q+Pj4wPE4+Pj4wPzE6MCksU3Q9U3QrdXQsbXQ9bXQrZnQrKFN0Pj4+MDx1dD4+PjA/MTowKSxTdD1TdCtrdCxtdD1tdCt3dCsoU3Q+Pj4wPGt0Pj4+MD8xOjApLFN0PVN0K0csbXQ9bXQrcSsoU3Q+Pj4wPEc+Pj4wPzE6MCkseHQ9X3QrdnQsYnQ9cHQrZHQrKHh0Pj4+MDxfdD4+PjA/MTowKTtqPVgsTj1MLFg9SSxMPUssST1PLEs9VSxVPVcrU3R8MCxPPVArbXQrKFU+Pj4wPFc+Pj4wPzE6MCl8MCxQPU0sVz1GLE09UixGPUUsUj1DLEU9RCxEPVN0K3h0fDAsQz1tdCtidCsoRD4+PjA8U3Q+Pj4wPzE6MCl8MH12PWkubG93PXYrRCxpLmhpZ2g9ZCtDKyh2Pj4+MDxEPj4+MD8xOjApLF89bi5sb3c9XytFLG4uaGlnaD1wK1IrKF8+Pj4wPEU+Pj4wPzE6MCksZz1vLmxvdz1nK0Ysby5oaWdoPXkrTSsoZz4+PjA8Rj4+PjA/MTowKSx3PXMubG93PXcrVyxzLmhpZ2g9QitQKyh3Pj4+MDxXPj4+MD8xOjApLFM9YS5sb3c9UytVLGEuaGlnaD1rK08rKFM+Pj4wPFU+Pj4wPzE6MCkseD1jLmxvdz14K0ssYy5oaWdoPW0rSSsoeD4+PjA8Sz4+PjA/MTowKSxIPWYubG93PUgrTCxmLmhpZ2g9YitYKyhIPj4+MDxMPj4+MD8xOjApLEE9dS5sb3c9QStOLHUuaGlnaD16K2orKEE+Pj4wPE4+Pj4wPzE6MCl9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxyPXQud29yZHMsZT04KnRoaXMuX25EYXRhQnl0ZXMsaT04KnQuc2lnQnl0ZXM7cltpPj4+NV18PTEyODw8MjQtaSUzMixyWyhpKzEyOD4+PjEwPDw1KSszMF09TWF0aC5mbG9vcihlLzQyOTQ5NjcyOTYpLHJbKGkrMTI4Pj4+MTA8PDUpKzMxXT1lLHQuc2lnQnl0ZXM9NCpyLmxlbmd0aCx0aGlzLl9wcm9jZXNzKCk7dmFyIG49dGhpcy5faGFzaC50b1gzMigpO3JldHVybiBufSxjbG9uZTpmdW5jdGlvbigpe3ZhciB0PW4uY2xvbmUuY2FsbCh0aGlzKTtyZXR1cm4gdC5faGFzaD10aGlzLl9oYXNoLmNsb25lKCksdH0sYmxvY2tTaXplOjMyfSk7ZS5TSEE1MTI9bi5fY3JlYXRlSGVscGVyKGYpLGUuSG1hY1NIQTUxMj1uLl9jcmVhdGVIbWFjSGVscGVyKGYpfSgpLGZ1bmN0aW9uKCl7dmFyIHI9dCxlPXIueDY0LGk9ZS5Xb3JkLG49ZS5Xb3JkQXJyYXksbz1yLmFsZ28scz1vLlNIQTUxMixhPW8uU0hBMzg0PXMuZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3RoaXMuX2hhc2g9bmV3IG4uaW5pdChbbmV3IGkuaW5pdCgzNDE4MDcwMzY1LDMyMzgzNzEwMzIpLG5ldyBpLmluaXQoMTY1NDI3MDI1MCw5MTQxNTA2NjMpLG5ldyBpLmluaXQoMjQzODUyOTM3MCw4MTI3MDI5OTkpLG5ldyBpLmluaXQoMzU1NDYyMzYwLDQxNDQ5MTI2OTcpLG5ldyBpLmluaXQoMTczMTQwNTQxNSw0MjkwNzc1ODU3KSxuZXcgaS5pbml0KDIzOTQxODAyMzEsMTc1MDYwMzAyNSksbmV3IGkuaW5pdCgzNjc1MDA4NTI1LDE2OTQwNzY4MzkpLG5ldyBpLmluaXQoMTIwMzA2MjgxMywzMjA0MDc1NDI4KV0pfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXMuX2RvRmluYWxpemUuY2FsbCh0aGlzKTtyZXR1cm4gdC5zaWdCeXRlcy09MTYsdH19KTtyLlNIQTM4ND1zLl9jcmVhdGVIZWxwZXIoYSksci5IbWFjU0hBMzg0PXMuX2NyZWF0ZUhtYWNIZWxwZXIoYSl9KCksdC5saWIuQ2lwaGVyfHxmdW5jdGlvbihyKXt2YXIgZT10LGk9ZS5saWIsbj1pLkJhc2Usbz1pLldvcmRBcnJheSxzPWkuQnVmZmVyZWRCbG9ja0FsZ29yaXRobSxhPWUuZW5jLGM9KGEuVXRmOCxhLkJhc2U2NCksaD1lLmFsZ28sbD1oLkV2cEtERixmPWkuQ2lwaGVyPXMuZXh0ZW5kKHtjZmc6bi5leHRlbmQoKSxjcmVhdGVFbmNyeXB0b3I6ZnVuY3Rpb24odCxyKXtyZXR1cm4gdGhpcy5jcmVhdGUodGhpcy5fRU5DX1hGT1JNX01PREUsdCxyKX0sY3JlYXRlRGVjcnlwdG9yOmZ1bmN0aW9uKHQscil7cmV0dXJuIHRoaXMuY3JlYXRlKHRoaXMuX0RFQ19YRk9STV9NT0RFLHQscil9LGluaXQ6ZnVuY3Rpb24odCxyLGUpe3RoaXMuY2ZnPXRoaXMuY2ZnLmV4dGVuZChlKSx0aGlzLl94Zm9ybU1vZGU9dCx0aGlzLl9rZXk9cix0aGlzLnJlc2V0KCl9LHJlc2V0OmZ1bmN0aW9uKCl7cy5yZXNldC5jYWxsKHRoaXMpLHRoaXMuX2RvUmVzZXQoKX0scHJvY2VzczpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fYXBwZW5kKHQpLHRoaXMuX3Byb2Nlc3MoKX0sZmluYWxpemU6ZnVuY3Rpb24odCl7dCYmdGhpcy5fYXBwZW5kKHQpO3ZhciByPXRoaXMuX2RvRmluYWxpemUoKTtyZXR1cm4gcn0sa2V5U2l6ZTo0LGl2U2l6ZTo0LF9FTkNfWEZPUk1fTU9ERToxLF9ERUNfWEZPUk1fTU9ERToyLF9jcmVhdGVIZWxwZXI6ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe3JldHVyblwic3RyaW5nXCI9PXR5cGVvZiB0P206d31yZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJue2VuY3J5cHQ6ZnVuY3Rpb24oZSxpLG4pe3JldHVybiB0KGkpLmVuY3J5cHQocixlLGksbil9LGRlY3J5cHQ6ZnVuY3Rpb24oZSxpLG4pe3JldHVybiB0KGkpLmRlY3J5cHQocixlLGksbil9fX19KCl9KSx1PShpLlN0cmVhbUNpcGhlcj1mLmV4dGVuZCh7X2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9wcm9jZXNzKCEwKTtyZXR1cm4gdH0sYmxvY2tTaXplOjF9KSxlLm1vZGU9e30pLGQ9aS5CbG9ja0NpcGhlck1vZGU9bi5leHRlbmQoe2NyZWF0ZUVuY3J5cHRvcjpmdW5jdGlvbih0LHIpe3JldHVybiB0aGlzLkVuY3J5cHRvci5jcmVhdGUodCxyKX0sY3JlYXRlRGVjcnlwdG9yOmZ1bmN0aW9uKHQscil7cmV0dXJuIHRoaXMuRGVjcnlwdG9yLmNyZWF0ZSh0LHIpfSxpbml0OmZ1bmN0aW9uKHQscil7dGhpcy5fY2lwaGVyPXQsdGhpcy5faXY9cn19KSx2PXUuQ0JDPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0LGUsaSl7dmFyIG49dGhpcy5faXY7aWYobil7dmFyIG89bjt0aGlzLl9pdj1yfWVsc2UgdmFyIG89dGhpcy5fcHJldkJsb2NrO2Zvcih2YXIgcz0wO3M8aTtzKyspdFtlK3NdXj1vW3NdfXZhciBlPWQuZXh0ZW5kKCk7cmV0dXJuIGUuRW5jcnlwdG9yPWUuZXh0ZW5kKHtwcm9jZXNzQmxvY2s6ZnVuY3Rpb24ocixlKXt2YXIgaT10aGlzLl9jaXBoZXIsbj1pLmJsb2NrU2l6ZTt0LmNhbGwodGhpcyxyLGUsbiksaS5lbmNyeXB0QmxvY2socixlKSx0aGlzLl9wcmV2QmxvY2s9ci5zbGljZShlLGUrbil9fSksZS5EZWNyeXB0b3I9ZS5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbihyLGUpe3ZhciBpPXRoaXMuX2NpcGhlcixuPWkuYmxvY2tTaXplLG89ci5zbGljZShlLGUrbik7aS5kZWNyeXB0QmxvY2socixlKSx0LmNhbGwodGhpcyxyLGUsbiksdGhpcy5fcHJldkJsb2NrPW99fSksZX0oKSxwPWUucGFkPXt9LF89cC5Qa2NzNz17cGFkOmZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPTQqcixpPWUtdC5zaWdCeXRlcyVlLG49aTw8MjR8aTw8MTZ8aTw8OHxpLHM9W10sYT0wO2E8aTthKz00KXMucHVzaChuKTt2YXIgYz1vLmNyZWF0ZShzLGkpO3QuY29uY2F0KGMpfSx1bnBhZDpmdW5jdGlvbih0KXt2YXIgcj0yNTUmdC53b3Jkc1t0LnNpZ0J5dGVzLTE+Pj4yXTt0LnNpZ0J5dGVzLT1yfX0seT0oaS5CbG9ja0NpcGhlcj1mLmV4dGVuZCh7Y2ZnOmYuY2ZnLmV4dGVuZCh7bW9kZTp2LHBhZGRpbmc6X30pLHJlc2V0OmZ1bmN0aW9uKCl7Zi5yZXNldC5jYWxsKHRoaXMpO3ZhciB0PXRoaXMuY2ZnLHI9dC5pdixlPXQubW9kZTtpZih0aGlzLl94Zm9ybU1vZGU9PXRoaXMuX0VOQ19YRk9STV9NT0RFKXZhciBpPWUuY3JlYXRlRW5jcnlwdG9yO2Vsc2V7dmFyIGk9ZS5jcmVhdGVEZWNyeXB0b3I7dGhpcy5fbWluQnVmZmVyU2l6ZT0xfXRoaXMuX21vZGUmJnRoaXMuX21vZGUuX19jcmVhdG9yPT1pP3RoaXMuX21vZGUuaW5pdCh0aGlzLHImJnIud29yZHMpOih0aGlzLl9tb2RlPWkuY2FsbChlLHRoaXMsciYmci53b3JkcyksdGhpcy5fbW9kZS5fX2NyZWF0b3I9aSl9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX21vZGUucHJvY2Vzc0Jsb2NrKHQscil9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5jZmcucGFkZGluZztpZih0aGlzLl94Zm9ybU1vZGU9PXRoaXMuX0VOQ19YRk9STV9NT0RFKXt0LnBhZCh0aGlzLl9kYXRhLHRoaXMuYmxvY2tTaXplKTt2YXIgcj10aGlzLl9wcm9jZXNzKCEwKX1lbHNle3ZhciByPXRoaXMuX3Byb2Nlc3MoITApO3QudW5wYWQocil9cmV0dXJuIHJ9LGJsb2NrU2l6ZTo0fSksaS5DaXBoZXJQYXJhbXM9bi5leHRlbmQoe2luaXQ6ZnVuY3Rpb24odCl7dGhpcy5taXhJbih0KX0sdG9TdHJpbmc6ZnVuY3Rpb24odCl7cmV0dXJuKHR8fHRoaXMuZm9ybWF0dGVyKS5zdHJpbmdpZnkodGhpcyl9fSkpLGc9ZS5mb3JtYXQ9e30sQj1nLk9wZW5TU0w9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXt2YXIgcj10LmNpcGhlcnRleHQsZT10LnNhbHQ7aWYoZSl2YXIgaT1vLmNyZWF0ZShbMTM5ODg5MzY4NCwxNzAxMDc2ODMxXSkuY29uY2F0KGUpLmNvbmNhdChyKTtlbHNlIHZhciBpPXI7cmV0dXJuIGkudG9TdHJpbmcoYyl9LHBhcnNlOmZ1bmN0aW9uKHQpe3ZhciByPWMucGFyc2UodCksZT1yLndvcmRzO2lmKDEzOTg4OTM2ODQ9PWVbMF0mJjE3MDEwNzY4MzE9PWVbMV0pe3ZhciBpPW8uY3JlYXRlKGUuc2xpY2UoMiw0KSk7ZS5zcGxpY2UoMCw0KSxyLnNpZ0J5dGVzLT0xNn1yZXR1cm4geS5jcmVhdGUoe2NpcGhlcnRleHQ6cixzYWx0Oml9KX19LHc9aS5TZXJpYWxpemFibGVDaXBoZXI9bi5leHRlbmQoe2NmZzpuLmV4dGVuZCh7Zm9ybWF0OkJ9KSxlbmNyeXB0OmZ1bmN0aW9uKHQscixlLGkpe2k9dGhpcy5jZmcuZXh0ZW5kKGkpO3ZhciBuPXQuY3JlYXRlRW5jcnlwdG9yKGUsaSksbz1uLmZpbmFsaXplKHIpLHM9bi5jZmc7cmV0dXJuIHkuY3JlYXRlKHtjaXBoZXJ0ZXh0Om8sa2V5OmUsaXY6cy5pdixhbGdvcml0aG06dCxtb2RlOnMubW9kZSxwYWRkaW5nOnMucGFkZGluZyxibG9ja1NpemU6dC5ibG9ja1NpemUsZm9ybWF0dGVyOmkuZm9ybWF0fSl9LGRlY3J5cHQ6ZnVuY3Rpb24odCxyLGUsaSl7aT10aGlzLmNmZy5leHRlbmQoaSkscj10aGlzLl9wYXJzZShyLGkuZm9ybWF0KTt2YXIgbj10LmNyZWF0ZURlY3J5cHRvcihlLGkpLmZpbmFsaXplKHIuY2lwaGVydGV4dCk7cmV0dXJuIG59LF9wYXJzZTpmdW5jdGlvbih0LHIpe3JldHVyblwic3RyaW5nXCI9PXR5cGVvZiB0P3IucGFyc2UodCx0aGlzKTp0fX0pLGs9ZS5rZGY9e30sUz1rLk9wZW5TU0w9e2V4ZWN1dGU6ZnVuY3Rpb24odCxyLGUsaSl7aXx8KGk9by5yYW5kb20oOCkpO3ZhciBuPWwuY3JlYXRlKHtrZXlTaXplOnIrZX0pLmNvbXB1dGUodCxpKSxzPW8uY3JlYXRlKG4ud29yZHMuc2xpY2UociksNCplKTtyZXR1cm4gbi5zaWdCeXRlcz00KnIseS5jcmVhdGUoe2tleTpuLGl2OnMsc2FsdDppfSl9fSxtPWkuUGFzc3dvcmRCYXNlZENpcGhlcj13LmV4dGVuZCh7Y2ZnOncuY2ZnLmV4dGVuZCh7a2RmOlN9KSxlbmNyeXB0OmZ1bmN0aW9uKHQscixlLGkpe2k9dGhpcy5jZmcuZXh0ZW5kKGkpO3ZhciBuPWkua2RmLmV4ZWN1dGUoZSx0LmtleVNpemUsdC5pdlNpemUpO2kuaXY9bi5pdjt2YXIgbz13LmVuY3J5cHQuY2FsbCh0aGlzLHQscixuLmtleSxpKTtyZXR1cm4gby5taXhJbihuKSxvfSxkZWNyeXB0OmZ1bmN0aW9uKHQscixlLGkpe2k9dGhpcy5jZmcuZXh0ZW5kKGkpLHI9dGhpcy5fcGFyc2UocixpLmZvcm1hdCk7dmFyIG49aS5rZGYuZXhlY3V0ZShlLHQua2V5U2l6ZSx0Lml2U2l6ZSxyLnNhbHQpO2kuaXY9bi5pdjt2YXIgbz13LmRlY3J5cHQuY2FsbCh0aGlzLHQscixuLmtleSxpKTtyZXR1cm4gb319KX0oKSx0Lm1vZGUuQ0ZCPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0LHIsZSxpKXt2YXIgbj10aGlzLl9pdjtpZihuKXt2YXIgbz1uLnNsaWNlKDApO3RoaXMuX2l2PXZvaWQgMH1lbHNlIHZhciBvPXRoaXMuX3ByZXZCbG9jaztpLmVuY3J5cHRCbG9jayhvLDApO2Zvcih2YXIgcz0wO3M8ZTtzKyspdFtyK3NdXj1vW3NdfXZhciBlPXQubGliLkJsb2NrQ2lwaGVyTW9kZS5leHRlbmQoKTtyZXR1cm4gZS5FbmNyeXB0b3I9ZS5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LGUpe3ZhciBpPXRoaXMuX2NpcGhlcixuPWkuYmxvY2tTaXplO3IuY2FsbCh0aGlzLHQsZSxuLGkpLHRoaXMuX3ByZXZCbG9jaz10LnNsaWNlKGUsZStuKX19KSxlLkRlY3J5cHRvcj1lLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQsZSl7dmFyIGk9dGhpcy5fY2lwaGVyLG49aS5ibG9ja1NpemUsbz10LnNsaWNlKGUsZStuKTtyLmNhbGwodGhpcyx0LGUsbixpKSx0aGlzLl9wcmV2QmxvY2s9b319KSxlfSgpLHQubW9kZS5FQ0I9ZnVuY3Rpb24oKXt2YXIgcj10LmxpYi5CbG9ja0NpcGhlck1vZGUuZXh0ZW5kKCk7cmV0dXJuIHIuRW5jcnlwdG9yPXIuZXh0ZW5kKHtwcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9jaXBoZXIuZW5jcnlwdEJsb2NrKHQscil9fSksci5EZWNyeXB0b3I9ci5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX2NpcGhlci5kZWNyeXB0QmxvY2sodCxyKX19KSxyfSgpLHQucGFkLkFuc2lYOTIzPXtwYWQ6ZnVuY3Rpb24odCxyKXt2YXIgZT10LnNpZ0J5dGVzLGk9NCpyLG49aS1lJWksbz1lK24tMTt0LmNsYW1wKCksdC53b3Jkc1tvPj4+Ml18PW48PDI0LW8lNCo4LHQuc2lnQnl0ZXMrPW59LHVucGFkOmZ1bmN0aW9uKHQpe3ZhciByPTI1NSZ0LndvcmRzW3Quc2lnQnl0ZXMtMT4+PjJdO3Quc2lnQnl0ZXMtPXJ9fSx0LnBhZC5Jc28xMDEyNj17cGFkOmZ1bmN0aW9uKHIsZSl7dmFyIGk9NCplLG49aS1yLnNpZ0J5dGVzJWk7ci5jb25jYXQodC5saWIuV29yZEFycmF5LnJhbmRvbShuLTEpKS5jb25jYXQodC5saWIuV29yZEFycmF5LmNyZWF0ZShbbjw8MjRdLDEpKX0sdW5wYWQ6ZnVuY3Rpb24odCl7dmFyIHI9MjU1JnQud29yZHNbdC5zaWdCeXRlcy0xPj4+Ml07dC5zaWdCeXRlcy09cn19LHQucGFkLklzbzk3OTcxPXtwYWQ6ZnVuY3Rpb24ocixlKXtyLmNvbmNhdCh0LmxpYi5Xb3JkQXJyYXkuY3JlYXRlKFsyMTQ3NDgzNjQ4XSwxKSksdC5wYWQuWmVyb1BhZGRpbmcucGFkKHIsZSl9LHVucGFkOmZ1bmN0aW9uKHIpe3QucGFkLlplcm9QYWRkaW5nLnVucGFkKHIpLHIuc2lnQnl0ZXMtLX19LHQubW9kZS5PRkI9ZnVuY3Rpb24oKXt2YXIgcj10LmxpYi5CbG9ja0NpcGhlck1vZGUuZXh0ZW5kKCksZT1yLkVuY3J5cHRvcj1yLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fY2lwaGVyLGk9ZS5ibG9ja1NpemUsbj10aGlzLl9pdixvPXRoaXMuX2tleXN0cmVhbTtuJiYobz10aGlzLl9rZXlzdHJlYW09bi5zbGljZSgwKSx0aGlzLl9pdj12b2lkIDApLGUuZW5jcnlwdEJsb2NrKG8sMCk7Zm9yKHZhciBzPTA7czxpO3MrKyl0W3Irc11ePW9bc119fSk7cmV0dXJuIHIuRGVjcnlwdG9yPWUscn0oKSx0LnBhZC5Ob1BhZGRpbmc9e3BhZDpmdW5jdGlvbigpe30sdW5wYWQ6ZnVuY3Rpb24oKXt9fSxmdW5jdGlvbihyKXt2YXIgZT10LGk9ZS5saWIsbj1pLkNpcGhlclBhcmFtcyxvPWUuZW5jLHM9by5IZXgsYT1lLmZvcm1hdDthLkhleD17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe3JldHVybiB0LmNpcGhlcnRleHQudG9TdHJpbmcocyl9LHBhcnNlOmZ1bmN0aW9uKHQpe3ZhciByPXMucGFyc2UodCk7cmV0dXJuIG4uY3JlYXRlKHtjaXBoZXJ0ZXh0OnJ9KX19fSgpLGZ1bmN0aW9uKCl7dmFyIHI9dCxlPXIubGliLGk9ZS5CbG9ja0NpcGhlcixuPXIuYWxnbyxvPVtdLHM9W10sYT1bXSxjPVtdLGg9W10sbD1bXSxmPVtdLHU9W10sZD1bXSx2PVtdOyFmdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxyPTA7cjwyNTY7cisrKXI8MTI4P3Rbcl09cjw8MTp0W3JdPXI8PDFeMjgzO2Zvcih2YXIgZT0wLGk9MCxyPTA7cjwyNTY7cisrKXt2YXIgbj1pXmk8PDFeaTw8Ml5pPDwzXmk8PDQ7bj1uPj4+OF4yNTUmbl45OSxvW2VdPW4sc1tuXT1lO3ZhciBwPXRbZV0sXz10W3BdLHk9dFtfXSxnPTI1Nyp0W25dXjE2ODQzMDA4Km47YVtlXT1nPDwyNHxnPj4+OCxjW2VdPWc8PDE2fGc+Pj4xNixoW2VdPWc8PDh8Zz4+PjI0LGxbZV09Zzt2YXIgZz0xNjg0MzAwOSp5XjY1NTM3Kl9eMjU3KnBeMTY4NDMwMDgqZTtmW25dPWc8PDI0fGc+Pj44LHVbbl09Zzw8MTZ8Zz4+PjE2LGRbbl09Zzw8OHxnPj4+MjQsdltuXT1nLGU/KGU9cF50W3RbdFt5XnBdXV0saV49dFt0W2ldXSk6ZT1pPTF9fSgpO3ZhciBwPVswLDEsMiw0LDgsMTYsMzIsNjQsMTI4LDI3LDU0XSxfPW4uQUVTPWkuZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe2lmKCF0aGlzLl9uUm91bmRzfHx0aGlzLl9rZXlQcmlvclJlc2V0IT09dGhpcy5fa2V5KXtmb3IodmFyIHQ9dGhpcy5fa2V5UHJpb3JSZXNldD10aGlzLl9rZXkscj10LndvcmRzLGU9dC5zaWdCeXRlcy80LGk9dGhpcy5fblJvdW5kcz1lKzYsbj00KihpKzEpLHM9dGhpcy5fa2V5U2NoZWR1bGU9W10sYT0wO2E8bjthKyspaWYoYTxlKXNbYV09clthXTtlbHNle3ZhciBjPXNbYS0xXTthJWU/ZT42JiZhJWU9PTQmJihjPW9bYz4+PjI0XTw8MjR8b1tjPj4+MTYmMjU1XTw8MTZ8b1tjPj4+OCYyNTVdPDw4fG9bMjU1JmNdKTooYz1jPDw4fGM+Pj4yNCxjPW9bYz4+PjI0XTw8MjR8b1tjPj4+MTYmMjU1XTw8MTZ8b1tjPj4+OCYyNTVdPDw4fG9bMjU1JmNdLGNePXBbYS9lfDBdPDwyNCksc1thXT1zW2EtZV1eY31mb3IodmFyIGg9dGhpcy5faW52S2V5U2NoZWR1bGU9W10sbD0wO2w8bjtsKyspe3ZhciBhPW4tbDtpZihsJTQpdmFyIGM9c1thXTtlbHNlIHZhciBjPXNbYS00XTtsPDR8fGE8PTQ/aFtsXT1jOmhbbF09ZltvW2M+Pj4yNF1dXnVbb1tjPj4+MTYmMjU1XV1eZFtvW2M+Pj44JjI1NV1dXnZbb1syNTUmY11dfX19LGVuY3J5cHRCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX2RvQ3J5cHRCbG9jayh0LHIsdGhpcy5fa2V5U2NoZWR1bGUsYSxjLGgsbCxvKX0sZGVjcnlwdEJsb2NrOmZ1bmN0aW9uKHQscil7dmFyIGU9dFtyKzFdO3RbcisxXT10W3IrM10sdFtyKzNdPWUsdGhpcy5fZG9DcnlwdEJsb2NrKHQscix0aGlzLl9pbnZLZXlTY2hlZHVsZSxmLHUsZCx2LHMpO3ZhciBlPXRbcisxXTt0W3IrMV09dFtyKzNdLHRbciszXT1lfSxfZG9DcnlwdEJsb2NrOmZ1bmN0aW9uKHQscixlLGksbixvLHMsYSl7Zm9yKHZhciBjPXRoaXMuX25Sb3VuZHMsaD10W3JdXmVbMF0sbD10W3IrMV1eZVsxXSxmPXRbcisyXV5lWzJdLHU9dFtyKzNdXmVbM10sZD00LHY9MTt2PGM7disrKXt2YXIgcD1pW2g+Pj4yNF1ebltsPj4+MTYmMjU1XV5vW2Y+Pj44JjI1NV1ec1syNTUmdV1eZVtkKytdLF89aVtsPj4+MjRdXm5bZj4+PjE2JjI1NV1eb1t1Pj4+OCYyNTVdXnNbMjU1JmhdXmVbZCsrXSx5PWlbZj4+PjI0XV5uW3U+Pj4xNiYyNTVdXm9baD4+PjgmMjU1XV5zWzI1NSZsXV5lW2QrK10sZz1pW3U+Pj4yNF1ebltoPj4+MTYmMjU1XV5vW2w+Pj44JjI1NV1ec1syNTUmZl1eZVtkKytdO2g9cCxsPV8sZj15LHU9Z312YXIgcD0oYVtoPj4+MjRdPDwyNHxhW2w+Pj4xNiYyNTVdPDwxNnxhW2Y+Pj44JjI1NV08PDh8YVsyNTUmdV0pXmVbZCsrXSxfPShhW2w+Pj4yNF08PDI0fGFbZj4+PjE2JjI1NV08PDE2fGFbdT4+PjgmMjU1XTw8OHxhWzI1NSZoXSleZVtkKytdLHk9KGFbZj4+PjI0XTw8MjR8YVt1Pj4+MTYmMjU1XTw8MTZ8YVtoPj4+OCYyNTVdPDw4fGFbMjU1JmxdKV5lW2QrK10sZz0oYVt1Pj4+MjRdPDwyNHxhW2g+Pj4xNiYyNTVdPDwxNnxhW2w+Pj44JjI1NV08PDh8YVsyNTUmZl0pXmVbZCsrXTt0W3JdPXAsdFtyKzFdPV8sdFtyKzJdPXksdFtyKzNdPWd9LGtleVNpemU6OH0pO3IuQUVTPWkuX2NyZWF0ZUhlbHBlcihfKX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIHIodCxyKXt2YXIgZT0odGhpcy5fbEJsb2NrPj4+dF50aGlzLl9yQmxvY2spJnI7dGhpcy5fckJsb2NrXj1lLHRoaXMuX2xCbG9ja149ZTw8dH1mdW5jdGlvbiBlKHQscil7dmFyIGU9KHRoaXMuX3JCbG9jaz4+PnRedGhpcy5fbEJsb2NrKSZyO3RoaXMuX2xCbG9ja149ZSx0aGlzLl9yQmxvY2tePWU8PHQ7XG59dmFyIGk9dCxuPWkubGliLG89bi5Xb3JkQXJyYXkscz1uLkJsb2NrQ2lwaGVyLGE9aS5hbGdvLGM9WzU3LDQ5LDQxLDMzLDI1LDE3LDksMSw1OCw1MCw0MiwzNCwyNiwxOCwxMCwyLDU5LDUxLDQzLDM1LDI3LDE5LDExLDMsNjAsNTIsNDQsMzYsNjMsNTUsNDcsMzksMzEsMjMsMTUsNyw2Miw1NCw0NiwzOCwzMCwyMiwxNCw2LDYxLDUzLDQ1LDM3LDI5LDIxLDEzLDUsMjgsMjAsMTIsNF0saD1bMTQsMTcsMTEsMjQsMSw1LDMsMjgsMTUsNiwyMSwxMCwyMywxOSwxMiw0LDI2LDgsMTYsNywyNywyMCwxMywyLDQxLDUyLDMxLDM3LDQ3LDU1LDMwLDQwLDUxLDQ1LDMzLDQ4LDQ0LDQ5LDM5LDU2LDM0LDUzLDQ2LDQyLDUwLDM2LDI5LDMyXSxsPVsxLDIsNCw2LDgsMTAsMTIsMTQsMTUsMTcsMTksMjEsMjMsMjUsMjcsMjhdLGY9W3swOjg0MjE4ODgsMjY4NDM1NDU2OjMyNzY4LDUzNjg3MDkxMjo4NDIxMzc4LDgwNTMwNjM2ODoyLDEwNzM3NDE4MjQ6NTEyLDEzNDIxNzcyODA6ODQyMTg5MCwxNjEwNjEyNzM2OjgzODkxMjIsMTg3OTA0ODE5Mjo4Mzg4NjA4LDIxNDc0ODM2NDg6NTE0LDI0MTU5MTkxMDQ6ODM4OTEyMCwyNjg0MzU0NTYwOjMzMjgwLDI5NTI3OTAwMTY6ODQyMTM3NiwzMjIxMjI1NDcyOjMyNzcwLDM0ODk2NjA5Mjg6ODM4ODYxMCwzNzU4MDk2Mzg0OjAsNDAyNjUzMTg0MDozMzI4MiwxMzQyMTc3Mjg6MCw0MDI2NTMxODQ6ODQyMTg5MCw2NzEwODg2NDA6MzMyODIsOTM5NTI0MDk2OjMyNzY4LDEyMDc5NTk1NTI6ODQyMTg4OCwxNDc2Mzk1MDA4OjUxMiwxNzQ0ODMwNDY0Ojg0MjEzNzgsMjAxMzI2NTkyMDoyLDIyODE3MDEzNzY6ODM4OTEyMCwyNTUwMTM2ODMyOjMzMjgwLDI4MTg1NzIyODg6ODQyMTM3NiwzMDg3MDA3NzQ0OjgzODkxMjIsMzM1NTQ0MzIwMDo4Mzg4NjEwLDM2MjM4Nzg2NTY6MzI3NzAsMzg5MjMxNDExMjo1MTQsNDE2MDc0OTU2ODo4Mzg4NjA4LDE6MzI3NjgsMjY4NDM1NDU3OjIsNTM2ODcwOTEzOjg0MjE4ODgsODA1MzA2MzY5OjgzODg2MDgsMTA3Mzc0MTgyNTo4NDIxMzc4LDEzNDIxNzcyODE6MzMyODAsMTYxMDYxMjczNzo1MTIsMTg3OTA0ODE5Mzo4Mzg5MTIyLDIxNDc0ODM2NDk6ODQyMTg5MCwyNDE1OTE5MTA1Ojg0MjEzNzYsMjY4NDM1NDU2MTo4Mzg4NjEwLDI5NTI3OTAwMTc6MzMyODIsMzIyMTIyNTQ3Mzo1MTQsMzQ4OTY2MDkyOTo4Mzg5MTIwLDM3NTgwOTYzODU6MzI3NzAsNDAyNjUzMTg0MTowLDEzNDIxNzcyOTo4NDIxODkwLDQwMjY1MzE4NTo4NDIxMzc2LDY3MTA4ODY0MTo4Mzg4NjA4LDkzOTUyNDA5Nzo1MTIsMTIwNzk1OTU1MzozMjc2OCwxNDc2Mzk1MDA5OjgzODg2MTAsMTc0NDgzMDQ2NToyLDIwMTMyNjU5MjE6MzMyODIsMjI4MTcwMTM3NzozMjc3MCwyNTUwMTM2ODMzOjgzODkxMjIsMjgxODU3MjI4OTo1MTQsMzA4NzAwNzc0NTo4NDIxODg4LDMzNTU0NDMyMDE6ODM4OTEyMCwzNjIzODc4NjU3OjAsMzg5MjMxNDExMzozMzI4MCw0MTYwNzQ5NTY5Ojg0MjEzNzh9LHswOjEwNzQyODI1MTIsMTY3NzcyMTY6MTYzODQsMzM1NTQ0MzI6NTI0Mjg4LDUwMzMxNjQ4OjEwNzQyNjYxMjgsNjcxMDg4NjQ6MTA3Mzc0MTg0MCw4Mzg4NjA4MDoxMDc0MjgyNDk2LDEwMDY2MzI5NjoxMDczNzU4MjA4LDExNzQ0MDUxMjoxNiwxMzQyMTc3Mjg6NTQwNjcyLDE1MDk5NDk0NDoxMDczNzU4MjI0LDE2Nzc3MjE2MDoxMDczNzQxODI0LDE4NDU0OTM3Njo1NDA2ODgsMjAxMzI2NTkyOjUyNDMwNCwyMTgxMDM4MDg6MCwyMzQ4ODEwMjQ6MTY0MDAsMjUxNjU4MjQwOjEwNzQyNjYxMTIsODM4ODYwODoxMDczNzU4MjA4LDI1MTY1ODI0OjU0MDY4OCw0MTk0MzA0MDoxNiw1ODcyMDI1NjoxMDczNzU4MjI0LDc1NDk3NDcyOjEwNzQyODI1MTIsOTIyNzQ2ODg6MTA3Mzc0MTgyNCwxMDkwNTE5MDQ6NTI0Mjg4LDEyNTgyOTEyMDoxMDc0MjY2MTI4LDE0MjYwNjMzNjo1MjQzMDQsMTU5MzgzNTUyOjAsMTc2MTYwNzY4OjE2Mzg0LDE5MjkzNzk4NDoxMDc0MjY2MTEyLDIwOTcxNTIwMDoxMDczNzQxODQwLDIyNjQ5MjQxNjo1NDA2NzIsMjQzMjY5NjMyOjEwNzQyODI0OTYsMjYwMDQ2ODQ4OjE2NDAwLDI2ODQzNTQ1NjowLDI4NTIxMjY3MjoxMDc0MjY2MTI4LDMwMTk4OTg4ODoxMDczNzU4MjI0LDMxODc2NzEwNDoxMDc0MjgyNDk2LDMzNTU0NDMyMDoxMDc0MjY2MTEyLDM1MjMyMTUzNjoxNiwzNjkwOTg3NTI6NTQwNjg4LDM4NTg3NTk2ODoxNjM4NCw0MDI2NTMxODQ6MTY0MDAsNDE5NDMwNDAwOjUyNDI4OCw0MzYyMDc2MTY6NTI0MzA0LDQ1Mjk4NDgzMjoxMDczNzQxODQwLDQ2OTc2MjA0ODo1NDA2NzIsNDg2NTM5MjY0OjEwNzM3NTgyMDgsNTAzMzE2NDgwOjEwNzM3NDE4MjQsNTIwMDkzNjk2OjEwNzQyODI1MTIsMjc2ODI0MDY0OjU0MDY4OCwyOTM2MDEyODA6NTI0Mjg4LDMxMDM3ODQ5NjoxMDc0MjY2MTEyLDMyNzE1NTcxMjoxNjM4NCwzNDM5MzI5Mjg6MTA3Mzc1ODIwOCwzNjA3MTAxNDQ6MTA3NDI4MjUxMiwzNzc0ODczNjA6MTYsMzk0MjY0NTc2OjEwNzM3NDE4MjQsNDExMDQxNzkyOjEwNzQyODI0OTYsNDI3ODE5MDA4OjEwNzM3NDE4NDAsNDQ0NTk2MjI0OjEwNzM3NTgyMjQsNDYxMzczNDQwOjUyNDMwNCw0NzgxNTA2NTY6MCw0OTQ5Mjc4NzI6MTY0MDAsNTExNzA1MDg4OjEwNzQyNjYxMjgsNTI4NDgyMzA0OjU0MDY3Mn0sezA6MjYwLDEwNDg1NzY6MCwyMDk3MTUyOjY3MTA5MTIwLDMxNDU3Mjg6NjU3OTYsNDE5NDMwNDo2NTU0MCw1MjQyODgwOjY3MTA4ODY4LDYyOTE0NTY6NjcxNzQ2NjAsNzM0MDAzMjo2NzE3NDQwMCw4Mzg4NjA4OjY3MTA4ODY0LDk0MzcxODQ6NjcxNzQ2NTYsMTA0ODU3NjA6NjU3OTIsMTE1MzQzMzY6NjcxNzQ0MDQsMTI1ODI5MTI6NjcxMDkxMjQsMTM2MzE0ODg6NjU1MzYsMTQ2ODAwNjQ6NCwxNTcyODY0MDoyNTYsNTI0Mjg4OjY3MTc0NjU2LDE1NzI4NjQ6NjcxNzQ0MDQsMjYyMTQ0MDowLDM2NzAwMTY6NjcxMDkxMjAsNDcxODU5Mjo2NzEwODg2OCw1NzY3MTY4OjY1NTM2LDY4MTU3NDQ6NjU1NDAsNzg2NDMyMDoyNjAsODkxMjg5Njo0LDk5NjE0NzI6MjU2LDExMDEwMDQ4OjY3MTc0NDAwLDEyMDU4NjI0OjY1Nzk2LDEzMTA3MjAwOjY1NzkyLDE0MTU1Nzc2OjY3MTA5MTI0LDE1MjA0MzUyOjY3MTc0NjYwLDE2MjUyOTI4OjY3MTA4ODY0LDE2Nzc3MjE2OjY3MTc0NjU2LDE3ODI1NzkyOjY1NTQwLDE4ODc0MzY4OjY1NTM2LDE5OTIyOTQ0OjY3MTA5MTIwLDIwOTcxNTIwOjI1NiwyMjAyMDA5Njo2NzE3NDY2MCwyMzA2ODY3Mjo2NzEwODg2OCwyNDExNzI0ODowLDI1MTY1ODI0OjY3MTA5MTI0LDI2MjE0NDAwOjY3MTA4ODY0LDI3MjYyOTc2OjQsMjgzMTE1NTI6NjU3OTIsMjkzNjAxMjg6NjcxNzQ0MDAsMzA0MDg3MDQ6MjYwLDMxNDU3MjgwOjY1Nzk2LDMyNTA1ODU2OjY3MTc0NDA0LDE3MzAxNTA0OjY3MTA4ODY0LDE4MzUwMDgwOjI2MCwxOTM5ODY1Njo2NzE3NDY1NiwyMDQ0NzIzMjowLDIxNDk1ODA4OjY1NTQwLDIyNTQ0Mzg0OjY3MTA5MTIwLDIzNTkyOTYwOjI1NiwyNDY0MTUzNjo2NzE3NDQwNCwyNTY5MDExMjo2NTUzNiwyNjczODY4ODo2NzE3NDY2MCwyNzc4NzI2NDo2NTc5NiwyODgzNTg0MDo2NzEwODg2OCwyOTg4NDQxNjo2NzEwOTEyNCwzMDkzMjk5Mjo2NzE3NDQwMCwzMTk4MTU2ODo0LDMzMDMwMTQ0OjY1NzkyfSx7MDoyMTUxNjgyMDQ4LDY1NTM2OjIxNDc0ODc4MDgsMTMxMDcyOjQxOTg0NjQsMTk2NjA4OjIxNTE2Nzc5NTIsMjYyMTQ0OjAsMzI3NjgwOjQxOTg0MDAsMzkzMjE2OjIxNDc0ODM3MTIsNDU4NzUyOjQxOTQzNjgsNTI0Mjg4OjIxNDc0ODM2NDgsNTg5ODI0OjQxOTQzMDQsNjU1MzYwOjY0LDcyMDg5NjoyMTQ3NDg3NzQ0LDc4NjQzMjoyMTUxNjc4MDE2LDg1MTk2ODo0MTYwLDkxNzUwNDo0MDk2LDk4MzA0MDoyMTUxNjgyMTEyLDMyNzY4OjIxNDc0ODc4MDgsOTgzMDQ6NjQsMTYzODQwOjIxNTE2NzgwMTYsMjI5Mzc2OjIxNDc0ODc3NDQsMjk0OTEyOjQxOTg0MDAsMzYwNDQ4OjIxNTE2ODIxMTIsNDI1OTg0OjAsNDkxNTIwOjIxNTE2Nzc5NTIsNTU3MDU2OjQwOTYsNjIyNTkyOjIxNTE2ODIwNDgsNjg4MTI4OjQxOTQzMDQsNzUzNjY0OjQxNjAsODE5MjAwOjIxNDc0ODM2NDgsODg0NzM2OjQxOTQzNjgsOTUwMjcyOjQxOTg0NjQsMTAxNTgwODoyMTQ3NDgzNzEyLDEwNDg1NzY6NDE5NDM2OCwxMTE0MTEyOjQxOTg0MDAsMTE3OTY0ODoyMTQ3NDgzNzEyLDEyNDUxODQ6MCwxMzEwNzIwOjQxNjAsMTM3NjI1NjoyMTUxNjc4MDE2LDE0NDE3OTI6MjE1MTY4MjA0OCwxNTA3MzI4OjIxNDc0ODc4MDgsMTU3Mjg2NDoyMTUxNjgyMTEyLDE2Mzg0MDA6MjE0NzQ4MzY0OCwxNzAzOTM2OjIxNTE2Nzc5NTIsMTc2OTQ3Mjo0MTk4NDY0LDE4MzUwMDg6MjE0NzQ4Nzc0NCwxOTAwNTQ0OjQxOTQzMDQsMTk2NjA4MDo2NCwyMDMxNjE2OjQwOTYsMTA4MTM0NDoyMTUxNjc3OTUyLDExNDY4ODA6MjE1MTY4MjExMiwxMjEyNDE2OjAsMTI3Nzk1Mjo0MTk4NDAwLDEzNDM0ODg6NDE5NDM2OCwxNDA5MDI0OjIxNDc0ODM2NDgsMTQ3NDU2MDoyMTQ3NDg3ODA4LDE1NDAwOTY6NjQsMTYwNTYzMjoyMTQ3NDgzNzEyLDE2NzExNjg6NDA5NiwxNzM2NzA0OjIxNDc0ODc3NDQsMTgwMjI0MDoyMTUxNjc4MDE2LDE4Njc3NzY6NDE2MCwxOTMzMzEyOjIxNTE2ODIwNDgsMTk5ODg0ODo0MTk0MzA0LDIwNjQzODQ6NDE5ODQ2NH0sezA6MTI4LDQwOTY6MTcwMzkzNjAsODE5MjoyNjIxNDQsMTIyODg6NTM2ODcwOTEyLDE2Mzg0OjUzNzEzMzE4NCwyMDQ4MDoxNjc3NzM0NCwyNDU3Njo1NTM2NDgyNTYsMjg2NzI6MjYyMjcyLDMyNzY4OjE2Nzc3MjE2LDM2ODY0OjUzNzEzMzA1Niw0MDk2MDo1MzY4NzEwNDAsNDUwNTY6NTUzOTEwNDAwLDQ5MTUyOjU1MzkxMDI3Miw1MzI0ODowLDU3MzQ0OjE3MDM5NDg4LDYxNDQwOjU1MzY0ODEyOCwyMDQ4OjE3MDM5NDg4LDYxNDQ6NTUzNjQ4MjU2LDEwMjQwOjEyOCwxNDMzNjoxNzAzOTM2MCwxODQzMjoyNjIxNDQsMjI1Mjg6NTM3MTMzMTg0LDI2NjI0OjU1MzkxMDI3MiwzMDcyMDo1MzY4NzA5MTIsMzQ4MTY6NTM3MTMzMDU2LDM4OTEyOjAsNDMwMDg6NTUzOTEwNDAwLDQ3MTA0OjE2Nzc3MzQ0LDUxMjAwOjUzNjg3MTA0MCw1NTI5Njo1NTM2NDgxMjgsNTkzOTI6MTY3NzcyMTYsNjM0ODg6MjYyMjcyLDY1NTM2OjI2MjE0NCw2OTYzMjoxMjgsNzM3Mjg6NTM2ODcwOTEyLDc3ODI0OjU1MzY0ODI1Niw4MTkyMDoxNjc3NzM0NCw4NjAxNjo1NTM5MTAyNzIsOTAxMTI6NTM3MTMzMTg0LDk0MjA4OjE2Nzc3MjE2LDk4MzA0OjU1MzkxMDQwMCwxMDI0MDA6NTUzNjQ4MTI4LDEwNjQ5NjoxNzAzOTM2MCwxMTA1OTI6NTM3MTMzMDU2LDExNDY4ODoyNjIyNzIsMTE4Nzg0OjUzNjg3MTA0MCwxMjI4ODA6MCwxMjY5NzY6MTcwMzk0ODgsNjc1ODQ6NTUzNjQ4MjU2LDcxNjgwOjE2Nzc3MjE2LDc1Nzc2OjE3MDM5MzYwLDc5ODcyOjUzNzEzMzE4NCw4Mzk2ODo1MzY4NzA5MTIsODgwNjQ6MTcwMzk0ODgsOTIxNjA6MTI4LDk2MjU2OjU1MzkxMDI3MiwxMDAzNTI6MjYyMjcyLDEwNDQ0ODo1NTM5MTA0MDAsMTA4NTQ0OjAsMTEyNjQwOjU1MzY0ODEyOCwxMTY3MzY6MTY3NzczNDQsMTIwODMyOjI2MjE0NCwxMjQ5Mjg6NTM3MTMzMDU2LDEyOTAyNDo1MzY4NzEwNDB9LHswOjI2ODQzNTQ2NCwyNTY6ODE5Miw1MTI6MjcwNTMyNjA4LDc2ODoyNzA1NDA4MDgsMTAyNDoyNjg0NDM2NDgsMTI4MDoyMDk3MTUyLDE1MzY6MjA5NzE2MCwxNzkyOjI2ODQzNTQ1NiwyMDQ4OjAsMjMwNDoyNjg0NDM2NTYsMjU2MDoyMTA1MzQ0LDI4MTY6OCwzMDcyOjI3MDUzMjYxNiwzMzI4OjIxMDUzNTIsMzU4NDo4MjAwLDM4NDA6MjcwNTQwODAwLDEyODoyNzA1MzI2MDgsMzg0OjI3MDU0MDgwOCw2NDA6OCw4OTY6MjA5NzE1MiwxMTUyOjIxMDUzNTIsMTQwODoyNjg0MzU0NjQsMTY2NDoyNjg0NDM2NDgsMTkyMDo4MjAwLDIxNzY6MjA5NzE2MCwyNDMyOjgxOTIsMjY4ODoyNjg0NDM2NTYsMjk0NDoyNzA1MzI2MTYsMzIwMDowLDM0NTY6MjcwNTQwODAwLDM3MTI6MjEwNTM0NCwzOTY4OjI2ODQzNTQ1Niw0MDk2OjI2ODQ0MzY0OCw0MzUyOjI3MDUzMjYxNiw0NjA4OjI3MDU0MDgwOCw0ODY0OjgyMDAsNTEyMDoyMDk3MTUyLDUzNzY6MjY4NDM1NDU2LDU2MzI6MjY4NDM1NDY0LDU4ODg6MjEwNTM0NCw2MTQ0OjIxMDUzNTIsNjQwMDowLDY2NTY6OCw2OTEyOjI3MDUzMjYwOCw3MTY4OjgxOTIsNzQyNDoyNjg0NDM2NTYsNzY4MDoyNzA1NDA4MDAsNzkzNjoyMDk3MTYwLDQyMjQ6OCw0NDgwOjIxMDUzNDQsNDczNjoyMDk3MTUyLDQ5OTI6MjY4NDM1NDY0LDUyNDg6MjY4NDQzNjQ4LDU1MDQ6ODIwMCw1NzYwOjI3MDU0MDgwOCw2MDE2OjI3MDUzMjYwOCw2MjcyOjI3MDU0MDgwMCw2NTI4OjI3MDUzMjYxNiw2Nzg0OjgxOTIsNzA0MDoyMTA1MzUyLDcyOTY6MjA5NzE2MCw3NTUyOjAsNzgwODoyNjg0MzU0NTYsODA2NDoyNjg0NDM2NTZ9LHswOjEwNDg1NzYsMTY6MzM1NTU0NTcsMzI6MTAyNCw0ODoxMDQ5NjAxLDY0OjM0NjA0MDMzLDgwOjAsOTY6MSwxMTI6MzQ2MDMwMDksMTI4OjMzNTU1NDU2LDE0NDoxMDQ4NTc3LDE2MDozMzU1NDQzMywxNzY6MzQ2MDQwMzIsMTkyOjM0NjAzMDA4LDIwODoxMDI1LDIyNDoxMDQ5NjAwLDI0MDozMzU1NDQzMiw4OjM0NjAzMDA5LDI0OjAsNDA6MzM1NTU0NTcsNTY6MzQ2MDQwMzIsNzI6MTA0ODU3Niw4ODozMzU1NDQzMywxMDQ6MzM1NTQ0MzIsMTIwOjEwMjUsMTM2OjEwNDk2MDEsMTUyOjMzNTU1NDU2LDE2ODozNDYwMzAwOCwxODQ6MTA0ODU3NywyMDA6MTAyNCwyMTY6MzQ2MDQwMzMsMjMyOjEsMjQ4OjEwNDk2MDAsMjU2OjMzNTU0NDMyLDI3MjoxMDQ4NTc2LDI4ODozMzU1NTQ1NywzMDQ6MzQ2MDMwMDksMzIwOjEwNDg1NzcsMzM2OjMzNTU1NDU2LDM1MjozNDYwNDAzMiwzNjg6MTA0OTYwMSwzODQ6MTAyNSw0MDA6MzQ2MDQwMzMsNDE2OjEwNDk2MDAsNDMyOjEsNDQ4OjAsNDY0OjM0NjAzMDA4LDQ4MDozMzU1NDQzMyw0OTY6MTAyNCwyNjQ6MTA0OTYwMCwyODA6MzM1NTU0NTcsMjk2OjM0NjAzMDA5LDMxMjoxLDMyODozMzU1NDQzMiwzNDQ6MTA0ODU3NiwzNjA6MTAyNSwzNzY6MzQ2MDQwMzIsMzkyOjMzNTU0NDMzLDQwODozNDYwMzAwOCw0MjQ6MCw0NDA6MzQ2MDQwMzMsNDU2OjEwNDk2MDEsNDcyOjEwMjQsNDg4OjMzNTU1NDU2LDUwNDoxMDQ4NTc3fSx7MDoxMzQyMTk4MDgsMToxMzEwNzIsMjoxMzQyMTc3MjgsMzozMiw0OjEzMTEwNCw1OjEzNDM1MDg4MCw2OjEzNDM1MDg0OCw3OjIwNDgsODoxMzQzNDg4MDAsOToxMzQyMTk3NzYsMTA6MTMzMTIwLDExOjEzNDM0ODgzMiwxMjoyMDgwLDEzOjAsMTQ6MTM0MjE3NzYwLDE1OjEzMzE1MiwyMTQ3NDgzNjQ4OjIwNDgsMjE0NzQ4MzY0OToxMzQzNTA4ODAsMjE0NzQ4MzY1MDoxMzQyMTk4MDgsMjE0NzQ4MzY1MToxMzQyMTc3MjgsMjE0NzQ4MzY1MjoxMzQzNDg4MDAsMjE0NzQ4MzY1MzoxMzMxMjAsMjE0NzQ4MzY1NDoxMzMxNTIsMjE0NzQ4MzY1NTozMiwyMTQ3NDgzNjU2OjEzNDIxNzc2MCwyMTQ3NDgzNjU3OjIwODAsMjE0NzQ4MzY1ODoxMzExMDQsMjE0NzQ4MzY1OToxMzQzNTA4NDgsMjE0NzQ4MzY2MDowLDIxNDc0ODM2NjE6MTM0MzQ4ODMyLDIxNDc0ODM2NjI6MTM0MjE5Nzc2LDIxNDc0ODM2NjM6MTMxMDcyLDE2OjEzMzE1MiwxNzoxMzQzNTA4NDgsMTg6MzIsMTk6MjA0OCwyMDoxMzQyMTk3NzYsMjE6MTM0MjE3NzYwLDIyOjEzNDM0ODgzMiwyMzoxMzEwNzIsMjQ6MCwyNToxMzExMDQsMjY6MTM0MzQ4ODAwLDI3OjEzNDIxOTgwOCwyODoxMzQzNTA4ODAsMjk6MTMzMTIwLDMwOjIwODAsMzE6MTM0MjE3NzI4LDIxNDc0ODM2NjQ6MTMxMDcyLDIxNDc0ODM2NjU6MjA0OCwyMTQ3NDgzNjY2OjEzNDM0ODgzMiwyMTQ3NDgzNjY3OjEzMzE1MiwyMTQ3NDgzNjY4OjMyLDIxNDc0ODM2Njk6MTM0MzQ4ODAwLDIxNDc0ODM2NzA6MTM0MjE3NzI4LDIxNDc0ODM2NzE6MTM0MjE5ODA4LDIxNDc0ODM2NzI6MTM0MzUwODgwLDIxNDc0ODM2NzM6MTM0MjE3NzYwLDIxNDc0ODM2NzQ6MTM0MjE5Nzc2LDIxNDc0ODM2NzU6MCwyMTQ3NDgzNjc2OjEzMzEyMCwyMTQ3NDgzNjc3OjIwODAsMjE0NzQ4MzY3ODoxMzExMDQsMjE0NzQ4MzY3OToxMzQzNTA4NDh9XSx1PVs0MTYwNzQ5NTY5LDUyODQ4MjMwNCwzMzAzMDE0NCwyMDY0Mzg0LDEyOTAyNCw4MDY0LDUwNCwyMTQ3NDgzNjc5XSxkPWEuREVTPXMuZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe2Zvcih2YXIgdD10aGlzLl9rZXkscj10LndvcmRzLGU9W10saT0wO2k8NTY7aSsrKXt2YXIgbj1jW2ldLTE7ZVtpXT1yW24+Pj41XT4+PjMxLW4lMzImMX1mb3IodmFyIG89dGhpcy5fc3ViS2V5cz1bXSxzPTA7czwxNjtzKyspe2Zvcih2YXIgYT1vW3NdPVtdLGY9bFtzXSxpPTA7aTwyNDtpKyspYVtpLzZ8MF18PWVbKGhbaV0tMStmKSUyOF08PDMxLWklNixhWzQrKGkvNnwwKV18PWVbMjgrKGhbaSsyNF0tMStmKSUyOF08PDMxLWklNjthWzBdPWFbMF08PDF8YVswXT4+PjMxO2Zvcih2YXIgaT0xO2k8NztpKyspYVtpXT1hW2ldPj4+NCooaS0xKSszO2FbN109YVs3XTw8NXxhWzddPj4+Mjd9Zm9yKHZhciB1PXRoaXMuX2ludlN1YktleXM9W10saT0wO2k8MTY7aSsrKXVbaV09b1sxNS1pXX0sZW5jcnlwdEJsb2NrOmZ1bmN0aW9uKHQscil7dGhpcy5fZG9DcnlwdEJsb2NrKHQscix0aGlzLl9zdWJLZXlzKX0sZGVjcnlwdEJsb2NrOmZ1bmN0aW9uKHQscil7dGhpcy5fZG9DcnlwdEJsb2NrKHQscix0aGlzLl9pbnZTdWJLZXlzKX0sX2RvQ3J5cHRCbG9jazpmdW5jdGlvbih0LGksbil7dGhpcy5fbEJsb2NrPXRbaV0sdGhpcy5fckJsb2NrPXRbaSsxXSxyLmNhbGwodGhpcyw0LDI1MjY0NTEzNSksci5jYWxsKHRoaXMsMTYsNjU1MzUpLGUuY2FsbCh0aGlzLDIsODU4OTkzNDU5KSxlLmNhbGwodGhpcyw4LDE2NzExOTM1KSxyLmNhbGwodGhpcywxLDE0MzE2NTU3NjUpO2Zvcih2YXIgbz0wO288MTY7bysrKXtmb3IodmFyIHM9bltvXSxhPXRoaXMuX2xCbG9jayxjPXRoaXMuX3JCbG9jayxoPTAsbD0wO2w8ODtsKyspaHw9ZltsXVsoKGNec1tsXSkmdVtsXSk+Pj4wXTt0aGlzLl9sQmxvY2s9Yyx0aGlzLl9yQmxvY2s9YV5ofXZhciBkPXRoaXMuX2xCbG9jazt0aGlzLl9sQmxvY2s9dGhpcy5fckJsb2NrLHRoaXMuX3JCbG9jaz1kLHIuY2FsbCh0aGlzLDEsMTQzMTY1NTc2NSksZS5jYWxsKHRoaXMsOCwxNjcxMTkzNSksZS5jYWxsKHRoaXMsMiw4NTg5OTM0NTkpLHIuY2FsbCh0aGlzLDE2LDY1NTM1KSxyLmNhbGwodGhpcyw0LDI1MjY0NTEzNSksdFtpXT10aGlzLl9sQmxvY2ssdFtpKzFdPXRoaXMuX3JCbG9ja30sa2V5U2l6ZToyLGl2U2l6ZToyLGJsb2NrU2l6ZToyfSk7aS5ERVM9cy5fY3JlYXRlSGVscGVyKGQpO3ZhciB2PWEuVHJpcGxlREVTPXMuZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2tleSxyPXQud29yZHM7dGhpcy5fZGVzMT1kLmNyZWF0ZUVuY3J5cHRvcihvLmNyZWF0ZShyLnNsaWNlKDAsMikpKSx0aGlzLl9kZXMyPWQuY3JlYXRlRW5jcnlwdG9yKG8uY3JlYXRlKHIuc2xpY2UoMiw0KSkpLHRoaXMuX2RlczM9ZC5jcmVhdGVFbmNyeXB0b3Ioby5jcmVhdGUoci5zbGljZSg0LDYpKSl9LGVuY3J5cHRCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX2RlczEuZW5jcnlwdEJsb2NrKHQsciksdGhpcy5fZGVzMi5kZWNyeXB0QmxvY2sodCxyKSx0aGlzLl9kZXMzLmVuY3J5cHRCbG9jayh0LHIpfSxkZWNyeXB0QmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9kZXMzLmRlY3J5cHRCbG9jayh0LHIpLHRoaXMuX2RlczIuZW5jcnlwdEJsb2NrKHQsciksdGhpcy5fZGVzMS5kZWNyeXB0QmxvY2sodCxyKX0sa2V5U2l6ZTo2LGl2U2l6ZToyLGJsb2NrU2l6ZToyfSk7aS5UcmlwbGVERVM9cy5fY3JlYXRlSGVscGVyKHYpfSgpLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gcigpe2Zvcih2YXIgdD10aGlzLl9TLHI9dGhpcy5faSxlPXRoaXMuX2osaT0wLG49MDtuPDQ7bisrKXtyPShyKzEpJTI1NixlPShlK3Rbcl0pJTI1Njt2YXIgbz10W3JdO3Rbcl09dFtlXSx0W2VdPW8saXw9dFsodFtyXSt0W2VdKSUyNTZdPDwyNC04Km59cmV0dXJuIHRoaXMuX2k9cix0aGlzLl9qPWUsaX12YXIgZT10LGk9ZS5saWIsbj1pLlN0cmVhbUNpcGhlcixvPWUuYWxnbyxzPW8uUkM0PW4uZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe2Zvcih2YXIgdD10aGlzLl9rZXkscj10LndvcmRzLGU9dC5zaWdCeXRlcyxpPXRoaXMuX1M9W10sbj0wO248MjU2O24rKylpW25dPW47Zm9yKHZhciBuPTAsbz0wO248MjU2O24rKyl7dmFyIHM9biVlLGE9cltzPj4+Ml0+Pj4yNC1zJTQqOCYyNTU7bz0obytpW25dK2EpJTI1Njt2YXIgYz1pW25dO2lbbl09aVtvXSxpW29dPWN9dGhpcy5faT10aGlzLl9qPTB9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LGUpe3RbZV1ePXIuY2FsbCh0aGlzKX0sa2V5U2l6ZTo4LGl2U2l6ZTowfSk7ZS5SQzQ9bi5fY3JlYXRlSGVscGVyKHMpO3ZhciBhPW8uUkM0RHJvcD1zLmV4dGVuZCh7Y2ZnOnMuY2ZnLmV4dGVuZCh7ZHJvcDoxOTJ9KSxfZG9SZXNldDpmdW5jdGlvbigpe3MuX2RvUmVzZXQuY2FsbCh0aGlzKTtmb3IodmFyIHQ9dGhpcy5jZmcuZHJvcDt0PjA7dC0tKXIuY2FsbCh0aGlzKX19KTtlLlJDNERyb3A9bi5fY3JlYXRlSGVscGVyKGEpfSgpLHQubW9kZS5DVFJHbGFkbWFuPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0KXtpZigyNTU9PT0odD4+MjQmMjU1KSl7dmFyIHI9dD4+MTYmMjU1LGU9dD4+OCYyNTUsaT0yNTUmdDsyNTU9PT1yPyhyPTAsMjU1PT09ZT8oZT0wLDI1NT09PWk/aT0wOisraSk6KytlKTorK3IsdD0wLHQrPXI8PDE2LHQrPWU8PDgsdCs9aX1lbHNlIHQrPTE8PDI0O3JldHVybiB0fWZ1bmN0aW9uIGUodCl7cmV0dXJuIDA9PT0odFswXT1yKHRbMF0pKSYmKHRbMV09cih0WzFdKSksdH12YXIgaT10LmxpYi5CbG9ja0NpcGhlck1vZGUuZXh0ZW5kKCksbj1pLkVuY3J5cHRvcj1pLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7dmFyIGk9dGhpcy5fY2lwaGVyLG49aS5ibG9ja1NpemUsbz10aGlzLl9pdixzPXRoaXMuX2NvdW50ZXI7byYmKHM9dGhpcy5fY291bnRlcj1vLnNsaWNlKDApLHRoaXMuX2l2PXZvaWQgMCksZShzKTt2YXIgYT1zLnNsaWNlKDApO2kuZW5jcnlwdEJsb2NrKGEsMCk7Zm9yKHZhciBjPTA7YzxuO2MrKyl0W3IrY11ePWFbY119fSk7cmV0dXJuIGkuRGVjcnlwdG9yPW4saX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIHIoKXtmb3IodmFyIHQ9dGhpcy5fWCxyPXRoaXMuX0MsZT0wO2U8ODtlKyspYVtlXT1yW2VdO3JbMF09clswXSsxMjk1MzA3NTk3K3RoaXMuX2J8MCxyWzFdPXJbMV0rMzU0NTA1MjM3MSsoclswXT4+PjA8YVswXT4+PjA/MTowKXwwLHJbMl09clsyXSs4ODYyNjMwOTIrKHJbMV0+Pj4wPGFbMV0+Pj4wPzE6MCl8MCxyWzNdPXJbM10rMTI5NTMwNzU5NysoclsyXT4+PjA8YVsyXT4+PjA/MTowKXwwLHJbNF09cls0XSszNTQ1MDUyMzcxKyhyWzNdPj4+MDxhWzNdPj4+MD8xOjApfDAscls1XT1yWzVdKzg4NjI2MzA5Misocls0XT4+PjA8YVs0XT4+PjA/MTowKXwwLHJbNl09cls2XSsxMjk1MzA3NTk3KyhyWzVdPj4+MDxhWzVdPj4+MD8xOjApfDAscls3XT1yWzddKzM1NDUwNTIzNzErKHJbNl0+Pj4wPGFbNl0+Pj4wPzE6MCl8MCx0aGlzLl9iPXJbN10+Pj4wPGFbN10+Pj4wPzE6MDtmb3IodmFyIGU9MDtlPDg7ZSsrKXt2YXIgaT10W2VdK3JbZV0sbj02NTUzNSZpLG89aT4+PjE2LHM9KChuKm4+Pj4xNykrbipvPj4+MTUpK28qbyxoPSgoNDI5NDkwMTc2MCZpKSppfDApKygoNjU1MzUmaSkqaXwwKTtjW2VdPXNeaH10WzBdPWNbMF0rKGNbN108PDE2fGNbN10+Pj4xNikrKGNbNl08PDE2fGNbNl0+Pj4xNil8MCx0WzFdPWNbMV0rKGNbMF08PDh8Y1swXT4+PjI0KStjWzddfDAsdFsyXT1jWzJdKyhjWzFdPDwxNnxjWzFdPj4+MTYpKyhjWzBdPDwxNnxjWzBdPj4+MTYpfDAsdFszXT1jWzNdKyhjWzJdPDw4fGNbMl0+Pj4yNCkrY1sxXXwwLHRbNF09Y1s0XSsoY1szXTw8MTZ8Y1szXT4+PjE2KSsoY1syXTw8MTZ8Y1syXT4+PjE2KXwwLHRbNV09Y1s1XSsoY1s0XTw8OHxjWzRdPj4+MjQpK2NbM118MCx0WzZdPWNbNl0rKGNbNV08PDE2fGNbNV0+Pj4xNikrKGNbNF08PDE2fGNbNF0+Pj4xNil8MCx0WzddPWNbN10rKGNbNl08PDh8Y1s2XT4+PjI0KStjWzVdfDB9dmFyIGU9dCxpPWUubGliLG49aS5TdHJlYW1DaXBoZXIsbz1lLmFsZ28scz1bXSxhPVtdLGM9W10saD1vLlJhYmJpdD1uLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5fa2V5LndvcmRzLGU9dGhpcy5jZmcuaXYsaT0wO2k8NDtpKyspdFtpXT0xNjcxMTkzNSYodFtpXTw8OHx0W2ldPj4+MjQpfDQyNzgyNTUzNjAmKHRbaV08PDI0fHRbaV0+Pj44KTt2YXIgbj10aGlzLl9YPVt0WzBdLHRbM108PDE2fHRbMl0+Pj4xNix0WzFdLHRbMF08PDE2fHRbM10+Pj4xNix0WzJdLHRbMV08PDE2fHRbMF0+Pj4xNix0WzNdLHRbMl08PDE2fHRbMV0+Pj4xNl0sbz10aGlzLl9DPVt0WzJdPDwxNnx0WzJdPj4+MTYsNDI5NDkwMTc2MCZ0WzBdfDY1NTM1JnRbMV0sdFszXTw8MTZ8dFszXT4+PjE2LDQyOTQ5MDE3NjAmdFsxXXw2NTUzNSZ0WzJdLHRbMF08PDE2fHRbMF0+Pj4xNiw0Mjk0OTAxNzYwJnRbMl18NjU1MzUmdFszXSx0WzFdPDwxNnx0WzFdPj4+MTYsNDI5NDkwMTc2MCZ0WzNdfDY1NTM1JnRbMF1dO3RoaXMuX2I9MDtmb3IodmFyIGk9MDtpPDQ7aSsrKXIuY2FsbCh0aGlzKTtmb3IodmFyIGk9MDtpPDg7aSsrKW9baV1ePW5baSs0JjddO2lmKGUpe3ZhciBzPWUud29yZHMsYT1zWzBdLGM9c1sxXSxoPTE2NzExOTM1JihhPDw4fGE+Pj4yNCl8NDI3ODI1NTM2MCYoYTw8MjR8YT4+PjgpLGw9MTY3MTE5MzUmKGM8PDh8Yz4+PjI0KXw0Mjc4MjU1MzYwJihjPDwyNHxjPj4+OCksZj1oPj4+MTZ8NDI5NDkwMTc2MCZsLHU9bDw8MTZ8NjU1MzUmaDtvWzBdXj1oLG9bMV1ePWYsb1syXV49bCxvWzNdXj11LG9bNF1ePWgsb1s1XV49ZixvWzZdXj1sLG9bN11ePXU7Zm9yKHZhciBpPTA7aTw0O2krKylyLmNhbGwodGhpcyl9fSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxlKXt2YXIgaT10aGlzLl9YO3IuY2FsbCh0aGlzKSxzWzBdPWlbMF1eaVs1XT4+PjE2XmlbM108PDE2LHNbMV09aVsyXV5pWzddPj4+MTZeaVs1XTw8MTYsc1syXT1pWzRdXmlbMV0+Pj4xNl5pWzddPDwxNixzWzNdPWlbNl1eaVszXT4+PjE2XmlbMV08PDE2O2Zvcih2YXIgbj0wO248NDtuKyspc1tuXT0xNjcxMTkzNSYoc1tuXTw8OHxzW25dPj4+MjQpfDQyNzgyNTUzNjAmKHNbbl08PDI0fHNbbl0+Pj44KSx0W2Urbl1ePXNbbl19LGJsb2NrU2l6ZTo0LGl2U2l6ZToyfSk7ZS5SYWJiaXQ9bi5fY3JlYXRlSGVscGVyKGgpfSgpLHQubW9kZS5DVFI9ZnVuY3Rpb24oKXt2YXIgcj10LmxpYi5CbG9ja0NpcGhlck1vZGUuZXh0ZW5kKCksZT1yLkVuY3J5cHRvcj1yLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fY2lwaGVyLGk9ZS5ibG9ja1NpemUsbj10aGlzLl9pdixvPXRoaXMuX2NvdW50ZXI7biYmKG89dGhpcy5fY291bnRlcj1uLnNsaWNlKDApLHRoaXMuX2l2PXZvaWQgMCk7dmFyIHM9by5zbGljZSgwKTtlLmVuY3J5cHRCbG9jayhzLDApLG9baS0xXT1vW2ktMV0rMXwwO2Zvcih2YXIgYT0wO2E8aTthKyspdFtyK2FdXj1zW2FdfX0pO3JldHVybiByLkRlY3J5cHRvcj1lLHJ9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiByKCl7Zm9yKHZhciB0PXRoaXMuX1gscj10aGlzLl9DLGU9MDtlPDg7ZSsrKWFbZV09cltlXTtyWzBdPXJbMF0rMTI5NTMwNzU5Nyt0aGlzLl9ifDAsclsxXT1yWzFdKzM1NDUwNTIzNzErKHJbMF0+Pj4wPGFbMF0+Pj4wPzE6MCl8MCxyWzJdPXJbMl0rODg2MjYzMDkyKyhyWzFdPj4+MDxhWzFdPj4+MD8xOjApfDAsclszXT1yWzNdKzEyOTUzMDc1OTcrKHJbMl0+Pj4wPGFbMl0+Pj4wPzE6MCl8MCxyWzRdPXJbNF0rMzU0NTA1MjM3MSsoclszXT4+PjA8YVszXT4+PjA/MTowKXwwLHJbNV09cls1XSs4ODYyNjMwOTIrKHJbNF0+Pj4wPGFbNF0+Pj4wPzE6MCl8MCxyWzZdPXJbNl0rMTI5NTMwNzU5Nysocls1XT4+PjA8YVs1XT4+PjA/MTowKXwwLHJbN109cls3XSszNTQ1MDUyMzcxKyhyWzZdPj4+MDxhWzZdPj4+MD8xOjApfDAsdGhpcy5fYj1yWzddPj4+MDxhWzddPj4+MD8xOjA7Zm9yKHZhciBlPTA7ZTw4O2UrKyl7dmFyIGk9dFtlXStyW2VdLG49NjU1MzUmaSxvPWk+Pj4xNixzPSgobipuPj4+MTcpK24qbz4+PjE1KStvKm8saD0oKDQyOTQ5MDE3NjAmaSkqaXwwKSsoKDY1NTM1JmkpKml8MCk7Y1tlXT1zXmh9dFswXT1jWzBdKyhjWzddPDwxNnxjWzddPj4+MTYpKyhjWzZdPDwxNnxjWzZdPj4+MTYpfDAsdFsxXT1jWzFdKyhjWzBdPDw4fGNbMF0+Pj4yNCkrY1s3XXwwLHRbMl09Y1syXSsoY1sxXTw8MTZ8Y1sxXT4+PjE2KSsoY1swXTw8MTZ8Y1swXT4+PjE2KXwwLHRbM109Y1szXSsoY1syXTw8OHxjWzJdPj4+MjQpK2NbMV18MCx0WzRdPWNbNF0rKGNbM108PDE2fGNbM10+Pj4xNikrKGNbMl08PDE2fGNbMl0+Pj4xNil8MCx0WzVdPWNbNV0rKGNbNF08PDh8Y1s0XT4+PjI0KStjWzNdfDAsdFs2XT1jWzZdKyhjWzVdPDwxNnxjWzVdPj4+MTYpKyhjWzRdPDwxNnxjWzRdPj4+MTYpfDAsdFs3XT1jWzddKyhjWzZdPDw4fGNbNl0+Pj4yNCkrY1s1XXwwfXZhciBlPXQsaT1lLmxpYixuPWkuU3RyZWFtQ2lwaGVyLG89ZS5hbGdvLHM9W10sYT1bXSxjPVtdLGg9by5SYWJiaXRMZWdhY3k9bi5leHRlbmQoe19kb1Jlc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fa2V5LndvcmRzLGU9dGhpcy5jZmcuaXYsaT10aGlzLl9YPVt0WzBdLHRbM108PDE2fHRbMl0+Pj4xNix0WzFdLHRbMF08PDE2fHRbM10+Pj4xNix0WzJdLHRbMV08PDE2fHRbMF0+Pj4xNix0WzNdLHRbMl08PDE2fHRbMV0+Pj4xNl0sbj10aGlzLl9DPVt0WzJdPDwxNnx0WzJdPj4+MTYsNDI5NDkwMTc2MCZ0WzBdfDY1NTM1JnRbMV0sdFszXTw8MTZ8dFszXT4+PjE2LDQyOTQ5MDE3NjAmdFsxXXw2NTUzNSZ0WzJdLHRbMF08PDE2fHRbMF0+Pj4xNiw0Mjk0OTAxNzYwJnRbMl18NjU1MzUmdFszXSx0WzFdPDwxNnx0WzFdPj4+MTYsNDI5NDkwMTc2MCZ0WzNdfDY1NTM1JnRbMF1dO3RoaXMuX2I9MDtmb3IodmFyIG89MDtvPDQ7bysrKXIuY2FsbCh0aGlzKTtmb3IodmFyIG89MDtvPDg7bysrKW5bb11ePWlbbys0JjddO2lmKGUpe3ZhciBzPWUud29yZHMsYT1zWzBdLGM9c1sxXSxoPTE2NzExOTM1JihhPDw4fGE+Pj4yNCl8NDI3ODI1NTM2MCYoYTw8MjR8YT4+PjgpLGw9MTY3MTE5MzUmKGM8PDh8Yz4+PjI0KXw0Mjc4MjU1MzYwJihjPDwyNHxjPj4+OCksZj1oPj4+MTZ8NDI5NDkwMTc2MCZsLHU9bDw8MTZ8NjU1MzUmaDtuWzBdXj1oLG5bMV1ePWYsblsyXV49bCxuWzNdXj11LG5bNF1ePWgsbls1XV49ZixuWzZdXj1sLG5bN11ePXU7Zm9yKHZhciBvPTA7bzw0O28rKylyLmNhbGwodGhpcyl9fSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxlKXt2YXIgaT10aGlzLl9YO3IuY2FsbCh0aGlzKSxzWzBdPWlbMF1eaVs1XT4+PjE2XmlbM108PDE2LHNbMV09aVsyXV5pWzddPj4+MTZeaVs1XTw8MTYsc1syXT1pWzRdXmlbMV0+Pj4xNl5pWzddPDwxNixzWzNdPWlbNl1eaVszXT4+PjE2XmlbMV08PDE2O2Zvcih2YXIgbj0wO248NDtuKyspc1tuXT0xNjcxMTkzNSYoc1tuXTw8OHxzW25dPj4+MjQpfDQyNzgyNTUzNjAmKHNbbl08PDI0fHNbbl0+Pj44KSx0W2Urbl1ePXNbbl19LGJsb2NrU2l6ZTo0LGl2U2l6ZToyfSk7ZS5SYWJiaXRMZWdhY3k9bi5fY3JlYXRlSGVscGVyKGgpfSgpLHQucGFkLlplcm9QYWRkaW5nPXtwYWQ6ZnVuY3Rpb24odCxyKXt2YXIgZT00KnI7dC5jbGFtcCgpLHQuc2lnQnl0ZXMrPWUtKHQuc2lnQnl0ZXMlZXx8ZSl9LHVucGFkOmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10LndvcmRzLGU9dC5zaWdCeXRlcy0xOyEocltlPj4+Ml0+Pj4yNC1lJTQqOCYyNTUpOyllLS07dC5zaWdCeXRlcz1lKzF9fSx0fSk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jcnlwdG8tanMubWluLmpzLm1hcCJdfQ== -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/module/RankList/List.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, 'd5421HgLShFKIjj5f18m1mi', 'List'); -// Script/module/RankList/List.ts - -"use strict"; -// Learn TypeScript: -// - https://docs.cocos.com/creator/manual/en/scripting/typescript.html -// Learn Attribute: -// - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html -// Learn life-cycle callbacks: -// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html -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 }); -exports.StartAxisType = exports.ListType = void 0; -var ItemRender_1 = require("./ItemRender"); -var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; -/**列表排列方式 */ -var ListType; -(function (ListType) { - /**水平排列 */ - ListType[ListType["Horizontal"] = 1] = "Horizontal"; - /**垂直排列 */ - ListType[ListType["Vertical"] = 2] = "Vertical"; - /**网格排列 */ - ListType[ListType["Grid"] = 3] = "Grid"; -})(ListType = exports.ListType || (exports.ListType = {})); -/**网格布局中的方向 */ -var StartAxisType; -(function (StartAxisType) { - /**水平排列 */ - StartAxisType[StartAxisType["Horizontal"] = 1] = "Horizontal"; - /**垂直排列 */ - StartAxisType[StartAxisType["Vertical"] = 2] = "Vertical"; -})(StartAxisType = exports.StartAxisType || (exports.StartAxisType = {})); -/** - * 列表 - * 根据cocos_example的listView改动而来 - * @author chenkai 2020.7.8 - * @example - * 1.创建cocos的ScrollView组件,添加List,设置List属性即可 - * - */ -var List = /** @class */ (function (_super) { - __extends(List, _super); - function List() { - var _this = _super !== null && _super.apply(this, arguments) || this; - //==================== 属性面板 ========================= - /**列表选项 */ - _this.itemRender = null; - /**排列方式 */ - _this.type = ListType.Vertical; - /**网格布局中的方向 */ - _this.startAxis = StartAxisType.Horizontal; - /**列表项之间X间隔 */ - _this.spaceX = 0; - /**列表项之间Y间隔 */ - _this.spaceY = 0; - /**上间距 */ - _this.padding_top = 0; - /**下间距 */ - _this.padding_buttom = 0; - /**左间距 */ - _this.padding_left = 0; - _this._padding = 0; - /**右间距 */ - _this.padding_right = 0; - //====================== 滚动容器 =============================== - /**列表滚动容器 */ - _this.scrollView = null; - /**scrollView的内容容器 */ - _this.content = null; - //======================== 列表项 =========================== - /**列表项数据 */ - _this.itemDataList = []; - /**应创建的实例数量 */ - _this.spawnCount = 0; - /**存放列表项实例的数组 */ - _this.itemList = []; - /**item的高度 */ - _this.itemHeight = 0; - /**item的宽度 */ - _this.itemWidth = 0; - /**存放不再使用中的列表项 */ - _this.itemPool = []; - //======================= 计算参数 ========================== - /**距离scrollView中心点的距离,超过这个距离的item会被重置,一般设置为 scrollVIew.height/2 + item.heigt/2 + space,因为这个距离item正好超出scrollView显示范围 */ - _this.halfScrollView = 0; - /**上一次content的X值,用于和现在content的X值比较,得出是向左还是向右滚动 */ - _this.lastContentPosX = 0; - /**上一次content的Y值,用于和现在content的Y值比较,得出是向上还是向下滚动 */ - _this.lastContentPosY = 0; - /**网格行数 */ - _this.gridRow = 0; - /**网格列数 */ - _this.gridCol = 0; - /**刷新时间,单位s */ - _this.updateTimer = 0; - /**刷新间隔,单位s */ - _this.updateInterval = 0.1; - /**是否滚动容器 */ - _this.bScrolling = false; - /**刷新的函数 */ - _this.updateFun = function () { }; - return _this; - } - List.prototype.onLoad = function () { - this.itemHeight = this.itemRender.height; - this.itemWidth = this.itemRender.width; - this.scrollView = this.node.getComponent(cc.ScrollView); - this.content = this.scrollView.content; - this.content.anchorX = 0; - this.content.anchorY = 1; - this.content.removeAllChildren(); - this.scrollView.node.on("scrolling", this.onScrolling, this); - }; - /** - * 列表数据 (列表数据复制使用,如果列表数据改变,则需要重新设置一遍数据) - * @param itemDataList item数据列表 - */ - List.prototype.setData = function (itemDataList) { - this.itemDataList = itemDataList.slice(); - this.updateContent(); - }; - /**计算列表的各项参数 */ - List.prototype.countListParam = function () { - var dataLen = this.itemDataList.length; - if (this.type == ListType.Vertical) { - this.scrollView.horizontal = false; - this.scrollView.vertical = true; - this.content.width = this.content.parent.width; - this.content.height = dataLen * this.itemHeight + (dataLen - 1) * this.spaceY + this.padding_top + this.padding_buttom; - this.spawnCount = Math.round(this.scrollView.node.height / (this.itemHeight + this.spaceY)) + 2; //计算创建的item实例数量,比当前scrollView容器能放下的item数量再加上2个 - this.halfScrollView = this.scrollView.node.height / 2 + this.itemHeight / 2 + this.spaceY; //计算bufferZone,item的显示范围 - this.updateFun = this.updateV; - } - else if (this.type == ListType.Horizontal) { - this.scrollView.horizontal = true; - this.scrollView.vertical = false; - this.content.width = dataLen * this.itemWidth + (dataLen - 1) * this.spaceX + this.padding_left + this.padding_right; - this.content.height = this.content.parent.height; - this.spawnCount = Math.round(this.scrollView.node.width / (this.itemWidth + this.spaceX)) + 2; - this.halfScrollView = this.scrollView.node.width / 2 + this.itemWidth / 2 + this.spaceX; - this.updateFun = this.udpateH; - } - else if (this.type == ListType.Grid) { - if (this.startAxis == StartAxisType.Vertical) { - this.scrollView.horizontal = false; - this.scrollView.vertical = true; - this.content.width = this.content.parent.width; - //如果left和right间隔过大,导致放不下一个item,则left和right都设置为0,相当于不生效 - if (this.padding_left + this.padding_right + this.itemWidth + this.spaceX > this.content.width) { - this.padding_left = 0; - this.padding_right = 0; - console.error("padding_left或padding_right过大"); - } - this.gridCol = Math.floor((this.content.width - this.padding_left - this.padding_right) / (this.itemWidth + this.spaceX)); - this.gridRow = Math.ceil(dataLen / this.gridCol); - this.content.height = this.gridRow * this.itemHeight + (this.gridRow - 1) * this.spaceY + this.padding_top + this.padding_buttom; - this.spawnCount = Math.round(this.scrollView.node.height / (this.itemHeight + this.spaceY)) * this.gridCol + this.gridCol * 2; - this.halfScrollView = this.scrollView.node.height / 2 + this.itemHeight / 2 + this.spaceY; - this.updateFun = this.updateGrid_V; - } - else if (this.startAxis == StartAxisType.Horizontal) { - this.scrollView.horizontal = true; - this.scrollView.vertical = false; - //计算高间隔 - this.content.height = this.content.parent.height; - //如果left和right间隔过大,导致放不下一个item,则left和right都设置为0,相当于不生效 - if (this.padding_top + this.padding_buttom + this.itemHeight + this.spaceY > this.content.height) { - this.padding_top = 0; - this.padding_buttom = 0; - console.error("padding_top或padding_buttom过大"); - } - this.gridRow = Math.floor((this.content.height - this.padding_top - this.padding_buttom) / (this.itemHeight + this.spaceY)); - this.gridCol = Math.ceil(dataLen / this.gridRow); - this.content.width = this.gridCol * this.itemWidth + (this.gridCol - 1) * this.spaceX + this.padding_left + this.padding_right; - this.spawnCount = Math.round(this.scrollView.node.width / (this.itemWidth + this.spaceX)) * this.gridRow + this.gridRow * 2; - this.halfScrollView = this.scrollView.node.width / 2 + this.itemWidth / 2 + this.spaceX; - this.updateFun = this.updateGrid_H; - } - } - }; - /** - * 创建列表 - * @param startIndex 起始显示的数据索引 0表示第一项 - * @param offset scrollView偏移量 - */ - List.prototype.createList = function (startIndex, offset) { - //当需要显示的数据长度 > 虚拟列表长度, 删除最末尾几个数据时,列表需要重置位置到scrollView最底端 - if (this.itemDataList.length > this.spawnCount && (startIndex + this.spawnCount - 1) >= this.itemDataList.length) { - startIndex = this.itemDataList.length - this.spawnCount; - offset = this.scrollView.getMaxScrollOffset(); - //当需要显示的数据长度 <= 虚拟列表长度, 隐藏多余的虚拟列表项 - } - else if (this.itemDataList.length <= this.spawnCount) { - startIndex = 0; - } - for (var i = 0; i < this.spawnCount; i++) { - var item = void 0; - //需要显示的数据索引在数据范围内,则item实例显示出来 - if (i + startIndex < this.itemDataList.length) { - if (this.itemList[i] == null) { - item = this.getItem(); - this.itemList.push(item); - item.parent = this.content; - } - else { - item = this.itemList[i]; - } - //需要显示的数据索引超过了数据范围,则item实例隐藏起来 - } - else { - //item实例数量 > 需要显示的数据量 - if (this.itemList.length > (this.itemDataList.length - startIndex)) { - item = this.itemList.pop(); - item.removeFromParent(); - this.itemPool.push(item); - } - continue; - } - var itemRender = item.getComponent(ItemRender_1.default); - itemRender.itemIndex = i + startIndex; - itemRender.data = this.itemDataList[i + startIndex]; - itemRender.dataChanged(); - if (this.type == ListType.Vertical) { - //因为content的锚点X是0,所以item的x值是content.with/2表示居中,锚点Y是1,所以item的y值从content顶部向下是0到负无穷。所以item.y= -item.height/2时,是在content的顶部。 - item.setPosition(this.content.width / 2, -item.height * (0.5 + i + startIndex) - this.spaceY * (i + startIndex) - this.padding_top); - } - else if (this.type == ListType.Horizontal) { - item.setPosition(item.width * (0.5 + i + startIndex) + this.spaceX * (i + startIndex) + this.padding_left, -this.content.height / 2); - } - else if (this.type == ListType.Grid) { - if (this.startAxis == StartAxisType.Vertical) { - var row = Math.floor((i + startIndex) / this.gridCol); - var col = (i + startIndex) % this.gridCol; - item.setPosition(item.width * (0.5 + col) + this.spaceX * col + this.padding_left, -item.height * (0.5 + row) - this.spaceY * row - this.padding_top); - item.opacity = 255; - } - else if (this.startAxis == StartAxisType.Horizontal) { - var row = (i + startIndex) % this.gridRow; - var col = Math.floor((i + startIndex) / this.gridRow); - item.setPosition(item.width * (0.5 + col) + this.spaceX * col + this.padding_left, -item.height * (0.5 + row) - this.spaceY * row - this.padding_top); - item.opacity = 255; - } - } - } - this.scrollView.scrollToOffset(offset); - }; - /**获取一个列表项 */ - List.prototype.getItem = function () { - if (this.itemPool.length == 0) { - return cc.instantiate(this.itemRender); - } - else { - return this.itemPool.pop(); - } - }; - List.prototype.update = function (dt) { - if (this.bScrolling == false) { - return; - } - this.updateTimer += dt; - if (this.updateTimer < this.updateInterval) { - return; - } - this.updateTimer = 0; - this.bScrolling = false; - this.updateFun(); - }; - List.prototype.onScrolling = function () { - this.bScrolling = true; - }; - /**垂直排列 */ - List.prototype.updateV = function () { - var items = this.itemList; - var item; - var bufferZone = this.halfScrollView; - var isUp = this.scrollView.content.y > this.lastContentPosY; - var offset = (this.itemHeight + this.spaceY) * items.length; - for (var i = 0; i < items.length; i++) { - item = items[i]; - var viewPos = this.getPositionInView(item); - if (isUp) { - //item上滑时,超出了scrollView上边界,将item移动到下方复用,item移动到下方的位置必须不超过content的下边界 - if (viewPos.y > bufferZone && item.y - offset - this.padding_buttom > -this.content.height) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex + items.length; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.y = item.y - offset; - } - } - else { - //item下滑时,超出了scrollView下边界,将item移动到上方复用,item移动到上方的位置必须不超过content的上边界 - if (viewPos.y < -bufferZone && item.y + offset + this.padding_top < 0) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex - items.length; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.y = item.y + offset; - } - } - } - this.lastContentPosY = this.scrollView.content.y; - }; - /**水平排列 */ - List.prototype.udpateH = function () { - var items = this.itemList; - var item; - var bufferZone = this.halfScrollView; - var isRight = this.scrollView.content.x > this.lastContentPosX; - var offset = (this.itemWidth + this.spaceX) * items.length; - for (var i = 0; i < items.length; i++) { - item = items[i]; - var viewPos = this.getPositionInView(item); - if (isRight) { - //item右滑时,超出了scrollView右边界,将item移动到左方复用,item移动到左方的位置必须不超过content的左边界 - if (viewPos.x > bufferZone && item.x - offset - this.padding_left > 0) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex - items.length; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.x = item.x - offset; - } - } - else { - //item左滑时,超出了scrollView左边界,将item移动到右方复用,item移动到右方的位置必须不超过content的右边界 - if (viewPos.x < -bufferZone && item.x + offset + this.padding_right < this.content.width) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex + items.length; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.x = item.x + offset; - } - } - } - this.lastContentPosX = this.scrollView.content.x; - }; - /**网格垂直排列 */ - List.prototype.updateGrid_V = function () { - var items = this.itemList; - var item; - var bufferZone = this.halfScrollView; - var isUp = this.scrollView.content.y > this.lastContentPosY; - var offset = (this.itemHeight + this.spaceY) * (this.spawnCount / this.gridCol); - for (var i = 0; i < items.length; i++) { - item = items[i]; - var viewPos = this.getPositionInView(item); - if (isUp) { - //item上滑时,超出了scrollView上边界,将item移动到下方复用,item移动到下方的位置必须不超过content的下边界 - if (viewPos.y > bufferZone && item.y - offset - this.padding_buttom > -this.content.height) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex + (this.spawnCount / this.gridCol) * this.gridCol; - if (this.itemDataList[itemIndex] != null) { - item.y = item.y - offset; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.opacity = 255; - } - else { - item.y = item.y - offset; - itemRender.itemIndex = itemIndex; - item.opacity = 0; - } - } - } - else { //item下滑时,超出了scrollView下边界,将item移动到上方复用,item移动到上方的位置必须不超过content的上边界 - if (viewPos.y < -bufferZone && item.y + offset + this.padding_top < 0) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex - (this.spawnCount / this.gridCol) * this.gridCol; - if (this.itemDataList[itemIndex] != null) { - item.y = item.y + offset; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.opacity = 255; - } - else { - item.y = item.y + offset; - itemRender.itemIndex = itemIndex; - item.opacity = 0; - } - } - } - } - this.lastContentPosY = this.scrollView.content.y; - }; - /**网格水平排列 */ - List.prototype.updateGrid_H = function () { - var items = this.itemList; - var item; - var bufferZone = this.halfScrollView; - var isRight = this.scrollView.content.x > this.lastContentPosX; - var offset = (this.itemWidth + this.spaceX) * (this.spawnCount / this.gridRow); - for (var i = 0; i < items.length; i++) { - item = items[i]; - var viewPos = this.getPositionInView(item); - if (isRight) { - //item右滑时,超出了scrollView右边界,将item移动到左方复用,item移动到左方的位置必须不超过content的左边界 - if (viewPos.x > bufferZone && item.x - offset - this.padding_left > 0) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex - (this.spawnCount / this.gridRow) * this.gridRow; - if (this.itemDataList[itemIndex] != null) { - item.x = item.x - offset; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.opacity = 255; - } - else { - item.x = item.x - offset; - itemRender.itemIndex = itemIndex; - item.opacity = 0; - } - } - } - else { - //item左滑时,超出了scrollView左边界,将item移动到右方复用,item移动到右方的位置必须不超过content的右边界 - if (viewPos.x < -bufferZone && item.x + offset + this.padding_right < this.content.width) { - var itemRender = item.getComponent(ItemRender_1.default); - var itemIndex = itemRender.itemIndex + (this.spawnCount / this.gridRow) * this.gridRow; - if (this.itemDataList[itemIndex] != null) { - item.x = item.x + offset; - itemRender.itemIndex = itemIndex; - itemRender.data = this.itemDataList[itemIndex]; - itemRender.dataChanged(); - item.opacity = 255; - } - else { - item.x = item.x + offset; - itemRender.itemIndex = itemIndex; - item.opacity = 0; - } - } - } - } - this.lastContentPosX = this.scrollView.content.x; - }; - /**获取item在scrollView的局部坐标 */ - List.prototype.getPositionInView = function (item) { - var worldPos = item.parent.convertToWorldSpaceAR(item.position); - var viewPos = this.scrollView.node.convertToNodeSpaceAR(worldPos); - return viewPos; - }; - /**获取列表数据 */ - List.prototype.getListData = function () { - return this.itemDataList; - }; - /** - * 增加一项数据到列表的末尾 - * @param data 数据 - */ - List.prototype.addItem = function (data) { - this.itemDataList.push(data); - this.updateContent(); - }; - /** - * 增加一项数据到列表指定位置 - * @param index 位置,0表示第1项 - * @param data 数据 - */ - List.prototype.addItemAt = function (index, data) { - if (this.itemDataList[index] != null || this.itemDataList.length == index) { - this.itemDataList.splice(index, 1, data); - this.updateContent(); - } - }; - /** - * 删除一项数据 - * @param index 删除项的位置 ,0表示第1项 - */ - List.prototype.deleteItem = function (index) { - if (this.itemDataList[index] != null) { - this.itemDataList.splice(index, 1); - this.updateContent(); - } - }; - /** - * 改变一项数据 - * @param index 位置,0表示第1项 - * @param data 替换的数据 - */ - List.prototype.changeItem = function (index, data) { - if (this.itemDataList[index] != null) { - this.itemDataList[index] = data; - this.updateContent(); - } - }; - /**获取第一个Item的位置 */ - List.prototype.updateContent = function () { - //显示列表实例为0个 - if (this.itemList.length == 0) { - this.countListParam(); - this.createList(0, new cc.Vec2(0, 0)); - //显示列表的实例不为0个,则需要重新排列item实例数组 - } - else { - if (this.type == ListType.Vertical) { - this.itemList.sort(function (a, b) { - return b.y - a.y; - }); - } - else if (this.type == ListType.Horizontal) { - this.itemList.sort(function (a, b) { - return a.x - b.x; - }); - } - else if (this.type == ListType.Grid) { - if (this.startAxis == StartAxisType.Vertical) { - this.itemList.sort(function (a, b) { - return a.x - b.x; - }); - this.itemList.sort(function (a, b) { - return b.y - a.y; - }); - } - else if (this.startAxis == StartAxisType.Horizontal) { - this.itemList.sort(function (a, b) { - return b.y - a.y; - }); - this.itemList.sort(function (a, b) { - return a.x - b.x; - }); - } - } - this.countListParam(); - //获取第一个item实例需要显示的数据索引 - var startIndex = this.itemList[0].getComponent(ItemRender_1.default).itemIndex; - if (this.type == ListType.Grid && this.startAxis == StartAxisType.Vertical) { - startIndex += (startIndex + this.spawnCount) % this.gridCol; - } - else if (this.type == ListType.Grid && this.startAxis == StartAxisType.Horizontal) { - startIndex += (startIndex + this.spawnCount) % this.gridRow; - } - //getScrollOffset()和scrollToOffset()的x值是相反的 - var offset = this.scrollView.getScrollOffset(); - offset.x = -offset.x; - this.createList(startIndex, offset); - } - }; - /**销毁 */ - List.prototype.onDestroy = function () { - //清理列表项 - var len = this.itemList.length; - for (var i = 0; i < len; i++) { - if (cc.isValid(this.itemList[i], true)) { - this.itemList[i].destroy(); - } - } - this.itemList.length = 0; - //清理对象池 - len = this.itemPool.length; - for (var i = 0; i < len; i++) { - if (cc.isValid(this.itemPool[i], true)) { - this.itemPool[i].destroy(); - } - } - this.itemPool.length = 0; - //清理列表数据 - this.itemDataList.length = 0; - }; - __decorate([ - property({ type: cc.Node, tooltip: "列表项" }) - ], List.prototype, "itemRender", void 0); - __decorate([ - property({ type: cc.Enum(ListType), tooltip: "排列方式" }) - ], List.prototype, "type", void 0); - __decorate([ - property({ type: cc.Enum(StartAxisType), tooltip: "网格布局中的方向", visible: function () { return this.type == ListType.Grid; } }) - ], List.prototype, "startAxis", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "列表项X间隔", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) - ], List.prototype, "spaceX", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "列表项Y间隔", visible: function () { return this.type == ListType.Vertical || this.type == ListType.Grid; } }) - ], List.prototype, "spaceY", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "上间距", visible: function () { return (this.type == ListType.Vertical || this.type == ListType.Grid); } }) - ], List.prototype, "padding_top", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "下间距", visible: function () { return (this.type == ListType.Vertical || this.type == ListType.Grid); } }) - ], List.prototype, "padding_buttom", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "左间距", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) - ], List.prototype, "padding_left", void 0); - __decorate([ - property(cc.Integer) - ], List.prototype, "_padding", void 0); - __decorate([ - property({ type: cc.Integer, tooltip: "右间距", visible: function () { return (this.type == ListType.Horizontal || this.type == ListType.Grid); } }) - ], List.prototype, "padding_right", void 0); - List = __decorate([ - ccclass - ], List); - return List; -}(cc.Component)); -exports.default = List; - -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFJhbmtMaXN0XFxMaXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsd0VBQXdFO0FBQ3hFLG1CQUFtQjtBQUNuQixrRkFBa0Y7QUFDbEYsOEJBQThCO0FBQzlCLGtGQUFrRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRiwyQ0FBcUM7QUFFL0IsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFFNUMsWUFBWTtBQUNaLElBQVksUUFPWDtBQVBELFdBQVksUUFBUTtJQUNoQixVQUFVO0lBQ1YsbURBQWMsQ0FBQTtJQUNkLFVBQVU7SUFDViwrQ0FBWSxDQUFBO0lBQ1osVUFBVTtJQUNWLHVDQUFRLENBQUE7QUFDWixDQUFDLEVBUFcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFPbkI7QUFFRCxjQUFjO0FBQ2QsSUFBWSxhQUtYO0FBTEQsV0FBWSxhQUFhO0lBQ3JCLFVBQVU7SUFDViw2REFBYyxDQUFBO0lBQ2QsVUFBVTtJQUNWLHlEQUFZLENBQUE7QUFDaEIsQ0FBQyxFQUxXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBS3hCO0FBRUQ7Ozs7Ozs7R0FPRztBQUVIO0lBQWtDLHdCQUFZO0lBQTlDO1FBQUEscUVBeWlCQztRQXZpQkcscURBQXFEO1FBQ3JELFVBQVU7UUFFSCxnQkFBVSxHQUFZLElBQUksQ0FBQztRQUVsQyxVQUFVO1FBRUgsVUFBSSxHQUFhLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFFMUMsY0FBYztRQUVQLGVBQVMsR0FBa0IsYUFBYSxDQUFDLFVBQVUsQ0FBQztRQUUzRCxjQUFjO1FBRVAsWUFBTSxHQUFXLENBQUMsQ0FBQztRQUUxQixjQUFjO1FBRVAsWUFBTSxHQUFXLENBQUMsQ0FBQztRQUUxQixTQUFTO1FBRUYsaUJBQVcsR0FBVyxDQUFDLENB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SSxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQzs4Q0FDdEc7SUFLaEM7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQzswQ0FDTztJQUk1QjtRQURDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxnQkFBSyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLENBQUM7K0NBQ3JHO0lBMUNoQixJQUFJO1FBRHhCLE9BQU87T0FDYSxJQUFJLENBeWlCeEI7SUFBRCxXQUFDO0NBemlCRCxBQXlpQkMsQ0F6aUJpQyxFQUFFLENBQUMsU0FBUyxHQXlpQjdDO2tCQXppQm9CLElBQUkiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMZWFybiBUeXBlU2NyaXB0OlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy90eXBlc2NyaXB0Lmh0bWxcclxuLy8gTGVhcm4gQXR0cmlidXRlOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9yZWZlcmVuY2UvYXR0cmlidXRlcy5odG1sXHJcbi8vIExlYXJuIGxpZmUtY3ljbGUgY2FsbGJhY2tzOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9saWZlLWN5Y2xlLWNhbGxiYWNrcy5odG1sXHJcblxyXG5pbXBvcnQgSXRlbVJlbmRlciBmcm9tIFwiLi9JdGVtUmVuZGVyXCJcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG4vKirliJfooajmjpLliJfmlrnlvI8gKi9cclxuZXhwb3J0IGVudW0gTGlzdFR5cGUge1xyXG4gICAgLyoq5rC05bmz5o6S5YiXICovXHJcbiAgICBIb3Jpem9udGFsID0gMSxcclxuICAgIC8qKuWeguebtOaOkuWIlyAqL1xyXG4gICAgVmVydGljYWwgPSAyLFxyXG4gICAgLyoq572R5qC85o6S5YiXICovXHJcbiAgICBHcmlkID0gM1xyXG59XHJcblxyXG4vKirnvZHmoLzluIPlsYDkuK3nmoTmlrnlkJEgKi9cclxuZXhwb3J0IGVudW0gU3RhcnRBeGlzVHlwZSB7XHJcbiAgICAvKirmsLTlubPmjpLliJcgKi9cclxuICAgIEhvcml6b250YWwgPSAxLFxyXG4gICAgLyoq5Z6C55u05o6S5YiXICovXHJcbiAgICBWZXJ0aWNhbCA9IDIsXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDliJfooahcclxuICog5qC55o2uY29jb3NfZXhhbXBsZeeahGxpc3RWaWV35pS55Yqo6ICM5p2lXHJcbiAqIEBhdXRob3IgY2hlbmthaSAyMDIwLjcuOFxyXG4gKiBAZXhhbXBsZVxyXG4gKiAgMS7liJvlu7pjb2Nvc+eahFNjcm9sbFZpZXfnu4Tku7bvvIzmt7vliqBMaXN077yM6K6+572uTGlzdOWxnuaAp+WNs+WPr1xyXG4gKiAgXHJcbiAqL1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaXN0IGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuXHJcbiAgICAvLz09PT09PT09PT09PT09PT09PT09IOWxnuaAp+mdouadvyA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAvKirliJfooajpgInpobkgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLk5vZGUsIHRvb2x0aXA6IFwi5YiX6KGo6aG5XCIgfSlcclxuICAgIHB1YmxpYyBpdGVtUmVuZGVyOiBjYy5Ob2RlID0gbnVsbDtcclxuXHJcbiAgICAvKirmjpLliJfmlrnlvI8gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkVudW0oTGlzdFR5cGUpLCB0b29sdGlwOiBcIuaOkuWIl+aWueW8j1wiIH0pXHJcbiAgICBwdWJsaWMgdHlwZTogTGlzdFR5cGUgPSBMaXN0VHlwZS5WZXJ0aWNhbDtcclxuXHJcbiAgICAvKirnvZHmoLzluIPlsYDkuK3nmoTmlrnlkJEgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkVudW0oU3RhcnRBeGlzVHlwZSksIHRvb2x0aXA6IFwi572R5qC85biD5bGA5Lit55qE5pa55ZCRXCIsIHZpc2libGUoKSB7IHJldHVybiB0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCB9IH0pXHJcbiAgICBwdWJsaWMgc3RhcnRBeGlzOiBTdGFydEF4aXNUeXBlID0gU3RhcnRBeGlzVHlwZS5Ib3Jpem9udGFsO1xyXG5cclxuICAgIC8qKuWIl+ihqOmhueS5i+mXtFjpl7TpmpQgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5YiX6KGo6aG5WOmXtOmalFwiLCB2aXNpYmxlKCkgeyByZXR1cm4gKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5Ib3Jpem9udGFsIHx8IHRoaXMudHlwZSA9PSBMaXN0VHlwZS5HcmlkKSB9IH0pXHJcbiAgICBwdWJsaWMgc3BhY2VYOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8qKuWIl+ihqOmhueS5i+mXtFnpl7TpmpQgKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5YiX6KGo6aG5WemXtOmalFwiLCB2aXNpYmxlKCkgeyByZXR1cm4gdGhpcy50eXBlID09IExpc3RUeXBlLlZlcnRpY2FsIHx8IHRoaXMudHlwZSA9PSBMaXN0VHlwZS5HcmlkIH0gfSlcclxuICAgIHB1YmxpYyBzcGFjZVk6IG51bWJlciA9IDA7XHJcblxyXG4gICAgLyoq5LiK6Ze06LedICovXHJcbiAgICBAcHJvcGVydHkoeyB0eXBlOiBjYy5JbnRlZ2VyLCB0b29sdGlwOiBcIuS4iumXtOi3nVwiLCB2aXNpYmxlKCkgeyByZXR1cm4gKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCB8fCB0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkgfSB9KVxyXG4gICAgcHVibGljIHBhZGRpbmdfdG9wOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8qKuS4i+mXtOi3nSAqL1xyXG4gICAgQHByb3BlcnR5KHsgdHlwZTogY2MuSW50ZWdlciwgdG9vbHRpcDogXCLkuIvpl7Tot51cIiwgdmlzaWJsZSgpIHsgcmV0dXJuICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuVmVydGljYWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX2J1dHRvbTogbnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirlt6bpl7Tot50gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5bem6Ze06LedXCIsIHZpc2libGUoKSB7IHJldHVybiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX2xlZnQ6IG51bWJlciA9IDA7XHJcblxyXG5cclxuXHJcbiAgICBAcHJvcGVydHkoY2MuSW50ZWdlcilcclxuICAgIHB1YmxpYyBfcGFkZGluZzogbnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirlj7Ppl7Tot50gKi9cclxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IGNjLkludGVnZXIsIHRvb2x0aXA6IFwi5Y+z6Ze06LedXCIsIHZpc2libGUoKSB7IHJldHVybiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwgfHwgdGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIH0gfSlcclxuICAgIHB1YmxpYyBwYWRkaW5nX3JpZ2h0OiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8vPT09PT09PT09PT09PT09PT09PT09PSDmu5rliqjlrrnlmaggPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgLyoq5YiX6KGo5rua5Yqo5a655ZmoICovXHJcbiAgICBwdWJsaWMgc2Nyb2xsVmlldzogY2MuU2Nyb2xsVmlldyA9IG51bGw7XHJcbiAgICAvKipzY3JvbGxWaWV355qE5YaF5a655a655ZmoICovXHJcbiAgICBwcml2YXRlIGNvbnRlbnQ6IGNjLk5vZGUgPSBudWxsO1xyXG5cclxuICAgIC8vPT09PT09PT09PT09PT09PT09PT09PT09IOWIl+ihqOmhuSA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgIC8qKuWIl+ihqOmhueaVsOaNriAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtRGF0YUxpc3Q6IEFycmF5PGFueT4gPSBbXTtcclxuICAgIC8qKuW6lOWIm+W7uueahOWunuS+i+aVsOmHjyAqL1xyXG4gICAgcHJpdmF0ZSBzcGF3bkNvdW50OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5a2Y5pS+5YiX6KGo6aG55a6e5L6L55qE5pWw57uEICovXHJcbiAgICBwcml2YXRlIGl0ZW1MaXN0OiBBcnJheTxjYy5Ob2RlPiA9IFtdO1xyXG4gICAgLyoqaXRlbeeahOmrmOW6piAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtSGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gICAgLyoqaXRlbeeahOWuveW6piAqL1xyXG4gICAgcHJpdmF0ZSBpdGVtV2lkdGg6IG51bWJlciA9IDA7XHJcbiAgICAvKirlrZjmlL7kuI3lho3kvb/nlKjkuK3nmoTliJfooajpobkgKi9cclxuICAgIHByaXZhdGUgaXRlbVBvb2w6IEFycmF5PGNjLk5vZGU+ID0gW107XHJcblxyXG4gICAgLy89PT09PT09PT09PT09PT09PT09PT09PSDorqHnrpflj4LmlbAgPT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgIC8qKui3neemu3Njcm9sbFZpZXfkuK3lv4PngrnnmoTot53nprvvvIzotoXov4fov5nkuKrot53nprvnmoRpdGVt5Lya6KKr6YeN572u77yM5LiA6Iis6K6+572u5Li6IHNjcm9sbFZJZXcuaGVpZ2h0LzIgKyBpdGVtLmhlaWd0LzIgKyBzcGFjZe+8jOWboOS4uui/meS4qui3neemu2l0ZW3mraPlpb3otoXlh7pzY3JvbGxWaWV35pi+56S66IyD5Zu0ICovXHJcbiAgICBwcml2YXRlIGhhbGZTY3JvbGxWaWV3OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5LiK5LiA5qyhY29udGVudOeahFjlgLzvvIznlKjkuo7lkoznjrDlnKhjb250ZW5055qEWOWAvOavlOi+g++8jOW+l+WHuuaYr+WQkeW3pui/mOaYr+WQkeWPs+a7muWKqCAqL1xyXG4gICAgcHJpdmF0ZSBsYXN0Q29udGVudFBvc1g6IG51bWJlciA9IDA7XHJcbiAgICAvKirkuIrkuIDmrKFjb250ZW5055qEWeWAvO+8jOeUqOS6juWSjOeOsOWcqGNvbnRlbnTnmoRZ5YC85q+U6L6D77yM5b6X5Ye65piv5ZCR5LiK6L+Y5piv5ZCR5LiL5rua5YqoICovXHJcbiAgICBwcml2YXRlIGxhc3RDb250ZW50UG9zWTogbnVtYmVyID0gMDtcclxuICAgIC8qKue9keagvOihjOaVsCAqL1xyXG4gICAgcHJpdmF0ZSBncmlkUm93OiBudW1iZXIgPSAwO1xyXG4gICAgLyoq572R5qC85YiX5pWwICovXHJcbiAgICBwcml2YXRlIGdyaWRDb2w6IG51bWJlciA9IDA7XHJcbiAgICAvKirliLfmlrDml7bpl7TvvIzljZXkvY1zICovXHJcbiAgICBwcml2YXRlIHVwZGF0ZVRpbWVyOiBudW1iZXIgPSAwO1xyXG4gICAgLyoq5Yi35paw6Ze06ZqU77yM5Y2V5L2NcyAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVJbnRlcnZhbDogbnVtYmVyID0gMC4xO1xyXG4gICAgLyoq5piv5ZCm5rua5Yqo5a655ZmoICovXHJcbiAgICBwcml2YXRlIGJTY3JvbGxpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIC8qKuWIt+aWsOeahOWHveaVsCAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVGdW46IEZ1bmN0aW9uID0gZnVuY3Rpb24gKCkgeyB9O1xyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLml0ZW1IZWlnaHQgPSB0aGlzLml0ZW1SZW5kZXIuaGVpZ2h0O1xyXG4gICAgICAgIHRoaXMuaXRlbVdpZHRoID0gdGhpcy5pdGVtUmVuZGVyLndpZHRoO1xyXG4gICAgICAgIHRoaXMuc2Nyb2xsVmlldyA9IHRoaXMubm9kZS5nZXRDb21wb25lbnQoY2MuU2Nyb2xsVmlldyk7XHJcbiAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQ7XHJcbiAgICAgICAgdGhpcy5jb250ZW50LmFuY2hvclggPSAwO1xyXG4gICAgICAgIHRoaXMuY29udGVudC5hbmNob3JZID0gMTtcclxuICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgICAgICB0aGlzLnNjcm9sbFZpZXcubm9kZS5vbihcInNjcm9sbGluZ1wiLCB0aGlzLm9uU2Nyb2xsaW5nLCB0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOWIl+ihqOaVsOaNriAo5YiX6KGo5pWw5o2u5aSN5Yi25L2/55So77yM5aaC5p6c5YiX6KGo5pWw5o2u5pS55Y+Y77yM5YiZ6ZyA6KaB6YeN5paw6K6+572u5LiA6YGN5pWw5o2uKVxyXG4gICAgICogQHBhcmFtIGl0ZW1EYXRhTGlzdCBpdGVt5pWw5o2u5YiX6KGoXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZXREYXRhKGl0ZW1EYXRhTGlzdDogQXJyYXk8YW55Pikge1xyXG4gICAgICAgIHRoaXMuaXRlbURhdGFMaXN0ID0gaXRlbURhdGFMaXN0LnNsaWNlKCk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICAvKirorqHnrpfliJfooajnmoTlkITpobnlj4LmlbAgKi9cclxuICAgIHByaXZhdGUgY291bnRMaXN0UGFyYW0oKSB7XHJcbiAgICAgICAgbGV0IGRhdGFMZW4gPSB0aGlzLml0ZW1EYXRhTGlzdC5sZW5ndGg7XHJcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcuaG9yaXpvbnRhbCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnQud2lkdGggPSB0aGlzLmNvbnRlbnQucGFyZW50LndpZHRoO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnQuaGVpZ2h0ID0gZGF0YUxlbiAqIHRoaXMuaXRlbUhlaWdodCArIChkYXRhTGVuIC0gMSkgKiB0aGlzLnNwYWNlWSArIHRoaXMucGFkZGluZ190b3AgKyB0aGlzLnBhZGRpbmdfYnV0dG9tO1xyXG4gICAgICAgICAgICB0aGlzLnNwYXduQ291bnQgPSBNYXRoLnJvdW5kKHRoaXMuc2Nyb2xsVmlldy5ub2RlLmhlaWdodCAvICh0aGlzLml0ZW1IZWlnaHQgKyB0aGlzLnNwYWNlWSkpICsgMjsgLy/orqHnrpfliJvlu7rnmoRpdGVt5a6e5L6L5pWw6YeP77yM5q+U5b2T5YmNc2Nyb2xsVmlld+WuueWZqOiDveaUvuS4i+eahGl0ZW3mlbDph4/lho3liqDkuIoy5LiqXHJcbiAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS5oZWlnaHQgLyAyICsgdGhpcy5pdGVtSGVpZ2h0IC8gMiArIHRoaXMuc3BhY2VZOyAvL+iuoeeul2J1ZmZlclpvbmXvvIxpdGVt55qE5pi+56S66IyD5Zu0XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51cGRhdGVWO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgdGhpcy5zY3JvbGxWaWV3Lmhvcml6b250YWwgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50LndpZHRoID0gZGF0YUxlbiAqIHRoaXMuaXRlbVdpZHRoICsgKGRhdGFMZW4gLSAxKSAqIHRoaXMuc3BhY2VYICsgdGhpcy5wYWRkaW5nX2xlZnQgKyB0aGlzLnBhZGRpbmdfcmlnaHQ7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGVudC5oZWlnaHQgPSB0aGlzLmNvbnRlbnQucGFyZW50LmhlaWdodDtcclxuICAgICAgICAgICAgdGhpcy5zcGF3bkNvdW50ID0gTWF0aC5yb3VuZCh0aGlzLnNjcm9sbFZpZXcubm9kZS53aWR0aCAvICh0aGlzLml0ZW1XaWR0aCArIHRoaXMuc3BhY2VYKSkgKyAyO1xyXG4gICAgICAgICAgICB0aGlzLmhhbGZTY3JvbGxWaWV3ID0gdGhpcy5zY3JvbGxWaWV3Lm5vZGUud2lkdGggLyAyICsgdGhpcy5pdGVtV2lkdGggLyAyICsgdGhpcy5zcGFjZVg7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51ZHBhdGVIO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy5ob3Jpem9udGFsID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbFZpZXcudmVydGljYWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZW50LndpZHRoID0gdGhpcy5jb250ZW50LnBhcmVudC53aWR0aDtcclxuICAgICAgICAgICAgICAgIC8v5aaC5p6cbGVmdOWSjHJpZ2h06Ze06ZqU6L+H5aSn77yM5a+86Ie05pS+5LiN5LiL5LiA5LiqaXRlbe+8jOWImWxlZnTlkoxyaWdodOmDveiuvue9ruS4ujDvvIznm7jlvZPkuo7kuI3nlJ/mlYhcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBhZGRpbmdfbGVmdCArIHRoaXMucGFkZGluZ19yaWdodCArIHRoaXMuaXRlbVdpZHRoICsgdGhpcy5zcGFjZVggPiB0aGlzLmNvbnRlbnQud2lkdGgpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhZGRpbmdfbGVmdCA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWRkaW5nX3JpZ2h0ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFwicGFkZGluZ19sZWZ05oiWcGFkZGluZ19yaWdodOi/h+Wkp1wiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyaWRDb2wgPSBNYXRoLmZsb29yKCh0aGlzLmNvbnRlbnQud2lkdGggLSB0aGlzLnBhZGRpbmdfbGVmdCAtIHRoaXMucGFkZGluZ19yaWdodCkgLyAodGhpcy5pdGVtV2lkdGggKyB0aGlzLnNwYWNlWCkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ncmlkUm93ID0gTWF0aC5jZWlsKGRhdGFMZW4gLyB0aGlzLmdyaWRDb2wpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZW50LmhlaWdodCA9IHRoaXMuZ3JpZFJvdyAqIHRoaXMuaXRlbUhlaWdodCArICh0aGlzLmdyaWRSb3cgLSAxKSAqIHRoaXMuc3BhY2VZICsgdGhpcy5wYWRkaW5nX3RvcCArIHRoaXMucGFkZGluZ19idXR0b207XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNwYXduQ291bnQgPSBNYXRoLnJvdW5kKHRoaXMuc2Nyb2xsVmlldy5ub2RlLmhlaWdodCAvICh0aGlzLml0ZW1IZWlnaHQgKyB0aGlzLnNwYWNlWSkpICogdGhpcy5ncmlkQ29sICsgdGhpcy5ncmlkQ29sICogMjtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS5oZWlnaHQgLyAyICsgdGhpcy5pdGVtSGVpZ2h0IC8gMiArIHRoaXMuc3BhY2VZO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVGdW4gPSB0aGlzLnVwZGF0ZUdyaWRfVjtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnN0YXJ0QXhpcyA9PSBTdGFydEF4aXNUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy5ob3Jpem9udGFsID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsVmlldy52ZXJ0aWNhbCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgLy/orqHnrpfpq5jpl7TpmpRcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudC5oZWlnaHQgPSB0aGlzLmNvbnRlbnQucGFyZW50LmhlaWdodDtcclxuICAgICAgICAgICAgICAgIC8v5aaC5p6cbGVmdOWSjHJpZ2h06Ze06ZqU6L+H5aSn77yM5a+86Ie05pS+5LiN5LiL5LiA5LiqaXRlbe+8jOWImWxlZnTlkoxyaWdodOmDveiuvue9ruS4ujDvvIznm7jlvZPkuo7kuI3nlJ/mlYhcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBhZGRpbmdfdG9wICsgdGhpcy5wYWRkaW5nX2J1dHRvbSArIHRoaXMuaXRlbUhlaWdodCArIHRoaXMuc3BhY2VZID4gdGhpcy5jb250ZW50LmhlaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFkZGluZ190b3AgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFkZGluZ19idXR0b20gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJwYWRkaW5nX3RvcOaIlnBhZGRpbmdfYnV0dG9t6L+H5aSnXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFJvdyA9IE1hdGguZmxvb3IoKHRoaXMuY29udGVudC5oZWlnaHQgLSB0aGlzLnBhZGRpbmdfdG9wIC0gdGhpcy5wYWRkaW5nX2J1dHRvbSkgLyAodGhpcy5pdGVtSGVpZ2h0ICsgdGhpcy5zcGFjZVkpKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZENvbCA9IE1hdGguY2VpbChkYXRhTGVuIC8gdGhpcy5ncmlkUm93KTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudC53aWR0aCA9IHRoaXMuZ3JpZENvbCAqIHRoaXMuaXRlbVdpZHRoICsgKHRoaXMuZ3JpZENvbCAtIDEpICogdGhpcy5zcGFjZVggKyB0aGlzLnBhZGRpbmdfbGVmdCArIHRoaXMucGFkZGluZ19yaWdodDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3Bhd25Db3VudCA9IE1hdGgucm91bmQodGhpcy5zY3JvbGxWaWV3Lm5vZGUud2lkdGggLyAodGhpcy5pdGVtV2lkdGggKyB0aGlzLnNwYWNlWCkpICogdGhpcy5ncmlkUm93ICsgdGhpcy5ncmlkUm93ICogMjtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFsZlNjcm9sbFZpZXcgPSB0aGlzLnNjcm9sbFZpZXcubm9kZS53aWR0aCAvIDIgKyB0aGlzLml0ZW1XaWR0aCAvIDIgKyB0aGlzLnNwYWNlWDtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlRnVuID0gdGhpcy51cGRhdGVHcmlkX0g7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliJvlu7rliJfooaggXHJcbiAgICAgKiBAcGFyYW0gc3RhcnRJbmRleCDotbflp4vmmL7npLrnmoTmlbDmja7ntKLlvJUgMOihqOekuuesrOS4gOmhuVxyXG4gICAgICogQHBhcmFtIG9mZnNldCAgICAgc2Nyb2xsVmlld+WBj+enu+mHj1xyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGNyZWF0ZUxpc3Qoc3RhcnRJbmRleDogbnVtYmVyLCBvZmZzZXQ6IGNjLlZlYzIpIHtcclxuICAgICAgICAvL+W9k+mcgOimgeaYvuekuueahOaVsOaNrumVv+W6piA+IOiZmuaLn+WIl+ihqOmVv+W6pu+8jCDliKDpmaTmnIDmnKvlsL7lh6DkuKrmlbDmja7ml7bvvIzliJfooajpnIDopoHph43nva7kvY3nva7liLBzY3JvbGxWaWV35pyA5bqV56uvXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCA+IHRoaXMuc3Bhd25Db3VudCAmJiAoc3RhcnRJbmRleCArIHRoaXMuc3Bhd25Db3VudCAtIDEpID49IHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICBzdGFydEluZGV4ID0gdGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIC0gdGhpcy5zcGF3bkNvdW50O1xyXG4gICAgICAgICAgICBvZmZzZXQgPSB0aGlzLnNjcm9sbFZpZXcuZ2V0TWF4U2Nyb2xsT2Zmc2V0KCk7XHJcblxyXG4gICAgICAgICAgICAvL+W9k+mcgOimgeaYvuekuueahOaVsOaNrumVv+W6piA8PSDomZrmi5/liJfooajplb/luqbvvIwg6ZqQ6JeP5aSa5L2Z55qE6Jma5ouf5YiX6KGo6aG5IFxyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIDw9IHRoaXMuc3Bhd25Db3VudCkge1xyXG4gICAgICAgICAgICBzdGFydEluZGV4ID0gMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5zcGF3bkNvdW50OyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IGl0ZW06IGNjLk5vZGU7XHJcbiAgICAgICAgICAgIC8v6ZyA6KaB5pi+56S655qE5pWw5o2u57Si5byV5Zyo5pWw5o2u6IyD5Zu05YaF77yM5YiZaXRlbeWunuS+i+aYvuekuuWHuuadpVxyXG4gICAgICAgICAgICBpZiAoaSArIHN0YXJ0SW5kZXggPCB0aGlzLml0ZW1EYXRhTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1MaXN0W2ldID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5nZXRJdGVtKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucGFyZW50ID0gdGhpcy5jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5pdGVtTGlzdFtpXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8v6ZyA6KaB5pi+56S655qE5pWw5o2u57Si5byV6LaF6L+H5LqG5pWw5o2u6IyD5Zu077yM5YiZaXRlbeWunuS+i+makOiXj+i1t+adpVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5a6e5L6L5pWw6YePID4g6ZyA6KaB5pi+56S655qE5pWw5o2u6YePXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pdGVtTGlzdC5sZW5ndGggPiAodGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoIC0gc3RhcnRJbmRleCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtID0gdGhpcy5pdGVtTGlzdC5wb3AoKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1Qb29sLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpICsgc3RhcnRJbmRleDtcclxuICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaSArIHN0YXJ0SW5kZXhdO1xyXG4gICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLlZlcnRpY2FsKSB7XHJcbiAgICAgICAgICAgICAgICAvL+WboOS4umNvbnRlbnTnmoTplJrngrlY5pivMO+8jOaJgOS7pWl0ZW3nmoR45YC85pivY29udGVudC53aXRoLzLooajnpLrlsYXkuK3vvIzplJrngrlZ5pivMe+8jOaJgOS7pWl0ZW3nmoR55YC85LuOY29udGVudOmhtumDqOWQkeS4i+aYrzDliLDotJ/ml6DnqbfjgILmiYDku6VpdGVtLnk9IC1pdGVtLmhlaWdodC8y5pe277yM5piv5ZyoY29udGVudOeahOmhtumDqOOAglxyXG4gICAgICAgICAgICAgICAgaXRlbS5zZXRQb3NpdGlvbih0aGlzLmNvbnRlbnQud2lkdGggLyAyLCAtaXRlbS5oZWlnaHQgKiAoMC41ICsgaSArIHN0YXJ0SW5kZXgpIC0gdGhpcy5zcGFjZVkgKiAoaSArIHN0YXJ0SW5kZXgpIC0gdGhpcy5wYWRkaW5nX3RvcCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgIGl0ZW0uc2V0UG9zaXRpb24oaXRlbS53aWR0aCAqICgwLjUgKyBpICsgc3RhcnRJbmRleCkgKyB0aGlzLnNwYWNlWCAqIChpICsgc3RhcnRJbmRleCkgKyB0aGlzLnBhZGRpbmdfbGVmdCwgLXRoaXMuY29udGVudC5oZWlnaHQgLyAyKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgcm93ID0gTWF0aC5mbG9vcigoaSArIHN0YXJ0SW5kZXgpIC8gdGhpcy5ncmlkQ29sKTtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgY29sID0gKGkgKyBzdGFydEluZGV4KSAlIHRoaXMuZ3JpZENvbDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnNldFBvc2l0aW9uKGl0ZW0ud2lkdGggKiAoMC41ICsgY29sKSArIHRoaXMuc3BhY2VYICogY29sICsgdGhpcy5wYWRkaW5nX2xlZnQsIC1pdGVtLmhlaWdodCAqICgwLjUgKyByb3cpIC0gdGhpcy5zcGFjZVkgKiByb3cgLSB0aGlzLnBhZGRpbmdfdG9wKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuSG9yaXpvbnRhbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciByb3cgPSAoaSArIHN0YXJ0SW5kZXgpICUgdGhpcy5ncmlkUm93O1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBjb2wgPSBNYXRoLmZsb29yKChpICsgc3RhcnRJbmRleCkgLyB0aGlzLmdyaWRSb3cpO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uc2V0UG9zaXRpb24oaXRlbS53aWR0aCAqICgwLjUgKyBjb2wpICsgdGhpcy5zcGFjZVggKiBjb2wgKyB0aGlzLnBhZGRpbmdfbGVmdCwgLWl0ZW0uaGVpZ2h0ICogKDAuNSArIHJvdykgLSB0aGlzLnNwYWNlWSAqIHJvdyAtIHRoaXMucGFkZGluZ190b3ApO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zY3JvbGxWaWV3LnNjcm9sbFRvT2Zmc2V0KG9mZnNldCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoq6I635Y+W5LiA5Liq5YiX6KGo6aG5ICovXHJcbiAgICBwcml2YXRlIGdldEl0ZW0oKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbVBvb2wubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGNjLmluc3RhbnRpYXRlKHRoaXMuaXRlbVJlbmRlcik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXRlbVBvb2wucG9wKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZShkdCkge1xyXG4gICAgICAgIGlmICh0aGlzLmJTY3JvbGxpbmcgPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnVwZGF0ZVRpbWVyICs9IGR0O1xyXG4gICAgICAgIGlmICh0aGlzLnVwZGF0ZVRpbWVyIDwgdGhpcy51cGRhdGVJbnRlcnZhbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMudXBkYXRlVGltZXIgPSAwO1xyXG4gICAgICAgIHRoaXMuYlNjcm9sbGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlRnVuKCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25TY3JvbGxpbmcoKSB7XHJcbiAgICAgICAgdGhpcy5iU2Nyb2xsaW5nID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKirlnoLnm7TmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdXBkYXRlVigpIHtcclxuICAgICAgICBsZXQgaXRlbXMgPSB0aGlzLml0ZW1MaXN0O1xyXG4gICAgICAgIGxldCBpdGVtO1xyXG4gICAgICAgIGxldCBidWZmZXJab25lID0gdGhpcy5oYWxmU2Nyb2xsVmlldztcclxuICAgICAgICBsZXQgaXNVcCA9IHRoaXMuc2Nyb2xsVmlldy5jb250ZW50LnkgPiB0aGlzLmxhc3RDb250ZW50UG9zWTtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gKHRoaXMuaXRlbUhlaWdodCArIHRoaXMuc3BhY2VZKSAqIGl0ZW1zLmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGl0ZW0gPSBpdGVtc1tpXTtcclxuICAgICAgICAgICAgbGV0IHZpZXdQb3MgPSB0aGlzLmdldFBvc2l0aW9uSW5WaWV3KGl0ZW0pO1xyXG4gICAgICAgICAgICBpZiAoaXNVcCkge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5LiK5ruR5pe277yM6LaF5Ye65LqGc2Nyb2xsVmlld+S4iui+ueeVjO+8jOWwhml0ZW3np7vliqjliLDkuIvmlrnlpI3nlKjvvIxpdGVt56e75Yqo5Yiw5LiL5pa555qE5L2N572u5b+F6aG75LiN6LaF6L+HY29udGVudOeahOS4i+i+ueeVjFxyXG4gICAgICAgICAgICAgICAgaWYgKHZpZXdQb3MueSA+IGJ1ZmZlclpvbmUgJiYgaXRlbS55IC0gb2Zmc2V0IC0gdGhpcy5wYWRkaW5nX2J1dHRvbSA+IC10aGlzLmNvbnRlbnQuaGVpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy9pdGVt5LiL5ruR5pe277yM6LaF5Ye65LqGc2Nyb2xsVmlld+S4i+i+ueeVjO+8jOWwhml0ZW3np7vliqjliLDkuIrmlrnlpI3nlKjvvIxpdGVt56e75Yqo5Yiw5LiK5pa555qE5L2N572u5b+F6aG75LiN6LaF6L+HY29udGVudOeahOS4iui+ueeVjFxyXG4gICAgICAgICAgICAgICAgaWYgKHZpZXdQb3MueSA8IC1idWZmZXJab25lICYmIGl0ZW0ueSArIG9mZnNldCArIHRoaXMucGFkZGluZ190b3AgPCAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggLSBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NZID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueTtcclxuICAgIH1cclxuXHJcbiAgICAvKirmsLTlubPmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdWRwYXRlSCgpIHtcclxuICAgICAgICBsZXQgaXRlbXMgPSB0aGlzLml0ZW1MaXN0O1xyXG4gICAgICAgIGxldCBpdGVtO1xyXG4gICAgICAgIGxldCBidWZmZXJab25lID0gdGhpcy5oYWxmU2Nyb2xsVmlldztcclxuICAgICAgICBsZXQgaXNSaWdodCA9IHRoaXMuc2Nyb2xsVmlldy5jb250ZW50LnggPiB0aGlzLmxhc3RDb250ZW50UG9zWDtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gKHRoaXMuaXRlbVdpZHRoICsgdGhpcy5zcGFjZVgpICogaXRlbXMubGVuZ3RoO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldO1xyXG4gICAgICAgICAgICBsZXQgdmlld1BvcyA9IHRoaXMuZ2V0UG9zaXRpb25JblZpZXcoaXRlbSk7XHJcbiAgICAgICAgICAgIGlmIChpc1JpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lj7Pmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35Y+z6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOW3puaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlt6bmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5bem6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54ID4gYnVmZmVyWm9uZSAmJiBpdGVtLnggLSBvZmZzZXQgLSB0aGlzLnBhZGRpbmdfbGVmdCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtIGl0ZW1zLmxlbmd0aDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGEgPSB0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YUNoYW5nZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtLnggPSBpdGVtLnggLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lt6bmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35bem6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOWPs+aWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlj7PmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5Y+z6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS54ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3JpZ2h0IDwgdGhpcy5jb250ZW50LndpZHRoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyBpdGVtcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NYID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueDtcclxuICAgIH1cclxuXHJcbiAgICAvKirnvZHmoLzlnoLnm7TmjpLliJcgKi9cclxuICAgIHByaXZhdGUgdXBkYXRlR3JpZF9WKCkge1xyXG4gICAgICAgIGxldCBpdGVtcyA9IHRoaXMuaXRlbUxpc3Q7XHJcbiAgICAgICAgbGV0IGl0ZW06IGNjLk5vZGU7XHJcbiAgICAgICAgbGV0IGJ1ZmZlclpvbmUgPSB0aGlzLmhhbGZTY3JvbGxWaWV3O1xyXG4gICAgICAgIGxldCBpc1VwID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueSA+IHRoaXMubGFzdENvbnRlbnRQb3NZO1xyXG4gICAgICAgIGxldCBvZmZzZXQgPSAodGhpcy5pdGVtSGVpZ2h0ICsgdGhpcy5zcGFjZVkpICogKHRoaXMuc3Bhd25Db3VudCAvIHRoaXMuZ3JpZENvbCk7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpdGVtID0gaXRlbXNbaV07XHJcbiAgICAgICAgICAgIGxldCB2aWV3UG9zID0gdGhpcy5nZXRQb3NpdGlvbkluVmlldyhpdGVtKTtcclxuICAgICAgICAgICAgaWYgKGlzVXApIHtcclxuICAgICAgICAgICAgICAgIC8vaXRlbeS4iua7keaXtu+8jOi2heWHuuS6hnNjcm9sbFZpZXfkuIrovrnnlYzvvIzlsIZpdGVt56e75Yqo5Yiw5LiL5pa55aSN55So77yMaXRlbeenu+WKqOWIsOS4i+aWueeahOS9jee9ruW/hemhu+S4jei2hei/h2NvbnRlbnTnmoTkuIvovrnnlYxcclxuICAgICAgICAgICAgICAgIGlmICh2aWV3UG9zLnkgPiBidWZmZXJab25lICYmIGl0ZW0ueSAtIG9mZnNldCAtIHRoaXMucGFkZGluZ19idXR0b20gPiAtdGhpcy5jb250ZW50LmhlaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtUmVuZGVyOiBJdGVtUmVuZGVyID0gaXRlbS5nZXRDb21wb25lbnQoSXRlbVJlbmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1JbmRleCA9IGl0ZW1SZW5kZXIuaXRlbUluZGV4ICsgKHRoaXMuc3Bhd25Db3VudCAvIHRoaXMuZ3JpZENvbCkgKiB0aGlzLmdyaWRDb2w7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2l0ZW1JbmRleF0gIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnkgPSBpdGVtLnkgLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuaXRlbUluZGV4ID0gaXRlbUluZGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGEgPSB0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLmRhdGFDaGFuZ2VkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnkgPSBpdGVtLnkgLSBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuaXRlbUluZGV4ID0gaXRlbUluZGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHsvL2l0ZW3kuIvmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35LiL6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOS4iuaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDkuIrmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5LiK6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy55IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS55ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3RvcCA8IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRDb2wpICogdGhpcy5ncmlkQ29sO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhQ2hhbmdlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS55ID0gaXRlbS55ICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5sYXN0Q29udGVudFBvc1kgPSB0aGlzLnNjcm9sbFZpZXcuY29udGVudC55O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKue9keagvOawtOW5s+aOkuWIlyAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVHcmlkX0goKSB7XHJcbiAgICAgICAgbGV0IGl0ZW1zID0gdGhpcy5pdGVtTGlzdDtcclxuICAgICAgICBsZXQgaXRlbTtcclxuICAgICAgICBsZXQgYnVmZmVyWm9uZSA9IHRoaXMuaGFsZlNjcm9sbFZpZXc7XHJcbiAgICAgICAgbGV0IGlzUmlnaHQgPSB0aGlzLnNjcm9sbFZpZXcuY29udGVudC54ID4gdGhpcy5sYXN0Q29udGVudFBvc1g7XHJcbiAgICAgICAgbGV0IG9mZnNldCA9ICh0aGlzLml0ZW1XaWR0aCArIHRoaXMuc3BhY2VYKSAqICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRSb3cpO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldO1xyXG4gICAgICAgICAgICBsZXQgdmlld1BvcyA9IHRoaXMuZ2V0UG9zaXRpb25JblZpZXcoaXRlbSk7XHJcbiAgICAgICAgICAgIGlmIChpc1JpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lj7Pmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35Y+z6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOW3puaWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlt6bmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5bem6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54ID4gYnVmZmVyWm9uZSAmJiBpdGVtLnggLSBvZmZzZXQgLSB0aGlzLnBhZGRpbmdfbGVmdCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbVJlbmRlcjogSXRlbVJlbmRlciA9IGl0ZW0uZ2V0Q29tcG9uZW50KEl0ZW1SZW5kZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpdGVtSW5kZXggPSBpdGVtUmVuZGVyLml0ZW1JbmRleCAtICh0aGlzLnNwYXduQ291bnQgLyB0aGlzLmdyaWRSb3cpICogdGhpcy5ncmlkUm93O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW1EYXRhTGlzdFtpdGVtSW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhID0gdGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5kYXRhQ2hhbmdlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS54ID0gaXRlbS54IC0gb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtUmVuZGVyLml0ZW1JbmRleCA9IGl0ZW1JbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvL2l0ZW3lt6bmu5Hml7bvvIzotoXlh7rkuoZzY3JvbGxWaWV35bem6L6555WM77yM5bCGaXRlbeenu+WKqOWIsOWPs+aWueWkjeeUqO+8jGl0ZW3np7vliqjliLDlj7PmlrnnmoTkvY3nva7lv4XpobvkuI3otoXov4djb250ZW5055qE5Y+z6L6555WMXHJcbiAgICAgICAgICAgICAgICBpZiAodmlld1Bvcy54IDwgLWJ1ZmZlclpvbmUgJiYgaXRlbS54ICsgb2Zmc2V0ICsgdGhpcy5wYWRkaW5nX3JpZ2h0IDwgdGhpcy5jb250ZW50LndpZHRoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1SZW5kZXI6IEl0ZW1SZW5kZXIgPSBpdGVtLmdldENvbXBvbmVudChJdGVtUmVuZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbUluZGV4ID0gaXRlbVJlbmRlci5pdGVtSW5kZXggKyAodGhpcy5zcGF3bkNvdW50IC8gdGhpcy5ncmlkUm93KSAqIHRoaXMuZ3JpZFJvdztcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pdGVtRGF0YUxpc3RbaXRlbUluZGV4XSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ueCA9IGl0ZW0ueCArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YSA9IHRoaXMuaXRlbURhdGFMaXN0W2l0ZW1JbmRleF07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1SZW5kZXIuZGF0YUNoYW5nZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ueCA9IGl0ZW0ueCArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVJlbmRlci5pdGVtSW5kZXggPSBpdGVtSW5kZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubGFzdENvbnRlbnRQb3NYID0gdGhpcy5zY3JvbGxWaWV3LmNvbnRlbnQueDtcclxuICAgIH1cclxuXHJcbiAgICAvKirojrflj5ZpdGVt5Zyoc2Nyb2xsVmlld+eahOWxgOmDqOWdkOaghyAqL1xyXG4gICAgcHJpdmF0ZSBnZXRQb3NpdGlvbkluVmlldyhpdGVtKSB7XHJcbiAgICAgICAgbGV0IHdvcmxkUG9zID0gaXRlbS5wYXJlbnQuY29udmVydFRvV29ybGRTcGFjZUFSKGl0ZW0ucG9zaXRpb24pO1xyXG4gICAgICAgIGxldCB2aWV3UG9zID0gdGhpcy5zY3JvbGxWaWV3Lm5vZGUuY29udmVydFRvTm9kZVNwYWNlQVIod29ybGRQb3MpO1xyXG4gICAgICAgIHJldHVybiB2aWV3UG9zO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKuiOt+WPluWIl+ihqOaVsOaNriAqL1xyXG4gICAgcHVibGljIGdldExpc3REYXRhKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1EYXRhTGlzdDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOWinuWKoOS4gOmhueaVsOaNruWIsOWIl+ihqOeahOacq+WwvlxyXG4gICAgICogQHBhcmFtIGRhdGEg5pWw5o2uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhZGRJdGVtKGRhdGE6IGFueSkge1xyXG4gICAgICAgIHRoaXMuaXRlbURhdGFMaXN0LnB1c2goZGF0YSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDlop7liqDkuIDpobnmlbDmja7liLDliJfooajmjIflrprkvY3nva5cclxuICAgICAqIEBwYXJhbSBpbmRleCAgIOS9jee9ru+8jDDooajnpLrnrKwx6aG5XHJcbiAgICAgKiBAcGFyYW0gZGF0YSAg5pWw5o2uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhZGRJdGVtQXQoaW5kZXg6IG51bWJlciwgZGF0YTogYW55KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSAhPSBudWxsIHx8IHRoaXMuaXRlbURhdGFMaXN0Lmxlbmd0aCA9PSBpbmRleCkge1xyXG4gICAgICAgICAgICB0aGlzLml0ZW1EYXRhTGlzdC5zcGxpY2UoaW5kZXgsIDEsIGRhdGEpO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliKDpmaTkuIDpobnmlbDmja5cclxuICAgICAqIEBwYXJhbSBpbmRleCDliKDpmaTpobnnmoTkvY3nva4gLDDooajnpLrnrKwx6aG5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBkZWxldGVJdGVtKGluZGV4OiBudW1iZXIpIHtcclxuICAgICAgICBpZiAodGhpcy5pdGVtRGF0YUxpc3RbaW5kZXhdICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtRGF0YUxpc3Quc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVDb250ZW50KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5pS55Y+Y5LiA6aG55pWw5o2uXHJcbiAgICAgKiBAcGFyYW0gaW5kZXggICDkvY3nva4sMOihqOekuuesrDHpoblcclxuICAgICAqIEBwYXJhbSBkYXRhICDmm7/mjaLnmoTmlbDmja5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGNoYW5nZUl0ZW0oaW5kZXg6IG51bWJlciwgZGF0YTogYW55KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbURhdGFMaXN0W2luZGV4XSA9IGRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ29udGVudCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKirojrflj5bnrKzkuIDkuKpJdGVt55qE5L2N572uICovXHJcbiAgICBwcml2YXRlIHVwZGF0ZUNvbnRlbnQoKSB7XHJcbiAgICAgICAgLy/mmL7npLrliJfooajlrp7kvovkuLow5LiqXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbUxpc3QubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5jb3VudExpc3RQYXJhbSgpO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpc3QoMCwgbmV3IGNjLlZlYzIoMCwgMCkpO1xyXG4gICAgICAgICAgICAvL+aYvuekuuWIl+ihqOeahOWunuS+i+S4jeS4ujDkuKrvvIzliJnpnIDopoHph43mlrDmjpLliJdpdGVt5a6e5L6L5pWw57uEXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBMaXN0VHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBiLnkgLSBhLnk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuSG9yaXpvbnRhbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhLnggLSBiLng7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT0gTGlzdFR5cGUuR3JpZCkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc3RhcnRBeGlzID09IFN0YXJ0QXhpc1R5cGUuVmVydGljYWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1MaXN0LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhLnggLSBiLng7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYi55IC0gYS55O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnN0YXJ0QXhpcyA9PSBTdGFydEF4aXNUeXBlLkhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1MaXN0LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBiLnkgLSBhLnk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYS54IC0gYi54O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNvdW50TGlzdFBhcmFtKCk7XHJcblxyXG4gICAgICAgICAgICAvL+iOt+WPluesrOS4gOS4qml0ZW3lrp7kvovpnIDopoHmmL7npLrnmoTmlbDmja7ntKLlvJVcclxuICAgICAgICAgICAgdmFyIHN0YXJ0SW5kZXggPSB0aGlzLml0ZW1MaXN0WzBdLmdldENvbXBvbmVudChJdGVtUmVuZGVyKS5pdGVtSW5kZXg7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQgJiYgdGhpcy5zdGFydEF4aXMgPT0gU3RhcnRBeGlzVHlwZS5WZXJ0aWNhbCkge1xyXG4gICAgICAgICAgICAgICAgc3RhcnRJbmRleCArPSAoc3RhcnRJbmRleCArIHRoaXMuc3Bhd25Db3VudCkgJSB0aGlzLmdyaWRDb2w7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09IExpc3RUeXBlLkdyaWQgJiYgdGhpcy5zdGFydEF4aXMgPT0gU3RhcnRBeGlzVHlwZS5Ib3Jpem9udGFsKSB7XHJcbiAgICAgICAgICAgICAgICBzdGFydEluZGV4ICs9IChzdGFydEluZGV4ICsgdGhpcy5zcGF3bkNvdW50KSAlIHRoaXMuZ3JpZFJvdztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy9nZXRTY3JvbGxPZmZzZXQoKeWSjHNjcm9sbFRvT2Zmc2V0KCnnmoR45YC85piv55u45Y+N55qEXHJcbiAgICAgICAgICAgIHZhciBvZmZzZXQ6IGNjLlZlYzIgPSB0aGlzLnNjcm9sbFZpZXcuZ2V0U2Nyb2xsT2Zmc2V0KCk7XHJcbiAgICAgICAgICAgIG9mZnNldC54ID0gLSBvZmZzZXQueDtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlTGlzdChzdGFydEluZGV4LCBvZmZzZXQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKirplIDmr4EgKi9cclxuICAgIHB1YmxpYyBvbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgLy/muIXnkIbliJfooajpoblcclxuICAgICAgICBsZXQgbGVuID0gdGhpcy5pdGVtTGlzdC5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoY2MuaXNWYWxpZCh0aGlzLml0ZW1MaXN0W2ldLCB0cnVlKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtTGlzdFtpXS5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pdGVtTGlzdC5sZW5ndGggPSAwO1xyXG4gICAgICAgIC8v5riF55CG5a+56LGh5rGgXHJcbiAgICAgICAgbGVuID0gdGhpcy5pdGVtUG9vbC5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoY2MuaXNWYWxpZCh0aGlzLml0ZW1Qb29sW2ldLCB0cnVlKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtUG9vbFtpXS5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pdGVtUG9vbC5sZW5ndGggPSAwO1xyXG4gICAgICAgIC8v5riF55CG5YiX6KGo5pWw5o2uXHJcbiAgICAgICAgdGhpcy5pdGVtRGF0YUxpc3QubGVuZ3RoID0gMDtcclxuICAgIH1cclxufVxyXG4iXX0= //------QC-SOURCE-SPLIT------ diff --git a/temp/quick-scripts/dst/__quick_compile__.js b/temp/quick-scripts/dst/__quick_compile__.js index cbf2892..3551880 100644 --- a/temp/quick-scripts/dst/__quick_compile__.js +++ b/temp/quick-scripts/dst/__quick_compile__.js @@ -1,6 +1,6 @@ (function () { -var scripts = [{"deps":{"./assets/Script/RankManager":1,"./assets/Script/Load":2,"./assets/Script/GuideManager":3,"./assets/migration/use_v2.1-2.2.1_cc.Toggle_event":4,"./assets/Script/Sun":5,"./assets/Script/GameOver":6,"./assets/Script/GameManager":7,"./assets/Script/DynamicAtlasManager":8,"./assets/Script/module/Crypto/HttpUtil":9,"./assets/Script/module/RankList/ItemRender":10,"./assets/Script/module/Notification/Notification":11,"./assets/Script/module/Music/AudioManager":12,"./assets/Script/module/Config/GameConfig":13,"./assets/Script/module/Storage/Storage":14,"./assets/Script/module/GameStart/GameAppStart":15,"./assets/Script/module/Share/share":16,"./assets/Script/module/Tool/GameTool":17,"./assets/Script/module/Crypto/crypto-js.min":18,"./assets/Script/module/RankList/List":19},"path":"preview-scripts/__qc_index__.js"},{"deps":{"./module/RankList/List":19},"path":"preview-scripts/assets/Script/RankManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/Load.js"},{"deps":{},"path":"preview-scripts/assets/Script/GuideManager.js"},{"deps":{},"path":"preview-scripts/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js"},{"deps":{},"path":"preview-scripts/assets/Script/Sun.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameOver.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/DynamicAtlasManager.js"},{"deps":{"./crypto-js.min.js":18},"path":"preview-scripts/assets/Script/module/Crypto/HttpUtil.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/RankList/ItemRender.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Notification/Notification.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Music/AudioManager.js"},{"deps":{"../Share/share":16},"path":"preview-scripts/assets/Script/module/Config/GameConfig.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Storage/Storage.js"},{"deps":{"../Config/GameConfig":13,"../Crypto/HttpUtil":9,"../Music/AudioManager":12,"../Notification/Notification":11,"../Storage/Storage":14,"../Tool/GameTool":17},"path":"preview-scripts/assets/Script/module/GameStart/GameAppStart.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Share/share.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Tool/GameTool.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Crypto/crypto-js.min.js"},{"deps":{"./ItemRender":10},"path":"preview-scripts/assets/Script/module/RankList/List.js"}]; +var scripts = [{"deps":{"./assets/Script/GameOver":1,"./assets/Script/GuideManager":3,"./assets/Script/Load":4,"./assets/Script/RankManager":6,"./assets/Script/Sun":7,"./assets/Script/DynamicAtlasManager":5,"./assets/migration/use_v2.1-2.2.1_cc.Toggle_event":2,"./assets/Script/module/Crypto/crypto-js.min":19,"./assets/Script/module/Crypto/HttpUtil":9,"./assets/Script/module/GameStart/GameAppStart":12,"./assets/Script/module/Music/AudioManager":11,"./assets/Script/module/Notification/Notification":14,"./assets/Script/module/RankList/List":18,"./assets/Script/module/RankList/ItemRender":13,"./assets/Script/module/Share/share":10,"./assets/Script/module/Storage/Storage":17,"./assets/Script/module/Tool/GameTool":16,"./assets/Script/module/Config/GameConfig":15,"./assets/Script/GameManager":8},"path":"preview-scripts/__qc_index__.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameOver.js"},{"deps":{},"path":"preview-scripts/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js"},{"deps":{},"path":"preview-scripts/assets/Script/GuideManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/Load.js"},{"deps":{},"path":"preview-scripts/assets/Script/DynamicAtlasManager.js"},{"deps":{"./module/RankList/List":18},"path":"preview-scripts/assets/Script/RankManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/Sun.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameManager.js"},{"deps":{"./crypto-js.min.js":19},"path":"preview-scripts/assets/Script/module/Crypto/HttpUtil.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Share/share.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Music/AudioManager.js"},{"deps":{"../Config/GameConfig":15,"../Crypto/HttpUtil":9,"../Music/AudioManager":11,"../Notification/Notification":14,"../Storage/Storage":17,"../Tool/GameTool":16},"path":"preview-scripts/assets/Script/module/GameStart/GameAppStart.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/RankList/ItemRender.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Notification/Notification.js"},{"deps":{"../Share/share":10},"path":"preview-scripts/assets/Script/module/Config/GameConfig.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Tool/GameTool.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Storage/Storage.js"},{"deps":{"./ItemRender":13},"path":"preview-scripts/assets/Script/module/RankList/List.js"},{"deps":{},"path":"preview-scripts/assets/Script/module/Crypto/crypto-js.min.js"}]; var entries = ["preview-scripts/__qc_index__.js"]; var bundleScript = 'preview-scripts/__qc_bundle__.js'; diff --git a/temp/quick-scripts/dst/assets/Script/GameManager.js b/temp/quick-scripts/dst/assets/Script/GameManager.js index 964b3a2..841060f 100644 --- a/temp/quick-scripts/dst/assets/Script/GameManager.js +++ b/temp/quick-scripts/dst/assets/Script/GameManager.js @@ -245,6 +245,7 @@ var GameManager = /** @class */ (function (_super) { this.ball_Array[k].removeFromParent(); this.ball_Array[k] = null; } + cc.fx.GameConfig.GM_INFO.gap = []; }; //点击太阳执行方法 GameManager.prototype.clickSun = function (data) { @@ -254,12 +255,13 @@ var GameManager = /** @class */ (function (_super) { var clickTime = cc.fx.GameTool.getTime(); this.time_Array.push((clickTime - this.timeStart)); this.timeStart = cc.fx.GameTool.getTime(); - if (data == this.clickNow) { + if (data.id == this.clickNow) { cc.fx.AudioManager._instance.playAudioButton(); if (this.clickNow > 0) { this.createLine(cc.v2(this.ball_Array[this.clickNow - 1].x, this.ball_Array[this.clickNow - 1].y), cc.v2(this.ball_Array[this.clickNow].x, this.ball_Array[this.clickNow].y), 0.2); } this.clickNow += 1; + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); if (this.ball_Array[this.clickNow - 1]) this.ball_Array[this.clickNow - 1].getChildByName("guang").active = false; if (this.clickNow == this.now_Array.length) { @@ -314,7 +316,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -348,12 +351,12 @@ var GameManager = /** @class */ (function (_super) { } } else { - this.setLoss(); + this.setLoss(data); } } }; //执行失败 - GameManager.prototype.setLoss = function () { + GameManager.prototype.setLoss = function (data) { cc.fx.AudioManager._instance.playWarning(); this.begin = false; this.overTime = cc.fx.GameTool.getTime(); @@ -389,6 +392,7 @@ var GameManager = /** @class */ (function (_super) { sunArray.push(0); } } + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); cc.fx.GameConfig.CLICK_DATA = { type: 1, @@ -403,7 +407,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -938,7 +943,7 @@ var GameManager = /** @class */ (function (_super) { this.begin = false; this.over = true; this.unschedule(this.updateCountDownTime); - this.setLoss(); + this.setLoss({ distance: 0 }); var time = 0; if (this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time / this.clickCount + ""); @@ -1025,4 +1030,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUE0NUJDO1FBMTVCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBcTNCaEMsQ0FBQztJQTkyQkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNw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LENBQUM7WUFDTCxJQUFJLEdBQUcsT0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDMUMsVUFBVSxDQUFDO2dCQUNQLElBQUcsS0FBSSxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUM7b0JBQ2xCLElBQUksSUFBSSxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN2QyxJQUFHLElBQUksR0FBRyxHQUFHO3dCQUFFLElBQUksR0FBRyxHQUFHLENBQUM7b0JBQzFCLElBQUcsQ0FBQyxJQUFJLENBQUMsRUFBQzt3QkFDTixJQUFHLEtBQUksQ0FBQyxJQUFJLElBQUksS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBQzs0QkFDOUIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3RixLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQzt5QkFDaEM7cUJBQ0o7b0JBRUQsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDO3lCQUNsQixFQUFFLENBQUMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUMsSUFBSSxFQUFDLEVBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO3lCQUM3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QUFDO1lBQUUsVUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsUUFBUTtRQUNSLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsR0FBQyxTQUFTLENBQUMsTUFBTSxFQUFDLENBQUMsRUFBRSxFQUFDO1lBQ2hDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUFHLEdBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakksSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxHQUFDLFNBQVMsQ0FBQztZQUMvRyxJQUFJLEdBQUcsRUFBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksRUFBQyxJQUFJLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxTQUFTLENBQUMsU0FBUyxFQUFDLE1B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QUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hFO0lBQ0wsQ0FBQztJQUNELDhCQUFRLEdBQVI7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELCtCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsNEJBQU0sR0FBTixVQUFRLEVBQUU7SUFDVixDQUFDO0lBejVCRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzZDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7NkNBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzs2Q0FDRztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBNDVCL0I7SUFBRCxrQkFBQztDQTU1QkQsQUE0NUJDLENBNTVCd0MsRUFBRSxDQUFDLFNBQVMsR0E0NUJwRDtrQkE1NUJvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHYW1lTWFuYWdlciBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGJhbGw6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTE6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUzOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIGxpbmVQcmVmYWI6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGhpdDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzE6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgYmcyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIGJlZ2luOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBmdWh1bzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgb3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgc2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgY291bnRUaW1lOm51bWJlcjtcclxuICAgIHRpbWVDb3VudDpudW1iZXI7XHJcbiAgICBmaXRUb3A6bnVtYmVyO1xyXG4gICAgZml0Qm90Om51bWJlcjtcclxuICAgIGxldmVsOm51bWJlcjtcclxuICAgIGNsaWNrTm93Om51bWJlcjtcclxuICAgIHN0YXJ0VGltZTpudW1iZXI7XHJcbiAgICBvdmVyVGltZTpudW1iZXI7XHJcbiAgICB3aW5UaW1lOm51bWJlcjtcclxuICAgIGNsaWNrQ291bnQ6bnVtYmVyO1xyXG4gICAgdGltZVN0YXJ0Om51bWJlcjtcclxuICAgIHJvdXRlX0FycmF5OiBhbnlbXTtcclxuICAgIG5vd19BcnJheTogYW55W107XHJcbiAgICBiYWxsX0FycmF5OiBhbnlbXTtcclxuICAgIExpbmVfQXJyYXk6IGFueVtdO1xyXG4gICAgUG9zX0FycmF5OiBhbnlbXTtcclxuICAgIHRpbWVfQXJyYXk6IGFueVtdO1xyXG4gICAgY29sb3JfQXJyYXk6IGFueVtdO1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgbGV2ZWxMYWJlbDogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgc3RhdGljIF9pbnN0YW5jZTogYW55O1xyXG4gICAgbW92ZUFycmF5OiBudW1iZXJbXTtcclxuICAgIHJlcGVhdDogbnVtYmVyO1xyXG4gICAgbnVtYmVyUmVwZWF0OiBudW1iZXI7XHJcbiAgICByb3VuZDogbnVtYmVyO1xyXG4gICAgcGF1c2U6IGJvb2xlYW47XHJcbiAgICBvbkxvYWQgKCkge31cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLmZpdCgpO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS56SW5kZXggPSAxMDA7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5iYWxsLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLmJnMSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJnMVwiKTtcclxuICAgICAgICB0aGlzLmJnMiA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJnMlwiKTtcclxuICAgICAgICB0aGlzLnRpbWUgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJUb3BcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0aW1lXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5vdmVyID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yb3VuZCA9IDA7IFxyXG4gICAgICAgIHRoaXMubGV2ZWwgPSAyO1xyXG4gICAgICAgIHRoaXMuY291bnRUaW1lID0gNjA7XHJcbiAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAgICAgdGhpcy5sZXZlbCA9IGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSArPSAxO1xyXG4gICAgICAgICAgICB0aGlzLmNvdW50VGltZSA9IDEyMDAwMDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgdGhpcy50aW1lQ291bnQgPSAwLjE7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy5jbGlja0NvdW50ID0gMDtcclxuICAgICAgICB0aGlzLnRpbWVTdGFydCA9IDA7XHJcbiAgICAgICAgdGhpcy5yZXBlYXQgPSAtMTtcclxuICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm1vdmVBcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubm93X0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5iYWxsX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HQU1FX0RBVEEgPSBbXTtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy50b3RhbCA9IDA7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSA9IDA7XHJcbiAgICAgICAgdGhpcy5zY2hlZHVsZSh0aGlzLnVwZGF0ZUNvdW50RG93blRpbWUsMSk7XHJcbiAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgIH1cclxuICAgIC8v5qC55o2u5piv5ZCm5YWo6Z2i5bGP77yM5YGa54us56uL6YCC6YWN5pa56Z2iXHJcbiAgICBmaXQoKXtcclxuICAgICAgICB0aGlzLmZpdFRvcCA9IDQ1MDsgIC8vNjAwXHJcbiAgICAgICAgdGhpcy5maXRCb3QgPSAtNjAwOyAvLy03MDBcclxuICAgICAgICB2YXIgamcgPSB0aGlzLnNldEZpdCgpO1xyXG4gICAgICAgIGlmKCFqZyl7XHJcbiAgICAgICAgICAgIHRoaXMuZml0VG9wID0gNjAwO1xyXG4gICAgICAgICAgICB0aGlzLmZpdEJvdCA9IC03MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY9cclxuICAgIGdldFNldFNjcmVlblJlc29sdXRpb25GbGFnICgpIHtcclxuICAgICAgICBsZXQgc2l6ZSA9IGNjLndpblNpemU7XHJcbiAgICAgICAgbGV0IHdpZHRoID0gc2l6ZS53aWR0aDtcclxuICAgICAgICBsZXQgaGVpZ2h0ID0gc2l6ZS5oZWlnaHQ7XHJcbiAgICAgICAgaWYgKChoZWlnaHQgLyB3aWR0aCkgPiAoMTYuMiAvIDkpKSByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICAvL+WIpOaWreWFqOmdouWxj+mAgumFjVxyXG4gICAgc2V0Rml0ICgpIHtcclxuICAgICAgICBsZXQgZmxhZyA9IHRoaXMuZ2V0U2V0U2NyZWVuUmVzb2x1dGlvbkZsYWcoKTtcclxuICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmbGFnO1xyXG4gICAgfVxyXG4gICAgLy/ov5Tlm57pppbpobVcclxuICAgIGJhY2tTY2VuZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkxvYWRTY2VuZVwiKTtcclxuICAgIH1cclxuICAgIC8v5LiL5LiA5YWz77yM5oiW6ICF6YeN5paw5byA5aeL77yM5oiW6ICF6L+U5Zue5LiK5LiA5YWz77yM5qC55o2ubGV2ZWzlhrPlrppcclxuICAgIHJlU3RhcnQodHlwZSl7XHJcbiAgICAgICAgLy8gaWYoY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9ICBjYy5meC5HYW1lVG9vbC5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgIHRoaXMudGltZV9BcnJheS5wdXNoKChjbGlja1RpbWUgLSB0aGlzLnRpbWVTdGFydCkpXHJcbiAgICAgICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgaWYoZGF0YSA9PSB0aGlzLmNsaWNrTm93KXtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkF1ZGlvTWFuYWdlci5faW5zdGFuY2UucGxheUF1ZGlvQnV0dG9uKCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLngsdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ddLngsdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ddLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgIDAuMik7ICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNsaWNrTm93ICs9IDE7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS5nZXRDaGlsZEJ5TmFtZShcImd1YW5nXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja05vdyA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGgpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy50b3RhbCArPSB0aGlzLmNsaWNrTm93O1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3ZlclRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuc3RhcnRUaW1lID4gMCAmJiB0aGlzLm92ZXJUaW1lID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHdpbiA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIldpblwiKTtcclxuICAgICAgICAgICAgICAgICAgICB3aW4uYWN0aXZlID0gdHJ1ZTsgd2luLnNldFNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4LkF1ZGlvTWFuYWdlci5faW5zdGFuY2UucGxheVdpbigpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91bmQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgc3VuQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheS5sZW5ndGggPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMubW92ZUFycmF5Lmxlbmd0aDttKyspe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYobSA9PSB0aGlzLnJlcGVhdCB8fCBtID09IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKHRoaXMubW92ZUFycmF5W21dKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDttKyspe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYobSA9PSB0aGlzLnJlcGVhdCB8fCBtID09IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZU51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1blNwZWVkOmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVTcGVlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXBTdW5Db3VudDpjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID4gNTApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPSA1MDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc3VjY2VzcyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZXZlbCArPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NMZXZlbCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5omn6KGM5aSx6LSlXHJcbiAgICBzZXRMb3NzKCl7XHJcbiAgICAgICAgY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5wbGF5V2FybmluZygpO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgaWYoZmluaXNoX3RpbWUgPiA1OCkgZmluaXNoX3RpbWUgPSA1ODtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEgPSBcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgc3VjY2VzczpmYWxzZSxcclxuICAgICAgICAgICAgcm91bmQ6dGhpcy5yb3VuZCxcclxuICAgICAgICAgICAgdG90YWxTdW5Db3VudDp0aGlzLm5vd19BcnJheS5sZW5ndGgsXHJcbiAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZU51bWJlcixcclxuICAgICAgICAgICAgc3VuU3BlZWQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ucmVwZWF0LFxyXG4gICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgZHVyYXRpb246ZmluaXNoX3RpbWUvMTAsXHJcbiAgICAgICAgICAgIGRpZmZpY3VsdHlMZXZlbDp0aGlzLmxldmVsLFxyXG4gICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICBzdGVwVGltZUxpc3Q6dGhpcy50aW1lX0FycmF5LFxyXG4gICAgICAgICAgICByZW1haW5kZXI6dGhpcy5jb3VudFRpbWVcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID4gNTApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPSA1MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgaWYodGhpcy5mdWh1byA9PSB0cnVlKXtcclxuICAgICAgICAgICAgdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgxKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPiAyKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgLT0gMTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBvdmVyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiT3ZlclwiKTtcclxuICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgIC50bygwLjI1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMTUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjEse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+a4uOaIj1xyXG4gICAgc3RhcnRHYW1lKCl7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID4gMCl7XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVN1bigpO1xyXG4gICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKDAuNSx7b3BhY2l0eToyNTUsc2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpKrpmLPov5DooYzliqjnlLvvvIzku6Xlj4rlkI7pnaLnp7vliqjliqjnlLtcclxuICAgIHJ1bkdhbWUoKXtcclxuICAgICAgICBsZXQgdGltZSA9IC02NTA7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5ub3dfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aW1lID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZSoxMDAwICsgdGltZTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZUNvdW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRlbXAgPiAwLjUpIHRlbXAgPSAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoaSAhPSAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsICYmIHRoaXMubm93X0FycmF5W2ldKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSksY2MudjIodGhpcy5ub3dfQXJyYXlbaV0ueCx0aGlzLm5vd19BcnJheVtpXS55KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aGlzLm5vd19BcnJheVtpXS50aW1lLXRlbXAse3g6dGhpcy5ub3dfQXJyYXlbaV0ueCx5OnRoaXMubm93X0FycmF5W2ldLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjEse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlQmFsbChpLHRoaXMubm93X0FycmF5W2ldLmNvbG9yLHRoaXMubm93X0FycmF5W2ldLnNwZWVkLHRoaXMubm93X0FycmF5W2ldLnJlcGVhdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGkgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoIC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJlZ2luR2FtZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXI8MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LCB0aW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruenu+WKqOmHjeWPoOaVsOaNrlxyXG4gICAgY3JlYXRlTW92ZSgpe1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/mlLnlj5jnp7vliqjpgJ/luqZcclxuICAgICAgICB2YXIgc3BlZWQgPSA3O1xyXG4gICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICBzcGVlZCA9IDcgLSBpbmZvLm1vdmVTcGVlZC8yO1xyXG4gICAgICAgIH0gIFxyXG4gICAgICAgIGlmKGluZm8ubW92ZU51bWJlciA+IDApe1xyXG4gICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgLy/lj6/np7vliqjljLrliIZcclxuICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICBmb3IobGV0IGsgPTA7IGs8dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO2srKyl7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheVtrXT09MSAmJiAoayA9PSB0aGlzLnJlcGVhdCB8fCBrID09IHRoaXMubnVtYmVyUmVwZWF0KSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYobSAhPSBrICYmIHRoaXMubW92ZUFycmF5W21dID09IDAgJiYgbSE9IHRoaXMucmVwZWF0ICYmIG0hPSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtICA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBsYXN0TnVtYmVyID0gMDtcclxuICAgICAgICAgICAgLy/plIHlrprmnIDlkI7kuIDkuKrlj6/np7vliqjnmoRcclxuICAgICAgICAgICAgZm9yKGxldCBqID0wOyBqPG1vdmVBcnJheS5sZW5ndGg7aisrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtqXT09MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdE51bWJlciA9IGo7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBpID0wOyBpPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtpXSA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IGxhc3ROdW1iZXIpeyAgICAvL+WmguaenOS4jeaYr+acgOWQjuS4gOS4quenu+WKqOeahFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHNwZWVkKnRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksdGhpcy5Qb3NfQXJyYXlbaV0ueCx0aGlzLlBvc19BcnJheVtpXS55LDMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlbaV0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50byh0aW1lLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVtpXX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAvL+WmguaenOaYr+acgOWQjuS4gOS4qlxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+avj+asoemHjeaWsOW8gOWni+aWsOS4gOi9ruWEv+a4uOaIj1xyXG4gICAgYmVnaW5HYW1lKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgLy8gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8v5Yib5bu65aSq6Ziz5omA6ZyA5pWw5o2uXHJcbiAgICBjcmVhdGVTdW4oKXtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgbGV0IHRpZW1PdXQgPSAwO1xyXG4gICAgICAgIGZvcihsZXQgbD0wOyBsPGxldmVsRGF0YS5udW1iZXI7bCsrKXtcclxuICAgICAgICAgICAgdGllbU91dCArPSAxO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBvcyA9IHRoaXMuZ2V0UG9zKGZhbHNlLGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5LnB1c2gocG9zKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLlBvc19BcnJheS5sZW5ndGggPT0gbGV2ZWxEYXRhLm51bWJlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVBvcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH0sIHRpZW1PdXQqMTAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs+S9jee9ru+8jOminOiJsuS/oeaBr+etieaVsOaNrlxyXG4gICAgY3JlYXRlUG9zKCl7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7eDp0aGlzLmJhbGwueCx5OnRoaXMuYmFsbC55LHRpbWU6MCx0aW1lQ291bnQ6MCxjb2xvcjowLHNwZWVkOjAscmVwZWF0OmZhbHNlfTtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGpnO1xyXG4gICAgfVxyXG4gICAgLy/lkb3kuK3liqjnlLtcclxuICAgIGhpdEFjdGlvbihkYXRhKXtcclxuICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSB0cnVlOyB0aGlzLmhpdC5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvblxyXG4gICAgICAgIHRoaXMuaGl0LnNldFBvc2l0aW9uKHRoaXMuYmFsbF9BcnJheVtkYXRhXS54KzM1LHRoaXMuYmFsbF9BcnJheVtkYXRhXS55KzM1KTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmhpdClcclxuICAgICAgICAudG8oMCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC50bygwLjIse3Bvc2l0aW9uOmNjLnYzKHRoaXMuaGl0LngtMzUsdGhpcy5oaXQueS0zNSwwKX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDlpKrpmLNcclxuICAgIGNyZWF0ZUJhbGwobnVtYmVyLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgbGV0IGJhbGwgPSBudWxsO1xyXG4gICAgICAgIGlmKGNvbG9yID09IDApYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1MSk7XHJcbiAgICAgICAgZWxzZSBpZihjb2xvciA9PSAxKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTIpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMiliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUzKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMubm93X0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/plIDmr4Hov57nur9cclxuICAgIGRlc3Ryb3lMaW5lKCkge1xyXG4gICAgICAgIGZvcihsZXQgaSA9MDsgaTwgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbi5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgaWYodGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0gPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgIH1cclxuICAgIC8v5Yib5bu66L+e57q/XHJcbiAgICBjcmVhdGVMaW5lKHN0YXJ0LGVuZCx0aW1lKXtcclxuICAgICAgICBsZXQgbGluZSA9IGNjLmluc3RhbnRpYXRlKHRoaXMubGluZVByZWZhYik7XHJcbiAgICAgICAgbGluZS5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpO1xyXG4gICAgICAgIGxpbmUuc2V0UG9zaXRpb24oc3RhcnQueCxzdGFydC55KTtcclxuICAgICAgICBjb25zdCBkeCA9IGVuZC54IC0gc3RhcnQueDtcclxuICAgICAgICBjb25zdCBkeSA9IGVuZC55IC0gc3RhcnQueTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgbGluZS5oZWlnaHQgPSBkaXN0YW5jZTtcclxuICAgICAgICBsaW5lLmdldENvbXBvbmVudChjYy5TcHJpdGUpLmZpbGxSYW5nZSA9IDA7XHJcbiAgICAgICAgbGluZS5hbmdsZSA9IC10aGlzLmNhbGN1bGF0ZUFuZ2xlKHN0YXJ0Lngsc3RhcnQueSxlbmQueCxlbmQueSk7XHJcbiAgICAgICAgY2MudHdlZW4obGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKSlcclxuICAgICAgICAudG8odGltZSx7ZmlsbFJhbmdlOjF9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTop5LluqbvvIzlsIbmnaXpg73lj6/mlL7lt6XlhbfnsbtcclxuICAgIGNhbGN1bGF0ZUFuZ2xlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgdmFyIGFuZ2xlID0gTWF0aC5hdGFuMih5Mi15MSx4Mi14MSkqMTgwIC8gTWF0aC5QSSAtIDkwO1xyXG4gICAgICAgIHJldHVybiAtYW5nbGU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOeahOi3neemuyDov5Tlm57lr7nlupTml7bpl7RcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLCBudW0pIHtcclxuICAgICAgICBjb25zdCBkeCA9IHgyIC0geDE7XHJcbiAgICAgICAgY29uc3QgZHkgPSB5MiAtIHkxO1xyXG4gICAgICAgIGxldCB0aW1lID0gMDtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDgwMCkgZGlzdGFuY2UgPSA4MDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDEyMDApIGRpc3RhbmNlID0gMTIwMDtcclxuICAgICAgICAgICAgdGltZSA9IGRpc3RhbmNlLzEyMDAgKiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAzKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMS41O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemuyAg6L+U5Zue6Led56a75Yik5patXHJcbiAgICBnZXREaXN0YW5jZTIoeDEsIHkxLCB4MiwgeTIsbnVtKSB7XHJcbiAgICAgICAgdmFyIGpnID0gZmFsc2U7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiAxNjApe1xyXG4gICAgICAgICAgICBpZihudW0gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZU1hcmdpbih0aGlzLmNvdW50VGltZSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY291bnRUaW1lIDwgNSl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLnRpbWUubm9kZSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLjUsY29sb3I6Y2MuY29sb3IoMjU1LDAsMCl9KVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMjUse3NjYWxlOjEsY29sb3I6Y2MuY29sb3IoMjU1LDI1NSwyNTUpfSlcclxuICAgICAgICAgICAgICAgIC5zdGFydCgpXHJcbiAgICAgICAgICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMix7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8PSAwKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja0NvdW50ID4gMCkgdGltZSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gcGFyc2VJbnQodGltZS8xMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2FtZU92ZXIodGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+S4iuS8oOavj+asoeaTjeS9nOaVsOaNrlxyXG4gICAgc2V0RGF0YSgpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRHYW1lRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIGdhbWVPdmVyKHRpbWUpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRSYW5rKHRpbWUpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMub24oXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuLCB0aGlzKTtcclxuICAgIH1cclxuICAgIG9uRGlzYWJsZSAoKSB7XHJcbiAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFvNkJDO1FBbDZCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBNjNCaEMsQ0FBQztJQXQzQkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNw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Q0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7NkNBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzttREFDUztJQUU3QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNFO0lBMkJwQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO21EQUNTO0lBdkNYLFdBQVc7UUFEL0IsT0FBTztPQUNhLFdBQVcsQ0FvNkIvQjtJQUFELGtCQUFDO0NBcDZCRCxBQW82QkMsQ0FwNkJ3QyxFQUFFLENBQUMsU0FBUyxHQW82QnBEO2tCQXA2Qm9CLFdBQVciLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyDkuLvmuLjmiI/mjqfliLbnsbtcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5fSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICE9IDApe1xyXG4gICAgICAgICAgICB0aGlzLmxldmVsID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmN1c3RvbTtcclxuICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5zdWNjZXNzID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMud2luVGltZSA9IDA7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gMDtcclxuICAgICAgICB0aGlzLnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSwxKTtcclxuICAgICAgICB0aGlzLnN0YXJ0R2FtZSgpO1xyXG4gICAgfVxyXG4gICAgLy/moLnmja7mmK/lkKblhajpnaLlsY/vvIzlgZrni6znq4vpgILphY3mlrnpnaJcclxuICAgIGZpdCgpe1xyXG4gICAgICAgIHRoaXMuZml0VG9wID0gNDUwOyAgLy82MDBcclxuICAgICAgICB0aGlzLmZpdEJvdCA9IC02MDA7IC8vLTcwMFxyXG4gICAgICAgIHZhciBqZyA9IHRoaXMuc2V0Rml0KCk7XHJcbiAgICAgICAgaWYoIWpnKXtcclxuICAgICAgICAgICAgdGhpcy5maXRUb3AgPSA2MDA7XHJcbiAgICAgICAgICAgIHRoaXMuZml0Qm90ID0gLTcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIpOaWreWFqOmdouWxj1xyXG4gICAgZ2V0U2V0U2NyZWVuUmVzb2x1dGlvbkZsYWcgKCkge1xyXG4gICAgICAgIGxldCBzaXplID0gY2Mud2luU2l6ZTtcclxuICAgICAgICBsZXQgd2lkdGggPSBzaXplLndpZHRoO1xyXG4gICAgICAgIGxldCBoZWlnaHQgPSBzaXplLmhlaWdodDtcclxuICAgICAgICBpZiAoKGhlaWdodCAvIHdpZHRoKSA+ICgxNi4yIC8gOSkpIHJldHVybiBmYWxzZTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGP6YCC6YWNXHJcbiAgICBzZXRGaXQgKCkge1xyXG4gICAgICAgIGxldCBmbGFnID0gdGhpcy5nZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZygpO1xyXG4gICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZsYWc7XHJcbiAgICB9XHJcbiAgICAvL+i/lOWbnummlumhtVxyXG4gICAgYmFja1NjZW5lKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/kuIvkuIDlhbPvvIzmiJbogIXph43mlrDlvIDlp4vvvIzmiJbogIXov5Tlm57kuIrkuIDlhbPvvIzmoLnmja5sZXZlbOWGs+WumlxyXG4gICAgcmVTdGFydCh0eXBlKXtcclxuICAgICAgICAvLyBpZihjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uY3VzdG9tICE9IDApe1xyXG4gICAgICAgIC8vICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICAgICAgLy8gICAgIHJldHVybjtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgdGhpcy50aW1lQ291bnQgPSAwLjE7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy50aW1lU3RhcnQgPSAwO1xyXG4gICAgICAgIHRoaXMucmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSAtMTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubm93X0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5iYWxsX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm1vdmVBcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBpZih0eXBlID09IDApe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDEpe1xyXG4gICAgICAgICAgICB0aGlzLnN0YXJ0R2FtZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHR5cGUgPT0gMil7XHJcbiAgICAgICAgICAgIHRoaXMuYmdNb3ZlKC0xKTtcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgIH1cclxuICAgIC8v6I635Y+W5pe26Ze05oizXHJcbiAgICBnZXRUaW1lKCl7XHJcbiAgICAgICAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgcmV0dXJuIHRpbWVzdGFtcDtcclxuICAgIH1cclxuICAgIC8v6I636IOcXHJcbiAgICBwYXNzTGV2ZWwoKXtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICBsZXQgdGltZUFycmF5ID0gW107XHJcbiAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICBsZXQgYmFsbCA9IHRoaXMuYmFsbF9BcnJheVswXTtcclxuICAgICAgICAgICAgZm9yKGxldCBpPTE7IGk8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ktMV0ueCx0aGlzLmJhbGxfQXJyYXlbaS0xXS55LDIpO1xyXG4gICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2VlbihiYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aW1lQXJyYXlbay0xXSx7eDp0aGlzLmJhbGxfQXJyYXlba10ueCx5OnRoaXMuYmFsbF9BcnJheVtrXS55fSlcclxuICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2tdLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhbGwuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhclN1bigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgfSwgdGltZUNvdW50KjEwMDApO1xyXG4gICAgICAgICAgICAgICAgdGltZUNvdW50ICs9ICh0aW1lQXJyYXlbay0xXSswLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpLHotKVcclxuICAgIGxvc2VMZXZlbCh0eXBlKXtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICBsZXQgYmFsbCA9IHRoaXMuYmFsbF9BcnJheVswXTtcclxuICAgICAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlba10pXHJcbiAgICAgICAgICAgICAgICAudG8oMix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2tdLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZVN0YXJ0KHR5cGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/muIXnkIblpKrpmLNcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYXAgPSBbXTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9ICBjYy5meC5HYW1lVG9vbC5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgIHRoaXMudGltZV9BcnJheS5wdXNoKChjbGlja1RpbWUgLSB0aGlzLnRpbWVTdGFydCkpXHJcbiAgICAgICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuXHJcbiAgICAgICAgICAgIGlmKGRhdGEuaWQgPT0gdGhpcy5jbGlja05vdyl7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5BdWRpb01hbmFnZXIuX2luc3RhbmNlLnBsYXlBdWRpb0J1dHRvbigpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja05vdyA+IDApe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS54LHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgIGNjLnYyKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93XS54LHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93XS55KSxcclxuICAgICAgICAgICAgICAgICAgICAwLjIpOyAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGlja05vdyArPSAxO1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhcC5wdXNoKGRhdGEuZGlzdGFuY2UpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0pXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5BdWRpb01hbmFnZXIuX2luc3RhbmNlLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEgPSBcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzczp0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91bmQ6dGhpcy5yb3VuZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsU3VuQ291bnQ6dGhpcy5ub3dfQXJyYXkubGVuZ3RoLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6Y2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLnJlcGVhdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVyYXRpb246ZmluaXNoX3RpbWUvMTAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZmaWN1bHR5TGV2ZWw6dGhpcy5sZXZlbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwVGltZUxpc3Q6dGhpcy50aW1lX0FycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtYWluZGVyOnRoaXMuY291bnRUaW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOmNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5nYXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuQ0xJQ0tfREFUQS5kdXJhdGlvbiA+IDUwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBLmR1cmF0aW9uID0gNTA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHdpbilcclxuICAgICAgICAgICAgICAgICAgICAuZGVsYXkoMC40KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjAxLHtzY2FsZToyLjV9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjM1LHtzY2FsZToxfSlcclxuICAgICAgICAgICAgICAgICAgICAuZGVsYXkoMC40KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW4uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID49IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+PSAxNSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLnN1Y2Nlc3MgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZXZlbCArPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NMZXZlbCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb3NzKGRhdGEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoZGF0YSl7XHJcbiAgICAgICAgY2MuZnguQXVkaW9NYW5hZ2VyLl9pbnN0YW5jZS5wbGF5V2FybmluZygpO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgaWYoZmluaXNoX3RpbWUgPiA1OCkgZmluaXNoX3RpbWUgPSA1ODtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uZ2FwLnB1c2goZGF0YS5kaXN0YW5jZSk7XHJcbiAgICAgICAgY2MuZnguR2FtZUNvbmZpZy5DTElDS19EQVRBID0gXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0eXBlOjEsXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6ZmFsc2UsXHJcbiAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgIHRvdGFsU3VuQ291bnQ6dGhpcy5ub3dfQXJyYXkubGVuZ3RoLFxyXG4gICAgICAgICAgICBtb3ZlZFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVTcGVlZCxcclxuICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OmNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLnJlcGVhdCxcclxuICAgICAgICAgICAgY29sb3JMaXN0OnRoaXMuY29sb3JfQXJyYXksXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICBkaWZmaWN1bHR5TGV2ZWw6dGhpcy5sZXZlbCxcclxuICAgICAgICAgICAgc3VuTGlzdDpzdW5BcnJheSxcclxuICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgcmVtYWluZGVyOnRoaXMuY291bnRUaW1lLFxyXG4gICAgICAgICAgICBnYXA6Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhcFxyXG4gICAgICAgIH1cclxuICAgICAgICBpZihjYy5meC5HYW1lQ29uZmlnLkNMSUNLX0RBVEEuZHVyYXRpb24gPiA1MCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuQ0xJQ0tfREFUQS5kdXJhdGlvbiA9IDUwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgaWYodGhpcy5mdWh1byA9PSB0cnVlKXtcclxuICAgICAgICAgICAgdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgxKTtcclxuICAgICAgICB9IFxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubGV2ZWwgPiAyKXtcclxuICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgLT0gMTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5mdWh1byA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBvdmVyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiT3ZlclwiKTtcclxuICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgIC50bygwLjI1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMTUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjEse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+a4uOaIj1xyXG4gICAgc3RhcnRHYW1lKCl7XHJcbiAgICAgICAgaWYodGhpcy5vdmVyID09IGZhbHNlICYmIHRoaXMuY291bnRUaW1lID4gMCl7XHJcbiAgICAgICAgICAgIHRoaXMucGF1c2UgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVN1bigpO1xyXG4gICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKDAuNSx7b3BhY2l0eToyNTUsc2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpKrpmLPov5DooYzliqjnlLvvvIzku6Xlj4rlkI7pnaLnp7vliqjliqjnlLtcclxuICAgIHJ1bkdhbWUoKXtcclxuICAgICAgICBsZXQgdGltZSA9IC02NTA7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5ub3dfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aW1lID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZSoxMDAwICsgdGltZTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5ub3dfQXJyYXlbaV0udGltZUNvdW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRlbXAgPiAwLjUpIHRlbXAgPSAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoaSAhPSAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5iYWxsICYmIHRoaXMubm93X0FycmF5W2ldKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGluZShjYy52Mih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSksY2MudjIodGhpcy5ub3dfQXJyYXlbaV0ueCx0aGlzLm5vd19BcnJheVtpXS55KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIC50byh0aGlzLm5vd19BcnJheVtpXS50aW1lLXRlbXAse3g6dGhpcy5ub3dfQXJyYXlbaV0ueCx5OnRoaXMubm93X0FycmF5W2ldLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgIC50bygwLjEse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlQmFsbChpLHRoaXMubm93X0FycmF5W2ldLmNvbG9yLHRoaXMubm93X0FycmF5W2ldLnNwZWVkLHRoaXMubm93X0FycmF5W2ldLnJlcGVhdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGkgPT0gdGhpcy5ub3dfQXJyYXkubGVuZ3RoIC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJlZ2luR2FtZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXI8MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGF1c2UgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LCB0aW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruenu+WKqOmHjeWPoOaVsOaNrlxyXG4gICAgY3JlYXRlTW92ZSgpe1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/mlLnlj5jnp7vliqjpgJ/luqZcclxuICAgICAgICB2YXIgc3BlZWQgPSA3O1xyXG4gICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICBzcGVlZCA9IDcgLSBpbmZvLm1vdmVTcGVlZC8yO1xyXG4gICAgICAgIH0gIFxyXG4gICAgICAgIGlmKGluZm8ubW92ZU51bWJlciA+IDApe1xyXG4gICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgLy/lj6/np7vliqjljLrliIZcclxuICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICBmb3IobGV0IGsgPTA7IGs8dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO2srKyl7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheVtrXT09MSAmJiAoayA9PSB0aGlzLnJlcGVhdCB8fCBrID09IHRoaXMubnVtYmVyUmVwZWF0KSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYobSAhPSBrICYmIHRoaXMubW92ZUFycmF5W21dID09IDAgJiYgbSE9IHRoaXMucmVwZWF0ICYmIG0hPSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVttXSA9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtICA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBsYXN0TnVtYmVyID0gMDtcclxuICAgICAgICAgICAgLy/plIHlrprmnIDlkI7kuIDkuKrlj6/np7vliqjnmoRcclxuICAgICAgICAgICAgZm9yKGxldCBqID0wOyBqPG1vdmVBcnJheS5sZW5ndGg7aisrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtqXT09MSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdE51bWJlciA9IGo7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9yKGxldCBpID0wOyBpPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGlmKG1vdmVBcnJheVtpXSA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IGxhc3ROdW1iZXIpeyAgICAvL+WmguaenOS4jeaYr+acgOWQjuS4gOS4quenu+WKqOeahFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHNwZWVkKnRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksdGhpcy5Qb3NfQXJyYXlbaV0ueCx0aGlzLlBvc19BcnJheVtpXS55LDMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGxfQXJyYXlbaV0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50byh0aW1lLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVtpXX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAvL+WmguaenOaYr+acgOWQjuS4gOS4qlxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+avj+asoemHjeaWsOW8gOWni+aWsOS4gOi9ruWEv+a4uOaIj1xyXG4gICAgYmVnaW5HYW1lKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gIGNjLmZ4LkdhbWVUb29sLmdldFRpbWUoKTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgLy8gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwic2hvd0J0blwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8v5Yib5bu65aSq6Ziz5omA6ZyA5pWw5o2uXHJcbiAgICBjcmVhdGVTdW4oKXtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgbGV0IHRpZW1PdXQgPSAwO1xyXG4gICAgICAgIGZvcihsZXQgbD0wOyBsPGxldmVsRGF0YS5udW1iZXI7bCsrKXtcclxuICAgICAgICAgICAgdGllbU91dCArPSAxO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBvcyA9IHRoaXMuZ2V0UG9zKGZhbHNlLGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5LnB1c2gocG9zKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLlBvc19BcnJheS5sZW5ndGggPT0gbGV2ZWxEYXRhLm51bWJlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVBvcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH0sIHRpZW1PdXQqMTAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs+S9jee9ru+8jOminOiJsuS/oeaBr+etieaVsOaNrlxyXG4gICAgY3JlYXRlUG9zKCl7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7eDp0aGlzLmJhbGwueCx5OnRoaXMuYmFsbC55LHRpbWU6MCx0aW1lQ291bnQ6MCxjb2xvcjowLHNwZWVkOjAscmVwZWF0OmZhbHNlfTtcclxuICAgICAgICBsZXQgbGV2ZWxEYXRhID0gY2MuZnguR2FtZUNvbmZpZy5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgY2MuZnguR2FtZUNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBjYy5meC5HYW1lQ29uZmlnLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGpnO1xyXG4gICAgfVxyXG4gICAgLy/lkb3kuK3liqjnlLtcclxuICAgIGhpdEFjdGlvbihkYXRhKXtcclxuICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSB0cnVlOyB0aGlzLmhpdC5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvblxyXG4gICAgICAgIHRoaXMuaGl0LnNldFBvc2l0aW9uKHRoaXMuYmFsbF9BcnJheVtkYXRhXS54KzM1LHRoaXMuYmFsbF9BcnJheVtkYXRhXS55KzM1KTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmhpdClcclxuICAgICAgICAudG8oMCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC50bygwLjIse3Bvc2l0aW9uOmNjLnYzKHRoaXMuaGl0LngtMzUsdGhpcy5oaXQueS0zNSwwKX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLmhpdC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDlpKrpmLNcclxuICAgIGNyZWF0ZUJhbGwobnVtYmVyLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgbGV0IGJhbGwgPSBudWxsO1xyXG4gICAgICAgIGlmKGNvbG9yID09IDApYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1MSk7XHJcbiAgICAgICAgZWxzZSBpZihjb2xvciA9PSAxKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTIpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMiliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUzKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMubm93X0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/plIDmr4Hov57nur9cclxuICAgIGRlc3Ryb3lMaW5lKCkge1xyXG4gICAgICAgIGZvcihsZXQgaSA9MDsgaTwgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbi5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgaWYodGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldLnJlbW92ZUZyb21QYXJlbnQoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0gPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikucmVtb3ZlQWxsQ2hpbGRyZW4oKTtcclxuICAgIH1cclxuICAgIC8v5Yib5bu66L+e57q/XHJcbiAgICBjcmVhdGVMaW5lKHN0YXJ0LGVuZCx0aW1lKXtcclxuICAgICAgICBsZXQgbGluZSA9IGNjLmluc3RhbnRpYXRlKHRoaXMubGluZVByZWZhYik7XHJcbiAgICAgICAgbGluZS5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpO1xyXG4gICAgICAgIGxpbmUuc2V0UG9zaXRpb24oc3RhcnQueCxzdGFydC55KTtcclxuICAgICAgICBjb25zdCBkeCA9IGVuZC54IC0gc3RhcnQueDtcclxuICAgICAgICBjb25zdCBkeSA9IGVuZC55IC0gc3RhcnQueTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgbGluZS5oZWlnaHQgPSBkaXN0YW5jZTtcclxuICAgICAgICBsaW5lLmdldENvbXBvbmVudChjYy5TcHJpdGUpLmZpbGxSYW5nZSA9IDA7XHJcbiAgICAgICAgbGluZS5hbmdsZSA9IC10aGlzLmNhbGN1bGF0ZUFuZ2xlKHN0YXJ0Lngsc3RhcnQueSxlbmQueCxlbmQueSk7XHJcbiAgICAgICAgY2MudHdlZW4obGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKSlcclxuICAgICAgICAudG8odGltZSx7ZmlsbFJhbmdlOjF9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTop5LluqbvvIzlsIbmnaXpg73lj6/mlL7lt6XlhbfnsbtcclxuICAgIGNhbGN1bGF0ZUFuZ2xlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgdmFyIGFuZ2xlID0gTWF0aC5hdGFuMih5Mi15MSx4Mi14MSkqMTgwIC8gTWF0aC5QSSAtIDkwO1xyXG4gICAgICAgIHJldHVybiAtYW5nbGU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOeahOi3neemuyDov5Tlm57lr7nlupTml7bpl7RcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLCBudW0pIHtcclxuICAgICAgICBjb25zdCBkeCA9IHgyIC0geDE7XHJcbiAgICAgICAgY29uc3QgZHkgPSB5MiAtIHkxO1xyXG4gICAgICAgIGxldCB0aW1lID0gMDtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDgwMCkgZGlzdGFuY2UgPSA4MDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBpZihkaXN0YW5jZSA+IDEyMDApIGRpc3RhbmNlID0gMTIwMDtcclxuICAgICAgICAgICAgdGltZSA9IGRpc3RhbmNlLzEyMDAgKiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAzKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMS41O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemuyAg6L+U5Zue6Led56a75Yik5patXHJcbiAgICBnZXREaXN0YW5jZTIoeDEsIHkxLCB4MiwgeTIsbnVtKSB7XHJcbiAgICAgICAgdmFyIGpnID0gZmFsc2U7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiAxNjApe1xyXG4gICAgICAgICAgICBpZihudW0gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA8IGNjLmZ4LkdhbWVDb25maWcuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSAgY2MuZnguR2FtZVRvb2wuZ2V0VGltZU1hcmdpbih0aGlzLmNvdW50VGltZSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY291bnRUaW1lIDwgNSl7XHJcbiAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLnRpbWUubm9kZSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLjUsY29sb3I6Y2MuY29sb3IoMjU1LDAsMCl9KVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMjUse3NjYWxlOjEsY29sb3I6Y2MuY29sb3IoMjU1LDI1NSwyNTUpfSlcclxuICAgICAgICAgICAgICAgIC5zdGFydCgpXHJcbiAgICAgICAgICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy50d2VlbihvdmVyKVxyXG4gICAgICAgICAgICAgICAgLnRvKDAuMix7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8PSAwKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMub3ZlciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcyh7ZGlzdGFuY2U6MH0pO1xyXG4gICAgICAgICAgICAgICAgdmFyIHRpbWUgPSAwO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5jbGlja0NvdW50ID4gMCkgdGltZSA9IHBhcnNlSW50KGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lID0gcGFyc2VJbnQodGltZS8xMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2FtZU92ZXIodGltZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+S4iuS8oOavj+asoeaTjeS9nOaVsOaNrlxyXG4gICAgc2V0RGF0YSgpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRHYW1lRGF0YSgpO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIGdhbWVPdmVyKHRpbWUpe1xyXG4gICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRSYW5rKHRpbWUpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMub24oXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuLCB0aGlzKTtcclxuICAgIH1cclxuICAgIG9uRGlzYWJsZSAoKSB7XHJcbiAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/GameOver.js b/temp/quick-scripts/dst/assets/Script/GameOver.js index 475180d..3226224 100644 --- a/temp/quick-scripts/dst/assets/Script/GameOver.js +++ b/temp/quick-scripts/dst/assets/Script/GameOver.js @@ -118,6 +118,9 @@ var NewClass = /** @class */ (function (_super) { }; //根据内容填充排行榜 NewClass.prototype.setRank = function (num, data) { + if (!data) { + return; + } var hitNode = null; if (num == 0) { hitNode = this.one; @@ -136,7 +139,7 @@ var NewClass = /** @class */ (function (_super) { } if (hitNode) { hitNode.active = true; - cc.fx.GameTool.subName(data.nickName, 4); + data.nickName = cc.fx.GameTool.subName(data.nickName, 4); hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); @@ -184,4 +187,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUcxQztJQUFzQyw0QkFBWTtJQUFsRDtRQUFBLHFFQStHQztRQTdHRyxXQUFLLEdBQWEsSUFBSSxDQUFDO1FBRXZCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFFdEIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixTQUFHLEdBQVksSUFBSSxDQUFDO1FBRXBCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsV0FBSyxHQUFZLElBQUksQ0FBQztRQUV0QixVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBWSxJQUFJLENBQUM7O0lBK0Z6QixDQUFDO0lBNUZHLGVBQWU7SUFDZix3QkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDeEQsSUFBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFBQztZQUN2QyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFBO1NBQzVFO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUks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QyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNsRixFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pGO0lBQ0wsQ0FBQztJQTVHRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDOzJDQUNJO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7MENBQ0c7SUFFdEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs4Q0FDTztJQUV6QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNFO0lBRXBCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7eUNBQ0U7SUFFcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDSTtJQUV0QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MENBQ0c7SUFoQkosUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQStHNUI7SUFBRCxlQUFDO0NBL0dELEFBK0dDLENBL0dxQyxFQUFFLENBQUMsU0FBUyxHQStHakQ7a0JBL0dvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgY291bnQ6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBvbmU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0d286IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0aHJlZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGZvdXI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmaXZlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGxpc3REYXRhOiBhbnk7XHJcbiAgICBzZWxmRGF0YTogYW55O1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5jb3VudC5zdHJpbmcgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKyBcIlwiO1xyXG4gICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPiAxMCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSArIFwic1wiO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5vbmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50d28uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50aHJlZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZvdXIuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5maXZlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHZhciB1cmxOb3cgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcclxuICAgICAgICBpZih0aGlzLmNvbnRhaW5zVHJhaW4odXJsTm93KSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJiYWNrXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJmaW5pc2hpXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJhY2tcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiZmluaXNoaVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAganVtcEZpbmlzaGkoKXtcclxuICAgICAgICBsZXQgdXJsID0gXCJodHRwczovL3RyYWluLnNwYXJrdXMuY24vcG9zdGVyL2dhbWUvXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc2NvZGUgKyBcIj9zdWM9MVwiO1xyXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgfVxyXG4gICAgLy/miZPlvIDmjpLooYzmppxcclxuICAgIG9wZW5SYW5rKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiUmFua1NjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ph43mlrDlvIDlp4vnjqlcclxuICAgIGFnYWluKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3mnaXmupBcclxuICAgIGNvbnRhaW5zVHJhaW4oc3RyKSB7XHJcbiAgICAgICAgcmV0dXJuIC9mcm9tPXRyYWluL2kudGVzdChzdHIpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bmjpLooYzmppxcclxuICAgIGdldFJhbmsoKXtcclxuICAgICAgICAvL+iOt+WPluaOkuihjOamnOaVsOaNriAg5omA6ZyA5pWw5o2u6YePXHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6NVxyXG4gICAgICAgIH1cclxuICAgICAgICAgY2MuZnguR2FtZVRvb2wuZ2V0UmFuayhkYXRhRmlsZSxkYXRhID0+dGhpcy5nZXRSYW5rRGF0YShkYXRhKSk7XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruaOkuihjOS/oeaBr1xyXG4gICAgZ2V0UmFua0RhdGEoZGF0YSl7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNCk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD00O2krKyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFJhbmsoaSx0aGlzLmxpc3REYXRhW2ldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5qC55o2u5YaF5a655aGr5YWF5o6S6KGM5qacXHJcbiAgICBzZXRSYW5rKG51bSxkYXRhKXtcclxuICAgICAgICB2YXIgaGl0Tm9kZSA9IG51bGw7XHJcbiAgICAgICAgaWYobnVtID09IDApe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDEpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy50d287XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDIpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy50aHJlZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUgPSB0aGlzLmZvdXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDQpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5maXZlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihoaXROb2RlKXtcclxuICAgICAgICAgICAgaGl0Tm9kZS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgY2MuZnguR2FtZVRvb2wuc3ViTmFtZShkYXRhLm5pY2tOYW1lLDQpO1xyXG4gICAgICAgICAgICBoaXROb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZVwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IGRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IGRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgIGNjLmZ4LkdhbWVUb29sLnNldFBpYyhoaXROb2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKSxkYXRhLnBpYyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgIFxyXG59XHJcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDTSxJQUFBLEtBQXNCLEVBQUUsQ0FBQyxVQUFVLEVBQWxDLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBaUIsQ0FBQztBQUcxQztJQUFzQyw0QkFBWTtJQUFsRDtRQUFBLHFFQWtIQztRQWhIRyxXQUFLLEdBQWEsSUFBSSxDQUFDO1FBRXZCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFFdEIsY0FBUSxHQUFZLElBQUksQ0FBQztRQUV6QixTQUFHLEdBQVksSUFBSSxDQUFDO1FBRXBCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsV0FBSyxHQUFZLElBQUksQ0FBQztRQUV0QixVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBWSxJQUFJLENBQUM7O0lBa0d6QixDQUFDO0lBL0ZHLGVBQWU7SUFDZix3QkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDeEQsSUFBRyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFBQztZQUN2QyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFBO1NBQzVFO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUks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ZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgQHByb3BlcnR5KGNjLkxhYmVsKVxyXG4gICAgY291bnQ6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIHRpbWU6IGNjLkxhYmVsID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBvbmU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0d286IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICB0aHJlZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGZvdXI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmaXZlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGxpc3REYXRhOiBhbnk7XHJcbiAgICBzZWxmRGF0YTogYW55O1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5jb3VudC5zdHJpbmcgPSBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8udG90YWwgKyBcIlwiO1xyXG4gICAgICAgIGlmKGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPiAxMCl7XHJcbiAgICAgICAgICAgIGNjLmZ4LkdhbWVDb25maWcuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gY2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLm1lYW5fVGltZSArIFwic1wiO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5vbmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50d28uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50aHJlZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZvdXIuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5maXZlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHZhciB1cmxOb3cgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcclxuICAgICAgICBpZih0aGlzLmNvbnRhaW5zVHJhaW4odXJsTm93KSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJiYWNrXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJmaW5pc2hpXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImFnYWluXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcImJhY2tcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiZmluaXNoaVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAganVtcEZpbmlzaGkoKXtcclxuICAgICAgICBsZXQgdXJsID0gXCJodHRwczovL3RyYWluLnNwYXJrdXMuY24vcG9zdGVyL2dhbWUvXCIgKyBjYy5meC5HYW1lQ29uZmlnLkdNX0lORk8uc2NvZGUgKyBcIj9zdWM9MVwiO1xyXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgfVxyXG4gICAgLy/miZPlvIDmjpLooYzmppxcclxuICAgIG9wZW5SYW5rKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiUmFua1NjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ph43mlrDlvIDlp4vnjqlcclxuICAgIGFnYWluKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3mnaXmupBcclxuICAgIGNvbnRhaW5zVHJhaW4oc3RyKSB7XHJcbiAgICAgICAgcmV0dXJuIC9mcm9tPXRyYWluL2kudGVzdChzdHIpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bmjpLooYzmppxcclxuICAgIGdldFJhbmsoKXtcclxuICAgICAgICAvL+iOt+WPluaOkuihjOamnOaVsOaNriAg5omA6ZyA5pWw5o2u6YePXHJcbiAgICAgICAgbGV0IGRhdGFGaWxlID0ge1xyXG4gICAgICAgICAgICBsZW5ndGg6NVxyXG4gICAgICAgIH1cclxuICAgICAgICAgY2MuZnguR2FtZVRvb2wuZ2V0UmFuayhkYXRhRmlsZSxkYXRhID0+dGhpcy5nZXRSYW5rRGF0YShkYXRhKSk7XHJcbiAgICB9XHJcbiAgICAvL+iuvue9ruaOkuihjOS/oeaBr1xyXG4gICAgZ2V0UmFua0RhdGEoZGF0YSl7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5nZXRSYW5rRGF0YShkYXRhLHRoaXMsNCk7XHJcbiAgICAgICAgICAgICBjYy5meC5HYW1lVG9vbC5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD00O2krKyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFJhbmsoaSx0aGlzLmxpc3REYXRhW2ldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5qC55o2u5YaF5a655aGr5YWF5o6S6KGM5qacXHJcbiAgICBzZXRSYW5rKG51bSxkYXRhKXtcclxuICAgICAgICBpZighZGF0YSl7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdmFyIGhpdE5vZGUgPSBudWxsO1xyXG4gICAgICAgIGlmKG51bSA9PSAwKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudHdvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudGhyZWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDMpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5mb3VyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSA0KXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMuZml2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoaGl0Tm9kZSl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgIGRhdGEubmlja05hbWUgPSBjYy5meC5HYW1lVG9vbC5zdWJOYW1lKGRhdGEubmlja05hbWUsNCk7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gZGF0YS5uaWNrTmFtZTtcclxuICAgICAgICAgICAgaGl0Tm9kZS5nZXRDaGlsZEJ5TmFtZShcInRvdGFsXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gZGF0YS50b3RhbFN1bkNvdW50O1xyXG4gICAgICAgICAgICAgY2MuZnguR2FtZVRvb2wuc2V0UGljKGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLGRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbn1cclxuIl19 \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/Sun.js b/temp/quick-scripts/dst/assets/Script/Sun.js index ad12b06..aa07093 100644 --- a/temp/quick-scripts/dst/assets/Script/Sun.js +++ b/temp/quick-scripts/dst/assets/Script/Sun.js @@ -42,6 +42,7 @@ var NewClass = /** @class */ (function (_super) { } // onLoad () {} NewClass.prototype.start = function () { + this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this); }; //初始化数据 NewClass.prototype.init = function (_id, color, speed, repeat) { @@ -66,9 +67,16 @@ var NewClass = /** @class */ (function (_super) { if (type == true) this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; }; + //计算两点之间直线距离 + NewClass.prototype.distanceBetweenTwoPoints = function (x1, y1, x2, y2) { + return Math.sqrt(Math.pow((x2 - x1), 2) + Math.pow((y2 - y1), 2)); + }; //点击事件 NewClass.prototype.clickBtn = function (event, data) { - if (data === "1") { + var pos = this.node.convertToNodeSpaceAR(event.getLocation()); + var distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0); + distance = Math.floor(distance * 10) / 10; + if (this.node.name != "qiu4") { if (this.move == false && this.touch == true) { if (this.node.parent.parent.name == "GameNode") { if (this.node.parent.parent.getComponent("GameManager").begin == true) { @@ -81,13 +89,15 @@ var NewClass = /** @class */ (function (_super) { .start(); this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_1 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_1); } } else { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_2 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_2); } } } @@ -95,7 +105,8 @@ var NewClass = /** @class */ (function (_super) { if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_3 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_3); } } }; @@ -117,4 +128,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxTdW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ00sSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBc0MsNEJBQVk7SUFBbEQ7O0lBcUVBLENBQUM7SUE5REcsZUFBZTtJQUNmLHdCQUFLLEdBQUw7SUFDQSxDQUFDO0lBQ0QsT0FBTztJQUNQLHVCQUFJLEdBQUosVUFBSyxHQUFHLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxNQUFNO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEdBQUksR0FBRyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE1BQU07UUFDTixFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3pDLGFBQWEsQ0FDVixFQUFFLENBQUMsS0FBSyxFQUFFO2FBQ1QsRUFBRSxDQUFDLENBQUMsRUFBQyxFQUFDLE9BQU8sRUFBQyxDQUFDLEVBQUMsS0FBSyxFQUFDLEdBQUcsR0FBRSxDQUFDO2FBQzVCLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixFQUFFLENBQUMsQ0FBQyxFQUFDLEVBQUMsT0FBTyxFQUFDLEdBQUcsRUFBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLENBQUM7YUFDN0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUNkO2FBQ0EsS0FBSyxFQUFFLENBQUM7SUFDYixDQUFDO0lBQ0QsU0FBUztJQUNULDZCQUFVLEdBQVYsVUFBVyxJQUFJO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNqRCxJQUFHLElBQUksSUFBSSxJQUFJO1lBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDL0YsQ0FBQztJQUNELE1BQU07SUFDTiwyQkFBUSxHQUFSLFVBQVMsS0FBSyxFQUFDLElBQUk7UUFDZixJQUFHLElBQUksS0FBSyxHQUFHLEVBQUM7WUFDWixJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFDO2dCQUN6QyxJQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxFQUFDO29CQUMxQyxJQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksRUFBQzt3QkFDakUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQzs2QkFDM0MsRUFBRSxDQUFDLEdBQUcsRUFBQyxFQUFDLE9BQU8sRUFBQyxDQUFDLEVBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxDQUFDOzZCQUM3QixLQUFLLEVBQUUsQ0FBQzt3QkFDVCxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7NkJBQ2xCLEVBQUUsQ0FBQyxHQUFHLEVBQUMsRUFBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLENBQUM7NkJBQ25CLEVBQUUsQ0FBQyxHQUFHLEVBQUMsRUFBQyxLQUFLLEVBQUMsQ0FBQyxFQUFDLENBQUM7NkJBQ2pCLEtBQUssRUFBRSxDQUFDO3dCQUNULElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO3dCQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7cUJBQ3ZEO2lCQUNKO3FCQUNHO29CQUNBLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO29CQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3ZEO2FBRUo7U0FDSjthQUNHO1lBQ0EsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUM7Z0JBQ3pGLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2dCQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDdEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDdkQ7U0FDSjtJQUNMLENBQUM7SUFwRWdCLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FxRTVCO0lBQUQsZUFBQztDQXJFRCxBQXFFQyxDQXJFcUMsRUFBRSxDQUFDLFNBQVMsR0FxRWpEO2tCQXJFb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgaWRfTnVtYmVyOm51bWJlclxyXG4gICAgX3NwZWVkOm51bWJlclxyXG4gICAgX2NvbG9yOm51bWJlclxyXG4gICAgdG91Y2g6Ym9vbGVhblxyXG4gICAgX3JlcGVhdDpib29sZWFuXHJcbiAgICBtb3ZlOmJvb2xlYW5cclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoX2lkLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgdGhpcy50b3VjaCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pZF9OdW1iZXIgID0gX2lkO1xyXG4gICAgICAgIHRoaXMuX2NvbG9yID0gY29sb3I7XHJcbiAgICAgICAgdGhpcy5fc3BlZWQgPSBzcGVlZDtcclxuICAgICAgICB0aGlzLl9yZXBlYXQgPSByZXBlYXQ7XHJcbiAgICAgICAgLy/lpKrpmLPliqjnlLtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaGFuXCIpKVxyXG4gICAgICAgIC5yZXBlYXRGb3JldmVyKFxyXG4gICAgICAgICAgICBjYy50d2VlbigpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjAsc2NhbGU6MC41LH0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjI1NSxzY2FsZToxLjJ9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC41KVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v55So5LqO5L2c5byKIOa1i+ivlVxyXG4gICAgc2hvd051bWJlcih0eXBlKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIikuYWN0aXZlID0gdHlwZTtcclxuICAgICAgICBpZih0eXBlID09IHRydWUpXHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuaWRfTnVtYmVyICsgXCJcIjtcclxuICAgIH1cclxuICAgIC8v54K55Ye75LqL5Lu2XHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBpZihkYXRhID09PSBcIjFcIil7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLm1vdmUgPT0gZmFsc2UgJiYgdGhpcy50b3VjaCA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50Lm5hbWUgPT0gXCJHYW1lTm9kZVwiKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHYW1lTWFuYWdlclwiKS5iZWdpbiA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYWN0aW9uXCIpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjAsc2NhbGU6MS44fSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIix0aGlzLmlkX051bWJlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgIGNjLmZ4Lk5vdGlmaWNhdGlvbnMuZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYoIHRoaXMudG91Y2ggPT0gdHJ1ZSAmJiB0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHdWlkZU1hbmFnZXJcIikuYmVnaW4gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuekluZGV4ID0gLTE7XHJcbiAgICAgICAgICAgICAgICBjYy5meC5Ob3RpZmljYXRpb25zLmVtaXQoXCJjbGlja1N1blwiLHRoaXMuaWRfTnVtYmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztvQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLElBQUksTUFBSSxHQUFHLEVBQUMsRUFBRSxFQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxDQUFDO29CQUNqRCxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQUksQ0FBQyxDQUFDO2lCQUM3QzthQUVKO1NBQ0o7YUFDRztZQUNBLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFDO2dCQUN6RixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztnQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLElBQUksTUFBSSxHQUFHLEVBQUMsRUFBRSxFQUFDLElBQUksQ0FBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFFBQVEsRUFBQyxDQUFDO2dCQUNqRCxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLE1BQUksQ0FBQyxDQUFDO2FBQzdDO1NBQ0o7SUFDTCxDQUFDO0lBL0VnQixRQUFRO1FBRDVCLE9BQU87T0FDYSxRQUFRLENBZ0Y1QjtJQUFELGVBQUM7Q0FoRkQsQUFnRkMsQ0FoRnFDLEVBQUUsQ0FBQyxTQUFTLEdBZ0ZqRDtrQkFoRm9CLFFBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5fSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIGlkX051bWJlcjpudW1iZXJcclxuICAgIF9zcGVlZDpudW1iZXJcclxuICAgIF9jb2xvcjpudW1iZXJcclxuICAgIHRvdWNoOmJvb2xlYW5cclxuICAgIF9yZXBlYXQ6Ym9vbGVhblxyXG4gICAgbW92ZTpib29sZWFuXHJcbiAgICAvLyBvbkxvYWQgKCkge31cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLm5vZGUub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfU1RBUlQsIHRoaXMuY2xpY2tCdG4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoX2lkLGNvbG9yLHNwZWVkLHJlcGVhdCl7XHJcbiAgICAgICAgdGhpcy50b3VjaCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pZF9OdW1iZXIgID0gX2lkO1xyXG4gICAgICAgIHRoaXMuX2NvbG9yID0gY29sb3I7XHJcbiAgICAgICAgdGhpcy5fc3BlZWQgPSBzcGVlZDtcclxuICAgICAgICB0aGlzLl9yZXBlYXQgPSByZXBlYXQ7XHJcbiAgICAgICAgLy/lpKrpmLPliqjnlLtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaGFuXCIpKVxyXG4gICAgICAgIC5yZXBlYXRGb3JldmVyKFxyXG4gICAgICAgICAgICBjYy50d2VlbigpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjAsc2NhbGU6MC41LH0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgICAgIC50bygxLHtvcGFjaXR5OjI1NSxzY2FsZToxLjJ9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC41KVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v55So5LqO5L2c5byKIOa1i+ivlVxyXG4gICAgc2hvd051bWJlcih0eXBlKXtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIikuYWN0aXZlID0gdHlwZTtcclxuICAgICAgICBpZih0eXBlID09IHRydWUpXHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuaWRfTnVtYmVyICsgXCJcIjtcclxuICAgIH1cclxuICAgIC8v6K6h566X5Lik54K55LmL6Ze055u057q/6Led56a7XHJcbiAgICBkaXN0YW5jZUJldHdlZW5Ud29Qb2ludHMoeDE6IG51bWJlciwgeTE6IG51bWJlciwgeDI6IG51bWJlciwgeTI6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIE1hdGguc3FydCgoeDIgLSB4MSkgKiogMiArICh5MiAtIHkxKSAqKiAyKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75LqL5Lu2XHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBsZXQgcG9zID0gdGhpcy5ub2RlLmNvbnZlcnRUb05vZGVTcGFjZUFSKGV2ZW50LmdldExvY2F0aW9uKCkpO1xyXG4gICAgICAgIGxldCBkaXN0YW5jZSA9IHRoaXMuZGlzdGFuY2VCZXR3ZWVuVHdvUG9pbnRzKHBvcy54LCAwLCBwb3MueSwgMCk7XHJcbiAgICAgICAgZGlzdGFuY2UgPSBNYXRoLmZsb29yKGRpc3RhbmNlKjEwKS8xMDtcclxuICAgICAgICBpZih0aGlzLm5vZGUubmFtZSAhPSBcInFpdTRcIil7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLm1vdmUgPT0gZmFsc2UgJiYgdGhpcy50b3VjaCA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50Lm5hbWUgPT0gXCJHYW1lTm9kZVwiKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHYW1lTWFuYWdlclwiKS5iZWdpbiA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYWN0aW9uXCIpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjAsc2NhbGU6MS44fSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MS4zfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKDAuMyx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGEgPSB7aWQ6dGhpcy5pZF9OdW1iZXIsZGlzdGFuY2U6ZGlzdGFuY2V9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy5meC5Ob3RpZmljYXRpb25zLmVtaXQoXCJjbGlja1N1blwiLGRhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IHtpZDp0aGlzLmlkX051bWJlcixkaXN0YW5jZTpkaXN0YW5jZX07XHJcbiAgICAgICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIixkYXRhKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGlmKCB0aGlzLnRvdWNoID09IHRydWUgJiYgdGhpcy5ub2RlLnBhcmVudC5wYXJlbnQuZ2V0Q29tcG9uZW50KFwiR3VpZGVNYW5hZ2VyXCIpLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgbGV0IGRhdGEgPSB7aWQ6dGhpcy5pZF9OdW1iZXIsZGlzdGFuY2U6ZGlzdGFuY2V9O1xyXG4gICAgICAgICAgICAgICAgY2MuZnguTm90aWZpY2F0aW9ucy5lbWl0KFwiY2xpY2tTdW5cIixkYXRhKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/module/Config/GameConfig.js b/temp/quick-scripts/dst/assets/Script/module/Config/GameConfig.js index 532cba3..3785554 100644 --- a/temp/quick-scripts/dst/assets/Script/module/Config/GameConfig.js +++ b/temp/quick-scripts/dst/assets/Script/module/Config/GameConfig.js @@ -51,25 +51,25 @@ var GameConfig = /** @class */ (function () { 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/GM_INFO', (err: any, res: cc.JsonAsset) => { + // if (err) { + // WeChat.setShare(location.href); + // // self.Authentication(); + // return; + // } + // let jsonData: object = res.json!; + // self.GM_INFO = jsonData["data"]; + // self.setCode(self.getKey("scode")); + // WeChat.setShare(location.href); + // // self.Authentication(); + // }) + // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { + // if (err) { + // return; + // } + // let jsonData: object = res.json!; + // self.CLICK_DATA = jsonData["data"]; + // }) cc.resources.load('Json/LEVEL_INFO', function (err, res) { if (err) { return; @@ -94,9 +94,12 @@ var GameConfig = /** @class */ (function () { url: "https://api.sparkus.cn", success: false, matchId: null, - custom: 0 //用于测试跳关卡 + custom: 0, + gap: [] //存储点击到太阳中心距离 }; this.setCode(this.getKey("scode")); + share_1.WeChat.setShare(location.href); + this.Authentication(); }; GameConfig.CLICK_init = function () { this.CLICK_DATA = @@ -113,7 +116,8 @@ var GameConfig = /** @class */ (function () { difficultyLevel: 0, sunList: [], stepTimeList: [], - remainder: 120 //游戏剩余时间 + remainder: 120, + gap: [] //点击到太阳中心距离 }; }; GameConfig.LEVEL_INFO_init = function () { @@ -347,4 +351,4 @@ cc._RF.pop(); }); } })(); -//# 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 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXENvbmZpZ1xcR2FtZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBd0M7QUFHbEMsSUFBQSxLQUF3QixFQUFFLENBQUMsVUFBVSxFQUFuQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWtCLENBQUM7QUFFNUM7SUFBQTtJQXVXQSxDQUFDO21CQXZXWSxVQUFVO0lBK0NuQixzQkFBVyxzQkFBUTthQUFuQjtZQUVJLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQzFCO2dCQUNJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFVLEVBQUUsQ0FBQzthQUNyQztZQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMxQixDQUFDOzs7T0FBQTtJQUVNLGlCQUFNLEdBQWIsVUFBYyxHQUFHO1FBQ2IsSUFBSSxHQUFHLEdBQUcsSUFBSSxNQUFNLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDWCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGVBQUksR0FBWDtRQUNJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXZCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQix1RUFBdUU7UUFDdkUsaUJBQWlCO1FBQ2pCLDBDQUEw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QixPQUFPLEVBQUUsSUFBSTtnQkFDYixNQUFNLEVBQUUsQ0FBQzthQUNaO1lBQ0Q7Z0JBQ0ksTUFBTSxFQUFFLENBQUM7Z0JBQ1QsVUFBVSxFQUFFLENBQUM7Z0JBQ2IsU0FBUyxFQUFFLENBQUM7Z0JBQ1osV0FBVyxFQUFFLEdBQUc7Z0JBQ2hCLE9BQU8sRUFBRSxJQUFJO2dCQUNiLE1BQU0sRUFBRSxDQUFDO2FBQ1o7WUFDRDtnQkFDSSxNQUFNLEVBQUUsQ0FBQztnQkFDVCxVQUFVLEVBQUUsQ0FBQztnQkFDYixTQUFTLEVBQUUsQ0FBQztnQkFDWixXQUFXLEVBQUUsR0FBRztnQkFDaEIsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsTUFBTSxFQUFFLENBQUM7YUFDWjtTQUVKLENBQUE7SUFDTCxDQUFDO0lBQ00seUJBQWMsR0FBckI7UUFDSSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sa0JBQU8sR0FBZCxVQUFlLElBQUk7UUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQzs7SUFwV0QsMEJBQTBCO0lBQ1gsb0JBQVMsR0FBZ0IsSUFBSSxDQUFDO0lBRnBDLFVBQVU7UUFEdEIsT0FBTyxDQUFDLFlBQVksQ0FBQztPQUNULFVBQVUsQ0F1V3RCO0lBQUQsaUJBQUM7Q0F2V0QsQUF1V0MsSUFBQTtBQXZXWSxnQ0FBVSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlQ2hhdCB9IGZyb20gXCIuLi9TaGFyZS9zaGFyZVwiO1xyXG5cclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbkBjY2NsYXNzKCdHYW1lQ29uZmlnJylcclxuZXhwb3J0IGNsYXNzIEdhbWVDb25maWcgIHtcclxuICAgIC8v5omA5pyJ5o6n5Yi25L+h5oGv6YO96YCa6L+HR2FtZUFwcFN0YXJ05YaF5o6n5Yi2XHJcbiAgICBwcml2YXRlIHN0YXRpYyBfaW5zdGFuY2UgOiBHYW1lQ29uZmlnID0gbnVsbDtcclxuICAgIC8v55So5LqO55ub5pS+5Z+L54K55pWw5o2u5LiK5Lyg77yM5q+P5qyh5LiK5Lyg5ZCO5riF56m6XHJcblxyXG4gICAgc3RhdGljIExFVkVMX0lORk86IHsgLy/nrKzkuIDpmr7luqZcclxuICAgICAgICBudW1iZXI6IG51bWJlcjsgLy/lpKrpmLPmgLvmlbAgXHJcbiAgICAgICAgbW92ZU51bWJlcjogbnVtYmVyOyAvL+WkqumYs+WPr+enu+WKqOS4quaVsFxyXG4gICAgICAgIG1vdmVTcGVlZDogbnVtYmVyOyAvL+WkqumYs+enu+WKqOmAn+W6puetiee6p1xyXG4gICAgICAgIG1heERpc3RhbmNlOiBudW1iZXI7IC8v5biD5bGA5ZCO56e75Yqo5pyA5aSn6Led56a7XHJcbiAgICAgICAgbWF4TW92ZTogbnVtYmVyOyAvL+avj+S4quWkqumYs+S5i+mXtOi3neemu+acgOWkp+mXtOi3nVxyXG4gICAgICAgIHJlcGVhdDogbnVtYmVyOyAvL+aYr+WQpumHjeWPoO+8jOeOsOWcqDAg5LiN6YeN5Y+gIDEg6YeN5Y+gMeS4qlxyXG4gICAgfVtdO1xyXG4gICAgc3RhdGljIEdBTUVfREFUQTogYW55W107XHJcbiAgICBzdGF0aWMgQ0xJQ0tfREFUQToge1xyXG4gICAgICAgIHR5cGU6IG51bWJlcjsgLy/kuIrkvKDmlbDmja7nsbvlnotcclxuICAgICAgICBzdWNjZXNzOiBib29sZWFuOyAvL+atpOWxgOa4uOaIj+iDnOi0nyAgICBcclxuICAgICAgICByb3VuZDogbnVtYmVyOyAvL+WbnuWQiOaVsFxyXG4gICAgICAgIHRvdGFsU3VuQ291bnQ6IG51bWJlcjsgLy/lpKrpmLPmgLvmlbBcclxuICAgICAgICBtb3ZlZFN1bkNvdW50OiBudW1iZXI7IC8v5Y+v56e75Yqo5aSq6Ziz5Liq5pWwXHJcbiAgICAgICAgc3VuU3BlZWQ6IG51bWJlcjsgLy/lpKrpmLPnp7vliqjpgJ/luqZcclxuICAgICAgICBvdmVybGFwU3VuQ291bnQ6IG51bWJlcjsgLy/ph43lj6DlpKrpmLPkuKrmlbBcclxuICAgICAgICBjb2xvckxpc3Q6IGFueVtdOyAvL+WkqumYs+minOiJsuaVsOe7hFxyXG4gICAgICAgIGR1cmF0aW9uOiBudW1iZXI7IC8v5q+P5qyh54K55Ye755qE5Y+N5bqU5pe26Ze0XHJcbiAgICAgICAgZGlmZmljdWx0eUxldmVsOiBudW1iZXI7IC8v5q2k5qyh6Zq+5bqmXHJcbiAgICAgICAgc3VuTGlzdDogYW55W107IC8v5aSq6Ziz5pWw57uE77yM55So5LqO5a2Y5pS+5aSq6Ziz57G75Z6LIDA65pmu6YCaIDE656e75YqoIDI66YeN5Y+gXHJcbiAgICAgICAgc3RlcFRpbWVMaXN0OiBhbnlbXTsgLy/mr4/mrKHngrnlh7vpl7TpmpRcclxuICAgICAgICByZW1haW5kZXI6IG51bWJlcjsgLy/muLjmiI/liankvZnml7bpl7RcclxuICAgICAgICBnYXA6IGFueVtdOyAvL+eCueWHu+WIsOWkqumYs+S4reW/g+i3neemu1xyXG4gICAgfTtcclxuICAgIHN0YXRpYyBHTV9JTkZPOiB7XHJcbiAgICAgICAgLy8gaXNFbmQ6IGZhbHNlLFxyXG4gICAgICAgIG1lYW5fVGltZTogbnVtYmVyOyAvL+W5s+Wdh+aUvueuremAn+W6plxyXG4gICAgICAgIHRvdGFsOiBudW1iZXI7IC8v5oC75YWx5a+555qE5Liq5pWwXHJcbiAgICAgICAgY3VyclNlZWQ6IG51bWJlcjsgLy/nlKjkuo7pmo/mnLrmlbDnp43lrZBcclxuICAgICAgICBnYW1lSWQ6IHN0cmluZzsgLy/muLjmiI9JRFxyXG4gICAgICAgIHVzZXJJZDogbnVtYmVyOyAvL+eUqOaIt0lEXHJcbiAgICAgICAgc2NvZGU6IHN0cmluZzsgLy/nlKjmiLdjb2RlLOS7jue9kemhteWQjue8gOiOt+WPllxyXG4gICAgICAgIGd1aWRlOiBib29sZWFuOyAvL+aYr+WQpuacieW8leWvvFxyXG4gICAgICAgIHVybDogc3RyaW5nOyAvL+iuv+mXruWfn+WQjVxyXG4gICAgICAgIHN1Y2Nlc3M6IGJvb2xlYW47IC8v55So5oi35ri45oiP5oiQ5Yqf5LiO5ZCmXHJcbiAgICAgICAgbWF0Y2hJZDogYW55OyAvL+eUqOS6juWfi+eCueS4iuS8oOeahElEXHJcbiAgICAgICAgY3VzdG9tOiBudW1iZXI7IC8v55So5LqO5rWL6K+V6Lez5YWz5Y2hXHJcbiAgICAgICAgZ2FwOiBhbnlbXTsgLy/lrZjlgqjngrnlh7vliLDlpKrpmLPkuK3lv4Pot53nprtcclxuICAgIH07XHJcblxyXG5cclxuICAgIHN0YXRpYyBnZXQgSW5zdGFuY2UoKVxyXG4gICAge1xyXG4gICAgICAgIGlmICh0aGlzLl9pbnN0YW5jZSA9PSBudWxsKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5faW5zdGFuY2UgPSBuZXcgR2FtZUNvbmZpZygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGdldEtleShrZXkpe1xyXG4gICAgICAgIHZhciByZWcgPSBuZXcgUmVnRXhwKCcoXnwmKScgKyBrZXkgKyAnPShbXiZdKikoJnwkKScsICdpJyk7XHJcbiAgICAgICAgdmFyIHIgPSB3aW5kb3cubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKS5tYXRjaChyZWcpO1xyXG4gICAgICAgIGlmIChyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZXNjYXBlKHJbMl0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMuR01fSU5GT19pbml0KCk7XHJcbiAgICAgICAgdGhpcy5DTElDS19pbml0KCk7XHJcbiAgICAgICAgdGhpcy5MRVZFTF9JTkZPX2luaXQoKTtcclxuICAgICAgICBcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgLy8gY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vR01fSU5GTycsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAvLyAgICAgaWYgKGVycikge1xyXG4gICAgICAgIC8vICAgICAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIC8vICAgICAgICAgLy8gc2VsZi5BdXRoZW50aWNhdGlvbigpO1xyXG4gICAgICAgIC8vICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgLy8gICAgIGxldCBqc29uRGF0YTogb2JqZWN0ID0gcmVzLmpzb24hO1xyXG4gICAgICAgIC8vICAgICBzZWxmLkdNX0lORk8gPSBqc29uRGF0YVtcImRhdGFcIl07XHJcbiAgICAgICAgLy8gICAgIHNlbGYuc2V0Q29kZShzZWxmLmdldEtleShcInNjb2RlXCIpKTtcclxuICAgICAgICAvLyAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIC8vICAgICAvLyBzZWxmLkF1dGhlbnRpY2F0aW9uKCk7XHJcblxyXG4gICAgICAgIC8vIH0pXHJcbiAgICAgICAgLy8gY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vQ0xJQ0tfREFUQScsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAvLyAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAvLyAgICAgICAgIHJldHVybjtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vICAgICBsZXQganNvbkRhdGE6IG9iamVjdCA9IHJlcy5qc29uITtcclxuICAgICAgICAvLyAgICAgc2VsZi5DTElDS19EQVRBID0ganNvbkRhdGFbXCJkYXRhXCJdO1xyXG4gICAgICAgIC8vIH0pXHJcbiAgICAgICAgY2MucmVzb3VyY2VzLmxvYWQoJ0pzb24vTEVWRUxfSU5GTycsIChlcnI6IGFueSwgcmVzOiBjYy5Kc29uQXNzZXQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBqc29uRGF0YTogb2JqZWN0ID0gcmVzLmpzb24hO1xyXG4gICAgICAgICAgICBzZWxmLkxFVkVMX0lORk8gPSBqc29uRGF0YVtcImRhdGFcIl07XHJcbiAgICAgICAgfSlcclxuXHJcbiAgICAgICAgLy9HQU1FX0RBVEEg5bqf5byD5LqG77yM5pqC5pe25LiN5Yig6Zmk5Lul6Ziy5ZCO6Z2i5L+u5pS55ZueIOS4gOaVtOWxgOS8oOS4gOasoVxyXG4gICAgICAgIHNlbGYuR0FNRV9EQVRBID0gW1xyXG4gICAgICAgIF1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLy/mlbDmja7lpIfnlKhcclxuICAgIHN0YXRpYyBHTV9JTkZPX2luaXQoKSB7XHJcbiAgICAgICAgdGhpcy5HTV9JTkZPID0ge1xyXG4gICAgICAgICAgICAvLyBpc0VuZDogZmFsc2UsXHJcbiAgICAgICAgICAgIG1lYW5fVGltZTogMCwgICAgICAgICAgICAgICAgLy/lubPlnYfmlL7nrq3pgJ/luqZcclxuICAgICAgICAgICAgdG90YWw6IDAsICAgICAgICAgICAgICAgICAgICAvL+aAu+WFseWvueeahOS4quaVsFxyXG4gICAgICAgICAgICBjdXJyU2VlZDogMjAzMjEzLCAgICAgICAgICAgLy/nlKjkuo7pmo/mnLrmlbDnp43lrZBcclxuICAgICAgICAgICAgZ2FtZUlkOiAnMTAwMDA5JywgICAgICAgICAgIC8v5ri45oiPSURcclxuICAgICAgICAgICAgdXNlcklkOiAwLCAgICAgICAgICAgICAgICAgIC8v55So5oi3SURcclxuICAgICAgICAgICAgc2NvZGU6IFwiXCIsICAgICAgICAgICAgICAgICAgLy/nlKjmiLdjb2RlLOS7jue9kemhteWQjue8gOiOt+WPllxyXG4gICAgICAgICAgICBndWlkZTogdHJ1ZSwgICAgICAgICAgICAgICAgIC8v5piv5ZCm5pyJ5byV5a+8XHJcbiAgICAgICAgICAgIHVybDogXCJodHRwczovL2FwaS5zcGFya3VzLmNuXCIsLy/orr/pl67ln5/lkI1cclxuICAgICAgICAgICAgc3VjY2VzczogZmFsc2UsICAgICAgICAgICAgIC8v55So5oi35ri45oiP5oiQ5Yqf5LiO5ZCmXHJcbiAgICAgICAgICAgIG1hdGNoSWQ6IG51bGwsICAgICAgICAgICAgICAvL+eUqOS6juWfi+eCueS4iuS8oOeahElEXHJcbiAgICAgICAgICAgIGN1c3RvbTogMCwgICAgICAgICAgICAgICAgICAgLy/nlKjkuo7mtYvor5Xot7PlhbPljaFcclxuICAgICAgICAgICAgZ2FwOltdICAgICAgICAgICAgICAgICAgICAgIC8v5a2Y5YKo54K55Ye75Yiw5aSq6Ziz5Lit5b+D6Led56a7XHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnNldENvZGUodGhpcy5nZXRLZXkoXCJzY29kZVwiKSk7XHJcbiAgICAgICAgV2VDaGF0LnNldFNoYXJlKGxvY2F0aW9uLmhyZWYpO1xyXG4gICAgICAgIHRoaXMuQXV0aGVudGljYXRpb24oKTtcclxuICAgIH1cclxuICAgIHN0YXRpYyBDTElDS19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuQ0xJQ0tfREFUQSA9XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0eXBlOiAxLCAgICAgICAgICAgIC8v5LiK5Lyg5pWw5o2u57G75Z6LXHJcbiAgICAgICAgICAgIHN1Y2Nlc3M6IGZhbHNlLCAgICAgLy/mraTlsYDmuLjmiI/og5zotJ8gICAgXHJcbiAgICAgICAgICAgIHJvdW5kOiAwLCAgICAgICAgICAgLy/lm57lkIjmlbBcclxuICAgICAgICAgICAgdG90YWxTdW5Db3VudDogMCwgICAvL+WkqumYs+aAu+aVsFxyXG4gICAgICAgICAgICBtb3ZlZFN1bkNvdW50OiAwLCAgIC8v5Y+v56e75Yqo5aSq6Ziz5Liq5pWwXHJcbiAgICAgICAgICAgIHN1blNwZWVkOiAwLCAgICAgICAgLy/lpKrpmLPnp7vliqjpgJ/luqZcclxuICAgICAgICAgICAgb3ZlcmxhcFN1bkNvdW50OiAwLCAvL+mHjeWPoOWkqumYs+S4quaVsFxyXG4gICAgICAgICAgICBjb2xvckxpc3Q6IFtdLCAgICAgIC8v5aSq6Ziz6aKc6Imy5pWw57uEXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwLCAgICAgICAgLy/mr4/mrKHngrnlh7vnmoTlj43lupTml7bpl7RcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOiAwLCAvL+atpOasoemavuW6plxyXG4gICAgICAgICAgICBzdW5MaXN0OiBbXSwgICAgICAgIC8v5aSq6Ziz5pWw57uE77yM55So5LqO5a2Y5pS+5aSq6Ziz57G75Z6LIDA65pmu6YCaIDE656e75YqoIDI66YeN5Y+gXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDogW10sICAgLy/mr4/mrKHngrnlh7vpl7TpmpRcclxuICAgICAgICAgICAgcmVtYWluZGVyOiAxMjAsICAgICAgLy/muLjmiI/liankvZnml7bpl7RcclxuICAgICAgICAgICAgZ2FwOltdICAgICAgICAgICAgICAvL+eCueWHu+WIsOWkqumYs+S4reW/g+i3neemu1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBzdGF0aWMgTEVWRUxfSU5GT19pbml0KCkge1xyXG4gICAgICAgIHRoaXMuTEVWRUxfSU5GTyA9IFtcclxuICAgICAgICAgICAgeyAgIC8v56ys5LiA6Zq+5bqmXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IDMsICAgICAgIC8v5aSq6Ziz5oC75pWwIFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCwgICAvL+WkqumYs+WPr+enu+WKqOS4quaVsFxyXG4gICAgICAgICAgICAgICAgbW92ZVNwZWVkOiAwLCAgICAvL+WkqumYs+enu+WKqOmAn+W6puetiee6p1xyXG4gICAgICAgICAgICAgICAgbWF4RGlzdGFuY2U6IDIwMCwgLy/luIPlsYDlkI7np7vliqjmnIDlpKfot53nprtcclxuICAgICAgICAgICAgICAgIG1heE1vdmU6IDEyMDAsICAgIC8v5q+P5Liq5aSq6Ziz5LmL6Ze06Led56a75pyA5aSn6Ze06LedXHJcbiAgICAgICAgICAgICAgICByZXBlYXQ6IDAgICAgICAgIC8v5piv5ZCm6YeN5Y+g77yM546w5ZyoMCDkuI3ph43lj6AgMSDph43lj6Ax5LiqXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS6jOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogMCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS4iemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA0LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogMCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWbm+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS6lOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA1LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWFremavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA2LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS4g+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA2LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWFq+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMCxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOS5nemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNCxcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA3LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS4gOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA4LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS6jOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA4LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS4iemavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA5LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAwXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeWbm+mavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiA5LFxyXG4gICAgICAgICAgICAgICAgbW92ZU51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVTcGVlZDogNixcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlOiAyMDAsXHJcbiAgICAgICAgICAgICAgICBtYXhNb3ZlOiAxMjAwLFxyXG4gICAgICAgICAgICAgICAgcmVwZWF0OiAxXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHsgICAvL+esrOWNgeS6lOmavuW6plxyXG4gICAgICAgICAgICAgICAgbnVtYmVyOiAxMCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDUsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogMyxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMiBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDAsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xMyBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNCxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNiBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xNyBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDAsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xOCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDEsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8xOSBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDIsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7ICAgLy8yMCBcclxuICAgICAgICAgICAgICAgIG51bWJlcjogNSxcclxuICAgICAgICAgICAgICAgIG1vdmVOdW1iZXI6IDMsXHJcbiAgICAgICAgICAgICAgICBtb3ZlU3BlZWQ6IDYsXHJcbiAgICAgICAgICAgICAgICBtYXhEaXN0YW5jZTogMjAwLFxyXG4gICAgICAgICAgICAgICAgbWF4TW92ZTogMTIwMCxcclxuICAgICAgICAgICAgICAgIHJlcGVhdDogMVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIF1cclxuICAgIH1cclxuICAgIHN0YXRpYyBBdXRoZW50aWNhdGlvbigpe1xyXG4gICAgICAgIGNjLmZ4LkdhbWVUb29sLkF1dGhlbnRpY2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHNldENvZGUoY29kZSl7XHJcbiAgICAgICAgdGhpcy5HTV9JTkZPLnNjb2RlID0gY29kZTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiJdfQ== \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/module/Share/share.js b/temp/quick-scripts/dst/assets/Script/module/Share/share.js index 5df725a..11b3b89 100644 --- a/temp/quick-scripts/dst/assets/Script/module/Share/share.js +++ b/temp/quick-scripts/dst/assets/Script/module/Share/share.js @@ -69,6 +69,7 @@ var WeChat = /** @class */ (function () { WeChat.getResult = function (res) { if (res) { var data = res.data; + // @ts-ignore wx.config({ debug: false, appId: data.appId, @@ -77,6 +78,7 @@ var WeChat = /** @class */ (function () { signature: data.signature, jsApiList: ['onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] }); + // @ts-ignore wx.checkJsApi({ jsApiList: ['updateAppMessageShareData'], success: function (res) { @@ -91,7 +93,9 @@ var WeChat = /** @class */ (function () { } }; WeChat.changeShare = function () { + // @ts-ignore wx.ready(function () { + // @ts-ignore wx.updateAppMessageShareData({ title: '记忆力认知测评', desc: '你的注意力和工作记忆有问题吗?', @@ -103,6 +107,7 @@ var WeChat = /** @class */ (function () { } }); setTimeout(function () { + // @ts-ignore wx.updateTimelineShareData({ title: '记忆力认知测评', link: shareConfig.shareLine, @@ -151,4 +156,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFNoYXJlXFxzaGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFJLFdBQVcsR0FBRztJQUNkLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLEVBQUUsRUFBQyxVQUFVO0NBQ2QsQ0FBQztBQVdKLFFBQVE7QUFDUjtJQUFBO0lBK0VBLENBQUM7SUE5RVUsZUFBUSxHQUFmLFVBQWdCLEdBQUc7UUFDZixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDaEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sZ0JBQVMsR0FBaEIsVUFBaUIsR0FBRztRQUNoQixJQUFHLEdBQUcsRUFBQztZQUNILElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDcEIsRUFBRSxDQUFDLE1BQU0sQ0FBQztnQkFDTixLQUFLLEVBQUUsS0FBSztnQkFDWixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2dCQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixFQUFDLDJCQUEyQixFQUFFLHlCQUF5QixFQUFFLHVCQUF1QixDQUFDO2FBQ3JILENBQUMsQ0FBQztZQUNILEVBQUUsQ0FBQyxVQUFVLENBQUM7Z0JBQ1YsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7Z0JBQ3hDLE9BQU8sRUFBRSxVQUFTLEdBQUc7b0JBQ2pCLFVBQVUsQ0FBQzt3QkFDUCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDUixVQUFVLENBQUM7d0JBQ1AsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ1osQ0FBQzthQUNKLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVNLGtCQUFXLEdBQWxCO1FBQ0ksRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNMLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztnQkFDekIsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLElBQUksRUFBRSxXQUFXLENBQUMsU0FBUztnQkFDM0IsTUFBTSxFQUFFLCtDQUErQztnQkFDdkQsT0FBTyxFQUFFO29CQUNQLE9BQU87b0JBQ1AsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDMUIsQ0FBQzthQUNKLENBQUMsQ0FBQztZQUNILFVBQVUsQ0FBQztnQkFDUCxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZCLEtBQUssRUFBRSxTQUFTO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7b0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7b0JBQ3ZELE9BQU8sRUFBRTt3QkFDUCxPQUFPO3dCQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzNCLENBQUM7aUJBQ0YsQ0FBQyxDQUFBO1lBQ1IsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRVosQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sbUJBQVksR0FBbkIsVUFBb0IsR0FBVztRQUMzQixPQUFPLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTztZQUN2QixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ1ksbUJBQVksR0FBekIsVUFBMEIsUUFBZ0IsRUFBRSxRQUFpQjt1Q0FBRyxPQUFPOzs7Z0JBQzdELElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO2dCQUNoRCxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDJCQUF5QixFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxjQUFTLElBQUksYUFBUSxRQUFVLEVBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQzlILHNCQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQyxFQUFBOzs7S0FDNUM7SUFHTSxxQkFBYyxHQUFyQixVQUFzQixHQUFHO1FBQ3JCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sd0JBQWlCLEdBQXhCLFVBQXlCLEdBQUc7UUFDeEIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUwsYUFBQztBQUFELENBL0VBLEFBK0VDLElBQUE7QUEvRVksd0JBQU0iLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcblxudmFyIHNoYXJlQ29uZmlnID0ge1xuICAgIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgICBzaGFyZUxpbmU6IFwiekRMc3J1VklcIixcbiAgICBFSzpcImh1aTIzMSUxXCJcbiAgfTtcblxuLy8g5a6a5LmJ5b6u5L+h6YWN572u5pWw5o2u55qE5o6l5Y+jXG5pbnRlcmZhY2UgSVdlQ2hhdENvbmZpZyB7XG4gICAgYXBwSWQ6IHN0cmluZztcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICBub25jZVN0cjogc3RyaW5nO1xuICAgIHNpZ25hdHVyZTogc3RyaW5nO1xuICAgIGpzQXBpTGlzdDogW107XG59XG5cbi8vIOW+ruS/oeaTjeS9nOexu1xuZXhwb3J0IGNsYXNzIFdlQ2hhdCB7XG4gICAgc3RhdGljIHNldFNoYXJlKHVybCkge1xuICAgICAgICB2YXIgdXJsVGVtcCA9IHRoaXMucmVtb3ZlUXVlcnlQYXJhbXModXJsKTtcbiAgICAgICAgc2hhcmVDb25maWcuc2hhcmVMaW5lID0gdXJsVGVtcDtcbiAgICAgICAgV2VDaGF0LmdldFNpZ25hdHVyZSh1cmwpO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSZXN1bHQocmVzKXtcbiAgICAgICAgaWYocmVzKXtcbiAgICAgICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGE7XG4gICAgICAgICAgICB3eC5jb25maWcoe1xuICAgICAgICAgICAgICAgIGRlYnVnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBhcHBJZDogZGF0YS5hcHBJZCxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGRhdGEudGltZXN0YW1wLFxuICAgICAgICAgICAgICAgIG5vbmNlU3RyOiBkYXRhLm5vbmNlU3RyLFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZTogZGF0YS5zaWduYXR1cmUsXG4gICAgICAgICAgICAgICAganNBcGlMaXN0OiBbJ29uTWVudVNoYXJlVGltZWxpbmUnLCd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJywgJ3VwZGF0ZVRpbWVsaW5lU2hhcmVEYXRhJywgJ29uTWVudVNoYXJlQXBwTWVzc2FnZSddXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHd4LmNoZWNrSnNBcGkoe1xuICAgICAgICAgICAgICAgIGpzQXBpTGlzdDogWyd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJ10sIC8vIOmcgOimgeajgOa1i+eahEpT5o6l5Y+j5YiX6KGo77yM5omA5pyJSlPmjqXlj6PliJfooajop4HpmYTlvZUyLFxuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKHJlcykge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdGF0aWMgY2hhbmdlU2hhcmUoKXtcbiAgICAgICAgd3gucmVhZHkoKCkgPT4ge1xuICAgICAgICAgICAgd3gudXBkYXRlQXBwTWVzc2FnZVNoYXJlRGF0YSh7IFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn6K6w5b+G5Yqb6K6k55+l5rWL6K+EJywgLy8g5YiG5Lqr5qCH6aKYXG4gICAgICAgICAgICAgICAgZGVzYzogJ+S9oOeahOazqOaEj+WKm+WSjOW3peS9nOiusOW/huaciemXrumimOWQl++8nycsIC8vIOWIhuS6q+aPj+i/sFxuICAgICAgICAgICAgICAgIGxpbms6IHNoYXJlQ29uZmlnLnNoYXJlTGluZSwgLy8g5YiG5Lqr6ZO+5o6l77yM6K+l6ZO+5o6l5Z+f5ZCN5oiW6Lev5b6E5b+F6aG75LiO5b2T5YmN6aG16Z2i5a+55bqU55qE5YWs5LyX5Y+3SlPlronlhajln5/lkI3kuIDoh7RcbiAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAvLyDorr7nva7miJDlip9cbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5aW95Y+L5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgd3gudXBkYXRlVGltZWxpbmVTaGFyZURhdGEoeyBcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5pyL5Y+L5ZyI5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSwgMjAwKTtcblxuICAgICAgICB9KTsgXG4gICAgfVxuXG4gICAgc3RhdGljIGdldFNpZ25hdHVyZSh1cmw6IHN0cmluZyk6IFByb21pc2U8SVdlQ2hhdENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIFdlQ2hhdC5nZXRTaGFyZUluZm8oKGVuY29kZVVSSUNvbXBvbmVudCh1cmwpKSxXZUNoYXQuZ2V0UmVzdWx0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBhc3luYyBnZXRTaGFyZUluZm8oc2hhcmVVcmw6IHN0cmluZywgY2FsbGJhY2s6RnVuY3Rpb24pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCB0aW1lID0gTWF0aC5mbG9vcigobmV3IERhdGUoKS5nZXRUaW1lKCkpIC8gMTAwMClcbiAgICAgICAgY29uc3QgdXJsID0gY2MuZnguSHR0cFV0aWwuYXBpU2lnbihgL2FwaS9zaGFyZS9jZmc/Z2FtZUlkPSR7Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhbWVJZH0mdGltZT0ke3RpbWV9JnVybD0ke3NoYXJlVXJsfWAse30pXG4gICAgICAgIHJldHVybiBjYy5meC5IdHRwVXRpbC5nZXQodXJsLGNhbGxiYWNrLDMpXG4gICAgfVxuXG4gICAgXG4gICAgc3RhdGljIGNvbnRhaW5zTmFuYW5hKHN0cikge1xuICAgICAgICByZXR1cm4gL3Rlc3QvaS50ZXN0KHN0cik7XG4gICAgfVxuXG4gICAgc3RhdGljIHJlbW92ZVF1ZXJ5UGFyYW1zKHVybCkge1xuICAgICAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcPy4qJC8sICcnKTtcbiAgICB9XG5cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxtb2R1bGVcXFNoYXJlXFxzaGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFJLFdBQVcsR0FBRztJQUNkLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLEVBQUUsRUFBQyxVQUFVO0NBQ2QsQ0FBQztBQVdKLFFBQVE7QUFDUjtJQUFBO0lBb0ZBLENBQUM7SUFuRlUsZUFBUSxHQUFmLFVBQWdCLEdBQUc7UUFDZixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDaEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sZ0JBQVMsR0FBaEIsVUFBaUIsR0FBRztRQUNoQixJQUFHLEdBQUcsRUFBQztZQUNILElBQUksSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDcEIsYUFBYTtZQUNiLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0JBQ04sS0FBSyxFQUFFLEtBQUs7Z0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUN6QixTQUFTLEVBQUUsQ0FBQyxxQkFBcUIsRUFBQywyQkFBMkIsRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsQ0FBQzthQUNySCxDQUFDLENBQUM7WUFDSCxhQUFhO1lBQ2IsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDVixTQUFTLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLFVBQVMsR0FBRztvQkFDakIsVUFBVSxDQUFDO3dCQUNQLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDekIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUNSLFVBQVUsQ0FBQzt3QkFDUCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDWixDQUFDO2FBQ0osQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU0sa0JBQVcsR0FBbEI7UUFDSSxhQUFhO1FBQ2IsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNMLGFBQWE7WUFDYixFQUFFLENBQUMseUJBQXlCLENBQUM7Z0JBQ3pCLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7Z0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7Z0JBQ3ZELE9BQU8sRUFBRTtvQkFDUCxPQUFPO29CQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzFCLENBQUM7YUFDSixDQUFDLENBQUM7WUFDSCxVQUFVLENBQUM7Z0JBQ1AsYUFBYTtnQkFDYixFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZCLEtBQUssRUFBRSxTQUFTO29CQUNoQixJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVM7b0JBQzNCLE1BQU0sRUFBRSwrQ0FBK0M7b0JBQ3ZELE9BQU8sRUFBRTt3QkFDUCxPQUFPO3dCQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzNCLENBQUM7aUJBQ0YsQ0FBQyxDQUFBO1lBQ1IsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRVosQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sbUJBQVksR0FBbkIsVUFBb0IsR0FBVztRQUMzQixPQUFPLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTztZQUN2QixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ1ksbUJBQVksR0FBekIsVUFBMEIsUUFBZ0IsRUFBRSxRQUFpQjt1Q0FBRyxPQUFPOzs7Z0JBQzdELElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO2dCQUNoRCxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLDJCQUF5QixFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxjQUFTLElBQUksYUFBUSxRQUFVLEVBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQzlILHNCQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQyxFQUFBOzs7S0FDNUM7SUFHTSxxQkFBYyxHQUFyQixVQUFzQixHQUFHO1FBQ3JCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU0sd0JBQWlCLEdBQXhCLFVBQXlCLEdBQUc7UUFDeEIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUwsYUFBQztBQUFELENBcEZBLEFBb0ZDLElBQUE7QUFwRlksd0JBQU0iLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcblxudmFyIHNoYXJlQ29uZmlnID0ge1xuICAgIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgICBzaGFyZUxpbmU6IFwiekRMc3J1VklcIixcbiAgICBFSzpcImh1aTIzMSUxXCJcbiAgfTtcblxuLy8g5a6a5LmJ5b6u5L+h6YWN572u5pWw5o2u55qE5o6l5Y+jXG5pbnRlcmZhY2UgSVdlQ2hhdENvbmZpZyB7XG4gICAgYXBwSWQ6IHN0cmluZztcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICBub25jZVN0cjogc3RyaW5nO1xuICAgIHNpZ25hdHVyZTogc3RyaW5nO1xuICAgIGpzQXBpTGlzdDogW107XG59XG5cbi8vIOW+ruS/oeaTjeS9nOexu1xuZXhwb3J0IGNsYXNzIFdlQ2hhdCB7XG4gICAgc3RhdGljIHNldFNoYXJlKHVybCkge1xuICAgICAgICB2YXIgdXJsVGVtcCA9IHRoaXMucmVtb3ZlUXVlcnlQYXJhbXModXJsKTtcbiAgICAgICAgc2hhcmVDb25maWcuc2hhcmVMaW5lID0gdXJsVGVtcDtcbiAgICAgICAgV2VDaGF0LmdldFNpZ25hdHVyZSh1cmwpO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSZXN1bHQocmVzKXtcbiAgICAgICAgaWYocmVzKXtcbiAgICAgICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGE7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB3eC5jb25maWcoe1xuICAgICAgICAgICAgICAgIGRlYnVnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBhcHBJZDogZGF0YS5hcHBJZCxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGRhdGEudGltZXN0YW1wLFxuICAgICAgICAgICAgICAgIG5vbmNlU3RyOiBkYXRhLm5vbmNlU3RyLFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZTogZGF0YS5zaWduYXR1cmUsXG4gICAgICAgICAgICAgICAganNBcGlMaXN0OiBbJ29uTWVudVNoYXJlVGltZWxpbmUnLCd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJywgJ3VwZGF0ZVRpbWVsaW5lU2hhcmVEYXRhJywgJ29uTWVudVNoYXJlQXBwTWVzc2FnZSddXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHd4LmNoZWNrSnNBcGkoe1xuICAgICAgICAgICAgICAgIGpzQXBpTGlzdDogWyd1cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhJ10sIC8vIOmcgOimgeajgOa1i+eahEpT5o6l5Y+j5YiX6KGo77yM5omA5pyJSlPmjqXlj6PliJfooajop4HpmYTlvZUyLFxuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKHJlcykge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgV2VDaGF0LmNoYW5nZVNoYXJlKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdGF0aWMgY2hhbmdlU2hhcmUoKXtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB3eC5yZWFkeSgoKSA9PiB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB3eC51cGRhdGVBcHBNZXNzYWdlU2hhcmVEYXRhKHsgXG4gICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICBkZXNjOiAn5L2g55qE5rOo5oSP5Yqb5ZKM5bel5L2c6K6w5b+G5pyJ6Zeu6aKY5ZCX77yfJywgLy8g5YiG5Lqr5o+P6L+wXG4gICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgIGltZ1VybDogJ2h0dHBzOi8vc3RhdGljLnNwYXJrdXMuY24vcHVibGljL3Nob290c3VuLmpwZycsIC8vIOWIhuS6q+Wbvuagh1xuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCLliIbkuqvlpb3lj4vmiJDlip/lm57osINcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgd3gudXBkYXRlVGltZWxpbmVTaGFyZURhdGEoeyBcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICforrDlv4blipvorqTnn6XmtYvor4QnLCAvLyDliIbkuqvmoIfpophcbiAgICAgICAgICAgICAgICAgICAgbGluazogc2hhcmVDb25maWcuc2hhcmVMaW5lLCAvLyDliIbkuqvpk77mjqXvvIzor6Xpk77mjqXln5/lkI3miJbot6/lvoTlv4XpobvkuI7lvZPliY3pobXpnaLlr7nlupTnmoTlhazkvJflj7dKU+WuieWFqOWfn+WQjeS4gOiHtFxuICAgICAgICAgICAgICAgICAgICBpbWdVcmw6ICdodHRwczovL3N0YXRpYy5zcGFya3VzLmNuL3B1YmxpYy9zaG9vdHN1bi5qcGcnLCAvLyDliIbkuqvlm77moIdcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgIC8vIOiuvue9ruaIkOWKn1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5YiG5Lqr5pyL5Y+L5ZyI5oiQ5Yqf5Zue6LCDXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSwgMjAwKTtcblxuICAgICAgICB9KTsgXG4gICAgfVxuXG4gICAgc3RhdGljIGdldFNpZ25hdHVyZSh1cmw6IHN0cmluZyk6IFByb21pc2U8SVdlQ2hhdENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIFdlQ2hhdC5nZXRTaGFyZUluZm8oKGVuY29kZVVSSUNvbXBvbmVudCh1cmwpKSxXZUNoYXQuZ2V0UmVzdWx0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBhc3luYyBnZXRTaGFyZUluZm8oc2hhcmVVcmw6IHN0cmluZywgY2FsbGJhY2s6RnVuY3Rpb24pOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCB0aW1lID0gTWF0aC5mbG9vcigobmV3IERhdGUoKS5nZXRUaW1lKCkpIC8gMTAwMClcbiAgICAgICAgY29uc3QgdXJsID0gY2MuZnguSHR0cFV0aWwuYXBpU2lnbihgL2FwaS9zaGFyZS9jZmc/Z2FtZUlkPSR7Y2MuZnguR2FtZUNvbmZpZy5HTV9JTkZPLmdhbWVJZH0mdGltZT0ke3RpbWV9JnVybD0ke3NoYXJlVXJsfWAse30pXG4gICAgICAgIHJldHVybiBjYy5meC5IdHRwVXRpbC5nZXQodXJsLGNhbGxiYWNrLDMpXG4gICAgfVxuXG4gICAgXG4gICAgc3RhdGljIGNvbnRhaW5zTmFuYW5hKHN0cikge1xuICAgICAgICByZXR1cm4gL3Rlc3QvaS50ZXN0KHN0cik7XG4gICAgfVxuXG4gICAgc3RhdGljIHJlbW92ZVF1ZXJ5UGFyYW1zKHVybCkge1xuICAgICAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcPy4qJC8sICcnKTtcbiAgICB9XG5cbn1cbiJdfQ== \ No newline at end of file diff --git a/temp/quick-scripts/src/assets/Script/GameManager.js b/temp/quick-scripts/src/assets/Script/GameManager.js index 6552a26..17e856a 100644 --- a/temp/quick-scripts/src/assets/Script/GameManager.js +++ b/temp/quick-scripts/src/assets/Script/GameManager.js @@ -234,6 +234,7 @@ var GameManager = /** @class */ (function (_super) { this.ball_Array[k].removeFromParent(); this.ball_Array[k] = null; } + cc.fx.GameConfig.GM_INFO.gap = []; }; //点击太阳执行方法 GameManager.prototype.clickSun = function (data) { @@ -243,12 +244,13 @@ var GameManager = /** @class */ (function (_super) { var clickTime = cc.fx.GameTool.getTime(); this.time_Array.push((clickTime - this.timeStart)); this.timeStart = cc.fx.GameTool.getTime(); - if (data == this.clickNow) { + if (data.id == this.clickNow) { cc.fx.AudioManager._instance.playAudioButton(); if (this.clickNow > 0) { this.createLine(cc.v2(this.ball_Array[this.clickNow - 1].x, this.ball_Array[this.clickNow - 1].y), cc.v2(this.ball_Array[this.clickNow].x, this.ball_Array[this.clickNow].y), 0.2); } this.clickNow += 1; + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); if (this.ball_Array[this.clickNow - 1]) this.ball_Array[this.clickNow - 1].getChildByName("guang").active = false; if (this.clickNow == this.now_Array.length) { @@ -303,7 +305,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -337,12 +340,12 @@ var GameManager = /** @class */ (function (_super) { } } else { - this.setLoss(); + this.setLoss(data); } } }; //执行失败 - GameManager.prototype.setLoss = function () { + GameManager.prototype.setLoss = function (data) { cc.fx.AudioManager._instance.playWarning(); this.begin = false; this.overTime = cc.fx.GameTool.getTime(); @@ -378,6 +381,7 @@ var GameManager = /** @class */ (function (_super) { sunArray.push(0); } } + cc.fx.GameConfig.GM_INFO.gap.push(data.distance); cc.fx.GameConfig.CLICK_DATA = { type: 1, @@ -392,7 +396,8 @@ var GameManager = /** @class */ (function (_super) { difficultyLevel: this.level, sunList: sunArray, stepTimeList: this.time_Array, - remainder: this.countTime + remainder: this.countTime, + gap: cc.fx.GameConfig.GM_INFO.gap }; if (cc.fx.GameConfig.CLICK_DATA.duration > 50) { cc.fx.GameConfig.CLICK_DATA.duration = 50; @@ -927,7 +932,7 @@ var GameManager = /** @class */ (function (_super) { this.begin = false; this.over = true; this.unschedule(this.updateCountDownTime); - this.setLoss(); + this.setLoss({ distance: 0 }); var time = 0; if (this.clickCount > 0) time = parseInt(cc.fx.GameConfig.GM_INFO.mean_Time / this.clickCount + ""); diff --git a/temp/quick-scripts/src/assets/Script/GameOver.js b/temp/quick-scripts/src/assets/Script/GameOver.js index 1d9e284..d6063c2 100644 --- a/temp/quick-scripts/src/assets/Script/GameOver.js +++ b/temp/quick-scripts/src/assets/Script/GameOver.js @@ -107,6 +107,9 @@ var NewClass = /** @class */ (function (_super) { }; //根据内容填充排行榜 NewClass.prototype.setRank = function (num, data) { + if (!data) { + return; + } var hitNode = null; if (num == 0) { hitNode = this.one; @@ -125,7 +128,7 @@ var NewClass = /** @class */ (function (_super) { } if (hitNode) { hitNode.active = true; - cc.fx.GameTool.subName(data.nickName, 4); + data.nickName = cc.fx.GameTool.subName(data.nickName, 4); hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; cc.fx.GameTool.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); diff --git a/temp/quick-scripts/src/assets/Script/GameOver.js.map b/temp/quick-scripts/src/assets/Script/GameOver.js.map index fcb00c8..e1a0c3b 100644 --- a/temp/quick-scripts/src/assets/Script/GameOver.js.map +++ b/temp/quick-scripts/src/assets/Script/GameOver.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\GameOver.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n @property(cc.Label)\r\n count: cc.Label = null;\r\n @property(cc.Label)\r\n time: cc.Label = null;\r\n @property(cc.Node)\r\n selfNode: cc.Node = null;\r\n @property(cc.Node)\r\n one: cc.Node = null;\r\n @property(cc.Node)\r\n two: cc.Node = null;\r\n @property(cc.Node)\r\n three: cc.Node = null;\r\n @property(cc.Node)\r\n four: cc.Node = null;\r\n @property(cc.Node)\r\n five: cc.Node = null;\r\n listData: any;\r\n selfData: any;\r\n // onLoad () {}\r\n start () {\r\n this.count.string = cc.fx.GameConfig.GM_INFO.total + \"\";\r\n if(cc.fx.GameConfig.GM_INFO.mean_Time > 10){\r\n cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random()*10+\"\")+5)/10\r\n }\r\n this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + \"s\";\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.listData = [];\r\n this.selfData = null;\r\n this.one.active = false;\r\n this.two.active = false;\r\n this.three.active = false;\r\n this.four.active = false;\r\n this.five.active = false;\r\n var urlNow = window.location.href;\r\n if(this.containsTrain(urlNow)){\r\n this.node.getChildByName(\"again\").active = false;\r\n this.node.getChildByName(\"back\").active = false;\r\n this.node.getChildByName(\"finishi\").active = true;\r\n }\r\n else{\r\n this.node.getChildByName(\"again\").active = true;\r\n this.node.getChildByName(\"back\").active = true;\r\n this.node.getChildByName(\"finishi\").active = false;\r\n }\r\n this.getRank();\r\n }\r\n //打开排行榜\r\n jumpFinishi(){\r\n let url = \"https://train.sparkus.cn/poster/game/\" + cc.fx.GameConfig.GM_INFO.scode + \"?suc=1\";\r\n window.location.href = url;\r\n }\r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n //重新开始玩\r\n again(){\r\n cc.director.loadScene(\"GameScene\");\r\n }\r\n //判断来源\r\n containsTrain(str) {\r\n return /from=train/i.test(str);\r\n }\r\n //获取排行榜\r\n getRank(){\r\n //获取排行榜数据 所需数据量\r\n let dataFile = {\r\n length:5\r\n }\r\n cc.fx.GameTool.getRank(dataFile,data =>this.getRankData(data));\r\n }\r\n //设置排行信息\r\n getRankData(data){\r\n if(data){\r\n cc.fx.GameTool.getRankData(data,this,4);\r\n cc.fx.GameTool.setPic(this.selfNode.getChildByName(\"pic\").getChildByName(\"icon\"),this.selfData.pic);\r\n for(let i=0;i<=4;i++){\r\n this.setRank(i,this.listData[i]);\r\n }\r\n }\r\n }\r\n //根据内容填充排行榜\r\n setRank(num,data){\r\n var hitNode = null;\r\n if(num == 0){\r\n hitNode = this.one;\r\n }\r\n else if(num == 1){\r\n hitNode = this.two;\r\n }\r\n else if(num == 2){\r\n hitNode = this.three;\r\n }\r\n else if(num == 3){\r\n hitNode = this.four;\r\n }\r\n else if(num == 4){\r\n hitNode = this.five;\r\n }\r\n if(hitNode){\r\n hitNode.active = true;\r\n cc.fx.GameTool.subName(data.nickName,4);\r\n hitNode.getChildByName(\"name\").getComponent(cc.Label).string = data.nickName;\r\n hitNode.getChildByName(\"total\").getComponent(cc.Label).string = data.totalSunCount;\r\n cc.fx.GameTool.setPic(hitNode.getChildByName(\"pic\").getChildByName(\"icon\"),data.pic);\r\n }\r\n } \r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\GameOver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACM,IAAA,KAAsB,EAAE,CAAC,UAAU,EAAlC,OAAO,aAAA,EAAE,QAAQ,cAAiB,CAAC;AAG1C;IAAsC,4BAAY;IAAlD;QAAA,qEAkHC;QAhHG,WAAK,GAAa,IAAI,CAAC;QAEvB,UAAI,GAAa,IAAI,CAAC;QAEtB,cAAQ,GAAY,IAAI,CAAC;QAEzB,SAAG,GAAY,IAAI,CAAC;QAEpB,SAAG,GAAY,IAAI,CAAC;QAEpB,WAAK,GAAY,IAAI,CAAC;QAEtB,UAAI,GAAY,IAAI,CAAC;QAErB,UAAI,GAAY,IAAI,CAAC;;IAkGzB,CAAC;IA/FG,eAAe;IACf,wBAAK,GAAL;QACI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QACxD,IAAG,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,GAAG,EAAE,EAAC;YACvC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,GAAC,EAAE,GAAC,EAAE,CAAC,GAAC,CAAC,CAAC,GAAC,EAAE,CAAA;SAC5E;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IACD,OAAO;IACP,uBAAI,GAAJ;QACI,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACzB,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAClC,IAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;SACrD;aACG;YACA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SACtD;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IACD,OAAO;IACP,8BAAW,GAAX;QACI,IAAI,GAAG,GAAG,uCAAuC,GAAG,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC9F,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;IAC/B,CAAC;IACD,OAAO;IACP,2BAAQ,GAAR;QACI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD,OAAO;IACP,wBAAK,GAAL;QACI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD,MAAM;IACN,gCAAa,GAAb,UAAc,GAAG;QACb,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IACD,OAAO;IACP,0BAAO,GAAP;QAAA,iBAMC;QALG,gBAAgB;QAChB,IAAI,QAAQ,GAAG;YACX,MAAM,EAAC,CAAC;SACX,CAAA;QACA,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAC,UAAA,IAAI,IAAG,OAAA,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC,CAAC;IACpE,CAAC;IACD,QAAQ;IACR,8BAAW,GAAX,UAAY,IAAI;QACZ,IAAG,IAAI,EAAC;YACH,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAC,IAAI,EAAC,CAAC,CAAC,CAAC;YACxC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACrG,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,CAAC,IAAE,CAAC,EAAC,CAAC,EAAE,EAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aACpC;SACJ;IACL,CAAC;IACD,WAAW;IACX,0BAAO,GAAP,UAAQ,GAAG,EAAC,IAAI;QACZ,IAAG,CAAC,IAAI,EAAC;YACL,OAAO;SACV;QACD,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,IAAG,GAAG,IAAI,CAAC,EAAC;YACR,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;SACtB;aACI,IAAG,GAAG,IAAI,CAAC,EAAC;YACb,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;SACtB;aACI,IAAG,GAAG,IAAI,CAAC,EAAC;YACb,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;SACxB;aACI,IAAG,GAAG,IAAI,CAAC,EAAC;YACb,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;SACvB;aACI,IAAG,GAAG,IAAI,CAAC,EAAC;YACb,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;SACvB;QACD,IAAG,OAAO,EAAC;YACP,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC7E,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;YAClF,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACzF;IACL,CAAC;IA/GD;QADC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC;2CACI;IAEvB;QADC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC;0CACG;IAEtB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;8CACO;IAEzB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;yCACE;IAEpB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;yCACE;IAEpB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;2CACI;IAEtB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;0CACG;IAErB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;0CACG;IAhBJ,QAAQ;QAD5B,OAAO;OACa,QAAQ,CAkH5B;IAAD,eAAC;CAlHD,AAkHC,CAlHqC,EAAE,CAAC,SAAS,GAkHjD;kBAlHoB,QAAQ","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property} = cc._decorator;\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n @property(cc.Label)\r\n count: cc.Label = null;\r\n @property(cc.Label)\r\n time: cc.Label = null;\r\n @property(cc.Node)\r\n selfNode: cc.Node = null;\r\n @property(cc.Node)\r\n one: cc.Node = null;\r\n @property(cc.Node)\r\n two: cc.Node = null;\r\n @property(cc.Node)\r\n three: cc.Node = null;\r\n @property(cc.Node)\r\n four: cc.Node = null;\r\n @property(cc.Node)\r\n five: cc.Node = null;\r\n listData: any;\r\n selfData: any;\r\n // onLoad () {}\r\n start () {\r\n this.count.string = cc.fx.GameConfig.GM_INFO.total + \"\";\r\n if(cc.fx.GameConfig.GM_INFO.mean_Time > 10){\r\n cc.fx.GameConfig.GM_INFO.mean_Time = (parseInt(Math.random()*10+\"\")+5)/10\r\n }\r\n this.time.string = cc.fx.GameConfig.GM_INFO.mean_Time + \"s\";\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.listData = [];\r\n this.selfData = null;\r\n this.one.active = false;\r\n this.two.active = false;\r\n this.three.active = false;\r\n this.four.active = false;\r\n this.five.active = false;\r\n var urlNow = window.location.href;\r\n if(this.containsTrain(urlNow)){\r\n this.node.getChildByName(\"again\").active = false;\r\n this.node.getChildByName(\"back\").active = false;\r\n this.node.getChildByName(\"finishi\").active = true;\r\n }\r\n else{\r\n this.node.getChildByName(\"again\").active = true;\r\n this.node.getChildByName(\"back\").active = true;\r\n this.node.getChildByName(\"finishi\").active = false;\r\n }\r\n this.getRank();\r\n }\r\n //打开排行榜\r\n jumpFinishi(){\r\n let url = \"https://train.sparkus.cn/poster/game/\" + cc.fx.GameConfig.GM_INFO.scode + \"?suc=1\";\r\n window.location.href = url;\r\n }\r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n //重新开始玩\r\n again(){\r\n cc.director.loadScene(\"GameScene\");\r\n }\r\n //判断来源\r\n containsTrain(str) {\r\n return /from=train/i.test(str);\r\n }\r\n //获取排行榜\r\n getRank(){\r\n //获取排行榜数据 所需数据量\r\n let dataFile = {\r\n length:5\r\n }\r\n cc.fx.GameTool.getRank(dataFile,data =>this.getRankData(data));\r\n }\r\n //设置排行信息\r\n getRankData(data){\r\n if(data){\r\n cc.fx.GameTool.getRankData(data,this,4);\r\n cc.fx.GameTool.setPic(this.selfNode.getChildByName(\"pic\").getChildByName(\"icon\"),this.selfData.pic);\r\n for(let i=0;i<=4;i++){\r\n this.setRank(i,this.listData[i]);\r\n }\r\n }\r\n }\r\n //根据内容填充排行榜\r\n setRank(num,data){\r\n if(!data){\r\n return;\r\n }\r\n var hitNode = null;\r\n if(num == 0){\r\n hitNode = this.one;\r\n }\r\n else if(num == 1){\r\n hitNode = this.two;\r\n }\r\n else if(num == 2){\r\n hitNode = this.three;\r\n }\r\n else if(num == 3){\r\n hitNode = this.four;\r\n }\r\n else if(num == 4){\r\n hitNode = this.five;\r\n }\r\n if(hitNode){\r\n hitNode.active = true;\r\n data.nickName = cc.fx.GameTool.subName(data.nickName,4);\r\n hitNode.getChildByName(\"name\").getComponent(cc.Label).string = data.nickName;\r\n hitNode.getChildByName(\"total\").getComponent(cc.Label).string = data.totalSunCount;\r\n cc.fx.GameTool.setPic(hitNode.getChildByName(\"pic\").getChildByName(\"icon\"),data.pic);\r\n }\r\n } \r\n}\r\n"]} \ No newline at end of file diff --git a/temp/quick-scripts/src/assets/Script/Sun.js b/temp/quick-scripts/src/assets/Script/Sun.js index 90cb91c..3f5caf7 100644 --- a/temp/quick-scripts/src/assets/Script/Sun.js +++ b/temp/quick-scripts/src/assets/Script/Sun.js @@ -31,6 +31,7 @@ var NewClass = /** @class */ (function (_super) { } // onLoad () {} NewClass.prototype.start = function () { + this.node.on(cc.Node.EventType.TOUCH_START, this.clickBtn, this); }; //初始化数据 NewClass.prototype.init = function (_id, color, speed, repeat) { @@ -55,9 +56,16 @@ var NewClass = /** @class */ (function (_super) { if (type == true) this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; }; + //计算两点之间直线距离 + NewClass.prototype.distanceBetweenTwoPoints = function (x1, y1, x2, y2) { + return Math.sqrt(Math.pow((x2 - x1), 2) + Math.pow((y2 - y1), 2)); + }; //点击事件 NewClass.prototype.clickBtn = function (event, data) { - if (data === "1") { + var pos = this.node.convertToNodeSpaceAR(event.getLocation()); + var distance = this.distanceBetweenTwoPoints(pos.x, 0, pos.y, 0); + distance = Math.floor(distance * 10) / 10; + if (this.node.name != "qiu4") { if (this.move == false && this.touch == true) { if (this.node.parent.parent.name == "GameNode") { if (this.node.parent.parent.getComponent("GameManager").begin == true) { @@ -70,13 +78,15 @@ var NewClass = /** @class */ (function (_super) { .start(); this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_1 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_1); } } else { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_2 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_2); } } } @@ -84,7 +94,8 @@ var NewClass = /** @class */ (function (_super) { if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { this.touch = false; this.node.zIndex = -1; - cc.fx.Notifications.emit("clickSun", this.id_Number); + var data_3 = { id: this.id_Number, distance: distance }; + cc.fx.Notifications.emit("clickSun", data_3); } } }; diff --git a/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js b/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js index e598fee..a145aab 100644 --- a/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js +++ b/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js @@ -40,25 +40,25 @@ var GameConfig = /** @class */ (function () { 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/GM_INFO', (err: any, res: cc.JsonAsset) => { + // if (err) { + // WeChat.setShare(location.href); + // // self.Authentication(); + // return; + // } + // let jsonData: object = res.json!; + // self.GM_INFO = jsonData["data"]; + // self.setCode(self.getKey("scode")); + // WeChat.setShare(location.href); + // // self.Authentication(); + // }) + // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => { + // if (err) { + // return; + // } + // let jsonData: object = res.json!; + // self.CLICK_DATA = jsonData["data"]; + // }) cc.resources.load('Json/LEVEL_INFO', function (err, res) { if (err) { return; @@ -83,9 +83,12 @@ var GameConfig = /** @class */ (function () { url: "https://api.sparkus.cn", success: false, matchId: null, - custom: 0 //用于测试跳关卡 + custom: 0, + gap: [] //存储点击到太阳中心距离 }; this.setCode(this.getKey("scode")); + share_1.WeChat.setShare(location.href); + this.Authentication(); }; GameConfig.CLICK_init = function () { this.CLICK_DATA = @@ -102,7 +105,8 @@ var GameConfig = /** @class */ (function () { difficultyLevel: 0, sunList: [], stepTimeList: [], - remainder: 120 //游戏剩余时间 + remainder: 120, + gap: [] //点击到太阳中心距离 }; }; GameConfig.LEVEL_INFO_init = function () { diff --git a/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js.map b/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js.map index b99f9d0..8e80b9a 100644 --- a/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js.map +++ b/temp/quick-scripts/src/assets/Script/module/Config/GameConfig.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\module\\Config\\GameConfig.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { WeChat } from \"../Share/share\";\r\n\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n@ccclass('GameConfig')\r\nexport class GameConfig {\r\n //所有控制信息都通过GameAppStart内控制\r\n private static _instance : GameConfig = null;\r\n //用于盛放埋点数据上传,每次上传后清空\r\n static GM_INFO: {\r\n // isEnd: false,\r\n mean_Time: number; //平均放箭速度\r\n total: number; //总共对的个数\r\n currSeed: number; //用于随机数种子\r\n gameId: string; //游戏ID\r\n userId: number; //用户ID\r\n scode: string; //用户code\r\n guide: boolean; //是否有引导\r\n url: string; //访问域名\r\n success: boolean; //用户游戏成功与否\r\n matchId: any; //用于埋点上传的ID\r\n custom: number; //用于测试跳关卡\r\n };\r\n static CLICK_DATA: {\r\n type: number; //上传数据类型\r\n success: boolean; //此局游戏胜负 \r\n round: number; //回合数\r\n totalSunCount: number; //太阳总数\r\n movedSunCount: number; //可移动太阳个数\r\n sunSpeed: number; //太阳移动速度\r\n overlapSunCount: number; //重叠太阳个数\r\n colorList: any[]; //太阳颜色数组\r\n duration: number; //每次点击的反应时间\r\n difficultyLevel: number; //此次难度\r\n sunList: any[]; //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: any[]; //每次点击间隔\r\n remainder: number; //游戏剩余时间\r\n };\r\n static LEVEL_INFO: { //第一难度\r\n number: number; //太阳总数 \r\n moveNumber: number; //太阳可移动个数\r\n moveSpeed: number; //太阳移动速度等级\r\n maxDistance: number; //布局后移动最大距离\r\n maxMove: number; //每个太阳之间距离最大间距\r\n repeat: number; //是否重叠,现在0 不重叠 1 重叠1个\r\n }[];\r\n static GAME_DATA: any[];\r\n\r\n\r\n static get Instance()\r\n {\r\n if (this._instance == null)\r\n {\r\n this._instance = new GameConfig();\r\n }\r\n return this._instance;\r\n }\r\n\r\n static getKey(key){\r\n var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)', 'i');\r\n var r = window.location.search.substr(1).match(reg);\r\n if (r != null) {\r\n return unescape(r[2]);\r\n }\r\n return \"\";\r\n }\r\n\r\n static init(){\r\n this.GM_INFO_init();\r\n this.CLICK_init();\r\n this.LEVEL_INFO_init();\r\n \r\n var self = this;\r\n cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.GM_INFO = jsonData[\"data\"];\r\n self.setCode(self.getKey(\"scode\"));\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n\r\n })\r\n cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n \r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.CLICK_DATA = jsonData[\"data\"];\r\n })\r\n cc.resources.load('Json/LEVEL_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.LEVEL_INFO = jsonData[\"data\"];\r\n })\r\n\r\n //GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次\r\n self.GAME_DATA = [\r\n ]\r\n }\r\n \r\n //数据备用\r\n static GM_INFO_init() {\r\n this.GM_INFO = {\r\n // isEnd: false,\r\n mean_Time: 0, //平均放箭速度\r\n total: 0, //总共对的个数\r\n currSeed: 203213, //用于随机数种子\r\n gameId: '100009', //游戏ID\r\n userId: 0, //用户ID\r\n scode: \"\", //用户code,从网页后缀获取\r\n guide: true, //是否有引导\r\n url: \"https://api.sparkus.cn\",//访问域名\r\n success: false, //用户游戏成功与否\r\n matchId: null, //用于埋点上传的ID\r\n custom: 0 //用于测试跳关卡\r\n };\r\n this.setCode(this.getKey(\"scode\"));\r\n }\r\n static CLICK_init() {\r\n this.CLICK_DATA =\r\n {\r\n type: 1, //上传数据类型\r\n success: false, //此局游戏胜负 \r\n round: 0, //回合数\r\n totalSunCount: 0, //太阳总数\r\n movedSunCount: 0, //可移动太阳个数\r\n sunSpeed: 0, //太阳移动速度\r\n overlapSunCount: 0, //重叠太阳个数\r\n colorList: [], //太阳颜色数组\r\n duration: 0, //每次点击的反应时间\r\n difficultyLevel: 0, //此次难度\r\n sunList: [], //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: [], //每次点击间隔\r\n remainder: 120 //游戏剩余时间\r\n }\r\n }\r\n static LEVEL_INFO_init() {\r\n this.LEVEL_INFO = [\r\n { //第一难度\r\n number: 3, //太阳总数 \r\n moveNumber: 0, //太阳可移动个数\r\n moveSpeed: 0, //太阳移动速度等级\r\n maxDistance: 200, //布局后移动最大距离\r\n maxMove: 1200, //每个太阳之间距离最大间距\r\n repeat: 0 //是否重叠,现在0 不重叠 1 重叠1个\r\n },\r\n { //第二难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第三难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第四难度\r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第五难度\r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第六难度\r\n number: 6,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第七难度\r\n number: 6,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第八难度\r\n number: 7,\r\n moveNumber: 0,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第九难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十一难度\r\n number: 8,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十二难度\r\n number: 8,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十三难度\r\n number: 9,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十四难度\r\n number: 9,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十五难度\r\n number: 10,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //11 \r\n number: 3,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //12 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //13 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //14 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //15 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //16 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //17 \r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //18 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //19 \r\n number: 5,\r\n moveNumber: 2,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //20 \r\n number: 5,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n }\r\n\r\n ]\r\n }\r\n static Authentication(){\r\n cc.fx.GameTool.Authentication();\r\n }\r\n\r\n static setCode(code){\r\n this.GM_INFO.scode = code;\r\n }\r\n\r\n}\r\n\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\module\\Config\\GameConfig.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { WeChat } from \"../Share/share\";\r\n\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n@ccclass('GameConfig')\r\nexport class GameConfig {\r\n //所有控制信息都通过GameAppStart内控制\r\n private static _instance : GameConfig = null;\r\n //用于盛放埋点数据上传,每次上传后清空\r\n static GM_INFO: {\r\n // isEnd: false,\r\n mean_Time: number; //平均放箭速度\r\n total: number; //总共对的个数\r\n currSeed: number; //用于随机数种子\r\n gameId: string; //游戏ID\r\n userId: number; //用户ID\r\n scode: string; //用户code\r\n guide: boolean; //是否有引导\r\n url: string; //访问域名\r\n success: boolean; //用户游戏成功与否\r\n matchId: any; //用于埋点上传的ID\r\n custom: number; //用于测试跳关卡\r\n };\r\n\r\n static LEVEL_INFO: { //第一难度\r\n number: number; //太阳总数 \r\n moveNumber: number; //太阳可移动个数\r\n moveSpeed: number; //太阳移动速度等级\r\n maxDistance: number; //布局后移动最大距离\r\n maxMove: number; //每个太阳之间距离最大间距\r\n repeat: number; //是否重叠,现在0 不重叠 1 重叠1个\r\n }[];\r\n static GAME_DATA: any[];\r\n static CLICK_DATA: {\r\n type: number; //上传数据类型\r\n success: boolean; //此局游戏胜负 \r\n round: number; //回合数\r\n totalSunCount: number; //太阳总数\r\n movedSunCount: number; //可移动太阳个数\r\n sunSpeed: number; //太阳移动速度\r\n overlapSunCount: number; //重叠太阳个数\r\n colorList: any[]; //太阳颜色数组\r\n duration: number; //每次点击的反应时间\r\n difficultyLevel: number; //此次难度\r\n sunList: any[]; //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: any[]; //每次点击间隔\r\n remainder: number; //游戏剩余时间\r\n gap: any[]; //点击到太阳中心距离\r\n };\r\n\r\n\r\n static get Instance()\r\n {\r\n if (this._instance == null)\r\n {\r\n this._instance = new GameConfig();\r\n }\r\n return this._instance;\r\n }\r\n\r\n static getKey(key){\r\n var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)', 'i');\r\n var r = window.location.search.substr(1).match(reg);\r\n if (r != null) {\r\n return unescape(r[2]);\r\n }\r\n return \"\";\r\n }\r\n\r\n static init(){\r\n this.GM_INFO_init();\r\n this.CLICK_init();\r\n this.LEVEL_INFO_init();\r\n \r\n var self = this;\r\n cc.resources.load('Json/GM_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.GM_INFO = jsonData[\"data\"];\r\n self.setCode(self.getKey(\"scode\"));\r\n WeChat.setShare(location.href);\r\n self.Authentication();\r\n\r\n })\r\n // cc.resources.load('Json/CLICK_DATA', (err: any, res: cc.JsonAsset) => {\r\n // if (err) {\r\n \r\n // return;\r\n // }\r\n // let jsonData: object = res.json!;\r\n // self.CLICK_DATA = jsonData[\"data\"];\r\n // })\r\n cc.resources.load('Json/LEVEL_INFO', (err: any, res: cc.JsonAsset) => {\r\n if (err) {\r\n return;\r\n }\r\n let jsonData: object = res.json!;\r\n self.LEVEL_INFO = jsonData[\"data\"];\r\n })\r\n\r\n //GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次\r\n self.GAME_DATA = [\r\n ]\r\n }\r\n \r\n //数据备用\r\n static GM_INFO_init() {\r\n this.GM_INFO = {\r\n // isEnd: false,\r\n mean_Time: 0, //平均放箭速度\r\n total: 0, //总共对的个数\r\n currSeed: 203213, //用于随机数种子\r\n gameId: '100009', //游戏ID\r\n userId: 0, //用户ID\r\n scode: \"\", //用户code,从网页后缀获取\r\n guide: true, //是否有引导\r\n url: \"https://api.sparkus.cn\",//访问域名\r\n success: false, //用户游戏成功与否\r\n matchId: null, //用于埋点上传的ID\r\n custom: 0 //用于测试跳关卡\r\n };\r\n this.setCode(this.getKey(\"scode\"));\r\n }\r\n static CLICK_init() {\r\n this.CLICK_DATA =\r\n {\r\n type: 1, //上传数据类型\r\n success: false, //此局游戏胜负 \r\n round: 0, //回合数\r\n totalSunCount: 0, //太阳总数\r\n movedSunCount: 0, //可移动太阳个数\r\n sunSpeed: 0, //太阳移动速度\r\n overlapSunCount: 0, //重叠太阳个数\r\n colorList: [], //太阳颜色数组\r\n duration: 0, //每次点击的反应时间\r\n difficultyLevel: 0, //此次难度\r\n sunList: [], //太阳数组,用于存放太阳类型 0:普通 1:移动 2:重叠\r\n stepTimeList: [], //每次点击间隔\r\n remainder: 120, //游戏剩余时间\r\n gap:[] //点击到太阳中心距离\r\n }\r\n }\r\n static LEVEL_INFO_init() {\r\n this.LEVEL_INFO = [\r\n { //第一难度\r\n number: 3, //太阳总数 \r\n moveNumber: 0, //太阳可移动个数\r\n moveSpeed: 0, //太阳移动速度等级\r\n maxDistance: 200, //布局后移动最大距离\r\n maxMove: 1200, //每个太阳之间距离最大间距\r\n repeat: 0 //是否重叠,现在0 不重叠 1 重叠1个\r\n },\r\n { //第二难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第三难度\r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第四难度\r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第五难度\r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第六难度\r\n number: 6,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第七难度\r\n number: 6,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第八难度\r\n number: 7,\r\n moveNumber: 0,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第九难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 4,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十难度\r\n number: 7,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十一难度\r\n number: 8,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十二难度\r\n number: 8,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十三难度\r\n number: 9,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //第十四难度\r\n number: 9,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //第十五难度\r\n number: 10,\r\n moveNumber: 5,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //11 \r\n number: 3,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //12 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 0,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //13 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //14 \r\n number: 4,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //15 \r\n number: 4,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //16 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 0\r\n },\r\n { //17 \r\n number: 5,\r\n moveNumber: 0,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //18 \r\n number: 5,\r\n moveNumber: 1,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //19 \r\n number: 5,\r\n moveNumber: 2,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n },\r\n { //20 \r\n number: 5,\r\n moveNumber: 3,\r\n moveSpeed: 6,\r\n maxDistance: 200,\r\n maxMove: 1200,\r\n repeat: 1\r\n }\r\n\r\n ]\r\n }\r\n static Authentication(){\r\n cc.fx.GameTool.Authentication();\r\n }\r\n\r\n static setCode(code){\r\n this.GM_INFO.scode = code;\r\n }\r\n\r\n}\r\n\r\n"]} \ No newline at end of file diff --git a/temp/quick-scripts/src/assets/Script/module/Share/share.js b/temp/quick-scripts/src/assets/Script/module/Share/share.js index d665b48..f5052fb 100644 --- a/temp/quick-scripts/src/assets/Script/module/Share/share.js +++ b/temp/quick-scripts/src/assets/Script/module/Share/share.js @@ -58,6 +58,7 @@ var WeChat = /** @class */ (function () { WeChat.getResult = function (res) { if (res) { var data = res.data; + // @ts-ignore wx.config({ debug: false, appId: data.appId, @@ -66,6 +67,7 @@ var WeChat = /** @class */ (function () { signature: data.signature, jsApiList: ['onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] }); + // @ts-ignore wx.checkJsApi({ jsApiList: ['updateAppMessageShareData'], success: function (res) { @@ -80,7 +82,9 @@ var WeChat = /** @class */ (function () { } }; WeChat.changeShare = function () { + // @ts-ignore wx.ready(function () { + // @ts-ignore wx.updateAppMessageShareData({ title: '记忆力认知测评', desc: '你的注意力和工作记忆有问题吗?', @@ -92,6 +96,7 @@ var WeChat = /** @class */ (function () { } }); setTimeout(function () { + // @ts-ignore wx.updateTimelineShareData({ title: '记忆力认知测评', link: shareConfig.shareLine, diff --git a/temp/quick-scripts/src/assets/Script/module/Share/share.js.map b/temp/quick-scripts/src/assets/Script/module/Share/share.js.map index 3fe9f29..cf521a7 100644 --- a/temp/quick-scripts/src/assets/Script/module/Share/share.js.map +++ b/temp/quick-scripts/src/assets/Script/module/Share/share.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\module\\Share\\share.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\n\nvar shareConfig = {\n gameId: \"100009\",\n shareLine: \"zDLsruVI\",\n EK:\"hui231%1\"\n };\n\n// 定义微信配置数据的接口\ninterface IWeChatConfig {\n appId: string;\n timestamp: number;\n nonceStr: string;\n signature: string;\n jsApiList: [];\n}\n\n// 微信操作类\nexport class WeChat {\n static setShare(url) {\n var urlTemp = this.removeQueryParams(url);\n shareConfig.shareLine = urlTemp;\n WeChat.getSignature(url);\n }\n\n static getResult(res){\n if(res){\n var data = res.data;\n wx.config({\n debug: false,\n appId: data.appId,\n timestamp: data.timestamp,\n nonceStr: data.nonceStr,\n signature: data.signature,\n jsApiList: ['onMenuShareTimeline','updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage']\n });\n wx.checkJsApi({\n jsApiList: ['updateAppMessageShareData'], // 需要检测的JS接口列表,所有JS接口列表见附录2,\n success: function(res) {\n setTimeout(() => { \n WeChat.changeShare();\n }, 200);\n setTimeout(() => {\n WeChat.changeShare();\n }, 500);\n }\n });\n }\n }\n\n static changeShare(){\n wx.ready(() => {\n wx.updateAppMessageShareData({ \n title: '记忆力认知测评', // 分享标题\n desc: '你的注意力和工作记忆有问题吗?', // 分享描述\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享好友成功回调\");\n }\n });\n setTimeout(() => {\n wx.updateTimelineShareData({ \n title: '记忆力认知测评', // 分享标题\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享朋友圈成功回调\");\n }\n })\n }, 200);\n\n }); \n }\n\n static getSignature(url: string): Promise {\n return new Promise((resolve) => {\n WeChat.getShareInfo((encodeURIComponent(url)),WeChat.getResult);\n });\n }\n static async getShareInfo(shareUrl: string, callback:Function): Promise {\n const time = Math.floor((new Date().getTime()) / 1000)\n const url = cc.fx.HttpUtil.apiSign(`/api/share/cfg?gameId=${cc.fx.GameConfig.GM_INFO.gameId}&time=${time}&url=${shareUrl}`,{})\n return cc.fx.HttpUtil.get(url,callback,3)\n }\n\n \n static containsNanana(str) {\n return /test/i.test(str);\n }\n\n static removeQueryParams(url) {\n return url.replace(/\\?.*$/, '');\n }\n\n}\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\module\\Share\\share.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\n\nvar shareConfig = {\n gameId: \"100009\",\n shareLine: \"zDLsruVI\",\n EK:\"hui231%1\"\n };\n\n// 定义微信配置数据的接口\ninterface IWeChatConfig {\n appId: string;\n timestamp: number;\n nonceStr: string;\n signature: string;\n jsApiList: [];\n}\n\n// 微信操作类\nexport class WeChat {\n static setShare(url) {\n var urlTemp = this.removeQueryParams(url);\n shareConfig.shareLine = urlTemp;\n WeChat.getSignature(url);\n }\n\n static getResult(res){\n if(res){\n var data = res.data;\n // @ts-ignore\n wx.config({\n debug: false,\n appId: data.appId,\n timestamp: data.timestamp,\n nonceStr: data.nonceStr,\n signature: data.signature,\n jsApiList: ['onMenuShareTimeline','updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage']\n });\n // @ts-ignore\n wx.checkJsApi({\n jsApiList: ['updateAppMessageShareData'], // 需要检测的JS接口列表,所有JS接口列表见附录2,\n success: function(res) {\n setTimeout(() => { \n WeChat.changeShare();\n }, 200);\n setTimeout(() => {\n WeChat.changeShare();\n }, 500);\n }\n });\n }\n }\n\n static changeShare(){\n // @ts-ignore\n wx.ready(() => {\n // @ts-ignore\n wx.updateAppMessageShareData({ \n title: '记忆力认知测评', // 分享标题\n desc: '你的注意力和工作记忆有问题吗?', // 分享描述\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享好友成功回调\");\n }\n });\n setTimeout(() => {\n // @ts-ignore\n wx.updateTimelineShareData({ \n title: '记忆力认知测评', // 分享标题\n link: shareConfig.shareLine, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致\n imgUrl: 'https://static.sparkus.cn/public/shootsun.jpg', // 分享图标\n success: function () {\n // 设置成功\n console.log(\"分享朋友圈成功回调\");\n }\n })\n }, 200);\n\n }); \n }\n\n static getSignature(url: string): Promise {\n return new Promise((resolve) => {\n WeChat.getShareInfo((encodeURIComponent(url)),WeChat.getResult);\n });\n }\n static async getShareInfo(shareUrl: string, callback:Function): Promise {\n const time = Math.floor((new Date().getTime()) / 1000)\n const url = cc.fx.HttpUtil.apiSign(`/api/share/cfg?gameId=${cc.fx.GameConfig.GM_INFO.gameId}&time=${time}&url=${shareUrl}`,{})\n return cc.fx.HttpUtil.get(url,callback,3)\n }\n\n \n static containsNanana(str) {\n return /test/i.test(str);\n }\n\n static removeQueryParams(url) {\n return url.replace(/\\?.*$/, '');\n }\n\n}\n"]} \ No newline at end of file