Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥我在精神病院斩神@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImdtdE1vZGlmaWVkXCI6MCxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJcIixcImxpc3RUb0NsZWFyQXNzb2NpYXRlZEZLXCI6W10sXCJsaXN0VG9DbGVhclNlbGZGS1wiOltdLFwicGFnZUxpc3RcIjpbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuWHveaVsFwiLFwicGF0aFwiOlwiaGFuc2h1XCIsXCJydWxlXCI6XCJqczpcXG4vL+WTjeW6lOino+WvhuWHveaVsFxcbmV2YWwoZ2V0Q3J5cHRvSlMoKSlcXG5cXG5mdW5jdGlvbiBEZWNyeXB0KHdvcmQpIHtcXG4gICAgbGV0IGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKFxcXCJOVVpIQkZGSFpKTkdXS1QwVDJGT0JFTFBSTENYQkRSS1xcXCIpO1xcbiAgICBsZXQgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHdvcmQsIGtleSwge1xcbiAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5FQ0IsXFxuICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcsXFxuICAgIH0pO1xcbiAgICBsZXQgZGVjcnlwdGVkU3RyID0gZGVjcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XFxuICAgIHJldHVybiBkZWNyeXB0ZWRTdHIudG9TdHJpbmcoKTtcXG59XFxuXFxuZnVuY3Rpb24gRGVjcnlwdDEod29yZCkge1xcbiAgICBsZXQga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoXFxcIjJDMUEwNkUxOTdFRjEwQ0YzRjYwNThDQTdBODAzQjVZXFxcIik7XFxuICAgIGxldCBkZWNyeXB0ID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQod29yZCwga2V5LCB7XFxuICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkVDQixcXG4gICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNyxcXG4gICAgfSk7XFxuICAgIGxldCBkZWNyeXB0ZWRTdHIgPSBkZWNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcXG4gICAgcmV0dXJuIGRlY3J5cHRlZFN0ci50b1N0cmluZygpO1xcbn1cXG5cXG5mdW5jdGlvbiBFbmNyeXB0KHdvcmQpIHtcXG4gICAgbGV0IGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKFxcXCJOVVpIQkZGSFpKTkdXS1QwVDJGT0JFTFBSTENYQkRSS1xcXCIpO1xcbiAgICBsZXQgZW5jcnlwdCA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KHdvcmQsIGtleSwge1xcbiAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5FQ0IsXFxuICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcsXFxuICAgIH0pO1xcbiAgICBsZXQgZW5jcnlwdGVkU3RyID0gZW5jcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuYmFzZTY0KTtcXG4gICAgcmV0dXJuIGVuY3J5cHRlZFN0ci50b1N0cmluZygpO1xcbn1cXG5cXG5mdW5jdGlvbiBFbmNyeXB0MSh3b3JkKSB7XFxuICAgIGxldCBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcXFwiMkMxQTA2RTE5N0VGMTBDRjNGNjA1OENBN0E4MDNCNVlcXFwiKTtcXG4gICAgbGV0IGVuY3J5cHQgPSBDcnlwdG9KUy5BRVMuZW5jcnlwdCh3b3JkLCBrZXksIHtcXG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuRUNCLFxcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3LFxcbiAgICB9KTtcXG4gICAgbGV0IGVuY3J5cHRlZFN0ciA9IGVuY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLmJhc2U2NCk7XFxuICAgIHJldHVybiBlbmNyeXB0ZWRTdHIudG9TdHJpbmcoKTtcXG59XFxuXFxuLy/lvLnluZXlh73mlbAgYnkgY3lcXG5mdW5jdGlvbiBmZXRjaERhbm11RGF0YSh1cmwpIHtcXG4gICAgdmFyIGh0bWwgPSByZXF1ZXN0KHVybCk7IC8vbG9nKGh0bWwpIFxcbiAgICB2YXIgaHRtbDIgPSBKU09OLnBhcnNlKGh0bWwpLmRhbm11a3U7IC8vbG9nKGh0bWwyKVxcblxcbiAgICB2YXIgbGlzdHMgPSBbXTtcXG4gICAgaHRtbDIuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgIGxpc3RzLnB1c2goaXRlbSlcXG4gICAgfSk7XFxuICAgIC8vbG9nKHRhYnMpXFxuICAgIGxldCBkYW5tdXN0ciA9IGA8P3htbCB2ZXJzaW9uPVxcXCIxLjBcXFwiIGVuY29kaW5nPVxcXCJVVEYtOFxcXCI/PlxcXFxuPGk+XFxcXG5gO1xcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3RzLmxlbmd0aDsgaSsrKSB7XFxuICAgICAgICB2YXIgZG0wID0gbGlzdHNbaV1bMF07IC8vbG9nKGRtMClcXG4gICAgICAgIHZhciBkbTIgPSBsaXN0c1tpXVsyXTsgLy9sb2coZG0yKVxcbiAgICAgICAgLy8g6aKc6Imy6K6+572uXFxuICAgICAgICAgICAgaWYgKGxpc3RzW2ldWzJdID09ICcjZmZmJykge1xcbiAgICAgICAgICAgICAgICBkbTIgPSAxNjc3NzIxNTtcXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICBkbTIgPSBwYXJzZUludChsaXN0c1tpXVsyXS5zbGljZSgxKSwgMTYpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIHZhciBkbTQgPSBsaXN0c1tpXVs0XTsgLy9sb2coZG00KVxcbiAgICAgICAgaWYgKGRtNC5pbmRleE9mKCc8JykgIT0gLTEgfHwgZG00LmluZGV4T2YoJz4nKSAhPSAtMSB8fCBkbTQuaW5kZXhPZignJicpICE9IC0xIHx8IGRtNC5pbmRleE9mKCdcXFxcdTAwMDAnKSAhPSAtMSB8fCBkbTQuaW5kZXhPZignXFxcXGInKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAvLyDlj6rlsIblrp7pmYXlvLnluZXmlbDmja7ov73liqDliLAgYGRhbm11c3RyYFxcbiAgICAgICAgLy/ml7bpl7TvvIzpobbpg6jlvLnluZXvvIzlrZfkvZPlpKflsI/vvIzpopzoibLvvIww77yM5by55bmV5YaF5a65XFxuICAgICAgICBsZXQgdGVtcGRhdGEgPSBgPGQgcD1cXFwiJHtkbTB9LDEsMjUsJHtkbTJ9LDBcXFwiPiR7ZG00fTwvZD5cXFxcbmA7IC8vbG9nKHRlbXBkYXRhKVxcbiAgICAgICAgZGFubXVzdHIgKz0gdGVtcGRhdGE7IFxcbiAgICB9XFxuICAgIGRhbm11c3RyICs9IGA8L2k+YDtcXG4gICAgd3JpdGVGaWxlKCdoaWtlcjovL2ZpbGVzL2NhY2hlL2Rhbm11LnhtbCcsIGRhbm11c3RyKTtcXG59XFxuXCJ9XSxcInNhdmVkXCI6ZmFsc2UsXCJ0aXRsZVwiOlwi5qGD5a2Q6Laj55yLQVBQXCIsXCJ2ZXJzaW9uXCI6MCxcInVybFwiOlwiaGlrZXI6Ly9lbXB0eSMjaHR0cDovLzEwNi41My43NC4xOTQ6ODA5Ny9hcGkvdjMvZHJhbWEvZ2V0RGV0YWlsP2lkPTI0OTA4OSNpbW1lcnNpdmVUaGVtZSM7Z2V0O1VURi04O3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChMaW51eO+8m++8myBBbmRyb2lkIDE177yb77ybIDI0MDdGUks4RUMgQnVpbGQvQVAzQS4yNDA2MTcuMDA477yb77ybIHd2KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBWZXJzaW9uLzQuMCBDaHJvbWUvMTI4LjAuNjYxMy4xMjcgTW9iaWxlIFNhZmFyaS81MzcuMzZ9XCIsXCJjb2xfdHlwZVwiOlwibW92aWVfMVwiLFwiZmluZF9ydWxlXCI6XCJqczpcXG5cXG52YXIgZCA9IFtdXFxudmFyIGh0bWwyMSA9IHJlcXVlc3QoTVlfVVJMLnNwbGl0KCcjIycpWzFdKTsgLy9sb2coaHRtbDIxKVxcbnZhciBkYXRhMjEgPSBKU09OLnBhcnNlKGh0bWwyMSkuZGF0YTsgLy9sb2coZGF0YTIxKVxcblxcbmQucHVzaCh7XFxuICAgIHRpdGxlOiBkYXRhMjEubmFtZSsnXFxcXG4nK2RhdGEyMS5jbGF6eixcXG4gICAgZGVzYzogZGF0YTIxLmJyaWVmLFxcbiAgICBpbWc6IGRhdGEyMS5jb3ZlckltYWdlLnBhdGgsXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcbiAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljX2JsdXInXFxufSlcXG5cXG4vLyDmlbDmja7npLrkvotcXG52YXIgbGlzdDIxID0gZGF0YTIxLnZpZGVvcztcXG4vLyDmjIkgYHNvdXJjZUNuYCDliIbnu4Tlh73mlbBcXG5mdW5jdGlvbiBncm91cEJ5U291cmNlQ24odmlkZW9zKSB7XFxuICAgIHJldHVybiB2aWRlb3MucmVkdWNlKChncm91cHMsIHZpZGVvKSA9PiB7XFxuICAgICAgICBjb25zdCBrZXkgPSB2aWRlby5zb3VyY2U7IC8vIOWIhue7hOmUruS4uiBgc291cmNlYFxcbiAgICAgICAgaWYgKCFncm91cHNba2V5XSkge1xcbiAgICAgICAgICAgIGdyb3Vwc1trZXldID0gW107IC8vIOWIneWni+WMluWIhue7hFxcbiAgICAgICAgfVxcbiAgICAgICAgZ3JvdXBzW2tleV0ucHVzaCh2aWRlbyk7IC8vIOa3u+WKoOinhumikeWIsOWIhue7hOS4rVxcbiAgICAgICAgcmV0dXJuIGdyb3VwcztcXG4gICAgfSwge30pXFxufVxcbi8vIOWIhue7hOaTjeS9nFxcbmNvbnN0IGdyb3VwZWRWaWRlb3MgPSBncm91cEJ5U291cmNlQ24obGlzdDIxKVxcbi8vIOe7k+aenOaVsOe7hFxcbmNvbnN0IGtleXMgPSBbXTtcXG5jb25zdCB2YWx1ZXMgPSBbXTtcXG4vLyDpgY3ljoYgZ3JvdXBlZFZpZGVvc1xcbk9iamVjdC5lbnRyaWVzKGdyb3VwZWRWaWRlb3MpLmZvckVhY2goKFtncm91cE5hbWUsIHZpZGVvc10pID0+IHtcXG4gIGtleXMucHVzaChncm91cE5hbWUpOyAgLy8g5bCG6ZSu5Yqg5YWl6ZSu5pWw57uEXFxuICB2YWx1ZXMucHVzaCh2aWRlb3MpOyAvLyDlsIblgLzvvIjop4bpopHlr7nosaHvvInlubPpk7rliqDlhaXlgLzmlbDnu4RcXG59KVxcbnZhciB0YWJzID0ga2V5czsgLy9sb2codGFicylcXG52YXIgbGlzdHMgPSB2YWx1ZXM7IC8vbG9nKGxpc3RzKVxcblxcbmZ1bmN0aW9uIHNldFRhYnModGFicywgdmFyaSkge1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IChnZXRWYXIoJ3Noc29ydCcpID09ICcxJykgPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjRkYwMDAwXFxcIj7pgIbluo88L3NwYW4+PC9iPicgOiAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjMWFhZDE5XFxcIj7mraPluo88L3NwYW4+PC9iPicsXFxuICAgICAgICB1cmw6IGBAbGF6eVJ1bGU9LmpzOmxldCBjb25mID0gZ2V0VmFyKCdzaHNvcnQnKTtpZihjb25mPT0nMScpe3B1dFZhcih7a2V5OidzaHNvcnQnLCB2YWx1ZTonMCd9KTt9ZWxzZXtwdXRWYXIoe2tleTonc2hzb3J0JywgdmFsdWU6JzEnfSl9O3JlZnJlc2hQYWdlKCk7J3RvYXN0Oi8v5YiH5o2i5o6S5bqP5oiQ5YqfJ2AsXFxuICAgICAgICBjb2xfdHlwZTogJ2ZsZXhfYnV0dG9uJ1xcbiAgICB9KVxcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRhYnMubGVuZ3RoOyBpKyspIHtcXG4gICAgICAgIHZhciB1cmwgPSBcXFwiI25vTG9hZGluZyNAbGF6eVJ1bGU9LmpzOnB1dE15VmFyKCdcXFwiICsgdmFyaSArIFxcXCInLCAnXFxcIiArIGkgKyBcXFwiJyk7cmVmcmVzaFBhZ2UoZmFsc2UpOyd0b2FzdDovL+WIh+aNouaIkOWKn++8gSc7JyNub0hpc3RvcnkjaGlrZXI6Ly9lbXB0eSdcXFwiO1xcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogZ2V0TXlWYXIodmFyaSwgJzAnKSA9PSBpID8gJ+KAnOKAnCcgKyB0YWJzW2ldICsgJ+KAneKAnScgOiB0YWJzW2ldLFxcbiAgICAgICAgICAgIHVybDogdXJsLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnZmxleF9idXR0b24nXFxuICAgICAgICB9KVxcbiAgICB9XFxufVxcblxcbmZ1bmN0aW9uIHNldExpc3RzKGxpc3RzLCBpbmRleCkge1xcbiAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XTtcXG4gICAgaWYgKGdldFZhcignc2hzb3J0JykgPT0gJzEnKSB7XFxuICAgICAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XS5yZXZlcnNlKCk7XFxuICAgIH1cXG4gICAgZm9yICh2YXIgaiBpbiBsaXN0KSB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBsaXN0W2pdLnRpdGxlLFxcbiAgICAgICAgICAgIHVybDogJChgdm9kUGxheUZyb209JHtsaXN0W2pdLnNvdXJjZX0mcGxheVVybD0ke2VuY29kZVVSSUNvbXBvbmVudChsaXN0W2pdLnBhdGgpfWApLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS9oYW5zaHUnKSkucnVsZSlcXG4gICAgICAgICAgICAgICAgdmFyIHF1ZXJ5ID0gRW5jcnlwdChFbmNyeXB0MShpbnB1dCkpOyAvL2xvZyhxdWVyeSlcXG4gICAgICAgICAgICAgICAgdmFyIGh0bWwxMSA9IHJlcXVlc3QoZ2V0SXRlbSgnaG9zdCcpKycvYXBpL2V4L3YzL3NlY3VyaXR5L3ZpZGVvVXNhYmxlVXJsP3F1ZXJ5PScrZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5KSk7IC8vbG9nKGh0bWwxMSkgXFxuICAgICAgICAgICAgICAgIHZhciBodG1sMTIgPSBEZWNyeXB0MShEZWNyeXB0KEpTT04ucGFyc2UoaHRtbDExKS5kYXRhKSk7IGxvZyhodG1sMTIpXFxuICAgICAgICAgICAgICAgIHZhciBoZWFkZXIgPSBKU09OLnBhcnNlKGh0bWwxMikuaGVhZGVyczsgLy9sb2coaGVhZGVyKVxcbiAgICAgICAgICAgICAgICB2YXIgcGxheVVybCA9IEpTT04ucGFyc2UoaHRtbDEyKS5wbGF5VXJsOyAvL2xvZyhsaXN0MTIpICAgICAgICAgICAgICAgIFxcbiAgICAgICAgICAgICAgICBpZihoZWFkZXIgIT09IHVuZGVmaW5lZCl7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgcGxheVVybCA9IHBsYXlVcmwgKyAnOycgKyBKU09OLnN0cmluZ2lmeShoZWFkZXIpLnJlcGxhY2UoL1xcXCI6XFxcIi9nLCdAJykucmVwbGFjZSgvXFxcIi9nLCcnKVxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIGlmKC9tZ3R2Ly50ZXN0KGlucHV0KSl7ICAgICAgICBcXG4gICAgICAgICAgICAgICAgICAgIHZhciBwbGF5ID0gSlNPTi5wYXJzZShmZXRjaChwbGF5VXJsLHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdHRVQnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0OiBmYWxzZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICB3aXRoSGVhZGVyczogdHJ1ZVxcbiAgICAgICAgICAgICAgICAgICAgfSkpLmhlYWRlcnMubG9jYXRpb25bMF07IC8vbG9nKHBsYXkpXFxuICAgICAgICAgICAgICAgICAgIHZhciBoZWFkZXJzID0ge1xcbiAgICAgICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnTGF2Zi81OC4xMi4xMDAnLFxcbiAgICAgICAgICAgICAgICAgICAgJ0FjY2VwdCc6ICcqLyonLFxcbiAgICAgICAgICAgICAgICAgICAgJ1JhbmdlJzogJ2J5dGVzPTAtJyxcXG4gICAgICAgICAgICAgICAgICAgICdDb25uZWN0aW9uJzogJ2Nsb3NlJyxcXG4gICAgICAgICAgICAgICAgICAgICdIb3N0JzogcGxheS5tYXRjaCgvaHR0cC4qXFxcXC9cXFxcLyguKj8pXFxcXC8vKVsxXSxcXG4gICAgICAgICAgICAgICAgICAgICdJY3ktTWV0YURhdGEnOiAnMSdcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIHZhciBodG1sMSA9IGZldGNoKHBsYXksIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJydcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ0dFVCdcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICB2YXIgbTN1OCA9IGh0bWwxLnJlcGxhY2UoLyguKi50cy4qKS9nLCBwbGF5Lm1hdGNoKC9odHRwLipcXFxcLy8pWzBdICsgJyQxJyk7IC8vbG9nKG0zdTgpXFxuICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGUoJ2hpa2VyOi8vZmlsZXMvY2FjaGUvdmlkZW8ubTN1OCcsIG0zdTgpO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHBsYXkgPSBnZXRQYXRoKCdoaWtlcjovL2ZpbGVzL2NhY2hlL3ZpZGVvLm0zdTgnKSArICcjJyArIHBsYXk7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybHM6IFtwbGF5XSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiBbaGVhZGVyc11cXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYXlVcmwgKyAnI2lzVmlkZW89dHJ1ZSMnXFxuICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgY29sX3R5cGU6IGxpc3Rbal0udGl0bGUubGVuZ3RoID4gNCA/ICd0ZXh0XzInIDogJ3RleHRfNCdcXG4gICAgICAgIH0pO1xcbiAgICB9XFxufVxcblxcbnNldFRhYnModGFicywgTVlfVVJMKTtcXG5zZXRMaXN0cyhsaXN0cywgZ2V0TXlWYXIoTVlfVVJMLCAnMCcpKTtcXG5cXG5zZXRSZXN1bHQoZClcIixcImdyb3VwXCI6XCLikaHlvbHop4ZcIixcInVhXCI6XCJtb2JpbGVcIixcInByZVJ1bGVcIjpcIlwiLFwicGFnZXNcIjpcIlt7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLlh73mlbBcXFwiLFxcXCJwYXRoXFxcIjpcXFwiaGFuc2h1XFxcIixcXFwicnVsZVxcXCI6XFxcImpzOlxcXFxuLy/lk43lupTop6Plr4blh73mlbBcXFxcbmV2YWwoZ2V0Q3J5cHRvSlMoKSlcXFxcblxcXFxuZnVuY3Rpb24gRGVjcnlwdCh3b3JkKSB7XFxcXG4gICAgbGV0IGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKFxcXFxcXFwiTlVaSEJGRkhaSk5HV0tUMFQyRk9CRUxQUkxDWEJEUktcXFxcXFxcIik7XFxcXG4gICAgbGV0IGRlY3J5cHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh3b3JkLCBrZXksIHtcXFxcbiAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5FQ0IsXFxcXG4gICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNyxcXFxcbiAgICB9KTtcXFxcbiAgICBsZXQgZGVjcnlwdGVkU3RyID0gZGVjcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XFxcXG4gICAgcmV0dXJuIGRlY3J5cHRlZFN0ci50b1N0cmluZygpO1xcXFxufVxcXFxuXFxcXG5mdW5jdGlvbiBEZWNyeXB0MSh3b3JkKSB7XFxcXG4gICAgbGV0IGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKFxcXFxcXFwiMkMxQTA2RTE5N0VGMTBDRjNGNjA1OENBN0E4MDNCNVlcXFxcXFxcIik7XFxcXG4gICAgbGV0IGRlY3J5cHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh3b3JkLCBrZXksIHtcXFxcbiAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5FQ0IsXFxcXG4gICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNyxcXFxcbiAgICB9KTtcXFxcbiAgICBsZXQgZGVjcnlwdGVkU3RyID0gZGVjcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XFxcXG4gICAgcmV0dXJuIGRlY3J5cHRlZFN0ci50b1N0cmluZygpO1xcXFxufVxcXFxuXFxcXG5mdW5jdGlvbiBFbmNyeXB0KHdvcmQpIHtcXFxcbiAgICBsZXQga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoXFxcXFxcXCJOVVpIQkZGSFpKTkdXS1QwVDJGT0JFTFBSTENYQkRSS1xcXFxcXFwiKTtcXFxcbiAgICBsZXQgZW5jcnlwdCA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KHdvcmQsIGtleSwge1xcXFxuICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkVDQixcXFxcbiAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3LFxcXFxuICAgIH0pO1xcXFxuICAgIGxldCBlbmNyeXB0ZWRTdHIgPSBlbmNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5iYXNlNjQpO1xcXFxuICAgIHJldHVybiBlbmNyeXB0ZWRTdHIudG9TdHJpbmcoKTtcXFxcbn1cXFxcblxcXFxuZnVuY3Rpb24gRW5jcnlwdDEod29yZCkge1xcXFxuICAgIGxldCBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcXFxcXFxcIjJDMUEwNkUxOTdFRjEwQ0YzRjYwNThDQTdBODAzQjVZXFxcXFxcXCIpO1xcXFxuICAgIGxldCBlbmNyeXB0ID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQod29yZCwga2V5LCB7XFxcXG4gICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuRUNCLFxcXFxuICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcsXFxcXG4gICAgfSk7XFxcXG4gICAgbGV0IGVuY3J5cHRlZFN0ciA9IGVuY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLmJhc2U2NCk7XFxcXG4gICAgcmV0dXJuIGVuY3J5cHRlZFN0ci50b1N0cmluZygpO1xcXFxufVxcXFxuXFxcXG4vL+W8ueW5leWHveaVsCBieSBjeVxcXFxuZnVuY3Rpb24gZmV0Y2hEYW5tdURhdGEodXJsKSB7XFxcXG4gICAgdmFyIGh0bWwgPSByZXF1ZXN0KHVybCk7IC8vbG9nKGh0bWwpIFxcXFxuICAgIHZhciBodG1sMiA9IEpTT04ucGFyc2UoaHRtbCkuZGFubXVrdTsgLy9sb2coaHRtbDIpXFxcXG5cXFxcbiAgICB2YXIgbGlzdHMgPSBbXTtcXFxcbiAgICBodG1sMi5mb3JFYWNoKGl0ZW0gPT4ge1xcXFxuICAgICAgICBsaXN0cy5wdXNoKGl0ZW0pXFxcXG4gICAgfSk7XFxcXG4gICAgLy9sb2codGFicylcXFxcbiAgICBsZXQgZGFubXVzdHIgPSBgPD94bWwgdmVyc2lvbj1cXFxcXFxcIjEuMFxcXFxcXFwiIGVuY29kaW5nPVxcXFxcXFwiVVRGLThcXFxcXFxcIj8+XFxcXFxcXFxuPGk+XFxcXFxcXFxuYDtcXFxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3RzLmxlbmd0aDsgaSsrKSB7XFxcXG4gICAgICAgIHZhciBkbTAgPSBsaXN0c1tpXVswXTsgLy9sb2coZG0wKVxcXFxuICAgICAgICB2YXIgZG0yID0gbGlzdHNbaV1bMl07IC8vbG9nKGRtMilcXFxcbiAgICAgICAgLy8g6aKc6Imy6K6+572uXFxcXG4gICAgICAgICAgICBpZiAobGlzdHNbaV1bMl0gPT0gJyNmZmYnKSB7XFxcXG4gICAgICAgICAgICAgICAgZG0yID0gMTY3NzcyMTU7XFxcXG4gICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgIGRtMiA9IHBhcnNlSW50KGxpc3RzW2ldWzJdLnNsaWNlKDEpLCAxNik7XFxcXG4gICAgICAgICAgICB9XFxcXG4gICAgICAgIHZhciBkbTQgPSBsaXN0c1tpXVs0XTsgLy9sb2coZG00KVxcXFxuICAgICAgICBpZiAoZG00LmluZGV4T2YoJzwnKSAhPSAtMSB8fCBkbTQuaW5kZXhPZignPicpICE9IC0xIHx8IGRtNC5pbmRleE9mKCcmJykgIT0gLTEgfHwgZG00LmluZGV4T2YoJ1xcXFxcXFxcdTAwMDAnKSAhPSAtMSB8fCBkbTQuaW5kZXhPZignXFxcXFxcXFxiJykgIT0gLTEpIHtcXFxcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgLy8g5Y+q5bCG5a6e6ZmF5by55bmV5pWw5o2u6L+95Yqg5YiwIGBkYW5tdXN0cmBcXFxcbiAgICAgICAgLy/ml7bpl7TvvIzpobbpg6jlvLnluZXvvIzlrZfkvZPlpKflsI/vvIzpopzoibLvvIww77yM5by55bmV5YaF5a65XFxcXG4gICAgICAgIGxldCB0ZW1wZGF0YSA9IGA8ZCBwPVxcXFxcXFwiJHtkbTB9LDEsMjUsJHtkbTJ9LDBcXFxcXFxcIj4ke2RtNH08L2Q+XFxcXFxcXFxuYDsgLy9sb2codGVtcGRhdGEpXFxcXG4gICAgICAgIGRhbm11c3RyICs9IHRlbXBkYXRhOyBcXFxcbiAgICB9XFxcXG4gICAgZGFubXVzdHIgKz0gYDwvaT5gO1xcXFxuICAgIHdyaXRlRmlsZSgnaGlrZXI6Ly9maWxlcy9jYWNoZS9kYW5tdS54bWwnLCBkYW5tdXN0cik7XFxcXG59XFxcXG5cXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwczovL2ltZy5mZnp5ODg4LmNvbS91cGxvYWQvdm9kLzIwMjQwMTA3LTEvYzBhOGJiYWRjNmE2OWUyNmUwYWNlYzRiMTI1NjhjNjgucG5nIiwidGl0bGUiOiLmiJHlnKjnsr7npZ7nl4XpmaLmlqnnpZ4ifQ==
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement