Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥声生不息舞台纯享版@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJqczpcXG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKTtcXG4vL+aSreaUvuWIl+ihqOeahOWIl+ihqOeahOWumuS9jVxcbnZhciBjb250cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5zY3JvbGwtYm94LXknKVswXTtcXG4vL+mAiembhuWIl+ihqOeahOWumuS9jVxcbnZhciBsaXN0PXBhcnNlRG9tRm9yQXJyYXkoY29udHMsICdib2R5JiZhJyk7XFxudmFyIHRpdGxlPXBhcnNlRG9tRm9ySHRtbChsaXN0W2xpc3QubGVuZ3RoLTFdLCdzcGFuJiZUZXh0Jyk7XFxuc2V0UmVzdWx0KFxcXCLmm7TmlrDoh7M6IFxcXCIrdGl0bGUpO1wiLFwibGlzdFRvQ2xlYXJBc3NvY2lhdGVkRktcIjpbXSxcImxpc3RUb0NsZWFyU2VsZkZLXCI6W10sXCJwYWdlTGlzdFwiOlt7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwibGF6eVwiLFwicGF0aFwiOlwibGF6eVwiLFwicnVsZVwiOlwidmFyIGxhenkgPSAkKFxcXCJcXFwiKS5sYXp5UnVsZSgoKSA9PiB7XFxuICAgIHZhciBwbGF5ZXIgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpLm1hdGNoKC9yIHBsYXllcl8uKj89KC4qPyk8LylbMV0pO1xcbiAgICB2YXIganN1cmwgPSBwbGF5ZXIudXJsO1xcbiAgICBpZiAocGxheWVyLmVuY3J5cHQgPT0gJzEnKSB7XFxuICAgICAgICB2YXIganN1cmwgPSB1bmVzY2FwZShqc3VybCk7XFxuICAgIH0gZWxzZSBpZiAocGxheWVyLmVuY3J5cHQgPT0gJzInKSB7XFxuICAgICAgICB2YXIganN1cmwgPSB1bmVzY2FwZShiYXNlNjREZWNvZGUoanN1cmwpKTtcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIGpzdXJsXFxuICAgIH07XFxuICAgIHZhciBmcm9tID0gcGxheWVyLmZyb207XFxuICAgIGlmIChqc3VybC5zZWFyY2goL1xcXFwubXA0fFxcXFwubTN1OC8pID4gLTEpIHtcXG4gICAgICAgIHJldHVybiBqc3VybDtcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIGV2YWwocmVxdWVzdChwZChmZXRjaChpbnB1dCwgKSwgJy5wbGF5ZXItd3JhcHBlciYmc2NyaXB0LDEmJnNyYycpKSk7XFxuICAgICAgICB2YXIganggPSBNYWNQbGF5ZXJDb25maWcucGxheWVyX2xpc3RbZnJvbV0ucGFyc2U7XFxuICAgICAgICBpZiAoanggPT0gJycpIHtcXG4gICAgICAgICAgICBqeCA9IFxcXCJodHRwczovL2ppZXhpLmY3eXMuY29tL2ppZXhpLnBocD91cmw9XFxcIjtcXG4gICAgICAgIH07XFxuICAgICAgICBsb2coJ1xcXFxu57q/6Lev77yaJyArIGZyb20gKyAnXFxcXG4nICsgJ+ino+aekOaOpeWPo++8micgKyBqeCk7XFxuICAgICAgICB2YXIgcGFyc2UgPSBqeCArIGpzdXJsO1xcbiAgICAgICAgLy9sb2cocGFyc2UpO1xcblxcbiAgICAgICAgdmFyIHJlZiA9IFxcXCJodHRwczovL3d3dy5oYW9rYW5qdTEuY2NcXFwiO1xcbiAgICAgICAgdmFyIGpodG1sID0gXFxcIlxcXCI7XFxuXFxuICAgICAgICBpZiAocmVmKSB7XFxuICAgICAgICAgICAgamh0bWwgPSByZXF1ZXN0KHBhcnNlLCB7XFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgICAgICdSZWZlcmVyJzogcmVmXFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgamh0bWwgPSByZXF1ZXN0KHBhcnNlKTtcXG4gICAgICAgIH1cXG4gICAgICAgIGV2YWwoZ2V0Q3J5cHRvSlMoKSk7XFxuICAgICAgICBrZXkgPSBcXFwiNUREMDI0NjU5NzM2ODExQ1xcXCI7XFxuICAgICAgICB2YXIgbGVfdG9rZW4gPSBqaHRtbC5tYXRjaCgvX3Rva2VuID0gXFxcXFxcXCIoLio/KVxcXFxcXFwiLylbMV07XFxuICAgICAgICB2YXIgX3Rva2VuX2tleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGtleSk7XFxuICAgICAgICB2YXIgX3Rva2VuX2l2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UobGVfdG9rZW4pO1xcbiAgICAgICAgdmFyIFZpZGVvSW5mbyA9IGpodG1sLm1hdGNoKC9nZXRWaWRlb0luZm9cXFxcKFxcXFxcXFwiKC4qPylcXFxcXFxcIi8pWzFdO1xcblxcbiAgICAgICAgZnVuY3Rpb24gdl9kZWNyeXB0KGRhdGEsIHRva2VuX2tleSwgdG9rZW5faXYpIHtcXG4gICAgICAgICAgICByZXR1cm4gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoZGF0YSwgdG9rZW5fa2V5LCB7XFxuICAgICAgICAgICAgICAgIGl2OiB0b2tlbl9pdlxcbiAgICAgICAgICAgIH0pLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcXG4gICAgICAgIH07XFxuICAgICAgICB2YXIgdmlkZW8gPSB2X2RlY3J5cHQoVmlkZW9JbmZvLCBfdG9rZW5fa2V5LCBfdG9rZW5faXYpO1xcbiAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QoanN1cmwpKSB7XFxuICAgICAgICAgICAgcmV0dXJuIHZpZGVvICsgXFxcIjt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX1cXFwiO1xcbiAgICAgICAgfSBlbHNlIGlmICgvYmlsaS8udGVzdChqc3VybCkpIHtcXG4gICAgICAgICAgICByZXR1cm4gdmlkZW8gKyBcXFwiO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wJiZSZWZlcmVyQGh0dHBzOi8vd3d3LmJpbGliaWxpLmNvbX1cXFwiO1xcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICByZXR1cm4gdmlkZW87XFxuICAgICAgICB9XFxuICAgIH1cXG59KTtcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuWKqOaAgeWIhuexu1wiLFwicGF0aFwiOlwi5Yqo5oCB5YiG57G7XCIsXCJydWxlXCI6XCJjb25zdCBDb2xvciA9IFxcXCIjMTlCODlEXFxcIjtcXG5cXG5sZXQgdHJ1ZV91cmwgPSBnZXRWYXIoTVlfUlVMRS51cmwsIE1ZX1VSTClcXG4vL2xvZyh0cnVlX3VybClcXG5jb25zdCBwYWdlID0gTVlfUEFHRVxcbi8vbG9nKHBhZ2UpXFxuaWYgKGdldFZhcihNWV9SVUxFLnVybCkpIHtcXG4gICAgdHJ1ZV91cmwgPSB0cnVlX3VybC5yZXBsYWNlKC8tLS0oXFxcXGQqKVxcXFwuaHRtbC8sICtwYWdlICsgJy0tLSQxLmh0bWwnKTtcXG4gICAgbG9nKHRydWVfdXJsKVxcbn1cXG52YXIgaHRtbCA9IGZldGNoKHRydWVfdXJsLCB7XFxuICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICdVc2VyLUFnZW50JzogJ01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApJ1xcbiAgICB9XFxufSlcXG5jb25zdCBlbXB0eSA9IFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcblxcbmNvbnN0IGNhdGVnb3JpZXMgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsICcjbWFpbiYmLnNjcm9sbC1jb250ZW50JylcXG5cXG5sZXQgaW5pdF9jYXRlID0gW11cXG5cXG5mb3IgKGxldCBpID0gMDsgaSA8IDIwOyBpKyspIHtcXG4gICAgaW5pdF9jYXRlLnB1c2goXFxcIjBcXFwiKVxcbn1cXG5cXG5jb25zdCBmb2xkID0gZ2V0VmFyKE1ZX1JVTEUuZ3JvdXAsIFxcXCIwXFxcIilcXG5jb25zdCBjYXRlX3RlbXBfanNvbiA9IGdldFZhcihNWV9SVUxFLnRpdGxlLCBKU09OLnN0cmluZ2lmeShpbml0X2NhdGUpKVxcbmNvbnN0IGNhdGVfdGVtcCA9IEpTT04ucGFyc2UoY2F0ZV90ZW1wX2pzb24pXFxuXFxuaWYgKHBhcnNlSW50KHBhZ2UpID09PSAxKSB7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogZm9sZCA9PT0gJzEnID8gJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjogI0ZGMDAwMFxcXCI+4oioPC9zcGFuPjwvYj4nIDogJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjonICsgQ29sb3IgKyAnXFxcIj7iiKc8L3NwYW4+PC9iPicsXFxuICAgICAgICB1cmw6ICQoZW1wdHkpLmxhenlSdWxlKChmb2xkKSA9PiB7XFxuICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUuZ3JvdXAsIGZvbGQgPT09ICcxJyA/ICcwJyA6ICcxJyk7XFxuICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG4gICAgICAgIH0sIGZvbGQpLFxcbiAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgfSlcXG5cXG5cXG4gICAgY2F0ZWdvcmllcy5mb3JFYWNoKChjYXRlZ29yeSwgaW5kZXgpID0+IHtcXG4gICAgICAgIGxldCBzdWJfY2F0ZWdvcmllcyA9IHBhcnNlRG9tRm9yQXJyYXkoY2F0ZWdvcnksICdib2R5JiZhJyk7XFxuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcXG4gICAgICAgICAgICBzdWJfY2F0ZWdvcmllcy5mb3JFYWNoKChpdGVtLCBrZXkpID0+IHtcXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGFyc2VEb21Gb3JIdG1sKGl0ZW0sICdhJiZUZXh0JykucmVwbGFjZSgn54mH5bqTJywgJycpXFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZToga2V5LnRvU3RyaW5nKCkgPT09IGNhdGVfdGVtcFtpbmRleF0gPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOicgKyBDb2xvciArICdcXFwiPicgKyB0aXRsZSArICc8L3NwYW4+PC9iPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChwYXJzZURvbShpdGVtLCAnYSYmaHJlZicpKS5sYXp5UnVsZSgocGFyYW1zKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld19jYXRlID0gW11cXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMuY2F0ZV90ZW1wLmZvckVhY2goKGNhdGUsIGluZGV4KSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld19jYXRlLnB1c2goaW5kZXggPT09IDAgPyBwYXJhbXMua2V5LnRvU3RyaW5nKCkgOiBcXFwiMFxcXCIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS50aXRsZSwgSlNPTi5zdHJpbmdpZnkobmV3X2NhdGUpKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnVybCwgaW5wdXQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZV90ZW1wOiBjYXRlX3RlbXAsXFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5OiBrZXksXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZTogcGFnZSxcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwiYmxhbmtfYmxvY2tcXFwiXFxuICAgICAgICAgICAgfSk7XFxuICAgICAgICB9IGVsc2UgaWYgKGZvbGQgPT09ICcxJykge1xcbiAgICAgICAgICAgIHN1Yl9jYXRlZ29yaWVzLmZvckVhY2goKGl0ZW0sIGtleSkgPT4ge1xcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwYXJzZURvbUZvckh0bWwoaXRlbSwgJ2EmJlRleHQnKVxcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGtleS50b1N0cmluZygpID09PSBjYXRlX3RlbXBbaW5kZXhdID8gJ+KAnOKAnOKAneKAnTxzcGFuIHN0eWxlPVxcXCJjb2xvcjonICsgQ29sb3IgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9zcGFuPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChwYXJzZURvbShpdGVtLCAnYSYmaHJlZicpKS5sYXp5UnVsZSgocGFyYW1zKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLmNhdGVfdGVtcFtwYXJhbXMuaW5kZXhdID0gcGFyYW1zLmtleS50b1N0cmluZygpXFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudGl0bGUsIEpTT04uc3RyaW5naWZ5KHBhcmFtcy5jYXRlX3RlbXApKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnVybCwgaW5wdXQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZV90ZW1wOiBjYXRlX3RlbXAsXFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2U6IHBhZ2UsXFxuICAgICAgICAgICAgICAgICAgICB9KSxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImJsYW5rX2Jsb2NrXFxcIlxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfVxcbiAgICB9KVxcbn1cIn1dLFwic2F2ZWRcIjpmYWxzZSxcInRpdGxlXCI6XCLlpb3nnIvliadcIixcInZlcnNpb25cIjowLFwidXJsXCI6XCJodHRwczovL3d3dy5oYW9rYW5qdTEuY2Mvdm9kZGV0YWlsLzc2OTk0Lmh0bWwjaW1tZXJzaXZlVGhlbWUjO2dldDtVVEYtODt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoTGludXjvvJvvvJsgQW5kcm9pZCAxMe+8m++8myBNaSAxMCBQcm8pIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS84OC4wLjQzMjQuMTUyIE1vYmlsZSBTYWZhcmkvNTM3LjM2fVwiLFwiY29sX3R5cGVcIjpcIm1vdmllXzFcIixcImZpbmRfcnVsZVwiOlwianM6XFxuLyotLeWmguimgeiwg+eUqOmhuuWwge+8jOWPmOmHj+WQjeWIq+WKqO+8jOS/ruaUueWQhOmhueWumuS9jeWNs+WPry0tKi9cXG5jb25zdCBDb2xvciA9IFxcXCIjMTlCODlEXFxcIjtcXG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKTtcXG4vL+agh+mimFxcbnZhciB0aXRsZSA9IHBkZmgoaHRtbCwgJ2gxJiZUZXh0Jyk7XFxudmFyIHRpdGxlX2JpZyA9IHRpdGxlOyAvL+aYvuekuueahOeZveiJsuWkp+Wtl1xcbi8v5bCB6Z2i5Zu+IOS4gOWumuS4jeimgeWKoFJlZmVyZXJcXG52YXIgZGVzX3BpYyA9IHBkKGh0bWwsICcubGF6eWxvYWQmJmRhdGEtc3JjJyk7XFxuLy/liafmg4XnroDku4tcXG52YXIgZGVzX2Rlc2MgPSBwZGZoKGh0bWwsICcudm9kX2NvbnRlbnQmJnNwYW4mJlRleHQnKS5yZXBsYWNlKC/or6bmg4V85LuL57uNfOeugOS7iy8sICcnKTtcXG4vL+aWh+Wtl+aPj+i/sDxicj7mjaLooYxcXG52YXIgZGVzX3RleHQgPSBwZGZoKGh0bWwsICcudmlkZW8taW5mby1pdGVtcywwJiZUZXh0Jykuc3Vic3RyaW5nKDAsIDM1KSArICc8YnI+JyArIHBkZmgoaHRtbCxcXG4gICAgJy52aWRlby1pbmZvLWl0ZW1zLDEmJlRleHQnKS5zdWJzdHJpbmcoMCwgMzUpICsgJzxicj7nroDku4vvvJonICsgZGVzX2Rlc2M7XFxuLy/nur/ot6/lkI3mlbDnu4R0YWJzXFxudmFyIGFydHMgPSBwZGZhKGh0bWwsICdib2R5JiYubW9kdWxlLXRhYi1pdGVtJyk7XFxudmFyIHRhYnMgPSBbXTtcXG5mb3IgKHZhciBpIGluIGFydHMpIHtcXG4gICAgdGFicy5wdXNoKHBkZmgoYXJ0c1tpXSwgJ3NwYW4mJlRleHQnKS5yZXBsYWNlKCfop4bpopEnLCAnJykucmVwbGFjZSgnRjcnLCAnJykucmVwbGFjZSgn5ZOU5ZOp5ZOU5ZOpJywgJ2JpbGliaWxpJykucmVwbGFjZSgn5aWH6Im6JywgJ+eIseWlh+iJuicpKVxcbn1cXG4vL2xvZyh0YWJzKVxcbi8v6YCJ6ZuG5pWw57uEbGlzdHNcXG52YXIgY29udHMgPSBwZGZhKGh0bWwsICdib2R5JiYuc2Nyb2xsLWJveC15Jyk7XFxudmFyIGxpc3RzID0gW107XFxuZm9yICh2YXIgaSBpbiBjb250cykge1xcbiAgICBsaXN0cy5wdXNoKHBkZmEoY29udHNbaV0sICdib2R5JiZhJykpXFxufVxcbi8qIC0tIOiuvue9ruWXheaOoijlhY3ll4Uv6YCa5YWNL+aWreaPkikg6Ieq5YaZ5YWN5ZeF5Y+Y6YePbGF6eeWGmeWIsOmhtemdouagh+ivhuS4umxhennnmoTlrZDpobXpnaIgLS0qL1xcbnZhciDll4XmjqIgPSAn5YWN5ZeFJztcXG4vKiAtLSDlpoLkuI3lvIB4NeS6jOe6p++8jOaUueWOn+eUn+WktOmDqO+8jOivt+WFsyfot53pobYnIC0tKi9cXG52YXIgeDXmoLflvI8gPSAn5byAJztcXG52YXIg6Led6aG2ID0gJ+W8gCc7XFxudmFyIOavj+mhtembhuaVsCA9IDQwO1xcbnZhciDlupXpg6jmjInpkq4gPSAn5byAJztcXG52YXIg57q/6Lev5qC35byPID0gJ2ZsZXhfYnV0dG9uJztcXG4vKiAtLSDnur/ot6/moLflvI/lu7rorq5pY29uX3NtYWxsXzMvc2Nyb2xsX2J1dHRvbi9mbGV4X2J1dHRvbiAtLSovXFxuLyogLS0g6aG65bCBIC0tKi9cXG5yZXF1aXJlKCdodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD00MDA0Jyk7XCIsXCJncm91cFwiOlwi4pGh5b2x5pCcXCIsXCJ1YVwiOlwibW9iaWxlXCIsXCJwcmVSdWxlXCI6XCJpbml0Q29uZmlnKHtcXG4gICAgY2F0ZWdvcnlMaWI6ICdodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD0yNzA1JyxcXG4gICAgY2F0ZWdvcnlMb2NhbExpYjogJ2hpa2VyOi8vZmlsZXMvcnVsZXMvanMvY2F0ZWdvcmllcy1oZWFkZXIuanMnLFxcbiAgICBjYXRlZ29yeUdpdGVlTGliOiAnaHR0cHM6Ly9naXRlZS5jb20vcmVib3JuMC9IaWtlclJ1bGVzL3Jhdy9tYXN0ZXIvcGx1Z2lucy9jYXRlZ29yaWVzLWhlYWRlci5qcycsXFxufSlcIixcInBhZ2VzXCI6XCJbe1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwibGF6eVxcXCIsXFxcInBhdGhcXFwiOlxcXCJsYXp5XFxcIixcXFwicnVsZVxcXCI6XFxcInZhciBsYXp5ID0gJChcXFxcXFxcIlxcXFxcXFwiKS5sYXp5UnVsZSgoKSA9PiB7XFxcXG4gICAgdmFyIHBsYXllciA9IEpTT04ucGFyc2UocmVxdWVzdChpbnB1dCkubWF0Y2goL3IgcGxheWVyXy4qPz0oLio/KTwvKVsxXSk7XFxcXG4gICAgdmFyIGpzdXJsID0gcGxheWVyLnVybDtcXFxcbiAgICBpZiAocGxheWVyLmVuY3J5cHQgPT0gJzEnKSB7XFxcXG4gICAgICAgIHZhciBqc3VybCA9IHVuZXNjYXBlKGpzdXJsKTtcXFxcbiAgICB9IGVsc2UgaWYgKHBsYXllci5lbmNyeXB0ID09ICcyJykge1xcXFxuICAgICAgICB2YXIganN1cmwgPSB1bmVzY2FwZShiYXNlNjREZWNvZGUoanN1cmwpKTtcXFxcbiAgICB9IGVsc2Uge1xcXFxuICAgICAgICBqc3VybFxcXFxuICAgIH07XFxcXG4gICAgdmFyIGZyb20gPSBwbGF5ZXIuZnJvbTtcXFxcbiAgICBpZiAoanN1cmwuc2VhcmNoKC9cXFxcXFxcXC5tcDR8XFxcXFxcXFwubTN1OC8pID4gLTEpIHtcXFxcbiAgICAgICAgcmV0dXJuIGpzdXJsO1xcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIGV2YWwocmVxdWVzdChwZChmZXRjaChpbnB1dCwgKSwgJy5wbGF5ZXItd3JhcHBlciYmc2NyaXB0LDEmJnNyYycpKSk7XFxcXG4gICAgICAgIHZhciBqeCA9IE1hY1BsYXllckNvbmZpZy5wbGF5ZXJfbGlzdFtmcm9tXS5wYXJzZTtcXFxcbiAgICAgICAgaWYgKGp4ID09ICcnKSB7XFxcXG4gICAgICAgICAgICBqeCA9IFxcXFxcXFwiaHR0cHM6Ly9qaWV4aS5mN3lzLmNvbS9qaWV4aS5waHA/dXJsPVxcXFxcXFwiO1xcXFxuICAgICAgICB9O1xcXFxuICAgICAgICBsb2coJ1xcXFxcXFxcbue6v+i3r++8micgKyBmcm9tICsgJ1xcXFxcXFxcbicgKyAn6Kej5p6Q5o6l5Y+j77yaJyArIGp4KTtcXFxcbiAgICAgICAgdmFyIHBhcnNlID0ganggKyBqc3VybDtcXFxcbiAgICAgICAgLy9sb2cocGFyc2UpO1xcXFxuXFxcXG4gICAgICAgIHZhciByZWYgPSBcXFxcXFxcImh0dHBzOi8vd3d3Lmhhb2thbmp1MS5jY1xcXFxcXFwiO1xcXFxuICAgICAgICB2YXIgamh0bWwgPSBcXFxcXFxcIlxcXFxcXFwiO1xcXFxuXFxcXG4gICAgICAgIGlmIChyZWYpIHtcXFxcbiAgICAgICAgICAgIGpodG1sID0gcmVxdWVzdChwYXJzZSwge1xcXFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgJ1JlZmVyZXInOiByZWZcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgIGpodG1sID0gcmVxdWVzdChwYXJzZSk7XFxcXG4gICAgICAgIH1cXFxcbiAgICAgICAgZXZhbChnZXRDcnlwdG9KUygpKTtcXFxcbiAgICAgICAga2V5ID0gXFxcXFxcXCI1REQwMjQ2NTk3MzY4MTFDXFxcXFxcXCI7XFxcXG4gICAgICAgIHZhciBsZV90b2tlbiA9IGpodG1sLm1hdGNoKC9fdG9rZW4gPSBcXFxcXFxcXFxcXFxcXFwiKC4qPylcXFxcXFxcXFxcXFxcXFwiLylbMV07XFxcXG4gICAgICAgIHZhciBfdG9rZW5fa2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2Uoa2V5KTtcXFxcbiAgICAgICAgdmFyIF90b2tlbl9pdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGxlX3Rva2VuKTtcXFxcbiAgICAgICAgdmFyIFZpZGVvSW5mbyA9IGpodG1sLm1hdGNoKC9nZXRWaWRlb0luZm9cXFxcXFxcXChcXFxcXFxcXFxcXFxcXFwiKC4qPylcXFxcXFxcXFxcXFxcXFwiLylbMV07XFxcXG5cXFxcbiAgICAgICAgZnVuY3Rpb24gdl9kZWNyeXB0KGRhdGEsIHRva2VuX2tleSwgdG9rZW5faXYpIHtcXFxcbiAgICAgICAgICAgIHJldHVybiBDcnlwdG9KUy5BRVMuZGVjcnlwdChkYXRhLCB0b2tlbl9rZXksIHtcXFxcbiAgICAgICAgICAgICAgICBpdjogdG9rZW5faXZcXFxcbiAgICAgICAgICAgIH0pLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcXFxcbiAgICAgICAgfTtcXFxcbiAgICAgICAgdmFyIHZpZGVvID0gdl9kZWNyeXB0KFZpZGVvSW5mbywgX3Rva2VuX2tleSwgX3Rva2VuX2l2KTtcXFxcbiAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QoanN1cmwpKSB7XFxcXG4gICAgICAgICAgICByZXR1cm4gdmlkZW8gKyBcXFxcXFxcIjt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX1cXFxcXFxcIjtcXFxcbiAgICAgICAgfSBlbHNlIGlmICgvYmlsaS8udGVzdChqc3VybCkpIHtcXFxcbiAgICAgICAgICAgIHJldHVybiB2aWRlbyArIFxcXFxcXFwiO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wJiZSZWZlcmVyQGh0dHBzOi8vd3d3LmJpbGliaWxpLmNvbX1cXFxcXFxcIjtcXFxcbiAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgIHJldHVybiB2aWRlbztcXFxcbiAgICAgICAgfVxcXFxuICAgIH1cXFxcbn0pO1xcXCJ9LHtcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcIuWKqOaAgeWIhuexu1xcXCIsXFxcInBhdGhcXFwiOlxcXCLliqjmgIHliIbnsbtcXFwiLFxcXCJydWxlXFxcIjpcXFwiY29uc3QgQ29sb3IgPSBcXFxcXFxcIiMxOUI4OURcXFxcXFxcIjtcXFxcblxcXFxubGV0IHRydWVfdXJsID0gZ2V0VmFyKE1ZX1JVTEUudXJsLCBNWV9VUkwpXFxcXG4vL2xvZyh0cnVlX3VybClcXFxcbmNvbnN0IHBhZ2UgPSBNWV9QQUdFXFxcXG4vL2xvZyhwYWdlKVxcXFxuaWYgKGdldFZhcihNWV9SVUxFLnVybCkpIHtcXFxcbiAgICB0cnVlX3VybCA9IHRydWVfdXJsLnJlcGxhY2UoLy0tLShcXFxcXFxcXGQqKVxcXFxcXFxcLmh0bWwvLCArcGFnZSArICctLS0kMS5odG1sJyk7XFxcXG4gICAgbG9nKHRydWVfdXJsKVxcXFxufVxcXFxudmFyIGh0bWwgPSBmZXRjaCh0cnVlX3VybCwge1xcXFxuICAgIGhlYWRlcnM6IHtcXFxcbiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCknXFxcXG4gICAgfVxcXFxufSlcXFxcbmNvbnN0IGVtcHR5ID0gXFxcXFxcXCJoaWtlcjovL2VtcHR5XFxcXFxcXCJcXFxcblxcXFxuY29uc3QgY2F0ZWdvcmllcyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJyNtYWluJiYuc2Nyb2xsLWNvbnRlbnQnKVxcXFxuXFxcXG5sZXQgaW5pdF9jYXRlID0gW11cXFxcblxcXFxuZm9yIChsZXQgaSA9IDA7IGkgPCAyMDsgaSsrKSB7XFxcXG4gICAgaW5pdF9jYXRlLnB1c2goXFxcXFxcXCIwXFxcXFxcXCIpXFxcXG59XFxcXG5cXFxcbmNvbnN0IGZvbGQgPSBnZXRWYXIoTVlfUlVMRS5ncm91cCwgXFxcXFxcXCIwXFxcXFxcXCIpXFxcXG5jb25zdCBjYXRlX3RlbXBfanNvbiA9IGdldFZhcihNWV9SVUxFLnRpdGxlLCBKU09OLnN0cmluZ2lmeShpbml0X2NhdGUpKVxcXFxuY29uc3QgY2F0ZV90ZW1wID0gSlNPTi5wYXJzZShjYXRlX3RlbXBfanNvbilcXFxcblxcXFxuaWYgKHBhcnNlSW50KHBhZ2UpID09PSAxKSB7XFxcXG4gICAgZC5wdXNoKHtcXFxcbiAgICAgICAgdGl0bGU6IGZvbGQgPT09ICcxJyA/ICfigJzigJzigJ3igJ08Yj48c3BhbiBzdHlsZT1cXFxcXFxcImNvbG9yOiAjRkYwMDAwXFxcXFxcXCI+4oioPC9zcGFuPjwvYj4nIDogJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXFxcXFwiY29sb3I6JyArIENvbG9yICsgJ1xcXFxcXFwiPuKIpzwvc3Bhbj48L2I+JyxcXFxcbiAgICAgICAgdXJsOiAkKGVtcHR5KS5sYXp5UnVsZSgoZm9sZCkgPT4ge1xcXFxuICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUuZ3JvdXAsIGZvbGQgPT09ICcxJyA/ICcwJyA6ICcxJyk7XFxcXG4gICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxcXG4gICAgICAgICAgICByZXR1cm4gXFxcXFxcXCJoaWtlcjovL2VtcHR5XFxcXFxcXCJcXFxcbiAgICAgICAgfSwgZm9sZCksXFxcXG4gICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxcXG4gICAgfSlcXFxcblxcXFxuXFxcXG4gICAgY2F0ZWdvcmllcy5mb3JFYWNoKChjYXRlZ29yeSwgaW5kZXgpID0+IHtcXFxcbiAgICAgICAgbGV0IHN1Yl9jYXRlZ29yaWVzID0gcGFyc2VEb21Gb3JBcnJheShjYXRlZ29yeSwgJ2JvZHkmJmEnKTtcXFxcbiAgICAgICAgaWYgKGluZGV4ID09PSAwKSB7XFxcXG4gICAgICAgICAgICBzdWJfY2F0ZWdvcmllcy5mb3JFYWNoKChpdGVtLCBrZXkpID0+IHtcXFxcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwYXJzZURvbUZvckh0bWwoaXRlbSwgJ2EmJlRleHQnKS5yZXBsYWNlKCfniYflupMnLCAnJylcXFxcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZToga2V5LnRvU3RyaW5nKCkgPT09IGNhdGVfdGVtcFtpbmRleF0gPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcXFxcXCJjb2xvcjonICsgQ29sb3IgKyAnXFxcXFxcXCI+JyArIHRpdGxlICsgJzwvc3Bhbj48L2I+JyA6IHRpdGxlLFxcXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICQocGFyc2VEb20oaXRlbSwgJ2EmJmhyZWYnKSkubGF6eVJ1bGUoKHBhcmFtcykgPT4ge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld19jYXRlID0gW11cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5jYXRlX3RlbXAuZm9yRWFjaCgoY2F0ZSwgaW5kZXgpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdfY2F0ZS5wdXNoKGluZGV4ID09PSAwID8gcGFyYW1zLmtleS50b1N0cmluZygpIDogXFxcXFxcXCIwXFxcXFxcXCIpXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudGl0bGUsIEpTT04uc3RyaW5naWZ5KG5ld19jYXRlKSlcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnVybCwgaW5wdXQpXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSh0cnVlKVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9lbXB0eVxcXFxcXFwiXFxcXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGVfdGVtcDogY2F0ZV90ZW1wLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5OiBrZXksXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlOiBwYWdlLFxcXFxuICAgICAgICAgICAgICAgICAgICB9KSxcXFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXFxcbiAgICAgICAgICAgICAgICB9KVxcXFxuICAgICAgICAgICAgfSlcXFxcbiAgICAgICAgICAgIGQucHVzaCh7XFxcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXFxcXFwiYmxhbmtfYmxvY2tcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSk7XFxcXG4gICAgICAgIH0gZWxzZSBpZiAoZm9sZCA9PT0gJzEnKSB7XFxcXG4gICAgICAgICAgICBzdWJfY2F0ZWdvcmllcy5mb3JFYWNoKChpdGVtLCBrZXkpID0+IHtcXFxcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwYXJzZURvbUZvckh0bWwoaXRlbSwgJ2EmJlRleHQnKVxcXFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBrZXkudG9TdHJpbmcoKSA9PT0gY2F0ZV90ZW1wW2luZGV4XSA/ICfigJzigJzigJ3igJ08c3BhbiBzdHlsZT1cXFxcXFxcImNvbG9yOicgKyBDb2xvciArICdcXFxcXFxcIj4nICsgdGl0bGUgKyAnPC9zcGFuPicgOiB0aXRsZSxcXFxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAkKHBhcnNlRG9tKGl0ZW0sICdhJiZocmVmJykpLmxhenlSdWxlKChwYXJhbXMpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5jYXRlX3RlbXBbcGFyYW1zLmluZGV4XSA9IHBhcmFtcy5rZXkudG9TdHJpbmcoKVxcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS50aXRsZSwgSlNPTi5zdHJpbmdpZnkocGFyYW1zLmNhdGVfdGVtcCkpXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS51cmwsIGlucHV0KVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFxcXFxcImhpa2VyOi8vZW1wdHlcXFxcXFxcIlxcXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXRlX3RlbXA6IGNhdGVfdGVtcCxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZTogcGFnZSxcXFxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxcXG4gICAgICAgICAgICAgICAgfSlcXFxcbiAgICAgICAgICAgIH0pXFxcXG4gICAgICAgICAgICBkLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFxcXFxcImJsYW5rX2Jsb2NrXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0pO1xcXFxuICAgICAgICB9XFxcXG4gICAgfSlcXFxcbn1cXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwOi8vMmltZy5oaXR2LmNvbS9wcmV2aWV3L3NwX2ltYWdlcy8yMDIyLzA0LzE0LzIwMjIwNDE0MTYwOTA3MTI2NDAxMi5qcGciLCJ0aXRsZSI6IuWjsOeUn+S4jeaBr+iInuWPsOe6r+S6q+eJiCJ9
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement