Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@91制片厂@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoiOTHliLbniYfljoIiLCJhdXRob3IiOiLmtYHoi48iLCJ1cmwiOiJoaWtlcjovL2VtcHR5IyN7XCJfaGFzaFwiOlwiMTcyOTk0ODEyMlwiLFwiYnVuZGxlSWRcIjpcImNvbS5wd2EuenBjcGpcIixcInNvcnRcIjpcImZ5YXJlYVwiLFwibGltaXRcIjpcIjE2XCIsXCJvYXV0aF90eXBlXCI6XCJ3ZWJcIixcIm9hdXRoX2lkXCI6XCI2ZDNjYmJlNjY2NWMwOGVmNGU3ZmU1NGJlYTI3OGJjMVwiLFwibGFuZ3VhZ2VcIjpcInpoXCIsXCJpZFwiOlwiZnljbGFzc1wiLFwicGFnZVwiOlwiZnlwYWdlXCIsXCJ2ZXJzaW9uXCI6XCIxLjcuMFwiLFwidmlhXCI6XCJwd2FcIixcInRva2VuXCI6XCJcIn0iLCJ2ZXJzaW9uIjozLCJjb2xfdHlwZSI6Im1vdmllXzIiLCJjbGFzc19uYW1lIjoi54Ot6Zeo5o6o6I2QJuWNjuivreWOn+WImyblrrbluq3kubEg5LymJuWbveS6p+eyvumAiSbnvZHpu4TlpbPnpZ4m5pel6Z+p5qyn576OJuWKqOa8q+WkqeWggibliLbmnI3mnIDniLEiLCJ0eXBlIjoidmlkZW8iLCJjbGFzc191cmwiOiIxJjE1NSY2OSYxNTYmMTY4JjE1NyYxNTgmNzUiLCJhcmVhX25hbWUiOiLmnIDng60m5pyA5pawIiwiYXJlYV91cmwiOiJob3QmbmV3Iiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoiIiwic29ydF91cmwiOiIiLCJ5ZWFyX3VybCI6IiIsImZpbmRfcnVsZSI6ImpzOiBcbnZhciBkID0gW107XG5cbmlmIChNWV9QQUdFID09IDEpIHtcbiAgICBkLnB1c2goe8KgwqDCoFxuICAgICAgICB0aXRsZTogXCLmkJzntKJcIixcbiAgICAgICAgwqDCoMKgdXJsOiBcIidoaWtlcjovL3NlYXJjaD9zPScraW5wdXQrJyZydWxlPScrIE1ZX1JVTEUudGl0bGVcIixcbiAgICAgICAgwqDCoMKgZGVzYzogXCLor7fovpPlhaXmkJzntKLlhbPplK7or40o5Yu/6aKR57mB5pCc57SiKVwiLFxuICAgICAgICDCoMKgwqBjb2xfdHlwZTogXCJpbnB1dFwiLFxuICAgIH0pXG59O1xuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS9hZXMnKSkucnVsZSk7XG5cbi8v55Sf5oiQ5pe26Ze05oizXG5mdW5jdGlvbiBnZXRDdXJyZW50VGltZXN0YW1wKCkge1xuICAgIHJldHVybiBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbn1cbi8vbWQ15Yqg5a+GXG5mdW5jdGlvbiBtZDUoc3RyKSB7XG4gICAgcmV0dXJuIENyeXB0b0pTLk1ENShzdHIpLnRvU3RyaW5nKCk7XG59XG4vL3NoYTI1NuWKoOWvhlxuZnVuY3Rpb24gc2hhMjU2KHN0cikge1xuICAgIHJldHVybiBDcnlwdG9KUy5TSEEyNTYoc3RyKS50b1N0cmluZygpO1xufVxudmFyIHQgPSBNYXRoLmZsb29yKERhdGUubm93KCkgLyAxMDAwKTsgLy9sb2codClcbi8vdmFyIHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMDsgLy9sb2codGltZXN0YW1wKVxuLy92YXIgdCA9IHRpbWVzdGFtcC50b1N0cmluZygpLnNwbGl0KCcuJylbMF07IC8vbG9nKHQpXG4vL3ZhciBkYXRhMSA9IE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovL2VtcHR5IyMnLCAnJyk7IC8vbG9nKGRhdGExKVxudmFyIGRhdGEgPSBFbmNyeXB0KE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovL2VtcHR5IyMnLCAnJykpOyBcbi8vbG9nKGRhdGEpXG52YXIgc2lnbiA9IG1kNShzaGEyNTYoJ2NsaWVudD1wd2EmZGF0YT0nK2RhdGErJyZ0aW1lc3RhbXA9Jyt0Kyc1NTg5ZDQxZjkyYTU5N2QwMTZiMDM3YWMzN2RiMjQzZCcpKTsgLy9sb2coc2lnbilcbnZhciBib2R5ID0gJ2RhdGE9JytkYXRhKycmc2lnbj0nK3NpZ24rJyZjbGllbnQ9cHdhJnRpbWVzdGFtcD0nK3Q7IFxuLy9sb2coYm9keSlcbnZhciB1cmwgPSAnaHR0cHM6Ly9hcGkyLnBpaWZ2bHkuY29tL2FwaS5waHAvYXBpL212L2xpc3RfY29uc3RydWN0JztcbnZhciBodG1sID0gZmV0Y2godXJsLCB7XG4gICAgaGVhZGVyczoge1xuICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xuICAgIH0sXG4gICAgYm9keTogYm9keSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xufSk7IFxuLy9sb2coaHRtbClcblxubGV0IGh0bWwxID0gSlNPTi5wYXJzZShodG1sKS5kYXRhOyBcbi8vbG9nKGh0bWwxKVxubGV0IGh0bWwyID0gRGVjcnlwdChodG1sMSk7IFxuLy9sb2coaHRtbDIpXG5cbnZhciBMYWJlbGIgPSBKU09OLnBhcnNlKGh0bWwyKS5kYXRhLm5hdjtcbi8vbG9nKExhYmVsYilcblxuaWYoTGFiZWxiIT1udWxsKXtcblxubGV0IGFyZWE9IE1ZX0FSRUFfVVJMXG5MYWJlbGIuZm9yRWFjaCgoZGF0YSkgPT4ge1xuICBpZihkYXRhLmNsaWNrZWQ9PW51bGwpe1xyXG4gICAgICAgICAgICBkLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IGRhdGEubmFtZSxcclxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcImljb25fMl9yb3VuZFwiLFxuICAgICAgICAgICAgICAgIHVybCA6ICAnaGlrZXI6Ly9lbXB0eSMjZnlwYWdlIyMnK2RhdGEubGlua191cmwrJ0BydWxlPWpzOiQucmVxdWlyZShcImhpa2VyOi8vcGFnZS9lcmppXCIpJyxcbn0pXG59XG59KVxuXG59O1xudmFyIGxpc3QgPSBKU09OLnBhcnNlKGh0bWwyKS5kYXRhLmxpc3Q7XG4vL2xvZyhsaXN0KTtcblxuaWYobGlzdCE9bnVsbCl7XG5saXN0LmZvckVhY2goZGF0YSA9PiB7XG4gIGlmKGRhdGEuY2xpY2tlZD09bnVsbCl7XG4gICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICB0aXRsZTogZGF0YS50aXRsZSxcbiAgICAgICAgICAgIGRlc2M6ICBkYXRhLmNyZWF0ZWRfYXQrJ1xcdFxcdFxcdFxcdCcrcGFyc2VJbnQoZGF0YS5kdXJhdGlvbi82MCkrJzonK3BhcnNlSW50KGRhdGEuZHVyYXRpb24lNjApLFxuICAgICAgICAgICBpbWc6IGRhdGEuY292ZXJfaG9yaXpvbnRhbCArIGxhenksXG4gICAgICAgICAgICB1cmw6IGRhdGEuaWQgKyBsYXp5MVxuICAgICAgICB9KVxufVxuICAgIH0pXG59XG5zZXRSZXN1bHQoZCkiLCJzZWFyY2hfdXJsIjoiaGlrZXI6Ly9lbXB0eSMje1wiX2hhc2hcIjpcIjE3Mjk5NDkzMTRcIixcImJ1bmRsZUlkXCI6XCJjb20ucHdhLnpwY3BqXCIsXCJsaW1pdFwiOlwiMThcIixcIm9hdXRoX3R5cGVcIjpcIndlYlwiLFwib2F1dGhfaWRcIjpcImMyMDE0YmRhOTdjZmY0NWRlNTRiMWFiNDllMjI3ZjEzXCIsXCJsYW5ndWFnZVwiOlwiemhcIixcInBhZ2VcIjpcIjFcIixcInR5cGVcIjpcIjFcIixcInZlcnNpb25cIjpcIjEuNy4wXCIsXCJ3b3JkXCI6XCJjb3NcIixcInZpYVwiOlwicHdhXCIsXCJ0b2tlblwiOlwiXCJ9IiwiZ3JvdXAiOiJHSFMiLCJzZWFyY2hGaW5kIjoianM6IFxudmFyIGQgPSBbXTtcblxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS9hZXMnKSkucnVsZSk7XG5cbi8v55Sf5oiQ6ZqP5py6dXVpZFxuZnVuY3Rpb24gZ2VuZXJhdGVVVUlEKCkge1xuICAgIHJldHVybiAneHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Jy5yZXBsYWNlKC9beHldL2csIGZ1bmN0aW9uKGMpIHtcbiAgICAgICAgdmFyIHIgPSBNYXRoLnJhbmRvbSgpICogMTYgfCAwO1xuICAgICAgICB2YXIgdiA9IGMgPT09ICd4JyA/IHIgOiAociAmIDB4MyB8IDB4OCk7XG4gICAgICAgIHJldHVybiB2LnRvU3RyaW5nKDE2KTtcbiAgICB9KTtcbn1cbi8v55Sf5oiQ5pe26Ze05oizXG5mdW5jdGlvbiBnZXRDdXJyZW50VGltZXN0YW1wKCkge1xuICAgIHJldHVybiBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbn1cbi8vbWQ15Yqg5a+GXG5mdW5jdGlvbiBtZDUoc3RyKSB7XG4gICAgcmV0dXJuIENyeXB0b0pTLk1ENShzdHIpLnRvU3RyaW5nKCk7XG59XG4vL3NoYTI1NuWKoOWvhlxuZnVuY3Rpb24gc2hhMjU2KHN0cikge1xuICAgIHJldHVybiBDcnlwdG9KUy5TSEEyNTYoc3RyKS50b1N0cmluZygpO1xufVxudmFyIHQgPSBNYXRoLmZsb29yKERhdGUubm93KCkgLyAxMDAwKTsgLy9sb2codClcbi8vdmFyIHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMDsgLy9sb2codGltZXN0YW1wKVxuLy92YXIgdCA9IHRpbWVzdGFtcC50b1N0cmluZygpLnNwbGl0KCcuJylbMF07IC8vbG9nKHQpXG4vL3ZhciBkYXRhMSA9IE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovL2VtcHR5IyMnLCAnJyk7IC8vbG9nKGRhdGExKVxudmFyIGRhdGEgPSBFbmNyeXB0KE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovL2VtcHR5IyMnLCAnJykpOyBcbi8vbG9nKGRhdGEpXG52YXIgc2lnbiA9IG1kNShzaGEyNTYoJ2NsaWVudD1wd2EmZGF0YT0nK2RhdGErJyZ0aW1lc3RhbXA9Jyt0Kyc1NTg5ZDQxZjkyYTU5N2QwMTZiMDM3YWMzN2RiMjQzZCcpKTsgLy9sb2coc2lnbilcbnZhciBib2R5ID0gJ2RhdGE9JytkYXRhKycmc2lnbj0nK3NpZ24rJyZjbGllbnQ9cHdhJnRpbWVzdGFtcD0nK3Q7IFxuLy9sb2coYm9keSlcbnZhciB1cmwgPSAnaHR0cHM6Ly9hcGkyLnBpaWZ2bHkuY29tL2FwaS5waHAvYXBpL212L3NlYXJjaCc7XG52YXIgaHRtbCA9IGZldGNoKHVybCwge1xuICAgIGhlYWRlcnM6IHtcbiAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcbiAgICB9LFxuICAgIGJvZHk6IGJvZHksXG4gICAgbWV0aG9kOiAnUE9TVCdcbn0pOyBcbi8vbG9nKGh0bWwpXG5cbmxldCBodG1sMSA9IEpTT04ucGFyc2UoaHRtbCkuZGF0YTsgXG4vL2xvZyhodG1sMSlcbmxldCBodG1sMiA9IERlY3J5cHQoaHRtbDEpOyBcbmxvZyhodG1sMilcblxudmFyIGxpc3QgPSBKU09OLnBhcnNlKGh0bWwyKS5kYXRhO1xuLy9sb2cobGlzdCk7XG5pZihsaXN0IT1udWxsKXtcbmxpc3QuZm9yRWFjaChkYXRhID0+IHtcbiAgaWYoZGF0YS5jbGlja2VkPT1udWxsKXtcbiAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgIHRpdGxlOiBkYXRhLnRpdGxlLFxuICAgICAgICAgICAgZGVzYzogIGRhdGEuY3JlYXRlZF9hdCsnXFx0XFx0XFx0XFx0JytwYXJzZUludChkYXRhLmR1cmF0aW9uLzYwKSsnOicrcGFyc2VJbnQoZGF0YS5kdXJhdGlvbiU2MCksXG4gICAgICAgICAgIGltZzogZGF0YS5jb3Zlcl9ob3Jpem9udGFsICsgbGF6eSxcbiAgICAgICAgICAgIHVybDogZGF0YS5pZCArIGxhenkxXG4gICAgICAgIH0pXG59ZWxzZXtcbnJldHVybiAndG9hc3Q6Ly/kuKTmrKHmkJzntKLpl7TpmpTkuI3og73lsI/kuo4156eSJ1xufVxuICAgIH0pXG59XG5zZXRSZXN1bHQoZCkiLCJkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8yIiwiZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInNkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwic2RldGFpbF9maW5kX3J1bGUiOiIqIiwidWEiOiJtb2JpbGUiLCJwcmVSdWxlIjoiIiwicGFnZXMiOiJbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcImFlc1wiLFwicGF0aFwiOlwiYWVzXCIsXCJydWxlXCI6XCIvL+WKoOi9vUNyeXB0b0pT5bqTXFxuZXZhbChnZXRDcnlwdG9KUygpKVxcblxcbi8vIOino+WvhuWHveaVsFxcbmZ1bmN0aW9uIERlY3J5cHQod29yZCkge1xcbiAgICBjb25zdCBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcXFwiMmFjZjdlOTFlOTg2NDY3M1xcXCIpO1xcbiAgICBjb25zdCBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKFxcXCIxYzI5ODgyZDNkZGZjZmQ2XFxcIik7XFxuICAgIGxldCBlbmNyeXB0ZWRIZXhTdHIgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnBhcnNlKHdvcmQpO1xcbiAgICBsZXQgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHtcXG4gICAgICAgIGNpcGhlcnRleHQ6IGVuY3J5cHRlZEhleFN0clxcbiAgICB9LCBrZXksIHtcXG4gICAgICAgIGl2OiBpdixcXG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLFxcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3IC8vIOazqOaEj+i/memHjOW6lOivpeaYr0NyeXB0b0pTLnBhZC5Ob1BhZGRpbmdcXG4gICAgfSk7XFxuICAgIGlmIChkZWNyeXB0KSB7XFxuICAgICAgICBsZXQgZGVjcnlwdGVkU3RyID0gZGVjcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XFxuICAgICAgICByZXR1cm4gZGVjcnlwdGVkU3RyO1xcbiAgICB9IGVsc2Uge1xcbiAgICAgICAgLy8g6Kej5a+G5aSx6LSl77yM6L+U5ZuebnVsbOaIlumUmeivr+S/oeaBr1xcbiAgICAgICAgcmV0dXJuIG51bGw7XFxuICAgIH1cXG59XFxuXFxuLy8g5Yqg5a+G5Ye95pWwXFxuZnVuY3Rpb24gRW5jcnlwdChwbGFpbnRleHQpIHtcXG4gICAgY29uc3Qga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoXFxcIjJhY2Y3ZTkxZTk4NjQ2NzNcXFwiKTtcXG4gICAgY29uc3QgaXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcXFwiMWMyOTg4MmQzZGRmY2ZkNlxcXCIpO1xcbiAgICB2YXIgZW5jcnlwdGVkID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQocGxhaW50ZXh0LCBrZXksIHtcXG4gICAgICAgIGl2OiBpdixcXG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLFxcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3IC8vIOazqOaEj+i/memHjOW6lOivpeaYr0NyeXB0b0pTLnBhZC5Ob1BhZGRpbmdcXG4gICAgfSk7XFxuICAgIHZhciBjaXBoZXJ0ZXh0ID0gZW5jcnlwdGVkLmNpcGhlcnRleHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLkJhc2U2NCk7XFxuICAgIHJldHVybiBjaXBoZXJ0ZXh0O1xcbn1cXG5cXG5cXG5cXG52YXIgbGF6eSA9ICQoJycpLmltYWdlKCgpID0+IHtcXG5jb25zdCBDcnlwdG9VdGlsID0gJC5yZXF1aXJlKFxcXCJoaWtlcjovL2Fzc2V0cy9jcnlwdG8tamF2YS5qc1xcXCIpO1xcblxcdGxldCBrZXkgPSBDcnlwdG9VdGlsLkRhdGEucGFyc2VVVEY4KFxcXCJmNWQ5NjVkZjc1MzM2MjcwXFxcIik7XFxuXFx0bGV0IGl2ID0gQ3J5cHRvVXRpbC5EYXRhLnBhcnNlVVRGOChcXFwiOTdiNjAzOTRhYmMyZmJlMVxcXCIpO1xcblxcdGxldCB0ZXh0RGF0YSA9IENyeXB0b1V0aWwuRGF0YS5wYXJzZUlucHV0U3RyZWFtKGlucHV0KTtcXG5cXHRsZXQgZW5jcnlwdGVkID0gQ3J5cHRvVXRpbC5BRVMuZGVjcnlwdCh0ZXh0RGF0YSwga2V5LCB7XFxuICBcXHRtb2RlOiBcXFwiQUVTL0NCQy9QS0NTN1BhZGRpbmdcXFwiLFxcblxcdFxcdGl2OiBpdlxcblxcdH0pO1xcblxcdHJldHVybiBlbmNyeXB0ZWQudG9JbnB1dFN0cmVhbSgpO1xcbn0pXFxuXFxudmFyIGxhenkxID0gJCgnJykubGF6eVJ1bGUoKCkgPT4ge1xcbi8vbWQ15Yqg5a+GXFxuZnVuY3Rpb24gbWQ1KHN0cikge1xcbiAgICByZXR1cm4gQ3J5cHRvSlMuTUQ1KHN0cikudG9TdHJpbmcoKTtcXG59XFxuLy9zaGEyNTbliqDlr4ZcXG5mdW5jdGlvbiBzaGEyNTYoc3RyKSB7XFxuICAgIHJldHVybiBDcnlwdG9KUy5TSEEyNTYoc3RyKS50b1N0cmluZygpO1xcbn1cXG5sZXQgdCA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSkudG9TdHJpbmcoKTtcXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL2FlcycpKS5ydWxlKTtcXG5sZXQgZGF0YTA9J3tcXFwiX2hhc2hcXFwiOlxcXCIxNzI5OTQ5MDI1XFxcIixcXFwiYnVuZGxlSWRcXFwiOlxcXCJjb20ucHdhLnpwY3BqXFxcIixcXFwib2F1dGhfdHlwZVxcXCI6XFxcIndlYlxcXCIsXFxcIm9hdXRoX2lkXFxcIjpcXFwiMTA1OTg2ZWJhMGZjYTRhNGY0MzZmYmUxNzk4MTVhMGRcXFwiLFxcXCJsYW5ndWFnZVxcXCI6XFxcInpoXFxcIixcXFwiaWRcXFwiOlxcXCInK2lucHV0KydcXFwiLFxcXCJ2ZXJzaW9uXFxcIjpcXFwiMS43LjBcXFwiLFxcXCJ2aWFcXFwiOlxcXCJwd2FcXFwiLFxcXCJ0b2tlblxcXCI6XFxcIlxcXCJ9J1xcbnZhciBkYXRhID0gRW5jcnlwdChkYXRhMCk7IFxcbi8vbG9nKGRhdGEpXFxudmFyIHNpZ24gPSBtZDUoc2hhMjU2KCdjbGllbnQ9cHdhJmRhdGE9JytkYXRhKycmdGltZXN0YW1wPScrdCsnNTU4OWQ0MWY5MmE1OTdkMDE2YjAzN2FjMzdkYjI0M2QnKSk7IC8vbG9nKHNpZ24pXFxudmFyIGJvZHkgPSAnZGF0YT0nK2RhdGErJyZzaWduPScrc2lnbisnJmNsaWVudD1wd2EmdGltZXN0YW1wPScrdDsgXFxuLy9sb2coYm9keSlcXG52YXIgdXJsMSA9ICdodHRwczovL2FwaTIucGlpZnZseS5jb20vYXBpLnBocC9hcGkvbXYvZ2V0RGV0YWlsJztcXG52YXIgdXJsMiA9IGZldGNoKHVybDEsIHtcXG4gICAgaGVhZGVyczoge1xcbiAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcXG4gICAgfSxcXG4gICAgYm9keTogYm9keSxcXG4gICAgbWV0aG9kOiAnUE9TVCdcXG59KTsgXFxuXFxubGV0IHVybDMgPSBKU09OLnBhcnNlKHVybDIpLmRhdGE7IFxcbmxldCB1cmw0ID0gRGVjcnlwdCh1cmwzKTsgXFxubGV0IHVybDU9SlNPTi5wYXJzZSh1cmw0KS5kYXRhLmRldGFpbC5wcmV2aWV3X3VybC5yZXBsYWNlKC9cXFxcL1xcXFwvLipwbGF5XFxcXC4vLCcvL2xvbmcuJyk7XFxucmV0dXJuIHVybDVcXG59KVxcbmZ1bmN0aW9uIHN0cm9uZyhkLCBjKSB7XFxuICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHN0cm9uZz48Zm9udCBjb2xvcj0jJyArIChjIHx8ICcwMDAwMDAnKSArICc+JyArIGQgKyAnPC9mb250Pjwvc3Ryb25nPic7XFxufVxcbmZ1bmN0aW9uIENhdGVnb3J5KGxpc3QsIG1vZGUsIGQpIHtcXG4gICAgZm9yICh2YXIgaSBpbiBsaXN0KSB7XFxuICAgICAgICB2YXIgTGlzdCA9IGxpc3RbaV07XFxuICAgICAgICB2YXIgdGl0bGUgPSBMaXN0LnRpdGxlO1xcbiAgICAgICAgdmFyIFRpdGxlID0gKGdldE15VmFyKCdjb2xvcicsICctMScpID09IGkpID8gc3Ryb25nKHRpdGxlLCAnRkY2Njk5JykgOiB0aXRsZTtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IFRpdGxlLFxcbiAgICAgICAgICAgIHVybDogJChMaXN0LnR5cGUpLmxhenlSdWxlKChpLCBtb2RlLCBMaXN0KSA9PiB7XFxuICAgICAgICAgICAgICAgIGlmIChtb2RlID09IDApIHtcXG4gICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCd0eXBlJywgaW5wdXQpO1xcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG1vZGUgPT0gMSkge1xcbiAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3R5cGVTJywgaW5wdXQpO1xcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG1vZGUgPT0gMikge1xcbiAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3R5cGVTUycsIGlucHV0KTtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcignY29sb3InLCBpKTtcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5JztcXG4gICAgICAgICAgICB9LCBpLCBtb2RlLCBMaXN0KSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2ZsZXhfYnV0dG9uJ1xcbiAgICAgICAgfSk7XFxuICAgIH1cXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snLFxcbiAgICB9KTtcXG4gICAgcmV0dXJuIGQ7XFxufVxcbiQuZXhwb3J0cy5DYXRlZ29yeSA9IENhdGVnb3J5O1wifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi5pe26Ze05oiz6L2s5o2iXCIsXCJwYXRoXCI6XCLml7bpl7TmiLPovazmjaJcIixcInJ1bGVcIjpcImZ1bmN0aW9uIHRpbWVzdGFtcFRvVGltZSh0bSwgdHMpIHtcXG5cXHRcXHR1bmRlZmluZWRcXG5cXHRcXHR2YXIgZGF0ZSA9IG5ldyBEYXRlKHRtICogMTAwMCk7IC8v5pe26Ze05oiz5Li6MTDkvY3pnIAqMTAwMO+8jOaXtumXtOaIs+S4ujEz5L2N55qE6K+d5LiN6ZyA5LmYMTAwMFxcblxcdFxcdHZhciBZID0gZGF0ZS5nZXRGdWxsWWVhcigpICsgJy0nO1xcblxcdFxcdHZhciBNID0gKGRhdGUuZ2V0TW9udGgoKSArIDEgPCAxMCA/ICcwJyArIChkYXRlLmdldE1vbnRoKCkgKyAxKSA6IGRhdGUuZ2V0TW9udGgoKSArIDEpICsgJy0nO1xcblxcdFxcdHZhciBEID0gZGF0ZS5nZXREYXRlKCk7XFxuXFx0XFx0dmFyIGggPSAnIHwgJyArIGRhdGUuZ2V0SG91cnMoKSArICc6JztcXG5cXHRcXHR2YXIgbSA9IGRhdGUuZ2V0TWludXRlcygpO1xcblxcdFxcdGlmKG08MTApIG0gPSAnMCcrbTtcXG5cXHRcXHRtID0gbSArICc6J1xcblxcdFxcdHZhciBzID0gZGF0ZS5nZXRTZWNvbmRzKCk7XFxuXFx0XFx0aWYoczwxMCkgcyA9ICcwJytzO1xcblxcdFxcdGlmICh0cyA9PSAwKSByZXR1cm4gWSArIE0gKyBEO1xcblxcdFxcdGlmICh0cyA9PSAxKSByZXR1cm4gWSArIE0gKyBEICsgaCArIG0gKyBzO1xcblxcdH1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS6jOe6p1wiLFwicGF0aFwiOlwiZXJqaVwiLFwicnVsZVwiOlwianM6IFxcbnZhciBkID0gW107XFxuXFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS9hZXMnKSkucnVsZSk7XFxuXFxuLy/nlJ/miJDml7bpl7TmiLNcXG5mdW5jdGlvbiBnZXRDdXJyZW50VGltZXN0YW1wKCkge1xcbiAgICByZXR1cm4gbmV3IERhdGUoKS5nZXRUaW1lKCk7XFxufVxcbi8vbWQ15Yqg5a+GXFxuZnVuY3Rpb24gbWQ1KHN0cikge1xcbiAgICByZXR1cm4gQ3J5cHRvSlMuTUQ1KHN0cikudG9TdHJpbmcoKTtcXG59XFxuLy9zaGEyNTbliqDlr4ZcXG5mdW5jdGlvbiBzaGEyNTYoc3RyKSB7XFxuICAgIHJldHVybiBDcnlwdG9KUy5TSEEyNTYoc3RyKS50b1N0cmluZygpO1xcbn1cXG5cXG52YXIgdCA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApOyAvL2xvZyh0KVxcbmxldCBpZD1NWV9VUkwuc3BsaXQoJyMjJylbMl07XFxubGV0IHA9TVlfVVJMLnNwbGl0KCcjIycpWzFdO1xcblxcbnZhciB0eXBlbGlzdCA9IFt7XFxuICAgIHRpdGxlOiAn5pyA5pawJyxcXG4gICAgdHlwZTogJ25ldydcXG59LCB7XFxuICAgIHRpdGxlOiAn5pyA54OtJyxcXG4gICAgdHlwZTogJ2hvdCdcXG59XTtcXG5pZiAoTVlfUEFHRSA9PSAxKSB7XFxuICAgICQucmVxdWlyZShcXFwiYWVzXFxcIikuQ2F0ZWdvcnkodHlwZWxpc3QsMCxkKTtcXG59XFxuXFxubGV0IGRhdGEwPSd7XFxcImlkXFxcIjpcXFwiJytpZCsnXFxcIixcXFwibGltaXRcXFwiOlxcXCIzMFxcXCIsXFxcInBhZ2VcXFwiOlxcXCInK3ArJ1xcXCIsXFxcInNvcnRcXFwiOlxcXCInK2dldE15VmFyKCd0eXBlJywgJ25ldycpKydcXFwiLFxcXCJvYXV0aF9pZFxcXCI6XFxcImMyMDE0YmRhOTdjZmY0NWRlNTRiMWFiNDllMjI3ZjEzXFxcIixcXFwiYnVuZGxlSWRcXFwiOlxcXCJjb20ucHdhLnpwY3BqXFxcIixcXFwidmVyc2lvblxcXCI6XFxcIjMuOS4wXFxcIixcXFwib2F1dGhfdHlwZVxcXCI6XFxcIndlYlxcXCIsXFxcImxhbmd1YWdlXFxcIjpcXFwiemhcXFwiLFxcXCJ2aWFcXFwiOlxcXCJwd2FcXFwiLFxcXCJ0b2tlblxcXCI6XFxcIlxcXCJ9J1xcbi8vbG9nKGRhdGEwKVxcbnZhciBkYXRhID0gRW5jcnlwdChkYXRhMCk7IFxcbi8vbG9nKGRhdGEpXFxudmFyIHNpZ24gPSBtZDUoc2hhMjU2KCdjbGllbnQ9cHdhJmRhdGE9JytkYXRhKycmdGltZXN0YW1wPScrdCsnNTU4OWQ0MWY5MmE1OTdkMDE2YjAzN2FjMzdkYjI0M2QnKSk7IC8vbG9nKHNpZ24pXFxudmFyIGJvZHkgPSAnZGF0YT0nK2RhdGErJyZzaWduPScrc2lnbisnJmNsaWVudD1wd2EmdGltZXN0YW1wPScrdDsgXFxuLy9sb2coYm9keSlcXG52YXIgdXJsID0gJ2h0dHBzOi8vYXBpMi5waWlmdmx5LmNvbS9hcGkucGhwL2FwaS9tdi9saXN0X2NvbnN0cnVjdCc7XFxudmFyIGh0bWwgPSBmZXRjaCh1cmwsIHtcXG4gICAgaGVhZGVyczoge1xcbiAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcXG4gICAgfSxcXG4gICAgYm9keTogYm9keSxcXG4gICAgbWV0aG9kOiAnUE9TVCdcXG59KTsgXFxuLy9sb2coaHRtbClcXG5cXG5sZXQgaHRtbDEgPSBKU09OLnBhcnNlKGh0bWwpLmRhdGE7IFxcbi8vbG9nKGh0bWwxKVxcbmxldCBodG1sMiA9IERlY3J5cHQoaHRtbDEpOyBcXG4vL2xvZyhodG1sMilcXG5cXG52YXIgbGlzdCA9IEpTT04ucGFyc2UoaHRtbDIpLmRhdGEubGlzdDtcXG4vL2xvZyhsaXN0KTtcXG5pZihsaXN0IT1udWxsKXtcXG5saXN0LmZvckVhY2goZGF0YSA9PiB7XFxuICAgICAgICBpZihkYXRhLmNsaWNrZWQ9PW51bGwpe1xcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogZGF0YS50aXRsZSxcXG4gICAgICAgICAgICBkZXNjOiAgZGF0YS5jcmVhdGVkX2F0KydcXFxcdFxcXFx0XFxcXHRcXFxcdCcrcGFyc2VJbnQoZGF0YS5kdXJhdGlvbi82MCkrJzonK3BhcnNlSW50KGRhdGEuZHVyYXRpb24lNjApLFxcbiAgICAgICAgICAgaW1nOiBkYXRhLmNvdmVyX2hvcml6b250YWwgKyBsYXp5LFxcbiAgICAgICAgICAgLy8gaW1nOiBkYXRhLmNvdmVyX3RodW1iX3VybCArICsgJ0Bqcz0nICsgaW1nRGVjKGtleSwgaXYsICdBRVMnKSxcXG4gICAgICAgICAgICB1cmw6IGRhdGEuaWQgKyBsYXp5MVxcbiAgICAgICAgfSlcXG59XFxuICAgIH0pXFxufVxcbnNldFJlc3VsdChkKVwifV0iLCJpY29uIjoiIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment