diff --git a/assets/Scene/GuideScene.fire b/assets/Scene/GuideScene.fire index c66c139..79e9f56 100644 --- a/assets/Scene/GuideScene.fire +++ b/assets/Scene/GuideScene.fire @@ -2302,7 +2302,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 480, + "width": 432, "height": 135.6 }, "_anchorPoint": { @@ -2356,7 +2356,7 @@ "_dstBlendFactor": 771, "_string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", "_N$string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -3354,7 +3354,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 520, + "width": 468, "height": 75.6 }, "_anchorPoint": { @@ -3408,7 +3408,7 @@ "_dstBlendFactor": 771, "_string": "记住屏幕中太阳出现的顺序。", "_N$string": "记住屏幕中太阳出现的顺序。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -4311,7 +4311,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 504, "height": 75.6 }, "_anchorPoint": { @@ -4365,7 +4365,7 @@ "_dstBlendFactor": 771, "_string": "按照太阳的出现顺序依次点击。", "_N$string": "按照太阳的出现顺序依次点击。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -5265,7 +5265,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 576, "height": 195.6 }, "_anchorPoint": { @@ -5319,7 +5319,7 @@ "_dstBlendFactor": 771, "_string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", "_N$string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", - "_fontSize": 35, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, diff --git a/assets/Scene/LoadScene.fire b/assets/Scene/LoadScene.fire index 6a53004..b8300c2 100644 --- a/assets/Scene/LoadScene.fire +++ b/assets/Scene/LoadScene.fire @@ -1359,7 +1359,7 @@ "_srcBlendFactor": 770, "_dstBlendFactor": 771, "_spriteFrame": { - "__uuid__": "9615103c-b027-48c9-b2a6-4d01e594a784" + "__uuid__": "e8db2543-6af9-4173-a369-6cafed03a0eb" }, "_type": 1, "_sizeMode": 1, @@ -1372,9 +1372,7 @@ "_fillStart": 0, "_fillRange": 0, "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, + "_atlas": null, "_id": "e3tnncQgtFn49iTBzwCpMN" }, { diff --git a/assets/Scene/RankScene.fire b/assets/Scene/RankScene.fire index 5fa8d06..bdb2410 100644 --- a/assets/Scene/RankScene.fire +++ b/assets/Scene/RankScene.fire @@ -72,40 +72,42 @@ "__id__": 3 }, { - "__id__": 5 + "__id__": 6 }, { - "__id__": 11 + "__id__": 15 }, { - "__id__": 62 + "__id__": 71 }, { - "__id__": 69 + "__id__": 82 }, { - "__id__": 84 + "__id__": 105 }, { - "__id__": 86 + "__id__": 108 }, { - "__id__": 109 + "__id__": 143 } ], "_active": true, "_components": [ { - "__id__": 114 + "__id__": 149 }, { - "__id__": 115 + "__id__": 150 }, { - "__id__": 116 + "__id__": 151 } ], - "_prefab": null, + "_prefab": { + "__id__": 152 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -167,7 +169,9 @@ "__id__": 4 } ], - "_prefab": null, + "_prefab": { + "__id__": 5 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -251,6 +255,17 @@ "_alignWithScreen": true, "_id": "40YcGtOLdDr6BSLg4kOPDC" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "97fLKw9fpLKIc0dJLpbPlR", + "sync": false + }, { "__type__": "cc.Node", "_name": "background", @@ -260,19 +275,21 @@ }, "_children": [ { - "__id__": 6 + "__id__": 7 }, { - "__id__": 8 + "__id__": 10 } ], "_active": true, "_components": [ { - "__id__": 10 + "__id__": 13 } ], - "_prefab": null, + "_prefab": { + "__id__": 14 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -325,16 +342,18 @@ "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 7 + "__id__": 8 } ], - "_prefab": null, + "_prefab": { + "__id__": 9 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -387,7 +406,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 6 + "__id__": 7 }, "_enabled": true, "_materials": [ @@ -414,21 +433,34 @@ "_atlas": null, "_id": "3fB3H5tTlIlKVeuLBgN2qd" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c5puxQ0Z5GMpH5c8y1917z", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 9 + "__id__": 11 } ], - "_prefab": null, + "_prefab": { + "__id__": 12 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -481,7 +513,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 8 + "__id__": 10 }, "_enabled": true, "_materials": [ @@ -508,12 +540,23 @@ "_atlas": null, "_id": "faN5bpm8tIb40jYDjtbwXj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "6ee9vBJQ5Hs43VSXCcp0fr", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 5 + "__id__": 6 }, "_enabled": true, "_materials": [ @@ -540,6 +583,17 @@ "_atlas": null, "_id": "888hvGBMlC74RLITj4GjZH" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "8dEBgqFXxELpmAzyYl1ZRR", + "sync": false + }, { "__type__": "cc.Node", "_name": "ScrollView", @@ -549,25 +603,27 @@ }, "_children": [ { - "__id__": 12 + "__id__": 16 }, { - "__id__": 18 + "__id__": 23 } ], "_active": true, "_components": [ { - "__id__": 60 + "__id__": 68 }, { - "__id__": 16 + "__id__": 21 }, { - "__id__": 61 + "__id__": 69 } ], - "_prefab": null, + "_prefab": { + "__id__": 70 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -620,26 +676,28 @@ "_name": "scrollBar", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 13 + "__id__": 17 } ], "_active": false, "_components": [ { - "__id__": 15 + "__id__": 20 }, { - "__id__": 58 + "__id__": 65 }, { - "__id__": 59 + "__id__": 66 } ], - "_prefab": null, + "_prefab": { + "__id__": 67 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -692,16 +750,18 @@ "_name": "bar", "_objFlags": 512, "_parent": { - "__id__": 12 + "__id__": 16 }, "_children": [], "_active": true, "_components": [ { - "__id__": 14 + "__id__": 18 } ], - "_prefab": null, + "_prefab": { + "__id__": 19 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -754,7 +814,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 13 + "__id__": 17 }, "_enabled": true, "_materials": [ @@ -781,23 +841,34 @@ "_atlas": null, "_id": "3c5hqDysBEP4STnJxq6+Kh" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d7LA6B6L9KYrPYs9FOPGKR", + "sync": false + }, { "__type__": "cc.Scrollbar", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_scrollView": { - "__id__": 16 + "__id__": 21 }, "_touching": false, "_opacity": 255, "enableAutoHide": true, "autoHideTime": 1, "_N$handle": { - "__id__": 14 + "__id__": 18 }, "_N$direction": 1, "_id": "96ZRZ1fLtOo4EwcQEvfvZQ" @@ -807,7 +878,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "horizontal": false, @@ -819,10 +890,10 @@ "scrollEvents": [], "cancelInnerEvents": true, "_N$content": { - "__id__": 17 + "__id__": 22 }, "content": { - "__id__": 17 + "__id__": 22 }, "_N$horizontalScrollBar": null, "_N$verticalScrollBar": null, @@ -833,16 +904,18 @@ "_name": "content", "_objFlags": 512, "_parent": { - "__id__": 18 + "__id__": 23 }, "_children": [ { - "__id__": 20 + "__id__": 26 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 64 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -895,20 +968,22 @@ "_name": "view", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 17 + "__id__": 22 } ], "_active": true, "_components": [ { - "__id__": 19 + "__id__": 24 } ], - "_prefab": null, + "_prefab": { + "__id__": 25 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -961,7 +1036,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 18 + "__id__": 23 }, "_enabled": true, "_materials": [ @@ -976,44 +1051,55 @@ "_N$inverted": false, "_id": "26KueHItNK14Rh/HjkmD9I" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01e0xqlUVFcY0MMajauQHo", + "sync": false + }, { "__type__": "cc.Node", "_name": "RankListItem", "_objFlags": 0, "_parent": { - "__id__": 17 + "__id__": 22 }, "_children": [ { - "__id__": 21 + "__id__": 27 }, { - "__id__": 24 + "__id__": 30 }, { - "__id__": 33 - }, - { - "__id__": 44 - }, - { - "__id__": 47 + "__id__": 39 }, { "__id__": 50 }, { "__id__": 53 + }, + { + "__id__": 56 + }, + { + "__id__": 59 } ], "_active": true, "_components": [ { - "__id__": 56 + "__id__": 62 } ], "_prefab": { - "__id__": 57 + "__id__": 63 }, "_opacity": 255, "_color": { @@ -1067,17 +1153,17 @@ "_name": "bg", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 22 + "__id__": 28 } ], "_prefab": { - "__id__": 23 + "__id__": 29 }, "_opacity": 255, "_color": { @@ -1131,7 +1217,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 21 + "__id__": 27 }, "_enabled": true, "_materials": [ @@ -1163,7 +1249,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1176,24 +1262,24 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ { - "__id__": 25 + "__id__": 31 }, { - "__id__": 28 + "__id__": 34 } ], "_active": true, "_components": [ { - "__id__": 31 + "__id__": 37 } ], "_prefab": { - "__id__": 32 + "__id__": 38 }, "_opacity": 255, "_color": { @@ -1247,17 +1333,17 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": true, "_components": [ { - "__id__": 26 + "__id__": 32 } ], "_prefab": { - "__id__": 27 + "__id__": 33 }, "_opacity": 255, "_color": { @@ -1311,7 +1397,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 25 + "__id__": 31 }, "_enabled": true, "_materials": [ @@ -1341,7 +1427,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1354,17 +1440,17 @@ "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": false, "_components": [ { - "__id__": 29 + "__id__": 35 } ], "_prefab": { - "__id__": 30 + "__id__": 36 }, "_opacity": 255, "_color": { @@ -1418,7 +1504,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 28 + "__id__": 34 }, "_enabled": true, "_materials": [ @@ -1448,7 +1534,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1461,7 +1547,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 24 + "__id__": 30 }, "_enabled": true, "_materials": [ @@ -1479,7 +1565,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1492,23 +1578,23 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ - { - "__id__": 34 - }, - { - "__id__": 37 - }, { "__id__": 40 + }, + { + "__id__": 43 + }, + { + "__id__": 46 } ], "_active": true, "_components": [], "_prefab": { - "__id__": 43 + "__id__": 49 }, "_opacity": 255, "_color": { @@ -1562,226 +1648,8 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 35 - } - ], - "_prefab": { - "__id__": 36 - }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "34MaLWCWxBHoY//3pYJXcH" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 34 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "81Vy6ELJROcJi8tTw2Qjb5" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "07jJ4rjvBM3K8UmWuJPTSW", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "two", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 38 - } - ], - "_prefab": { "__id__": 39 }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "84qKc8CKlOI522xR39xkzA" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 37 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "9b7R4QlpVKqqTMybq9FiqI" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "cf00JqB1FL4J82EdUA2X13", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "three", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, "_children": [], "_active": false, "_components": [ @@ -1837,7 +1705,7 @@ "_is3DNode": false, "_groupIndex": 0, "groupIndex": 0, - "_id": "9166Yb071H1Zr8Ui2B+hsT" + "_id": "34MaLWCWxBHoY//3pYJXcH" }, { "__type__": "cc.Sprite", @@ -1854,6 +1722,224 @@ ], "_srcBlendFactor": 770, "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "81Vy6ELJROcJi8tTw2Qjb5" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "07jJ4rjvBM3K8UmWuJPTSW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 45 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "84qKc8CKlOI522xR39xkzA" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 43 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "9b7R4QlpVKqqTMybq9FiqI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "cf00JqB1FL4J82EdUA2X13", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 47 + } + ], + "_prefab": { + "__id__": 48 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "9166Yb071H1Zr8Ui2B+hsT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, "_spriteFrame": { "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" }, @@ -1876,7 +1962,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1887,7 +1973,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1900,17 +1986,17 @@ "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 45 + "__id__": 51 } ], "_prefab": { - "__id__": 46 + "__id__": 52 }, "_opacity": 255, "_color": { @@ -1964,7 +2050,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 44 + "__id__": 50 }, "_enabled": true, "_materials": [ @@ -1995,7 +2081,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2008,17 +2094,17 @@ "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 48 + "__id__": 54 } ], "_prefab": { - "__id__": 49 + "__id__": 55 }, "_opacity": 255, "_color": { @@ -2072,7 +2158,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 47 + "__id__": 53 }, "_enabled": true, "_materials": [ @@ -2103,7 +2189,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2116,17 +2202,17 @@ "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 51 + "__id__": 57 } ], "_prefab": { - "__id__": 52 + "__id__": 58 }, "_opacity": 255, "_color": { @@ -2180,7 +2266,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 50 + "__id__": 56 }, "_enabled": true, "_materials": [ @@ -2211,7 +2297,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2224,17 +2310,17 @@ "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 54 + "__id__": 60 } ], "_prefab": { - "__id__": 55 + "__id__": 61 }, "_opacity": 255, "_color": { @@ -2288,7 +2374,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 53 + "__id__": 59 }, "_enabled": true, "_materials": [ @@ -2319,7 +2405,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2332,7 +2418,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 20 + "__id__": 26 }, "_enabled": true, "_id": "c1c+DMgdRG3q56NuEbVYb0" @@ -2340,7 +2426,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2348,12 +2434,23 @@ "fileId": "55FH2q1HJAyK0hrjxGH/+q", "sync": false }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b21uNyrqhLbqirpS1MD+7t", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "alignMode": 0, @@ -2380,7 +2477,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_materials": [ @@ -2407,12 +2504,23 @@ "_atlas": null, "_id": "18yu9m8C1KVImpGMQfBH6e" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7by3ovAnJLYoQqKmlhCACY", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": false, "_materials": [ @@ -2444,11 +2552,11 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "itemRender": { - "__id__": 20 + "__id__": 26 }, "type": 2, "startAxis": 2, @@ -2461,6 +2569,17 @@ "padding_right": 10, "_id": "5eHjeDnZlKvI3Vhx1nh5nF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "bdWGhni0BLgaAOrQnsfTP4", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Node", @@ -2470,18 +2589,20 @@ }, "_children": [ { - "__id__": 63 + "__id__": 72 }, { - "__id__": 65 + "__id__": 75 }, { - "__id__": 67 + "__id__": 78 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 81 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2534,16 +2655,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 64 + "__id__": 73 } ], - "_prefab": null, + "_prefab": { + "__id__": 74 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2596,7 +2719,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 63 + "__id__": 72 }, "_enabled": true, "_materials": [ @@ -2624,21 +2747,34 @@ "_N$cacheMode": 0, "_id": "8fbqxr8WlF+4EtfRkmqVmB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bzdCzsURJc4G7MwOL0Blj", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 66 + "__id__": 76 } ], - "_prefab": null, + "_prefab": { + "__id__": 77 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2691,7 +2827,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 65 + "__id__": 75 }, "_enabled": true, "_materials": [ @@ -2719,21 +2855,34 @@ "_N$cacheMode": 0, "_id": "0f+OS1A5VBkY5x0F5RYDoj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "517a9VdPBNUK5P35X44CpK", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 68 + "__id__": 79 } ], - "_prefab": null, + "_prefab": { + "__id__": 80 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2786,7 +2935,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 67 + "__id__": 78 }, "_enabled": true, "_materials": [ @@ -2814,6 +2963,28 @@ "_N$cacheMode": 0, "_id": "66yy55ZIJLOajbzHnk0Pyq" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "12KoCg1NRLpJU9aRF1iPkq", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "9963O/IP5CCLrawiVnAqdg", + "sync": false + }, { "__type__": "cc.Node", "_name": "player", @@ -2823,19 +2994,21 @@ }, "_children": [ { - "__id__": 70 + "__id__": 83 }, { - "__id__": 77 + "__id__": 94 } ], "_active": true, "_components": [ { - "__id__": 83 + "__id__": 103 } ], - "_prefab": null, + "_prefab": { + "__id__": 104 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2888,22 +3061,24 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 71 + "__id__": 84 }, { - "__id__": 73 + "__id__": 87 }, { - "__id__": 75 + "__id__": 90 } ], "_active": false, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 93 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2956,16 +3131,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 72 + "__id__": 85 } ], - "_prefab": null, + "_prefab": { + "__id__": 86 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3018,7 +3195,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 71 + "__id__": 84 }, "_enabled": true, "_materials": [ @@ -3046,21 +3223,34 @@ "_N$cacheMode": 0, "_id": "daHyJzw/xLho0dlbkuPHvm" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b0QUZ3hixHY4BCC7p7EwaX", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 74 + "__id__": 88 } ], - "_prefab": null, + "_prefab": { + "__id__": 89 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3113,7 +3303,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 73 + "__id__": 87 }, "_enabled": true, "_materials": [ @@ -3141,21 +3331,34 @@ "_N$cacheMode": 0, "_id": "5bSRJmjgtCUrA2vxudA4QN" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d3ySguqntO5bgnP95er4PW", + "sync": false + }, { "__type__": "cc.Node", "_name": "number", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 76 + "__id__": 91 } ], - "_prefab": null, + "_prefab": { + "__id__": 92 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3208,7 +3411,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 75 + "__id__": 90 }, "_enabled": true, "_materials": [ @@ -3236,28 +3439,52 @@ "_N$cacheMode": 0, "_id": "4ejvYL3kxDzq6r/YHZLUuV" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d6vzzOaCBH2JMQzL1q75Qk", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01Wu1da3hD9qLoiu2u15Dh", + "sync": false + }, { "__type__": "cc.Node", "_name": "mask", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 78 + "__id__": 95 }, { - "__id__": 80 + "__id__": 98 } ], "_active": true, "_components": [ { - "__id__": 82 + "__id__": 101 } ], - "_prefab": null, + "_prefab": { + "__id__": 102 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3310,16 +3537,18 @@ "_name": "phone", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 79 + "__id__": 96 } ], - "_prefab": null, + "_prefab": { + "__id__": 97 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3372,7 +3601,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 78 + "__id__": 95 }, "_enabled": true, "_materials": [ @@ -3399,21 +3628,34 @@ "_atlas": null, "_id": "e5IQcGfCFLqoqf/wuxBYOY" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "a9FdZ8QGNM77omYBmm7jeP", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 81 + "__id__": 99 } ], - "_prefab": null, + "_prefab": { + "__id__": 100 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3466,7 +3708,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 80 + "__id__": 98 }, "_enabled": true, "_materials": [ @@ -3493,12 +3735,23 @@ "_atlas": null, "_id": "01l/YIk+JMKblUfKTyfTVO" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "082qUxbaNDrIu5wftUXuxE", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 77 + "__id__": 94 }, "_enabled": true, "_materials": [ @@ -3513,12 +3766,23 @@ "_N$inverted": false, "_id": "237hnicvNDF57wjWEhMu97" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "15yWGxXfFKHYDj+6AKZ+hO", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 69 + "__id__": 82 }, "_enabled": true, "_materials": [ @@ -3545,6 +3809,17 @@ "_atlas": null, "_id": "c3I2fvdkFB9I3xv3zy8H3C" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "777yycF4RPu7K18m/uyO1m", + "sync": false + }, { "__type__": "cc.Node", "_name": "bg", @@ -3556,10 +3831,12 @@ "_active": true, "_components": [ { - "__id__": 85 + "__id__": 106 } ], - "_prefab": null, + "_prefab": { + "__id__": 107 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3612,7 +3889,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 84 + "__id__": 105 }, "_enabled": true, "_materials": [ @@ -3641,6 +3918,17 @@ }, "_id": "3cEUZF+3RNUYwTQQpf9d/W" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "adJ7tHdodDiYvg71t3toeY", + "sync": false + }, { "__type__": "cc.Node", "_name": "Self", @@ -3650,31 +3938,33 @@ }, "_children": [ { - "__id__": 87 + "__id__": 109 }, { - "__id__": 93 + "__id__": 118 }, { - "__id__": 95 + "__id__": 121 }, { - "__id__": 102 + "__id__": 132 }, { - "__id__": 104 + "__id__": 135 }, { - "__id__": 106 + "__id__": 138 } ], "_active": true, "_components": [ { - "__id__": 108 + "__id__": 141 } ], - "_prefab": null, + "_prefab": { + "__id__": 142 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3727,23 +4017,25 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 88 + "__id__": 110 }, { - "__id__": 90 + "__id__": 113 } ], "_active": true, "_components": [ { - "__id__": 92 + "__id__": 116 } ], - "_prefab": null, + "_prefab": { + "__id__": 117 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3796,16 +4088,18 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 89 + "__id__": 111 } ], - "_prefab": null, + "_prefab": { + "__id__": 112 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3858,7 +4152,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 88 + "__id__": 110 }, "_enabled": true, "_materials": [ @@ -3885,21 +4179,34 @@ "_atlas": null, "_id": "0eYZNHU9lK5Z0d0kmu6v2F" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "f513pLQ/9KMbKpOTC4nuyz", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 91 + "__id__": 114 } ], - "_prefab": null, + "_prefab": { + "__id__": 115 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3952,7 +4259,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 90 + "__id__": 113 }, "_enabled": true, "_materials": [ @@ -3979,12 +4286,23 @@ "_atlas": null, "_id": "79BxLIwZdOjIPk+JbpAeFu" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c8vhbkrhtGw72GydJ4enTg", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 87 + "__id__": 109 }, "_enabled": true, "_materials": [ @@ -3999,21 +4317,34 @@ "_N$inverted": false, "_id": "6fiuDWjOBCBLIM3SAArXZT" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "47dNJgs3hCIZESImEUA8wi", + "sync": false + }, { "__type__": "cc.Node", "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 94 + "__id__": 119 } ], - "_prefab": null, + "_prefab": { + "__id__": 120 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4066,7 +4397,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 93 + "__id__": 118 }, "_enabled": true, "_materials": [ @@ -4094,27 +4425,40 @@ "_N$cacheMode": 1, "_id": "f4PjLXFaJKY7WwqSqZK1UD" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "25WXxoGV5I/KgHBE8D1rsK", + "sync": false + }, { "__type__": "cc.Node", "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 96 + "__id__": 122 }, { - "__id__": 98 + "__id__": 125 }, { - "__id__": 100 + "__id__": 128 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 131 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4167,16 +4511,18 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 97 + "__id__": 123 } ], - "_prefab": null, + "_prefab": { + "__id__": 124 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4229,7 +4575,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 96 + "__id__": 122 }, "_enabled": true, "_materials": [ @@ -4258,21 +4604,34 @@ }, "_id": "9fZk18R5pFzpXsHYRZLIyB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "09Kg3hfzBBu6HptPpAFSW9", + "sync": false + }, { "__type__": "cc.Node", "_name": "two", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 99 + "__id__": 126 } ], - "_prefab": null, + "_prefab": { + "__id__": 127 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4325,7 +4684,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 98 + "__id__": 125 }, "_enabled": true, "_materials": [ @@ -4354,21 +4713,34 @@ }, "_id": "bcmZsyS4BDw7p0EU0wLam9" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "0dKJ2TWjFCOJ/iqhRFSLjk", + "sync": false + }, { "__type__": "cc.Node", "_name": "three", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 101 + "__id__": 129 } ], - "_prefab": null, + "_prefab": { + "__id__": 130 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4421,7 +4793,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 100 + "__id__": 128 }, "_enabled": true, "_materials": [ @@ -4450,21 +4822,45 @@ }, "_id": "7d/VdpTjhGQZaLUUl7Uh/+" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1aJ6eRDI5HH7V7ePpX8123", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1dS3urBJ1F55mw2t/Q3F7w", + "sync": false + }, { "__type__": "cc.Node", "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 103 + "__id__": 133 } ], - "_prefab": null, + "_prefab": { + "__id__": 134 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4517,7 +4913,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 102 + "__id__": 132 }, "_enabled": true, "_materials": [ @@ -4545,21 +4941,34 @@ "_N$cacheMode": 1, "_id": "0ckqDgb/BOnqmrI+CX+7LF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "31xa76G7lPaao3sNmpqjSI", + "sync": false + }, { "__type__": "cc.Node", "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 105 + "__id__": 136 } ], - "_prefab": null, + "_prefab": { + "__id__": 137 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4612,7 +5021,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 104 + "__id__": 135 }, "_enabled": true, "_materials": [ @@ -4640,21 +5049,34 @@ "_N$cacheMode": 1, "_id": "f1wOeDKU5ID6PNtDXFhMnG" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "42BvS5Yl5GfY/GLeE5YQOh", + "sync": false + }, { "__type__": "cc.Node", "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 107 + "__id__": 139 } ], - "_prefab": null, + "_prefab": { + "__id__": 140 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4707,7 +5129,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 106 + "__id__": 138 }, "_enabled": true, "_materials": [ @@ -4735,12 +5157,23 @@ "_N$cacheMode": 1, "_id": "8f59Obe2BI3okn2hSUf1uI" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bFLMTAaRJZbZdCmLU7NlT", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 86 + "__id__": 108 }, "_enabled": true, "alignMode": 1, @@ -4762,6 +5195,17 @@ "_originalHeight": 0, "_id": "d3X22XFMBBOqWuJHIN1DzL" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "02TaTwJ1tM844wDACOg8Uk", + "sync": false + }, { "__type__": "cc.Node", "_name": "backBtn", @@ -4773,16 +5217,18 @@ "_active": true, "_components": [ { - "__id__": 110 + "__id__": 144 }, { - "__id__": 111 + "__id__": 145 }, { - "__id__": 112 + "__id__": 146 } ], - "_prefab": null, + "_prefab": { + "__id__": 148 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4835,7 +5281,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_materials": [ @@ -4867,7 +5313,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "alignMode": 1, @@ -4894,7 +5340,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_normalMaterial": null, @@ -4903,7 +5349,7 @@ "zoomScale": 1.1, "clickEvents": [ { - "__id__": 113 + "__id__": 147 } ], "_N$interactable": true, @@ -4971,6 +5417,17 @@ "handler": "backClick", "customEventData": "" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "34+hXrhBBJUqEHHRNeqJSa", + "sync": false + }, { "__type__": "cc.Canvas", "_name": "", @@ -5024,14 +5481,25 @@ }, "_enabled": true, "Player": { - "__id__": 69 + "__id__": 82 }, "selfNode": { - "__id__": 86 + "__id__": 108 }, "phone": { - "__id__": 89 + "__id__": 111 }, "_id": "81Iy69gIdCtp0UzAUPZ1+M" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "", + "sync": false } ] \ No newline at end of file diff --git a/assets/Script/GameManager.ts b/assets/Script/GameManager.ts index 08e08fc..f6a2df6 100644 --- a/assets/Script/GameManager.ts +++ b/assets/Script/GameManager.ts @@ -984,7 +984,6 @@ export default class GameManager extends cc.Component { "reactionTime": time, "totalSunCount": GameData._instance.GM_INFO.total, "success": GameData._instance.GM_INFO.success - }; HttpUtil.rankData(1,function(){},postData); this.node.getChildByName("GameOver").active = true; diff --git a/assets/Script/GuideManager.ts b/assets/Script/GuideManager.ts index aa877b1..06f9fdf 100644 --- a/assets/Script/GuideManager.ts +++ b/assets/Script/GuideManager.ts @@ -47,8 +47,8 @@ export default class NewClass extends cc.Component { .call(() =>{ this.custom += 1; if(type != 0) this.custom = 2; - if( this.custom == 2) this.createSun1(); - else if( this.custom == 3) this.createSun2(); + if( this.custom == 2) this.createSun(true); + else if( this.custom == 3) this.createSun(false); else if( this.custom == 4) this.begin = true; else if( this.custom == 5) cc.director.loadScene("GameScene"); }) diff --git a/assets/Script/ListView/ItemRender.ts b/assets/Script/ListView/ItemRender.ts index e82dbbc..abc0f86 100644 --- a/assets/Script/ListView/ItemRender.ts +++ b/assets/Script/ListView/ItemRender.ts @@ -57,7 +57,7 @@ export default class ItemRender extends cc.Component { .catch(error => { console.error('Error fetching X-Info:', error); }); - cc.assetManager.loadRemote(url, {ext:'.jpg'},(err, texture:cc.Texture2D) => { + cc.assetManager.loadRemote(url, {ext:'.png'},(err, texture:cc.Texture2D) => { if(texture){ this.node.getChildByName("pic").getChildByName("pic").active= true; var sprite = this.node.getChildByName("pic").getChildByName("pic").getComponent(cc.Sprite); diff --git a/assets/Script/Load.ts b/assets/Script/Load.ts index 6559ae4..26b64cb 100644 --- a/assets/Script/Load.ts +++ b/assets/Script/Load.ts @@ -12,47 +12,52 @@ export default class NewClass extends cc.Component { //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 private Authentication(){ - let userId = StorageMessage.getStorage("user"); - if(userId == "undifend" || userId==null || userId == ""){ - this.setUserId(); + let name = "user_" + GameData._instance.GM_INFO.gameId; + let data = StorageMessage.getStorage(name); + if(data == "undifend" || data==null || data == ""){ + console.log("没缓存"); + this.setUserId(name); } else{ - let data = StorageMessage.getStorage("user"); - data = this.getUserId(data); + console.log("有缓存"); let timestamp = parseInt(new Date().getTime()/1000 + ""); - if((timestamp - data[2]) > 86400){ - this.setUserId(); + if((timestamp - data.time) > 86400){ + console.log("缓存过期"); + this.setUserId(name); return; } - GameData._instance.GM_INFO.userId = parseInt(data[1]); + GameData._instance.GM_INFO.userId = parseInt(data.userId); } } //设置userId,链接有获取,没有跳转授权 - private setUserId(){ - GameData._instance.GM_INFO.userId = this.getUserId(null); + private setUserId(name){ + GameData._instance.GM_INFO.userId = this.getUserId(); if(GameData._instance.GM_INFO.userId == null){ + console.log("链接没ID准备跳转"); let url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href; window.location.href = url; } else{ let timestamp = parseInt(new Date().getTime()/1000 + ""); - let idTemp = "gameId=" + GameData._instance.GM_INFO.gameId + - "?userId= " + GameData._instance.GM_INFO.userId + "?time=" + timestamp; - StorageMessage.setStorage("user",idTemp); + let idData = { + userId: GameData._instance.GM_INFO.userId + "", + time: timestamp + } + StorageMessage.setStorage(name,idData); + console.log("有ID:",GameData._instance.GM_INFO.userId); GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId); } } //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId - private getUserId(str) { + private getUserId() { let pathStr = window.location.search; let arr=pathStr.split("&"); - if(str != null) arr=pathStr.split("?"); if (pathStr.length>= 0&&arr.length>0) { let arr2=[]; arr.map(item=>{ arr2.push(item.split("=")[1]) }) - return str == null ? arr2[0]:arr2; + return arr2[0]; } else { return null } @@ -70,5 +75,7 @@ export default class NewClass extends cc.Component { openRank(){ cc.director.loadScene("RankScene"); } - + + protected update(dt: number): void { + } } diff --git a/assets/Script/RankManager.ts b/assets/Script/RankManager.ts index a94d252..49d205d 100644 --- a/assets/Script/RankManager.ts +++ b/assets/Script/RankManager.ts @@ -47,6 +47,7 @@ export default class RankManager extends cc.Component { } //实际设置排行数据 getRankData(data){ + if(data){ console.log(data); this.listData = data.data.list; @@ -145,7 +146,7 @@ export default class RankManager extends cc.Component { console.error('Error fetching X-Info:', error); }); var self = this; - cc.assetManager.loadRemote(pic, {ext:'.jpg'},(err, texture:cc.Texture2D) => { + cc.assetManager.loadRemote(pic, {ext:'.png'},(err, texture:cc.Texture2D) => { self.Player.opacity = 255; if(texture){ self.phone.node.active = true; diff --git a/assets/Script/tool/Storage.ts b/assets/Script/tool/Storage.ts deleted file mode 100644 index ea5d843..0000000 --- a/assets/Script/tool/Storage.ts +++ /dev/null @@ -1,27 +0,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) - } - }, -}; - -export { StorageMessage }; \ No newline at end of file diff --git a/assets/Script/tool/Storage.ts.meta b/assets/Script/tool/Storage.ts.meta deleted file mode 100644 index a8fe89d..0000000 --- a/assets/Script/tool/Storage.ts.meta +++ /dev/null @@ -1,10 +0,0 @@ -{ - "ver": "1.1.0", - "uuid": "f124c672-2895-4f3e-86ec-14a468f946a6", - "importer": "typescript", - "isPlugin": false, - "loadPluginInWeb": true, - "loadPluginInNative": true, - "loadPluginInEditor": false, - "subMetas": {} -} \ No newline at end of file diff --git a/assets/prefab/Canvas.prefab b/assets/prefab/Canvas.prefab new file mode 100644 index 0000000..e318ab0 --- /dev/null +++ b/assets/prefab/Canvas.prefab @@ -0,0 +1,5454 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false, + "readonly": false + }, + { + "__type__": "cc.Node", + "_name": "Canvas", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 5 + }, + { + "__id__": 14 + }, + { + "__id__": 70 + }, + { + "__id__": 81 + }, + { + "__id__": 104 + }, + { + "__id__": 107 + }, + { + "__id__": 142 + } + ], + "_active": true, + "_components": [ + { + "__id__": 148 + }, + { + "__id__": 149 + }, + { + "__id__": 150 + } + ], + "_prefab": { + "__id__": 151 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 252, + "b": 252, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 375, + 667, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Main Camera", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + } + ], + "_prefab": { + "__id__": 4 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 252.87547223450972, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Camera", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "_cullingMask": 4294967295, + "_clearFlags": 7, + "_backgroundColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_depth": -1, + "_zoomRatio": 1, + "_targetTexture": null, + "_fov": 60, + "_orthoSize": 10, + "_nearClip": 1, + "_farClip": 4096, + "_ortho": true, + "_rect": { + "__type__": "cc.Rect", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + "_renderStages": 1, + "_alignWithScreen": true, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97fLKw9fpLKIc0dJLpbPlR", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "background", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 9 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + } + ], + "_prefab": { + "__id__": 13 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Sprite", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 7 + } + ], + "_prefab": { + "__id__": 8 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 1600, + 0, + 0, + 0, + 0, + 1, + 1, + -1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c5puxQ0Z5GMpH5c8y1917z", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Sprite", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 11 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -1600, + 0, + 0, + 0, + 0, + 1, + 1, + -1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 9 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "6ee9vBJQ5Hs43VSXCcp0fr", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 1, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8dEBgqFXxELpmAzyYl1ZRR", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "ScrollView", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 15 + }, + { + "__id__": 22 + } + ], + "_active": true, + "_components": [ + { + "__id__": 67 + }, + { + "__id__": 20 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 69 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 174, + "g": 121, + "b": 121, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 1400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 150, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 512, + "_parent": { + "__id__": 14 + }, + "_children": [ + { + "__id__": 16 + } + ], + "_active": false, + "_components": [ + { + "__id__": 19 + }, + { + "__id__": 64 + }, + { + "__id__": 65 + } + ], + "_prefab": { + "__id__": 66 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 820 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 340, + -410, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 512, + "_parent": { + "__id__": 15 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 17 + } + ], + "_prefab": { + "__id__": 18 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 10, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 16 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5c3bb932-6c3c-468f-88a9-c8c61d458641" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d7LA6B6L9KYrPYs9FOPGKR", + "sync": false + }, + { + "__type__": "cc.Scrollbar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "_scrollView": { + "__id__": 20 + }, + "_touching": false, + "_opacity": 255, + "enableAutoHide": true, + "autoHideTime": 1, + "_N$handle": { + "__id__": 17 + }, + "_N$direction": 1, + "_id": "" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "horizontal": false, + "vertical": true, + "inertia": true, + "brake": 0.75, + "elastic": true, + "bounceDuration": 0.23, + "scrollEvents": [], + "cancelInnerEvents": true, + "_N$content": { + "__id__": 21 + }, + "content": { + "__id__": 21 + }, + "_N$horizontalScrollBar": null, + "_N$verticalScrollBar": null, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 512, + "_parent": { + "__id__": 22 + }, + "_children": [ + { + "__id__": 25 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 63 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 512, + "_parent": { + "__id__": 14 + }, + "_children": [ + { + "__id__": 21 + } + ], + "_active": true, + "_components": [ + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 24 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 700 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 22 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 0, + "_segments": 64, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "01e0xqlUVFcY0MMajauQHo", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "RankListItem", + "_objFlags": 0, + "_parent": { + "__id__": 21 + }, + "_children": [ + { + "__id__": 26 + }, + { + "__id__": 29 + }, + { + "__id__": 38 + }, + { + "__id__": 49 + }, + { + "__id__": 52 + }, + { + "__id__": 55 + }, + { + "__id__": 58 + } + ], + "_active": true, + "_components": [ + { + "__id__": 61 + } + ], + "_prefab": { + "__id__": 62 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 94 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -100, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bg", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 28 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 94 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "ce34c82d-a598-42b0-a77c-6a75cd29dedb" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "6eyN1+nK5HT7svNqUsa2/+", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 30 + }, + { + "__id__": 33 + } + ], + "_active": true, + "_components": [ + { + "__id__": 36 + } + ], + "_prefab": { + "__id__": 37 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -171.687, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 29 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 31 + } + ], + "_prefab": { + "__id__": 32 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 30 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "08Vcf5jRBOhLOtnEzMUku6", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 29 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 34 + } + ], + "_prefab": { + "__id__": 35 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 64, + "height": 64 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 33 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "f0DfDJ4PNDbb7lvykwzyBm", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 29 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 60, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "38W68aamJOhbnBDiSboSCF", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 39 + }, + { + "__id__": 42 + }, + { + "__id__": 45 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 48 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 40, + "height": 36 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -261.233, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "one", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 40 + } + ], + "_prefab": { + "__id__": 41 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 39 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "07jJ4rjvBM3K8UmWuJPTSW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 44 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 42 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "cf00JqB1FL4J82EdUA2X13", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 46 + } + ], + "_prefab": { + "__id__": 47 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 45 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "1beDtXl+VD86kzCArCfEPs", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "d03AAa5MpCZY7eWAmnGlia", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rankLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 50 + } + ], + "_prefab": { + "__id__": 51 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -259.131, + -2.054, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "5", + "_N$string": "5", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "de4HHWkIhExrJq1+nHHMA6", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "totalLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 53 + } + ], + "_prefab": { + "__id__": 54 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 224.356, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 52 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "4", + "_N$string": "4", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 2, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "05c46heZhJV4sYMqYyxlB5", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "nameLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 56 + } + ], + "_prefab": { + "__id__": 57 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 240, + "height": 27.72 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -99.704, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 55 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "测试", + "_N$string": "测试", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 0, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 1, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "2an+mxcU5ApJz+ZlYlaw5G", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 59 + } + ], + "_prefab": { + "__id__": 60 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 28, + "height": 35.28 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 246.176, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "个", + "_N$string": "个", + "_fontSize": 28, + "_lineHeight": 28, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "78MlwwIH1CYrPsut4N5MBU", + "sync": false + }, + { + "__type__": "ca0f9k0oBVDbpQC+OMNTF3m", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 25 + }, + "_enabled": true, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "55FH2q1HJAyK0hrjxGH/+q", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b21uNyrqhLbqirpS1MD+7t", + "sync": false + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "alignMode": 0, + "_target": null, + "_alignFlags": 37, + "_left": 350.07654921020657, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 237, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5fe5dcaa-b513-4dc5-a166-573627b3a159" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7by3ovAnJLYoQqKmlhCACY", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": false, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "9bbda31e-ad49-43c9-aaf2-f7d9896bac69" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "d5421HgLShFKIjj5f18m1mi", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "itemRender": { + "__id__": 25 + }, + "type": 2, + "startAxis": 2, + "spaceX": 10, + "spaceY": 10, + "padding_top": 10, + "padding_buttom": 10, + "padding_left": 10, + "_padding": 0, + "padding_right": 10, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "bdWGhni0BLgaAOrQnsfTP4", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Node", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 71 + }, + { + "__id__": 74 + }, + { + "__id__": 77 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 80 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 72 + } + ], + "_prefab": { + "__id__": 73 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 54, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -258.909, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "排名", + "_N$string": "排名", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7bzdCzsURJc4G7MwOL0Blj", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 75 + } + ], + "_prefab": { + "__id__": 76 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 108, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -48.622, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 74 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "用户昵称", + "_N$string": "用户昵称", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "517a9VdPBNUK5P35X44CpK", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 78 + } + ], + "_prefab": { + "__id__": 79 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 108, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 223.658, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 77 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "驱逐太阳", + "_N$string": "驱逐太阳", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "12KoCg1NRLpJU9aRF1iPkq", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "9963O/IP5CCLrawiVnAqdg", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "player", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 82 + }, + { + "__id__": 93 + } + ], + "_active": true, + "_components": [ + { + "__id__": 102 + } + ], + "_prefab": { + "__id__": 103 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 98, + "height": 106 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -254, + 377, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 81 + }, + "_children": [ + { + "__id__": 83 + }, + { + "__id__": 86 + }, + { + "__id__": 89 + } + ], + "_active": false, + "_components": [], + "_prefab": { + "__id__": 92 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 84 + } + ], + "_prefab": { + "__id__": 85 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 72, + "height": 30.24 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -42.835, + 60.883, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 83 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "超过了", + "_N$string": "超过了", + "_fontSize": 24, + "_lineHeight": 24, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b0QUZ3hixHY4BCC7p7EwaX", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 87 + } + ], + "_prefab": { + "__id__": 88 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 48, + "height": 30.24 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 74.991, + 60.883, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 86 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "的人", + "_N$string": "的人", + "_fontSize": 24, + "_lineHeight": 24, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d3ySguqntO5bgnP95er4PW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "number", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 90 + } + ], + "_prefab": { + "__id__": 91 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 51, + "b": 51, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 58.04, + "height": 36.54 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 21.936, + 61.459, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 89 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "30%", + "_N$string": "30%", + "_fontSize": 29, + "_lineHeight": 29, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d6vzzOaCBH2JMQzL1q75Qk", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "01Wu1da3hD9qLoiu2u15Dh", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 81 + }, + "_children": [ + { + "__id__": 94 + }, + { + "__id__": 97 + } + ], + "_active": true, + "_components": [ + { + "__id__": 100 + } + ], + "_prefab": { + "__id__": 101 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 65, + "height": 65 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -0.079, + 4.153, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "phone", + "_objFlags": 0, + "_parent": { + "__id__": 93 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 95 + } + ], + "_prefab": { + "__id__": 96 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 65, + "height": 65 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a9FdZ8QGNM77omYBmm7jeP", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 93 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 98 + } + ], + "_prefab": { + "__id__": 99 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 97 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "082qUxbaNDrIu5wftUXuxE", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 93 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 64, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "15yWGxXfFKHYDj+6AKZ+hO", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 81 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "594a7d19-8612-477f-b1d7-e7966a19ea84" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "777yycF4RPu7K18m/uyO1m", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "bg", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 105 + } + ], + "_prefab": { + "__id__": 106 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 118 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -609, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "8cbfe9a0-914f-4e4c-807b-b073b09f267c" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "adJ7tHdodDiYvg71t3toeY", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "Self", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 108 + }, + { + "__id__": 117 + }, + { + "__id__": 120 + }, + { + "__id__": 131 + }, + { + "__id__": 134 + }, + { + "__id__": 137 + } + ], + "_active": true, + "_components": [ + { + "__id__": 140 + } + ], + "_prefab": { + "__id__": 141 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -667, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [ + { + "__id__": 109 + }, + { + "__id__": 112 + } + ], + "_active": true, + "_components": [ + { + "__id__": 115 + } + ], + "_prefab": { + "__id__": 116 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -171.687, + 62, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 108 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 110 + } + ], + "_prefab": { + "__id__": 111 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 109 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f513pLQ/9KMbKpOTC4nuyz", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 108 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 113 + } + ], + "_prefab": { + "__id__": 114 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 112 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c8vhbkrhtGw72GydJ4enTg", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 60, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "47dNJgs3hCIZESImEUA8wi", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rankLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 118 + } + ], + "_prefab": { + "__id__": 119 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 13.9, + "height": 31.5 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -259.131, + 59.946, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 117 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "5", + "_N$string": "5", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "25WXxoGV5I/KgHBE8D1rsK", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [ + { + "__id__": 121 + }, + { + "__id__": 124 + }, + { + "__id__": 127 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 130 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 40, + "height": 36 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -261.233, + 62, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "one", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 122 + } + ], + "_prefab": { + "__id__": 123 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 121 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "09Kg3hfzBBu6HptPpAFSW9", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 125 + } + ], + "_prefab": { + "__id__": 126 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 124 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "0dKJ2TWjFCOJ/iqhRFSLjk", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 128 + } + ], + "_prefab": { + "__id__": 129 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 127 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "1aJ6eRDI5HH7V7ePpX8123", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "1dS3urBJ1F55mw2t/Q3F7w", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "totalLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 132 + } + ], + "_prefab": { + "__id__": 133 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 224.356, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "4", + "_N$string": "4", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 2, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "31xa76G7lPaao3sNmpqjSI", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "nameLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 135 + } + ], + "_prefab": { + "__id__": 136 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 25, + "height": 31.5 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -99.704, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 134 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "我", + "_N$string": "我", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 0, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "42BvS5Yl5GfY/GLeE5YQOh", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 138 + } + ], + "_prefab": { + "__id__": 139 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 28, + "height": 35.28 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 246.176, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 137 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "个", + "_N$string": "个", + "_fontSize": 28, + "_lineHeight": 28, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7bFLMTAaRJZbZdCmLU7NlT", + "sync": false + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 107 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 4, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "02TaTwJ1tM844wDACOg8Uk", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "backBtn", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 143 + }, + { + "__id__": 144 + }, + { + "__id__": 145 + } + ], + "_prefab": { + "__id__": 147 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 25, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -320.09, + 618, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "ad47f6c1-49c5-42fd-b336-e15dd376b7cb" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 9, + "_left": 42.410000000000025, + "_right": 0, + "_top": 29, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "_normalMaterial": null, + "_grayMaterial": null, + "duration": 0.1, + "zoomScale": 1.1, + "clickEvents": [ + { + "__id__": 146 + } + ], + "_N$interactable": true, + "_N$enableAutoGrayEffect": false, + "_N$transition": 3, + "transition": 3, + "_N$normalColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_N$pressedColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "pressedColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_N$hoverColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "hoverColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_N$disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_N$normalSprite": null, + "_N$pressedSprite": null, + "pressedSprite": null, + "_N$hoverSprite": null, + "hoverSprite": null, + "_N$disabledSprite": null, + "_N$target": null, + "_id": "" + }, + { + "__type__": "cc.ClickEvent", + "target": { + "__id__": 1 + }, + "component": "", + "_componentId": "e74a999IDFOabyymZgXQIiy", + "handler": "backClick", + "customEventData": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "34+hXrhBBJUqEHHRNeqJSa", + "sync": false + }, + { + "__type__": "cc.Canvas", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "_designResolution": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_fitWidth": false, + "_fitHeight": true, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 45, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "e74a999IDFOabyymZgXQIiy", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "Player": { + "__id__": 81 + }, + "selfNode": { + "__id__": 107 + }, + "phone": { + "__id__": 110 + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "", + "sync": false + } +] \ No newline at end of file diff --git a/assets/prefab/Canvas.prefab.meta b/assets/prefab/Canvas.prefab.meta new file mode 100644 index 0000000..a806868 --- /dev/null +++ b/assets/prefab/Canvas.prefab.meta @@ -0,0 +1,9 @@ +{ + "ver": "1.3.2", + "uuid": "1f9265d6-31fa-4638-be80-340517745006", + "importer": "prefab", + "optimizationPolicy": "AUTO", + "asyncLoadAssets": false, + "readonly": false, + "subMetas": {} +} \ No newline at end of file diff --git a/assets/res/rankBtn.png b/assets/res/rankBtn.png new file mode 100644 index 0000000..0537a85 Binary files /dev/null and b/assets/res/rankBtn.png differ diff --git a/assets/res/rankBtn.png.meta b/assets/res/rankBtn.png.meta new file mode 100644 index 0000000..f8bd4fd --- /dev/null +++ b/assets/res/rankBtn.png.meta @@ -0,0 +1,38 @@ +{ + "ver": "2.3.7", + "uuid": "5932ca98-ee86-44cb-bd49-7947b2c92fd9", + "importer": "texture", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "width": 126, + "height": 140, + "platformSettings": {}, + "subMetas": { + "rankBtn": { + "ver": "1.0.6", + "uuid": "e8db2543-6af9-4173-a369-6cafed03a0eb", + "importer": "sprite-frame", + "rawTextureUuid": "5932ca98-ee86-44cb-bd49-7947b2c92fd9", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 126, + "height": 140, + "rawWidth": 126, + "rawHeight": 140, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/build-templates/web-mobile/index.html b/build-templates/web-mobile/index.html index 298b900..bd7eb98 100644 --- a/build-templates/web-mobile/index.html +++ b/build-templates/web-mobile/index.html @@ -149,42 +149,46 @@ if (typeof VConsole !== 'undefined') { window.vConsole = new VConsole(); } - var debug = window._CCSettings.debug; - // var splash = document.getElementById('splash'); - // splash.style.display = 'block'; var userId = null; var urlNow = window.location.href; + //更改测试链接标题 if(containsNanana(urlNow) == true){ document.title = "后裔逐日 | 测试环境"; } - // 示例使用 - var title = document.getElementsByTagName('title')[0].innerText; - userId = JSON.parse(localStorage.getItem("user")); - if(userId == "undifend" || userId==null || userId == ""){ - setId(); - } - else{ - let data = JSON.parse(localStorage.getItem("user")); - data = getId(data); - let timestamp = parseInt(new Date().getTime()/1000 + ""); - if((timestamp - data[2]) > 86400){ - setId(); - } - } - - function setId(){ + // 存储gameid userid gameid为key userId和时间戳为value + let name = "user_" + "100009"; + var data = JSON.parse(localStorage.getItem(name)); + + if(data == "undifend" || data==null || data == ""){ + console.log("没缓存"); + setId(name); + } + else{ + console.log("有缓存"); + userId = data.userId; + let timestamp = parseInt(new Date().getTime()/1000 + ""); + if((timestamp - data.time) > 86400){ + console.log("缓存过期"); + setId(name); + } + } + function setId(name){ let userId = getUserId(); if(userId == null){ + console.log("链接没ID准备跳转"); let url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href; window.location.href = url; } else{ + console.log("链接有ID",userId); let timestamp = parseInt(new Date().getTime()/1000 + ""); - let idTemp = "gameId=" + "100009" + - "?userId= " + userId + "?time=" + timestamp; - localStorage.setItem("user",JSON.stringify(idTemp)); + let idData = { + userId: userId, + time: timestamp + } + localStorage.setItem(name,JSON.stringify(idData)); } } @@ -205,21 +209,6 @@ document.body.appendChild(domScript); } - function getId(str) { - let pathStr = str; - - let arr=pathStr.split("?"); - if (pathStr.length>= 0&&arr.length>0) { - let arr2=[]; - arr.map(item=>{ - arr2.push(item.split("=")[1]) - }) - return arr2; - } else { - return null - } - } - function getUserId() { let pathStr = window.location.search; let arr=pathStr.split("&"); @@ -228,16 +217,14 @@ arr.map(item=>{ arr2.push(item.split("=")[1]) }) - console.log("网站拿到的数据:",arr2[0]) window.userId = arr2[0] + ""; - return arr2[0]; + return arr2[0] } else { return null } } - loadScript(debug ? 'cocos2d-js.js' : 'cocos2d-js-min.js', function () { if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { loadScript(debug ? 'physics.js' : 'physics-min.js', window.boot); diff --git a/build-templates/web-mobile/main.js b/build-templates/web-mobile/main.js index a30ce0b..4f63691 100644 --- a/build-templates/web-mobile/main.js +++ b/build-templates/web-mobile/main.js @@ -13,17 +13,8 @@ window.boot = function () { // Loading splash scene var splash = document.getElementById('splash'); var star = document.getElementById('_star'); - // var progressBar = splash.querySelector('.progress-bar span'); onProgress = function (finish, total) { - // var percent = 100 * finish / total; - // if (progressBar) { - // progressBar.style.width = percent.toFixed(2) + '%'; - // } }; - // splash.style.display = 'block'; - // progressBar.style.width = '0%'; - - cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () { splash.style.display = 'none'; star.style.display = 'none'; @@ -31,11 +22,8 @@ window.boot = function () { } var onStart = function () { - - console.log(RESOURCES); cc.view.enableRetina(true); cc.view.resizeWithBrowserSize(true); - if (cc.sys.isBrowser) { setLoadingDisplay(); } diff --git a/build/Sun_moves.zip b/build/Sun_moves.zip index 6e4f098..8ac7ed0 100644 Binary files a/build/Sun_moves.zip and b/build/Sun_moves.zip differ diff --git a/build/Sun_moves/assets/main/config.json b/build/Sun_moves/assets/main/config.json index a35deb2..fe0713b 100644 --- a/build/Sun_moves/assets/main/config.json +++ b/build/Sun_moves/assets/main/config.json @@ -1 +1 @@ -{"paths":{},"types":[],"uuids":["a2MjXRFdtLlYQ5ouAFv/+R","14K23Xm1ROrrsGMBKG1Ql4","29FYIk+N1GYaeWH/q1NxQO","2dL3kvpAxJu6GJ7RdqJG5J","37ND3actNCqZoLzr1NBiTF","4bnFp+xkVIpJrKXfOBzk71","4er1GLNexCYpKNTUl8Pygw","77SCm7Ej5ItpMOaz4CSRUG","9cCAYtTPFLbqi6SjiBzH59","d3OhOXdm5P4JNse7X8GMGe","e97GVMl6JHh5Ml5qEDdSGa","f0BIwQ8D5Ml7nTNQbh1YlS","02delMVqdBD70a/HSD99FK","08/X0iIrpGHbKJqlQlA512","0cF7COgzlFRKaDnaVJrOOt","13EQ5PNYdOa4gRDKFsrIFJ","167IfY0HdDyZdtlLDeaDkg","1fwAIEeM1Nn7i705Pdg5L5","23CIt+PSBBMJopNtpbffXh","27FeLB8OpGcaDrf9NiEDKz","28Gg0A8X1JHpYnbH9vZIzV","29G9ngwKpNW56EfZdKv0SX","2aJVC/rshLnpvG+lkallqC","2cyTcZvcZP7rjmchhWREEu","3aIyOI2NxPeaHqgvY4W3zi","3fgys9roZKo5OdfZn0T4Fo","432ND8vGNFM4/Pxt+hVLkb","48Foz8zQZDfLObHQegvteG","4cuYcoe7tPiIdp6gbSnrvF","4c7tzGCVNKE5yvOmzu4CXt","57X2D8NaxKHZ7D/uwxGBCK","59Sn0ZhhJHf7HX55ZqGeqE","5aBm0rBa9Gxr8lWEiz8nAb","5bsctimnBNw4onIGVsCfsU","5cO7kybDxGj4ipyMYdRYZB","5eUVg3ZQ5FhKCJ4qAl42w5","5f5dyqtRNNxaFmVzYns6FZ","61cyPdEfRN047sDK9rO0W5","61c+AvZ7lJH4DcNNAnJ//N","63m/tYswFOS7sCMuQGQ4kn","651MDCXIFPuZKQK1+nWOzk","6bdOTGFcVFZo3U+lI6FYmL","6cyjAC9cJDE6x1PK28Td4v","6eoolBkxxPvof0z1pzKU+w","70mY8jP3NKVonyvxI9/f6z","70ym98iPBE8ZqzOxwNBCmV","71VhFCTINJM6/Ky3oX9nBT","818w6dGPRH+rXb8KDTjDgq","8cv+mgkU9OTIB7sHOwnyZ8","8eZObX1ehJkKU3GR/hPgya","8eo+QfsThNk7a0r8Ilro8q","93XHrCUNdAwJfBzyLGAOJ5","95AC/gHlpJ64LEYVdSIIPB","95viAf/CZABIBJ7iCjDOU4","96FRA8sCdIybKmTQHllKeE","99vgruzGRMmJOIRLdPaQYs","9bvaMerUlDyary99mJa6xp","9cBsd3MbFMC56GS/sJnS6r","9e4xLWF9hCBq5CM6vIyvlp","a5+/rf9ZlPEIXTSsUOhw7T","adR/bBScVC/bM24V3TdrfL","adULT7sm1JR6vTV/oW1JIb","adrVhydQhMD7nhiXljhNId","b4P/PCArtIdIH38t6mlw8Y","bcITWltAtAD4sUjinM7HdJ","c6VxSCRHRB+qS91aK866px","ceNMgtpZhCsKd8anXNKd7b","d1MjdySrJFJ70gUB/k+5cj","d4gMhswKRJuotFXwDetRF4","d608qFRoFHwbXd0Dap056i","d7kiZgBYNPyIwqRjgGX7l0","d8HsitJHxOYqo801xBk8ev","ddnWn8vDxCOZaOnG9OVNnP","deq5vhWmZCFJ97k3T54cZ0","e7CzEDg/FMZpCTGJfBpdSu","e8Ueib+qJEhL6mXAHdnwbi","ecpdLyjvZBwrvm+cedCcQy","eezChet5VG27PW9q3qdOpv","f1O5RoDlhGrI6+/w3NObrX","f7ZJEQGfdJraVAIIAn8NFW"],"scenes":{"db://assets/Scene/GameScene.fire":6,"db://assets/Scene/GuideScene.fire":7,"db://assets/Scene/LoadScene.fire":8,"db://assets/Scene/OverScene.fire":5,"db://assets/Scene/RankScene.fire":3},"redirect":[12,0,13,1,14,1,16,1,19,1,22,1,23,1,26,1,32,1,33,1,38,1,42,1,44,1,48,1,50,1,52,1,53,1,54,1,55,1,57,1,58,1,59,1,61,1,64,1,65,1,66,1,70,1,73,1,76,0,78,1],"deps":["internal","resources"],"packs":{"03fae53b0":[17,21,27,37,39,40,46,51,62,63,68,69,71,75,77,79],"05b7e0d6d":[1,5,30],"05f3c1ca4":[4,7,0,67,9],"0b36acb24":[18,2,41,45,49,8,0,74,10,11],"0cd1ec7f1":[43,72],"0d7de01d8":[15,20,2,4,24,25,28,29,6,35,47,0,9,10,11],"0e0598680":[1,3,31,34,36,56,60]},"name":"main","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":false} \ No newline at end of file +{"paths":{},"types":[],"uuids":["a2MjXRFdtLlYQ5ouAFv/+R","14K23Xm1ROrrsGMBKG1Ql4","29FYIk+N1GYaeWH/q1NxQO","2dL3kvpAxJu6GJ7RdqJG5J","37ND3actNCqZoLzr1NBiTF","4bnFp+xkVIpJrKXfOBzk71","4er1GLNexCYpKNTUl8Pygw","77SCm7Ej5ItpMOaz4CSRUG","9cCAYtTPFLbqi6SjiBzH59","d3OhOXdm5P4JNse7X8GMGe","e97GVMl6JHh5Ml5qEDdSGa","f0BIwQ8D5Ml7nTNQbh1YlS","02delMVqdBD70a/HSD99FK","08/X0iIrpGHbKJqlQlA512","0cF7COgzlFRKaDnaVJrOOt","13EQ5PNYdOa4gRDKFsrIFJ","167IfY0HdDyZdtlLDeaDkg","1fwAIEeM1Nn7i705Pdg5L5","23CIt+PSBBMJopNtpbffXh","27FeLB8OpGcaDrf9NiEDKz","28Gg0A8X1JHpYnbH9vZIzV","29G9ngwKpNW56EfZdKv0SX","2aJVC/rshLnpvG+lkallqC","2cyTcZvcZP7rjmchhWREEu","3aIyOI2NxPeaHqgvY4W3zi","3fgys9roZKo5OdfZn0T4Fo","432ND8vGNFM4/Pxt+hVLkb","48Foz8zQZDfLObHQegvteG","4cuYcoe7tPiIdp6gbSnrvF","4c7tzGCVNKE5yvOmzu4CXt","57X2D8NaxKHZ7D/uwxGBCK","59Sn0ZhhJHf7HX55ZqGeqE","5aBm0rBa9Gxr8lWEiz8nAb","5bsctimnBNw4onIGVsCfsU","5cO7kybDxGj4ipyMYdRYZB","5eUVg3ZQ5FhKCJ4qAl42w5","5f5dyqtRNNxaFmVzYns6FZ","61cyPdEfRN047sDK9rO0W5","61c+AvZ7lJH4DcNNAnJ//N","63m/tYswFOS7sCMuQGQ4kn","651MDCXIFPuZKQK1+nWOzk","6cyjAC9cJDE6x1PK28Td4v","6eoolBkxxPvof0z1pzKU+w","70mY8jP3NKVonyvxI9/f6z","71VhFCTINJM6/Ky3oX9nBT","818w6dGPRH+rXb8KDTjDgq","8cv+mgkU9OTIB7sHOwnyZ8","8eZObX1ehJkKU3GR/hPgya","8eo+QfsThNk7a0r8Ilro8q","93XHrCUNdAwJfBzyLGAOJ5","95AC/gHlpJ64LEYVdSIIPB","95viAf/CZABIBJ7iCjDOU4","96FRA8sCdIybKmTQHllKeE","99vgruzGRMmJOIRLdPaQYs","9bvaMerUlDyary99mJa6xp","9cBsd3MbFMC56GS/sJnS6r","9e4xLWF9hCBq5CM6vIyvlp","a5+/rf9ZlPEIXTSsUOhw7T","adR/bBScVC/bM24V3TdrfL","adULT7sm1JR6vTV/oW1JIb","adrVhydQhMD7nhiXljhNId","b4P/PCArtIdIH38t6mlw8Y","bcITWltAtAD4sUjinM7HdJ","c6VxSCRHRB+qS91aK866px","ceNMgtpZhCsKd8anXNKd7b","d1MjdySrJFJ70gUB/k+5cj","d608qFRoFHwbXd0Dap056i","d7kiZgBYNPyIwqRjgGX7l0","d8HsitJHxOYqo801xBk8ev","ddnWn8vDxCOZaOnG9OVNnP","deq5vhWmZCFJ97k3T54cZ0","e7CzEDg/FMZpCTGJfBpdSu","e8Ueib+qJEhL6mXAHdnwbi","ecpdLyjvZBwrvm+cedCcQy","eezChet5VG27PW9q3qdOpv","f1O5RoDlhGrI6+/w3NObrX","f7ZJEQGfdJraVAIIAn8NFW"],"scenes":{"db://assets/Scene/GameScene.fire":6,"db://assets/Scene/GuideScene.fire":7,"db://assets/Scene/LoadScene.fire":8,"db://assets/Scene/OverScene.fire":5,"db://assets/Scene/RankScene.fire":3},"redirect":[12,0,13,1,14,1,16,1,19,1,22,1,23,1,26,1,32,1,33,1,38,1,41,1,43,1,46,1,48,1,50,1,51,1,52,1,53,1,55,1,56,1,57,1,59,1,62,1,63,1,64,1,67,1,70,1,73,0,75,1],"deps":["internal","resources"],"packs":{"04d3bacdc":[17,21,27,37,39,40,44,49,60,61,66,68,72,74,76],"05b7e0d6d":[1,5,30],"05f3c1ca4":[4,7,0,65,9],"09db7c06c":[18,2,47,8,0,71,10,11],"0cd1ec7f1":[42,69],"0d7de01d8":[15,20,2,4,24,25,28,29,6,35,45,0,9,10,11],"0e0598680":[1,3,31,34,36,54,58]},"name":"main","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":false} \ No newline at end of file diff --git a/build/Sun_moves/assets/main/import/03/03fae53b0.json b/build/Sun_moves/assets/main/import/04/04d3bacdc.json similarity index 87% rename from build/Sun_moves/assets/main/import/03/03fae53b0.json rename to build/Sun_moves/assets/main/import/04/04d3bacdc.json index 662c140..c39e125 100644 --- a/build/Sun_moves/assets/main/import/03/03fae53b0.json +++ b/build/Sun_moves/assets/main/import/04/04d3bacdc.json @@ -1 +1 @@ -{"type":"cc.Texture2D","data":"0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1"} \ No newline at end of file +{"type":"cc.Texture2D","data":"0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1"} \ No newline at end of file diff --git a/build/Sun_moves/assets/main/import/05/05b7e0d6d.json b/build/Sun_moves/assets/main/import/05/05b7e0d6d.json index b27925c..936d536 100644 --- a/build/Sun_moves/assets/main/import/05/05b7e0d6d.json +++ b/build/Sun_moves/assets/main/import/05/05b7e0d6d.json @@ -1 +1 @@ -[1,["ecpdLyjvZBwrvm+cedCcQy","14K23Xm1ROrrsGMBKG1Ql4","d7kiZgBYNPyIwqRjgGX7l0","2cyTcZvcZP7rjmchhWREEu","f7ZJEQGfdJraVAIIAn8NFW","6cyjAC9cJDE6x1PK28Td4v","70mY8jP3NKVonyvxI9/f6z","61c+AvZ7lJH4DcNNAnJ//N","5bsctimnBNw4onIGVsCfsU","9e4xLWF9hCBq5CM6vIyvlp","57X2D8NaxKHZ7D/uwxGBCK","c6VxSCRHRB+qS91aK866px","08/X0iIrpGHbKJqlQlA512","95AC/gHlpJ64LEYVdSIIPB","48Foz8zQZDfLObHQegvteG"],["node","_spriteFrame","_textureSetter","_N$target","five","four","three","two","one","selfNode","time","count","scene","_parent"],[["cc.Node",["_name","_id","_components","_contentSize","_parent","_trs","_children","_color"],1,9,5,1,7,2,5],["cc.Label",["_string","_N$horizontalAlign","_N$verticalAlign","_fontSize","_lineHeight","_N$overflow","_styleFlags","node","_materials"],-4,1,3],"cc.SpriteFrame",["cc.Node",["_name","_parent","_components","_contentSize","_trs","_color"],2,1,2,5,7,5],["cc.Sprite",["_sizeMode","node","_materials","_spriteFrame"],2,1,3,6],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["cc.Widget",["_alignFlags","node"],2,1],["805c6nf399HWZeuWnNB9CTH",["node","count","time","selfNode","one","two","three","four","five"],3,1,1,1,1,1,1,1,1,1],["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target"],1,1,9,1],["cc.ClickEvent",["_componentId","handler","target"],1,1],["cc.Mask",["_type","_segments","_N$alphaThreshold","node","_materials"],0,1,3],["cc.Scene",["_name","_active","_children","_anchorPoint","_trs"],1,2,5,7],["cc.Camera",["_clearFlags","_depth","node"],1,1]],[[0,0,4,2,3,5,2],[4,0,1,2,3,2],[1,0,3,4,1,2,7,8,6],[0,0,4,2,7,3,5,2],[4,1,2,3,1],[0,0,4,2,3,2],[0,0,4,6,5,2],[0,0,4,6,2,3,5,2],[11,0,1,2,3,4,4],[1,0,1,2,7,8,4],[9,0,1,2,3,4,3],[10,0,1,2,3],[1,0,3,4,7,8,4],[5,0,1,3],[0,0,1,6,2,3,5,3],[0,0,4,6,2,3,2],[3,0,1,2,3,4,2],[3,0,1,2,5,3,4,2],[6,0,1,2,3,3],[7,0,1,2],[8,0,1,2,3,4,5,6,7,8,1],[12,0,1,2,3,4,3],[13,0,1,2,3],[1,0,3,4,6,1,2,5,7,8,8],[1,0,3,4,1,2,5,7,8,7]],[[[{"name":"icon","rect":[0,0,64,64],"offset":[0,0],"originalSize":[64,64],"capInsets":[0,0,0,0]}],[2],0,[0],[2],[4]],[[[13,"OverScene",null],[14,"Canvas","a5esZu+45LA5mBpvttspPD",[-12,-13,-14,-15,-16,-17,-18,-19,-20,-21,-22,-23,-24],[[18,true,false,-1,[5,750,1334]],[19,45,-2],[20,-11,-10,-9,-8,-7,-6,-5,-4,-3]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[15,"bg",1,[-26,-27,-28,-29,-30,-31,-32],[[4,-25,[12],13]],[5,750,1600]],[6,"self",1,[-33,-34,-35,-36,-37],[-284.416,-149.727,0,0,0,0,1,1,1,1]],[6,"four",1,[-38,-39,-40,-41,-42],[210,-149.727,0,0,0,0,1,1,1,1]],[6,"five",1,[-43,-44,-45,-46,-47],[320,-149.727,0,0,0,0,1,1,1,1]],[6,"one",1,[-48,-49,-50,-51],[-120,-149.727,0,0,0,0,1,1,1,1]],[6,"two",1,[-52,-53,-54,-55],[-10,-149.727,0,0,0,0,1,1,1,1]],[6,"three",1,[-56,-57,-58,-59],[100,-149.727,0,0,0,0,1,1,1,1]],[0,"again",1,[[4,-60,[14],15],[10,1.1,3,-62,[[11,"805c6nf399HWZeuWnNB9CTH","again",1]],-61]],[5,277,76],[170,-402.162,0,0,0,0,1,1,1,0]],[0,"back",1,[[4,-63,[16],17],[10,1.1,3,-65,[[11,"805c6nf399HWZeuWnNB9CTH","back",1]],-64]],[5,278,76],[-170,-402.162,0,0,0,0,1,1,1,0]],[7,"pic",3,[-67],[[8,1,60,0,-66,[24]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",6,[-69],[[8,1,60,0,-68,[32]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",7,[-71],[[8,1,60,0,-70,[39]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",8,[-73],[[8,1,60,0,-72,[46]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",4,[-75],[[8,1,60,0,-74,[53]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",5,[-77],[[8,1,60,0,-76,[61]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[21,"New Node",false,[1],[0,0,0],[0,0,0,0,0,0,1,1,1,1]],[5,"Main Camera",1,[[22,7,-1,-78]],[5,960,640]],[0,"New Sprite",2,[[4,-79,[0],1]],[5,750,1600],[0,1600,0,0,0,0,1,1,-1,1]],[0,"New Sprite",2,[[4,-80,[2],3]],[5,750,1600],[0,-1600,0,0,0,0,1,1,-1,1]],[0,"New Sprite",2,[[4,-81,[4],5]],[5,750,288],[0,-137.593,0,0,0,0,1,1,1,1]],[0,"New Sprite",2,[[4,-82,[6],7]],[5,750,676],[0,292.131,0,0,0,0,1,1,1,1]],[0,"New Sprite",2,[[4,-83,[8],9]],[5,296,8],[0,32.988,0,0,0,0,1,1,1,1]],[3,"New Label",2,[[9,"平均放箭速度",1,1,-84,[10]]],[4,4282797175],[5,240,50.4],[0,63.292,0,0,0,0,1,1,1,1]],[3,"New Label",2,[[9,"驱逐太阳",1,1,-85,[11]]],[4,4289713906],[5,160,50.4],[0,308.318,0,0,0,0,1,1,1,1]],[16,"count",1,[-86],[5,83.42,94.5],[0,215.733,0,0,0,0,1,1,1,1]],[23,"50",75,75,1,1,1,2,26,[18]],[17,"time",1,[-87],[4,4282797175],[5,75.61,50.4],[0,7.86,0,0,0,0,1,1,1,1]],[9,"0.0s",1,1,28,[19]],[0,"New Node",1,[[4,-88,[20],21]],[5,6,155],[-227.685,-154.877,0,0,0,0,1,1,1,1]],[5,"icon",11,[[1,0,-89,[22],23]],[5,64,64]],[0,"rankBg",3,[[1,0,-90,[25],26]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",3,[[2,"3个",25,25,1,1,-91,[27]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",3,[[2,"我",21,21,1,1,-92,[28]]],[4,4289713906],[5,21,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",3,[[24,"99+",20,20,1,1,2,-93,[29]]],[4,4278190080],[5,25,25.2],[-49.908,22.457,0,0,0,0,1,1,1,1]],[5,"icon",12,[[1,0,-94,[30],31]],[5,64,64]],[0,"rankBg",6,[[1,0,-95,[33],34]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",6,[[2,"3个",25,25,1,1,-96,[35]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",6,[[2,"我有五个...",21,21,1,1,-97,[36]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",13,[[1,0,-98,[37],38]],[5,64,64]],[0,"rankBg",7,[[1,0,-99,[40],41]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",7,[[2,"3个",25,25,1,1,-100,[42]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",7,[[2,"我有五个...",21,21,1,1,-101,[43]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",14,[[1,0,-102,[44],45]],[5,64,64]],[0,"rankBg",8,[[1,0,-103,[47],48]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",8,[[2,"3个",25,25,1,1,-104,[49]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",8,[[2,"我有五个...",21,21,1,1,-105,[50]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",15,[[1,0,-106,[51],52]],[5,64,64]],[0,"rankBg",4,[[1,0,-107,[54],55]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",4,[[2,"3个",25,25,1,1,-108,[56]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",4,[[2,"我有五个...",21,21,1,1,-109,[57]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",4,[[12,"4",20,20,-110,[58]]],[4,4278190080],[5,11.12,25.2],[-49.996,19.305,0,0,0,0,1,1,1,1]],[5,"icon",16,[[1,0,-111,[59],60]],[5,64,64]],[0,"rankBg",5,[[1,0,-112,[62],63]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",5,[[2,"3个",25,25,1,1,-113,[64]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",5,[[2,"我有五个...",21,21,1,1,-114,[65]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",5,[[12,"5",20,20,-115,[66]]],[4,4278190080],[5,11.12,25.2],[-49.996,19.305,0,0,0,0,1,1,1,1]]],0,[0,0,1,0,0,1,0,4,5,0,5,4,0,6,8,0,7,7,0,8,6,0,9,3,0,10,29,0,11,27,0,0,1,0,-1,18,0,-2,2,0,-3,9,0,-4,10,0,-5,26,0,-6,28,0,-7,30,0,-8,3,0,-9,6,0,-10,7,0,-11,8,0,-12,4,0,-13,5,0,0,2,0,-1,19,0,-2,20,0,-3,21,0,-4,22,0,-5,23,0,-6,24,0,-7,25,0,-1,11,0,-2,32,0,-3,33,0,-4,34,0,-5,35,0,-1,15,0,-2,49,0,-3,50,0,-4,51,0,-5,52,0,-1,16,0,-2,54,0,-3,55,0,-4,56,0,-5,57,0,-1,12,0,-2,37,0,-3,38,0,-4,39,0,-1,13,0,-2,41,0,-3,42,0,-4,43,0,-1,14,0,-2,45,0,-3,46,0,-4,47,0,0,9,0,3,9,0,0,9,0,0,10,0,3,10,0,0,10,0,0,11,0,-1,31,0,0,12,0,-1,36,0,0,13,0,-1,40,0,0,14,0,-1,44,0,0,15,0,-1,48,0,0,16,0,-1,53,0,0,18,0,0,19,0,0,20,0,0,21,0,0,22,0,0,23,0,0,24,0,0,25,0,-1,27,0,-1,29,0,0,30,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,0,54,0,0,55,0,0,56,0,0,57,0,12,17,1,13,17,115],[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],[0,2,0,2,0,5,0,6,0,7,0,0,0,2,0,8,0,9,0,0,0,10,0,1,0,0,3,0,0,0,0,1,0,0,11,0,0,0,1,0,0,12,0,0,0,1,0,0,13,0,0,0,1,0,0,3,0,0,0,0,1,0,0,3,0,0,0]],[[{"name":"jiantou","rect":[0,0,6,155],"offset":[0,0.5],"originalSize":[6,156],"capInsets":[0,0,0,0]}],[2],0,[0],[2],[14]]]] \ No newline at end of file +[1,["ecpdLyjvZBwrvm+cedCcQy","14K23Xm1ROrrsGMBKG1Ql4","d7kiZgBYNPyIwqRjgGX7l0","2cyTcZvcZP7rjmchhWREEu","f7ZJEQGfdJraVAIIAn8NFW","6cyjAC9cJDE6x1PK28Td4v","70mY8jP3NKVonyvxI9/f6z","61c+AvZ7lJH4DcNNAnJ//N","5bsctimnBNw4onIGVsCfsU","9e4xLWF9hCBq5CM6vIyvlp","57X2D8NaxKHZ7D/uwxGBCK","c6VxSCRHRB+qS91aK866px","08/X0iIrpGHbKJqlQlA512","95AC/gHlpJ64LEYVdSIIPB","48Foz8zQZDfLObHQegvteG"],["node","_spriteFrame","_textureSetter","_N$target","five","four","three","two","one","selfNode","time","count","scene","_parent"],[["cc.Node",["_name","_id","_components","_contentSize","_parent","_trs","_children","_color"],1,9,5,1,7,2,5],["cc.Label",["_string","_N$horizontalAlign","_N$verticalAlign","_fontSize","_lineHeight","_N$overflow","_styleFlags","node","_materials"],-4,1,3],"cc.SpriteFrame",["cc.Node",["_name","_parent","_components","_contentSize","_trs","_color"],2,1,2,5,7,5],["cc.Sprite",["_sizeMode","node","_materials","_spriteFrame"],2,1,3,6],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["cc.Widget",["_alignFlags","node"],2,1],["805c6nf399HWZeuWnNB9CTH",["node","count","time","selfNode","one","two","three","four","five"],3,1,1,1,1,1,1,1,1,1],["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target"],1,1,9,1],["cc.ClickEvent",["_componentId","handler","target"],1,1],["cc.Mask",["_type","_segments","_N$alphaThreshold","node","_materials"],0,1,3],["cc.Scene",["_name","_active","autoReleaseAssets","_children","_anchorPoint","_trs"],0,2,5,7],["cc.Camera",["_clearFlags","_depth","node"],1,1]],[[0,0,4,2,3,5,2],[4,0,1,2,3,2],[1,0,3,4,1,2,7,8,6],[0,0,4,2,7,3,5,2],[4,1,2,3,1],[0,0,4,2,3,2],[0,0,4,6,5,2],[0,0,4,6,2,3,5,2],[11,0,1,2,3,4,4],[1,0,1,2,7,8,4],[9,0,1,2,3,4,3],[10,0,1,2,3],[1,0,3,4,7,8,4],[5,0,1,3],[0,0,1,6,2,3,5,3],[0,0,4,6,2,3,2],[3,0,1,2,3,4,2],[3,0,1,2,5,3,4,2],[6,0,1,2,3,3],[7,0,1,2],[8,0,1,2,3,4,5,6,7,8,1],[12,0,1,2,3,4,5,4],[13,0,1,2,3],[1,0,3,4,6,1,2,5,7,8,8],[1,0,3,4,1,2,5,7,8,7]],[[[{"name":"icon","rect":[0,0,64,64],"offset":[0,0],"originalSize":[64,64],"capInsets":[0,0,0,0]}],[2],0,[0],[2],[4]],[[[13,"OverScene",null],[14,"Canvas","a5esZu+45LA5mBpvttspPD",[-12,-13,-14,-15,-16,-17,-18,-19,-20,-21,-22,-23,-24],[[18,true,false,-1,[5,750,1334]],[19,45,-2],[20,-11,-10,-9,-8,-7,-6,-5,-4,-3]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[15,"bg",1,[-26,-27,-28,-29,-30,-31,-32],[[4,-25,[12],13]],[5,750,1600]],[6,"self",1,[-33,-34,-35,-36,-37],[-284.416,-149.727,0,0,0,0,1,1,1,1]],[6,"four",1,[-38,-39,-40,-41,-42],[210,-149.727,0,0,0,0,1,1,1,1]],[6,"five",1,[-43,-44,-45,-46,-47],[320,-149.727,0,0,0,0,1,1,1,1]],[6,"one",1,[-48,-49,-50,-51],[-120,-149.727,0,0,0,0,1,1,1,1]],[6,"two",1,[-52,-53,-54,-55],[-10,-149.727,0,0,0,0,1,1,1,1]],[6,"three",1,[-56,-57,-58,-59],[100,-149.727,0,0,0,0,1,1,1,1]],[0,"again",1,[[4,-60,[14],15],[10,1.1,3,-62,[[11,"805c6nf399HWZeuWnNB9CTH","again",1]],-61]],[5,277,76],[170,-402.162,0,0,0,0,1,1,1,0]],[0,"back",1,[[4,-63,[16],17],[10,1.1,3,-65,[[11,"805c6nf399HWZeuWnNB9CTH","openRank",1]],-64]],[5,278,76],[-170,-402.162,0,0,0,0,1,1,1,0]],[7,"pic",3,[-67],[[8,1,60,0,-66,[24]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",6,[-69],[[8,1,60,0,-68,[32]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",7,[-71],[[8,1,60,0,-70,[39]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",8,[-73],[[8,1,60,0,-72,[46]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",4,[-75],[[8,1,60,0,-74,[53]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[7,"pic",5,[-77],[[8,1,60,0,-76,[61]]],[5,64,64],[-15.492,0,0,0,0,0,1,1,1,1]],[21,"New Node",false,true,[1],[0,0,0],[0,0,0,0,0,0,1,1,1,1]],[5,"Main Camera",1,[[22,7,-1,-78]],[5,960,640]],[0,"New Sprite",2,[[4,-79,[0],1]],[5,750,1600],[0,1600,0,0,0,0,1,1,-1,1]],[0,"New Sprite",2,[[4,-80,[2],3]],[5,750,1600],[0,-1600,0,0,0,0,1,1,-1,1]],[0,"New Sprite",2,[[4,-81,[4],5]],[5,750,288],[0,-137.593,0,0,0,0,1,1,1,1]],[0,"New Sprite",2,[[4,-82,[6],7]],[5,750,676],[0,292.131,0,0,0,0,1,1,1,1]],[0,"New Sprite",2,[[4,-83,[8],9]],[5,296,8],[0,32.988,0,0,0,0,1,1,1,1]],[3,"New Label",2,[[9,"平均放箭速度",1,1,-84,[10]]],[4,4282797175],[5,240,50.4],[0,63.292,0,0,0,0,1,1,1,1]],[3,"New Label",2,[[9,"驱逐太阳",1,1,-85,[11]]],[4,4289713906],[5,160,50.4],[0,308.318,0,0,0,0,1,1,1,1]],[16,"count",1,[-86],[5,83.42,94.5],[0,215.733,0,0,0,0,1,1,1,1]],[23,"50",75,75,1,1,1,2,26,[18]],[17,"time",1,[-87],[4,4282797175],[5,75.61,50.4],[0,7.86,0,0,0,0,1,1,1,1]],[9,"0.0s",1,1,28,[19]],[0,"New Node",1,[[4,-88,[20],21]],[5,6,155],[-227.685,-154.877,0,0,0,0,1,1,1,1]],[5,"icon",11,[[1,0,-89,[22],23]],[5,64,64]],[0,"rankBg",3,[[1,0,-90,[25],26]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",3,[[2,"3个",25,25,1,1,-91,[27]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",3,[[2,"我",21,21,1,1,-92,[28]]],[4,4289713906],[5,21,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",3,[[24,"99+",20,20,1,1,2,-93,[29]]],[4,4278190080],[5,25,25.2],[-49.908,22.457,0,0,0,0,1,1,1,1]],[5,"icon",12,[[1,0,-94,[30],31]],[5,64,64]],[0,"rankBg",6,[[1,0,-95,[33],34]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",6,[[2,"3个",25,25,1,1,-96,[35]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",6,[[2,"我有五个...",21,21,1,1,-97,[36]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",13,[[1,0,-98,[37],38]],[5,64,64]],[0,"rankBg",7,[[1,0,-99,[40],41]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",7,[[2,"3个",25,25,1,1,-100,[42]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",7,[[2,"我有五个...",21,21,1,1,-101,[43]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",14,[[1,0,-102,[44],45]],[5,64,64]],[0,"rankBg",8,[[1,0,-103,[47],48]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",8,[[2,"3个",25,25,1,1,-104,[49]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",8,[[2,"我有五个...",21,21,1,1,-105,[50]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[5,"icon",15,[[1,0,-106,[51],52]],[5,64,64]],[0,"rankBg",4,[[1,0,-107,[54],55]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",4,[[2,"3个",25,25,1,1,-108,[56]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",4,[[2,"我有五个...",21,21,1,1,-109,[57]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",4,[[12,"4",20,20,-110,[58]]],[4,4278190080],[5,11.12,25.2],[-49.996,19.305,0,0,0,0,1,1,1,1]],[5,"icon",16,[[1,0,-111,[59],60]],[5,64,64]],[0,"rankBg",5,[[1,0,-112,[62],63]],[5,48,48],[-50,22.554,0,0,0,0,1,1,1,1]],[0,"total",5,[[2,"3个",25,25,1,1,-113,[64]]],[5,38.9,31.5],[-15.492,57.175,0,0,0,0,1,1,1,1]],[3,"name",5,[[2,"我有五个...",21,21,1,1,-114,[65]]],[4,4289713906],[5,101.5,26.46],[-15.492,-59.683,0,0,0,0,1,1,1,1]],[3,"rank",5,[[12,"5",20,20,-115,[66]]],[4,4278190080],[5,11.12,25.2],[-49.996,19.305,0,0,0,0,1,1,1,1]]],0,[0,0,1,0,0,1,0,4,5,0,5,4,0,6,8,0,7,7,0,8,6,0,9,3,0,10,29,0,11,27,0,0,1,0,-1,18,0,-2,2,0,-3,9,0,-4,10,0,-5,26,0,-6,28,0,-7,30,0,-8,3,0,-9,6,0,-10,7,0,-11,8,0,-12,4,0,-13,5,0,0,2,0,-1,19,0,-2,20,0,-3,21,0,-4,22,0,-5,23,0,-6,24,0,-7,25,0,-1,11,0,-2,32,0,-3,33,0,-4,34,0,-5,35,0,-1,15,0,-2,49,0,-3,50,0,-4,51,0,-5,52,0,-1,16,0,-2,54,0,-3,55,0,-4,56,0,-5,57,0,-1,12,0,-2,37,0,-3,38,0,-4,39,0,-1,13,0,-2,41,0,-3,42,0,-4,43,0,-1,14,0,-2,45,0,-3,46,0,-4,47,0,0,9,0,3,9,0,0,9,0,0,10,0,3,10,0,0,10,0,0,11,0,-1,31,0,0,12,0,-1,36,0,0,13,0,-1,40,0,0,14,0,-1,44,0,0,15,0,-1,48,0,0,16,0,-1,53,0,0,18,0,0,19,0,0,20,0,0,21,0,0,22,0,0,23,0,0,24,0,0,25,0,-1,27,0,-1,29,0,0,30,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,0,54,0,0,55,0,0,56,0,0,57,0,12,17,1,13,17,115],[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],[0,2,0,2,0,5,0,6,0,7,0,0,0,2,0,8,0,9,0,0,0,10,0,1,0,0,3,0,0,0,0,1,0,0,11,0,0,0,1,0,0,12,0,0,0,1,0,0,13,0,0,0,1,0,0,3,0,0,0,0,1,0,0,3,0,0,0]],[[{"name":"jiantou","rect":[0,0,6,155],"offset":[0,0.5],"originalSize":[6,156],"capInsets":[0,0,0,0]}],[2],0,[0],[2],[14]]]] \ No newline at end of file diff --git a/build/Sun_moves/assets/main/import/05/05f3c1ca4.json b/build/Sun_moves/assets/main/import/05/05f3c1ca4.json index 91fb10e..e3c1b73 100644 --- a/build/Sun_moves/assets/main/import/05/05f3c1ca4.json +++ b/build/Sun_moves/assets/main/import/05/05f3c1ca4.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.Label",["_string","_N$horizontalAlign","_N$verticalAlign","_lineHeight","_fontSize","_styleFlags","node","_materials"],-3,1,3],"cc.SpriteFrame",["cc.Sprite",["_sizeMode","_type","node","_materials","_spriteFrame"],1,1,3,6],["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.ClickEvent",["_componentId","handler","target"],1,1],["cc.Scene",["_name","_active","_children","_anchorPoint","_trs"],1,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]],[[4,2,3,4,1],[4,0,2,3,4,2],[2,0,4,3,1,2,6,7,6],[1,0,5,3,4,2],[1,0,5,3,4,6,2],[10,0,1,2,3,4,3],[11,0,1,2,3],[1,0,5,3,7,4,6,2],[0,0,6,4,7,10,8,5,2],[5,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],[7,0,1,2],[4,1,0,2,3,4,3],[2,0,3,1,2,6,7,5],[1,0,5,2],[0,0,1,4,7,8,5,3],[6,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],[8,0,1,2,3,4,1],[9,0,1,2,3,3],[2,0,1,2,6,7,4],[2,0,4,3,5,1,2,6,7,7],[12,0,1,2,3,4,3],[13,0,1,2,3],[14,0,2],[15,0,1],[5,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]}],[3],0,[0],[4],[6]],[[[18,"GuideScene",null],[19,"GameNode2",[[-5,-6,-7,[16,"Line",-8],[16,"Sun",-9],-10,-11,-12],1,1,1,4,4,1,1,1],[[13,45,-1],[35,-4,-3,-2,73,74]],[5,750,1334]],[24,"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]],[25,"bg1",1,[-20,-21,-22,-23,-24,-25],[0,-212.867,0,0,0,0,1,1,1,1]],[17,"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]],[17,"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]],[26,"Dialog",1,[2,4,5,-38]],[27,"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]],[28,"Canvas","a5esZu+45LA5mBpvttspPD",[-46,1],[[36,true,false,-44,[5,750,1334]],[13,45,-45]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[8,"time",2,[-50],[[2,"跳过引导",35,35,1,1,-47,[31]],[5,1.1,3,-49,[[6,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-48]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",2,[-54],[[2,"下一步",35,35,1,1,-51,[34]],[5,1.1,3,-53,[[6,"3fd2fh6vHNJeISUizW09xat","next",1]],-52]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",4,[-58],[[2,"跳过引导",35,35,1,1,-55,[44]],[5,1.1,3,-57,[[6,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-56]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",4,[-62],[[2,"下一步",35,35,1,1,-59,[47]],[5,1.1,3,-61,[[6,"3fd2fh6vHNJeISUizW09xat","next",1]],-60]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",5,[-66],[[2,"跳过引导",35,35,1,1,-63,[57]],[5,1.1,3,-65,[[6,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-64]],[4,4278190080],[5,140,44.1],[-144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",5,[-70],[[2,"下一步",35,35,1,1,-67,[60]],[5,1.1,3,-69,[[6,"3fd2fh6vHNJeISUizW09xat","next",1]],-68]],[4,4278190080],[5,105,44.1],[144.952,-153.565,0,0,0,0,1,1,1,0]],[8,"time",7,[-74],[[2,"开始游戏",35,35,1,1,-71,[70]],[5,1.1,3,-73,[[6,"3fd2fh6vHNJeISUizW09xat","clickBtn",1]],-72]],[4,4278190080],[5,140,44.1],[0,-183.653,0,0,0,0,1,1,1,0]],[29,"Top",1,[-76,-77],[[13,1,-75]],[0,667,0,0,0,0,1,1,1,1]],[30,"ball",0,1,[-78],[-250,-216,0,0,0,0,1,1,1,1]],[31,"Over",0,1,[-79,-80]],[39,"New Node",false,[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]],[20,"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]],[32,"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,[[15,"你是后羿,需要驱逐太阳,\n制止这场浩劫。",60,1,1,-97,[27]]],[4,4278190080],[5,480,135.6]],[21,"New Label",false,2,[[37,"Label",1,1,-98,[28]]],[5,97.87,50.4]],[7,"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]],[7,"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,[[15,"记住屏幕中太阳出现的顺序。",60,1,1,-103,[41]]],[4,4278190080],[5,520,75.6]],[7,"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]],[7,"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,[[15,"按照太阳的出现顺序依次点击。",60,1,1,-108,[54]]],[4,4278190080],[5,560,75.6]],[7,"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]],[7,"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接下来请继续帮助苍生吧!",35,60,1,1,-113,[67]]],[4,4278190080],[5,560,195.6]],[7,"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]}],[3],0,[0],[4],[12]],[[[41,"qiu4"],[33,"qiu1",[-6,-7,-8,-9,-10],[[42,-2],[5,1.1,3,-5,[[6,"4be67sdkexCyqLl0NHd9N1f","clickBtn2",-4]],-3]],[43,-1,0],[5,150,150],[-145.48,22.786,0,0,0,0,1,1,1,0]],[34,"di",1,[-12],[[0,-11,[4],5]],[9,"cb9ihGGopAkY+20ILGW9iZ",1,0],[5,80,80]],[22,"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]],[23,"number",false,1,[[38,"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]}],[3],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,"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 diff --git a/build/Sun_moves/assets/main/import/09/09db7c06c.json b/build/Sun_moves/assets/main/import/09/09db7c06c.json new file mode 100644 index 0000000..d5ed6fd --- /dev/null +++ b/build/Sun_moves/assets/main/import/09/09db7c06c.json @@ -0,0 +1 @@ +[1,["ecpdLyjvZBwrvm+cedCcQy","a2MjXRFdtLlYQ5ouAFv/+R","27FeLB8OpGcaDrf9NiEDKz","e97GVMl6JHh5Ml5qEDdSGa","f0BIwQ8D5Ml7nTNQbh1YlS","29FYIk+N1GYaeWH/q1NxQO","71VhFCTINJM6/Ky3oX9nBT","8eZObX1ehJkKU3GR/hPgya","23CIt+PSBBMJopNtpbffXh","e7CzEDg/FMZpCTGJfBpdSu","167IfY0HdDyZdtlLDeaDkg","96FRA8sCdIybKmTQHllKeE","bcITWltAtAD4sUjinM7HdJ","02delMVqdBD70a/HSD99FK","b4P/PCArtIdIH38t6mlw8Y","e8Ueib+qJEhL6mXAHdnwbi"],["node","_spriteFrame","_N$target","_textureSetter","_parent","_N$pressedSprite","_N$hoverSprite","_N$disabledSprite","scene","audioButtonClick","audioWarning","audioWin"],[["cc.Node",["_name","_objFlags","_id","_active","_opacity","_components","_contentSize","_parent","_trs","_children","_color"],-2,9,5,1,7,2,5],"cc.SpriteFrame",["cc.Sprite",["_type","_sizeMode","node","_materials","_spriteFrame"],1,1,3,6],["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target","_N$normalColor","_N$pressedColor","_N$disabledColor","_N$pressedSprite","_N$hoverSprite","_N$disabledSprite"],1,1,9,1,5,5,5,6,6,6],["cc.Widget",["_alignFlags","alignMode","_left","_right","_top","_bottom","_originalWidth","_originalHeight","node"],-5,1],["cc.ClickEvent",["_componentId","handler","customEventData","target"],0,1],["cc.Label",["_string","_fontSize","_lineHeight","_N$horizontalAlign","_N$verticalAlign","_enableWrapText","_N$overflow","_N$cacheMode","node","_materials"],-5,1,3],["cc.AudioClip",["_name","_native","duration"],0],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["454adgphRpA6oq5lB6Cg1fK",["node"],3,1],["cc.Scene",["_name","autoReleaseAssets","_children","_anchorPoint","_trs"],1,2,5,7],["f2f0bI5PsVI+o18xF6G+KVa",["node"],3,1],["971c4vub4BJpqrSCLPJ8g1V",["node","audioButtonClick","audioWarning","audioWin"],3,1,6,6,6],["cc.Camera",["_clearFlags","_depth","node"],1,1],["3ffacOneORCf6Bc1LFhTCCQ",["node"],3,1]],[[2,1,2,3,4,2],[0,0,7,9,5,10,6,8,2],[0,0,7,5,6,2],[3,0,1,2,3,4,3],[5,0,1,2,3,4],[6,0,1,2,3,4,8,9,6],[0,0,7,5,6,8,2],[2,2,3,4,1],[5,0,1,3,3],[7,0,1,2,4],[4,1,0,2,3,4,5,6,7,8,9],[3,0,1,2,3,5,6,7,4,8,9,10,3],[8,0,1,3],[0,0,2,9,5,6,8,3],[0,0,3,7,9,3],[0,0,1,9,5,10,6,8,3],[0,0,7,9,5,6,2],[0,0,1,5,6,8,3],[0,0,2,7,5,3],[0,0,3,7,9,5,6,8,3],[0,0,1,7,5,10,6,3],[0,0,4,7,5,10,6,8,3],[9,0,1,2,3,3],[4,0,8,2],[10,0,1],[2,0,1,2,3,4,3],[2,0,2,3,4,2],[3,2,3,4,1],[3,0,1,2,3,3],[11,0,1,2,3,4,3],[12,0,1],[13,0,1,2,3,1],[14,0,1,2,3],[15,0,1],[6,0,1,2,5,3,4,6,7,8,9,9]],[[[[9,"whoosh",".mp3",0.20898],-1],0,0,[],[],[]],[[{"name":"default_btn_disabled","rect":[0,0,40,40],"offset":[0,0],"originalSize":[40,40],"capInsets":[12,12,12,12]}],[1],0,[0],[3],[6]],[[[9,"arrow",".mp3",0.444082],-1],0,0,[],[],[]],[[[12,"LoadScene",null],[13,"Canvas","a5esZu+45LA5mBpvttspPD",[-4,-5,-6,-7,-8,-9],[[22,true,false,-1,[5,750,1334]],[23,45,-2],[24,-3]],[5,750,1334],[375,667,0,0,0,0,1,1,1,1]],[14,"Level",false,1,[-10,-11,-12,-13,-14,-15,-16,-17,-18,-19,-20,-21,-22,-23,-24,-25,-26,-27,-28,-29,-30,-31,-32,-33,-34,-35,-36,-37,-38,-39,-40,-41,-42,-43,-44,-45,-46,-47]],[15,"Background",512,[-50],[[25,1,0,-48,[12],13],[10,0,45,-50,-50,-20,-20,100,40,-49]],[4,4278255530],[5,200,80],[0,0,0,0,0,0,1,1,1,0]],[1,"block",2,[-54],[[0,0,-51,[27],28],[3,1.1,3,-53,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","11",1]],-52]],[4,4278190080],[5,80,80],[-208.096,401.174,0,0,0,0,1,1,1,0]],[1,"block",2,[-58],[[0,0,-55,[30],31],[3,1.1,3,-57,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","12",1]],-56]],[4,4278190080],[5,80,80],[-95.208,401.174,0,0,0,0,1,1,1,0]],[1,"block",2,[-62],[[0,0,-59,[33],34],[3,1.1,3,-61,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","13",1]],-60]],[4,4278190080],[5,80,80],[9.419,401.174,0,0,0,0,1,1,1,0]],[1,"block",2,[-66],[[0,0,-63,[36],37],[3,1.1,3,-65,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","14",1]],-64]],[4,4278190080],[5,80,80],[116.8,401.174,0,0,0,0,1,1,1,0]],[1,"block",2,[-70],[[0,0,-67,[39],40],[3,1.1,3,-69,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","15",1]],-68]],[4,4278190080],[5,80,80],[224.181,401.174,0,0,0,0,1,1,1,0]],[1,"block",2,[-74],[[0,0,-71,[42],43],[3,1.1,3,-73,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","16",1]],-72]],[4,4278190080],[5,80,80],[-208.096,288.286,0,0,0,0,1,1,1,0]],[1,"block",2,[-78],[[0,0,-75,[45],46],[3,1.1,3,-77,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","17",1]],-76]],[4,4278190080],[5,80,80],[-95.208,288.286,0,0,0,0,1,1,1,0]],[1,"block",2,[-82],[[0,0,-79,[48],49],[3,1.1,3,-81,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","18",1]],-80]],[4,4278190080],[5,80,80],[9.419,288.286,0,0,0,0,1,1,1,0]],[1,"block",2,[-86],[[0,0,-83,[51],52],[3,1.1,3,-85,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","19",1]],-84]],[4,4278190080],[5,80,80],[116.8,288.286,0,0,0,0,1,1,1,0]],[1,"block",2,[-90],[[0,0,-87,[54],55],[3,1.1,3,-89,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","20",1]],-88]],[4,4278190080],[5,80,80],[224.181,288.286,0,0,0,0,1,1,1,0]],[1,"block",2,[-94],[[0,0,-91,[57],58],[3,1.1,3,-93,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","21",1]],-92]],[4,4278190080],[5,80,80],[-208.096,172.646,0,0,0,0,1,1,1,0]],[1,"block",2,[-98],[[0,0,-95,[60],61],[3,1.1,3,-97,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","22",1]],-96]],[4,4278190080],[5,80,80],[-95.208,172.646,0,0,0,0,1,1,1,0]],[1,"block",2,[-102],[[0,0,-99,[63],64],[3,1.1,3,-101,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","23",1]],-100]],[4,4278190080],[5,80,80],[9.419,172.646,0,0,0,0,1,1,1,0]],[1,"block",2,[-106],[[0,0,-103,[66],67],[3,1.1,3,-105,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","24",1]],-104]],[4,4278190080],[5,80,80],[116.8,172.646,0,0,0,0,1,1,1,0]],[1,"block",2,[-110],[[0,0,-107,[69],70],[3,1.1,3,-109,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","25",1]],-108]],[4,4278190080],[5,80,80],[224.181,172.646,0,0,0,0,1,1,1,0]],[1,"block",2,[-114],[[0,0,-111,[72],73],[3,1.1,3,-113,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","26",1]],-112]],[4,4278190080],[5,80,80],[-208.096,59.758,0,0,0,0,1,1,1,0]],[1,"block",2,[-118],[[0,0,-115,[75],76],[3,1.1,3,-117,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","27",1]],-116]],[4,4278190080],[5,80,80],[-95.208,59.758,0,0,0,0,1,1,1,0]],[1,"block",2,[-122],[[0,0,-119,[78],79],[3,1.1,3,-121,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","28",1]],-120]],[4,4278190080],[5,80,80],[9.419,59.758,0,0,0,0,1,1,1,0]],[1,"block",2,[-126],[[0,0,-123,[81],82],[3,1.1,3,-125,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","29",1]],-124]],[4,4278190080],[5,80,80],[116.8,59.758,0,0,0,0,1,1,1,0]],[1,"block",2,[-130],[[0,0,-127,[84],85],[3,1.1,3,-129,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","30",1]],-128]],[4,4278190080],[5,80,80],[224.181,59.758,0,0,0,0,1,1,1,0]],[1,"block",2,[-134],[[0,0,-131,[87],88],[3,1.1,3,-133,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","31",1]],-132]],[4,4278190080],[5,80,80],[-208.096,-64.142,0,0,0,0,1,1,1,0]],[1,"block",2,[-138],[[0,0,-135,[90],91],[3,1.1,3,-137,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","32",1]],-136]],[4,4278190080],[5,80,80],[-95.208,-64.142,0,0,0,0,1,1,1,0]],[1,"block",2,[-142],[[0,0,-139,[93],94],[3,1.1,3,-141,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","33",1]],-140]],[4,4278190080],[5,80,80],[9.419,-64.142,0,0,0,0,1,1,1,0]],[1,"block",2,[-146],[[0,0,-143,[96],97],[3,1.1,3,-145,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","34",1]],-144]],[4,4278190080],[5,80,80],[116.8,-64.142,0,0,0,0,1,1,1,0]],[1,"block",2,[-150],[[0,0,-147,[99],100],[3,1.1,3,-149,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","35",1]],-148]],[4,4278190080],[5,80,80],[224.181,-64.142,0,0,0,0,1,1,1,0]],[1,"block",2,[-154],[[0,0,-151,[102],103],[3,1.1,3,-153,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","36",1]],-152]],[4,4278190080],[5,80,80],[-208.096,-177.03,0,0,0,0,1,1,1,0]],[1,"block",2,[-158],[[0,0,-155,[105],106],[3,1.1,3,-157,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","37",1]],-156]],[4,4278190080],[5,80,80],[-95.208,-177.03,0,0,0,0,1,1,1,0]],[1,"block",2,[-162],[[0,0,-159,[108],109],[3,1.1,3,-161,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","38",1]],-160]],[4,4278190080],[5,80,80],[9.419,-177.03,0,0,0,0,1,1,1,0]],[1,"block",2,[-166],[[0,0,-163,[111],112],[3,1.1,3,-165,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","39",1]],-164]],[4,4278190080],[5,80,80],[116.8,-177.03,0,0,0,0,1,1,1,0]],[1,"block",2,[-170],[[0,0,-167,[114],115],[3,1.1,3,-169,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","40",1]],-168]],[4,4278190080],[5,80,80],[224.181,-177.03,0,0,0,0,1,1,1,0]],[1,"block",2,[-174],[[0,0,-171,[117],118],[3,1.1,3,-173,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","41",1]],-172]],[4,4278190080],[5,80,80],[-208.096,-282.526,0,0,0,0,1,1,1,0]],[1,"block",2,[-178],[[0,0,-175,[120],121],[3,1.1,3,-177,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","42",1]],-176]],[4,4278190080],[5,80,80],[-95.208,-282.526,0,0,0,0,1,1,1,0]],[1,"block",2,[-182],[[0,0,-179,[123],124],[3,1.1,3,-181,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","43",1]],-180]],[4,4278190080],[5,80,80],[9.419,-282.526,0,0,0,0,1,1,1,0]],[1,"block",2,[-186],[[0,0,-183,[126],127],[3,1.1,3,-185,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","44",1]],-184]],[4,4278190080],[5,80,80],[116.8,-282.526,0,0,0,0,1,1,1,0]],[1,"block",2,[-190],[[0,0,-187,[129],130],[3,1.1,3,-189,[[4,"454adgphRpA6oq5lB6Cg1fK","clickBtn","45",1]],-188]],[4,4278190080],[5,80,80],[224.181,-282.526,0,0,0,0,1,1,1,0]],[16,"New Sprite",1,[-192,-193],[[7,-191,[7],8]],[5,750,1600]],[17,"Background",512,[[26,1,-194,[17],18],[10,0,45,-13,-13,-50,-50,100,40,-195]],[5,126,140],[0,0,0,0,0,0,1,1,1,0]],[6,"New Sprite",2,[[7,-196,[131],132],[27,-198,[[8,"454adgphRpA6oq5lB6Cg1fK","closeBtn",1]],-197]],[5,27,27],[289.618,562.073,0,0,0,0,1,3,3,1]],[29,"New Node",true,[-199,1],[0,0,0],[0,0,0,0,0,0,1,1,1,1]],[18,"GameData","78JbrAn9RBIr8Ujxy6eo6w",42,[[30,-200],[31,-201,0,1,2]]],[2,"Main Camera",1,[[32,7,-1,-202],[33,-203]],[5,960,640]],[6,"New Sprite",1,[[7,-204,[9],10],[28,1.1,3,-205,[[8,"454adgphRpA6oq5lB6Cg1fK","startGame",1]]]],[5,376,84],[0,-313.22,0,0,0,0,1,1,1,0]],[19,"New Button",false,1,[3],[[11,1.1,3,-206,[[8,"454adgphRpA6oq5lB6Cg1fK","openLevel",1]],[4,4293322470],[4,4291348680],[4,3363338360],3,14,15,16]],[5,100,40],[0,-463.672,0,0,0,0,1,1,1,1]],[1,"Rank",1,[40],[[11,1.1,3,-207,[[8,"454adgphRpA6oq5lB6Cg1fK","openRank",1]],[4,4293322470],[4,4291348680],[4,3363338360],40,19,20,21]],[4,4278190314],[5,100,40],[258.955,-476.544,0,0,0,0,1,1,1,1]],[6,"New Sprite",39,[[7,-208,[3],4]],[5,750,1600],[0,1600,0,0,0,0,1,1,-1,1]],[6,"New Sprite",39,[[7,-209,[5],6]],[5,750,1600],[0,-1600,0,0,0,0,1,1,-1,1]],[20,"Label",512,3,[[34,"选择关卡",23,22.9,false,1,1,1,1,-210,[11]]],[4,4294084964],[5,100,40]],[21,"New Sprite(Splash)",120,2,[[0,0,-211,[22],23]],[4,4278190080],[5,750,2000],[0,68.65,0,0,0,0,1,1,1,1]],[6,"New Sprite(Splash)",2,[[0,0,-212,[24],25]],[5,600,1000],[0,68.65,0,0,0,0,1,1,1,1]],[2,"New Label",4,[[5,"1",50,50,1,1,-213,[26]]],[5,27.81,63]],[2,"New Label",5,[[5,"2",50,50,1,1,-214,[29]]],[5,27.81,63]],[2,"New Label",6,[[5,"3",50,50,1,1,-215,[32]]],[5,27.81,63]],[2,"New Label",7,[[5,"4",50,50,1,1,-216,[35]]],[5,27.81,63]],[2,"New Label",8,[[5,"5",50,50,1,1,-217,[38]]],[5,27.81,63]],[2,"New Label",9,[[5,"6",50,50,1,1,-218,[41]]],[5,27.81,63]],[2,"New Label",10,[[5,"7",50,50,1,1,-219,[44]]],[5,27.81,63]],[2,"New Label",11,[[5,"8",50,50,1,1,-220,[47]]],[5,27.81,63]],[2,"New Label",12,[[5,"9",50,50,1,1,-221,[50]]],[5,27.81,63]],[2,"New Label",13,[[5,"10",50,50,1,1,-222,[53]]],[5,55.62,63]],[2,"New Label",14,[[5,"11",50,50,1,1,-223,[56]]],[5,51.9,63]],[2,"New Label",15,[[5,"12",50,50,1,1,-224,[59]]],[5,55.62,63]],[2,"New Label",16,[[5,"13",50,50,1,1,-225,[62]]],[5,55.62,63]],[2,"New Label",17,[[5,"14",50,50,1,1,-226,[65]]],[5,55.62,63]],[2,"New Label",18,[[5,"15",50,50,1,1,-227,[68]]],[5,55.62,63]],[2,"New Label",19,[[5,"16",50,50,1,1,-228,[71]]],[5,55.62,63]],[2,"New Label",20,[[5,"17",50,50,1,1,-229,[74]]],[5,55.62,63]],[2,"New Label",21,[[5,"18",50,50,1,1,-230,[77]]],[5,55.62,63]],[2,"New Label",22,[[5,"19",50,50,1,1,-231,[80]]],[5,55.62,63]],[2,"New Label",23,[[5,"20",50,50,1,1,-232,[83]]],[5,55.62,63]],[2,"New Label",24,[[5,"21",50,50,1,1,-233,[86]]],[5,55.62,63]],[2,"New Label",25,[[5,"22",50,50,1,1,-234,[89]]],[5,55.62,63]],[2,"New Label",26,[[5,"23",50,50,1,1,-235,[92]]],[5,55.62,63]],[2,"New Label",27,[[5,"24",50,50,1,1,-236,[95]]],[5,55.62,63]],[2,"New Label",28,[[5,"25",50,50,1,1,-237,[98]]],[5,55.62,63]],[2,"New Label",29,[[5,"26",50,50,1,1,-238,[101]]],[5,55.62,63]],[2,"New Label",30,[[5,"27",50,50,1,1,-239,[104]]],[5,55.62,63]],[2,"New Label",31,[[5,"28",50,50,1,1,-240,[107]]],[5,55.62,63]],[2,"New Label",32,[[5,"29",50,50,1,1,-241,[110]]],[5,55.62,63]],[2,"New Label",33,[[5,"30",50,50,1,1,-242,[113]]],[5,55.62,63]],[2,"New Label",34,[[5,"31",50,50,1,1,-243,[116]]],[5,55.62,63]],[2,"New Label",35,[[5,"32",50,50,1,1,-244,[119]]],[5,55.62,63]],[2,"New Label",36,[[5,"33",50,50,1,1,-245,[122]]],[5,55.62,63]],[2,"New Label",37,[[5,"34",50,50,1,1,-246,[125]]],[5,55.62,63]],[2,"New Label",38,[[5,"35",50,50,1,1,-247,[128]]],[5,55.62,63]]],0,[0,0,1,0,0,1,0,0,1,0,-1,44,0,-2,39,0,-3,45,0,-4,46,0,-5,47,0,-6,2,0,-1,51,0,-2,52,0,-3,4,0,-4,5,0,-5,6,0,-6,7,0,-7,8,0,-8,9,0,-9,10,0,-10,11,0,-11,12,0,-12,13,0,-13,14,0,-14,15,0,-15,16,0,-16,17,0,-17,18,0,-18,19,0,-19,20,0,-20,21,0,-21,22,0,-22,23,0,-23,24,0,-24,25,0,-25,26,0,-26,27,0,-27,28,0,-28,29,0,-29,30,0,-30,31,0,-31,32,0,-32,33,0,-33,34,0,-34,35,0,-35,36,0,-36,37,0,-37,38,0,-38,41,0,0,3,0,0,3,0,-1,50,0,0,4,0,2,4,0,0,4,0,-1,53,0,0,5,0,2,5,0,0,5,0,-1,54,0,0,6,0,2,6,0,0,6,0,-1,55,0,0,7,0,2,7,0,0,7,0,-1,56,0,0,8,0,2,8,0,0,8,0,-1,57,0,0,9,0,2,9,0,0,9,0,-1,58,0,0,10,0,2,10,0,0,10,0,-1,59,0,0,11,0,2,11,0,0,11,0,-1,60,0,0,12,0,2,12,0,0,12,0,-1,61,0,0,13,0,2,13,0,0,13,0,-1,62,0,0,14,0,2,14,0,0,14,0,-1,63,0,0,15,0,2,15,0,0,15,0,-1,64,0,0,16,0,2,16,0,0,16,0,-1,65,0,0,17,0,2,17,0,0,17,0,-1,66,0,0,18,0,2,18,0,0,18,0,-1,67,0,0,19,0,2,19,0,0,19,0,-1,68,0,0,20,0,2,20,0,0,20,0,-1,69,0,0,21,0,2,21,0,0,21,0,-1,70,0,0,22,0,2,22,0,0,22,0,-1,71,0,0,23,0,2,23,0,0,23,0,-1,72,0,0,24,0,2,24,0,0,24,0,-1,73,0,0,25,0,2,25,0,0,25,0,-1,74,0,0,26,0,2,26,0,0,26,0,-1,75,0,0,27,0,2,27,0,0,27,0,-1,76,0,0,28,0,2,28,0,0,28,0,-1,77,0,0,29,0,2,29,0,0,29,0,-1,78,0,0,30,0,2,30,0,0,30,0,-1,79,0,0,31,0,2,31,0,0,31,0,-1,80,0,0,32,0,2,32,0,0,32,0,-1,81,0,0,33,0,2,33,0,0,33,0,-1,82,0,0,34,0,2,34,0,0,34,0,-1,83,0,0,35,0,2,35,0,0,35,0,-1,84,0,0,36,0,2,36,0,0,36,0,-1,85,0,0,37,0,2,37,0,0,37,0,-1,86,0,0,38,0,2,38,0,0,38,0,-1,87,0,0,39,0,-1,48,0,-2,49,0,0,40,0,0,40,0,0,41,0,2,41,0,0,41,0,-1,43,0,0,43,0,0,43,0,0,44,0,0,44,0,0,45,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,0,54,0,0,55,0,0,56,0,0,57,0,0,58,0,0,59,0,0,60,0,0,61,0,0,62,0,0,63,0,0,64,0,0,65,0,0,66,0,0,67,0,0,68,0,0,69,0,0,70,0,0,71,0,0,72,0,0,73,0,0,74,0,0,75,0,0,76,0,0,77,0,0,78,0,0,79,0,0,80,0,0,81,0,0,82,0,0,83,0,0,84,0,0,85,0,0,86,0,0,87,0,8,42,1,4,42,3,4,46,40,4,47,247],[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,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],[9,10,11,-1,1,-1,1,-1,1,-1,1,-1,-1,1,5,6,7,-1,1,5,6,7,-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,-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],[7,8,9,0,2,0,2,0,2,0,10,0,0,1,3,4,5,0,11,3,4,5,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,12]],[[{"name":"default_sprite_splash","rect":[0,0,2,2],"offset":[0,0],"originalSize":[2,2],"capInsets":[0,0,0,0]}],[1],0,[0],[3],[13]],[[[9,"score",".mp3",0.444082],-1],0,0,[],[],[]],[[{"name":"default_btn_pressed","rect":[0,0,40,40],"offset":[0,0],"originalSize":[40,40],"capInsets":[12,12,12,12]}],[1],0,[0],[3],[14]],[[{"name":"default_btn_normal","rect":[0,0,40,40],"offset":[0,0],"originalSize":[40,40],"capInsets":[12,12,12,12]}],[1],0,[0],[3],[15]]]] \ No newline at end of file diff --git a/build/Sun_moves/assets/main/import/0b/0b36acb24.json b/build/Sun_moves/assets/main/import/0b/0b36acb24.json deleted file mode 100644 index 08613f5..0000000 --- a/build/Sun_moves/assets/main/import/0b/0b36acb24.json +++ /dev/null @@ -1 +0,0 @@ -[1,["ecpdLyjvZBwrvm+cedCcQy","a2MjXRFdtLlYQ5ouAFv/+R","27FeLB8OpGcaDrf9NiEDKz","167IfY0HdDyZdtlLDeaDkg","e97GVMl6JHh5Ml5qEDdSGa","f0BIwQ8D5Ml7nTNQbh1YlS","29FYIk+N1GYaeWH/q1NxQO","71VhFCTINJM6/Ky3oX9nBT","d4gMhswKRJuotFXwDetRF4","70ym98iPBE8ZqzOxwNBCmV","8eZObX1ehJkKU3GR/hPgya","23CIt+PSBBMJopNtpbffXh","e7CzEDg/FMZpCTGJfBpdSu","6bdOTGFcVFZo3U+lI6FYmL","96FRA8sCdIybKmTQHllKeE","bcITWltAtAD4sUjinM7HdJ","02delMVqdBD70a/HSD99FK","b4P/PCArtIdIH38t6mlw8Y","e8Ueib+qJEhL6mXAHdnwbi"],["node","_spriteFrame","_N$target","_textureSetter","_parent","_N$pressedSprite","_N$hoverSprite","_N$disabledSprite","u_fluxayTexture","_effectAsset","scene","audioButtonClick","audioWarning","audioWin"],[["cc.Node",["_name","_active","_objFlags","_id","_opacity","_components","_contentSize","_parent","_trs","_children","_color"],-2,9,5,1,7,2,5],["cc.Sprite",["_type","_sizeMode","_srcBlendFactor","node","_materials","_spriteFrame"],0,1,3,6],"cc.SpriteFrame",["cc.Button",["zoomScale","_N$transition","node","clickEvents","_N$target","_N$normalColor","_N$pressedColor","_N$disabledColor","_N$pressedSprite","_N$hoverSprite","_N$disabledSprite"],1,1,9,1,5,5,5,6,6,6],["cc.Widget",["_alignFlags","alignMode","_left","_right","_top","_bottom","_originalWidth","_originalHeight","node"],-5,1],["cc.ClickEvent",["_componentId","handler","customEventData","target"],0,1],["cc.Label",["_string","_fontSize","_lineHeight","_N$horizontalAlign","_N$verticalAlign","_enableWrapText","_N$overflow","_N$cacheMode","node","_materials"],-5,1,3],["cc.AudioClip",["_name","_native","duration"],0],["cc.Material",["_name","_techniqueData"],2,11],["cc.EffectAsset",["_name","shaders","techniques"],0],["cc.SceneAsset",["_name","asyncLoadAssets"],1],["cc.Canvas",["_fitWidth","_fitHeight","node","_designResolution"],1,1,5],["454adgphRpA6oq5lB6Cg1fK",["node"],3,1],["cc.Scene",["_name","autoReleaseAssets","_children","_anchorPoint","_trs"],1,2,5,7],["f2f0bI5PsVI+o18xF6G+KVa",["node"],3,1],["bd9f78XOD5PmLTjk2rLYBiz",["node","audioButtonClick","audioWarning","audioWin"],3,1,6,6,6],["cc.Camera",["_clearFlags","_depth","node"],1,1],["3ffacOneORCf6Bc1LFhTCCQ",["node"],3,1],["b48a2ukFF1FlJGSkUcHUIET",["m_fluxayTime","m_scale","m_angle","node"],0,1]],[[1,1,3,4,5,2],[0,0,7,9,5,10,6,8,2],[0,0,7,5,6,2],[3,0,1,2,3,4,3],[5,0,1,2,3,4],[6,0,1,2,3,4,8,9,6],[1,3,4,5,1],[0,0,7,5,6,8,2],[5,0,1,3,3],[7,0,1,2,4],[4,1,0,2,3,4,5,6,7,8,9],[3,0,1,2,3,5,6,7,4,8,9,10,3],[8,0,1,2],[9,0,1,2,4],[10,0,1,3],[0,0,3,9,5,6,8,3],[0,0,1,7,9,3],[0,0,2,9,5,10,6,8,3],[0,0,7,9,5,6,2],[0,0,7,9,5,6,8,2],[0,0,2,5,6,8,3],[0,0,3,7,5,3],[0,0,1,7,5,6,3],[0,0,1,7,9,5,6,8,3],[0,0,2,7,5,10,6,3],[0,0,4,7,5,10,6,8,3],[11,0,1,2,3,3],[4,0,8,2],[12,0,1],[1,0,1,3,4,5,3],[1,0,3,4,5,2],[1,2,3,4,5,2],[3,0,1,2,3,3],[3,2,3,4,1],[13,0,1,2,3,4,3],[14,0,1],[15,0,1,2,3,1],[16,0,1,2,3],[17,0,1],[18,0,1,2,3,4],[6,0,1,2,5,3,4,6,7,8,9,9]],[[[[9,"whoosh",".mp3",0.20898],-1],0,0,[],[],[]],[[{"name":"default_btn_disabled","rect":[0,0,40,40],"offset":[0,0],"originalSize":[40,40],"capInsets":[12,12,12,12]}],[2],0,[0],[3],[7]],[[[12,"fluxay_texture_angle",[{},"0",11,[{"defines":{"USE_TEXTURE":true}},"props",11,[{},"u_fluxayTexture",6,0]]]]],0,0,[0,0],[8,9],[8,9]],[[[13,"fluxay_texture_angle",[{"hash":4267621795,"record":null,"name":"fluxay_texture_angle|vs|fs","glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\n#if USE_TEXTURE\n in vec2 a_uv0;\n out vec2 v_uv0;\n#endif\nvoid main () {\n mat4 mvp;\n #if CC_USE_MODEL\n mvp = cc_matViewProj * cc_matWorld;\n #else\n mvp = cc_matViewProj;\n #endif\n v_uv0 = a_uv0;\n v_color = a_color;\n gl_Position = mvp * vec4(a_position, 1);\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\nin vec2 v_uv0;\nuniform sampler2D texture;\nuniform sampler2D u_fluxayTexture;\nuniform ARGS {\n float u_time;\n float u_scale;\n float u_angle;\n};\nvec2 transformUV(vec2 UV,float angle){\n float rotate = (angle * 3.1415926) / 180.0;\n vec2 di = vec2(0.5, 0.5);\n mat3 m = mat3(cos(rotate), -sin(rotate), 0.0,sin(rotate), cos(rotate), 0.0,0.0, 0.0, 1.0);\n vec3 uv = vec3(UV.x,UV.y, 1.0)* m;\n return vec2(uv.x,uv.y);\n}\nvoid main () {\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n o = texture2D(texture, v_uv0);\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n if(o.a >= 1.0) {\n vec2 fluxayUV = vec2(v_uv0.x, v_uv0.y);\n fluxayUV.x -= u_time;\n fluxayUV = transformUV(fluxayUV,u_angle);\n if(fluxayUV.x > 0.0 && fluxayUV.x = 1.0) {\n vec2 fluxayUV = vec2(v_uv0.x, v_uv0.y);\n fluxayUV.x -= u_time;\n fluxayUV = transformUV(fluxayUV,u_angle);\n if(fluxayUV.x > 0.0 && fluxayUV.x this.m_fluxayTime+this.m_intervalTime&&(this._time=0);var e=this._time/this.m_fluxayTime;this._time>this.m_fluxayTime&&(e=1+(this._time-this.m_fluxayTime)/this.m_intervalTime),null!=this.m_reviseTimeScale&&null!=this.m_reviseStartTime&&(e/=this.m_reviseTimeScale,e-=this.m_reviseStartTime),this._material.setProperty("u_time",e),this._time+=t},refreshSpriteFrameData:function(){var t=this.node.getComponent(cc.Sprite),e=t.getMaterial(0),i=t.spriteFrame;if(null!=i){var n=i.uv[0],o=i.uv[6],r=i.uv[3],a=i.uv[5],s=new cc.Vec4(n,a,o,r),c=i.isRotated()?1:0;void 0!==e.getProperty("u_uvOffset")&&e.setProperty("u_uvOffset",s),void 0!==e.getProperty("u_uvRotated")&&e.setProperty("u_uvRotated",c)}}}),cc._RF.pop()},{}],DynamicAtlasManager:[function(t,e){"use strict";cc._RF.push(e,"3ffacOneORCf6Bc1LFhTCCQ","DynamicAtlasManager"),cc.Class({extends:cc.Component,properties:{},onLoad:function(){cc.dynamicAtlasManager.enabled=!1}}),cc._RF.pop()},{}],GameData:[function(t,e,i){"use strict";cc._RF.push(e,"f2f0bI5PsVI+o18xF6G+KVa","GameData");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.label=null,e.text="hello",e}var i;return o(e,t),i=e,e.prototype.onLoad=function(){null==i._instance?(i._instance=this,cc.game.addPersistRootNode(this.node),this.AudioManager=this.node.getComponent("BallAudioManager")):this.node.destroy()},e.prototype.start=function(){this.GM_INFO={mean_Time:0,total:0,currSeed:203213,gameId:"100009",userId:200139,guide:!0,url:"http://api.sparkus.cn",success:!1,matchId:null,custom:0},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},{number:5,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:5,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:6,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:6,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:6,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:6,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:6,moveNumber:4,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:6,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:7,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:7,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:7,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:7,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:7,moveNumber:4,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:7,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:8,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:8,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:8,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:8,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:8,moveNumber:4,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:8,moveNumber:2,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:8,moveNumber:4,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:9,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0},{number:9,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:9,moveNumber:5,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:1},{number:10,moveNumber:0,moveSpeed:6,maxDistance:200,maxMove:1200,repeat:0}],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},this.GAME_DATA=[]},e.prototype.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}},r([c(cc.Label)],e.prototype,"label",void 0),r([c],e.prototype,"text",void 0),i=r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{}],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=t("./GameData"),l=t("./Notification"),u=t("./crypto/serverAPI"),p=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.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.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!=h.default._instance.GM_INFO.custom&&(this.level=h.default._instance.GM_INFO.custom,h.default._instance.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=[],h.default._instance.GAME_DATA=[],h.default._instance.GM_INFO.success=!1,this.startTime=0,this.overTime=0,this.winTime=0,h.default._instance.GM_INFO.total=0,h.default._instance.GM_INFO.mean_Time=0,this.schedule(this.updateCountDownTime,1),this.startGame()},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.begin_Guide=function(){},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,h.default._instance.GM_INFO.total+=this.clickNow,this.overTime=this.getTime(),this.startTime>0&&this.overTime>0&&(h.default._instance.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),h.default._instance.AudioManager.playWin(),this.round+=1;var r=[];if(this.moveArray.length>0)for(var a=0;a=0&&(e.level>=15?(h.default._instance.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(){h.default._instance.AudioManager.playWarning(),this.begin=!1,this.overTime=this.getTime(),this.startTime>0&&this.overTime>0&&(h.default._instance.GM_INFO.mean_Time+=this.overTime-this.startTime);var t=parseInt((this.overTime-this.startTime)/100+"");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;i2?(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.hitAction=function(t){var e=this;this.hit.active=!0,this.hit.opacity=0,this.hit.setPosition,this.hit.setPosition(this.ball_Array[t].x+35,this.ball_Array[t].y+35),cc.tween(this.hit).to(0,{opacity:255}).to(.2,{position:cc.v3(this.hit.x-35,this.hit.y-35,0)}).delay(.2).to(.1,{opacity:0}).call(function(){e.hit.active=!1}).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(),h.default._instance.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;l--)l!=c&&0==this.moveArray[l]&&l!=this.repeat&&l!=this.numberRepeat&&(this.moveArray[l]=1,this.moveArray[c]=0,l=-1);for(var u=function(e){1==p.moveArray[e]&&setTimeout(function(){n=t.getPos2(!0,e),t.Pos_Array[e]=n},300*(a+=1))},p=this,d=0;d=2&&(n=7-i.moveSpeed/2),i.moveNumber>0){cc.v2(0,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;s1||e<-1?(0==e||i<0||i>=this.Pos_Array.length)&&(i=this.getRandomArray(t)):i=this.getRandomArray(t),i},e.prototype.createSun=function(){for(var t=this,e=h.default._instance.LEVEL_INFO[this.level-1],i=0,n=function(n){setTimeout(function(){if(0==t.over){var i=t.getPos(!1,n);t.Pos_Array.push(i),t.Pos_Array.length==e.number&&(t.createMove(),t.createPos())}},100*(i+=1))},o=0;o0)for(var r=0;r0)for(var r=0;r160&&(o=s160&&(r=1!=o||c800&&(a=800),a/800*.6},e.prototype.calculateDistance2=function(t,e,i,n){var o=i-t,r=n-e,a=Math.sqrt(o*o+r*r);return a>1200&&(a=1200),a/1200*1},e.prototype.calculateDistance3=function(t,e,i,n){var o=i-t,r=n-e,a=Math.sqrt(o*o+r*r);return a>1200&&(a=1200),a/1200*1.5},e.prototype.bgMove=function(t){var e=this,i=300*Math.random()+300,n=600*Math.random()-300,o=this.bg1.y-i*t,r=i/400*.7;cc.tween(this.ball).to(.3,{scale:1.3}).to(r,{x:n}).start(),cc.tween(this.bg1).delay(.3).to(r,{y:o}).start(),setTimeout(function(){0==e.over&&e.startGame()},1500*r)},e.prototype.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},e.prototype.updateCountDownTime=function(){if(this.countTime>0&&0==this.pause){if(this.countTime-=1,this.time.string=this.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(h.default._instance.GM_INFO.mean_Time/this.clickCount+"")),h.default._instance.GM_INFO.mean_Time=parseInt(e/100+""),h.default._instance.GM_INFO.mean_Time=h.default._instance.GM_INFO.mean_Time/10,e>1e4&&(e=100*(10*Math.random()+5)),this.setRank(e)}}},e.prototype.setData=function(){var t=h.default._instance.GAME_DATA,e=this.getMatchId();console.log(e);var i={matchId:e,data:t};console.log("\u4e0a\u4f20\u6570\u636e:"),u.default.uploadUserLogData(i,function(){})},e.prototype.getMatchId=function(){var t=cc.sys.localStorage.getItem("matchId");if("undifend"==t||null==t)t=this.setMatchId();else if(1==this.containsNanana(t))t=this.setMatchId();else{var e=parseInt(t[10]);1==this.round&&(e+=1),t=t.slice(0,10)+e+"",h.default._instance.GM_INFO.matchId=t,cc.sys.localStorage.setItem("matchId",t)}return t},e.prototype.containsNanana=function(t){return/na/i.test(t)},e.prototype.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),cc.sys.localStorage.setItem("matchId",r),h.default._instance.GM_INFO.matchId=r,r},e.prototype.setRank=function(t){var e={type:1,reactionTime:t,totalSunCount:h.default._instance.GM_INFO.total,success:h.default._instance.GM_INFO.success};u.default.rankData(1,function(){},e),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.outPut=function(){h.default._instance.CLICK_DATA,h.default._instance.GAME_DATA=[],h.default._instance.GAME_DATA.push(h.default._instance.CLICK_DATA),h.default._instance.CLICK_init()},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=t("./GameData"),s=t("./crypto/serverAPI"),c=cc._decorator,h=c.ccclass,l=c.property,u=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=a.default._instance.GM_INFO.total,a.default._instance.GM_INFO.mean_Time>10&&(a.default._instance.GM_INFO.mean_Time=(parseInt(10*Math.random()+"")+5)/10),this.time.string=a.default._instance.GM_INFO.mean_Time+"s",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,this.getRank()},e.prototype.success=function(){},e.prototype.back=function(){cc.director.loadScene("RankScene")},e.prototype.again=function(){cc.director.loadScene("GameScene")},e.prototype.getRank=function(){s.default.rankData(2,this.getRankData.bind(this),{page:1,pageSize:100})},e.prototype.getRankData=function(t){if(t){this.listData=t.data.list,this.selfData=t.data.info;var e=[],i=!1;this.selfData.nickName.length>4&&(this.selfData.nickName=this.selfData.nickName.substring(0,4)+"..."),this.selfNode.getChildByName("name").getComponent(cc.Label).string=this.selfData.nickName,this.selfNode.getChildByName("total").getComponent(cc.Label).string=this.selfData.totalSunCount,this.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"),this.selfData.pic);for(var n=0;n<=this.listData.length-1;n++)e.push({rank:n+1,name:this.listData[n].nickName,total:this.listData[n].totalSunCount,pic:this.listData[n].pic}),a.default._instance.GM_INFO.userId==this.listData[n].userId&&(i=!0,this.selfNode.getChildByName("rank").getComponent(cc.Label).string=n+1+""),n==this.listData.length-1&&0==i&&(this.selfNode.getChildByName("rank").getComponent(cc.Label).string="99+"),n<5&&this.setRank(n,this.listData[n])}},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,e.nickName.length>4&&(e.nickName=e.nickName.substring(0,4)+"..."),i.getChildByName("name").getComponent(cc.Label).string=e.nickName,i.getChildByName("total").getComponent(cc.Label).string=e.totalSunCount,this.setPic(i.getChildByName("pic").getChildByName("icon"),e.pic))},e.prototype.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(t){console.error("Error fetching X-Info:",t)})},100),cc.assetManager.loadRemote(i,{ext:".jpg"},function(e,i){i?(t.active=!0,t.getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i)):console.log(e,i)})},r([l(cc.Label)],e.prototype,"count",void 0),r([l(cc.Label)],e.prototype,"time",void 0),r([l(cc.Node)],e.prototype,"selfNode",void 0),r([l(cc.Node)],e.prototype,"one",void 0),r([l(cc.Node)],e.prototype,"two",void 0),r([l(cc.Node)],e.prototype,"three",void 0),r([l(cc.Node)],e.prototype,"four",void 0),r([l(cc.Node)],e.prototype,"five",void 0),r([h],e)}(cc.Component);i.default=u,cc._RF.pop()},{"./GameData":"GameData","./crypto/serverAPI":"serverAPI"}],GameTool:[function(t,e){"use strict";var i;cc._RF.push(e,"a1dd7qMiCpOLL3FDXJd9DGy","GameTool");var n=t("Storage").StorageMessage;window.GameTool=((i={_startTime:0,_endTime:0,_totalTime:0,getSeedRandom:function(t,e){e=e||1,t=t||0,GM_INFO.currSeed=(9301*GM_INFO.currSeed+49297)%233280;var i=GM_INFO.currSeed/233280;return parseInt(t+i*(e-t))},getSetScreenResolutionFlag:function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},setFit:function(){return GameTool.getSetScreenResolutionFlag()},submitScoreButtonFunc:function(t,e){if(console.log("number=",e),0==e){console.log("\u4e0a\u4f20\u5206\u6570:",t);var i=t;CC_WECHATGAME?window.wx.postMessage({messageType:3,MAIN_MENU_FEN:"score",MAIN_MENU_NUM:"fen",score:i,fen:0}):cc.log("\u63d0\u4ea4\u5f97\u5206: x1 : "+i)}else console.log("\u4e0a\u4f20\u7279\u6b8a\u5206\u6570:",t),i=t,CC_WECHATGAME?window.wx.postMessage({messageType:7,MAIN_MENU_FEN:"score",MAIN_MENU_NUM:"fen",score:0,fen:i}):cc.log("\u63d0\u4ea4\u5f97\u5206: x1 : "+i);return!0},getTip:function(){switch(Math.floor(4*Math.random())+1){case 1:return"\u6839\u636e\u5c0f\u7403\u7684\u4f4d\u7f6e\uff0c\u5408\u7406\u6643\u52a8\u624b\u673a\uff0c\u786e\u4fdd\u5c0f\u7403\u4e0d\u6389\u51fa\u6728\u677f\u3002";case 2:return"\u6839\u636e\u5c0f\u7403\u4f4d\u7f6e\u63a7\u5236\u6643\u52a8\u5e45\u5ea6\uff0c\u8fc7\u5927\u6216\u8fc7\u5c0f\u90fd\u4e0d\u662f\u4e2a\u597d\u9009\u62e9\u3002";case 3:return"\u4e0d\u8981\u88ab\u5929\u4e0a\u6389\u843d\u7684\u969c\u788d\u5413\u5230\uff0c\u6709\u65f6\u5019\u5b83\u53cd\u800c\u4f1a\u5e2e\u4f60\u4fdd\u6301\u5e73\u8861\u3002";case 4:return"\u5c1d\u8bd5\u7740\u9876\u5f00\u6389\u843d\u7684\u969c\u788d\uff0c\u662f\u4e2a\u5f88\u9177\u7684\u73a9\u6cd5\u3002"}},beginTiming:function(){this._startTime=(new Date).getTime()},endTiming:function(){this._endTime=(new Date).getTime()},updateScoreTime:function(){var t=(new Date).getTime(),e=t-this._startTime;(e<0||e>500)&&(e=Math.round(1e3*cc.director.getAnimationInterval())),this._endTime+=e/1e3,this._totalTime=this._endTime.toFixed(2),GM_INFO.currScore=this._totalTime,this._startTime=t},countDown:function(){this._endTime=(new Date).getTime(),this._totalTime=parseInt((this._endTime-this._startTime)/1e3),GM_INFO.remainingTime=GM_INFO.totalTime-this._totalTime},httpRequest:function(t,e,i,n){console.log("\u8fdb\u5165\u7f51\u7edc\u8bf7\u6c42:"),wx.getNetworkType({success:function(o){var r=o.networkType;"wifi"==r||"4g"==r||"3g"==r||"unknown"==r?wx.request({url:window.globalData.requestAPI+t,data:e,header:{"content-type":"application/json",Authorization:window.globalData.BASE64_JWT_TOKEN?"Bearer "+window.globalData.BASE64_JWT_TOKEN:""},method:"POST",success:function(t){console.log("httpRequest:::::success",t),i(t)},fail:function(e){console.log("httpRequest:::::fail",e,"\u5931\u8d25url\u4e3a",t),n(e)}}):n(o)},fail:function(t){n(t)}})},httpRequest_Notoken:function(t,e,i,n){wx.getNetworkType({success:function(o){var r=o.networkType;"wifi"==r||"4g"==r||"3g"==r||"unknown"==r?wx.request({url:window.globalData.requestAPI+t,data:e,header:{"content-type":"application/json"},method:"POST",success:function(t){console.log("httpRequest:::::success",t),i(t)},fail:function(e){console.log("httpRequest:::::fail",e,"\u5931\u8d25url\u4e3a",t),n(e)}}):n(o)},fail:function(t){n(t)}})},getGameInfo:function(){var t=!1,e={appid:window.globalData.appid};return window.GameTool.httpRequest(window.globalData.getUserInfoUrl,e,function(e){window.globalData.gameUserInfo=e.data.king_user,console.log("\u62ff\u5230\u670d\u52a1\u5668\u7684\u4fe1\u606f",e.data),window.globalData.gameUserInfo?(console.log("\u83b7\u5f97\u670d\u52a1\u5668\u6e38\u620f\u4fe1\u606f\u6210\u529f:",window.globalData.gameUserInfo),window.globalData.gameUserInfo.unlock_1&&(window.GM_INFO.unlock_1=window.globalData.gameUserInfo.unlock_1),window.globalData.gameUserInfo.unlock_2&&(window.GM_INFO.unlock_2=window.globalData.gameUserInfo.unlock_2),window.globalData.gameUserInfo.coin?n.getStorage("Coin")?window.globalData.gameUserInfo.coin!=n.getStorage("Coin")&&(window.GM_INFO.coin=n.getStorage("Coin"),n.setStorage("Coin",window.GM_INFO.coin)):(window.GM_INFO.coin=window.globalData.gameUserInfo.coin,n.setStorage("Coin",window.GM_INFO.coin)):n.getStorage("Coin")?(window.GM_INFO.coin=n.getStorage("Coin"),n.setStorage("Coin",window.GM_INFO.coin)):(window.GM_INFO.coin=200,n.setStorage("Coin",window.GM_INFO.coin)),cc.director.loadScene("GameBegin"),CC_WECHATGAME&&(wx.onShow(function(t){t&&t.query&&(console.log("\u5206\u4eab\u4e2d\u5e26\u7684\u4fe1\u606f",t.query),t.query.key1&&window.GameTool.setFrindHelp(t.query.key1),t.query.key2&&window.GameTool.setFrindBlock(t.query.key2),t.query.key3&&window.GameTool.setFrindBlockMax(t.query.key3))}),wx.onHide(function(){console.log("\u68c0\u6d4b\u9000\u51fa\u6e38\u620f"),window.GameTool.submitScoreButtonFunc(window.GM_INFO.level,window.GM_INFO.coin),window.GameTool.setGameInfo()})),t=!0):(console.log("\u62ff\u5230\u670d\u52a1\u5668\u4fe1\u606f\u5931\u8d25"),cc.director.loadScene("LoadScene"))},function(){t=!1,console.log("get\u7528\u6237\u4fe1\u606f\u5931\u8d25",res)}),t},reset:function(){console.log("\u672c\u5730\u6570\u636e\u4e22\u5931,\u91cd\u65b0\u542f\u52a8\u6e38\u620f"),cc.director.loadScene("LoadScene")},setGameInfo:function(t){var e={};window.GameTool.httpRequest(window.globalData.richest,e,function(e){console.log("\u5b58\u50a8userInfo\u6210\u529f",e),t||(window.GM_INFO.leave_time=e.data.leave_time,n.setStorage("leave_time",window.GM_INFO.leave_time))},function(i){console.log("\u5b58\u50a8userInfo\u5931\u8d25",i),t||(window.GM_INFO.leave_time=parseInt((new Date).valueOf()/1e3),n.setStorage("leave_time",e))})},getTimeMargin:function(t){var e=t,i=parseInt(e/3600),n=parseInt((e-3600*i)/60);return"\u5269\u4f59:"+i+":"+n+":"+(e-3600*i-60*n)},getTimeMargin2:function(t){var e=t,i=parseInt(e/3600),n=parseInt((e-3600*i)/60);n<10&&(n="0"+n);var o=e-3600*i-60*n;return o<10&&(o="0"+o),"\u5269\u4f59:"+n+":"+o},setFrindBlock:function(t){var e={user_id:t};window.GameTool.httpRequest(window.globalData.entryBlock,e,function(t){console.log("\u6dfb\u52a0\u7ea2\u5305\u52a9\u529b\u4fe1\u606f\u6210\u529f",t)},function(t){console.log("\u6dfb\u52a0\u7ea2\u5305\u52a9\u529b\u4fe1\u606f\u5931\u8d25",t)})}}).getSeedRandom=function(t,e){e=e||1,t=t||0,GM_INFO.currSeed=(9301*GM_INFO.currSeed+49297)%233280;var i=GM_INFO.currSeed/233280;return parseInt(t+i*(e-t))},i.getTime=function(t){var e=parseInt(t/60),i=t-60*e;return e<10&&(e="0"+e),i<10&&(i="0"+i),e+":"+i},i.getNumber=function(t,e){var i=e-3;return t>Math.pow(1e3,8)*Math.pow(10,i)?t/Math.pow(1e3,8)<100?parseInt(t/Math.pow(1e3,8)*10)/10+"S":parseInt(t/Math.pow(1e3,8))+"S":t>Math.pow(1e3,7)*Math.pow(10,i)?t/Math.pow(1e3,7)<100?parseInt(t/Math.pow(1e3,7)*10)/10+"s":parseInt(t/Math.pow(1e3,7))+"s":t>Math.pow(1e3,6)*Math.pow(10,i)?t/Math.pow(1e3,6)<100?parseInt(t/Math.pow(1e3,6)*10)/10+"Q":parseInt(t/Math.pow(1e3,6))+"Q":t>Math.pow(1e3,5)*Math.pow(10,i)?t/Math.pow(1e3,5)<100?parseInt(t/Math.pow(1e3,5)*10)/10+"q":parseInt(t/Math.pow(1e3,5))+"q":t>Math.pow(1e3,4)*Math.pow(10,i)?t/Math.pow(1e3,4)<100?parseInt(t/Math.pow(1e3,4)*10)/10+"t":parseInt(t/Math.pow(1e3,4))+"t":t>Math.pow(1e3,3)*Math.pow(10,i)?t/Math.pow(1e3,3)<100?parseInt(t/Math.pow(1e3,3)*10)/10+"b":parseInt(t/Math.pow(1e3,3))+"b":t>Math.pow(1e3,2)*Math.pow(10,i)?t/Math.pow(1e3,2)<100?parseInt(t/Math.pow(1e3,2)*10)/10+"m":parseInt(t/Math.pow(1e3,2))+"m":t>Math.pow(1e3,1)*Math.pow(10,i)?t/Math.pow(1e3,1)<100?parseInt(t/Math.pow(1e3,1)*10)/10+"k":parseInt(t/Math.pow(1e3,1))+"k":parseInt(t/Math.pow(1e3,0))+""},i.begainTiming=function(){this._startTime=(new Date).getTime()},i.endTiming=function(){var t=(new Date).getTime();this._endTime=t,this._totalTime=t-this._startTime},i.getScoreTime=function(){var t=(new Date).getTime(),e=t-this._startTime;(e<0||e>500)&&(e=Math.round(1e3*cc.director.getAnimationInterval())),GM_INFO.currScore+=e,this._startTime=t},i.getFormatTime=function(t){var e=new Date;e.setTime(t);var i=e.getMilliseconds(),n=parseInt(i/10)%100,o=e.getSeconds(),r=e.getMinutes();return n<10&&(n="0"+n),o<10&&(o="0"+o),r<10&&(r="0"+r),(r+=":")+(o+=":")+n},i.pushLister=function(){},i.removeAllLister=function(){},i),cc._RF.pop()},{Storage:"Storage"}],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=t("./GameData"),s=t("./Notification"),c=cc._decorator,h=c.ccclass,l=c.property,u=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(){this.custom=1,this.init(),this.startGuide(0)},e.prototype.init=function(){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.createSun1():3==e.custom?e.createSun2():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.createSun1=function(){var t=this;this.ball_Array=[],this.Pos_Array.push(cc.v2(-250,-216),cc.v2(200,-115),cc.v2(-35,-500));var e=this.calculateDistance(this.ball.x,this.ball.y,this.Pos_Array[0].x,this.Pos_Array[0].y);this.ball.opacity=0,cc.tween(this.ball).to(e,{position:this.Pos_Array[0]}).call(function(){t.createBall(0,0,0,!1)}).delay(1).call(function(){t.startGuide(0)}).start()},e.prototype.beginClick=function(){for(var t=0;t800&&(a=800),a/800*.8},e.prototype.moveSun=function(){},e.prototype.passLevel=function(){var t=this;this.destroyLine();for(var e=[],i=0,n=this.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,a.default._instance.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){var i=this.node.getChildByName("Win");i.active=!0,i.setScale(0),cc.tween(i).delay(.4).to(.01,{scale:2.5}).to(.35,{scale:1}).delay(.6).call(function(){i.active=!1,setTimeout(function(){e.passLevel()},400)}).start()}}else{a.default._instance.AudioManager.playWarning(),this.begin=!1,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.loseLevel=function(){var t=this;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};Object.defineProperty(i,"__esModule",{value:!0});var a=t("./GameData"),s=t("./ListView/List"),c=t("./crypto/serverAPI"),h=cc._decorator,l=h.ccclass,u=h.property,p=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.Player.getChildByName("rank").active=!1,this.rankList=cc.find("ScrollView",this.node).getComponent(s.default),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.getRankData=function(t){if(t){this.listData=t.data.list,this.selfData=t.data.info;for(var e=[],i=!1,n=0;n<=this.listData.length-1;n++)e.push({rank:n+1,name:this.listData[n].nickName,total:this.listData[n].totalSunCount,pic:this.listData[n].pic}),a.default._instance.GM_INFO.userId==this.listData[n].userId&&(i=!0,this.rankNumber=n,this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string=n+1+""),n==this.listData.length-1&&0==i&&(this.rankNumber=n,this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string="99+");this.rankList.setData(e),this.selfData.nickName.length>6&&(this.selfData.nickName=this.selfData.nickName.substring(0,6)+"..."),this.selfNode.getChildByName("nameLab").getComponent(cc.Label).string=this.selfData.nickName,this.selfNode.getChildByName("totalLab").getComponent(cc.Label).string=this.selfData.totalSunCount,this.setPic(this.selfData.pic),this.setPic2(this.selfData.pic),"1"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string?this.selfNode.getChildByName("rank").getChildByName("one").active=!0:"2"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string?this.selfNode.getChildByName("rank").getChildByName("two").active=!0:"3"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string&&(this.selfNode.getChildByName("rank").getChildByName("three").active=!0),this.selfNode.opacity=255,0==this.selfData.totalSunCount&&(this.selfNode.opacity=0)}},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.getRank=function(){c.default.rankData(2,this.getRankData.bind(this),{page:1,pageSize:100})},e.prototype.setPic=function(t){var e=this;this.phone.node.parent.getChildByName("icon").active=!1,this.phone.node.active=!1;var i=t;fetch(i).then(function(t){return t.headers.get("Content-Length")}).then(function(t){"5093"==t&&(e.phone.node.parent.getChildByName("icon").active=!0)}).catch(function(t){console.error("Error fetching X-Info:",t)});var n=this;cc.assetManager.loadRemote(i,{ext:".jpg"},function(t,i){i?(e.phone.node.active=!0,n.phone.spriteFrame=new cc.SpriteFrame(i)):console.log(t,i)})},e.prototype.setPic2=function(t){var e=this;this.Player.active=!0,this.Player.opacity=0,this.Player.getChildByName("mask").getChildByName("icon").active=!1,this.Player.getChildByName("mask").getChildByName("phone").active=!1;var i=t;fetch(i).then(function(t){return t.headers.get("Content-Length")}).then(function(t){"5093"==t&&(e.Player.getChildByName("mask").getChildByName("icon").active=!0)}).catch(function(t){console.error("Error fetching X-Info:",t)}),cc.assetManager.loadRemote(i,{ext:".jpg"},function(t,i){i?(e.Player.opacity=255,e.Player.getChildByName("mask").getChildByName("icon").active=!1,e.Player.getChildByName("mask").getChildByName("phone").active=!0,e.Player.getChildByName("mask").getChildByName("phone").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i),setTimeout(function(){e.playerAction()},500)):(e.Player.opacity=255,e.Player.getChildByName("mask").getChildByName("icon").active=!0,console.log(t,i),setTimeout(function(){e.playerAction()},500))})},r([u(cc.Node)],e.prototype,"Player",void 0),r([u(cc.Node)],e.prototype,"selfNode",void 0),r([u(cc.Sprite)],e.prototype,"phone",void 0),r([l],e)}(cc.Component);i.default=p,cc._RF.pop()},{"./GameData":"GameData","./ListView/List":"List","./crypto/serverAPI":"serverAPI"}],ItemRender:[function(t,e,i){"use strict";cc._RF.push(e,"ca0f9k0oBVDbpQC+OMNTF3m","ItemRender");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(){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(){this.data.name.length>6&&(this.data.name=this.data.name.substring(0,6)+"..."),this.node.getChildByName("rankLab").getComponent(cc.Label).string=this.data.rank+"",this.node.getChildByName("nameLab").getComponent(cc.Label).string=this.data.name+"",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(t){console.error("Error fetching X-Info:",t)}),cc.assetManager.loadRemote(e,{ext:".jpg"},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,h=(a.requireComponent,t("./GameData")),l=t("./Storage"),u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.label=null,e.text="hello",e}return o(e,t),e.prototype.start=function(){var t=l.StorageMessage.getStorage("user");if("undifend"==t||null==t)this.setId();else{var e=l.StorageMessage.getStorage("user");if(e=this.getId(e),parseInt((new Date).getTime()/1e3+"")-e[2]>86400)return void this.setId();h.default._instance.GM_INFO.userId=e[1],h.default._instance.GM_INFO.userId=parseInt(h.default._instance.GM_INFO.userId)}},e.prototype.setId=function(){if(h.default._instance.GM_INFO.userId=this.getUserId(),null==h.default._instance.GM_INFO.userId){var t="http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href;window.location.href=t}else{var e=parseInt((new Date).getTime()/1e3+""),i="gameId="+h.default._instance.GM_INFO.gameId+"?userId= "+h.default._instance.GM_INFO.userId+"?time="+e;l.StorageMessage.setStorage("user",i),h.default._instance.GM_INFO.userId=parseInt(h.default._instance.GM_INFO.userId)}},e.prototype.createTexture=function(){var t=this;cc.assetManager.loadRemote("http://static.sparkus.cn/shoot-sun/assets/resources/native/7a/7a8b41ad-9425-44e2-8f55-7740f12b0e0a.jpg",function(e,i){console.log(e,i),i&&(t.node.getChildByName("icon").getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i))})},e.prototype.getUserId=function(){var t=window.location.search,e=t.split("&");if(t.length>=0&&e.length>0){var i=[];return e.map(function(t){i.push(t.split("=")[1])}),i[0]}return null},e.prototype.getId=function(t){var e=t,i=e.split("?");if(e.length>=0&&i.length>0){var n=[];return i.map(function(t){n.push(t.split("=")[1])}),n}return null},e.prototype.startGame=function(){h.default._instance.GM_INFO.custom=0,cc.director.loadScene("GuideScene")},e.prototype.clickBtn=function(t,e){h.default._instance.GM_INFO.custom=parseInt(e),cc.director.loadScene("GameScene")},e.prototype.openLevel=function(){this.node.getChildByName("Level").active=!0},e.prototype.closeBtn=function(){this.node.getChildByName("Level").active=!1},e.prototype.back=function(){},e.prototype.openBtn=function(){h.default._instance.GM_INFO.custom=0,cc.director.loadScene("GuideScene")},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},r([c(cc.Label)],e.prototype,"label",void 0),r([c],e.prototype,"text",void 0),r([s],e)}(cc.Component);i.default=u,cc._RF.pop()},{"./GameData":"GameData","./Storage":"Storage"}],Notification:[function(t,e,i){"use strict";cc._RF.push(e,"f2518+0IHRGOY+ueIhGtEeA","Notification"),Object.defineProperty(i,"__esModule",{value:!0}),i.Notification=void 0;i.Notification={_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=this.duration&&(this.unschedule(this.doSchedule),this.node.setPosition(this.nodeInitialPos),this.shaking=!1,this.callback&&this.callback())},getRandomStrength:function(t,e){return Math.random()*(e-t+1)+t}}),cc._RF.pop()},{}],Storage:[function(t,e,i){"use strict";cc._RF.push(e,"7cf8cMT5zJA0ZU4Gp0JcL8v","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,t("./Notification")),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){this.touch=!0,this.move=!1,this._color=0,this._speed=0;var t=this.node.getChildByName("shan");cc.tween(t).repeatForever(cc.tween().to(1,{opacity:0,scale:.5}).delay(.2).to(1,{opacity:255,scale:1.2}).delay(.5)).start()},e.prototype.init=function(t,e,i,n){this.id_Number=t,this._color=e,this._speed=i,this._repeat=n},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(){this.node.parent.parent.name,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,c.Notification.emit("clickSun",this.id_Number)):(this.touch=!1,this.node.zIndex=-1,c.Notification.emit("clickSun",this.id_Number)))},e.prototype.clickBtn2=function(){1==this.touch&&1==this.node.parent.parent.getComponent("GuideManager").begin&&(this.touch=!1,this.node.zIndex=-1,c.Notification.emit("clickSun",this.id_Number))},e.prototype.update=function(){},r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{"./Notification":"Notification"}],"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],d=t[r+2],f=t[r+3],m=t[r+4],y=t[r+5],v=t[r+6],g=t[r+7],_=t[r+8],b=t[r+9],w=t[r+10],S=t[r+11],C=t[r+12],A=t[r+13],x=t[r+14],N=t[r+15],M=h[0],k=h[1],B=h[2],I=h[3];M=e(M,k,B,I,l,7,u[0]),I=e(I,M,k,B,p,12,u[1]),B=e(B,I,M,k,d,17,u[2]),k=e(k,B,I,M,f,22,u[3]),M=e(M,k,B,I,m,7,u[4]),I=e(I,M,k,B,y,12,u[5]),B=e(B,I,M,k,v,17,u[6]),k=e(k,B,I,M,g,22,u[7]),M=e(M,k,B,I,_,7,u[8]),I=e(I,M,k,B,b,12,u[9]),B=e(B,I,M,k,w,17,u[10]),k=e(k,B,I,M,S,22,u[11]),M=e(M,k,B,I,C,7,u[12]),I=e(I,M,k,B,A,12,u[13]),B=e(B,I,M,k,x,17,u[14]),M=i(M,k=e(k,B,I,M,N,22,u[15]),B,I,p,5,u[16]),I=i(I,M,k,B,v,9,u[17]),B=i(B,I,M,k,S,14,u[18]),k=i(k,B,I,M,l,20,u[19]),M=i(M,k,B,I,y,5,u[20]),I=i(I,M,k,B,w,9,u[21]),B=i(B,I,M,k,N,14,u[22]),k=i(k,B,I,M,m,20,u[23]),M=i(M,k,B,I,b,5,u[24]),I=i(I,M,k,B,x,9,u[25]),B=i(B,I,M,k,f,14,u[26]),k=i(k,B,I,M,_,20,u[27]),M=i(M,k,B,I,A,5,u[28]),I=i(I,M,k,B,d,9,u[29]),B=i(B,I,M,k,g,14,u[30]),M=n(M,k=i(k,B,I,M,C,20,u[31]),B,I,y,4,u[32]),I=n(I,M,k,B,_,11,u[33]),B=n(B,I,M,k,S,16,u[34]),k=n(k,B,I,M,x,23,u[35]),M=n(M,k,B,I,p,4,u[36]),I=n(I,M,k,B,m,11,u[37]),B=n(B,I,M,k,g,16,u[38]),k=n(k,B,I,M,w,23,u[39]),M=n(M,k,B,I,A,4,u[40]),I=n(I,M,k,B,l,11,u[41]),B=n(B,I,M,k,f,16,u[42]),k=n(k,B,I,M,v,23,u[43]),M=n(M,k,B,I,b,4,u[44]),I=n(I,M,k,B,C,11,u[45]),B=n(B,I,M,k,N,16,u[46]),M=o(M,k=n(k,B,I,M,d,23,u[47]),B,I,l,6,u[48]),I=o(I,M,k,B,g,10,u[49]),B=o(B,I,M,k,x,15,u[50]),k=o(k,B,I,M,y,21,u[51]),M=o(M,k,B,I,C,6,u[52]),I=o(I,M,k,B,f,10,u[53]),B=o(B,I,M,k,w,15,u[54]),k=o(k,B,I,M,p,21,u[55]),M=o(M,k,B,I,_,6,u[56]),I=o(I,M,k,B,N,10,u[57]),B=o(B,I,M,k,v,15,u[58]),k=o(k,B,I,M,A,21,u[59]),M=o(M,k,B,I,m,6,u[60]),I=o(I,M,k,B,S,10,u[61]),B=o(B,I,M,k,d,15,u[62]),k=o(k,B,I,M,b,21,u[63]),h[0]=h[0]+M|0,h[1]=h[1]+k|0,h[2]=h[2]+B|0,h[3]=h[3]+I|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],d=0;d<64;d++){if(d<16)h[d]=0|t[e+d];else{var f=h[d-15],m=(f<<25|f>>>7)^(f<<14|f>>>18)^f>>>3,y=h[d-2],v=(y<<15|y>>>17)^(y<<13|y>>>19)^y>>>10;h[d]=m+h[d-7]+v+h[d-16]}var g=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[d]+h[d];p=u,u=l,l=s,s=a+b|0,a=r,r=o,o=n,n=b+(_+g)|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]),d=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]),f=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]),m=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]),y=h.create([0,1518500249,1859775393,2400959708,2840853838]),v=h.create([1352829926,1548603684,1836072691,2053994217,0]),g=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,g,_,b,w,S,C,A,x,N,M,k=this._hash.words,B=y.words,I=v.words,D=p.words,P=d.words,L=f.words,O=m.words;for(S=u=k[0],C=g=k[1],A=_=k[2],x=b=k[3],N=w=k[4],c=0;c<80;c+=1)M=u+a[s+D[c]]|0,M+=c<16?t(g,_,b)+B[0]:c<32?e(g,_,b)+B[1]:c<48?i(g,_,b)+B[2]:c<64?n(g,_,b)+B[3]:o(g,_,b)+B[4],M=(M=r(M|=0,L[c]))+w|0,u=w,w=b,b=r(_,10),_=g,g=M,M=S+a[s+P[c]]|0,M+=c<16?o(C,A,x)+I[0]:c<32?n(C,A,x)+I[1]:c<48?i(C,A,x)+I[2]:c<64?e(C,A,x)+I[3]:t(C,A,x)+I[4],M=(M=r(M|=0,O[c]))+N|0,S=N,N=x,x=r(A,10),A=C,C=M;M=k[1]+_+x|0,k[1]=k[2]+b+N|0,k[2]=k[3]+w+S|0,k[3]=k[4]+u+C|0,k[4]=k[0]+g+A|0,k[0]=M},_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(g),a.HmacRIPEMD160=l._createHmacHelper(g)}(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),(k=i[o]).high^=a,k.low^=r}for(var s=0;s<24;s++){for(var p=0;p<5;p++){for(var d=0,f=0,m=0;m<5;m++)d^=(k=i[p+5*m]).high,f^=k.low;var y=u[p];y.high=d,y.low=f}for(p=0;p<5;p++){var v=u[(p+4)%5],g=u[(p+1)%5],_=g.high,b=g.low;for(d=v.high^(_<<1|b>>>31),f=v.low^(b<<1|_>>>31),m=0;m<5;m++)(k=i[p+5*m]).high^=d,k.low^=f}for(var w=1;w<25;w++){var S=(k=i[w]).high,C=k.low,A=c[w];A<32?(d=S<>>32-A,f=C<>>32-A):(d=C<>>64-A,f=S<>>64-A);var x=u[h[w]];x.high=d,x.low=f}var N=u[0],M=i[0];for(N.high=M.high,N.low=M.low,p=0;p<5;p++)for(m=0;m<5;m++){var k=i[w=p+5*m],B=u[w],I=u[(p+1)%5+5*m],D=u[(p+2)%5+5*m];k.high=B.high^~I.high&D.high,k.low=B.low^~I.low&D.low}k=i[0];var P=l[s];k.high^=P.high,k.low^=P.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),d=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8),h.push(d),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],d=n.high,f=n.low,m=o.high,y=o.low,v=r.high,g=r.low,_=a.high,b=a.low,w=s.high,S=s.low,C=l.high,A=l.low,x=u.high,N=u.low,M=p.high,k=p.low,B=d,I=f,D=m,P=y,L=v,O=g,R=_,T=b,F=w,G=S,H=C,E=A,z=x,j=N,V=M,q=k,W=0;W<80;W++){var U=h[W];if(W<16)var X=U.high=0|t[e+2*W],K=U.low=0|t[e+2*W+1];else{var Y=h[W-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[W-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[W-7],at=rt.high,st=rt.low,ct=h[W-16],ht=ct.high,lt=ct.low;X=(X=(X=Q+at+((K=$+st)>>>0<$>>>0?1:0))+nt+((K+=ot)>>>0>>0?1:0))+ht+((K+=lt)>>>0>>0?1:0),U.high=X,U.low=K}var ut,pt=F&H^~F&z,dt=G&E^~G&j,ft=B&D^B&L^D&L,mt=I&P^I&O^P&O,yt=(B>>>28|I<<4)^(B<<30|I>>>2)^(B<<25|I>>>7),vt=(I>>>28|B<<4)^(I<<30|B>>>2)^(I<<25|B>>>7),gt=(F>>>14|G<<18)^(F>>>18|G<<14)^(F<<23|G>>>9),_t=(G>>>14|F<<18)^(G>>>18|F<<14)^(G<<23|F>>>9),bt=c[W],wt=bt.high,St=bt.low,Ct=V+gt+((ut=q+_t)>>>0>>0?1:0),At=vt+mt;V=z,q=j,z=H,j=E,H=F,E=G,F=R+(Ct=(Ct=(Ct=Ct+pt+((ut+=dt)>>>0
>>0?1:0))+wt+((ut+=St)>>>0>>0?1:0))+X+((ut+=K)>>>0>>0?1:0))+((G=T+ut|0)>>>0>>0?1:0)|0,R=L,T=O,L=D,O=P,D=B,P=I,B=Ct+(yt+ft+(At>>>0>>0?1:0))+((I=ut+At|0)>>>0>>0?1:0)|0}f=n.low=f+I,n.high=d+B+(f>>>0>>0?1:0),y=o.low=y+P,o.high=m+D+(y>>>0

>>0?1:0),g=r.low=g+O,r.high=v+L+(g>>>0>>0?1:0),b=a.low=b+T,a.high=_+R+(b>>>0>>0?1:0),S=s.low=S+G,s.high=w+F+(S>>>0>>0?1:0),A=l.low=A+E,l.high=C+H+(A>>>0>>0?1:0),N=u.low=N+j,u.high=x+z+(N>>>0>>0?1:0),k=p.low=k+q,p.high=M+V+(k>>>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?_:v}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}}),d=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}},m=(i.BlockCipher=l.extend({cfg:l.cfg.extend({mode:d,padding:f}),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)}})),y=(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 m.create({ciphertext:e,salt:n})}},v=i.SerializableCipher=n.extend({cfg:n.extend({format:y}),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 m.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}}),g=(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,m.create({key:r,iv:a,salt:n})}},_=i.PasswordBasedCipher=v.extend({cfg:v.cfg.extend({kdf:g}),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=v.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,v.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&f^99,n[i]=f,o[f]=i;var m=t[i],y=t[m],v=t[y],g=257*t[f]^16843008*f;r[i]=g<<24|g>>>8,a[i]=g<<16|g>>>16,c[i]=g<<8|g>>>24,h[i]=g,g=16843009*v^65537*y^257*m^16843008*i,l[f]=g<<24|g>>>8,u[f]=g<<16|g>>>16,p[f]=g<<8|g>>>24,d[f]=g,i?(i=m^t[t[t[v^m]]],s^=t[t[s]]):i=s=1}}();var f=[0,1,2,4,8,16,32,64,128,27,54],m=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^=f[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]]^d[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,d,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],d=4,f=1;f>>24]^o[l>>>16&255]^r[u>>>8&255]^a[255&p]^i[d++],y=n[l>>>24]^o[u>>>16&255]^r[p>>>8&255]^a[255&h]^i[d++],v=n[u>>>24]^o[p>>>16&255]^r[h>>>8&255]^a[255&l]^i[d++],g=n[p>>>24]^o[h>>>16&255]^r[l>>>8&255]^a[255&u]^i[d++];h=m,l=y,u=v,p=g}m=(s[h>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[255&p])^i[d++],y=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[p>>>8&255]<<8|s[255&h])^i[d++],v=(s[u>>>24]<<24|s[p>>>16&255]<<16|s[h>>>8&255]<<8|s[255&l])^i[d++],g=(s[p>>>24]<<24|s[h>>>16&255]<<16|s[l>>>8&255]<<8|s[255&u])^i[d++],t[e]=m,t[e+1]=y,t[e+2]=v,t[e+3]=g},keySize:8});t.AES=e._createHelper(m)}(),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 d=this._lBlock;this._lBlock=this._rBlock,this._rBlock=d,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(d);var f=a.TripleDES=r.extend({_doReset:function(){var t=this._key.words;this._des1=d.createEncryptor(o.create(t.slice(0,2))),this._des2=d.createEncryptor(o.create(t.slice(2,4))),this._des3=d.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(f)}(),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()},{}],serverAPI:[function(t,e,i){"use strict";cc._RF.push(e,"98307M8uUtLYKaHXPmGgCWf","serverAPI");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},a=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())})},s=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,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}var i;return o(e,t),i=e,e.prototype.onLoad=function(){null==i._instance?(i._instance=this,cc.game.addPersistRootNode(this.node),this.AudioManager=this.node.getComponent("AudioManager")):this.node.destroy()},e.prototype.start=function(){this.GM_INFO_init(),this.CLICK_init(),this.LEVEL_INFO_init(),this.GAME_DATA=[]},e.prototype.GM_INFO_init=function(){this.GM_INFO={mean_Time:0,total:0,currSeed:203213,gameId:"100009",userId:200139,guide:!0,url:"http://api.sparkus.cn",success:!1,matchId:null,custom:0}},e.prototype.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}},e.prototype.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}]},i=r([s],e)}(cc.Component));i.default=c,cc._RF.pop()},{}],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=t("./GameData"),l=t("./Notification"),u=t("./crypto/serverAPI"),p=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!=h.default._instance.GM_INFO.custom&&(this.level=h.default._instance.GM_INFO.custom,h.default._instance.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=[],h.default._instance.GAME_DATA=[],h.default._instance.GM_INFO.success=!1,this.startTime=0,this.overTime=0,this.winTime=0,h.default._instance.GM_INFO.total=0,h.default._instance.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,h.default._instance.GM_INFO.total+=this.clickNow,this.overTime=this.getTime(),this.startTime>0&&this.overTime>0&&(h.default._instance.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),h.default._instance.AudioManager.playWin(),this.round+=1;var r=[];if(this.moveArray.length>0)for(var a=0;a=0&&(e.level>=15?(h.default._instance.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(){h.default._instance.AudioManager.playWarning(),this.begin=!1,this.overTime=this.getTime(),this.startTime>0&&this.overTime>0&&(h.default._instance.GM_INFO.mean_Time+=this.overTime-this.startTime);var t=parseInt((this.overTime-this.startTime)/100+"");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;i2?(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(),h.default._instance.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;l--)l!=c&&0==this.moveArray[l]&&l!=this.repeat&&l!=this.numberRepeat&&(this.moveArray[l]=1,this.moveArray[c]=0,l=-1);for(var u=function(e){1==p.moveArray[e]&&setTimeout(function(){n=t.getPos2(!0,e),t.Pos_Array[e]=n},300*(a+=1))},p=this,d=0;d=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&&(o=s800&&(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=this.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(h.default._instance.GM_INFO.mean_Time/this.clickCount+"")),h.default._instance.GM_INFO.mean_Time=parseInt(e/100+""),h.default._instance.GM_INFO.mean_Time=h.default._instance.GM_INFO.mean_Time/10,e>1e4&&(e=100*(10*Math.random()+5)),this.setRank(e)}}},e.prototype.setData=function(){h.default._instance.GAME_DATA=[],h.default._instance.GAME_DATA.push(h.default._instance.CLICK_DATA),h.default._instance.CLICK_init();var t=h.default._instance.GAME_DATA,e=this.getMatchId();console.log(e);var i={matchId:e,data:t};console.log("\u4e0a\u4f20\u6570\u636e:"),u.default.uploadUserLogData(i,function(){})},e.prototype.getMatchId=function(){var t=cc.sys.localStorage.getItem("matchId");if("undifend"==t||null==t)t=this.setMatchId();else if(1==this.containsNanana(t))t=this.setMatchId();else{var e=parseInt(t[10]);1==this.round&&(e+=1),t=t.slice(0,10)+e+"",h.default._instance.GM_INFO.matchId=t,cc.sys.localStorage.setItem("matchId",t)}return t},e.prototype.containsNanana=function(t){return/na/i.test(t)},e.prototype.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),cc.sys.localStorage.setItem("matchId",r),h.default._instance.GM_INFO.matchId=r,r},e.prototype.setRank=function(t){var e={type:1,reactionTime:t,totalSunCount:h.default._instance.GM_INFO.total,success:h.default._instance.GM_INFO.success};u.default.rankData(1,function(){},e),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=t("./GameData"),s=t("./crypto/serverAPI"),c=cc._decorator,h=c.ccclass,l=c.property,u=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=a.default._instance.GM_INFO.total,a.default._instance.GM_INFO.mean_Time>10&&(a.default._instance.GM_INFO.mean_Time=(parseInt(10*Math.random()+"")+5)/10),this.time.string=a.default._instance.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,this.getRank()},e.prototype.openRank=function(){cc.director.loadScene("RankScene")},e.prototype.again=function(){cc.director.loadScene("GameScene")},e.prototype.getRank=function(){s.default.rankData(2,this.getRankData.bind(this),{page:1,pageSize:100})},e.prototype.getRankData=function(t){if(t){this.listData=t.data.list,this.selfData=t.data.info;var e=[],i=!1;this.selfData.nickName.length>4&&(this.selfData.nickName=this.selfData.nickName.substring(0,4)+"..."),this.selfNode.getChildByName("name").getComponent(cc.Label).string=this.selfData.nickName,this.selfNode.getChildByName("total").getComponent(cc.Label).string=this.selfData.totalSunCount,this.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"),this.selfData.pic);for(var n=0;n<=this.listData.length-1;n++)e.push({rank:n+1,name:this.listData[n].nickName,total:this.listData[n].totalSunCount,pic:this.listData[n].pic}),a.default._instance.GM_INFO.userId==this.listData[n].userId&&(i=!0,this.selfNode.getChildByName("rank").getComponent(cc.Label).string=n+1+""),n==this.listData.length-1&&0==i&&(this.selfNode.getChildByName("rank").getComponent(cc.Label).string="99+"),n<5&&this.setRank(n,this.listData[n])}},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,e.nickName.length>4&&(e.nickName=e.nickName.substring(0,4)+"..."),i.getChildByName("name").getComponent(cc.Label).string=e.nickName,i.getChildByName("total").getComponent(cc.Label).string=e.totalSunCount,this.setPic(i.getChildByName("pic").getChildByName("icon"),e.pic))},e.prototype.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(t){console.error("Error fetching X-Info:",t)})},100),cc.assetManager.loadRemote(i,{ext:".jpg"},function(e,i){i?(t.active=!0,t.getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(i)):console.log(e,i)})},r([l(cc.Label)],e.prototype,"count",void 0),r([l(cc.Label)],e.prototype,"time",void 0),r([l(cc.Node)],e.prototype,"selfNode",void 0),r([l(cc.Node)],e.prototype,"one",void 0),r([l(cc.Node)],e.prototype,"two",void 0),r([l(cc.Node)],e.prototype,"three",void 0),r([l(cc.Node)],e.prototype,"four",void 0),r([l(cc.Node)],e.prototype,"five",void 0),r([h],e)}(cc.Component);i.default=u,cc._RF.pop()},{"./GameData":"GameData","./crypto/serverAPI":"serverAPI"}],GameTool:[function(t,e,i){"use strict";cc._RF.push(e,"ddac3ZC+9pHQr0Fs9IIhw4a","GameTool"),Object.defineProperty(i,"__esModule",{value:!0}),i.GameTool=void 0;var n=t("../GameData"),o={_startTime:0,_endTime:0,_totalTime:0,getSeedRandom:function(t,e){e=e||1,t=t||0,n.default._instance.GM_INFO.currSeed=(9301*n.default._instance.GM_INFO.currSeed+49297)%233280;var i=t+n.default._instance.GM_INFO.currSeed/233280*(e-t);return Math.floor(i)},getSetScreenResolutionFlag:function(){var t=cc.winSize,e=t.width;return!(t.height/e>16.2/9)},setFit:function(){return o.getSetScreenResolutionFlag()},getTip:function(){switch(Math.floor(4*Math.random())+1){case 1:return"\u6839\u636e\u5c0f\u7403\u7684\u4f4d\u7f6e\uff0c\u5408\u7406\u6643\u52a8\u624b\u673a\uff0c\u786e\u4fdd\u5c0f\u7403\u4e0d\u6389\u51fa\u6728\u677f\u3002";case 2:return"\u6839\u636e\u5c0f\u7403\u4f4d\u7f6e\u63a7\u5236\u6643\u52a8\u5e45\u5ea6\uff0c\u8fc7\u5927\u6216\u8fc7\u5c0f\u90fd\u4e0d\u662f\u4e2a\u597d\u9009\u62e9\u3002";case 3:return"\u4e0d\u8981\u88ab\u5929\u4e0a\u6389\u843d\u7684\u969c\u788d\u5413\u5230\uff0c\u6709\u65f6\u5019\u5b83\u53cd\u800c\u4f1a\u5e2e\u4f60\u4fdd\u6301\u5e73\u8861\u3002";case 4:return"\u5c1d\u8bd5\u7740\u9876\u5f00\u6389\u843d\u7684\u969c\u788d\uff0c\u662f\u4e2a\u5f88\u9177\u7684\u73a9\u6cd5\u3002"}},beginTiming:function(){this._startTime=(new Date).getTime()},endTiming:function(){this._endTime=(new Date).getTime()},updateScoreTime:function(){var t=(new Date).getTime(),e=t-this._startTime;(e<0||e>500)&&(e=Math.round(1e3*cc.director.getAnimationInterval())),this._endTime+=e/1e3,this._totalTime=this._endTime.toFixed(2),n.default._instance.GM_INFO.currScore=this._totalTime,this._startTime=t},countDown:function(){this._endTime=(new Date).getTime(),this._totalTime=Math.floor((this._endTime-this._startTime)/1e3),n.default._instance.GM_INFO.remainingTime=n.default._instance.GM_INFO.totalTime-this._totalTime},getGameInfo:function(){return!1},reset:function(){console.log("\u672c\u5730\u6570\u636e\u4e22\u5931,\u91cd\u65b0\u542f\u52a8\u6e38\u620f"),cc.director.loadScene("LoadScene")},setGameInfo:function(){},getTimeMargin:function(t){var e=t,i=Math.floor(e/3600),n=e-3600*i,o=Math.floor(n/60);return"\u5269\u4f59:"+i+":"+o+":"+(e-3600*i-60*o)},getTimeMargin2:function(t){var e=t,i=null,n=null,o=Math.floor(e/3600),r=e-3600*o;return(i=Math.floor(r/60))<10&&(i="0"+i),(n=e-3600*o-60*i)<10&&(n="0"+n),"\u5269\u4f59:"+i+":"+n},setFrindBlock:function(){},getTime:function(t){var e=null,i=null;return i=t-60*(e=Math.floor(t/60)),e<10&&(e="0"+e),i<10&&(i="0"+i),e+":"+i},getNumber:function(t,e){var i=e-3;return t>Math.pow(1e3,8)*Math.pow(10,i)?t/Math.pow(1e3,8)<100?Math.floor(t/Math.pow(1e3,8)*10)/10+"S":Math.floor(t/Math.pow(1e3,8))+"S":t>Math.pow(1e3,7)*Math.pow(10,i)?t/Math.pow(1e3,7)<100?Math.floor(t/Math.pow(1e3,7)*10)/10+"s":Math.floor(t/Math.pow(1e3,7))+"s":t>Math.pow(1e3,6)*Math.pow(10,i)?t/Math.pow(1e3,6)<100?Math.floor(t/Math.pow(1e3,6)*10)/10+"Q":Math.floor(t/Math.pow(1e3,6))+"Q":t>Math.pow(1e3,5)*Math.pow(10,i)?t/Math.pow(1e3,5)<100?Math.floor(t/Math.pow(1e3,5)*10)/10+"q":Math.floor(t/Math.pow(1e3,5))+"q":t>Math.pow(1e3,4)*Math.pow(10,i)?t/Math.pow(1e3,4)<100?Math.floor(t/Math.pow(1e3,4)*10)/10+"t":Math.floor(t/Math.pow(1e3,4))+"t":t>Math.pow(1e3,3)*Math.pow(10,i)?t/Math.pow(1e3,3)<100?Math.floor(t/Math.pow(1e3,3)*10)/10+"b":Math.floor(t/Math.pow(1e3,3))+"b":t>Math.pow(1e3,2)*Math.pow(10,i)?t/Math.pow(1e3,2)<100?Math.floor(t/Math.pow(1e3,2)*10)/10+"m":Math.floor(t/Math.pow(1e3,2))+"m":t>Math.pow(1e3,1)*Math.pow(10,i)?t/Math.pow(1e3,1)<100?Math.floor(t/Math.pow(1e3,1)*10)/10+"k":Math.floor(t/Math.pow(1e3,1))+"k":Math.floor(t/Math.pow(1e3,0))+""},begainTiming:function(){this._startTime=(new Date).getTime()},endTiming2:function(){var t=(new Date).getTime();this._endTime=t,this._totalTime=t-this._startTime},getScoreTime:function(){var t=(new Date).getTime(),e=t-this._startTime;(e<0||e>500)&&(e=Math.round(1e3*cc.director.getAnimationInterval())),n.default._instance.GM_INFO.currScore+=e,this._startTime=t},getFormatTime:function(t){var e=new Date;e.setTime(t);var i=e.getMilliseconds(),n=null,o=null,r=null;return(n=Math.floor(i/10)%100)<10&&(n="0"+n),(o=e.getSeconds())<10&&(o="0"+o),(r=e.getMinutes())<10&&(r="0"+r),(r+=":")+(o+=":")+n},pushLister:function(){},removeAllLister:function(){}};i.GameTool=o,cc._RF.pop()},{"../GameData":"GameData"}],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=t("./GameData"),s=t("./Notification"),c=cc._decorator,h=c.ccclass,l=c.property,u=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(){a.default._instance.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.createSun1():3==e.custom?e.createSun2():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,a.default._instance.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,a.default._instance.AudioManager.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};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(){this.data.name.length>6&&(this.data.name=this.data.name.substring(0,6)+"..."),this.node.getChildByName("rankLab").getComponent(cc.Label).string=this.data.rank+"",this.node.getChildByName("nameLab").getComponent(cc.Label).string=this.data.name+"",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(t){console.error("Error fetching X-Info:",t)}),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,t("./GameData")),h=t("./Storage"),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.start=function(){this.Authentication()},e.prototype.Authentication=function(){var t="user_"+c.default._instance.GM_INFO.gameId,e=h.StorageMessage.getStorage(t);if("undifend"==e||null==e||""==e)console.log("\u6ca1\u7f13\u5b58"),this.setUserId(t);else{if(console.log("\u6709\u7f13\u5b58"),parseInt((new Date).getTime()/1e3+"")-e.time>86400)return console.log("\u7f13\u5b58\u8fc7\u671f"),void this.setUserId(t);c.default._instance.GM_INFO.userId=parseInt(e.userId)}},e.prototype.setUserId=function(t){if(c.default._instance.GM_INFO.userId=this.getUserId(),null==c.default._instance.GM_INFO.userId){console.log("\u94fe\u63a5\u6ca1ID\u51c6\u5907\u8df3\u8f6c");var e="http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href;window.location.href=e}else{var i=parseInt((new Date).getTime()/1e3+""),n={userId:c.default._instance.GM_INFO.userId+"",time:i};h.StorageMessage.setStorage(t,n),console.log("\u6709ID\uff1a",c.default._instance.GM_INFO.userId),c.default._instance.GM_INFO.userId=parseInt(c.default._instance.GM_INFO.userId)}},e.prototype.getUserId=function(){var t=window.location.search,e=t.split("&");if(t.length>=0&&e.length>0){var i=[];return e.map(function(t){i.push(t.split("=")[1])}),i[0]}return null},e.prototype.startGame=function(){cc.director.loadScene("GuideScene")},e.prototype.clickBtn=function(t,e){c.default._instance.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=l,cc._RF.pop()},{"./GameData":"GameData","./Storage":"Storage"}],Notification:[function(t,e,i){"use strict";cc._RF.push(e,"f2518+0IHRGOY+ueIhGtEeA","Notification"),Object.defineProperty(i,"__esModule",{value:!0}),i.Notification=void 0;i.Notification={_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("./GameData"),s=t("./ListView/List"),c=t("./crypto/serverAPI"),h=cc._decorator,l=h.ccclass,u=h.property,p=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(s.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(){c.default.rankData(2,this.getRankData.bind(this),{page:1,pageSize:100})},e.prototype.getRankData=function(t){if(t){console.log(t),this.listData=t.data.list,this.selfData=t.data.info;for(var e=[],i=!1,n=0;n<=this.listData.length-1;n++)e.push({rank:n+1,name:this.listData[n].nickName,total:this.listData[n].totalSunCount,pic:this.listData[n].pic}),a.default._instance.GM_INFO.userId==this.listData[n].userId&&(i=!0,this.rankNumber=n,this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string=n+1+""),n==this.listData.length-1&&0==i&&(this.rankNumber=n,this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string="99+");this.rankList.setData(e),this.selfData.nickName.length>6&&(this.selfData.nickName=this.selfData.nickName.substring(0,6)+"..."),this.selfNode.getChildByName("nameLab").getComponent(cc.Label).string=this.selfData.nickName,this.selfNode.getChildByName("totalLab").getComponent(cc.Label).string=this.selfData.totalSunCount,this.setPic(this.selfData.pic),"1"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string?this.selfNode.getChildByName("rank").getChildByName("one").active=!0:"2"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string?this.selfNode.getChildByName("rank").getChildByName("two").active=!0:"3"==this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string&&(this.selfNode.getChildByName("rank").getChildByName("three").active=!0),this.selfNode.opacity=255,0==this.selfData.totalSunCount&&(this.selfNode.opacity=0)}},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(t){console.error("Error fetching X-Info:",t)});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([u(cc.Node)],e.prototype,"Player",void 0),r([u(cc.Node)],e.prototype,"selfNode",void 0),r([u(cc.Sprite)],e.prototype,"phone",void 0),r([l],e)}(cc.Component);i.default=p,cc._RF.pop()},{"./GameData":"GameData","./ListView/List":"List","./crypto/serverAPI":"serverAPI"}],Shake:[function(t,e){"use strict";cc._RF.push(e,"61affD5SO9Ipo0fGmIeTFTZ","Shake"),cc.Class({extends:cc.Component,properties:{duration:0,shakeX:0,shakeY:0},shake:function(t){this.shaking||(this.callback=t,this.shaking=!0,this.dtCost=0,this.nodeInitialPos=this.node.getPosition(),this.unschedule(this.doSchedule),this.schedule(this.doSchedule,0,cc.macro.REPEAT_FOREVER,0))},doSchedule:function(t){var e=50*t,i=this.getRandomStrength(-this.shakeX,this.shakeX)*e,n=this.getRandomStrength(-this.shakeY,this.shakeY)*e;this.node.setPosition(cc.pAdd(this.nodeInitialPos,cc.v2(i,n))),this.dtCost+=t,this.dtCost>=this.duration&&(this.unschedule(this.doSchedule),this.node.setPosition(this.nodeInitialPos),this.shaking=!1,this.callback&&this.callback())},getRandomStrength:function(t,e){return Math.random()*(e-t+1)+t}}),cc._RF.pop()},{}],Storage:[function(t,e,i){"use strict";cc._RF.push(e,"7cf8cMT5zJA0ZU4Gp0JcL8v","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,t("./Notification")),h=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,c.Notification.emit("clickSun",this.id_Number)):(this.touch=!1,this.node.zIndex=-1,c.Notification.emit("clickSun",this.id_Number))):1==this.touch&&1==this.node.parent.parent.getComponent("GuideManager").begin&&(this.touch=!1,this.node.zIndex=-1,c.Notification.emit("clickSun",this.id_Number))},r([s],e)}(cc.Component);i.default=h,cc._RF.pop()},{"./Notification":"Notification"}],"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],d=t[r+2],f=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],w=t[r+10],C=t[r+11],A=t[r+12],S=t[r+13],M=t[r+14],N=t[r+15],B=h[0],x=h[1],k=h[2],I=h[3];B=e(B,x,k,I,l,7,u[0]),I=e(I,B,x,k,p,12,u[1]),k=e(k,I,B,x,d,17,u[2]),x=e(x,k,I,B,f,22,u[3]),B=e(B,x,k,I,y,7,u[4]),I=e(I,B,x,k,m,12,u[5]),k=e(k,I,B,x,g,17,u[6]),x=e(x,k,I,B,v,22,u[7]),B=e(B,x,k,I,_,7,u[8]),I=e(I,B,x,k,b,12,u[9]),k=e(k,I,B,x,w,17,u[10]),x=e(x,k,I,B,C,22,u[11]),B=e(B,x,k,I,A,7,u[12]),I=e(I,B,x,k,S,12,u[13]),k=e(k,I,B,x,M,17,u[14]),B=i(B,x=e(x,k,I,B,N,22,u[15]),k,I,p,5,u[16]),I=i(I,B,x,k,g,9,u[17]),k=i(k,I,B,x,C,14,u[18]),x=i(x,k,I,B,l,20,u[19]),B=i(B,x,k,I,m,5,u[20]),I=i(I,B,x,k,w,9,u[21]),k=i(k,I,B,x,N,14,u[22]),x=i(x,k,I,B,y,20,u[23]),B=i(B,x,k,I,b,5,u[24]),I=i(I,B,x,k,M,9,u[25]),k=i(k,I,B,x,f,14,u[26]),x=i(x,k,I,B,_,20,u[27]),B=i(B,x,k,I,S,5,u[28]),I=i(I,B,x,k,d,9,u[29]),k=i(k,I,B,x,v,14,u[30]),B=n(B,x=i(x,k,I,B,A,20,u[31]),k,I,m,4,u[32]),I=n(I,B,x,k,_,11,u[33]),k=n(k,I,B,x,C,16,u[34]),x=n(x,k,I,B,M,23,u[35]),B=n(B,x,k,I,p,4,u[36]),I=n(I,B,x,k,y,11,u[37]),k=n(k,I,B,x,v,16,u[38]),x=n(x,k,I,B,w,23,u[39]),B=n(B,x,k,I,S,4,u[40]),I=n(I,B,x,k,l,11,u[41]),k=n(k,I,B,x,f,16,u[42]),x=n(x,k,I,B,g,23,u[43]),B=n(B,x,k,I,b,4,u[44]),I=n(I,B,x,k,A,11,u[45]),k=n(k,I,B,x,N,16,u[46]),B=o(B,x=n(x,k,I,B,d,23,u[47]),k,I,l,6,u[48]),I=o(I,B,x,k,v,10,u[49]),k=o(k,I,B,x,M,15,u[50]),x=o(x,k,I,B,m,21,u[51]),B=o(B,x,k,I,A,6,u[52]),I=o(I,B,x,k,f,10,u[53]),k=o(k,I,B,x,w,15,u[54]),x=o(x,k,I,B,p,21,u[55]),B=o(B,x,k,I,_,6,u[56]),I=o(I,B,x,k,N,10,u[57]),k=o(k,I,B,x,g,15,u[58]),x=o(x,k,I,B,S,21,u[59]),B=o(B,x,k,I,y,6,u[60]),I=o(I,B,x,k,C,10,u[61]),k=o(k,I,B,x,d,15,u[62]),x=o(x,k,I,B,b,21,u[63]),h[0]=h[0]+B|0,h[1]=h[1]+x|0,h[2]=h[2]+k|0,h[3]=h[3]+I|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],d=0;d<64;d++){if(d<16)h[d]=0|t[e+d];else{var f=h[d-15],y=(f<<25|f>>>7)^(f<<14|f>>>18)^f>>>3,m=h[d-2],g=(m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10;h[d]=y+h[d-7]+g+h[d-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[d]+h[d];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]),d=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]),f=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,w,C,A,S,M,N,B,x=this._hash.words,k=m.words,I=g.words,P=p.words,D=d.words,L=f.words,O=y.words;for(C=u=x[0],A=v=x[1],S=_=x[2],M=b=x[3],N=w=x[4],c=0;c<80;c+=1)B=u+a[s+P[c]]|0,B+=c<16?t(v,_,b)+k[0]:c<32?e(v,_,b)+k[1]:c<48?i(v,_,b)+k[2]:c<64?n(v,_,b)+k[3]:o(v,_,b)+k[4],B=(B=r(B|=0,L[c]))+w|0,u=w,w=b,b=r(_,10),_=v,v=B,B=C+a[s+D[c]]|0,B+=c<16?o(A,S,M)+I[0]:c<32?n(A,S,M)+I[1]:c<48?i(A,S,M)+I[2]:c<64?e(A,S,M)+I[3]:t(A,S,M)+I[4],B=(B=r(B|=0,O[c]))+N|0,C=N,N=M,M=r(S,10),S=A,A=B;B=x[1]+_+M|0,x[1]=x[2]+b+N|0,x[2]=x[3]+w+C|0,x[3]=x[4]+u+A|0,x[4]=x[0]+v+S|0,x[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),(x=i[o]).high^=a,x.low^=r}for(var s=0;s<24;s++){for(var p=0;p<5;p++){for(var d=0,f=0,y=0;y<5;y++)d^=(x=i[p+5*y]).high,f^=x.low;var m=u[p];m.high=d,m.low=f}for(p=0;p<5;p++){var g=u[(p+4)%5],v=u[(p+1)%5],_=v.high,b=v.low;for(d=g.high^(_<<1|b>>>31),f=g.low^(b<<1|_>>>31),y=0;y<5;y++)(x=i[p+5*y]).high^=d,x.low^=f}for(var w=1;w<25;w++){var C=(x=i[w]).high,A=x.low,S=c[w];S<32?(d=C<>>32-S,f=A<>>32-S):(d=A<>>64-S,f=C<>>64-S);var M=u[h[w]];M.high=d,M.low=f}var N=u[0],B=i[0];for(N.high=B.high,N.low=B.low,p=0;p<5;p++)for(y=0;y<5;y++){var x=i[w=p+5*y],k=u[w],I=u[(p+1)%5+5*y],P=u[(p+2)%5+5*y];x.high=k.high^~I.high&P.high,x.low=k.low^~I.low&P.low}x=i[0];var D=l[s];x.high^=D.high,x.low^=D.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),d=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8),h.push(d),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],d=n.high,f=n.low,y=o.high,m=o.low,g=r.high,v=r.low,_=a.high,b=a.low,w=s.high,C=s.low,A=l.high,S=l.low,M=u.high,N=u.low,B=p.high,x=p.low,k=d,I=f,P=y,D=m,L=g,O=v,R=_,T=b,F=w,G=C,H=A,E=S,z=M,j=N,V=B,W=x,X=0;X<80;X++){var U=h[X];if(X<16)var q=U.high=0|t[e+2*X],K=U.low=0|t[e+2*X+1];else{var Y=h[X-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[X-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[X-7],at=rt.high,st=rt.low,ct=h[X-16],ht=ct.high,lt=ct.low;q=(q=(q=Q+at+((K=$+st)>>>0<$>>>0?1:0))+nt+((K+=ot)>>>0>>0?1:0))+ht+((K+=lt)>>>0>>0?1:0),U.high=q,U.low=K}var ut,pt=F&H^~F&z,dt=G&E^~G&j,ft=k&P^k&L^P&L,yt=I&D^I&O^D&O,mt=(k>>>28|I<<4)^(k<<30|I>>>2)^(k<<25|I>>>7),gt=(I>>>28|k<<4)^(I<<30|k>>>2)^(I<<25|k>>>7),vt=(F>>>14|G<<18)^(F>>>18|G<<14)^(F<<23|G>>>9),_t=(G>>>14|F<<18)^(G>>>18|F<<14)^(G<<23|F>>>9),bt=c[X],wt=bt.high,Ct=bt.low,At=V+vt+((ut=W+_t)>>>0>>0?1:0),St=gt+yt;V=z,W=j,z=H,j=E,H=F,E=G,F=R+(At=(At=(At=At+pt+((ut+=dt)>>>0

>>0?1:0))+wt+((ut+=Ct)>>>0>>0?1:0))+q+((ut+=K)>>>0>>0?1:0))+((G=T+ut|0)>>>0>>0?1:0)|0,R=L,T=O,L=P,O=D,P=k,D=I,k=At+(mt+ft+(St>>>0>>0?1:0))+((I=ut+St|0)>>>0>>0?1:0)|0}f=n.low=f+I,n.high=d+k+(f>>>0>>0?1:0),m=o.low=m+D,o.high=y+P+(m>>>0>>0?1:0),v=r.low=v+O,r.high=g+L+(v>>>0>>0?1:0),b=a.low=b+T,a.high=_+R+(b>>>0>>0?1:0),C=s.low=C+G,s.high=w+F+(C>>>0>>0?1:0),S=l.low=S+E,l.high=A+H+(S>>>0>>0?1:0),N=u.low=N+j,u.high=M+z+(N>>>0>>0?1:0),x=p.low=x+W,p.high=B+V+(x>>>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}}),d=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:d,padding:f}),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&f^99,n[i]=f,o[f]=i;var y=t[i],m=t[y],g=t[m],v=257*t[f]^16843008*f;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[f]=v<<24|v>>>8,u[f]=v<<16|v>>>16,p[f]=v<<8|v>>>24,d[f]=v,i?(i=y^t[t[t[g^y]]],s^=t[t[s]]):i=s=1}}();var f=[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^=f[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]]^d[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,d,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],d=4,f=1;f>>24]^o[l>>>16&255]^r[u>>>8&255]^a[255&p]^i[d++],m=n[l>>>24]^o[u>>>16&255]^r[p>>>8&255]^a[255&h]^i[d++],g=n[u>>>24]^o[p>>>16&255]^r[h>>>8&255]^a[255&l]^i[d++],v=n[p>>>24]^o[h>>>16&255]^r[l>>>8&255]^a[255&u]^i[d++];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[d++],m=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[p>>>8&255]<<8|s[255&h])^i[d++],g=(s[u>>>24]<<24|s[p>>>16&255]<<16|s[h>>>8&255]<<8|s[255&l])^i[d++],v=(s[p>>>24]<<24|s[h>>>16&255]<<16|s[l>>>8&255]<<8|s[255&u])^i[d++],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 d=this._lBlock;this._lBlock=this._rBlock,this._rBlock=d,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(d);var f=a.TripleDES=r.extend({_doReset:function(){var t=this._key.words;this._des1=d.createEncryptor(o.create(t.slice(0,2))),this._des2=d.createEncryptor(o.create(t.slice(2,4))),this._des3=d.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(f)}(),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()},{}],serverAPI:[function(t,e,i){"use strict";cc._RF.push(e,"98307M8uUtLYKaHXPmGgCWf","serverAPI");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},a=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())})},s=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] 86400){ - setId(); - } - } - - function setId(){ + // 存储gameid userid gameid为key userId和时间戳为value + let name = "user_" + "100009"; + var data = JSON.parse(localStorage.getItem(name)); + + if(data == "undifend" || data==null || data == ""){ + console.log("没缓存"); + setId(name); + } + else{ + console.log("有缓存"); + userId = data.userId; + let timestamp = parseInt(new Date().getTime()/1000 + ""); + if((timestamp - data.time) > 86400){ + console.log("缓存过期"); + setId(name); + } + } + function setId(name){ let userId = getUserId(); if(userId == null){ + console.log("链接没ID准备跳转"); let url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href; window.location.href = url; } else{ + console.log("链接有ID",userId); let timestamp = parseInt(new Date().getTime()/1000 + ""); - let idTemp = "gameId=" + "100009" + - "?userId= " + userId + "?time=" + timestamp; - localStorage.setItem("user",JSON.stringify(idTemp)); + let idData = { + userId: userId, + time: timestamp + } + localStorage.setItem(name,JSON.stringify(idData)); } } @@ -205,21 +209,6 @@ document.body.appendChild(domScript); } - function getId(str) { - let pathStr = str; - - let arr=pathStr.split("?"); - if (pathStr.length>= 0&&arr.length>0) { - let arr2=[]; - arr.map(item=>{ - arr2.push(item.split("=")[1]) - }) - return arr2; - } else { - return null - } - } - function getUserId() { let pathStr = window.location.search; let arr=pathStr.split("&"); @@ -228,16 +217,14 @@ arr.map(item=>{ arr2.push(item.split("=")[1]) }) - console.log("网站拿到的数据:",arr2[0]) window.userId = arr2[0] + ""; - return arr2[0]; + return arr2[0] } else { return null } } - loadScript(debug ? 'cocos2d-js.js' : 'cocos2d-js-min.js', function () { if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { loadScript(debug ? 'physics.js' : 'physics-min.js', window.boot); diff --git a/build/Sun_moves/main.js b/build/Sun_moves/main.js index a30ce0b..4f63691 100644 --- a/build/Sun_moves/main.js +++ b/build/Sun_moves/main.js @@ -13,17 +13,8 @@ window.boot = function () { // Loading splash scene var splash = document.getElementById('splash'); var star = document.getElementById('_star'); - // var progressBar = splash.querySelector('.progress-bar span'); onProgress = function (finish, total) { - // var percent = 100 * finish / total; - // if (progressBar) { - // progressBar.style.width = percent.toFixed(2) + '%'; - // } }; - // splash.style.display = 'block'; - // progressBar.style.width = '0%'; - - cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () { splash.style.display = 'none'; star.style.display = 'none'; @@ -31,11 +22,8 @@ window.boot = function () { } var onStart = function () { - - console.log(RESOURCES); cc.view.enableRetina(true); cc.view.resizeWithBrowserSize(true); - if (cc.sys.isBrowser) { setLoadingDisplay(); } diff --git a/library/imports/1f/1f9265d6-31fa-4638-be80-340517745006.json b/library/imports/1f/1f9265d6-31fa-4638-be80-340517745006.json new file mode 100644 index 0000000..8fe4ad4 --- /dev/null +++ b/library/imports/1f/1f9265d6-31fa-4638-be80-340517745006.json @@ -0,0 +1,5454 @@ +[ + { + "__type__": "cc.Prefab", + "_name": "Canvas", + "_objFlags": 0, + "_native": "", + "data": { + "__id__": 1 + }, + "optimizationPolicy": 0, + "asyncLoadAssets": false, + "readonly": false + }, + { + "__type__": "cc.Node", + "_name": "Canvas", + "_objFlags": 0, + "_parent": null, + "_children": [ + { + "__id__": 2 + }, + { + "__id__": 5 + }, + { + "__id__": 14 + }, + { + "__id__": 70 + }, + { + "__id__": 81 + }, + { + "__id__": 104 + }, + { + "__id__": 107 + }, + { + "__id__": 142 + } + ], + "_active": true, + "_components": [ + { + "__id__": 148 + }, + { + "__id__": 149 + }, + { + "__id__": 150 + } + ], + "_prefab": { + "__id__": 151 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 252, + "b": 252, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 375, + 667, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "Main Camera", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 3 + } + ], + "_prefab": { + "__id__": 4 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 252.87547223450972, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Camera", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 2 + }, + "_enabled": true, + "_cullingMask": 4294967295, + "_clearFlags": 7, + "_backgroundColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_depth": -1, + "_zoomRatio": 1, + "_targetTexture": null, + "_fov": 60, + "_orthoSize": 10, + "_nearClip": 1, + "_farClip": 4096, + "_ortho": true, + "_rect": { + "__type__": "cc.Rect", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + "_renderStages": 1, + "_alignWithScreen": true, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "97fLKw9fpLKIc0dJLpbPlR", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "background", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 6 + }, + { + "__id__": 9 + } + ], + "_active": true, + "_components": [ + { + "__id__": 12 + } + ], + "_prefab": { + "__id__": 13 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Sprite", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 7 + } + ], + "_prefab": { + "__id__": 8 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 1600, + 0, + 0, + 0, + 0, + 1, + 1, + -1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 6 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c5puxQ0Z5GMpH5c8y1917z", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Sprite", + "_objFlags": 0, + "_parent": { + "__id__": 5 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 10 + } + ], + "_prefab": { + "__id__": 11 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 1600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -1600, + 0, + 0, + 0, + 0, + 1, + 1, + -1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 9 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "6ee9vBJQ5Hs43VSXCcp0fr", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 5 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5a066d2b-05af-46c6-bf25-5848b3f2701b" + }, + "_type": 1, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "8dEBgqFXxELpmAzyYl1ZRR", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "ScrollView", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 15 + }, + { + "__id__": 22 + } + ], + "_active": true, + "_components": [ + { + "__id__": 67 + }, + { + "__id__": 20 + }, + { + "__id__": 68 + } + ], + "_prefab": { + "__id__": 69 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 174, + "g": 121, + "b": 121, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 1400 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 150, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "scrollBar", + "_objFlags": 512, + "_parent": { + "__id__": 14 + }, + "_children": [ + { + "__id__": 16 + } + ], + "_active": false, + "_components": [ + { + "__id__": 19 + }, + { + "__id__": 64 + }, + { + "__id__": 65 + } + ], + "_prefab": { + "__id__": 66 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 12, + "height": 820 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 340, + -410, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bar", + "_objFlags": 512, + "_parent": { + "__id__": 15 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 17 + } + ], + "_prefab": { + "__id__": 18 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 10, + "height": 30 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -1, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 16 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5c3bb932-6c3c-468f-88a9-c8c61d458641" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d7LA6B6L9KYrPYs9FOPGKR", + "sync": false + }, + { + "__type__": "cc.Scrollbar", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "_scrollView": { + "__id__": 20 + }, + "_touching": false, + "_opacity": 255, + "enableAutoHide": true, + "autoHideTime": 1, + "_N$handle": { + "__id__": 17 + }, + "_N$direction": 1, + "_id": "" + }, + { + "__type__": "cc.ScrollView", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "horizontal": false, + "vertical": true, + "inertia": true, + "brake": 0.75, + "elastic": true, + "bounceDuration": 0.23, + "scrollEvents": [], + "cancelInnerEvents": true, + "_N$content": { + "__id__": 21 + }, + "content": { + "__id__": 21 + }, + "_N$horizontalScrollBar": null, + "_N$verticalScrollBar": null, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "content", + "_objFlags": 512, + "_parent": { + "__id__": 22 + }, + "_children": [ + { + "__id__": 25 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 63 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 600 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "view", + "_objFlags": 512, + "_parent": { + "__id__": 14 + }, + "_children": [ + { + "__id__": 21 + } + ], + "_active": true, + "_components": [ + { + "__id__": 23 + } + ], + "_prefab": { + "__id__": 24 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 680, + "height": 700 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 1 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 22 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 0, + "_segments": 64, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "01e0xqlUVFcY0MMajauQHo", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "RankListItem", + "_objFlags": 0, + "_parent": { + "__id__": 21 + }, + "_children": [ + { + "__id__": 26 + }, + { + "__id__": 29 + }, + { + "__id__": 38 + }, + { + "__id__": 49 + }, + { + "__id__": 52 + }, + { + "__id__": 55 + }, + { + "__id__": 58 + } + ], + "_active": true, + "_components": [ + { + "__id__": 61 + } + ], + "_prefab": { + "__id__": 62 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 94 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -100, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "bg", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 27 + } + ], + "_prefab": { + "__id__": 28 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 650, + "height": 94 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 26 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "ce34c82d-a598-42b0-a77c-6a75cd29dedb" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "6eyN1+nK5HT7svNqUsa2/+", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 30 + }, + { + "__id__": 33 + } + ], + "_active": true, + "_components": [ + { + "__id__": 36 + } + ], + "_prefab": { + "__id__": 37 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -171.687, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 29 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 31 + } + ], + "_prefab": { + "__id__": 32 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 30 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "08Vcf5jRBOhLOtnEzMUku6", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 29 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 34 + } + ], + "_prefab": { + "__id__": 35 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 64, + "height": 64 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 33 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "f0DfDJ4PNDbb7lvykwzyBm", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 29 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 60, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "38W68aamJOhbnBDiSboSCF", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [ + { + "__id__": 39 + }, + { + "__id__": 42 + }, + { + "__id__": 45 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 48 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 40, + "height": 36 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -261.233, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "one", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 40 + } + ], + "_prefab": { + "__id__": 41 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 39 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "07jJ4rjvBM3K8UmWuJPTSW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 43 + } + ], + "_prefab": { + "__id__": 44 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 42 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "cf00JqB1FL4J82EdUA2X13", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 38 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 46 + } + ], + "_prefab": { + "__id__": 47 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 45 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "1beDtXl+VD86kzCArCfEPs", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "d03AAa5MpCZY7eWAmnGlia", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rankLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 50 + } + ], + "_prefab": { + "__id__": 51 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -259.131, + -2.054, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 49 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "5", + "_N$string": "5", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "de4HHWkIhExrJq1+nHHMA6", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "totalLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 53 + } + ], + "_prefab": { + "__id__": 54 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 224.356, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 52 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "4", + "_N$string": "4", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 2, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "05c46heZhJV4sYMqYyxlB5", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "nameLab", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 56 + } + ], + "_prefab": { + "__id__": 57 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 240, + "height": 27.72 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -99.704, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 55 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "测试", + "_N$string": "测试", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 0, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 1, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "2an+mxcU5ApJz+ZlYlaw5G", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 25 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 59 + } + ], + "_prefab": { + "__id__": 60 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 88, + "g": 69, + "b": 65, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 28, + "height": 35.28 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 246.176, + -2.205, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 58 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "个", + "_N$string": "个", + "_fontSize": 28, + "_lineHeight": 28, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "78MlwwIH1CYrPsut4N5MBU", + "sync": false + }, + { + "__type__": "ca0f9k0oBVDbpQC+OMNTF3m", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 25 + }, + "_enabled": true, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 25 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "55FH2q1HJAyK0hrjxGH/+q", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b21uNyrqhLbqirpS1MD+7t", + "sync": false + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "alignMode": 0, + "_target": null, + "_alignFlags": 37, + "_left": 350.07654921020657, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 237, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 15 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "5fe5dcaa-b513-4dc5-a166-573627b3a159" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7by3ovAnJLYoQqKmlhCACY", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": false, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "9bbda31e-ad49-43c9-aaf2-f7d9896bac69" + }, + "_type": 1, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "d5421HgLShFKIjj5f18m1mi", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 14 + }, + "_enabled": true, + "itemRender": { + "__id__": 25 + }, + "type": 2, + "startAxis": 2, + "spaceX": 10, + "spaceY": 10, + "padding_top": 10, + "padding_buttom": 10, + "padding_left": 10, + "_padding": 0, + "padding_right": 10, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "bdWGhni0BLgaAOrQnsfTP4", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Node", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 71 + }, + { + "__id__": 74 + }, + { + "__id__": 77 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 80 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 72 + } + ], + "_prefab": { + "__id__": 73 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 54, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -258.909, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 71 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "排名", + "_N$string": "排名", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7bzdCzsURJc4G7MwOL0Blj", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 75 + } + ], + "_prefab": { + "__id__": 76 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 108, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -48.622, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 74 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "用户昵称", + "_N$string": "用户昵称", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "517a9VdPBNUK5P35X44CpK", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 70 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 78 + } + ], + "_prefab": { + "__id__": 79 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 108, + "height": 34.02 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 223.658, + 177.468, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 77 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "驱逐太阳", + "_N$string": "驱逐太阳", + "_fontSize": 27, + "_lineHeight": 27, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "12KoCg1NRLpJU9aRF1iPkq", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "9963O/IP5CCLrawiVnAqdg", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "player", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 82 + }, + { + "__id__": 93 + } + ], + "_active": true, + "_components": [ + { + "__id__": 102 + } + ], + "_prefab": { + "__id__": 103 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 98, + "height": 106 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -254, + 377, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 81 + }, + "_children": [ + { + "__id__": 83 + }, + { + "__id__": 86 + }, + { + "__id__": 89 + } + ], + "_active": false, + "_components": [], + "_prefab": { + "__id__": 92 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 84 + } + ], + "_prefab": { + "__id__": 85 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 72, + "height": 30.24 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -42.835, + 60.883, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 83 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "超过了", + "_N$string": "超过了", + "_fontSize": 24, + "_lineHeight": 24, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "b0QUZ3hixHY4BCC7p7EwaX", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "New Label", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 87 + } + ], + "_prefab": { + "__id__": 88 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 131, + "g": 87, + "b": 16, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 48, + "height": 30.24 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 74.991, + 60.883, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 86 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "的人", + "_N$string": "的人", + "_fontSize": 24, + "_lineHeight": 24, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d3ySguqntO5bgnP95er4PW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "number", + "_objFlags": 0, + "_parent": { + "__id__": 82 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 90 + } + ], + "_prefab": { + "__id__": 91 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 51, + "b": 51, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 58.04, + "height": 36.54 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 21.936, + 61.459, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 89 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "30%", + "_N$string": "30%", + "_fontSize": 29, + "_lineHeight": 29, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 1, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "d6vzzOaCBH2JMQzL1q75Qk", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "01Wu1da3hD9qLoiu2u15Dh", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "mask", + "_objFlags": 0, + "_parent": { + "__id__": 81 + }, + "_children": [ + { + "__id__": 94 + }, + { + "__id__": 97 + } + ], + "_active": true, + "_components": [ + { + "__id__": 100 + } + ], + "_prefab": { + "__id__": 101 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 65, + "height": 65 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -0.079, + 4.153, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "phone", + "_objFlags": 0, + "_parent": { + "__id__": 93 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 95 + } + ], + "_prefab": { + "__id__": 96 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 65, + "height": 65 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 94 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a9FdZ8QGNM77omYBmm7jeP", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 93 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 98 + } + ], + "_prefab": { + "__id__": 99 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 97 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "082qUxbaNDrIu5wftUXuxE", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 93 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 64, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "15yWGxXfFKHYDj+6AKZ+hO", + "sync": false + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 81 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "594a7d19-8612-477f-b1d7-e7966a19ea84" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "777yycF4RPu7K18m/uyO1m", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "bg", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 105 + } + ], + "_prefab": { + "__id__": 106 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 750, + "height": 118 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -609, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 104 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "8cbfe9a0-914f-4e4c-807b-b073b09f267c" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "adJ7tHdodDiYvg71t3toeY", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "Self", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [ + { + "__id__": 108 + }, + { + "__id__": 117 + }, + { + "__id__": 120 + }, + { + "__id__": 131 + }, + { + "__id__": 134 + }, + { + "__id__": 137 + } + ], + "_active": true, + "_components": [ + { + "__id__": 140 + } + ], + "_prefab": { + "__id__": 141 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 0, + "height": 0 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + -667, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [ + { + "__id__": 109 + }, + { + "__id__": 112 + } + ], + "_active": true, + "_components": [ + { + "__id__": 115 + } + ], + "_prefab": { + "__id__": 116 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -171.687, + 62, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "pic", + "_objFlags": 0, + "_parent": { + "__id__": 108 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 110 + } + ], + "_prefab": { + "__id__": 111 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 109 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "f513pLQ/9KMbKpOTC4nuyz", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "icon", + "_objFlags": 0, + "_parent": { + "__id__": 108 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 113 + } + ], + "_prefab": { + "__id__": 114 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 60, + "height": 60 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 112 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "142b6dd7-9b54-4eae-bb06-301286d50978" + }, + "_type": 0, + "_sizeMode": 0, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "c8vhbkrhtGw72GydJ4enTg", + "sync": false + }, + { + "__type__": "cc.Mask", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 108 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_spriteFrame": null, + "_type": 1, + "_segments": 60, + "_N$alphaThreshold": 0, + "_N$inverted": false, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "47dNJgs3hCIZESImEUA8wi", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rankLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 118 + } + ], + "_prefab": { + "__id__": 119 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 13.9, + "height": 31.5 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -259.131, + 59.946, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 117 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "5", + "_N$string": "5", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "25WXxoGV5I/KgHBE8D1rsK", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "rank", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [ + { + "__id__": 121 + }, + { + "__id__": 124 + }, + { + "__id__": 127 + } + ], + "_active": true, + "_components": [], + "_prefab": { + "__id__": 130 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 40, + "height": 36 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -261.233, + 62, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "one", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 122 + } + ], + "_prefab": { + "__id__": 123 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 121 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "09Kg3hfzBBu6HptPpAFSW9", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 125 + } + ], + "_prefab": { + "__id__": 126 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 124 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "0dKJ2TWjFCOJ/iqhRFSLjk", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 120 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 128 + } + ], + "_prefab": { + "__id__": 129 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 127 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "1aJ6eRDI5HH7V7ePpX8123", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "1dS3urBJ1F55mw2t/Q3F7w", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "totalLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 132 + } + ], + "_prefab": { + "__id__": 133 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 16.68, + "height": 37.8 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 1, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 224.356, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 131 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "4", + "_N$string": "4", + "_fontSize": 30, + "_lineHeight": 30, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 2, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "31xa76G7lPaao3sNmpqjSI", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "nameLab", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 135 + } + ], + "_prefab": { + "__id__": 136 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 25, + "height": 31.5 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -99.704, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 134 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "我", + "_N$string": "我", + "_fontSize": 25, + "_lineHeight": 25, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 0, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "42BvS5Yl5GfY/GLeE5YQOh", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "label", + "_objFlags": 0, + "_parent": { + "__id__": 107 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 138 + } + ], + "_prefab": { + "__id__": 139 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 252, + "g": 249, + "b": 232, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 28, + "height": 35.28 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 246.176, + 59.795, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Label", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 137 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_string": "个", + "_N$string": "个", + "_fontSize": 28, + "_lineHeight": 28, + "_enableWrapText": true, + "_N$file": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_batchAsBitmap": false, + "_styleFlags": 0, + "_underlineHeight": 0, + "_N$horizontalAlign": 1, + "_N$verticalAlign": 1, + "_N$fontFamily": "Arial", + "_N$overflow": 0, + "_N$cacheMode": 1, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "7bFLMTAaRJZbZdCmLU7NlT", + "sync": false + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 107 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 4, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "02TaTwJ1tM844wDACOg8Uk", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "backBtn", + "_objFlags": 0, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 143 + }, + { + "__id__": 144 + }, + { + "__id__": 145 + } + ], + "_prefab": { + "__id__": 147 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 25, + "height": 40 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + -320.09, + 618, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 0 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "ad47f6c1-49c5-42fd-b336-e15dd376b7cb" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 9, + "_left": 42.410000000000025, + "_right": 0, + "_top": 29, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "cc.Button", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 142 + }, + "_enabled": true, + "_normalMaterial": null, + "_grayMaterial": null, + "duration": 0.1, + "zoomScale": 1.1, + "clickEvents": [ + { + "__id__": 146 + } + ], + "_N$interactable": true, + "_N$enableAutoGrayEffect": false, + "_N$transition": 3, + "transition": 3, + "_N$normalColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_N$pressedColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "pressedColor": { + "__type__": "cc.Color", + "r": 211, + "g": 211, + "b": 211, + "a": 255 + }, + "_N$hoverColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "hoverColor": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_N$disabledColor": { + "__type__": "cc.Color", + "r": 124, + "g": 124, + "b": 124, + "a": 255 + }, + "_N$normalSprite": null, + "_N$pressedSprite": null, + "pressedSprite": null, + "_N$hoverSprite": null, + "hoverSprite": null, + "_N$disabledSprite": null, + "_N$target": null, + "_id": "" + }, + { + "__type__": "cc.ClickEvent", + "target": { + "__id__": 1 + }, + "component": "", + "_componentId": "e74a999IDFOabyymZgXQIiy", + "handler": "backClick", + "customEventData": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "34+hXrhBBJUqEHHRNeqJSa", + "sync": false + }, + { + "__type__": "cc.Canvas", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "_designResolution": { + "__type__": "cc.Size", + "width": 750, + "height": 1334 + }, + "_fitWidth": false, + "_fitHeight": true, + "_id": "" + }, + { + "__type__": "cc.Widget", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "alignMode": 1, + "_target": null, + "_alignFlags": 45, + "_left": 0, + "_right": 0, + "_top": 0, + "_bottom": 0, + "_verticalCenter": 0, + "_horizontalCenter": 0, + "_isAbsLeft": true, + "_isAbsRight": true, + "_isAbsTop": true, + "_isAbsBottom": true, + "_isAbsHorizontalCenter": true, + "_isAbsVerticalCenter": true, + "_originalWidth": 0, + "_originalHeight": 0, + "_id": "" + }, + { + "__type__": "e74a999IDFOabyymZgXQIiy", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "Player": { + "__id__": 81 + }, + "selfNode": { + "__id__": 107 + }, + "phone": { + "__id__": 110 + }, + "_id": "" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "", + "sync": false + } +] \ No newline at end of file diff --git a/library/imports/2d/2d2f792f-a40c-49bb-a189-ed176a246e49.json b/library/imports/2d/2d2f792f-a40c-49bb-a189-ed176a246e49.json index 2a0394d..b440011 100644 --- a/library/imports/2d/2d2f792f-a40c-49bb-a189-ed176a246e49.json +++ b/library/imports/2d/2d2f792f-a40c-49bb-a189-ed176a246e49.json @@ -73,40 +73,42 @@ "__id__": 3 }, { - "__id__": 5 + "__id__": 6 }, { - "__id__": 11 + "__id__": 15 }, { - "__id__": 62 + "__id__": 71 }, { - "__id__": 69 + "__id__": 82 }, { - "__id__": 84 + "__id__": 105 }, { - "__id__": 86 + "__id__": 108 }, { - "__id__": 109 + "__id__": 143 } ], "_active": true, "_components": [ { - "__id__": 114 + "__id__": 149 }, { - "__id__": 115 + "__id__": 150 }, { - "__id__": 116 + "__id__": 151 } ], - "_prefab": null, + "_prefab": { + "__id__": 152 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -168,7 +170,9 @@ "__id__": 4 } ], - "_prefab": null, + "_prefab": { + "__id__": 5 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -252,6 +256,17 @@ "_alignWithScreen": true, "_id": "40YcGtOLdDr6BSLg4kOPDC" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "97fLKw9fpLKIc0dJLpbPlR", + "sync": false + }, { "__type__": "cc.Node", "_name": "background", @@ -261,19 +276,21 @@ }, "_children": [ { - "__id__": 6 + "__id__": 7 }, { - "__id__": 8 + "__id__": 10 } ], "_active": true, "_components": [ { - "__id__": 10 + "__id__": 13 } ], - "_prefab": null, + "_prefab": { + "__id__": 14 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -326,16 +343,18 @@ "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 7 + "__id__": 8 } ], - "_prefab": null, + "_prefab": { + "__id__": 9 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -388,7 +407,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 6 + "__id__": 7 }, "_enabled": true, "_materials": [ @@ -415,21 +434,34 @@ "_atlas": null, "_id": "3fB3H5tTlIlKVeuLBgN2qd" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c5puxQ0Z5GMpH5c8y1917z", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 9 + "__id__": 11 } ], - "_prefab": null, + "_prefab": { + "__id__": 12 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -482,7 +514,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 8 + "__id__": 10 }, "_enabled": true, "_materials": [ @@ -509,12 +541,23 @@ "_atlas": null, "_id": "faN5bpm8tIb40jYDjtbwXj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "6ee9vBJQ5Hs43VSXCcp0fr", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 5 + "__id__": 6 }, "_enabled": true, "_materials": [ @@ -541,6 +584,17 @@ "_atlas": null, "_id": "888hvGBMlC74RLITj4GjZH" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "8dEBgqFXxELpmAzyYl1ZRR", + "sync": false + }, { "__type__": "cc.Node", "_name": "ScrollView", @@ -550,25 +604,27 @@ }, "_children": [ { - "__id__": 12 + "__id__": 16 }, { - "__id__": 18 + "__id__": 23 } ], "_active": true, "_components": [ { - "__id__": 60 + "__id__": 68 }, { - "__id__": 16 + "__id__": 21 }, { - "__id__": 61 + "__id__": 69 } ], - "_prefab": null, + "_prefab": { + "__id__": 70 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -621,26 +677,28 @@ "_name": "scrollBar", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 13 + "__id__": 17 } ], "_active": false, "_components": [ { - "__id__": 15 + "__id__": 20 }, { - "__id__": 58 + "__id__": 65 }, { - "__id__": 59 + "__id__": 66 } ], - "_prefab": null, + "_prefab": { + "__id__": 67 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -693,16 +751,18 @@ "_name": "bar", "_objFlags": 512, "_parent": { - "__id__": 12 + "__id__": 16 }, "_children": [], "_active": true, "_components": [ { - "__id__": 14 + "__id__": 18 } ], - "_prefab": null, + "_prefab": { + "__id__": 19 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -755,7 +815,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 13 + "__id__": 17 }, "_enabled": true, "_materials": [ @@ -782,23 +842,34 @@ "_atlas": null, "_id": "3c5hqDysBEP4STnJxq6+Kh" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d7LA6B6L9KYrPYs9FOPGKR", + "sync": false + }, { "__type__": "cc.Scrollbar", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_scrollView": { - "__id__": 16 + "__id__": 21 }, "_touching": false, "_opacity": 255, "enableAutoHide": true, "autoHideTime": 1, "_N$handle": { - "__id__": 14 + "__id__": 18 }, "_N$direction": 1, "_id": "96ZRZ1fLtOo4EwcQEvfvZQ" @@ -808,7 +879,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "horizontal": false, @@ -820,10 +891,10 @@ "scrollEvents": [], "cancelInnerEvents": true, "_N$content": { - "__id__": 17 + "__id__": 22 }, "content": { - "__id__": 17 + "__id__": 22 }, "_N$horizontalScrollBar": null, "_N$verticalScrollBar": null, @@ -834,16 +905,18 @@ "_name": "content", "_objFlags": 512, "_parent": { - "__id__": 18 + "__id__": 23 }, "_children": [ { - "__id__": 20 + "__id__": 26 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 64 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -896,20 +969,22 @@ "_name": "view", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 17 + "__id__": 22 } ], "_active": true, "_components": [ { - "__id__": 19 + "__id__": 24 } ], - "_prefab": null, + "_prefab": { + "__id__": 25 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -962,7 +1037,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 18 + "__id__": 23 }, "_enabled": true, "_materials": [ @@ -977,44 +1052,55 @@ "_N$inverted": false, "_id": "26KueHItNK14Rh/HjkmD9I" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01e0xqlUVFcY0MMajauQHo", + "sync": false + }, { "__type__": "cc.Node", "_name": "RankListItem", "_objFlags": 0, "_parent": { - "__id__": 17 + "__id__": 22 }, "_children": [ { - "__id__": 21 + "__id__": 27 }, { - "__id__": 24 + "__id__": 30 }, { - "__id__": 33 - }, - { - "__id__": 44 - }, - { - "__id__": 47 + "__id__": 39 }, { "__id__": 50 }, { "__id__": 53 + }, + { + "__id__": 56 + }, + { + "__id__": 59 } ], "_active": true, "_components": [ { - "__id__": 56 + "__id__": 62 } ], "_prefab": { - "__id__": 57 + "__id__": 63 }, "_opacity": 255, "_color": { @@ -1068,17 +1154,17 @@ "_name": "bg", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 22 + "__id__": 28 } ], "_prefab": { - "__id__": 23 + "__id__": 29 }, "_opacity": 255, "_color": { @@ -1132,7 +1218,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 21 + "__id__": 27 }, "_enabled": true, "_materials": [ @@ -1164,7 +1250,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1177,24 +1263,24 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ { - "__id__": 25 + "__id__": 31 }, { - "__id__": 28 + "__id__": 34 } ], "_active": true, "_components": [ { - "__id__": 31 + "__id__": 37 } ], "_prefab": { - "__id__": 32 + "__id__": 38 }, "_opacity": 255, "_color": { @@ -1248,17 +1334,17 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": true, "_components": [ { - "__id__": 26 + "__id__": 32 } ], "_prefab": { - "__id__": 27 + "__id__": 33 }, "_opacity": 255, "_color": { @@ -1312,7 +1398,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 25 + "__id__": 31 }, "_enabled": true, "_materials": [ @@ -1342,7 +1428,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1355,17 +1441,17 @@ "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": false, "_components": [ { - "__id__": 29 + "__id__": 35 } ], "_prefab": { - "__id__": 30 + "__id__": 36 }, "_opacity": 255, "_color": { @@ -1419,7 +1505,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 28 + "__id__": 34 }, "_enabled": true, "_materials": [ @@ -1449,7 +1535,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1462,7 +1548,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 24 + "__id__": 30 }, "_enabled": true, "_materials": [ @@ -1480,7 +1566,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1493,23 +1579,23 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ - { - "__id__": 34 - }, - { - "__id__": 37 - }, { "__id__": 40 + }, + { + "__id__": 43 + }, + { + "__id__": 46 } ], "_active": true, "_components": [], "_prefab": { - "__id__": 43 + "__id__": 49 }, "_opacity": 255, "_color": { @@ -1563,226 +1649,8 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 35 - } - ], - "_prefab": { - "__id__": 36 - }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "34MaLWCWxBHoY//3pYJXcH" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 34 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "81Vy6ELJROcJi8tTw2Qjb5" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "07jJ4rjvBM3K8UmWuJPTSW", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "two", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 38 - } - ], - "_prefab": { "__id__": 39 }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "84qKc8CKlOI522xR39xkzA" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 37 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "9b7R4QlpVKqqTMybq9FiqI" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "cf00JqB1FL4J82EdUA2X13", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "three", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, "_children": [], "_active": false, "_components": [ @@ -1838,7 +1706,7 @@ "_is3DNode": false, "_groupIndex": 0, "groupIndex": 0, - "_id": "9166Yb071H1Zr8Ui2B+hsT" + "_id": "34MaLWCWxBHoY//3pYJXcH" }, { "__type__": "cc.Sprite", @@ -1855,6 +1723,224 @@ ], "_srcBlendFactor": 770, "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "81Vy6ELJROcJi8tTw2Qjb5" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "07jJ4rjvBM3K8UmWuJPTSW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 45 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "84qKc8CKlOI522xR39xkzA" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 43 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "9b7R4QlpVKqqTMybq9FiqI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "cf00JqB1FL4J82EdUA2X13", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 47 + } + ], + "_prefab": { + "__id__": 48 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "9166Yb071H1Zr8Ui2B+hsT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, "_spriteFrame": { "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" }, @@ -1877,7 +1963,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1888,7 +1974,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1901,17 +1987,17 @@ "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 45 + "__id__": 51 } ], "_prefab": { - "__id__": 46 + "__id__": 52 }, "_opacity": 255, "_color": { @@ -1965,7 +2051,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 44 + "__id__": 50 }, "_enabled": true, "_materials": [ @@ -1996,7 +2082,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2009,17 +2095,17 @@ "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 48 + "__id__": 54 } ], "_prefab": { - "__id__": 49 + "__id__": 55 }, "_opacity": 255, "_color": { @@ -2073,7 +2159,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 47 + "__id__": 53 }, "_enabled": true, "_materials": [ @@ -2104,7 +2190,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2117,17 +2203,17 @@ "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 51 + "__id__": 57 } ], "_prefab": { - "__id__": 52 + "__id__": 58 }, "_opacity": 255, "_color": { @@ -2181,7 +2267,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 50 + "__id__": 56 }, "_enabled": true, "_materials": [ @@ -2212,7 +2298,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2225,17 +2311,17 @@ "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 54 + "__id__": 60 } ], "_prefab": { - "__id__": 55 + "__id__": 61 }, "_opacity": 255, "_color": { @@ -2289,7 +2375,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 53 + "__id__": 59 }, "_enabled": true, "_materials": [ @@ -2320,7 +2406,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2333,7 +2419,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 20 + "__id__": 26 }, "_enabled": true, "_id": "c1c+DMgdRG3q56NuEbVYb0" @@ -2341,7 +2427,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2349,12 +2435,23 @@ "fileId": "55FH2q1HJAyK0hrjxGH/+q", "sync": false }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b21uNyrqhLbqirpS1MD+7t", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "alignMode": 0, @@ -2381,7 +2478,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_materials": [ @@ -2408,12 +2505,23 @@ "_atlas": null, "_id": "18yu9m8C1KVImpGMQfBH6e" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7by3ovAnJLYoQqKmlhCACY", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": false, "_materials": [ @@ -2445,11 +2553,11 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "itemRender": { - "__id__": 20 + "__id__": 26 }, "type": 2, "startAxis": 2, @@ -2462,6 +2570,17 @@ "padding_right": 10, "_id": "5eHjeDnZlKvI3Vhx1nh5nF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "bdWGhni0BLgaAOrQnsfTP4", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Node", @@ -2471,18 +2590,20 @@ }, "_children": [ { - "__id__": 63 + "__id__": 72 }, { - "__id__": 65 + "__id__": 75 }, { - "__id__": 67 + "__id__": 78 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 81 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2535,16 +2656,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 64 + "__id__": 73 } ], - "_prefab": null, + "_prefab": { + "__id__": 74 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2597,7 +2720,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 63 + "__id__": 72 }, "_enabled": true, "_materials": [ @@ -2625,21 +2748,34 @@ "_N$cacheMode": 0, "_id": "8fbqxr8WlF+4EtfRkmqVmB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bzdCzsURJc4G7MwOL0Blj", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 66 + "__id__": 76 } ], - "_prefab": null, + "_prefab": { + "__id__": 77 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2692,7 +2828,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 65 + "__id__": 75 }, "_enabled": true, "_materials": [ @@ -2720,21 +2856,34 @@ "_N$cacheMode": 0, "_id": "0f+OS1A5VBkY5x0F5RYDoj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "517a9VdPBNUK5P35X44CpK", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 68 + "__id__": 79 } ], - "_prefab": null, + "_prefab": { + "__id__": 80 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2787,7 +2936,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 67 + "__id__": 78 }, "_enabled": true, "_materials": [ @@ -2815,6 +2964,28 @@ "_N$cacheMode": 0, "_id": "66yy55ZIJLOajbzHnk0Pyq" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "12KoCg1NRLpJU9aRF1iPkq", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "9963O/IP5CCLrawiVnAqdg", + "sync": false + }, { "__type__": "cc.Node", "_name": "player", @@ -2824,19 +2995,21 @@ }, "_children": [ { - "__id__": 70 + "__id__": 83 }, { - "__id__": 77 + "__id__": 94 } ], "_active": true, "_components": [ { - "__id__": 83 + "__id__": 103 } ], - "_prefab": null, + "_prefab": { + "__id__": 104 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2889,22 +3062,24 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 71 + "__id__": 84 }, { - "__id__": 73 + "__id__": 87 }, { - "__id__": 75 + "__id__": 90 } ], "_active": false, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 93 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2957,16 +3132,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 72 + "__id__": 85 } ], - "_prefab": null, + "_prefab": { + "__id__": 86 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3019,7 +3196,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 71 + "__id__": 84 }, "_enabled": true, "_materials": [ @@ -3047,21 +3224,34 @@ "_N$cacheMode": 0, "_id": "daHyJzw/xLho0dlbkuPHvm" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b0QUZ3hixHY4BCC7p7EwaX", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 74 + "__id__": 88 } ], - "_prefab": null, + "_prefab": { + "__id__": 89 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3114,7 +3304,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 73 + "__id__": 87 }, "_enabled": true, "_materials": [ @@ -3142,21 +3332,34 @@ "_N$cacheMode": 0, "_id": "5bSRJmjgtCUrA2vxudA4QN" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d3ySguqntO5bgnP95er4PW", + "sync": false + }, { "__type__": "cc.Node", "_name": "number", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 76 + "__id__": 91 } ], - "_prefab": null, + "_prefab": { + "__id__": 92 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3209,7 +3412,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 75 + "__id__": 90 }, "_enabled": true, "_materials": [ @@ -3237,28 +3440,52 @@ "_N$cacheMode": 0, "_id": "4ejvYL3kxDzq6r/YHZLUuV" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d6vzzOaCBH2JMQzL1q75Qk", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01Wu1da3hD9qLoiu2u15Dh", + "sync": false + }, { "__type__": "cc.Node", "_name": "mask", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 78 + "__id__": 95 }, { - "__id__": 80 + "__id__": 98 } ], "_active": true, "_components": [ { - "__id__": 82 + "__id__": 101 } ], - "_prefab": null, + "_prefab": { + "__id__": 102 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3311,16 +3538,18 @@ "_name": "phone", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 79 + "__id__": 96 } ], - "_prefab": null, + "_prefab": { + "__id__": 97 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3373,7 +3602,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 78 + "__id__": 95 }, "_enabled": true, "_materials": [ @@ -3400,21 +3629,34 @@ "_atlas": null, "_id": "e5IQcGfCFLqoqf/wuxBYOY" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "a9FdZ8QGNM77omYBmm7jeP", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 81 + "__id__": 99 } ], - "_prefab": null, + "_prefab": { + "__id__": 100 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3467,7 +3709,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 80 + "__id__": 98 }, "_enabled": true, "_materials": [ @@ -3494,12 +3736,23 @@ "_atlas": null, "_id": "01l/YIk+JMKblUfKTyfTVO" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "082qUxbaNDrIu5wftUXuxE", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 77 + "__id__": 94 }, "_enabled": true, "_materials": [ @@ -3514,12 +3767,23 @@ "_N$inverted": false, "_id": "237hnicvNDF57wjWEhMu97" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "15yWGxXfFKHYDj+6AKZ+hO", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 69 + "__id__": 82 }, "_enabled": true, "_materials": [ @@ -3546,6 +3810,17 @@ "_atlas": null, "_id": "c3I2fvdkFB9I3xv3zy8H3C" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "777yycF4RPu7K18m/uyO1m", + "sync": false + }, { "__type__": "cc.Node", "_name": "bg", @@ -3557,10 +3832,12 @@ "_active": true, "_components": [ { - "__id__": 85 + "__id__": 106 } ], - "_prefab": null, + "_prefab": { + "__id__": 107 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3613,7 +3890,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 84 + "__id__": 105 }, "_enabled": true, "_materials": [ @@ -3642,6 +3919,17 @@ }, "_id": "3cEUZF+3RNUYwTQQpf9d/W" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "adJ7tHdodDiYvg71t3toeY", + "sync": false + }, { "__type__": "cc.Node", "_name": "Self", @@ -3651,31 +3939,33 @@ }, "_children": [ { - "__id__": 87 + "__id__": 109 }, { - "__id__": 93 + "__id__": 118 }, { - "__id__": 95 + "__id__": 121 }, { - "__id__": 102 + "__id__": 132 }, { - "__id__": 104 + "__id__": 135 }, { - "__id__": 106 + "__id__": 138 } ], "_active": true, "_components": [ { - "__id__": 108 + "__id__": 141 } ], - "_prefab": null, + "_prefab": { + "__id__": 142 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3728,23 +4018,25 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 88 + "__id__": 110 }, { - "__id__": 90 + "__id__": 113 } ], "_active": true, "_components": [ { - "__id__": 92 + "__id__": 116 } ], - "_prefab": null, + "_prefab": { + "__id__": 117 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3797,16 +4089,18 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 89 + "__id__": 111 } ], - "_prefab": null, + "_prefab": { + "__id__": 112 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3859,7 +4153,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 88 + "__id__": 110 }, "_enabled": true, "_materials": [ @@ -3886,21 +4180,34 @@ "_atlas": null, "_id": "0eYZNHU9lK5Z0d0kmu6v2F" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "f513pLQ/9KMbKpOTC4nuyz", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 91 + "__id__": 114 } ], - "_prefab": null, + "_prefab": { + "__id__": 115 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3953,7 +4260,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 90 + "__id__": 113 }, "_enabled": true, "_materials": [ @@ -3980,12 +4287,23 @@ "_atlas": null, "_id": "79BxLIwZdOjIPk+JbpAeFu" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c8vhbkrhtGw72GydJ4enTg", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 87 + "__id__": 109 }, "_enabled": true, "_materials": [ @@ -4000,21 +4318,34 @@ "_N$inverted": false, "_id": "6fiuDWjOBCBLIM3SAArXZT" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "47dNJgs3hCIZESImEUA8wi", + "sync": false + }, { "__type__": "cc.Node", "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 94 + "__id__": 119 } ], - "_prefab": null, + "_prefab": { + "__id__": 120 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4067,7 +4398,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 93 + "__id__": 118 }, "_enabled": true, "_materials": [ @@ -4095,27 +4426,40 @@ "_N$cacheMode": 1, "_id": "f4PjLXFaJKY7WwqSqZK1UD" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "25WXxoGV5I/KgHBE8D1rsK", + "sync": false + }, { "__type__": "cc.Node", "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 96 + "__id__": 122 }, { - "__id__": 98 + "__id__": 125 }, { - "__id__": 100 + "__id__": 128 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 131 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4168,16 +4512,18 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 97 + "__id__": 123 } ], - "_prefab": null, + "_prefab": { + "__id__": 124 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4230,7 +4576,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 96 + "__id__": 122 }, "_enabled": true, "_materials": [ @@ -4259,21 +4605,34 @@ }, "_id": "9fZk18R5pFzpXsHYRZLIyB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "09Kg3hfzBBu6HptPpAFSW9", + "sync": false + }, { "__type__": "cc.Node", "_name": "two", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 99 + "__id__": 126 } ], - "_prefab": null, + "_prefab": { + "__id__": 127 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4326,7 +4685,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 98 + "__id__": 125 }, "_enabled": true, "_materials": [ @@ -4355,21 +4714,34 @@ }, "_id": "bcmZsyS4BDw7p0EU0wLam9" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "0dKJ2TWjFCOJ/iqhRFSLjk", + "sync": false + }, { "__type__": "cc.Node", "_name": "three", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 101 + "__id__": 129 } ], - "_prefab": null, + "_prefab": { + "__id__": 130 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4422,7 +4794,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 100 + "__id__": 128 }, "_enabled": true, "_materials": [ @@ -4451,21 +4823,45 @@ }, "_id": "7d/VdpTjhGQZaLUUl7Uh/+" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1aJ6eRDI5HH7V7ePpX8123", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1dS3urBJ1F55mw2t/Q3F7w", + "sync": false + }, { "__type__": "cc.Node", "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 103 + "__id__": 133 } ], - "_prefab": null, + "_prefab": { + "__id__": 134 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4518,7 +4914,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 102 + "__id__": 132 }, "_enabled": true, "_materials": [ @@ -4546,21 +4942,34 @@ "_N$cacheMode": 1, "_id": "0ckqDgb/BOnqmrI+CX+7LF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "31xa76G7lPaao3sNmpqjSI", + "sync": false + }, { "__type__": "cc.Node", "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 105 + "__id__": 136 } ], - "_prefab": null, + "_prefab": { + "__id__": 137 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4613,7 +5022,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 104 + "__id__": 135 }, "_enabled": true, "_materials": [ @@ -4641,21 +5050,34 @@ "_N$cacheMode": 1, "_id": "f1wOeDKU5ID6PNtDXFhMnG" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "42BvS5Yl5GfY/GLeE5YQOh", + "sync": false + }, { "__type__": "cc.Node", "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 107 + "__id__": 139 } ], - "_prefab": null, + "_prefab": { + "__id__": 140 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4708,7 +5130,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 106 + "__id__": 138 }, "_enabled": true, "_materials": [ @@ -4736,12 +5158,23 @@ "_N$cacheMode": 1, "_id": "8f59Obe2BI3okn2hSUf1uI" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bFLMTAaRJZbZdCmLU7NlT", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 86 + "__id__": 108 }, "_enabled": true, "alignMode": 1, @@ -4763,6 +5196,17 @@ "_originalHeight": 0, "_id": "d3X22XFMBBOqWuJHIN1DzL" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "02TaTwJ1tM844wDACOg8Uk", + "sync": false + }, { "__type__": "cc.Node", "_name": "backBtn", @@ -4774,16 +5218,18 @@ "_active": true, "_components": [ { - "__id__": 110 + "__id__": 144 }, { - "__id__": 111 + "__id__": 145 }, { - "__id__": 112 + "__id__": 146 } ], - "_prefab": null, + "_prefab": { + "__id__": 148 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4836,7 +5282,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_materials": [ @@ -4868,7 +5314,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "alignMode": 1, @@ -4895,7 +5341,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_normalMaterial": null, @@ -4904,7 +5350,7 @@ "zoomScale": 1.1, "clickEvents": [ { - "__id__": 113 + "__id__": 147 } ], "_N$interactable": true, @@ -4972,6 +5418,17 @@ "handler": "backClick", "customEventData": "" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "34+hXrhBBJUqEHHRNeqJSa", + "sync": false + }, { "__type__": "cc.Canvas", "_name": "", @@ -5025,14 +5482,25 @@ }, "_enabled": true, "Player": { - "__id__": 69 + "__id__": 82 }, "selfNode": { - "__id__": 86 + "__id__": 108 }, "phone": { - "__id__": 89 + "__id__": 111 }, "_id": "81Iy69gIdCtp0UzAUPZ1+M" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "", + "sync": false } ] \ No newline at end of file diff --git a/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js b/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js index fdf87c3..11a2bf2 100644 --- a/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js +++ b/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js @@ -68,9 +68,9 @@ var NewClass = /** @class */ (function (_super) { if (type != 0) _this.custom = 2; if (_this.custom == 2) - _this.createSun1(); + _this.createSun(true); else if (_this.custom == 3) - _this.createSun2(); + _this.createSun(false); else if (_this.custom == 4) _this.begin = true; else if (_this.custom == 5) diff --git a/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js.map b/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js.map index ae3c949..a7a6672 100644 --- a/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js.map +++ b/library/imports/3f/3fd2f87a-bc73-4978-8494-8b35b4f716ad.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\GuideManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["//此页面为引导页面,后续更新成模板,暂时偷懒复制主游戏场景代码进来\r\nimport GameData from './GameData';\r\nimport { Notification } from './Notification';\r\nconst {ccclass, property} = cc._decorator;\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n // LIFE-CYCLE CALLBACKS:\r\n @property(cc.Node)\r\n dialog: cc.Node = null;\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 linePrefab: cc.Prefab = null;\r\n clickNow:number;\r\n custom: number;\r\n Pos_Array: any;\r\n ball_Array: any;\r\n begin: boolean;\r\n tip: cc.Node;\r\n // onLoad () {}\r\n\r\n start () {\r\n GameData._instance.GM_INFO.custom = 0;\r\n this.init();\r\n this.startGuide(0);\r\n }\r\n //初始化数据\r\n init(){\r\n this.custom = 1;\r\n this.ball.zIndex = 100;\r\n this.Pos_Array = [];\r\n this.ball_Array = [];\r\n this.begin = false;\r\n this.clickNow = 0;\r\n this.tip = null;\r\n }\r\n //开始引导方法\r\n startGuide(type){\r\n let num = this.custom;\r\n let time = 0.5;\r\n let name = \"tip\" + num;\r\n if(type!=0){\r\n cc.tween(this.node)\r\n .to(time,{opacity:255})\r\n .call(() =>{\r\n this.custom += 1;\r\n if(type != 0) this.custom = 2;\r\n if( this.custom == 2) this.createSun1();\r\n else if( this.custom == 3) this.createSun2();\r\n else if( this.custom == 4) this.begin = true;\r\n else if( this.custom == 5) cc.director.loadScene(\"GameScene\");\r\n })\r\n .start();\r\n }\r\n else{\r\n this.tip = this.dialog.getChildByName(name);\r\n this.tip.active = true; this.tip.opacity = 0;\r\n cc.tween(this.tip)\r\n .to(time,{opacity:255})\r\n .start();\r\n }\r\n }\r\n //清除所有太阳\r\n beginClick(){\r\n for(let i=0; i{\r\n this.custom += 1;\r\n if( this.custom == 2) this.createSun(true);\r\n else if( this.custom == 3) this.createSun(false);\r\n else if( this.custom == 4) this.begin = true;\r\n else if( this.custom == 5) cc.director.loadScene(\"GameScene\");\r\n\r\n })\r\n .start();\r\n }\r\n //创建太阳\r\n createSun(type){\r\n if(type == true){\r\n this.ball_Array = [];\r\n this.Pos_Array.push(cc.v2(-250,-216),cc.v2(200,-115),cc.v2(-35,-500));\r\n let time1 = this.calculateDistance(this.ball.x,this.ball.y,this.Pos_Array[0].x,this.Pos_Array[0].y)\r\n this.ball.opacity = 0;\r\n cc.tween(this.ball)\r\n .to(time1,{position:this.Pos_Array[0]})\r\n .call(() =>{\r\n this.createBall(0,0,0,false);\r\n })\r\n .delay(1)\r\n .call(() =>{\r\n this.startGuide(0);\r\n })\r\n .start();\r\n }\r\n else{\r\n let time2 = this.calculateDistance(this.Pos_Array[0].x,this.Pos_Array[0].y,this.Pos_Array[1].x,this.Pos_Array[1].y)\r\n let time3 = this.calculateDistance(this.Pos_Array[1].x,this.Pos_Array[1].y,this.Pos_Array[2].x,this.Pos_Array[2].y)\r\n this.ball.opacity = 255;\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.Pos_Array[1].x,this.Pos_Array[1].y),\r\n 0.5);\r\n cc.tween(this.ball)\r\n .to(time2,{position:this.Pos_Array[1]})\r\n .call(() =>{\r\n this.createBall(1,0,0,false);\r\n })\r\n .delay(0.5)\r\n .call(() =>{\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.Pos_Array[2].x,this.Pos_Array[2].y),\r\n 0.5);\r\n })\r\n .to(time3,{position:this.Pos_Array[2]})\r\n .call(() =>{\r\n this.createBall(2,0,0,false);\r\n this.ball.opacity = 0;\r\n })\r\n .delay(0.2)\r\n .call(() =>{\r\n this.destroyLine();\r\n this.startGuide(0);\r\n })\r\n .start();\r\n }\r\n\r\n }\r\n //创建太阳\r\n createBall(number,color,speed,repeat){\r\n let ball = null;\r\n ball = cc.instantiate(this.qiu1);\r\n ball.parent = this.node.getChildByName(\"Sun\");\r\n ball.zIndex = this.Pos_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 ball.getComponent(\"Sun\").move = true;\r\n this.ball_Array.push(ball);\r\n }\r\n //获取两点之间角度创建连线用\r\n calculateDistance(x1, y1, x2, y2) {\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 > 800) distance = 800;\r\n const time = distance/800 * 0.8;\r\n return time;\r\n }\r\n\r\n //引导成功\r\n passLevel(){\r\n let win = this.node.getChildByName(\"Win\");\r\n win.active = true; win.setScale(0);\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.6)\r\n .call(() =>{\r\n win.active = false;\r\n setTimeout(() => {\r\n this.destroyLine();\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);\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 this.ball.active = false;\r\n this.startGuide(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 }, 400);\r\n })\r\n .start();\r\n }\r\n //点击太阳执行方法\r\n clickSun(data){\r\n if(this.begin == true){\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += 1;\r\n setTimeout(() => {\r\n if(this.ball_Array[this.clickNow-1])\r\n this.ball_Array[this.clickNow-1].getChildByName(\"guang\").active = false;\r\n }, 200);\r\n if(this.clickNow == 3){\r\n this.passLevel();\r\n }\r\n }\r\n else{\r\n this.loseLevel();\r\n }\r\n }\r\n }\r\n //失败事件\r\n loseLevel(){\r\n this.begin = false;\r\n GameData._instance.AudioManager.playWarning();\r\n this.destroyLine();\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(0.6,{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 = 0;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n this.clearSun();\r\n this.custom = 1;\r\n this.startGuide(1);\r\n }\r\n })\r\n .start()\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 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 this.ball_Array = [];\r\n }\r\n //获取时间戳\r\n getTime(){\r\n const timestamp = new Date().getTime();\r\n return timestamp;\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 \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 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 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 onEnable () {\r\n Notification.on(\"clickSun\", this.clickSun, this);\r\n }\r\n onDisable () {\r\n Notification.off(\"clickSun\", this.clickSun);\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\GuideManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["//此页面为引导页面,后续更新成模板,暂时偷懒复制主游戏场景代码进来\r\nimport GameData from './GameData';\r\nimport { Notification } from './Notification';\r\nconst {ccclass, property} = cc._decorator;\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n // LIFE-CYCLE CALLBACKS:\r\n @property(cc.Node)\r\n dialog: cc.Node = null;\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 linePrefab: cc.Prefab = null;\r\n clickNow:number;\r\n custom: number;\r\n Pos_Array: any;\r\n ball_Array: any;\r\n begin: boolean;\r\n tip: cc.Node;\r\n // onLoad () {}\r\n\r\n start () {\r\n GameData._instance.GM_INFO.custom = 0;\r\n this.init();\r\n this.startGuide(0);\r\n }\r\n //初始化数据\r\n init(){\r\n this.custom = 1;\r\n this.ball.zIndex = 100;\r\n this.Pos_Array = [];\r\n this.ball_Array = [];\r\n this.begin = false;\r\n this.clickNow = 0;\r\n this.tip = null;\r\n }\r\n //开始引导方法\r\n startGuide(type){\r\n let num = this.custom;\r\n let time = 0.5;\r\n let name = \"tip\" + num;\r\n if(type!=0){\r\n cc.tween(this.node)\r\n .to(time,{opacity:255})\r\n .call(() =>{\r\n this.custom += 1;\r\n if(type != 0) this.custom = 2;\r\n if( this.custom == 2) this.createSun(true);\r\n else if( this.custom == 3) this.createSun(false);\r\n else if( this.custom == 4) this.begin = true;\r\n else if( this.custom == 5) cc.director.loadScene(\"GameScene\");\r\n })\r\n .start();\r\n }\r\n else{\r\n this.tip = this.dialog.getChildByName(name);\r\n this.tip.active = true; this.tip.opacity = 0;\r\n cc.tween(this.tip)\r\n .to(time,{opacity:255})\r\n .start();\r\n }\r\n }\r\n //清除所有太阳\r\n beginClick(){\r\n for(let i=0; i{\r\n this.custom += 1;\r\n if( this.custom == 2) this.createSun(true);\r\n else if( this.custom == 3) this.createSun(false);\r\n else if( this.custom == 4) this.begin = true;\r\n else if( this.custom == 5) cc.director.loadScene(\"GameScene\");\r\n\r\n })\r\n .start();\r\n }\r\n //创建太阳\r\n createSun(type){\r\n if(type == true){\r\n this.ball_Array = [];\r\n this.Pos_Array.push(cc.v2(-250,-216),cc.v2(200,-115),cc.v2(-35,-500));\r\n let time1 = this.calculateDistance(this.ball.x,this.ball.y,this.Pos_Array[0].x,this.Pos_Array[0].y)\r\n this.ball.opacity = 0;\r\n cc.tween(this.ball)\r\n .to(time1,{position:this.Pos_Array[0]})\r\n .call(() =>{\r\n this.createBall(0,0,0,false);\r\n })\r\n .delay(1)\r\n .call(() =>{\r\n this.startGuide(0);\r\n })\r\n .start();\r\n }\r\n else{\r\n let time2 = this.calculateDistance(this.Pos_Array[0].x,this.Pos_Array[0].y,this.Pos_Array[1].x,this.Pos_Array[1].y)\r\n let time3 = this.calculateDistance(this.Pos_Array[1].x,this.Pos_Array[1].y,this.Pos_Array[2].x,this.Pos_Array[2].y)\r\n this.ball.opacity = 255;\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.Pos_Array[1].x,this.Pos_Array[1].y),\r\n 0.5);\r\n cc.tween(this.ball)\r\n .to(time2,{position:this.Pos_Array[1]})\r\n .call(() =>{\r\n this.createBall(1,0,0,false);\r\n })\r\n .delay(0.5)\r\n .call(() =>{\r\n this.createLine(cc.v2(this.ball.x,this.ball.y),cc.v2(this.Pos_Array[2].x,this.Pos_Array[2].y),\r\n 0.5);\r\n })\r\n .to(time3,{position:this.Pos_Array[2]})\r\n .call(() =>{\r\n this.createBall(2,0,0,false);\r\n this.ball.opacity = 0;\r\n })\r\n .delay(0.2)\r\n .call(() =>{\r\n this.destroyLine();\r\n this.startGuide(0);\r\n })\r\n .start();\r\n }\r\n\r\n }\r\n //创建太阳\r\n createBall(number,color,speed,repeat){\r\n let ball = null;\r\n ball = cc.instantiate(this.qiu1);\r\n ball.parent = this.node.getChildByName(\"Sun\");\r\n ball.zIndex = this.Pos_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 ball.getComponent(\"Sun\").move = true;\r\n this.ball_Array.push(ball);\r\n }\r\n //获取两点之间角度创建连线用\r\n calculateDistance(x1, y1, x2, y2) {\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 > 800) distance = 800;\r\n const time = distance/800 * 0.8;\r\n return time;\r\n }\r\n\r\n //引导成功\r\n passLevel(){\r\n let win = this.node.getChildByName(\"Win\");\r\n win.active = true; win.setScale(0);\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.6)\r\n .call(() =>{\r\n win.active = false;\r\n setTimeout(() => {\r\n this.destroyLine();\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);\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 this.ball.active = false;\r\n this.startGuide(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 }, 400);\r\n })\r\n .start();\r\n }\r\n //点击太阳执行方法\r\n clickSun(data){\r\n if(this.begin == true){\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += 1;\r\n setTimeout(() => {\r\n if(this.ball_Array[this.clickNow-1])\r\n this.ball_Array[this.clickNow-1].getChildByName(\"guang\").active = false;\r\n }, 200);\r\n if(this.clickNow == 3){\r\n this.passLevel();\r\n }\r\n }\r\n else{\r\n this.loseLevel();\r\n }\r\n }\r\n }\r\n //失败事件\r\n loseLevel(){\r\n this.begin = false;\r\n GameData._instance.AudioManager.playWarning();\r\n this.destroyLine();\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(0.6,{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 = 0;\r\n this.ball.position = cc.v3(ball.x,ball.y,0);\r\n this.clearSun();\r\n this.custom = 1;\r\n this.startGuide(1);\r\n }\r\n })\r\n .start()\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 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 this.ball_Array = [];\r\n }\r\n //获取时间戳\r\n getTime(){\r\n const timestamp = new Date().getTime();\r\n return timestamp;\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 \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 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 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 onEnable () {\r\n Notification.on(\"clickSun\", this.clickSun, this);\r\n }\r\n onDisable () {\r\n Notification.off(\"clickSun\", this.clickSun);\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js b/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js index 8e3a081..14e1e88 100644 --- a/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js +++ b/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js @@ -36,48 +36,52 @@ var NewClass = /** @class */ (function (_super) { }; //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 NewClass.prototype.Authentication = function () { - var userId = Storage_1.StorageMessage.getStorage("user"); - if (userId == "undifend" || userId == null || userId == "") { - this.setUserId(); + var name = "user_" + GameData_1.default._instance.GM_INFO.gameId; + var data = Storage_1.StorageMessage.getStorage(name); + if (data == "undifend" || data == null || data == "") { + console.log("没缓存"); + this.setUserId(name); } else { - var data = Storage_1.StorageMessage.getStorage("user"); - data = this.getUserId(data); + console.log("有缓存"); var timestamp = parseInt(new Date().getTime() / 1000 + ""); - if ((timestamp - data[2]) > 86400) { - this.setUserId(); + if ((timestamp - data.time) > 86400) { + console.log("缓存过期"); + this.setUserId(name); return; } - GameData_1.default._instance.GM_INFO.userId = parseInt(data[1]); + GameData_1.default._instance.GM_INFO.userId = parseInt(data.userId); } }; //设置userId,链接有获取,没有跳转授权 - NewClass.prototype.setUserId = function () { - GameData_1.default._instance.GM_INFO.userId = this.getUserId(null); + NewClass.prototype.setUserId = function (name) { + GameData_1.default._instance.GM_INFO.userId = this.getUserId(); if (GameData_1.default._instance.GM_INFO.userId == null) { + console.log("链接没ID准备跳转"); var url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=" + location.href; window.location.href = url; } else { var timestamp = parseInt(new Date().getTime() / 1000 + ""); - var idTemp = "gameId=" + GameData_1.default._instance.GM_INFO.gameId + - "?userId= " + GameData_1.default._instance.GM_INFO.userId + "?time=" + timestamp; - Storage_1.StorageMessage.setStorage("user", idTemp); + var idData = { + userId: GameData_1.default._instance.GM_INFO.userId + "", + time: timestamp + }; + Storage_1.StorageMessage.setStorage(name, idData); + console.log("有ID:", GameData_1.default._instance.GM_INFO.userId); GameData_1.default._instance.GM_INFO.userId = parseInt(GameData_1.default._instance.GM_INFO.userId); } }; //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId - NewClass.prototype.getUserId = function (str) { + NewClass.prototype.getUserId = function () { var pathStr = window.location.search; var arr = pathStr.split("&"); - if (str != null) - arr = pathStr.split("?"); if (pathStr.length >= 0 && arr.length > 0) { var arr2_1 = []; arr.map(function (item) { arr2_1.push(item.split("=")[1]); }); - return str == null ? arr2_1[0] : arr2_1; + return arr2_1[0]; } else { return null; @@ -96,6 +100,8 @@ var NewClass = /** @class */ (function (_super) { NewClass.prototype.openRank = function () { cc.director.loadScene("RankScene"); }; + NewClass.prototype.update = function (dt) { + }; NewClass = __decorate([ ccclass ], NewClass); diff --git a/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js.map b/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js.map index 6ce843f..d94b76f 100644 --- a/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js.map +++ b/library/imports/45/454ad829-851a-40ea-8ab9-941e828357ca.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\Load.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property, requireComponent} = cc._decorator;\r\nimport GameData from \"./GameData\";\r\nimport { StorageMessage } from \"./Storage\";\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n\r\n start () {\r\n this.Authentication();\r\n }\r\n\r\n //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上\r\n private Authentication(){\r\n let userId = StorageMessage.getStorage(\"user\");\r\n if(userId == \"undifend\" || userId==null || userId == \"\"){\r\n this.setUserId();\r\n }\r\n else{\r\n let data = StorageMessage.getStorage(\"user\");\r\n data = this.getUserId(data);\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n if((timestamp - data[2]) > 86400){\r\n this.setUserId();\r\n return;\r\n }\r\n GameData._instance.GM_INFO.userId = parseInt(data[1]);\r\n }\r\n }\r\n //设置userId,链接有获取,没有跳转授权\r\n private setUserId(){\r\n GameData._instance.GM_INFO.userId = this.getUserId(null);\r\n if(GameData._instance.GM_INFO.userId == null){\r\n let url = \"http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=\"+location.href;\r\n window.location.href = url;\r\n }\r\n else{\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n let idTemp = \"gameId=\" + GameData._instance.GM_INFO.gameId + \r\n \"?userId= \" + GameData._instance.GM_INFO.userId + \"?time=\" + timestamp;\r\n StorageMessage.setStorage(\"user\",idTemp);\r\n GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId);\r\n }\r\n }\r\n //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId\r\n private getUserId(str) { \r\n let pathStr = window.location.search;\r\n let arr=pathStr.split(\"&\");\r\n if(str != null) arr=pathStr.split(\"?\");\r\n if (pathStr.length>= 0&&arr.length>0) {\r\n let arr2=[];\r\n arr.map(item=>{\r\n arr2.push(item.split(\"=\")[1])\r\n })\r\n return str == null ? arr2[0]:arr2;\r\n } else {\r\n return null\r\n }\r\n }\r\n //开始游戏,跳转至引导页面\r\n startGame(){\r\n cc.director.loadScene(\"GuideScene\");\r\n }\r\n //备用,用来测试跳转 指定关卡\r\n clickBtn(event,data){\r\n GameData._instance.GM_INFO.custom = parseInt(data);\r\n cc.director.loadScene(\"GameScene\");\r\n } \r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\Load.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property, requireComponent} = cc._decorator;\r\nimport GameData from \"./GameData\";\r\nimport { StorageMessage } from \"./Storage\";\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n\r\n start () {\r\n this.Authentication();\r\n }\r\n\r\n //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上\r\n private Authentication(){\r\n let name = \"user_\" + GameData._instance.GM_INFO.gameId;\r\n let data = StorageMessage.getStorage(name);\r\n if(data == \"undifend\" || data==null || data == \"\"){\r\n console.log(\"没缓存\");\r\n this.setUserId(name);\r\n }\r\n else{\r\n console.log(\"有缓存\");\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n if((timestamp - data.time) > 86400){\r\n console.log(\"缓存过期\");\r\n this.setUserId(name);\r\n return;\r\n }\r\n GameData._instance.GM_INFO.userId = parseInt(data.userId);\r\n }\r\n }\r\n //设置userId,链接有获取,没有跳转授权\r\n private setUserId(name){\r\n GameData._instance.GM_INFO.userId = this.getUserId();\r\n if(GameData._instance.GM_INFO.userId == null){\r\n console.log(\"链接没ID准备跳转\");\r\n let url = \"http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=\"+location.href;\r\n window.location.href = url;\r\n }\r\n else{\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n let idData = {\r\n userId: GameData._instance.GM_INFO.userId + \"\",\r\n time: timestamp\r\n }\r\n StorageMessage.setStorage(name,idData);\r\n console.log(\"有ID:\",GameData._instance.GM_INFO.userId);\r\n GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId);\r\n }\r\n }\r\n //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId\r\n private getUserId() { \r\n let pathStr = window.location.search;\r\n let arr=pathStr.split(\"&\");\r\n if (pathStr.length>= 0&&arr.length>0) {\r\n let arr2=[];\r\n arr.map(item=>{\r\n arr2.push(item.split(\"=\")[1])\r\n })\r\n return arr2[0];\r\n } else {\r\n return null\r\n }\r\n }\r\n //开始游戏,跳转至引导页面\r\n startGame(){\r\n cc.director.loadScene(\"GuideScene\");\r\n }\r\n //备用,用来测试跳转 指定关卡\r\n clickBtn(event,data){\r\n GameData._instance.GM_INFO.custom = parseInt(data);\r\n cc.director.loadScene(\"GameScene\");\r\n } \r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n \r\n protected update(dt: number): void {\r\n }\r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.json b/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.json new file mode 100644 index 0000000..e7522d6 --- /dev/null +++ b/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.json @@ -0,0 +1,4 @@ +{ + "__type__": "cc.Texture2D", + "content": "0,9729,9729,33071,33071,0,0,1" +} \ No newline at end of file diff --git a/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.png b/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.png new file mode 100644 index 0000000..0537a85 Binary files /dev/null and b/library/imports/59/5932ca98-ee86-44cb-bd49-7947b2c92fd9.png differ diff --git a/library/imports/77/774829bb-123e-48b6-930e-6b3e02491506.json b/library/imports/77/774829bb-123e-48b6-930e-6b3e02491506.json index 6f012e7..2228ea5 100644 --- a/library/imports/77/774829bb-123e-48b6-930e-6b3e02491506.json +++ b/library/imports/77/774829bb-123e-48b6-930e-6b3e02491506.json @@ -2303,7 +2303,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 480, + "width": 432, "height": 135.6 }, "_anchorPoint": { @@ -2357,7 +2357,7 @@ "_dstBlendFactor": 771, "_string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", "_N$string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -3355,7 +3355,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 520, + "width": 468, "height": 75.6 }, "_anchorPoint": { @@ -3409,7 +3409,7 @@ "_dstBlendFactor": 771, "_string": "记住屏幕中太阳出现的顺序。", "_N$string": "记住屏幕中太阳出现的顺序。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -4312,7 +4312,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 504, "height": 75.6 }, "_anchorPoint": { @@ -4366,7 +4366,7 @@ "_dstBlendFactor": 771, "_string": "按照太阳的出现顺序依次点击。", "_N$string": "按照太阳的出现顺序依次点击。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -5266,7 +5266,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 576, "height": 195.6 }, "_anchorPoint": { @@ -5320,7 +5320,7 @@ "_dstBlendFactor": 771, "_string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", "_N$string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", - "_fontSize": 35, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, diff --git a/library/imports/9c/9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d.json b/library/imports/9c/9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d.json index 0882f5e..262e07f 100644 --- a/library/imports/9c/9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d.json +++ b/library/imports/9c/9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d.json @@ -1360,7 +1360,7 @@ "_srcBlendFactor": 770, "_dstBlendFactor": 771, "_spriteFrame": { - "__uuid__": "9615103c-b027-48c9-b2a6-4d01e594a784" + "__uuid__": "e8db2543-6af9-4173-a369-6cafed03a0eb" }, "_type": 1, "_sizeMode": 1, @@ -1373,9 +1373,7 @@ "_fillStart": 0, "_fillRange": 0, "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, + "_atlas": null, "_id": "e3tnncQgtFn49iTBzwCpMN" }, { 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 69c3fdc..61e2a03 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\nimport GameData from './GameData';\r\nimport { Notification } from './Notification';\r\nimport HttpUtil from './crypto/serverAPI';\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(GameData._instance.GM_INFO.custom != 0){\r\n this.level = GameData._instance.GM_INFO.custom;\r\n // this.levelLabel.string = this.level + \"\";\r\n GameData._instance.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 GameData._instance.GAME_DATA = [];\r\n GameData._instance.GM_INFO.success = false;\r\n this.startTime = 0;\r\n this.overTime = 0;\r\n this.winTime = 0;\r\n GameData._instance.GM_INFO.total = 0;\r\n GameData._instance.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(GameData._instance.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 = this.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = this.getTime();\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += this.clickNow;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 GameData._instance.AudioManager.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m{\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 GameData._instance.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 GameData._instance.AudioManager.playWarning();\r\n this.begin = false;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 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(GameData._instance.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 = GameData._instance.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 = this.getTime();\r\n this.timeStart = this.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n //暂时作废\r\n // getRandomArray(lastNumber){\r\n // let num = parseInt(Math.random()*8 - 4 + \"\");\r\n // let jg = num + lastNumber;\r\n // if(num > 1 || num <-1){\r\n // if( num == 0 || ( jg<0 || jg >= this.Pos_Array.length)){\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // }\r\n // else{\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // return jg;\r\n // }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = GameData._instance.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 = GameData._instance.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 if(distance < GameData._instance.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 < GameData._instance.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 < GameData._instance.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 getTimeMargin(second:number) {\r\n let total = 0;\r\n total = second;\r\n let hour = 0;\r\n hour = parseInt((total / 3600) + \"\");//计算整数小时数\r\n let afterHour = total - hour * 60 * 60;//取得算出小时数后剩余的秒数\r\n let min = parseInt((afterHour / 60)+\"\");//计算整数分\r\n let m = \"\" + min; \r\n if(min < 10) m = \"0\"+min;\r\n let afterMin = total - hour * 60 * 60 - min * 60;//取得算出分后剩余的秒数\r\n let miao = afterMin + \"\";\r\n if(afterMin < 10) miao = \"0\" + afterMin;\r\n return m + ':' + miao\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 = this.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(GameData._instance.GM_INFO.mean_Time/this.clickCount + \"\");\r\n GameData._instance.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n GameData._instance.GM_INFO.mean_Time = GameData._instance.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.setRank(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n GameData._instance.GAME_DATA = [];\r\n GameData._instance.GAME_DATA.push(GameData._instance.CLICK_DATA);\r\n GameData._instance.CLICK_init();\r\n let data = GameData._instance.GAME_DATA;\r\n let matchId = this.getMatchId();\r\n console.log(matchId);\r\n let postData = {\r\n \"matchId\":matchId,\r\n \"data\": data\r\n };\r\n console.log(\"上传数据:\")\r\n HttpUtil.uploadUserLogData(postData,function(){})\r\n }\r\n //获取matchId 用于上传每次点击数据里面记录id方便查询\r\n getMatchId (){\r\n let matchId = cc.sys.localStorage.getItem(\"matchId\");\r\n if(matchId == \"undifend\" || matchId==null){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n if(this.containsNanana(matchId) == true){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n let char = parseInt(matchId[10]);\r\n if(this.round == 1){\r\n char += 1;\r\n }\r\n matchId = matchId.slice(0, 10) + char + \"\";\r\n GameData._instance.GM_INFO.matchId = matchId;\r\n cc.sys.localStorage.setItem(\"matchId\",matchId);\r\n }\r\n }\r\n return matchId;\r\n }\r\n //检测matchId 如果有缓存以前的nanana数据清除\r\n containsNanana(str) {\r\n return /na/i.test(str);\r\n }\r\n //重新设置MatchId\r\n setMatchId (){\r\n // 定义包含可用字符的字符集\r\n const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';\r\n // 创建一个数组以保存随机字符\r\n const uuidArray = [];\r\n // 循环10次 生成10位的UUID\r\n for (let i = 0; i < 10; i++) {\r\n // 生成随机索引,范围是字符集的长度\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n // 从字符集中获取随机字符\r\n const randomChar = characters.charAt(randomIndex);\r\n // 将字符添加到数组中\r\n uuidArray.push(randomChar);\r\n }\r\n let data = uuidArray.join('') + 1 + \"\";\r\n cc.sys.localStorage.setItem(\"matchNumber\",1);\r\n cc.sys.localStorage.setItem(\"matchId\",data);\r\n GameData._instance.GM_INFO.matchId = data;\r\n return data;\r\n }\r\n //上传排行榜数据\r\n setRank(time){\r\n let postData = {\r\n \"type\":1,\r\n \"reactionTime\": time,\r\n \"totalSunCount\": GameData._instance.GM_INFO.total,\r\n \"success\": GameData._instance.GM_INFO.success\r\n \r\n };\r\n HttpUtil.rankData(1,function(){},postData);\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(GameData._instance.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 = this.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = this.getTime();\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += this.clickNow;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 GameData._instance.AudioManager.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m{\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 GameData._instance.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 GameData._instance.AudioManager.playWarning();\r\n this.begin = false;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 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(GameData._instance.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 = GameData._instance.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 = this.getTime();\r\n this.timeStart = this.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n //暂时作废\r\n // getRandomArray(lastNumber){\r\n // let num = parseInt(Math.random()*8 - 4 + \"\");\r\n // let jg = num + lastNumber;\r\n // if(num > 1 || num <-1){\r\n // if( num == 0 || ( jg<0 || jg >= this.Pos_Array.length)){\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // }\r\n // else{\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // return jg;\r\n // }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = GameData._instance.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 = GameData._instance.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 if(distance < GameData._instance.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 < GameData._instance.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 < GameData._instance.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 getTimeMargin(second:number) {\r\n let total = 0;\r\n total = second;\r\n let hour = 0;\r\n hour = parseInt((total / 3600) + \"\");//计算整数小时数\r\n let afterHour = total - hour * 60 * 60;//取得算出小时数后剩余的秒数\r\n let min = parseInt((afterHour / 60)+\"\");//计算整数分\r\n let m = \"\" + min; \r\n if(min < 10) m = \"0\"+min;\r\n let afterMin = total - hour * 60 * 60 - min * 60;//取得算出分后剩余的秒数\r\n let miao = afterMin + \"\";\r\n if(afterMin < 10) miao = \"0\" + afterMin;\r\n return m + ':' + miao\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 = this.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(GameData._instance.GM_INFO.mean_Time/this.clickCount + \"\");\r\n GameData._instance.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n GameData._instance.GM_INFO.mean_Time = GameData._instance.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.setRank(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n GameData._instance.GAME_DATA = [];\r\n GameData._instance.GAME_DATA.push(GameData._instance.CLICK_DATA);\r\n GameData._instance.CLICK_init();\r\n let data = GameData._instance.GAME_DATA;\r\n let matchId = this.getMatchId();\r\n console.log(matchId);\r\n let postData = {\r\n \"matchId\":matchId,\r\n \"data\": data\r\n };\r\n console.log(\"上传数据:\")\r\n HttpUtil.uploadUserLogData(postData,function(){})\r\n }\r\n //获取matchId 用于上传每次点击数据里面记录id方便查询\r\n getMatchId (){\r\n let matchId = cc.sys.localStorage.getItem(\"matchId\");\r\n if(matchId == \"undifend\" || matchId==null){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n if(this.containsNanana(matchId) == true){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n let char = parseInt(matchId[10]);\r\n if(this.round == 1){\r\n char += 1;\r\n }\r\n matchId = matchId.slice(0, 10) + char + \"\";\r\n GameData._instance.GM_INFO.matchId = matchId;\r\n cc.sys.localStorage.setItem(\"matchId\",matchId);\r\n }\r\n }\r\n return matchId;\r\n }\r\n //检测matchId 如果有缓存以前的nanana数据清除\r\n containsNanana(str) {\r\n return /na/i.test(str);\r\n }\r\n //重新设置MatchId\r\n setMatchId (){\r\n // 定义包含可用字符的字符集\r\n const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';\r\n // 创建一个数组以保存随机字符\r\n const uuidArray = [];\r\n // 循环10次 生成10位的UUID\r\n for (let i = 0; i < 10; i++) {\r\n // 生成随机索引,范围是字符集的长度\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n // 从字符集中获取随机字符\r\n const randomChar = characters.charAt(randomIndex);\r\n // 将字符添加到数组中\r\n uuidArray.push(randomChar);\r\n }\r\n let data = uuidArray.join('') + 1 + \"\";\r\n cc.sys.localStorage.setItem(\"matchNumber\",1);\r\n cc.sys.localStorage.setItem(\"matchId\",data);\r\n GameData._instance.GM_INFO.matchId = data;\r\n return data;\r\n }\r\n //上传排行榜数据\r\n setRank(time){\r\n let postData = {\r\n \"type\":1,\r\n \"reactionTime\": time,\r\n \"totalSunCount\": GameData._instance.GM_INFO.total,\r\n \"success\": GameData._instance.GM_INFO.success\r\n };\r\n HttpUtil.rankData(1,function(){},postData);\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 6){\r\n this.data.name = this.data.name.substring(0,6) + \"...\"\r\n }\r\n this.node.getChildByName(\"rankLab\").getComponent(cc.Label).string = this.data.rank + \"\";\r\n this.node.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.data.name + \"\";\r\n this.node.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.data.total + \"\";\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = false;\r\n if(this.data.rank == 1){\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 2){\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 3){\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }else{\r\n this.node.getChildByName(\"rankLab\").active = true;\r\n }\r\n this.setPic();\r\n } \r\n \r\n public setPic(){\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = false;\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= false;\r\n var self = this;\r\n let url = this.data.pic;\r\n fetch(url)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n\r\n .then(errNo => {\r\n // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值\r\n if(errNo == \"5093\"){\r\n // console.log(this.data.rank,\"没头像\");\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n cc.assetManager.loadRemote(url, {ext:'.jpg'},(err, texture:cc.Texture2D) => {\r\n if(texture){\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= true;\r\n var sprite = this.node.getChildByName(\"pic\").getChildByName(\"pic\").getComponent(cc.Sprite);\r\n sprite.spriteFrame = new cc.SpriteFrame(texture);\r\n // console.log(this.data.rank,\"设置头像成功\",err);\r\n }\r\n else{\r\n // console.log(\"设置头像失败\",url);\r\n console.log(err,texture)\r\n }\r\n })\r\n }\r\n\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\ListView\\ItemRender.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import List, { ListType } from \"./List\";\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n\r\n@ccclass\r\nexport default class ItemRender extends cc.Component {\r\n /**数据 */\r\n public data:any = null;\r\n /**索引 0表示第一项*/\r\n public itemIndex:number = 0;\r\n\r\n /**数据改变时调用 */\r\n public dataChanged(){\r\n if(this.data.name.length > 6){\r\n this.data.name = this.data.name.substring(0,6) + \"...\"\r\n }\r\n this.node.getChildByName(\"rankLab\").getComponent(cc.Label).string = this.data.rank + \"\";\r\n this.node.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.data.name + \"\";\r\n this.node.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.data.total + \"\";\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = false;\r\n if(this.data.rank == 1){\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 2){\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 3){\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }else{\r\n this.node.getChildByName(\"rankLab\").active = true;\r\n }\r\n this.setPic();\r\n } \r\n \r\n public setPic(){\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = false;\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= false;\r\n var self = this;\r\n let url = this.data.pic;\r\n fetch(url)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n\r\n .then(errNo => {\r\n // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值\r\n if(errNo == \"5093\"){\r\n // console.log(this.data.rank,\"没头像\");\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n cc.assetManager.loadRemote(url, {ext:'.png'},(err, texture:cc.Texture2D) => {\r\n if(texture){\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= true;\r\n var sprite = this.node.getChildByName(\"pic\").getChildByName(\"pic\").getComponent(cc.Sprite);\r\n sprite.spriteFrame = new cc.SpriteFrame(texture);\r\n // console.log(this.data.rank,\"设置头像成功\",err);\r\n }\r\n else{\r\n // console.log(\"设置头像失败\",url);\r\n console.log(err,texture)\r\n }\r\n })\r\n }\r\n\r\n\r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js b/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js index ea5fcfb..c664a08 100644 --- a/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js +++ b/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js @@ -166,7 +166,7 @@ var RankManager = /** @class */ (function (_super) { console.error('Error fetching X-Info:', error); }); var self = this; - cc.assetManager.loadRemote(pic, { ext: '.jpg' }, function (err, texture) { + cc.assetManager.loadRemote(pic, { ext: '.png' }, function (err, texture) { self.Player.opacity = 255; if (texture) { self.phone.node.active = true; diff --git a/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js.map b/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js.map index 8b83bca..be707e3 100644 --- a/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js.map +++ b/library/imports/e7/e74a9f7d-2031-4e69-bcb2-9998174088b2.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\RankManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import GameData from \"./GameData\";\r\nimport List from \"./ListView/List\";\r\nimport HttpUtil from \"./crypto/serverAPI\";\r\nconst { ccclass, property } = cc._decorator;\r\n//排行榜\r\n@ccclass\r\nexport default class RankManager extends cc.Component {\r\n @property(cc.Node) //用户上方头像\r\n Player: cc.Node = null;\r\n @property(cc.Node) //用户最下方个人信息\r\n selfNode: cc.Node = null;\r\n @property(cc.Sprite) //用户头像换图\r\n phone: cc.Sprite = null;\r\n private rankList: List; //排行榜\r\n tween: cc.Tween; //最上方用户头像动画\r\n listData: any; //总列表信息\r\n selfData: any; //自己信息\r\n rankNumber: number; //用户自己排名 有可能不在排行榜内99+\r\n rankTotal: number; //获取排行榜用户数量 现在为100\r\n\r\n onLoad() {\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.rankList = cc.find(\"ScrollView\", this.node).getComponent(List);\r\n this.Player.getChildByName(\"rank\").active = false;\r\n this.listData = [];\r\n this.selfData = null;\r\n this.rankNumber = 100;\r\n this.rankTotal= 100;\r\n this.selfNode.opacity = 0;\r\n }\r\n\r\n start() {\r\n this.Player.active = false;\r\n this.getRank();\r\n }\r\n //调用获取排行榜接口\r\n getRank(){\r\n let postData = {\r\n \"page\":1,\r\n \"pageSize\":100\r\n }; \r\n //回调进getRankData\r\n HttpUtil.rankData(2,this.getRankData.bind(this),postData);\r\n }\r\n //实际设置排行数据\r\n getRankData(data){\r\n if(data){\r\n console.log(data);\r\n this.listData = data.data.list;\r\n this.selfData = data.data.info;\r\n let rankData = [];\r\n let self = false;\r\n for(let i=0;i<=this.listData.length-1;i++){\r\n rankData.push({rank:(i+1), name:this.listData[i].nickName, total:this.listData[i].totalSunCount, pic:this.listData[i].pic});\r\n if(GameData._instance.GM_INFO.userId == this.listData[i].userId){\r\n self = true;\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string =(i+1) + \"\"; \r\n }\r\n if(i == (this.listData.length-1) && self == false){\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string = \"99+\"; \r\n }\r\n }\r\n this.rankList.setData(rankData);\r\n if(this.selfData.nickName.length > 6){\r\n this.selfData.nickName= this.selfData.nickName.substring(0,6) + \"...\"\r\n }\r\n this.selfNode.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.selfData.nickName;\r\n this.selfNode.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.selfData.totalSunCount;\r\n this.setPic(this.selfData.pic);\r\n if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"1\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"2\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"3\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n }\r\n else{\r\n // this.selfNode.getChildByName(\"four\").active = true;\r\n }\r\n this.selfNode.opacity = 255;\r\n if(this.selfData.totalSunCount == 0) this.selfNode.opacity = 0;\r\n }\r\n }\r\n //返回按钮\r\n backClick(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //最上方用户动画\r\n playerAction(){\r\n //-254 377 210 453\r\n this.Player.getChildByName(\"rank\").active = false;\r\n let time = 1;\r\n this.tween = cc.tween(this.Player)\r\n .to(2,{position:cc.v3(210,453,0)})\r\n .call(() =>{\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n })\r\n .start();\r\n time = (this.listData.length - this.rankNumber)/this.listData.length;\r\n if(this.listData.length >= 99){\r\n if(this.rankNumber >= 99){\r\n time = (Math.random()*49+1)/100\r\n var matchId = cc.sys.localStorage.getItem(\"matchNumber\");\r\n if(matchId == null || matchId == undefined){\r\n time = 0;\r\n }\r\n }\r\n }\r\n setTimeout(() => {\r\n if(this.tween)this.tween.stop();\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n }, time*2000);\r\n\r\n }\r\n //设置头像\r\n public setPic(pic){\r\n this.phone.node.parent.getChildByName(\"icon\").active = false;\r\n this.phone.node.active = false;\r\n this.Player.active = true;\r\n this.Player.opacity = 0;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = false;\r\n fetch(pic)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n .then(errNo => {\r\n if(errNo == \"5093\"){\r\n this.phone.node.parent.getChildByName(\"icon\").active = true;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n var self = this;\r\n cc.assetManager.loadRemote(pic, {ext:'.jpg'},(err, texture:cc.Texture2D) => {\r\n self.Player.opacity = 255;\r\n if(texture){\r\n self.phone.node.active = true;\r\n self.phone.spriteFrame = new cc.SpriteFrame(texture);\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = true;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").getComponent(cc.Sprite)\r\n .spriteFrame = new cc.SpriteFrame(texture);\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n else{\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n \r\n })\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\RankManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAkC;AAClC,wCAAmC;AACnC,gDAA0C;AACpC,IAAA,KAAwB,EAAE,CAAC,UAAU,EAAnC,OAAO,aAAA,EAAE,QAAQ,cAAkB,CAAC;AAC5C,KAAK;AAEL;IAAyC,+BAAY;IAArD;QAAA,qEAqKC;QAnKG,YAAM,GAAY,IAAI,CAAC;QAEvB,cAAQ,GAAY,IAAI,CAAC;QAEzB,WAAK,GAAc,IAAI,CAAC;;IA+J5B,CAAC;IAvJG,4BAAM,GAAN;QACI,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IACD,OAAO;IACP,0BAAI,GAAJ;QACI,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,cAAI,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,IAAI,CAAC,SAAS,GAAE,GAAG,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,2BAAK,GAAL;QACI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IACD,WAAW;IACX,6BAAO,GAAP;QACI,IAAI,QAAQ,GAAG;YACX,MAAM,EAAC,CAAC;YACR,UAAU,EAAC,GAAG;SACjB,CAAC;QACF,gBAAgB;QAChB,mBAAQ,CAAC,QAAQ,CAAC,CAAC,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,QAAQ,CAAC,CAAC;IAC9D,CAAC;IACD,UAAU;IACV,iCAAW,GAAX,UAAY,IAAI;QAEZ,IAAG,IAAI,EAAC;YACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,CAAC,IAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC,CAAC,EAAC,CAAC,EAAE,EAAC;gBACtC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,GAAC,CAAC,CAAC,EAAE,IAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC;gBAC5H,IAAG,kBAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAC;oBAC5D,IAAI,GAAG,IAAI,CAAC;oBACZ,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBACpB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAE,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,EAAE,CAAC;iBACrF;gBACD,IAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,EAAC;oBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBACpB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;iBACjF;aACJ;YACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,GAAG,KAAK,CAAA;aACxE;YACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC/F,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YACrG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,EAAC;gBAC5E,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;aAC5E;iBACI,IAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,EAAC;gBACjF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;aAC5E;iBACI,IAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,EAAC;gBACjF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;aAC9E;iBACG;gBACA,sDAAsD;aACzD;YACD,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;YAC5B,IAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC;gBAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;SAClE;IACL,CAAC;IACD,MAAM;IACN,+BAAS,GAAT;QACI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD,SAAS;IACT,kCAAY,GAAZ;QAAA,iBA6BC;QA5BG,mBAAmB;QACnB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QAClD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;aACjC,EAAE,CAAC,CAAC,EAAC,EAAC,QAAQ,EAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAC,GAAG,EAAC,CAAC,CAAC,EAAC,CAAC;aACjC,IAAI,CAAC;YACF,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YACjD,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;iBAC1D,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAI,QAAQ,CAAC,IAAI,GAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;QACpE,CAAC,CAAC;aACD,KAAK,EAAE,CAAC;QACT,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrE,IAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAC;YAC1B,IAAG,IAAI,CAAC,UAAU,IAAI,EAAE,EAAC;gBACrB,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAC,EAAE,GAAC,CAAC,CAAC,GAAC,GAAG,CAAA;gBAC/B,IAAI,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBACzD,IAAG,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,SAAS,EAAC;oBACvC,IAAI,GAAG,CAAC,CAAC;iBACZ;aACJ;SACJ;QACD,UAAU,CAAC;YACP,IAAG,KAAI,CAAC,KAAK;gBAAC,KAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChC,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YACjD,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;iBAC1D,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAI,QAAQ,CAAC,IAAI,GAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;QACpE,CAAC,EAAE,IAAI,GAAC,IAAI,CAAC,CAAC;IAElB,CAAC;IACD,MAAM;IACC,4BAAM,GAAb,UAAc,GAAG;QAAjB,iBA0CC;QAzCG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QAC7D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QAC1E,KAAK,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,UAAA,QAAQ;YACV,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAClD,CAAC,CAAC;aACD,IAAI,CAAC,UAAA,KAAK;YACP,IAAG,KAAK,IAAI,MAAM,EAAC;gBACf,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;gBAC5D,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;aAC3E;QACL,CAAC,CAAC;aACD,KAAK,CAAC,UAAA,KAAK;YACR,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,EAAC,GAAG,EAAC,MAAM,EAAC,EAAC,UAAC,GAAG,EAAE,OAAoB;YACnE,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;YAC1B,IAAG,OAAO,EAAC;gBACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;gBACzE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;gBACzE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC;qBACjF,WAAW,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAC3C,UAAU,CAAC;oBACP,IAAI,CAAC,YAAY,EAAE,CAAC;gBACxB,CAAC,EAAE,GAAG,CAAC,CAAC;aACX;iBACG;gBACA,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;gBACxE,UAAU,CAAC;oBACP,IAAI,CAAC,YAAY,EAAE,CAAC;gBACxB,CAAC,EAAE,GAAG,CAAC,CAAC;aACX;QAEL,CAAC,CAAC,CAAA;IACN,CAAC;IAjKD;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAU,QAAQ;+CACb;IAEvB;QADC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAU,WAAW;iDACd;IAEzB;QADC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAQ,QAAQ;8CACZ;IANP,WAAW;QAD/B,OAAO;OACa,WAAW,CAqK/B;IAAD,kBAAC;CArKD,AAqKC,CArKwC,EAAE,CAAC,SAAS,GAqKpD;kBArKoB,WAAW","file":"","sourceRoot":"/","sourcesContent":["import GameData from \"./GameData\";\r\nimport List from \"./ListView/List\";\r\nimport HttpUtil from \"./crypto/serverAPI\";\r\nconst { ccclass, property } = cc._decorator;\r\n//排行榜\r\n@ccclass\r\nexport default class RankManager extends cc.Component {\r\n @property(cc.Node) //用户上方头像\r\n Player: cc.Node = null;\r\n @property(cc.Node) //用户最下方个人信息\r\n selfNode: cc.Node = null;\r\n @property(cc.Sprite) //用户头像换图\r\n phone: cc.Sprite = null;\r\n private rankList: List; //排行榜\r\n tween: cc.Tween; //最上方用户头像动画\r\n listData: any; //总列表信息\r\n selfData: any; //自己信息\r\n rankNumber: number; //用户自己排名 有可能不在排行榜内99+\r\n rankTotal: number; //获取排行榜用户数量 现在为100\r\n\r\n onLoad() {\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.rankList = cc.find(\"ScrollView\", this.node).getComponent(List);\r\n this.Player.getChildByName(\"rank\").active = false;\r\n this.listData = [];\r\n this.selfData = null;\r\n this.rankNumber = 100;\r\n this.rankTotal= 100;\r\n this.selfNode.opacity = 0;\r\n }\r\n\r\n start() {\r\n this.Player.active = false;\r\n this.getRank();\r\n }\r\n //调用获取排行榜接口\r\n getRank(){\r\n let postData = {\r\n \"page\":1,\r\n \"pageSize\":100\r\n }; \r\n //回调进getRankData\r\n HttpUtil.rankData(2,this.getRankData.bind(this),postData);\r\n }\r\n //实际设置排行数据\r\n getRankData(data){\r\n\r\n if(data){\r\n console.log(data);\r\n this.listData = data.data.list;\r\n this.selfData = data.data.info;\r\n let rankData = [];\r\n let self = false;\r\n for(let i=0;i<=this.listData.length-1;i++){\r\n rankData.push({rank:(i+1), name:this.listData[i].nickName, total:this.listData[i].totalSunCount, pic:this.listData[i].pic});\r\n if(GameData._instance.GM_INFO.userId == this.listData[i].userId){\r\n self = true;\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string =(i+1) + \"\"; \r\n }\r\n if(i == (this.listData.length-1) && self == false){\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string = \"99+\"; \r\n }\r\n }\r\n this.rankList.setData(rankData);\r\n if(this.selfData.nickName.length > 6){\r\n this.selfData.nickName= this.selfData.nickName.substring(0,6) + \"...\"\r\n }\r\n this.selfNode.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.selfData.nickName;\r\n this.selfNode.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.selfData.totalSunCount;\r\n this.setPic(this.selfData.pic);\r\n if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"1\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"2\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"3\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n }\r\n else{\r\n // this.selfNode.getChildByName(\"four\").active = true;\r\n }\r\n this.selfNode.opacity = 255;\r\n if(this.selfData.totalSunCount == 0) this.selfNode.opacity = 0;\r\n }\r\n }\r\n //返回按钮\r\n backClick(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //最上方用户动画\r\n playerAction(){\r\n //-254 377 210 453\r\n this.Player.getChildByName(\"rank\").active = false;\r\n let time = 1;\r\n this.tween = cc.tween(this.Player)\r\n .to(2,{position:cc.v3(210,453,0)})\r\n .call(() =>{\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n })\r\n .start();\r\n time = (this.listData.length - this.rankNumber)/this.listData.length;\r\n if(this.listData.length >= 99){\r\n if(this.rankNumber >= 99){\r\n time = (Math.random()*49+1)/100\r\n var matchId = cc.sys.localStorage.getItem(\"matchNumber\");\r\n if(matchId == null || matchId == undefined){\r\n time = 0;\r\n }\r\n }\r\n }\r\n setTimeout(() => {\r\n if(this.tween)this.tween.stop();\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n }, time*2000);\r\n\r\n }\r\n //设置头像\r\n public setPic(pic){\r\n this.phone.node.parent.getChildByName(\"icon\").active = false;\r\n this.phone.node.active = false;\r\n this.Player.active = true;\r\n this.Player.opacity = 0;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = false;\r\n fetch(pic)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n .then(errNo => {\r\n if(errNo == \"5093\"){\r\n this.phone.node.parent.getChildByName(\"icon\").active = true;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n var self = this;\r\n cc.assetManager.loadRemote(pic, {ext:'.png'},(err, texture:cc.Texture2D) => {\r\n self.Player.opacity = 255;\r\n if(texture){\r\n self.phone.node.active = true;\r\n self.phone.spriteFrame = new cc.SpriteFrame(texture);\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = true;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").getComponent(cc.Sprite)\r\n .spriteFrame = new cc.SpriteFrame(texture);\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n else{\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n \r\n })\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file diff --git a/library/imports/e8/e8db2543-6af9-4173-a369-6cafed03a0eb.json b/library/imports/e8/e8db2543-6af9-4173-a369-6cafed03a0eb.json new file mode 100644 index 0000000..17a812f --- /dev/null +++ b/library/imports/e8/e8db2543-6af9-4173-a369-6cafed03a0eb.json @@ -0,0 +1,28 @@ +{ + "__type__": "cc.SpriteFrame", + "content": { + "name": "rankBtn", + "texture": "5932ca98-ee86-44cb-bd49-7947b2c92fd9", + "atlas": "", + "rect": [ + 0, + 0, + 126, + 140 + ], + "offset": [ + 0, + 0 + ], + "originalSize": [ + 126, + 140 + ], + "capInsets": [ + 0, + 0, + 0, + 0 + ] + } +} \ No newline at end of file diff --git a/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js b/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js deleted file mode 100644 index 204aa94..0000000 --- a/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -cc._RF.push(module, 'f124cZyKJVPPobsFKRo+Uam', 'Storage'); -// Script/tool/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(); \ No newline at end of file diff --git a/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js.map b/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js.map deleted file mode 100644 index 6055c59..0000000 --- a/library/imports/f1/f124c672-2895-4f3e-86ec-14a468f946a6.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["assets\\Script\\tool\\Storage.ts"],"names":[],"mappings":";;;;;;;AAAA,SAAS;AACT,IAAI,cAAc,GAAG;IACjB,UAAU,EAAG,UAAS,GAAG;QACrB,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC;YAClC,IAAI,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAC/C;QAED,IAAG,MAAM,EAAC;YACR,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SAC7B;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,UAAU,EAAG,UAAS,GAAG,EAAC,KAAK;QAC3B,UAAU;QACV,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IACD,aAAa,EAAG,UAAS,GAAG;QAC1B,UAAU;QACV,IAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC;YAClC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;SACpC;IACH,CAAC;CACJ,CAAC;AAEO,wCAAc","file":"","sourceRoot":"/","sourcesContent":["//缓存浏览器数据\nvar StorageMessage = {\n getStorage : function(key){\n var result = null;\n if(cc.sys.localStorage.getItem(key)){\n var result = cc.sys.localStorage.getItem(key);\n }\n \n if(result){\n result = JSON.parse(result);\n }\n return result;\n },\n setStorage : function(key,value){\n //主动拉起分享接口\n var temp = JSON.stringify(value);\n cc.sys.localStorage.setItem(key, temp)\n },\n removeStorage : function(key){\n //主动删除消息接口\n if(cc.sys.localStorage.getItem(key)){\n cc.sys.localStorage.removeItem(key)\n }\n },\n};\n\nexport { StorageMessage };"]} \ No newline at end of file diff --git a/library/uuid-to-mtime.json b/library/uuid-to-mtime.json index daf80ba..fa8cbe3 100644 --- a/library/uuid-to-mtime.json +++ b/library/uuid-to-mtime.json @@ -30,8 +30,8 @@ "relativePath": "Script\\ListView" }, "2d2f792f-a40c-49bb-a189-ed176a246e49": { - "asset": 1717138672802, - "meta": 1717138672806, + "asset": 1717589475290, + "meta": 1717589475294, "relativePath": "Scene\\RankScene.fire" }, "a8027877-d8d6-4645-97a0-52d4a0123dba": { @@ -55,8 +55,8 @@ "relativePath": "music" }, "bf3935ca-518a-42f4-84e4-ad96badfd1b4": { - "asset": 1716867446259, - "meta": 1716868891162, + "asset": 1717589469849, + "meta": 1717589573394, "relativePath": "prefab" }, "52e78fe3-9095-42ad-8e4d-f9bb12dc69ce": { @@ -100,8 +100,8 @@ "relativePath": "Scene\\OverScene.fire" }, "774829bb-123e-48b6-930e-6b3e02491506": { - "asset": 1717126108332, - "meta": 1717126108338, + "asset": 1717643196521, + "meta": 1717643196526, "relativePath": "Scene\\GuideScene.fire" }, "f2518fb4-2074-4639-8fae-788846b44780": { @@ -110,8 +110,8 @@ "relativePath": "Script\\Notification.ts" }, "4bff6e01-b411-48f4-867a-5d841f9e400f": { - "asset": 1717138653505, - "meta": 1717138653551, + "asset": 1717146603008, + "meta": 1717383888483, "relativePath": "Script\\tool" }, "61aff0f9-48ef-48a6-8d1f-1a621e4c54d9": { @@ -190,8 +190,8 @@ "relativePath": "Shader\\Effect_fluid2.png" }, "2880dc26-5b38-48bd-baba-daaec97499cb": { - "asset": 1716867446274, - "meta": 1716868891162, + "asset": 1717671258605, + "meta": 1717750897523, "relativePath": "res" }, "e8009432-4774-4831-a537-511de4498eee": { @@ -245,8 +245,8 @@ "relativePath": "music\\score.mp3" }, "ca0f9934-a015-436e-9402-f8e30d4c5de6": { - "asset": 1716539551895, - "meta": 1716539556737, + "asset": 1717146182668, + "meta": 1717146195141, "relativePath": "Script\\ListView\\ItemRender.ts" }, "1797b543-702b-42a4-b7b8-2b477fc0a874": { @@ -330,8 +330,8 @@ "relativePath": "Script\\crypto\\serverAPI.ts" }, "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d": { - "asset": 1717128045682, - "meta": 1717128045692, + "asset": 1717671267671, + "meta": 1717671267676, "relativePath": "Scene\\LoadScene.fire" }, "f2f0b239-3ec5-48fa-8d7c-c45e86f8a55a": { @@ -344,16 +344,6 @@ "meta": 1717125956254, "relativePath": "Script\\tool\\AudioManager.js" }, - "3fd2f87a-bc73-4978-8494-8b35b4f716ad": { - "asset": 1717126472351, - "meta": 1717127950261, - "relativePath": "Script\\GuideManager.ts" - }, - "e74a9f7d-2031-4e69-bcb2-9998174088b2": { - "asset": 1717128095376, - "meta": 1717128178176, - "relativePath": "Script\\RankManager.ts" - }, "7cf8c313-e732-40d1-9538-1a9d0970bf2f": { "asset": 1717128110405, "meta": 1717128178182, @@ -370,528 +360,543 @@ "relativePath": "Script\\GameOver.ts" }, "b0432040-dbde-438c-839c-ba2b5d18a3b5": { - "asset": 1717137078225, - "meta": 1717137094166, + "asset": 1717733579259, + "meta": 1717750897787, "relativePath": "Script\\GameManager.ts" }, - "9836134e-b892-4283-b6b2-78b5acf3ed45": { - "asset": 1714966328642, - "meta": 1717138650580, - "relativePath": "effects" - }, - "abc2cb62-7852-4525-a90d-d474487b88f2": { - "asset": 1714966328642, - "meta": 1717138650722, - "relativePath": "effects\\builtin-phong.effect" - }, - "e2f00085-c597-422d-9759-52c360279106": { - "asset": 1714966328642, - "meta": 1717138650777, - "relativePath": "effects\\builtin-toon.effect" - }, - "430eccbf-bf2c-4e6e-8c0c-884bbb487f32": { - "asset": 1714966328642, - "meta": 1717138650794, - "relativePath": "effects\\__builtin-editor-gizmo-line.effect" - }, - "6c5cf6e1-b044-4eac-9431-835644d57381": { - "asset": 1714966328642, - "meta": 1717138650802, - "relativePath": "effects\\__builtin-editor-gizmo-unlit.effect" - }, - "115286d1-2e10-49ee-aab4-341583f607e8": { - "asset": 1714966328642, - "meta": 1717138650839, - "relativePath": "effects\\__builtin-editor-gizmo.effect" - }, - "f8e6b000-5643-4b86-9080-aa680ce1f599": { - "asset": 1714966328706, - "meta": 1717138650581, - "relativePath": "image" - }, - "5c3eedba-6c41-4c0c-9ba7-d91f813cbd1c": { - "asset": 1714966328721, - "meta": 1717138650582, - "relativePath": "materials" - }, - "fc09f9bd-2cce-4605-b630-8145ef809ed6": { - "asset": 1714966328721, - "meta": 1717138650583, - "relativePath": "misc" - }, - "617323dd-11f4-4dd3-8eec-0caf6b3b45b9": { - "asset": 1714966328689, - "meta": 1717138650946, - "relativePath": "image\\default_scrollbar_vertical_bg.png" - }, - "4bab67cb-18e6-4099-b840-355f0473f890": { - "asset": 1714966328689, - "meta": 1717138650937, - "relativePath": "image\\default_scrollbar_bg.png" - }, - "db019bf7-f71c-4111-98cf-918ea180cb48": { - "asset": 1714966328737, - "meta": 1717138650584, - "relativePath": "model" - }, - "e39e96e6-6f6e-413f-bcf1-ac7679bb648a": { - "asset": 1714966328737, - "meta": 1717138650903, - "relativePath": "model\\prefab" - }, - "99170b0b-d210-46f1-b213-7d9e3f23098a": { - "asset": 1714966328673, - "meta": 1717138650931, - "relativePath": "image\\default_progressbar_bg.png" - }, - "71561142-4c83-4933-afca-cb7a17f67053": { - "asset": 1714966328658, - "meta": 1717138650884, - "relativePath": "image\\default_btn_disabled.png" - }, - "e851e89b-faa2-4484-bea6-5c01dd9f06e2": { - "asset": 1714966328658, - "meta": 1717138650934, - "relativePath": "image\\default_btn_normal.png" - }, - "edd215b9-2796-4a05-aaf5-81f96c9281ce": { - "asset": 1714966328658, - "meta": 1717138650888, - "relativePath": "image\\default_editbox_bg.png" - }, - "6e056173-d285-473c-b206-40a7fff5386e": { - "asset": 1714966328689, - "meta": 1717138650935, - "relativePath": "image\\default_sprite.png" - }, - "567dcd80-8bf4-4535-8a5a-313f1caf078a": { - "asset": 1714966328673, - "meta": 1717138650938, - "relativePath": "image\\default_radio_button_off.png" - }, - "cfef78f1-c8df-49b7-8ed0-4c953ace2621": { - "asset": 1714966328673, - "meta": 1717138650887, - "relativePath": "image\\default_progressbar.png" - }, - "f6e6dd15-71d1-4ffe-ace7-24fd39942c05": { - "asset": 1714966328752, - "meta": 1717138650585, - "relativePath": "obsolete" - }, - "b43ff3c2-02bb-4874-81f7-f2dea6970f18": { - "asset": 1714966328658, - "meta": 1717138650897, - "relativePath": "image\\default_btn_pressed.png" - }, - "c4480a0a-6ac5-443f-8b40-361a14257fc8": { - "asset": 1714966328706, - "meta": 1717138651299, - "relativePath": "materials\\builtin-phong.mtl" - }, - "f743d2b6-b7ea-4c14-a55b-547ed4d0a045": { - "asset": 1714966328752, - "meta": 1717138650586, - "relativePath": "particle" - }, - "9d60001f-b5f4-4726-a629-2659e3ded0b8": { - "asset": 1714966328673, - "meta": 1717138650896, - "relativePath": "image\\default_radio_button_on.png" - }, - "a87cc147-01b2-43f8-8e42-a7ca90b0c757": { - "asset": 1714966328721, - "meta": 1717138651216, - "relativePath": "model\\prefab\\box.prefab" - }, - "d81ec8ad-247c-4e62-aa3c-d35c4193c7af": { - "asset": 1714966328673, - "meta": 1717138650900, - "relativePath": "image\\default_panel.png" - }, - "fe1417b6-fe6b-46a4-ae7c-9fd331f33a2a": { - "asset": 1714966328737, - "meta": 1717138651209, - "relativePath": "model\\prefab\\capsule.prefab" - }, - "ae6c6c98-11e4-452f-8758-75f5c6a56e83": { - "asset": 1714966328831, - "meta": 1717138650587, - "relativePath": "prefab" - }, - "d6d3ca85-4681-47c1-b5dd-d036a9d39ea2": { - "asset": 1714966328689, - "meta": 1717138650942, - "relativePath": "image\\default_scrollbar_vertical.png" - }, - "b5fc2cf2-7942-483d-be1f-bbeadc4714ad": { - "asset": 1714966328737, - "meta": 1717138651217, - "relativePath": "model\\prefab\\cone.prefab" - }, - "1c5e4038-953a-44c2-b620-0bbfc6170477": { - "asset": 1714966328737, - "meta": 1717138651221, - "relativePath": "model\\prefab\\cylinder.prefab" - }, - "0291c134-b3da-4098-b7b5-e397edbe947f": { - "asset": 1714966328689, - "meta": 1717138650943, - "relativePath": "image\\default_scrollbar.png" - }, - "3f376125-a699-40ca-ad05-04d662eaa1f2": { - "asset": 1714966328737, - "meta": 1717138651223, - "relativePath": "model\\prefab\\plane.prefab" - }, - "6c9ef10d-b479-420b-bfe6-39cdda6a8ae0": { - "asset": 1714966328737, - "meta": 1717138651207, - "relativePath": "model\\prefab\\quad.prefab" - }, - "600301aa-3357-4a10-b086-84f011fa32ba": { - "asset": 1714966328642, - "meta": 1717138650902, - "relativePath": "image\\default-particle.png" - }, - "2d9a4b85-b0ab-4c46-84c5-18f393ab2058": { - "asset": 1714966328737, - "meta": 1717138651205, - "relativePath": "model\\prefab\\sphere.prefab" - }, - "de510076-056b-484f-b94c-83bef217d0e1": { - "asset": 1714966328737, - "meta": 1717138651211, - "relativePath": "model\\prefab\\torus.prefab" - }, - "0275e94c-56a7-410f-bd1a-fc7483f7d14a": { - "asset": 1714966328705, - "meta": 1717138650940, - "relativePath": "image\\default_sprite_splash.png" - }, - "897ef7a1-4860-4f64-968d-f5924b18668a": { - "asset": 1714966328752, - "meta": 1717138650955, - "relativePath": "prefab\\2d-camera.prefab" - }, - "70d7cdb0-04cd-41bb-9480-c06a4785f386": { - "asset": 1714966328768, - "meta": 1717138650953, - "relativePath": "prefab\\3d-camera.prefab" - }, - "a3ee0214-b432-4865-9666-4a3211814282": { - "asset": 1714966328800, - "meta": 1717138650956, - "relativePath": "prefab\\light" - }, - "ed88f13d-fcad-4848-aa35-65a2cb973584": { - "asset": 1714966328768, - "meta": 1717138650958, - "relativePath": "prefab\\3d-stage.prefab" - }, - "70bbeb73-6dc2-4ee4-8faf-76b3a0e34ec4": { - "asset": 1714966328768, - "meta": 1717138650965, - "relativePath": "prefab\\3d-particle.prefab" - }, - "972b9a4d-47ee-4c74-b5c3-61d8a69bc29f": { - "asset": 1714966328768, - "meta": 1717138650960, - "relativePath": "prefab\\button.prefab" - }, - "2c937608-2562-40ea-b264-7395df6f0cea": { - "asset": 1714966328768, - "meta": 1717138650962, - "relativePath": "prefab\\canvas.prefab" - }, - "61aeb05b-3b32-452b-8eed-2b76deeed554": { - "asset": 1714966328783, - "meta": 1717138650967, - "relativePath": "prefab\\editbox.prefab" - }, - "27756ebb-3d33-44b0-9b96-e858fadd4dd4": { - "asset": 1714966328783, - "meta": 1717138650972, - "relativePath": "prefab\\label.prefab" - }, - "ca8401fe-ad6e-41a8-bd46-8e3e4e9945be": { - "asset": 1714966328800, - "meta": 1717138650979, - "relativePath": "prefab\\pageview.prefab" - }, - "785a442c-3ceb-45be-a46e-7317f625f3b9": { - "asset": 1714966328783, - "meta": 1717138650975, - "relativePath": "prefab\\layout.prefab" - }, - "cd33edea-55f5-46c2-958d-357a01384a36": { - "asset": 1714966328800, - "meta": 1717138650977, - "relativePath": "prefab\\particlesystem.prefab" - }, - "5965ffac-69da-4b55-bcde-9225d0613c28": { - "asset": 1714966328800, - "meta": 1717138650982, - "relativePath": "prefab\\progressBar.prefab" - }, - "2be36297-9abb-4fee-8049-9ed5e271da8a": { - "asset": 1714966328721, - "meta": 1717138651019, - "relativePath": "misc\\default_video.mp4" - }, - "4a37dd57-78cd-4cec-aad4-f11a73d12b63": { - "asset": 1714966328800, - "meta": 1717138650981, - "relativePath": "prefab\\richtext.prefab" - }, - "c25b9d50-c8fc-4d27-beeb-6e7c1f2e5c0f": { - "asset": 1714966328706, - "meta": 1717138651007, - "relativePath": "image\\default_toggle_disabled.png" - }, - "32044bd2-481f-4cf1-a656-e2b2fb1594eb": { - "asset": 1714966328800, - "meta": 1717138650985, - "relativePath": "prefab\\scrollview.prefab" - }, - "0004d1cf-a0ad-47d8-ab17-34d3db9d35a3": { - "asset": 1714966328800, - "meta": 1717138650987, - "relativePath": "prefab\\slider.prefab" - }, - "b181c1e4-0a72-4a91-bfb0-ae6f36ca60bd": { - "asset": 1714966328706, - "meta": 1717138651033, - "relativePath": "image\\default_toggle_pressed.png" - }, - "96083d03-c332-4a3f-9386-d03e2d19e8ee": { - "asset": 1714966328815, - "meta": 1717138651016, - "relativePath": "prefab\\sprite.prefab" - }, - "d8afc78c-4eac-4a9f-83dd-67bc70344d33": { - "asset": 1714966328862, - "meta": 1717138650588, - "relativePath": "resources" - }, - "294c1663-4adf-4a1e-a795-53808011a38a": { - "asset": 1714966328862, - "meta": 1717138651011, - "relativePath": "resources\\effects" - }, - "bbee2217-c261-49bd-a8ce-708d6bcc3500": { - "asset": 1714966328893, - "meta": 1717138651015, - "relativePath": "resources\\materials" - }, - "1f55e3be-b89b-4b79-88de-47fd31018044": { - "asset": 1714966328815, - "meta": 1717138651018, - "relativePath": "prefab\\sprite_splash.prefab" - }, - "30682f87-9f0d-4f17-8a44-72863791461b": { - "asset": 1714966328831, - "meta": 1717138651043, - "relativePath": "resources\\effects\\builtin-2d-graphics.effect" - }, - "73a0903d-d80e-4e3c-aa67-f999543c08f5": { - "asset": 1714966328706, - "meta": 1717138651012, - "relativePath": "image\\default_toggle_checkmark.png" - }, - "144c3297-af63-49e8-b8ef-1cfa29b3be28": { - "asset": 1714966328831, - "meta": 1717138651056, - "relativePath": "resources\\effects\\builtin-2d-gray-sprite.effect" - }, - "f18742d7-56d2-4eb5-ae49-2d9d710b37c8": { - "asset": 1714966328831, - "meta": 1717138651066, - "relativePath": "resources\\effects\\builtin-2d-label.effect" - }, - "7de03a80-4457-438d-95a7-3e7cdffd6086": { - "asset": 1714966328815, - "meta": 1717138651021, - "relativePath": "prefab\\tiledmap.prefab" - }, - "d29077ba-1627-4a72-9579-7b56a235340c": { - "asset": 1714966328706, - "meta": 1717138651029, - "relativePath": "image\\default_toggle_normal.png" - }, - "0e93aeaa-0b53-4e40-b8e0-6268b4e07bd7": { - "asset": 1714966328831, - "meta": 1717138651076, - "relativePath": "resources\\effects\\builtin-2d-spine.effect" - }, - "0e42ba95-1fa1-46aa-b2cf-143cd1bcee2c": { - "asset": 1714966328815, - "meta": 1717138651023, - "relativePath": "prefab\\tiledtile.prefab" - }, - "2874f8dd-416c-4440-81b7-555975426e93": { - "asset": 1714966328846, - "meta": 1717138651088, - "relativePath": "resources\\effects\\builtin-2d-sprite.effect" - }, - "d1b8be49-b0a0-435c-83b7-552bed4bbe35": { - "asset": 1714966328815, - "meta": 1717138651032, - "relativePath": "prefab\\toggleGroup.prefab" - }, - "829a282c-b049-4019-bd38-5ace8d8a6417": { - "asset": 1714966328846, - "meta": 1717138651151, - "relativePath": "resources\\effects\\builtin-3d-particle.effect" - }, - "bf0a434c-84dd-4a8e-a08a-7a36f180cc75": { - "asset": 1714966328815, - "meta": 1717138651027, - "relativePath": "prefab\\toggleContainer.prefab" - }, - "2a7c0036-e0b3-4fe1-8998-89a54b8a2bec": { - "asset": 1714966328846, - "meta": 1717138651179, - "relativePath": "resources\\effects\\builtin-3d-trail.effect" - }, - "0d784963-d024-4ea6-a7db-03be0ad63010": { - "asset": 1714966328815, - "meta": 1717138651025, - "relativePath": "prefab\\toggle.prefab" - }, - "c0040c95-c57f-49cd-9cbc-12316b73d0d4": { - "asset": 1714966328846, - "meta": 1717138651186, - "relativePath": "resources\\effects\\builtin-clear-stencil.effect" - }, - "232d2782-c4bd-4bb4-9e01-909f03d6d3b9": { - "asset": 1714966328815, - "meta": 1717138651045, - "relativePath": "prefab\\videoplayer.prefab" - }, - "6d91e591-4ce0-465c-809f-610ec95019c6": { - "asset": 1714966328862, - "meta": 1717138651201, - "relativePath": "resources\\effects\\builtin-unlit.effect" - }, - "8c5001fd-07ee-4a4b-a8a0-63e15195e94d": { - "asset": 1714966328831, - "meta": 1717138651160, - "relativePath": "prefab\\webview.prefab" - }, - "61906da3-7003-4bda-9abc-5769c76faee4": { - "asset": 1714966328783, - "meta": 1717138651212, - "relativePath": "prefab\\light\\ambient.prefab" - }, - "ddb99b39-7004-47cd-9705-751905c43c46": { - "asset": 1714966328800, - "meta": 1717138651219, - "relativePath": "prefab\\light\\directional.prefab" - }, - "0cf30284-9073-46bc-9eba-e62b69dbbff3": { - "asset": 1714966328800, - "meta": 1717138651227, - "relativePath": "prefab\\light\\point.prefab" - }, - "f5331fd2-bf42-4ee3-a3fd-3e1657600eff": { - "asset": 1714966328800, - "meta": 1717138651228, - "relativePath": "prefab\\light\\spot.prefab" - }, - "a153945d-2511-4c14-be7b-05d242f47d57": { - "asset": 1714966328862, - "meta": 1717138651332, - "relativePath": "resources\\materials\\builtin-2d-graphics.mtl" - }, - "3a7bb79f-32fd-422e-ada2-96f518fed422": { - "asset": 1714966328862, - "meta": 1717138651331, - "relativePath": "resources\\materials\\builtin-2d-gray-sprite.mtl" - }, - "7afd064b-113f-480e-b793-8817d19f63c3": { - "asset": 1714966328878, - "meta": 1717138651328, - "relativePath": "resources\\materials\\builtin-2d-spine.mtl" - }, - "e02d87d4-e599-4d16-8001-e14891ac6506": { - "asset": 1714966328878, - "meta": 1717138651328, - "relativePath": "resources\\materials\\builtin-2d-label.mtl" - }, - "6f801092-0c37-4f30-89ef-c8d960825b36": { - "asset": 1714966328862, - "meta": 1717138651327, - "relativePath": "resources\\materials\\builtin-2d-base.mtl" - }, - "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432": { - "asset": 1714966328878, - "meta": 1717138651330, - "relativePath": "resources\\materials\\builtin-2d-sprite.mtl" - }, - "cf7e0bb8-a81c-44a9-ad79-d28d43991032": { - "asset": 1714966328878, - "meta": 1717138651336, - "relativePath": "resources\\materials\\builtin-clear-stencil.mtl" - }, - "2a296057-247c-4a1c-bbeb-0548b6c98650": { - "asset": 1714966328893, - "meta": 1717138651335, - "relativePath": "resources\\materials\\builtin-unlit.mtl" - }, - "466d4f9b-e5f4-4ea8-85d5-3c6e9a65658a": { - "asset": 1714966328878, - "meta": 1717138651333, - "relativePath": "resources\\materials\\builtin-3d-trail.mtl" - }, - "8a96b965-2dc0-4e03-aa90-3b79cb93b5b4": { - "asset": 1714966328752, - "meta": 1717138651035, - "relativePath": "obsolete\\atom.png" - }, - "432fa09c-cf03-4cff-a186-982604408a07": { - "asset": 1714966328878, - "meta": 1717138651334, - "relativePath": "resources\\materials\\builtin-3d-particle.mtl" - }, - "d0a82d39-bede-46c4-b698-c81ff0dedfff": { - "asset": 1714966328752, - "meta": 1717138651010, - "relativePath": "particle\\atom.png" - }, - "b2687ac4-099e-403c-a192-ff477686f4f5": { - "asset": 1714966328752, - "meta": 1717138651368, - "relativePath": "particle\\atom.plist" - }, - "b8223619-7e38-47c4-841f-9160c232495a": { - "asset": 1714966328752, - "meta": 1717138651369, - "relativePath": "obsolete\\atom.plist" - }, - "954fec8b-cd16-4bb9-a3b7-7719660e7558": { - "asset": 1714966328737, - "meta": 1717138653478, - "relativePath": "model\\primitives.fbx" - }, "ddac3642-fbda-4742-bd05-b3d208870e1a": { "asset": 1717138578210, "meta": 1717138653645, "relativePath": "Script\\tool\\GameTool.ts" }, - "f124c672-2895-4f3e-86ec-14a468f946a6": { - "asset": 1717128110405, - "meta": 1717138653655, - "relativePath": "Script\\tool\\Storage.ts" - }, "2a951e22-b1e0-4155-972d-251ef3fa8f5a": { "asset": 1717138670447, "meta": 1717138670450, "relativePath": "prefab\\RankListItem.prefab" }, + "e74a9f7d-2031-4e69-bcb2-9998174088b2": { + "asset": 1717584201849, + "meta": 1717589388385, + "relativePath": "Script\\RankManager.ts" + }, "454ad829-851a-40ea-8ab9-941e828357ca": { - "asset": 1717138705575, - "meta": 1717138760409, + "asset": 1717580116054, + "meta": 1717580133402, "relativePath": "Script\\Load.ts" + }, + "1f9265d6-31fa-4638-be80-340517745006": { + "asset": 1717589469846, + "meta": 1717589469849, + "relativePath": "prefab\\Canvas.prefab" + }, + "9836134e-b892-4283-b6b2-78b5acf3ed45": { + "asset": 1714966328642, + "meta": 1717750894913, + "relativePath": "effects" + }, + "abc2cb62-7852-4525-a90d-d474487b88f2": { + "asset": 1714966328642, + "meta": 1717750895043, + "relativePath": "effects\\builtin-phong.effect" + }, + "e2f00085-c597-422d-9759-52c360279106": { + "asset": 1714966328642, + "meta": 1717750895103, + "relativePath": "effects\\builtin-toon.effect" + }, + "430eccbf-bf2c-4e6e-8c0c-884bbb487f32": { + "asset": 1714966328642, + "meta": 1717750895115, + "relativePath": "effects\\__builtin-editor-gizmo-line.effect" + }, + "6c5cf6e1-b044-4eac-9431-835644d57381": { + "asset": 1714966328642, + "meta": 1717750895128, + "relativePath": "effects\\__builtin-editor-gizmo-unlit.effect" + }, + "115286d1-2e10-49ee-aab4-341583f607e8": { + "asset": 1714966328642, + "meta": 1717750895154, + "relativePath": "effects\\__builtin-editor-gizmo.effect" + }, + "f8e6b000-5643-4b86-9080-aa680ce1f599": { + "asset": 1714966328706, + "meta": 1717750894913, + "relativePath": "image" + }, + "5c3eedba-6c41-4c0c-9ba7-d91f813cbd1c": { + "asset": 1714966328721, + "meta": 1717750894915, + "relativePath": "materials" + }, + "fc09f9bd-2cce-4605-b630-8145ef809ed6": { + "asset": 1714966328721, + "meta": 1717750894915, + "relativePath": "misc" + }, + "99170b0b-d210-46f1-b213-7d9e3f23098a": { + "asset": 1714966328673, + "meta": 1717750895265, + "relativePath": "image\\default_progressbar_bg.png" + }, + "db019bf7-f71c-4111-98cf-918ea180cb48": { + "asset": 1714966328737, + "meta": 1717750894915, + "relativePath": "model" + }, + "e39e96e6-6f6e-413f-bcf1-ac7679bb648a": { + "asset": 1714966328737, + "meta": 1717750895238, + "relativePath": "model\\prefab" + }, + "617323dd-11f4-4dd3-8eec-0caf6b3b45b9": { + "asset": 1714966328689, + "meta": 1717750895273, + "relativePath": "image\\default_scrollbar_vertical_bg.png" + }, + "e851e89b-faa2-4484-bea6-5c01dd9f06e2": { + "asset": 1714966328658, + "meta": 1717750895265, + "relativePath": "image\\default_btn_normal.png" + }, + "4bab67cb-18e6-4099-b840-355f0473f890": { + "asset": 1714966328689, + "meta": 1717750895273, + "relativePath": "image\\default_scrollbar_bg.png" + }, + "edd215b9-2796-4a05-aaf5-81f96c9281ce": { + "asset": 1714966328658, + "meta": 1717750895272, + "relativePath": "image\\default_editbox_bg.png" + }, + "b43ff3c2-02bb-4874-81f7-f2dea6970f18": { + "asset": 1714966328658, + "meta": 1717750895230, + "relativePath": "image\\default_btn_pressed.png" + }, + "6e056173-d285-473c-b206-40a7fff5386e": { + "asset": 1714966328689, + "meta": 1717750895273, + "relativePath": "image\\default_sprite.png" + }, + "600301aa-3357-4a10-b086-84f011fa32ba": { + "asset": 1714966328642, + "meta": 1717750895226, + "relativePath": "image\\default-particle.png" + }, + "c4480a0a-6ac5-443f-8b40-361a14257fc8": { + "asset": 1714966328706, + "meta": 1717750895633, + "relativePath": "materials\\builtin-phong.mtl" + }, + "f6e6dd15-71d1-4ffe-ace7-24fd39942c05": { + "asset": 1714966328752, + "meta": 1717750894915, + "relativePath": "obsolete" + }, + "d81ec8ad-247c-4e62-aa3c-d35c4193c7af": { + "asset": 1714966328673, + "meta": 1717750895219, + "relativePath": "image\\default_panel.png" + }, + "a87cc147-01b2-43f8-8e42-a7ca90b0c757": { + "asset": 1714966328721, + "meta": 1717750895526, + "relativePath": "model\\prefab\\box.prefab" + }, + "71561142-4c83-4933-afca-cb7a17f67053": { + "asset": 1714966328658, + "meta": 1717750895221, + "relativePath": "image\\default_btn_disabled.png" + }, + "b5fc2cf2-7942-483d-be1f-bbeadc4714ad": { + "asset": 1714966328737, + "meta": 1717750895544, + "relativePath": "model\\prefab\\cone.prefab" + }, + "f743d2b6-b7ea-4c14-a55b-547ed4d0a045": { + "asset": 1714966328752, + "meta": 1717750894915, + "relativePath": "particle" + }, + "cfef78f1-c8df-49b7-8ed0-4c953ace2621": { + "asset": 1714966328673, + "meta": 1717750895233, + "relativePath": "image\\default_progressbar.png" + }, + "fe1417b6-fe6b-46a4-ae7c-9fd331f33a2a": { + "asset": 1714966328737, + "meta": 1717750895513, + "relativePath": "model\\prefab\\capsule.prefab" + }, + "567dcd80-8bf4-4535-8a5a-313f1caf078a": { + "asset": 1714966328673, + "meta": 1717750895216, + "relativePath": "image\\default_radio_button_off.png" + }, + "1c5e4038-953a-44c2-b620-0bbfc6170477": { + "asset": 1714966328737, + "meta": 1717750895544, + "relativePath": "model\\prefab\\cylinder.prefab" + }, + "3f376125-a699-40ca-ad05-04d662eaa1f2": { + "asset": 1714966328737, + "meta": 1717750895550, + "relativePath": "model\\prefab\\plane.prefab" + }, + "0291c134-b3da-4098-b7b5-e397edbe947f": { + "asset": 1714966328689, + "meta": 1717750895273, + "relativePath": "image\\default_scrollbar.png" + }, + "ae6c6c98-11e4-452f-8758-75f5c6a56e83": { + "asset": 1714966328831, + "meta": 1717750894915, + "relativePath": "prefab" + }, + "9d60001f-b5f4-4726-a629-2659e3ded0b8": { + "asset": 1714966328673, + "meta": 1717750895236, + "relativePath": "image\\default_radio_button_on.png" + }, + "6c9ef10d-b479-420b-bfe6-39cdda6a8ae0": { + "asset": 1714966328737, + "meta": 1717750895553, + "relativePath": "model\\prefab\\quad.prefab" + }, + "d6d3ca85-4681-47c1-b5dd-d036a9d39ea2": { + "asset": 1714966328689, + "meta": 1717750895273, + "relativePath": "image\\default_scrollbar_vertical.png" + }, + "2d9a4b85-b0ab-4c46-84c5-18f393ab2058": { + "asset": 1714966328737, + "meta": 1717750895553, + "relativePath": "model\\prefab\\sphere.prefab" + }, + "de510076-056b-484f-b94c-83bef217d0e1": { + "asset": 1714966328737, + "meta": 1717750895553, + "relativePath": "model\\prefab\\torus.prefab" + }, + "897ef7a1-4860-4f64-968d-f5924b18668a": { + "asset": 1714966328752, + "meta": 1717750895293, + "relativePath": "prefab\\2d-camera.prefab" + }, + "70d7cdb0-04cd-41bb-9480-c06a4785f386": { + "asset": 1714966328768, + "meta": 1717750895293, + "relativePath": "prefab\\3d-camera.prefab" + }, + "a3ee0214-b432-4865-9666-4a3211814282": { + "asset": 1714966328800, + "meta": 1717750895293, + "relativePath": "prefab\\light" + }, + "972b9a4d-47ee-4c74-b5c3-61d8a69bc29f": { + "asset": 1714966328768, + "meta": 1717750895305, + "relativePath": "prefab\\button.prefab" + }, + "70bbeb73-6dc2-4ee4-8faf-76b3a0e34ec4": { + "asset": 1714966328768, + "meta": 1717750895302, + "relativePath": "prefab\\3d-particle.prefab" + }, + "ed88f13d-fcad-4848-aa35-65a2cb973584": { + "asset": 1714966328768, + "meta": 1717750895293, + "relativePath": "prefab\\3d-stage.prefab" + }, + "2c937608-2562-40ea-b264-7395df6f0cea": { + "asset": 1714966328768, + "meta": 1717750895304, + "relativePath": "prefab\\canvas.prefab" + }, + "61aeb05b-3b32-452b-8eed-2b76deeed554": { + "asset": 1714966328783, + "meta": 1717750895305, + "relativePath": "prefab\\editbox.prefab" + }, + "27756ebb-3d33-44b0-9b96-e858fadd4dd4": { + "asset": 1714966328783, + "meta": 1717750895312, + "relativePath": "prefab\\label.prefab" + }, + "0275e94c-56a7-410f-bd1a-fc7483f7d14a": { + "asset": 1714966328705, + "meta": 1717750895283, + "relativePath": "image\\default_sprite_splash.png" + }, + "785a442c-3ceb-45be-a46e-7317f625f3b9": { + "asset": 1714966328783, + "meta": 1717750895313, + "relativePath": "prefab\\layout.prefab" + }, + "ca8401fe-ad6e-41a8-bd46-8e3e4e9945be": { + "asset": 1714966328800, + "meta": 1717750895326, + "relativePath": "prefab\\pageview.prefab" + }, + "cd33edea-55f5-46c2-958d-357a01384a36": { + "asset": 1714966328800, + "meta": 1717750895313, + "relativePath": "prefab\\particlesystem.prefab" + }, + "5965ffac-69da-4b55-bcde-9225d0613c28": { + "asset": 1714966328800, + "meta": 1717750895322, + "relativePath": "prefab\\progressBar.prefab" + }, + "4a37dd57-78cd-4cec-aad4-f11a73d12b63": { + "asset": 1714966328800, + "meta": 1717750895328, + "relativePath": "prefab\\richtext.prefab" + }, + "32044bd2-481f-4cf1-a656-e2b2fb1594eb": { + "asset": 1714966328800, + "meta": 1717750895323, + "relativePath": "prefab\\scrollview.prefab" + }, + "0004d1cf-a0ad-47d8-ab17-34d3db9d35a3": { + "asset": 1714966328800, + "meta": 1717750895333, + "relativePath": "prefab\\slider.prefab" + }, + "96083d03-c332-4a3f-9386-d03e2d19e8ee": { + "asset": 1714966328815, + "meta": 1717750895343, + "relativePath": "prefab\\sprite.prefab" + }, + "2be36297-9abb-4fee-8049-9ed5e271da8a": { + "asset": 1714966328721, + "meta": 1717750895377, + "relativePath": "misc\\default_video.mp4" + }, + "d8afc78c-4eac-4a9f-83dd-67bc70344d33": { + "asset": 1714966328862, + "meta": 1717750894915, + "relativePath": "resources" + }, + "294c1663-4adf-4a1e-a795-53808011a38a": { + "asset": 1714966328862, + "meta": 1717750895345, + "relativePath": "resources\\effects" + }, + "bbee2217-c261-49bd-a8ce-708d6bcc3500": { + "asset": 1714966328893, + "meta": 1717750895347, + "relativePath": "resources\\materials" + }, + "7de03a80-4457-438d-95a7-3e7cdffd6086": { + "asset": 1714966328815, + "meta": 1717750895353, + "relativePath": "prefab\\tiledmap.prefab" + }, + "30682f87-9f0d-4f17-8a44-72863791461b": { + "asset": 1714966328831, + "meta": 1717750895385, + "relativePath": "resources\\effects\\builtin-2d-graphics.effect" + }, + "73a0903d-d80e-4e3c-aa67-f999543c08f5": { + "asset": 1714966328706, + "meta": 1717750895337, + "relativePath": "image\\default_toggle_checkmark.png" + }, + "0e42ba95-1fa1-46aa-b2cf-143cd1bcee2c": { + "asset": 1714966328815, + "meta": 1717750895365, + "relativePath": "prefab\\tiledtile.prefab" + }, + "144c3297-af63-49e8-b8ef-1cfa29b3be28": { + "asset": 1714966328831, + "meta": 1717750895402, + "relativePath": "resources\\effects\\builtin-2d-gray-sprite.effect" + }, + "b181c1e4-0a72-4a91-bfb0-ae6f36ca60bd": { + "asset": 1714966328706, + "meta": 1717750895363, + "relativePath": "image\\default_toggle_pressed.png" + }, + "0d784963-d024-4ea6-a7db-03be0ad63010": { + "asset": 1714966328815, + "meta": 1717750895365, + "relativePath": "prefab\\toggle.prefab" + }, + "f18742d7-56d2-4eb5-ae49-2d9d710b37c8": { + "asset": 1714966328831, + "meta": 1717750895413, + "relativePath": "resources\\effects\\builtin-2d-label.effect" + }, + "c25b9d50-c8fc-4d27-beeb-6e7c1f2e5c0f": { + "asset": 1714966328706, + "meta": 1717750895352, + "relativePath": "image\\default_toggle_disabled.png" + }, + "1f55e3be-b89b-4b79-88de-47fd31018044": { + "asset": 1714966328815, + "meta": 1717750895359, + "relativePath": "prefab\\sprite_splash.prefab" + }, + "0e93aeaa-0b53-4e40-b8e0-6268b4e07bd7": { + "asset": 1714966328831, + "meta": 1717750895425, + "relativePath": "resources\\effects\\builtin-2d-spine.effect" + }, + "d29077ba-1627-4a72-9579-7b56a235340c": { + "asset": 1714966328706, + "meta": 1717750895353, + "relativePath": "image\\default_toggle_normal.png" + }, + "2874f8dd-416c-4440-81b7-555975426e93": { + "asset": 1714966328846, + "meta": 1717750895435, + "relativePath": "resources\\effects\\builtin-2d-sprite.effect" + }, + "829a282c-b049-4019-bd38-5ace8d8a6417": { + "asset": 1714966328846, + "meta": 1717750895492, + "relativePath": "resources\\effects\\builtin-3d-particle.effect" + }, + "2a7c0036-e0b3-4fe1-8998-89a54b8a2bec": { + "asset": 1714966328846, + "meta": 1717750895504, + "relativePath": "resources\\effects\\builtin-3d-trail.effect" + }, + "c0040c95-c57f-49cd-9cbc-12316b73d0d4": { + "asset": 1714966328846, + "meta": 1717750895526, + "relativePath": "resources\\effects\\builtin-clear-stencil.effect" + }, + "6d91e591-4ce0-465c-809f-610ec95019c6": { + "asset": 1714966328862, + "meta": 1717750895534, + "relativePath": "resources\\effects\\builtin-unlit.effect" + }, + "bf0a434c-84dd-4a8e-a08a-7a36f180cc75": { + "asset": 1714966328815, + "meta": 1717750895365, + "relativePath": "prefab\\toggleContainer.prefab" + }, + "d1b8be49-b0a0-435c-83b7-552bed4bbe35": { + "asset": 1714966328815, + "meta": 1717750895373, + "relativePath": "prefab\\toggleGroup.prefab" + }, + "232d2782-c4bd-4bb4-9e01-909f03d6d3b9": { + "asset": 1714966328815, + "meta": 1717750895404, + "relativePath": "prefab\\videoplayer.prefab" + }, + "8c5001fd-07ee-4a4b-a8a0-63e15195e94d": { + "asset": 1714966328831, + "meta": 1717750895413, + "relativePath": "prefab\\webview.prefab" + }, + "61906da3-7003-4bda-9abc-5769c76faee4": { + "asset": 1714966328783, + "meta": 1717750895553, + "relativePath": "prefab\\light\\ambient.prefab" + }, + "ddb99b39-7004-47cd-9705-751905c43c46": { + "asset": 1714966328800, + "meta": 1717750895553, + "relativePath": "prefab\\light\\directional.prefab" + }, + "0cf30284-9073-46bc-9eba-e62b69dbbff3": { + "asset": 1714966328800, + "meta": 1717750895553, + "relativePath": "prefab\\light\\point.prefab" + }, + "f5331fd2-bf42-4ee3-a3fd-3e1657600eff": { + "asset": 1714966328800, + "meta": 1717750895563, + "relativePath": "prefab\\light\\spot.prefab" + }, + "6f801092-0c37-4f30-89ef-c8d960825b36": { + "asset": 1714966328862, + "meta": 1717750895657, + "relativePath": "resources\\materials\\builtin-2d-base.mtl" + }, + "e02d87d4-e599-4d16-8001-e14891ac6506": { + "asset": 1714966328878, + "meta": 1717750895657, + "relativePath": "resources\\materials\\builtin-2d-label.mtl" + }, + "432fa09c-cf03-4cff-a186-982604408a07": { + "asset": 1714966328878, + "meta": 1717750895665, + "relativePath": "resources\\materials\\builtin-3d-particle.mtl" + }, + "7afd064b-113f-480e-b793-8817d19f63c3": { + "asset": 1714966328878, + "meta": 1717750895657, + "relativePath": "resources\\materials\\builtin-2d-spine.mtl" + }, + "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432": { + "asset": 1714966328878, + "meta": 1717750895662, + "relativePath": "resources\\materials\\builtin-2d-sprite.mtl" + }, + "a153945d-2511-4c14-be7b-05d242f47d57": { + "asset": 1714966328862, + "meta": 1717750895657, + "relativePath": "resources\\materials\\builtin-2d-graphics.mtl" + }, + "8a96b965-2dc0-4e03-aa90-3b79cb93b5b4": { + "asset": 1714966328752, + "meta": 1717750895377, + "relativePath": "obsolete\\atom.png" + }, + "3a7bb79f-32fd-422e-ada2-96f518fed422": { + "asset": 1714966328862, + "meta": 1717750895657, + "relativePath": "resources\\materials\\builtin-2d-gray-sprite.mtl" + }, + "cf7e0bb8-a81c-44a9-ad79-d28d43991032": { + "asset": 1714966328878, + "meta": 1717750895663, + "relativePath": "resources\\materials\\builtin-clear-stencil.mtl" + }, + "2a296057-247c-4a1c-bbeb-0548b6c98650": { + "asset": 1714966328893, + "meta": 1717750895665, + "relativePath": "resources\\materials\\builtin-unlit.mtl" + }, + "d0a82d39-bede-46c4-b698-c81ff0dedfff": { + "asset": 1714966328752, + "meta": 1717750895361, + "relativePath": "particle\\atom.png" + }, + "466d4f9b-e5f4-4ea8-85d5-3c6e9a65658a": { + "asset": 1714966328878, + "meta": 1717750895665, + "relativePath": "resources\\materials\\builtin-3d-trail.mtl" + }, + "b8223619-7e38-47c4-841f-9160c232495a": { + "asset": 1714966328752, + "meta": 1717750895687, + "relativePath": "obsolete\\atom.plist" + }, + "b2687ac4-099e-403c-a192-ff477686f4f5": { + "asset": 1714966328752, + "meta": 1717750895688, + "relativePath": "particle\\atom.plist" + }, + "954fec8b-cd16-4bb9-a3b7-7719660e7558": { + "asset": 1714966328737, + "meta": 1717750897447, + "relativePath": "model\\primitives.fbx" + }, + "5932ca98-ee86-44cb-bd49-7947b2c92fd9": { + "asset": 1714149065569, + "meta": 1717671258629, + "relativePath": "res\\rankBtn.png" + }, + "3fd2f87a-bc73-4978-8494-8b35b4f716ad": { + "asset": 1717750933455, + "meta": 1717750992446, + "relativePath": "Script\\GuideManager.ts" } } \ No newline at end of file diff --git a/local/layout.editor.json b/local/layout.editor.json index e9f57b1..5ca7836 100644 --- a/local/layout.editor.json +++ b/local/layout.editor.json @@ -13,13 +13,13 @@ "type": "dock-h", "children": [ { - "width": 207.28125, + "width": 207, "height": 571, "type": "dock-v", "children": [ { - "width": 207.28125, - "height": 308.13543701171875, + "width": 207, + "height": 307.9895935058594, "type": "panel", "active": 0, "children": [ @@ -27,8 +27,8 @@ ] }, { - "width": 207.28125, - "height": 259.8645935058594, + "width": 207, + "height": 260, "type": "panel", "active": 0, "children": [ @@ -38,7 +38,7 @@ ] }, { - "width": 759.3333740234375, + "width": 759.9896240234375, "height": 571, "type": "panel", "active": 0, @@ -47,7 +47,7 @@ ] }, { - "width": 307.375, + "width": 307, "height": 571, "type": "panel", "active": 0, diff --git a/local/local.json b/local/local.json index 20fe934..78938a8 100644 --- a/local/local.json +++ b/local/local.json @@ -1,16 +1,16 @@ { - "last-edit": "2d2f792f-a40c-49bb-a189-ed176a246e49", + "last-edit": "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d", "recent-items": [ "40ba7e70-1826-4aa1-92f3-aa63ae39294b", "32254f37-ac95-4912-a787-b8e0429ba0f1", - "774829bb-123e-48b6-930e-6b3e02491506", - "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", - "4b9c5a7e-c645-48a4-9aca-5df381ce4ef5", "4eaf518b-35ec-4262-928d-4d497c3f2830", - "2d2f792f-a40c-49bb-a189-ed176a246e49" + "4b9c5a7e-c645-48a4-9aca-5df381ce4ef5", + "2d2f792f-a40c-49bb-a189-ed176a246e49", + "774829bb-123e-48b6-930e-6b3e02491506", + "9c08062d-4cf1-4b6e-a8ba-4a3881cc7e7d" ] } diff --git a/local/node-tree-state.json b/local/node-tree-state.json index 60d674d..eff3fc1 100644 --- a/local/node-tree-state.json +++ b/local/node-tree-state.json @@ -39,7 +39,6 @@ "80UN5iBc9K9pd8hXCc1VAk", "9a3MBWS0tATp1bXC+684by", "bdbEH+735OxrggnQuRlqF2", - "99Fe5tv8pMaYMcXAIOO6ZV", "85AQ3wR2VBJ7P/esG1IsjH", "bb+DPySjNLhZcxUUphVuRh", "235SMzDbhOq6ztcaxq2zgs", @@ -119,8 +118,6 @@ "92Bxdq/nxJrKbyHZwa4jwm", "eahu5Qi+RGYbJveL2sjd9E", "c8+DIo6iBFRoHHuMStaRmg", - "83fdXjJEdM1rCZghbgf9lv", - "ddR9GXKuBKg5J0qSoBz++j", "53Pa/U9npHVaLLi4mcXCDl", "3bRpAXkXhC5KGgG14EgGiz", "caA1gIw+dDIKpQRMeiQ5aE", @@ -130,7 +127,6 @@ "87Iwfstz9IgJrGdhWc1ece", "93AB/tAtpJiLIhsM2hj4oS", "19pF4+lS9JVKxLaFN6zmKh", - "68QXyex9ZCjpGvlESAcHm3", "a4t+8IfEBL5IRPc1LZVawN", "16n0c3PGdH0L2eZEIIZqR9", "67pDCJ/gVK55UJKFtKqYeN", @@ -148,7 +144,6 @@ "f0mxIJ78ZFGL41VXlNAceQ", "86aT3Ws0hLmY2uYrTFI/h/", "e6rWoQ+M9CMY7I5AsszNvM", - "50E0EvF9tGWqRoojKDG6C/", "01rHBFfk1N1ZEGX1MPr8b6", "37o6ML199Jfbx6/Z0CMQXl", "6e1Azk36RENrQuZggUjGIE", @@ -172,7 +167,6 @@ "83sPOoHdxEYKjGxoSaM0qs", "099fBgiItNAZGt+FmRzphy", "a9mMXgbUVKrraT/vqVCVIE", - "a7NUURWktGVbn5uaL7RgDc", "e1+Ep5C1JCdY73gjVbslja", "b0XjKf8upJNo4AhV03u6Uw", "c8yoqytmtNTJJgyelkUe7g", @@ -180,8 +174,6 @@ "a2FE/ArDJMvYxCIXp+aJNs", "d7Go7VAudBuoLS0+DrZ3M2", "5ed3tKYdxCPJ51e/i3ecou", - "e2e0crkOLxGrpMxpbC4iQg1", - "cf4fwLe4hJXLYT5vY7WfC9", "a9Y/TP/QhAdq9i2KGsTC0d", "a1BRwywGFMT6iJxK+nijOf", "7aHA1K+7hE8YNbYjVirEih", @@ -199,16 +191,24 @@ "ecZU+ZNaxJvovWhjTwolW3", "1eUcABlmZJH62rOyXieYFR", "9ah+lyxSVO6Jf1EY5aebLK", - "78Sk802p9L/Ip+ZPEFbJnp", - "cfD+6eekJE44Ilk2xG5ORu", "6bCpWS8ktAfIpBUoWywuvF", "97jJpx7PFP3KaIhLHDBrwq", "beOm6xY9JGcpUIgHepr4za", "05VwVz2ohMvbMUbFxpVLs6", "a0jBYkupRJ1qUCnIBv+/lY", "5dxBdyCr9Dd7WMwsS/0Owj", - "791LpnRkFNkqdfpCoJ3Pqk", + "99Fe5tv8pMaYMcXAIOO6ZV", + "50E0EvF9tGWqRoojKDG6C/", + "68QXyex9ZCjpGvlESAcHm3", + "a7NUURWktGVbn5uaL7RgDc", + "78Sk802p9L/Ip+ZPEFbJnp", + "cfD+6eekJE44Ilk2xG5ORu", + "83fdXjJEdM1rCZghbgf9lv", + "ddR9GXKuBKg5J0qSoBz++j", + "10unPSfi1NUb30N1EjhieB", + "cf4fwLe4hJXLYT5vY7WfC9", + "e2e0crkOLxGrpMxpbC4iQg1", "8ak5WlHVBELqSzRzcpZa3P", - "10unPSfi1NUb30N1EjhieB" + "791LpnRkFNkqdfpCoJ3Pqk" ] } diff --git a/settings/project.json b/settings/project.json index c141d3e..768893a 100644 --- a/settings/project.json +++ b/settings/project.json @@ -1,5 +1,5 @@ { - "last-module-event-record-time": 1716951696375, + "last-module-event-record-time": 1717577615724, "group-list": [ "default" ], diff --git a/temp/BackupAssets/assets/Scene/GuideScene.fire b/temp/BackupAssets/assets/Scene/GuideScene.fire index c66c139..79e9f56 100644 --- a/temp/BackupAssets/assets/Scene/GuideScene.fire +++ b/temp/BackupAssets/assets/Scene/GuideScene.fire @@ -2302,7 +2302,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 480, + "width": 432, "height": 135.6 }, "_anchorPoint": { @@ -2356,7 +2356,7 @@ "_dstBlendFactor": 771, "_string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", "_N$string": "你是后羿,需要驱逐太阳,\n制止这场浩劫。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -3354,7 +3354,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 520, + "width": 468, "height": 75.6 }, "_anchorPoint": { @@ -3408,7 +3408,7 @@ "_dstBlendFactor": 771, "_string": "记住屏幕中太阳出现的顺序。", "_N$string": "记住屏幕中太阳出现的顺序。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -4311,7 +4311,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 504, "height": 75.6 }, "_anchorPoint": { @@ -4365,7 +4365,7 @@ "_dstBlendFactor": 771, "_string": "按照太阳的出现顺序依次点击。", "_N$string": "按照太阳的出现顺序依次点击。", - "_fontSize": 40, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, @@ -5265,7 +5265,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 560, + "width": 576, "height": 195.6 }, "_anchorPoint": { @@ -5319,7 +5319,7 @@ "_dstBlendFactor": 771, "_string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", "_N$string": "太厉害了,你已经成功驱逐了太阳。\n神弓法力只有2分钟,\n接下来请继续帮助苍生吧!", - "_fontSize": 35, + "_fontSize": 36, "_lineHeight": 60, "_enableWrapText": true, "_N$file": null, diff --git a/temp/BackupAssets/assets/Scene/LoadScene.fire b/temp/BackupAssets/assets/Scene/LoadScene.fire index 6a53004..b8300c2 100644 --- a/temp/BackupAssets/assets/Scene/LoadScene.fire +++ b/temp/BackupAssets/assets/Scene/LoadScene.fire @@ -1359,7 +1359,7 @@ "_srcBlendFactor": 770, "_dstBlendFactor": 771, "_spriteFrame": { - "__uuid__": "9615103c-b027-48c9-b2a6-4d01e594a784" + "__uuid__": "e8db2543-6af9-4173-a369-6cafed03a0eb" }, "_type": 1, "_sizeMode": 1, @@ -1372,9 +1372,7 @@ "_fillStart": 0, "_fillRange": 0, "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, + "_atlas": null, "_id": "e3tnncQgtFn49iTBzwCpMN" }, { diff --git a/temp/BackupAssets/assets/Scene/RankScene.fire b/temp/BackupAssets/assets/Scene/RankScene.fire index 5fa8d06..bdb2410 100644 --- a/temp/BackupAssets/assets/Scene/RankScene.fire +++ b/temp/BackupAssets/assets/Scene/RankScene.fire @@ -72,40 +72,42 @@ "__id__": 3 }, { - "__id__": 5 + "__id__": 6 }, { - "__id__": 11 + "__id__": 15 }, { - "__id__": 62 + "__id__": 71 }, { - "__id__": 69 + "__id__": 82 }, { - "__id__": 84 + "__id__": 105 }, { - "__id__": 86 + "__id__": 108 }, { - "__id__": 109 + "__id__": 143 } ], "_active": true, "_components": [ { - "__id__": 114 + "__id__": 149 }, { - "__id__": 115 + "__id__": 150 }, { - "__id__": 116 + "__id__": 151 } ], - "_prefab": null, + "_prefab": { + "__id__": 152 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -167,7 +169,9 @@ "__id__": 4 } ], - "_prefab": null, + "_prefab": { + "__id__": 5 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -251,6 +255,17 @@ "_alignWithScreen": true, "_id": "40YcGtOLdDr6BSLg4kOPDC" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "97fLKw9fpLKIc0dJLpbPlR", + "sync": false + }, { "__type__": "cc.Node", "_name": "background", @@ -260,19 +275,21 @@ }, "_children": [ { - "__id__": 6 + "__id__": 7 }, { - "__id__": 8 + "__id__": 10 } ], "_active": true, "_components": [ { - "__id__": 10 + "__id__": 13 } ], - "_prefab": null, + "_prefab": { + "__id__": 14 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -325,16 +342,18 @@ "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 7 + "__id__": 8 } ], - "_prefab": null, + "_prefab": { + "__id__": 9 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -387,7 +406,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 6 + "__id__": 7 }, "_enabled": true, "_materials": [ @@ -414,21 +433,34 @@ "_atlas": null, "_id": "3fB3H5tTlIlKVeuLBgN2qd" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c5puxQ0Z5GMpH5c8y1917z", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Sprite", "_objFlags": 0, "_parent": { - "__id__": 5 + "__id__": 6 }, "_children": [], "_active": true, "_components": [ { - "__id__": 9 + "__id__": 11 } ], - "_prefab": null, + "_prefab": { + "__id__": 12 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -481,7 +513,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 8 + "__id__": 10 }, "_enabled": true, "_materials": [ @@ -508,12 +540,23 @@ "_atlas": null, "_id": "faN5bpm8tIb40jYDjtbwXj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "6ee9vBJQ5Hs43VSXCcp0fr", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 5 + "__id__": 6 }, "_enabled": true, "_materials": [ @@ -540,6 +583,17 @@ "_atlas": null, "_id": "888hvGBMlC74RLITj4GjZH" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "8dEBgqFXxELpmAzyYl1ZRR", + "sync": false + }, { "__type__": "cc.Node", "_name": "ScrollView", @@ -549,25 +603,27 @@ }, "_children": [ { - "__id__": 12 + "__id__": 16 }, { - "__id__": 18 + "__id__": 23 } ], "_active": true, "_components": [ { - "__id__": 60 + "__id__": 68 }, { - "__id__": 16 + "__id__": 21 }, { - "__id__": 61 + "__id__": 69 } ], - "_prefab": null, + "_prefab": { + "__id__": 70 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -620,26 +676,28 @@ "_name": "scrollBar", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 13 + "__id__": 17 } ], "_active": false, "_components": [ { - "__id__": 15 + "__id__": 20 }, { - "__id__": 58 + "__id__": 65 }, { - "__id__": 59 + "__id__": 66 } ], - "_prefab": null, + "_prefab": { + "__id__": 67 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -692,16 +750,18 @@ "_name": "bar", "_objFlags": 512, "_parent": { - "__id__": 12 + "__id__": 16 }, "_children": [], "_active": true, "_components": [ { - "__id__": 14 + "__id__": 18 } ], - "_prefab": null, + "_prefab": { + "__id__": 19 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -754,7 +814,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 13 + "__id__": 17 }, "_enabled": true, "_materials": [ @@ -781,23 +841,34 @@ "_atlas": null, "_id": "3c5hqDysBEP4STnJxq6+Kh" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d7LA6B6L9KYrPYs9FOPGKR", + "sync": false + }, { "__type__": "cc.Scrollbar", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_scrollView": { - "__id__": 16 + "__id__": 21 }, "_touching": false, "_opacity": 255, "enableAutoHide": true, "autoHideTime": 1, "_N$handle": { - "__id__": 14 + "__id__": 18 }, "_N$direction": 1, "_id": "96ZRZ1fLtOo4EwcQEvfvZQ" @@ -807,7 +878,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "horizontal": false, @@ -819,10 +890,10 @@ "scrollEvents": [], "cancelInnerEvents": true, "_N$content": { - "__id__": 17 + "__id__": 22 }, "content": { - "__id__": 17 + "__id__": 22 }, "_N$horizontalScrollBar": null, "_N$verticalScrollBar": null, @@ -833,16 +904,18 @@ "_name": "content", "_objFlags": 512, "_parent": { - "__id__": 18 + "__id__": 23 }, "_children": [ { - "__id__": 20 + "__id__": 26 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 64 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -895,20 +968,22 @@ "_name": "view", "_objFlags": 512, "_parent": { - "__id__": 11 + "__id__": 15 }, "_children": [ { - "__id__": 17 + "__id__": 22 } ], "_active": true, "_components": [ { - "__id__": 19 + "__id__": 24 } ], - "_prefab": null, + "_prefab": { + "__id__": 25 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -961,7 +1036,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 18 + "__id__": 23 }, "_enabled": true, "_materials": [ @@ -976,44 +1051,55 @@ "_N$inverted": false, "_id": "26KueHItNK14Rh/HjkmD9I" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01e0xqlUVFcY0MMajauQHo", + "sync": false + }, { "__type__": "cc.Node", "_name": "RankListItem", "_objFlags": 0, "_parent": { - "__id__": 17 + "__id__": 22 }, "_children": [ { - "__id__": 21 + "__id__": 27 }, { - "__id__": 24 + "__id__": 30 }, { - "__id__": 33 - }, - { - "__id__": 44 - }, - { - "__id__": 47 + "__id__": 39 }, { "__id__": 50 }, { "__id__": 53 + }, + { + "__id__": 56 + }, + { + "__id__": 59 } ], "_active": true, "_components": [ { - "__id__": 56 + "__id__": 62 } ], "_prefab": { - "__id__": 57 + "__id__": 63 }, "_opacity": 255, "_color": { @@ -1067,17 +1153,17 @@ "_name": "bg", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 22 + "__id__": 28 } ], "_prefab": { - "__id__": 23 + "__id__": 29 }, "_opacity": 255, "_color": { @@ -1131,7 +1217,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 21 + "__id__": 27 }, "_enabled": true, "_materials": [ @@ -1163,7 +1249,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1176,24 +1262,24 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ { - "__id__": 25 + "__id__": 31 }, { - "__id__": 28 + "__id__": 34 } ], "_active": true, "_components": [ { - "__id__": 31 + "__id__": 37 } ], "_prefab": { - "__id__": 32 + "__id__": 38 }, "_opacity": 255, "_color": { @@ -1247,17 +1333,17 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": true, "_components": [ { - "__id__": 26 + "__id__": 32 } ], "_prefab": { - "__id__": 27 + "__id__": 33 }, "_opacity": 255, "_color": { @@ -1311,7 +1397,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 25 + "__id__": 31 }, "_enabled": true, "_materials": [ @@ -1341,7 +1427,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1354,17 +1440,17 @@ "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 24 + "__id__": 30 }, "_children": [], "_active": false, "_components": [ { - "__id__": 29 + "__id__": 35 } ], "_prefab": { - "__id__": 30 + "__id__": 36 }, "_opacity": 255, "_color": { @@ -1418,7 +1504,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 28 + "__id__": 34 }, "_enabled": true, "_materials": [ @@ -1448,7 +1534,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1461,7 +1547,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 24 + "__id__": 30 }, "_enabled": true, "_materials": [ @@ -1479,7 +1565,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1492,23 +1578,23 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [ - { - "__id__": 34 - }, - { - "__id__": 37 - }, { "__id__": 40 + }, + { + "__id__": 43 + }, + { + "__id__": 46 } ], "_active": true, "_components": [], "_prefab": { - "__id__": 43 + "__id__": 49 }, "_opacity": 255, "_color": { @@ -1562,226 +1648,8 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 35 - } - ], - "_prefab": { - "__id__": 36 - }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "34MaLWCWxBHoY//3pYJXcH" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 34 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "81Vy6ELJROcJi8tTw2Qjb5" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "07jJ4rjvBM3K8UmWuJPTSW", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "two", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, - "_children": [], - "_active": false, - "_components": [ - { - "__id__": 38 - } - ], - "_prefab": { "__id__": 39 }, - "_opacity": 255, - "_color": { - "__type__": "cc.Color", - "r": 255, - "g": 255, - "b": 255, - "a": 255 - }, - "_contentSize": { - "__type__": "cc.Size", - "width": 66, - "height": 66 - }, - "_anchorPoint": { - "__type__": "cc.Vec2", - "x": 0.5, - "y": 0.5 - }, - "_trs": { - "__type__": "TypedArray", - "ctor": "Float64Array", - "array": [ - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1 - ] - }, - "_eulerAngles": { - "__type__": "cc.Vec3", - "x": 0, - "y": 0, - "z": 0 - }, - "_skewX": 0, - "_skewY": 0, - "_is3DNode": false, - "_groupIndex": 0, - "groupIndex": 0, - "_id": "84qKc8CKlOI522xR39xkzA" - }, - { - "__type__": "cc.Sprite", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 37 - }, - "_enabled": true, - "_materials": [ - { - "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" - } - ], - "_srcBlendFactor": 770, - "_dstBlendFactor": 771, - "_spriteFrame": { - "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" - }, - "_type": 0, - "_sizeMode": 1, - "_fillType": 0, - "_fillCenter": { - "__type__": "cc.Vec2", - "x": 0, - "y": 0 - }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_atlas": { - "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" - }, - "_id": "9b7R4QlpVKqqTMybq9FiqI" - }, - { - "__type__": "cc.PrefabInfo", - "root": { - "__id__": 20 - }, - "asset": { - "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" - }, - "fileId": "cf00JqB1FL4J82EdUA2X13", - "sync": false - }, - { - "__type__": "cc.Node", - "_name": "three", - "_objFlags": 0, - "_parent": { - "__id__": 33 - }, "_children": [], "_active": false, "_components": [ @@ -1837,7 +1705,7 @@ "_is3DNode": false, "_groupIndex": 0, "groupIndex": 0, - "_id": "9166Yb071H1Zr8Ui2B+hsT" + "_id": "34MaLWCWxBHoY//3pYJXcH" }, { "__type__": "cc.Sprite", @@ -1854,6 +1722,224 @@ ], "_srcBlendFactor": 770, "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "c6571482-4474-41fa-a4bd-d5a2bcebaa71" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "81Vy6ELJROcJi8tTw2Qjb5" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "07jJ4rjvBM3K8UmWuJPTSW", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "two", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 44 + } + ], + "_prefab": { + "__id__": 45 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "84qKc8CKlOI522xR39xkzA" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 43 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, + "_spriteFrame": { + "__uuid__": "08fd7d22-22ba-461d-b289-aa5425039d76" + }, + "_type": 0, + "_sizeMode": 1, + "_fillType": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_atlas": { + "__uuid__": "f683b01d-4d4a-4b64-a054-741e0785d512" + }, + "_id": "9b7R4QlpVKqqTMybq9FiqI" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 26 + }, + "asset": { + "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" + }, + "fileId": "cf00JqB1FL4J82EdUA2X13", + "sync": false + }, + { + "__type__": "cc.Node", + "_name": "three", + "_objFlags": 0, + "_parent": { + "__id__": 39 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 47 + } + ], + "_prefab": { + "__id__": 48 + }, + "_opacity": 255, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 66, + "height": 66 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_trs": { + "__type__": "TypedArray", + "ctor": "Float64Array", + "array": [ + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ] + }, + "_eulerAngles": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_skewX": 0, + "_skewY": 0, + "_is3DNode": false, + "_groupIndex": 0, + "groupIndex": 0, + "_id": "9166Yb071H1Zr8Ui2B+hsT" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 46 + }, + "_enabled": true, + "_materials": [ + { + "__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432" + } + ], + "_srcBlendFactor": 770, + "_dstBlendFactor": 771, "_spriteFrame": { "__uuid__": "95002fe0-1e5a-49eb-82c4-6157522083c1" }, @@ -1876,7 +1962,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1887,7 +1973,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -1900,17 +1986,17 @@ "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 45 + "__id__": 51 } ], "_prefab": { - "__id__": 46 + "__id__": 52 }, "_opacity": 255, "_color": { @@ -1964,7 +2050,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 44 + "__id__": 50 }, "_enabled": true, "_materials": [ @@ -1995,7 +2081,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2008,17 +2094,17 @@ "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 48 + "__id__": 54 } ], "_prefab": { - "__id__": 49 + "__id__": 55 }, "_opacity": 255, "_color": { @@ -2072,7 +2158,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 47 + "__id__": 53 }, "_enabled": true, "_materials": [ @@ -2103,7 +2189,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2116,17 +2202,17 @@ "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 51 + "__id__": 57 } ], "_prefab": { - "__id__": 52 + "__id__": 58 }, "_opacity": 255, "_color": { @@ -2180,7 +2266,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 50 + "__id__": 56 }, "_enabled": true, "_materials": [ @@ -2211,7 +2297,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2224,17 +2310,17 @@ "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 20 + "__id__": 26 }, "_children": [], "_active": true, "_components": [ { - "__id__": 54 + "__id__": 60 } ], "_prefab": { - "__id__": 55 + "__id__": 61 }, "_opacity": 255, "_color": { @@ -2288,7 +2374,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 53 + "__id__": 59 }, "_enabled": true, "_materials": [ @@ -2319,7 +2405,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2332,7 +2418,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 20 + "__id__": 26 }, "_enabled": true, "_id": "c1c+DMgdRG3q56NuEbVYb0" @@ -2340,7 +2426,7 @@ { "__type__": "cc.PrefabInfo", "root": { - "__id__": 20 + "__id__": 26 }, "asset": { "__uuid__": "2a951e22-b1e0-4155-972d-251ef3fa8f5a" @@ -2348,12 +2434,23 @@ "fileId": "55FH2q1HJAyK0hrjxGH/+q", "sync": false }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b21uNyrqhLbqirpS1MD+7t", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "alignMode": 0, @@ -2380,7 +2477,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 12 + "__id__": 16 }, "_enabled": true, "_materials": [ @@ -2407,12 +2504,23 @@ "_atlas": null, "_id": "18yu9m8C1KVImpGMQfBH6e" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7by3ovAnJLYoQqKmlhCACY", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": false, "_materials": [ @@ -2444,11 +2552,11 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 11 + "__id__": 15 }, "_enabled": true, "itemRender": { - "__id__": 20 + "__id__": 26 }, "type": 2, "startAxis": 2, @@ -2461,6 +2569,17 @@ "padding_right": 10, "_id": "5eHjeDnZlKvI3Vhx1nh5nF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "bdWGhni0BLgaAOrQnsfTP4", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Node", @@ -2470,18 +2589,20 @@ }, "_children": [ { - "__id__": 63 + "__id__": 72 }, { - "__id__": 65 + "__id__": 75 }, { - "__id__": 67 + "__id__": 78 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 81 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2534,16 +2655,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 64 + "__id__": 73 } ], - "_prefab": null, + "_prefab": { + "__id__": 74 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2596,7 +2719,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 63 + "__id__": 72 }, "_enabled": true, "_materials": [ @@ -2624,21 +2747,34 @@ "_N$cacheMode": 0, "_id": "8fbqxr8WlF+4EtfRkmqVmB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bzdCzsURJc4G7MwOL0Blj", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 66 + "__id__": 76 } ], - "_prefab": null, + "_prefab": { + "__id__": 77 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2691,7 +2827,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 65 + "__id__": 75 }, "_enabled": true, "_materials": [ @@ -2719,21 +2855,34 @@ "_N$cacheMode": 0, "_id": "0f+OS1A5VBkY5x0F5RYDoj" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "517a9VdPBNUK5P35X44CpK", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 62 + "__id__": 71 }, "_children": [], "_active": true, "_components": [ { - "__id__": 68 + "__id__": 79 } ], - "_prefab": null, + "_prefab": { + "__id__": 80 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2786,7 +2935,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 67 + "__id__": 78 }, "_enabled": true, "_materials": [ @@ -2814,6 +2963,28 @@ "_N$cacheMode": 0, "_id": "66yy55ZIJLOajbzHnk0Pyq" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "12KoCg1NRLpJU9aRF1iPkq", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "9963O/IP5CCLrawiVnAqdg", + "sync": false + }, { "__type__": "cc.Node", "_name": "player", @@ -2823,19 +2994,21 @@ }, "_children": [ { - "__id__": 70 + "__id__": 83 }, { - "__id__": 77 + "__id__": 94 } ], "_active": true, "_components": [ { - "__id__": 83 + "__id__": 103 } ], - "_prefab": null, + "_prefab": { + "__id__": 104 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2888,22 +3061,24 @@ "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 71 + "__id__": 84 }, { - "__id__": 73 + "__id__": 87 }, { - "__id__": 75 + "__id__": 90 } ], "_active": false, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 93 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -2956,16 +3131,18 @@ "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 72 + "__id__": 85 } ], - "_prefab": null, + "_prefab": { + "__id__": 86 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3018,7 +3195,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 71 + "__id__": 84 }, "_enabled": true, "_materials": [ @@ -3046,21 +3223,34 @@ "_N$cacheMode": 0, "_id": "daHyJzw/xLho0dlbkuPHvm" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "b0QUZ3hixHY4BCC7p7EwaX", + "sync": false + }, { "__type__": "cc.Node", "_name": "New Label", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 74 + "__id__": 88 } ], - "_prefab": null, + "_prefab": { + "__id__": 89 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3113,7 +3303,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 73 + "__id__": 87 }, "_enabled": true, "_materials": [ @@ -3141,21 +3331,34 @@ "_N$cacheMode": 0, "_id": "5bSRJmjgtCUrA2vxudA4QN" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d3ySguqntO5bgnP95er4PW", + "sync": false + }, { "__type__": "cc.Node", "_name": "number", "_objFlags": 0, "_parent": { - "__id__": 70 + "__id__": 83 }, "_children": [], "_active": true, "_components": [ { - "__id__": 76 + "__id__": 91 } ], - "_prefab": null, + "_prefab": { + "__id__": 92 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3208,7 +3411,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 75 + "__id__": 90 }, "_enabled": true, "_materials": [ @@ -3236,28 +3439,52 @@ "_N$cacheMode": 0, "_id": "4ejvYL3kxDzq6r/YHZLUuV" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "d6vzzOaCBH2JMQzL1q75Qk", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "01Wu1da3hD9qLoiu2u15Dh", + "sync": false + }, { "__type__": "cc.Node", "_name": "mask", "_objFlags": 0, "_parent": { - "__id__": 69 + "__id__": 82 }, "_children": [ { - "__id__": 78 + "__id__": 95 }, { - "__id__": 80 + "__id__": 98 } ], "_active": true, "_components": [ { - "__id__": 82 + "__id__": 101 } ], - "_prefab": null, + "_prefab": { + "__id__": 102 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3310,16 +3537,18 @@ "_name": "phone", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 79 + "__id__": 96 } ], - "_prefab": null, + "_prefab": { + "__id__": 97 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3372,7 +3601,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 78 + "__id__": 95 }, "_enabled": true, "_materials": [ @@ -3399,21 +3628,34 @@ "_atlas": null, "_id": "e5IQcGfCFLqoqf/wuxBYOY" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "a9FdZ8QGNM77omYBmm7jeP", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 77 + "__id__": 94 }, "_children": [], "_active": false, "_components": [ { - "__id__": 81 + "__id__": 99 } ], - "_prefab": null, + "_prefab": { + "__id__": 100 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3466,7 +3708,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 80 + "__id__": 98 }, "_enabled": true, "_materials": [ @@ -3493,12 +3735,23 @@ "_atlas": null, "_id": "01l/YIk+JMKblUfKTyfTVO" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "082qUxbaNDrIu5wftUXuxE", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 77 + "__id__": 94 }, "_enabled": true, "_materials": [ @@ -3513,12 +3766,23 @@ "_N$inverted": false, "_id": "237hnicvNDF57wjWEhMu97" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "15yWGxXfFKHYDj+6AKZ+hO", + "sync": false + }, { "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "node": { - "__id__": 69 + "__id__": 82 }, "_enabled": true, "_materials": [ @@ -3545,6 +3809,17 @@ "_atlas": null, "_id": "c3I2fvdkFB9I3xv3zy8H3C" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "777yycF4RPu7K18m/uyO1m", + "sync": false + }, { "__type__": "cc.Node", "_name": "bg", @@ -3556,10 +3831,12 @@ "_active": true, "_components": [ { - "__id__": 85 + "__id__": 106 } ], - "_prefab": null, + "_prefab": { + "__id__": 107 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3612,7 +3889,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 84 + "__id__": 105 }, "_enabled": true, "_materials": [ @@ -3641,6 +3918,17 @@ }, "_id": "3cEUZF+3RNUYwTQQpf9d/W" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "adJ7tHdodDiYvg71t3toeY", + "sync": false + }, { "__type__": "cc.Node", "_name": "Self", @@ -3650,31 +3938,33 @@ }, "_children": [ { - "__id__": 87 + "__id__": 109 }, { - "__id__": 93 + "__id__": 118 }, { - "__id__": 95 + "__id__": 121 }, { - "__id__": 102 + "__id__": 132 }, { - "__id__": 104 + "__id__": 135 }, { - "__id__": 106 + "__id__": 138 } ], "_active": true, "_components": [ { - "__id__": 108 + "__id__": 141 } ], - "_prefab": null, + "_prefab": { + "__id__": 142 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3727,23 +4017,25 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 88 + "__id__": 110 }, { - "__id__": 90 + "__id__": 113 } ], "_active": true, "_components": [ { - "__id__": 92 + "__id__": 116 } ], - "_prefab": null, + "_prefab": { + "__id__": 117 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3796,16 +4088,18 @@ "_name": "pic", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 89 + "__id__": 111 } ], - "_prefab": null, + "_prefab": { + "__id__": 112 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3858,7 +4152,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 88 + "__id__": 110 }, "_enabled": true, "_materials": [ @@ -3885,21 +4179,34 @@ "_atlas": null, "_id": "0eYZNHU9lK5Z0d0kmu6v2F" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "f513pLQ/9KMbKpOTC4nuyz", + "sync": false + }, { "__type__": "cc.Node", "_name": "icon", "_objFlags": 0, "_parent": { - "__id__": 87 + "__id__": 109 }, "_children": [], "_active": true, "_components": [ { - "__id__": 91 + "__id__": 114 } ], - "_prefab": null, + "_prefab": { + "__id__": 115 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -3952,7 +4259,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 90 + "__id__": 113 }, "_enabled": true, "_materials": [ @@ -3979,12 +4286,23 @@ "_atlas": null, "_id": "79BxLIwZdOjIPk+JbpAeFu" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "c8vhbkrhtGw72GydJ4enTg", + "sync": false + }, { "__type__": "cc.Mask", "_name": "", "_objFlags": 0, "node": { - "__id__": 87 + "__id__": 109 }, "_enabled": true, "_materials": [ @@ -3999,21 +4317,34 @@ "_N$inverted": false, "_id": "6fiuDWjOBCBLIM3SAArXZT" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "47dNJgs3hCIZESImEUA8wi", + "sync": false + }, { "__type__": "cc.Node", "_name": "rankLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 94 + "__id__": 119 } ], - "_prefab": null, + "_prefab": { + "__id__": 120 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4066,7 +4397,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 93 + "__id__": 118 }, "_enabled": true, "_materials": [ @@ -4094,27 +4425,40 @@ "_N$cacheMode": 1, "_id": "f4PjLXFaJKY7WwqSqZK1UD" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "25WXxoGV5I/KgHBE8D1rsK", + "sync": false + }, { "__type__": "cc.Node", "_name": "rank", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [ { - "__id__": 96 + "__id__": 122 }, { - "__id__": 98 + "__id__": 125 }, { - "__id__": 100 + "__id__": 128 } ], "_active": true, "_components": [], - "_prefab": null, + "_prefab": { + "__id__": 131 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4167,16 +4511,18 @@ "_name": "one", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 97 + "__id__": 123 } ], - "_prefab": null, + "_prefab": { + "__id__": 124 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4229,7 +4575,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 96 + "__id__": 122 }, "_enabled": true, "_materials": [ @@ -4258,21 +4604,34 @@ }, "_id": "9fZk18R5pFzpXsHYRZLIyB" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "09Kg3hfzBBu6HptPpAFSW9", + "sync": false + }, { "__type__": "cc.Node", "_name": "two", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 99 + "__id__": 126 } ], - "_prefab": null, + "_prefab": { + "__id__": 127 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4325,7 +4684,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 98 + "__id__": 125 }, "_enabled": true, "_materials": [ @@ -4354,21 +4713,34 @@ }, "_id": "bcmZsyS4BDw7p0EU0wLam9" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "0dKJ2TWjFCOJ/iqhRFSLjk", + "sync": false + }, { "__type__": "cc.Node", "_name": "three", "_objFlags": 0, "_parent": { - "__id__": 95 + "__id__": 121 }, "_children": [], "_active": false, "_components": [ { - "__id__": 101 + "__id__": 129 } ], - "_prefab": null, + "_prefab": { + "__id__": 130 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4421,7 +4793,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 100 + "__id__": 128 }, "_enabled": true, "_materials": [ @@ -4450,21 +4822,45 @@ }, "_id": "7d/VdpTjhGQZaLUUl7Uh/+" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1aJ6eRDI5HH7V7ePpX8123", + "sync": false + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "1dS3urBJ1F55mw2t/Q3F7w", + "sync": false + }, { "__type__": "cc.Node", "_name": "totalLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 103 + "__id__": 133 } ], - "_prefab": null, + "_prefab": { + "__id__": 134 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4517,7 +4913,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 102 + "__id__": 132 }, "_enabled": true, "_materials": [ @@ -4545,21 +4941,34 @@ "_N$cacheMode": 1, "_id": "0ckqDgb/BOnqmrI+CX+7LF" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "31xa76G7lPaao3sNmpqjSI", + "sync": false + }, { "__type__": "cc.Node", "_name": "nameLab", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 105 + "__id__": 136 } ], - "_prefab": null, + "_prefab": { + "__id__": 137 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4612,7 +5021,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 104 + "__id__": 135 }, "_enabled": true, "_materials": [ @@ -4640,21 +5049,34 @@ "_N$cacheMode": 1, "_id": "f1wOeDKU5ID6PNtDXFhMnG" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "42BvS5Yl5GfY/GLeE5YQOh", + "sync": false + }, { "__type__": "cc.Node", "_name": "label", "_objFlags": 0, "_parent": { - "__id__": 86 + "__id__": 108 }, "_children": [], "_active": true, "_components": [ { - "__id__": 107 + "__id__": 139 } ], - "_prefab": null, + "_prefab": { + "__id__": 140 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4707,7 +5129,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 106 + "__id__": 138 }, "_enabled": true, "_materials": [ @@ -4735,12 +5157,23 @@ "_N$cacheMode": 1, "_id": "8f59Obe2BI3okn2hSUf1uI" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "7bFLMTAaRJZbZdCmLU7NlT", + "sync": false + }, { "__type__": "cc.Widget", "_name": "", "_objFlags": 0, "node": { - "__id__": 86 + "__id__": 108 }, "_enabled": true, "alignMode": 1, @@ -4762,6 +5195,17 @@ "_originalHeight": 0, "_id": "d3X22XFMBBOqWuJHIN1DzL" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "02TaTwJ1tM844wDACOg8Uk", + "sync": false + }, { "__type__": "cc.Node", "_name": "backBtn", @@ -4773,16 +5217,18 @@ "_active": true, "_components": [ { - "__id__": 110 + "__id__": 144 }, { - "__id__": 111 + "__id__": 145 }, { - "__id__": 112 + "__id__": 146 } ], - "_prefab": null, + "_prefab": { + "__id__": 148 + }, "_opacity": 255, "_color": { "__type__": "cc.Color", @@ -4835,7 +5281,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_materials": [ @@ -4867,7 +5313,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "alignMode": 1, @@ -4894,7 +5340,7 @@ "_name": "", "_objFlags": 0, "node": { - "__id__": 109 + "__id__": 143 }, "_enabled": true, "_normalMaterial": null, @@ -4903,7 +5349,7 @@ "zoomScale": 1.1, "clickEvents": [ { - "__id__": 113 + "__id__": 147 } ], "_N$interactable": true, @@ -4971,6 +5417,17 @@ "handler": "backClick", "customEventData": "" }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "34+hXrhBBJUqEHHRNeqJSa", + "sync": false + }, { "__type__": "cc.Canvas", "_name": "", @@ -5024,14 +5481,25 @@ }, "_enabled": true, "Player": { - "__id__": 69 + "__id__": 82 }, "selfNode": { - "__id__": 86 + "__id__": 108 }, "phone": { - "__id__": 89 + "__id__": 111 }, "_id": "81Iy69gIdCtp0UzAUPZ1+M" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 2 + }, + "asset": { + "__uuid__": "1f9265d6-31fa-4638-be80-340517745006" + }, + "fileId": "", + "sync": false } ] \ No newline at end of file diff --git a/temp/quick-scripts/dst/__file_stats__.json b/temp/quick-scripts/dst/__file_stats__.json index a81bf1a..c8c07da 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-05-31T06:57:33.895Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/DynamicAtlasManager.js":"2024-05-31T06:57:33.840Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameOver.js":"2024-05-31T06:57:33.849Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/ListView/List.js":"2024-05-31T06:57:33.856Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/crypto/serverAPI.js":"2024-05-31T06:57:33.851Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/RankManager.js":"2024-05-31T06:57:33.860Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GuideManager.js":"2024-05-31T06:57:33.837Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js":"2024-05-31T06:57:33.847Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Notification.js":"2024-05-31T06:57:33.863Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Sun.js":"2024-05-31T06:57:33.844Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameData.js":"2024-05-31T06:57:33.864Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Load.js":"2024-05-31T06:57:33.842Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Storage.js":"2024-05-31T06:57:33.848Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/GameTool.js":"2024-05-31T06:57:33.857Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/ListView/ItemRender.js":"2024-05-31T06:57:33.854Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/AudioManager.js":"2024-05-31T06:57:33.850Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/Shake.js":"2024-05-31T06:57:33.845Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/crypto/crypto-js.min.js":"2024-05-31T06:57:33.859Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameManager.js":"2024-05-31T06:57:33.852Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/Storage.js":"2024-05-31T06:57:33.862Z"}} +{"version":"1.0.8","stats":{"C:/Work/Project/Sun_moves/temp/quick-scripts/src/__qc_index__.js":"2024-06-07T09:01:38.036Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/crypto/serverAPI.js":"2024-06-07T09:01:37.993Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/ListView/List.js":"2024-06-07T09:01:37.997Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Storage.js":"2024-06-07T09:01:37.985Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js":"2024-06-07T09:01:37.985Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/DynamicAtlasManager.js":"2024-06-07T09:01:37.981Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameData.js":"2024-06-07T09:01:38.005Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GuideManager.js":"2024-06-07T09:01:37.976Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameOver.js":"2024-06-07T09:01:37.989Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/GameTool.js":"2024-06-07T09:01:37.997Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/AudioManager.js":"2024-06-07T09:01:37.989Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/RankManager.js":"2024-06-07T09:01:38.002Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Notification.js":"2024-06-07T09:01:38.003Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Sun.js":"2024-06-07T09:01:37.983Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/crypto/crypto-js.min.js":"2024-06-07T09:01:37.997Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/tool/Shake.js":"2024-06-07T09:01:37.985Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/Load.js":"2024-06-07T09:01:37.981Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/GameManager.js":"2024-06-07T09:01:37.994Z","C:/Work/Project/Sun_moves/temp/quick-scripts/src/assets/Script/ListView/ItemRender.js":"2024-06-07T09:01:37.995Z"}} diff --git a/temp/quick-scripts/dst/__qc_bundle__.js b/temp/quick-scripts/dst/__qc_bundle__.js index 1e3ec1b..8c7005c 100644 --- a/temp/quick-scripts/dst/__qc_bundle__.js +++ b/temp/quick-scripts/dst/__qc_bundle__.js @@ -27,7 +27,6 @@ require('./assets/Script/tool/AudioManager'); require('./assets/Script/tool/DynamicAtlasManager'); require('./assets/Script/tool/GameTool'); require('./assets/Script/tool/Shake'); -require('./assets/Script/tool/Storage'); require('./assets/migration/use_v2.1-2.2.1_cc.Toggle_event'); } @@ -45,7 +44,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/tool/DynamicAtlasManager.js'; + var __filename = 'preview-scripts/assets/Script/crypto/serverAPI.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -53,54 +52,11 @@ 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, '3ffacOneORCf6Bc1LFhTCCQ', 'DynamicAtlasManager'); -// Script/tool/DynamicAtlasManager.js +cc._RF.push(module, '98307M8uUtLYKaHXPmGgCWf', 'serverAPI'); +// Script/crypto/serverAPI.ts "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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxEeW5hbWljQXRsYXNNYW5hZ2VyLmpzIl0sIm5hbWVzIjpbImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwib25Mb2FkIiwiZHluYW1pY0F0bGFzTWFuYWdlciIsImVuYWJsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUFBLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ0wsYUFBU0QsRUFBRSxDQUFDRSxTQURQO0FBR0xDLEVBQUFBLFVBQVUsRUFBRSxFQUhQO0FBTUxDLEVBQUFBLE1BTkssb0JBTUs7QUFDTkosSUFBQUEsRUFBRSxDQUFDSyxtQkFBSCxDQUF1QkMsT0FBdkIsR0FBaUMsS0FBakM7QUFDSDtBQVJJLENBQVQiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImNjLkNsYXNzKHtcclxuICAgIGV4dGVuZHM6IGNjLkNvbXBvbmVudCxcclxuXHJcbiAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICB9LFxyXG5cclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgY2MuZHluYW1pY0F0bGFzTWFuYWdlci5lbmFibGVkID0gZmFsc2U7XHJcbiAgICB9LFxyXG59KTtcclxuIl19 -//------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"; -// 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 +// import CryptoJS from "crypto-js"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || @@ -120,173 +76,288 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key, 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 GameData_1 = require("./GameData"); -var serverAPI_1 = require("./crypto/serverAPI"); -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; +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 }; } - // onLoad () {} - NewClass.prototype.start = function () { - this.count.string = GameData_1.default._instance.GM_INFO.total; - if (GameData_1.default._instance.GM_INFO.mean_Time > 10) { - GameData_1.default._instance.GM_INFO.mean_Time = (parseInt(Math.random() * 10 + "") + 5) / 10; - } - this.time.string = GameData_1.default._instance.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; - this.getRank(); - }; - //打开排行榜 - NewClass.prototype.openRank = function () { - cc.director.loadScene("RankScene"); - }; - //重新开始玩 - NewClass.prototype.again = function () { - cc.director.loadScene("GameScene"); - }; - //获取排行榜 - NewClass.prototype.getRank = function () { - var postData = { - "page": 1, - "pageSize": 100 - }; - serverAPI_1.default.rankData(2, this.getRankData.bind(this), postData); - }; - //设置排行信息 - NewClass.prototype.getRankData = function (data) { - if (data) { - this.listData = data.data.list; - this.selfData = data.data.info; - var rankData = []; - var self = false; - if (this.selfData.nickName.length > 4) { - this.selfData.nickName = this.selfData.nickName.substring(0, 4) + "..."; - } - this.selfNode.getChildByName("name").getComponent(cc.Label).string = this.selfData.nickName; - this.selfNode.getChildByName("total").getComponent(cc.Label).string = this.selfData.totalSunCount; - this.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"), this.selfData.pic); - for (var i = 0; i <= this.listData.length - 1; i++) { - rankData.push({ rank: (i + 1), name: this.listData[i].nickName, total: this.listData[i].totalSunCount, pic: this.listData[i].pic }); - if (GameData_1.default._instance.GM_INFO.userId == this.listData[i].userId) { - self = true; - this.selfNode.getChildByName("rank").getComponent(cc.Label).string = (i + 1) + ""; - } - if (i == (this.listData.length - 1) && self == false) { - this.selfNode.getChildByName("rank").getComponent(cc.Label).string = "99+"; - } - if (i < 5) - 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; - if (data.nickName.length > 4) { - data.nickName = data.nickName.substring(0, 4) + "..."; - } - hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; - hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; - this.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); - } - }; - //设置头像 - NewClass.prototype.setPic = function (node, pic) { - node.active = false; - var url = pic; - setTimeout(function () { - fetch(url) - .then(function (response) { - return response.headers.get('Content-Length'); - }) - .then(function (errNo) { - if (errNo == "5093") { - node.active = true; - } - }) - .catch(function (error) { - console.error('Error fetching X-Info:', error); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var GameData_1 = require("../GameData"); +var CryptoJS = require("./crypto-js.min.js"); //引用AES源码js +// import axios from 'axios' +var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; +var HttpUtil = /** @class */ (function (_super) { + __extends(HttpUtil, _super); + function HttpUtil() { + return _super !== null && _super.apply(this, arguments) || this; + } + //排行榜type2为获取,type1为上传 + HttpUtil.rankData = function (type, callback, data) { + return __awaiter(this, void 0, Promise, function () { + var time, url; + return __generator(this, function (_a) { + data.gameId = GameData_1.default._instance.GM_INFO.gameId; + data.userId = GameData_1.default._instance.GM_INFO.userId; + time = Math.floor((new Date().getTime()) / 1000); + url = apiSign("/api/get/rank/data?gameId=" + config.gameId + "&dataType=" + type + "&time=" + time, data); + this.httpPost(url, data, callback); + return [2 /*return*/]; }); - }, 100); - cc.assetManager.loadRemote(url, { ext: '.jpg' }, function (err, texture) { - if (texture) { - node.active = true; - node.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(texture); - } - else { - console.log(err, texture); - } }); }; - __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([ + HttpUtil.uploadUserLogData = function (data, callback) { + return __awaiter(this, void 0, Promise, function () { + var url; + return __generator(this, function (_a) { + data.gameId = GameData_1.default._instance.GM_INFO.gameId; + data.userId = GameData_1.default._instance.GM_INFO.userId; + url = '/log/collect/data'; + this.httpPost(url, data, callback); + return [2 /*return*/]; + }); + }); + }; + //暂时用不到 + HttpUtil.getUserRecord = function (data, callback) { + return __awaiter(this, void 0, Promise, function () { + var time, url; + return __generator(this, function (_a) { + data.gameId = GameData_1.default._instance.GM_INFO.gameId; + data.userId = GameData_1.default._instance.GM_INFO.userId; + time = Math.floor((new Date().getTime()) / 1000); + url = apiSign("/api/get/user/data?gameId=" + config.gameId + "&time=" + time, data); + this.httpPost(url, data, callback); + return [2 /*return*/]; + }); + }); + }; + HttpUtil.httpPost = function (url, data, callBack) { + data.gameId = GameData_1.default._instance.GM_INFO.gameId; + data.userId = GameData_1.default._instance.GM_INFO.userId; + var urlData = "http://api.sparkus.cn" + url; + // console.log("params:",JSON.stringify(data)); + var xhr = new XMLHttpRequest(); + xhr.open('POST', urlData); + xhr.setRequestHeader('Content-Type', 'application/json'); + xhr.onreadystatechange = function () { + if (xhr.readyState == 4 && xhr.status == 200) { + var data = xhr.responseText; + if (!data) { + // console.log("初始化失败"); + return; + } + var json = JSON.parse(data); + // console.log('http success:' + json); + callBack(json); + } + else { + // var json = JSON.parse(data); + // console.log('http fail:' + url); + callBack(json); + } + }; + xhr.send(JSON.stringify(data)); + }; + HttpUtil.httpGet = function (url, callBack) { + var urlData = "http://api.sparkus.cn" + url; + console.log(urlData); + var xhr = new XMLHttpRequest(); + xhr.open('GET', urlData); + xhr.setRequestHeader('Content-Type', 'text/plain'); + xhr.onreadystatechange = function () { + if (xhr.readyState == 4 && xhr.status == 200) { + var data = xhr.responseText; + if (data) { + var json = JSON.parse(data); + console.info('http success:' + json); + callBack(json); + } + else + callBack(data); + } + else { + console.info('http fail:' + url); + callBack(null); + } + }; + xhr.send(); + }; + HttpUtil = __decorate([ ccclass - ], NewClass); - return NewClass; + ], HttpUtil); + return HttpUtil; }(cc.Component)); -exports.default = NewClass; +exports.default = HttpUtil; +function responseHandler(response) { + return response.data; +} +// 响应拦截器 +// Rq.interceptors.response.use(responseHandler) +var config = { + gameId: "100009", + secretKey: "CMNhOzBA", + EK: "hui231%1" +}; +var Crypoto = /** @class */ (function () { + function Crypoto() { + // 加密的向明值,自己根据项目实际情况定,需要跟后端开发保持一致 + this.keyHex = this.getHetKey(); + } + Crypoto.prototype.getHetKey = function () { + return CryptoJS.enc.Utf8.parse(config.EK); + }; + /** DES加密 */ + Crypoto.prototype.encryptByDES = function (message, secret) { + if (!message) { + return message; + } + var key = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; + var encrypted = CryptoJS.DES.encrypt(message, key, { + mode: CryptoJS.mode.ECB, + padding: CryptoJS.pad.Pkcs7 + }); + return encrypted.toString(); + }; + /** DES解密 */ + Crypoto.prototype.decryptByDES = function (message, secret) { + var key = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; + var decrypted = CryptoJS.DES.decrypt({ + ciphertext: CryptoJS.enc.Base64.parse(message) + }, key, { + mode: CryptoJS.mode.ECB, + padding: CryptoJS.pad.Pkcs7 + }); + return decrypted.toString(CryptoJS.enc.Utf8); + }; + /** hmacSHA256加密 */ + Crypoto.prototype.hmacSha256 = function (message, secret) { + var keyHex = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; + var hash = CryptoJS.HmacSHA256(message, keyHex); + return hash.toString(); + }; + /** hmacSHA256验证 */ + Crypoto.prototype.verifyHmacSha256 = function (message, signature) { + var hash = CryptoJS.HmacSHA256(message, this.keyHex); + return hash.toString() === signature; + }; + /** CBC加密 */ + Crypoto.prototype.encryptCBC = function (word) { + if (!word) { + return word; + } + var srcs = CryptoJS.enc.Utf8.parse(word); + var encrypted = CryptoJS.AES.encrypt(srcs, this.keyHex, { + iv: this.keyHex, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.ZeroPadding + }); + return encrypted.toString(); + }; + /** CBC解密 */ + Crypoto.prototype.decryptCBC = function (word) { + if (!word) { + return word; + } + var encryptedHexStr = CryptoJS.enc.Hex.parse(word); + var srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr); + var decrypt = CryptoJS.AES.decrypt(srcs, this.keyHex, { + iv: this.keyHex, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.ZeroPadding + }); + var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8); + return decryptedStr.toString(); + }; + return Crypoto; +}()); +var fxCry = new Crypoto(); +function isEmpty(data) { + return data === "" || data === null || data === undefined || data.length === 0 || JSON.stringify(data) == "{}"; +} +function getQueryString(obj) { + // 首先对对象的键进行排序并过滤空值 + var sortedKeys = Object.keys(obj).sort(); + var sortedObj = {}; + for (var i = 0; i < sortedKeys.length; i++) { + if (isEmpty(obj[sortedKeys[i]])) { + continue; + } + sortedObj[sortedKeys[i]] = obj[sortedKeys[i]]; + } + // 然后将排序后的对象转换为查询字符串 + var params = []; + for (var key in sortedObj) { + params.push(encodeURIComponent(key) + "=" + encodeURIComponent(sortedObj[key])); + } + return params.join('&'); +} +/** + * 组装签名字符串 + * @param string url: 请求地址 + * @param string postStr: post参数的a=1&b=2 + * @returns + */ +function genSignStr(url, postStr) { + var lessUrl = url.replace('?', ''); + lessUrl = lessUrl + "&" + postStr; + return encodeURIComponent(fxCry.hmacSha256(lessUrl)); +} +// 对参数进行统一urlencode +function urlencode(url) { + var _a = url.split("?", 2), baseUrl = _a[0], queryString = _a[1]; + var params = new URLSearchParams(queryString); + return baseUrl + "?" + params.toString(); +} +/** + * + * @param url {string} 接口地址 + * @param params {object} 需要加密的参数对象 + */ +function apiSign(url, params) { + if (params === void 0) { params = {}; } + var convertUrl = url.trim(); + if (convertUrl.indexOf('?') === -1) { + convertUrl += '?'; + } + // 传入参数转换拼接字符串 + var postStr = getQueryString(params); + var signedStr = genSignStr(convertUrl, postStr); + var encryptStr = "sign=" + signedStr; + var encryptSignStr = fxCry.encryptByDES(encryptStr, config.secretKey); + encryptSignStr = encodeURIComponent(encryptSignStr); + return urlencode(convertUrl) + "&_p=" + encryptSignStr; +} cc._RF.pop(); } @@ -299,7 +370,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHdFQUF3RTtBQUN4RSxtQkFBbUI7QUFDbkIsa0ZBQWtGO0FBQ2xGLDhCQUE4QjtBQUM5QixrRkFBa0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRix1Q0FBa0M7QUFFbEMsZ0RBQTBDO0FBR3BDLElBQUEsS0FBc0IsRUFBRSxDQUFDLFVBQVUsRUFBbEMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFpQixDQUFDO0FBRzFDO0lBQXNDLDRCQUFZO0lBQWxEO1FBQUEscUVBMklDO1FBeklHLFdBQUssR0FBYSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFhLElBQUksQ0FBQztRQUV0QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUVwQixXQUFLLEdBQVksSUFBSSxDQUFDO1FBRXRCLFVBQUksR0FBWSxJQUFJLENBQUM7UUFFckIsVUFBSSxHQUFZLElBQUksQ0FBQzs7SUEySHpCLENBQUM7SUF4SEcsZUFBZTtJQUNmLHdCQUFLLEdBQUw7UUFDSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUcsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxFQUFFLEVBQUM7WUFDekMsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUMsRUFBRSxHQUFDLEVBQUUsQ0FBQyxHQUFDLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQTtTQUM5RTtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLGtCQUFRLENBQUMsU0FB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LEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ087SUFFekI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDRTtJQUVwQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNFO0lBRXBCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MkNBQ0k7SUFFdEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzswQ0FDRztJQUVyQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBaEJKLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0EySTVCO0lBQUQsZUFBQztDQTNJRCxBQTJJQyxDQTNJcUMsRUFBRSxDQUFDLFNBQVMsR0EySWpEO2tCQTNJb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIExlYXJuIFR5cGVTY3JpcHQ6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL3R5cGVzY3JpcHQuaHRtbFxyXG4vLyBMZWFybiBBdHRyaWJ1dGU6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL3JlZmVyZW5jZS9hdHRyaWJ1dGVzLmh0bWxcclxuLy8gTGVhcm4gbGlmZS1jeWNsZSBjYWxsYmFja3M6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL2xpZmUtY3ljbGUtY2FsbGJhY2tzLmh0bWxcclxuXHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmltcG9ydCBScSBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcblxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIGNvdW50OiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICB0aW1lOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIHNlbGZOb2RlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgb25lOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgdHdvOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgdGhyZWU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmb3VyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgZml2ZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBsaXN0RGF0YTogYW55O1xyXG4gICAgc2VsZkRhdGE6IGFueTtcclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuY291bnQuc3RyaW5nID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWw7XHJcbiAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID4gMTApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICsgXCJzXCI7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubGlzdERhdGEgPSBbXTtcclxuICAgICAgICB0aGlzLnNlbGZEYXRhID0gbnVsbDtcclxuICAgICAgICB0aGlzLm9uZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnR3by5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnRocmVlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZm91ci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZpdmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOW8gOWni+eOqVxyXG4gICAgYWdhaW4oKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaOkuihjOamnFxyXG4gICAgZ2V0UmFuaygpe1xyXG4gICAgICAgIGxldCBwb3N0RGF0YSA9IHtcclxuICAgICAgICAgICAgXCJwYWdlXCI6MSxcclxuICAgICAgICAgICAgXCJwYWdlU2l6ZVwiOjEwMFxyXG4gICAgICAgIH07IFxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v6K6+572u5o6S6KGM5L+h5oGvXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgdGhpcy5saXN0RGF0YSA9IGRhdGEuZGF0YS5saXN0O1xyXG4gICAgICAgICAgICB0aGlzLnNlbGZEYXRhID0gZGF0YS5kYXRhLmluZm87XHJcbiAgICAgICAgICAgIGxldCByYW5rRGF0YSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgc2VsZiA9IGZhbHNlO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLmxlbmd0aCA+IDQpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmRGF0YS5uaWNrTmFtZT0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZS5zdWJzdHJpbmcoMCw0KSArIFwiLi4uXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZVwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgdGhpcy5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD10aGlzLmxpc3REYXRhLmxlbmd0aC0xO2krKyl7XHJcbiAgICAgICAgICAgICAgICByYW5rRGF0YS5wdXNoKHtyYW5rOihpKzEpLCBuYW1lOnRoaXMubGlzdERhdGFbaV0ubmlja05hbWUsIHRvdGFsOnRoaXMubGlzdERhdGFbaV0udG90YWxTdW5Db3VudCwgcGljOnRoaXMubGlzdERhdGFbaV0ucGljfSk7XHJcbiAgICAgICAgICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPT0gdGhpcy5saXN0RGF0YVtpXS51c2VySWQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0oaSsxKSArIFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoaSA9PSAodGhpcy5saXN0RGF0YS5sZW5ndGgtMSkgJiYgc2VsZiA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBcIjk5K1wiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGk8NSkgdGhpcy5zZXRSYW5rKGksdGhpcy5saXN0RGF0YVtpXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+agueaNruWGheWuueWhq+WFheaOkuihjOamnFxyXG4gICAgc2V0UmFuayhudW0sZGF0YSl7XHJcbiAgICAgICAgdmFyIGhpdE5vZGUgPSBudWxsO1xyXG4gICAgICAgIGlmKG51bSA9PSAwKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudHdvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudGhyZWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDMpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5mb3VyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSA0KXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMuZml2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoaGl0Tm9kZSl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgaWYoZGF0YS5uaWNrTmFtZS5sZW5ndGggPiA0KXtcclxuICAgICAgICAgICAgICAgIGRhdGEubmlja05hbWU9IGRhdGEubmlja05hbWUuc3Vic3RyaW5nKDAsNCkgKyBcIi4uLlwiXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaGl0Tm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBkYXRhLm5pY2tOYW1lO1xyXG4gICAgICAgICAgICBoaXROb2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBkYXRhLnRvdGFsU3VuQ291bnQ7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGljKGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLGRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAvL+iuvue9ruWktOWDj1xyXG4gICAgcHVibGljIHNldFBpYyhub2RlLHBpYyl7XHJcbiAgICAgICAgbm9kZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBsZXQgdXJsID0gcGljO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBmZXRjaCh1cmwpXHJcbiAgICAgICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1MZW5ndGgnKTtcclxuICAgICAgICAgICAgfSlcclxuICAgIFxyXG4gICAgICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZihlcnJObyA9PSBcIjUwOTNcIil7XHJcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgWC1JbmZvOicsIGVycm9yKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgICBjYy5hc3NldE1hbmFnZXIubG9hZFJlbW90ZSh1cmwsIHtleHQ6Jy5qcGcnfSwoZXJyLCB0ZXh0dXJlOmNjLlRleHR1cmUyRCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0ZXh0dXJlKXtcclxuICAgICAgICAgICAgICAgIG5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIG5vZGUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycix0ZXh0dXJlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbn1cclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxjcnlwdG9cXHNlcnZlckFQSS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0NBQW9DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHcEMsd0NBQW1DO0FBQ25DLDZDQUFnRCxDQUFFLFdBQVc7QUFFN0QsNEJBQTRCO0FBQ3RCLElBQUEsS0FBc0IsRUFBRSxDQUFDLFVBQVUsRUFBbEMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFpQixDQUFDO0FBRzFDO0lBQXNDLDRCQUFZO0lBQWxEOztJQTZFQSxDQUFDO0lBNUVDLHNCQUFzQjtJQUNULGlCQUFRLEdBQXJCLFVBQXNCLElBQUksRUFBQyxRQUFRLEVBQUMsSUFBSTt1Q0FBRyxPQUFPOzs7Z0JBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUcsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztnQkFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUMxQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtnQkFDaEQsR0FBRyxHQUFHLE9BQU8sQ0FBQywrQkFBNkIsTUFBTSxDQUFDLE1BQU0sa0JBQWEsSUFBSSxjQUFTLElBQU0sRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkFDckcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUMsSUFBSSxFQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O0tBQ2xDO0lBRVksMEJBQWlCLEdBQTlCLFVBQStCLElBQUksRUFBQyxRQUFRO3VDQUFHLE9BQU87OztnQkFDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENB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QUFDLENBQUMsRUFBekMsT0FBTyxRQUFBLEVBQUUsV0FBVyxRQUFxQixDQUFDO0lBQ2pELElBQU0sTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hELE9BQVUsT0FBTyxTQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUksQ0FBQztBQUMzQyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMsT0FBTyxDQUFDLEdBQVcsRUFBRSxNQUFXO0lBQVgsdUJBQUEsRUFBQSxXQUFXO0lBRXZDLElBQUksVUFBVSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMzQixJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDbEMsVUFBVSxJQUFJLEdBQUcsQ0FBQTtLQUNsQjtJQUVELGNBQWM7SUFDZCxJQUFJLE9BQU8sR0FBSSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFckMsSUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNqRCxJQUFNLFVBQVUsR0FBRyxVQUFRLFNBQVcsQ0FBQTtJQUV0QyxJQUFJLGNBQWMsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDckUsY0FBYyxHQUFHLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRW5ELE9BQVUsU0FBUyxDQUFDLFVBQVUsQ0FBQyxZQUFPLGNBQWdCLENBQUE7QUFDeEQsQ0FBQyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCBDcnlwdG9KUyBmcm9tIFwiY3J5cHRvLWpzXCI7XG5cblxuaW1wb3J0IEdhbWVEYXRhIGZyb20gJy4uL0dhbWVEYXRhJztcbmltcG9ydCBDcnlwdG9KUyA9IHJlcXVpcmUoJy4vY3J5cHRvLWpzLm1pbi5qcycpOyAgLy/lvJXnlKhBRVPmupDnoIFqc1xuXG4vLyBpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcblxuQGNjY2xhc3NcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEh0dHBVdGlsIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcbiAgLy/mjpLooYzmppx0eXBlMuS4uuiOt+WPlu+8jHR5cGUx5Li65LiK5LygXG4gIHN0YXRpYyBhc3luYyByYW5rRGF0YSh0eXBlLGNhbGxiYWNrLGRhdGEpOiBQcm9taXNlPGFueT4ge1xuICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgIGRhdGEudXNlcklkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkO1xuICAgIGNvbnN0IHRpbWUgPSBNYXRoLmZsb29yKChuZXcgRGF0ZSgpLmdldFRpbWUoKSkgLyAxMDAwKVxuICAgIGNvbnN0IHVybCA9IGFwaVNpZ24oYC9hcGkvZ2V0L3JhbmsvZGF0YT9nYW1lSWQ9JHtjb25maWcuZ2FtZUlkfSZkYXRhVHlwZT0ke3R5cGV9JnRpbWU9JHt0aW1lfWAsIGRhdGEpXG4gICAgdGhpcy5odHRwUG9zdCh1cmwsZGF0YSxjYWxsYmFjayk7XG4gIH1cbiAgXG4gIHN0YXRpYyBhc3luYyB1cGxvYWRVc2VyTG9nRGF0YShkYXRhLGNhbGxiYWNrKTogUHJvbWlzZTxhbnk+IHtcbiAgICBkYXRhLmdhbWVJZCA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmdhbWVJZDtcbiAgICBkYXRhLnVzZXJJZCA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZDtcbiAgICBjb25zdCB1cmwgPSAnL2xvZy9jb2xsZWN0L2RhdGEnO1xuICAgIHRoaXMuaHR0cFBvc3QodXJsLGRhdGEsY2FsbGJhY2spO1xuICB9XG4gIC8v5pqC5pe255So5LiN5YiwXG4gIHN0YXRpYyBhc3luYyBnZXRVc2VyUmVjb3JkKGRhdGEsY2FsbGJhY2spOiBQcm9taXNlPGFueT4ge1xuICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgIGRhdGEudXNlcklkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkO1xuICAgIGNvbnN0IHRpbWUgPSBNYXRoLmZsb29yKChuZXcgRGF0ZSgpLmdldFRpbWUoKSkgLyAxMDAwKVxuICAgIGNvbnN0IHVybCA9IGFwaVNpZ24oYC9hcGkvZ2V0L3VzZXIvZGF0YT9nYW1lSWQ9JHtjb25maWcuZ2FtZUlkfSZ0aW1lPSR7dGltZX1gLCBkYXRhKVxuICAgIHRoaXMuaHR0cFBvc3QodXJsLGRhdGEsY2FsbGJhY2spO1xuICB9XG5cbiAgc3RhdGljIGh0dHBQb3N0KHVybCxkYXRhLGNhbGxCYWNrKXtcbiAgICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgICAgZGF0YS51c2VySWQgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQ7XG4gICAgICB2YXIgdXJsRGF0YSA9IFwiaHR0cDovL2FwaS5zcGFya3VzLmNuXCIgKyB1cmw7XG4gICAgICAvLyBjb25zb2xlLmxvZyhcInBhcmFtczpcIixKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICBsZXQgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gICAgICB4aHIub3BlbignUE9TVCcsIHVybERhdGEpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyk7XG4gICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PSA0ICYmIHhoci5zdGF0dXMgPT0gMjAwKSB7XG4gICAgICAgICAgICAgIHZhciBkYXRhID0geGhyLnJlc3BvbnNlVGV4dDtcbiAgICAgICAgICAgICAgaWYoIWRhdGEpe1xuICAgICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLliJ3lp4vljJblpLHotKVcIik7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdmFyIGpzb24gPSBKU09OLnBhcnNlKGRhdGEpO1xuICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnaHR0cCBzdWNjZXNzOicgKyBqc29uKTtcbiAgICAgICAgICAgICAgY2FsbEJhY2soanNvbik7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAvLyAgdmFyIGpzb24gPSBKU09OLnBhcnNlKGRhdGEpO1xuICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnaHR0cCBmYWlsOicgKyB1cmwpO1xuICAgICAgICAgICAgICBjYWxsQmFjayhqc29uKTtcbiAgICAgICAgICB9XG4gICAgICB9O1xuICAgICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICB9XG5cbiAgc3RhdGljIGh0dHBHZXQodXJsLGNhbGxCYWNrKXtcbiAgICAgIHZhciB1cmxEYXRhID0gXCJodHRwOi8vYXBpLnNwYXJrdXMuY25cIiArIHVybDtcbiAgICAgIGNvbnNvbGUubG9nKHVybERhdGEpO1xuICAgICAgbGV0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuICAgICAgeGhyLm9wZW4oJ0dFVCcsIHVybERhdGEpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L3BsYWluJyk7XG4gICAgICBcbiAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09IDQgJiYgeGhyLnN0YXR1cyA9PSAyMDApIHtcbiAgICAgICAgICAgICAgdmFyIGRhdGEgPSB4aHIucmVzcG9uc2VUZXh0O1xuICAgICAgICAgICAgICBpZihkYXRhKXtcbiAgICAgICAgICAgICAgICAgIHZhciBqc29uID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnaHR0cCBzdWNjZXNzOicgKyBqc29uKTtcbiAgICAgICAgICAgICAgICAgIGNhbGxCYWNrKGpzb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGVsc2UgY2FsbEJhY2soZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnaHR0cCBmYWlsOicgKyB1cmwpO1xuICAgICAgICAgICAgICBjYWxsQmFjayhudWxsKTtcbiAgICAgICAgICB9XG4gICAgICB9O1xuICAgICAgeGhyLnNlbmQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZXNwb25zZUhhbmRsZXIocmVzcG9uc2U6IHsgZGF0YTogYW55IH0pIHtcbiAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbn1cbi8vIOWTjeW6lOaLpuaIquWZqFxuLy8gUnEuaW50ZXJjZXB0b3JzLnJlc3BvbnNlLnVzZShyZXNwb25zZUhhbmRsZXIpXG5jb25zdCBjb25maWcgPSB7XG4gIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgc2VjcmV0S2V5OiBcIkNNTmhPekJBXCIsXG4gIEVLOlwiaHVpMjMxJTFcIlxufTtcblxuaW50ZXJmYWNlIENyeXBvdG9UeXBlIHtcbiAgZW5jcnlwdEJ5REVTOiBhbnlcbiAgZGVjcnlwdEJ5REVTOiBhbnlcbiAgaG1hY1NoYTI1NjogYW55XG59XG4gXG5jbGFzcyBDcnlwb3RvIGltcGxlbWVudHMgQ3J5cG90b1R5cGUge1xuICAgIC8vIOWKoOWvhueahOWQkeaYjuWAvO+8jOiHquW3seagueaNrumhueebruWunumZheaDheWGteWumu+8jOmcgOimgei3n+WQjuerr+W8gOWPkeS/neaMgeS4gOiHtFxuICAgIHByaXZhdGUga2V5SGV4ID0gdGhpcy5nZXRIZXRLZXkoKVxuIFxuICAgIHByaXZhdGUgZ2V0SGV0S2V5KCkge1xuICAgICAgICByZXR1cm4gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoY29uZmlnLkVLKTtcbiAgICB9XG5cbiAgICAvKiogREVT5Yqg5a+GICovXG4gICAgZW5jcnlwdEJ5REVTKG1lc3NhZ2U6IHN0cmluZywgc2VjcmV0Pzogc3RyaW5nKSB7XG4gICAgICBpZighbWVzc2FnZSkge1xuICAgICAgICByZXR1cm4gbWVzc2FnZVxuICAgICAgfVxuICAgICAgY29uc3Qga2V5ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuICAgICAgY29uc3QgZW5jcnlwdGVkID0gQ3J5cHRvSlMuREVTLmVuY3J5cHQobWVzc2FnZSwga2V5LCB7XG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuRUNCLFxuICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczdcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGVuY3J5cHRlZC50b1N0cmluZygpXG4gICAgfVxuXG4gICAgLyoqIERFU+ino+WvhiAqL1xuICAgIGRlY3J5cHRCeURFUyhtZXNzYWdlOiBzdHJpbmcsIHNlY3JldD86IHN0cmluZykge1xuICAgICAgY29uc3Qga2V5ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuXG4gICAgICBjb25zdCBkZWNyeXB0ZWQgPSBDcnlwdG9KUy5ERVMuZGVjcnlwdCh7XG4gICAgICAgIGNpcGhlcnRleHQ6IENyeXB0b0pTLmVuYy5CYXNlNjQucGFyc2UobWVzc2FnZSlcbiAgICAgIH0sIGtleSwge1xuICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkVDQixcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3XG4gICAgICB9KVxuXG4gICAgICByZXR1cm4gZGVjcnlwdGVkLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KVxuICAgIH1cblxuICAgIC8qKiBobWFjU0hBMjU25Yqg5a+GICovXG4gICAgaG1hY1NoYTI1NihtZXNzYWdlOiBzdHJpbmcsIHNlY3JldD86IHN0cmluZykge1xuICAgICAgY29uc3Qga2V5SGV4ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuICAgICAgXG4gICAgICBjb25zdCBoYXNoID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihtZXNzYWdlLCBrZXlIZXgpO1xuICAgICAgcmV0dXJuIGhhc2gudG9TdHJpbmcoKVxuICAgIH1cblxuICAgIC8qKiBobWFjU0hBMjU26aqM6K+BICovXG4gICAgdmVyaWZ5SG1hY1NoYTI1NihtZXNzYWdlOiBzdHJpbmcsIHNpZ25hdHVyZTogc3RyaW5nKSB7XG4gICAgICBjb25zdCBoYXNoID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihtZXNzYWdlLCB0aGlzLmtleUhleCk7XG4gICAgICByZXR1cm4gaGFzaC50b1N0cmluZygpID09PSBzaWduYXR1cmVcbiAgICB9XG4gXG4gICAgLyoqIENCQ+WKoOWvhiAqL1xuICAgIGVuY3J5cHRDQkMod29yZDogc3RyaW5nKSB7XG4gICAgICAgIGlmICghd29yZCkge1xuICAgICAgICAgICAgcmV0dXJuIHdvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3JjcyA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHdvcmQpO1xuICAgICAgICBjb25zdCBlbmNyeXB0ZWQgPSBDcnlwdG9KUy5BRVMuZW5jcnlwdChzcmNzLCB0aGlzLmtleUhleCwge1xuICAgICAgICAgICAgaXY6IHRoaXMua2V5SGV4LFxuICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsXG4gICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuWmVyb1BhZGRpbmdcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBlbmNyeXB0ZWQudG9TdHJpbmcoKTsgXG4gICAgfVxuIFxuICAgIC8qKiBDQkPop6Plr4YgKi9cbiAgICBkZWNyeXB0Q0JDKHdvcmQ6IHN0cmluZykge1xuICAgICAgICBpZiAoIXdvcmQpIHtcbiAgICAgICAgICAgIHJldHVybiB3b3JkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVuY3J5cHRlZEhleFN0ciA9IENyeXB0b0pTLmVuYy5IZXgucGFyc2Uod29yZCk7XG4gICAgICAgIGNvbnN0IHNyY3MgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnN0cmluZ2lmeShlbmNyeXB0ZWRIZXhTdHIpO1xuICAgICAgICBjb25zdCBkZWNyeXB0ID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoc3JjcywgdGhpcy5rZXlIZXgsIHtcbiAgICAgICAgICAgIGl2OiB0aGlzLmtleUhleCxcbiAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLFxuICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlplcm9QYWRkaW5nXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBkZWNyeXB0ZWRTdHIgPSBkZWNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcbiAgICAgICAgcmV0dXJuIGRlY3J5cHRlZFN0ci50b1N0cmluZygpO1xuICAgIH1cbn1cbmNvbnN0IGZ4Q3J5ID0gbmV3IENyeXBvdG8oKTtcblxuZnVuY3Rpb24gaXNFbXB0eShkYXRhKSB7XG4gIHJldHVybiBkYXRhID09PSBcIlwiIHx8IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdW5kZWZpbmVkIHx8IGRhdGEubGVuZ3RoID09PSAwIHx8IEpTT04uc3RyaW5naWZ5KGRhdGEpID09IFwie31cIlxufVxuXG5mdW5jdGlvbiBnZXRRdWVyeVN0cmluZyhvYmopIHtcbiAgLy8g6aaW5YWI5a+55a+56LGh55qE6ZSu6L+b6KGM5o6S5bqP5bm26L+H5ruk56m65YC8XG4gIGNvbnN0IHNvcnRlZEtleXMgPSBPYmplY3Qua2V5cyhvYmopLnNvcnQoKTtcbiAgY29uc3Qgc29ydGVkT2JqID0ge307XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChpc0VtcHR5KG9ialtzb3J0ZWRLZXlzW2ldXSkpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBzb3J0ZWRPYmpbc29ydGVkS2V5c1tpXV0gPSBvYmpbc29ydGVkS2V5c1tpXV07XG4gIH1cbiAgXG4gIC8vIOeEtuWQjuWwhuaOkuW6j+WQjueahOWvueixoei9rOaNouS4uuafpeivouWtl+espuS4slxuICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgZm9yIChjb25zdCBrZXkgaW4gc29ydGVkT2JqKSB7XG4gICAgcGFyYW1zLnB1c2goYCR7ZW5jb2RlVVJJQ29tcG9uZW50KGtleSl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHNvcnRlZE9ialtrZXldKX1gKTtcbiAgfVxuICByZXR1cm4gcGFyYW1zLmpvaW4oJyYnKTtcbn1cblxuXG4vKipcbiAqIOe7hOijheetvuWQjeWtl+espuS4slxuICogQHBhcmFtIHN0cmluZyB1cmw6IOivt+axguWcsOWdgCBcbiAqIEBwYXJhbSBzdHJpbmcgcG9zdFN0cjogcG9zdOWPguaVsOeahGE9MSZiPTIgXG4gKiBAcmV0dXJucyBcbiAqL1xuXG5mdW5jdGlvbiBnZW5TaWduU3RyKHVybDogc3RyaW5nLCBwb3N0U3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgbGVzc1VybCA9IHVybC5yZXBsYWNlKCc/JywgJycpXG4gIGxlc3NVcmwgPSBsZXNzVXJsICsgXCImXCIgKyBwb3N0U3RyXG4gIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQoZnhDcnkuaG1hY1NoYTI1NihsZXNzVXJsKSlcbn1cbi8vIOWvueWPguaVsOi/m+ihjOe7n+S4gHVybGVuY29kZVxuZnVuY3Rpb24gdXJsZW5jb2RlKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgW2Jhc2VVcmwsIHF1ZXJ5U3RyaW5nXSA9IHVybC5zcGxpdChcIj9cIiwgMik7XG4gIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMocXVlcnlTdHJpbmcpO1xuICByZXR1cm4gYCR7YmFzZVVybH0/JHtwYXJhbXMudG9TdHJpbmcoKX1gO1xufVxuXG4vKipcbiAqIFxuICogQHBhcmFtIHVybCB7c3RyaW5nfSDmjqXlj6PlnLDlnYBcbiAqIEBwYXJhbSBwYXJhbXMge29iamVjdH0g6ZyA6KaB5Yqg5a+G55qE5Y+C5pWw5a+56LGhXG4gKi9cbmZ1bmN0aW9uIGFwaVNpZ24odXJsOiBzdHJpbmcsIHBhcmFtcyA9IHt9KSB7XG5cbiAgbGV0IGNvbnZlcnRVcmwgPSB1cmwudHJpbSgpXG4gIGlmIChjb252ZXJ0VXJsLmluZGV4T2YoJz8nKSA9PT0gLTEpIHtcbiAgICBjb252ZXJ0VXJsICs9ICc/J1xuICB9XG4gIFxuICAvLyDkvKDlhaXlj4LmlbDovazmjaLmi7zmjqXlrZfnrKbkuLJcbiAgbGV0IHBvc3RTdHIgPSAgZ2V0UXVlcnlTdHJpbmcocGFyYW1zKVxuIFxuICBjb25zdCBzaWduZWRTdHIgPSBnZW5TaWduU3RyKGNvbnZlcnRVcmwsIHBvc3RTdHIpXG4gIGNvbnN0IGVuY3J5cHRTdHIgPSBgc2lnbj0ke3NpZ25lZFN0cn1gXG5cbiAgbGV0IGVuY3J5cHRTaWduU3RyID0gZnhDcnkuZW5jcnlwdEJ5REVTKGVuY3J5cHRTdHIsIGNvbmZpZy5zZWNyZXRLZXkpXG4gIGVuY3J5cHRTaWduU3RyID0gZW5jb2RlVVJJQ29tcG9uZW50KGVuY3J5cHRTaWduU3RyKVxuXG4gIHJldHVybiBgJHt1cmxlbmNvZGUoY29udmVydFVybCl9Jl9wPSR7ZW5jcnlwdFNpZ25TdHJ9YFxufVxuXG4iXX0= //------QC-SOURCE-SPLIT------ (function() { @@ -950,7 +1021,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/crypto/serverAPI.js'; + var __filename = 'preview-scripts/assets/Script/Storage.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -958,312 +1029,37 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, '98307M8uUtLYKaHXPmGgCWf', 'serverAPI'); -// Script/crypto/serverAPI.ts +cc._RF.push(module, '7cf8cMT5zJA0ZU4Gp0JcL8v', 'Storage'); +// Script/Storage.ts "use strict"; -// import CryptoJS from "crypto-js"; -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 GameData_1 = require("../GameData"); -var CryptoJS = require("./crypto-js.min.js"); //引用AES源码js -// import axios from 'axios' -var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; -var HttpUtil = /** @class */ (function (_super) { - __extends(HttpUtil, _super); - function HttpUtil() { - return _super !== null && _super.apply(this, arguments) || this; - } - //排行榜type2为获取,type1为上传 - HttpUtil.rankData = function (type, callback, data) { - return __awaiter(this, void 0, Promise, function () { - var time, url; - return __generator(this, function (_a) { - data.gameId = GameData_1.default._instance.GM_INFO.gameId; - data.userId = GameData_1.default._instance.GM_INFO.userId; - time = Math.floor((new Date().getTime()) / 1000); - url = apiSign("/api/get/rank/data?gameId=" + config.gameId + "&dataType=" + type + "&time=" + time, data); - this.httpPost(url, data, callback); - return [2 /*return*/]; - }); - }); - }; - HttpUtil.uploadUserLogData = function (data, callback) { - return __awaiter(this, void 0, Promise, function () { - var url; - return __generator(this, function (_a) { - data.gameId = GameData_1.default._instance.GM_INFO.gameId; - data.userId = GameData_1.default._instance.GM_INFO.userId; - url = '/log/collect/data'; - this.httpPost(url, data, callback); - return [2 /*return*/]; - }); - }); - }; - //暂时用不到 - HttpUtil.getUserRecord = function (data, callback) { - return __awaiter(this, void 0, Promise, function () { - var time, url; - return __generator(this, function (_a) { - data.gameId = GameData_1.default._instance.GM_INFO.gameId; - data.userId = GameData_1.default._instance.GM_INFO.userId; - time = Math.floor((new Date().getTime()) / 1000); - url = apiSign("/api/get/user/data?gameId=" + config.gameId + "&time=" + time, data); - this.httpPost(url, data, callback); - return [2 /*return*/]; - }); - }); - }; - HttpUtil.httpPost = function (url, data, callBack) { - data.gameId = GameData_1.default._instance.GM_INFO.gameId; - data.userId = GameData_1.default._instance.GM_INFO.userId; - var urlData = "http://api.sparkus.cn" + url; - // console.log("params:",JSON.stringify(data)); - var xhr = new XMLHttpRequest(); - xhr.open('POST', urlData); - xhr.setRequestHeader('Content-Type', 'application/json'); - xhr.onreadystatechange = function () { - if (xhr.readyState == 4 && xhr.status == 200) { - var data = xhr.responseText; - if (!data) { - // console.log("初始化失败"); - return; - } - var json = JSON.parse(data); - // console.log('http success:' + json); - callBack(json); - } - else { - // var json = JSON.parse(data); - // console.log('http fail:' + url); - callBack(json); - } - }; - xhr.send(JSON.stringify(data)); - }; - HttpUtil.httpGet = function (url, callBack) { - var urlData = "http://api.sparkus.cn" + url; - console.log(urlData); - var xhr = new XMLHttpRequest(); - xhr.open('GET', urlData); - xhr.setRequestHeader('Content-Type', 'text/plain'); - xhr.onreadystatechange = function () { - if (xhr.readyState == 4 && xhr.status == 200) { - var data = xhr.responseText; - if (data) { - var json = JSON.parse(data); - console.info('http success:' + json); - callBack(json); - } - else - callBack(data); - } - else { - console.info('http fail:' + url); - callBack(null); - } - }; - xhr.send(); - }; - HttpUtil = __decorate([ - ccclass - ], HttpUtil); - return HttpUtil; -}(cc.Component)); -exports.default = HttpUtil; -function responseHandler(response) { - return response.data; -} -// 响应拦截器 -// Rq.interceptors.response.use(responseHandler) -var config = { - gameId: "100009", - secretKey: "CMNhOzBA", - EK: "hui231%1" +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); + } + }, }; -var Crypoto = /** @class */ (function () { - function Crypoto() { - // 加密的向明值,自己根据项目实际情况定,需要跟后端开发保持一致 - this.keyHex = this.getHetKey(); - } - Crypoto.prototype.getHetKey = function () { - return CryptoJS.enc.Utf8.parse(config.EK); - }; - /** DES加密 */ - Crypoto.prototype.encryptByDES = function (message, secret) { - if (!message) { - return message; - } - var key = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; - var encrypted = CryptoJS.DES.encrypt(message, key, { - mode: CryptoJS.mode.ECB, - padding: CryptoJS.pad.Pkcs7 - }); - return encrypted.toString(); - }; - /** DES解密 */ - Crypoto.prototype.decryptByDES = function (message, secret) { - var key = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; - var decrypted = CryptoJS.DES.decrypt({ - ciphertext: CryptoJS.enc.Base64.parse(message) - }, key, { - mode: CryptoJS.mode.ECB, - padding: CryptoJS.pad.Pkcs7 - }); - return decrypted.toString(CryptoJS.enc.Utf8); - }; - /** hmacSHA256加密 */ - Crypoto.prototype.hmacSha256 = function (message, secret) { - var keyHex = secret ? CryptoJS.enc.Utf8.parse(secret) : this.keyHex; - var hash = CryptoJS.HmacSHA256(message, keyHex); - return hash.toString(); - }; - /** hmacSHA256验证 */ - Crypoto.prototype.verifyHmacSha256 = function (message, signature) { - var hash = CryptoJS.HmacSHA256(message, this.keyHex); - return hash.toString() === signature; - }; - /** CBC加密 */ - Crypoto.prototype.encryptCBC = function (word) { - if (!word) { - return word; - } - var srcs = CryptoJS.enc.Utf8.parse(word); - var encrypted = CryptoJS.AES.encrypt(srcs, this.keyHex, { - iv: this.keyHex, - mode: CryptoJS.mode.CBC, - padding: CryptoJS.pad.ZeroPadding - }); - return encrypted.toString(); - }; - /** CBC解密 */ - Crypoto.prototype.decryptCBC = function (word) { - if (!word) { - return word; - } - var encryptedHexStr = CryptoJS.enc.Hex.parse(word); - var srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr); - var decrypt = CryptoJS.AES.decrypt(srcs, this.keyHex, { - iv: this.keyHex, - mode: CryptoJS.mode.CBC, - padding: CryptoJS.pad.ZeroPadding - }); - var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8); - return decryptedStr.toString(); - }; - return Crypoto; -}()); -var fxCry = new Crypoto(); -function isEmpty(data) { - return data === "" || data === null || data === undefined || data.length === 0 || JSON.stringify(data) == "{}"; -} -function getQueryString(obj) { - // 首先对对象的键进行排序并过滤空值 - var sortedKeys = Object.keys(obj).sort(); - var sortedObj = {}; - for (var i = 0; i < sortedKeys.length; i++) { - if (isEmpty(obj[sortedKeys[i]])) { - continue; - } - sortedObj[sortedKeys[i]] = obj[sortedKeys[i]]; - } - // 然后将排序后的对象转换为查询字符串 - var params = []; - for (var key in sortedObj) { - params.push(encodeURIComponent(key) + "=" + encodeURIComponent(sortedObj[key])); - } - return params.join('&'); -} -/** - * 组装签名字符串 - * @param string url: 请求地址 - * @param string postStr: post参数的a=1&b=2 - * @returns - */ -function genSignStr(url, postStr) { - var lessUrl = url.replace('?', ''); - lessUrl = lessUrl + "&" + postStr; - return encodeURIComponent(fxCry.hmacSha256(lessUrl)); -} -// 对参数进行统一urlencode -function urlencode(url) { - var _a = url.split("?", 2), baseUrl = _a[0], queryString = _a[1]; - var params = new URLSearchParams(queryString); - return baseUrl + "?" + params.toString(); -} -/** - * - * @param url {string} 接口地址 - * @param params {object} 需要加密的参数对象 - */ -function apiSign(url, params) { - if (params === void 0) { params = {}; } - var convertUrl = url.trim(); - if (convertUrl.indexOf('?') === -1) { - convertUrl += '?'; - } - // 传入参数转换拼接字符串 - var postStr = getQueryString(params); - var signedStr = genSignStr(convertUrl, postStr); - var encryptStr = "sign=" + signedStr; - var encryptSignStr = fxCry.encryptByDES(encryptStr, config.secretKey); - encryptSignStr = encodeURIComponent(encryptSignStr); - return urlencode(convertUrl) + "&_p=" + encryptSignStr; -} +exports.StorageMessage = StorageMessage; cc._RF.pop(); } @@ -1276,623 +1072,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxjcnlwdG9cXHNlcnZlckFQSS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0NBQW9DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHcEMsd0NBQW1DO0FBQ25DLDZDQUFnRCxDQUFFLFdBQVc7QUFFN0QsNEJBQTRCO0FBQ3RCLElBQUEsS0FBc0IsRUFBRSxDQUFDLFVBQVUsRUFBbEMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFpQixDQUFDO0FBRzFDO0lBQXNDLDRCQUFZO0lBQWxEOztJQTZFQSxDQUFDO0lBNUVDLHNCQUFzQjtJQUNULGlCQUFRLEdBQXJCLFVBQXNCLElBQUksRUFBQyxRQUFRLEVBQUMsSUFBSTt1Q0FBRyxPQUFPOzs7Z0JBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUcsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztnQkFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUMxQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtnQkFDaEQsR0FBRyxHQUFHLE9BQU8sQ0FBQywrQkFBNkIsTUFBTSxDQUFDLE1BQU0sa0JBQWEsSUFBSSxjQUFTLElBQU0sRUFBRSxJQUFJLENBQUMsQ0FBQTtnQkFDckcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUMsSUFBSSxFQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O0tBQ2xDO0lBRVksMEJBQWlCLEdBQTlCLFVBQStCLElBQUksRUFBQyxRQUFRO3VDQUFHLE9BQU87OztnQkFDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENB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QUFDLENBQUMsRUFBekMsT0FBTyxRQUFBLEVBQUUsV0FBVyxRQUFxQixDQUFDO0lBQ2pELElBQU0sTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hELE9BQVUsT0FBTyxTQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUksQ0FBQztBQUMzQyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMsT0FBTyxDQUFDLEdBQVcsRUFBRSxNQUFXO0lBQVgsdUJBQUEsRUFBQSxXQUFXO0lBRXZDLElBQUksVUFBVSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMzQixJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDbEMsVUFBVSxJQUFJLEdBQUcsQ0FBQTtLQUNsQjtJQUVELGNBQWM7SUFDZCxJQUFJLE9BQU8sR0FBSSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFckMsSUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNqRCxJQUFNLFVBQVUsR0FBRyxVQUFRLFNBQVcsQ0FBQTtJQUV0QyxJQUFJLGNBQWMsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDckUsY0FBYyxHQUFHLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRW5ELE9BQVUsU0FBUyxDQUFDLFVBQVUsQ0FBQyxZQUFPLGNBQWdCLENBQUE7QUFDeEQsQ0FBQyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCBDcnlwdG9KUyBmcm9tIFwiY3J5cHRvLWpzXCI7XG5cblxuaW1wb3J0IEdhbWVEYXRhIGZyb20gJy4uL0dhbWVEYXRhJztcbmltcG9ydCBDcnlwdG9KUyA9IHJlcXVpcmUoJy4vY3J5cHRvLWpzLm1pbi5qcycpOyAgLy/lvJXnlKhBRVPmupDnoIFqc1xuXG4vLyBpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcblxuQGNjY2xhc3NcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEh0dHBVdGlsIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcbiAgLy/mjpLooYzmppx0eXBlMuS4uuiOt+WPlu+8jHR5cGUx5Li65LiK5LygXG4gIHN0YXRpYyBhc3luYyByYW5rRGF0YSh0eXBlLGNhbGxiYWNrLGRhdGEpOiBQcm9taXNlPGFueT4ge1xuICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgIGRhdGEudXNlcklkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkO1xuICAgIGNvbnN0IHRpbWUgPSBNYXRoLmZsb29yKChuZXcgRGF0ZSgpLmdldFRpbWUoKSkgLyAxMDAwKVxuICAgIGNvbnN0IHVybCA9IGFwaVNpZ24oYC9hcGkvZ2V0L3JhbmsvZGF0YT9nYW1lSWQ9JHtjb25maWcuZ2FtZUlkfSZkYXRhVHlwZT0ke3R5cGV9JnRpbWU9JHt0aW1lfWAsIGRhdGEpXG4gICAgdGhpcy5odHRwUG9zdCh1cmwsZGF0YSxjYWxsYmFjayk7XG4gIH1cbiAgXG4gIHN0YXRpYyBhc3luYyB1cGxvYWRVc2VyTG9nRGF0YShkYXRhLGNhbGxiYWNrKTogUHJvbWlzZTxhbnk+IHtcbiAgICBkYXRhLmdhbWVJZCA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmdhbWVJZDtcbiAgICBkYXRhLnVzZXJJZCA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZDtcbiAgICBjb25zdCB1cmwgPSAnL2xvZy9jb2xsZWN0L2RhdGEnO1xuICAgIHRoaXMuaHR0cFBvc3QodXJsLGRhdGEsY2FsbGJhY2spO1xuICB9XG4gIC8v5pqC5pe255So5LiN5YiwXG4gIHN0YXRpYyBhc3luYyBnZXRVc2VyUmVjb3JkKGRhdGEsY2FsbGJhY2spOiBQcm9taXNlPGFueT4ge1xuICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgIGRhdGEudXNlcklkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkO1xuICAgIGNvbnN0IHRpbWUgPSBNYXRoLmZsb29yKChuZXcgRGF0ZSgpLmdldFRpbWUoKSkgLyAxMDAwKVxuICAgIGNvbnN0IHVybCA9IGFwaVNpZ24oYC9hcGkvZ2V0L3VzZXIvZGF0YT9nYW1lSWQ9JHtjb25maWcuZ2FtZUlkfSZ0aW1lPSR7dGltZX1gLCBkYXRhKVxuICAgIHRoaXMuaHR0cFBvc3QodXJsLGRhdGEsY2FsbGJhY2spO1xuICB9XG5cbiAgc3RhdGljIGh0dHBQb3N0KHVybCxkYXRhLGNhbGxCYWNrKXtcbiAgICAgIGRhdGEuZ2FtZUlkID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkO1xuICAgICAgZGF0YS51c2VySWQgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQ7XG4gICAgICB2YXIgdXJsRGF0YSA9IFwiaHR0cDovL2FwaS5zcGFya3VzLmNuXCIgKyB1cmw7XG4gICAgICAvLyBjb25zb2xlLmxvZyhcInBhcmFtczpcIixKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICBsZXQgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gICAgICB4aHIub3BlbignUE9TVCcsIHVybERhdGEpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyk7XG4gICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PSA0ICYmIHhoci5zdGF0dXMgPT0gMjAwKSB7XG4gICAgICAgICAgICAgIHZhciBkYXRhID0geGhyLnJlc3BvbnNlVGV4dDtcbiAgICAgICAgICAgICAgaWYoIWRhdGEpe1xuICAgICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLliJ3lp4vljJblpLHotKVcIik7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdmFyIGpzb24gPSBKU09OLnBhcnNlKGRhdGEpO1xuICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnaHR0cCBzdWNjZXNzOicgKyBqc29uKTtcbiAgICAgICAgICAgICAgY2FsbEJhY2soanNvbik7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAvLyAgdmFyIGpzb24gPSBKU09OLnBhcnNlKGRhdGEpO1xuICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnaHR0cCBmYWlsOicgKyB1cmwpO1xuICAgICAgICAgICAgICBjYWxsQmFjayhqc29uKTtcbiAgICAgICAgICB9XG4gICAgICB9O1xuICAgICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICB9XG5cbiAgc3RhdGljIGh0dHBHZXQodXJsLGNhbGxCYWNrKXtcbiAgICAgIHZhciB1cmxEYXRhID0gXCJodHRwOi8vYXBpLnNwYXJrdXMuY25cIiArIHVybDtcbiAgICAgIGNvbnNvbGUubG9nKHVybERhdGEpO1xuICAgICAgbGV0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuICAgICAgeGhyLm9wZW4oJ0dFVCcsIHVybERhdGEpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L3BsYWluJyk7XG4gICAgICBcbiAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09IDQgJiYgeGhyLnN0YXR1cyA9PSAyMDApIHtcbiAgICAgICAgICAgICAgdmFyIGRhdGEgPSB4aHIucmVzcG9uc2VUZXh0O1xuICAgICAgICAgICAgICBpZihkYXRhKXtcbiAgICAgICAgICAgICAgICAgIHZhciBqc29uID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnaHR0cCBzdWNjZXNzOicgKyBqc29uKTtcbiAgICAgICAgICAgICAgICAgIGNhbGxCYWNrKGpzb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGVsc2UgY2FsbEJhY2soZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnaHR0cCBmYWlsOicgKyB1cmwpO1xuICAgICAgICAgICAgICBjYWxsQmFjayhudWxsKTtcbiAgICAgICAgICB9XG4gICAgICB9O1xuICAgICAgeGhyLnNlbmQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZXNwb25zZUhhbmRsZXIocmVzcG9uc2U6IHsgZGF0YTogYW55IH0pIHtcbiAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbn1cbi8vIOWTjeW6lOaLpuaIquWZqFxuLy8gUnEuaW50ZXJjZXB0b3JzLnJlc3BvbnNlLnVzZShyZXNwb25zZUhhbmRsZXIpXG5jb25zdCBjb25maWcgPSB7XG4gIGdhbWVJZDogXCIxMDAwMDlcIixcbiAgc2VjcmV0S2V5OiBcIkNNTmhPekJBXCIsXG4gIEVLOlwiaHVpMjMxJTFcIlxufTtcblxuaW50ZXJmYWNlIENyeXBvdG9UeXBlIHtcbiAgZW5jcnlwdEJ5REVTOiBhbnlcbiAgZGVjcnlwdEJ5REVTOiBhbnlcbiAgaG1hY1NoYTI1NjogYW55XG59XG4gXG5jbGFzcyBDcnlwb3RvIGltcGxlbWVudHMgQ3J5cG90b1R5cGUge1xuICAgIC8vIOWKoOWvhueahOWQkeaYjuWAvO+8jOiHquW3seagueaNrumhueebruWunumZheaDheWGteWumu+8jOmcgOimgei3n+WQjuerr+W8gOWPkeS/neaMgeS4gOiHtFxuICAgIHByaXZhdGUga2V5SGV4ID0gdGhpcy5nZXRIZXRLZXkoKVxuIFxuICAgIHByaXZhdGUgZ2V0SGV0S2V5KCkge1xuICAgICAgICByZXR1cm4gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoY29uZmlnLkVLKTtcbiAgICB9XG5cbiAgICAvKiogREVT5Yqg5a+GICovXG4gICAgZW5jcnlwdEJ5REVTKG1lc3NhZ2U6IHN0cmluZywgc2VjcmV0Pzogc3RyaW5nKSB7XG4gICAgICBpZighbWVzc2FnZSkge1xuICAgICAgICByZXR1cm4gbWVzc2FnZVxuICAgICAgfVxuICAgICAgY29uc3Qga2V5ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuICAgICAgY29uc3QgZW5jcnlwdGVkID0gQ3J5cHRvSlMuREVTLmVuY3J5cHQobWVzc2FnZSwga2V5LCB7XG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuRUNCLFxuICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczdcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGVuY3J5cHRlZC50b1N0cmluZygpXG4gICAgfVxuXG4gICAgLyoqIERFU+ino+WvhiAqL1xuICAgIGRlY3J5cHRCeURFUyhtZXNzYWdlOiBzdHJpbmcsIHNlY3JldD86IHN0cmluZykge1xuICAgICAgY29uc3Qga2V5ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuXG4gICAgICBjb25zdCBkZWNyeXB0ZWQgPSBDcnlwdG9KUy5ERVMuZGVjcnlwdCh7XG4gICAgICAgIGNpcGhlcnRleHQ6IENyeXB0b0pTLmVuYy5CYXNlNjQucGFyc2UobWVzc2FnZSlcbiAgICAgIH0sIGtleSwge1xuICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkVDQixcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3XG4gICAgICB9KVxuXG4gICAgICByZXR1cm4gZGVjcnlwdGVkLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KVxuICAgIH1cblxuICAgIC8qKiBobWFjU0hBMjU25Yqg5a+GICovXG4gICAgaG1hY1NoYTI1NihtZXNzYWdlOiBzdHJpbmcsIHNlY3JldD86IHN0cmluZykge1xuICAgICAgY29uc3Qga2V5SGV4ID0gc2VjcmV0PyBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXQpOiB0aGlzLmtleUhleFxuICAgICAgXG4gICAgICBjb25zdCBoYXNoID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihtZXNzYWdlLCBrZXlIZXgpO1xuICAgICAgcmV0dXJuIGhhc2gudG9TdHJpbmcoKVxuICAgIH1cblxuICAgIC8qKiBobWFjU0hBMjU26aqM6K+BICovXG4gICAgdmVyaWZ5SG1hY1NoYTI1NihtZXNzYWdlOiBzdHJpbmcsIHNpZ25hdHVyZTogc3RyaW5nKSB7XG4gICAgICBjb25zdCBoYXNoID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihtZXNzYWdlLCB0aGlzLmtleUhleCk7XG4gICAgICByZXR1cm4gaGFzaC50b1N0cmluZygpID09PSBzaWduYXR1cmVcbiAgICB9XG4gXG4gICAgLyoqIENCQ+WKoOWvhiAqL1xuICAgIGVuY3J5cHRDQkMod29yZDogc3RyaW5nKSB7XG4gICAgICAgIGlmICghd29yZCkge1xuICAgICAgICAgICAgcmV0dXJuIHdvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3JjcyA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHdvcmQpO1xuICAgICAgICBjb25zdCBlbmNyeXB0ZWQgPSBDcnlwdG9KUy5BRVMuZW5jcnlwdChzcmNzLCB0aGlzLmtleUhleCwge1xuICAgICAgICAgICAgaXY6IHRoaXMua2V5SGV4LFxuICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsXG4gICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuWmVyb1BhZGRpbmdcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBlbmNyeXB0ZWQudG9TdHJpbmcoKTsgXG4gICAgfVxuIFxuICAgIC8qKiBDQkPop6Plr4YgKi9cbiAgICBkZWNyeXB0Q0JDKHdvcmQ6IHN0cmluZykge1xuICAgICAgICBpZiAoIXdvcmQpIHtcbiAgICAgICAgICAgIHJldHVybiB3b3JkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVuY3J5cHRlZEhleFN0ciA9IENyeXB0b0pTLmVuYy5IZXgucGFyc2Uod29yZCk7XG4gICAgICAgIGNvbnN0IHNyY3MgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnN0cmluZ2lmeShlbmNyeXB0ZWRIZXhTdHIpO1xuICAgICAgICBjb25zdCBkZWNyeXB0ID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoc3JjcywgdGhpcy5rZXlIZXgsIHtcbiAgICAgICAgICAgIGl2OiB0aGlzLmtleUhleCxcbiAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLFxuICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlplcm9QYWRkaW5nXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBkZWNyeXB0ZWRTdHIgPSBkZWNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcbiAgICAgICAgcmV0dXJuIGRlY3J5cHRlZFN0ci50b1N0cmluZygpO1xuICAgIH1cbn1cbmNvbnN0IGZ4Q3J5ID0gbmV3IENyeXBvdG8oKTtcblxuZnVuY3Rpb24gaXNFbXB0eShkYXRhKSB7XG4gIHJldHVybiBkYXRhID09PSBcIlwiIHx8IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdW5kZWZpbmVkIHx8IGRhdGEubGVuZ3RoID09PSAwIHx8IEpTT04uc3RyaW5naWZ5KGRhdGEpID09IFwie31cIlxufVxuXG5mdW5jdGlvbiBnZXRRdWVyeVN0cmluZyhvYmopIHtcbiAgLy8g6aaW5YWI5a+55a+56LGh55qE6ZSu6L+b6KGM5o6S5bqP5bm26L+H5ruk56m65YC8XG4gIGNvbnN0IHNvcnRlZEtleXMgPSBPYmplY3Qua2V5cyhvYmopLnNvcnQoKTtcbiAgY29uc3Qgc29ydGVkT2JqID0ge307XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChpc0VtcHR5KG9ialtzb3J0ZWRLZXlzW2ldXSkpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBzb3J0ZWRPYmpbc29ydGVkS2V5c1tpXV0gPSBvYmpbc29ydGVkS2V5c1tpXV07XG4gIH1cbiAgXG4gIC8vIOeEtuWQjuWwhuaOkuW6j+WQjueahOWvueixoei9rOaNouS4uuafpeivouWtl+espuS4slxuICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgZm9yIChjb25zdCBrZXkgaW4gc29ydGVkT2JqKSB7XG4gICAgcGFyYW1zLnB1c2goYCR7ZW5jb2RlVVJJQ29tcG9uZW50KGtleSl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHNvcnRlZE9ialtrZXldKX1gKTtcbiAgfVxuICByZXR1cm4gcGFyYW1zLmpvaW4oJyYnKTtcbn1cblxuXG4vKipcbiAqIOe7hOijheetvuWQjeWtl+espuS4slxuICogQHBhcmFtIHN0cmluZyB1cmw6IOivt+axguWcsOWdgCBcbiAqIEBwYXJhbSBzdHJpbmcgcG9zdFN0cjogcG9zdOWPguaVsOeahGE9MSZiPTIgXG4gKiBAcmV0dXJucyBcbiAqL1xuXG5mdW5jdGlvbiBnZW5TaWduU3RyKHVybDogc3RyaW5nLCBwb3N0U3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgbGVzc1VybCA9IHVybC5yZXBsYWNlKCc/JywgJycpXG4gIGxlc3NVcmwgPSBsZXNzVXJsICsgXCImXCIgKyBwb3N0U3RyXG4gIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQoZnhDcnkuaG1hY1NoYTI1NihsZXNzVXJsKSlcbn1cbi8vIOWvueWPguaVsOi/m+ihjOe7n+S4gHVybGVuY29kZVxuZnVuY3Rpb24gdXJsZW5jb2RlKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgW2Jhc2VVcmwsIHF1ZXJ5U3RyaW5nXSA9IHVybC5zcGxpdChcIj9cIiwgMik7XG4gIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMocXVlcnlTdHJpbmcpO1xuICByZXR1cm4gYCR7YmFzZVVybH0/JHtwYXJhbXMudG9TdHJpbmcoKX1gO1xufVxuXG4vKipcbiAqIFxuICogQHBhcmFtIHVybCB7c3RyaW5nfSDmjqXlj6PlnLDlnYBcbiAqIEBwYXJhbSBwYXJhbXMge29iamVjdH0g6ZyA6KaB5Yqg5a+G55qE5Y+C5pWw5a+56LGhXG4gKi9cbmZ1bmN0aW9uIGFwaVNpZ24odXJsOiBzdHJpbmcsIHBhcmFtcyA9IHt9KSB7XG5cbiAgbGV0IGNvbnZlcnRVcmwgPSB1cmwudHJpbSgpXG4gIGlmIChjb252ZXJ0VXJsLmluZGV4T2YoJz8nKSA9PT0gLTEpIHtcbiAgICBjb252ZXJ0VXJsICs9ICc/J1xuICB9XG4gIFxuICAvLyDkvKDlhaXlj4LmlbDovazmjaLmi7zmjqXlrZfnrKbkuLJcbiAgbGV0IHBvc3RTdHIgPSAgZ2V0UXVlcnlTdHJpbmcocGFyYW1zKVxuIFxuICBjb25zdCBzaWduZWRTdHIgPSBnZW5TaWduU3RyKGNvbnZlcnRVcmwsIHBvc3RTdHIpXG4gIGNvbnN0IGVuY3J5cHRTdHIgPSBgc2lnbj0ke3NpZ25lZFN0cn1gXG5cbiAgbGV0IGVuY3J5cHRTaWduU3RyID0gZnhDcnkuZW5jcnlwdEJ5REVTKGVuY3J5cHRTdHIsIGNvbmZpZy5zZWNyZXRLZXkpXG4gIGVuY3J5cHRTaWduU3RyID0gZW5jb2RlVVJJQ29tcG9uZW50KGVuY3J5cHRTaWduU3RyKVxuXG4gIHJldHVybiBgJHt1cmxlbmNvZGUoY29udmVydFVybCl9Jl9wPSR7ZW5jcnlwdFNpZ25TdHJ9YFxufVxuXG4iXX0= -//------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 GameData_1 = require("./GameData"); -var List_1 = require("./ListView/List"); -var serverAPI_1 = require("./crypto/serverAPI"); -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 postData = { - "page": 1, - "pageSize": 100 - }; - //回调进getRankData - serverAPI_1.default.rankData(2, this.getRankData.bind(this), postData); - }; - //实际设置排行数据 - RankManager.prototype.getRankData = function (data) { - if (data) { - console.log(data); - this.listData = data.data.list; - this.selfData = data.data.info; - var rankData = []; - var self = false; - for (var i = 0; i <= this.listData.length - 1; i++) { - rankData.push({ rank: (i + 1), name: this.listData[i].nickName, total: this.listData[i].totalSunCount, pic: this.listData[i].pic }); - if (GameData_1.default._instance.GM_INFO.userId == this.listData[i].userId) { - self = true; - this.rankNumber = i; - this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string = (i + 1) + ""; - } - if (i == (this.listData.length - 1) && self == false) { - this.rankNumber = i; - this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string = "99+"; - } - } - this.rankList.setData(rankData); - if (this.selfData.nickName.length > 6) { - this.selfData.nickName = this.selfData.nickName.substring(0, 6) + "..."; - } - this.selfNode.getChildByName("nameLab").getComponent(cc.Label).string = this.selfData.nickName; - this.selfNode.getChildByName("totalLab").getComponent(cc.Label).string = this.selfData.totalSunCount; - this.setPic(this.selfData.pic); - if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "1") { - this.selfNode.getChildByName("rank").getChildByName("one").active = true; - } - else if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "2") { - this.selfNode.getChildByName("rank").getChildByName("two").active = true; - } - else if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "3") { - this.selfNode.getChildByName("rank").getChildByName("three").active = true; - } - else { - // this.selfNode.getChildByName("four").active = true; - } - this.selfNode.opacity = 255; - if (this.selfData.totalSunCount == 0) - this.selfNode.opacity = 0; - } - }; - //返回按钮 - 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: '.jpg' }, 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBa0M7QUFDbEMsd0NBQW1DO0FBQ25DLGdEQUEwQztBQUNwQyxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUM1QyxLQUFLO0FBRUw7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFvS0M7UUFsS0csWUFBTSxHQUFZLElBQUksQ0FBQztRQUV2QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFdBQUssR0FBYyxJQUFJLENBQUM7O0lBOEo1QixDQUFDO0lBdEpHLDRCQUFNLEdBQU47UUFDSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU87SUFDUCwwQkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxP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LENBQUMsQ0FBVSxRQUFROytDQUNiO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBVSxXQUFXO2lEQUNkO0lBRXpCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBUSxRQUFROzhDQUNaO0lBTlAsV0FBVztRQUQvQixPQUFPO09BQ2EsV0FBVyxDQW9LL0I7SUFBRCxrQkFBQztDQXBLRCxBQW9LQyxDQXBLd0MsRUFBRSxDQUFDLFNBQVMsR0FvS3BEO2tCQXBLb0IsV0FBVyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInBhZ2VcIjoxLFxyXG4gICAgICAgICAgICBcInBhZ2VTaXplXCI6MTAwXHJcbiAgICAgICAgfTsgXHJcbiAgICAgICAgLy/lm57osIPov5tnZXRSYW5rRGF0YVxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdERhdGEgPSBkYXRhLmRhdGEubGlzdDtcclxuICAgICAgICAgICAgdGhpcy5zZWxmRGF0YSA9IGRhdGEuZGF0YS5pbmZvO1xyXG4gICAgICAgICAgICBsZXQgcmFua0RhdGEgPSBbXTtcclxuICAgICAgICAgICAgbGV0IHNlbGYgPSBmYWxzZTtcclxuICAgICAgICAgICAgZm9yKGxldCBpPTA7aTw9dGhpcy5saXN0RGF0YS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICAgICAgcmFua0RhdGEucHVzaCh7cmFuazooaSsxKSwgbmFtZTp0aGlzLmxpc3REYXRhW2ldLm5pY2tOYW1lLCB0b3RhbDp0aGlzLmxpc3REYXRhW2ldLnRvdGFsU3VuQ291bnQsIHBpYzp0aGlzLmxpc3REYXRhW2ldLnBpY30pO1xyXG4gICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID09IHRoaXMubGlzdERhdGFbaV0udXNlcklkKXtcclxuICAgICAgICAgICAgICAgICAgICBzZWxmID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJhbmtOdW1iZXIgPSBpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0oaSsxKSArIFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoaSA9PSAodGhpcy5saXN0RGF0YS5sZW5ndGgtMSkgJiYgc2VsZiA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IFwiOTkrXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucmFua0xpc3Quc2V0RGF0YShyYW5rRGF0YSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZkRhdGEubmlja05hbWUubGVuZ3RoID4gNil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZEYXRhLm5pY2tOYW1lPSB0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZTtcclxuICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInRvdGFsTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5zZWxmRGF0YS50b3RhbFN1bkNvdW50O1xyXG4gICAgICAgICAgICB0aGlzLnNldFBpYyh0aGlzLnNlbGZEYXRhLnBpYyk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID09IFwiMVwiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwib25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBpZih0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9PSBcIjJcIil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPT0gXCIzXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0aHJlZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwiZm91clwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgaWYodGhpcy5zZWxmRGF0YS50b3RhbFN1bkNvdW50ID09IDApIHRoaXMuc2VsZk5vZGUub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ov5Tlm57mjInpkq5cclxuICAgIGJhY2tDbGljaygpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkxvYWRTY2VuZVwiKTtcclxuICAgIH1cclxuICAgIC8v5pyA5LiK5pa555So5oi35Yqo55S7XHJcbiAgICBwbGF5ZXJBY3Rpb24oKXtcclxuICAgICAgICAvLy0yNTQgMzc3ICAyMTAgNDUzXHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIGxldCB0aW1lID0gMTtcclxuICAgICAgICB0aGlzLnR3ZWVuID0gY2MudHdlZW4odGhpcy5QbGF5ZXIpXHJcbiAgICAgICAgLnRvKDIse3Bvc2l0aW9uOmNjLnYzKDIxMCw0NTMsMCl9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpXHJcbiAgICAgICAgICAgIC5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9ICBwYXJzZUludCh0aW1lKjEwMCArIFwiXCIpICsgXCIlXCI7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB0aW1lID0gKHRoaXMubGlzdERhdGEubGVuZ3RoIC0gdGhpcy5yYW5rTnVtYmVyKS90aGlzLmxpc3REYXRhLmxlbmd0aDtcclxuICAgICAgICBpZih0aGlzLmxpc3REYXRhLmxlbmd0aCA+PSA5OSl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmFua051bWJlciA+PSA5OSl7XHJcbiAgICAgICAgICAgICAgICB0aW1lID0gKE1hdGgucmFuZG9tKCkqNDkrMSkvMTAwXHJcbiAgICAgICAgICAgICAgICB2YXIgbWF0Y2hJZCA9IGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIm1hdGNoTnVtYmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgaWYobWF0Y2hJZCA9PSBudWxsIHx8IG1hdGNoSWQgPT0gdW5kZWZpbmVkKXtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgaWYodGhpcy50d2Vlbil0aGlzLnR3ZWVuLnN0b3AoKTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKVxyXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSAgcGFyc2VJbnQodGltZSoxMDAgKyBcIlwiKSArIFwiJVwiO1xyXG4gICAgICAgIH0sIHRpbWUqMjAwMCk7XHJcblxyXG4gICAgfVxyXG4gICAgLy/orr7nva7lpLTlg49cclxuICAgIHB1YmxpYyBzZXRQaWMocGljKXtcclxuICAgICAgICB0aGlzLnBob25lLm5vZGUucGFyZW50LmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBob25lLm5vZGUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLlBsYXllci5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIGZldGNoKHBpYylcclxuICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1MZW5ndGgnKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgWC1JbmZvOicsIGVycm9yKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUocGljLCB7ZXh0OicuanBnJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgc2VsZi5QbGF5ZXIub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLm5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNlbGYucGhvbmUuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwicGhvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmdldENvbXBvbmVudChjYy5TcHJpdGUpXHJcbiAgICAgICAgICAgICAgICAuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBzZWxmLnBsYXllckFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbn1cclxuIl19 -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/GuideManager.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, '3fd2fh6vHNJeISUizW09xat', 'GuideManager'); -// Script/GuideManager.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 GameData_1 = require("./GameData"); -var Notification_1 = require("./Notification"); -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; - // LIFE-CYCLE CALLBACKS: - _this.dialog = null; - _this.ball = null; - _this.qiu1 = null; - _this.linePrefab = null; - return _this; - } - // onLoad () {} - NewClass.prototype.start = function () { - GameData_1.default._instance.GM_INFO.custom = 0; - this.init(); - this.startGuide(0); - }; - //初始化数据 - NewClass.prototype.init = function () { - this.custom = 1; - this.ball.zIndex = 100; - this.Pos_Array = []; - this.ball_Array = []; - this.begin = false; - this.clickNow = 0; - this.tip = null; - }; - //开始引导方法 - NewClass.prototype.startGuide = function (type) { - var _this = this; - var num = this.custom; - var time = 0.5; - var name = "tip" + num; - if (type != 0) { - cc.tween(this.node) - .to(time, { opacity: 255 }) - .call(function () { - _this.custom += 1; - if (type != 0) - _this.custom = 2; - if (_this.custom == 2) - _this.createSun1(); - else if (_this.custom == 3) - _this.createSun2(); - else if (_this.custom == 4) - _this.begin = true; - else if (_this.custom == 5) - cc.director.loadScene("GameScene"); - }) - .start(); - } - else { - this.tip = this.dialog.getChildByName(name); - this.tip.active = true; - this.tip.opacity = 0; - cc.tween(this.tip) - .to(time, { opacity: 255 }) - .start(); - } - }; - //清除所有太阳 - NewClass.prototype.beginClick = function () { - for (var i = 0; i < this.ball_Array.length; i++) { - this.ball_Array[i].getComponent("Sun").move = false; - } - }; - //点击开始游戏,或者点击跳过引导 - NewClass.prototype.clickBtn = function () { - cc.director.loadScene("GameScene"); - }; - //点击下一步按钮 - NewClass.prototype.next = function () { - var _this = this; - var time = 0.5; - cc.tween(this.tip) - .to(time, { opacity: 0 }) - .call(function () { - _this.custom += 1; - if (_this.custom == 2) - _this.createSun(true); - else if (_this.custom == 3) - _this.createSun(false); - else if (_this.custom == 4) - _this.begin = true; - else if (_this.custom == 5) - cc.director.loadScene("GameScene"); - }) - .start(); - }; - //创建太阳 - NewClass.prototype.createSun = function (type) { - var _this = this; - if (type == true) { - this.ball_Array = []; - this.Pos_Array.push(cc.v2(-250, -216), cc.v2(200, -115), cc.v2(-35, -500)); - var time1 = this.calculateDistance(this.ball.x, this.ball.y, this.Pos_Array[0].x, this.Pos_Array[0].y); - this.ball.opacity = 0; - cc.tween(this.ball) - .to(time1, { position: this.Pos_Array[0] }) - .call(function () { - _this.createBall(0, 0, 0, false); - }) - .delay(1) - .call(function () { - _this.startGuide(0); - }) - .start(); - } - else { - var time2 = this.calculateDistance(this.Pos_Array[0].x, this.Pos_Array[0].y, this.Pos_Array[1].x, this.Pos_Array[1].y); - var time3 = this.calculateDistance(this.Pos_Array[1].x, this.Pos_Array[1].y, this.Pos_Array[2].x, this.Pos_Array[2].y); - this.ball.opacity = 255; - this.createLine(cc.v2(this.ball.x, this.ball.y), cc.v2(this.Pos_Array[1].x, this.Pos_Array[1].y), 0.5); - cc.tween(this.ball) - .to(time2, { position: this.Pos_Array[1] }) - .call(function () { - _this.createBall(1, 0, 0, false); - }) - .delay(0.5) - .call(function () { - _this.createLine(cc.v2(_this.ball.x, _this.ball.y), cc.v2(_this.Pos_Array[2].x, _this.Pos_Array[2].y), 0.5); - }) - .to(time3, { position: this.Pos_Array[2] }) - .call(function () { - _this.createBall(2, 0, 0, false); - _this.ball.opacity = 0; - }) - .delay(0.2) - .call(function () { - _this.destroyLine(); - _this.startGuide(0); - }) - .start(); - } - }; - //创建太阳 - NewClass.prototype.createBall = function (number, color, speed, repeat) { - var ball = null; - ball = cc.instantiate(this.qiu1); - ball.parent = this.node.getChildByName("Sun"); - ball.zIndex = this.Pos_Array.length - number; - ball.setPosition(this.ball.x, this.ball.y); - ball.getComponent("Sun").init(number, color, speed, repeat); - ball.getComponent("Sun").move = true; - this.ball_Array.push(ball); - }; - //获取两点之间角度创建连线用 - NewClass.prototype.calculateDistance = function (x1, y1, x2, y2) { - var dx = x2 - x1; - var dy = y2 - y1; - var distance = Math.sqrt(dx * dx + dy * dy); - if (distance > 800) - distance = 800; - var time = distance / 800 * 0.8; - return time; - }; - //引导成功 - NewClass.prototype.passLevel = function () { - var _this = this; - var win = this.node.getChildByName("Win"); - win.active = true; - win.setScale(0); - cc.tween(win) - .delay(0.4) - .to(0.01, { scale: 2.5 }) - .to(0.35, { scale: 1 }) - .delay(0.6) - .call(function () { - win.active = false; - setTimeout(function () { - _this.destroyLine(); - var timeArray = []; - var timeCount = 0; - var ball = _this.ball_Array[0]; - for (var i = 1; i < _this.ball_Array.length; i++) { - var time = _this.calculateDistance(_this.ball_Array[i].x, _this.ball_Array[i].y, _this.ball_Array[i - 1].x, _this.ball_Array[i - 1].y); - timeArray.push(time); - } - var _loop_1 = function (k) { - setTimeout(function () { - cc.tween(ball) - .to(timeArray[k - 1], { x: _this.ball_Array[k].x, y: _this.ball_Array[k].y }) - .call(function () { - _this.ball_Array[k].active = false; - if (k == _this.ball_Array.length - 1) { - setTimeout(function () { - _this.ball.opacity = 255; - _this.ball.position = cc.v3(ball.x, ball.y, 0); - _this.ball.active = false; - _this.startGuide(0); - }, 200); - } - }) - .start(); - }, timeCount * 1000); - timeCount += (timeArray[k - 1] + 0.1); - }; - for (var k = 1; k < _this.ball_Array.length; k++) { - _loop_1(k); - } - }, 400); - }) - .start(); - }; - //点击太阳执行方法 - NewClass.prototype.clickSun = function (data) { - var _this = this; - if (this.begin == true) { - if (data == this.clickNow) { - GameData_1.default._instance.AudioManager.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; - GameData_1.default._instance.GM_INFO.total += 1; - setTimeout(function () { - if (_this.ball_Array[_this.clickNow - 1]) - _this.ball_Array[_this.clickNow - 1].getChildByName("guang").active = false; - }, 200); - if (this.clickNow == 3) { - this.passLevel(); - } - } - else { - this.loseLevel(); - } - } - }; - //失败事件 - NewClass.prototype.loseLevel = function () { - var _this = this; - this.begin = false; - GameData_1.default._instance.AudioManager.playWarning(); - this.destroyLine(); - var ball = this.ball_Array[0]; - var _loop_2 = function (k) { - cc.tween(this_1.ball_Array[k]) - .to(0.6, { x: ball.x, y: ball.y }) - .call(function () { - _this.ball_Array[k].active = false; - if (k == _this.ball_Array.length - 1) { - _this.ball.opacity = 0; - _this.ball.position = cc.v3(ball.x, ball.y, 0); - _this.clearSun(); - _this.custom = 1; - _this.startGuide(1); - } - }) - .start(); - }; - var this_1 = this; - for (var k = 1; k < this.ball_Array.length; k++) { - _loop_2(k); - } - //结束页面动画 - var over = this.node.getChildByName("Over"); - cc.tween(over) - .to(0.25, { opacity: 255 }) - .delay(0.1) - .to(0.2, { opacity: 0 }) - .delay(0.1) - .to(0.15, { opacity: 255 }) - .delay(0.1) - .to(0.1, { opacity: 0 }) - .start(); - }; - //点击太阳事件 - NewClass.prototype.clearSun = function () { - for (var k = 0; k < this.ball_Array.length; k++) { - this.ball_Array[k].removeFromParent(); - this.ball_Array[k] = null; - } - this.ball_Array = []; - }; - //获取时间戳 - NewClass.prototype.getTime = function () { - var timestamp = new Date().getTime(); - return timestamp; - }; - //创造连线,参数起点,终点,连线时间 - NewClass.prototype.createLine = function (start, end, time) { - var line = cc.instantiate(this.linePrefab); - line.parent = this.node.getChildByName("Line"); - line.setPosition(start.x, start.y); - var dx = end.x - start.x; - var dy = end.y - start.y; - var distance = Math.sqrt(dx * dx + dy * dy); - line.height = distance; - line.getComponent(cc.Sprite).fillRange = 0; - line.angle = -this.calculateAngle(start.x, start.y, end.x, end.y); - cc.tween(line.getComponent(cc.Sprite)) - .to(time, { fillRange: 1 }) - .start(); - }; - //摧毁连线 - NewClass.prototype.destroyLine = function () { - for (var i = 0; i < this.node.getChildByName("Line").children.length; i++) { - if (this.node.getChildByName("Line").children[i]) { - this.node.getChildByName("Line").children[i].removeFromParent(); - this.node.getChildByName("Line").children[i] = null; - } - } - this.node.getChildByName("Line").removeAllChildren(); - }; - //获取两个点之间的角度 用于写连线 确定连线方向 - NewClass.prototype.calculateAngle = function (x1, y1, x2, y2) { - var angle = Math.atan2(y2 - y1, x2 - x1) * 180 / Math.PI - 90; - return -angle; - }; - NewClass.prototype.onEnable = function () { - Notification_1.Notification.on("clickSun", this.clickSun, this); - }; - NewClass.prototype.onDisable = function () { - Notification_1.Notification.off("clickSun", this.clickSun); - }; - __decorate([ - property(cc.Node) - ], NewClass.prototype, "dialog", void 0); - __decorate([ - property(cc.Node) - ], NewClass.prototype, "ball", void 0); - __decorate([ - property(cc.Prefab) - ], NewClass.prototype, "qiu1", void 0); - __decorate([ - property(cc.Prefab) - ], NewClass.prototype, "linePrefab", 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHdWlkZU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLHVDQUFrQztBQUNsQywrQ0FBOEM7QUFDeEMsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBc0MsNEJBQVk7SUFBbEQ7UUFBQSxxRUFrVEM7UUFqVEcsd0JBQXdCO1FBRXhCLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFZLElBQUksQ0FBQztRQUVyQixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDOztJQXlTakMsQ0FBQztJQWxTRyxlQUFlO0lBRWYsd0JBQUssR0FBTDtRQUNJLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUNELE9BQU87SUFDUCx1QkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxRQUFRO0lBQ1IsNkJBQVUsR0FBVixVQUFXLElBQUk7UUFBZixpQkF3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QUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBQyxFQUFFLEVBQUMsRUFBRSxHQUFDLEVBQUUsQ0FBQyxHQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN2RCxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ2xCLENBQUM7SUFDRCwyQkFBUSxHQUFSO1FBQ0ksMkJBQVksQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELDRCQUFTLEdBQVQ7UUFDSSwyQkFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUE3U0Q7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDSztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7MENBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQztnREFDUztJQVRaLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FrVDVCO0lBQUQsZUFBQztDQWxURCxBQWtUQyxDQWxUcUMsRUFBRSxDQUFDLFNBQVMsR0FrVGpEO2tCQWxUb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v5q2k6aG16Z2i5Li65byV5a+86aG16Z2i77yM5ZCO57ut5pu05paw5oiQ5qih5p2/77yM5pqC5pe25YG35oeS5aSN5Yi25Li75ri45oiP5Zy65pmv5Luj56CB6L+b5p2lXHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tICcuL0dhbWVEYXRhJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9Ob3RpZmljYXRpb24nO1xyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgLy8gTElGRS1DWUNMRSBDQUxMQkFDS1M6XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGRpYWxvZzogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGJhbGw6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTE6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIGNsaWNrTm93Om51bWJlcjtcclxuICAgIGN1c3RvbTogbnVtYmVyO1xyXG4gICAgUG9zX0FycmF5OiBhbnk7XHJcbiAgICBiYWxsX0FycmF5OiBhbnk7XHJcbiAgICBiZWdpbjogYm9vbGVhbjtcclxuICAgIHRpcDogY2MuTm9kZTtcclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG5cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gPSAwO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgIHRoaXMuYmFsbC56SW5kZXggPSAxMDA7XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy50aXAgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgLy/lvIDlp4vlvJXlr7zmlrnms5VcclxuICAgIHN0YXJ0R3VpZGUodHlwZSl7XHJcbiAgICAgICAgbGV0IG51bSA9IHRoaXMuY3VzdG9tO1xyXG4gICAgICAgIGxldCB0aW1lID0gMC41O1xyXG4gICAgICAgIGxldCBuYW1lID0gXCJ0aXBcIiArIG51bTtcclxuICAgICAgICBpZih0eXBlIT0wKXtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlKVxyXG4gICAgICAgICAgICAudG8odGltZSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgICAgICBpZih0eXBlICE9IDApIHRoaXMuY3VzdG9tID0gMjtcclxuICAgICAgICAgICAgICAgIGlmKCB0aGlzLmN1c3RvbSA9PSAyKSAgdGhpcy5jcmVhdGVTdW4xKCk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSAzKSAgdGhpcy5jcmVhdGVTdW4yKCk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA0KSAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnRpcCA9IHRoaXMuZGlhbG9nLmdldENoaWxkQnlOYW1lKG5hbWUpO1xyXG4gICAgICAgICAgICB0aGlzLnRpcC5hY3RpdmUgPSB0cnVlOyB0aGlzLnRpcC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aXApXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF6Zmk5omA5pyJ5aSq6ZizXHJcbiAgICBiZWdpbkNsaWNrKCl7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlvIDlp4vmuLjmiI/vvIzmiJbogIXngrnlh7vot7Pov4flvJXlr7xcclxuICAgIGNsaWNrQnRuKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuIvkuIDmraXmjInpkq5cclxuICAgIG5leHQoKXtcclxuICAgICAgICBsZXQgdGltZSA9IDAuNTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLnRpcClcclxuICAgICAgICAudG8odGltZSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gMykgIHRoaXMuY3JlYXRlU3VuKGZhbHNlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gNCkgIHRoaXMuYmVnaW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcblxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs1xyXG4gICAgY3JlYXRlU3VuKHR5cGUpe1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKGNjLnYyKC0yNTAsLTIxNiksY2MudjIoMjAwLC0xMTUpLGNjLnYyKC0zNSwtNTAwKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsLngsdGhpcy5iYWxsLnksdGhpcy5Qb3NfQXJyYXlbMF0ueCx0aGlzLlBvc19BcnJheVswXS55KVxyXG4gICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUxLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVswXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDAsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDEpXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWUyID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLlBvc19BcnJheVswXS54LHRoaXMuUG9zX0FycmF5WzBdLnksdGhpcy5Qb3NfQXJyYXlbMV0ueCx0aGlzLlBvc19BcnJheVsxXS55KVxyXG4gICAgICAgICAgICBsZXQgdGltZTMgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSx0aGlzLlBvc19BcnJheVsyXS54LHRoaXMuUG9zX0FycmF5WzJdLnkpXHJcbiAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSksXHJcbiAgICAgICAgICAgIDAuNSk7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUyLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVsxXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDEsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuNSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzJdLngsdGhpcy5Qb3NfQXJyYXlbMl0ueSksXHJcbiAgICAgICAgICAgICAgICAwLjUpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAudG8odGltZTMse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5WzJdfSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUJhbGwoMiwwLDAsZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC4yKVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIC8v5Yib5bu65aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBiYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUxKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMuUG9zX0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIGJhbGwuZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Top5LluqbliJvlu7rov57nur/nlKhcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgIGNvbnN0IHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjg7XHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvJXlr7zmiJDlip9cclxuICAgIHBhc3NMZXZlbCgpe1xyXG4gICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICBjYy50d2Vlbih3aW4pXHJcbiAgICAgICAgLmRlbGF5KDAuNClcclxuICAgICAgICAudG8oMC4wMSx7c2NhbGU6Mi41fSlcclxuICAgICAgICAudG8oMC4zNSx7c2NhbGU6MX0pXHJcbiAgICAgICAgLmRlbGF5KDAuNilcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgd2luLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGk9MTsgaTwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGs9MTsgazwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaysrKXtcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWVBcnJheVtrLTFdLHt4OnRoaXMuYmFsbF9BcnJheVtrXS54LHk6dGhpcy5iYWxsX0FycmF5W2tdLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lQ291bnQgKz0gKHRpbWVBcnJheVtrLTFdKzAuMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sIDQwMCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsICs9IDE7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IDMpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+Wksei0peS6i+S7tlxyXG4gICAgbG9zZUxldmVsKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5BdWRpb01hbmFnZXIucGxheVdhcm5pbmcoKTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtrXSlcclxuICAgICAgICAgICAgLnRvKDAuNix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICB9XHJcbiAgICAgICAgLy/nu5PmnZ/pobXpnaLliqjnlLtcclxuICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAudG8oMC4yNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMix7b3BhY2l0eTowfSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjE1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlpKrpmLPkuovku7ZcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bml7bpl7TmiLNcclxuICAgIGdldFRpbWUoKXtcclxuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gdGltZXN0YW1wO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDov57nur/vvIzlj4LmlbDotbfngrnvvIznu4jngrnvvIzov57nur/ml7bpl7RcclxuICAgIGNyZWF0ZUxpbmUoc3RhcnQsZW5kLHRpbWUpe1xyXG4gICAgICAgIGxldCBsaW5lID0gY2MuaW5zdGFudGlhdGUodGhpcy5saW5lUHJlZmFiKTtcclxuICAgICAgICBsaW5lLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIik7XHJcbiAgICAgICAgbGluZS5zZXRQb3NpdGlvbihzdGFydC54LHN0YXJ0LnkpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5pGn5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOS4queCueS5i+mXtOeahOinkuW6piDnlKjkuo7lhpnov57nur8g56Gu5a6a6L+e57q/5pa55ZCRXHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxTdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVM7QUFDVCxJQUFJLGNBQWMsR0FBRztJQUNqQixVQUFVLEVBQUcsVUFBUyxHQUFHO1FBQ3JCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBQztZQUNsQyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDL0M7UUFFRCxJQUFHLE1BQU0sRUFBQztZQUNSLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUNELFVBQVUsRUFBRyxVQUFTLEdBQUcsRUFBQyxLQUFLO1FBQzNCLFVBQVU7UUFDVixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUNELGFBQWEsRUFBRyxVQUFTLEdBQUc7UUFDMUIsVUFBVTtRQUNWLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNwQztJQUNILENBQUM7Q0FDSixDQUFDO0FBRU8sd0NBQWMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+e8k+WtmOa1j+iniOWZqOaVsOaNrlxudmFyIFN0b3JhZ2VNZXNzYWdlID0ge1xuICAgIGdldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgICB2YXIgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICAgIHZhciByZXN1bHQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYocmVzdWx0KXtcbiAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LFxuICAgIHNldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXksdmFsdWUpe1xuICAgICAgICAvL+S4u+WKqOaLiei1t+WIhuS6q+aOpeWPo1xuICAgICAgICB2YXIgdGVtcCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGVtcClcbiAgICB9LFxuICAgIHJlbW92ZVN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgLy/kuLvliqjliKDpmaTmtojmga/mjqXlj6NcbiAgICAgIGlmKGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpKXtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgICAgIH1cbiAgICB9LFxufTtcblxuZXhwb3J0IHsgU3RvcmFnZU1lc3NhZ2UgfTsiXX0= //------QC-SOURCE-SPLIT------ (function() { @@ -1945,7 +1125,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/Notification.js'; + var __filename = 'preview-scripts/assets/Script/tool/DynamicAtlasManager.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -1953,55 +1133,18 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, 'f2518+0IHRGOY+ueIhGtEeA', 'Notification'); -// Script/Notification.ts +cc._RF.push(module, '3ffacOneORCf6Bc1LFhTCCQ', 'DynamicAtlasManager'); +// Script/tool/DynamicAtlasManager.js "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Notification = void 0; -//全局通知 -var Notification = { - _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.Notification = Notification; + +cc.Class({ + "extends": cc.Component, + properties: {}, + onLoad: function onLoad() { + cc.dynamicAtlasManager.enabled = false; + } +}); cc._RF.pop(); } @@ -2014,135 +1157,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxOb3RpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsTUFBTTtBQUNOLElBQUksWUFBWSxHQUFHO0lBQ2YsU0FBUyxFQUFFLEVBQUU7SUFDYixFQUFFLEVBQUUsVUFBVSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDbEMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLFNBQVMsRUFBRTtZQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztTQUMvQjtRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxFQUFFLFVBQVUsTUFBTSxFQUFFLFNBQVM7UUFDN0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQUUsT0FBTztRQUVoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsSUFBSSxPQUFPO2dCQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDakU7SUFDTCxDQUFDO0lBRUQsR0FBRyxFQUFFLFVBQVUsTUFBTSxFQUFFLFFBQVE7UUFDM0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQUUsT0FBTztRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQzFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7Z0JBQ3JCLE1BQU07YUFDVDtTQUNKO0lBQ0wsQ0FBQztJQUVELFNBQVMsRUFBRSxVQUFVLE1BQU07UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDdkMsQ0FBQztJQUVELFlBQVksRUFBRTtRQUNWLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMxQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckI7U0FDSjtJQUNMLENBQUM7Q0FDSixDQUFDO0FBRU8sb0NBQVkiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+WFqOWxgOmAmuefpVxudmFyIE5vdGlmaWNhdGlvbiA9IHtcbiAgICBfZXZlbnRNYXA6IFtdLFxuICAgIG9uOiBmdW5jdGlvbiAobWFzZ0lkLCBjYWxsYmFjaywgdGFyZ2V0KSB7XG4gICAgICAgIGlmICh0aGlzLl9ldmVudE1hcFttYXNnSWRdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2V2ZW50TWFwW21hc2dJZF0gPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdLnB1c2goeyBjYWxsYmFjazogY2FsbGJhY2ssIHRhcmdldDogdGFyZ2V0IH0pO1xuICAgIH0sXG5cbiAgICBlbWl0OiBmdW5jdGlvbiAobWFzZ0lkLCBwYXJhbWV0ZXIpIHtcbiAgICAgICAgbGV0IGFycmF5ID0gdGhpcy5fZXZlbnRNYXBbbWFzZ0lkXTtcbiAgICAgICAgaWYgKGFycmF5ID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgZWxlbWVudCA9IGFycmF5W2ldO1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQpIGVsZW1lbnQuY2FsbGJhY2suY2FsbChlbGVtZW50LnRhcmdldCwgcGFyYW1ldGVyKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBvZmY6IGZ1bmN0aW9uIChtYXNnSWQsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBhcnJheSA9IHRoaXMuX2V2ZW50TWFwW21hc2dJZF07XG4gICAgICAgIGlmIChhcnJheSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBlbGVtZW50ID0gYXJyYXlbaV07XG4gICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LmNhbGxiYWNrID09PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGFycmF5W2ldID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcblxuICAgIG9mZk1hc2dJZDogZnVuY3Rpb24gKG1hc2dJZCkge1xuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdID0gdW5kZWZpbmVkO1xuICAgIH0sXG5cbiAgICByZW1vdmVBbGxNc2c6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yIChsZXQgayBpbiB0aGlzLl9ldmVudE1hcCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2V2ZW50TWFwW2tdKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vZmZNYXNnSWQoayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuXG5leHBvcnQgeyBOb3RpZmljYXRpb24gfTsiXX0= -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/Sun.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, '4be67sdkexCyqLl0NHd9N1f', 'Sun'); -// Script/Sun.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 }); -var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; -var Notification_1 = require("./Notification"); -var NewClass = /** @class */ (function (_super) { - __extends(NewClass, _super); - function NewClass() { - return _super !== null && _super.apply(this, arguments) || this; - } - // onLoad () {} - NewClass.prototype.start = function () { - }; - //初始化数据 - NewClass.prototype.init = function (_id, color, speed, repeat) { - this.touch = true; - this.move = false; - this.id_Number = _id; - this._color = color; - this._speed = speed; - this._repeat = repeat; - //太阳动画 - cc.tween(this.node.getChildByName("shan")) - .repeatForever(cc.tween() - .to(1, { opacity: 0, scale: 0.5, }) - .delay(0.2) - .to(1, { opacity: 255, scale: 1.2 }) - .delay(0.5)) - .start(); - }; - //用于作弊 测试 - NewClass.prototype.showNumber = function (type) { - this.node.getChildByName("number").active = type; - if (type == true) - this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; - }; - //点击事件 - NewClass.prototype.clickBtn = function (event, data) { - if (data === "1") { - if (this.move == false && this.touch == true) { - if (this.node.parent.parent.name == "GameNode") { - if (this.node.parent.parent.getComponent("GameManager").begin == true) { - cc.tween(this.node.getChildByName("action")) - .to(0.5, { opacity: 0, scale: 1.8 }) - .start(); - cc.tween(this.node) - .to(0.3, { scale: 1.3 }) - .to(0.3, { scale: 1 }) - .start(); - this.touch = false; - this.node.zIndex = -1; - Notification_1.Notification.emit("clickSun", this.id_Number); - } - } - else { - this.touch = false; - this.node.zIndex = -1; - Notification_1.Notification.emit("clickSun", this.id_Number); - } - } - } - else { - if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { - this.touch = false; - this.node.zIndex = -1; - Notification_1.Notification.emit("clickSun", this.id_Number); - } - } - }; - 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxTdW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9CQUFvQjtBQUNwQix3RUFBd0U7QUFDeEUsbUJBQW1CO0FBQ25CLGtGQUFrRjtBQUNsRiw4QkFBOEI7QUFDOUIsa0ZBQWtGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUUsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUMsK0NBQThDO0FBRzlDO0lBQXNDLDRCQUFZO0lBQWxEOztJQXFFQSxDQUFDO0lBOURHLGVBQWU7SUFDZix3QkFBSyxHQUFMO0lBQ0EsQ0FBQztJQUNELE9BQU87SUFDUCx1QkFBSSxHQUFKLFVBQUssR0FBRyxFQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsTUFBTTtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFJLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixNQUFNO1FBQ04sRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN6QyxhQUFhLENBQ1YsRUFBRSxDQUFDLEtBQUssRUFBRTthQUNULEVBQUUsQ0FBQyxDQUFDLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxHQUFHLEdBQUUsQ0FBQzthQUM1QixLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1YsRUFBRSxDQUFDLENBQUMsRUFBQyxFQUFDLE9BQU8sRUFBQyxHQUFHLEVBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxDQUFDO2FBQzdCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDZDthQUNBLEtBQUssRUFBRSxDQUFDO0lBQ2IsQ0FBQztJQUNELFNBQVM7SUFDVCw2QkFBVSxHQUFWLFVBQVcsSUFBSTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDakQsSUFBRyxJQUFJLElBQUksSUFBSTtZQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQy9GLENBQUM7SUFDRCxNQUFNO0lBQ04sMkJBQVEsR0FBUixVQUFTLEtBQUssRUFBQyxJQUFJO1FBQ2YsSUFBRyxJQUFJLEtBQUssR0FBRyxFQUFDO1lBQ1osSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBQztnQkFDekMsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsRUFBQztvQkFDMUMsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUM7d0JBQ2pFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7NkJBQzNDLEVBQUUsQ0FBQyxHQUFHLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxHQUFHLEVBQUMsQ0FBQzs2QkFDN0IsS0FBSyxFQUFFLENBQUM7d0JBQ1QsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDOzZCQUNsQixFQUFFLENBQUMsR0FBRyxFQUFDLEVBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxDQUFDOzZCQUNuQixFQUFFLENBQUMsR0FBRyxFQUFDLEVBQUMsS0FBSyxFQUFDLENBQUMsRUFBQyxDQUFDOzZCQUNqQixLQUFLLEVBQUUsQ0FBQzt3QkFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQzt3QkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQ3RCLDJCQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7cUJBQ2hEO2lCQUNKO3FCQUNHO29CQUNBLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO29CQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDdEIsMkJBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDaEQ7YUFFSjtTQUNKO2FBQ0c7WUFDQSxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksRUFBQztnQkFDekYsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN0QiwyQkFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ2hEO1NBQ0o7SUFDTCxDQUFDO0lBcEVnQixRQUFRO1FBRDVCLE9BQU87T0FDYSxRQUFRLENBcUU1QjtJQUFELGVBQUM7Q0FyRUQsQUFxRUMsQ0FyRXFDLEVBQUUsQ0FBQyxTQUFTLEdBcUVqRDtrQkFyRW9CLFFBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMZWFybiBUeXBlU2NyaXB0OlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy90eXBlc2NyaXB0Lmh0bWxcclxuLy8gTGVhcm4gQXR0cmlidXRlOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9yZWZlcmVuY2UvYXR0cmlidXRlcy5odG1sXHJcbi8vIExlYXJuIGxpZmUtY3ljbGUgY2FsbGJhY2tzOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9saWZlLWN5Y2xlLWNhbGxiYWNrcy5odG1sXHJcblxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuaW1wb3J0IEdhbWVNYW5hZ2VyIGZyb20gJy4vR2FtZU1hbmFnZXInO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuL05vdGlmaWNhdGlvbic7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBpZF9OdW1iZXI6bnVtYmVyXHJcbiAgICBfc3BlZWQ6bnVtYmVyXHJcbiAgICBfY29sb3I6bnVtYmVyXHJcbiAgICB0b3VjaDpib29sZWFuXHJcbiAgICBfcmVwZWF0OmJvb2xlYW5cclxuICAgIG1vdmU6Ym9vbGVhblxyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdChfaWQsY29sb3Isc3BlZWQscmVwZWF0KXtcclxuICAgICAgICB0aGlzLnRvdWNoID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlkX051bWJlciAgPSBfaWQ7XHJcbiAgICAgICAgdGhpcy5fY29sb3IgPSBjb2xvcjtcclxuICAgICAgICB0aGlzLl9zcGVlZCA9IHNwZWVkO1xyXG4gICAgICAgIHRoaXMuX3JlcGVhdCA9IHJlcGVhdDtcclxuICAgICAgICAvL+WkqumYs+WKqOeUu1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNoYW5cIikpXHJcbiAgICAgICAgLnJlcGVhdEZvcmV2ZXIoXHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKClcclxuICAgICAgICAgICAgLnRvKDEse29wYWNpdHk6MCxzY2FsZTowLjUsfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAgICAgLnRvKDEse29wYWNpdHk6MjU1LHNjYWxlOjEuMn0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjUpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/nlKjkuo7kvZzlvIog5rWL6K+VXHJcbiAgICBzaG93TnVtYmVyKHR5cGUpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5hY3RpdmUgPSB0eXBlO1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSlcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5pZF9OdW1iZXIgKyBcIlwiO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuovku7ZcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIGlmKGRhdGEgPT09IFwiMVwiKXtcclxuICAgICAgICAgICAgaWYoIHRoaXMubW92ZSA9PSBmYWxzZSAmJiB0aGlzLnRvdWNoID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5ub2RlLnBhcmVudC5wYXJlbnQubmFtZSA9PSBcIkdhbWVOb2RlXCIpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50LmdldENvbXBvbmVudChcIkdhbWVNYW5hZ2VyXCIpLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJhY3Rpb25cIikpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50bygwLjUse29wYWNpdHk6MCxzY2FsZToxLjh9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC4zLHtzY2FsZToxfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG91Y2ggPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYoIHRoaXMudG91Y2ggPT0gdHJ1ZSAmJiB0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHdWlkZU1hbmFnZXJcIikuYmVnaW4gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuekluZGV4ID0gLTE7XHJcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ== +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxEeW5hbWljQXRsYXNNYW5hZ2VyLmpzIl0sIm5hbWVzIjpbImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwib25Mb2FkIiwiZHluYW1pY0F0bGFzTWFuYWdlciIsImVuYWJsZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUFBLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ0wsYUFBU0QsRUFBRSxDQUFDRSxTQURQO0FBR0xDLEVBQUFBLFVBQVUsRUFBRSxFQUhQO0FBTUxDLEVBQUFBLE1BTkssb0JBTUs7QUFDTkosSUFBQUEsRUFBRSxDQUFDSyxtQkFBSCxDQUF1QkMsT0FBdkIsR0FBaUMsS0FBakM7QUFDSDtBQVJJLENBQVQiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImNjLkNsYXNzKHtcclxuICAgIGV4dGVuZHM6IGNjLkNvbXBvbmVudCxcclxuXHJcbiAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICB9LFxyXG5cclxuICAgIG9uTG9hZCAoKSB7XHJcbiAgICAgICAgY2MuZHluYW1pY0F0bGFzTWFuYWdlci5lbmFibGVkID0gZmFsc2U7XHJcbiAgICB9LFxyXG59KTtcclxuIl19 //------QC-SOURCE-SPLIT------ (function() { @@ -2468,7 +1483,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/Load.js'; + var __filename = 'preview-scripts/assets/Script/GuideManager.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -2476,8 +1491,8 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, '454adgphRpA6oq5lB6Cg1fK', 'Load'); -// Script/Load.ts +cc._RF.push(module, '3fd2fh6vHNJeISUizW09xat', 'GuideManager'); +// Script/GuideManager.ts "use strict"; var __extends = (this && this.__extends) || (function () { @@ -2500,79 +1515,337 @@ 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 _a = cc._decorator, ccclass = _a.ccclass, property = _a.property, requireComponent = _a.requireComponent; +//此页面为引导页面,后续更新成模板,暂时偷懒复制主游戏场景代码进来 var GameData_1 = require("./GameData"); -var Storage_1 = require("./Storage"); +var Notification_1 = require("./Notification"); +var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; 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; + // LIFE-CYCLE CALLBACKS: + _this.dialog = null; + _this.ball = null; + _this.qiu1 = null; + _this.linePrefab = null; + return _this; } + // onLoad () {} NewClass.prototype.start = function () { - this.Authentication(); + GameData_1.default._instance.GM_INFO.custom = 0; + this.init(); + this.startGuide(0); }; - //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 - NewClass.prototype.Authentication = function () { - var userId = Storage_1.StorageMessage.getStorage("user"); - if (userId == "undifend" || userId == null || userId == "") { - this.setUserId(); + //初始化数据 + NewClass.prototype.init = function () { + this.custom = 1; + this.ball.zIndex = 100; + this.Pos_Array = []; + this.ball_Array = []; + this.begin = false; + this.clickNow = 0; + this.tip = null; + }; + //开始引导方法 + NewClass.prototype.startGuide = function (type) { + var _this = this; + var num = this.custom; + var time = 0.5; + var name = "tip" + num; + if (type != 0) { + cc.tween(this.node) + .to(time, { opacity: 255 }) + .call(function () { + _this.custom += 1; + if (type != 0) + _this.custom = 2; + if (_this.custom == 2) + _this.createSun(true); + else if (_this.custom == 3) + _this.createSun(false); + else if (_this.custom == 4) + _this.begin = true; + else if (_this.custom == 5) + cc.director.loadScene("GameScene"); + }) + .start(); } else { - var data = Storage_1.StorageMessage.getStorage("user"); - data = this.getUserId(data); - var timestamp = parseInt(new Date().getTime() / 1000 + ""); - if ((timestamp - data[2]) > 86400) { - this.setUserId(); - return; - } - GameData_1.default._instance.GM_INFO.userId = parseInt(data[1]); + this.tip = this.dialog.getChildByName(name); + this.tip.active = true; + this.tip.opacity = 0; + cc.tween(this.tip) + .to(time, { opacity: 255 }) + .start(); } }; - //设置userId,链接有获取,没有跳转授权 - NewClass.prototype.setUserId = function () { - GameData_1.default._instance.GM_INFO.userId = this.getUserId(null); - if (GameData_1.default._instance.GM_INFO.userId == null) { - var url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=" + location.href; - window.location.href = url; - } - else { - var timestamp = parseInt(new Date().getTime() / 1000 + ""); - var idTemp = "gameId=" + GameData_1.default._instance.GM_INFO.gameId + - "?userId= " + GameData_1.default._instance.GM_INFO.userId + "?time=" + timestamp; - Storage_1.StorageMessage.setStorage("user", idTemp); - GameData_1.default._instance.GM_INFO.userId = parseInt(GameData_1.default._instance.GM_INFO.userId); + //清除所有太阳 + NewClass.prototype.beginClick = function () { + for (var i = 0; i < this.ball_Array.length; i++) { + this.ball_Array[i].getComponent("Sun").move = false; } }; - //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId - NewClass.prototype.getUserId = function (str) { - var pathStr = window.location.search; - var arr = pathStr.split("&"); - if (str != null) - arr = pathStr.split("?"); - if (pathStr.length >= 0 && arr.length > 0) { - var arr2_1 = []; - arr.map(function (item) { - arr2_1.push(item.split("=")[1]); - }); - return str == null ? arr2_1[0] : arr2_1; - } - else { - return null; - } - }; - //开始游戏,跳转至引导页面 - NewClass.prototype.startGame = function () { - cc.director.loadScene("GuideScene"); - }; - //备用,用来测试跳转 指定关卡 - NewClass.prototype.clickBtn = function (event, data) { - GameData_1.default._instance.GM_INFO.custom = parseInt(data); + //点击开始游戏,或者点击跳过引导 + NewClass.prototype.clickBtn = function () { cc.director.loadScene("GameScene"); }; - //打开排行榜 - NewClass.prototype.openRank = function () { - cc.director.loadScene("RankScene"); + //点击下一步按钮 + NewClass.prototype.next = function () { + var _this = this; + var time = 0.5; + cc.tween(this.tip) + .to(time, { opacity: 0 }) + .call(function () { + _this.custom += 1; + if (_this.custom == 2) + _this.createSun(true); + else if (_this.custom == 3) + _this.createSun(false); + else if (_this.custom == 4) + _this.begin = true; + else if (_this.custom == 5) + cc.director.loadScene("GameScene"); + }) + .start(); }; + //创建太阳 + NewClass.prototype.createSun = function (type) { + var _this = this; + if (type == true) { + this.ball_Array = []; + this.Pos_Array.push(cc.v2(-250, -216), cc.v2(200, -115), cc.v2(-35, -500)); + var time1 = this.calculateDistance(this.ball.x, this.ball.y, this.Pos_Array[0].x, this.Pos_Array[0].y); + this.ball.opacity = 0; + cc.tween(this.ball) + .to(time1, { position: this.Pos_Array[0] }) + .call(function () { + _this.createBall(0, 0, 0, false); + }) + .delay(1) + .call(function () { + _this.startGuide(0); + }) + .start(); + } + else { + var time2 = this.calculateDistance(this.Pos_Array[0].x, this.Pos_Array[0].y, this.Pos_Array[1].x, this.Pos_Array[1].y); + var time3 = this.calculateDistance(this.Pos_Array[1].x, this.Pos_Array[1].y, this.Pos_Array[2].x, this.Pos_Array[2].y); + this.ball.opacity = 255; + this.createLine(cc.v2(this.ball.x, this.ball.y), cc.v2(this.Pos_Array[1].x, this.Pos_Array[1].y), 0.5); + cc.tween(this.ball) + .to(time2, { position: this.Pos_Array[1] }) + .call(function () { + _this.createBall(1, 0, 0, false); + }) + .delay(0.5) + .call(function () { + _this.createLine(cc.v2(_this.ball.x, _this.ball.y), cc.v2(_this.Pos_Array[2].x, _this.Pos_Array[2].y), 0.5); + }) + .to(time3, { position: this.Pos_Array[2] }) + .call(function () { + _this.createBall(2, 0, 0, false); + _this.ball.opacity = 0; + }) + .delay(0.2) + .call(function () { + _this.destroyLine(); + _this.startGuide(0); + }) + .start(); + } + }; + //创建太阳 + NewClass.prototype.createBall = function (number, color, speed, repeat) { + var ball = null; + ball = cc.instantiate(this.qiu1); + ball.parent = this.node.getChildByName("Sun"); + ball.zIndex = this.Pos_Array.length - number; + ball.setPosition(this.ball.x, this.ball.y); + ball.getComponent("Sun").init(number, color, speed, repeat); + ball.getComponent("Sun").move = true; + this.ball_Array.push(ball); + }; + //获取两点之间角度创建连线用 + NewClass.prototype.calculateDistance = function (x1, y1, x2, y2) { + var dx = x2 - x1; + var dy = y2 - y1; + var distance = Math.sqrt(dx * dx + dy * dy); + if (distance > 800) + distance = 800; + var time = distance / 800 * 0.8; + return time; + }; + //引导成功 + NewClass.prototype.passLevel = function () { + var _this = this; + var win = this.node.getChildByName("Win"); + win.active = true; + win.setScale(0); + cc.tween(win) + .delay(0.4) + .to(0.01, { scale: 2.5 }) + .to(0.35, { scale: 1 }) + .delay(0.6) + .call(function () { + win.active = false; + setTimeout(function () { + _this.destroyLine(); + var timeArray = []; + var timeCount = 0; + var ball = _this.ball_Array[0]; + for (var i = 1; i < _this.ball_Array.length; i++) { + var time = _this.calculateDistance(_this.ball_Array[i].x, _this.ball_Array[i].y, _this.ball_Array[i - 1].x, _this.ball_Array[i - 1].y); + timeArray.push(time); + } + var _loop_1 = function (k) { + setTimeout(function () { + cc.tween(ball) + .to(timeArray[k - 1], { x: _this.ball_Array[k].x, y: _this.ball_Array[k].y }) + .call(function () { + _this.ball_Array[k].active = false; + if (k == _this.ball_Array.length - 1) { + setTimeout(function () { + _this.ball.opacity = 255; + _this.ball.position = cc.v3(ball.x, ball.y, 0); + _this.ball.active = false; + _this.startGuide(0); + }, 200); + } + }) + .start(); + }, timeCount * 1000); + timeCount += (timeArray[k - 1] + 0.1); + }; + for (var k = 1; k < _this.ball_Array.length; k++) { + _loop_1(k); + } + }, 400); + }) + .start(); + }; + //点击太阳执行方法 + NewClass.prototype.clickSun = function (data) { + var _this = this; + if (this.begin == true) { + if (data == this.clickNow) { + GameData_1.default._instance.AudioManager.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; + GameData_1.default._instance.GM_INFO.total += 1; + setTimeout(function () { + if (_this.ball_Array[_this.clickNow - 1]) + _this.ball_Array[_this.clickNow - 1].getChildByName("guang").active = false; + }, 200); + if (this.clickNow == 3) { + this.passLevel(); + } + } + else { + this.loseLevel(); + } + } + }; + //失败事件 + NewClass.prototype.loseLevel = function () { + var _this = this; + this.begin = false; + GameData_1.default._instance.AudioManager.playWarning(); + this.destroyLine(); + var ball = this.ball_Array[0]; + var _loop_2 = function (k) { + cc.tween(this_1.ball_Array[k]) + .to(0.6, { x: ball.x, y: ball.y }) + .call(function () { + _this.ball_Array[k].active = false; + if (k == _this.ball_Array.length - 1) { + _this.ball.opacity = 0; + _this.ball.position = cc.v3(ball.x, ball.y, 0); + _this.clearSun(); + _this.custom = 1; + _this.startGuide(1); + } + }) + .start(); + }; + var this_1 = this; + for (var k = 1; k < this.ball_Array.length; k++) { + _loop_2(k); + } + //结束页面动画 + var over = this.node.getChildByName("Over"); + cc.tween(over) + .to(0.25, { opacity: 255 }) + .delay(0.1) + .to(0.2, { opacity: 0 }) + .delay(0.1) + .to(0.15, { opacity: 255 }) + .delay(0.1) + .to(0.1, { opacity: 0 }) + .start(); + }; + //点击太阳事件 + NewClass.prototype.clearSun = function () { + for (var k = 0; k < this.ball_Array.length; k++) { + this.ball_Array[k].removeFromParent(); + this.ball_Array[k] = null; + } + this.ball_Array = []; + }; + //获取时间戳 + NewClass.prototype.getTime = function () { + var timestamp = new Date().getTime(); + return timestamp; + }; + //创造连线,参数起点,终点,连线时间 + NewClass.prototype.createLine = function (start, end, time) { + var line = cc.instantiate(this.linePrefab); + line.parent = this.node.getChildByName("Line"); + line.setPosition(start.x, start.y); + var dx = end.x - start.x; + var dy = end.y - start.y; + var distance = Math.sqrt(dx * dx + dy * dy); + line.height = distance; + line.getComponent(cc.Sprite).fillRange = 0; + line.angle = -this.calculateAngle(start.x, start.y, end.x, end.y); + cc.tween(line.getComponent(cc.Sprite)) + .to(time, { fillRange: 1 }) + .start(); + }; + //摧毁连线 + NewClass.prototype.destroyLine = function () { + for (var i = 0; i < this.node.getChildByName("Line").children.length; i++) { + if (this.node.getChildByName("Line").children[i]) { + this.node.getChildByName("Line").children[i].removeFromParent(); + this.node.getChildByName("Line").children[i] = null; + } + } + this.node.getChildByName("Line").removeAllChildren(); + }; + //获取两个点之间的角度 用于写连线 确定连线方向 + NewClass.prototype.calculateAngle = function (x1, y1, x2, y2) { + var angle = Math.atan2(y2 - y1, x2 - x1) * 180 / Math.PI - 90; + return -angle; + }; + NewClass.prototype.onEnable = function () { + Notification_1.Notification.on("clickSun", this.clickSun, this); + }; + NewClass.prototype.onDisable = function () { + Notification_1.Notification.off("clickSun", this.clickSun); + }; + __decorate([ + property(cc.Node) + ], NewClass.prototype, "dialog", void 0); + __decorate([ + property(cc.Node) + ], NewClass.prototype, "ball", void 0); + __decorate([ + property(cc.Prefab) + ], NewClass.prototype, "qiu1", void 0); + __decorate([ + property(cc.Prefab) + ], NewClass.prototype, "linePrefab", void 0); NewClass = __decorate([ ccclass ], NewClass); @@ -2591,13 +1864,13 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBQzVELHVDQUFrQztBQUNsQyxxQ0FBMkM7QUFHM0M7SUFBc0MsNEJBQVk7SUFBbEQ7O0lBbUVBLENBQUM7SUFqRUcsd0JBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0RBQWdEO0lBQ3hDLGlDQUFjLEdBQXRCO1FBQ0ksSUFBSSxNQUFNLEdBQUcsd0JBQWMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsSUFBRyxNQUFNLElBQUksVUFBVSxJQUFJLE1BQU0sSUFBRSxJQUFJLElBQUksTUFBTSxJQUFJLEVBQUUsRUFBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDcEI7YUFDRztZQUNBLElBQUksSUFBSSxHQUFHLHdCQUFjLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztZQUN6RCxJQUFHLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBQztnQkFDN0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNqQixPQUFPO2FBQ1Y7WUFDRCxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxD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InNvdXJjZXNDb250ZW50IjpbIlxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHksIHJlcXVpcmVDb21wb25lbnR9ID0gY2MuX2RlY29yYXRvcjtcclxuaW1wb3J0IEdhbWVEYXRhIGZyb20gXCIuL0dhbWVEYXRhXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VNZXNzYWdlIH0gZnJvbSBcIi4vU3RvcmFnZVwiO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG5cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLkF1dGhlbnRpY2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy/pibTmnYPvvIzliKTmlq3mnInml6DnvJPlrZh1c2VyaWQs5pyJ55qE6K+d5Yik5pat5piv5ZCm6L+H5pyf77yM5rKh5pyJ55qE6K+d6YeN5paw6I635Y+WdXNlcmlkIOW5tuS4lOe8k+WtmOS4ilxyXG4gICAgcHJpdmF0ZSBBdXRoZW50aWNhdGlvbigpe1xyXG4gICAgICAgIGxldCB1c2VySWQgPSBTdG9yYWdlTWVzc2FnZS5nZXRTdG9yYWdlKFwidXNlclwiKTtcclxuICAgICAgICBpZih1c2VySWQgPT0gXCJ1bmRpZmVuZFwiIHx8IHVzZXJJZD09bnVsbCB8fCB1c2VySWQgPT0gXCJcIil7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VXNlcklkKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGxldCBkYXRhID0gU3RvcmFnZU1lc3NhZ2UuZ2V0U3RvcmFnZShcInVzZXJcIik7XHJcbiAgICAgICAgICAgIGRhdGEgPSB0aGlzLmdldFVzZXJJZChkYXRhKTtcclxuICAgICAgICAgICAgbGV0IHRpbWVzdGFtcCA9IHBhcnNlSW50KG5ldyBEYXRlKCkuZ2V0VGltZSgpLzEwMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgaWYoKHRpbWVzdGFtcCAtIGRhdGFbMl0pID4gODY0MDApe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQoKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPSBwYXJzZUludChkYXRhWzFdKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9rnVzZXJJZCzpk77mjqXmnInojrflj5bvvIzmsqHmnInot7PovazmjojmnYNcclxuICAgIHByaXZhdGUgc2V0VXNlcklkKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gdGhpcy5nZXRVc2VySWQobnVsbCk7XHJcbiAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID09IG51bGwpe1xyXG4gICAgICAgICAgICBsZXQgdXJsID0gXCJodHRwOi8vYXBpLnNwYXJrdXMuY24vYXBpL3VzZXIvYXV0aC9sb2dpbj9kb21haW49aHVpMzI1NzlXZFlQc2dZcSZjYWxsYmFjaz1cIitsb2NhdGlvbi5ocmVmO1xyXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWVzdGFtcCA9IHBhcnNlSW50KG5ldyBEYXRlKCkuZ2V0VGltZSgpLzEwMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgbGV0IGlkVGVtcCA9IFwiZ2FtZUlkPVwiICsgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkICsgXHJcbiAgICAgICAgICAgIFwiP3VzZXJJZD0gXCIgKyBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgKyBcIj90aW1lPVwiICsgdGltZXN0YW1wO1xyXG4gICAgICAgICAgICBTdG9yYWdlTWVzc2FnZS5zZXRTdG9yYWdlKFwidXNlclwiLGlkVGVtcCk7XHJcbiAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCA9IHBhcnNlSW50KEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ojrflj5Z1c2VyIGlkIOacieWPguaVsOS4uuiOt+WPlmdhbWVpZCB1c2VyaWQg5pe26Ze05oiz77yMIOaXoOWPguaVsOS4uuWPquiOt+WPlumTvuaOpeWwvue8gOS4iueahHVzZXJJZFxyXG4gICAgcHJpdmF0ZSBnZXRVc2VySWQoc3RyKSB7ICAgIFxyXG4gICAgICAgIGxldCBwYXRoU3RyID0gd2luZG93LmxvY2F0aW9uLnNlYXJjaDtcclxuICAgICAgICBsZXQgYXJyPXBhdGhTdHIuc3BsaXQoXCImXCIpO1xyXG4gICAgICAgIGlmKHN0ciAhPSBudWxsKSBhcnI9cGF0aFN0ci5zcGxpdChcIj9cIik7XHJcbiAgICAgICAgaWYgKHBhdGhTdHIubGVuZ3RoPj0gMCYmYXJyLmxlbmd0aD4wKSB7XHJcbiAgICAgICAgICAgIGxldCBhcnIyPVtdO1xyXG4gICAgICAgICAgICBhcnIubWFwKGl0ZW09PntcclxuICAgICAgICAgICAgICAgIGFycjIucHVzaChpdGVtLnNwbGl0KFwiPVwiKVsxXSlcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgcmV0dXJuIHN0ciA9PSBudWxsID8gYXJyMlswXTphcnIyO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lvIDlp4vmuLjmiI/vvIzot7Povazoh7PlvJXlr7zpobXpnaJcclxuICAgIHN0YXJ0R2FtZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkd1aWRlU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+Wkh+eUqO+8jOeUqOadpea1i+ivlei3s+i9rCDmjIflrprlhbPljaFcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSA9IHBhcnNlSW50KGRhdGEpO1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkdhbWVTY2VuZVwiKTtcclxuICAgIH0gICBcclxuICAgIC8v5omT5byA5o6S6KGM5qacXHJcbiAgICBvcGVuUmFuaygpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIlJhbmtTY2VuZVwiKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHdWlkZU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLHVDQUFrQztBQUNsQywrQ0FBOEM7QUFDeEMsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBc0MsNEJBQVk7SUFBbEQ7UUFBQSxxRUFrVEM7UUFqVEcsd0JBQXdCO1FBRXhCLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFZLElBQUksQ0FBQztRQUVyQixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDOztJQXlTakMsQ0FBQztJQWxTRyxlQUFlO0lBRWYsd0JBQUssR0FBTDtRQUNJLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUNELE9BQU87SUFDUCx1QkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxRQUFRO0lBQ1IsNkJBQVUsR0FBVixVQUFXLElBQUk7UUFBZixpQkF3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SyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7aUJBQ2xCLEVBQUUsQ0FBQyxLQUFLLEVBQUMsRUFBQyxRQUFRLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO2lCQUN0QyxJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDVixJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3RixHQUFHLENBQUMsQ0FBQztZQUNULENBQUMsQ0FBQztpQkFDRCxFQUFFLENBQUMsS0FBSyxFQUFDLEVBQUMsUUFBUSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztpQkFDdEMsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLEtBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUMxQixDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDVixJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNuQixLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLENBQUMsQ0FBQztpQkFDRCxLQUFLLEVBQUUsQ0FBQztTQUNa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QUUsRUFBRSxFQUFFO1FBQ3pCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFDLEVBQUUsRUFBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDbEIsQ0FBQztJQUNELDJCQUFRLEdBQVI7UUFDSSwyQkFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsNEJBQVMsR0FBVDtRQUNJLDJCQUFZLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQTdTRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNLO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MENBQ0c7SUFFckI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzswQ0FDRztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDO2dEQUNTO0lBVFosUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQWtUNUI7SUFBRCxlQUFDO0NBbFRELEFBa1RDLENBbFRxQyxFQUFFLENBQUMsU0FBUyxHQWtUakQ7a0JBbFRvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy/mraTpobXpnaLkuLrlvJXlr7zpobXpnaLvvIzlkI7nu63mm7TmlrDmiJDmqKHmnb/vvIzmmoLml7blgbfmh5LlpI3liLbkuLvmuLjmiI/lnLrmma/ku6PnoIHov5vmnaVcclxuaW1wb3J0IEdhbWVEYXRhIGZyb20gJy4vR2FtZURhdGEnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuL05vdGlmaWNhdGlvbic7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICAvLyBMSUZFLUNZQ0xFIENBTExCQUNLUzpcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgZGlhbG9nOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBsaW5lUHJlZmFiOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgY3VzdG9tOiBudW1iZXI7XHJcbiAgICBQb3NfQXJyYXk6IGFueTtcclxuICAgIGJhbGxfQXJyYXk6IGFueTtcclxuICAgIGJlZ2luOiBib29sZWFuO1xyXG4gICAgdGlwOiBjYy5Ob2RlO1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcblxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSA9IDA7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmN1c3RvbSA9IDE7XHJcbiAgICAgICAgdGhpcy5iYWxsLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLnRpcCA9IG51bGw7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+W8leWvvOaWueazlVxyXG4gICAgc3RhcnRHdWlkZSh0eXBlKXtcclxuICAgICAgICBsZXQgbnVtID0gdGhpcy5jdXN0b207XHJcbiAgICAgICAgbGV0IHRpbWUgPSAwLjU7XHJcbiAgICAgICAgbGV0IG5hbWUgPSBcInRpcFwiICsgbnVtO1xyXG4gICAgICAgIGlmKHR5cGUhPTApe1xyXG4gICAgICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUpXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHR5cGUgIT0gMCkgdGhpcy5jdXN0b20gPSAyO1xyXG4gICAgICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgICAgIGVsc2UgaWYoIHRoaXMuY3VzdG9tID09IDMpICB0aGlzLmNyZWF0ZVN1bihmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA0KSAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnRpcCA9IHRoaXMuZGlhbG9nLmdldENoaWxkQnlOYW1lKG5hbWUpO1xyXG4gICAgICAgICAgICB0aGlzLnRpcC5hY3RpdmUgPSB0cnVlOyB0aGlzLnRpcC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aXApXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF6Zmk5omA5pyJ5aSq6ZizXHJcbiAgICBiZWdpbkNsaWNrKCl7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlvIDlp4vmuLjmiI/vvIzmiJbogIXngrnlh7vot7Pov4flvJXlr7xcclxuICAgIGNsaWNrQnRuKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuIvkuIDmraXmjInpkq5cclxuICAgIG5leHQoKXtcclxuICAgICAgICBsZXQgdGltZSA9IDAuNTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLnRpcClcclxuICAgICAgICAudG8odGltZSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gMykgIHRoaXMuY3JlYXRlU3VuKGZhbHNlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gNCkgIHRoaXMuYmVnaW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcblxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs1xyXG4gICAgY3JlYXRlU3VuKHR5cGUpe1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKGNjLnYyKC0yNTAsLTIxNiksY2MudjIoMjAwLC0xMTUpLGNjLnYyKC0zNSwtNTAwKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsLngsdGhpcy5iYWxsLnksdGhpcy5Qb3NfQXJyYXlbMF0ueCx0aGlzLlBvc19BcnJheVswXS55KVxyXG4gICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUxLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVswXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDAsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDEpXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWUyID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLlBvc19BcnJheVswXS54LHRoaXMuUG9zX0FycmF5WzBdLnksdGhpcy5Qb3NfQXJyYXlbMV0ueCx0aGlzLlBvc19BcnJheVsxXS55KVxyXG4gICAgICAgICAgICBsZXQgdGltZTMgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSx0aGlzLlBvc19BcnJheVsyXS54LHRoaXMuUG9zX0FycmF5WzJdLnkpXHJcbiAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSksXHJcbiAgICAgICAgICAgIDAuNSk7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUyLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVsxXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDEsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuNSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzJdLngsdGhpcy5Qb3NfQXJyYXlbMl0ueSksXHJcbiAgICAgICAgICAgICAgICAwLjUpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAudG8odGltZTMse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5WzJdfSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUJhbGwoMiwwLDAsZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC4yKVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIC8v5Yib5bu65aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBiYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUxKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMuUG9zX0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIGJhbGwuZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Top5LluqbliJvlu7rov57nur/nlKhcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgIGNvbnN0IHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjg7XHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvJXlr7zmiJDlip9cclxuICAgIHBhc3NMZXZlbCgpe1xyXG4gICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICBjYy50d2Vlbih3aW4pXHJcbiAgICAgICAgLmRlbGF5KDAuNClcclxuICAgICAgICAudG8oMC4wMSx7c2NhbGU6Mi41fSlcclxuICAgICAgICAudG8oMC4zNSx7c2NhbGU6MX0pXHJcbiAgICAgICAgLmRlbGF5KDAuNilcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgd2luLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGk9MTsgaTwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGs9MTsgazwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaysrKXtcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWVBcnJheVtrLTFdLHt4OnRoaXMuYmFsbF9BcnJheVtrXS54LHk6dGhpcy5iYWxsX0FycmF5W2tdLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lQ291bnQgKz0gKHRpbWVBcnJheVtrLTFdKzAuMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sIDQwMCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsICs9IDE7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IDMpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+Wksei0peS6i+S7tlxyXG4gICAgbG9zZUxldmVsKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5BdWRpb01hbmFnZXIucGxheVdhcm5pbmcoKTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtrXSlcclxuICAgICAgICAgICAgLnRvKDAuNix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICB9XHJcbiAgICAgICAgLy/nu5PmnZ/pobXpnaLliqjnlLtcclxuICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAudG8oMC4yNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMix7b3BhY2l0eTowfSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjE1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlpKrpmLPkuovku7ZcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bml7bpl7TmiLNcclxuICAgIGdldFRpbWUoKXtcclxuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gdGltZXN0YW1wO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDov57nur/vvIzlj4LmlbDotbfngrnvvIznu4jngrnvvIzov57nur/ml7bpl7RcclxuICAgIGNyZWF0ZUxpbmUoc3RhcnQsZW5kLHRpbWUpe1xyXG4gICAgICAgIGxldCBsaW5lID0gY2MuaW5zdGFudGlhdGUodGhpcy5saW5lUHJlZmFiKTtcclxuICAgICAgICBsaW5lLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIik7XHJcbiAgICAgICAgbGluZS5zZXRQb3NpdGlvbihzdGFydC54LHN0YXJ0LnkpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5pGn5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOS4queCueS5i+mXtOeahOinkuW6piDnlKjkuo7lhpnov57nur8g56Gu5a6a6L+e57q/5pa55ZCRXHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/Storage.js'; + var __filename = 'preview-scripts/assets/Script/GameOver.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -2605,37 +1878,202 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, '7cf8cMT5zJA0ZU4Gp0JcL8v', 'Storage'); -// Script/Storage.ts +cc._RF.push(module, '805c6nf399HWZeuWnNB9CTH', 'GameOver'); +// Script/GameOver.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); - } - }, +// 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; }; -exports.StorageMessage = StorageMessage; +Object.defineProperty(exports, "__esModule", { value: true }); +var GameData_1 = require("./GameData"); +var serverAPI_1 = require("./crypto/serverAPI"); +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 = GameData_1.default._instance.GM_INFO.total; + if (GameData_1.default._instance.GM_INFO.mean_Time > 10) { + GameData_1.default._instance.GM_INFO.mean_Time = (parseInt(Math.random() * 10 + "") + 5) / 10; + } + this.time.string = GameData_1.default._instance.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; + this.getRank(); + }; + //打开排行榜 + NewClass.prototype.openRank = function () { + cc.director.loadScene("RankScene"); + }; + //重新开始玩 + NewClass.prototype.again = function () { + cc.director.loadScene("GameScene"); + }; + //获取排行榜 + NewClass.prototype.getRank = function () { + var postData = { + "page": 1, + "pageSize": 100 + }; + serverAPI_1.default.rankData(2, this.getRankData.bind(this), postData); + }; + //设置排行信息 + NewClass.prototype.getRankData = function (data) { + if (data) { + this.listData = data.data.list; + this.selfData = data.data.info; + var rankData = []; + var self = false; + if (this.selfData.nickName.length > 4) { + this.selfData.nickName = this.selfData.nickName.substring(0, 4) + "..."; + } + this.selfNode.getChildByName("name").getComponent(cc.Label).string = this.selfData.nickName; + this.selfNode.getChildByName("total").getComponent(cc.Label).string = this.selfData.totalSunCount; + this.setPic(this.selfNode.getChildByName("pic").getChildByName("icon"), this.selfData.pic); + for (var i = 0; i <= this.listData.length - 1; i++) { + rankData.push({ rank: (i + 1), name: this.listData[i].nickName, total: this.listData[i].totalSunCount, pic: this.listData[i].pic }); + if (GameData_1.default._instance.GM_INFO.userId == this.listData[i].userId) { + self = true; + this.selfNode.getChildByName("rank").getComponent(cc.Label).string = (i + 1) + ""; + } + if (i == (this.listData.length - 1) && self == false) { + this.selfNode.getChildByName("rank").getComponent(cc.Label).string = "99+"; + } + if (i < 5) + 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; + if (data.nickName.length > 4) { + data.nickName = data.nickName.substring(0, 4) + "..."; + } + hitNode.getChildByName("name").getComponent(cc.Label).string = data.nickName; + hitNode.getChildByName("total").getComponent(cc.Label).string = data.totalSunCount; + this.setPic(hitNode.getChildByName("pic").getChildByName("icon"), data.pic); + } + }; + //设置头像 + NewClass.prototype.setPic = function (node, pic) { + node.active = false; + var url = pic; + setTimeout(function () { + fetch(url) + .then(function (response) { + return response.headers.get('Content-Length'); + }) + .then(function (errNo) { + if (errNo == "5093") { + node.active = true; + } + }) + .catch(function (error) { + console.error('Error fetching X-Info:', error); + }); + }, 100); + cc.assetManager.loadRemote(url, { ext: '.jpg' }, function (err, texture) { + if (texture) { + node.active = true; + node.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(texture); + } + else { + console.log(err, texture); + } + }); + }; + __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(); } @@ -2648,7 +2086,7 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxTdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVM7QUFDVCxJQUFJLGNBQWMsR0FBRztJQUNqQixVQUFVLEVBQUcsVUFBUyxHQUFHO1FBQ3JCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBQztZQUNsQyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDL0M7UUFFRCxJQUFHLE1BQU0sRUFBQztZQUNSLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUNELFVBQVUsRUFBRyxVQUFTLEdBQUcsRUFBQyxLQUFLO1FBQzNCLFVBQVU7UUFDVixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUNELGFBQWEsRUFBRyxVQUFTLEdBQUc7UUFDMUIsVUFBVTtRQUNWLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNwQztJQUNILENBQUM7Q0FDSixDQUFDO0FBRU8sd0NBQWMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+e8k+WtmOa1j+iniOWZqOaVsOaNrlxudmFyIFN0b3JhZ2VNZXNzYWdlID0ge1xuICAgIGdldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgICB2YXIgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICAgIHZhciByZXN1bHQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYocmVzdWx0KXtcbiAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LFxuICAgIHNldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXksdmFsdWUpe1xuICAgICAgICAvL+S4u+WKqOaLiei1t+WIhuS6q+aOpeWPo1xuICAgICAgICB2YXIgdGVtcCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGVtcClcbiAgICB9LFxuICAgIHJlbW92ZVN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgLy/kuLvliqjliKDpmaTmtojmga/mjqXlj6NcbiAgICAgIGlmKGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpKXtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgICAgIH1cbiAgICB9LFxufTtcblxuZXhwb3J0IHsgU3RvcmFnZU1lc3NhZ2UgfTsiXX0= +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lT3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLHdFQUF3RTtBQUN4RSxtQkFBbUI7QUFDbkIsa0ZBQWtGO0FBQ2xGLDhCQUE4QjtBQUM5QixrRkFBa0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRix1Q0FBa0M7QUFFbEMsZ0RBQTBDO0FBR3BDLElBQUEsS0FBc0IsRUFBRSxDQUFDLFVBQVUsRUFBbEMsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFpQixDQUFDO0FBRzFDO0lBQXNDLDRCQUFZO0lBQWxEO1FBQUEscUVBMklDO1FBeklHLFdBQUssR0FBYSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFhLElBQUksQ0FBQztRQUV0QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFFcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUVwQixXQUFLLEdBQVksSUFBSSxDQUFDO1FBRXRCLFVBQUksR0FBWSxJQUFJLENBQUM7UUFFckIsVUFBSSxHQUFZLElBQUksQ0FBQzs7SUEySHpCLENBQUM7SUF4SEcsZUFBZTtJQUNmLHdCQUFLLEdBQUw7UUFDSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUcsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxFQUFFLEVBQUM7WUFDekMsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUMsRUFBRSxHQUFDLEVBQUUsQ0FBQyxHQUFDLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQTtTQUM5RTtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLGtCQUFRLENBQUMsU0FB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LEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ087SUFFekI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDRTtJQUVwQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNFO0lBRXBCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MkNBQ0k7SUFFdEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzswQ0FDRztJQUVyQjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBaEJKLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0EySTVCO0lBQUQsZUFBQztDQTNJRCxBQTJJQyxDQTNJcUMsRUFBRSxDQUFDLFNBQVMsR0EySWpEO2tCQTNJb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIExlYXJuIFR5cGVTY3JpcHQ6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL3R5cGVzY3JpcHQuaHRtbFxyXG4vLyBMZWFybiBBdHRyaWJ1dGU6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL3JlZmVyZW5jZS9hdHRyaWJ1dGVzLmh0bWxcclxuLy8gTGVhcm4gbGlmZS1jeWNsZSBjYWxsYmFja3M6XHJcbi8vICAtIGh0dHBzOi8vZG9jcy5jb2Nvcy5jb20vY3JlYXRvci9tYW51YWwvZW4vc2NyaXB0aW5nL2xpZmUtY3ljbGUtY2FsbGJhY2tzLmh0bWxcclxuXHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmltcG9ydCBScSBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcblxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5MYWJlbClcclxuICAgIGNvdW50OiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICB0aW1lOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIHNlbGZOb2RlOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgb25lOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgdHdvOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgdGhyZWU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXHJcbiAgICBmb3VyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgZml2ZTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBsaXN0RGF0YTogYW55O1xyXG4gICAgc2VsZkRhdGE6IGFueTtcclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuY291bnQuc3RyaW5nID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWw7XHJcbiAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID4gMTApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSoxMCtcIlwiKSs1KS8xMFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRpbWUuc3RyaW5nID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICsgXCJzXCI7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubGlzdERhdGEgPSBbXTtcclxuICAgICAgICB0aGlzLnNlbGZEYXRhID0gbnVsbDtcclxuICAgICAgICB0aGlzLm9uZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnR3by5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnRocmVlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZm91ci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZpdmUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5nZXRSYW5rKCk7XHJcbiAgICB9XHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOW8gOWni+eOqVxyXG4gICAgYWdhaW4oKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaOkuihjOamnFxyXG4gICAgZ2V0UmFuaygpe1xyXG4gICAgICAgIGxldCBwb3N0RGF0YSA9IHtcclxuICAgICAgICAgICAgXCJwYWdlXCI6MSxcclxuICAgICAgICAgICAgXCJwYWdlU2l6ZVwiOjEwMFxyXG4gICAgICAgIH07IFxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v6K6+572u5o6S6KGM5L+h5oGvXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgdGhpcy5saXN0RGF0YSA9IGRhdGEuZGF0YS5saXN0O1xyXG4gICAgICAgICAgICB0aGlzLnNlbGZEYXRhID0gZGF0YS5kYXRhLmluZm87XHJcbiAgICAgICAgICAgIGxldCByYW5rRGF0YSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgc2VsZiA9IGZhbHNlO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLmxlbmd0aCA+IDQpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmRGF0YS5uaWNrTmFtZT0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZS5zdWJzdHJpbmcoMCw0KSArIFwiLi4uXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZVwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgdGhpcy5zZXRQaWModGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIiksdGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDtpPD10aGlzLmxpc3REYXRhLmxlbmd0aC0xO2krKyl7XHJcbiAgICAgICAgICAgICAgICByYW5rRGF0YS5wdXNoKHtyYW5rOihpKzEpLCBuYW1lOnRoaXMubGlzdERhdGFbaV0ubmlja05hbWUsIHRvdGFsOnRoaXMubGlzdERhdGFbaV0udG90YWxTdW5Db3VudCwgcGljOnRoaXMubGlzdERhdGFbaV0ucGljfSk7XHJcbiAgICAgICAgICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPT0gdGhpcy5saXN0RGF0YVtpXS51c2VySWQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0oaSsxKSArIFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoaSA9PSAodGhpcy5saXN0RGF0YS5sZW5ndGgtMSkgJiYgc2VsZiA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBcIjk5K1wiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGk8NSkgdGhpcy5zZXRSYW5rKGksdGhpcy5saXN0RGF0YVtpXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+agueaNruWGheWuueWhq+WFheaOkuihjOamnFxyXG4gICAgc2V0UmFuayhudW0sZGF0YSl7XHJcbiAgICAgICAgdmFyIGhpdE5vZGUgPSBudWxsO1xyXG4gICAgICAgIGlmKG51bSA9PSAwKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudHdvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMudGhyZWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtID09IDMpe1xyXG4gICAgICAgICAgICBoaXROb2RlID0gdGhpcy5mb3VyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSA0KXtcclxuICAgICAgICAgICAgaGl0Tm9kZSA9IHRoaXMuZml2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoaGl0Tm9kZSl7XHJcbiAgICAgICAgICAgIGhpdE5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgaWYoZGF0YS5uaWNrTmFtZS5sZW5ndGggPiA0KXtcclxuICAgICAgICAgICAgICAgIGRhdGEubmlja05hbWU9IGRhdGEubmlja05hbWUuc3Vic3RyaW5nKDAsNCkgKyBcIi4uLlwiXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaGl0Tm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBkYXRhLm5pY2tOYW1lO1xyXG4gICAgICAgICAgICBoaXROb2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBkYXRhLnRvdGFsU3VuQ291bnQ7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGljKGhpdE5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLGRhdGEucGljKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAvL+iuvue9ruWktOWDj1xyXG4gICAgcHVibGljIHNldFBpYyhub2RlLHBpYyl7XHJcbiAgICAgICAgbm9kZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBsZXQgdXJsID0gcGljO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBmZXRjaCh1cmwpXHJcbiAgICAgICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1MZW5ndGgnKTtcclxuICAgICAgICAgICAgfSlcclxuICAgIFxyXG4gICAgICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZihlcnJObyA9PSBcIjUwOTNcIil7XHJcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgWC1JbmZvOicsIGVycm9yKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgICBjYy5hc3NldE1hbmFnZXIubG9hZFJlbW90ZSh1cmwsIHtleHQ6Jy5qcGcnfSwoZXJyLCB0ZXh0dXJlOmNjLlRleHR1cmUyRCkgPT4ge1xyXG4gICAgICAgICAgICBpZih0ZXh0dXJlKXtcclxuICAgICAgICAgICAgICAgIG5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIG5vZGUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycix0ZXh0dXJlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbn1cclxuIl19 //------QC-SOURCE-SPLIT------ (function() { @@ -2919,134 +2357,6 @@ cc._RF.pop(); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxHYW1lVG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBbUM7QUFFbkMsT0FBTztBQUNQLElBQUksUUFBUSxHQUFHO0lBQ1gsVUFBVSxFQUFFLENBQUM7SUFDYixRQUFRLEVBQUUsQ0FBQztJQUNYLFVBQVUsRUFBRSxDQUFDO0lBQ2IsYUFBYSxFQUFFLFVBQVUsR0FBRyxFQUFFLEdBQUc7UUFDN0IsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDZixHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNmLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDcEcsSUFBSSxHQUFHLEdBQUcsa0JBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekQsSUFBSSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELDBCQUEwQixFQUFFO1FBQ3hCLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7UUFDdEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN2QixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNE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LENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsR0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBQyxLQUFLLENBQUMsRUFBQztZQUM3QyxJQUFHLE1BQU0sR0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsR0FBRyxHQUFHO2dCQUM3QixNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEdBQUMsRUFBRSxHQUFDLEdBQUcsQ0FBQzs7Z0JBRXhELE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsQ0FBQyxHQUFDLEdBQUcsQ0FBQztTQUN6RDthQUNJLElBQUcsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQyxHQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFDLEtBQUssQ0FBQyxFQUFDO1lBQ2xELElBQUcsTUFBTSxHQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUc7Z0JBQzdCLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsR0FBQyxFQUFFLEdBQUMsR0FBRyxDQUFDOztnQkFFeEQsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsR0FBRyxDQUFDO1NBQ3pEO2FBQ0ksSUFBRyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLEdBQUcs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LENBQUMsVUFBVSxFQUFFLENBQUM7UUFDakMsU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QixJQUFJLFFBQVEsR0FBRyxFQUFFLEVBQUU7WUFDZixRQUFRLEdBQUcsR0FBRyxHQUFHLFFBQVEsQ0FBQztTQUM3QjtRQUNELElBQUksWUFBWSxHQUFHLEVBQUUsRUFBRTtZQUNuQixZQUFZLEdBQUcsR0FBRyxHQUFHLFlBQVksQ0FBQztTQUNyQztRQUNELFlBQVksR0FBRyxZQUFZLEdBQUcsR0FBRyxDQUFDO1FBRWxDLElBQUksU0FBUyxHQUFHLEVBQUUsRUFBRTtZQUNoQixTQUFTLEdBQUcsR0FBRyxHQUFHLFNBQVMsQ0FBQztTQUMvQjtRQUNELFNBQVMsR0FBRyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQzVCLE9BQU8sU0FBUyxHQUFHLFlBQVksR0FBRyxRQUFRLENBQUM7SUFFL0MsQ0FBQztJQUNELFVBQVUsRUFBQztJQUVYLENBQUM7SUFDRCxlQUFlLEVBQUM7SUFFaEIsQ0FBQztDQUVKLENBQUM7QUFDTyw0QkFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi4vR2FtZURhdGFcIjtcclxuaW1wb3J0IHsgU3RvcmFnZU1lc3NhZ2UgfSBmcm9tIFwiLi9TdG9yYWdlXCI7XHJcbi8v5pyA5aSn5bel5YW357G7XHJcbnZhciBHYW1lVG9vbCA9IHtcclxuICAgIF9zdGFydFRpbWU6IDAsXHJcbiAgICBfZW5kVGltZTogMCxcclxuICAgIF90b3RhbFRpbWU6IDAsXHJcbiAgICBnZXRTZWVkUmFuZG9tOiBmdW5jdGlvbiAobWluLCBtYXgpIHsvL+WMheWQq21pbiDkuI3ljIXlkKttYXhcclxuICAgICAgICBtYXggPSBtYXggfHwgMTtcclxuICAgICAgICBtaW4gPSBtaW4gfHwgMDtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXJyU2VlZCA9IChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXJyU2VlZCAqIDkzMDEgKyA0OTI5NykgJSAyMzMyODA7XHJcbiAgICAgICAgbGV0IHJuZCA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1cnJTZWVkIC8gMjMzMjgwLjA7XHJcbiAgICAgICAgbGV0IHRtcCA9IG1pbiArIHJuZCAqIChtYXggLSBtaW4pO1xyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKHRtcCk7XHJcbiAgICB9LFxyXG4gICAgXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZzogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGxldCBzaXplID0gY2Mud2luU2l6ZTtcclxuICAgICAgICBsZXQgd2lkdGggPSBzaXplLndpZHRoO1xyXG4gICAgICAgIGxldCBoZWlnaHQgPSBzaXplLmhlaWdodDtcclxuICAgICAgICBpZiAoKGhlaWdodCAvIHdpZHRoKSA+ICgxNi4yIC8gOSkpIHJldHVybiBmYWxzZTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0sXHJcbiAgICAvL+WIpOaWreWFqOmdouWxj+mAgumFjVxyXG4gICAgc2V0Rml0OiBmdW5jdGlvbiAoY2FudmFzKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSBHYW1lVG9vbC5nZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZygpO1xyXG4gICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgXHQvLyBjb25zb2xlLmxvZyhcIuS4jeaYr+WFqOmdouWxj1wiKTtcclxuICAgICAgICAgICAgLy8gY2FudmFzLmZpdFdpZHRoID0gZmFsc2U7XHJcbiAgICAgICAgICAgIC8vIGNhbnZhcy5maXRIZWlnaHQgPSB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgXHQvLyBjb25zb2xlLmxvZyhcIuaYr+WFqOmdouWxj1wiKTtcclxuICAgICAgICAgICAgLy8gY2FudmFzLmZpdFdpZHRoID0gdHJ1ZTtcclxuICAgICAgICAgICAgLy8gY2FudmFzLmZpdEhlaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH0sXHJcblxyXG4gICAgZ2V0VGlwOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgbGV0IGluZGV4ID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogNCkgKyAxO1xyXG4gICAgICAgIHN3aXRjaCAoaW5kZXgpIHtcclxuICAgICAgICAgICAgY2FzZSAxOiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gXCLmoLnmja7lsI/nkIPnmoTkvY3nva7vvIzlkIjnkIbmmYPliqjmiYvmnLrvvIznoa7kv53lsI/nkIPkuI3mjonlh7rmnKjmnb/jgIJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNhc2UgMjoge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFwi5qC55o2u5bCP55CD5L2N572u5o6n5Yi25pmD5Yqo5bmF5bqm77yM6L+H5aSn5oiW6L+H5bCP6YO95LiN5piv5Liq5aW96YCJ5oup44CCXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjYXNlIDM6IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBcIuS4jeimgeiiq+WkqeS4iuaOieiQveeahOmanOeijeWQk+WIsO+8jOacieaXtuWAmeWug+WPjeiAjOS8muW4ruS9oOS/neaMgeW5s+ihoeOAglwiXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY2FzZSA0OiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gXCLlsJ3or5XnnYDpobblvIDmjonokL3nmoTpmpznoo3vvIzmmK/kuKrlvojphbfnmoTnjqnms5XjgIJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICBiZWdpblRpbWluZzogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHRoaXMuX3N0YXJ0VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgfSxcclxuXHJcbiAgICBlbmRUaW1pbmc6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLl9lbmRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgLy8gdGhpcy5fdG90YWxUaW1lID0gZW5kVGltZSAtIHRoaXMuX3N0YXJ0VGltZTtcclxuICAgIH0sXHJcbiAgICAvL+WmguaenOaYr+WIpOaWreaXtuW4uOeahOa4uOaIjyDosIPnlKjmraTmlrnms5VcclxuICAgIHVwZGF0ZVNjb3JlVGltZTogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGxldCBlbmRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgbGV0IHRlbXBUaW1lID0gZW5kVGltZSAtIHRoaXMuX3N0YXJ0VGltZTtcclxuICAgICAgICBpZiAodGVtcFRpbWUgPCAwIHx8IHRlbXBUaW1lID4gNTAwKSB7XHJcbiAgICAgICAgICAgIHRlbXBUaW1lID0gTWF0aC5yb3VuZChjYy5kaXJlY3Rvci5nZXRBbmltYXRpb25JbnRlcnZhbCgpICogMTAwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2VuZFRpbWUgKz0gdGVtcFRpbWUgLyAxMDAwO1xyXG4gICAgICAgIHRoaXMuX3RvdGFsVGltZSA9IHRoaXMuX2VuZFRpbWUudG9GaXhlZCgyKTtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXJyU2NvcmUgPSB0aGlzLl90b3RhbFRpbWU7XHJcbiAgICAgICAgdGhpcy5fc3RhcnRUaW1lID0gZW5kVGltZTtcclxuICAgIH0sXHJcbiAgICAvL+WAkuiuoeaXtuiwg+eUqOatpOaWueazlVxyXG4gICAgY291bnREb3duOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgdGhpcy5fZW5kVGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMuX3RvdGFsVGltZSA9IE1hdGguZmxvb3IoKHRoaXMuX2VuZFRpbWUgLSB0aGlzLl9zdGFydFRpbWUpIC8gMTAwMCk7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ucmVtYWluaW5nVGltZSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsVGltZSAtIHRoaXMuX3RvdGFsVGltZTtcclxuICAgIH0sXHJcblxyXG4gICAgZ2V0R2FtZUluZm86IGZ1bmN0aW9uKG5vZGUpe1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH0sXHJcbiAgICAvL+agueaNruacjeWKoeWZqOaVsOaNrumHjee9ruaJgOmcgOimgeaJgOacieaVsOaNrlxyXG4gICAgcmVzZXQ6IGZ1bmN0aW9uKCl7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCLmnKzlnLDmlbDmja7kuKLlpLEs6YeN5paw5ZCv5Yqo5ri45oiPXCIpO1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZSgnTG9hZFNjZW5lJyk7XHJcbiAgICB9LFxyXG5cclxuICAgIHNldEdhbWVJbmZvOiBmdW5jdGlvbihwZCl7XHJcbiAgIFxyXG4gICAgfSxcclxuICAgIC8v6L6T5YWl56eSLOi/lOWbnumcgOimgeWxleekuuaXtumXtOagvOW8j1xyXG4gICAgZ2V0VGltZU1hcmdpbjooc2Vjb25kKSA9PiB7XHJcbiAgICAgICAgbGV0IHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gTWF0aC5mbG9vcih0b3RhbCAvICg2MCAqIDYwKSk7Ly/orqHnrpfmlbTmlbDlsI/ml7bmlbBcclxuICAgICAgICBsZXQgYWZ0ZXJIb3VyID0gdG90YWwgLSBob3VyICogNjAgKiA2MDsvL+WPluW+l+eul+WHuuWwj+aXtuaVsOWQjuWJqeS9meeahOenkuaVsFxyXG4gICAgICAgIGxldCBtaW4gPSBNYXRoLmZsb29yKGFmdGVySG91ciAvIDYwKTsvL+iuoeeul+aVtOaVsOWIhlxyXG4gICAgICAgIGxldCBhZnRlck1pbiA9IHRvdGFsIC0gaG91ciAqIDYwICogNjAgLSBtaW4gKiA2MDsvL+WPluW+l+eul+WHuuWIhuWQjuWJqeS9meeahOenkuaVsFxyXG4gICAgICAgIHJldHVybiAn5Ymp5L2ZOicgKyBob3VyICsgJzonICsgbWluICsgJzonICsgYWZ0ZXJNaW5cclxuICAgIH0sXHJcblxyXG4gICAgZ2V0VGltZU1hcmdpbjI6KHNlY29uZCkgPT4ge1xyXG4gICAgICAgIGxldCB0b3RhbCA9IHNlY29uZDtcclxuICAgICAgICBsZXQgbWluID0gbnVsbDtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSBudWxsO1xyXG4gICAgICAgIGxldCBob3VyID0gTWF0aC5mbG9vcih0b3RhbCAvICg2MCAqIDYwKSk7Ly/orqHnrpfmlbTmlbDlsI/ml7bmlbBcclxuICAgICAgICBsZXQgYWZ0ZXJIb3VyID0gdG90YWwgLSBob3VyICogNjAgKiA2MDsvL+WPluW+l+eul+WHuuWwj+aXtuaVsOWQjuWJqeS9meeahOenkuaVsFxyXG4gICAgICAgIG1pbiA9IE1hdGguZmxvb3IoYWZ0ZXJIb3VyIC8gNjApOy8v6K6h566X5pW05pWw5YiGXHJcbiAgICAgICAgaWYobWluIDwgMTApIG1pbiA9IFwiMFwiK21pbjtcclxuICAgICAgICBhZnRlck1pbiA9IHRvdGFsIC0gaG91ciAqIDYwICogNjAgLSBtaW4gKiA2MDsvL+WPluW+l+eul+WHuuWIhuWQjuWJqeS9meeahOenkuaVsFxyXG4gICAgICAgIGlmKGFmdGVyTWluIDwgMTApIGFmdGVyTWluID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gJ+WJqeS9mTonICArIG1pbiArICc6JyArIGFmdGVyTWluXHJcbiAgICB9LFxyXG5cclxuICAgIHNldEZyaW5kQmxvY2s6IGZ1bmN0aW9uKHVzZXJpZCl7XHJcblxyXG4gICAgfSxcclxuICAgIC8v5bCG5pe26Ze06L2s5o2i5Li6NTk6MjNcclxuICAgIGdldFRpbWU6IGZ1bmN0aW9uKHRpbWUpe1xyXG4gICAgICAgIHZhciBsYWJlbCA9IFwiXCI7XHJcbiAgICAgICAgdmFyIG51bWJlcl8xID0gbnVsbDtcclxuICAgICAgICB2YXIgbnVtYmVyXzIgPSBudWxsO1xyXG4gICAgICAgIG51bWJlcl8xID0gTWF0aC5mbG9vcih0aW1lLzYwKVxyXG4gICAgICAgIG51bWJlcl8yID0gdGltZS1udW1iZXJfMSo2MDtcclxuICAgICAgICBpZihudW1iZXJfMSA8IDEwKXtcclxuICAgICAgICAgICAgbnVtYmVyXzEgPSBcIjBcIitudW1iZXJfMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYobnVtYmVyXzIgPCAxMCl7XHJcbiAgICAgICAgICAgIG51bWJlcl8yID0gXCIwXCIrbnVtYmVyXzI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhYmVsID0gbnVtYmVyXzEgKyBcIjpcIiArIG51bWJlcl8yO1xyXG4gICAgICAgIHJldHVybiBsYWJlbDtcclxuICAgIH0sXHJcbiAgICAvL251bWJlciDkuLrkvKDov5vmnaXnmoTmlbDlgLwsdHlwZeS4uuacgOWkmuaYvuekuuWHoOS9jeaVsFxyXG4gICAgZ2V0TnVtYmVyOiBmdW5jdGlvbihudW1iZXIsdHlwZSl7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2codHlwZSxcIumcgOimgei9rOaNoueahOaVsOWtl+S4ujpcIixudW1iZXIpO1xyXG4gICAgICAgIHZhciBjb3VudCA9IDEwMDA7XHJcbiAgICAgICAgdmFyIHBsYWNlID0gdHlwZSAtIDM7XHJcbiAgICAgICAgaWYobnVtYmVyID4gTWF0aC5wb3coY291bnQsOCkqTWF0aC5wb3coMTAscGxhY2UpKXtcclxuICAgICAgICAgICAgaWYobnVtYmVyL01hdGgucG93KGNvdW50LDgpIDwgMTAwKVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsOCkqMTApLzEwK1wiU1wiO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCw4KSkrXCJTXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtYmVyID4gTWF0aC5wb3coY291bnQsNykqTWF0aC5wb3coMTAscGxhY2UpKXtcclxuICAgICAgICAgICAgaWYobnVtYmVyL01hdGgucG93KGNvdW50LDcpIDwgMTAwKVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsNykqMTApLzEwK1wic1wiO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCw3KSkrXCJzXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtYmVyID4gTWF0aC5wb3coY291bnQsNikqTWF0aC5wb3coMTAscGxhY2UpKXtcclxuICAgICAgICAgICAgaWYobnVtYmVyL01hdGgucG93KGNvdW50LDYpIDwgMTAwKVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsNikqMTApLzEwK1wiUVwiO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCw2KSkrXCJRXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYobnVtYmVyID4gTWF0aC5wb3coY291bnQsNSkqTWF0aC5wb3coMTAscGxhY2UpKXtcclxuICAgICAgICAgICAgaWYobnVtYmVyL01hdGgucG93KGNvdW50LDUpIDwgMTAwKVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsNSkqMTApLzEwK1wicVwiO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCw1KSkrXCJxXCI7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bWJlciA+IE1hdGgucG93KGNvdW50LDQpKk1hdGgucG93KDEwLHBsYWNlKSl7XHJcbiAgICAgICAgICAgIGlmKG51bWJlci9NYXRoLnBvdyhjb3VudCw0KSA8IDEwMClcclxuICAgICAgICAgICAgICAgIG51bWJlciA9IE1hdGguZmxvb3IobnVtYmVyL01hdGgucG93KGNvdW50LDQpKjEwKS8xMCtcInRcIjtcclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsNCkpK1widFwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bWJlciA+IE1hdGgucG93KGNvdW50LDMpKk1hdGgucG93KDEwLHBsYWNlKSl7XHJcbiAgICAgICAgICAgIGlmKG51bWJlci9NYXRoLnBvdyhjb3VudCwzKSA8IDEwMClcclxuICAgICAgICAgICAgICAgIG51bWJlciA9IE1hdGguZmxvb3IobnVtYmVyL01hdGgucG93KGNvdW50LDMpKjEwKS8xMCtcImJcIjtcclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsMykpK1wiYlwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bWJlciA+IE1hdGgucG93KGNvdW50LDIpKk1hdGgucG93KDEwLHBsYWNlKSl7XHJcbiAgICAgICAgICAgIGlmKG51bWJlci9NYXRoLnBvdyhjb3VudCwyKSA8IDEwMClcclxuICAgICAgICAgICAgICAgIG51bWJlciA9IE1hdGguZmxvb3IobnVtYmVyL01hdGgucG93KGNvdW50LDIpKjEwKS8xMCtcIm1cIjtcclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsMikpK1wibVwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bWJlciA+IE1hdGgucG93KGNvdW50LDEpKk1hdGgucG93KDEwLHBsYWNlKSl7XHJcbiAgICAgICAgICAgIGlmKG51bWJlci9NYXRoLnBvdyhjb3VudCwxKSA8IDEwMCl7XHJcbiAgICAgICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCwxKSoxMCkvMTArXCJrXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgbnVtYmVyID0gTWF0aC5mbG9vcihudW1iZXIvTWF0aC5wb3coY291bnQsMSkpK1wia1wiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBudW1iZXIgPSBNYXRoLmZsb29yKG51bWJlci9NYXRoLnBvdyhjb3VudCwwKSkrXCJcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCLnu5PmnpzkuLpcIit0eXBlK1wi5L2N5pWwXCIsbnVtYmVyKTtcclxuICAgICAgICByZXR1cm4gbnVtYmVyO1xyXG4gICAgfSxcclxuXHJcbiAgICBiZWdhaW5UaW1pbmc6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLl9zdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgIH0sXHJcblxyXG4gICAgZW5kVGltaW5nMjogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGxldCBlbmRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5fZW5kVGltZSA9IGVuZFRpbWU7XHJcbiAgICAgICAgdGhpcy5fdG90YWxUaW1lID0gZW5kVGltZSAtIHRoaXMuX3N0YXJ0VGltZTtcclxuICAgIH0sXHJcbiAgICBnZXRTY29yZVRpbWU6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBsZXQgZW5kVGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIGxldCB0ZW1wVGltZSA9IGVuZFRpbWUgLSB0aGlzLl9zdGFydFRpbWU7XHJcbiAgICAgICAgaWYgKHRlbXBUaW1lIDwgMCB8fCB0ZW1wVGltZSA+IDUwMCkge1xyXG4gICAgICAgICAgICB0ZW1wVGltZSA9IE1hdGgucm91bmQoY2MuZGlyZWN0b3IuZ2V0QW5pbWF0aW9uSW50ZXJ2YWwoKSAqIDEwMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXJyU2NvcmUgKz0gdGVtcFRpbWU7XHJcbiAgICAgICAgdGhpcy5fc3RhcnRUaW1lID0gZW5kVGltZTtcclxuICAgIH0sXHJcblxyXG4gICAgZ2V0Rm9ybWF0VGltZTogZnVuY3Rpb24gKHRpbWUpIHtcclxuICAgICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgZGF0ZS5zZXRUaW1lKHRpbWUpO1xyXG4gICAgICAgIGxldCBtcyA9IGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCk7XHJcbiAgICAgICAgLy8gbGV0IG1zU3RyaW5nID0gZGF0ZS5nZXRNaWxsaXNlY29uZHMoKTtcclxuICAgICAgICBsZXQgbXNTdHJpbmcgPSBudWxsO1xyXG4gICAgICAgIGxldCBzZWNvbmRTdHJpbmcgPSBudWxsO1xyXG4gICAgICAgIGxldCBtaW5TdHJpbmcgPSBudWxsO1xyXG4gICAgICAgIG1zU3RyaW5nID0gTWF0aC5mbG9vcihtcyAvIDEwKSAlIDEwMDtcclxuICAgICAgICBzZWNvbmRTdHJpbmcgPSBkYXRlLmdldFNlY29uZHMoKTtcclxuICAgICAgICBtaW5TdHJpbmcgPSBkYXRlLmdldE1pbnV0ZXMoKTtcclxuICAgICAgICBpZiAobXNTdHJpbmcgPCAxMCkge1xyXG4gICAgICAgICAgICBtc1N0cmluZyA9IFwiMFwiICsgbXNTdHJpbmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzZWNvbmRTdHJpbmcgPCAxMCkge1xyXG4gICAgICAgICAgICBzZWNvbmRTdHJpbmcgPSBcIjBcIiArIHNlY29uZFN0cmluZztcclxuICAgICAgICB9XHJcbiAgICAgICAgc2Vjb25kU3RyaW5nID0gc2Vjb25kU3RyaW5nICsgXCI6XCI7XHJcblxyXG4gICAgICAgIGlmIChtaW5TdHJpbmcgPCAxMCkge1xyXG4gICAgICAgICAgICBtaW5TdHJpbmcgPSBcIjBcIiArIG1pblN0cmluZztcclxuICAgICAgICB9XHJcbiAgICAgICAgbWluU3RyaW5nID0gbWluU3RyaW5nICsgXCI6XCI7XHJcbiAgICAgICAgcmV0dXJuIG1pblN0cmluZyArIHNlY29uZFN0cmluZyArIG1zU3RyaW5nO1xyXG5cclxuICAgIH0sXHJcbiAgICBwdXNoTGlzdGVyOmZ1bmN0aW9uICgpIHtcclxuICAgICAgICBcclxuICAgIH0sXHJcbiAgICByZW1vdmVBbGxMaXN0ZXI6ZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIFxyXG4gICAgfSxcclxuXHJcbn07XHJcbmV4cG9ydCB7IEdhbWVUb29sIH07Il19 -//------QC-SOURCE-SPLIT------ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/ListView/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/ListView/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 () { - if (this.data.name.length > 6) { - this.data.name = this.data.name.substring(0, 6) + "..."; - } - this.node.getChildByName("rankLab").getComponent(cc.Label).string = this.data.rank + ""; - this.node.getChildByName("nameLab").getComponent(cc.Label).string = this.data.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: '.jpg' }, 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMaXN0Vmlld1xcSXRlbVJlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFTSxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUc1QztJQUF3Qyw4QkFBWTtJQUFwRDtRQUFBLHFFQXFFQztRQXBFRyxRQUFRO1FBQ0QsVUFBSSxHQUFPLElBQUksQ0FBQztRQUN2QixjQUFjO1FBQ1AsZUFBUyxHQUFVLENBQUMsQ0FBQzs7SUFpRWhDLENBQUM7SUEvREcsYUFBYTtJQUNOLGdDQUFXLEdBQWxCO1FBQ0ksSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFBO1NBQ3pEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4RixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFB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QUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBQyxHQUFHLEVBQUMsTUFBTSxFQUFDLEVBQUMsVUFBQyxHQUFHLEVBQUUsT0FBb0I7WUFDbkUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFsRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FxRTlCO0lBQUQsaUJBQUM7Q0FyRUQsQUFxRUMsQ0FyRXVDLEVBQUUsQ0FBQyxTQUFTLEdBcUVuRDtrQkFyRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdCwgeyBMaXN0VHlwZSB9IGZyb20gXCIuL0xpc3RcIjtcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJdGVtUmVuZGVyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIC8qKuaVsOaNriAqL1xyXG4gICAgcHVibGljIGRhdGE6YW55ID0gbnVsbDtcclxuICAgIC8qKue0ouW8lSAw6KGo56S656ys5LiA6aG5Ki9cclxuICAgIHB1YmxpYyBpdGVtSW5kZXg6bnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirmlbDmja7mlLnlj5jml7bosIPnlKggKi9cclxuICAgIHB1YmxpYyBkYXRhQ2hhbmdlZCgpe1xyXG4gICAgICAgIGlmKHRoaXMuZGF0YS5uYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEubmFtZSA9IHRoaXMuZGF0YS5uYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5kYXRhLnJhbmsgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEubmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLCB7ZXh0OicuanBnJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNwcml0ZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKTtcclxuICAgICAgICAgICAgICAgIHNwcml0ZS5zcHJpdGVGcmFtZSA9IG5ldyBjYy5TcHJpdGVGcmFtZSh0ZXh0dXJlKTtcclxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZGF0YS5yYW5rLFwi6K6+572u5aS05YOP5oiQ5YqfXCIsZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLorr7nva7lpLTlg4/lpLHotKVcIix1cmwpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyLHRleHR1cmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuIl19 //------QC-SOURCE-SPLIT------ (function() { @@ -3358,7 +2668,7 @@ cc._RF.pop(); (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/tool/Shake.js'; + var __filename = 'preview-scripts/assets/Script/RankManager.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -3366,57 +2676,209 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, '61affD5SO9Ipo0fGmIeTFTZ', 'Shake'); -// Script/tool/Shake.js +cc._RF.push(module, 'e74a999IDFOabyymZgXQIiy', 'RankManager'); +// Script/RankManager.ts "use strict"; - -/** - * 自定义抖动效果 - */ -var Shake = cc.Class({ - "extends": cc.Component, - properties: { - //抖动时间 - duration: 0, - //X轴抖动范围 - shakeX: 0, - shakeY: 0 - }, - shake: function shake(callback) { - if (this.shaking) { - return; +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 GameData_1 = require("./GameData"); +var List_1 = require("./ListView/List"); +var serverAPI_1 = require("./crypto/serverAPI"); +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; } - - this.callback = callback; - this.shaking = true; - this.dtCost = 0; - this.nodeInitialPos = this.node.getPosition(); - this.unschedule(this.doSchedule); - this.schedule(this.doSchedule, 0, cc.macro.REPEAT_FOREVER, 0); - }, - doSchedule: function doSchedule(dt) { - var dt2 = dt * 50; - var randX = this.getRandomStrength(-this.shakeX, this.shakeX) * dt2; - var randY = this.getRandomStrength(-this.shakeY, this.shakeY) * dt2; - this.node.setPosition(cc.pAdd(this.nodeInitialPos, cc.v2(randX, randY))); - this.dtCost += dt; - - if (this.dtCost >= this.duration) { - this.unschedule(this.doSchedule); - this.node.setPosition(this.nodeInitialPos); - this.shaking = false; - - if (this.callback) { - this.callback(); - } - } - }, - //获取两个数间的随机值 - getRandomStrength: function getRandomStrength(min, max) { - return Math.random() * (max - min + 1) + min; - } -}); + 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 postData = { + "page": 1, + "pageSize": 100 + }; + //回调进getRankData + serverAPI_1.default.rankData(2, this.getRankData.bind(this), postData); + }; + //实际设置排行数据 + RankManager.prototype.getRankData = function (data) { + if (data) { + console.log(data); + this.listData = data.data.list; + this.selfData = data.data.info; + var rankData = []; + var self = false; + for (var i = 0; i <= this.listData.length - 1; i++) { + rankData.push({ rank: (i + 1), name: this.listData[i].nickName, total: this.listData[i].totalSunCount, pic: this.listData[i].pic }); + if (GameData_1.default._instance.GM_INFO.userId == this.listData[i].userId) { + self = true; + this.rankNumber = i; + this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string = (i + 1) + ""; + } + if (i == (this.listData.length - 1) && self == false) { + this.rankNumber = i; + this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string = "99+"; + } + } + this.rankList.setData(rankData); + if (this.selfData.nickName.length > 6) { + this.selfData.nickName = this.selfData.nickName.substring(0, 6) + "..."; + } + this.selfNode.getChildByName("nameLab").getComponent(cc.Label).string = this.selfData.nickName; + this.selfNode.getChildByName("totalLab").getComponent(cc.Label).string = this.selfData.totalSunCount; + this.setPic(this.selfData.pic); + if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "1") { + this.selfNode.getChildByName("rank").getChildByName("one").active = true; + } + else if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "2") { + this.selfNode.getChildByName("rank").getChildByName("two").active = true; + } + else if (this.selfNode.getChildByName("rankLab").getComponent(cc.Label).string == "3") { + this.selfNode.getChildByName("rank").getChildByName("three").active = true; + } + else { + // this.selfNode.getChildByName("four").active = true; + } + this.selfNode.opacity = 255; + if (this.selfData.totalSunCount == 0) + this.selfNode.opacity = 0; + } + }; + //返回按钮 + 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(); } @@ -3429,7 +2891,210 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxTaGFrZS5qcyJdLCJuYW1lcyI6WyJTaGFrZSIsImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwiZHVyYXRpb24iLCJzaGFrZVgiLCJzaGFrZVkiLCJzaGFrZSIsImNhbGxiYWNrIiwic2hha2luZyIsImR0Q29zdCIsIm5vZGVJbml0aWFsUG9zIiwibm9kZSIsImdldFBvc2l0aW9uIiwidW5zY2hlZHVsZSIsImRvU2NoZWR1bGUiLCJzY2hlZHVsZSIsIm1hY3JvIiwiUkVQRUFUX0ZPUkVWRVIiLCJkdCIsImR0MiIsInJhbmRYIiwiZ2V0UmFuZG9tU3RyZW5ndGgiLCJyYW5kWSIsInNldFBvc2l0aW9uIiwicEFkZCIsInYyIiwibWluIiwibWF4IiwiTWF0aCIsInJhbmRvbSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQSxLQUFLLEdBQUdDLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ2pCLGFBQVNELEVBQUUsQ0FBQ0UsU0FESztBQUdqQkMsRUFBQUEsVUFBVSxFQUFFO0FBQ1I7QUFDQUMsSUFBQUEsUUFBUSxFQUFFLENBRkY7QUFHUjtBQUNBQyxJQUFBQSxNQUFNLEVBQUUsQ0FKQTtBQUtSQyxJQUFBQSxNQUFNLEVBQUU7QUFMQSxHQUhLO0FBV2pCQyxFQUFBQSxLQUFLLEVBQUUsZUFBVUMsUUFBVixFQUFvQjtBQUN2QixRQUFHLEtBQUtDLE9BQVIsRUFBZ0I7QUFDWjtBQUNIOztBQUNELFNBQUtELFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsT0FBTCxHQUFlLElBQWY7QUFDQSxTQUFLQyxNQUFMLEdBQWMsQ0FBZDtBQUNBLFNBQUtDLGNBQUwsR0FBc0IsS0FBS0MsSUFBTCxDQUFVQyxXQUFWLEVBQXRCO0FBQ0EsU0FBS0MsVUFBTCxDQUFnQixLQUFLQyxVQUFyQjtBQUNBLFNBQUtDLFFBQUwsQ0FBYyxLQUFLRCxVQUFuQixFQUErQixDQUEvQixFQUFrQ2YsRUFBRSxDQUFDaUIsS0FBSCxDQUFTQyxjQUEzQyxFQUEyRCxDQUEzRDtBQUNILEdBckJnQjtBQXNCakJILEVBQUFBLFVBQVUsRUFBRSxvQkFBVUksRUFBVixFQUFjO0FBQ3RCLFFBQUlDLEdBQUcsR0FBR0QsRUFBRSxHQUFHLEVBQWY7QUFDQSxRQUFJRSxLQUFLLEdBQUcsS0FBS0MsaUJBQUwsQ0FBdUIsQ0FBQyxLQUFLakIsTUFBN0IsRUFBcUMsS0FBS0EsTUFBMUMsSUFBb0RlLEdBQWhFO0FBQ0EsUUFBSUcsS0FBSyxHQUFHLEtBQUtELGlCQUFMLENBQXVCLENBQUMsS0FBS2hCLE1BQTdCLEVBQXFDLEtBQUtBLE1BQTFDLElBQW9EYyxHQUFoRTtBQUNBLFNBQUtSLElBQUwsQ0FBVVksV0FBVixDQUFzQnhCLEVBQUUsQ0FBQ3lCLElBQUgsQ0FBUSxLQUFLZCxjQUFiLEVBQTZCWCxFQUFFLENBQUMwQixFQUFILENBQU1MLEtBQU4sRUFBYUUsS0FBYixDQUE3QixDQUF0QjtBQUNBLFNBQUtiLE1BQUwsSUFBZVMsRUFBZjs7QUFDQSxRQUFJLEtBQUtULE1BQUwsSUFBZSxLQUFLTixRQUF4QixFQUFrQztBQUM5QixXQUFLVSxVQUFMLENBQWdCLEtBQUtDLFVBQXJCO0FBQ0EsV0FBS0gsSUFBTCxDQUFVWSxXQUFWLENBQXNCLEtBQUtiLGNBQTNCO0FBQ0EsV0FBS0YsT0FBTCxHQUFlLEtBQWY7O0FBQ0EsVUFBRyxLQUFLRCxRQUFSLEVBQWlCO0FBQ2IsYUFBS0EsUUFBTDtBQUNIO0FBQ0o7QUFDSixHQXBDZ0I7QUFxQ2pCO0FBQ0FjLEVBQUFBLGlCQUFpQixFQUFFLDJCQUFVSyxHQUFWLEVBQWVDLEdBQWYsRUFBb0I7QUFDbkMsV0FBT0MsSUFBSSxDQUFDQyxNQUFMLE1BQWlCRixHQUFHLEdBQUdELEdBQU4sR0FBWSxDQUE3QixJQUFrQ0EsR0FBekM7QUFDSDtBQXhDZ0IsQ0FBVCxDQUFaIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICog6Ieq5a6a5LmJ5oqW5Yqo5pWI5p6cXHJcbiAqL1xyXG52YXIgU2hha2UgPSBjYy5DbGFzcyh7XHJcbiAgICBleHRlbmRzOiBjYy5Db21wb25lbnQsXHJcblxyXG4gICAgcHJvcGVydGllczoge1xyXG4gICAgICAgIC8v5oqW5Yqo5pe26Ze0XHJcbiAgICAgICAgZHVyYXRpb246IDAsXHJcbiAgICAgICAgLy9Y6L205oqW5Yqo6IyD5Zu0XHJcbiAgICAgICAgc2hha2VYOiAwLFxyXG4gICAgICAgIHNoYWtlWTogMCxcclxuICAgIH0sXHJcblxyXG4gICAgc2hha2U6IGZ1bmN0aW9uIChjYWxsYmFjaykge1xyXG4gICAgICAgIGlmKHRoaXMuc2hha2luZyl7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrO1xyXG4gICAgICAgIHRoaXMuc2hha2luZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5kdENvc3QgPSAwO1xyXG4gICAgICAgIHRoaXMubm9kZUluaXRpYWxQb3MgPSB0aGlzLm5vZGUuZ2V0UG9zaXRpb24oKTtcclxuICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy5kb1NjaGVkdWxlKTtcclxuICAgICAgICB0aGlzLnNjaGVkdWxlKHRoaXMuZG9TY2hlZHVsZSwgMCwgY2MubWFjcm8uUkVQRUFUX0ZPUkVWRVIsIDApO1xyXG4gICAgfSxcclxuICAgIGRvU2NoZWR1bGU6IGZ1bmN0aW9uIChkdCkge1xyXG4gICAgICAgIHZhciBkdDIgPSBkdCAqIDUwO1xyXG4gICAgICAgIHZhciByYW5kWCA9IHRoaXMuZ2V0UmFuZG9tU3RyZW5ndGgoLXRoaXMuc2hha2VYLCB0aGlzLnNoYWtlWCkgKiBkdDI7XHJcbiAgICAgICAgdmFyIHJhbmRZID0gdGhpcy5nZXRSYW5kb21TdHJlbmd0aCgtdGhpcy5zaGFrZVksIHRoaXMuc2hha2VZKSAqIGR0MjtcclxuICAgICAgICB0aGlzLm5vZGUuc2V0UG9zaXRpb24oY2MucEFkZCh0aGlzLm5vZGVJbml0aWFsUG9zLCBjYy52MihyYW5kWCwgcmFuZFkpKSk7XHJcbiAgICAgICAgdGhpcy5kdENvc3QgKz0gZHQ7XHJcbiAgICAgICAgaWYgKHRoaXMuZHRDb3N0ID49IHRoaXMuZHVyYXRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMuZG9TY2hlZHVsZSk7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5zZXRQb3NpdGlvbih0aGlzLm5vZGVJbml0aWFsUG9zKTtcclxuICAgICAgICAgICAgdGhpcy5zaGFraW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY2FsbGJhY2spe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYWxsYmFjaygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8v6I635Y+W5Lik5Liq5pWw6Ze055qE6ZqP5py65YC8XHJcbiAgICBnZXRSYW5kb21TdHJlbmd0aDogZnVuY3Rpb24gKG1pbiwgbWF4KSB7XHJcbiAgICAgICAgcmV0dXJuIE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkgKyBtaW47XHJcbiAgICB9LFxyXG59KTtcclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBa0M7QUFDbEMsd0NBQW1DO0FBQ25DLGdEQUEwQztBQUNwQyxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUM1QyxLQUFLO0FBRUw7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFxS0M7UUFuS0csWUFBTSxHQUFZLElBQUksQ0FBQztRQUV2QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFdBQUssR0FBYyxJQUFJLENBQUM7O0lBK0o1QixDQUFDO0lBdkpHLDRCQUFNLEdBQU47UUFDSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU87SUFDUCwwQkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsV0FBVztJQUNYLDZCQUFPLEdBQVA7UUFDSSxJQUFJLFFBQVEsR0FBRztZQUNYLE1BQU0sRUFBQyxDQUFDO1lBQ1IsVUFBVSxFQUFDLEdBQUc7U0FDakIsQ0FBQztRQUNGLGdCQUFnQjtRQUNoQixtQkFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUNELFVBQVU7SUFDVixpQ0FBVyxHQUFYLFVBQVksSUFBSTtRQUVaLElBQUcsSUFBSSxFQUFDO1lBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDL0IsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1lBQ2xCLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQztZQUNqQixLQUFJLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBQyxDQUFDLElBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUMsQ0FBQyxFQUFDLENBQUMsRUFBRSxFQUFDO2dCQUN0QyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFDLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFDLENBQUMsQ0FBQztnQkFDNUgsSUFBRyxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFDO29CQUM1RCxJQUFJLEdBQUcsSUFBSSxDQUFDO29CQUNaLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO29CQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7aUJBQ3JGO2dCQUNELElBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssRUFBQztvQkFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7b0JBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztpQkFDakY7YUFDSjtZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hDLElBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBQztnQkFDakMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUE7YUFDeEU7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztZQUMvRixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUNyRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsSUFBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sSUFBSSxHQUFHLEVBQUM7Z0JBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2FBQzVFO2lCQUNJLElBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLElBQUksR0FBRyxFQUFDO2dCQUNqRixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzthQUM1RTtpQkFDSSxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBQztnQkFDakYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7YUFDOUU7aUJBQ0c7Z0JBQ0Esc0RBQXNEO2FBQ3pEO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1lBQzVCLElBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLElBQUksQ0FBQztnQkFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7U0FDbEU7SUFDTCxDQUFDO0lBQ0QsTUFBTTtJQUNOLCtCQUFTLEdBQVQ7UUFDSSxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsU0FBUztJQUNULGtDQUFZLEdBQVo7UUFBQSxpQkE2QkM7UUE1QkcsbUJBQW1CO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDakMsRUFBRSxDQUFDLENBQUMsRUFBQyxFQUFDLFFBQVEsRUFBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQzthQUNqQyxJQUFJLENBQUM7WUFDRixLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ2pELEtBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUM7aUJBQzFELFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFJLFFBQVEsQ0FBQyxJQUFJLEdBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUNwRSxDQUFDLENBQUM7YUFDRCxLQUFLLEVBQUUsQ0FBQztRQUNULElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNyRSxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFBQztZQUMxQixJQUFHLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxFQUFDO2dCQUNyQixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUMsRUFBRSxHQUFDLENBQUMsQ0FBQyxHQUFDLEdBQUcsQ0FBQTtnQkFDL0IsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUN6RCxJQUFHLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxJQUFJLFNBQVMsRUFBQztvQkFDdkMsSUFBSSxHQUFHLENBQUMsQ0FBQztpQkFDWjthQUNKO1NBQ0o7UUFDRCxVQUFVLENBQUM7WUFDUCxJQUFHLEtBQUksQ0FBQyxLQUFLO2dCQUFDLEtBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDaEMsS0FBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNqRCxLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO2lCQUMxRCxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBSSxRQUFRLENBQUMsSUFBSSxHQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7UUFDcEUsQ0FBQyxFQUFFLElBQUksR0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsQixDQUFDO0lBQ0QsTUFBTTtJQUNDLDRCQUFNLEdBQWIsVUFBYyxHQUFHO1FBQWpCLGlCQTBDQztRQXpDRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDN0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzFFLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVCxJQUFJLENBQUMsVUFBQSxRQUFRO1lBQ1YsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxVQUFBLEtBQUs7WUFDUCxJQUFHLEtBQUssSUFBSSxNQUFNLEVBQUM7Z0JBQ2YsS0FBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUM1RCxLQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzthQUMzRTtRQUNMLENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxVQUFBLEtBQUs7WUFDUixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxFQUFDLEdBQUcsRUFBQyxNQUFNLEVBQUMsRUFBQyxVQUFDLEdBQUcsRUFBRSxPQUFvQjtZQUNuRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDMUIsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztnQkFDekUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ3pFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQztxQkFDakYsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDM0MsVUFBVSxDQUFDO29CQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDeEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ1g7aUJBQ0c7Z0JBQ0EsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ3hFLFVBQVUsQ0FBQztvQkFDUCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3hCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUNYO1FBRUwsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBaktEO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBVSxRQUFROytDQUNiO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBVSxXQUFXO2lEQUNkO0lBRXpCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBUSxRQUFROzhDQUNaO0lBTlAsV0FBVztRQUQvQixPQUFPO09BQ2EsV0FBVyxDQXFLL0I7SUFBRCxrQkFBQztDQXJLRCxBQXFLQyxDQXJLd0MsRUFBRSxDQUFDLFNBQVMsR0FxS3BEO2tCQXJLb0IsV0FBVyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInBhZ2VcIjoxLFxyXG4gICAgICAgICAgICBcInBhZ2VTaXplXCI6MTAwXHJcbiAgICAgICAgfTsgXHJcbiAgICAgICAgLy/lm57osIPov5tnZXRSYW5rRGF0YVxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuXHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGEpO1xyXG4gICAgICAgICAgICB0aGlzLmxpc3REYXRhID0gZGF0YS5kYXRhLmxpc3Q7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZkRhdGEgPSBkYXRhLmRhdGEuaW5mbztcclxuICAgICAgICAgICAgbGV0IHJhbmtEYXRhID0gW107XHJcbiAgICAgICAgICAgIGxldCBzZWxmID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wO2k8PXRoaXMubGlzdERhdGEubGVuZ3RoLTE7aSsrKXtcclxuICAgICAgICAgICAgICAgIHJhbmtEYXRhLnB1c2goe3Jhbms6KGkrMSksIG5hbWU6dGhpcy5saXN0RGF0YVtpXS5uaWNrTmFtZSwgdG90YWw6dGhpcy5saXN0RGF0YVtpXS50b3RhbFN1bkNvdW50LCBwaWM6dGhpcy5saXN0RGF0YVtpXS5waWN9KTtcclxuICAgICAgICAgICAgICAgIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCA9PSB0aGlzLmxpc3REYXRhW2ldLnVzZXJJZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9KGkrMSkgKyBcIlwiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gKHRoaXMubGlzdERhdGEubGVuZ3RoLTEpICYmIHNlbGYgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmFua051bWJlciA9IGk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBcIjk5K1wiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnJhbmtMaXN0LnNldERhdGEocmFua0RhdGEpO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmRGF0YS5uaWNrTmFtZT0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZS5zdWJzdHJpbmcoMCw2KSArIFwiLi4uXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZUxhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbExhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgdGhpcy5zZXRQaWModGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9PSBcIjFcIil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm9uZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPT0gXCIyXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0d29cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmKHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID09IFwiM1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcImZvdXJcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudCA9PSAwKSB0aGlzLnNlbGZOb2RlLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6L+U5Zue5oyJ6ZKuXHJcbiAgICBiYWNrQ2xpY2soKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+acgOS4iuaWueeUqOaIt+WKqOeUu1xyXG4gICAgcGxheWVyQWN0aW9uKCl7XHJcbiAgICAgICAgLy8tMjU0IDM3NyAgMjEwIDQ1M1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBsZXQgdGltZSA9IDE7XHJcbiAgICAgICAgdGhpcy50d2VlbiA9IGNjLnR3ZWVuKHRoaXMuUGxheWVyKVxyXG4gICAgICAgIC50bygyLHtwb3NpdGlvbjpjYy52MygyMTAsNDUzLDApfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKVxyXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSAgcGFyc2VJbnQodGltZSoxMDAgKyBcIlwiKSArIFwiJVwiO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgdGltZSA9ICh0aGlzLmxpc3REYXRhLmxlbmd0aCAtIHRoaXMucmFua051bWJlcikvdGhpcy5saXN0RGF0YS5sZW5ndGg7XHJcbiAgICAgICAgaWYodGhpcy5saXN0RGF0YS5sZW5ndGggPj0gOTkpe1xyXG4gICAgICAgICAgICBpZih0aGlzLnJhbmtOdW1iZXIgPj0gOTkpe1xyXG4gICAgICAgICAgICAgICAgdGltZSA9IChNYXRoLnJhbmRvbSgpKjQ5KzEpLzEwMFxyXG4gICAgICAgICAgICAgICAgdmFyIG1hdGNoSWQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJtYXRjaE51bWJlclwiKTtcclxuICAgICAgICAgICAgICAgIGlmKG1hdGNoSWQgPT0gbnVsbCB8fCBtYXRjaElkID09IHVuZGVmaW5lZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZSA9IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMudHdlZW4pdGhpcy50d2Vlbi5zdG9wKCk7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIilcclxuICAgICAgICAgICAgLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gIHBhcnNlSW50KHRpbWUqMTAwICsgXCJcIikgKyBcIiVcIjtcclxuICAgICAgICB9LCB0aW1lKjIwMDApO1xyXG5cclxuICAgIH1cclxuICAgIC8v6K6+572u5aS05YOPXHJcbiAgICBwdWJsaWMgc2V0UGljKHBpYyl7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBmZXRjaChwaWMpXHJcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtTGVuZ3RoJyk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgIGlmKGVyck5vID09IFwiNTA5M1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucGhvbmUubm9kZS5wYXJlbnQuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdmFyIHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGNjLmFzc2V0TWFuYWdlci5sb2FkUmVtb3RlKHBpYywge2V4dDonLnBuZyd9LChlcnIsIHRleHR1cmU6Y2MuVGV4dHVyZTJEKSA9PiB7XHJcbiAgICAgICAgICAgIHNlbGYuUGxheWVyLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRleHR1cmUpe1xyXG4gICAgICAgICAgICAgICAgc2VsZi5waG9uZS5ub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKVxyXG4gICAgICAgICAgICAgICAgLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYucGxheWVyQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICB9LCA1MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/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, 'f2518+0IHRGOY+ueIhGtEeA', 'Notification'); +// Script/Notification.ts + +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Notification = void 0; +//全局通知 +var Notification = { + _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.Notification = Notification; + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxOb3RpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsTUFBTTtBQUNOLElBQUksWUFBWSxHQUFHO0lBQ2YsU0FBUyxFQUFFLEVBQUU7SUFDYixFQUFFLEVBQUUsVUFBVSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDbEMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLFNBQVMsRUFBRTtZQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztTQUMvQjtRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxFQUFFLFVBQVUsTUFBTSxFQUFFLFNBQVM7UUFDN0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQUUsT0FBTztRQUVoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsSUFBSSxPQUFPO2dCQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDakU7SUFDTCxDQUFDO0lBRUQsR0FBRyxFQUFFLFVBQVUsTUFBTSxFQUFFLFFBQVE7UUFDM0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQUUsT0FBTztRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQzFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7Z0JBQ3JCLE1BQU07YUFDVDtTQUNKO0lBQ0wsQ0FBQztJQUVELFNBQVMsRUFBRSxVQUFVLE1BQU07UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDdkMsQ0FBQztJQUVELFlBQVksRUFBRTtRQUNWLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMxQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckI7U0FDSjtJQUNMLENBQUM7Q0FDSixDQUFDO0FBRU8sb0NBQVkiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+WFqOWxgOmAmuefpVxudmFyIE5vdGlmaWNhdGlvbiA9IHtcbiAgICBfZXZlbnRNYXA6IFtdLFxuICAgIG9uOiBmdW5jdGlvbiAobWFzZ0lkLCBjYWxsYmFjaywgdGFyZ2V0KSB7XG4gICAgICAgIGlmICh0aGlzLl9ldmVudE1hcFttYXNnSWRdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2V2ZW50TWFwW21hc2dJZF0gPSBbXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdLnB1c2goeyBjYWxsYmFjazogY2FsbGJhY2ssIHRhcmdldDogdGFyZ2V0IH0pO1xuICAgIH0sXG5cbiAgICBlbWl0OiBmdW5jdGlvbiAobWFzZ0lkLCBwYXJhbWV0ZXIpIHtcbiAgICAgICAgbGV0IGFycmF5ID0gdGhpcy5fZXZlbnRNYXBbbWFzZ0lkXTtcbiAgICAgICAgaWYgKGFycmF5ID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgZWxlbWVudCA9IGFycmF5W2ldO1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQpIGVsZW1lbnQuY2FsbGJhY2suY2FsbChlbGVtZW50LnRhcmdldCwgcGFyYW1ldGVyKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBvZmY6IGZ1bmN0aW9uIChtYXNnSWQsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBhcnJheSA9IHRoaXMuX2V2ZW50TWFwW21hc2dJZF07XG4gICAgICAgIGlmIChhcnJheSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBlbGVtZW50ID0gYXJyYXlbaV07XG4gICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50LmNhbGxiYWNrID09PSBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGFycmF5W2ldID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcblxuICAgIG9mZk1hc2dJZDogZnVuY3Rpb24gKG1hc2dJZCkge1xuICAgICAgICB0aGlzLl9ldmVudE1hcFttYXNnSWRdID0gdW5kZWZpbmVkO1xuICAgIH0sXG5cbiAgICByZW1vdmVBbGxNc2c6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9yIChsZXQgayBpbiB0aGlzLl9ldmVudE1hcCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2V2ZW50TWFwW2tdKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vZmZNYXNnSWQoayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuXG5leHBvcnQgeyBOb3RpZmljYXRpb24gfTsiXX0= +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/Sun.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, '4be67sdkexCyqLl0NHd9N1f', 'Sun'); +// Script/Sun.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 }); +var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property; +var Notification_1 = require("./Notification"); +var NewClass = /** @class */ (function (_super) { + __extends(NewClass, _super); + function NewClass() { + return _super !== null && _super.apply(this, arguments) || this; + } + // onLoad () {} + NewClass.prototype.start = function () { + }; + //初始化数据 + NewClass.prototype.init = function (_id, color, speed, repeat) { + this.touch = true; + this.move = false; + this.id_Number = _id; + this._color = color; + this._speed = speed; + this._repeat = repeat; + //太阳动画 + cc.tween(this.node.getChildByName("shan")) + .repeatForever(cc.tween() + .to(1, { opacity: 0, scale: 0.5, }) + .delay(0.2) + .to(1, { opacity: 255, scale: 1.2 }) + .delay(0.5)) + .start(); + }; + //用于作弊 测试 + NewClass.prototype.showNumber = function (type) { + this.node.getChildByName("number").active = type; + if (type == true) + this.node.getChildByName("number").getComponent(cc.Label).string = this.id_Number + ""; + }; + //点击事件 + NewClass.prototype.clickBtn = function (event, data) { + if (data === "1") { + if (this.move == false && this.touch == true) { + if (this.node.parent.parent.name == "GameNode") { + if (this.node.parent.parent.getComponent("GameManager").begin == true) { + cc.tween(this.node.getChildByName("action")) + .to(0.5, { opacity: 0, scale: 1.8 }) + .start(); + cc.tween(this.node) + .to(0.3, { scale: 1.3 }) + .to(0.3, { scale: 1 }) + .start(); + this.touch = false; + this.node.zIndex = -1; + Notification_1.Notification.emit("clickSun", this.id_Number); + } + } + else { + this.touch = false; + this.node.zIndex = -1; + Notification_1.Notification.emit("clickSun", this.id_Number); + } + } + } + else { + if (this.touch == true && this.node.parent.parent.getComponent("GuideManager").begin == true) { + this.touch = false; + this.node.zIndex = -1; + Notification_1.Notification.emit("clickSun", this.id_Number); + } + } + }; + 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,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dCI6WyIvLyBMZWFybiBUeXBlU2NyaXB0OlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy90eXBlc2NyaXB0Lmh0bWxcclxuLy8gTGVhcm4gQXR0cmlidXRlOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9yZWZlcmVuY2UvYXR0cmlidXRlcy5odG1sXHJcbi8vIExlYXJuIGxpZmUtY3ljbGUgY2FsbGJhY2tzOlxyXG4vLyAgLSBodHRwczovL2RvY3MuY29jb3MuY29tL2NyZWF0b3IvbWFudWFsL2VuL3NjcmlwdGluZy9saWZlLWN5Y2xlLWNhbGxiYWNrcy5odG1sXHJcblxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuaW1wb3J0IEdhbWVNYW5hZ2VyIGZyb20gJy4vR2FtZU1hbmFnZXInO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuL05vdGlmaWNhdGlvbic7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICBpZF9OdW1iZXI6bnVtYmVyXHJcbiAgICBfc3BlZWQ6bnVtYmVyXHJcbiAgICBfY29sb3I6bnVtYmVyXHJcbiAgICB0b3VjaDpib29sZWFuXHJcbiAgICBfcmVwZWF0OmJvb2xlYW5cclxuICAgIG1vdmU6Ym9vbGVhblxyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdChfaWQsY29sb3Isc3BlZWQscmVwZWF0KXtcclxuICAgICAgICB0aGlzLnRvdWNoID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlkX051bWJlciAgPSBfaWQ7XHJcbiAgICAgICAgdGhpcy5fY29sb3IgPSBjb2xvcjtcclxuICAgICAgICB0aGlzLl9zcGVlZCA9IHNwZWVkO1xyXG4gICAgICAgIHRoaXMuX3JlcGVhdCA9IHJlcGVhdDtcclxuICAgICAgICAvL+WkqumYs+WKqOeUu1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNoYW5cIikpXHJcbiAgICAgICAgLnJlcGVhdEZvcmV2ZXIoXHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKClcclxuICAgICAgICAgICAgLnRvKDEse29wYWNpdHk6MCxzY2FsZTowLjUsfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuMilcclxuICAgICAgICAgICAgLnRvKDEse29wYWNpdHk6MjU1LHNjYWxlOjEuMn0pXHJcbiAgICAgICAgICAgIC5kZWxheSgwLjUpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/nlKjkuo7kvZzlvIog5rWL6K+VXHJcbiAgICBzaG93TnVtYmVyKHR5cGUpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKS5hY3RpdmUgPSB0eXBlO1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSlcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5pZF9OdW1iZXIgKyBcIlwiO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuovku7ZcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIGlmKGRhdGEgPT09IFwiMVwiKXtcclxuICAgICAgICAgICAgaWYoIHRoaXMubW92ZSA9PSBmYWxzZSAmJiB0aGlzLnRvdWNoID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5ub2RlLnBhcmVudC5wYXJlbnQubmFtZSA9PSBcIkdhbWVOb2RlXCIpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubm9kZS5wYXJlbnQucGFyZW50LmdldENvbXBvbmVudChcIkdhbWVNYW5hZ2VyXCIpLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJhY3Rpb25cIikpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50bygwLjUse29wYWNpdHk6MCxzY2FsZToxLjh9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8oMC4zLHtzY2FsZToxfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG91Y2ggPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlLnpJbmRleCA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3VjaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZS56SW5kZXggPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYoIHRoaXMudG91Y2ggPT0gdHJ1ZSAmJiB0aGlzLm5vZGUucGFyZW50LnBhcmVudC5nZXRDb21wb25lbnQoXCJHdWlkZU1hbmFnZXJcIikuYmVnaW4gPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvdWNoID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuekluZGV4ID0gLTE7XHJcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uZW1pdChcImNsaWNrU3VuXCIsdGhpcy5pZF9OdW1iZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -5781,6 +5446,218 @@ cc._RF.pop(); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxjcnlwdG9cXGNyeXB0by1qcy5taW4uanMiXSwibmFtZXMiOlsidCIsInIiLCJleHBvcnRzIiwibW9kdWxlIiwiZGVmaW5lIiwiYW1kIiwiQ3J5cHRvSlMiLCJlIiwiT2JqZWN0IiwiY3JlYXRlIiwicHJvdG90eXBlIiwiaSIsIm4iLCJsaWIiLCJvIiwiQmFzZSIsImV4dGVuZCIsIm1peEluIiwiaGFzT3duUHJvcGVydHkiLCJpbml0IiwiJHN1cGVyIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJ0b1N0cmluZyIsImNsb25lIiwicyIsIldvcmRBcnJheSIsIndvcmRzIiwic2lnQnl0ZXMiLCJsZW5ndGgiLCJjIiwic3RyaW5naWZ5IiwiY29uY2F0IiwiY2xhbXAiLCJjZWlsIiwiY2FsbCIsInNsaWNlIiwicmFuZG9tIiwiYSIsInB1c2giLCJlbmMiLCJIZXgiLCJqb2luIiwicGFyc2UiLCJwYXJzZUludCIsInN1YnN0ciIsImgiLCJMYXRpbjEiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJjaGFyQ29kZUF0IiwibCIsIlV0ZjgiLCJkZWNvZGVVUklDb21wb25lbnQiLCJlc2NhcGUiLCJFcnJvciIsInVuZXNjYXBlIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwiZiIsIkJ1ZmZlcmVkQmxvY2tBbGdvcml0aG0iLCJyZXNldCIsIl9kYXRhIiwiX25EYXRhQnl0ZXMiLCJfYXBwZW5kIiwiX3Byb2Nlc3MiLCJibG9ja1NpemUiLCJtYXgiLCJfbWluQnVmZmVyU2l6ZSIsIm1pbiIsIl9kb1Byb2Nlc3NCbG9jayIsInUiLCJzcGxpY2UiLCJIYXNoZXIiLCJjZmciLCJfZG9SZXNldCIsInVwZGF0ZSIsImZpbmFsaXplIiwiX2RvRmluYWxpemUiLCJfY3JlYXRlSGVscGVyIiwiX2NyZWF0ZUhtYWNIZWxwZXIiLCJITUFDIiwiYWxnbyIsIk1hdGgiLCJCYXNlNjQiLCJfbWFwIiwiY2hhckF0IiwiX3JldmVyc2VNYXAiLCJpbmRleE9mIiwiYWJzIiwic2luIiwiTUQ1IiwiX2hhc2giLCJkIiwidiIsInAiLCJfIiwieSIsImciLCJCIiwidyIsImsiLCJTIiwibSIsIngiLCJiIiwiSCIsInoiLCJBIiwiQyIsIkQiLCJmbG9vciIsIkhtYWNNRDUiLCJTSEExIiwiSG1hY1NIQTEiLCJzcXJ0IiwicG93IiwiU0hBMjU2IiwiSG1hY1NIQTI1NiIsIlV0ZjE2IiwiVXRmMTZCRSIsIlV0ZjE2TEUiLCJBcnJheUJ1ZmZlciIsIlVpbnQ4QXJyYXkiLCJJbnQ4QXJyYXkiLCJVaW50OENsYW1wZWRBcnJheSIsIkludDE2QXJyYXkiLCJVaW50MTZBcnJheSIsIkludDMyQXJyYXkiLCJVaW50MzJBcnJheSIsIkZsb2F0MzJBcnJheSIsIkZsb2F0NjRBcnJheSIsImJ1ZmZlciIsImJ5dGVPZmZzZXQiLCJieXRlTGVuZ3RoIiwiUklQRU1EMTYwIiwiUiIsIkUiLCJNIiwiRiIsIkhtYWNSSVBFTUQxNjAiLCJfaGFzaGVyIiwiX29LZXkiLCJfaUtleSIsIlBCS0RGMiIsImtleVNpemUiLCJoYXNoZXIiLCJpdGVyYXRpb25zIiwiY29tcHV0ZSIsIkV2cEtERiIsIlNIQTIyNCIsIkhtYWNTSEEyMjQiLCJ4NjQiLCJXb3JkIiwiaGlnaCIsImxvdyIsInRvWDMyIiwiU0hBMyIsIm91dHB1dExlbmd0aCIsIl9zdGF0ZSIsIkhtYWNTSEEzIiwiU0hBNTEyIiwiUCIsIlciLCJPIiwiVSIsIkkiLCJLIiwiWCIsIkwiLCJqIiwiTiIsIlQiLCJaIiwicSIsIkciLCJKIiwiJCIsIlEiLCJWIiwiWSIsInR0IiwicnQiLCJldCIsIml0IiwibnQiLCJvdCIsInN0IiwiYXQiLCJjdCIsImh0IiwibHQiLCJmdCIsInV0IiwiZHQiLCJ2dCIsInB0IiwiX3QiLCJ5dCIsImd0IiwiQnQiLCJ3dCIsImt0IiwiU3QiLCJtdCIsInh0IiwiYnQiLCJIbWFjU0hBNTEyIiwiU0hBMzg0IiwiSG1hY1NIQTM4NCIsIkNpcGhlciIsImNyZWF0ZUVuY3J5cHRvciIsIl9FTkNfWEZPUk1fTU9ERSIsImNyZWF0ZURlY3J5cHRvciIsIl9ERUNfWEZPUk1fTU9ERSIsIl94Zm9ybU1vZGUiLCJfa2V5IiwicHJvY2VzcyIsIml2U2l6ZSIsImVuY3J5cHQiLCJkZWNyeXB0IiwiU3RyZWFtQ2lwaGVyIiwibW9kZSIsIkJsb2NrQ2lwaGVyTW9kZSIsIkVuY3J5cHRvciIsIkRlY3J5cHRvciIsIl9jaXBoZXIiLCJfaXYiLCJDQkMiLCJfcHJldkJsb2NrIiwicHJvY2Vzc0Jsb2NrIiwiZW5jcnlwdEJsb2NrIiwiZGVjcnlwdEJsb2NrIiwicGFkIiwiUGtjczciLCJ1bnBhZCIsIkJsb2NrQ2lwaGVyIiwicGFkZGluZyIsIml2IiwiX21vZGUiLCJfX2NyZWF0b3IiLCJDaXBoZXJQYXJhbXMiLCJmb3JtYXR0ZXIiLCJmb3JtYXQiLCJPcGVuU1NMIiwiY2lwaGVydGV4dCIsInNhbHQiLCJTZXJpYWxpemFibGVDaXBoZXIiLCJrZXkiLCJhbGdvcml0aG0iLCJfcGFyc2UiLCJrZGYiLCJleGVjdXRlIiwiUGFzc3dvcmRCYXNlZENpcGhlciIsIkNGQiIsIkVDQiIsIkFuc2lYOTIzIiwiSXNvMTAxMjYiLCJJc285Nzk3MSIsIlplcm9QYWRkaW5nIiwiT0ZCIiwiX2tleXN0cmVhbSIsIk5vUGFkZGluZyIsIkFFUyIsIl9uUm91bmRzIiwiX2tleVByaW9yUmVzZXQiLCJfa2V5U2NoZWR1bGUiLCJfaW52S2V5U2NoZWR1bGUiLCJfZG9DcnlwdEJsb2NrIiwiX2xCbG9jayIsIl9yQmxvY2siLCJERVMiLCJfc3ViS2V5cyIsIl9pbnZTdWJLZXlzIiwiVHJpcGxlREVTIiwiX2RlczEiLCJfZGVzMiIsIl9kZXMzIiwiX1MiLCJfaSIsIl9qIiwiUkM0IiwiUkM0RHJvcCIsImRyb3AiLCJDVFJHbGFkbWFuIiwiX2NvdW50ZXIiLCJfWCIsIl9DIiwiX2IiLCJSYWJiaXQiLCJDVFIiLCJSYWJiaXRMZWdhY3kiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsQ0FBQyxVQUFTQSxDQUFULEVBQVdDLENBQVgsRUFBYTtBQUFDLGNBQVUsT0FB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YixFQUFlLENBQWYsRUFBaUIsQ0FBakIsRUFBbUIsQ0FBbkIsRUFBcUIsRUFBckIsRUFBd0IsRUFBeEIsRUFBMkIsRUFBM0IsRUFBOEIsRUFBOUIsRUFBaUMsQ0FBakMsRUFBbUMsQ0FBbkMsRUFBcUMsQ0FBckMsRUFBdUMsQ0FBdkMsRUFBeUMsQ0FBekMsRUFBMkMsQ0FBM0MsRUFBNkMsQ0FBN0MsRUFBK0MsRUFBL0MsRUFBa0QsRUFBbEQsRUFBcUQsQ0FBckQsRUFBdUQsQ0FBdkQsRUFBeUQsRUFBekQsRUFBNEQsQ0FBNUQsRUFBOEQsRUFBOUQsRUFBaUUsRUFBakUsRUFBb0UsQ0FBcEUsRUFBc0UsRUFBdEUsRUFBeUUsQ0FBekUsRUFBMkUsRUFBM0UsRUFBOEUsRUFBOUUsRUFBaUYsRUFBakYsRUFBb0YsRUFBcEYsRUFBdUYsQ0FBdkYsRUFBeUYsQ0FBekYsRUFBMkYsRUFBM0YsRUFBOEYsQ0FBOUYsRUFBZ0csRUFBaEcsRUFBbUcsRUFBbkcsRUFBc0csRUFBdEcsRUFBeUcsQ0FBekcsRUFBMkcsRUFBM0csRUFBOEcsQ0FBOUcsRUFBZ0gsQ0FBaEgsRUFBa0gsRUFBbEgsRUFBcUgsQ0FBckgsRUFBdUgsQ0FBdkgsRUFBeUgsRUFBekgsRUFBNEgsRUFBNUgsRUFBK0gsRUFBL0gsRUFBa0ksRUFBbEksRUFBcUksRUFBckksRUFBd0ksRUFBeEksRUFBMkksQ0FBM0ksRUFBNkksQ0FBN0ksRUFBK0ksQ0FBL0ksRUFBaUosRUFBakosRUFBb0osQ0FBcEosRUFBc0osQ0FBdEosRUFBd0osQ0FBeEosRUFBMEosQ0FBMUosRUFBNEosQ0FBNUosRUFBOEosRUFBOUosRUFBaUssQ0FBakssRUFBbUssRUFBbkssRUFBc0ssQ0FBdEssRUFBd0ssRUFBeEssRUFBMkssQ0FBM0ssRUFBNkssQ0FBN0ssRUFBK0ssRUFBL0ssRUFBa0wsRUFBbEwsRUFBcUwsQ0FBckwsRUFBdUwsRUFBdkwsRUFBMEwsRUFBMUwsRUFBNkwsRUFBN0wsRUFBZ00sRUFBaE0sRUFBbU0sQ0FBbk0sRUFBcU0sQ0FBck0sRUFBdU0sQ0FBdk0s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R0FBQyxDQUFiO0FBQWU7QUFBMUssR0FEbnlYLEVBQys4WFAsQ0FEdDlYO0FBQ3c5WCxDQURqaGYsQ0FBRCxFQUVBIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIhZnVuY3Rpb24odCxyKXtcIm9iamVjdFwiPT10eXBlb2YgZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1leHBvcnRzPXIoKTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFtdLHIpOnQuQ3J5cHRvSlM9cigpfSh0aGlzLGZ1bmN0aW9uKCl7dmFyIHQ9dHx8ZnVuY3Rpb24odCxyKXt2YXIgZT1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe3ZhciBlO3JldHVybiB0LnByb3RvdHlwZT1yLGU9bmV3IHQsdC5wcm90b3R5cGU9bnVsbCxlfX0oKSxpPXt9LG49aS5saWI9e30sbz1uLkJhc2U9ZnVuY3Rpb24oKXtyZXR1cm57ZXh0ZW5kOmZ1bmN0aW9uKHQpe3ZhciByPWUodGhpcyk7cmV0dXJuIHQmJnIubWl4SW4odCksci5oYXNPd25Qcm9wZXJ0eShcImluaXRcIikmJnRoaXMuaW5pdCE9PXIuaW5pdHx8KHIuaW5pdD1mdW5jdGlvbigpe3IuJHN1cGVyLmluaXQuYXBwbHkodGhpcyxhcmd1bWVudHMpfSksci5pbml0LnByb3RvdHlwZT1yLHIuJHN1cGVyPXRoaXMscn0sY3JlYXRlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5leHRlbmQoKTtyZXR1cm4gdC5pbml0LmFwcGx5KHQsYXJndW1lbnRzKSx0fSxpbml0OmZ1bmN0aW9uKCl7fSxtaXhJbjpmdW5jdGlvbih0KXtmb3IodmFyIHIgaW4gdCl0Lmhhc093blByb3BlcnR5KHIpJiYodGhpc1tyXT10W3JdKTt0Lmhhc093blByb3BlcnR5KFwidG9TdHJpbmdcIikmJih0aGlzLnRvU3RyaW5nPXQudG9TdHJpbmcpfSxjbG9uZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmluaXQucHJvdG90eXBlLmV4dGVuZCh0aGlzKX19fSgpLHM9bi5Xb3JkQXJyYXk9by5leHRlbmQoe2luaXQ6ZnVuY3Rpb24odCxlKXt0PXRoaXMud29yZHM9dHx8W10sZSE9cj90aGlzLnNpZ0J5dGVzPWU6dGhpcy5zaWdCeXRlcz00KnQubGVuZ3RofSx0b1N0cmluZzpmdW5jdGlvbih0KXtyZXR1cm4odHx8Yykuc3RyaW5naWZ5KHRoaXMpfSxjb25jYXQ6ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy53b3JkcyxlPXQud29yZHMsaT10aGlzLnNpZ0J5dGVzLG49dC5zaWdCeXRlcztpZih0aGlzLmNsYW1wKCksaSU0KWZvcih2YXIgbz0wO288bjtvKyspe3ZhciBzPWVbbz4+PjJdPj4+MjQtbyU0KjgmMjU1O3JbaStvPj4+Ml18PXM8PDI0LShpK28pJTQqOH1lbHNlIGZvcih2YXIgbz0wO288bjtvKz00KXJbaStvPj4+Ml09ZVtvPj4+Ml07cmV0dXJuIHRoaXMuc2lnQnl0ZXMrPW4sdGhpc30sY2xhbXA6ZnVuY3Rpb24oKXt2YXIgcj10aGlzLndvcmRzLGU9dGhpcy5zaWdCeXRlcztyW2U+Pj4yXSY9NDI5NDk2NzI5NTw8MzItZSU0Kjgsci5sZW5ndGg9dC5jZWlsKGUvNCl9LGNsb25lOmZ1bmN0aW9uKCl7dmFyIHQ9by5jbG9uZS5jYWxsKHRoaXMpO3JldHVybiB0LndvcmRzPXRoaXMud29yZHMuc2xpY2UoMCksdH0scmFuZG9tOmZ1bmN0aW9uKHIpe2Zvcih2YXIgZSxpPVtdLG49ZnVuY3Rpb24ocil7dmFyIHI9cixlPTk4NzY1NDMyMSxpPTQyOTQ5NjcyOTU7cmV0dXJuIGZ1bmN0aW9uKCl7ZT0zNjk2OSooNjU1MzUmZSkrKGU+PjE2KSZpLHI9MThlMyooNjU1MzUmcikrKHI+PjE2KSZpO3ZhciBuPShlPDwxNikrciZpO3JldHVybiBuLz00Mjk0OTY3Mjk2LG4rPS41LG4qKHQucmFuZG9tKCk+LjU/MTotMSl9fSxvPTA7bzxyO28rPTQpe3ZhciBhPW4oNDI5NDk2NzI5NiooZXx8dC5yYW5kb20oKSkpO2U9OTg3NjU0MDcxKmEoKSxpLnB1c2goNDI5NDk2NzI5NiphKCl8MCl9cmV0dXJuIG5ldyBzLmluaXQoaSxyKX19KSxhPWkuZW5jPXt9LGM9YS5IZXg9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXtmb3IodmFyIHI9dC53b3JkcyxlPXQuc2lnQnl0ZXMsaT1bXSxuPTA7bjxlO24rKyl7dmFyIG89cltuPj4+Ml0+Pj4yNC1uJTQqOCYyNTU7aS5wdXNoKChvPj4+NCkudG9TdHJpbmcoMTYpKSxpLnB1c2goKDE1Jm8pLnRvU3RyaW5nKDE2KSl9cmV0dXJuIGkuam9pbihcIlwiKX0scGFyc2U6ZnVuY3Rpb24odCl7Zm9yKHZhciByPXQubGVuZ3RoLGU9W10saT0wO2k8cjtpKz0yKWVbaT4+PjNdfD1wYXJzZUludCh0LnN1YnN0cihpLDIpLDE2KTw8MjQtaSU4KjQ7cmV0dXJuIG5ldyBzLmluaXQoZSxyLzIpfX0saD1hLkxhdGluMT17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10LndvcmRzLGU9dC5zaWdCeXRlcyxpPVtdLG49MDtuPGU7bisrKXt2YXIgbz1yW24+Pj4yXT4+PjI0LW4lNCo4JjI1NTtpLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShvKSl9cmV0dXJuIGkuam9pbihcIlwiKX0scGFyc2U6ZnVuY3Rpb24odCl7Zm9yKHZhciByPXQubGVuZ3RoLGU9W10saT0wO2k8cjtpKyspZVtpPj4+Ml18PSgyNTUmdC5jaGFyQ29kZUF0KGkpKTw8MjQtaSU0Kjg7cmV0dXJuIG5ldyBzLmluaXQoZSxyKX19LGw9YS5VdGY4PXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7dHJ5e3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoZXNjYXBlKGguc3RyaW5naWZ5KHQpKSl9Y2F0Y2godCl7dGhyb3cgbmV3IEVycm9yKFwiTWFsZm9ybWVkIFVURi04IGRhdGFcIil9fSxwYXJzZTpmdW5jdGlvbih0KXtyZXR1cm4gaC5wYXJzZSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQodCkpKX19LGY9bi5CdWZmZXJlZEJsb2NrQWxnb3JpdGhtPW8uZXh0ZW5kKHtyZXNldDpmdW5jdGlvbigpe3RoaXMuX2RhdGE9bmV3IHMuaW5pdCx0aGlzLl9uRGF0YUJ5dGVzPTB9LF9hcHBlbmQ6ZnVuY3Rpb24odCl7XCJzdHJpbmdcIj09dHlwZW9mIHQmJih0PWwucGFyc2UodCkpLHRoaXMuX2RhdGEuY29uY2F0KHQpLHRoaXMuX25EYXRhQnl0ZXMrPXQuc2lnQnl0ZXN9LF9wcm9jZXNzOmZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMuX2RhdGEsaT1lLndvcmRzLG49ZS5zaWdCeXRlcyxvPXRoaXMuYmxvY2tTaXplLGE9NCpvLGM9bi9hO2M9cj90LmNlaWwoYyk6dC5tYXgoKDB8YyktdGhpcy5fbWluQnVmZmVyU2l6ZSwwKTt2YXIgaD1jKm8sbD10Lm1pbig0Kmgsbik7aWYoaCl7Zm9yKHZhciBmPTA7ZjxoO2YrPW8pdGhpcy5fZG9Qcm9jZXNzQmxvY2soaSxmKTt2YXIgdT1pLnNwbGljZSgwLGgpO2Uuc2lnQnl0ZXMtPWx9cmV0dXJuIG5ldyBzLmluaXQodSxsKX0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1vLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQuX2RhdGE9dGhpcy5fZGF0YS5jbG9uZSgpLHR9LF9taW5CdWZmZXJTaXplOjB9KSx1PShuLkhhc2hlcj1mLmV4dGVuZCh7Y2ZnOm8uZXh0ZW5kKCksaW5pdDpmdW5jdGlvbih0KXt0aGlzLmNmZz10aGlzLmNmZy5leHRlbmQodCksdGhpcy5yZXNldCgpfSxyZXNldDpmdW5jdGlvbigpe2YucmVzZXQuY2FsbCh0aGlzKSx0aGlzLl9kb1Jlc2V0KCl9LHVwZGF0ZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fYXBwZW5kKHQpLHRoaXMuX3Byb2Nlc3MoKSx0aGlzfSxmaW5hbGl6ZTpmdW5jdGlvbih0KXt0JiZ0aGlzLl9hcHBlbmQodCk7dmFyIHI9dGhpcy5fZG9GaW5hbGl6ZSgpO3JldHVybiByfSxibG9ja1NpemU6MTYsX2NyZWF0ZUhlbHBlcjpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24ocixlKXtyZXR1cm4gbmV3IHQuaW5pdChlKS5maW5hbGl6ZShyKX19LF9jcmVhdGVIbWFjSGVscGVyOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUpe3JldHVybiBuZXcgdS5ITUFDLmluaXQodCxlKS5maW5hbGl6ZShyKX19fSksaS5hbGdvPXt9KTtyZXR1cm4gaX0oTWF0aCk7cmV0dXJuIGZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0LHIsZSl7Zm9yKHZhciBpPVtdLG89MCxzPTA7czxyO3MrKylpZihzJTQpe3ZhciBhPWVbdC5jaGFyQ29kZUF0KHMtMSldPDxzJTQqMixjPWVbdC5jaGFyQ29kZUF0KHMpXT4+PjYtcyU0KjI7aVtvPj4+Ml18PShhfGMpPDwyNC1vJTQqOCxvKyt9cmV0dXJuIG4uY3JlYXRlKGksbyl9dmFyIGU9dCxpPWUubGliLG49aS5Xb3JkQXJyYXksbz1lLmVuYztvLkJhc2U2ND17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe3ZhciByPXQud29yZHMsZT10LnNpZ0J5dGVzLGk9dGhpcy5fbWFwO3QuY2xhbXAoKTtmb3IodmFyIG49W10sbz0wO288ZTtvKz0zKWZvcih2YXIgcz1yW28+Pj4yXT4+PjI0LW8lNCo4JjI1NSxhPXJbbysxPj4+Ml0+Pj4yNC0obysxKSU0KjgmMjU1LGM9cltvKzI+Pj4yXT4+PjI0LShvKzIpJTQqOCYyNTUsaD1zPDwxNnxhPDw4fGMsbD0wO2w8NCYmbysuNzUqbDxlO2wrKyluLnB1c2goaS5jaGFyQXQoaD4+PjYqKDMtbCkmNjMpKTt2YXIgZj1pLmNoYXJBdCg2NCk7aWYoZilmb3IoO24ubGVuZ3RoJTQ7KW4ucHVzaChmKTtyZXR1cm4gbi5qb2luKFwiXCIpfSxwYXJzZTpmdW5jdGlvbih0KXt2YXIgZT10Lmxlbmd0aCxpPXRoaXMuX21hcCxuPXRoaXMuX3JldmVyc2VNYXA7aWYoIW4pe249dGhpcy5fcmV2ZXJzZU1hcD1bXTtmb3IodmFyIG89MDtvPGkubGVuZ3RoO28rKyluW2kuY2hhckNvZGVBdChvKV09b312YXIgcz1pLmNoYXJBdCg2NCk7aWYocyl7dmFyIGE9dC5pbmRleE9mKHMpO2EhPT0tMSYmKGU9YSl9cmV0dXJuIHIodCxlLG4pfSxfbWFwOlwiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz1cIn19KCksZnVuY3Rpb24ocil7ZnVuY3Rpb24gZSh0LHIsZSxpLG4sbyxzKXt2YXIgYT10KyhyJmV8fnImaSkrbitzO3JldHVybihhPDxvfGE+Pj4zMi1vKStyfWZ1bmN0aW9uIGkodCxyLGUsaSxuLG8scyl7dmFyIGE9dCsociZpfGUmfmkpK24rcztyZXR1cm4oYTw8b3xhPj4+MzItbykrcn1mdW5jdGlvbiBuKHQscixlLGksbixvLHMpe3ZhciBhPXQrKHJeZV5pKStuK3M7cmV0dXJuKGE8PG98YT4+PjMyLW8pK3J9ZnVuY3Rpb24gbyh0LHIsZSxpLG4sbyxzKXt2YXIgYT10KyhlXihyfH5pKSkrbitzO3JldHVybihhPDxvfGE+Pj4zMi1vKStyfXZhciBzPXQsYT1zLmxpYixjPWEuV29yZEFycmF5LGg9YS5IYXNoZXIsbD1zLmFsZ28sZj1bXTshZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDt0PDY0O3QrKylmW3RdPTQyOTQ5NjcyOTYqci5hYnMoci5zaW4odCsxKSl8MH0oKTt2YXIgdT1sLk1ENT1oLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBjLmluaXQoWzE3MzI1ODQxOTMsNDAyMzIzMzQxNywyNTYyMzgzMTAyLDI3MTczMzg3OF0pfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXtmb3IodmFyIHM9MDtzPDE2O3MrKyl7dmFyIGE9citzLGM9dFthXTt0W2FdPTE2NzExOTM1JihjPDw4fGM+Pj4yNCl8NDI3ODI1NTM2MCYoYzw8MjR8Yz4+PjgpfXZhciBoPXRoaXMuX2hhc2gud29yZHMsbD10W3IrMF0sdT10W3IrMV0sZD10W3IrMl0sdj10W3IrM10scD10W3IrNF0sXz10W3IrNV0seT10W3IrNl0sZz10W3IrN10sQj10W3IrOF0sdz10W3IrOV0saz10W3IrMTBdLFM9dFtyKzExXSxtPXRbcisxMl0seD10W3IrMTNdLGI9dFtyKzE0XSxIPXRbcisxNV0sej1oWzBdLEE9aFsxXSxDPWhbMl0sRD1oWzNdO3o9ZSh6LEEsQyxELGwsNyxmWzBdKSxEPWUoRCx6LEEsQyx1LDEyLGZbMV0pLEM9ZShDLEQseixBLGQsMTcsZlsyXSksQT1lKEEsQyxELHosdiwyMixmWzNdKSx6PWUoeixBLEMsRCxwLDcsZls0XSksRD1lKEQseixBLEMsXywxMixmWzVdKSxDPWUoQyxELHosQSx5LDE3LGZbNl0pLEE9ZShBLEMsRCx6LGcsMjIsZls3XSksej1lKHosQSxDLEQsQiw3LGZbOF0pLEQ9ZShELHosQSxDLHcsMTIsZls5XSksQz1lKEMsRCx6LEEsaywxNyxmWzEwXSksQT1lKEEsQyxELHosUywyMixmWzExXSksej1lKHosQSxDLEQsbSw3LGZbMTJdKSxEPWUoRCx6LEEsQyx4LDEyLGZbMTNdKSxDPWUoQyxELHosQSxiLDE3LGZbMTRdKSxBPWUoQSxDLEQseixILDIyLGZbMTVdKSx6PWkoeixBLEMsRCx1LDUsZlsxNl0pLEQ9aShELHosQSxDLHksOSxmWzE3XSksQz1pKEMsRCx6LEEsUywxNCxmWzE4XSksQT1pKEEsQyxELHosbCwyMCxmWzE5XSksej1pKHosQSxDLEQsXyw1LGZbMjBdKSxEPWkoRCx6LEEsQyxrLDksZlsyMV0pLEM9aShDLEQseixBLEgsMTQsZlsyMl0pLEE9aShBLEMsRCx6LHAsMjAsZlsyM10pLHo9aSh6LEEsQyxELHcsNSxmWzI0XSksRD1pKEQseixBLEMsYiw5LGZbMjVdKSxDPWkoQyxELHosQSx2LDE0LGZbMjZdKSxBPWkoQSxDLEQseixCLDIwLGZbMjddKSx6PWkoeixBLEMsRCx4LDUsZlsyOF0pLEQ9aShELHosQSxDLGQsOSxmWzI5XSksQz1pKEMsRCx6LEEsZywxNCxmWzMwXSksQT1pKEEsQyxELHosbSwyMCxmWzMxXSksej1uKHosQSxDLEQsXyw0LGZbMzJdKSxEPW4oRCx6LEEsQyxCLDExLGZbMzNdKSxDPW4oQyxELHosQSxTLDE2LGZbMzRdKSxBPW4oQSxDLEQseixiLDIzLGZbMzVdKSx6PW4oeixBLEMsRCx1LDQsZlszNl0pLEQ9bihELHosQSxDLHAsMTEsZlszN10pLEM9bihDLEQseixBLGcsMTYsZlszOF0pLEE9bihBLEMsRCx6LGssMjMsZlszOV0pLHo9bih6LEEsQyxELHgsNCxmWzQwXSksRD1uKEQseixBLEMsbCwxMSxmWzQxXSksQz1uKEMsRCx6LEEsdiwxNixmWzQyXSksQT1uKEEsQyxELHoseSwyMyxmWzQzXSksej1uKHosQSxDLEQsdyw0LGZbNDRdKSxEPW4oRCx6LEEsQyxtLDExLGZbNDVdKSxDPW4oQyxELHosQSxILDE2LGZbNDZdKSxBPW4oQSxDLEQseixkLDIzLGZbNDddKSx6PW8oeixBLEMsRCxsLDYsZls0OF0pLEQ9byhELHosQSxDLGcsMTAsZls0OV0pLEM9byhDLEQseixBLGIsMTUsZls1MF0pLEE9byhBLEMsRCx6LF8sMjEsZls1MV0pLHo9byh6LEEsQyxELG0sNixmWzUyXSksRD1vKEQseixBLEMsdiwxMCxmWzUzXSksQz1vKEMsRCx6LEEsaywxNSxmWzU0XSksQT1vKEEsQyxELHosdSwyMSxmWzU1XSksej1vKHosQSxDLEQsQiw2LGZbNTZdKSxEPW8oRCx6LEEsQyxILDEwLGZbNTddKSxDPW8oQyxELHosQSx5LDE1LGZbNThdKSxBPW8oQSxDLEQseix4LDIxLGZbNTldKSx6PW8oeixBLEMsRCxwLDYsZls2MF0pLEQ9byhELHosQSxDLFMsMTAsZls2MV0pLEM9byhDLEQseixBLGQsMTUsZls2Ml0pLEE9byhBLEMsRCx6LHcsMjEsZls2M10pLGhbMF09aFswXSt6fDAsaFsxXT1oWzFdK0F8MCxoWzJdPWhbMl0rQ3wwLGhbM109aFszXStEfDB9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxlPXQud29yZHMsaT04KnRoaXMuX25EYXRhQnl0ZXMsbj04KnQuc2lnQnl0ZXM7ZVtuPj4+NV18PTEyODw8MjQtbiUzMjt2YXIgbz1yLmZsb29yKGkvNDI5NDk2NzI5Nikscz1pO2VbKG4rNjQ+Pj45PDw0KSsxNV09MTY3MTE5MzUmKG88PDh8bz4+PjI0KXw0Mjc4MjU1MzYwJihvPDwyNHxvPj4+OCksZVsobis2ND4+Pjk8PDQpKzE0XT0xNjcxMTkzNSYoczw8OHxzPj4+MjQpfDQyNzgyNTUzNjAmKHM8PDI0fHM+Pj44KSx0LnNpZ0J5dGVzPTQqKGUubGVuZ3RoKzEpLHRoaXMuX3Byb2Nlc3MoKTtmb3IodmFyIGE9dGhpcy5faGFzaCxjPWEud29yZHMsaD0wO2g8NDtoKyspe3ZhciBsPWNbaF07Y1toXT0xNjcxMTkzNSYobDw8OHxsPj4+MjQpfDQyNzgyNTUzNjAmKGw8PDI0fGw+Pj44KX1yZXR1cm4gYX0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1oLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQuX2hhc2g9dGhpcy5faGFzaC5jbG9uZSgpLHR9fSk7cy5NRDU9aC5fY3JlYXRlSGVscGVyKHUpLHMuSG1hY01ENT1oLl9jcmVhdGVIbWFjSGVscGVyKHUpfShNYXRoKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLmxpYixpPWUuV29yZEFycmF5LG49ZS5IYXNoZXIsbz1yLmFsZ28scz1bXSxhPW8uU0hBMT1uLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBpLmluaXQoWzE3MzI1ODQxOTMsNDAyMzIzMzQxNywyNTYyMzgzMTAyLDI3MTczMzg3OCwzMjg1Mzc3NTIwXSl9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT10aGlzLl9oYXNoLndvcmRzLGk9ZVswXSxuPWVbMV0sbz1lWzJdLGE9ZVszXSxjPWVbNF0saD0wO2g8ODA7aCsrKXtpZihoPDE2KXNbaF09MHx0W3IraF07ZWxzZXt2YXIgbD1zW2gtM11ec1toLThdXnNbaC0xNF1ec1toLTE2XTtzW2hdPWw8PDF8bD4+PjMxfXZhciBmPShpPDw1fGk+Pj4yNykrYytzW2hdO2YrPWg8MjA/KG4mb3x+biZhKSsxNTE4NTAwMjQ5Omg8NDA/KG5eb15hKSsxODU5Nzc1MzkzOmg8NjA/KG4mb3xuJmF8byZhKS0xODk0MDA3NTg4OihuXm9eYSktODk5NDk3NTE0LGM9YSxhPW8sbz1uPDwzMHxuPj4+MixuPWksaT1mfWVbMF09ZVswXStpfDAsZVsxXT1lWzFdK258MCxlWzJdPWVbMl0rb3wwLGVbM109ZVszXSthfDAsZVs0XT1lWzRdK2N8MH0sX2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9kYXRhLHI9dC53b3JkcyxlPTgqdGhpcy5fbkRhdGFCeXRlcyxpPTgqdC5zaWdCeXRlcztyZXR1cm4gcltpPj4+NV18PTEyODw8MjQtaSUzMixyWyhpKzY0Pj4+OTw8NCkrMTRdPU1hdGguZmxvb3IoZS80Mjk0OTY3Mjk2KSxyWyhpKzY0Pj4+OTw8NCkrMTVdPWUsdC5zaWdCeXRlcz00KnIubGVuZ3RoLHRoaXMuX3Byb2Nlc3MoKSx0aGlzLl9oYXNofSxjbG9uZTpmdW5jdGlvbigpe3ZhciB0PW4uY2xvbmUuY2FsbCh0aGlzKTtyZXR1cm4gdC5faGFzaD10aGlzLl9oYXNoLmNsb25lKCksdH19KTtyLlNIQTE9bi5fY3JlYXRlSGVscGVyKGEpLHIuSG1hY1NIQTE9bi5fY3JlYXRlSG1hY0hlbHBlcihhKX0oKSxmdW5jdGlvbihyKXt2YXIgZT10LGk9ZS5saWIsbj1pLldvcmRBcnJheSxvPWkuSGFzaGVyLHM9ZS5hbGdvLGE9W10sYz1bXTshZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe2Zvcih2YXIgZT1yLnNxcnQodCksaT0yO2k8PWU7aSsrKWlmKCEodCVpKSlyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBlKHQpe3JldHVybiA0Mjk0OTY3Mjk2Kih0LSgwfHQpKXwwfWZvcih2YXIgaT0yLG49MDtuPDY0Oyl0KGkpJiYobjw4JiYoYVtuXT1lKHIucG93KGksLjUpKSksY1tuXT1lKHIucG93KGksMS8zKSksbisrKSxpKyt9KCk7dmFyIGg9W10sbD1zLlNIQTI1Nj1vLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBuLmluaXQoYS5zbGljZSgwKSl9LF9kb1Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT10aGlzLl9oYXNoLndvcmRzLGk9ZVswXSxuPWVbMV0sbz1lWzJdLHM9ZVszXSxhPWVbNF0sbD1lWzVdLGY9ZVs2XSx1PWVbN10sZD0wO2Q8NjQ7ZCsrKXtpZihkPDE2KWhbZF09MHx0W3IrZF07ZWxzZXt2YXIgdj1oW2QtMTVdLHA9KHY8PDI1fHY+Pj43KV4odjw8MTR8dj4+PjE4KV52Pj4+MyxfPWhbZC0yXSx5PShfPDwxNXxfPj4+MTcpXihfPDwxM3xfPj4+MTkpXl8+Pj4xMDtoW2RdPXAraFtkLTddK3kraFtkLTE2XX12YXIgZz1hJmxefmEmZixCPWkmbl5pJm9ebiZvLHc9KGk8PDMwfGk+Pj4yKV4oaTw8MTl8aT4+PjEzKV4oaTw8MTB8aT4+PjIyKSxrPShhPDwyNnxhPj4+NileKGE8PDIxfGE+Pj4xMSleKGE8PDd8YT4+PjI1KSxTPXUraytnK2NbZF0raFtkXSxtPXcrQjt1PWYsZj1sLGw9YSxhPXMrU3wwLHM9byxvPW4sbj1pLGk9UyttfDB9ZVswXT1lWzBdK2l8MCxlWzFdPWVbMV0rbnwwLGVbMl09ZVsyXStvfDAsZVszXT1lWzNdK3N8MCxlWzRdPWVbNF0rYXwwLGVbNV09ZVs1XStsfDAsZVs2XT1lWzZdK2Z8MCxlWzddPWVbN10rdXwwfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2RhdGEsZT10LndvcmRzLGk9OCp0aGlzLl9uRGF0YUJ5dGVzLG49OCp0LnNpZ0J5dGVzO3JldHVybiBlW24+Pj41XXw9MTI4PDwyNC1uJTMyLGVbKG4rNjQ+Pj45PDw0KSsxNF09ci5mbG9vcihpLzQyOTQ5NjcyOTYpLGVbKG4rNjQ+Pj45PDw0KSsxNV09aSx0LnNpZ0J5dGVzPTQqZS5sZW5ndGgsdGhpcy5fcHJvY2VzcygpLHRoaXMuX2hhc2h9LGNsb25lOmZ1bmN0aW9uKCl7dmFyIHQ9by5jbG9uZS5jYWxsKHRoaXMpO3JldHVybiB0Ll9oYXNoPXRoaXMuX2hhc2guY2xvbmUoKSx0fX0pO2UuU0hBMjU2PW8uX2NyZWF0ZUhlbHBlcihsKSxlLkhtYWNTSEEyNTY9by5fY3JlYXRlSG1hY0hlbHBlcihsKX0oTWF0aCksZnVuY3Rpb24oKXtmdW5jdGlvbiByKHQpe3JldHVybiB0PDw4JjQyNzgyNTUzNjB8dD4+PjgmMTY3MTE5MzV9dmFyIGU9dCxpPWUubGliLG49aS5Xb3JkQXJyYXksbz1lLmVuYztvLlV0ZjE2PW8uVXRmMTZCRT17c3RyaW5naWZ5OmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10LndvcmRzLGU9dC5zaWdCeXRlcyxpPVtdLG49MDtuPGU7bis9Mil7dmFyIG89cltuPj4+Ml0+Pj4xNi1uJTQqOCY2NTUzNTtpLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShvKSl9cmV0dXJuIGkuam9pbihcIlwiKX0scGFyc2U6ZnVuY3Rpb24odCl7Zm9yKHZhciByPXQubGVuZ3RoLGU9W10saT0wO2k8cjtpKyspZVtpPj4+MV18PXQuY2hhckNvZGVBdChpKTw8MTYtaSUyKjE2O3JldHVybiBuLmNyZWF0ZShlLDIqcil9fTtvLlV0ZjE2TEU9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXtmb3IodmFyIGU9dC53b3JkcyxpPXQuc2lnQnl0ZXMsbj1bXSxvPTA7bzxpO28rPTIpe3ZhciBzPXIoZVtvPj4+Ml0+Pj4xNi1vJTQqOCY2NTUzNSk7bi5wdXNoKFN0cmluZy5mcm9tQ2hhckNvZGUocykpfXJldHVybiBuLmpvaW4oXCJcIil9LHBhcnNlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aCxpPVtdLG89MDtvPGU7bysrKWlbbz4+PjFdfD1yKHQuY2hhckNvZGVBdChvKTw8MTYtbyUyKjE2KTtyZXR1cm4gbi5jcmVhdGUoaSwyKmUpfX19KCksZnVuY3Rpb24oKXtpZihcImZ1bmN0aW9uXCI9PXR5cGVvZiBBcnJheUJ1ZmZlcil7dmFyIHI9dCxlPXIubGliLGk9ZS5Xb3JkQXJyYXksbj1pLmluaXQsbz1pLmluaXQ9ZnVuY3Rpb24odCl7aWYodCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyJiYodD1uZXcgVWludDhBcnJheSh0KSksKHQgaW5zdGFuY2VvZiBJbnQ4QXJyYXl8fFwidW5kZWZpbmVkXCIhPXR5cGVvZiBVaW50OENsYW1wZWRBcnJheSYmdCBpbnN0YW5jZW9mIFVpbnQ4Q2xhbXBlZEFycmF5fHx0IGluc3RhbmNlb2YgSW50MTZBcnJheXx8dCBpbnN0YW5jZW9mIFVpbnQxNkFycmF5fHx0IGluc3RhbmNlb2YgSW50MzJBcnJheXx8dCBpbnN0YW5jZW9mIFVpbnQzMkFycmF5fHx0IGluc3RhbmNlb2YgRmxvYXQzMkFycmF5fHx0IGluc3RhbmNlb2YgRmxvYXQ2NEFycmF5KSYmKHQ9bmV3IFVpbnQ4QXJyYXkodC5idWZmZXIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCkpLHQgaW5zdGFuY2VvZiBVaW50OEFycmF5KXtmb3IodmFyIHI9dC5ieXRlTGVuZ3RoLGU9W10saT0wO2k8cjtpKyspZVtpPj4+Ml18PXRbaV08PDI0LWklNCo4O24uY2FsbCh0aGlzLGUscil9ZWxzZSBuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07by5wcm90b3R5cGU9aX19KCksZnVuY3Rpb24ocil7ZnVuY3Rpb24gZSh0LHIsZSl7cmV0dXJuIHRecl5lfWZ1bmN0aW9uIGkodCxyLGUpe3JldHVybiB0JnJ8fnQmZX1mdW5jdGlvbiBuKHQscixlKXtyZXR1cm4odHx+cileZX1mdW5jdGlvbiBvKHQscixlKXtyZXR1cm4gdCZlfHImfmV9ZnVuY3Rpb24gcyh0LHIsZSl7cmV0dXJuIHReKHJ8fmUpfWZ1bmN0aW9uIGEodCxyKXtyZXR1cm4gdDw8cnx0Pj4+MzItcn12YXIgYz10LGg9Yy5saWIsbD1oLldvcmRBcnJheSxmPWguSGFzaGVyLHU9Yy5hbGdvLGQ9bC5jcmVhdGUoWzAsMSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsNyw0LDEzLDEsMTAsNiwxNSwzLDEyLDAsOSw1LDIsMTQsMTEsOCwzLDEwLDE0LDQsOSwxNSw4LDEsMiw3LDAsNiwxMywxMSw1LDEyLDEsOSwxMSwxMCwwLDgsMTIsNCwxMywzLDcsMTUsMTQsNSw2LDIsNCwwLDUsOSw3LDEyLDIsMTAsMTQsMSwzLDgsMTEsNiwxNSwxM10pLHY9bC5jcmVhdGUoWzUsMTQsNywwLDksMiwxMSw0LDEzLDYsMTUsOCwxLDEwLDMsMTIsNiwxMSwzLDcsMCwxMyw1LDEwLDE0LDE1LDgsMTIsNCw5LDEsMiwxNSw1LDEsMyw3LDE0LDYsOSwxMSw4LDEyLDIsMTAsMCw0LDEzLDgsNiw0LDEsMywxMSwxNSwwLDUsMTIsMiwxMyw5LDcsMTAsMTQsMTIsMTUsMTAsNCwxLDUsOCw3LDYsMiwxMywxNCwwLDMsOSwxMV0pLHA9bC5jcmVhdGUoWzExLDE0LDE1LDEyLDUsOCw3LDksMTEsMTMsMTQsMTUsNiw3LDksOCw3LDYsOCwxMywxMSw5LDcsMTUsNywxMiwxNSw5LDExLDcsMTMsMTIsMTEsMTMsNiw3LDE0LDksMTMsMTUsMTQsOCwxMyw2LDUsMTIsNyw1LDExLDEyLDE0LDE1LDE0LDE1LDksOCw5LDE0LDUsNiw4LDYsNSwxMiw5LDE1LDUsMTEsNiw4LDEzLDEyLDUsMTIsMTMsMTQsMTEsOCw1LDZdKSxfPWwuY3JlYXRlKFs4LDksOSwxMSwxMywxNSwxNSw1LDcsNyw4LDExLDE0LDE0LDEyLDYsOSwxMywxNSw3LDEyLDgsOSwxMSw3LDcsMTIsNyw2LDE1LDEzLDExLDksNywxNSwxMSw4LDYsNiwxNCwxMiwxMyw1LDE0LDEzLDEzLDcsNSwxNSw1LDgsMTEsMTQsMTQsNiwxNCw2LDksMTIsOSwxMiw1LDE1LDgsOCw1LDEyLDksMTIsNSwxNCw2LDgsMTMsNiw1LDE1LDEzLDExLDExXSkseT1sLmNyZWF0ZShbMCwxNTE4NTAwMjQ5LDE4NTk3NzUzOTMsMjQwMDk1OTcwOCwyODQwODUzODM4XSksZz1sLmNyZWF0ZShbMTM1MjgyOTkyNiwxNTQ4NjAzNjg0LDE4MzYwNzI2OTEsMjA1Mzk5NDIxNywwXSksQj11LlJJUEVNRDE2MD1mLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPWwuY3JlYXRlKFsxNzMyNTg0MTkzLDQwMjMyMzM0MTcsMjU2MjM4MzEwMiwyNzE3MzM4NzgsMzI4NTM3NzUyMF0pfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXtmb3IodmFyIGM9MDtjPDE2O2MrKyl7dmFyIGg9citjLGw9dFtoXTt0W2hdPTE2NzExOTM1JihsPDw4fGw+Pj4yNCl8NDI3ODI1NTM2MCYobDw8MjR8bD4+PjgpfXZhciBmLHUsQix3LGssUyxtLHgsYixILHo9dGhpcy5faGFzaC53b3JkcyxBPXkud29yZHMsQz1nLndvcmRzLEQ9ZC53b3JkcyxSPXYud29yZHMsRT1wLndvcmRzLE09Xy53b3JkcztTPWY9elswXSxtPXU9elsxXSx4PUI9elsyXSxiPXc9elszXSxIPWs9els0XTtmb3IodmFyIEYsYz0wO2M8ODA7Yys9MSlGPWYrdFtyK0RbY11dfDAsRis9YzwxNj9lKHUsQix3KStBWzBdOmM8MzI/aSh1LEIsdykrQVsxXTpjPDQ4P24odSxCLHcpK0FbMl06Yzw2ND9vKHUsQix3KStBWzNdOnModSxCLHcpK0FbNF0sRnw9MCxGPWEoRixFW2NdKSxGPUYra3wwLGY9ayxrPXcsdz1hKEIsMTApLEI9dSx1PUYsRj1TK3RbcitSW2NdXXwwLEYrPWM8MTY/cyhtLHgsYikrQ1swXTpjPDMyP28obSx4LGIpK0NbMV06Yzw0OD9uKG0seCxiKStDWzJdOmM8NjQ/aShtLHgsYikrQ1szXTplKG0seCxiKStDWzRdLEZ8PTAsRj1hKEYsTVtjXSksRj1GK0h8MCxTPUgsSD1iLGI9YSh4LDEwKSx4PW0sbT1GO0Y9elsxXStCK2J8MCx6WzFdPXpbMl0rdytIfDAselsyXT16WzNdK2srU3wwLHpbM109els0XStmK218MCx6WzRdPXpbMF0rdSt4fDAselswXT1GfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2RhdGEscj10LndvcmRzLGU9OCp0aGlzLl9uRGF0YUJ5dGVzLGk9OCp0LnNpZ0J5dGVzO3JbaT4+PjVdfD0xMjg8PDI0LWklMzIsclsoaSs2ND4+Pjk8PDQpKzE0XT0xNjcxMTkzNSYoZTw8OHxlPj4+MjQpfDQyNzgyNTUzNjAmKGU8PDI0fGU+Pj44KSx0LnNpZ0J5dGVzPTQqKHIubGVuZ3RoKzEpLHRoaXMuX3Byb2Nlc3MoKTtmb3IodmFyIG49dGhpcy5faGFzaCxvPW4ud29yZHMscz0wO3M8NTtzKyspe3ZhciBhPW9bc107b1tzXT0xNjcxMTkzNSYoYTw8OHxhPj4+MjQpfDQyNzgyNTUzNjAmKGE8PDI0fGE+Pj44KX1yZXR1cm4gbn0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1mLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQuX2hhc2g9dGhpcy5faGFzaC5jbG9uZSgpLHR9fSk7Yy5SSVBFTUQxNjA9Zi5fY3JlYXRlSGVscGVyKEIpLGMuSG1hY1JJUEVNRDE2MD1mLl9jcmVhdGVIbWFjSGVscGVyKEIpfShNYXRoKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLmxpYixpPWUuQmFzZSxuPXIuZW5jLG89bi5VdGY4LHM9ci5hbGdvO3MuSE1BQz1pLmV4dGVuZCh7aW5pdDpmdW5jdGlvbih0LHIpe3Q9dGhpcy5faGFzaGVyPW5ldyB0LmluaXQsXCJzdHJpbmdcIj09dHlwZW9mIHImJihyPW8ucGFyc2UocikpO3ZhciBlPXQuYmxvY2tTaXplLGk9NCplO3Iuc2lnQnl0ZXM+aSYmKHI9dC5maW5hbGl6ZShyKSksci5jbGFtcCgpO2Zvcih2YXIgbj10aGlzLl9vS2V5PXIuY2xvbmUoKSxzPXRoaXMuX2lLZXk9ci5jbG9uZSgpLGE9bi53b3JkcyxjPXMud29yZHMsaD0wO2g8ZTtoKyspYVtoXV49MTU0OTU1NjgyOCxjW2hdXj05MDk1MjI0ODY7bi5zaWdCeXRlcz1zLnNpZ0J5dGVzPWksdGhpcy5yZXNldCgpfSxyZXNldDpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2hhc2hlcjt0LnJlc2V0KCksdC51cGRhdGUodGhpcy5faUtleSl9LHVwZGF0ZTpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5faGFzaGVyLnVwZGF0ZSh0KSx0aGlzfSxmaW5hbGl6ZTpmdW5jdGlvbih0KXt2YXIgcj10aGlzLl9oYXNoZXIsZT1yLmZpbmFsaXplKHQpO3IucmVzZXQoKTt2YXIgaT1yLmZpbmFsaXplKHRoaXMuX29LZXkuY2xvbmUoKS5jb25jYXQoZSkpO3JldHVybiBpfX0pfSgpLGZ1bmN0aW9uKCl7dmFyIHI9dCxlPXIubGliLGk9ZS5CYXNlLG49ZS5Xb3JkQXJyYXksbz1yLmFsZ28scz1vLlNIQTEsYT1vLkhNQUMsYz1vLlBCS0RGMj1pLmV4dGVuZCh7Y2ZnOmkuZXh0ZW5kKHtrZXlTaXplOjQsaGFzaGVyOnMsaXRlcmF0aW9uczoxfSksaW5pdDpmdW5jdGlvbih0KXt0aGlzLmNmZz10aGlzLmNmZy5leHRlbmQodCl9LGNvbXB1dGU6ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dGhpcy5jZmcsaT1hLmNyZWF0ZShlLmhhc2hlcix0KSxvPW4uY3JlYXRlKCkscz1uLmNyZWF0ZShbMV0pLGM9by53b3JkcyxoPXMud29yZHMsbD1lLmtleVNpemUsZj1lLml0ZXJhdGlvbnM7Yy5sZW5ndGg8bDspe3ZhciB1PWkudXBkYXRlKHIpLmZpbmFsaXplKHMpO2kucmVzZXQoKTtmb3IodmFyIGQ9dS53b3Jkcyx2PWQubGVuZ3RoLHA9dSxfPTE7XzxmO18rKyl7cD1pLmZpbmFsaXplKHApLGkucmVzZXQoKTtmb3IodmFyIHk9cC53b3JkcyxnPTA7Zzx2O2crKylkW2ddXj15W2ddfW8uY29uY2F0KHUpLGhbMF0rK31yZXR1cm4gby5zaWdCeXRlcz00Kmwsb319KTtyLlBCS0RGMj1mdW5jdGlvbih0LHIsZSl7cmV0dXJuIGMuY3JlYXRlKGUpLmNvbXB1dGUodCxyKX19KCksZnVuY3Rpb24oKXt2YXIgcj10LGU9ci5saWIsaT1lLkJhc2Usbj1lLldvcmRBcnJheSxvPXIuYWxnbyxzPW8uTUQ1LGE9by5FdnBLREY9aS5leHRlbmQoe2NmZzppLmV4dGVuZCh7a2V5U2l6ZTo0LGhhc2hlcjpzLGl0ZXJhdGlvbnM6MX0pLGluaXQ6ZnVuY3Rpb24odCl7dGhpcy5jZmc9dGhpcy5jZmcuZXh0ZW5kKHQpfSxjb21wdXRlOmZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPXRoaXMuY2ZnLGk9ZS5oYXNoZXIuY3JlYXRlKCksbz1uLmNyZWF0ZSgpLHM9by53b3JkcyxhPWUua2V5U2l6ZSxjPWUuaXRlcmF0aW9ucztzLmxlbmd0aDxhOyl7aCYmaS51cGRhdGUoaCk7dmFyIGg9aS51cGRhdGUodCkuZmluYWxpemUocik7aS5yZXNldCgpO2Zvcih2YXIgbD0xO2w8YztsKyspaD1pLmZpbmFsaXplKGgpLGkucmVzZXQoKTtvLmNvbmNhdChoKX1yZXR1cm4gby5zaWdCeXRlcz00KmEsb319KTtyLkV2cEtERj1mdW5jdGlvbih0LHIsZSl7cmV0dXJuIGEuY3JlYXRlKGUpLmNvbXB1dGUodCxyKX19KCksZnVuY3Rpb24oKXt2YXIgcj10LGU9ci5saWIsaT1lLldvcmRBcnJheSxuPXIuYWxnbyxvPW4uU0hBMjU2LHM9bi5TSEEyMjQ9by5leHRlbmQoe19kb1Jlc2V0OmZ1bmN0aW9uKCl7dGhpcy5faGFzaD1uZXcgaS5pbml0KFszMjM4MzcxMDMyLDkxNDE1MDY2Myw4MTI3MDI5OTksNDE0NDkxMjY5Nyw0MjkwNzc1ODU3LDE3NTA2MDMwMjUsMTY5NDA3NjgzOSwzMjA0MDc1NDI4XSl9LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9by5fZG9GaW5hbGl6ZS5jYWxsKHRoaXMpO3JldHVybiB0LnNpZ0J5dGVzLT00LHR9fSk7ci5TSEEyMjQ9by5fY3JlYXRlSGVscGVyKHMpLHIuSG1hY1NIQTIyND1vLl9jcmVhdGVIbWFjSGVscGVyKHMpfSgpLGZ1bmN0aW9uKHIpe3ZhciBlPXQsaT1lLmxpYixuPWkuQmFzZSxvPWkuV29yZEFycmF5LHM9ZS54NjQ9e307cy5Xb3JkPW4uZXh0ZW5kKHtpbml0OmZ1bmN0aW9uKHQscil7dGhpcy5oaWdoPXQsdGhpcy5sb3c9cn19KSxzLldvcmRBcnJheT1uLmV4dGVuZCh7aW5pdDpmdW5jdGlvbih0LGUpe3Q9dGhpcy53b3Jkcz10fHxbXSxlIT1yP3RoaXMuc2lnQnl0ZXM9ZTp0aGlzLnNpZ0J5dGVzPTgqdC5sZW5ndGh9LHRvWDMyOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMud29yZHMscj10Lmxlbmd0aCxlPVtdLGk9MDtpPHI7aSsrKXt2YXIgbj10W2ldO2UucHVzaChuLmhpZ2gpLGUucHVzaChuLmxvdyl9cmV0dXJuIG8uY3JlYXRlKGUsdGhpcy5zaWdCeXRlcyl9LGNsb25lOmZ1bmN0aW9uKCl7Zm9yKHZhciB0PW4uY2xvbmUuY2FsbCh0aGlzKSxyPXQud29yZHM9dGhpcy53b3Jkcy5zbGljZSgwKSxlPXIubGVuZ3RoLGk9MDtpPGU7aSsrKXJbaV09cltpXS5jbG9uZSgpO3JldHVybiB0fX0pfSgpLGZ1bmN0aW9uKHIpe3ZhciBlPXQsaT1lLmxpYixuPWkuV29yZEFycmF5LG89aS5IYXNoZXIscz1lLng2NCxhPXMuV29yZCxjPWUuYWxnbyxoPVtdLGw9W10sZj1bXTshZnVuY3Rpb24oKXtmb3IodmFyIHQ9MSxyPTAsZT0wO2U8MjQ7ZSsrKXtoW3QrNSpyXT0oZSsxKSooZSsyKS8yJTY0O3ZhciBpPXIlNSxuPSgyKnQrMypyKSU1O3Q9aSxyPW59Zm9yKHZhciB0PTA7dDw1O3QrKylmb3IodmFyIHI9MDtyPDU7cisrKWxbdCs1KnJdPXIrKDIqdCszKnIpJTUqNTtmb3IodmFyIG89MSxzPTA7czwyNDtzKyspe2Zvcih2YXIgYz0wLHU9MCxkPTA7ZDw3O2QrKyl7aWYoMSZvKXt2YXIgdj0oMTw8ZCktMTt2PDMyP3VePTE8PHY6Y149MTw8di0zMn0xMjgmbz9vPW88PDFeMTEzOm88PD0xfWZbc109YS5jcmVhdGUoYyx1KX19KCk7dmFyIHU9W107IWZ1bmN0aW9uKCl7Zm9yKHZhciB0PTA7dDwyNTt0KyspdVt0XT1hLmNyZWF0ZSgpfSgpO3ZhciBkPWMuU0hBMz1vLmV4dGVuZCh7Y2ZnOm8uY2ZnLmV4dGVuZCh7b3V0cHV0TGVuZ3RoOjUxMn0pLF9kb1Jlc2V0OmZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuX3N0YXRlPVtdLHI9MDtyPDI1O3IrKyl0W3JdPW5ldyBhLmluaXQ7dGhpcy5ibG9ja1NpemU9KDE2MDAtMip0aGlzLmNmZy5vdXRwdXRMZW5ndGgpLzMyfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dGhpcy5fc3RhdGUsaT10aGlzLmJsb2NrU2l6ZS8yLG49MDtuPGk7bisrKXt2YXIgbz10W3IrMipuXSxzPXRbcisyKm4rMV07bz0xNjcxMTkzNSYobzw8OHxvPj4+MjQpfDQyNzgyNTUzNjAmKG88PDI0fG8+Pj44KSxzPTE2NzExOTM1JihzPDw4fHM+Pj4yNCl8NDI3ODI1NTM2MCYoczw8MjR8cz4+PjgpO3ZhciBhPWVbbl07YS5oaWdoXj1zLGEubG93Xj1vfWZvcih2YXIgYz0wO2M8MjQ7YysrKXtmb3IodmFyIGQ9MDtkPDU7ZCsrKXtmb3IodmFyIHY9MCxwPTAsXz0wO188NTtfKyspe3ZhciBhPWVbZCs1Kl9dO3ZePWEuaGlnaCxwXj1hLmxvd312YXIgeT11W2RdO3kuaGlnaD12LHkubG93PXB9Zm9yKHZhciBkPTA7ZDw1O2QrKylmb3IodmFyIGc9dVsoZCs0KSU1XSxCPXVbKGQrMSklNV0sdz1CLmhpZ2gsaz1CLmxvdyx2PWcuaGlnaF4odzw8MXxrPj4+MzEpLHA9Zy5sb3deKGs8PDF8dz4+PjMxKSxfPTA7Xzw1O18rKyl7dmFyIGE9ZVtkKzUqX107YS5oaWdoXj12LGEubG93Xj1wfWZvcih2YXIgUz0xO1M8MjU7UysrKXt2YXIgYT1lW1NdLG09YS5oaWdoLHg9YS5sb3csYj1oW1NdO2lmKGI8MzIpdmFyIHY9bTw8Ynx4Pj4+MzItYixwPXg8PGJ8bT4+PjMyLWI7ZWxzZSB2YXIgdj14PDxiLTMyfG0+Pj42NC1iLHA9bTw8Yi0zMnx4Pj4+NjQtYjt2YXIgSD11W2xbU11dO0guaGlnaD12LEgubG93PXB9dmFyIHo9dVswXSxBPWVbMF07ei5oaWdoPUEuaGlnaCx6Lmxvdz1BLmxvdztmb3IodmFyIGQ9MDtkPDU7ZCsrKWZvcih2YXIgXz0wO188NTtfKyspe3ZhciBTPWQrNSpfLGE9ZVtTXSxDPXVbU10sRD11WyhkKzEpJTUrNSpfXSxSPXVbKGQrMiklNSs1Kl9dO2EuaGlnaD1DLmhpZ2hefkQuaGlnaCZSLmhpZ2gsYS5sb3c9Qy5sb3defkQubG93JlIubG93fXZhciBhPWVbMF0sRT1mW2NdO2EuaGlnaF49RS5oaWdoLGEubG93Xj1FLmxvd319LF9kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZGF0YSxlPXQud29yZHMsaT0oOCp0aGlzLl9uRGF0YUJ5dGVzLDgqdC5zaWdCeXRlcyksbz0zMip0aGlzLmJsb2NrU2l6ZTtlW2k+Pj41XXw9MTw8MjQtaSUzMixlWyhyLmNlaWwoKGkrMSkvbykqbz4+PjUpLTFdfD0xMjgsdC5zaWdCeXRlcz00KmUubGVuZ3RoLHRoaXMuX3Byb2Nlc3MoKTtmb3IodmFyIHM9dGhpcy5fc3RhdGUsYT10aGlzLmNmZy5vdXRwdXRMZW5ndGgvOCxjPWEvOCxoPVtdLGw9MDtsPGM7bCsrKXt2YXIgZj1zW2xdLHU9Zi5oaWdoLGQ9Zi5sb3c7dT0xNjcxMTkzNSYodTw8OHx1Pj4+MjQpfDQyNzgyNTUzNjAmKHU8PDI0fHU+Pj44KSxkPTE2NzExOTM1JihkPDw4fGQ+Pj4yNCl8NDI3ODI1NTM2MCYoZDw8MjR8ZD4+PjgpLGgucHVzaChkKSxoLnB1c2godSl9cmV0dXJuIG5ldyBuLmluaXQoaCxhKX0sY2xvbmU6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9by5jbG9uZS5jYWxsKHRoaXMpLHI9dC5fc3RhdGU9dGhpcy5fc3RhdGUuc2xpY2UoMCksZT0wO2U8MjU7ZSsrKXJbZV09cltlXS5jbG9uZSgpO3JldHVybiB0fX0pO2UuU0hBMz1vLl9jcmVhdGVIZWxwZXIoZCksZS5IbWFjU0hBMz1vLl9jcmVhdGVIbWFjSGVscGVyKGQpfShNYXRoKSxmdW5jdGlvbigpe2Z1bmN0aW9uIHIoKXtyZXR1cm4gcy5jcmVhdGUuYXBwbHkocyxhcmd1bWVudHMpfXZhciBlPXQsaT1lLmxpYixuPWkuSGFzaGVyLG89ZS54NjQscz1vLldvcmQsYT1vLldvcmRBcnJheSxjPWUuYWxnbyxoPVtyKDExMTYzNTI0MDgsMzYwOTc2NzQ1OCkscigxODk5NDQ3NDQxLDYwMjg5MTcyNSkscigzMDQ5MzIzNDcxLDM5NjQ0ODQzOTkpLHIoMzkyMTAwOTU3MywyMTczMjk1NTQ4KSxyKDk2MTk4NzE2Myw0MDgxNjI4NDcyKSxyKDE1MDg5NzA5OTMsMzA1MzgzNDI2NSkscigyNDUzNjM1NzQ4LDI5Mzc2NzE1NzkpLHIoMjg3MDc2MzIyMSwzNjY0NjA5NTYwKSxyKDM2MjQzODEwODAsMjczNDg4MzM5NCkscigzMTA1OTg0MDEsMTE2NDk5NjU0Mikscig2MDcyMjUyNzgsMTMyMzYxMDc2NCkscigxNDI2ODgxOTg3LDM1OTAzMDQ5OTQpLHIoMTkyNTA3ODM4OCw0MDY4MTgyMzgzKSxyKDIxNjIwNzgyMDYsOTkxMzM2MTEzKSxyKDI2MTQ4ODgxMDMsNjMzODAzMzE3KSxyKDMyNDgyMjI1ODAsMzQ3OTc3NDg2OCkscigzODM1MzkwNDAxLDI2NjY2MTM0NTgpLHIoNDAyMjIyNDc3NCw5NDQ3MTExMzkpLHIoMjY0MzQ3MDc4LDIzNDEyNjI3NzMpLHIoNjA0ODA3NjI4LDIwMDc4MDA5MzMpLHIoNzcwMjU1OTgzLDE0OTU5OTA5MDEpLHIoMTI0OTE1MDEyMiwxODU2NDMxMjM1KSxyKDE1NTUwODE2OTIsMzE3NTIxODEzMikscigxOTk2MDY0OTg2LDIxOTg5NTA4MzcpLHIoMjU1NDIyMDg4MiwzOTk5NzE5MzM5KSxyKDI4MjE4MzQzNDksNzY2Nzg0MDE2KSxyKDI5NTI5OTY4MDgsMjU2NjU5NDg3OSkscigzMjEwMzEzNjcxLDMyMDMzMzc5NTYpLHIoMzMzNjU3MTg5MSwxMDM0NDU3MDI2KSxyKDM1ODQ1Mjg3MTEsMjQ2Njk0ODkwMSkscigxMTM5MjY5OTMsMzc1ODMyNjM4MykscigzMzgyNDE4OTUsMTY4NzE3OTM2KSxyKDY2NjMwNzIwNSwxMTg4MTc5OTY0KSxyKDc3MzUyOTkxMiwxNTQ2MDQ1NzM0KSxyKDEyOTQ3NTczNzIsMTUyMjgwNTQ4NSkscigxMzk2MTgyMjkxLDI2NDM4MzM4MjMpLHIoMTY5NTE4MzcwMCwyMzQzNTI3MzkwKSxyKDE5ODY2NjEwNTEsMTAxNDQ3NzQ4MCkscigyMTc3MDI2MzUwLDEyMDY3NTkxNDIpLHIoMjQ1Njk1NjAzNywzNDQwNzc2MjcpLHIoMjczMDQ4NTkyMSwxMjkwODYzNDYwKSxyKDI4MjAzMDI0MTEsMzE1ODQ1NDI3MykscigzMjU5NzMwODAwLDM1MDU5NTI2NTcpLHIoMzM0NTc2NDc3MSwxMDYyMTcwMDgpLHIoMzUxNjA2NTgxNywzNjA2MDA4MzQ0KSxyKDM2MDAzNTI4MDQsMTQzMjcyNTc3Nikscig0MDk0NTcxOTA5LDE0NjcwMzE1OTQpLHIoMjc1NDIzMzQ0LDg1MTE2OTcyMCkscig0MzAyMjc3MzQsMzEwMDgyMzc1Mikscig1MDY5NDg2MTYsMTM2MzI1ODE5NSkscig2NTkwNjA1NTYsMzc1MDY4NTU5Mykscig4ODM5OTc4NzcsMzc4NTA1MDI4MCkscig5NTgxMzk1NzEsMzMxODMwNzQyNykscigxMzIyODIyMjE4LDM4MTI3MjM0MDMpLHIoMTUzNzAwMjA2MywyMDAzMDM0OTk1KSxyKDE3NDc4NzM3NzksMzYwMjAzNjg5OSkscigxOTU1NTYyMjIyLDE1NzU5OTAwMTIpLHIoMjAyNDEwNDgxNSwxMTI1NTkyOTI4KSxyKDIyMjc3MzA0NTIsMjcxNjkwNDMwNikscigyMzYxODUyNDI0LDQ0Mjc3NjA0NCkscigyNDI4NDM2NDc0LDU5MzY5ODM0NCkscigyNzU2NzM0MTg3LDM3MzMxMTAyNDkpLHIoMzIwNDAzMTQ3OSwyOTk5MzUxNTczKSxyKDMzMjkzMjUyOTgsMzgxNTkyMDQyNykscigzMzkxNTY5NjE0LDM5MjgzODM5MDApLHIoMzUxNTI2NzI3MSw1NjYyODA3MTEpLHIoMzk0MDE4NzYwNiwzNDU0MDY5NTM0KSxyKDQxMTg2MzAyNzEsNDAwMDIzOTk5MikscigxMTY0MTg0NzQsMTkxNDEzODU1NCkscigxNzQyOTI0MjEsMjczMTA1NTI3MCkscigyODkzODAzNTYsMzIwMzk5MzAwNikscig0NjAzOTMyNjksMzIwNjIwMzE1KSxyKDY4NTQ3MTczMyw1ODc0OTY4MzYpLHIoODUyMTQyOTcxLDEwODY3OTI4NTEpLHIoMTAxNzAzNjI5OCwzNjU1NDMxMDApLHIoMTEyNjAwMDU4MCwyNjE4Mjk3Njc2KSxyKDEyODgwMzM0NzAsMzQwOTg1NTE1OCkscigxNTAxNTA1OTQ4LDQyMzQ1MDk4NjYpLHIoMTYwNzE2NzkxNSw5ODcxNjc0NjgpLHIoMTgxNjQwMjMxNiwxMjQ2MTg5NTkxKV0sbD1bXTshZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDt0PDgwO3QrKylsW3RdPXIoKX0oKTt2YXIgZj1jLlNIQTUxMj1uLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBhLmluaXQoW25ldyBzLmluaXQoMTc3OTAzMzcwMyw0MDg5MjM1NzIwKSxuZXcgcy5pbml0KDMxNDQxMzQyNzcsMjIyNzg3MzU5NSksbmV3IHMuaW5pdCgxMDEzOTA0MjQyLDQyNzExNzU3MjMpLG5ldyBzLmluaXQoMjc3MzQ4MDc2MiwxNTk1NzUwMTI5KSxuZXcgcy5pbml0KDEzNTk4OTMxMTksMjkxNzU2NTEzNyksbmV3IHMuaW5pdCgyNjAwODIyOTI0LDcyNTUxMTE5OSksbmV3IHMuaW5pdCg1Mjg3MzQ2MzUsNDIxNTM4OTU0NyksbmV3IHMuaW5pdCgxNTQxNDU5MjI1LDMyNzAzMzIwOSldKX0sX2RvUHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPXRoaXMuX2hhc2gud29yZHMsaT1lWzBdLG49ZVsxXSxvPWVbMl0scz1lWzNdLGE9ZVs0XSxjPWVbNV0sZj1lWzZdLHU9ZVs3XSxkPWkuaGlnaCx2PWkubG93LHA9bi5oaWdoLF89bi5sb3cseT1vLmhpZ2gsZz1vLmxvdyxCPXMuaGlnaCx3PXMubG93LGs9YS5oaWdoLFM9YS5sb3csbT1jLmhpZ2gseD1jLmxvdyxiPWYuaGlnaCxIPWYubG93LHo9dS5oaWdoLEE9dS5sb3csQz1kLEQ9dixSPXAsRT1fLE09eSxGPWcsUD1CLFc9dyxPPWssVT1TLEk9bSxLPXgsWD1iLEw9SCxqPXosTj1BLFQ9MDtUPDgwO1QrKyl7dmFyIFo9bFtUXTtpZihUPDE2KXZhciBxPVouaGlnaD0wfHRbcisyKlRdLEc9Wi5sb3c9MHx0W3IrMipUKzFdO2Vsc2V7dmFyIEo9bFtULTE1XSwkPUouaGlnaCxRPUoubG93LFY9KCQ+Pj4xfFE8PDMxKV4oJD4+Pjh8UTw8MjQpXiQ+Pj43LFk9KFE+Pj4xfCQ8PDMxKV4oUT4+Pjh8JDw8MjQpXihRPj4+N3wkPDwyNSksdHQ9bFtULTJdLHJ0PXR0LmhpZ2gsZXQ9dHQubG93LGl0PShydD4+PjE5fGV0PDwxMyleKHJ0PDwzfGV0Pj4+MjkpXnJ0Pj4+NixudD0oZXQ+Pj4xOXxydDw8MTMpXihldDw8M3xydD4+PjI5KV4oZXQ+Pj42fHJ0PDwyNiksb3Q9bFtULTddLHN0PW90LmhpZ2gsYXQ9b3QubG93LGN0PWxbVC0xNl0saHQ9Y3QuaGlnaCxsdD1jdC5sb3csRz1ZK2F0LHE9VitzdCsoRz4+PjA8WT4+PjA/MTowKSxHPUcrbnQscT1xK2l0KyhHPj4+MDxudD4+PjA/MTowKSxHPUcrbHQscT1xK2h0KyhHPj4+MDxsdD4+PjA/MTowKTtaLmhpZ2g9cSxaLmxvdz1HfXZhciBmdD1PJklefk8mWCx1dD1VJkteflUmTCxkdD1DJlJeQyZNXlImTSx2dD1EJkVeRCZGXkUmRixwdD0oQz4+PjI4fEQ8PDQpXihDPDwzMHxEPj4+MileKEM8PDI1fEQ+Pj43KSxfdD0oRD4+PjI4fEM8PDQpXihEPDwzMHxDPj4+MileKEQ8PDI1fEM+Pj43KSx5dD0oTz4+PjE0fFU8PDE4KV4oTz4+PjE4fFU8PDE0KV4oTzw8MjN8VT4+PjkpLGd0PShVPj4+MTR8Tzw8MTgpXihVPj4+MTh8Tzw8MTQpXihVPDwyM3xPPj4+OSksQnQ9aFtUXSx3dD1CdC5oaWdoLGt0PUJ0LmxvdyxTdD1OK2d0LG10PWoreXQrKFN0Pj4+MDxOPj4+MD8xOjApLFN0PVN0K3V0LG10PW10K2Z0KyhTdD4+PjA8dXQ+Pj4wPzE6MCksU3Q9U3Qra3QsbXQ9bXQrd3QrKFN0Pj4+MDxrdD4+PjA/MTowKSxTdD1TdCtHLG10PW10K3ErKFN0Pj4+MDxHPj4+MD8xOjApLHh0PV90K3Z0LGJ0PXB0K2R0Kyh4dD4+PjA8X3Q+Pj4wPzE6MCk7aj1YLE49TCxYPUksTD1LLEk9TyxLPVUsVT1XK1N0fDAsTz1QK210KyhVPj4+MDxXPj4+MD8xOjApfDAsUD1NLFc9RixNPVIsRj1FLFI9QyxFPUQsRD1TdCt4dHwwLEM9bXQrYnQrKEQ+Pj4wPFN0Pj4+MD8xOjApfDB9dj1pLmxvdz12K0QsaS5oaWdoPWQrQysodj4+PjA8RD4+PjA/MTowKSxfPW4ubG93PV8rRSxuLmhpZ2g9cCtSKyhfPj4+MDxFPj4+MD8xOjApLGc9by5sb3c9ZytGLG8uaGlnaD15K00rKGc+Pj4wPEY+Pj4wPzE6MCksdz1zLmxvdz13K1cscy5oaWdoPUIrUCsodz4+PjA8Vz4+PjA/MTowKSxTPWEubG93PVMrVSxhLmhpZ2g9aytPKyhTPj4+MDxVPj4+MD8xOjApLHg9Yy5sb3c9eCtLLGMuaGlnaD1tK0krKHg+Pj4wPEs+Pj4wPzE6MCksSD1mLmxvdz1IK0wsZi5oaWdoPWIrWCsoSD4+PjA8TD4+PjA/MTowKSxBPXUubG93PUErTix1LmhpZ2g9eitqKyhBPj4+MDxOPj4+MD8xOjApfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2RhdGEscj10LndvcmRzLGU9OCp0aGlzLl9uRGF0YUJ5dGVzLGk9OCp0LnNpZ0J5dGVzO3JbaT4+PjVdfD0xMjg8PDI0LWklMzIsclsoaSsxMjg+Pj4xMDw8NSkrMzBdPU1hdGguZmxvb3IoZS80Mjk0OTY3Mjk2KSxyWyhpKzEyOD4+PjEwPDw1KSszMV09ZSx0LnNpZ0J5dGVzPTQqci5sZW5ndGgsdGhpcy5fcHJvY2VzcygpO3ZhciBuPXRoaXMuX2hhc2gudG9YMzIoKTtyZXR1cm4gbn0sY2xvbmU6ZnVuY3Rpb24oKXt2YXIgdD1uLmNsb25lLmNhbGwodGhpcyk7cmV0dXJuIHQuX2hhc2g9dGhpcy5faGFzaC5jbG9uZSgpLHR9LGJsb2NrU2l6ZTozMn0pO2UuU0hBNTEyPW4uX2NyZWF0ZUhlbHBlcihmKSxlLkhtYWNTSEE1MTI9bi5fY3JlYXRlSG1hY0hlbHBlcihmKX0oKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLng2NCxpPWUuV29yZCxuPWUuV29yZEFycmF5LG89ci5hbGdvLHM9by5TSEE1MTIsYT1vLlNIQTM4ND1zLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt0aGlzLl9oYXNoPW5ldyBuLmluaXQoW25ldyBpLmluaXQoMzQxODA3MDM2NSwzMjM4MzcxMDMyKSxuZXcgaS5pbml0KDE2NTQyNzAyNTAsOTE0MTUwNjYzKSxuZXcgaS5pbml0KDI0Mzg1MjkzNzAsODEyNzAyOTk5KSxuZXcgaS5pbml0KDM1NTQ2MjM2MCw0MTQ0OTEyNjk3KSxuZXcgaS5pbml0KDE3MzE0MDU0MTUsNDI5MDc3NTg1NyksbmV3IGkuaW5pdCgyMzk0MTgwMjMxLDE3NTA2MDMwMjUpLG5ldyBpLmluaXQoMzY3NTAwODUyNSwxNjk0MDc2ODM5KSxuZXcgaS5pbml0KDEyMDMwNjI4MTMsMzIwNDA3NTQyOCldKX0sX2RvRmluYWxpemU6ZnVuY3Rpb24oKXt2YXIgdD1zLl9kb0ZpbmFsaXplLmNhbGwodGhpcyk7cmV0dXJuIHQuc2lnQnl0ZXMtPTE2LHR9fSk7ci5TSEEzODQ9cy5fY3JlYXRlSGVscGVyKGEpLHIuSG1hY1NIQTM4ND1zLl9jcmVhdGVIbWFjSGVscGVyKGEpfSgpLHQubGliLkNpcGhlcnx8ZnVuY3Rpb24ocil7dmFyIGU9dCxpPWUubGliLG49aS5CYXNlLG89aS5Xb3JkQXJyYXkscz1pLkJ1ZmZlcmVkQmxvY2tBbGdvcml0aG0sYT1lLmVuYyxjPShhLlV0ZjgsYS5CYXNlNjQpLGg9ZS5hbGdvLGw9aC5FdnBLREYsZj1pLkNpcGhlcj1zLmV4dGVuZCh7Y2ZnOm4uZXh0ZW5kKCksY3JlYXRlRW5jcnlwdG9yOmZ1bmN0aW9uKHQscil7cmV0dXJuIHRoaXMuY3JlYXRlKHRoaXMuX0VOQ19YRk9STV9NT0RFLHQscil9LGNyZWF0ZURlY3J5cHRvcjpmdW5jdGlvbih0LHIpe3JldHVybiB0aGlzLmNyZWF0ZSh0aGlzLl9ERUNfWEZPUk1fTU9ERSx0LHIpfSxpbml0OmZ1bmN0aW9uKHQscixlKXt0aGlzLmNmZz10aGlzLmNmZy5leHRlbmQoZSksdGhpcy5feGZvcm1Nb2RlPXQsdGhpcy5fa2V5PXIsdGhpcy5yZXNldCgpfSxyZXNldDpmdW5jdGlvbigpe3MucmVzZXQuY2FsbCh0aGlzKSx0aGlzLl9kb1Jlc2V0KCl9LHByb2Nlc3M6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2FwcGVuZCh0KSx0aGlzLl9wcm9jZXNzKCl9LGZpbmFsaXplOmZ1bmN0aW9uKHQpe3QmJnRoaXMuX2FwcGVuZCh0KTt2YXIgcj10aGlzLl9kb0ZpbmFsaXplKCk7cmV0dXJuIHJ9LGtleVNpemU6NCxpdlNpemU6NCxfRU5DX1hGT1JNX01PREU6MSxfREVDX1hGT1JNX01PREU6MixfY3JlYXRlSGVscGVyOmZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0KXtyZXR1cm5cInN0cmluZ1wiPT10eXBlb2YgdD9tOnd9cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybntlbmNyeXB0OmZ1bmN0aW9uKGUsaSxuKXtyZXR1cm4gdChpKS5lbmNyeXB0KHIsZSxpLG4pfSxkZWNyeXB0OmZ1bmN0aW9uKGUsaSxuKXtyZXR1cm4gdChpKS5kZWNyeXB0KHIsZSxpLG4pfX19fSgpfSksdT0oaS5TdHJlYW1DaXBoZXI9Zi5leHRlbmQoe19kb0ZpbmFsaXplOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fcHJvY2VzcyghMCk7cmV0dXJuIHR9LGJsb2NrU2l6ZToxfSksZS5tb2RlPXt9KSxkPWkuQmxvY2tDaXBoZXJNb2RlPW4uZXh0ZW5kKHtjcmVhdGVFbmNyeXB0b3I6ZnVuY3Rpb24odCxyKXtyZXR1cm4gdGhpcy5FbmNyeXB0b3IuY3JlYXRlKHQscil9LGNyZWF0ZURlY3J5cHRvcjpmdW5jdGlvbih0LHIpe3JldHVybiB0aGlzLkRlY3J5cHRvci5jcmVhdGUodCxyKX0saW5pdDpmdW5jdGlvbih0LHIpe3RoaXMuX2NpcGhlcj10LHRoaXMuX2l2PXJ9fSksdj11LkNCQz1mdW5jdGlvbigpe2Z1bmN0aW9uIHQodCxlLGkpe3ZhciBuPXRoaXMuX2l2O2lmKG4pe3ZhciBvPW47dGhpcy5faXY9cn1lbHNlIHZhciBvPXRoaXMuX3ByZXZCbG9jaztmb3IodmFyIHM9MDtzPGk7cysrKXRbZStzXV49b1tzXX12YXIgZT1kLmV4dGVuZCgpO3JldHVybiBlLkVuY3J5cHRvcj1lLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHIsZSl7dmFyIGk9dGhpcy5fY2lwaGVyLG49aS5ibG9ja1NpemU7dC5jYWxsKHRoaXMscixlLG4pLGkuZW5jcnlwdEJsb2NrKHIsZSksdGhpcy5fcHJldkJsb2NrPXIuc2xpY2UoZSxlK24pfX0pLGUuRGVjcnlwdG9yPWUuZXh0ZW5kKHtwcm9jZXNzQmxvY2s6ZnVuY3Rpb24ocixlKXt2YXIgaT10aGlzLl9jaXBoZXIsbj1pLmJsb2NrU2l6ZSxvPXIuc2xpY2UoZSxlK24pO2kuZGVjcnlwdEJsb2NrKHIsZSksdC5jYWxsKHRoaXMscixlLG4pLHRoaXMuX3ByZXZCbG9jaz1vfX0pLGV9KCkscD1lLnBhZD17fSxfPXAuUGtjczc9e3BhZDpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT00KnIsaT1lLXQuc2lnQnl0ZXMlZSxuPWk8PDI0fGk8PDE2fGk8PDh8aSxzPVtdLGE9MDthPGk7YSs9NClzLnB1c2gobik7dmFyIGM9by5jcmVhdGUocyxpKTt0LmNvbmNhdChjKX0sdW5wYWQ6ZnVuY3Rpb24odCl7dmFyIHI9MjU1JnQud29yZHNbdC5zaWdCeXRlcy0xPj4+Ml07dC5zaWdCeXRlcy09cn19LHk9KGkuQmxvY2tDaXBoZXI9Zi5leHRlbmQoe2NmZzpmLmNmZy5leHRlbmQoe21vZGU6dixwYWRkaW5nOl99KSxyZXNldDpmdW5jdGlvbigpe2YucmVzZXQuY2FsbCh0aGlzKTt2YXIgdD10aGlzLmNmZyxyPXQuaXYsZT10Lm1vZGU7aWYodGhpcy5feGZvcm1Nb2RlPT10aGlzLl9FTkNfWEZPUk1fTU9ERSl2YXIgaT1lLmNyZWF0ZUVuY3J5cHRvcjtlbHNle3ZhciBpPWUuY3JlYXRlRGVjcnlwdG9yO3RoaXMuX21pbkJ1ZmZlclNpemU9MX10aGlzLl9tb2RlJiZ0aGlzLl9tb2RlLl9fY3JlYXRvcj09aT90aGlzLl9tb2RlLmluaXQodGhpcyxyJiZyLndvcmRzKToodGhpcy5fbW9kZT1pLmNhbGwoZSx0aGlzLHImJnIud29yZHMpLHRoaXMuX21vZGUuX19jcmVhdG9yPWkpfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9tb2RlLnByb2Nlc3NCbG9jayh0LHIpfSxfZG9GaW5hbGl6ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMuY2ZnLnBhZGRpbmc7aWYodGhpcy5feGZvcm1Nb2RlPT10aGlzLl9FTkNfWEZPUk1fTU9ERSl7dC5wYWQodGhpcy5fZGF0YSx0aGlzLmJsb2NrU2l6ZSk7dmFyIHI9dGhpcy5fcHJvY2VzcyghMCl9ZWxzZXt2YXIgcj10aGlzLl9wcm9jZXNzKCEwKTt0LnVucGFkKHIpfXJldHVybiByfSxibG9ja1NpemU6NH0pLGkuQ2lwaGVyUGFyYW1zPW4uZXh0ZW5kKHtpbml0OmZ1bmN0aW9uKHQpe3RoaXMubWl4SW4odCl9LHRvU3RyaW5nOmZ1bmN0aW9uKHQpe3JldHVybih0fHx0aGlzLmZvcm1hdHRlcikuc3RyaW5naWZ5KHRoaXMpfX0pKSxnPWUuZm9ybWF0PXt9LEI9Zy5PcGVuU1NMPXtzdHJpbmdpZnk6ZnVuY3Rpb24odCl7dmFyIHI9dC5jaXBoZXJ0ZXh0LGU9dC5zYWx0O2lmKGUpdmFyIGk9by5jcmVhdGUoWzEzOTg4OTM2ODQsMTcwMTA3NjgzMV0pLmNvbmNhdChlKS5jb25jYXQocik7ZWxzZSB2YXIgaT1yO3JldHVybiBpLnRvU3RyaW5nKGMpfSxwYXJzZTpmdW5jdGlvbih0KXt2YXIgcj1jLnBhcnNlKHQpLGU9ci53b3JkcztpZigxMzk4ODkzNjg0PT1lWzBdJiYxNzAxMDc2ODMxPT1lWzFdKXt2YXIgaT1vLmNyZWF0ZShlLnNsaWNlKDIsNCkpO2Uuc3BsaWNlKDAsNCksci5zaWdCeXRlcy09MTZ9cmV0dXJuIHkuY3JlYXRlKHtjaXBoZXJ0ZXh0OnIsc2FsdDppfSl9fSx3PWkuU2VyaWFsaXphYmxlQ2lwaGVyPW4uZXh0ZW5kKHtjZmc6bi5leHRlbmQoe2Zvcm1hdDpCfSksZW5jcnlwdDpmdW5jdGlvbih0LHIsZSxpKXtpPXRoaXMuY2ZnLmV4dGVuZChpKTt2YXIgbj10LmNyZWF0ZUVuY3J5cHRvcihlLGkpLG89bi5maW5hbGl6ZShyKSxzPW4uY2ZnO3JldHVybiB5LmNyZWF0ZSh7Y2lwaGVydGV4dDpvLGtleTplLGl2OnMuaXYsYWxnb3JpdGhtOnQsbW9kZTpzLm1vZGUscGFkZGluZzpzLnBhZGRpbmcsYmxvY2tTaXplOnQuYmxvY2tTaXplLGZvcm1hdHRlcjppLmZvcm1hdH0pfSxkZWNyeXB0OmZ1bmN0aW9uKHQscixlLGkpe2k9dGhpcy5jZmcuZXh0ZW5kKGkpLHI9dGhpcy5fcGFyc2UocixpLmZvcm1hdCk7dmFyIG49dC5jcmVhdGVEZWNyeXB0b3IoZSxpKS5maW5hbGl6ZShyLmNpcGhlcnRleHQpO3JldHVybiBufSxfcGFyc2U6ZnVuY3Rpb24odCxyKXtyZXR1cm5cInN0cmluZ1wiPT10eXBlb2YgdD9yLnBhcnNlKHQsdGhpcyk6dH19KSxrPWUua2RmPXt9LFM9ay5PcGVuU1NMPXtleGVjdXRlOmZ1bmN0aW9uKHQscixlLGkpe2l8fChpPW8ucmFuZG9tKDgpKTt2YXIgbj1sLmNyZWF0ZSh7a2V5U2l6ZTpyK2V9KS5jb21wdXRlKHQsaSkscz1vLmNyZWF0ZShuLndvcmRzLnNsaWNlKHIpLDQqZSk7cmV0dXJuIG4uc2lnQnl0ZXM9NCpyLHkuY3JlYXRlKHtrZXk6bixpdjpzLHNhbHQ6aX0pfX0sbT1pLlBhc3N3b3JkQmFzZWRDaXBoZXI9dy5leHRlbmQoe2NmZzp3LmNmZy5leHRlbmQoe2tkZjpTfSksZW5jcnlwdDpmdW5jdGlvbih0LHIsZSxpKXtpPXRoaXMuY2ZnLmV4dGVuZChpKTt2YXIgbj1pLmtkZi5leGVjdXRlKGUsdC5rZXlTaXplLHQuaXZTaXplKTtpLml2PW4uaXY7dmFyIG89dy5lbmNyeXB0LmNhbGwodGhpcyx0LHIsbi5rZXksaSk7cmV0dXJuIG8ubWl4SW4obiksb30sZGVjcnlwdDpmdW5jdGlvbih0LHIsZSxpKXtpPXRoaXMuY2ZnLmV4dGVuZChpKSxyPXRoaXMuX3BhcnNlKHIsaS5mb3JtYXQpO3ZhciBuPWkua2RmLmV4ZWN1dGUoZSx0LmtleVNpemUsdC5pdlNpemUsci5zYWx0KTtpLml2PW4uaXY7dmFyIG89dy5kZWNyeXB0LmNhbGwodGhpcyx0LHIsbi5rZXksaSk7cmV0dXJuIG99fSl9KCksdC5tb2RlLkNGQj1mdW5jdGlvbigpe2Z1bmN0aW9uIHIodCxyLGUsaSl7dmFyIG49dGhpcy5faXY7aWYobil7dmFyIG89bi5zbGljZSgwKTt0aGlzLl9pdj12b2lkIDB9ZWxzZSB2YXIgbz10aGlzLl9wcmV2QmxvY2s7aS5lbmNyeXB0QmxvY2sobywwKTtmb3IodmFyIHM9MDtzPGU7cysrKXRbcitzXV49b1tzXX12YXIgZT10LmxpYi5CbG9ja0NpcGhlck1vZGUuZXh0ZW5kKCk7cmV0dXJuIGUuRW5jcnlwdG9yPWUuZXh0ZW5kKHtwcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxlKXt2YXIgaT10aGlzLl9jaXBoZXIsbj1pLmJsb2NrU2l6ZTtyLmNhbGwodGhpcyx0LGUsbixpKSx0aGlzLl9wcmV2QmxvY2s9dC5zbGljZShlLGUrbil9fSksZS5EZWNyeXB0b3I9ZS5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LGUpe3ZhciBpPXRoaXMuX2NpcGhlcixuPWkuYmxvY2tTaXplLG89dC5zbGljZShlLGUrbik7ci5jYWxsKHRoaXMsdCxlLG4saSksdGhpcy5fcHJldkJsb2NrPW99fSksZX0oKSx0Lm1vZGUuRUNCPWZ1bmN0aW9uKCl7dmFyIHI9dC5saWIuQmxvY2tDaXBoZXJNb2RlLmV4dGVuZCgpO3JldHVybiByLkVuY3J5cHRvcj1yLmV4dGVuZCh7cHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQscil7dGhpcy5fY2lwaGVyLmVuY3J5cHRCbG9jayh0LHIpfX0pLHIuRGVjcnlwdG9yPXIuZXh0ZW5kKHtwcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9jaXBoZXIuZGVjcnlwdEJsb2NrKHQscil9fSkscn0oKSx0LnBhZC5BbnNpWDkyMz17cGFkOmZ1bmN0aW9uKHQscil7dmFyIGU9dC5zaWdCeXRlcyxpPTQqcixuPWktZSVpLG89ZStuLTE7dC5jbGFtcCgpLHQud29yZHNbbz4+PjJdfD1uPDwyNC1vJTQqOCx0LnNpZ0J5dGVzKz1ufSx1bnBhZDpmdW5jdGlvbih0KXt2YXIgcj0yNTUmdC53b3Jkc1t0LnNpZ0J5dGVzLTE+Pj4yXTt0LnNpZ0J5dGVzLT1yfX0sdC5wYWQuSXNvMTAxMjY9e3BhZDpmdW5jdGlvbihyLGUpe3ZhciBpPTQqZSxuPWktci5zaWdCeXRlcyVpO3IuY29uY2F0KHQubGliLldvcmRBcnJheS5yYW5kb20obi0xKSkuY29uY2F0KHQubGliLldvcmRBcnJheS5jcmVhdGUoW248PDI0XSwxKSl9LHVucGFkOmZ1bmN0aW9uKHQpe3ZhciByPTI1NSZ0LndvcmRzW3Quc2lnQnl0ZXMtMT4+PjJdO3Quc2lnQnl0ZXMtPXJ9fSx0LnBhZC5Jc285Nzk3MT17cGFkOmZ1bmN0aW9uKHIsZSl7ci5jb25jYXQodC5saWIuV29yZEFycmF5LmNyZWF0ZShbMjE0NzQ4MzY0OF0sMSkpLHQucGFkLlplcm9QYWRkaW5nLnBhZChyLGUpfSx1bnBhZDpmdW5jdGlvbihyKXt0LnBhZC5aZXJvUGFkZGluZy51bnBhZChyKSxyLnNpZ0J5dGVzLS19fSx0Lm1vZGUuT0ZCPWZ1bmN0aW9uKCl7dmFyIHI9dC5saWIuQmxvY2tDaXBoZXJNb2RlLmV4dGVuZCgpLGU9ci5FbmNyeXB0b3I9ci5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX2NpcGhlcixpPWUuYmxvY2tTaXplLG49dGhpcy5faXYsbz10aGlzLl9rZXlzdHJlYW07biYmKG89dGhpcy5fa2V5c3RyZWFtPW4uc2xpY2UoMCksdGhpcy5faXY9dm9pZCAwKSxlLmVuY3J5cHRCbG9jayhvLDApO2Zvcih2YXIgcz0wO3M8aTtzKyspdFtyK3NdXj1vW3NdfX0pO3JldHVybiByLkRlY3J5cHRvcj1lLHJ9KCksdC5wYWQuTm9QYWRkaW5nPXtwYWQ6ZnVuY3Rpb24oKXt9LHVucGFkOmZ1bmN0aW9uKCl7fX0sZnVuY3Rpb24ocil7dmFyIGU9dCxpPWUubGliLG49aS5DaXBoZXJQYXJhbXMsbz1lLmVuYyxzPW8uSGV4LGE9ZS5mb3JtYXQ7YS5IZXg9e3N0cmluZ2lmeTpmdW5jdGlvbih0KXtyZXR1cm4gdC5jaXBoZXJ0ZXh0LnRvU3RyaW5nKHMpfSxwYXJzZTpmdW5jdGlvbih0KXt2YXIgcj1zLnBhcnNlKHQpO3JldHVybiBuLmNyZWF0ZSh7Y2lwaGVydGV4dDpyfSl9fX0oKSxmdW5jdGlvbigpe3ZhciByPXQsZT1yLmxpYixpPWUuQmxvY2tDaXBoZXIsbj1yLmFsZ28sbz1bXSxzPVtdLGE9W10sYz1bXSxoPVtdLGw9W10sZj1bXSx1PVtdLGQ9W10sdj1bXTshZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10scj0wO3I8MjU2O3IrKylyPDEyOD90W3JdPXI8PDE6dFtyXT1yPDwxXjI4Mztmb3IodmFyIGU9MCxpPTAscj0wO3I8MjU2O3IrKyl7dmFyIG49aV5pPDwxXmk8PDJeaTw8M15pPDw0O249bj4+PjheMjU1Jm5eOTksb1tlXT1uLHNbbl09ZTt2YXIgcD10W2VdLF89dFtwXSx5PXRbX10sZz0yNTcqdFtuXV4xNjg0MzAwOCpuO2FbZV09Zzw8MjR8Zz4+PjgsY1tlXT1nPDwxNnxnPj4+MTYsaFtlXT1nPDw4fGc+Pj4yNCxsW2VdPWc7dmFyIGc9MTY4NDMwMDkqeV42NTUzNypfXjI1NypwXjE2ODQzMDA4KmU7ZltuXT1nPDwyNHxnPj4+OCx1W25dPWc8PDE2fGc+Pj4xNixkW25dPWc8PDh8Zz4+PjI0LHZbbl09ZyxlPyhlPXBedFt0W3RbeV5wXV1dLGlePXRbdFtpXV0pOmU9aT0xfX0oKTt2YXIgcD1bMCwxLDIsNCw4LDE2LDMyLDY0LDEyOCwyNyw1NF0sXz1uLkFFUz1pLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXtpZighdGhpcy5fblJvdW5kc3x8dGhpcy5fa2V5UHJpb3JSZXNldCE9PXRoaXMuX2tleSl7Zm9yKHZhciB0PXRoaXMuX2tleVByaW9yUmVzZXQ9dGhpcy5fa2V5LHI9dC53b3JkcyxlPXQuc2lnQnl0ZXMvNCxpPXRoaXMuX25Sb3VuZHM9ZSs2LG49NCooaSsxKSxzPXRoaXMuX2tleVNjaGVkdWxlPVtdLGE9MDthPG47YSsrKWlmKGE8ZSlzW2FdPXJbYV07ZWxzZXt2YXIgYz1zW2EtMV07YSVlP2U+NiYmYSVlPT00JiYoYz1vW2M+Pj4yNF08PDI0fG9bYz4+PjE2JjI1NV08PDE2fG9bYz4+PjgmMjU1XTw8OHxvWzI1NSZjXSk6KGM9Yzw8OHxjPj4+MjQsYz1vW2M+Pj4yNF08PDI0fG9bYz4+PjE2JjI1NV08PDE2fG9bYz4+PjgmMjU1XTw8OHxvWzI1NSZjXSxjXj1wW2EvZXwwXTw8MjQpLHNbYV09c1thLWVdXmN9Zm9yKHZhciBoPXRoaXMuX2ludktleVNjaGVkdWxlPVtdLGw9MDtsPG47bCsrKXt2YXIgYT1uLWw7aWYobCU0KXZhciBjPXNbYV07ZWxzZSB2YXIgYz1zW2EtNF07bDw0fHxhPD00P2hbbF09YzpoW2xdPWZbb1tjPj4+MjRdXV51W29bYz4+PjE2JjI1NV1dXmRbb1tjPj4+OCYyNTVdXV52W29bMjU1JmNdXX19fSxlbmNyeXB0QmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9kb0NyeXB0QmxvY2sodCxyLHRoaXMuX2tleVNjaGVkdWxlLGEsYyxoLGwsbyl9LGRlY3J5cHRCbG9jazpmdW5jdGlvbih0LHIpe3ZhciBlPXRbcisxXTt0W3IrMV09dFtyKzNdLHRbciszXT1lLHRoaXMuX2RvQ3J5cHRCbG9jayh0LHIsdGhpcy5faW52S2V5U2NoZWR1bGUsZix1LGQsdixzKTt2YXIgZT10W3IrMV07dFtyKzFdPXRbciszXSx0W3IrM109ZX0sX2RvQ3J5cHRCbG9jazpmdW5jdGlvbih0LHIsZSxpLG4sbyxzLGEpe2Zvcih2YXIgYz10aGlzLl9uUm91bmRzLGg9dFtyXV5lWzBdLGw9dFtyKzFdXmVbMV0sZj10W3IrMl1eZVsyXSx1PXRbciszXV5lWzNdLGQ9NCx2PTE7djxjO3YrKyl7dmFyIHA9aVtoPj4+MjRdXm5bbD4+PjE2JjI1NV1eb1tmPj4+OCYyNTVdXnNbMjU1JnVdXmVbZCsrXSxfPWlbbD4+PjI0XV5uW2Y+Pj4xNiYyNTVdXm9bdT4+PjgmMjU1XV5zWzI1NSZoXV5lW2QrK10seT1pW2Y+Pj4yNF1eblt1Pj4+MTYmMjU1XV5vW2g+Pj44JjI1NV1ec1syNTUmbF1eZVtkKytdLGc9aVt1Pj4+MjRdXm5baD4+PjE2JjI1NV1eb1tsPj4+OCYyNTVdXnNbMjU1JmZdXmVbZCsrXTtoPXAsbD1fLGY9eSx1PWd9dmFyIHA9KGFbaD4+PjI0XTw8MjR8YVtsPj4+MTYmMjU1XTw8MTZ8YVtmPj4+OCYyNTVdPDw4fGFbMjU1JnVdKV5lW2QrK10sXz0oYVtsPj4+MjRdPDwyNHxhW2Y+Pj4xNiYyNTVdPDwxNnxhW3U+Pj44JjI1NV08PDh8YVsyNTUmaF0pXmVbZCsrXSx5PShhW2Y+Pj4yNF08PDI0fGFbdT4+PjE2JjI1NV08PDE2fGFbaD4+PjgmMjU1XTw8OHxhWzI1NSZsXSleZVtkKytdLGc9KGFbdT4+PjI0XTw8MjR8YVtoPj4+MTYmMjU1XTw8MTZ8YVtsPj4+OCYyNTVdPDw4fGFbMjU1JmZdKV5lW2QrK107dFtyXT1wLHRbcisxXT1fLHRbcisyXT15LHRbciszXT1nfSxrZXlTaXplOjh9KTtyLkFFUz1pLl9jcmVhdGVIZWxwZXIoXyl9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiByKHQscil7dmFyIGU9KHRoaXMuX2xCbG9jaz4+PnRedGhpcy5fckJsb2NrKSZyO3RoaXMuX3JCbG9ja149ZSx0aGlzLl9sQmxvY2tePWU8PHR9ZnVuY3Rpb24gZSh0LHIpe3ZhciBlPSh0aGlzLl9yQmxvY2s+Pj50XnRoaXMuX2xCbG9jaykmcjt0aGlzLl9sQmxvY2tePWUsdGhpcy5fckJsb2NrXj1lPDx0O1xufXZhciBpPXQsbj1pLmxpYixvPW4uV29yZEFycmF5LHM9bi5CbG9ja0NpcGhlcixhPWkuYWxnbyxjPVs1Nyw0OSw0MSwzMywyNSwxNyw5LDEsNTgsNTAsNDIsMzQsMjYsMTgsMTAsMiw1OSw1MSw0MywzNSwyNywxOSwxMSwzLDYwLDUyLDQ0LDM2LDYzLDU1LDQ3LDM5LDMxLDIzLDE1LDcsNjIsNTQsNDYsMzgsMzAsMjIsMTQsNiw2MSw1Myw0NSwzNywyOSwyMSwxMyw1LDI4LDIwLDEyLDRdLGg9WzE0LDE3LDExLDI0LDEsNSwzLDI4LDE1LDYsMjEsMTAsMjMsMTksMTIsNCwyNiw4LDE2LDcsMjcsMjAsMTMsMiw0MSw1MiwzMSwzNyw0Nyw1NSwzMCw0MCw1MSw0NSwzMyw0OCw0NCw0OSwzOSw1NiwzNCw1Myw0Niw0Miw1MCwzNiwyOSwzMl0sbD1bMSwyLDQsNiw4LDEwLDEyLDE0LDE1LDE3LDE5LDIxLDIzLDI1LDI3LDI4XSxmPVt7MDo4NDIxODg4LDI2ODQzNTQ1NjozMjc2OCw1MzY4NzA5MTI6ODQyMTM3OCw4MDUzMDYzNjg6MiwxMDczNzQxODI0OjUxMiwxMzQyMTc3MjgwOjg0MjE4OTAsMTYxMDYxMjczNjo4Mzg5MTIyLDE4NzkwNDgxOTI6ODM4ODYwOCwyMTQ3NDgzNjQ4OjUxNCwyNDE1OTE5MTA0OjgzODkxMjAsMjY4NDM1NDU2MDozMzI4MCwyOTUyNzkwMDE2Ojg0MjEzNzYsMzIyMTIyNTQ3MjozMjc3MCwzNDg5NjYwOTI4OjgzODg2MTAsMzc1ODA5NjM4NDowLDQwMjY1MzE4NDA6MzMyODIsMTM0MjE3NzI4OjAsNDAyNjUzMTg0Ojg0MjE4OTAsNjcxMDg4NjQwOjMzMjgyLDkzOTUyNDA5NjozMjc2OCwxMjA3OTU5NTUyOjg0MjE4ODgsMTQ3NjM5NTAwODo1MTIsMTc0NDgzMDQ2NDo4NDIxMzc4LDIwMTMyNjU5MjA6MiwyMjgxNzAxMzc2OjgzODkxMjAsMjU1MDEzNjgzMjozMzI4MCwyODE4NTcyMjg4Ojg0MjEzNzYsMzA4NzAwNzc0NDo4Mzg5MTIyLDMzNTU0NDMyMDA6ODM4ODYxMCwzNjIzODc4NjU2OjMyNzcwLDM4OTIzMTQxMTI6NTE0LDQxNjA3NDk1Njg6ODM4ODYwOCwxOjMyNzY4LDI2ODQzNTQ1NzoyLDUzNjg3MDkxMzo4NDIxODg4LDgwNTMwNjM2OTo4Mzg4NjA4LDEwNzM3NDE4MjU6ODQyMTM3OCwxMzQyMTc3MjgxOjMzMjgwLDE2MTA2MTI3Mzc6NTEyLDE4NzkwNDgxOTM6ODM4OTEyMiwyMTQ3NDgzNjQ5Ojg0MjE4OTAsMjQxNTkxOTEwNTo4NDIxMzc2LDI2ODQzNTQ1NjE6ODM4ODYxMCwyOTUyNzkwMDE3OjMzMjgyLDMyMjEyMjU0NzM6NTE0LDM0ODk2NjA5Mjk6ODM4OTEyMCwzNzU4MDk2Mzg1OjMyNzcwLDQwMjY1MzE4NDE6MCwxMzQyMTc3Mjk6ODQyMTg5MCw0MDI2NTMxODU6ODQyMTM3Niw2NzEwODg2NDE6ODM4ODYwOCw5Mzk1MjQwOTc6NTEyLDEyMDc5NTk1NTM6MzI3NjgsMTQ3NjM5NTAwOTo4Mzg4NjEwLDE3NDQ4MzA0NjU6MiwyMDEzMjY1OTIxOjMzMjgyLDIyODE3MDEzNzc6MzI3NzAsMjU1MDEzNjgzMzo4Mzg5MTIyLDI4MTg1NzIyODk6NTE0LDMwODcwMDc3NDU6ODQyMTg4OCwzMzU1NDQzMjAxOjgzODkxMjAsMzYyMzg3ODY1NzowLDM4OTIzMTQxMTM6MzMyODAsNDE2MDc0OTU2OTo4NDIxMzc4fSx7MDoxMDc0MjgyNTEyLDE2Nzc3MjE2OjE2Mzg0LDMzNTU0NDMyOjUyNDI4OCw1MDMzMTY0ODoxMDc0MjY2MTI4LDY3MTA4ODY0OjEwNzM3NDE4NDAsODM4ODYwODA6MTA3NDI4MjQ5NiwxMDA2NjMyOTY6MTA3Mzc1ODIwOCwxMTc0NDA1MTI6MTYsMTM0MjE3NzI4OjU0MDY3MiwxNTA5OTQ5NDQ6MTA3Mzc1ODIyNCwxNjc3NzIxNjA6MTA3Mzc0MTgyNCwxODQ1NDkzNzY6NTQwNjg4LDIwMTMyNjU5Mjo1MjQzMDQsMjE4MTAzODA4OjAsMjM0ODgxMDI0OjE2NDAwLDI1MTY1ODI0MDoxMDc0MjY2MTEyLDgzODg2MDg6MTA3Mzc1ODIwOCwyNTE2NTgyNDo1NDA2ODgsNDE5NDMwNDA6MTYsNTg3MjAyNTY6MTA3Mzc1ODIyNCw3NTQ5NzQ3MjoxMDc0MjgyNTEyLDkyMjc0Njg4OjEwNzM3NDE4MjQsMTA5MDUxOTA0OjUyNDI4OCwxMjU4MjkxMjA6MTA3NDI2NjEyOCwxNDI2MDYzMzY6NTI0MzA0LDE1OTM4MzU1MjowLDE3NjE2MDc2ODoxNjM4NCwxOTI5Mzc5ODQ6MTA3NDI2NjExMiwyMDk3MTUyMDA6MTA3Mzc0MTg0MCwyMjY0OTI0MTY6NTQwNjcyLDI0MzI2OTYzMjoxMDc0MjgyNDk2LDI2MDA0Njg0ODoxNjQwMCwyNjg0MzU0NTY6MCwyODUyMTI2NzI6MTA3NDI2NjEyOCwzMDE5ODk4ODg6MTA3Mzc1ODIyNCwzMTg3NjcxMDQ6MTA3NDI4MjQ5NiwzMzU1NDQzMjA6MTA3NDI2NjExMiwzNTIzMjE1MzY6MTYsMzY5MDk4NzUyOjU0MDY4OCwzODU4NzU5Njg6MTYzODQsNDAyNjUzMTg0OjE2NDAwLDQxOTQzMDQwMDo1MjQyODgsNDM2MjA3NjE2OjUyNDMwNCw0NTI5ODQ4MzI6MTA3Mzc0MTg0MCw0Njk3NjIwNDg6NTQwNjcyLDQ4NjUzOTI2NDoxMDczNzU4MjA4LDUwMzMxNjQ4MDoxMDczNzQxODI0LDUyMDA5MzY5NjoxMDc0MjgyNTEyLDI3NjgyNDA2NDo1NDA2ODgsMjkzNjAxMjgwOjUyNDI4OCwzMTAzNzg0OTY6MTA3NDI2NjExMiwzMjcxNTU3MTI6MTYzODQsMzQzOTMyOTI4OjEwNzM3NTgyMDgsMzYwNzEwMTQ0OjEwNzQyODI1MTIsMzc3NDg3MzYwOjE2LDM5NDI2NDU3NjoxMDczNzQxODI0LDQxMTA0MTc5MjoxMDc0MjgyNDk2LDQyNzgxOTAwODoxMDczNzQxODQwLDQ0NDU5NjIyNDoxMDczNzU4MjI0LDQ2MTM3MzQ0MDo1MjQzMDQsNDc4MTUwNjU2OjAsNDk0OTI3ODcyOjE2NDAwLDUxMTcwNTA4ODoxMDc0MjY2MTI4LDUyODQ4MjMwNDo1NDA2NzJ9LHswOjI2MCwxMDQ4NTc2OjAsMjA5NzE1Mjo2NzEwOTEyMCwzMTQ1NzI4OjY1Nzk2LDQxOTQzMDQ6NjU1NDAsNTI0Mjg4MDo2NzEwODg2OCw2MjkxNDU2OjY3MTc0NjYwLDczNDAwMzI6NjcxNzQ0MDAsODM4ODYwODo2NzEwODg2NCw5NDM3MTg0OjY3MTc0NjU2LDEwNDg1NzYwOjY1NzkyLDExNTM0MzM2OjY3MTc0NDA0LDEyNTgyOTEyOjY3MTA5MTI0LDEzNjMxNDg4OjY1NTM2LDE0NjgwMDY0OjQsMTU3Mjg2NDA6MjU2LDUyNDI4ODo2NzE3NDY1NiwxNTcyODY0OjY3MTc0NDA0LDI2MjE0NDA6MCwzNjcwMDE2OjY3MTA5MTIwLDQ3MTg1OTI6NjcxMDg4NjgsNTc2NzE2ODo2NTUzNiw2ODE1NzQ0OjY1NTQwLDc4NjQzMjA6MjYwLDg5MTI4OTY6NCw5OTYxNDcyOjI1NiwxMTAxMDA0ODo2NzE3NDQwMCwxMjA1ODYyNDo2NTc5NiwxMzEwNzIwMDo2NTc5MiwxNDE1NTc3Njo2NzEwOTEyNCwxNTIwNDM1Mjo2NzE3NDY2MCwxNjI1MjkyODo2NzEwODg2NCwxNjc3NzIxNjo2NzE3NDY1NiwxNzgyNTc5Mjo2NTU0MCwxODg3NDM2ODo2NTUzNiwxOTkyMjk0NDo2NzEwOTEyMCwyMDk3MTUyMDoyNTYsMjIwMjAwOTY6NjcxNzQ2NjAsMjMwNjg2NzI6NjcxMDg4NjgsMjQxMTcyNDg6MCwyNTE2NTgyNDo2NzEwOTEyNCwyNjIxNDQwMDo2NzEwODg2NCwyNzI2Mjk3Njo0LDI4MzExNTUyOjY1NzkyLDI5MzYwMTI4OjY3MTc0NDAwLDMwNDA4NzA0OjI2MCwzMTQ1NzI4MDo2NTc5NiwzMjUwNTg1Njo2NzE3NDQwNCwxNzMwMTUwNDo2NzEwODg2NCwxODM1MDA4MDoyNjAsMTkzOTg2NTY6NjcxNzQ2NTYsMjA0NDcyMzI6MCwyMTQ5NTgwODo2NTU0MCwyMjU0NDM4NDo2NzEwOTEyMCwyMzU5Mjk2MDoyNTYsMjQ2NDE1MzY6NjcxNzQ0MDQsMjU2OTAxMTI6NjU1MzYsMjY3Mzg2ODg6NjcxNzQ2NjAsMjc3ODcyNjQ6NjU3OTYsMjg4MzU4NDA6NjcxMDg4NjgsMjk4ODQ0MTY6NjcxMDkxMjQsMzA5MzI5OTI6NjcxNzQ0MDAsMzE5ODE1Njg6NCwzMzAzMDE0NDo2NTc5Mn0sezA6MjE1MTY4MjA0OCw2NTUzNjoyMTQ3NDg3ODA4LDEzMTA3Mjo0MTk4NDY0LDE5NjYwODoyMTUxNjc3OTUyLDI2MjE0NDowLDMyNzY4MDo0MTk4NDAwLDM5MzIxNjoyMTQ3NDgzNzEyLDQ1ODc1Mjo0MTk0MzY4LDUyNDI4ODoyMTQ3NDgzNjQ4LDU4OTgyNDo0MTk0MzA0LDY1NTM2MDo2NCw3MjA4OTY6MjE0NzQ4Nzc0NCw3ODY0MzI6MjE1MTY3ODAxNiw4NTE5Njg6NDE2MCw5MTc1MDQ6NDA5Niw5ODMwNDA6MjE1MTY4MjExMiwzMjc2ODoyMTQ3NDg3ODA4LDk4MzA0OjY0LDE2Mzg0MDoyMTUxNjc4MDE2LDIyOTM3NjoyMTQ3NDg3NzQ0LDI5NDkxMjo0MTk4NDAwLDM2MDQ0ODoyMTUxNjgyMTEyLDQyNTk4NDowLDQ5MTUyMDoyMTUxNjc3OTUyLDU1NzA1Njo0MDk2LDYyMjU5MjoyMTUxNjgyMDQ4LDY4ODEyODo0MTk0MzA0LDc1MzY2NDo0MTYwLDgxOTIwMDoyMTQ3NDgzNjQ4LDg4NDczNjo0MTk0MzY4LDk1MDI3Mjo0MTk4NDY0LDEwMTU4MDg6MjE0NzQ4MzcxMiwxMDQ4NTc2OjQxOTQzNjgsMTExNDExMjo0MTk4NDAwLDExNzk2NDg6MjE0NzQ4MzcxMiwxMjQ1MTg0OjAsMTMxMDcyMDo0MTYwLDEzNzYyNTY6MjE1MTY3ODAxNiwxNDQxNzkyOjIxNTE2ODIwNDgsMTUwNzMyODoyMTQ3NDg3ODA4LDE1NzI4NjQ6MjE1MTY4MjExMiwxNjM4NDAwOjIxNDc0ODM2NDgsMTcwMzkzNjoyMTUxNjc3OTUyLDE3Njk0NzI6NDE5ODQ2NCwxODM1MDA4OjIxNDc0ODc3NDQsMTkwMDU0NDo0MTk0MzA0LDE5NjYwODA6NjQsMjAzMTYxNjo0MDk2LDEwODEzNDQ6MjE1MTY3Nzk1MiwxMTQ2ODgwOjIxNTE2ODIxMTIsMTIxMjQxNjowLDEyNzc5NTI6NDE5ODQwMCwxMzQzNDg4OjQxOTQzNjgsMTQwOTAyNDoyMTQ3NDgzNjQ4LDE0NzQ1NjA6MjE0NzQ4NzgwOCwxNTQwMDk2OjY0LDE2MDU2MzI6MjE0NzQ4MzcxMiwxNjcxMTY4OjQwOTYsMTczNjcwNDoyMTQ3NDg3NzQ0LDE4MDIyNDA6MjE1MTY3ODAxNiwxODY3Nzc2OjQxNjAsMTkzMzMxMjoyMTUxNjgyMDQ4LDE5OTg4NDg6NDE5NDMwNCwyMDY0Mzg0OjQxOTg0NjR9LHswOjEyOCw0MDk2OjE3MDM5MzYwLDgxOTI6MjYyMTQ0LDEyMjg4OjUzNjg3MDkxMiwxNjM4NDo1MzcxMzMxODQsMjA0ODA6MTY3NzczNDQsMjQ1NzY6NTUzNjQ4MjU2LDI4NjcyOjI2MjI3MiwzMjc2ODoxNjc3NzIxNiwzNjg2NDo1MzcxMzMwNTYsNDA5NjA6NTM2ODcxMDQwLDQ1MDU2OjU1MzkxMDQwMCw0OTE1Mjo1NTM5MTAyNzIsNTMyNDg6MCw1NzM0NDoxNzAzOTQ4OCw2MTQ0MDo1NTM2NDgxMjgsMjA0ODoxNzAzOTQ4OCw2MTQ0OjU1MzY0ODI1NiwxMDI0MDoxMjgsMTQzMzY6MTcwMzkzNjAsMTg0MzI6MjYyMTQ0LDIyNTI4OjUzNzEzMzE4NCwyNjYyNDo1NTM5MTAyNzIsMzA3MjA6NTM2ODcwOTEyLDM0ODE2OjUzNzEzMzA1NiwzODkxMjowLDQzMDA4OjU1MzkxMDQwMCw0NzEwNDoxNjc3NzM0NCw1MTIwMDo1MzY4NzEwNDAsNTUyOTY6NTUzNjQ4MTI4LDU5MzkyOjE2Nzc3MjE2LDYzNDg4OjI2MjI3Miw2NTUzNjoyNjIxNDQsNjk2MzI6MTI4LDczNzI4OjUzNjg3MDkxMiw3NzgyNDo1NTM2NDgyNTYsODE5MjA6MTY3NzczNDQsODYwMTY6NTUzOTEwMjcyLDkwMTEyOjUzNzEzMzE4NCw5NDIwODoxNjc3NzIxNiw5ODMwNDo1NTM5MTA0MDAsMTAyNDAwOjU1MzY0ODEyOCwxMDY0OTY6MTcwMzkzNjAsMTEwNTkyOjUzNzEzMzA1NiwxMTQ2ODg6MjYyMjcyLDExODc4NDo1MzY4NzEwNDAsMTIyODgwOjAsMTI2OTc2OjE3MDM5NDg4LDY3NTg0OjU1MzY0ODI1Niw3MTY4MDoxNjc3NzIxNiw3NTc3NjoxNzAzOTM2MCw3OTg3Mjo1MzcxMzMxODQsODM5Njg6NTM2ODcwOTEyLDg4MDY0OjE3MDM5NDg4LDkyMTYwOjEyOCw5NjI1Njo1NTM5MTAyNzIsMTAwMzUyOjI2MjI3MiwxMDQ0NDg6NTUzOTEwNDAwLDEwODU0NDowLDExMjY0MDo1NTM2NDgxMjgsMTE2NzM2OjE2Nzc3MzQ0LDEyMDgzMjoyNjIxNDQsMTI0OTI4OjUzNzEzMzA1NiwxMjkwMjQ6NTM2ODcxMDQwfSx7MDoyNjg0MzU0NjQsMjU2OjgxOTIsNTEyOjI3MDUzMjYwOCw3Njg6MjcwNTQwODA4LDEwMjQ6MjY4NDQzNjQ4LDEyODA6MjA5NzE1MiwxNTM2OjIwOTcxNjAsMTc5MjoyNjg0MzU0NTYsMjA0ODowLDIzMDQ6MjY4NDQzNjU2LDI1NjA6MjEwNTM0NCwyODE2OjgsMzA3MjoyNzA1MzI2MTYsMzMyODoyMTA1MzUyLDM1ODQ6ODIwMCwzODQwOjI3MDU0MDgwMCwxMjg6MjcwNTMyNjA4LDM4NDoyNzA1NDA4MDgsNjQwOjgsODk2OjIwOTcxNTIsMTE1MjoyMTA1MzUyLDE0MDg6MjY4NDM1NDY0LDE2NjQ6MjY4NDQzNjQ4LDE5MjA6ODIwMCwyMTc2OjIwOTcxNjAsMjQzMjo4MTkyLDI2ODg6MjY4NDQzNjU2LDI5NDQ6MjcwNTMyNjE2LDMyMDA6MCwzNDU2OjI3MDU0MDgwMCwzNzEyOjIxMDUzNDQsMzk2ODoyNjg0MzU0NTYsNDA5NjoyNjg0NDM2NDgsNDM1MjoyNzA1MzI2MTYsNDYwODoyNzA1NDA4MDgsNDg2NDo4MjAwLDUxMjA6MjA5NzE1Miw1Mzc2OjI2ODQzNTQ1Niw1NjMyOjI2ODQzNTQ2NCw1ODg4OjIxMDUzNDQsNjE0NDoyMTA1MzUyLDY0MDA6MCw2NjU2OjgsNjkxMjoyNzA1MzI2MDgsNzE2ODo4MTkyLDc0MjQ6MjY4NDQzNjU2LDc2ODA6MjcwNTQwODAwLDc5MzY6MjA5NzE2MCw0MjI0OjgsNDQ4MDoyMTA1MzQ0LDQ3MzY6MjA5NzE1Miw0OTkyOjI2ODQzNTQ2NCw1MjQ4OjI2ODQ0MzY0OCw1NTA0OjgyMDAsNTc2MDoyNzA1NDA4MDgsNjAxNjoyNzA1MzI2MDgsNjI3MjoyNzA1NDA4MDAsNjUyODoyNzA1MzI2MTYsNjc4NDo4MTkyLDcwNDA6MjEwNTM1Miw3Mjk2OjIwOTcxNjAsNzU1MjowLDc4MDg6MjY4NDM1NDU2LDgwNjQ6MjY4NDQzNjU2fSx7MDoxMDQ4NTc2LDE2OjMzNTU1NDU3LDMyOjEwMjQsNDg6MTA0OTYwMSw2NDozNDYwNDAzMyw4MDowLDk2OjEsMTEyOjM0NjAzMDA5LDEyODozMzU1NTQ1NiwxNDQ6MTA0ODU3NywxNjA6MzM1NTQ0MzMsMTc2OjM0NjA0MDMyLDE5MjozNDYwMzAwOCwyMDg6MTAyNSwyMjQ6MTA0OTYwMCwyNDA6MzM1NTQ0MzIsODozNDYwMzAwOSwyNDowLDQwOjMzNTU1NDU3LDU2OjM0NjA0MDMyLDcyOjEwNDg1NzYsODg6MzM1NTQ0MzMsMTA0OjMzNTU0NDMyLDEyMDoxMDI1LDEzNjoxMDQ5NjAxLDE1MjozMzU1NTQ1NiwxNjg6MzQ2MDMwMDgsMTg0OjEwNDg1NzcsMjAwOjEwMjQsMjE2OjM0NjA0MDMzLDIzMjoxLDI0ODoxMDQ5NjAwLDI1NjozMzU1NDQzMiwyNzI6MTA0ODU3NiwyODg6MzM1NTU0NTcsMzA0OjM0NjAzMDA5LDMyMDoxMDQ4NTc3LDMzNjozMzU1NTQ1NiwzNTI6MzQ2MDQwMzIsMzY4OjEwNDk2MDEsMzg0OjEwMjUsNDAwOjM0NjA0MDMzLDQxNjoxMDQ5NjAwLDQzMjoxLDQ0ODowLDQ2NDozNDYwMzAwOCw0ODA6MzM1NTQ0MzMsNDk2OjEwMjQsMjY0OjEwNDk2MDAsMjgwOjMzNTU1NDU3LDI5NjozNDYwMzAwOSwzMTI6MSwzMjg6MzM1NTQ0MzIsMzQ0OjEwNDg1NzYsMzYwOjEwMjUsMzc2OjM0NjA0MDMyLDM5MjozMzU1NDQzMyw0MDg6MzQ2MDMwMDgsNDI0OjAsNDQwOjM0NjA0MDMzLDQ1NjoxMDQ5NjAxLDQ3MjoxMDI0LDQ4ODozMzU1NTQ1Niw1MDQ6MTA0ODU3N30sezA6MTM0MjE5ODA4LDE6MTMxMDcyLDI6MTM0MjE3NzI4LDM6MzIsNDoxMzExMDQsNToxMzQzNTA4ODAsNjoxMzQzNTA4NDgsNzoyMDQ4LDg6MTM0MzQ4ODAwLDk6MTM0MjE5Nzc2LDEwOjEzMzEyMCwxMToxMzQzNDg4MzIsMTI6MjA4MCwxMzowLDE0OjEzNDIxNzc2MCwxNToxMzMxNTIsMjE0NzQ4MzY0ODoyMDQ4LDIxNDc0ODM2NDk6MTM0MzUwODgwLDIxNDc0ODM2NTA6MTM0MjE5ODA4LDIxNDc0ODM2NTE6MTM0MjE3NzI4LDIxNDc0ODM2NTI6MTM0MzQ4ODAwLDIxNDc0ODM2NTM6MTMzMTIwLDIxNDc0ODM2NTQ6MTMzMTUyLDIxNDc0ODM2NTU6MzIsMjE0NzQ4MzY1NjoxMzQyMTc3NjAsMjE0NzQ4MzY1NzoyMDgwLDIxNDc0ODM2NTg6MTMxMTA0LDIxNDc0ODM2NTk6MTM0MzUwODQ4LDIxNDc0ODM2NjA6MCwyMTQ3NDgzNjYxOjEzNDM0ODgzMiwyMTQ3NDgzNjYyOjEzNDIxOTc3NiwyMTQ3NDgzNjYzOjEzMTA3MiwxNjoxMzMxNTIsMTc6MTM0MzUwODQ4LDE4OjMyLDE5OjIwNDgsMjA6MTM0MjE5Nzc2LDIxOjEzNDIxNzc2MCwyMjoxMzQzNDg4MzIsMjM6MTMxMDcyLDI0OjAsMjU6MTMxMTA0LDI2OjEzNDM0ODgwMCwyNzoxMzQyMTk4MDgsMjg6MTM0MzUwODgwLDI5OjEzMzEyMCwzMDoyMDgwLDMxOjEzNDIxNzcyOCwyMTQ3NDgzNjY0OjEzMTA3MiwyMTQ3NDgzNjY1OjIwNDgsMjE0NzQ4MzY2NjoxMzQzNDg4MzIsMjE0NzQ4MzY2NzoxMzMxNTIsMjE0NzQ4MzY2ODozMiwyMTQ3NDgzNjY5OjEzNDM0ODgwMCwyMTQ3NDgzNjcwOjEzNDIxNzcyOCwyMTQ3NDgzNjcxOjEzNDIxOTgwOCwyMTQ3NDgzNjcyOjEzNDM1MDg4MCwyMTQ3NDgzNjczOjEzNDIxNzc2MCwyMTQ3NDgzNjc0OjEzNDIxOTc3NiwyMTQ3NDgzNjc1OjAsMjE0NzQ4MzY3NjoxMzMxMjAsMjE0NzQ4MzY3NzoyMDgwLDIxNDc0ODM2Nzg6MTMxMTA0LDIxNDc0ODM2Nzk6MTM0MzUwODQ4fV0sdT1bNDE2MDc0OTU2OSw1Mjg0ODIzMDQsMzMwMzAxNDQsMjA2NDM4NCwxMjkwMjQsODA2NCw1MDQsMjE0NzQ4MzY3OV0sZD1hLkRFUz1zLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5fa2V5LHI9dC53b3JkcyxlPVtdLGk9MDtpPDU2O2krKyl7dmFyIG49Y1tpXS0xO2VbaV09cltuPj4+NV0+Pj4zMS1uJTMyJjF9Zm9yKHZhciBvPXRoaXMuX3N1YktleXM9W10scz0wO3M8MTY7cysrKXtmb3IodmFyIGE9b1tzXT1bXSxmPWxbc10saT0wO2k8MjQ7aSsrKWFbaS82fDBdfD1lWyhoW2ldLTErZiklMjhdPDwzMS1pJTYsYVs0KyhpLzZ8MCldfD1lWzI4KyhoW2krMjRdLTErZiklMjhdPDwzMS1pJTY7YVswXT1hWzBdPDwxfGFbMF0+Pj4zMTtmb3IodmFyIGk9MTtpPDc7aSsrKWFbaV09YVtpXT4+PjQqKGktMSkrMzthWzddPWFbN108PDV8YVs3XT4+PjI3fWZvcih2YXIgdT10aGlzLl9pbnZTdWJLZXlzPVtdLGk9MDtpPDE2O2krKyl1W2ldPW9bMTUtaV19LGVuY3J5cHRCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX2RvQ3J5cHRCbG9jayh0LHIsdGhpcy5fc3ViS2V5cyl9LGRlY3J5cHRCbG9jazpmdW5jdGlvbih0LHIpe3RoaXMuX2RvQ3J5cHRCbG9jayh0LHIsdGhpcy5faW52U3ViS2V5cyl9LF9kb0NyeXB0QmxvY2s6ZnVuY3Rpb24odCxpLG4pe3RoaXMuX2xCbG9jaz10W2ldLHRoaXMuX3JCbG9jaz10W2krMV0sci5jYWxsKHRoaXMsNCwyNTI2NDUxMzUpLHIuY2FsbCh0aGlzLDE2LDY1NTM1KSxlLmNhbGwodGhpcywyLDg1ODk5MzQ1OSksZS5jYWxsKHRoaXMsOCwxNjcxMTkzNSksci5jYWxsKHRoaXMsMSwxNDMxNjU1NzY1KTtmb3IodmFyIG89MDtvPDE2O28rKyl7Zm9yKHZhciBzPW5bb10sYT10aGlzLl9sQmxvY2ssYz10aGlzLl9yQmxvY2ssaD0wLGw9MDtsPDg7bCsrKWh8PWZbbF1bKChjXnNbbF0pJnVbbF0pPj4+MF07dGhpcy5fbEJsb2NrPWMsdGhpcy5fckJsb2NrPWFeaH12YXIgZD10aGlzLl9sQmxvY2s7dGhpcy5fbEJsb2NrPXRoaXMuX3JCbG9jayx0aGlzLl9yQmxvY2s9ZCxyLmNhbGwodGhpcywxLDE0MzE2NTU3NjUpLGUuY2FsbCh0aGlzLDgsMTY3MTE5MzUpLGUuY2FsbCh0aGlzLDIsODU4OTkzNDU5KSxyLmNhbGwodGhpcywxNiw2NTUzNSksci5jYWxsKHRoaXMsNCwyNTI2NDUxMzUpLHRbaV09dGhpcy5fbEJsb2NrLHRbaSsxXT10aGlzLl9yQmxvY2t9LGtleVNpemU6MixpdlNpemU6MixibG9ja1NpemU6Mn0pO2kuREVTPXMuX2NyZWF0ZUhlbHBlcihkKTt2YXIgdj1hLlRyaXBsZURFUz1zLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9rZXkscj10LndvcmRzO3RoaXMuX2RlczE9ZC5jcmVhdGVFbmNyeXB0b3Ioby5jcmVhdGUoci5zbGljZSgwLDIpKSksdGhpcy5fZGVzMj1kLmNyZWF0ZUVuY3J5cHRvcihvLmNyZWF0ZShyLnNsaWNlKDIsNCkpKSx0aGlzLl9kZXMzPWQuY3JlYXRlRW5jcnlwdG9yKG8uY3JlYXRlKHIuc2xpY2UoNCw2KSkpfSxlbmNyeXB0QmxvY2s6ZnVuY3Rpb24odCxyKXt0aGlzLl9kZXMxLmVuY3J5cHRCbG9jayh0LHIpLHRoaXMuX2RlczIuZGVjcnlwdEJsb2NrKHQsciksdGhpcy5fZGVzMy5lbmNyeXB0QmxvY2sodCxyKX0sZGVjcnlwdEJsb2NrOmZ1bmN0aW9uKHQscil7dGhpcy5fZGVzMy5kZWNyeXB0QmxvY2sodCxyKSx0aGlzLl9kZXMyLmVuY3J5cHRCbG9jayh0LHIpLHRoaXMuX2RlczEuZGVjcnlwdEJsb2NrKHQscil9LGtleVNpemU6NixpdlNpemU6MixibG9ja1NpemU6Mn0pO2kuVHJpcGxlREVTPXMuX2NyZWF0ZUhlbHBlcih2KX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIHIoKXtmb3IodmFyIHQ9dGhpcy5fUyxyPXRoaXMuX2ksZT10aGlzLl9qLGk9MCxuPTA7bjw0O24rKyl7cj0ocisxKSUyNTYsZT0oZSt0W3JdKSUyNTY7dmFyIG89dFtyXTt0W3JdPXRbZV0sdFtlXT1vLGl8PXRbKHRbcl0rdFtlXSklMjU2XTw8MjQtOCpufXJldHVybiB0aGlzLl9pPXIsdGhpcy5faj1lLGl9dmFyIGU9dCxpPWUubGliLG49aS5TdHJlYW1DaXBoZXIsbz1lLmFsZ28scz1vLlJDND1uLmV4dGVuZCh7X2RvUmVzZXQ6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5fa2V5LHI9dC53b3JkcyxlPXQuc2lnQnl0ZXMsaT10aGlzLl9TPVtdLG49MDtuPDI1NjtuKyspaVtuXT1uO2Zvcih2YXIgbj0wLG89MDtuPDI1NjtuKyspe3ZhciBzPW4lZSxhPXJbcz4+PjJdPj4+MjQtcyU0KjgmMjU1O289KG8raVtuXSthKSUyNTY7dmFyIGM9aVtuXTtpW25dPWlbb10saVtvXT1jfXRoaXMuX2k9dGhpcy5faj0wfSxfZG9Qcm9jZXNzQmxvY2s6ZnVuY3Rpb24odCxlKXt0W2VdXj1yLmNhbGwodGhpcyl9LGtleVNpemU6OCxpdlNpemU6MH0pO2UuUkM0PW4uX2NyZWF0ZUhlbHBlcihzKTt2YXIgYT1vLlJDNERyb3A9cy5leHRlbmQoe2NmZzpzLmNmZy5leHRlbmQoe2Ryb3A6MTkyfSksX2RvUmVzZXQ6ZnVuY3Rpb24oKXtzLl9kb1Jlc2V0LmNhbGwodGhpcyk7Zm9yKHZhciB0PXRoaXMuY2ZnLmRyb3A7dD4wO3QtLSlyLmNhbGwodGhpcyl9fSk7ZS5SQzREcm9wPW4uX2NyZWF0ZUhlbHBlcihhKX0oKSx0Lm1vZGUuQ1RSR2xhZG1hbj1mdW5jdGlvbigpe2Z1bmN0aW9uIHIodCl7aWYoMjU1PT09KHQ+PjI0JjI1NSkpe3ZhciByPXQ+PjE2JjI1NSxlPXQ+PjgmMjU1LGk9MjU1JnQ7MjU1PT09cj8ocj0wLDI1NT09PWU/KGU9MCwyNTU9PT1pP2k9MDorK2kpOisrZSk6KytyLHQ9MCx0Kz1yPDwxNix0Kz1lPDw4LHQrPWl9ZWxzZSB0Kz0xPDwyNDtyZXR1cm4gdH1mdW5jdGlvbiBlKHQpe3JldHVybiAwPT09KHRbMF09cih0WzBdKSkmJih0WzFdPXIodFsxXSkpLHR9dmFyIGk9dC5saWIuQmxvY2tDaXBoZXJNb2RlLmV4dGVuZCgpLG49aS5FbmNyeXB0b3I9aS5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe3ZhciBpPXRoaXMuX2NpcGhlcixuPWkuYmxvY2tTaXplLG89dGhpcy5faXYscz10aGlzLl9jb3VudGVyO28mJihzPXRoaXMuX2NvdW50ZXI9by5zbGljZSgwKSx0aGlzLl9pdj12b2lkIDApLGUocyk7dmFyIGE9cy5zbGljZSgwKTtpLmVuY3J5cHRCbG9jayhhLDApO2Zvcih2YXIgYz0wO2M8bjtjKyspdFtyK2NdXj1hW2NdfX0pO3JldHVybiBpLkRlY3J5cHRvcj1uLGl9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiByKCl7Zm9yKHZhciB0PXRoaXMuX1gscj10aGlzLl9DLGU9MDtlPDg7ZSsrKWFbZV09cltlXTtyWzBdPXJbMF0rMTI5NTMwNzU5Nyt0aGlzLl9ifDAsclsxXT1yWzFdKzM1NDUwNTIzNzErKHJbMF0+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+Pj4yNCkrY1s1XXwwfXZhciBlPXQsaT1lLmxpYixuPWkuU3RyZWFtQ2lwaGVyLG89ZS5hbGdvLHM9W10sYT1bXSxjPVtdLGg9by5SYWJiaXQ9bi5leHRlbmQoe19kb1Jlc2V0OmZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuX2tleS53b3JkcyxlPXRoaXMuY2ZnLml2LGk9MDtpPDQ7aSsrKXRbaV09MTY3MTE5MzUmKHRbaV08PDh8dFtpXT4+PjI0KXw0Mjc4MjU1MzYwJih0W2ldPDwyNHx0W2ldPj4+OCk7dmFyIG49dGhpcy5fWD1bdFswXSx0WzNdPDwxNnx0WzJdPj4+MTYsdFsxXSx0WzBdPDwxNnx0WzNdPj4+MTYsdFsyXSx0WzFdPDwxNnx0WzBdPj4+MTYsdFszXSx0WzJdPDwxNnx0WzFdPj4+MTZdLG89dGhpcy5fQz1bdFsyXTw8MTZ8dFsyXT4+PjE2LDQyOTQ5MDE3NjAmdFswXXw2NTUzNSZ0WzFdLHRbM108PDE2fHRbM10+Pj4xNiw0Mjk0OTAxNzYwJnRbMV18NjU1MzUmdFsyXSx0WzBdPDwxNnx0WzBdPj4+MTYsNDI5NDkwMTc2MCZ0WzJdfDY1NTM1JnRbM10sdFsxXTw8MTZ8dFsxXT4+PjE2LDQyOTQ5MDE3NjAmdFszXXw2NTUzNSZ0WzBdXTt0aGlzLl9iPTA7Zm9yKHZhciBpPTA7aTw0O2krKylyLmNhbGwodGhpcyk7Zm9yKHZhciBpPTA7aTw4O2krKylvW2ldXj1uW2krNCY3XTtpZihlKXt2YXIgcz1lLndvcmRzLGE9c1swXSxjPXNbMV0saD0xNjcxMTkzNSYoYTw8OHxhPj4+MjQpfDQyNzgyNTUzNjAmKGE8PDI0fGE+Pj44KSxsPTE2NzExOTM1JihjPDw4fGM+Pj4yNCl8NDI3ODI1NTM2MCYoYzw8MjR8Yz4+PjgpLGY9aD4+PjE2fDQyOTQ5MDE3NjAmbCx1PWw8PDE2fDY1NTM1Jmg7b1swXV49aCxvWzFdXj1mLG9bMl1ePWwsb1szXV49dSxvWzRdXj1oLG9bNV1ePWYsb1s2XV49bCxvWzddXj11O2Zvcih2YXIgaT0wO2k8NDtpKyspci5jYWxsKHRoaXMpfX0sX2RvUHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQsZSl7dmFyIGk9dGhpcy5fWDtyLmNhbGwodGhpcyksc1swXT1pWzBdXmlbNV0+Pj4xNl5pWzNdPDwxNixzWzFdPWlbMl1eaVs3XT4+PjE2XmlbNV08PDE2LHNbMl09aVs0XV5pWzFdPj4+MTZeaVs3XTw8MTYsc1szXT1pWzZdXmlbM10+Pj4xNl5pWzFdPDwxNjtmb3IodmFyIG49MDtuPDQ7bisrKXNbbl09MTY3MTE5MzUmKHNbbl08PDh8c1tuXT4+PjI0KXw0Mjc4MjU1MzYwJihzW25dPDwyNHxzW25dPj4+OCksdFtlK25dXj1zW25dfSxibG9ja1NpemU6NCxpdlNpemU6Mn0pO2UuUmFiYml0PW4uX2NyZWF0ZUhlbHBlcihoKX0oKSx0Lm1vZGUuQ1RSPWZ1bmN0aW9uKCl7dmFyIHI9dC5saWIuQmxvY2tDaXBoZXJNb2RlLmV4dGVuZCgpLGU9ci5FbmNyeXB0b3I9ci5leHRlbmQoe3Byb2Nlc3NCbG9jazpmdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX2NpcGhlcixpPWUuYmxvY2tTaXplLG49dGhpcy5faXYsbz10aGlzLl9jb3VudGVyO24mJihvPXRoaXMuX2NvdW50ZXI9bi5zbGljZSgwKSx0aGlzLl9pdj12b2lkIDApO3ZhciBzPW8uc2xpY2UoMCk7ZS5lbmNyeXB0QmxvY2socywwKSxvW2ktMV09b1tpLTFdKzF8MDtmb3IodmFyIGE9MDthPGk7YSsrKXRbcithXV49c1thXX19KTtyZXR1cm4gci5EZWNyeXB0b3I9ZSxyfSgpLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gcigpe2Zvcih2YXIgdD10aGlzLl9YLHI9dGhpcy5fQyxlPTA7ZTw4O2UrKylhW2VdPXJbZV07clswXT1yWzBdKzEyOTUzMDc1OTcrdGhpcy5fYnwwLHJbMV09clsxXSszNTQ1MDUyMzcxKyhyWzBdPj4+MDxhWzBdPj4+MD8xOjApfDAsclsyXT1yWzJdKzg4NjI2MzA5MisoclsxXT4+PjA8YVsxXT4+PjA/MTowKXwwLHJbM109clszXSsxMjk1MzA3NTk3KyhyWzJdPj4+MDxhWzJdPj4+MD8xOjApfDAscls0XT1yWzRdKzM1NDUwNTIzNzErKHJbM10+Pj4wPGFbM10+Pj4wPzE6MCl8MCxyWzVdPXJbNV0rODg2MjYzMDkyKyhyWzRdPj4+MDxhWzRdPj4+MD8xOjApfDAscls2XT1yWzZdKzEyOTUzMDc1OTcrKHJbNV0+Pj4wPGFbNV0+Pj4wPzE6MCl8MCxyWzddPXJbN10rMzU0NTA1MjM3MSsocls2XT4+PjA8YVs2XT4+PjA/MTowKXwwLHRoaXMuX2I9cls3XT4+PjA8YVs3XT4+PjA/MTowO2Zvcih2YXIgZT0wO2U8ODtlKyspe3ZhciBpPXRbZV0rcltlXSxuPTY1NTM1Jmksbz1pPj4+MTYscz0oKG4qbj4+PjE3KStuKm8+Pj4xNSkrbypvLGg9KCg0Mjk0OTAxNzYwJmkpKml8MCkrKCg2NTUzNSZpKSppfDApO2NbZV09c15ofXRbMF09Y1swXSsoY1s3XTw8MTZ8Y1s3XT4+PjE2KSsoY1s2XTw8MTZ8Y1s2XT4+PjE2KXwwLHRbMV09Y1sxXSsoY1swXTw8OHxjWzBdPj4+MjQpK2NbN118MCx0WzJdPWNbMl0rKGNbMV08PDE2fGNbMV0+Pj4xNikrKGNbMF08PDE2fGNbMF0+Pj4xNil8MCx0WzNdPWNbM10rKGNbMl08PDh8Y1syXT4+PjI0KStjWzFdfDAsdFs0XT1jWzRdKyhjWzNdPDwxNnxjWzNdPj4+MTYpKyhjWzJdPDwxNnxjWzJdPj4+MTYpfDAsdFs1XT1jWzVdKyhjWzRdPDw4fGNbNF0+Pj4yNCkrY1szXXwwLHRbNl09Y1s2XSsoY1s1XTw8MTZ8Y1s1XT4+PjE2KSsoY1s0XTw8MTZ8Y1s0XT4+PjE2KXwwLHRbN109Y1s3XSsoY1s2XTw8OHxjWzZdPj4+MjQpK2NbNV18MH12YXIgZT10LGk9ZS5saWIsbj1pLlN0cmVhbUNpcGhlcixvPWUuYWxnbyxzPVtdLGE9W10sYz1bXSxoPW8uUmFiYml0TGVnYWN5PW4uZXh0ZW5kKHtfZG9SZXNldDpmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2tleS53b3JkcyxlPXRoaXMuY2ZnLml2LGk9dGhpcy5fWD1bdFswXSx0WzNdPDwxNnx0WzJdPj4+MTYsdFsxXSx0WzBdPDwxNnx0WzNdPj4+MTYsdFsyXSx0WzFdPDwxNnx0WzBdPj4+MTYsdFszXSx0WzJdPDwxNnx0WzFdPj4+MTZdLG49dGhpcy5fQz1bdFsyXTw8MTZ8dFsyXT4+PjE2LDQyOTQ5MDE3NjAmdFswXXw2NTUzNSZ0WzFdLHRbM108PDE2fHRbM10+Pj4xNiw0Mjk0OTAxNzYwJnRbMV18NjU1MzUmdFsyXSx0WzBdPDwxNnx0WzBdPj4+MTYsNDI5NDkwMTc2MCZ0WzJdfDY1NTM1JnRbM10sdFsxXTw8MTZ8dFsxXT4+PjE2LDQyOTQ5MDE3NjAmdFszXXw2NTUzNSZ0WzBdXTt0aGlzLl9iPTA7Zm9yKHZhciBvPTA7bzw0O28rKylyLmNhbGwodGhpcyk7Zm9yKHZhciBvPTA7bzw4O28rKyluW29dXj1pW28rNCY3XTtpZihlKXt2YXIgcz1lLndvcmRzLGE9c1swXSxjPXNbMV0saD0xNjcxMTkzNSYoYTw8OHxhPj4+MjQpfDQyNzgyNTUzNjAmKGE8PDI0fGE+Pj44KSxsPTE2NzExOTM1JihjPDw4fGM+Pj4yNCl8NDI3ODI1NTM2MCYoYzw8MjR8Yz4+PjgpLGY9aD4+PjE2fDQyOTQ5MDE3NjAmbCx1PWw8PDE2fDY1NTM1Jmg7blswXV49aCxuWzFdXj1mLG5bMl1ePWwsblszXV49dSxuWzRdXj1oLG5bNV1ePWYsbls2XV49bCxuWzddXj11O2Zvcih2YXIgbz0wO288NDtvKyspci5jYWxsKHRoaXMpfX0sX2RvUHJvY2Vzc0Jsb2NrOmZ1bmN0aW9uKHQsZSl7dmFyIGk9dGhpcy5fWDtyLmNhbGwodGhpcyksc1swXT1pWzBdXmlbNV0+Pj4xNl5pWzNdPDwxNixzWzFdPWlbMl1eaVs3XT4+PjE2XmlbNV08PDE2LHNbMl09aVs0XV5pWzFdPj4+MTZeaVs3XTw8MTYsc1szXT1pWzZdXmlbM10+Pj4xNl5pWzFdPDwxNjtmb3IodmFyIG49MDtuPDQ7bisrKXNbbl09MTY3MTE5MzUmKHNbbl08PDh8c1tuXT4+PjI0KXw0Mjc4MjU1MzYwJihzW25dPDwyNHxzW25dPj4+OCksdFtlK25dXj1zW25dfSxibG9ja1NpemU6NCxpdlNpemU6Mn0pO2UuUmFiYml0TGVnYWN5PW4uX2NyZWF0ZUhlbHBlcihoKX0oKSx0LnBhZC5aZXJvUGFkZGluZz17cGFkOmZ1bmN0aW9uKHQscil7dmFyIGU9NCpyO3QuY2xhbXAoKSx0LnNpZ0J5dGVzKz1lLSh0LnNpZ0J5dGVzJWV8fGUpfSx1bnBhZDpmdW5jdGlvbih0KXtmb3IodmFyIHI9dC53b3JkcyxlPXQuc2lnQnl0ZXMtMTshKHJbZT4+PjJdPj4+MjQtZSU0KjgmMjU1KTspZS0tO3Quc2lnQnl0ZXM9ZSsxfX0sdH0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y3J5cHRvLWpzLm1pbi5qcy5tYXAiXX0= +//------QC-SOURCE-SPLIT------ + + (function() { + var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; + var __module = nodeEnv ? module : {exports:{}}; + var __filename = 'preview-scripts/assets/Script/tool/Shake.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, '61affD5SO9Ipo0fGmIeTFTZ', 'Shake'); +// Script/tool/Shake.js + +"use strict"; + +/** + * 自定义抖动效果 + */ +var Shake = cc.Class({ + "extends": cc.Component, + properties: { + //抖动时间 + duration: 0, + //X轴抖动范围 + shakeX: 0, + shakeY: 0 + }, + shake: function shake(callback) { + if (this.shaking) { + return; + } + + this.callback = callback; + this.shaking = true; + this.dtCost = 0; + this.nodeInitialPos = this.node.getPosition(); + this.unschedule(this.doSchedule); + this.schedule(this.doSchedule, 0, cc.macro.REPEAT_FOREVER, 0); + }, + doSchedule: function doSchedule(dt) { + var dt2 = dt * 50; + var randX = this.getRandomStrength(-this.shakeX, this.shakeX) * dt2; + var randY = this.getRandomStrength(-this.shakeY, this.shakeY) * dt2; + this.node.setPosition(cc.pAdd(this.nodeInitialPos, cc.v2(randX, randY))); + this.dtCost += dt; + + if (this.dtCost >= this.duration) { + this.unschedule(this.doSchedule); + this.node.setPosition(this.nodeInitialPos); + this.shaking = false; + + if (this.callback) { + this.callback(); + } + } + }, + //获取两个数间的随机值 + getRandomStrength: function getRandomStrength(min, max) { + return Math.random() * (max - min + 1) + min; + } +}); + +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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxTaGFrZS5qcyJdLCJuYW1lcyI6WyJTaGFrZSIsImNjIiwiQ2xhc3MiLCJDb21wb25lbnQiLCJwcm9wZXJ0aWVzIiwiZHVyYXRpb24iLCJzaGFrZVgiLCJzaGFrZVkiLCJzaGFrZSIsImNhbGxiYWNrIiwic2hha2luZyIsImR0Q29zdCIsIm5vZGVJbml0aWFsUG9zIiwibm9kZSIsImdldFBvc2l0aW9uIiwidW5zY2hlZHVsZSIsImRvU2NoZWR1bGUiLCJzY2hlZHVsZSIsIm1hY3JvIiwiUkVQRUFUX0ZPUkVWRVIiLCJkdCIsImR0MiIsInJhbmRYIiwiZ2V0UmFuZG9tU3RyZW5ndGgiLCJyYW5kWSIsInNldFBvc2l0aW9uIiwicEFkZCIsInYyIiwibWluIiwibWF4IiwiTWF0aCIsInJhbmRvbSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQSxLQUFLLEdBQUdDLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ2pCLGFBQVNELEVBQUUsQ0FBQ0UsU0FESztBQUdqQkMsRUFBQUEsVUFBVSxFQUFFO0FBQ1I7QUFDQUMsSUFBQUEsUUFBUSxFQUFFLENBRkY7QUFHUjtBQUNBQyxJQUFBQSxNQUFNLEVBQUUsQ0FKQTtBQUtSQyxJQUFBQSxNQUFNLEVBQUU7QUFMQSxHQUhLO0FBV2pCQyxFQUFBQSxLQUFLLEVBQUUsZUFBVUMsUUFBVixFQUFvQjtBQUN2QixRQUFHLEtBQUtDLE9BQVIsRUFBZ0I7QUFDWjtBQUNIOztBQUNELFNBQUtELFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsT0FBTCxHQUFlLElBQWY7QUFDQSxTQUFLQyxNQUFMLEdBQWMsQ0FBZDtBQUNBLFNBQUtDLGNBQUwsR0FBc0IsS0FBS0MsSUFBTCxDQUFVQyxXQUFWLEVBQXRCO0FBQ0EsU0FBS0MsVUFBTCxDQUFnQixLQUFLQyxVQUFyQjtBQUNBLFNBQUtDLFFBQUwsQ0FBYyxLQUFLRCxVQUFuQixFQUErQixDQUEvQixFQUFrQ2YsRUFBRSxDQUFDaUIsS0FBSCxDQUFTQyxjQUEzQyxFQUEyRCxDQUEzRDtBQUNILEdBckJnQjtBQXNCakJILEVBQUFBLFVBQVUsRUFBRSxvQkFBVUksRUFBVixFQUFjO0FBQ3RCLFFBQUlDLEdBQUcsR0FBR0QsRUFBRSxHQUFHLEVBQWY7QUFDQSxRQUFJRSxLQUFLLEdBQUcsS0FBS0MsaUJBQUwsQ0FBdUIsQ0FBQyxLQUFLakIsTUFBN0IsRUFBcUMsS0FBS0EsTUFBMUMsSUFBb0RlLEdBQWhFO0FBQ0EsUUFBSUcsS0FBSyxHQUFHLEtBQUtELGlCQUFMLENBQXVCLENBQUMsS0FBS2hCLE1BQTdCLEVBQXFDLEtBQUtBLE1BQTFDLElBQW9EYyxHQUFoRTtBQUNBLFNBQUtSLElBQUwsQ0FBVVksV0FBVixDQUFzQnhCLEVBQUUsQ0FBQ3lCLElBQUgsQ0FBUSxLQUFLZCxjQUFiLEVBQTZCWCxFQUFFLENBQUMwQixFQUFILENBQU1MLEtBQU4sRUFBYUUsS0FBYixDQUE3QixDQUF0QjtBQUNBLFNBQUtiLE1BQUwsSUFBZVMsRUFBZjs7QUFDQSxRQUFJLEtBQUtULE1BQUwsSUFBZSxLQUFLTixRQUF4QixFQUFrQztBQUM5QixXQUFLVSxVQUFMLENBQWdCLEtBQUtDLFVBQXJCO0FBQ0EsV0FBS0gsSUFBTCxDQUFVWSxXQUFWLENBQXNCLEtBQUtiLGNBQTNCO0FBQ0EsV0FBS0YsT0FBTCxHQUFlLEtBQWY7O0FBQ0EsVUFBRyxLQUFLRCxRQUFSLEVBQWlCO0FBQ2IsYUFBS0EsUUFBTDtBQUNIO0FBQ0o7QUFDSixHQXBDZ0I7QUFxQ2pCO0FBQ0FjLEVBQUFBLGlCQUFpQixFQUFFLDJCQUFVSyxHQUFWLEVBQWVDLEdBQWYsRUFBb0I7QUFDbkMsV0FBT0MsSUFBSSxDQUFDQyxNQUFMLE1BQWlCRixHQUFHLEdBQUdELEdBQU4sR0FBWSxDQUE3QixJQUFrQ0EsR0FBekM7QUFDSDtBQXhDZ0IsQ0FBVCxDQUFaIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICog6Ieq5a6a5LmJ5oqW5Yqo5pWI5p6cXHJcbiAqL1xyXG52YXIgU2hha2UgPSBjYy5DbGFzcyh7XHJcbiAgICBleHRlbmRzOiBjYy5Db21wb25lbnQsXHJcblxyXG4gICAgcHJvcGVydGllczoge1xyXG4gICAgICAgIC8v5oqW5Yqo5pe26Ze0XHJcbiAgICAgICAgZHVyYXRpb246IDAsXHJcbiAgICAgICAgLy9Y6L205oqW5Yqo6IyD5Zu0XHJcbiAgICAgICAgc2hha2VYOiAwLFxyXG4gICAgICAgIHNoYWtlWTogMCxcclxuICAgIH0sXHJcblxyXG4gICAgc2hha2U6IGZ1bmN0aW9uIChjYWxsYmFjaykge1xyXG4gICAgICAgIGlmKHRoaXMuc2hha2luZyl7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrO1xyXG4gICAgICAgIHRoaXMuc2hha2luZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5kdENvc3QgPSAwO1xyXG4gICAgICAgIHRoaXMubm9kZUluaXRpYWxQb3MgPSB0aGlzLm5vZGUuZ2V0UG9zaXRpb24oKTtcclxuICAgICAgICB0aGlzLnVuc2NoZWR1bGUodGhpcy5kb1NjaGVkdWxlKTtcclxuICAgICAgICB0aGlzLnNjaGVkdWxlKHRoaXMuZG9TY2hlZHVsZSwgMCwgY2MubWFjcm8uUkVQRUFUX0ZPUkVWRVIsIDApO1xyXG4gICAgfSxcclxuICAgIGRvU2NoZWR1bGU6IGZ1bmN0aW9uIChkdCkge1xyXG4gICAgICAgIHZhciBkdDIgPSBkdCAqIDUwO1xyXG4gICAgICAgIHZhciByYW5kWCA9IHRoaXMuZ2V0UmFuZG9tU3RyZW5ndGgoLXRoaXMuc2hha2VYLCB0aGlzLnNoYWtlWCkgKiBkdDI7XHJcbiAgICAgICAgdmFyIHJhbmRZID0gdGhpcy5nZXRSYW5kb21TdHJlbmd0aCgtdGhpcy5zaGFrZVksIHRoaXMuc2hha2VZKSAqIGR0MjtcclxuICAgICAgICB0aGlzLm5vZGUuc2V0UG9zaXRpb24oY2MucEFkZCh0aGlzLm5vZGVJbml0aWFsUG9zLCBjYy52MihyYW5kWCwgcmFuZFkpKSk7XHJcbiAgICAgICAgdGhpcy5kdENvc3QgKz0gZHQ7XHJcbiAgICAgICAgaWYgKHRoaXMuZHRDb3N0ID49IHRoaXMuZHVyYXRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMuZG9TY2hlZHVsZSk7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5zZXRQb3NpdGlvbih0aGlzLm5vZGVJbml0aWFsUG9zKTtcclxuICAgICAgICAgICAgdGhpcy5zaGFraW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuY2FsbGJhY2spe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYWxsYmFjaygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8v6I635Y+W5Lik5Liq5pWw6Ze055qE6ZqP5py65YC8XHJcbiAgICBnZXRSYW5kb21TdHJlbmd0aDogZnVuY3Rpb24gKG1pbiwgbWF4KSB7XHJcbiAgICAgICAgcmV0dXJuIE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkgKyBtaW47XHJcbiAgICB9LFxyXG59KTtcclxuIl19 +//------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 GameData_1 = require("./GameData"); +var Storage_1 = require("./Storage"); +var NewClass = /** @class */ (function (_super) { + __extends(NewClass, _super); + function NewClass() { + return _super !== null && _super.apply(this, arguments) || this; + } + NewClass.prototype.start = function () { + this.Authentication(); + }; + //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 + NewClass.prototype.Authentication = function () { + var name = "user_" + GameData_1.default._instance.GM_INFO.gameId; + var data = Storage_1.StorageMessage.getStorage(name); + if (data == "undifend" || data == null || data == "") { + console.log("没缓存"); + this.setUserId(name); + } + else { + console.log("有缓存"); + var timestamp = parseInt(new Date().getTime() / 1000 + ""); + if ((timestamp - data.time) > 86400) { + console.log("缓存过期"); + this.setUserId(name); + return; + } + GameData_1.default._instance.GM_INFO.userId = parseInt(data.userId); + } + }; + //设置userId,链接有获取,没有跳转授权 + NewClass.prototype.setUserId = function (name) { + GameData_1.default._instance.GM_INFO.userId = this.getUserId(); + if (GameData_1.default._instance.GM_INFO.userId == null) { + console.log("链接没ID准备跳转"); + var url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=" + location.href; + window.location.href = url; + } + else { + var timestamp = parseInt(new Date().getTime() / 1000 + ""); + var idData = { + userId: GameData_1.default._instance.GM_INFO.userId + "", + time: timestamp + }; + Storage_1.StorageMessage.setStorage(name, idData); + console.log("有ID:", GameData_1.default._instance.GM_INFO.userId); + GameData_1.default._instance.GM_INFO.userId = parseInt(GameData_1.default._instance.GM_INFO.userId); + } + }; + //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId + NewClass.prototype.getUserId = function () { + var pathStr = window.location.search; + var arr = pathStr.split("&"); + if (pathStr.length >= 0 && arr.length > 0) { + var arr2_1 = []; + arr.map(function (item) { + arr2_1.push(item.split("=")[1]); + }); + return arr2_1[0]; + } + else { + return null; + } + }; + //开始游戏,跳转至引导页面 + NewClass.prototype.startGame = function () { + cc.director.loadScene("GuideScene"); + }; + //备用,用来测试跳转 指定关卡 + NewClass.prototype.clickBtn = function (event, data) { + GameData_1.default._instance.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(); + } + 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBQzVELHVDQUFrQztBQUNsQyxxQ0FBMkM7QUFHM0M7SUFBc0MsNEJBQVk7SUFBbEQ7O0lBMEVBLENBQUM7SUF4RUcsd0JBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0RBQWdEO0lBQ3hDLGlDQUFjLEdBQXRCO1FBQ0ksSUFBSSxJQUFJLEdBQUcsT0FBTyxHQUFHLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDdkQsSUFBSSxJQUFJLEdBQUcsd0JBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsSUFBRyxJQUFJLElBQUksVUFBVSxJQUFJLElBQUksSUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBQztZQUM5QyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDeEI7YUFDRztZQUNBLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkIsSUFBSSxTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3pELElBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssRUFBQztnQkFDL0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJ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QjtJQUFELGVBQUM7Q0ExRUQsQUEwRUMsQ0ExRXFDLEVBQUUsQ0FBQyxTQUFTLEdBMEVqRDtrQkExRW9CLFFBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5LCByZXF1aXJlQ29tcG9uZW50fSA9IGNjLl9kZWNvcmF0b3I7XHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgeyBTdG9yYWdlTWVzc2FnZSB9IGZyb20gXCIuL1N0b3JhZ2VcIjtcclxuXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuXHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5BdXRoZW50aWNhdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIC8v6Ym05p2D77yM5Yik5pat5pyJ5peg57yT5a2YdXNlcmlkLOacieeahOivneWIpOaWreaYr+WQpui/h+acn++8jOayoeacieeahOivnemHjeaWsOiOt+WPlnVzZXJpZCDlubbkuJTnvJPlrZjkuIpcclxuICAgIHByaXZhdGUgQXV0aGVudGljYXRpb24oKXtcclxuICAgICAgICBsZXQgbmFtZSA9IFwidXNlcl9cIiArIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmdhbWVJZDtcclxuICAgICAgICBsZXQgZGF0YSA9IFN0b3JhZ2VNZXNzYWdlLmdldFN0b3JhZ2UobmFtZSk7XHJcbiAgICAgICAgaWYoZGF0YSA9PSBcInVuZGlmZW5kXCIgfHwgZGF0YT09bnVsbCB8fCBkYXRhID09IFwiXCIpe1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIuayoee8k+WtmFwiKTtcclxuICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQobmFtZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJ57yT5a2YXCIpO1xyXG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gcGFyc2VJbnQobmV3IERhdGUoKS5nZXRUaW1lKCkvMTAwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICBpZigodGltZXN0YW1wIC0gZGF0YS50aW1lKSA+IDg2NDAwKXtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi57yT5a2Y6L+H5pyfXCIpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQobmFtZSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gcGFyc2VJbnQoZGF0YS51c2VySWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6K6+572udXNlcklkLOmTvuaOpeacieiOt+WPlu+8jOayoeaciei3s+i9rOaOiOadg1xyXG4gICAgcHJpdmF0ZSBzZXRVc2VySWQobmFtZSl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gdGhpcy5nZXRVc2VySWQoKTtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPT0gbnVsbCl7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi6ZO+5o6l5rKhSUTlh4blpIfot7PovaxcIik7XHJcbiAgICAgICAgICAgIGxldCB1cmwgPSBcImh0dHA6Ly9hcGkuc3Bhcmt1cy5jbi9hcGkvdXNlci9hdXRoL2xvZ2luP2RvbWFpbj1odWkzMjU3OVdkWVBzZ1lxJmNhbGxiYWNrPVwiK2xvY2F0aW9uLmhyZWY7XHJcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gcGFyc2VJbnQobmV3IERhdGUoKS5nZXRUaW1lKCkvMTAwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICBsZXQgaWREYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgdXNlcklkOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgKyBcIlwiLFxyXG4gICAgICAgICAgICAgICAgdGltZTogdGltZXN0YW1wXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgU3RvcmFnZU1lc3NhZ2Uuc2V0U3RvcmFnZShuYW1lLGlkRGF0YSk7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJSUTvvJpcIixHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQpO1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6I635Y+WdXNlciBpZCDmnInlj4LmlbDkuLrojrflj5ZnYW1laWQgdXNlcmlkIOaXtumXtOaIs++8jCDml6Dlj4LmlbDkuLrlj6rojrflj5bpk77mjqXlsL7nvIDkuIrnmoR1c2VySWRcclxuICAgIHByaXZhdGUgZ2V0VXNlcklkKCkgeyAgICBcclxuICAgICAgICBsZXQgcGF0aFN0ciA9IHdpbmRvdy5sb2NhdGlvbi5zZWFyY2g7XHJcbiAgICAgICAgbGV0IGFycj1wYXRoU3RyLnNwbGl0KFwiJlwiKTtcclxuICAgICAgICBpZiAocGF0aFN0ci5sZW5ndGg+PSAwJiZhcnIubGVuZ3RoPjApIHtcclxuICAgICAgICAgICAgbGV0IGFycjI9W107XHJcbiAgICAgICAgICAgIGFyci5tYXAoaXRlbT0+e1xyXG4gICAgICAgICAgICAgICAgYXJyMi5wdXNoKGl0ZW0uc3BsaXQoXCI9XCIpWzFdKVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICByZXR1cm4gYXJyMlswXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiP77yM6Lez6L2s6Iez5byV5a+86aG16Z2iXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHdWlkZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/lpIfnlKjvvIznlKjmnaXmtYvor5Xot7Povawg5oyH5a6a5YWz5Y2hXHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gPSBwYXJzZUludChkYXRhKTtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9ICAgXHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByb3RlY3RlZCB1cGRhdGUoZHQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgfVxyXG59XHJcbiJdfQ== //------QC-SOURCE-SPLIT------ (function() { @@ -6898,13 +6775,13 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFDMUMsdUNBQWtDO0FBQ2xDLCtDQUE4QztBQUM5QyxnREFBMEM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFrL0JDO1FBaC9CRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBMjhCaEMsQ0FBQztJQXA4QkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMs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QVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBay9CL0I7SUFBRCxrQkFBQztDQWwvQkQsQUFrL0JDLENBbC9Cd0MsRUFBRSxDQUFDLFNBQVMsR0FrL0JwRDtrQkFsL0JvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5pbXBvcnQgR2FtZURhdGEgZnJvbSAnLi9HYW1lRGF0YSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vTm90aWZpY2F0aW9uJztcclxuaW1wb3J0IEh0dHBVdGlsIGZyb20gJy4vY3J5cHRvL3NlcnZlckFQSSc7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gIT0gMCl7XHJcbiAgICAgICAgICAgIHRoaXMubGV2ZWwgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR0FNRV9EQVRBID0gW107XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lLDEpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+agueaNruaYr+WQpuWFqOmdouWxj++8jOWBmueLrOeri+mAgumFjeaWuemdolxyXG4gICAgZml0KCl7XHJcbiAgICAgICAgdGhpcy5maXRUb3AgPSA0NTA7ICAvLzYwMFxyXG4gICAgICAgIHRoaXMuZml0Qm90ID0gLTYwMDsgLy8tNzAwXHJcbiAgICAgICAgdmFyIGpnID0gdGhpcy5zZXRGaXQoKTtcclxuICAgICAgICBpZighamcpe1xyXG4gICAgICAgICAgICB0aGlzLmZpdFRvcCA9IDYwMDtcclxuICAgICAgICAgICAgdGhpcy5maXRCb3QgPSAtNzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGPXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZyAoKSB7XHJcbiAgICAgICAgbGV0IHNpemUgPSBjYy53aW5TaXplO1xyXG4gICAgICAgIGxldCB3aWR0aCA9IHNpemUud2lkdGg7XHJcbiAgICAgICAgbGV0IGhlaWdodCA9IHNpemUuaGVpZ2h0O1xyXG4gICAgICAgIGlmICgoaGVpZ2h0IC8gd2lkdGgpID4gKDE2LjIgLyA5KSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY/pgILphY1cclxuICAgIHNldEZpdCAoKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSB0aGlzLmdldFNldFNjcmVlblJlc29sdXRpb25GbGFnKCk7XHJcbiAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH1cclxuICAgIC8v6L+U5Zue6aaW6aG1XHJcbiAgICBiYWNrU2NlbmUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+S4i+S4gOWFs++8jOaIluiAhemHjeaWsOW8gOWni++8jOaIluiAhei/lOWbnuS4iuS4gOWFs++8jOagueaNrmxldmVs5Yaz5a6aXHJcbiAgICByZVN0YXJ0KHR5cGUpe1xyXG4gICAgICAgIC8vIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICB0aGlzLnRpbWVfQXJyYXkucHVzaCgoY2xpY2tUaW1lIC0gdGhpcy50aW1lU3RhcnQpKVxyXG4gICAgICAgICAgICB0aGlzLnRpbWVTdGFydCA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTsgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLmdldENoaWxkQnlOYW1lKFwiZ3VhbmdcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IHRoaXMubm93X0FycmF5Lmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zdGFydFRpbWUgPiAwICYmIHRoaXMub3ZlclRpbWUgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlU3BlZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXYXJuaW5nKCk7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSB0aGlzLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSA9IFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICBzdWNjZXNzOmZhbHNlLFxyXG4gICAgICAgICAgICByb3VuZDp0aGlzLnJvdW5kLFxyXG4gICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOkdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICBkdXJhdGlvbjpmaW5pc2hfdGltZS8xMCxcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDp0aGlzLnRpbWVfQXJyYXksXHJcbiAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgICBpZih0aGlzLmZ1aHVvID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+IDIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZXZlbCAtPSAxO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgIGNjLnR3ZWVuKG92ZXIpXHJcbiAgICAgICAgLnRvKDAuMjUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiPXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPiAwKXtcclxuICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlU3VuKCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjI1NSxzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+aJp+ihjOWkqumYs+i/kOihjOWKqOeUu++8jOS7peWPiuWQjumdouenu+WKqOWKqOeUu1xyXG4gICAgcnVuR2FtZSgpe1xyXG4gICAgICAgIGxldCB0aW1lID0gLTY1MDtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgIHRpbWUgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lKjEwMDAgKyB0aW1lO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXAgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lQ291bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGVtcCA+IDAuNSkgdGVtcCA9IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGwgJiYgdGhpcy5ub3dfQXJyYXlbaV0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KSxjYy52Mih0aGlzLm5vd19BcnJheVtpXS54LHRoaXMubm93X0FycmF5W2ldLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0udGltZS10ZW1wKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGwpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCx7eDp0aGlzLm5vd19BcnJheVtpXS54LHk6dGhpcy5ub3dfQXJyYXlbaV0ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMSx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCk9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKGksdGhpcy5ub3dfQXJyYXlbaV0uY29sb3IsdGhpcy5ub3dfQXJyYXlbaV0uc3BlZWQsdGhpcy5ub3dfQXJyYXlbaV0ucmVwZWF0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoaSA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGggLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmVnaW5HYW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyPDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTUwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSwgdGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/orr7nva7np7vliqjph43lj6DmlbDmja5cclxuICAgIGNyZWF0ZU1vdmUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICBsZXQgaW5mbyA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXTtcclxuICAgICAgICAvL+aUueWPmOenu+WKqOmAn+W6plxyXG4gICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgaWYoaW5mby5tb3ZlU3BlZWQgPj0gMil7XHJcbiAgICAgICAgICAgIHNwZWVkID0gNyAtIGluZm8ubW92ZVNwZWVkLzI7XHJcbiAgICAgICAgfSAgXHJcbiAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgIC8vMCAxIDIgMyA0IDUgNiA3IDggOVxyXG4gICAgICAgICAgICAvL+WPr+enu+WKqOWMuuWIhlxyXG4gICAgICAgICAgICAvL+WwhumHjeWPoOeahOiuvue9ruS4uuS4jeWPr+enu+WKqCAgMSAxIDEgMSAwIDAgMSAwIDAgMCAgIC8gMiA3XHJcbiAgICAgICAgICAgIGZvcihsZXQgayA9MDsgazx0aGlzLm1vdmVBcnJheS5sZW5ndGg7aysrKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG0gPSB0aGlzLm1vdmVBcnJheS5sZW5ndGgtMTsgbSA+PSAwOyBtLS0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihtICE9IGsgJiYgdGhpcy5tb3ZlQXJyYXlbbV0gPT0gMCAmJiBtIT0gdGhpcy5yZXBlYXQgJiYgbSE9IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W2tdID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0gID0gLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGxhc3ROdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAvL+mUgeWumuacgOWQjuS4gOS4quWPr+enu+WKqOeahFxyXG4gICAgICAgICAgICBmb3IobGV0IGogPTA7IGo8bW92ZUFycmF5Lmxlbmd0aDtqKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2pdPT0xKXtcclxuICAgICAgICAgICAgICAgICAgICBsYXN0TnVtYmVyID0gajtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmb3IobGV0IGkgPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2ldID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGkgIT0gbGFzdE51bWJlcil7ICAgIC8v5aaC5p6c5LiN5piv5pyA5ZCO5LiA5Liq56e75Yqo55qEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8v5aaC5p6c5piv5pyA5ZCO5LiA5LiqXHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWUgPSBzcGVlZCp0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2ldKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8odGltZSx7cG9zaXRpb246dGhpcy5Qb3NfQXJyYXlbaV19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5q+P5qyh6YeN5paw5byA5aeL5paw5LiA6L2u5YS/5ri45oiPXHJcbiAgICBiZWdpbkdhbWUoKXtcclxuICAgICAgICB0aGlzLmJlZ2luID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IGZhbHNlO1xyXG4gICAgICAgIC8vIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5pqC5pe25L2c5bqfXHJcbiAgICAvLyBnZXRSYW5kb21BcnJheShsYXN0TnVtYmVyKXtcclxuICAgIC8vICAgICBsZXQgbnVtID0gIHBhcnNlSW50KE1hdGgucmFuZG9tKCkqOCAtIDQgKyBcIlwiKTtcclxuICAgIC8vICAgICBsZXQgamcgPSBudW0gKyBsYXN0TnVtYmVyO1xyXG4gICAgLy8gICAgIGlmKG51bSA+IDEgfHwgbnVtIDwtMSl7XHJcbiAgICAvLyAgICAgICAgIGlmKCBudW0gPT0gMCB8fCAoIGpnPDAgfHwgamcgPj0gdGhpcy5Qb3NfQXJyYXkubGVuZ3RoKSl7XHJcbiAgICAvLyAgICAgICAgICAgICBqZyA9IHRoaXMuZ2V0UmFuZG9tQXJyYXkobGFzdE51bWJlcik7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZXtcclxuICAgIC8vICAgICAgICAgamcgPSB0aGlzLmdldFJhbmRvbUFycmF5KGxhc3ROdW1iZXIpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gamc7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy/liJvlu7rlpKrpmLPmiYDpnIDmlbDmja5cclxuICAgIGNyZWF0ZVN1bigpe1xyXG4gICAgICAgIGxldCBsZXZlbERhdGEgPSBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdO1xyXG4gICAgICAgIGxldCB0aWVtT3V0ID0gMDtcclxuICAgICAgICBmb3IobGV0IGw9MDsgbDxsZXZlbERhdGEubnVtYmVyO2wrKyl7XHJcbiAgICAgICAgICAgIHRpZW1PdXQgKz0gMTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBwb3MgPSB0aGlzLmdldFBvcyhmYWxzZSxsKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKHBvcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID09IGxldmVsRGF0YS5udW1iZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1vdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVQb3MoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9LCB0aWVtT3V0KjEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liJvlu7rlpKrpmLPkvY3nva7vvIzpopzoibLkv6Hmga/nrYnmlbDmja5cclxuICAgIGNyZWF0ZVBvcygpe1xyXG4gICAgICAgIGxldCBkYXRhID0ge3g6dGhpcy5iYWxsLngseTp0aGlzLmJhbGwueSx0aW1lOjAsdGltZUNvdW50OjAsY29sb3I6MCxzcGVlZDowLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgbGV0IGxldmVsRGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlIDwgR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH1cclxuICAgIC8v5ZG95Lit5Yqo55S7XHJcbiAgICBoaXRBY3Rpb24oZGF0YSl7XHJcbiAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gdHJ1ZTsgdGhpcy5oaXQub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5oaXQuc2V0UG9zaXRpb25cclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvbih0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueCszNSx0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueSszNSk7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5oaXQpXHJcbiAgICAgICAgLnRvKDAse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAudG8oMC4yLHtwb3NpdGlvbjpjYy52Myh0aGlzLmhpdC54LTM1LHRoaXMuaGl0LnktMzUsMCl9KVxyXG4gICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5Yib6YCg5aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBpZihjb2xvciA9PSAwKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTEpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMSliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUyKTtcclxuICAgICAgICBlbHNlIGlmKGNvbG9yID09IDIpYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1Myk7XHJcbiAgICAgICAgYmFsbC5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJTdW5cIik7XHJcbiAgICAgICAgYmFsbC56SW5kZXggPSB0aGlzLm5vd19BcnJheS5sZW5ndGggLSBudW1iZXI7XHJcbiAgICAgICAgYmFsbC5zZXRQb3NpdGlvbih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSk7XHJcbiAgICAgICAgYmFsbC5nZXRDb21wb25lbnQoXCJTdW5cIikuaW5pdChudW1iZXIsY29sb3Isc3BlZWQscmVwZWF0KTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkucHVzaChiYWxsKTtcclxuICAgIH1cclxuICAgIC8v6ZSA5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uui/nue6v1xyXG4gICAgY3JlYXRlTGluZShzdGFydCxlbmQsdGltZSl7XHJcbiAgICAgICAgbGV0IGxpbmUgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLmxpbmVQcmVmYWIpO1xyXG4gICAgICAgIGxpbmUucGFyZW50ID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKTtcclxuICAgICAgICBsaW5lLnNldFBvc2l0aW9uKHN0YXJ0Lngsc3RhcnQueSk7XHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v6I635Y+W5Lik54K55LmL6Ze055qE6KeS5bqm77yM5bCG5p2l6YO95Y+v5pS+5bel5YW357G7XHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTot53nprsg6L+U5Zue5a+55bqU5pe26Ze0XHJcbiAgICBjYWxjdWxhdGVEaXN0YW5jZSh4MSwgeTEsIHgyLCB5MiwgbnVtKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICBsZXQgdGltZSA9IDA7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvODAwICogMC42O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGlmKGRpc3RhbmNlID4gMTIwMCkgZGlzdGFuY2UgPSAxMjAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvMTIwMCAqIDEuNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aW1lO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Tot53nprsgIOi/lOWbnui3neemu+WIpOaWrVxyXG4gICAgZ2V0RGlzdGFuY2UyKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5pe26Ze05qC85byP6L2s5o2iXHJcbiAgICBnZXRUaW1lTWFyZ2luKHNlY29uZDpudW1iZXIpIHtcclxuICAgICAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgICAgIHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gMDtcclxuICAgICAgICBob3VyID0gcGFyc2VJbnQoKHRvdGFsIC8gMzYwMCkgKyBcIlwiKTsvL+iuoeeul+aVtOaVsOWwj+aXtuaVsFxyXG4gICAgICAgIGxldCBhZnRlckhvdXIgPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwOy8v5Y+W5b6X566X5Ye65bCP5pe25pWw5ZCO5Ymp5L2Z55qE56eS5pWwXHJcbiAgICAgICAgbGV0IG1pbiA9IHBhcnNlSW50KChhZnRlckhvdXIgLyA2MCkrXCJcIik7Ly/orqHnrpfmlbTmlbDliIZcclxuICAgICAgICBsZXQgbSA9IFwiXCIgKyBtaW47ICBcclxuICAgICAgICBpZihtaW4gPCAxMCkgbSA9IFwiMFwiK21pbjtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwIC0gbWluICogNjA7Ly/lj5blvpfnrpflh7rliIblkI7liankvZnnmoTnp5LmlbBcclxuICAgICAgICBsZXQgbWlhbyA9IGFmdGVyTWluICsgXCJcIjtcclxuICAgICAgICBpZihhZnRlck1pbiA8IDEwKSBtaWFvID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gbSArICc6JyArIG1pYW9cclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSB0aGlzLmdldFRpbWVNYXJnaW4odGhpcy5jb3VudFRpbWUpO1xyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8IDUpe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aW1lLm5vZGUpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yNSx7c2NhbGU6MS41LGNvbG9yOmNjLmNvbG9yKDI1NSwwLDApfSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLGNvbG9yOmNjLmNvbG9yKDI1NSwyNTUsMjU1KX0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAgICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodGhpcy5jb3VudFRpbWUgPD0gMCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXIgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgICAgIHZhciB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tDb3VudCA+IDApIHRpbWUgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSBwYXJzZUludCh0aW1lLzEwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UmFuayh0aW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5LiK5Lyg5q+P5qyh5pON5L2c5pWw5o2uXHJcbiAgICBzZXREYXRhKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEEucHVzaChHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSk7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkNMSUNLX2luaXQoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEE7XHJcbiAgICAgICAgbGV0IG1hdGNoSWQgPSB0aGlzLmdldE1hdGNoSWQoKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhtYXRjaElkKTtcclxuICAgICAgICBsZXQgcG9zdERhdGEgPSB7XHJcbiAgICAgICAgICAgIFwibWF0Y2hJZFwiOm1hdGNoSWQsXHJcbiAgICAgICAgICAgIFwiZGF0YVwiOiBkYXRhXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuS4iuS8oOaVsOaNrjpcIilcclxuICAgICAgICBIdHRwVXRpbC51cGxvYWRVc2VyTG9nRGF0YShwb3N0RGF0YSxmdW5jdGlvbigpe30pXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlm1hdGNoSWQgIOeUqOS6juS4iuS8oOavj+asoeeCueWHu+aVsOaNrumHjOmdouiusOW9lWlk5pa55L6/5p+l6K+iXHJcbiAgICBnZXRNYXRjaElkICgpe1xyXG4gICAgICAgIGxldCBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hJZFwiKTtcclxuICAgICAgICBpZihtYXRjaElkID09IFwidW5kaWZlbmRcIiB8fCBtYXRjaElkPT1udWxsKXtcclxuICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShtYXRjaElkKSA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIG1hdGNoSWQgPSAgdGhpcy5zZXRNYXRjaElkKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGxldCBjaGFyID0gcGFyc2VJbnQobWF0Y2hJZFsxMF0pO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yb3VuZCA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBjaGFyICs9IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXRjaElkICA9IG1hdGNoSWQuc2xpY2UoMCwgMTApICsgY2hhciArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tYXRjaElkID0gbWF0Y2hJZDtcclxuICAgICAgICAgICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixtYXRjaElkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbWF0Y2hJZDtcclxuICAgIH1cclxuICAgIC8v5qOA5rWLbWF0Y2hJZCDlpoLmnpzmnInnvJPlrZjku6XliY3nmoRuYW5hbmHmlbDmja7muIXpmaRcclxuICAgIGNvbnRhaW5zTmFuYW5hKHN0cikge1xyXG4gICAgICAgIHJldHVybiAvbmEvaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOiuvue9rk1hdGNoSWRcclxuICAgIHNldE1hdGNoSWQgKCl7XHJcbiAgICAgICAgLy8g5a6a5LmJ5YyF5ZCr5Y+v55So5a2X56ym55qE5a2X56ym6ZuGXHJcbiAgICAgICAgY29uc3QgY2hhcmFjdGVycyA9ICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSc7XHJcbiAgICAgICAgLy8g5Yib5bu65LiA5Liq5pWw57uE5Lul5L+d5a2Y6ZqP5py65a2X56ymXHJcbiAgICAgICAgY29uc3QgdXVpZEFycmF5ID0gW107XHJcbiAgICAgICAgLy8g5b6q546vMTDmrKEg55Sf5oiQMTDkvY3nmoRVVUlEXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAvLyDnlJ/miJDpmo/mnLrntKLlvJXvvIzojIPlm7TmmK/lrZfnrKbpm4bnmoTplb/luqZcclxuICAgICAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIC8vIOS7juWtl+espumbhuS4reiOt+WPlumaj+acuuWtl+esplxyXG4gICAgICAgICAgICBjb25zdCByYW5kb21DaGFyID0gY2hhcmFjdGVycy5jaGFyQXQocmFuZG9tSW5kZXgpO1xyXG4gICAgICAgICAgICAvLyDlsIblrZfnrKbmt7vliqDliLDmlbDnu4TkuK1cclxuICAgICAgICAgICAgdXVpZEFycmF5LnB1c2gocmFuZG9tQ2hhcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBkYXRhID0gIHV1aWRBcnJheS5qb2luKCcnKSArIDEgKyBcIlwiO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoTnVtYmVyXCIsMSk7XHJcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKFwibWF0Y2hJZFwiLGRhdGEpO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLm1hdGNoSWQgPSBkYXRhO1xyXG4gICAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIHNldFJhbmsodGltZSl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInR5cGVcIjoxLFxyXG4gICAgICAgICAgICBcInJlYWN0aW9uVGltZVwiOiB0aW1lLFxyXG4gICAgICAgICAgICBcInRvdGFsU3VuQ291bnRcIjogR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwsXHJcbiAgICAgICAgICAgIFwic3VjY2Vzc1wiOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgSHR0cFV0aWwucmFua0RhdGEoMSxmdW5jdGlvbigpe30scG9zdERhdGEpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcbiAgICB1cGRhdGUgKGR0KSB7XHJcbiAgICB9XHJcbn1cclxuIl19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFDMUMsdUNBQWtDO0FBQ2xDLCtDQUE4QztBQUM5QyxnREFBMEM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFpL0JDO1FBLytCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBMDhCaEMsQ0FBQztJQW44QkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMs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QVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBaS9CL0I7SUFBRCxrQkFBQztDQWovQkQsQUFpL0JDLENBai9Cd0MsRUFBRSxDQUFDLFNBQVMsR0FpL0JwRDtrQkFqL0JvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5pbXBvcnQgR2FtZURhdGEgZnJvbSAnLi9HYW1lRGF0YSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vTm90aWZpY2F0aW9uJztcclxuaW1wb3J0IEh0dHBVdGlsIGZyb20gJy4vY3J5cHRvL3NlcnZlckFQSSc7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gIT0gMCl7XHJcbiAgICAgICAgICAgIHRoaXMubGV2ZWwgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR0FNRV9EQVRBID0gW107XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lLDEpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+agueaNruaYr+WQpuWFqOmdouWxj++8jOWBmueLrOeri+mAgumFjeaWuemdolxyXG4gICAgZml0KCl7XHJcbiAgICAgICAgdGhpcy5maXRUb3AgPSA0NTA7ICAvLzYwMFxyXG4gICAgICAgIHRoaXMuZml0Qm90ID0gLTYwMDsgLy8tNzAwXHJcbiAgICAgICAgdmFyIGpnID0gdGhpcy5zZXRGaXQoKTtcclxuICAgICAgICBpZighamcpe1xyXG4gICAgICAgICAgICB0aGlzLmZpdFRvcCA9IDYwMDtcclxuICAgICAgICAgICAgdGhpcy5maXRCb3QgPSAtNzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGPXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZyAoKSB7XHJcbiAgICAgICAgbGV0IHNpemUgPSBjYy53aW5TaXplO1xyXG4gICAgICAgIGxldCB3aWR0aCA9IHNpemUud2lkdGg7XHJcbiAgICAgICAgbGV0IGhlaWdodCA9IHNpemUuaGVpZ2h0O1xyXG4gICAgICAgIGlmICgoaGVpZ2h0IC8gd2lkdGgpID4gKDE2LjIgLyA5KSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY/pgILphY1cclxuICAgIHNldEZpdCAoKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSB0aGlzLmdldFNldFNjcmVlblJlc29sdXRpb25GbGFnKCk7XHJcbiAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH1cclxuICAgIC8v6L+U5Zue6aaW6aG1XHJcbiAgICBiYWNrU2NlbmUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+S4i+S4gOWFs++8jOaIluiAhemHjeaWsOW8gOWni++8jOaIluiAhei/lOWbnuS4iuS4gOWFs++8jOagueaNrmxldmVs5Yaz5a6aXHJcbiAgICByZVN0YXJ0KHR5cGUpe1xyXG4gICAgICAgIC8vIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICB0aGlzLnRpbWVfQXJyYXkucHVzaCgoY2xpY2tUaW1lIC0gdGhpcy50aW1lU3RhcnQpKVxyXG4gICAgICAgICAgICB0aGlzLnRpbWVTdGFydCA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTsgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLmdldENoaWxkQnlOYW1lKFwiZ3VhbmdcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IHRoaXMubm93X0FycmF5Lmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zdGFydFRpbWUgPiAwICYmIHRoaXMub3ZlclRpbWUgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlU3BlZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXYXJuaW5nKCk7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSB0aGlzLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSA9IFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICBzdWNjZXNzOmZhbHNlLFxyXG4gICAgICAgICAgICByb3VuZDp0aGlzLnJvdW5kLFxyXG4gICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOkdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICBkdXJhdGlvbjpmaW5pc2hfdGltZS8xMCxcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDp0aGlzLnRpbWVfQXJyYXksXHJcbiAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgICBpZih0aGlzLmZ1aHVvID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+IDIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZXZlbCAtPSAxO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgIGNjLnR3ZWVuKG92ZXIpXHJcbiAgICAgICAgLnRvKDAuMjUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiPXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPiAwKXtcclxuICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlU3VuKCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjI1NSxzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+aJp+ihjOWkqumYs+i/kOihjOWKqOeUu++8jOS7peWPiuWQjumdouenu+WKqOWKqOeUu1xyXG4gICAgcnVuR2FtZSgpe1xyXG4gICAgICAgIGxldCB0aW1lID0gLTY1MDtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgIHRpbWUgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lKjEwMDAgKyB0aW1lO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXAgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lQ291bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGVtcCA+IDAuNSkgdGVtcCA9IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGwgJiYgdGhpcy5ub3dfQXJyYXlbaV0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KSxjYy52Mih0aGlzLm5vd19BcnJheVtpXS54LHRoaXMubm93X0FycmF5W2ldLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0udGltZS10ZW1wKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGwpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCx7eDp0aGlzLm5vd19BcnJheVtpXS54LHk6dGhpcy5ub3dfQXJyYXlbaV0ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMSx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCk9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKGksdGhpcy5ub3dfQXJyYXlbaV0uY29sb3IsdGhpcy5ub3dfQXJyYXlbaV0uc3BlZWQsdGhpcy5ub3dfQXJyYXlbaV0ucmVwZWF0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoaSA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGggLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmVnaW5HYW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyPDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTUwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSwgdGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/orr7nva7np7vliqjph43lj6DmlbDmja5cclxuICAgIGNyZWF0ZU1vdmUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICBsZXQgaW5mbyA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXTtcclxuICAgICAgICAvL+aUueWPmOenu+WKqOmAn+W6plxyXG4gICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgaWYoaW5mby5tb3ZlU3BlZWQgPj0gMil7XHJcbiAgICAgICAgICAgIHNwZWVkID0gNyAtIGluZm8ubW92ZVNwZWVkLzI7XHJcbiAgICAgICAgfSAgXHJcbiAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgIC8vMCAxIDIgMyA0IDUgNiA3IDggOVxyXG4gICAgICAgICAgICAvL+WPr+enu+WKqOWMuuWIhlxyXG4gICAgICAgICAgICAvL+WwhumHjeWPoOeahOiuvue9ruS4uuS4jeWPr+enu+WKqCAgMSAxIDEgMSAwIDAgMSAwIDAgMCAgIC8gMiA3XHJcbiAgICAgICAgICAgIGZvcihsZXQgayA9MDsgazx0aGlzLm1vdmVBcnJheS5sZW5ndGg7aysrKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG0gPSB0aGlzLm1vdmVBcnJheS5sZW5ndGgtMTsgbSA+PSAwOyBtLS0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihtICE9IGsgJiYgdGhpcy5tb3ZlQXJyYXlbbV0gPT0gMCAmJiBtIT0gdGhpcy5yZXBlYXQgJiYgbSE9IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W2tdID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0gID0gLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGxhc3ROdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAvL+mUgeWumuacgOWQjuS4gOS4quWPr+enu+WKqOeahFxyXG4gICAgICAgICAgICBmb3IobGV0IGogPTA7IGo8bW92ZUFycmF5Lmxlbmd0aDtqKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2pdPT0xKXtcclxuICAgICAgICAgICAgICAgICAgICBsYXN0TnVtYmVyID0gajtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmb3IobGV0IGkgPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2ldID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGkgIT0gbGFzdE51bWJlcil7ICAgIC8v5aaC5p6c5LiN5piv5pyA5ZCO5LiA5Liq56e75Yqo55qEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8v5aaC5p6c5piv5pyA5ZCO5LiA5LiqXHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWUgPSBzcGVlZCp0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2ldKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8odGltZSx7cG9zaXRpb246dGhpcy5Qb3NfQXJyYXlbaV19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5q+P5qyh6YeN5paw5byA5aeL5paw5LiA6L2u5YS/5ri45oiPXHJcbiAgICBiZWdpbkdhbWUoKXtcclxuICAgICAgICB0aGlzLmJlZ2luID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IGZhbHNlO1xyXG4gICAgICAgIC8vIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5pqC5pe25L2c5bqfXHJcbiAgICAvLyBnZXRSYW5kb21BcnJheShsYXN0TnVtYmVyKXtcclxuICAgIC8vICAgICBsZXQgbnVtID0gIHBhcnNlSW50KE1hdGgucmFuZG9tKCkqOCAtIDQgKyBcIlwiKTtcclxuICAgIC8vICAgICBsZXQgamcgPSBudW0gKyBsYXN0TnVtYmVyO1xyXG4gICAgLy8gICAgIGlmKG51bSA+IDEgfHwgbnVtIDwtMSl7XHJcbiAgICAvLyAgICAgICAgIGlmKCBudW0gPT0gMCB8fCAoIGpnPDAgfHwgamcgPj0gdGhpcy5Qb3NfQXJyYXkubGVuZ3RoKSl7XHJcbiAgICAvLyAgICAgICAgICAgICBqZyA9IHRoaXMuZ2V0UmFuZG9tQXJyYXkobGFzdE51bWJlcik7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZXtcclxuICAgIC8vICAgICAgICAgamcgPSB0aGlzLmdldFJhbmRvbUFycmF5KGxhc3ROdW1iZXIpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gamc7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy/liJvlu7rlpKrpmLPmiYDpnIDmlbDmja5cclxuICAgIGNyZWF0ZVN1bigpe1xyXG4gICAgICAgIGxldCBsZXZlbERhdGEgPSBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdO1xyXG4gICAgICAgIGxldCB0aWVtT3V0ID0gMDtcclxuICAgICAgICBmb3IobGV0IGw9MDsgbDxsZXZlbERhdGEubnVtYmVyO2wrKyl7XHJcbiAgICAgICAgICAgIHRpZW1PdXQgKz0gMTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBwb3MgPSB0aGlzLmdldFBvcyhmYWxzZSxsKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKHBvcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID09IGxldmVsRGF0YS5udW1iZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1vdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVQb3MoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9LCB0aWVtT3V0KjEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liJvlu7rlpKrpmLPkvY3nva7vvIzpopzoibLkv6Hmga/nrYnmlbDmja5cclxuICAgIGNyZWF0ZVBvcygpe1xyXG4gICAgICAgIGxldCBkYXRhID0ge3g6dGhpcy5iYWxsLngseTp0aGlzLmJhbGwueSx0aW1lOjAsdGltZUNvdW50OjAsY29sb3I6MCxzcGVlZDowLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgbGV0IGxldmVsRGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlIDwgR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH1cclxuICAgIC8v5ZG95Lit5Yqo55S7XHJcbiAgICBoaXRBY3Rpb24oZGF0YSl7XHJcbiAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gdHJ1ZTsgdGhpcy5oaXQub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5oaXQuc2V0UG9zaXRpb25cclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvbih0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueCszNSx0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueSszNSk7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5oaXQpXHJcbiAgICAgICAgLnRvKDAse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAudG8oMC4yLHtwb3NpdGlvbjpjYy52Myh0aGlzLmhpdC54LTM1LHRoaXMuaGl0LnktMzUsMCl9KVxyXG4gICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5Yib6YCg5aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBpZihjb2xvciA9PSAwKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTEpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMSliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUyKTtcclxuICAgICAgICBlbHNlIGlmKGNvbG9yID09IDIpYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1Myk7XHJcbiAgICAgICAgYmFsbC5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJTdW5cIik7XHJcbiAgICAgICAgYmFsbC56SW5kZXggPSB0aGlzLm5vd19BcnJheS5sZW5ndGggLSBudW1iZXI7XHJcbiAgICAgICAgYmFsbC5zZXRQb3NpdGlvbih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSk7XHJcbiAgICAgICAgYmFsbC5nZXRDb21wb25lbnQoXCJTdW5cIikuaW5pdChudW1iZXIsY29sb3Isc3BlZWQscmVwZWF0KTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkucHVzaChiYWxsKTtcclxuICAgIH1cclxuICAgIC8v6ZSA5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uui/nue6v1xyXG4gICAgY3JlYXRlTGluZShzdGFydCxlbmQsdGltZSl7XHJcbiAgICAgICAgbGV0IGxpbmUgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLmxpbmVQcmVmYWIpO1xyXG4gICAgICAgIGxpbmUucGFyZW50ID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKTtcclxuICAgICAgICBsaW5lLnNldFBvc2l0aW9uKHN0YXJ0Lngsc3RhcnQueSk7XHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v6I635Y+W5Lik54K55LmL6Ze055qE6KeS5bqm77yM5bCG5p2l6YO95Y+v5pS+5bel5YW357G7XHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTot53nprsg6L+U5Zue5a+55bqU5pe26Ze0XHJcbiAgICBjYWxjdWxhdGVEaXN0YW5jZSh4MSwgeTEsIHgyLCB5MiwgbnVtKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICBsZXQgdGltZSA9IDA7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvODAwICogMC42O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGlmKGRpc3RhbmNlID4gMTIwMCkgZGlzdGFuY2UgPSAxMjAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvMTIwMCAqIDEuNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aW1lO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Tot53nprsgIOi/lOWbnui3neemu+WIpOaWrVxyXG4gICAgZ2V0RGlzdGFuY2UyKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5pe26Ze05qC85byP6L2s5o2iXHJcbiAgICBnZXRUaW1lTWFyZ2luKHNlY29uZDpudW1iZXIpIHtcclxuICAgICAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgICAgIHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gMDtcclxuICAgICAgICBob3VyID0gcGFyc2VJbnQoKHRvdGFsIC8gMzYwMCkgKyBcIlwiKTsvL+iuoeeul+aVtOaVsOWwj+aXtuaVsFxyXG4gICAgICAgIGxldCBhZnRlckhvdXIgPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwOy8v5Y+W5b6X566X5Ye65bCP5pe25pWw5ZCO5Ymp5L2Z55qE56eS5pWwXHJcbiAgICAgICAgbGV0IG1pbiA9IHBhcnNlSW50KChhZnRlckhvdXIgLyA2MCkrXCJcIik7Ly/orqHnrpfmlbTmlbDliIZcclxuICAgICAgICBsZXQgbSA9IFwiXCIgKyBtaW47ICBcclxuICAgICAgICBpZihtaW4gPCAxMCkgbSA9IFwiMFwiK21pbjtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwIC0gbWluICogNjA7Ly/lj5blvpfnrpflh7rliIblkI7liankvZnnmoTnp5LmlbBcclxuICAgICAgICBsZXQgbWlhbyA9IGFmdGVyTWluICsgXCJcIjtcclxuICAgICAgICBpZihhZnRlck1pbiA8IDEwKSBtaWFvID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gbSArICc6JyArIG1pYW9cclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSB0aGlzLmdldFRpbWVNYXJnaW4odGhpcy5jb3VudFRpbWUpO1xyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8IDUpe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aW1lLm5vZGUpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yNSx7c2NhbGU6MS41LGNvbG9yOmNjLmNvbG9yKDI1NSwwLDApfSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLGNvbG9yOmNjLmNvbG9yKDI1NSwyNTUsMjU1KX0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAgICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodGhpcy5jb3VudFRpbWUgPD0gMCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXIgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgICAgIHZhciB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tDb3VudCA+IDApIHRpbWUgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSBwYXJzZUludCh0aW1lLzEwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UmFuayh0aW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5LiK5Lyg5q+P5qyh5pON5L2c5pWw5o2uXHJcbiAgICBzZXREYXRhKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEEucHVzaChHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSk7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkNMSUNLX2luaXQoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEE7XHJcbiAgICAgICAgbGV0IG1hdGNoSWQgPSB0aGlzLmdldE1hdGNoSWQoKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhtYXRjaElkKTtcclxuICAgICAgICBsZXQgcG9zdERhdGEgPSB7XHJcbiAgICAgICAgICAgIFwibWF0Y2hJZFwiOm1hdGNoSWQsXHJcbiAgICAgICAgICAgIFwiZGF0YVwiOiBkYXRhXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuS4iuS8oOaVsOaNrjpcIilcclxuICAgICAgICBIdHRwVXRpbC51cGxvYWRVc2VyTG9nRGF0YShwb3N0RGF0YSxmdW5jdGlvbigpe30pXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlm1hdGNoSWQgIOeUqOS6juS4iuS8oOavj+asoeeCueWHu+aVsOaNrumHjOmdouiusOW9lWlk5pa55L6/5p+l6K+iXHJcbiAgICBnZXRNYXRjaElkICgpe1xyXG4gICAgICAgIGxldCBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hJZFwiKTtcclxuICAgICAgICBpZihtYXRjaElkID09IFwidW5kaWZlbmRcIiB8fCBtYXRjaElkPT1udWxsKXtcclxuICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShtYXRjaElkKSA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIG1hdGNoSWQgPSAgdGhpcy5zZXRNYXRjaElkKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGxldCBjaGFyID0gcGFyc2VJbnQobWF0Y2hJZFsxMF0pO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yb3VuZCA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBjaGFyICs9IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXRjaElkICA9IG1hdGNoSWQuc2xpY2UoMCwgMTApICsgY2hhciArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tYXRjaElkID0gbWF0Y2hJZDtcclxuICAgICAgICAgICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixtYXRjaElkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbWF0Y2hJZDtcclxuICAgIH1cclxuICAgIC8v5qOA5rWLbWF0Y2hJZCDlpoLmnpzmnInnvJPlrZjku6XliY3nmoRuYW5hbmHmlbDmja7muIXpmaRcclxuICAgIGNvbnRhaW5zTmFuYW5hKHN0cikge1xyXG4gICAgICAgIHJldHVybiAvbmEvaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOiuvue9rk1hdGNoSWRcclxuICAgIHNldE1hdGNoSWQgKCl7XHJcbiAgICAgICAgLy8g5a6a5LmJ5YyF5ZCr5Y+v55So5a2X56ym55qE5a2X56ym6ZuGXHJcbiAgICAgICAgY29uc3QgY2hhcmFjdGVycyA9ICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSc7XHJcbiAgICAgICAgLy8g5Yib5bu65LiA5Liq5pWw57uE5Lul5L+d5a2Y6ZqP5py65a2X56ymXHJcbiAgICAgICAgY29uc3QgdXVpZEFycmF5ID0gW107XHJcbiAgICAgICAgLy8g5b6q546vMTDmrKEg55Sf5oiQMTDkvY3nmoRVVUlEXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAvLyDnlJ/miJDpmo/mnLrntKLlvJXvvIzojIPlm7TmmK/lrZfnrKbpm4bnmoTplb/luqZcclxuICAgICAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIC8vIOS7juWtl+espumbhuS4reiOt+WPlumaj+acuuWtl+esplxyXG4gICAgICAgICAgICBjb25zdCByYW5kb21DaGFyID0gY2hhcmFjdGVycy5jaGFyQXQocmFuZG9tSW5kZXgpO1xyXG4gICAgICAgICAgICAvLyDlsIblrZfnrKbmt7vliqDliLDmlbDnu4TkuK1cclxuICAgICAgICAgICAgdXVpZEFycmF5LnB1c2gocmFuZG9tQ2hhcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBkYXRhID0gIHV1aWRBcnJheS5qb2luKCcnKSArIDEgKyBcIlwiO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoTnVtYmVyXCIsMSk7XHJcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKFwibWF0Y2hJZFwiLGRhdGEpO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLm1hdGNoSWQgPSBkYXRhO1xyXG4gICAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIHNldFJhbmsodGltZSl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInR5cGVcIjoxLFxyXG4gICAgICAgICAgICBcInJlYWN0aW9uVGltZVwiOiB0aW1lLFxyXG4gICAgICAgICAgICBcInRvdGFsU3VuQ291bnRcIjogR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwsXHJcbiAgICAgICAgICAgIFwic3VjY2Vzc1wiOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzXHJcbiAgICAgICAgfTtcclxuICAgICAgICBIdHRwVXRpbC5yYW5rRGF0YSgxLGZ1bmN0aW9uKCl7fSxwb3N0RGF0YSk7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5vcGFjaXR5ID0gMDtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKSlcclxuICAgICAgICAudG8oMC40LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDIpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eTo1MH0pXHJcbiAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIk92ZXJTY2VuZVwiKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpXHJcbiAgICB9XHJcbiAgICAvL+S9nOW8iu+8jOa1i+ivleeUqFxyXG4gICAgc2hvd051bWJlcigpe1xyXG4gICAgICAgIGlmKHRoaXMuc2hvdyA9PSBmYWxzZSkgdGhpcy5zaG93ID0gdHJ1ZTtcclxuICAgICAgICBlbHNlIGlmKHRoaXMuc2hvdyA9PSB0cnVlKSB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLnNob3dOdW1iZXIodGhpcy5zaG93KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvbkVuYWJsZSAoKSB7XHJcbiAgICAgICAgTm90aWZpY2F0aW9uLm9uKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1biwgdGhpcyk7XHJcbiAgICB9XHJcbiAgICBvbkRpc2FibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= //------QC-SOURCE-SPLIT------ (function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/tool/Storage.js'; + var __filename = 'preview-scripts/assets/Script/ListView/ItemRender.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { @@ -6912,37 +6789,108 @@ cc._RF.pop(); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; -cc._RF.push(module, 'f124cZyKJVPPobsFKRo+Uam', 'Storage'); -// Script/tool/Storage.ts +cc._RF.push(module, 'ca0f9k0oBVDbpQC+OMNTF3m', 'ItemRender'); +// Script/ListView/ItemRender.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); - } - }, +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; }; -exports.StorageMessage = StorageMessage; +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 () { + if (this.data.name.length > 6) { + this.data.name = this.data.name.substring(0, 6) + "..."; + } + this.node.getChildByName("rankLab").getComponent(cc.Label).string = this.data.rank + ""; + this.node.getChildByName("nameLab").getComponent(cc.Label).string = this.data.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(); } @@ -6955,5 +6903,5 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxTdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVM7QUFDVCxJQUFJLGNBQWMsR0FBRztJQUNqQixVQUFVLEVBQUcsVUFBUyxHQUFHO1FBQ3JCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBQztZQUNsQyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDL0M7UUFFRCxJQUFHLE1BQU0sRUFBQztZQUNSLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUNELFVBQVUsRUFBRyxVQUFTLEdBQUcsRUFBQyxLQUFLO1FBQzNCLFVBQVU7UUFDVixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUNELGFBQWEsRUFBRyxVQUFTLEdBQUc7UUFDMUIsVUFBVTtRQUNWLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNwQztJQUNILENBQUM7Q0FDSixDQUFDO0FBRU8sd0NBQWMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+e8k+WtmOa1j+iniOWZqOaVsOaNrlxudmFyIFN0b3JhZ2VNZXNzYWdlID0ge1xuICAgIGdldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgICB2YXIgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICAgIHZhciByZXN1bHQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYocmVzdWx0KXtcbiAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LFxuICAgIHNldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXksdmFsdWUpe1xuICAgICAgICAvL+S4u+WKqOaLiei1t+WIhuS6q+aOpeWPo1xuICAgICAgICB2YXIgdGVtcCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGVtcClcbiAgICB9LFxuICAgIHJlbW92ZVN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgLy/kuLvliqjliKDpmaTmtojmga/mjqXlj6NcbiAgICAgIGlmKGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpKXtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgICAgIH1cbiAgICB9LFxufTtcblxuZXhwb3J0IHsgU3RvcmFnZU1lc3NhZ2UgfTsiXX0= +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMaXN0Vmlld1xcSXRlbVJlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFTSxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUc1QztJQUF3Qyw4QkFBWTtJQUFwRDtRQUFBLHFFQXFFQztRQXBFRyxRQUFRO1FBQ0QsVUFBSSxHQUFPLElBQUksQ0FBQztRQUN2QixjQUFjO1FBQ1AsZUFBUyxHQUFVLENBQUMsQ0FBQzs7SUFpRWhDLENBQUM7SUEvREcsYUFBYTtJQUNOLGdDQUFXLEdBQWxCO1FBQ0ksSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFBO1NBQ3pEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4RixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFB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QUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBQyxHQUFHLEVBQUMsTUFBTSxFQUFDLEVBQUMsVUFBQyxHQUFHLEVBQUUsT0FBb0I7WUFDbkUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFsRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FxRTlCO0lBQUQsaUJBQUM7Q0FyRUQsQUFxRUMsQ0FyRXVDLEVBQUUsQ0FBQyxTQUFTLEdBcUVuRDtrQkFyRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdCwgeyBMaXN0VHlwZSB9IGZyb20gXCIuL0xpc3RcIjtcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJdGVtUmVuZGVyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIC8qKuaVsOaNriAqL1xyXG4gICAgcHVibGljIGRhdGE6YW55ID0gbnVsbDtcclxuICAgIC8qKue0ouW8lSAw6KGo56S656ys5LiA6aG5Ki9cclxuICAgIHB1YmxpYyBpdGVtSW5kZXg6bnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirmlbDmja7mlLnlj5jml7bosIPnlKggKi9cclxuICAgIHB1YmxpYyBkYXRhQ2hhbmdlZCgpe1xyXG4gICAgICAgIGlmKHRoaXMuZGF0YS5uYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEubmFtZSA9IHRoaXMuZGF0YS5uYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5kYXRhLnJhbmsgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEubmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLCB7ZXh0OicucG5nJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNwcml0ZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKTtcclxuICAgICAgICAgICAgICAgIHNwcml0ZS5zcHJpdGVGcmFtZSA9IG5ldyBjYy5TcHJpdGVGcmFtZSh0ZXh0dXJlKTtcclxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZGF0YS5yYW5rLFwi6K6+572u5aS05YOP5oiQ5YqfXCIsZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLorr7nva7lpLTlg4/lpLHotKVcIix1cmwpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyLHRleHR1cmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuIl19 //------QC-SOURCE-SPLIT------ diff --git a/temp/quick-scripts/dst/__qc_index__.js b/temp/quick-scripts/dst/__qc_index__.js index b454f8c..2f2a2a4 100644 --- a/temp/quick-scripts/dst/__qc_index__.js +++ b/temp/quick-scripts/dst/__qc_index__.js @@ -27,7 +27,6 @@ require('./assets/Script/tool/AudioManager'); require('./assets/Script/tool/DynamicAtlasManager'); require('./assets/Script/tool/GameTool'); require('./assets/Script/tool/Shake'); -require('./assets/Script/tool/Storage'); require('./assets/migration/use_v2.1-2.2.1_cc.Toggle_event'); } diff --git a/temp/quick-scripts/dst/__quick_compile__.js b/temp/quick-scripts/dst/__quick_compile__.js index ee8ea23..02e7316 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/GameOver":2,"./assets/Script/GuideManager":6,"./assets/Script/Load":11,"./assets/Script/Notification":8,"./assets/Script/RankManager":5,"./assets/Script/Storage":12,"./assets/Script/Sun":9,"./assets/Script/GameData":10,"./assets/Script/ListView/List":3,"./assets/Script/ListView/ItemRender":14,"./assets/Script/crypto/serverAPI":4,"./assets/Script/crypto/crypto-js.min":17,"./assets/Script/tool/DynamicAtlasManager":1,"./assets/Script/tool/GameTool":13,"./assets/Script/tool/Shake":16,"./assets/Script/tool/Storage":19,"./assets/Script/tool/AudioManager":15,"./assets/migration/use_v2.1-2.2.1_cc.Toggle_event":7,"./assets/Script/GameManager":18},"path":"preview-scripts/__qc_index__.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/DynamicAtlasManager.js"},{"deps":{"./GameData":10,"./crypto/serverAPI":4},"path":"preview-scripts/assets/Script/GameOver.js"},{"deps":{"./ItemRender":14},"path":"preview-scripts/assets/Script/ListView/List.js"},{"deps":{"../GameData":10,"./crypto-js.min.js":17},"path":"preview-scripts/assets/Script/crypto/serverAPI.js"},{"deps":{"./GameData":10,"./ListView/List":3,"./crypto/serverAPI":4},"path":"preview-scripts/assets/Script/RankManager.js"},{"deps":{"./GameData":10,"./Notification":8},"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/Notification.js"},{"deps":{"./Notification":8},"path":"preview-scripts/assets/Script/Sun.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameData.js"},{"deps":{"./GameData":10,"./Storage":12},"path":"preview-scripts/assets/Script/Load.js"},{"deps":{},"path":"preview-scripts/assets/Script/Storage.js"},{"deps":{"../GameData":10},"path":"preview-scripts/assets/Script/tool/GameTool.js"},{"deps":{},"path":"preview-scripts/assets/Script/ListView/ItemRender.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/AudioManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/Shake.js"},{"deps":{},"path":"preview-scripts/assets/Script/crypto/crypto-js.min.js"},{"deps":{"./GameData":10,"./Notification":8,"./crypto/serverAPI":4},"path":"preview-scripts/assets/Script/GameManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/Storage.js"}]; +var scripts = [{"deps":{"./assets/Script/GameOver":8,"./assets/Script/GuideManager":7,"./assets/Script/Load":16,"./assets/Script/Notification":12,"./assets/Script/RankManager":11,"./assets/Script/Storage":3,"./assets/Script/Sun":13,"./assets/Script/GameData":6,"./assets/Script/ListView/List":2,"./assets/Script/ListView/ItemRender":18,"./assets/Script/crypto/serverAPI":1,"./assets/Script/crypto/crypto-js.min":14,"./assets/Script/tool/DynamicAtlasManager":5,"./assets/Script/tool/GameTool":9,"./assets/Script/tool/Shake":15,"./assets/Script/tool/AudioManager":10,"./assets/migration/use_v2.1-2.2.1_cc.Toggle_event":4,"./assets/Script/GameManager":17},"path":"preview-scripts/__qc_index__.js"},{"deps":{"../GameData":6,"./crypto-js.min.js":14},"path":"preview-scripts/assets/Script/crypto/serverAPI.js"},{"deps":{"./ItemRender":18},"path":"preview-scripts/assets/Script/ListView/List.js"},{"deps":{},"path":"preview-scripts/assets/Script/Storage.js"},{"deps":{},"path":"preview-scripts/assets/migration/use_v2.1-2.2.1_cc.Toggle_event.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/DynamicAtlasManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/GameData.js"},{"deps":{"./GameData":6,"./Notification":12},"path":"preview-scripts/assets/Script/GuideManager.js"},{"deps":{"./GameData":6,"./crypto/serverAPI":1},"path":"preview-scripts/assets/Script/GameOver.js"},{"deps":{"../GameData":6},"path":"preview-scripts/assets/Script/tool/GameTool.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/AudioManager.js"},{"deps":{"./GameData":6,"./ListView/List":2,"./crypto/serverAPI":1},"path":"preview-scripts/assets/Script/RankManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/Notification.js"},{"deps":{"./Notification":12},"path":"preview-scripts/assets/Script/Sun.js"},{"deps":{},"path":"preview-scripts/assets/Script/crypto/crypto-js.min.js"},{"deps":{},"path":"preview-scripts/assets/Script/tool/Shake.js"},{"deps":{"./GameData":6,"./Storage":3},"path":"preview-scripts/assets/Script/Load.js"},{"deps":{"./GameData":6,"./Notification":12,"./crypto/serverAPI":1},"path":"preview-scripts/assets/Script/GameManager.js"},{"deps":{},"path":"preview-scripts/assets/Script/ListView/ItemRender.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 094a3f4..504bcd4 100644 --- a/temp/quick-scripts/dst/assets/Script/GameManager.js +++ b/temp/quick-scripts/dst/assets/Script/GameManager.js @@ -1114,4 +1114,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFDMUMsdUNBQWtDO0FBQ2xDLCtDQUE4QztBQUM5QyxnREFBMEM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFrL0JDO1FBaC9CRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBMjhCaEMsQ0FBQztJQXA4QkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMs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QVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBay9CL0I7SUFBRCxrQkFBQztDQWwvQkQsQUFrL0JDLENBbC9Cd0MsRUFBRSxDQUFDLFNBQVMsR0FrL0JwRDtrQkFsL0JvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5pbXBvcnQgR2FtZURhdGEgZnJvbSAnLi9HYW1lRGF0YSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vTm90aWZpY2F0aW9uJztcclxuaW1wb3J0IEh0dHBVdGlsIGZyb20gJy4vY3J5cHRvL3NlcnZlckFQSSc7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gIT0gMCl7XHJcbiAgICAgICAgICAgIHRoaXMubGV2ZWwgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR0FNRV9EQVRBID0gW107XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lLDEpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+agueaNruaYr+WQpuWFqOmdouWxj++8jOWBmueLrOeri+mAgumFjeaWuemdolxyXG4gICAgZml0KCl7XHJcbiAgICAgICAgdGhpcy5maXRUb3AgPSA0NTA7ICAvLzYwMFxyXG4gICAgICAgIHRoaXMuZml0Qm90ID0gLTYwMDsgLy8tNzAwXHJcbiAgICAgICAgdmFyIGpnID0gdGhpcy5zZXRGaXQoKTtcclxuICAgICAgICBpZighamcpe1xyXG4gICAgICAgICAgICB0aGlzLmZpdFRvcCA9IDYwMDtcclxuICAgICAgICAgICAgdGhpcy5maXRCb3QgPSAtNzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGPXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZyAoKSB7XHJcbiAgICAgICAgbGV0IHNpemUgPSBjYy53aW5TaXplO1xyXG4gICAgICAgIGxldCB3aWR0aCA9IHNpemUud2lkdGg7XHJcbiAgICAgICAgbGV0IGhlaWdodCA9IHNpemUuaGVpZ2h0O1xyXG4gICAgICAgIGlmICgoaGVpZ2h0IC8gd2lkdGgpID4gKDE2LjIgLyA5KSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY/pgILphY1cclxuICAgIHNldEZpdCAoKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSB0aGlzLmdldFNldFNjcmVlblJlc29sdXRpb25GbGFnKCk7XHJcbiAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH1cclxuICAgIC8v6L+U5Zue6aaW6aG1XHJcbiAgICBiYWNrU2NlbmUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+S4i+S4gOWFs++8jOaIluiAhemHjeaWsOW8gOWni++8jOaIluiAhei/lOWbnuS4iuS4gOWFs++8jOagueaNrmxldmVs5Yaz5a6aXHJcbiAgICByZVN0YXJ0KHR5cGUpe1xyXG4gICAgICAgIC8vIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICB0aGlzLnRpbWVfQXJyYXkucHVzaCgoY2xpY2tUaW1lIC0gdGhpcy50aW1lU3RhcnQpKVxyXG4gICAgICAgICAgICB0aGlzLnRpbWVTdGFydCA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTsgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLmdldENoaWxkQnlOYW1lKFwiZ3VhbmdcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IHRoaXMubm93X0FycmF5Lmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zdGFydFRpbWUgPiAwICYmIHRoaXMub3ZlclRpbWUgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlU3BlZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXYXJuaW5nKCk7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSB0aGlzLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSA9IFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICBzdWNjZXNzOmZhbHNlLFxyXG4gICAgICAgICAgICByb3VuZDp0aGlzLnJvdW5kLFxyXG4gICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOkdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICBkdXJhdGlvbjpmaW5pc2hfdGltZS8xMCxcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDp0aGlzLnRpbWVfQXJyYXksXHJcbiAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgICBpZih0aGlzLmZ1aHVvID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+IDIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZXZlbCAtPSAxO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgIGNjLnR3ZWVuKG92ZXIpXHJcbiAgICAgICAgLnRvKDAuMjUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiPXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPiAwKXtcclxuICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlU3VuKCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjI1NSxzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+aJp+ihjOWkqumYs+i/kOihjOWKqOeUu++8jOS7peWPiuWQjumdouenu+WKqOWKqOeUu1xyXG4gICAgcnVuR2FtZSgpe1xyXG4gICAgICAgIGxldCB0aW1lID0gLTY1MDtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgIHRpbWUgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lKjEwMDAgKyB0aW1lO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXAgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lQ291bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGVtcCA+IDAuNSkgdGVtcCA9IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGwgJiYgdGhpcy5ub3dfQXJyYXlbaV0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KSxjYy52Mih0aGlzLm5vd19BcnJheVtpXS54LHRoaXMubm93X0FycmF5W2ldLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0udGltZS10ZW1wKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGwpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCx7eDp0aGlzLm5vd19BcnJheVtpXS54LHk6dGhpcy5ub3dfQXJyYXlbaV0ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMSx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCk9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKGksdGhpcy5ub3dfQXJyYXlbaV0uY29sb3IsdGhpcy5ub3dfQXJyYXlbaV0uc3BlZWQsdGhpcy5ub3dfQXJyYXlbaV0ucmVwZWF0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoaSA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGggLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmVnaW5HYW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyPDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTUwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSwgdGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/orr7nva7np7vliqjph43lj6DmlbDmja5cclxuICAgIGNyZWF0ZU1vdmUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICBsZXQgaW5mbyA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXTtcclxuICAgICAgICAvL+aUueWPmOenu+WKqOmAn+W6plxyXG4gICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgaWYoaW5mby5tb3ZlU3BlZWQgPj0gMil7XHJcbiAgICAgICAgICAgIHNwZWVkID0gNyAtIGluZm8ubW92ZVNwZWVkLzI7XHJcbiAgICAgICAgfSAgXHJcbiAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgIC8vMCAxIDIgMyA0IDUgNiA3IDggOVxyXG4gICAgICAgICAgICAvL+WPr+enu+WKqOWMuuWIhlxyXG4gICAgICAgICAgICAvL+WwhumHjeWPoOeahOiuvue9ruS4uuS4jeWPr+enu+WKqCAgMSAxIDEgMSAwIDAgMSAwIDAgMCAgIC8gMiA3XHJcbiAgICAgICAgICAgIGZvcihsZXQgayA9MDsgazx0aGlzLm1vdmVBcnJheS5sZW5ndGg7aysrKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG0gPSB0aGlzLm1vdmVBcnJheS5sZW5ndGgtMTsgbSA+PSAwOyBtLS0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihtICE9IGsgJiYgdGhpcy5tb3ZlQXJyYXlbbV0gPT0gMCAmJiBtIT0gdGhpcy5yZXBlYXQgJiYgbSE9IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W2tdID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0gID0gLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGxhc3ROdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAvL+mUgeWumuacgOWQjuS4gOS4quWPr+enu+WKqOeahFxyXG4gICAgICAgICAgICBmb3IobGV0IGogPTA7IGo8bW92ZUFycmF5Lmxlbmd0aDtqKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2pdPT0xKXtcclxuICAgICAgICAgICAgICAgICAgICBsYXN0TnVtYmVyID0gajtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmb3IobGV0IGkgPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2ldID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGkgIT0gbGFzdE51bWJlcil7ICAgIC8v5aaC5p6c5LiN5piv5pyA5ZCO5LiA5Liq56e75Yqo55qEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8v5aaC5p6c5piv5pyA5ZCO5LiA5LiqXHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWUgPSBzcGVlZCp0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2ldKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8odGltZSx7cG9zaXRpb246dGhpcy5Qb3NfQXJyYXlbaV19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5q+P5qyh6YeN5paw5byA5aeL5paw5LiA6L2u5YS/5ri45oiPXHJcbiAgICBiZWdpbkdhbWUoKXtcclxuICAgICAgICB0aGlzLmJlZ2luID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IGZhbHNlO1xyXG4gICAgICAgIC8vIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5pqC5pe25L2c5bqfXHJcbiAgICAvLyBnZXRSYW5kb21BcnJheShsYXN0TnVtYmVyKXtcclxuICAgIC8vICAgICBsZXQgbnVtID0gIHBhcnNlSW50KE1hdGgucmFuZG9tKCkqOCAtIDQgKyBcIlwiKTtcclxuICAgIC8vICAgICBsZXQgamcgPSBudW0gKyBsYXN0TnVtYmVyO1xyXG4gICAgLy8gICAgIGlmKG51bSA+IDEgfHwgbnVtIDwtMSl7XHJcbiAgICAvLyAgICAgICAgIGlmKCBudW0gPT0gMCB8fCAoIGpnPDAgfHwgamcgPj0gdGhpcy5Qb3NfQXJyYXkubGVuZ3RoKSl7XHJcbiAgICAvLyAgICAgICAgICAgICBqZyA9IHRoaXMuZ2V0UmFuZG9tQXJyYXkobGFzdE51bWJlcik7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZXtcclxuICAgIC8vICAgICAgICAgamcgPSB0aGlzLmdldFJhbmRvbUFycmF5KGxhc3ROdW1iZXIpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gamc7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy/liJvlu7rlpKrpmLPmiYDpnIDmlbDmja5cclxuICAgIGNyZWF0ZVN1bigpe1xyXG4gICAgICAgIGxldCBsZXZlbERhdGEgPSBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdO1xyXG4gICAgICAgIGxldCB0aWVtT3V0ID0gMDtcclxuICAgICAgICBmb3IobGV0IGw9MDsgbDxsZXZlbERhdGEubnVtYmVyO2wrKyl7XHJcbiAgICAgICAgICAgIHRpZW1PdXQgKz0gMTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBwb3MgPSB0aGlzLmdldFBvcyhmYWxzZSxsKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKHBvcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID09IGxldmVsRGF0YS5udW1iZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1vdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVQb3MoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9LCB0aWVtT3V0KjEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liJvlu7rlpKrpmLPkvY3nva7vvIzpopzoibLkv6Hmga/nrYnmlbDmja5cclxuICAgIGNyZWF0ZVBvcygpe1xyXG4gICAgICAgIGxldCBkYXRhID0ge3g6dGhpcy5iYWxsLngseTp0aGlzLmJhbGwueSx0aW1lOjAsdGltZUNvdW50OjAsY29sb3I6MCxzcGVlZDowLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgbGV0IGxldmVsRGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlIDwgR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH1cclxuICAgIC8v5ZG95Lit5Yqo55S7XHJcbiAgICBoaXRBY3Rpb24oZGF0YSl7XHJcbiAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gdHJ1ZTsgdGhpcy5oaXQub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5oaXQuc2V0UG9zaXRpb25cclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvbih0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueCszNSx0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueSszNSk7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5oaXQpXHJcbiAgICAgICAgLnRvKDAse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAudG8oMC4yLHtwb3NpdGlvbjpjYy52Myh0aGlzLmhpdC54LTM1LHRoaXMuaGl0LnktMzUsMCl9KVxyXG4gICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5Yib6YCg5aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBpZihjb2xvciA9PSAwKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTEpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMSliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUyKTtcclxuICAgICAgICBlbHNlIGlmKGNvbG9yID09IDIpYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1Myk7XHJcbiAgICAgICAgYmFsbC5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJTdW5cIik7XHJcbiAgICAgICAgYmFsbC56SW5kZXggPSB0aGlzLm5vd19BcnJheS5sZW5ndGggLSBudW1iZXI7XHJcbiAgICAgICAgYmFsbC5zZXRQb3NpdGlvbih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSk7XHJcbiAgICAgICAgYmFsbC5nZXRDb21wb25lbnQoXCJTdW5cIikuaW5pdChudW1iZXIsY29sb3Isc3BlZWQscmVwZWF0KTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkucHVzaChiYWxsKTtcclxuICAgIH1cclxuICAgIC8v6ZSA5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uui/nue6v1xyXG4gICAgY3JlYXRlTGluZShzdGFydCxlbmQsdGltZSl7XHJcbiAgICAgICAgbGV0IGxpbmUgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLmxpbmVQcmVmYWIpO1xyXG4gICAgICAgIGxpbmUucGFyZW50ID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKTtcclxuICAgICAgICBsaW5lLnNldFBvc2l0aW9uKHN0YXJ0Lngsc3RhcnQueSk7XHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v6I635Y+W5Lik54K55LmL6Ze055qE6KeS5bqm77yM5bCG5p2l6YO95Y+v5pS+5bel5YW357G7XHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTot53nprsg6L+U5Zue5a+55bqU5pe26Ze0XHJcbiAgICBjYWxjdWxhdGVEaXN0YW5jZSh4MSwgeTEsIHgyLCB5MiwgbnVtKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICBsZXQgdGltZSA9IDA7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvODAwICogMC42O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGlmKGRpc3RhbmNlID4gMTIwMCkgZGlzdGFuY2UgPSAxMjAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvMTIwMCAqIDEuNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aW1lO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Tot53nprsgIOi/lOWbnui3neemu+WIpOaWrVxyXG4gICAgZ2V0RGlzdGFuY2UyKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5pe26Ze05qC85byP6L2s5o2iXHJcbiAgICBnZXRUaW1lTWFyZ2luKHNlY29uZDpudW1iZXIpIHtcclxuICAgICAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgICAgIHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gMDtcclxuICAgICAgICBob3VyID0gcGFyc2VJbnQoKHRvdGFsIC8gMzYwMCkgKyBcIlwiKTsvL+iuoeeul+aVtOaVsOWwj+aXtuaVsFxyXG4gICAgICAgIGxldCBhZnRlckhvdXIgPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwOy8v5Y+W5b6X566X5Ye65bCP5pe25pWw5ZCO5Ymp5L2Z55qE56eS5pWwXHJcbiAgICAgICAgbGV0IG1pbiA9IHBhcnNlSW50KChhZnRlckhvdXIgLyA2MCkrXCJcIik7Ly/orqHnrpfmlbTmlbDliIZcclxuICAgICAgICBsZXQgbSA9IFwiXCIgKyBtaW47ICBcclxuICAgICAgICBpZihtaW4gPCAxMCkgbSA9IFwiMFwiK21pbjtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwIC0gbWluICogNjA7Ly/lj5blvpfnrpflh7rliIblkI7liankvZnnmoTnp5LmlbBcclxuICAgICAgICBsZXQgbWlhbyA9IGFmdGVyTWluICsgXCJcIjtcclxuICAgICAgICBpZihhZnRlck1pbiA8IDEwKSBtaWFvID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gbSArICc6JyArIG1pYW9cclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSB0aGlzLmdldFRpbWVNYXJnaW4odGhpcy5jb3VudFRpbWUpO1xyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8IDUpe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aW1lLm5vZGUpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yNSx7c2NhbGU6MS41LGNvbG9yOmNjLmNvbG9yKDI1NSwwLDApfSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLGNvbG9yOmNjLmNvbG9yKDI1NSwyNTUsMjU1KX0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAgICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodGhpcy5jb3VudFRpbWUgPD0gMCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXIgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgICAgIHZhciB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tDb3VudCA+IDApIHRpbWUgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSBwYXJzZUludCh0aW1lLzEwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UmFuayh0aW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5LiK5Lyg5q+P5qyh5pON5L2c5pWw5o2uXHJcbiAgICBzZXREYXRhKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEEucHVzaChHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSk7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkNMSUNLX2luaXQoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEE7XHJcbiAgICAgICAgbGV0IG1hdGNoSWQgPSB0aGlzLmdldE1hdGNoSWQoKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhtYXRjaElkKTtcclxuICAgICAgICBsZXQgcG9zdERhdGEgPSB7XHJcbiAgICAgICAgICAgIFwibWF0Y2hJZFwiOm1hdGNoSWQsXHJcbiAgICAgICAgICAgIFwiZGF0YVwiOiBkYXRhXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuS4iuS8oOaVsOaNrjpcIilcclxuICAgICAgICBIdHRwVXRpbC51cGxvYWRVc2VyTG9nRGF0YShwb3N0RGF0YSxmdW5jdGlvbigpe30pXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlm1hdGNoSWQgIOeUqOS6juS4iuS8oOavj+asoeeCueWHu+aVsOaNrumHjOmdouiusOW9lWlk5pa55L6/5p+l6K+iXHJcbiAgICBnZXRNYXRjaElkICgpe1xyXG4gICAgICAgIGxldCBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hJZFwiKTtcclxuICAgICAgICBpZihtYXRjaElkID09IFwidW5kaWZlbmRcIiB8fCBtYXRjaElkPT1udWxsKXtcclxuICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShtYXRjaElkKSA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIG1hdGNoSWQgPSAgdGhpcy5zZXRNYXRjaElkKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGxldCBjaGFyID0gcGFyc2VJbnQobWF0Y2hJZFsxMF0pO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yb3VuZCA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBjaGFyICs9IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXRjaElkICA9IG1hdGNoSWQuc2xpY2UoMCwgMTApICsgY2hhciArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tYXRjaElkID0gbWF0Y2hJZDtcclxuICAgICAgICAgICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixtYXRjaElkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbWF0Y2hJZDtcclxuICAgIH1cclxuICAgIC8v5qOA5rWLbWF0Y2hJZCDlpoLmnpzmnInnvJPlrZjku6XliY3nmoRuYW5hbmHmlbDmja7muIXpmaRcclxuICAgIGNvbnRhaW5zTmFuYW5hKHN0cikge1xyXG4gICAgICAgIHJldHVybiAvbmEvaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOiuvue9rk1hdGNoSWRcclxuICAgIHNldE1hdGNoSWQgKCl7XHJcbiAgICAgICAgLy8g5a6a5LmJ5YyF5ZCr5Y+v55So5a2X56ym55qE5a2X56ym6ZuGXHJcbiAgICAgICAgY29uc3QgY2hhcmFjdGVycyA9ICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSc7XHJcbiAgICAgICAgLy8g5Yib5bu65LiA5Liq5pWw57uE5Lul5L+d5a2Y6ZqP5py65a2X56ymXHJcbiAgICAgICAgY29uc3QgdXVpZEFycmF5ID0gW107XHJcbiAgICAgICAgLy8g5b6q546vMTDmrKEg55Sf5oiQMTDkvY3nmoRVVUlEXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAvLyDnlJ/miJDpmo/mnLrntKLlvJXvvIzojIPlm7TmmK/lrZfnrKbpm4bnmoTplb/luqZcclxuICAgICAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIC8vIOS7juWtl+espumbhuS4reiOt+WPlumaj+acuuWtl+esplxyXG4gICAgICAgICAgICBjb25zdCByYW5kb21DaGFyID0gY2hhcmFjdGVycy5jaGFyQXQocmFuZG9tSW5kZXgpO1xyXG4gICAgICAgICAgICAvLyDlsIblrZfnrKbmt7vliqDliLDmlbDnu4TkuK1cclxuICAgICAgICAgICAgdXVpZEFycmF5LnB1c2gocmFuZG9tQ2hhcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBkYXRhID0gIHV1aWRBcnJheS5qb2luKCcnKSArIDEgKyBcIlwiO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoTnVtYmVyXCIsMSk7XHJcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKFwibWF0Y2hJZFwiLGRhdGEpO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLm1hdGNoSWQgPSBkYXRhO1xyXG4gICAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIHNldFJhbmsodGltZSl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInR5cGVcIjoxLFxyXG4gICAgICAgICAgICBcInJlYWN0aW9uVGltZVwiOiB0aW1lLFxyXG4gICAgICAgICAgICBcInRvdGFsU3VuQ291bnRcIjogR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwsXHJcbiAgICAgICAgICAgIFwic3VjY2Vzc1wiOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgSHR0cFV0aWwucmFua0RhdGEoMSxmdW5jdGlvbigpe30scG9zdERhdGEpO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgyKVxyXG4gICAgICAgIC50bygwLjQse29wYWNpdHk6NTB9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJPdmVyU2NlbmVcIik7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKVxyXG4gICAgfVxyXG4gICAgLy/kvZzlvIrvvIzmtYvor5XnlKhcclxuICAgIHNob3dOdW1iZXIoKXtcclxuICAgICAgICBpZih0aGlzLnNob3cgPT0gZmFsc2UpIHRoaXMuc2hvdyA9IHRydWU7XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLnNob3cgPT0gdHJ1ZSkgdGhpcy5zaG93ID0gZmFsc2U7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5zaG93TnVtYmVyKHRoaXMuc2hvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcbiAgICB1cGRhdGUgKGR0KSB7XHJcbiAgICB9XHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHYW1lTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTO0FBQ0gsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFDMUMsdUNBQWtDO0FBQ2xDLCtDQUE4QztBQUM5QyxnREFBMEM7QUFFMUM7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFpL0JDO1FBLytCRyxVQUFJLEdBQVksSUFBSSxDQUFDO1FBRXJCLFVBQUksR0FBYyxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFjLElBQUksQ0FBQztRQUV2QixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDO1FBRTdCLFNBQUcsR0FBWSxJQUFJLENBQUM7UUFDcEIsU0FBRyxHQUFZLElBQUksQ0FBQztRQUNwQixTQUFHLEdBQVksSUFBSSxDQUFDO1FBQ3BCLFVBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixXQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFVBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsVUFBSSxHQUFZLEtBQUssQ0FBQztRQW9CdEIsZ0JBQVUsR0FBYSxJQUFJLENBQUM7O0lBMDhCaEMsQ0FBQztJQW44QkcsNEJBQU0sR0FBTixjQUFXLENBQUM7SUFDWiwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPO0lBQ1AsMEJBQUksR0FBSjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMs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QVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzZDQUNHO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7bURBQ1M7SUFFN0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDRTtJQTJCcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQzttREFDUztJQXZDWCxXQUFXO1FBRC9CLE9BQU87T0FDYSxXQUFXLENBaS9CL0I7SUFBRCxrQkFBQztDQWovQkQsQUFpL0JDLENBai9Cd0MsRUFBRSxDQUFDLFNBQVMsR0FpL0JwRDtrQkFqL0JvQixXQUFXIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8g5Li75ri45oiP5o6n5Yi257G7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5pbXBvcnQgR2FtZURhdGEgZnJvbSAnLi9HYW1lRGF0YSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vTm90aWZpY2F0aW9uJztcclxuaW1wb3J0IEh0dHBVdGlsIGZyb20gJy4vY3J5cHRvL3NlcnZlckFQSSc7XHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdhbWVNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBxaXUyOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTM6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgaGl0OiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIGJnMTogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBiZzI6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgdGltZTogY2MuTGFiZWwgPSBudWxsO1xyXG4gICAgYmVnaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGZ1aHVvOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBvdmVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzaG93OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBjb3VudFRpbWU6bnVtYmVyO1xyXG4gICAgdGltZUNvdW50Om51bWJlcjtcclxuICAgIGZpdFRvcDpudW1iZXI7XHJcbiAgICBmaXRCb3Q6bnVtYmVyO1xyXG4gICAgbGV2ZWw6bnVtYmVyO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgc3RhcnRUaW1lOm51bWJlcjtcclxuICAgIG92ZXJUaW1lOm51bWJlcjtcclxuICAgIHdpblRpbWU6bnVtYmVyO1xyXG4gICAgY2xpY2tDb3VudDpudW1iZXI7XHJcbiAgICB0aW1lU3RhcnQ6bnVtYmVyO1xyXG4gICAgcm91dGVfQXJyYXk6IGFueVtdO1xyXG4gICAgbm93X0FycmF5OiBhbnlbXTtcclxuICAgIGJhbGxfQXJyYXk6IGFueVtdO1xyXG4gICAgTGluZV9BcnJheTogYW55W107XHJcbiAgICBQb3NfQXJyYXk6IGFueVtdO1xyXG4gICAgdGltZV9BcnJheTogYW55W107XHJcbiAgICBjb2xvcl9BcnJheTogYW55W107XHJcbiAgICBAcHJvcGVydHkoY2MuTGFiZWwpXHJcbiAgICBsZXZlbExhYmVsOiBjYy5MYWJlbCA9IG51bGw7XHJcbiAgICBzdGF0aWMgX2luc3RhbmNlOiBhbnk7XHJcbiAgICBtb3ZlQXJyYXk6IG51bWJlcltdO1xyXG4gICAgcmVwZWF0OiBudW1iZXI7XHJcbiAgICBudW1iZXJSZXBlYXQ6IG51bWJlcjtcclxuICAgIHJvdW5kOiBudW1iZXI7XHJcbiAgICBwYXVzZTogYm9vbGVhbjtcclxuICAgIG9uTG9hZCAoKSB7fVxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIHRoaXMuZml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIneWni+WMluaVsOaNrlxyXG4gICAgaW5pdCgpe1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkdhbWVPdmVyXCIpLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmJhbGwuekluZGV4ID0gMTAwO1xyXG4gICAgICAgIHRoaXMuYmcxID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcxXCIpO1xyXG4gICAgICAgIHRoaXMuYmcyID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiYmcyXCIpO1xyXG4gICAgICAgIHRoaXMudGltZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlRvcFwiKS5nZXRDaGlsZEJ5TmFtZShcInRpbWVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJzaG93QnRuXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm92ZXIgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZ1aHVvID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnBhdXNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJvdW5kID0gMDsgXHJcbiAgICAgICAgdGhpcy5sZXZlbCA9IDI7XHJcbiAgICAgICAgdGhpcy5jb3VudFRpbWUgPSA2MDtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gIT0gMCl7XHJcbiAgICAgICAgICAgIHRoaXMubGV2ZWwgPSBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b207XHJcbiAgICAgICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lID0gMTIwMDAwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHRoaXMubGV2ZWxMYWJlbC5zdHJpbmcgPSB0aGlzLmxldmVsICsgXCJcIjtcclxuICAgICAgICB0aGlzLnRpbWVDb3VudCA9IDAuMTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLmNsaWNrQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yb3V0ZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMubW92ZUFycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5ub3dfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMudGltZV9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29sb3JfQXJyYXkgPSBbXTtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR0FNRV9EQVRBID0gW107XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uc3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gMDtcclxuICAgICAgICB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICB0aGlzLndpblRpbWUgPSAwO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsID0gMDtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSAwO1xyXG4gICAgICAgIHRoaXMuc2NoZWR1bGUodGhpcy51cGRhdGVDb3VudERvd25UaW1lLDEpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+agueaNruaYr+WQpuWFqOmdouWxj++8jOWBmueLrOeri+mAgumFjeaWuemdolxyXG4gICAgZml0KCl7XHJcbiAgICAgICAgdGhpcy5maXRUb3AgPSA0NTA7ICAvLzYwMFxyXG4gICAgICAgIHRoaXMuZml0Qm90ID0gLTYwMDsgLy8tNzAwXHJcbiAgICAgICAgdmFyIGpnID0gdGhpcy5zZXRGaXQoKTtcclxuICAgICAgICBpZighamcpe1xyXG4gICAgICAgICAgICB0aGlzLmZpdFRvcCA9IDYwMDtcclxuICAgICAgICAgICAgdGhpcy5maXRCb3QgPSAtNzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5Yik5pat5YWo6Z2i5bGPXHJcbiAgICBnZXRTZXRTY3JlZW5SZXNvbHV0aW9uRmxhZyAoKSB7XHJcbiAgICAgICAgbGV0IHNpemUgPSBjYy53aW5TaXplO1xyXG4gICAgICAgIGxldCB3aWR0aCA9IHNpemUud2lkdGg7XHJcbiAgICAgICAgbGV0IGhlaWdodCA9IHNpemUuaGVpZ2h0O1xyXG4gICAgICAgIGlmICgoaGVpZ2h0IC8gd2lkdGgpID4gKDE2LjIgLyA5KSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgLy/liKTmlq3lhajpnaLlsY/pgILphY1cclxuICAgIHNldEZpdCAoKSB7XHJcbiAgICAgICAgbGV0IGZsYWcgPSB0aGlzLmdldFNldFNjcmVlblJlc29sdXRpb25GbGFnKCk7XHJcbiAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmxhZztcclxuICAgIH1cclxuICAgIC8v6L+U5Zue6aaW6aG1XHJcbiAgICBiYWNrU2NlbmUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+S4i+S4gOWFs++8jOaIluiAhemHjeaWsOW8gOWni++8jOaIluiAhei/lOWbnuS4iuS4gOWFs++8jOagueaNrmxldmVs5Yaz5a6aXHJcbiAgICByZVN0YXJ0KHR5cGUpe1xyXG4gICAgICAgIC8vIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSAhPSAwKXtcclxuICAgICAgICAvLyAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiTG9hZFNjZW5lXCIpO1xyXG4gICAgICAgIC8vICAgICByZXR1cm47XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIHRoaXMudGltZUNvdW50ID0gMC4xO1xyXG4gICAgICAgIHRoaXMuY2xpY2tOb3cgPSAwO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gMDtcclxuICAgICAgICB0aGlzLnJlcGVhdCA9IC0xO1xyXG4gICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gLTE7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucm91dGVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLm5vd19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuUG9zX0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5tb3ZlQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLnRpbWVfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gW107XHJcbiAgICAgICAgaWYodHlwZSA9PSAwKXtcclxuICAgICAgICAgICAgdGhpcy5iZ01vdmUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYodHlwZSA9PSAxKXtcclxuICAgICAgICAgICAgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0eXBlID09IDIpe1xyXG4gICAgICAgICAgICB0aGlzLmJnTW92ZSgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluaXtumXtOaIs1xyXG4gICAgZ2V0VGltZSgpe1xyXG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIHJldHVybiB0aW1lc3RhbXA7XHJcbiAgICB9XHJcbiAgICAvL+iOt+iDnFxyXG4gICAgcGFzc0xldmVsKCl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVBcnJheSA9IFtdO1xyXG4gICAgICAgICAgICBsZXQgdGltZUNvdW50ID0gMDtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0xOyBpPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IHRpbWUgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSwyKTtcclxuICAgICAgICAgICAgICAgIHRpbWVBcnJheS5wdXNoKHRpbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAudG8odGltZUFycmF5W2stMV0se3g6dGhpcy5iYWxsX0FycmF5W2tdLngseTp0aGlzLmJhbGxfQXJyYXlba10ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoayA9PSB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWxsLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJTdW4oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlU3RhcnQoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgIHRpbWVDb3VudCArPSAodGltZUFycmF5W2stMV0rMC4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5aSx6LSlXHJcbiAgICBsb3NlTGV2ZWwodHlwZSl7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSAmJiB0aGlzLmNvdW50VGltZSA+PSAwKXtcclxuICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgIGZvcihsZXQgaz0xOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2tdKVxyXG4gICAgICAgICAgICAgICAgLnRvKDIse3g6YmFsbC54LHk6YmFsbC55fSlcclxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZihrID09IHRoaXMuYmFsbF9BcnJheS5sZW5ndGgtMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwucG9zaXRpb24gPSBjYy52MyhiYWxsLngsYmFsbC55LDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVTdGFydCh0eXBlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF55CG5aSq6ZizXHJcbiAgICBjbGVhclN1bigpe1xyXG4gICAgICAgIGZvcihsZXQgaz0wOyBrPCB0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBrKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10ucmVtb3ZlRnJvbVBhcmVudCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlba10gPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmNsaWNrQ291bnQgKz0gMTtcclxuICAgICAgICAgICAgbGV0IGNsaWNrVGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICB0aGlzLnRpbWVfQXJyYXkucHVzaCgoY2xpY2tUaW1lIC0gdGhpcy50aW1lU3RhcnQpKVxyXG4gICAgICAgICAgICB0aGlzLnRpbWVTdGFydCA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTsgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVt0aGlzLmNsaWNrTm93LTFdLmdldENoaWxkQnlOYW1lKFwiZ3VhbmdcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IHRoaXMubm93X0FycmF5Lmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwgKz0gdGhpcy5jbGlja05vdztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJUaW1lID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zdGFydFRpbWUgPiAwICYmIHRoaXMub3ZlclRpbWUgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lICs9ICh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZmluaXNoX3RpbWUgPSBwYXJzZUludCgodGhpcy5vdmVyVGltZSAtIHRoaXMuc3RhcnRUaW1lKS8xMDArXCJcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFRpbWUgPSAwOyB0aGlzLm92ZXJUaW1lID0gMDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY29sb3IgPSBcInlcIjtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsIDwgNCAmJiB0aGlzLmxldmVsID4gMSljb2xvciA9IFwieXJcIjtcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKHRoaXMubGV2ZWwgPj0gNCkgY29sb3IgPSBcInlyYlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXaW4oKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdW5kICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHN1bkFycmF5ID0gW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLm1vdmVBcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbbV0gPSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCh0aGlzLm1vdmVBcnJheVttXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtPTAgOyBtPHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7bSsrKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gPT0gdGhpcy5yZXBlYXQgfHwgbSA9PSB0aGlzLm51bWJlclJlcGVhdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5BcnJheS5wdXNoKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5DTElDS19EQVRBID0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6MSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6dHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOnRoaXMucm91bmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVkU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VuU3BlZWQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlU3BlZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckxpc3Q6dGhpcy5jb2xvcl9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOmZpbmlzaF90aW1lLzEwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW5MaXN0OnN1bkFycmF5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcFRpbWVMaXN0OnRoaXMudGltZV9BcnJheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4od2luKVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMDEse3NjYWxlOjIuNX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMzUse3NjYWxlOjF9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxheSgwLjQpXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPj0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmxldmVsID49IDE1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxldmVsICs9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZnVodW8gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGV2ZWwgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmxldmVsTGFiZWwuc3RyaW5nID0gdGhpcy5sZXZlbCArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wYXNzTGV2ZWwoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9zcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/miafooYzlpLHotKVcclxuICAgIHNldExvc3MoKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQXVkaW9NYW5hZ2VyLnBsYXlXYXJuaW5nKCk7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMub3ZlclRpbWUgPSB0aGlzLmdldFRpbWUoKTtcclxuICAgICAgICBpZih0aGlzLnN0YXJ0VGltZSA+IDAgJiYgdGhpcy5vdmVyVGltZSA+IDApe1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgKz0gKHRoaXMub3ZlclRpbWUgLSB0aGlzLnN0YXJ0VGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmaW5pc2hfdGltZSA9IHBhcnNlSW50KCh0aGlzLm92ZXJUaW1lIC0gdGhpcy5zdGFydFRpbWUpLzEwMCtcIlwiKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IDA7IHRoaXMub3ZlclRpbWUgPSAwO1xyXG4gICAgICAgIGxldCBjb2xvciA9IFwieVwiO1xyXG4gICAgICAgIGlmKHRoaXMubGV2ZWwgPCA0ICYmIHRoaXMubGV2ZWwgPiAxKWNvbG9yID0gXCJ5clwiO1xyXG4gICAgICAgIGVsc2UgaWYodGhpcy5sZXZlbCA+PSA0KSBjb2xvciA9IFwieXJiXCI7XHJcbiAgICAgICAgdGhpcy5yb3VuZCArPSAxO1xyXG4gICAgICAgIGxldCBzdW5BcnJheSA9IFtdO1xyXG4gICAgICAgIGlmKHRoaXMubW92ZUFycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IG09MCA7IG08dGhpcy5tb3ZlQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2godGhpcy5tb3ZlQXJyYXlbbV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGZvcihsZXQgbT0wIDsgbTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoO20rKyl7XHJcbiAgICAgICAgICAgICAgICBpZihtID09IHRoaXMucmVwZWF0IHx8IG0gPT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIHN1bkFycmF5LnB1c2goMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgc3VuQXJyYXkucHVzaCgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSA9IFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZToxLFxyXG4gICAgICAgICAgICBzdWNjZXNzOmZhbHNlLFxyXG4gICAgICAgICAgICByb3VuZDp0aGlzLnJvdW5kLFxyXG4gICAgICAgICAgICB0b3RhbFN1bkNvdW50OnRoaXMubm93X0FycmF5Lmxlbmd0aCxcclxuICAgICAgICAgICAgbW92ZWRTdW5Db3VudDpHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1vdmVOdW1iZXIsXHJcbiAgICAgICAgICAgIHN1blNwZWVkOkdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV0ubW92ZVNwZWVkLFxyXG4gICAgICAgICAgICBvdmVybGFwU3VuQ291bnQ6R2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5yZXBlYXQsXHJcbiAgICAgICAgICAgIGNvbG9yTGlzdDp0aGlzLmNvbG9yX0FycmF5LFxyXG4gICAgICAgICAgICBkdXJhdGlvbjpmaW5pc2hfdGltZS8xMCxcclxuICAgICAgICAgICAgZGlmZmljdWx0eUxldmVsOnRoaXMubGV2ZWwsXHJcbiAgICAgICAgICAgIHN1bkxpc3Q6c3VuQXJyYXksXHJcbiAgICAgICAgICAgIHN0ZXBUaW1lTGlzdDp0aGlzLnRpbWVfQXJyYXksXHJcbiAgICAgICAgICAgIHJlbWFpbmRlcjp0aGlzLmNvdW50VGltZVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgICBpZih0aGlzLmZ1aHVvID09IHRydWUpe1xyXG4gICAgICAgICAgICB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKDEpO1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5sZXZlbCA+IDIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZXZlbCAtPSAxO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5sZXZlbExhYmVsLnN0cmluZyA9IHRoaXMubGV2ZWwgKyBcIlwiO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5mdWh1byA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLmZ1aHVvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvc2VMZXZlbCgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb3NlTGV2ZWwoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgIGNjLnR3ZWVuKG92ZXIpXHJcbiAgICAgICAgLnRvKDAuMjUse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjIse29wYWNpdHk6MH0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiPXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2UgJiYgdGhpcy5jb3VudFRpbWUgPiAwKXtcclxuICAgICAgICAgICAgdGhpcy5wYXVzZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlU3VuKCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsKVxyXG4gICAgICAgICAgICAudG8oMC41LHtvcGFjaXR5OjI1NSxzY2FsZToxLjN9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+aJp+ihjOWkqumYs+i/kOihjOWKqOeUu++8jOS7peWPiuWQjumdouenu+WKqOWKqOeUu1xyXG4gICAgcnVuR2FtZSgpe1xyXG4gICAgICAgIGxldCB0aW1lID0gLTY1MDtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgIHRpbWUgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lKjEwMDAgKyB0aW1lO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXAgPSB0aGlzLm5vd19BcnJheVtpXS50aW1lQ291bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGVtcCA+IDAuNSkgdGVtcCA9IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICBpZihpICE9IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGwgJiYgdGhpcy5ub3dfQXJyYXlbaV0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVMaW5lKGNjLnYyKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KSxjYy52Mih0aGlzLm5vd19BcnJheVtpXS54LHRoaXMubm93X0FycmF5W2ldLnkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0udGltZS10ZW1wKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhbGwpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKHRoaXMubm93X0FycmF5W2ldLnRpbWUtdGVtcCx7eDp0aGlzLm5vd19BcnJheVtpXS54LHk6dGhpcy5ub3dfQXJyYXlbaV0ueX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvKDAuMSx7c2NhbGU6MX0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCk9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKGksdGhpcy5ub3dfQXJyYXlbaV0uY29sb3IsdGhpcy5ub3dfQXJyYXlbaV0uc3BlZWQsdGhpcy5ub3dfQXJyYXlbaV0ucmVwZWF0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYoaSA9PSB0aGlzLm5vd19BcnJheS5sZW5ndGggLTEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95TGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmVnaW5HYW1lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tb3ZlTnVtYmVyPDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBhdXNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTUwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSwgdGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/orr7nva7np7vliqjph43lj6DmlbDmja5cclxuICAgIGNyZWF0ZU1vdmUoKXtcclxuICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICBsZXQgaW5mbyA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgICAgIC8v5pS55Y+Y56e75Yqo6YCf5bqmXHJcbiAgICAgICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgICAgIGlmKGluZm8ubW92ZVNwZWVkID49IDIpe1xyXG4gICAgICAgICAgICAgICAgc3BlZWQgPSA3IC0gaW5mby5tb3ZlU3BlZWQvMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihpbmZvLnJlcGVhdCA9PSAxKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0ICA9IHBhcnNlSW50KChNYXRoLnJhbmRvbSgpKihpbmZvLm51bWJlci0xKSsxKSArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBOdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yZXBlYXQgPSA0O1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXBlYXQgID4gNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSBwYXJzZUludChNYXRoLnJhbmRvbSgpKjQgKyBcIlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLnJlcGVhdCAgPT0gKGluZm8ubnVtYmVyLTEpKSAgLy/lpoLmnpzmmK/mnIDlkI7kuIDkuKog5LiN6IO96Lef56ys5LiA5Liq6YeN5Y+gXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJSZXBlYXQgPSB0aGlzLnJlcGVhdCAgLSBwYXJzZUludCggKE1hdGgucmFuZG9tKCkqMyArIDIpKyBcIlwiKVxyXG4gICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0IF0gPSB0ZW1wTnVtYmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZXsgLy8gMCAxIDIgMyA0IDUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gNiAtIDMgLSAxICA9IDIgNCAgMDEgNFxyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ICA9PSAwKSB0aGlzLnJlcGVhdCAgPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gaW5mby5udW1iZXIgLSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZigoaW5mby5udW1iZXItMS10aGlzLnJlcGVhdCApID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKChpbmZvLm51bWJlci0xLXRoaXMucmVwZWF0ICkgPT0gMCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyUmVwZWF0ID0gdGhpcy5yZXBlYXQgLSAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wTnVtYmVyID0gIHRoaXMuUG9zX0FycmF5W3RoaXMubnVtYmVyUmVwZWF0XTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoKGluZm8ubnVtYmVyLTEtdGhpcy5yZXBlYXQgKSA+IDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHBhcnNlSW50KE1hdGgucmFuZG9tKCkqKGluZm8ubnVtYmVyLXRoaXMucmVwZWF0IC0yKSArIFwiXCIpICsgdGhpcy5yZXBlYXQgICsgMiA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBOdW1iZXIgPSAgdGhpcy5Qb3NfQXJyYXlbdGhpcy5udW1iZXJSZXBlYXRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm51bWJlclJlcGVhdCA9IHRoaXMucmVwZWF0IC0gMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcE51bWJlciA9ICB0aGlzLlBvc19BcnJheVt0aGlzLm51bWJlclJlcGVhdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W3RoaXMucmVwZWF0XSA9IHRlbXBOdW1iZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgICAgICAvLzAgMSAyIDMgNCA1IDYgNyA4IDlcclxuICAgICAgICAgICAgICAgIC8v5Y+v56e75Yqo5Yy65YiGXHJcbiAgICAgICAgICAgICAgICBsZXQgcG9zID0gY2MudjIoMCwwKTtcclxuICAgICAgICAgICAgICAgIGZvcihsZXQgej0wOyB6PGluZm8ubnVtYmVyOyB6Kyspe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W3pdID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgcD0wOyBwPGluZm8ubW92ZU51bWJlcjsgcCsrKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtpbmZvLm51bWJlci0xLXBdID0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCB0aW1lT3V0ID0gMDtcclxuICAgICAgICAgICAgICAgIC8v5omT5Lmx5Y+v56e75Yqo6aG65bqPXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5tb3ZlQXJyYXlbMF0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCByPWluZm8ubnVtYmVyLTE7IHI+PTA7IHItLSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W3JdID09IDApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbcl0gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlQXJyYXlbMF0gPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy/lsIbph43lj6DnmoTorr7nva7kuLrkuI3lj6/np7vliqggIDEgMSAxIDEgMCAwIDEgMCAwIDAgICAvIDIgN1xyXG4gICAgICAgICAgICAgICAgZm9yKGxldCBrID0wOyBrPHRoaXMubW92ZUFycmF5Lmxlbmd0aDtrKyspe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBtID0gdGhpcy5tb3ZlQXJyYXkubGVuZ3RoLTE7IG0gPj0gMDsgbS0tKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG0gIT0gayAmJiB0aGlzLm1vdmVBcnJheVttXSA9PSAwICYmIG0hPSB0aGlzLnJlcGVhdCAmJiBtIT0gdGhpcy5udW1iZXJSZXBlYXQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBcnJheVtrXSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbSAgPSAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGZvcihsZXQgaSA9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLm1vdmVBcnJheSBbaV0gPT0gMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVPdXQgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB0aGlzLmdldFBvczIodHJ1ZSxpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUG9zX0FycmF5W2ldID0gcG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCB0aW1lT3V0KjMwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v56e75Yqo5ZCO5pWw5o2uIOmHjeaWsOWIt+S4gOmBjei1i+WAvFxyXG4gICAgdXBkYXRlQXJyYXkoKXtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLm5vd19BcnJheS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICB0aGlzLm5vd19BcnJheVtpXS54ID0gdGhpcy5Qb3NfQXJyYXlbaV0ueDtcclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXlbaV0ueSA9IHRoaXMuUG9zX0FycmF5W2ldLnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lpKrpmLPliJ3lp4vljJblkI7np7vliqjmlrnms5VcclxuICAgIG1vdmVBY3Rpb24oKXtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFycmF5KCk7XHJcbiAgICAgICAgbGV0IG1vdmVBcnJheSA9IHRoaXMubW92ZUFycmF5O1xyXG4gICAgICAgIGxldCBpbmZvID0gR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXTtcclxuICAgICAgICAvL+aUueWPmOenu+WKqOmAn+W6plxyXG4gICAgICAgIHZhciBzcGVlZCA9IDc7XHJcbiAgICAgICAgaWYoaW5mby5tb3ZlU3BlZWQgPj0gMil7XHJcbiAgICAgICAgICAgIHNwZWVkID0gNyAtIGluZm8ubW92ZVNwZWVkLzI7XHJcbiAgICAgICAgfSAgXHJcbiAgICAgICAgaWYoaW5mby5tb3ZlTnVtYmVyID4gMCl7XHJcbiAgICAgICAgICAgIC8vMCAxIDIgMyA0IDUgNiA3IDggOVxyXG4gICAgICAgICAgICAvL+WPr+enu+WKqOWMuuWIhlxyXG4gICAgICAgICAgICAvL+WwhumHjeWPoOeahOiuvue9ruS4uuS4jeWPr+enu+WKqCAgMSAxIDEgMSAwIDAgMSAwIDAgMCAgIC8gMiA3XHJcbiAgICAgICAgICAgIGZvcihsZXQgayA9MDsgazx0aGlzLm1vdmVBcnJheS5sZW5ndGg7aysrKXtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMubW92ZUFycmF5W2tdPT0xICYmIChrID09IHRoaXMucmVwZWF0IHx8IGsgPT0gdGhpcy5udW1iZXJSZXBlYXQpKXtcclxuICAgICAgICAgICAgICAgICAgICBmb3IobGV0IG0gPSB0aGlzLm1vdmVBcnJheS5sZW5ndGgtMTsgbSA+PSAwOyBtLS0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZihtICE9IGsgJiYgdGhpcy5tb3ZlQXJyYXlbbV0gPT0gMCAmJiBtIT0gdGhpcy5yZXBlYXQgJiYgbSE9IHRoaXMubnVtYmVyUmVwZWF0KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W21dID0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW92ZUFycmF5W2tdID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0gID0gLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGxhc3ROdW1iZXIgPSAwO1xyXG4gICAgICAgICAgICAvL+mUgeWumuacgOWQjuS4gOS4quWPr+enu+WKqOeahFxyXG4gICAgICAgICAgICBmb3IobGV0IGogPTA7IGo8bW92ZUFycmF5Lmxlbmd0aDtqKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2pdPT0xKXtcclxuICAgICAgICAgICAgICAgICAgICBsYXN0TnVtYmVyID0gajtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmb3IobGV0IGkgPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgaWYobW92ZUFycmF5W2ldID09IDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGlmKGkgIT0gbGFzdE51bWJlcil7ICAgIC8v5aaC5p6c5LiN5piv5pyA5ZCO5LiA5Liq56e75Yqo55qEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0aW1lID0gc3BlZWQqdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGxfQXJyYXlbaV0ueCx0aGlzLmJhbGxfQXJyYXlbaV0ueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpXS5nZXRDb21wb25lbnQoXCJTdW5cIikubW92ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtpXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWUse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5W2ldfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8v5aaC5p6c5piv5pyA5ZCO5LiA5LiqXHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWUgPSBzcGVlZCp0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbF9BcnJheVtpXS54LHRoaXMuYmFsbF9BcnJheVtpXS55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWxsX0FycmF5W2ldKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudG8odGltZSx7cG9zaXRpb246dGhpcy5Qb3NfQXJyYXlbaV19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5q+P5qyh6YeN5paw5byA5aeL5paw5LiA6L2u5YS/5ri45oiPXHJcbiAgICBiZWdpbkdhbWUoKXtcclxuICAgICAgICB0aGlzLmJlZ2luID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnN0YXJ0VGltZSA9IHRoaXMuZ2V0VGltZSgpO1xyXG4gICAgICAgIHRoaXMudGltZVN0YXJ0ID0gdGhpcy5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5wYXVzZSA9IGZhbHNlO1xyXG4gICAgICAgIC8vIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInNob3dCdG5cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIC8v5pqC5pe25L2c5bqfXHJcbiAgICAvLyBnZXRSYW5kb21BcnJheShsYXN0TnVtYmVyKXtcclxuICAgIC8vICAgICBsZXQgbnVtID0gIHBhcnNlSW50KE1hdGgucmFuZG9tKCkqOCAtIDQgKyBcIlwiKTtcclxuICAgIC8vICAgICBsZXQgamcgPSBudW0gKyBsYXN0TnVtYmVyO1xyXG4gICAgLy8gICAgIGlmKG51bSA+IDEgfHwgbnVtIDwtMSl7XHJcbiAgICAvLyAgICAgICAgIGlmKCBudW0gPT0gMCB8fCAoIGpnPDAgfHwgamcgPj0gdGhpcy5Qb3NfQXJyYXkubGVuZ3RoKSl7XHJcbiAgICAvLyAgICAgICAgICAgICBqZyA9IHRoaXMuZ2V0UmFuZG9tQXJyYXkobGFzdE51bWJlcik7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZXtcclxuICAgIC8vICAgICAgICAgamcgPSB0aGlzLmdldFJhbmRvbUFycmF5KGxhc3ROdW1iZXIpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gamc7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy/liJvlu7rlpKrpmLPmiYDpnIDmlbDmja5cclxuICAgIGNyZWF0ZVN1bigpe1xyXG4gICAgICAgIGxldCBsZXZlbERhdGEgPSBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdO1xyXG4gICAgICAgIGxldCB0aWVtT3V0ID0gMDtcclxuICAgICAgICBmb3IobGV0IGw9MDsgbDxsZXZlbERhdGEubnVtYmVyO2wrKyl7XHJcbiAgICAgICAgICAgIHRpZW1PdXQgKz0gMTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLm92ZXIgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBwb3MgPSB0aGlzLmdldFBvcyhmYWxzZSxsKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKHBvcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID09IGxldmVsRGF0YS5udW1iZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1vdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVQb3MoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9LCB0aWVtT3V0KjEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/liJvlu7rlpKrpmLPkvY3nva7vvIzpopzoibLkv6Hmga/nrYnmlbDmja5cclxuICAgIGNyZWF0ZVBvcygpe1xyXG4gICAgICAgIGxldCBkYXRhID0ge3g6dGhpcy5iYWxsLngseTp0aGlzLmJhbGwueSx0aW1lOjAsdGltZUNvdW50OjAsY29sb3I6MCxzcGVlZDowLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgbGV0IGxldmVsRGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5MRVZFTF9JTkZPW3RoaXMubGV2ZWwtMV07XHJcbiAgICAgICAgLy/popzoibLljLrliIZcclxuICAgICAgICBsZXQgY29sb3JBcnJheSA9IFswLDFdO1xyXG4gICAgICAgIGZvcihsZXQgaj0wOyBqPGxldmVsRGF0YS5udW1iZXItMjtqKyspe1xyXG4gICAgICAgICAgICBsZXQgY29sb3JUZW1wID0gcGFyc2VJbnQoTWF0aC5yYW5kb20oKSozK1wiXCIpO1xyXG4gICAgICAgICAgICBpZihsZXZlbERhdGEubnVtYmVyIDwgNiAmJiBjb2xvclRlbXAgPT0gMikgY29sb3JUZW1wID0gMDtcclxuICAgICAgICAgICAgY29sb3JBcnJheS5wdXNoKGNvbG9yVGVtcCk7XHJcbiAgICAgICAgICAgIGNvbG9yQXJyYXkuc29ydCgoKSA9PiBNYXRoLnJhbmRvbSgpIC0gMC41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3JBcnJheS5zb3J0KCgpID0+IE1hdGgucmFuZG9tKCkgLSAwLjUpO1xyXG4gICAgICAgIGlmKGxldmVsRGF0YS5udW1iZXIgPT0gNCkgY29sb3JBcnJheSA9IFswLDAsMCwwXTtcclxuICAgICAgICB0aGlzLmNvbG9yX0FycmF5ID0gY29sb3JBcnJheTtcclxuICAgICAgICAvL+WtmOWCqOWkqumYs+aVsOaNrlxyXG4gICAgICAgIGZvcihsZXQgaT0wOyBpPGxldmVsRGF0YS5udW1iZXI7aSsrKXtcclxuICAgICAgICAgICAgbGV0IHRpbWVDb3VudCA9IHRoaXMudGltZUNvdW50ICsgKDAuNi10aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55LHRoaXMuUG9zX0FycmF5W2ldLngsdGhpcy5Qb3NfQXJyYXlbaV0ueSwxKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLmJhbGwueCx0aGlzLmJhbGwueSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnksMSkrdGltZUNvdW50O1xyXG4gICAgICAgICAgICBkYXRhID0ge3g6dGhpcy5Qb3NfQXJyYXlbaV0ueCx5OnRoaXMuUG9zX0FycmF5W2ldLnksdGltZTp0aW1lLHRpbWVDb3VudDp0aW1lQ291bnQsY29sb3I6Y29sb3JBcnJheVtpXSxzcGVlZDpsZXZlbERhdGEubW92ZVNwZWVkLHJlcGVhdDpmYWxzZX07XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmVwZWF0ID09IGkpe1xyXG4gICAgICAgICAgICAgICAgZGF0YS5yZXBlYXQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5udW1iZXJSZXBlYXQgPT0gaSl7XHJcbiAgICAgICAgICAgICAgICBkYXRhLnJlcGVhdCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5ub3dfQXJyYXkucHVzaChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ydW5HYW1lKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlu+8jE7kuKrlpKrpmLPkvY3nva7nmoTmlrnms5XvvIzlkoxQT1My5YiG5byA5Lik5Liq5pa55rOV77yM6Ziy5q2i6YCS5b2S5rqi5Ye6XHJcbiAgICBnZXRQb3ModHlwZSxudW0pe1xyXG4gICAgICAgIGxldCBwb3NYID0gTWF0aC5yYW5kb20oKSo2MjAgLSAzMTA7XHJcbiAgICAgICAgbGV0IHBvc1kgPSBNYXRoLnJhbmRvbSgpKih0aGlzLmZpdFRvcC10aGlzLmZpdEJvdCkgKyB0aGlzLmZpdEJvdDtcclxuICAgICAgICBsZXQgcG9pbnQgPSBjYy52Mihwb3NYLHBvc1kpO1xyXG4gICAgICAgIGlmKHRoaXMuUG9zX0FycmF5Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLlBvc19BcnJheS5sZW5ndGg7aSsrKXtcclxuICAgICAgICAgICAgICAgIGxldCBkaXN0YW5jZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHBkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZihpID09IG51bSkgcGQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZGlzdGFuY2UgPSB0aGlzLmdldERpc3RhbmNlKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3ModHlwZSxudW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPT0gdHJ1ZSAmJiBpID09ICh0aGlzLlBvc19BcnJheS5sZW5ndGgtMSkpe1xyXG4gICAgICAgICAgICAgICAgICAgIGkgPSAxMDAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwb2ludDtcclxuICAgIH1cclxuICAgIC8v6I635Y+W77yMTuS4quWkqumYs+WPr+enu+WKqOS9jee9rueahOaWueazle+8jOWSjFBPU+WIhuW8gOeul+mYsuatoumAkuW9kua6ouWHulxyXG4gICAgZ2V0UG9zMih0eXBlLG51bSl7XHJcbiAgICAgICAgbGV0IHBvc1ggPSBNYXRoLnJhbmRvbSgpKjYyMCAtIDMxMDtcclxuICAgICAgICBsZXQgcG9zWSA9IE1hdGgucmFuZG9tKCkqKHRoaXMuZml0VG9wLXRoaXMuZml0Qm90KSArIHRoaXMuZml0Qm90O1xyXG4gICAgICAgIGxldCBwb2ludCA9IGNjLnYyKHBvc1gscG9zWSk7XHJcbiAgICAgICAgaWYodGhpcy5Qb3NfQXJyYXkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wOyBpPHRoaXMuUG9zX0FycmF5Lmxlbmd0aDtpKyspe1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3RhbmNlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gbnVtKSBwZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBkaXN0YW5jZSA9IHRoaXMuZ2V0RGlzdGFuY2UyKHBvc1gscG9zWSx0aGlzLlBvc19BcnJheVtpXS54LHRoaXMuUG9zX0FycmF5W2ldLnkscGQpXHJcbiAgICAgICAgICAgICAgICBpZihkaXN0YW5jZSA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IDEwMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ID0gdGhpcy5nZXRQb3MyKHR5cGUsbnVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlID09IHRydWUgJiYgaSA9PSAodGhpcy5Qb3NfQXJyYXkubGVuZ3RoLTEpKXtcclxuICAgICAgICAgICAgICAgICAgICBpID0gMTAwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcG9pbnQ7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOeCueS5i+mXtOi3neemu++8jOi/lOWbnuWIpOaWreaYr+WQpuWcqOS4gOWumuiMg+WbtOWGhSDlsIbmnaXmj5Dlh7rliLDlt6XlhbfnsbtcclxuICAgIGdldERpc3RhbmNlKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heE1vdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGlmKGRpc3RhbmNlIDwgR2FtZURhdGEuX2luc3RhbmNlLkxFVkVMX0lORk9bdGhpcy5sZXZlbC0xXS5tYXhNb3ZlKXtcclxuICAgICAgICAgICAgICAgICAgICBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgZWxzZSBqZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBqZztcclxuICAgIH1cclxuICAgIC8v5ZG95Lit5Yqo55S7XHJcbiAgICBoaXRBY3Rpb24oZGF0YSl7XHJcbiAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gdHJ1ZTsgdGhpcy5oaXQub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5oaXQuc2V0UG9zaXRpb25cclxuICAgICAgICB0aGlzLmhpdC5zZXRQb3NpdGlvbih0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueCszNSx0aGlzLmJhbGxfQXJyYXlbZGF0YV0ueSszNSk7XHJcbiAgICAgICAgY2MudHdlZW4odGhpcy5oaXQpXHJcbiAgICAgICAgLnRvKDAse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAudG8oMC4yLHtwb3NpdGlvbjpjYy52Myh0aGlzLmhpdC54LTM1LHRoaXMuaGl0LnktMzUsMCl9KVxyXG4gICAgICAgIC5kZWxheSgwLjIpXHJcbiAgICAgICAgLnRvKDAuMSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5oaXQuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5Yib6YCg5aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBpZihjb2xvciA9PSAwKWJhbGwgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLnFpdTEpO1xyXG4gICAgICAgIGVsc2UgaWYoY29sb3IgPT0gMSliYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUyKTtcclxuICAgICAgICBlbHNlIGlmKGNvbG9yID09IDIpYmFsbCA9IGNjLmluc3RhbnRpYXRlKHRoaXMucWl1Myk7XHJcbiAgICAgICAgYmFsbC5wYXJlbnQgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJTdW5cIik7XHJcbiAgICAgICAgYmFsbC56SW5kZXggPSB0aGlzLm5vd19BcnJheS5sZW5ndGggLSBudW1iZXI7XHJcbiAgICAgICAgYmFsbC5zZXRQb3NpdGlvbih0aGlzLmJhbGwueCx0aGlzLmJhbGwueSk7XHJcbiAgICAgICAgYmFsbC5nZXRDb21wb25lbnQoXCJTdW5cIikuaW5pdChudW1iZXIsY29sb3Isc3BlZWQscmVwZWF0KTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkucHVzaChiYWxsKTtcclxuICAgIH1cclxuICAgIC8v6ZSA5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uui/nue6v1xyXG4gICAgY3JlYXRlTGluZShzdGFydCxlbmQsdGltZSl7XHJcbiAgICAgICAgbGV0IGxpbmUgPSBjYy5pbnN0YW50aWF0ZSh0aGlzLmxpbmVQcmVmYWIpO1xyXG4gICAgICAgIGxpbmUucGFyZW50ID0gdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKTtcclxuICAgICAgICBsaW5lLnNldFBvc2l0aW9uKHN0YXJ0Lngsc3RhcnQueSk7XHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v6I635Y+W5Lik54K55LmL6Ze055qE6KeS5bqm77yM5bCG5p2l6YO95Y+v5pS+5bel5YW357G7XHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7TnmoTot53nprsg6L+U5Zue5a+55bqU5pe26Ze0XHJcbiAgICBjYWxjdWxhdGVEaXN0YW5jZSh4MSwgeTEsIHgyLCB5MiwgbnVtKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICBsZXQgdGltZSA9IDA7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKG51bSA9PSAxKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvODAwICogMC42O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKG51bSA9PSAyKXtcclxuICAgICAgICAgICAgaWYoZGlzdGFuY2UgPiAxMjAwKSBkaXN0YW5jZSA9IDEyMDA7XHJcbiAgICAgICAgICAgIHRpbWUgPSBkaXN0YW5jZS8xMjAwICogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZihudW0gPT0gMyl7XHJcbiAgICAgICAgICAgIGlmKGRpc3RhbmNlID4gMTIwMCkgZGlzdGFuY2UgPSAxMjAwO1xyXG4gICAgICAgICAgICB0aW1lID0gZGlzdGFuY2UvMTIwMCAqIDEuNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aW1lO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Tot53nprsgIOi/lOWbnui3neemu+WIpOaWrVxyXG4gICAgZ2V0RGlzdGFuY2UyKHgxLCB5MSwgeDIsIHkyLG51bSkge1xyXG4gICAgICAgIHZhciBqZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnN0IGR4ID0geDIgLSB4MTtcclxuICAgICAgICBjb25zdCBkeSA9IHkyIC0geTE7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGlmKGRpc3RhbmNlID4gMTYwKXtcclxuICAgICAgICAgICAgaWYobnVtID09IHRydWUpe1xyXG4gICAgICAgICAgICAgICAgaWYoZGlzdGFuY2UgPCBHYW1lRGF0YS5faW5zdGFuY2UuTEVWRUxfSU5GT1t0aGlzLmxldmVsLTFdLm1heERpc3RhbmNlKSBqZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGpnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGpnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gamc7XHJcbiAgICB9XHJcbiAgICAvL+iDjOaZr+enu+WKqFxyXG4gICAgYmdNb3ZlKHR5cGUpe1xyXG4gICAgICAgIGxldCByYW5kb20gPSBNYXRoLnJhbmRvbSgpKjMwMCArIDMwMDtcclxuICAgICAgICBsZXQgcG9zWCA9IE1hdGgucmFuZG9tKCkqNjAwIC0gMzAwO1xyXG4gICAgICAgIGxldCB5MSA9IHRoaXMuYmcxLnkgLSByYW5kb20qdHlwZTtcclxuICAgICAgICBsZXQgdGltZTEgPSAwLjcqKHJhbmRvbS80MDApO1xyXG4gICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAudG8oMC4zLHtzY2FsZToxLjN9KVxyXG4gICAgICAgIC50byh0aW1lMSx7eDpwb3NYfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLmJnMSlcclxuICAgICAgICAuZGVsYXkoMC4zKVxyXG4gICAgICAgIC50byh0aW1lMSx7eTp5MX0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMub3ZlciA9PSBmYWxzZSkgdGhpcy5zdGFydEdhbWUoKTtcclxuICAgICAgICB9LCB0aW1lMSoxNTAwKTtcclxuICAgIH1cclxuICAgIC8v5pe26Ze05qC85byP6L2s5o2iXHJcbiAgICBnZXRUaW1lTWFyZ2luKHNlY29uZDpudW1iZXIpIHtcclxuICAgICAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgICAgIHRvdGFsID0gc2Vjb25kO1xyXG4gICAgICAgIGxldCBob3VyID0gMDtcclxuICAgICAgICBob3VyID0gcGFyc2VJbnQoKHRvdGFsIC8gMzYwMCkgKyBcIlwiKTsvL+iuoeeul+aVtOaVsOWwj+aXtuaVsFxyXG4gICAgICAgIGxldCBhZnRlckhvdXIgPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwOy8v5Y+W5b6X566X5Ye65bCP5pe25pWw5ZCO5Ymp5L2Z55qE56eS5pWwXHJcbiAgICAgICAgbGV0IG1pbiA9IHBhcnNlSW50KChhZnRlckhvdXIgLyA2MCkrXCJcIik7Ly/orqHnrpfmlbTmlbDliIZcclxuICAgICAgICBsZXQgbSA9IFwiXCIgKyBtaW47ICBcclxuICAgICAgICBpZihtaW4gPCAxMCkgbSA9IFwiMFwiK21pbjtcclxuICAgICAgICBsZXQgYWZ0ZXJNaW4gPSB0b3RhbCAtIGhvdXIgKiA2MCAqIDYwIC0gbWluICogNjA7Ly/lj5blvpfnrpflh7rliIblkI7liankvZnnmoTnp5LmlbBcclxuICAgICAgICBsZXQgbWlhbyA9IGFmdGVyTWluICsgXCJcIjtcclxuICAgICAgICBpZihhZnRlck1pbiA8IDEwKSBtaWFvID0gXCIwXCIgKyBhZnRlck1pbjtcclxuICAgICAgICByZXR1cm4gbSArICc6JyArIG1pYW9cclxuICAgIH1cclxuICAgIC8v5aaC5p6c5piv5YCS6K6h5pe2IOiwg+eUqOatpOaWueazlVxyXG4gICAgdXBkYXRlQ291bnREb3duVGltZSAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY291bnRUaW1lID4gMCAmJiB0aGlzLnBhdXNlID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnRUaW1lIC09IDE7XHJcbiAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSB0aGlzLmdldFRpbWVNYXJnaW4odGhpcy5jb3VudFRpbWUpO1xyXG4gICAgICAgICAgICBpZih0aGlzLmNvdW50VGltZSA8IDUpe1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aW1lLm5vZGUpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yNSx7c2NhbGU6MS41LGNvbG9yOmNjLmNvbG9yKDI1NSwwLDApfSlcclxuICAgICAgICAgICAgICAgIC50bygwLjI1LHtzY2FsZToxLGNvbG9yOmNjLmNvbG9yKDI1NSwyNTUsMjU1KX0pXHJcbiAgICAgICAgICAgICAgICAuc3RhcnQoKVxyXG4gICAgICAgICAgICAgICAgbGV0IG92ZXIgPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJPdmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAgICAgICAgIC50bygwLjIse29wYWNpdHk6MjU1fSlcclxuICAgICAgICAgICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgICAgICAgICAudG8oMC4yLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodGhpcy5jb3VudFRpbWUgPD0gMCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXIgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bnNjaGVkdWxlKHRoaXMudXBkYXRlQ291bnREb3duVGltZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvc3MoKTtcclxuICAgICAgICAgICAgICAgIHZhciB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tDb3VudCA+IDApIHRpbWUgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUvdGhpcy5jbGlja0NvdW50ICsgXCJcIik7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tZWFuX1RpbWUgPSBwYXJzZUludCh0aW1lLzEwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lID0gR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8ubWVhbl9UaW1lIC8xMDtcclxuICAgICAgICAgICAgICAgIGlmKHRpbWUgPiAxMDAwMCkgdGltZSA9IChNYXRoLnJhbmRvbSgpKjEwKzUpKjEwMDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UmFuayh0aW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5LiK5Lyg5q+P5qyh5pON5L2c5pWw5o2uXHJcbiAgICBzZXREYXRhKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdBTUVfREFUQSA9IFtdO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEEucHVzaChHYW1lRGF0YS5faW5zdGFuY2UuQ0xJQ0tfREFUQSk7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkNMSUNLX2luaXQoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IEdhbWVEYXRhLl9pbnN0YW5jZS5HQU1FX0RBVEE7XHJcbiAgICAgICAgbGV0IG1hdGNoSWQgPSB0aGlzLmdldE1hdGNoSWQoKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhtYXRjaElkKTtcclxuICAgICAgICBsZXQgcG9zdERhdGEgPSB7XHJcbiAgICAgICAgICAgIFwibWF0Y2hJZFwiOm1hdGNoSWQsXHJcbiAgICAgICAgICAgIFwiZGF0YVwiOiBkYXRhXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIuS4iuS8oOaVsOaNrjpcIilcclxuICAgICAgICBIdHRwVXRpbC51cGxvYWRVc2VyTG9nRGF0YShwb3N0RGF0YSxmdW5jdGlvbigpe30pXHJcbiAgICB9XHJcbiAgICAvL+iOt+WPlm1hdGNoSWQgIOeUqOS6juS4iuS8oOavj+asoeeCueWHu+aVsOaNrumHjOmdouiusOW9lWlk5pa55L6/5p+l6K+iXHJcbiAgICBnZXRNYXRjaElkICgpe1xyXG4gICAgICAgIGxldCBtYXRjaElkID0gY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibWF0Y2hJZFwiKTtcclxuICAgICAgICBpZihtYXRjaElkID09IFwidW5kaWZlbmRcIiB8fCBtYXRjaElkPT1udWxsKXtcclxuICAgICAgICAgICAgbWF0Y2hJZCA9ICB0aGlzLnNldE1hdGNoSWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgaWYodGhpcy5jb250YWluc05hbmFuYShtYXRjaElkKSA9PSB0cnVlKXtcclxuICAgICAgICAgICAgICAgIG1hdGNoSWQgPSAgdGhpcy5zZXRNYXRjaElkKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIGxldCBjaGFyID0gcGFyc2VJbnQobWF0Y2hJZFsxMF0pO1xyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yb3VuZCA9PSAxKXtcclxuICAgICAgICAgICAgICAgICAgICBjaGFyICs9IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXRjaElkICA9IG1hdGNoSWQuc2xpY2UoMCwgMTApICsgY2hhciArIFwiXCI7XHJcbiAgICAgICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5tYXRjaElkID0gbWF0Y2hJZDtcclxuICAgICAgICAgICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoSWRcIixtYXRjaElkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbWF0Y2hJZDtcclxuICAgIH1cclxuICAgIC8v5qOA5rWLbWF0Y2hJZCDlpoLmnpzmnInnvJPlrZjku6XliY3nmoRuYW5hbmHmlbDmja7muIXpmaRcclxuICAgIGNvbnRhaW5zTmFuYW5hKHN0cikge1xyXG4gICAgICAgIHJldHVybiAvbmEvaS50ZXN0KHN0cik7XHJcbiAgICB9XHJcbiAgICAvL+mHjeaWsOiuvue9rk1hdGNoSWRcclxuICAgIHNldE1hdGNoSWQgKCl7XHJcbiAgICAgICAgLy8g5a6a5LmJ5YyF5ZCr5Y+v55So5a2X56ym55qE5a2X56ym6ZuGXHJcbiAgICAgICAgY29uc3QgY2hhcmFjdGVycyA9ICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSc7XHJcbiAgICAgICAgLy8g5Yib5bu65LiA5Liq5pWw57uE5Lul5L+d5a2Y6ZqP5py65a2X56ymXHJcbiAgICAgICAgY29uc3QgdXVpZEFycmF5ID0gW107XHJcbiAgICAgICAgLy8g5b6q546vMTDmrKEg55Sf5oiQMTDkvY3nmoRVVUlEXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAvLyDnlJ/miJDpmo/mnLrntKLlvJXvvIzojIPlm7TmmK/lrZfnrKbpm4bnmoTplb/luqZcclxuICAgICAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIC8vIOS7juWtl+espumbhuS4reiOt+WPlumaj+acuuWtl+esplxyXG4gICAgICAgICAgICBjb25zdCByYW5kb21DaGFyID0gY2hhcmFjdGVycy5jaGFyQXQocmFuZG9tSW5kZXgpO1xyXG4gICAgICAgICAgICAvLyDlsIblrZfnrKbmt7vliqDliLDmlbDnu4TkuK1cclxuICAgICAgICAgICAgdXVpZEFycmF5LnB1c2gocmFuZG9tQ2hhcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBkYXRhID0gIHV1aWRBcnJheS5qb2luKCcnKSArIDEgKyBcIlwiO1xyXG4gICAgICAgIGNjLnN5cy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShcIm1hdGNoTnVtYmVyXCIsMSk7XHJcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKFwibWF0Y2hJZFwiLGRhdGEpO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLm1hdGNoSWQgPSBkYXRhO1xyXG4gICAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgfVxyXG4gICAgLy/kuIrkvKDmjpLooYzmppzmlbDmja5cclxuICAgIHNldFJhbmsodGltZSl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInR5cGVcIjoxLFxyXG4gICAgICAgICAgICBcInJlYWN0aW9uVGltZVwiOiB0aW1lLFxyXG4gICAgICAgICAgICBcInRvdGFsU3VuQ291bnRcIjogR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udG90YWwsXHJcbiAgICAgICAgICAgIFwic3VjY2Vzc1wiOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5zdWNjZXNzXHJcbiAgICAgICAgfTtcclxuICAgICAgICBIdHRwVXRpbC5yYW5rRGF0YSgxLGZ1bmN0aW9uKCl7fSxwb3N0RGF0YSk7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiR2FtZU92ZXJcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKS5vcGFjaXR5ID0gMDtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJHYW1lT3ZlclwiKSlcclxuICAgICAgICAudG8oMC40LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDIpXHJcbiAgICAgICAgLnRvKDAuNCx7b3BhY2l0eTo1MH0pXHJcbiAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIk92ZXJTY2VuZVwiKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5zdGFydCgpXHJcbiAgICB9XHJcbiAgICAvL+S9nOW8iu+8jOa1i+ivleeUqFxyXG4gICAgc2hvd051bWJlcigpe1xyXG4gICAgICAgIGlmKHRoaXMuc2hvdyA9PSBmYWxzZSkgdGhpcy5zaG93ID0gdHJ1ZTtcclxuICAgICAgICBlbHNlIGlmKHRoaXMuc2hvdyA9PSB0cnVlKSB0aGlzLnNob3cgPSBmYWxzZTtcclxuICAgICAgICBmb3IobGV0IGk9MDsgaTx0aGlzLmJhbGxfQXJyYXkubGVuZ3RoOyBpKyspe1xyXG4gICAgICAgICAgICB0aGlzLmJhbGxfQXJyYXlbaV0uZ2V0Q29tcG9uZW50KFwiU3VuXCIpLnNob3dOdW1iZXIodGhpcy5zaG93KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvbkVuYWJsZSAoKSB7XHJcbiAgICAgICAgTm90aWZpY2F0aW9uLm9uKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1biwgdGhpcyk7XHJcbiAgICB9XHJcbiAgICBvbkRpc2FibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vZmYoXCJjbGlja1N1blwiLCB0aGlzLmNsaWNrU3VuKTtcclxuICAgIH1cclxuICAgIHVwZGF0ZSAoZHQpIHtcclxuICAgIH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/GuideManager.js b/temp/quick-scripts/dst/assets/Script/GuideManager.js index eea6123..31694af 100644 --- a/temp/quick-scripts/dst/assets/Script/GuideManager.js +++ b/temp/quick-scripts/dst/assets/Script/GuideManager.js @@ -79,9 +79,9 @@ var NewClass = /** @class */ (function (_super) { if (type != 0) _this.custom = 2; if (_this.custom == 2) - _this.createSun1(); + _this.createSun(true); else if (_this.custom == 3) - _this.createSun2(); + _this.createSun(false); else if (_this.custom == 4) _this.begin = true; else if (_this.custom == 5) @@ -383,4 +383,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHdWlkZU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLHVDQUFrQztBQUNsQywrQ0FBOEM7QUFDeEMsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBc0MsNEJBQVk7SUFBbEQ7UUFBQSxxRUFrVEM7UUFqVEcsd0JBQXdCO1FBRXhCLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFZLElBQUksQ0FBQztRQUVyQixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDOztJQXlTakMsQ0FBQztJQWxTRyxlQUFlO0lBRWYsd0JBQUssR0FBTDtRQUNJLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUNELE9BQU87SUFDUCx1QkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxRQUFRO0lBQ1IsNkJBQVUsR0FBVixVQUFXLElBQUk7UUFBZixpQkF3QkM7UUF2QkcsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN0QixJQUFJLElBQUksR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLElBQUksR0FBRyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLElBQUcsSUFBSSxJQUFFLENBQUMsRUFBQztZQUNQLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDbEIsRUFBRSxDQUFDLElBQUksRUFBQyxFQUFDLE9BQU8sRUFBQyxHQUFHLEVBQUMsQ0FBQztpQkFDdEIsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO2dCQUNqQixJQUFHLElBQUksSUFBSSxDQUFDO29CQUFFLEtBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUM5QixJQUFJLEtBQUksQ0FBQyxNQUFNLElBQUksQ0FBQztvQkFBRyxLQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7cUJBQ3BDLElBQUksS0FBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO29CQUFHLEtBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztxQkFDekMsSUFBSSxLQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7b0JBQUcsS0FBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7cUJBQ3pDLElBQUksS0FBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO29CQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2xFLENBQUMsQ0FBQztpQkFDRCxLQUFLLEVBQUUsQ0FBQztTQUNaO2FBQ0c7WUFDQSxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUM3QyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7aUJBQ2pCLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxPQUFPLEVBQUMsR0FBRyxFQUFDLENBQUM7aUJBQ3RCLEtBQUssRUFBRSxDQUFDO1NBQ1o7SUFDTCxDQUFDO0lBQ0QsUUFBUTtJQUNSLDZCQUFVLEdBQVY7UUFDSSxLQUFJLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUM7WUFDdkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztTQUN2RDtJQUNMLENBQUM7SUFDRCxpQkFBaUI7SUFDakIsMkJBQVEsR0FBUjtRQUNJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxTQUFTO0lBQ1QsdUJBQUksR0FBSjtRQUFBLGlCQWFDO1FBWkcsSUFBSSxJQUFJLEdBQUcsR0FBRyxDQUFDO1FBQ2YsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ2pCLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFDLENBQUM7YUFDcEIsSUFBSSxDQUFDO1lBQ0YsS0FBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUM7WUFDakIsSUFBSSxLQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7Z0JBQUcsS0FBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDdkMsSUFBSSxLQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7Z0JBQUcsS0FBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDN0MsSUFBSSxLQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7Z0JBQUcsS0FBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7aUJBQ3pDLElBQUksS0FBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO2dCQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWxFLENBQUMsQ0FBQzthQUNELEtBQUssRUFBRSxDQUFDO0lBQ2IsQ0FBQztJQUNELE1BQU07SUFDTiw0QkFBUyxHQUFULFVBQVUsSUFBSTtRQUFkLGlCQThDQztRQTdDRyxJQUFHLElBQUksSUFBSSxJQUFJLEVBQUM7WUFDWixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFDLENBQUMsR0FBRyxDQUFDLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUMsQ0FBQyxHQUFHLENBQUMsRUFBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN0RSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNuRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDdEIsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUNsQixFQUFFLENBQUMsS0FBSyxFQUFDLEVBQUMsUUFBUSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztpQkFDdEMsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLENBQUM7aUJBQ1IsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsQ0FBQyxDQUFDO2lCQUNELEtBQUssRUFBRSxDQUFDO1NBQ1o7YUFDRztZQUNBLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ25ILElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ25ILElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztZQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzdGLEdBQUcsQ0FBQyxDQUFDO1lBQ0wsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUNsQixFQUFFLENBQUMsS0FBSyxFQUFDLEVBQUMsUUFBUSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztpQkFDdEMsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLENBQUM7aUJBQ1YsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDN0YsR0FBRyxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUM7aUJBQ0QsRUFBRSxDQUFDLEtBQUssRUFBQyxFQUFDLFFBQVEsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUM7aUJBQ3RDLElBQUksQ0FBQztnQkFDRixLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM3QixLQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLENBQUM7aUJBQ1YsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixDQUFDLENBQUM7aUJBQ0QsS0FBSyxFQUFFLENBQUM7U0FDWjtJQUVMLENBQUM7SUFDRCxNQUFNO0lBQ04sNkJBQVUsR0FBVixVQUFXLE1BQU0sRUFBQyxLQUFLLEVBQUMsS0FBSyxFQUFDLE1BQU07UUFDaEMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLElBQUksR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUMsS0FBSyxFQUFDLEtBQUssRUFBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUNELGVBQWU7SUFDZixvQ0FBaUIsR0FBakIsVUFBa0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUM1QixJQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUMsRUFBRSxHQUFHLEVBQUUsR0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4QyxJQUFHLFFBQVEsR0FBRyxHQUFHO1lBQUUsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNsQyxJQUFNLElBQUksR0FBRyxRQUFRLEdBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTTtJQUNOLDRCQUFTLEdBQVQ7UUFBQSxpQkEwQ0M7UUF6Q0csSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25DLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1osS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLENBQUM7YUFDcEIsRUFBRSxDQUFDLElBQUksRUFBQyxFQUFDLEtBQUssRUFBQyxDQUFDLEVBQUMsQ0FBQzthQUNsQixLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1YsSUFBSSxDQUFDO1lBQ0YsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDbkIsVUFBVSxDQUFDO2dCQUNQLEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxTQUFTLEdBQUcsRUFBRSxDQUFDO2dCQUNuQixJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksSUFBSSxHQUFHLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzlCLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRSxLQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBQztvQkFDeEMsSUFBSSxJQUFJLEdBQUcsS0FBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN2RSxLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ25ELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ3hCO3dDQUNPLENBQUM7b0JBQ0wsVUFBVSxDQUFDO3dCQUNQLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDOzZCQUNiLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxFQUFDLEVBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDOzZCQUNsRSxJQUFJLENBQUM7NEJBQ0YsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDOzRCQUNsQyxJQUFHLENBQUMsSUFBSSxLQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBQyxDQUFDLEVBQUM7Z0NBQzdCLFVBQVUsQ0FBQztvQ0FDUCxLQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7b0NBQ3hCLEtBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDO29DQUM1QyxLQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7b0NBQ3pCLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0NBQ3ZCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQzs2QkFDWDt3QkFDTCxDQUFDLENBQUM7NkJBQ0QsS0FBSyxFQUFFLENBQUM7b0JBQ2IsQ0FBQyxFQUFFLFNBQVMsR0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDbkIsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsR0FBQyxHQUFHLENBQUMsQ0FBQzs7Z0JBakJ0QyxLQUFJLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUUsS0FBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFOzRCQUFuQyxDQUFDO2lCQWtCUjtZQUNMLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNaLENBQUMsQ0FBQzthQUNELEtBQUssRUFBRSxDQUFDO0lBQ2IsQ0FBQztJQUNELFVBQVU7SUFDViwyQkFBUSxHQUFSLFVBQVMsSUFBSTtRQUFiLGlCQXVCQztRQXRCRyxJQUFHLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFDO1lBQ2xCLElBQUcsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUM7Z0JBQ3JCLGtCQUFRLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFDbEQsSUFBRyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBQztvQkFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM1RixFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDeEUsR0FBRyxDQUFDLENBQUM7aUJBQ1I7Z0JBQ0QsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUM7Z0JBQ25CLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUN0QyxVQUFVLENBQUM7b0JBQ1AsSUFBRyxLQUFJLENBQUMsVUFBVSxDQUFDLEtBQUksQ0FBQyxRQUFRLEdBQUMsQ0FBQyxDQUFDO3dCQUMvQixLQUFJLENBQUMsVUFBVSxDQUFDLEtBQUksQ0FBQyxRQUFRLEdBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ2hGLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDUixJQUFHLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxFQUFDO29CQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7aUJBQ3BCO2FBQ0o7aUJBQ0c7Z0JBQ0EsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3BCO1NBQ0o7SUFDTCxDQUFDO0lBQ0QsTUFBTTtJQUNOLDRCQUFTLEdBQVQ7UUFBQSxpQkErQkM7UUE5QkcsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsa0JBQVEsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dDQUN0QixDQUFDO1lBQ0wsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDM0IsRUFBRSxDQUFDLEdBQUcsRUFBQyxFQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLENBQUM7aUJBQzNCLElBQUksQ0FBQztnQkFDRixLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ2xDLElBQUcsQ0FBQyxJQUFJLEtBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFDLENBQUMsRUFBQztvQkFDN0IsS0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO29CQUN0QixLQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUMsSUFBSSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQztvQkFDNUMsS0FBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNoQixLQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztvQkFDaEIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDdEI7WUFDTCxDQUFDLENBQUM7aUJBQ0QsS0FBSyxFQUFFLENBQUE7OztRQWJaLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUU7b0JBQW5DLENBQUM7U0FjUjtRQUNELFFBQVE7UUFDUixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNiLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxPQUFPLEVBQUMsR0FBRyxFQUFDLENBQUM7YUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEVBQUUsQ0FBQyxHQUFHLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFDLENBQUM7YUFDbkIsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxPQUFPLEVBQUMsR0FBRyxFQUFDLENBQUM7YUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEVBQUUsQ0FBQyxHQUFHLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxFQUFDLENBQUM7YUFDbkIsS0FBSyxFQUFFLENBQUM7SUFDYixDQUFDO0lBQ0QsUUFBUTtJQUNSLDJCQUFRLEdBQVI7UUFDSSxLQUFJLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUM7WUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzdCO1FBQ0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUNELE9BQU87SUFDUCwwQkFBTyxHQUFQO1FBQ0ksSUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN2QyxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsbUJBQW1CO0lBQ25CLDZCQUFVLEdBQVYsVUFBVyxLQUFLLEVBQUMsR0FBRyxFQUFDLElBQUk7UUFDckIsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxDLElBQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMzQixJQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0IsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUMsRUFBRSxHQUFHLEVBQUUsR0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztRQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRCxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3JDLEVBQUUsQ0FBQyxJQUFJLEVBQUMsRUFBQyxTQUFTLEVBQUMsQ0FBQyxFQUFDLENBQUM7YUFDdEIsS0FBSyxFQUFFLENBQUM7SUFDYixDQUFDO0lBQ0QsTUFBTTtJQUNOLDhCQUFXLEdBQVg7UUFDSSxLQUFJLElBQUksQ0FBQyxHQUFFLENBQUMsRUFBRSxDQUFDLEdBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBQyxDQUFDLEVBQUUsRUFBQztZQUNsRSxJQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBQztnQkFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ2hFLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDdkQ7U0FDSjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDekQsQ0FBQztJQUNELHlCQUF5QjtJQUN6QixpQ0FBYyxHQUFkLFVBQWUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUN6QixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBQyxFQUFFLEVBQUMsRUFBRSxHQUFDLEVBQUUsQ0FBQyxHQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN2RCxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ2xCLENBQUM7SUFDRCwyQkFBUSxHQUFSO1FBQ0ksMkJBQVksQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELDRCQUFTLEdBQVQ7UUFDSSwyQkFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUE3U0Q7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDSztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzBDQUNHO0lBRXJCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUM7MENBQ0c7SUFFdkI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQztnREFDUztJQVRaLFFBQVE7UUFENUIsT0FBTztPQUNhLFFBQVEsQ0FrVDVCO0lBQUQsZUFBQztDQWxURCxBQWtUQyxDQWxUcUMsRUFBRSxDQUFDLFNBQVMsR0FrVGpEO2tCQWxUb0IsUUFBUSIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8v5q2k6aG16Z2i5Li65byV5a+86aG16Z2i77yM5ZCO57ut5pu05paw5oiQ5qih5p2/77yM5pqC5pe25YG35oeS5aSN5Yi25Li75ri45oiP5Zy65pmv5Luj56CB6L+b5p2lXHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tICcuL0dhbWVEYXRhJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9Ob3RpZmljYXRpb24nO1xyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHl9ID0gY2MuX2RlY29yYXRvcjtcclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG4gICAgLy8gTElGRS1DWUNMRSBDQUxMQkFDS1M6XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGRpYWxvZzogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcclxuICAgIGJhbGw6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcclxuICAgIHFpdTE6IGNjLlByZWZhYiA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgbGluZVByZWZhYjogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIGNsaWNrTm93Om51bWJlcjtcclxuICAgIGN1c3RvbTogbnVtYmVyO1xyXG4gICAgUG9zX0FycmF5OiBhbnk7XHJcbiAgICBiYWxsX0FycmF5OiBhbnk7XHJcbiAgICBiZWdpbjogYm9vbGVhbjtcclxuICAgIHRpcDogY2MuTm9kZTtcclxuICAgIC8vIG9uTG9hZCAoKSB7fVxyXG5cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gPSAwO1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgIHRoaXMuYmFsbC56SW5kZXggPSAxMDA7XHJcbiAgICAgICAgdGhpcy5Qb3NfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJhbGxfQXJyYXkgPSBbXTtcclxuICAgICAgICB0aGlzLmJlZ2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbGlja05vdyA9IDA7XHJcbiAgICAgICAgdGhpcy50aXAgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgLy/lvIDlp4vlvJXlr7zmlrnms5VcclxuICAgIHN0YXJ0R3VpZGUodHlwZSl7XHJcbiAgICAgICAgbGV0IG51bSA9IHRoaXMuY3VzdG9tO1xyXG4gICAgICAgIGxldCB0aW1lID0gMC41O1xyXG4gICAgICAgIGxldCBuYW1lID0gXCJ0aXBcIiArIG51bTtcclxuICAgICAgICBpZih0eXBlIT0wKXtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5ub2RlKVxyXG4gICAgICAgICAgICAudG8odGltZSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9tICs9IDE7XHJcbiAgICAgICAgICAgICAgICBpZih0eXBlICE9IDApIHRoaXMuY3VzdG9tID0gMjtcclxuICAgICAgICAgICAgICAgIGlmKCB0aGlzLmN1c3RvbSA9PSAyKSAgdGhpcy5jcmVhdGVTdW4xKCk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSAzKSAgdGhpcy5jcmVhdGVTdW4yKCk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA0KSAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnRpcCA9IHRoaXMuZGlhbG9nLmdldENoaWxkQnlOYW1lKG5hbWUpO1xyXG4gICAgICAgICAgICB0aGlzLnRpcC5hY3RpdmUgPSB0cnVlOyB0aGlzLnRpcC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aXApXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF6Zmk5omA5pyJ5aSq6ZizXHJcbiAgICBiZWdpbkNsaWNrKCl7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlvIDlp4vmuLjmiI/vvIzmiJbogIXngrnlh7vot7Pov4flvJXlr7xcclxuICAgIGNsaWNrQnRuKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuIvkuIDmraXmjInpkq5cclxuICAgIG5leHQoKXtcclxuICAgICAgICBsZXQgdGltZSA9IDAuNTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLnRpcClcclxuICAgICAgICAudG8odGltZSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gMykgIHRoaXMuY3JlYXRlU3VuKGZhbHNlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gNCkgIHRoaXMuYmVnaW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcblxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs1xyXG4gICAgY3JlYXRlU3VuKHR5cGUpe1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKGNjLnYyKC0yNTAsLTIxNiksY2MudjIoMjAwLC0xMTUpLGNjLnYyKC0zNSwtNTAwKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsLngsdGhpcy5iYWxsLnksdGhpcy5Qb3NfQXJyYXlbMF0ueCx0aGlzLlBvc19BcnJheVswXS55KVxyXG4gICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUxLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVswXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDAsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDEpXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWUyID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLlBvc19BcnJheVswXS54LHRoaXMuUG9zX0FycmF5WzBdLnksdGhpcy5Qb3NfQXJyYXlbMV0ueCx0aGlzLlBvc19BcnJheVsxXS55KVxyXG4gICAgICAgICAgICBsZXQgdGltZTMgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSx0aGlzLlBvc19BcnJheVsyXS54LHRoaXMuUG9zX0FycmF5WzJdLnkpXHJcbiAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSksXHJcbiAgICAgICAgICAgIDAuNSk7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUyLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVsxXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDEsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuNSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzJdLngsdGhpcy5Qb3NfQXJyYXlbMl0ueSksXHJcbiAgICAgICAgICAgICAgICAwLjUpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAudG8odGltZTMse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5WzJdfSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUJhbGwoMiwwLDAsZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC4yKVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIC8v5Yib5bu65aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBiYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUxKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMuUG9zX0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIGJhbGwuZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Top5LluqbliJvlu7rov57nur/nlKhcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgIGNvbnN0IHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjg7XHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvJXlr7zmiJDlip9cclxuICAgIHBhc3NMZXZlbCgpe1xyXG4gICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICBjYy50d2Vlbih3aW4pXHJcbiAgICAgICAgLmRlbGF5KDAuNClcclxuICAgICAgICAudG8oMC4wMSx7c2NhbGU6Mi41fSlcclxuICAgICAgICAudG8oMC4zNSx7c2NhbGU6MX0pXHJcbiAgICAgICAgLmRlbGF5KDAuNilcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgd2luLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGk9MTsgaTwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGs9MTsgazwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaysrKXtcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWVBcnJheVtrLTFdLHt4OnRoaXMuYmFsbF9BcnJheVtrXS54LHk6dGhpcy5iYWxsX0FycmF5W2tdLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lQ291bnQgKz0gKHRpbWVBcnJheVtrLTFdKzAuMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sIDQwMCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsICs9IDE7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IDMpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+Wksei0peS6i+S7tlxyXG4gICAgbG9zZUxldmVsKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5BdWRpb01hbmFnZXIucGxheVdhcm5pbmcoKTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtrXSlcclxuICAgICAgICAgICAgLnRvKDAuNix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICB9XHJcbiAgICAgICAgLy/nu5PmnZ/pobXpnaLliqjnlLtcclxuICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAudG8oMC4yNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMix7b3BhY2l0eTowfSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjE1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlpKrpmLPkuovku7ZcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bml7bpl7TmiLNcclxuICAgIGdldFRpbWUoKXtcclxuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gdGltZXN0YW1wO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDov57nur/vvIzlj4LmlbDotbfngrnvvIznu4jngrnvvIzov57nur/ml7bpl7RcclxuICAgIGNyZWF0ZUxpbmUoc3RhcnQsZW5kLHRpbWUpe1xyXG4gICAgICAgIGxldCBsaW5lID0gY2MuaW5zdGFudGlhdGUodGhpcy5saW5lUHJlZmFiKTtcclxuICAgICAgICBsaW5lLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIik7XHJcbiAgICAgICAgbGluZS5zZXRQb3NpdGlvbihzdGFydC54LHN0YXJ0LnkpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5pGn5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOS4queCueS5i+mXtOeahOinkuW6piDnlKjkuo7lhpnov57nur8g56Gu5a6a6L+e57q/5pa55ZCRXHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxHdWlkZU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLHVDQUFrQztBQUNsQywrQ0FBOEM7QUFDeEMsSUFBQSxLQUFzQixFQUFFLENBQUMsVUFBVSxFQUFsQyxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQWlCLENBQUM7QUFFMUM7SUFBc0MsNEJBQVk7SUFBbEQ7UUFBQSxxRUFrVEM7UUFqVEcsd0JBQXdCO1FBRXhCLFlBQU0sR0FBWSxJQUFJLENBQUM7UUFFdkIsVUFBSSxHQUFZLElBQUksQ0FBQztRQUVyQixVQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXZCLGdCQUFVLEdBQWMsSUFBSSxDQUFDOztJQXlTakMsQ0FBQztJQWxTRyxlQUFlO0lBRWYsd0JBQUssR0FBTDtRQUNJLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUNELE9BQU87SUFDUCx1QkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxRQUFRO0lBQ1IsNkJBQVUsR0FBVixVQUFXLElBQUk7UUFBZixpQkF3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SyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7aUJBQ2xCLEVBQUUsQ0FBQyxLQUFLLEVBQUMsRUFBQyxRQUFRLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO2lCQUN0QyxJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDVixJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFDLEtBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxLQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3RixHQUFHLENBQUMsQ0FBQztZQUNULENBQUMsQ0FBQztpQkFDRCxFQUFFLENBQUMsS0FBSyxFQUFDLEVBQUMsUUFBUSxFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztpQkFDdEMsSUFBSSxDQUFDO2dCQUNGLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLEtBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUMxQixDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDVixJQUFJLENBQUM7Z0JBQ0YsS0FBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNuQixLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLENBQUMsQ0FBQztpQkFDRCxLQUFLLEVBQUUsQ0FBQztTQUNa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QUUsRUFBRSxFQUFFO1FBQ3pCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFDLEVBQUUsRUFBQyxFQUFFLEdBQUMsRUFBRSxDQUFDLEdBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDbEIsQ0FBQztJQUNELDJCQUFRLEdBQVI7UUFDSSwyQkFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsNEJBQVMsR0FBVDtRQUNJLDJCQUFZLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQTdTRDtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNLO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7MENBQ0c7SUFFckI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzswQ0FDRztJQUV2QjtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDO2dEQUNTO0lBVFosUUFBUTtRQUQ1QixPQUFPO09BQ2EsUUFBUSxDQWtUNUI7SUFBRCxlQUFDO0NBbFRELEFBa1RDLENBbFRxQyxFQUFFLENBQUMsU0FBUyxHQWtUakQ7a0JBbFRvQixRQUFRIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy/mraTpobXpnaLkuLrlvJXlr7zpobXpnaLvvIzlkI7nu63mm7TmlrDmiJDmqKHmnb/vvIzmmoLml7blgbfmh5LlpI3liLbkuLvmuLjmiI/lnLrmma/ku6PnoIHov5vmnaVcclxuaW1wb3J0IEdhbWVEYXRhIGZyb20gJy4vR2FtZURhdGEnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuL05vdGlmaWNhdGlvbic7XHJcbmNvbnN0IHtjY2NsYXNzLCBwcm9wZXJ0eX0gPSBjYy5fZGVjb3JhdG9yO1xyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXdDbGFzcyBleHRlbmRzIGNjLkNvbXBvbmVudCB7XHJcbiAgICAvLyBMSUZFLUNZQ0xFIENBTExCQUNLUzpcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgZGlhbG9nOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxyXG4gICAgYmFsbDogY2MuTm9kZSA9IG51bGw7XHJcbiAgICBAcHJvcGVydHkoY2MuUHJlZmFiKVxyXG4gICAgcWl1MTogY2MuUHJlZmFiID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5QcmVmYWIpXHJcbiAgICBsaW5lUHJlZmFiOiBjYy5QcmVmYWIgPSBudWxsO1xyXG4gICAgY2xpY2tOb3c6bnVtYmVyO1xyXG4gICAgY3VzdG9tOiBudW1iZXI7XHJcbiAgICBQb3NfQXJyYXk6IGFueTtcclxuICAgIGJhbGxfQXJyYXk6IGFueTtcclxuICAgIGJlZ2luOiBib29sZWFuO1xyXG4gICAgdGlwOiBjYy5Ob2RlO1xyXG4gICAgLy8gb25Mb2FkICgpIHt9XHJcblxyXG4gICAgc3RhcnQgKCkge1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSA9IDA7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgfVxyXG4gICAgLy/liJ3lp4vljJbmlbDmja5cclxuICAgIGluaXQoKXtcclxuICAgICAgICB0aGlzLmN1c3RvbSA9IDE7XHJcbiAgICAgICAgdGhpcy5iYWxsLnpJbmRleCA9IDEwMDtcclxuICAgICAgICB0aGlzLlBvc19BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYmVnaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNsaWNrTm93ID0gMDtcclxuICAgICAgICB0aGlzLnRpcCA9IG51bGw7XHJcbiAgICB9XHJcbiAgICAvL+W8gOWni+W8leWvvOaWueazlVxyXG4gICAgc3RhcnRHdWlkZSh0eXBlKXtcclxuICAgICAgICBsZXQgbnVtID0gdGhpcy5jdXN0b207XHJcbiAgICAgICAgbGV0IHRpbWUgPSAwLjU7XHJcbiAgICAgICAgbGV0IG5hbWUgPSBcInRpcFwiICsgbnVtO1xyXG4gICAgICAgIGlmKHR5cGUhPTApe1xyXG4gICAgICAgICAgICBjYy50d2Vlbih0aGlzLm5vZGUpXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgICAgIGlmKHR5cGUgIT0gMCkgdGhpcy5jdXN0b20gPSAyO1xyXG4gICAgICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgICAgIGVsc2UgaWYoIHRoaXMuY3VzdG9tID09IDMpICB0aGlzLmNyZWF0ZVN1bihmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA0KSAgdGhpcy5iZWdpbiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICB0aGlzLnRpcCA9IHRoaXMuZGlhbG9nLmdldENoaWxkQnlOYW1lKG5hbWUpO1xyXG4gICAgICAgICAgICB0aGlzLnRpcC5hY3RpdmUgPSB0cnVlOyB0aGlzLnRpcC5vcGFjaXR5ID0gMDtcclxuICAgICAgICAgICAgY2MudHdlZW4odGhpcy50aXApXHJcbiAgICAgICAgICAgIC50byh0aW1lLHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5riF6Zmk5omA5pyJ5aSq6ZizXHJcbiAgICBiZWdpbkNsaWNrKCl7XHJcbiAgICAgICAgZm9yKGxldCBpPTA7IGk8dGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W2ldLmdldENvbXBvbmVudChcIlN1blwiKS5tb3ZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlvIDlp4vmuLjmiI/vvIzmiJbogIXngrnlh7vot7Pov4flvJXlr7xcclxuICAgIGNsaWNrQnRuKCl7XHJcbiAgICAgICAgY2MuZGlyZWN0b3IubG9hZFNjZW5lKFwiR2FtZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vkuIvkuIDmraXmjInpkq5cclxuICAgIG5leHQoKXtcclxuICAgICAgICBsZXQgdGltZSA9IDAuNTtcclxuICAgICAgICBjYy50d2Vlbih0aGlzLnRpcClcclxuICAgICAgICAudG8odGltZSx7b3BhY2l0eTowfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5jdXN0b20gKz0gMTtcclxuICAgICAgICAgICAgaWYoIHRoaXMuY3VzdG9tID09IDIpICB0aGlzLmNyZWF0ZVN1bih0cnVlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gMykgIHRoaXMuY3JlYXRlU3VuKGZhbHNlKTtcclxuICAgICAgICAgICAgZWxzZSBpZiggdGhpcy5jdXN0b20gPT0gNCkgIHRoaXMuYmVnaW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBlbHNlIGlmKCB0aGlzLmN1c3RvbSA9PSA1KSBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcblxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICB9XHJcbiAgICAvL+WIm+W7uuWkqumYs1xyXG4gICAgY3JlYXRlU3VuKHR5cGUpe1xyXG4gICAgICAgIGlmKHR5cGUgPT0gdHJ1ZSl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLlBvc19BcnJheS5wdXNoKGNjLnYyKC0yNTAsLTIxNiksY2MudjIoMjAwLC0xMTUpLGNjLnYyKC0zNSwtNTAwKSk7XHJcbiAgICAgICAgICAgIGxldCB0aW1lMSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsLngsdGhpcy5iYWxsLnksdGhpcy5Qb3NfQXJyYXlbMF0ueCx0aGlzLlBvc19BcnJheVswXS55KVxyXG4gICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUxLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVswXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDAsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDEpXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWUyID0gdGhpcy5jYWxjdWxhdGVEaXN0YW5jZSh0aGlzLlBvc19BcnJheVswXS54LHRoaXMuUG9zX0FycmF5WzBdLnksdGhpcy5Qb3NfQXJyYXlbMV0ueCx0aGlzLlBvc19BcnJheVsxXS55KVxyXG4gICAgICAgICAgICBsZXQgdGltZTMgPSB0aGlzLmNhbGN1bGF0ZURpc3RhbmNlKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSx0aGlzLlBvc19BcnJheVsyXS54LHRoaXMuUG9zX0FycmF5WzJdLnkpXHJcbiAgICAgICAgICAgIHRoaXMuYmFsbC5vcGFjaXR5ID0gMjU1O1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzFdLngsdGhpcy5Qb3NfQXJyYXlbMV0ueSksXHJcbiAgICAgICAgICAgIDAuNSk7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbClcclxuICAgICAgICAgICAgLnRvKHRpbWUyLHtwb3NpdGlvbjp0aGlzLlBvc19BcnJheVsxXX0pXHJcbiAgICAgICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVCYWxsKDEsMCwwLGZhbHNlKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmRlbGF5KDAuNSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsLngsdGhpcy5iYWxsLnkpLGNjLnYyKHRoaXMuUG9zX0FycmF5WzJdLngsdGhpcy5Qb3NfQXJyYXlbMl0ueSksXHJcbiAgICAgICAgICAgICAgICAwLjUpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAudG8odGltZTMse3Bvc2l0aW9uOnRoaXMuUG9zX0FycmF5WzJdfSlcclxuICAgICAgICAgICAgLmNhbGwoKCkgPT57XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUJhbGwoMiwwLDAsZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuZGVsYXkoMC4yKVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgwKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIC8v5Yib5bu65aSq6ZizXHJcbiAgICBjcmVhdGVCYWxsKG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpe1xyXG4gICAgICAgIGxldCBiYWxsID0gbnVsbDtcclxuICAgICAgICBiYWxsID0gY2MuaW5zdGFudGlhdGUodGhpcy5xaXUxKTtcclxuICAgICAgICBiYWxsLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIlN1blwiKTtcclxuICAgICAgICBiYWxsLnpJbmRleCA9IHRoaXMuUG9zX0FycmF5Lmxlbmd0aCAtIG51bWJlcjtcclxuICAgICAgICBiYWxsLnNldFBvc2l0aW9uKHRoaXMuYmFsbC54LHRoaXMuYmFsbC55KTtcclxuICAgICAgICBiYWxsLmdldENvbXBvbmVudChcIlN1blwiKS5pbml0KG51bWJlcixjb2xvcixzcGVlZCxyZXBlYXQpO1xyXG4gICAgICAgIGJhbGwuZ2V0Q29tcG9uZW50KFwiU3VuXCIpLm1vdmUgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheS5wdXNoKGJhbGwpO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bkuKTngrnkuYvpl7Top5LluqbliJvlu7rov57nur/nlKhcclxuICAgIGNhbGN1bGF0ZURpc3RhbmNlKHgxLCB5MSwgeDIsIHkyKSB7XHJcbiAgICAgICAgY29uc3QgZHggPSB4MiAtIHgxO1xyXG4gICAgICAgIGNvbnN0IGR5ID0geTIgLSB5MTtcclxuICAgICAgICB2YXIgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHgqZHggKyBkeSpkeSk7XHJcbiAgICAgICAgaWYoZGlzdGFuY2UgPiA4MDApIGRpc3RhbmNlID0gODAwO1xyXG4gICAgICAgIGNvbnN0IHRpbWUgPSBkaXN0YW5jZS84MDAgKiAwLjg7XHJcbiAgICAgICAgcmV0dXJuIHRpbWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy/lvJXlr7zmiJDlip9cclxuICAgIHBhc3NMZXZlbCgpe1xyXG4gICAgICAgIGxldCB3aW4gPSB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJXaW5cIik7XHJcbiAgICAgICAgd2luLmFjdGl2ZSA9IHRydWU7IHdpbi5zZXRTY2FsZSgwKTtcclxuICAgICAgICBjYy50d2Vlbih3aW4pXHJcbiAgICAgICAgLmRlbGF5KDAuNClcclxuICAgICAgICAudG8oMC4wMSx7c2NhbGU6Mi41fSlcclxuICAgICAgICAudG8oMC4zNSx7c2NhbGU6MX0pXHJcbiAgICAgICAgLmRlbGF5KDAuNilcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgd2luLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUxpbmUoKTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQXJyYXkgPSBbXTtcclxuICAgICAgICAgICAgICAgIGxldCB0aW1lQ291bnQgPSAwO1xyXG4gICAgICAgICAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGk9MTsgaTwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaSsrKXtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9IHRoaXMuY2FsY3VsYXRlRGlzdGFuY2UodGhpcy5iYWxsX0FycmF5W2ldLngsdGhpcy5iYWxsX0FycmF5W2ldLnksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtpLTFdLngsdGhpcy5iYWxsX0FycmF5W2ktMV0ueSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZUFycmF5LnB1c2godGltZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBmb3IobGV0IGs9MTsgazwgdGhpcy5iYWxsX0FycmF5Lmxlbmd0aDsgaysrKXtcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2MudHdlZW4oYmFsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvKHRpbWVBcnJheVtrLTFdLHt4OnRoaXMuYmFsbF9BcnJheVtrXS54LHk6dGhpcy5iYWxsX0FycmF5W2tdLnl9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5wb3NpdGlvbiA9IGNjLnYzKGJhbGwueCxiYWxsLnksMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYmFsbC5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydEd1aWRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdGFydCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIHRpbWVDb3VudCoxMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lQ291bnQgKz0gKHRpbWVBcnJheVtrLTFdKzAuMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sIDQwMCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v54K55Ye75aSq6Ziz5omn6KGM5pa55rOVXHJcbiAgICBjbGlja1N1bihkYXRhKXtcclxuICAgICAgICBpZih0aGlzLmJlZ2luID09IHRydWUpe1xyXG4gICAgICAgICAgICBpZihkYXRhID09IHRoaXMuY2xpY2tOb3cpe1xyXG4gICAgICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkF1ZGlvTWFuYWdlci5wbGF5QXVkaW9CdXR0b24oKTtcclxuICAgICAgICAgICAgICAgIGlmKHRoaXMuY2xpY2tOb3cgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUxpbmUoY2MudjIodGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXS55KSxcclxuICAgICAgICAgICAgICAgICAgICBjYy52Mih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueCx0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vd10ueSksXHJcbiAgICAgICAgICAgICAgICAgICAgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tOb3cgKz0gMTtcclxuICAgICAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnRvdGFsICs9IDE7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZih0aGlzLmJhbGxfQXJyYXlbdGhpcy5jbGlja05vdy0xXSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsX0FycmF5W3RoaXMuY2xpY2tOb3ctMV0uZ2V0Q2hpbGRCeU5hbWUoXCJndWFuZ1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0sIDIwMCk7XHJcbiAgICAgICAgICAgICAgICBpZih0aGlzLmNsaWNrTm93ID09IDMpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFzc0xldmVsKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9zZUxldmVsKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+Wksei0peS6i+S7tlxyXG4gICAgbG9zZUxldmVsKCl7XHJcbiAgICAgICAgdGhpcy5iZWdpbiA9IGZhbHNlO1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5BdWRpb01hbmFnZXIucGxheVdhcm5pbmcoKTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lMaW5lKCk7XHJcbiAgICAgICAgbGV0IGJhbGwgPSB0aGlzLmJhbGxfQXJyYXlbMF07XHJcbiAgICAgICAgZm9yKGxldCBrPTE7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFsbF9BcnJheVtrXSlcclxuICAgICAgICAgICAgLnRvKDAuNix7eDpiYWxsLngseTpiYWxsLnl9KVxyXG4gICAgICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGlmKGsgPT0gdGhpcy5iYWxsX0FycmF5Lmxlbmd0aC0xKXtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJhbGwub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWxsLnBvc2l0aW9uID0gY2MudjMoYmFsbC54LGJhbGwueSwwKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyU3VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b20gPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRHdWlkZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN0YXJ0KClcclxuICAgICAgICB9XHJcbiAgICAgICAgLy/nu5PmnZ/pobXpnaLliqjnlLtcclxuICAgICAgICBsZXQgb3ZlciA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIk92ZXJcIik7XHJcbiAgICAgICAgY2MudHdlZW4ob3ZlcilcclxuICAgICAgICAudG8oMC4yNSx7b3BhY2l0eToyNTV9KVxyXG4gICAgICAgIC5kZWxheSgwLjEpXHJcbiAgICAgICAgLnRvKDAuMix7b3BhY2l0eTowfSlcclxuICAgICAgICAuZGVsYXkoMC4xKVxyXG4gICAgICAgIC50bygwLjE1LHtvcGFjaXR5OjI1NX0pXHJcbiAgICAgICAgLmRlbGF5KDAuMSlcclxuICAgICAgICAudG8oMC4xLHtvcGFjaXR5OjB9KVxyXG4gICAgICAgIC5zdGFydCgpO1xyXG4gICAgfVxyXG4gICAgLy/ngrnlh7vlpKrpmLPkuovku7ZcclxuICAgIGNsZWFyU3VuKCl7XHJcbiAgICAgICAgZm9yKGxldCBrPTA7IGs8IHRoaXMuYmFsbF9BcnJheS5sZW5ndGg7IGsrKyl7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmFsbF9BcnJheVtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYmFsbF9BcnJheSA9IFtdO1xyXG4gICAgfVxyXG4gICAgLy/ojrflj5bml7bpl7TmiLNcclxuICAgIGdldFRpbWUoKXtcclxuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcclxuICAgICAgICByZXR1cm4gdGltZXN0YW1wO1xyXG4gICAgfVxyXG4gICAgLy/liJvpgKDov57nur/vvIzlj4LmlbDotbfngrnvvIznu4jngrnvvIzov57nur/ml7bpl7RcclxuICAgIGNyZWF0ZUxpbmUoc3RhcnQsZW5kLHRpbWUpe1xyXG4gICAgICAgIGxldCBsaW5lID0gY2MuaW5zdGFudGlhdGUodGhpcy5saW5lUHJlZmFiKTtcclxuICAgICAgICBsaW5lLnBhcmVudCA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIik7XHJcbiAgICAgICAgbGluZS5zZXRQb3NpdGlvbihzdGFydC54LHN0YXJ0LnkpO1xyXG4gICAgXHJcbiAgICAgICAgY29uc3QgZHggPSBlbmQueCAtIHN0YXJ0Lng7XHJcbiAgICAgICAgY29uc3QgZHkgPSBlbmQueSAtIHN0YXJ0Lnk7XHJcbiAgICAgICAgdmFyIGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4KmR4ICsgZHkqZHkpO1xyXG4gICAgICAgIGxpbmUuaGVpZ2h0ID0gZGlzdGFuY2U7XHJcbiAgICAgICAgbGluZS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5maWxsUmFuZ2UgPSAwO1xyXG4gICAgICAgIGxpbmUuYW5nbGUgPSAtdGhpcy5jYWxjdWxhdGVBbmdsZShzdGFydC54LHN0YXJ0LnksZW5kLngsZW5kLnkpO1xyXG4gICAgICAgIGNjLnR3ZWVuKGxpbmUuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSkpXHJcbiAgICAgICAgLnRvKHRpbWUse2ZpbGxSYW5nZToxfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIC8v5pGn5q+B6L+e57q/XHJcbiAgICBkZXN0cm95TGluZSgpIHtcclxuICAgICAgICBmb3IobGV0IGkgPTA7IGk8IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW4ubGVuZ3RoO2krKyl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIkxpbmVcIikuY2hpbGRyZW5baV0pe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwiTGluZVwiKS5jaGlsZHJlbltpXS5yZW1vdmVGcm9tUGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLmNoaWxkcmVuW2ldID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJMaW5lXCIpLnJlbW92ZUFsbENoaWxkcmVuKCk7XHJcbiAgICB9XHJcbiAgICAvL+iOt+WPluS4pOS4queCueS5i+mXtOeahOinkuW6piDnlKjkuo7lhpnov57nur8g56Gu5a6a6L+e57q/5pa55ZCRXHJcbiAgICBjYWxjdWxhdGVBbmdsZSh4MSwgeTEsIHgyLCB5Mikge1xyXG4gICAgICAgIHZhciBhbmdsZSA9IE1hdGguYXRhbjIoeTIteTEseDIteDEpKjE4MCAvIE1hdGguUEkgLSA5MDtcclxuICAgICAgICByZXR1cm4gLWFuZ2xlO1xyXG4gICAgfVxyXG4gICAgb25FbmFibGUgKCkge1xyXG4gICAgICAgIE5vdGlmaWNhdGlvbi5vbihcImNsaWNrU3VuXCIsIHRoaXMuY2xpY2tTdW4sIHRoaXMpO1xyXG4gICAgfVxyXG4gICAgb25EaXNhYmxlICgpIHtcclxuICAgICAgICBOb3RpZmljYXRpb24ub2ZmKFwiY2xpY2tTdW5cIiwgdGhpcy5jbGlja1N1bik7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/ListView/ItemRender.js b/temp/quick-scripts/dst/assets/Script/ListView/ItemRender.js index 3e0c6f0..b30d4d7 100644 --- a/temp/quick-scripts/dst/assets/Script/ListView/ItemRender.js +++ b/temp/quick-scripts/dst/assets/Script/ListView/ItemRender.js @@ -93,7 +93,7 @@ var ItemRender = /** @class */ (function (_super) { .catch(function (error) { console.error('Error fetching X-Info:', error); }); - cc.assetManager.loadRemote(url, { ext: '.jpg' }, function (err, texture) { + 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); @@ -124,4 +124,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMaXN0Vmlld1xcSXRlbVJlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFTSxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUc1QztJQUF3Qyw4QkFBWTtJQUFwRDtRQUFBLHFFQXFFQztRQXBFRyxRQUFRO1FBQ0QsVUFBSSxHQUFPLElBQUksQ0FBQztRQUN2QixjQUFjO1FBQ1AsZUFBUyxHQUFVLENBQUMsQ0FBQzs7SUFpRWhDLENBQUM7SUEvREcsYUFBYTtJQUNOLGdDQUFXLEdBQWxCO1FBQ0ksSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFBO1NBQ3pEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4RixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFB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QUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBQyxHQUFHLEVBQUMsTUFBTSxFQUFDLEVBQUMsVUFBQyxHQUFHLEVBQUUsT0FBb0I7WUFDbkUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFsRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FxRTlCO0lBQUQsaUJBQUM7Q0FyRUQsQUFxRUMsQ0FyRXVDLEVBQUUsQ0FBQyxTQUFTLEdBcUVuRDtrQkFyRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdCwgeyBMaXN0VHlwZSB9IGZyb20gXCIuL0xpc3RcIjtcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJdGVtUmVuZGVyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIC8qKuaVsOaNriAqL1xyXG4gICAgcHVibGljIGRhdGE6YW55ID0gbnVsbDtcclxuICAgIC8qKue0ouW8lSAw6KGo56S656ys5LiA6aG5Ki9cclxuICAgIHB1YmxpYyBpdGVtSW5kZXg6bnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirmlbDmja7mlLnlj5jml7bosIPnlKggKi9cclxuICAgIHB1YmxpYyBkYXRhQ2hhbmdlZCgpe1xyXG4gICAgICAgIGlmKHRoaXMuZGF0YS5uYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEubmFtZSA9IHRoaXMuZGF0YS5uYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5kYXRhLnJhbmsgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEubmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLCB7ZXh0OicuanBnJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNwcml0ZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKTtcclxuICAgICAgICAgICAgICAgIHNwcml0ZS5zcHJpdGVGcmFtZSA9IG5ldyBjYy5TcHJpdGVGcmFtZSh0ZXh0dXJlKTtcclxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZGF0YS5yYW5rLFwi6K6+572u5aS05YOP5oiQ5YqfXCIsZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLorr7nva7lpLTlg4/lpLHotKVcIix1cmwpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyLHRleHR1cmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMaXN0Vmlld1xcSXRlbVJlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFTSxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUc1QztJQUF3Qyw4QkFBWTtJQUFwRDtRQUFBLHFFQXFFQztRQXBFRyxRQUFRO1FBQ0QsVUFBSSxHQUFPLElBQUksQ0FBQztRQUN2QixjQUFjO1FBQ1AsZUFBUyxHQUFVLENBQUMsQ0FBQzs7SUFpRWhDLENBQUM7SUEvREcsYUFBYTtJQUNOLGdDQUFXLEdBQWxCO1FBQ0ksSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFBO1NBQ3pEO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4RixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFB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QUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBQyxHQUFHLEVBQUMsTUFBTSxFQUFDLEVBQUMsVUFBQyxHQUFHLEVBQUUsT0FBb0I7WUFDbkUsSUFBRyxPQUFPLEVBQUM7Z0JBQ1AsS0FBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRSxJQUFJLENBQUM7Z0JBQ25FLElBQUksTUFBTSxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRixNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDakQsNENBQTRDO2FBQy9DO2lCQUNHO2dCQUNBLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUMsT0FBTyxDQUFDLENBQUE7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFsRWdCLFVBQVU7UUFEOUIsT0FBTztPQUNhLFVBQVUsQ0FxRTlCO0lBQUQsaUJBQUM7Q0FyRUQsQUFxRUMsQ0FyRXVDLEVBQUUsQ0FBQyxTQUFTLEdBcUVuRDtrQkFyRW9CLFVBQVUiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdCwgeyBMaXN0VHlwZSB9IGZyb20gXCIuL0xpc3RcIjtcclxuXHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcblxyXG5AY2NjbGFzc1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJdGVtUmVuZGVyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIC8qKuaVsOaNriAqL1xyXG4gICAgcHVibGljIGRhdGE6YW55ID0gbnVsbDtcclxuICAgIC8qKue0ouW8lSAw6KGo56S656ys5LiA6aG5Ki9cclxuICAgIHB1YmxpYyBpdGVtSW5kZXg6bnVtYmVyID0gMDtcclxuXHJcbiAgICAvKirmlbDmja7mlLnlj5jml7bosIPnlKggKi9cclxuICAgIHB1YmxpYyBkYXRhQ2hhbmdlZCgpe1xyXG4gICAgICAgIGlmKHRoaXMuZGF0YS5uYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEubmFtZSA9IHRoaXMuZGF0YS5uYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5kYXRhLnJhbmsgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcIm5hbWVMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEubmFtZSArIFwiXCI7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwidG90YWxMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSB0aGlzLmRhdGEudG90YWwgKyBcIlwiO1xyXG4gICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgaWYodGhpcy5kYXRhLnJhbmsgPT0gMSl7XHJcbiAgICAgICAgICAgIHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmRhdGEucmFuayA9PSAyKXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmKHRoaXMuZGF0YS5yYW5rID09IDMpe1xyXG4gICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFBpYygpO1xyXG4gICAgfSAgIFxyXG4gICAgXHJcbiAgICBwdWJsaWMgc2V0UGljKCl7XHJcbiAgICAgICAgdGhpcy5ub2RlLmdldENoaWxkQnlOYW1lKFwicGljXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSBmYWxzZTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuZGF0YS5waWM7XHJcbiAgICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LUxlbmd0aCcpO1xyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssJ1gtSW5mbzonLCBlcnJObyk7IC8vIOi+k+WHulgtRXJyTm/nmoTlgLxcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLnJhbmssXCLmsqHlpLTlg49cIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUodXJsLCB7ZXh0OicucG5nJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaWNcIikuYWN0aXZlPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNwcml0ZSA9IHRoaXMubm9kZS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDaGlsZEJ5TmFtZShcInBpY1wiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKTtcclxuICAgICAgICAgICAgICAgIHNwcml0ZS5zcHJpdGVGcmFtZSA9IG5ldyBjYy5TcHJpdGVGcmFtZSh0ZXh0dXJlKTtcclxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZGF0YS5yYW5rLFwi6K6+572u5aS05YOP5oiQ5YqfXCIsZXJyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCLorr7nva7lpLTlg4/lpLHotKVcIix1cmwpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyLHRleHR1cmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuIl19 \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/Load.js b/temp/quick-scripts/dst/assets/Script/Load.js index f7065f3..86c6c96 100644 --- a/temp/quick-scripts/dst/assets/Script/Load.js +++ b/temp/quick-scripts/dst/assets/Script/Load.js @@ -47,48 +47,52 @@ var NewClass = /** @class */ (function (_super) { }; //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 NewClass.prototype.Authentication = function () { - var userId = Storage_1.StorageMessage.getStorage("user"); - if (userId == "undifend" || userId == null || userId == "") { - this.setUserId(); + var name = "user_" + GameData_1.default._instance.GM_INFO.gameId; + var data = Storage_1.StorageMessage.getStorage(name); + if (data == "undifend" || data == null || data == "") { + console.log("没缓存"); + this.setUserId(name); } else { - var data = Storage_1.StorageMessage.getStorage("user"); - data = this.getUserId(data); + console.log("有缓存"); var timestamp = parseInt(new Date().getTime() / 1000 + ""); - if ((timestamp - data[2]) > 86400) { - this.setUserId(); + if ((timestamp - data.time) > 86400) { + console.log("缓存过期"); + this.setUserId(name); return; } - GameData_1.default._instance.GM_INFO.userId = parseInt(data[1]); + GameData_1.default._instance.GM_INFO.userId = parseInt(data.userId); } }; //设置userId,链接有获取,没有跳转授权 - NewClass.prototype.setUserId = function () { - GameData_1.default._instance.GM_INFO.userId = this.getUserId(null); + NewClass.prototype.setUserId = function (name) { + GameData_1.default._instance.GM_INFO.userId = this.getUserId(); if (GameData_1.default._instance.GM_INFO.userId == null) { + console.log("链接没ID准备跳转"); var url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=" + location.href; window.location.href = url; } else { var timestamp = parseInt(new Date().getTime() / 1000 + ""); - var idTemp = "gameId=" + GameData_1.default._instance.GM_INFO.gameId + - "?userId= " + GameData_1.default._instance.GM_INFO.userId + "?time=" + timestamp; - Storage_1.StorageMessage.setStorage("user", idTemp); + var idData = { + userId: GameData_1.default._instance.GM_INFO.userId + "", + time: timestamp + }; + Storage_1.StorageMessage.setStorage(name, idData); + console.log("有ID:", GameData_1.default._instance.GM_INFO.userId); GameData_1.default._instance.GM_INFO.userId = parseInt(GameData_1.default._instance.GM_INFO.userId); } }; //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId - NewClass.prototype.getUserId = function (str) { + NewClass.prototype.getUserId = function () { var pathStr = window.location.search; var arr = pathStr.split("&"); - if (str != null) - arr = pathStr.split("?"); if (pathStr.length >= 0 && arr.length > 0) { var arr2_1 = []; arr.map(function (item) { arr2_1.push(item.split("=")[1]); }); - return str == null ? arr2_1[0] : arr2_1; + return arr2_1[0]; } else { return null; @@ -107,6 +111,8 @@ var NewClass = /** @class */ (function (_super) { NewClass.prototype.openRank = function () { cc.director.loadScene("RankScene"); }; + NewClass.prototype.update = function (dt) { + }; NewClass = __decorate([ ccclass ], NewClass); @@ -125,4 +131,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBQzVELHVDQUFrQztBQUNsQyxxQ0FBMkM7QUFHM0M7SUFBc0MsNEJBQVk7SUFBbEQ7O0lBbUVBLENBQUM7SUFqRUcsd0JBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0RBQWdEO0lBQ3hDLGlDQUFjLEdBQXRCO1FBQ0ksSUFBSSxNQUFNLEdBQUcsd0JBQWMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsSUFBRyxNQUFNLElBQUksVUFBVSxJQUFJLE1BQU0sSUFBRSxJQUFJLElBQUksTUFBTSxJQUFJLEVBQUUsRUFBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDcEI7YUFDRztZQUNBLElBQUksSUFBSSxHQUFHLHdCQUFjLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztZQUN6RCxJQUFHLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBQztnQkFDN0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNqQixPQUFPO2FBQ1Y7WUFDRCxrQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxD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InNvdXJjZXNDb250ZW50IjpbIlxyXG5jb25zdCB7Y2NjbGFzcywgcHJvcGVydHksIHJlcXVpcmVDb21wb25lbnR9ID0gY2MuX2RlY29yYXRvcjtcclxuaW1wb3J0IEdhbWVEYXRhIGZyb20gXCIuL0dhbWVEYXRhXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VNZXNzYWdlIH0gZnJvbSBcIi4vU3RvcmFnZVwiO1xyXG5cclxuQGNjY2xhc3NcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV3Q2xhc3MgZXh0ZW5kcyBjYy5Db21wb25lbnQge1xyXG5cclxuICAgIHN0YXJ0ICgpIHtcclxuICAgICAgICB0aGlzLkF1dGhlbnRpY2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy/pibTmnYPvvIzliKTmlq3mnInml6DnvJPlrZh1c2VyaWQs5pyJ55qE6K+d5Yik5pat5piv5ZCm6L+H5pyf77yM5rKh5pyJ55qE6K+d6YeN5paw6I635Y+WdXNlcmlkIOW5tuS4lOe8k+WtmOS4ilxyXG4gICAgcHJpdmF0ZSBBdXRoZW50aWNhdGlvbigpe1xyXG4gICAgICAgIGxldCB1c2VySWQgPSBTdG9yYWdlTWVzc2FnZS5nZXRTdG9yYWdlKFwidXNlclwiKTtcclxuICAgICAgICBpZih1c2VySWQgPT0gXCJ1bmRpZmVuZFwiIHx8IHVzZXJJZD09bnVsbCB8fCB1c2VySWQgPT0gXCJcIil7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VXNlcklkKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGxldCBkYXRhID0gU3RvcmFnZU1lc3NhZ2UuZ2V0U3RvcmFnZShcInVzZXJcIik7XHJcbiAgICAgICAgICAgIGRhdGEgPSB0aGlzLmdldFVzZXJJZChkYXRhKTtcclxuICAgICAgICAgICAgbGV0IHRpbWVzdGFtcCA9IHBhcnNlSW50KG5ldyBEYXRlKCkuZ2V0VGltZSgpLzEwMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgaWYoKHRpbWVzdGFtcCAtIGRhdGFbMl0pID4gODY0MDApe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQoKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPSBwYXJzZUludChkYXRhWzFdKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvL+iuvue9rnVzZXJJZCzpk77mjqXmnInojrflj5bvvIzmsqHmnInot7PovazmjojmnYNcclxuICAgIHByaXZhdGUgc2V0VXNlcklkKCl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gdGhpcy5nZXRVc2VySWQobnVsbCk7XHJcbiAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID09IG51bGwpe1xyXG4gICAgICAgICAgICBsZXQgdXJsID0gXCJodHRwOi8vYXBpLnNwYXJrdXMuY24vYXBpL3VzZXIvYXV0aC9sb2dpbj9kb21haW49aHVpMzI1NzlXZFlQc2dZcSZjYWxsYmFjaz1cIitsb2NhdGlvbi5ocmVmO1xyXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgbGV0IHRpbWVzdGFtcCA9IHBhcnNlSW50KG5ldyBEYXRlKCkuZ2V0VGltZSgpLzEwMDAgKyBcIlwiKTtcclxuICAgICAgICAgICAgbGV0IGlkVGVtcCA9IFwiZ2FtZUlkPVwiICsgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8uZ2FtZUlkICsgXHJcbiAgICAgICAgICAgIFwiP3VzZXJJZD0gXCIgKyBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgKyBcIj90aW1lPVwiICsgdGltZXN0YW1wO1xyXG4gICAgICAgICAgICBTdG9yYWdlTWVzc2FnZS5zZXRTdG9yYWdlKFwidXNlclwiLGlkVGVtcCk7XHJcbiAgICAgICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCA9IHBhcnNlSW50KEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ojrflj5Z1c2VyIGlkIOacieWPguaVsOS4uuiOt+WPlmdhbWVpZCB1c2VyaWQg5pe26Ze05oiz77yMIOaXoOWPguaVsOS4uuWPquiOt+WPlumTvuaOpeWwvue8gOS4iueahHVzZXJJZFxyXG4gICAgcHJpdmF0ZSBnZXRVc2VySWQoc3RyKSB7ICAgIFxyXG4gICAgICAgIGxldCBwYXRoU3RyID0gd2luZG93LmxvY2F0aW9uLnNlYXJjaDtcclxuICAgICAgICBsZXQgYXJyPXBhdGhTdHIuc3BsaXQoXCImXCIpO1xyXG4gICAgICAgIGlmKHN0ciAhPSBudWxsKSBhcnI9cGF0aFN0ci5zcGxpdChcIj9cIik7XHJcbiAgICAgICAgaWYgKHBhdGhTdHIubGVuZ3RoPj0gMCYmYXJyLmxlbmd0aD4wKSB7XHJcbiAgICAgICAgICAgIGxldCBhcnIyPVtdO1xyXG4gICAgICAgICAgICBhcnIubWFwKGl0ZW09PntcclxuICAgICAgICAgICAgICAgIGFycjIucHVzaChpdGVtLnNwbGl0KFwiPVwiKVsxXSlcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgcmV0dXJuIHN0ciA9PSBudWxsID8gYXJyMlswXTphcnIyO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/lvIDlp4vmuLjmiI/vvIzot7Povazoh7PlvJXlr7zpobXpnaJcclxuICAgIHN0YXJ0R2FtZSgpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkd1aWRlU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+Wkh+eUqO+8jOeUqOadpea1i+ivlei3s+i9rCDmjIflrprlhbPljaFcclxuICAgIGNsaWNrQnRuKGV2ZW50LGRhdGEpe1xyXG4gICAgICAgIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmN1c3RvbSA9IHBhcnNlSW50KGRhdGEpO1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkdhbWVTY2VuZVwiKTtcclxuICAgIH0gICBcclxuICAgIC8v5omT5byA5o6S6KGM5qacXHJcbiAgICBvcGVuUmFuaygpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIlJhbmtTY2VuZVwiKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxMb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNNLElBQUEsS0FBd0MsRUFBRSxDQUFDLFVBQVUsRUFBcEQsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFpQixDQUFDO0FBQzVELHVDQUFrQztBQUNsQyxxQ0FBMkM7QUFHM0M7SUFBc0MsNEJBQVk7SUFBbEQ7O0lBMEVBLENBQUM7SUF4RUcsd0JBQUssR0FBTDtRQUNJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0RBQWdEO0lBQ3hDLGlDQUFjLEdBQXRCO1FBQ0ksSUFBSSxJQUFJLEdBQUcsT0FBTyxHQUFHLGtCQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDdkQsSUFBSSxJQUFJLEdBQUcsd0JBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsSUFBRyxJQUFJLElBQUksVUFBVSxJQUFJLElBQUksSUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBQztZQUM5QyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDeEI7YUFDRztZQUNBLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkIsSUFBSSxTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3pELElBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssRUFBQztnQkFDL0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJ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QjtJQUFELGVBQUM7Q0ExRUQsQUEwRUMsQ0ExRXFDLEVBQUUsQ0FBQyxTQUFTLEdBMEVqRDtrQkExRW9CLFFBQVEiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJcclxuY29uc3Qge2NjY2xhc3MsIHByb3BlcnR5LCByZXF1aXJlQ29tcG9uZW50fSA9IGNjLl9kZWNvcmF0b3I7XHJcbmltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgeyBTdG9yYWdlTWVzc2FnZSB9IGZyb20gXCIuL1N0b3JhZ2VcIjtcclxuXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ld0NsYXNzIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuXHJcbiAgICBzdGFydCAoKSB7XHJcbiAgICAgICAgdGhpcy5BdXRoZW50aWNhdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIC8v6Ym05p2D77yM5Yik5pat5pyJ5peg57yT5a2YdXNlcmlkLOacieeahOivneWIpOaWreaYr+WQpui/h+acn++8jOayoeacieeahOivnemHjeaWsOiOt+WPlnVzZXJpZCDlubbkuJTnvJPlrZjkuIpcclxuICAgIHByaXZhdGUgQXV0aGVudGljYXRpb24oKXtcclxuICAgICAgICBsZXQgbmFtZSA9IFwidXNlcl9cIiArIEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLmdhbWVJZDtcclxuICAgICAgICBsZXQgZGF0YSA9IFN0b3JhZ2VNZXNzYWdlLmdldFN0b3JhZ2UobmFtZSk7XHJcbiAgICAgICAgaWYoZGF0YSA9PSBcInVuZGlmZW5kXCIgfHwgZGF0YT09bnVsbCB8fCBkYXRhID09IFwiXCIpe1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIuayoee8k+WtmFwiKTtcclxuICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQobmFtZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJ57yT5a2YXCIpO1xyXG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gcGFyc2VJbnQobmV3IERhdGUoKS5nZXRUaW1lKCkvMTAwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICBpZigodGltZXN0YW1wIC0gZGF0YS50aW1lKSA+IDg2NDAwKXtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi57yT5a2Y6L+H5pyfXCIpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRVc2VySWQobmFtZSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gcGFyc2VJbnQoZGF0YS51c2VySWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6K6+572udXNlcklkLOmTvuaOpeacieiOt+WPlu+8jOayoeaciei3s+i9rOaOiOadg1xyXG4gICAgcHJpdmF0ZSBzZXRVc2VySWQobmFtZSl7XHJcbiAgICAgICAgR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID0gdGhpcy5nZXRVc2VySWQoKTtcclxuICAgICAgICBpZihHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPT0gbnVsbCl7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi6ZO+5o6l5rKhSUTlh4blpIfot7PovaxcIik7XHJcbiAgICAgICAgICAgIGxldCB1cmwgPSBcImh0dHA6Ly9hcGkuc3Bhcmt1cy5jbi9hcGkvdXNlci9hdXRoL2xvZ2luP2RvbWFpbj1odWkzMjU3OVdkWVBzZ1lxJmNhbGxiYWNrPVwiK2xvY2F0aW9uLmhyZWY7XHJcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBsZXQgdGltZXN0YW1wID0gcGFyc2VJbnQobmV3IERhdGUoKS5nZXRUaW1lKCkvMTAwMCArIFwiXCIpO1xyXG4gICAgICAgICAgICBsZXQgaWREYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgdXNlcklkOiBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgKyBcIlwiLFxyXG4gICAgICAgICAgICAgICAgdGltZTogdGltZXN0YW1wXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgU3RvcmFnZU1lc3NhZ2Uuc2V0U3RvcmFnZShuYW1lLGlkRGF0YSk7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5pyJSUTvvJpcIixHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQpO1xyXG4gICAgICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQgPSBwYXJzZUludChHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy51c2VySWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6I635Y+WdXNlciBpZCDmnInlj4LmlbDkuLrojrflj5ZnYW1laWQgdXNlcmlkIOaXtumXtOaIs++8jCDml6Dlj4LmlbDkuLrlj6rojrflj5bpk77mjqXlsL7nvIDkuIrnmoR1c2VySWRcclxuICAgIHByaXZhdGUgZ2V0VXNlcklkKCkgeyAgICBcclxuICAgICAgICBsZXQgcGF0aFN0ciA9IHdpbmRvdy5sb2NhdGlvbi5zZWFyY2g7XHJcbiAgICAgICAgbGV0IGFycj1wYXRoU3RyLnNwbGl0KFwiJlwiKTtcclxuICAgICAgICBpZiAocGF0aFN0ci5sZW5ndGg+PSAwJiZhcnIubGVuZ3RoPjApIHtcclxuICAgICAgICAgICAgbGV0IGFycjI9W107XHJcbiAgICAgICAgICAgIGFyci5tYXAoaXRlbT0+e1xyXG4gICAgICAgICAgICAgICAgYXJyMi5wdXNoKGl0ZW0uc3BsaXQoXCI9XCIpWzFdKVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICByZXR1cm4gYXJyMlswXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v5byA5aeL5ri45oiP77yM6Lez6L2s6Iez5byV5a+86aG16Z2iXHJcbiAgICBzdGFydEdhbWUoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHdWlkZVNjZW5lXCIpO1xyXG4gICAgfVxyXG4gICAgLy/lpIfnlKjvvIznlKjmnaXmtYvor5Xot7Povawg5oyH5a6a5YWz5Y2hXHJcbiAgICBjbGlja0J0bihldmVudCxkYXRhKXtcclxuICAgICAgICBHYW1lRGF0YS5faW5zdGFuY2UuR01fSU5GTy5jdXN0b20gPSBwYXJzZUludChkYXRhKTtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJHYW1lU2NlbmVcIik7XHJcbiAgICB9ICAgXHJcbiAgICAvL+aJk+W8gOaOkuihjOamnFxyXG4gICAgb3BlblJhbmsoKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJSYW5rU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByb3RlY3RlZCB1cGRhdGUoZHQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgfVxyXG59XHJcbiJdfQ== \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/RankManager.js b/temp/quick-scripts/dst/assets/Script/RankManager.js index dd7090d..25d453e 100644 --- a/temp/quick-scripts/dst/assets/Script/RankManager.js +++ b/temp/quick-scripts/dst/assets/Script/RankManager.js @@ -177,7 +177,7 @@ var RankManager = /** @class */ (function (_super) { console.error('Error fetching X-Info:', error); }); var self = this; - cc.assetManager.loadRemote(pic, { ext: '.jpg' }, function (err, texture) { + cc.assetManager.loadRemote(pic, { ext: '.png' }, function (err, texture) { self.Player.opacity = 255; if (texture) { self.phone.node.active = true; @@ -225,4 +225,4 @@ cc._RF.pop(); }); } })(); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBa0M7QUFDbEMsd0NBQW1DO0FBQ25DLGdEQUEwQztBQUNwQyxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUM1QyxLQUFLO0FBRUw7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFvS0M7UUFsS0csWUFBTSxHQUFZLElBQUksQ0FBQztRQUV2QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFdBQUssR0FBYyxJQUFJLENBQUM7O0lBOEo1QixDQUFDO0lBdEpHLDRCQUFNLEdBQU47UUFDSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU87SUFDUCwwQkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxP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LENBQUMsQ0FBVSxRQUFROytDQUNiO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBVSxXQUFXO2lEQUNkO0lBRXpCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBUSxRQUFROzhDQUNaO0lBTlAsV0FBVztRQUQvQixPQUFPO09BQ2EsV0FBVyxDQW9LL0I7SUFBRCxrQkFBQztDQXBLRCxBQW9LQyxDQXBLd0MsRUFBRSxDQUFDLFNBQVMsR0FvS3BEO2tCQXBLb0IsV0FBVyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInBhZ2VcIjoxLFxyXG4gICAgICAgICAgICBcInBhZ2VTaXplXCI6MTAwXHJcbiAgICAgICAgfTsgXHJcbiAgICAgICAgLy/lm57osIPov5tnZXRSYW5rRGF0YVxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuICAgICAgICBpZihkYXRhKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdERhdGEgPSBkYXRhLmRhdGEubGlzdDtcclxuICAgICAgICAgICAgdGhpcy5zZWxmRGF0YSA9IGRhdGEuZGF0YS5pbmZvO1xyXG4gICAgICAgICAgICBsZXQgcmFua0RhdGEgPSBbXTtcclxuICAgICAgICAgICAgbGV0IHNlbGYgPSBmYWxzZTtcclxuICAgICAgICAgICAgZm9yKGxldCBpPTA7aTw9dGhpcy5saXN0RGF0YS5sZW5ndGgtMTtpKyspe1xyXG4gICAgICAgICAgICAgICAgcmFua0RhdGEucHVzaCh7cmFuazooaSsxKSwgbmFtZTp0aGlzLmxpc3REYXRhW2ldLm5pY2tOYW1lLCB0b3RhbDp0aGlzLmxpc3REYXRhW2ldLnRvdGFsU3VuQ291bnQsIHBpYzp0aGlzLmxpc3REYXRhW2ldLnBpY30pO1xyXG4gICAgICAgICAgICAgICAgaWYoR2FtZURhdGEuX2luc3RhbmNlLkdNX0lORk8udXNlcklkID09IHRoaXMubGlzdERhdGFbaV0udXNlcklkKXtcclxuICAgICAgICAgICAgICAgICAgICBzZWxmID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJhbmtOdW1iZXIgPSBpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0oaSsxKSArIFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYoaSA9PSAodGhpcy5saXN0RGF0YS5sZW5ndGgtMSkgJiYgc2VsZiA9PSBmYWxzZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IFwiOTkrXCI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucmFua0xpc3Quc2V0RGF0YShyYW5rRGF0YSk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZkRhdGEubmlja05hbWUubGVuZ3RoID4gNil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZEYXRhLm5pY2tOYW1lPSB0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLnN1YnN0cmluZygwLDYpICsgXCIuLi5cIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJuYW1lTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZTtcclxuICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInRvdGFsTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gdGhpcy5zZWxmRGF0YS50b3RhbFN1bkNvdW50O1xyXG4gICAgICAgICAgICB0aGlzLnNldFBpYyh0aGlzLnNlbGZEYXRhLnBpYyk7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID09IFwiMVwiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwib25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBpZih0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9PSBcIjJcIil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcInR3b1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPT0gXCIzXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0aHJlZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwiZm91clwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgaWYodGhpcy5zZWxmRGF0YS50b3RhbFN1bkNvdW50ID09IDApIHRoaXMuc2VsZk5vZGUub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy/ov5Tlm57mjInpkq5cclxuICAgIGJhY2tDbGljaygpe1xyXG4gICAgICAgIGNjLmRpcmVjdG9yLmxvYWRTY2VuZShcIkxvYWRTY2VuZVwiKTtcclxuICAgIH1cclxuICAgIC8v5pyA5LiK5pa555So5oi35Yqo55S7XHJcbiAgICBwbGF5ZXJBY3Rpb24oKXtcclxuICAgICAgICAvLy0yNTQgMzc3ICAyMTAgNDUzXHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIGxldCB0aW1lID0gMTtcclxuICAgICAgICB0aGlzLnR3ZWVuID0gY2MudHdlZW4odGhpcy5QbGF5ZXIpXHJcbiAgICAgICAgLnRvKDIse3Bvc2l0aW9uOmNjLnYzKDIxMCw0NTMsMCl9KVxyXG4gICAgICAgIC5jYWxsKCgpID0+e1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwibnVtYmVyXCIpXHJcbiAgICAgICAgICAgIC5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9ICBwYXJzZUludCh0aW1lKjEwMCArIFwiXCIpICsgXCIlXCI7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuc3RhcnQoKTtcclxuICAgICAgICB0aW1lID0gKHRoaXMubGlzdERhdGEubGVuZ3RoIC0gdGhpcy5yYW5rTnVtYmVyKS90aGlzLmxpc3REYXRhLmxlbmd0aDtcclxuICAgICAgICBpZih0aGlzLmxpc3REYXRhLmxlbmd0aCA+PSA5OSl7XHJcbiAgICAgICAgICAgIGlmKHRoaXMucmFua051bWJlciA+PSA5OSl7XHJcbiAgICAgICAgICAgICAgICB0aW1lID0gKE1hdGgucmFuZG9tKCkqNDkrMSkvMTAwXHJcbiAgICAgICAgICAgICAgICB2YXIgbWF0Y2hJZCA9IGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIm1hdGNoTnVtYmVyXCIpO1xyXG4gICAgICAgICAgICAgICAgaWYobWF0Y2hJZCA9PSBudWxsIHx8IG1hdGNoSWQgPT0gdW5kZWZpbmVkKXtcclxuICAgICAgICAgICAgICAgICAgICB0aW1lID0gMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgaWYodGhpcy50d2Vlbil0aGlzLnR3ZWVuLnN0b3AoKTtcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKVxyXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSAgcGFyc2VJbnQodGltZSoxMDAgKyBcIlwiKSArIFwiJVwiO1xyXG4gICAgICAgIH0sIHRpbWUqMjAwMCk7XHJcblxyXG4gICAgfVxyXG4gICAgLy/orr7nva7lpLTlg49cclxuICAgIHB1YmxpYyBzZXRQaWMocGljKXtcclxuICAgICAgICB0aGlzLnBob25lLm5vZGUucGFyZW50LmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnBob25lLm5vZGUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLlBsYXllci5vcGFjaXR5ID0gMDtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIGZldGNoKHBpYylcclxuICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1MZW5ndGgnKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC50aGVuKGVyck5vID0+IHtcclxuICAgICAgICAgICAgaWYoZXJyTm8gPT0gXCI1MDkzXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgWC1JbmZvOicsIGVycm9yKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB2YXIgc2VsZiA9IHRoaXM7XHJcbiAgICAgICAgY2MuYXNzZXRNYW5hZ2VyLmxvYWRSZW1vdGUocGljLCB7ZXh0OicuanBnJ30sKGVyciwgdGV4dHVyZTpjYy5UZXh0dXJlMkQpID0+IHtcclxuICAgICAgICAgICAgc2VsZi5QbGF5ZXIub3BhY2l0eSA9IDI1NTtcclxuICAgICAgICAgICAgaWYodGV4dHVyZSl7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLm5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNlbGYucGhvbmUuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwicGhvbmVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmdldENvbXBvbmVudChjYy5TcHJpdGUpXHJcbiAgICAgICAgICAgICAgICAuc3ByaXRlRnJhbWUgPSBuZXcgY2MuU3ByaXRlRnJhbWUodGV4dHVyZSk7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBzZWxmLnBsYXllckFjdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFxSYW5rTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBa0M7QUFDbEMsd0NBQW1DO0FBQ25DLGdEQUEwQztBQUNwQyxJQUFBLEtBQXdCLEVBQUUsQ0FBQyxVQUFVLEVBQW5DLE9BQU8sYUFBQSxFQUFFLFFBQVEsY0FBa0IsQ0FBQztBQUM1QyxLQUFLO0FBRUw7SUFBeUMsK0JBQVk7SUFBckQ7UUFBQSxxRUFxS0M7UUFuS0csWUFBTSxHQUFZLElBQUksQ0FBQztRQUV2QixjQUFRLEdBQVksSUFBSSxDQUFDO1FBRXpCLFdBQUssR0FBYyxJQUFJLENBQUM7O0lBK0o1QixDQUFDO0lBdkpHLDRCQUFNLEdBQU47UUFDSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU87SUFDUCwwQkFBSSxHQUFKO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwyQkFBSyxHQUFMO1FBQ0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxP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LENBQUMsQ0FBVSxRQUFROytDQUNiO0lBRXZCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBVSxXQUFXO2lEQUNkO0lBRXpCO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBUSxRQUFROzhDQUNaO0lBTlAsV0FBVztRQUQvQixPQUFPO09BQ2EsV0FBVyxDQXFLL0I7SUFBRCxrQkFBQztDQXJLRCxBQXFLQyxDQXJLd0MsRUFBRSxDQUFDLFNBQVMsR0FxS3BEO2tCQXJLb0IsV0FBVyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHYW1lRGF0YSBmcm9tIFwiLi9HYW1lRGF0YVwiO1xyXG5pbXBvcnQgTGlzdCBmcm9tIFwiLi9MaXN0Vmlldy9MaXN0XCI7XHJcbmltcG9ydCBIdHRwVXRpbCBmcm9tIFwiLi9jcnlwdG8vc2VydmVyQVBJXCI7XHJcbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XHJcbi8v5o6S6KGM5qacXHJcbkBjY2NsYXNzXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJhbmtNYW5hZ2VyIGV4dGVuZHMgY2MuQ29tcG9uZW50IHtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+S4iuaWueWktOWDj1xyXG4gICAgUGxheWVyOiBjYy5Ob2RlID0gbnVsbDtcclxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKSAgICAgICAgICAvL+eUqOaIt+acgOS4i+aWueS4quS6uuS/oeaBr1xyXG4gICAgc2VsZk5vZGU6IGNjLk5vZGUgPSBudWxsO1xyXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSkgICAgICAgIC8v55So5oi35aS05YOP5o2i5Zu+XHJcbiAgICBwaG9uZTogY2MuU3ByaXRlID0gbnVsbDtcclxuICAgIHByaXZhdGUgcmFua0xpc3Q6IExpc3Q7ICAgICAvL+aOkuihjOamnFxyXG4gICAgdHdlZW46IGNjLlR3ZWVuPGNjLk5vZGU+OyAgIC8v5pyA5LiK5pa555So5oi35aS05YOP5Yqo55S7XHJcbiAgICBsaXN0RGF0YTogYW55OyAgICAgICAgICAgICAgLy/mgLvliJfooajkv6Hmga9cclxuICAgIHNlbGZEYXRhOiBhbnk7ICAgICAgICAgICAgICAvL+iHquW3seS/oeaBr1xyXG4gICAgcmFua051bWJlcjogbnVtYmVyOyAgICAgICAgIC8v55So5oi36Ieq5bex5o6S5ZCNIOacieWPr+iDveS4jeWcqOaOkuihjOamnOWGhTk5K1xyXG4gICAgcmFua1RvdGFsOiBudW1iZXI7ICAgICAgICAgIC8v6I635Y+W5o6S6KGM5qac55So5oi35pWw6YePIOeOsOWcqOS4ujEwMFxyXG5cclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgIH1cclxuICAgIC8v5Yid5aeL5YyW5pWw5o2uXHJcbiAgICBpbml0KCl7XHJcbiAgICAgICAgdGhpcy5yYW5rTGlzdCA9IGNjLmZpbmQoXCJTY3JvbGxWaWV3XCIsIHRoaXMubm9kZSkuZ2V0Q29tcG9uZW50KExpc3QpO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmxpc3REYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxmRGF0YSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gMTAwO1xyXG4gICAgICAgIHRoaXMucmFua1RvdGFsPSAxMDA7XHJcbiAgICAgICAgdGhpcy5zZWxmTm9kZS5vcGFjaXR5ID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBzdGFydCgpIHtcclxuICAgICAgICB0aGlzLlBsYXllci5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldFJhbmsoKTtcclxuICAgIH1cclxuICAgIC8v6LCD55So6I635Y+W5o6S6KGM5qac5o6l5Y+jXHJcbiAgICBnZXRSYW5rKCl7XHJcbiAgICAgICAgbGV0IHBvc3REYXRhID0ge1xyXG4gICAgICAgICAgICBcInBhZ2VcIjoxLFxyXG4gICAgICAgICAgICBcInBhZ2VTaXplXCI6MTAwXHJcbiAgICAgICAgfTsgXHJcbiAgICAgICAgLy/lm57osIPov5tnZXRSYW5rRGF0YVxyXG4gICAgICAgIEh0dHBVdGlsLnJhbmtEYXRhKDIsdGhpcy5nZXRSYW5rRGF0YS5iaW5kKHRoaXMpLHBvc3REYXRhKTtcclxuICAgIH1cclxuICAgIC8v5a6e6ZmF6K6+572u5o6S6KGM5pWw5o2uXHJcbiAgICBnZXRSYW5rRGF0YShkYXRhKXtcclxuXHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGEpO1xyXG4gICAgICAgICAgICB0aGlzLmxpc3REYXRhID0gZGF0YS5kYXRhLmxpc3Q7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZkRhdGEgPSBkYXRhLmRhdGEuaW5mbztcclxuICAgICAgICAgICAgbGV0IHJhbmtEYXRhID0gW107XHJcbiAgICAgICAgICAgIGxldCBzZWxmID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGZvcihsZXQgaT0wO2k8PXRoaXMubGlzdERhdGEubGVuZ3RoLTE7aSsrKXtcclxuICAgICAgICAgICAgICAgIHJhbmtEYXRhLnB1c2goe3Jhbms6KGkrMSksIG5hbWU6dGhpcy5saXN0RGF0YVtpXS5uaWNrTmFtZSwgdG90YWw6dGhpcy5saXN0RGF0YVtpXS50b3RhbFN1bkNvdW50LCBwaWM6dGhpcy5saXN0RGF0YVtpXS5waWN9KTtcclxuICAgICAgICAgICAgICAgIGlmKEdhbWVEYXRhLl9pbnN0YW5jZS5HTV9JTkZPLnVzZXJJZCA9PSB0aGlzLmxpc3REYXRhW2ldLnVzZXJJZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yYW5rTnVtYmVyID0gaTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9KGkrMSkgKyBcIlwiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmKGkgPT0gKHRoaXMubGlzdERhdGEubGVuZ3RoLTEpICYmIHNlbGYgPT0gZmFsc2Upe1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmFua051bWJlciA9IGk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSBcIjk5K1wiOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnJhbmtMaXN0LnNldERhdGEocmFua0RhdGEpO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZEYXRhLm5pY2tOYW1lLmxlbmd0aCA+IDYpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmRGF0YS5uaWNrTmFtZT0gdGhpcy5zZWxmRGF0YS5uaWNrTmFtZS5zdWJzdHJpbmcoMCw2KSArIFwiLi4uXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwibmFtZUxhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEubmlja05hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJ0b3RhbExhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudDtcclxuICAgICAgICAgICAgdGhpcy5zZXRQaWModGhpcy5zZWxmRGF0YS5waWMpO1xyXG4gICAgICAgICAgICBpZih0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua0xhYlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9PSBcIjFcIil7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZOb2RlLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm9uZVwiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYodGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtMYWJcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPT0gXCIyXCIpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJ0d29cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmKHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rTGFiXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID09IFwiM1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZk5vZGUuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmdldENoaWxkQnlOYW1lKFwidGhyZWVcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZWxmTm9kZS5nZXRDaGlsZEJ5TmFtZShcImZvdXJcIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGZOb2RlLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRoaXMuc2VsZkRhdGEudG90YWxTdW5Db3VudCA9PSAwKSB0aGlzLnNlbGZOb2RlLm9wYWNpdHkgPSAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8v6L+U5Zue5oyJ6ZKuXHJcbiAgICBiYWNrQ2xpY2soKXtcclxuICAgICAgICBjYy5kaXJlY3Rvci5sb2FkU2NlbmUoXCJMb2FkU2NlbmVcIik7XHJcbiAgICB9XHJcbiAgICAvL+acgOS4iuaWueeUqOaIt+WKqOeUu1xyXG4gICAgcGxheWVyQWN0aW9uKCl7XHJcbiAgICAgICAgLy8tMjU0IDM3NyAgMjEwIDQ1M1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBsZXQgdGltZSA9IDE7XHJcbiAgICAgICAgdGhpcy50d2VlbiA9IGNjLnR3ZWVuKHRoaXMuUGxheWVyKVxyXG4gICAgICAgIC50bygyLHtwb3NpdGlvbjpjYy52MygyMTAsNDUzLDApfSlcclxuICAgICAgICAuY2FsbCgoKSA9PntcclxuICAgICAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJyYW5rXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5nZXRDaGlsZEJ5TmFtZShcIm51bWJlclwiKVxyXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKS5zdHJpbmcgPSAgcGFyc2VJbnQodGltZSoxMDAgKyBcIlwiKSArIFwiJVwiO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnN0YXJ0KCk7XHJcbiAgICAgICAgdGltZSA9ICh0aGlzLmxpc3REYXRhLmxlbmd0aCAtIHRoaXMucmFua051bWJlcikvdGhpcy5saXN0RGF0YS5sZW5ndGg7XHJcbiAgICAgICAgaWYodGhpcy5saXN0RGF0YS5sZW5ndGggPj0gOTkpe1xyXG4gICAgICAgICAgICBpZih0aGlzLnJhbmtOdW1iZXIgPj0gOTkpe1xyXG4gICAgICAgICAgICAgICAgdGltZSA9IChNYXRoLnJhbmRvbSgpKjQ5KzEpLzEwMFxyXG4gICAgICAgICAgICAgICAgdmFyIG1hdGNoSWQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJtYXRjaE51bWJlclwiKTtcclxuICAgICAgICAgICAgICAgIGlmKG1hdGNoSWQgPT0gbnVsbCB8fCBtYXRjaElkID09IHVuZGVmaW5lZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGltZSA9IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKHRoaXMudHdlZW4pdGhpcy50d2Vlbi5zdG9wKCk7XHJcbiAgICAgICAgICAgIHRoaXMuUGxheWVyLmdldENoaWxkQnlOYW1lKFwicmFua1wiKS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcInJhbmtcIikuZ2V0Q2hpbGRCeU5hbWUoXCJudW1iZXJcIilcclxuICAgICAgICAgICAgLmdldENvbXBvbmVudChjYy5MYWJlbCkuc3RyaW5nID0gIHBhcnNlSW50KHRpbWUqMTAwICsgXCJcIikgKyBcIiVcIjtcclxuICAgICAgICB9LCB0aW1lKjIwMDApO1xyXG5cclxuICAgIH1cclxuICAgIC8v6K6+572u5aS05YOPXHJcbiAgICBwdWJsaWMgc2V0UGljKHBpYyl7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLnBhcmVudC5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5waG9uZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuUGxheWVyLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIub3BhY2l0eSA9IDA7XHJcbiAgICAgICAgdGhpcy5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICBmZXRjaChwaWMpXHJcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtTGVuZ3RoJyk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAudGhlbihlcnJObyA9PiB7XHJcbiAgICAgICAgICAgIGlmKGVyck5vID09IFwiNTA5M1wiKXtcclxuICAgICAgICAgICAgICAgIHRoaXMucGhvbmUubm9kZS5wYXJlbnQuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIFgtSW5mbzonLCBlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdmFyIHNlbGYgPSB0aGlzO1xyXG4gICAgICAgIGNjLmFzc2V0TWFuYWdlci5sb2FkUmVtb3RlKHBpYywge2V4dDonLnBuZyd9LChlcnIsIHRleHR1cmU6Y2MuVGV4dHVyZTJEKSA9PiB7XHJcbiAgICAgICAgICAgIHNlbGYuUGxheWVyLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIGlmKHRleHR1cmUpe1xyXG4gICAgICAgICAgICAgICAgc2VsZi5waG9uZS5ub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLnBob25lLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2VsZi5QbGF5ZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYXNrXCIpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcInBob25lXCIpLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWxmLlBsYXllci5nZXRDaGlsZEJ5TmFtZShcIm1hc2tcIikuZ2V0Q2hpbGRCeU5hbWUoXCJwaG9uZVwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKVxyXG4gICAgICAgICAgICAgICAgLnNwcml0ZUZyYW1lID0gbmV3IGNjLlNwcml0ZUZyYW1lKHRleHR1cmUpO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5wbGF5ZXJBY3Rpb24oKTtcclxuICAgICAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIHNlbGYuUGxheWVyLmdldENoaWxkQnlOYW1lKFwibWFza1wiKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlbGYucGxheWVyQWN0aW9uKCk7XHJcbiAgICAgICAgICAgICAgICB9LCA1MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ== \ No newline at end of file diff --git a/temp/quick-scripts/dst/assets/Script/tool/Storage.js b/temp/quick-scripts/dst/assets/Script/tool/Storage.js deleted file mode 100644 index b19a416..0000000 --- a/temp/quick-scripts/dst/assets/Script/tool/Storage.js +++ /dev/null @@ -1,56 +0,0 @@ - - (function() { - var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; - var __module = nodeEnv ? module : {exports:{}}; - var __filename = 'preview-scripts/assets/Script/tool/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, 'f124cZyKJVPPobsFKRo+Uam', 'Storage'); -// Script/tool/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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0XFx0b29sXFxTdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVM7QUFDVCxJQUFJLGNBQWMsR0FBRztJQUNqQixVQUFVLEVBQUcsVUFBUyxHQUFHO1FBQ3JCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBQztZQUNsQyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDL0M7UUFFRCxJQUFHLE1BQU0sRUFBQztZQUNSLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUNELFVBQVUsRUFBRyxVQUFTLEdBQUcsRUFBQyxLQUFLO1FBQzNCLFVBQVU7UUFDVixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDMUMsQ0FBQztJQUNELGFBQWEsRUFBRyxVQUFTLEdBQUc7UUFDMUIsVUFBVTtRQUNWLElBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFDO1lBQ2xDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNwQztJQUNILENBQUM7Q0FDSixDQUFDO0FBRU8sd0NBQWMiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvL+e8k+WtmOa1j+iniOWZqOaVsOaNrlxudmFyIFN0b3JhZ2VNZXNzYWdlID0ge1xuICAgIGdldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgICB2YXIgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgaWYoY2Muc3lzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkpe1xuICAgICAgICAgIHZhciByZXN1bHQgPSBjYy5zeXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYocmVzdWx0KXtcbiAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LFxuICAgIHNldFN0b3JhZ2UgOiBmdW5jdGlvbihrZXksdmFsdWUpe1xuICAgICAgICAvL+S4u+WKqOaLiei1t+WIhuS6q+aOpeWPo1xuICAgICAgICB2YXIgdGVtcCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGVtcClcbiAgICB9LFxuICAgIHJlbW92ZVN0b3JhZ2UgOiBmdW5jdGlvbihrZXkpe1xuICAgICAgLy/kuLvliqjliKDpmaTmtojmga/mjqXlj6NcbiAgICAgIGlmKGNjLnN5cy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpKXtcbiAgICAgICAgY2Muc3lzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgICAgIH1cbiAgICB9LFxufTtcblxuZXhwb3J0IHsgU3RvcmFnZU1lc3NhZ2UgfTsiXX0= \ No newline at end of file diff --git a/temp/quick-scripts/src/__qc_index__.js b/temp/quick-scripts/src/__qc_index__.js index 1d2f8cd..ec53bf9 100644 --- a/temp/quick-scripts/src/__qc_index__.js +++ b/temp/quick-scripts/src/__qc_index__.js @@ -16,5 +16,4 @@ require('./assets/Script/tool/AudioManager'); require('./assets/Script/tool/DynamicAtlasManager'); require('./assets/Script/tool/GameTool'); require('./assets/Script/tool/Shake'); -require('./assets/Script/tool/Storage'); require('./assets/migration/use_v2.1-2.2.1_cc.Toggle_event'); diff --git a/temp/quick-scripts/src/assets/Script/GameManager.js.map b/temp/quick-scripts/src/assets/Script/GameManager.js.map index 69c3fdc..61e2a03 100644 --- a/temp/quick-scripts/src/assets/Script/GameManager.js.map +++ b/temp/quick-scripts/src/assets/Script/GameManager.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\nimport GameData from './GameData';\r\nimport { Notification } from './Notification';\r\nimport HttpUtil from './crypto/serverAPI';\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(GameData._instance.GM_INFO.custom != 0){\r\n this.level = GameData._instance.GM_INFO.custom;\r\n // this.levelLabel.string = this.level + \"\";\r\n GameData._instance.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 GameData._instance.GAME_DATA = [];\r\n GameData._instance.GM_INFO.success = false;\r\n this.startTime = 0;\r\n this.overTime = 0;\r\n this.winTime = 0;\r\n GameData._instance.GM_INFO.total = 0;\r\n GameData._instance.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(GameData._instance.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 = this.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = this.getTime();\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += this.clickNow;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 GameData._instance.AudioManager.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m{\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 GameData._instance.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 GameData._instance.AudioManager.playWarning();\r\n this.begin = false;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 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(GameData._instance.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 = GameData._instance.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 = this.getTime();\r\n this.timeStart = this.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n //暂时作废\r\n // getRandomArray(lastNumber){\r\n // let num = parseInt(Math.random()*8 - 4 + \"\");\r\n // let jg = num + lastNumber;\r\n // if(num > 1 || num <-1){\r\n // if( num == 0 || ( jg<0 || jg >= this.Pos_Array.length)){\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // }\r\n // else{\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // return jg;\r\n // }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = GameData._instance.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 = GameData._instance.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 if(distance < GameData._instance.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 < GameData._instance.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 < GameData._instance.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 getTimeMargin(second:number) {\r\n let total = 0;\r\n total = second;\r\n let hour = 0;\r\n hour = parseInt((total / 3600) + \"\");//计算整数小时数\r\n let afterHour = total - hour * 60 * 60;//取得算出小时数后剩余的秒数\r\n let min = parseInt((afterHour / 60)+\"\");//计算整数分\r\n let m = \"\" + min; \r\n if(min < 10) m = \"0\"+min;\r\n let afterMin = total - hour * 60 * 60 - min * 60;//取得算出分后剩余的秒数\r\n let miao = afterMin + \"\";\r\n if(afterMin < 10) miao = \"0\" + afterMin;\r\n return m + ':' + miao\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 = this.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(GameData._instance.GM_INFO.mean_Time/this.clickCount + \"\");\r\n GameData._instance.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n GameData._instance.GM_INFO.mean_Time = GameData._instance.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.setRank(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n GameData._instance.GAME_DATA = [];\r\n GameData._instance.GAME_DATA.push(GameData._instance.CLICK_DATA);\r\n GameData._instance.CLICK_init();\r\n let data = GameData._instance.GAME_DATA;\r\n let matchId = this.getMatchId();\r\n console.log(matchId);\r\n let postData = {\r\n \"matchId\":matchId,\r\n \"data\": data\r\n };\r\n console.log(\"上传数据:\")\r\n HttpUtil.uploadUserLogData(postData,function(){})\r\n }\r\n //获取matchId 用于上传每次点击数据里面记录id方便查询\r\n getMatchId (){\r\n let matchId = cc.sys.localStorage.getItem(\"matchId\");\r\n if(matchId == \"undifend\" || matchId==null){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n if(this.containsNanana(matchId) == true){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n let char = parseInt(matchId[10]);\r\n if(this.round == 1){\r\n char += 1;\r\n }\r\n matchId = matchId.slice(0, 10) + char + \"\";\r\n GameData._instance.GM_INFO.matchId = matchId;\r\n cc.sys.localStorage.setItem(\"matchId\",matchId);\r\n }\r\n }\r\n return matchId;\r\n }\r\n //检测matchId 如果有缓存以前的nanana数据清除\r\n containsNanana(str) {\r\n return /na/i.test(str);\r\n }\r\n //重新设置MatchId\r\n setMatchId (){\r\n // 定义包含可用字符的字符集\r\n const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';\r\n // 创建一个数组以保存随机字符\r\n const uuidArray = [];\r\n // 循环10次 生成10位的UUID\r\n for (let i = 0; i < 10; i++) {\r\n // 生成随机索引,范围是字符集的长度\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n // 从字符集中获取随机字符\r\n const randomChar = characters.charAt(randomIndex);\r\n // 将字符添加到数组中\r\n uuidArray.push(randomChar);\r\n }\r\n let data = uuidArray.join('') + 1 + \"\";\r\n cc.sys.localStorage.setItem(\"matchNumber\",1);\r\n cc.sys.localStorage.setItem(\"matchId\",data);\r\n GameData._instance.GM_INFO.matchId = data;\r\n return data;\r\n }\r\n //上传排行榜数据\r\n setRank(time){\r\n let postData = {\r\n \"type\":1,\r\n \"reactionTime\": time,\r\n \"totalSunCount\": GameData._instance.GM_INFO.total,\r\n \"success\": GameData._instance.GM_INFO.success\r\n \r\n };\r\n HttpUtil.rankData(1,function(){},postData);\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(GameData._instance.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 = this.getTime();\r\n this.time_Array.push((clickTime - this.timeStart))\r\n this.timeStart = this.getTime();\r\n if(data == this.clickNow){\r\n GameData._instance.AudioManager.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 GameData._instance.GM_INFO.total += this.clickNow;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 GameData._instance.AudioManager.playWin();\r\n this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m{\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 GameData._instance.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 GameData._instance.AudioManager.playWarning();\r\n this.begin = false;\r\n this.overTime = this.getTime();\r\n if(this.startTime > 0 && this.overTime > 0){\r\n GameData._instance.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 this.round += 1;\r\n let sunArray = [];\r\n if(this.moveArray.length > 0){\r\n for(let m=0 ; m 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(GameData._instance.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 = GameData._instance.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 = this.getTime();\r\n this.timeStart = this.getTime();\r\n this.pause = false;\r\n // this.node.getChildByName(\"showBtn\").active = true;\r\n }\r\n //暂时作废\r\n // getRandomArray(lastNumber){\r\n // let num = parseInt(Math.random()*8 - 4 + \"\");\r\n // let jg = num + lastNumber;\r\n // if(num > 1 || num <-1){\r\n // if( num == 0 || ( jg<0 || jg >= this.Pos_Array.length)){\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // }\r\n // else{\r\n // jg = this.getRandomArray(lastNumber);\r\n // }\r\n // return jg;\r\n // }\r\n\r\n //创建太阳所需数据\r\n createSun(){\r\n let levelData = GameData._instance.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 = GameData._instance.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 if(distance < GameData._instance.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 < GameData._instance.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 < GameData._instance.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 getTimeMargin(second:number) {\r\n let total = 0;\r\n total = second;\r\n let hour = 0;\r\n hour = parseInt((total / 3600) + \"\");//计算整数小时数\r\n let afterHour = total - hour * 60 * 60;//取得算出小时数后剩余的秒数\r\n let min = parseInt((afterHour / 60)+\"\");//计算整数分\r\n let m = \"\" + min; \r\n if(min < 10) m = \"0\"+min;\r\n let afterMin = total - hour * 60 * 60 - min * 60;//取得算出分后剩余的秒数\r\n let miao = afterMin + \"\";\r\n if(afterMin < 10) miao = \"0\" + afterMin;\r\n return m + ':' + miao\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 = this.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(GameData._instance.GM_INFO.mean_Time/this.clickCount + \"\");\r\n GameData._instance.GM_INFO.mean_Time = parseInt(time/100 + \"\");\r\n GameData._instance.GM_INFO.mean_Time = GameData._instance.GM_INFO.mean_Time /10;\r\n if(time > 10000) time = (Math.random()*10+5)*100;\r\n this.setRank(time);\r\n }\r\n }\r\n }\r\n //上传每次操作数据\r\n setData(){\r\n GameData._instance.GAME_DATA = [];\r\n GameData._instance.GAME_DATA.push(GameData._instance.CLICK_DATA);\r\n GameData._instance.CLICK_init();\r\n let data = GameData._instance.GAME_DATA;\r\n let matchId = this.getMatchId();\r\n console.log(matchId);\r\n let postData = {\r\n \"matchId\":matchId,\r\n \"data\": data\r\n };\r\n console.log(\"上传数据:\")\r\n HttpUtil.uploadUserLogData(postData,function(){})\r\n }\r\n //获取matchId 用于上传每次点击数据里面记录id方便查询\r\n getMatchId (){\r\n let matchId = cc.sys.localStorage.getItem(\"matchId\");\r\n if(matchId == \"undifend\" || matchId==null){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n if(this.containsNanana(matchId) == true){\r\n matchId = this.setMatchId();\r\n }\r\n else{\r\n let char = parseInt(matchId[10]);\r\n if(this.round == 1){\r\n char += 1;\r\n }\r\n matchId = matchId.slice(0, 10) + char + \"\";\r\n GameData._instance.GM_INFO.matchId = matchId;\r\n cc.sys.localStorage.setItem(\"matchId\",matchId);\r\n }\r\n }\r\n return matchId;\r\n }\r\n //检测matchId 如果有缓存以前的nanana数据清除\r\n containsNanana(str) {\r\n return /na/i.test(str);\r\n }\r\n //重新设置MatchId\r\n setMatchId (){\r\n // 定义包含可用字符的字符集\r\n const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';\r\n // 创建一个数组以保存随机字符\r\n const uuidArray = [];\r\n // 循环10次 生成10位的UUID\r\n for (let i = 0; i < 10; i++) {\r\n // 生成随机索引,范围是字符集的长度\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n // 从字符集中获取随机字符\r\n const randomChar = characters.charAt(randomIndex);\r\n // 将字符添加到数组中\r\n uuidArray.push(randomChar);\r\n }\r\n let data = uuidArray.join('') + 1 + \"\";\r\n cc.sys.localStorage.setItem(\"matchNumber\",1);\r\n cc.sys.localStorage.setItem(\"matchId\",data);\r\n GameData._instance.GM_INFO.matchId = data;\r\n return data;\r\n }\r\n //上传排行榜数据\r\n setRank(time){\r\n let postData = {\r\n \"type\":1,\r\n \"reactionTime\": time,\r\n \"totalSunCount\": GameData._instance.GM_INFO.total,\r\n \"success\": GameData._instance.GM_INFO.success\r\n };\r\n HttpUtil.rankData(1,function(){},postData);\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 6){\r\n this.data.name = this.data.name.substring(0,6) + \"...\"\r\n }\r\n this.node.getChildByName(\"rankLab\").getComponent(cc.Label).string = this.data.rank + \"\";\r\n this.node.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.data.name + \"\";\r\n this.node.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.data.total + \"\";\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = false;\r\n if(this.data.rank == 1){\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 2){\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 3){\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }else{\r\n this.node.getChildByName(\"rankLab\").active = true;\r\n }\r\n this.setPic();\r\n } \r\n \r\n public setPic(){\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = false;\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= false;\r\n var self = this;\r\n let url = this.data.pic;\r\n fetch(url)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n\r\n .then(errNo => {\r\n // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值\r\n if(errNo == \"5093\"){\r\n // console.log(this.data.rank,\"没头像\");\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n cc.assetManager.loadRemote(url, {ext:'.jpg'},(err, texture:cc.Texture2D) => {\r\n if(texture){\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= true;\r\n var sprite = this.node.getChildByName(\"pic\").getChildByName(\"pic\").getComponent(cc.Sprite);\r\n sprite.spriteFrame = new cc.SpriteFrame(texture);\r\n // console.log(this.data.rank,\"设置头像成功\",err);\r\n }\r\n else{\r\n // console.log(\"设置头像失败\",url);\r\n console.log(err,texture)\r\n }\r\n })\r\n }\r\n\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\ListView\\ItemRender.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEM,IAAA,KAAwB,EAAE,CAAC,UAAU,EAAnC,OAAO,aAAA,EAAE,QAAQ,cAAkB,CAAC;AAG5C;IAAwC,8BAAY;IAApD;QAAA,qEAqEC;QApEG,QAAQ;QACD,UAAI,GAAO,IAAI,CAAC;QACvB,cAAc;QACP,eAAS,GAAU,CAAC,CAAC;;IAiEhC,CAAC;IA/DG,aAAa;IACN,gCAAW,GAAlB;QACI,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAC;YACzB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,GAAG,KAAK,CAAA;SACzD;QACD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACxF,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACxF,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAC1F,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACxE,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAC;YACnB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SACtD;aACI,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAC;YACxB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SACtD;aACI,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAC;YACxB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SACtD;aAAI;YACD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;SACrD;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAEM,2BAAM,GAAb;QAAA,iBAgCC;QA/BG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAE,KAAK,CAAC;QACpE,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACxB,KAAK,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,UAAA,QAAQ;YACV,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAClD,CAAC,CAAC;aAED,IAAI,CAAC,UAAA,KAAK;YACP,+DAA+D;YAC/D,IAAG,KAAK,IAAI,MAAM,EAAC;gBACf,qCAAqC;gBACrC,KAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;aACxE;QACL,CAAC,CAAC;aACD,KAAK,CAAC,UAAA,KAAK;YACR,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,EAAC,GAAG,EAAC,MAAM,EAAC,EAAC,UAAC,GAAG,EAAE,OAAoB;YACnE,IAAG,OAAO,EAAC;gBACP,KAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,GAAE,IAAI,CAAC;gBACnE,IAAI,MAAM,GAAG,KAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC3F,MAAM,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACjD,4CAA4C;aAC/C;iBACG;gBACA,6BAA6B;gBAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAC,OAAO,CAAC,CAAA;aAC3B;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAlEgB,UAAU;QAD9B,OAAO;OACa,UAAU,CAqE9B;IAAD,iBAAC;CArED,AAqEC,CArEuC,EAAE,CAAC,SAAS,GAqEnD;kBArEoB,UAAU","file":"","sourceRoot":"/","sourcesContent":["import List, { ListType } from \"./List\";\r\n\r\nconst { ccclass, property } = cc._decorator;\r\n\r\n@ccclass\r\nexport default class ItemRender extends cc.Component {\r\n /**数据 */\r\n public data:any = null;\r\n /**索引 0表示第一项*/\r\n public itemIndex:number = 0;\r\n\r\n /**数据改变时调用 */\r\n public dataChanged(){\r\n if(this.data.name.length > 6){\r\n this.data.name = this.data.name.substring(0,6) + \"...\"\r\n }\r\n this.node.getChildByName(\"rankLab\").getComponent(cc.Label).string = this.data.rank + \"\";\r\n this.node.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.data.name + \"\";\r\n this.node.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.data.total + \"\";\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = false;\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = false;\r\n if(this.data.rank == 1){\r\n this.node.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 2){\r\n this.node.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }\r\n else if(this.data.rank == 3){\r\n this.node.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n this.node.getChildByName(\"rankLab\").active = false;\r\n }else{\r\n this.node.getChildByName(\"rankLab\").active = true;\r\n }\r\n this.setPic();\r\n } \r\n \r\n public setPic(){\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = false;\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= false;\r\n var self = this;\r\n let url = this.data.pic;\r\n fetch(url)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n\r\n .then(errNo => {\r\n // console.log(this.data.rank,'X-Info:', errNo); // 输出X-ErrNo的值\r\n if(errNo == \"5093\"){\r\n // console.log(this.data.rank,\"没头像\");\r\n this.node.getChildByName(\"pic\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n cc.assetManager.loadRemote(url, {ext:'.png'},(err, texture:cc.Texture2D) => {\r\n if(texture){\r\n this.node.getChildByName(\"pic\").getChildByName(\"pic\").active= true;\r\n var sprite = this.node.getChildByName(\"pic\").getChildByName(\"pic\").getComponent(cc.Sprite);\r\n sprite.spriteFrame = new cc.SpriteFrame(texture);\r\n // console.log(this.data.rank,\"设置头像成功\",err);\r\n }\r\n else{\r\n // console.log(\"设置头像失败\",url);\r\n console.log(err,texture)\r\n }\r\n })\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/Load.js b/temp/quick-scripts/src/assets/Script/Load.js index 8e3a081..14e1e88 100644 --- a/temp/quick-scripts/src/assets/Script/Load.js +++ b/temp/quick-scripts/src/assets/Script/Load.js @@ -36,48 +36,52 @@ var NewClass = /** @class */ (function (_super) { }; //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上 NewClass.prototype.Authentication = function () { - var userId = Storage_1.StorageMessage.getStorage("user"); - if (userId == "undifend" || userId == null || userId == "") { - this.setUserId(); + var name = "user_" + GameData_1.default._instance.GM_INFO.gameId; + var data = Storage_1.StorageMessage.getStorage(name); + if (data == "undifend" || data == null || data == "") { + console.log("没缓存"); + this.setUserId(name); } else { - var data = Storage_1.StorageMessage.getStorage("user"); - data = this.getUserId(data); + console.log("有缓存"); var timestamp = parseInt(new Date().getTime() / 1000 + ""); - if ((timestamp - data[2]) > 86400) { - this.setUserId(); + if ((timestamp - data.time) > 86400) { + console.log("缓存过期"); + this.setUserId(name); return; } - GameData_1.default._instance.GM_INFO.userId = parseInt(data[1]); + GameData_1.default._instance.GM_INFO.userId = parseInt(data.userId); } }; //设置userId,链接有获取,没有跳转授权 - NewClass.prototype.setUserId = function () { - GameData_1.default._instance.GM_INFO.userId = this.getUserId(null); + NewClass.prototype.setUserId = function (name) { + GameData_1.default._instance.GM_INFO.userId = this.getUserId(); if (GameData_1.default._instance.GM_INFO.userId == null) { + console.log("链接没ID准备跳转"); var url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=" + location.href; window.location.href = url; } else { var timestamp = parseInt(new Date().getTime() / 1000 + ""); - var idTemp = "gameId=" + GameData_1.default._instance.GM_INFO.gameId + - "?userId= " + GameData_1.default._instance.GM_INFO.userId + "?time=" + timestamp; - Storage_1.StorageMessage.setStorage("user", idTemp); + var idData = { + userId: GameData_1.default._instance.GM_INFO.userId + "", + time: timestamp + }; + Storage_1.StorageMessage.setStorage(name, idData); + console.log("有ID:", GameData_1.default._instance.GM_INFO.userId); GameData_1.default._instance.GM_INFO.userId = parseInt(GameData_1.default._instance.GM_INFO.userId); } }; //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId - NewClass.prototype.getUserId = function (str) { + NewClass.prototype.getUserId = function () { var pathStr = window.location.search; var arr = pathStr.split("&"); - if (str != null) - arr = pathStr.split("?"); if (pathStr.length >= 0 && arr.length > 0) { var arr2_1 = []; arr.map(function (item) { arr2_1.push(item.split("=")[1]); }); - return str == null ? arr2_1[0] : arr2_1; + return arr2_1[0]; } else { return null; @@ -96,6 +100,8 @@ var NewClass = /** @class */ (function (_super) { NewClass.prototype.openRank = function () { cc.director.loadScene("RankScene"); }; + NewClass.prototype.update = function (dt) { + }; NewClass = __decorate([ ccclass ], NewClass); diff --git a/temp/quick-scripts/src/assets/Script/Load.js.map b/temp/quick-scripts/src/assets/Script/Load.js.map index 6ce843f..d94b76f 100644 --- a/temp/quick-scripts/src/assets/Script/Load.js.map +++ b/temp/quick-scripts/src/assets/Script/Load.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\Load.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property, requireComponent} = cc._decorator;\r\nimport GameData from \"./GameData\";\r\nimport { StorageMessage } from \"./Storage\";\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n\r\n start () {\r\n this.Authentication();\r\n }\r\n\r\n //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上\r\n private Authentication(){\r\n let userId = StorageMessage.getStorage(\"user\");\r\n if(userId == \"undifend\" || userId==null || userId == \"\"){\r\n this.setUserId();\r\n }\r\n else{\r\n let data = StorageMessage.getStorage(\"user\");\r\n data = this.getUserId(data);\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n if((timestamp - data[2]) > 86400){\r\n this.setUserId();\r\n return;\r\n }\r\n GameData._instance.GM_INFO.userId = parseInt(data[1]);\r\n }\r\n }\r\n //设置userId,链接有获取,没有跳转授权\r\n private setUserId(){\r\n GameData._instance.GM_INFO.userId = this.getUserId(null);\r\n if(GameData._instance.GM_INFO.userId == null){\r\n let url = \"http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=\"+location.href;\r\n window.location.href = url;\r\n }\r\n else{\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n let idTemp = \"gameId=\" + GameData._instance.GM_INFO.gameId + \r\n \"?userId= \" + GameData._instance.GM_INFO.userId + \"?time=\" + timestamp;\r\n StorageMessage.setStorage(\"user\",idTemp);\r\n GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId);\r\n }\r\n }\r\n //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId\r\n private getUserId(str) { \r\n let pathStr = window.location.search;\r\n let arr=pathStr.split(\"&\");\r\n if(str != null) arr=pathStr.split(\"?\");\r\n if (pathStr.length>= 0&&arr.length>0) {\r\n let arr2=[];\r\n arr.map(item=>{\r\n arr2.push(item.split(\"=\")[1])\r\n })\r\n return str == null ? arr2[0]:arr2;\r\n } else {\r\n return null\r\n }\r\n }\r\n //开始游戏,跳转至引导页面\r\n startGame(){\r\n cc.director.loadScene(\"GuideScene\");\r\n }\r\n //备用,用来测试跳转 指定关卡\r\n clickBtn(event,data){\r\n GameData._instance.GM_INFO.custom = parseInt(data);\r\n cc.director.loadScene(\"GameScene\");\r\n } \r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\Load.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["\r\nconst {ccclass, property, requireComponent} = cc._decorator;\r\nimport GameData from \"./GameData\";\r\nimport { StorageMessage } from \"./Storage\";\r\n\r\n@ccclass\r\nexport default class NewClass extends cc.Component {\r\n\r\n start () {\r\n this.Authentication();\r\n }\r\n\r\n //鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上\r\n private Authentication(){\r\n let name = \"user_\" + GameData._instance.GM_INFO.gameId;\r\n let data = StorageMessage.getStorage(name);\r\n if(data == \"undifend\" || data==null || data == \"\"){\r\n console.log(\"没缓存\");\r\n this.setUserId(name);\r\n }\r\n else{\r\n console.log(\"有缓存\");\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n if((timestamp - data.time) > 86400){\r\n console.log(\"缓存过期\");\r\n this.setUserId(name);\r\n return;\r\n }\r\n GameData._instance.GM_INFO.userId = parseInt(data.userId);\r\n }\r\n }\r\n //设置userId,链接有获取,没有跳转授权\r\n private setUserId(name){\r\n GameData._instance.GM_INFO.userId = this.getUserId();\r\n if(GameData._instance.GM_INFO.userId == null){\r\n console.log(\"链接没ID准备跳转\");\r\n let url = \"http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback=\"+location.href;\r\n window.location.href = url;\r\n }\r\n else{\r\n let timestamp = parseInt(new Date().getTime()/1000 + \"\");\r\n let idData = {\r\n userId: GameData._instance.GM_INFO.userId + \"\",\r\n time: timestamp\r\n }\r\n StorageMessage.setStorage(name,idData);\r\n console.log(\"有ID:\",GameData._instance.GM_INFO.userId);\r\n GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId);\r\n }\r\n }\r\n //获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId\r\n private getUserId() { \r\n let pathStr = window.location.search;\r\n let arr=pathStr.split(\"&\");\r\n if (pathStr.length>= 0&&arr.length>0) {\r\n let arr2=[];\r\n arr.map(item=>{\r\n arr2.push(item.split(\"=\")[1])\r\n })\r\n return arr2[0];\r\n } else {\r\n return null\r\n }\r\n }\r\n //开始游戏,跳转至引导页面\r\n startGame(){\r\n cc.director.loadScene(\"GuideScene\");\r\n }\r\n //备用,用来测试跳转 指定关卡\r\n clickBtn(event,data){\r\n GameData._instance.GM_INFO.custom = parseInt(data);\r\n cc.director.loadScene(\"GameScene\");\r\n } \r\n //打开排行榜\r\n openRank(){\r\n cc.director.loadScene(\"RankScene\");\r\n }\r\n \r\n protected update(dt: number): void {\r\n }\r\n}\r\n"]} \ No newline at end of file diff --git a/temp/quick-scripts/src/assets/Script/RankManager.js b/temp/quick-scripts/src/assets/Script/RankManager.js index ea5fcfb..c664a08 100644 --- a/temp/quick-scripts/src/assets/Script/RankManager.js +++ b/temp/quick-scripts/src/assets/Script/RankManager.js @@ -166,7 +166,7 @@ var RankManager = /** @class */ (function (_super) { console.error('Error fetching X-Info:', error); }); var self = this; - cc.assetManager.loadRemote(pic, { ext: '.jpg' }, function (err, texture) { + cc.assetManager.loadRemote(pic, { ext: '.png' }, function (err, texture) { self.Player.opacity = 255; if (texture) { self.phone.node.active = true; diff --git a/temp/quick-scripts/src/assets/Script/RankManager.js.map b/temp/quick-scripts/src/assets/Script/RankManager.js.map index 8b83bca..be707e3 100644 --- a/temp/quick-scripts/src/assets/Script/RankManager.js.map +++ b/temp/quick-scripts/src/assets/Script/RankManager.js.map @@ -1 +1 @@ -{"version":3,"sources":["assets\\Script\\RankManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import GameData from \"./GameData\";\r\nimport List from \"./ListView/List\";\r\nimport HttpUtil from \"./crypto/serverAPI\";\r\nconst { ccclass, property } = cc._decorator;\r\n//排行榜\r\n@ccclass\r\nexport default class RankManager extends cc.Component {\r\n @property(cc.Node) //用户上方头像\r\n Player: cc.Node = null;\r\n @property(cc.Node) //用户最下方个人信息\r\n selfNode: cc.Node = null;\r\n @property(cc.Sprite) //用户头像换图\r\n phone: cc.Sprite = null;\r\n private rankList: List; //排行榜\r\n tween: cc.Tween; //最上方用户头像动画\r\n listData: any; //总列表信息\r\n selfData: any; //自己信息\r\n rankNumber: number; //用户自己排名 有可能不在排行榜内99+\r\n rankTotal: number; //获取排行榜用户数量 现在为100\r\n\r\n onLoad() {\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.rankList = cc.find(\"ScrollView\", this.node).getComponent(List);\r\n this.Player.getChildByName(\"rank\").active = false;\r\n this.listData = [];\r\n this.selfData = null;\r\n this.rankNumber = 100;\r\n this.rankTotal= 100;\r\n this.selfNode.opacity = 0;\r\n }\r\n\r\n start() {\r\n this.Player.active = false;\r\n this.getRank();\r\n }\r\n //调用获取排行榜接口\r\n getRank(){\r\n let postData = {\r\n \"page\":1,\r\n \"pageSize\":100\r\n }; \r\n //回调进getRankData\r\n HttpUtil.rankData(2,this.getRankData.bind(this),postData);\r\n }\r\n //实际设置排行数据\r\n getRankData(data){\r\n if(data){\r\n console.log(data);\r\n this.listData = data.data.list;\r\n this.selfData = data.data.info;\r\n let rankData = [];\r\n let self = false;\r\n for(let i=0;i<=this.listData.length-1;i++){\r\n rankData.push({rank:(i+1), name:this.listData[i].nickName, total:this.listData[i].totalSunCount, pic:this.listData[i].pic});\r\n if(GameData._instance.GM_INFO.userId == this.listData[i].userId){\r\n self = true;\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string =(i+1) + \"\"; \r\n }\r\n if(i == (this.listData.length-1) && self == false){\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string = \"99+\"; \r\n }\r\n }\r\n this.rankList.setData(rankData);\r\n if(this.selfData.nickName.length > 6){\r\n this.selfData.nickName= this.selfData.nickName.substring(0,6) + \"...\"\r\n }\r\n this.selfNode.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.selfData.nickName;\r\n this.selfNode.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.selfData.totalSunCount;\r\n this.setPic(this.selfData.pic);\r\n if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"1\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"2\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"3\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n }\r\n else{\r\n // this.selfNode.getChildByName(\"four\").active = true;\r\n }\r\n this.selfNode.opacity = 255;\r\n if(this.selfData.totalSunCount == 0) this.selfNode.opacity = 0;\r\n }\r\n }\r\n //返回按钮\r\n backClick(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //最上方用户动画\r\n playerAction(){\r\n //-254 377 210 453\r\n this.Player.getChildByName(\"rank\").active = false;\r\n let time = 1;\r\n this.tween = cc.tween(this.Player)\r\n .to(2,{position:cc.v3(210,453,0)})\r\n .call(() =>{\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n })\r\n .start();\r\n time = (this.listData.length - this.rankNumber)/this.listData.length;\r\n if(this.listData.length >= 99){\r\n if(this.rankNumber >= 99){\r\n time = (Math.random()*49+1)/100\r\n var matchId = cc.sys.localStorage.getItem(\"matchNumber\");\r\n if(matchId == null || matchId == undefined){\r\n time = 0;\r\n }\r\n }\r\n }\r\n setTimeout(() => {\r\n if(this.tween)this.tween.stop();\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n }, time*2000);\r\n\r\n }\r\n //设置头像\r\n public setPic(pic){\r\n this.phone.node.parent.getChildByName(\"icon\").active = false;\r\n this.phone.node.active = false;\r\n this.Player.active = true;\r\n this.Player.opacity = 0;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = false;\r\n fetch(pic)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n .then(errNo => {\r\n if(errNo == \"5093\"){\r\n this.phone.node.parent.getChildByName(\"icon\").active = true;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n var self = this;\r\n cc.assetManager.loadRemote(pic, {ext:'.jpg'},(err, texture:cc.Texture2D) => {\r\n self.Player.opacity = 255;\r\n if(texture){\r\n self.phone.node.active = true;\r\n self.phone.spriteFrame = new cc.SpriteFrame(texture);\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = true;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").getComponent(cc.Sprite)\r\n .spriteFrame = new cc.SpriteFrame(texture);\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n else{\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n \r\n })\r\n }\r\n\r\n}\r\n"]} \ No newline at end of file +{"version":3,"sources":["assets\\Script\\RankManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import GameData from \"./GameData\";\r\nimport List from \"./ListView/List\";\r\nimport HttpUtil from \"./crypto/serverAPI\";\r\nconst { ccclass, property } = cc._decorator;\r\n//排行榜\r\n@ccclass\r\nexport default class RankManager extends cc.Component {\r\n @property(cc.Node) //用户上方头像\r\n Player: cc.Node = null;\r\n @property(cc.Node) //用户最下方个人信息\r\n selfNode: cc.Node = null;\r\n @property(cc.Sprite) //用户头像换图\r\n phone: cc.Sprite = null;\r\n private rankList: List; //排行榜\r\n tween: cc.Tween; //最上方用户头像动画\r\n listData: any; //总列表信息\r\n selfData: any; //自己信息\r\n rankNumber: number; //用户自己排名 有可能不在排行榜内99+\r\n rankTotal: number; //获取排行榜用户数量 现在为100\r\n\r\n onLoad() {\r\n this.init();\r\n }\r\n //初始化数据\r\n init(){\r\n this.rankList = cc.find(\"ScrollView\", this.node).getComponent(List);\r\n this.Player.getChildByName(\"rank\").active = false;\r\n this.listData = [];\r\n this.selfData = null;\r\n this.rankNumber = 100;\r\n this.rankTotal= 100;\r\n this.selfNode.opacity = 0;\r\n }\r\n\r\n start() {\r\n this.Player.active = false;\r\n this.getRank();\r\n }\r\n //调用获取排行榜接口\r\n getRank(){\r\n let postData = {\r\n \"page\":1,\r\n \"pageSize\":100\r\n }; \r\n //回调进getRankData\r\n HttpUtil.rankData(2,this.getRankData.bind(this),postData);\r\n }\r\n //实际设置排行数据\r\n getRankData(data){\r\n\r\n if(data){\r\n console.log(data);\r\n this.listData = data.data.list;\r\n this.selfData = data.data.info;\r\n let rankData = [];\r\n let self = false;\r\n for(let i=0;i<=this.listData.length-1;i++){\r\n rankData.push({rank:(i+1), name:this.listData[i].nickName, total:this.listData[i].totalSunCount, pic:this.listData[i].pic});\r\n if(GameData._instance.GM_INFO.userId == this.listData[i].userId){\r\n self = true;\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string =(i+1) + \"\"; \r\n }\r\n if(i == (this.listData.length-1) && self == false){\r\n this.rankNumber = i;\r\n this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string = \"99+\"; \r\n }\r\n }\r\n this.rankList.setData(rankData);\r\n if(this.selfData.nickName.length > 6){\r\n this.selfData.nickName= this.selfData.nickName.substring(0,6) + \"...\"\r\n }\r\n this.selfNode.getChildByName(\"nameLab\").getComponent(cc.Label).string = this.selfData.nickName;\r\n this.selfNode.getChildByName(\"totalLab\").getComponent(cc.Label).string = this.selfData.totalSunCount;\r\n this.setPic(this.selfData.pic);\r\n if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"1\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"one\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"2\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"two\").active = true;\r\n }\r\n else if(this.selfNode.getChildByName(\"rankLab\").getComponent(cc.Label).string == \"3\"){\r\n this.selfNode.getChildByName(\"rank\").getChildByName(\"three\").active = true;\r\n }\r\n else{\r\n // this.selfNode.getChildByName(\"four\").active = true;\r\n }\r\n this.selfNode.opacity = 255;\r\n if(this.selfData.totalSunCount == 0) this.selfNode.opacity = 0;\r\n }\r\n }\r\n //返回按钮\r\n backClick(){\r\n cc.director.loadScene(\"LoadScene\");\r\n }\r\n //最上方用户动画\r\n playerAction(){\r\n //-254 377 210 453\r\n this.Player.getChildByName(\"rank\").active = false;\r\n let time = 1;\r\n this.tween = cc.tween(this.Player)\r\n .to(2,{position:cc.v3(210,453,0)})\r\n .call(() =>{\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n })\r\n .start();\r\n time = (this.listData.length - this.rankNumber)/this.listData.length;\r\n if(this.listData.length >= 99){\r\n if(this.rankNumber >= 99){\r\n time = (Math.random()*49+1)/100\r\n var matchId = cc.sys.localStorage.getItem(\"matchNumber\");\r\n if(matchId == null || matchId == undefined){\r\n time = 0;\r\n }\r\n }\r\n }\r\n setTimeout(() => {\r\n if(this.tween)this.tween.stop();\r\n this.Player.getChildByName(\"rank\").active = true;\r\n this.Player.getChildByName(\"rank\").getChildByName(\"number\")\r\n .getComponent(cc.Label).string = parseInt(time*100 + \"\") + \"%\";\r\n }, time*2000);\r\n\r\n }\r\n //设置头像\r\n public setPic(pic){\r\n this.phone.node.parent.getChildByName(\"icon\").active = false;\r\n this.phone.node.active = false;\r\n this.Player.active = true;\r\n this.Player.opacity = 0;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = false;\r\n fetch(pic)\r\n .then(response => {\r\n return response.headers.get('Content-Length');\r\n })\r\n .then(errNo => {\r\n if(errNo == \"5093\"){\r\n this.phone.node.parent.getChildByName(\"icon\").active = true;\r\n this.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n }\r\n })\r\n .catch(error => {\r\n console.error('Error fetching X-Info:', error);\r\n });\r\n var self = this;\r\n cc.assetManager.loadRemote(pic, {ext:'.png'},(err, texture:cc.Texture2D) => {\r\n self.Player.opacity = 255;\r\n if(texture){\r\n self.phone.node.active = true;\r\n self.phone.spriteFrame = new cc.SpriteFrame(texture);\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = false;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").active = true;\r\n self.Player.getChildByName(\"mask\").getChildByName(\"phone\").getComponent(cc.Sprite)\r\n .spriteFrame = new cc.SpriteFrame(texture);\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n else{\r\n self.Player.getChildByName(\"mask\").getChildByName(\"icon\").active = true;\r\n setTimeout(() => {\r\n self.playerAction();\r\n }, 500);\r\n }\r\n \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/tool/Storage.js b/temp/quick-scripts/src/assets/Script/tool/Storage.js deleted file mode 100644 index 204aa94..0000000 --- a/temp/quick-scripts/src/assets/Script/tool/Storage.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -cc._RF.push(module, 'f124cZyKJVPPobsFKRo+Uam', 'Storage'); -// Script/tool/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(); \ No newline at end of file diff --git a/temp/quick-scripts/src/assets/Script/tool/Storage.js.map b/temp/quick-scripts/src/assets/Script/tool/Storage.js.map deleted file mode 100644 index 6055c59..0000000 --- a/temp/quick-scripts/src/assets/Script/tool/Storage.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["assets\\Script\\tool\\Storage.ts"],"names":[],"mappings":";;;;;;;AAAA,SAAS;AACT,IAAI,cAAc,GAAG;IACjB,UAAU,EAAG,UAAS,GAAG;QACrB,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC;YAClC,IAAI,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAC/C;QAED,IAAG,MAAM,EAAC;YACR,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SAC7B;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,UAAU,EAAG,UAAS,GAAG,EAAC,KAAK;QAC3B,UAAU;QACV,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IACD,aAAa,EAAG,UAAS,GAAG;QAC1B,UAAU;QACV,IAAG,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC;YAClC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;SACpC;IACH,CAAC;CACJ,CAAC;AAEO,wCAAc","file":"","sourceRoot":"/","sourcesContent":["//缓存浏览器数据\nvar StorageMessage = {\n getStorage : function(key){\n var result = null;\n if(cc.sys.localStorage.getItem(key)){\n var result = cc.sys.localStorage.getItem(key);\n }\n \n if(result){\n result = JSON.parse(result);\n }\n return result;\n },\n setStorage : function(key,value){\n //主动拉起分享接口\n var temp = JSON.stringify(value);\n cc.sys.localStorage.setItem(key, temp)\n },\n removeStorage : function(key){\n //主动删除消息接口\n if(cc.sys.localStorage.getItem(key)){\n cc.sys.localStorage.removeItem(key)\n }\n },\n};\n\nexport { StorageMessage };"]} \ No newline at end of file