xiaomianao666

邀您一起看:奇妙工具箱

Nov 11th, 2024
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥奇妙工具箱@@eyJkYXRhIjoie1wibGFzdF9jaGFwdGVyX3J1bGVcIjpcIlwiLFwidGl0bGVcIjpcIuWlh+WmmeW3peWFt+eusVwiLFwiYXV0aG9yXCI6XCLlsI/mo4noooTwn4yeXCIsXCJ1cmxcIjpcImhpa2VyOi8vZW1wdHkjI1wiLFwidmVyc2lvblwiOjEyLFwiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcImNsYXNzX25hbWVcIjpcIlwiLFwidHlwZVwiOlwidG9vbFwiLFwiY2xhc3NfdXJsXCI6XCJcIixcImFyZWFfbmFtZVwiOlwiXCIsXCJhcmVhX3VybFwiOlwiXCIsXCJzb3J0X25hbWVcIjpcIlwiLFwieWVhcl9uYW1lXCI6XCJcIixcInNvcnRfdXJsXCI6XCJcIixcInllYXJfdXJsXCI6XCJcIixcImZpbmRfcnVsZVwiOlwianM6XFxudmFyIGQgPSBbXTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogXFxcIuejgeWKm+S6keaSrVxcXCIsXFxuICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICBkZXNjOiBcXFwi4oCc4oCc4oCd4oCdPHNtYWxsPuWfuuS6jui/hembt1NES++8jOaUr+aMgeejgeWKm+OAgeeUtemptOOAgeenjeWtkOOAgUZUUOOAgUhUVFDjgIFSVE1Q562J5aSa56eN5qC85byPPC9zbWFsbD5cXFwiLFxcbiAgICBjb2xfdHlwZTogXFxcInRleHRfY2VudGVyXzFcXFwiLFxcbiAgICBleHRyYToge1xcbiAgICAgICAgbGluZVZpc2libGU6IGZhbHNlXFxuICAgIH1cXG59KTtcXG5cXG5kLnB1c2goe1xcbiAgICB0aXRsZTogXFxcIuaSreaUvlxcXCIsXFxuICAgIHVybDogJC50b1N0cmluZygoKSA9PiB7XFxuICAgICAgICByZXR1cm4gaW5wdXQ7XFxuICAgIH0pLFxcbiAgICBjb2xfdHlwZTogXFxcImlucHV0XFxcIixcXG4gICAgZGVzYzogXFxcIuivt+i+k+WFpemTvuaOpVxcXCIsXFxuICAgIHBpY191cmw6IFxcXCJcXFwiXFxufSk7XFxuXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6IFxcXCLop4bpopHmj5Dlj5ZcXFwiLFxcbiAgICBkZXNjOiBcXFwi55u05o6l6L6T5YWl572R6aG15Zyw5Z2A5Y2z5Y+v5o+Q5Y+W5pKt5pS+44CB5LiL6L296KeG6aKRXFxcIixcXG4gICAgdXJsOiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCIsXFxuICAgIGNvbF90eXBlOiBcXFwidGV4dF9jZW50ZXJfMVxcXCIsXFxuICAgIGV4dHJhOiB7XFxuICAgICAgICBsaW5lVmlzaWJsZTogZmFsc2VcXG4gICAgfVxcbn0pO1xcblxcbmQucHVzaCh7XFxuICAgIHRpdGxlOiBcXFwi5o+Q5Y+WXFxcIixcXG4gICAgdXJsOiAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgIHJldHVybiBcXFwidmlkZW86Ly9cXFwiICsgaW5wdXQ7XFxuICAgIH0pLFxcbiAgICBjb2xfdHlwZTogXFxcImlucHV0XFxcIixcXG4gICAgZGVzYzogXFxcIuivt+i+k+WFpee9kemhtemTvuaOpVxcXCIsXFxuICAgIHBpY191cmw6IFxcXCJcXFwiXFxufSk7XFxuXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6IFxcXCLnlLXlrZDkuabpmIXor7vlmagodHh0KVxcXCIsXFxuICAgIHVybDogJChcXFwiI25vTG9hZGluZyNcXFwiKS5sYXp5UnVsZSgoKSA9PiB7XFxuICAgICAgICBsZXQgciA9IGZldGNoKFxcXCJoaWtlcjovL2hvbWVA5pys5Zyw6LWE5rqQ566h55CGXFxcIik7XFxuICAgICAgICBpZiAociAmJiByLmxlbmd0aCA+IDUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vaG9tZUDmnKzlnLDotYTmupDnrqHnkIZcXFwiO1xcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICBjb25maXJtKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6IFxcXCLmuKnppqjmj5DnpLpcXFwiLFxcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcXFwi5b2T5YmN5pyq5a+85YWl5omp5bGV5o+S5Lu277yM54K55Ye75LiL5pa556Gu5a6a5oyJ6ZKu5a+85YWlXFxcIixcXG4gICAgICAgICAgICAgICAgY29uZmlybTogJC50b1N0cmluZygoKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcIua1t+mYlOinhueVjOWwj+eoi+W6j+inhOWImeOAkOacrOWcsOi1hOa6kOeuoeeQhuOAke+/pWhvbWVfcnVsZV91cmzvv6VodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD0zNTU5XFxcIlxcbiAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG4gICAgICAgIH1cXG4gICAgfSksXFxuICAgIGNvbF90eXBlOiBcXFwiY2FyZF9waWNfMlxcXCIsXFxuICAgIHBpY191cmw6IFxcXCJoaWtlcjovL2ltYWdlcy9ob21lX3BpYzRcXFwiLFxcbiAgICBleHRyYToge1xcbiAgICAgICAgbG9uZ0NsaWNrOiBbXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgICAgICB0aXRsZTogXFxcIuajgOa1i+abtOaWsFxcXCIsXFxuICAgICAgICAgICAgICAgIGpzOiBcXFwiJ+a1t+mYlOinhueVjO+/pWhvbWVfcnVsZV91cmzvv6VodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD0zNTU5J1xcXCJcXG4gICAgICAgICAgICB9XFxuICAgICAgICBdXFxuICAgIH1cXG59KTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogXFxcImVwdWLpmIXor7vlmahcXFwiLFxcbiAgICB1cmw6IFxcXCJmaWxlU2VsZWN0Oi8vXFxcIiArICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgY29uc3QgRmlsZSA9IGphdmEuaW8uRmlsZTtcXG4gICAgICAgIGxldCBqYXZhSW1wb3J0ID0gbmV3IEphdmFJbXBvcnRlcigpO1xcbiAgICAgICAgamF2YUltcG9ydC5pbXBvcnRQYWNrYWdlKFxcbiAgICAgICAgICAgIFBhY2thZ2VzLmNvbS5leGFtcGxlLmhpa2Vydmlldy51dGlsc1xcbiAgICAgICAgKTtcXG4gICAgICAgIHdpdGgoamF2YUltcG9ydCkge1xcbiAgICAgICAgICAgIGxldCBmaWxlID0gbmV3IEZpbGUoaW5wdXQpO1xcbiAgICAgICAgICAgIGxldCBuID0gZmlsZS5nZXROYW1lKCkucmVwbGFjZShcXFwiX2ZpbGVTZWxlY3RfXFxcIiwgXFxcIlxcXCIpO1xcbiAgICAgICAgICAgIGxldCBwID0gZ2V0UGF0aChcXFwiaGlrZXI6Ly9maWxlcy9kb3dubG9hZC9cXFwiICsgbik7XFxuICAgICAgICAgICAgcCA9IHAucmVwbGFjZShcXFwiZmlsZTovL1xcXCIsIFxcXCJcXFwiKTsgICAgICAgICAgICBcXG4gICAgICAgICAgICBGaWxlVXRpbC5jb3B5RmlsZShmaWxlLCBuZXcgRmlsZShwKSk7XFxuICAgICAgICAgICAgcCA9IGJhc2U2NEVuY29kZShwKTsgICAgICAgICAgICBcXG4gICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vcGFnZS9lcHViI2F1dG9DYWNoZSM/cD1cXFwiICsgcCArIFxcXCImcGFnZVRpdGxlPVxcXCIgKyBuO1xcbiAgICAgICAgfVxcbiAgICB9KSxcXG4gICAgY29sX3R5cGU6IFxcXCJjYXJkX3BpY18yXzJcXFwiLFxcbiAgICBwaWNfdXJsOiBcXFwiaGlrZXI6Ly9pbWFnZXMvaG9tZV9waWMzXFxcIixcXG4gICAgZXh0cmE6IHtcXG4gICAgICAgIGluaGVyaXRUaXRsZTogZmFsc2VcXG4gICAgfVxcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiBcXFwi5pys5Zyw6Z+z6KeG6aKRXFxcIixcXG4gICAgdXJsOiBcXFwiaGlrZXI6Ly9sb2NhbE1lZGlhXFxcIixcXG4gICAgY29sX3R5cGU6IFxcXCJjYXJkX3BpY18yXzJcXFwiLFxcbiAgICBwaWNfdXJsOiBcXFwiaGlrZXI6Ly9pbWFnZXMvaG9tZV9waWMyXFxcIlxcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiBcXFwiV2ViRGF2XFxcIixcXG4gICAgdXJsOiAkKFxcXCIjbm9Mb2FkaW5nI1xcXCIpLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgIGxldCByID0gZmV0Y2goXFxcImhpa2VyOi8vaG9tZUBXZWJkYXZcXFwiKTtcXG4gICAgICAgIGxvZyhyKTtcXG4gICAgICAgIGlmIChyICYmIHIubGVuZ3RoID4gNSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9ob21lQFdlYmRhdlxcXCI7XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIGNvbmZpcm0oe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogXFxcIua4qemmqOaPkOekulxcXCIsXFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFxcXCLlvZPliY3mnKrlr7zlhaXmianlsZXmj5Lku7bvvIzngrnlh7vkuIvmlrnnoa7lrprmjInpkq7lr7zlhaVcXFwiLFxcbiAgICAgICAgICAgICAgICBjb25maXJtOiAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwi5rW36ZiU6KeG55WM5bCP56iL5bqP6KeE5YiZ44CQV2ViZGF244CR77+laG9tZV9ydWxlX3VybO+/pWh0dHA6Ly9oaWtlci5ub2tpYS5wcmVzcy9oaWtlcnVsZS9ydWxlbGlzdC5qc29uP2lkPTUyMTBcXFwiXFxuICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcbiAgICAgICAgfVxcbiAgICB9KSxcXG4gICAgY29sX3R5cGU6IFxcXCJ0ZXh0XzJcXFwiXFxufSk7XFxuXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6IFxcXCLlm77niYfmj5Dlj5blmahcXFwiLFxcbiAgICB1cmw6IFxcXCJoaWtlcjovL3BhZ2UvcGljXFxcIixcXG4gICAgY29sX3R5cGU6IFxcXCJ0ZXh0XzJcXFwiLFxcbiAgICBkZXNjOiBcXFwiXFxcIixcXG4gICAgcGljX3VybDogXFxcIlxcXCJcXG59KTtcXG5cXG5kLnB1c2goe1xcbiAgICB0aXRsZTogXFxcIuKAnOKAnOKAneKAnTxzcGFuIHN0eWxlPVxcXFxcXFwiY29sb3I6ICNhYWFhYWFcXFxcXFxcIj48c21hbGw+5omp5bGV5o+S5Lu25p2l6Ieq5bCP5qOJ6KKE44CBTG95RGdJa+OAgUpvZeetiTwvc21hbGw+PC9zcGFuPlxcXCIsXFxuICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICBjb2xfdHlwZTogXFxcInRleHRfY2VudGVyXzFcXFwiLFxcbiAgICBleHRyYToge1xcbiAgICAgICAgbGluZVZpc2libGU6IGZhbHNlXFxuICAgIH1cXG59KTtcXG5cXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogXFxcImxpbmVfYmxhbmtcXFwiLFxcbiAgICBleHRyYToge1xcbiAgICAgICAgaWQ6IFxcXCJxbWdqeFxcXCJcXG4gICAgfVxcbn0pO1xcblxcbnNldFJlc3VsdChkKTtcXG50cnkge1xcbiAgICBNWV9VUkwgPSBcXFwiaHR0cHM6Ly9oYWlrdW9zaGlqaWUuY24vXFxcIjtcXG4gICAgbGV0IGh0bWwgPSByZXF1ZXN0KE1ZX1VSTCk7XFxuICAgIGxldCBhcnIgPSBwZGZhKGh0bWwsIFxcXCIucG9zdC1saXN0JiZsaVxcXCIpO1xcbiAgICBhZGRJdGVtQWZ0ZXIoXFxcInFtZ2p4XFxcIiwgYXJyLm1hcChpdCA9PiB7XFxuICAgICAgICByZXR1cm4ge1xcbiAgICAgICAgICAgIHRpdGxlOiBwZGZoKGl0LCBcXFwiaDMtLXRpbWUmJlRleHRcXFwiKSxcXG4gICAgICAgICAgICB1cmw6IFxcXCJ4NTovL1xcXCIgKyBwZChpdCwgXFxcImEmJmhyZWZcXFwiKSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogXFxcInRleHRfMVxcXCIsXFxuICAgICAgICAgICAgZGVzYzogcGRmaChpdCwgXFxcIi5pbmRleC10aW1lJiZUZXh0XFxcIikgKyBcXFwiICAgXFxcIiArIHBkZmgoaXQsIFxcXCIucG9zdC1tZXRhJiZzcGFuJiZUZXh0XFxcIilcXG4gICAgICAgIH1cXG4gICAgfSkpXFxufSBjYXRjaCAoZSkge31cIixcInNlYXJjaF91cmxcIjpcIlwiLFwiZ3JvdXBcIjpcIuKRoOaOqOiNkFwiLFwic2VhcmNoRmluZFwiOlwiXCIsXCJkZXRhaWxfY29sX3R5cGVcIjpcIm1vdmllXzFcIixcImRldGFpbF9maW5kX3J1bGVcIjpcIlwiLFwic2RldGFpbF9jb2xfdHlwZVwiOlwibW92aWVfMVwiLFwic2RldGFpbF9maW5kX3J1bGVcIjpcIlwiLFwidWFcIjpcIm1vYmlsZVwiLFwicHJlUnVsZVwiOlwiXCIsXCJwYWdlc1wiOlwiW3tcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcInBpY1xcXCIsXFxcInBhdGhcXFwiOlxcXCJwaWNcXFwiLFxcXCJydWxlXFxcIjpcXFwianM6XFxcXG52YXIgZCA9IFtdO1xcXFxubGV0IHggPSBnZXRNeVZhcihcXFxcXFxcInhcXFxcXFxcIiwgXFxcXFxcXCLlkKZcXFxcXFxcIik7XFxcXG5sZXQgZGVzYyA9IHggPT0gXFxcXFxcXCLmmK9cXFxcXFxcIiA/IFxcXFxcXFwiZmxvYXQmJjMwMFxcXFxcXFwiIDogXFxcXFxcXCJmbG9hdCYmMVxcXFxcXFwiO1xcXFxuZC5wdXNoKHtcXFxcbiAgICBjb2xfdHlwZTogXFxcXFxcXCJ4NV93ZWJ2aWV3X3NpbmdsZVxcXFxcXFwiLFxcXFxuICAgIHVybDogXFxcXFxcXCJcXFxcXFxcIixcXFxcbiAgICBkZXNjOiBkZXNjLFxcXFxuICAgIHRpdGxlOiBcXFxcXFxcIlxcXFxcXFwiLFxcXFxuICAgIGV4dHJhOiB7XFxcXG4gICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXFxcbiAgICAgICAgICAgIGZ1bmN0aW9uIGdldGltZ3MoKSB7XFxcXG4gICAgICAgICAgICAgICAgdmFyIHZpZGVvRWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcXFxcXFxcImltZ1xcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICBpZiAodmlkZW9FbGVtZW50cyA9PSBudWxsKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXTtcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgbGV0IHVybHMgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZpZGVvRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZpZGVvRWxlbWVudHNbaV0ud2lkdGggPiA3MCAmJiB2aWRlb0VsZW1lbnRzW2ldLmhlaWdodCA+IDcwKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcmMgPSB2aWRlb0VsZW1lbnRzW2ldLnNyYztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzcmMgPT0gbnVsbCB8fCBzcmMubGVuZ3RoIDwgNSB8fCB1cmxzLmluY2x1ZGVzKHNyYykgfHwgc3JjLmluZGV4T2YoXFxcXFxcXCJkYXRhOlxcXFxcXFwiKSA9PSAwKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyhzcmMpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJscy5wdXNoKG5ldyBVUkwoc3JjKS50b1N0cmluZygpKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICByZXR1cm4gdXJscztcXFxcbiAgICAgICAgICAgIH1cXFxcblxcXFxuICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2soKSB7XFxcXG4gICAgICAgICAgICAgICAgdHJ5IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHVybHMgPSBnZXRpbWdzKCk7XFxcXG4gICAgICAgICAgICAgICAgICAgIC8vZmJhLmxvZyhcXFxcXFxcImdldGltZ3PvvJpcXFxcXFxcIiArIHVybHMubGVuZ3RoKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5jaGVja2VkVXJscyA9PSBudWxsKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cuY2hlY2tlZFVybHMgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICBsZXQgY2hlY2tlZFVybHMgPSB3aW5kb3cuY2hlY2tlZFVybHM7XFxcXG4gICAgICAgICAgICAgICAgICAgIHVybHMgPSB1cmxzLmZpbHRlcihpdCA9PiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIWNoZWNrZWRVcmxzLmluY2x1ZGVzKGl0KVxcXFxuICAgICAgICAgICAgICAgICAgICB9KTtcXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICBpZiAodXJscy5sZW5ndGggPiAwKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGljcyA9IHVybHMuZmlsdGVyKGl0ID0+IGl0ICE9IG51bGwgJiYgaXQgIT0gXFxcXFxcXCJcXFxcXFxcIilcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKGl0ID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHUgPSBmYmEuZ2V0SGVhZGVyVXJsKGl0KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHV1ID0gdS5zcGxpdChcXFxcXFxcIjtcXFxcXFxcIik7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBwaWMgPSB1O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodXUubGVuZ3RoID4gMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHUxID0gdXVbMF07XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdTIgPSB1dVsxXS5zbGljZSgxLCAtMSkuc3BsaXQoXFxcXFxcXCImJlxcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZWZlcmVyID0gbnVsbDtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB1YSA9IG51bGw7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgY29va2llMCA9IG51bGw7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpaSBvZiB1Mikge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpdDIgPSBpaS5zcGxpdChcXFxcXFxcIkBcXFxcXFxcIik7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0MlswXSA9PSBcXFxcXFxcIlJlZmVyZXJcXFxcXFxcIikge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZlcmVyID0gaXQyWzFdLnJlcGxhY2UoL++8m++8my9nLCBcXFxcXFxcIjtcXFxcXFxcIik7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdDJbMF0gPT0gXFxcXFxcXCJVc2VyLUFnZW50XFxcXFxcXCIpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWEgPSBpdDJbMV0ucmVwbGFjZSgv77yb77ybL2csIFxcXFxcXFwiO1xcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0MlswXSA9PSBcXFxcXFxcIkNvb2tpZVxcXFxcXFwiKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvb2tpZTAgPSBpdDJbMV0ucmVwbGFjZSgv77yb77ybL2csIFxcXFxcXFwiO1xcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWMgPSB1MTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZWZlcmVyKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljID0gcGljICsgXFxcXFxcXCJAUmVmZXJlcj1cXFxcXFxcIiArIHJlZmVyZXI7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodWEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWMgPSBwaWMgKyBcXFxcXFxcIkBVc2VyLUFnZW50PVxcXFxcXFwiICsgdWE7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29va2llMCkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYyA9IHBpYyArIFxcXFxcXFwiQENvb2tpZT1cXFxcXFxcIiArIGNvb2tpZTBcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljID0gaXQ7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzogcGljLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZiYS5sb2cocGljcy5sZW5ndGggKyBcXFxcXFxcIlxcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZiYS5wYXJzZUxhenlSdWxlQXN5bmMoJCQkKCkubGF6eVJ1bGUoKHVybHMpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyh1cmxzKTtcXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhcnIgPSB1cmxzLm1hcChpdCA9PiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogXFxcXFxcXCJcXFxcXFxcIixcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogaXQucGljLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogaXQucGljLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXFxcXFwiY2FyZF9waWNfM1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmE6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbHM6IFxcXFxcXFwicGljc1xcXFxcXFwiXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRJdGVtQmVmb3JlKFxcXFxcXFwicGljX2xpbmVcXFxcXFxcIiwgYXJyKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHBpY3MpLCBmdW5jdGlvbigpIHtcXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpdCBvZiB1cmxzKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmNoZWNrZWRVcmxzLnB1c2goaXQpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICB9XFxcXG5cXFxcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIGZiYS5sb2coZS50b1N0cmluZygpKTtcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChjaGVjaywgMzAwKTtcXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgIGNoZWNrKCk7XFxcXG4gICAgICAgIH0pXFxcXG4gICAgfVxcXFxufSk7XFxcXG5cXFxcblxcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogXFxcXFxcXCLmj5Dlj5ZcXFxcXFxcIixcXFxcbiAgICB1cmw6ICQudG9TdHJpbmcoKCkgPT4ge1xcXFxuICAgICAgICBwdXRNeVZhcihcXFxcXFxcImlcXFxcXFxcIiwgaW5wdXQpO1xcXFxuICAgICAgICBkZWxldGVJdGVtQnlDbHMoXFxcXFxcXCJwaWNzXFxcXFxcXCIpO1xcXFxuICAgICAgICByZWZyZXNoWDVXZWJWaWV3KGlucHV0KTtcXFxcbiAgICB9KSxcXFxcbiAgICBjb2xfdHlwZTogXFxcXFxcXCJpbnB1dFxcXFxcXFwiLFxcXFxuICAgIGRlc2M6IFxcXFxcXFwi6K+36L6T5YWl572R6aG15Zyw5Z2AXFxcXFxcXCIsXFxcXG4gICAgcGljX3VybDogXFxcXFxcXCJcXFxcXFxcIixcXFxcbiAgICBleHRyYToge1xcXFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGdldE15VmFyKFxcXFxcXFwiaVxcXFxcXFwiLCBcXFxcXFxcIlxcXFxcXFwiKVxcXFxuICAgIH1cXFxcbn0pO1xcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogXFxcXFxcXCLmmL7npLrnvZHpobXnu4Tku7bvvJpcXFxcXFxcIiArIHgsXFxcXG4gICAgdXJsOiAkKFxcXFxcXFwiI25vTG9hZGluZyNcXFxcXFxcIikubGF6eVJ1bGUoKCkgPT4ge1xcXFxuICAgICAgICBsZXQgeCA9IGdldE15VmFyKFxcXFxcXFwieFxcXFxcXFwiLCBcXFxcXFxcIuWQplxcXFxcXFwiKTtcXFxcbiAgICAgICAgbGV0IG5leHQgPSB4ID09IFxcXFxcXFwi5ZCmXFxcXFxcXCIgPyBcXFxcXFxcIuaYr1xcXFxcXFwiIDogXFxcXFxcXCLlkKZcXFxcXFxcIjtcXFxcbiAgICAgICAgcHV0TXlWYXIoXFxcXFxcXCJ4XFxcXFxcXCIsIG5leHQpO1xcXFxuICAgICAgICBsZXQgZGVzYyA9IHggPT0gXFxcXFxcXCLlkKZcXFxcXFxcIiA/IFxcXFxcXFwiZmxvYXQmJjMwMFxcXFxcXFwiIDogXFxcXFxcXCJmbG9hdCYmMVxcXFxcXFwiO1xcXFxuICAgICAgICB1cGRhdGVJdGVtKFxcXFxcXFwicGljX3RpcFxcXFxcXFwiLCB7XFxcXG4gICAgICAgICAgICB0aXRsZTogXFxcXFxcXCLmmL7npLrnvZHpobXnu4Tku7bvvJpcXFxcXFxcIiArIG5leHRcXFxcbiAgICAgICAgfSk7XFxcXG4gICAgICAgIHJlZnJlc2hYNURlc2MoZGVzYyk7XFxcXG4gICAgICAgIHJldHVybiBcXFxcXFxcImhpa2VyOi8vZW1wdHlcXFxcXFxcIlxcXFxuICAgIH0pLFxcXFxuICAgIGNvbF90eXBlOiBcXFxcXFxcInRleHRfMVxcXFxcXFwiLFxcXFxuICAgIGRlc2M6IFxcXFxcXFwiXFxcXFxcXCIsXFxcXG4gICAgcGljX3VybDogXFxcXFxcXCJcXFxcXFxcIixcXFxcbiAgICBleHRyYToge1xcXFxuICAgICAgICBpZDogXFxcXFxcXCJwaWNfdGlwXFxcXFxcXCJcXFxcbiAgICB9XFxcXG59KTtcXFxcblxcXFxuZC5wdXNoKHtcXFxcbiAgICBjb2xfdHlwZTogXFxcXFxcXCJsaW5lX2JsYW5rXFxcXFxcXCIsXFxcXG4gICAgZXh0cmE6IHtcXFxcbiAgICAgICAgaWQ6IFxcXFxcXFwicGljX2xpbmVcXFxcXFxcIlxcXFxuICAgIH1cXFxcbn0pO1xcXFxuXFxcXG5zZXRSZXN1bHQoZCk7XFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcInRleHRfMVxcXCIsXFxcIm5hbWVcXFwiOlxcXCJlcHViXFxcIixcXFwicGF0aFxcXCI6XFxcImVwdWJcXFwiLFxcXCJydWxlXFxcIjpcXFwianM6XFxcXG52YXIgZCA9IFtdO1xcXFxubGV0IHBhdGggPSBiYXNlNjREZWNvZGUoZ2V0UGFyYW0oXFxcXFxcXCJwXFxcXFxcXCIpKTtcXFxcbmxvZyhwYXRoKTtcXFxcbmxldCBtZXRhID0gZ2V0RXB1Yk1ldGFkYXRhKHBhdGgpO1xcXFxuLy9zZXRQYWdlVGl0bGUobWV0YS5maXJzdFRpdGxlKTtcXFxcbmxldCBjaGFwdGVycyA9IGdldEVwdWJDaGFwdGVycyhwYXRoKTtcXFxcbi8vbG9nKGNoYXB0ZXJzKTtcXFxcbmZvciAobGV0IGl0IG9mIGNoYXB0ZXJzKSB7XFxcXG4gICAgZC5wdXNoKHtcXFxcbiAgICAgICAgdGl0bGU6IGl0LnRpdGxlLFxcXFxuICAgICAgICB1cmw6IFxcXFxcXFwiaGlrZXI6Ly9wYWdlL2NvbnRlbnQjcmVhZFRoZW1lIyNhdXRvUGFnZSNcXFxcXFxcIixcXFxcbiAgICAgICAgZXh0cmE6IHtcXFxcbiAgICAgICAgICAgIGhyZWY6IGl0LnVybCxcXFxcbiAgICAgICAgICAgIHBhdGg6IHBhdGhcXFxcbiAgICAgICAgfVxcXFxuICAgIH0pO1xcXFxufVxcXFxuc2V0UmVzdWx0KGQpO1xcXFxuXFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcInJpY2hfdGV4dFxcXCIsXFxcIm5hbWVcXFwiOlxcXCLmraPmlodcXFwiLFxcXCJwYXRoXFxcIjpcXFwiY29udGVudFxcXCIsXFxcInJ1bGVcXFwiOlxcXCJqczpcXFxcbnZhciBkID0gW107XFxcXG5sZXQgcGF0aCA9IE1ZX1BBUkFNUy5wYXRoO1xcXFxubGV0IHVybCA9IE1ZX1BBUkFNUy5ocmVmO1xcXFxubGV0IGMgPSBnZXRFcHViQ29udGVudChwYXRoLCB1cmwpO1xcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogYyxcXFxcbiAgICB1cmw6IFxcXFxcXFwiXFxcXFxcXCIsXFxcXG59KTtcXFxcbnNldFJlc3VsdChkKTtcXFwifV1cIixcImljb25cIjpcIlwiLFwicHJveHlcIjpcIlwifSIsInRpdGxlIjoi5aWH5aaZ5bel5YW3566xIn0=
Add Comment
Please, Sign In to add comment