1234567891011121314151617181920 |
- {
- "code": "var Vector3 = Laya.Vector3;\r\nimport { GameTools, Transform3DHelper } from \"../Tools/GameTools\";\r\nimport { EventManager, StageState } from \"../Tools/EventManager\";\r\nimport { AssetManager } from \"../Tools/AssetManager\";\r\nimport GamePool from \"../Tools/GamePool\";\r\nimport { GameManager } from \"./GameManager\";\r\nimport { NpcRunner } from \"./NpcRunner\";\r\nimport { ChaseNpc } from \"./ChaseNpc\";\r\nimport { StageControl } from \"./StageControl\";\r\nimport { AccountManager } from \"../Net/AccountManager\";\r\nimport { Hostage } from \"./Hostage\";\r\nimport { Boss } from \"./Boss\";\r\nimport InGameView from \"../View/InGameView\";\r\nimport { AudioManager, MusicType } from \"../Tools/AudioManager\";\r\nexport var CharacterState;\r\n(function (CharacterState) {\r\n CharacterState[CharacterState[\"Run\"] = 0] = \"Run\";\r\n CharacterState[CharacterState[\"Idle\"] = 1] = \"Idle\";\r\n CharacterState[CharacterState[\"Die\"] = 2] = \"Die\";\r\n CharacterState[CharacterState[\"Win\"] = 3] = \"Win\";\r\n CharacterState[CharacterState[\"Shoot\"] = 4] = \"Shoot\";\r\n CharacterState[CharacterState[\"Walk\"] = 5] = \"Walk\";\r\n})(CharacterState || (CharacterState = {}));\r\nexport class Runner extends Laya.Script3D {\r\n constructor() {\r\n super();\r\n this.started = false;\r\n this.shoot = false;\r\n this.isbarrier = false;\r\n this.isfence = false;\r\n this.arrowarray = [];\r\n this.isdead = false;\r\n this.canmove = false;\r\n this._speed = 0;\r\n this._press = false;\r\n this.RayDir = new Vector3();\r\n this.DownHit = new Laya.HitResult();\r\n this.FowardHit = new Laya.HitResult();\r\n this.curspeed = 0;\r\n this.currotV = new Vector3();\r\n this.currot = new Laya.Quaternion;\r\n this.NormalizeSpeed = new Vector3();\r\n this.curpos = new Vector3();\r\n this.offest = new Vector3();\r\n this.arrowspeed = 0;\r\n this.speed = 0;\r\n this.arrowoffset = new Vector3();\r\n this.arrowcurpos = new Vector3();\r\n this.recover = false;\r\n EventManager.StageOn(StageState.Start, this, this.Begin);\r\n EventManager.StageOn(StageState.Lose, this, this.GameOver);\r\n EventManager.StageOn(StageState.Win, this, this.GameOver);\r\n }\r\n static get Instance() {\r\n if (Runner.ins) {\r\n return Runner.ins;\r\n }\r\n else {\r\n return new Runner();\r\n }\r\n }\r\n onAwake() {\r\n this.m_player = this.owner;\r\n this.m_animator = this.owner.getComponent(Laya.Animator);\r\n this.m_arrowpos = this.owner.getChildByName(\"arrowpos\");\r\n this.m_raypos = this.owner.getChildByName(\"raypos\");\r\n this.m_archerpos = this.owner.getChildByName(\"archerpos\");\r\n this.m_horseanimator = this.owner.getChildByName(\"horse\").getComponent(Laya.Animator);\r\n this._speed = StageControl.Instance.curstage.mainrolespeed;\r\n this.m_PlayerDamage = AccountManager.Instance.curplayerData.PlayerDamage;\r\n this.stage = Number(AccountManager.Instance.curplayerData.GainAccount(\"stage\"));\r\n this.ChangeState(CharacterState.Idle);\r\n this.DirRoatationLerp = AccountManager.Instance.curplayerData.DirRoatationLerp;\r\n this.DirMoveLerp = AccountManager.Instance.curplayerData.DirMoveLerp;\r\n this.arrowspeed = AccountManager.Instance.curplayerData.ArrowSpeed;\r\n }\r\n Begin() {\r\n this.canmove = true;\r\n this.CreatArrow();\r\n this.ChangeState(CharacterState.Walk);\r\n }\r\n onUpdate() {\r\n if (this.isdead) {\r\n this.ChangeState(CharacterState.Die);\r\n return;\r\n }\r\n if (this.canmove && this.started) {\r\n var speed;\r\n if (!this.isbarrier) {\r\n if (this.stage > 1) {\r\n if (this._press) {\r\n speed = StageControl.Instance.curstage.mainrolespeed;\r\n }\r\n else {\r\n speed = StageControl.Instance.curstage.mainrolespeed / 2;\r\n }\r\n let foward = Transform3DHelper.getForward(this.m_player.transform);\r\n this.Move(foward, speed);\r\n }\r\n else {\r\n let foward = Transform3DHelper.getForward(this.m_player.transform);\r\n speed = StageControl.Instance.curstage.mainrolespeed / 2;\r\n this.Move(foward, speed);\r\n }\r\n }\r\n }\r\n this.RayCheck();\r\n }\r\n MoveX(_speed) {\r\n if (this.m_player.transform.position.x < 0 && _speed < 0 && this.isfence) {\r\n return;\r\n }\r\n else if (this.m_player.transform.position.x > 0 && _speed > 0 && this.isfence) {\r\n return;\r\n }\r\n else if (this.m_player.transform.position.x >= GameManager.Instance.fenceleftpos && _speed > 0) {\r\n return;\r\n }\r\n else if (this.m_player.transform.position.x <= GameManager.Instance.fencerightpos && _speed < 0) {\r\n return;\r\n }\r\n _speed *= this.DirMoveLerp;\r\n if (this.canmove && this.started) {\r\n this.m_player.transform.translate(new Vector3(_speed, 0, 0));\r\n }\r\n }\r\n TurnDir(_dir) {\r\n if (_dir.x != 0) {\r\n Vector3.lerp(this.currotV, _dir, 0.35, _dir);\r\n this.currotV = _dir;\r\n Laya.Quaternion.rotationLookAt(_dir, new Vector3(0, 1, 0), this.currot);\r\n Laya.Quaternion.slerp(this.m_player.transform.rotation, this.currot, this.DirRoatationLerp, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_player.transform.rotation = this.currot;\r\n }\r\n }\r\n Move(_dir, _speed) {\r\n var sp = GameTools.Instance.lerp(this.curspeed, _speed, 0.1);\r\n this.curspeed = sp;\r\n Vector3.scale(_dir, this.curspeed, this.offest);\r\n Vector3.add(this.m_player.transform.position, this.offest, this.curpos);\r\n Vector3.lerp(this.m_player.transform.position, this.curpos, 0.15, this.curpos);\r\n this.curpos = new Vector3(this.curpos.x, this.curpos.y, this.curpos.z);\r\n this.m_player.transform.position = this.curpos;\r\n this.m_player.transform.position = this.m_player.transform.position.x < GameManager.Instance.fencerightpos + 0.5 ? new Vector3(GameManager.Instance.fencerightpos + 0.5, this.m_player.transform.position.y, this.m_player.transform.position.z) : this.m_player.transform.position;\r\n this.m_player.transform.position = this.m_player.transform.position.x > GameManager.Instance.fenceleftpos - 0.5 ? new Vector3(GameManager.Instance.fenceleftpos - 0.5, this.m_player.transform.position.y, this.m_player.transform.position.z) : this.m_player.transform.position;\r\n }\r\n ChangeState(_state) {\r\n if (this.m_characterstate == _state)\r\n return;\r\n this.m_characterstate = _state;\r\n switch (this.m_characterstate) {\r\n case CharacterState.Idle:\r\n this.Idle();\r\n break;\r\n case CharacterState.Run:\r\n this.Run();\r\n break;\r\n case CharacterState.Die:\r\n this.Die();\r\n break;\r\n case CharacterState.Shoot:\r\n this.Shoot();\r\n break;\r\n case CharacterState.Walk:\r\n this.Walk();\r\n break;\r\n }\r\n }\r\n Idle() {\r\n this.m_animator.play(\"idle\");\r\n this.m_horseanimator.play(\"idle\");\r\n }\r\n Run() {\r\n this.m_animator.play(\"down\");\r\n this.m_horseanimator.play(\"run\");\r\n }\r\n Die() {\r\n this.canmove = false;\r\n this.m_animator.play(\"die\");\r\n this.m_horseanimator.play(\"idle\");\r\n EventManager.StageTrigger(StageState.Lose);\r\n }\r\n GameOver() {\r\n EventManager.StageOff(StageState.Start, this, this.Begin);\r\n }\r\n Walk() {\r\n this.m_horseanimator.play(\"walk\");\r\n this.m_animator.play(\"down\");\r\n }\r\n Shoot() {\r\n this.m_animator.play(\"shoot\");\r\n this.m_animator.play(\"run\");\r\n }\r\n RayCheck() {\r\n if (this.FowardRayCheck) {\r\n this.CrashBarrier();\r\n }\r\n else {\r\n this.isbarrier = false;\r\n this.isfence = false;\r\n }\r\n }\r\n CrashBarrier() {\r\n var target = this.FowardHit.collider.owner.parent;\r\n if (target.name == \"stone\") {\r\n this.isbarrier = true;\r\n }\r\n else if (target.name == \"bonfire\") {\r\n this.ChangeState(CharacterState.Die);\r\n }\r\n else if (target.name == \"big_fence\") {\r\n this.isbarrier = true;\r\n }\r\n else if (target.name == \"wood_Cylinder\") {\r\n this.isbarrier = true;\r\n }\r\n else if (target.name == \"small_fence\") {\r\n this.isfence = true;\r\n }\r\n }\r\n get FowardRayCheck() {\r\n var isFowardHit = false;\r\n var startPos = new Vector3(this.m_player.transform.position.x, this.m_player.transform.position.y + 0.5, this.m_player.transform.position.z);\r\n let dir = Transform3DHelper.getForward(this.m_player.transform);\r\n var DownRay = new Laya.Ray(startPos, dir);\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(DownRay, this.FowardHit, 1)) {\r\n if (this.FowardHit.collider.collisionGroup == 100) {\r\n isFowardHit = true;\r\n }\r\n }\r\n return isFowardHit;\r\n }\r\n Archery() {\r\n AudioManager.playMusic(MusicType.shoot);\r\n Laya.timer.clear(this, this.ArrowFollow);\r\n Laya.timer.clear(this, this.AnimatorState);\r\n let ray = this.owner.getChildByName(\"raypos\").getChildAt(0);\r\n let forw = Transform3DHelper.getForward(ray.transform);\r\n let raypos = this.owner.getChildByName(\"raypos\");\r\n let trans = raypos.transform;\r\n let testRay = new Laya.Ray(new Vector3(trans.position.x, trans.position.y - 0.5, trans.position.z), forw);\r\n let hitRes = new Laya.HitResult();\r\n this.m_animator.play(\"shoot\");\r\n Laya.timer.frameLoop(1, this, this.AnimatorState);\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(testRay, hitRes)) {\r\n let target = hitRes.collider.owner;\r\n Laya.timer.frameLoop(1, this, this.ArrowMove, [this.m_arrow, forw, target]);\r\n }\r\n else {\r\n Laya.timer.frameLoop(1, this, this.ArrowMove, [this.m_arrow, forw]);\r\n }\r\n }\r\n ArrowMove(arrow, _dir, target) {\r\n if (target) {\r\n if (this.m_arrow.destroyed)\r\n return;\r\n let parent = target.parent;\r\n if (arrow.transform.position.z >= parent.transform.position.z) {\r\n if (parent.name == \"npc\") {\r\n AudioManager.playMusic(MusicType.hit);\r\n if (this.stage == 1) {\r\n if (GameManager.Instance.GuideKill < 2) {\r\n GameManager.Instance.GuideKill += 1;\r\n }\r\n if (GameManager.Instance.GuideKill == 1) {\r\n this.started = true;\r\n Laya.timer.once(3000, this, () => {\r\n this.started = false;\r\n });\r\n }\r\n if (GameManager.Instance.GuideKill == 2) {\r\n if (InGameView.Instance.Guide2.visible) {\r\n InGameView.Instance.Guide2.visible = false;\r\n InGameView.Instance.Guide3.visible = true;\r\n }\r\n }\r\n }\r\n GameManager.Instance.KillNum++;\r\n InGameView.Instance.InitUI();\r\n let _npcrunner = parent.getComponent(NpcRunner);\r\n let _chaseNpc = parent.getComponent(ChaseNpc);\r\n if (_npcrunner) {\r\n if (target.name == \"npcfrontcollider\") {\r\n _npcrunner.frontdie = true;\r\n }\r\n else if (target.name == \"npcrearcollider\") {\r\n _npcrunner.reardie = true;\r\n }\r\n }\r\n else if (_chaseNpc) {\r\n if (target.name == \"npcfrontcollider\") {\r\n _chaseNpc.frontdie = true;\r\n }\r\n else if (target.name == \"npcrearcollider\") {\r\n _chaseNpc.reardie = true;\r\n }\r\n }\r\n }\r\n else if (parent.name == \"big_fence\") {\r\n AudioManager.playMusic(MusicType.hit);\r\n if (this.stage == 1) {\r\n if (GameManager.Instance.GuideKill == 2) {\r\n InGameView.Instance.Guide3.visible = false;\r\n this.started = true;\r\n }\r\n }\r\n let tweenpos = GameTools.tweenMove(parent.transform, new Vector3(parent.transform.position.x, parent.transform.position.y, parent.transform.position.z + 5), 200, Laya.Ease.linearInOut, Laya.Handler.create(this, () => {\r\n tweenpos.clear();\r\n }));\r\n let tweenrot = GameTools.tweenRotate(parent.transform, new Vector3(90, 0, 0), 500, Laya.Ease.linearInOut, Laya.Handler.create(this, () => {\r\n tweenrot.clear();\r\n }));\r\n Laya.timer.once(1000, this, () => {\r\n GamePool.Instance.RecoveryModel(parent);\r\n });\r\n }\r\n else if (parent.name == \"hostage\") {\r\n AudioManager.playMusic(MusicType.hit);\r\n let _host = parent.getComponent(Hostage);\r\n _host.isdead = true;\r\n }\r\n else if (parent.name == \"boss\") {\r\n AudioManager.playMusic(MusicType.hit);\r\n GameManager.Instance.KillNum++;\r\n InGameView.Instance.InitUI();\r\n let _boss = parent.getComponent(Boss);\r\n _boss.LoseHp(this.m_PlayerDamage);\r\n }\r\n Laya.timer.clear(this, this.ArrowMove);\r\n GamePool.Instance.RecoveryModel(arrow);\r\n }\r\n else {\r\n var sp = GameTools.Instance.lerp(this.speed, this.arrowspeed, 0.1);\r\n this.speed = sp;\r\n Vector3.scale(_dir, this.speed, this.arrowoffset);\r\n Vector3.add(arrow.transform.position, this.arrowoffset, this.arrowcurpos);\r\n Vector3.lerp(arrow.transform.position, this.arrowcurpos, 0.15, this.arrowcurpos);\r\n arrow.transform.position = this.arrowcurpos;\r\n }\r\n }\r\n else {\r\n var sp = GameTools.Instance.lerp(this.speed, this.arrowspeed, 0.1);\r\n this.speed = sp;\r\n Vector3.scale(_dir, this.speed, this.arrowoffset);\r\n Vector3.add(arrow.transform.position, this.arrowoffset, this.arrowcurpos);\r\n Vector3.lerp(arrow.transform.position, this.arrowcurpos, 0.15, this.arrowcurpos);\r\n arrow.transform.position = this.arrowcurpos;\r\n if (!this.recover) {\r\n this.recover = true;\r\n Laya.timer.once(500, this, () => {\r\n Laya.timer.clear(this, this.ArrowMove);\r\n GamePool.Instance.RecoveryModel(arrow);\r\n this.recover = false;\r\n });\r\n }\r\n }\r\n }\r\n AnimatorState() {\r\n if (this.m_animator.getCurrentAnimatorPlayState(0).normalizedTime >= 1) {\r\n Laya.timer.clear(this, this.AnimatorState);\r\n if (!this.m_arrowpos.destroyed) {\r\n this.CreatArrow();\r\n this.shoot = false;\r\n this.m_animator.play(\"idle\");\r\n }\r\n }\r\n }\r\n CreatArrow() {\r\n var arrow = GamePool.Instance.GetModel(AssetManager.Instance.Prop.get(17), \"\");\r\n AssetManager.Instance.mainscene.addChild(arrow);\r\n this.arrowarray.push(arrow);\r\n arrow.transform.position = this.m_arrowpos.transform.position.clone();\r\n var euler = this.m_arrowpos.transform.rotationEuler.clone();\r\n arrow.transform.rotationEuler = euler;\r\n let scale = arrow.transform.scale.clone();\r\n scale.z = 0.5;\r\n scale.x = 0.8;\r\n scale.y = 0.5;\r\n arrow.transform.scale = scale;\r\n this.m_arrow = arrow;\r\n Laya.timer.frameLoop(1, this, this.ArrowFollow, [arrow, this.m_arrowpos]);\r\n }\r\n ArrowFollow(arrow, arrowpos) {\r\n if (!arrowpos.destroyed) {\r\n arrow.transform.position = arrowpos.transform.position.clone();\r\n arrow.transform.rotationEuler = arrowpos.transform.rotationEuler.clone();\r\n }\r\n else {\r\n Laya.timer.clear(this, this.ArrowFollow);\r\n }\r\n }\r\n Revive() {\r\n this.m_player.transform.position = new Vector3(this.m_player.transform.position.x, this.m_player.transform.position.y, this.m_player.transform.position.z - 15);\r\n this.canmove = true;\r\n this.ChangeState(CharacterState.Walk);\r\n }\r\n}\r\n//# sourceMappingURL=Runner.js.map",
- "references": [
- "E:/LayaProject/ArcherWorrior/src/Tools/GameTools.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/EventManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/AssetManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/GamePool.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/GameManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/NpcRunner.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/ChaseNpc.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/StageControl.ts",
- "E:/LayaProject/ArcherWorrior/src/Net/AccountManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/Hostage.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/Boss.ts",
- "E:/LayaProject/ArcherWorrior/src/View/InGameView.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/AudioManager.ts"
- ],
- "map": "{\"version\":3,\"file\":\"Runner.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Game/Runner.ts\"],\"names\":[],\"mappings\":\"AAAA,IAAO,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAE9B,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAc,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,CAAN,IAAY,cAA2C;AAAvD,WAAY,cAAc;IAAC,iDAAG,CAAA;IAAC,mDAAI,CAAA;IAAC,iDAAG,CAAA;IAAC,iDAAG,CAAA;IAAC,qDAAK,CAAA;IAAC,mDAAI,CAAA;AAAA,CAAC,EAA3C,cAAc,KAAd,cAAc,QAA6B;AACvD,MAAM,OAAO,MAAO,SAAQ,IAAI,CAAC,QAAQ;IA8CrC;QACI,KAAK,EAAE,CAAC;QA7CL,YAAO,GAAW,KAAK,CAAC;QAsB/B,UAAK,GAAW,KAAK,CAAC;QAEtB,cAAS,GAAW,KAAK,CAAC;QAE1B,YAAO,GAAW,KAAK,CAAC;QAEjB,eAAU,GAAc,EAAE,CAAC;QAE3B,WAAM,GAAW,KAAK,CAAC;QACvB,YAAO,GAAW,KAAK,CAAC;QAEvB,WAAM,GAAU,CAAC,CAAC;QAEnB,WAAM,GAAW,KAAK,CAAC;QAEvB,WAAM,GAAW,IAAI,OAAO,EAAE,CAAC;QAG9B,YAAO,GAAkB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAE9C,cAAS,GAAkB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAsCxD,aAAQ,GAAG,CAAC,CAAC;QAmDb,YAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACxB,WAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7B,mBAAc,GAAW,IAAI,OAAO,EAAE,CAAC;QACvC,WAAM,GAAW,IAAI,OAAO,EAAE,CAAC;QAC/B,WAAM,GAAW,IAAI,OAAO,EAAE,CAAC;QAsJ/B,eAAU,GAAG,CAAC,CAAE;QAChB,UAAK,GAAG,CAAC,CAAC;QACV,gBAAW,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5B,gBAAW,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5B,YAAO,GAAG,KAAK,CAAC;QAnPZ,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAC,IAAI,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAC,IAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAC,IAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;IACM,MAAM,KAAK,QAAQ;QACtB,IAAG,MAAM,CAAC,GAAG,EAAC;YACV,OAAO,MAAM,CAAC,GAAG,CAAA;SACpB;aACG;YACA,OAAO,IAAI,MAAM,EAAE,CAAC;SACvB;IACL,CAAC;IACD,OAAO;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAkB,CAAC;QAC1E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAkB,CAAC;QACzE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAkB,CAAC;QACrE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAkB,CAAC;QAC3E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAkB,CAAC;QACvG,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;QAE3D,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC;QACzE,IAAI,CAAC,KAAK,GAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC;QAC/E,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC;QACrE,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC;IACvE,CAAC;IACD,KAAK;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,QAAQ;QACJ,IAAG,IAAI,CAAC,MAAM,EAAC;YACX,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACrC,OAAO;SACV;QACD,IAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAC;YAC5B,IAAI,KAAK,CAAC;YACV,IAAG,CAAC,IAAI,CAAC,SAAS,EAAC;gBACf,IAAG,IAAI,CAAC,KAAK,GAAC,CAAC,EAAC;oBACZ,IAAG,IAAI,CAAC,MAAM,EAAC;wBACX,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;qBAExD;yBACG;wBACA,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,GAAC,CAAC,CAAC;qBAE1D;oBACD,IAAI,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACnE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,KAAK,CAAC,CAAC;iBAC3B;qBACG;oBACA,IAAI,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACnE,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,GAAC,CAAC,CAAC;oBACvD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,KAAK,CAAC,CAAC;iBAC3B;aACJ;SACJ;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,MAAa;QAEf,IAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,CAAC,IAAI,MAAM,GAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAC;YAChE,OAAM;SACT;aACI,IAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,CAAC,IAAG,MAAM,GAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAC;YACpE,OAAM;SACT;aACI,IAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAE,WAAW,CAAC,QAAQ,CAAC,YAAY,IAAI,MAAM,GAAC,CAAC,EAAC;YACtF,OAAM;SACT;aACI,IAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAE,WAAW,CAAC,QAAQ,CAAC,aAAa,IAAI,MAAM,GAAC,CAAC,EAAC;YACvF,OAAM;SACT;QACD,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC;QAC3B,IAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,MAAM,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC;SAC9D;IAGL,CAAC;IAUD,OAAO,CAAC,IAAY;QAEhB,IAAG,IAAI,CAAC,CAAC,IAAI,CAAC,EACd;YACI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,EAAC,IAAI,OAAO,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAC,IAAI,CAAC,MAAM,EAAC,IAAI,CAAC,gBAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtG,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;SAClD;IACL,CAAC;IACD,IAAI,CAAC,IAAY,EAAC,MAAa;QAC3B,IAAI,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAC,MAAM,EAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,QAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAC,IAAI,CAAC,MAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAC,IAAI,CAAC,MAAM,EAAC,IAAI,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAErE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,GAAC,GAAG,CAAA,CAAC,CAAA,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,GAAC,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAC,CAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;QACxQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,GAAC,GAAG,CAAA,CAAC,CAAA,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,GAAC,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAC,CAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;IAC1Q,CAAC;IACD,WAAW,CAAC,MAAqB;QAC7B,IAAG,IAAI,CAAC,gBAAgB,IAAI,MAAM;YAAC,OAAM;QACzC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC/B,QAAQ,IAAI,CAAC,gBAAgB,EAAE;YAC3B,KAAK,cAAc,CAAC,IAAI;gBACpB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,MAAM;YACV,KAAK,cAAc,CAAC,GAAG;gBACnB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACX,MAAK;YACT,KAAK,cAAc,CAAC,GAAG;gBACnB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACX,MAAM;YACV,KAAK,cAAc,CAAC,KAAK;gBACrB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,MAAM;YACV,KAAK,cAAc,CAAC,IAAI;gBACpB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,MAAM;SACb;IACL,CAAC;IACD,IAAI;QACA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IACD,GAAG;QACC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,GAAG;QACC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAMlC,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,QAAQ;QACJ,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAC,IAAI,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE5D,CAAC;IACD,IAAI;QACA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAChC,CAAC;IACD,KAAK;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,QAAQ;QACJ,IAAG,IAAI,CAAC,cAAc,EAAC;YACnB,IAAI,CAAC,YAAY,EAAE,CAAC;SACvB;aACG;YACA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACxB;IACL,CAAC;IAED,YAAY;QACR,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAuB,CAAC;QACnE,IAAG,MAAM,CAAC,IAAI,IAAI,OAAO,EAAC;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;aACI,IAAG,MAAM,CAAC,IAAI,IAAI,SAAS,EAAC;YAC7B,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;SACxC;aACI,IAAG,MAAM,CAAC,IAAI,IAAI,WAAW,EAAC;YAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;aACI,IAAG,MAAM,CAAC,IAAI,IAAI,eAAe,EAAC;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;SACxB;aACI,IAAG,MAAM,CAAC,IAAI,IAAI,aAAa,EAAC;YACjC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACvB;IACL,CAAC;IAGD,IAAI,cAAc;QAEd,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,QAAQ,GAAW,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACjJ,IAAI,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,GAAY,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAC,GAAG,CAAC,CAAC;QAClD,IAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAC,IAAI,CAAC,SAAS,EAAC,CAAC,CAAC,EAAC;YACnF,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,GAAG,EAAG;gBAEhD,WAAW,GAAG,IAAI,CAAC;aACtB;SACJ;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,OAAO;QACH,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAkB,CAAC;QAC7E,IAAI,IAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAkB,CAAC;QAClE,IAAI,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;QAC7B,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAC,GAAG,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC;QACrG,IAAI,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAElC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEhD,IAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAC,MAAM,CAAC,EAAC;YACzE,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAsB,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,EAAC,CAAC,IAAI,CAAC,OAAO,EAAC,IAAI,EAAC,MAAM,CAAC,CAAC,CAAA;SACzE;aACG;YACA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,EAAC,CAAC,IAAI,CAAC,OAAO,EAAC,IAAI,CAAC,CAAC,CAAA;SAClE;IACL,CAAC;IAQD,SAAS,CAAC,KAAmB,EAAC,IAAY,EAAC,MAAO;QAC9C,IAAI,MAAM,EAAE;YACR,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;gBAAE,OAAO;YACnC,IAAI,MAAM,GAAG,MAAM,CAAC,MAAuB,CAAC;YAC5C,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE;gBAC3D,IAAI,MAAM,CAAC,IAAI,IAAI,KAAK,EAAE;oBACtB,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBAEtC,IAAG,IAAI,CAAC,KAAK,IAAI,CAAC,EAAC;wBACf,IAAG,WAAW,CAAC,QAAQ,CAAC,SAAS,GAAE,CAAC,EAAC;4BACjC,WAAW,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC;yBACvC;wBACD,IAAG,WAAW,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,EAAC;4BACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;4BACpB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAC,IAAI,EAAC,GAAE,EAAE;gCAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;4BACzB,CAAC,CAAC,CAAA;yBACL;wBACD,IAAG,WAAW,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,EAAC;4BAEnC,IAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC;gCAClC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gCAC3C,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;6BAC7C;yBACJ;qBACJ;oBACD,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC/B,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC7B,IAAI,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAc,CAAC;oBAC7D,IAAI,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAa,CAAC;oBAC1D,IAAI,UAAU,EAAE;wBACZ,IAAI,MAAM,CAAC,IAAI,IAAI,kBAAkB,EAAE;4BACnC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;yBAC9B;6BACI,IAAI,MAAM,CAAC,IAAI,IAAI,iBAAiB,EAAE;4BACvC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;yBAC7B;qBACJ;yBACI,IAAI,SAAS,EAAE;wBAChB,IAAI,MAAM,CAAC,IAAI,IAAI,kBAAkB,EAAE;4BACnC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;yBAC7B;6BACI,IAAI,MAAM,CAAC,IAAI,IAAI,iBAAiB,EAAE;4BACvC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;yBAC5B;qBACJ;iBACJ;qBACI,IAAI,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE;oBACjC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACtC,IAAG,IAAI,CAAC,KAAK,IAAG,CAAC,EAAC;wBACd,IAAG,WAAW,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,EAAC;4BACnC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;4BAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;yBACvB;qBACJ;oBACD,IAAI,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;wBACpN,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACrB,CAAC,CAAC,CAAC,CAAC;oBACJ,IAAI,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;wBACrI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACrB,CAAC,CAAC,CAAC,CAAA;oBACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;wBAC7B,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAC5C,CAAC,CAAC,CAAA;iBACL;qBACI,IAAI,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE;oBAC/B,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACtC,IAAI,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAY,CAAC;oBACpD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;iBACvB;qBACI,IAAG,MAAM,CAAC,IAAI,IAAI,MAAM,EAAC;oBAC1B,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACtC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC/B,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC7B,IAAI,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAS,CAAC;oBAC9C,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACrC;gBACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aAC1C;iBACI;gBACD,IAAI,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;gBACnE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1E,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBACjF,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;aAC/C;SACJ;aACI;YACD,IAAI,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACjF,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;YAC5C,IAAG,CAAC,IAAI,CAAC,OAAO,EAAC;gBACb,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;oBAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBACvC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACzB,CAAC,CAAC,CAAA;aACL;SACJ;IACL,CAAC;IAED,aAAa;QACT,IAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,cAAc,IAAE,CAAC,EAAC;YAChE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC1C,IAAG,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAC;gBAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAChC;SACJ;IACL,CAAC;IAED,UAAU;QACN,IAAI,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAC,EAAE,CAAC,CAAC;QAC9E,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtE,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC5D,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,KAAK,CAAC;QACtC,IAAI,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1C,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;QACd,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;QACd,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;QACd,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,WAAW,EAAC,CAAC,KAAK,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,WAAW,CAAC,KAAK,EAAC,QAAQ;QACtB,IAAG,CAAC,QAAQ,CAAC,SAAS,EAAC;YACnB,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/D,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC5E;aACG;YACA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC3C;IACL,CAAC;IAED,MAAM;QACF,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAC,EAAE,CAAC,CAAC;QAC5J,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CAEJ\"}"
- }
|