Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@𝐒𝐮𝐩𝐣𝐚𝐯🪜@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi8J2QkvCdkK7wnZCp8J2Qo/CdkJrwnZCv8J+qnCIsImF1dGhvciI6IlIiLCJ1cmwiOiJoaWtlcjovL2VtcHR5IyNodHRwczovL3N1cGphdi5jb20vemgvIyNmeXBhZ2UiLCJ2ZXJzaW9uIjoyMDI0MDUxMSwiY29sX3R5cGUiOiJtb3ZpZV8zIiwiY2xhc3NfbmFtZSI6IiIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6IiIsImFyZWFfbmFtZSI6IiIsImFyZWFfdXJsIjoiIiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoiIiwic29ydF91cmwiOiIiLCJ5ZWFyX3VybCI6IiIsImZpbmRfcnVsZSI6ImpzOlxuYWRkTGlzdGVuZXIoXCJvbkNsb3NlXCIsICgpID0+IHtcbiAgICBjbGVhck15VmFyKFwibmV4dFBhZ2VcIik7XG59KTtcbi8qXG5hZGRMaXN0ZW5lcihcIm9uUmVmcmVzaFwiLCAoKSA9PiB7XG4gICAgY2xlYXJNeVZhcihcIm5leHRQYWdlXCIpO1xufSk7XG4qL1xudmFyIGQgPSBbXVxuTVlfVVJMID0gTVlfVVJMLnNwbGl0KFwiIyNcIilbMV1cbmxldCB0cnVlX3VybCA9IGdldE15VmFyKFwidXJsXCIsIE1ZX1VSTCk7XG5sZXQgbmV4dFBhZ2UgPSBnZXRNeVZhcihcIm5leHRQYWdlXCIsIFwiXCIpO1xuaWYgKG5leHRQYWdlICYmIE1ZX1BBR0UgPiAxKSB7XG4gICAgdHJ1ZV91cmwgPSBuZXh0UGFnZTtcbn1cbnZhciBodG1sID0gZmV0Y2godHJ1ZV91cmwse2hlYWRlcnM6SlNPTi5wYXJzZShnZXRNeVZhcignaGVhZGVycycpKX0pXG4vL2xvZyhodG1sKVxudHJ5IHtcbiAgICBsZXQgbmV4dFVybCA9IHBkKGh0bWwsIFwiLnBhZ2luYXRpb24mJmxpW2NsYXNzPWFjdGl2ZV0rbGkmJmEmJmhyZWZcIik7XG4gICAgaWYgKCFuZXh0VXJsID09XCJcIilcbiAgICBwdXRNeVZhcihcIm5leHRQYWdlXCIsIG5leHRVcmwgfHwgXCJcIik7XG59IGNhdGNoIChlKSB7XG4gICAgY2xlYXJNeVZhcihcIm5leHRQYWdlXCIpO1xuICAgLy8gdG9hc3QoXCLlpb3lg4/msqHmnInkuIvkuIDpobXkuobvvIFcIik7XG59XG5sb2codHJ1ZV91cmwpXG4vL2xvZyhcIuS4i+S4gOmhtSAg77yaXCIrbmV4dFBhZ2UpXG5mdW5jdGlvbiBnZXRIZWFkKHRpdGxlLGNvbG9yKSB7XG4gICAgICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHN0cm9uZz48Zm9udCBjb2xvcj1cIicgKyBjb2xvciArICdcIj4nICsgdGl0bGUgKyAnPC9mcm9udD48L3N0cm9uZz4nO1xuICAgICAgICAgfVxuXG4kLnJlcXVpcmUoXCJjYXRlZ29yeVwiKSgpXG5cbmlmICggdHJ1ZV91cmwgPT1cImh0dHBzOi8vc3VwamF2LmNvbS96aC9cIiApe1xuaWYgKE1ZX1BBR0UgPT0gMSkge1xuJC5yZXF1aXJlKFwiaG9tZVwiKVxufVxufSBlbHNlIGlmICgvdGFnfG1ha2VyfGNhc3QvLnRlc3QodHJ1ZV91cmwpKSB7XG4kLnJlcXVpcmUoXCJ0YWJzXCIpXG59IGVsc2Uge1xuJC5yZXF1aXJlKFwibGlzdFwiKSgpXG59XG5cbnNldFJlc3VsdChkKSIsInNlYXJjaF91cmwiOiJodHRwczovL3N1cGphdi5jb20vemgvcGFnZS9meXBhZ2U/cz0qKiIsImdyb3VwIjoiOeeni+WQjeWxsSIsInNlYXJjaEZpbmQiOiJqczpcbiQucmVxdWlyZShcInlpXCIpIiwiZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMSIsImRldGFpbF9maW5kX3J1bGUiOiIiLCJzZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMSIsInNkZXRhaWxfZmluZF9ydWxlIjoiIiwidWEiOiJtb2JpbGUiLCJwcmVSdWxlIjoiaWYgKCFnZXRNeVZhcignaGVhZGVycycpKXtcbnB1dE15VmFyKCdoZWFkZXJzJyx7XCJDb29raWVcIjpcImNmX2NsZWFyYW5jZT0zU3duLkl6Y2FRN2dlcGNNSG9La21NM2JzX0oyNnguQldXNkhCVGxVdHowLTE3MDUyNjYwMzAtMC0yLWE2NTliMzhjLjYzOWM4NWRjLmYxNThlYzZjLTE2MC4yLjE3MDUyNjYwMzBcIixcIlVzZXItQWdlbnRcIjpcIk1vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTZfNF8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgVmVyc2lvbi8xNi40IE1vYmlsZS8xNUUxNDggU2FmYXJpLzYwNC4xXCIsXCJSZWZlcmVyXCI6XCJodHRwczovL3N1cGphdi5jb20vXCJ9KVxufSIsInBhZ2VzIjoiW3tcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLliIbnsbtcIixcInBhdGhcIjpcImNhdGVnb3J5XCIsXCJydWxlXCI6XCIkLmV4cG9ydHMgPSAoKSA9PiB7XFxuYWRkTGlzdGVuZXIoXFxcIm9uQ2xvc2VcXFwiLCAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgIGNsZWFyTXlWYXIoXFxcInNvcnRcXFwiKTsgICBcXG4gICAgICAgIGNsZWFyTXlWYXIoXFxcInBhZ2lcXFwiKTsgICBcXG4gICAgICAgLy8gY2xlYXJNeVZhcihcXFwidXJsXFxcIik7ICAgXFxufSkpO1xcbmFkZExpc3RlbmVyKFxcXCJvblJlZnJlc2hcXFwiLCAoKSA9PiB7XFxuICAgICAgICBjbGVhck15VmFyKFxcXCJzb3J0XFxcIik7ICAgXFxuICAgICAgICBjbGVhck15VmFyKFxcXCJwYWdpXFxcIik7ICAgXFxuICAgICAgICBjbGVhck15VmFyKFxcXCJ1cmxcXFwiKTsgICBcXG4gICAgICAgIGNsZWFyTXlWYXIoXFxcInRhYlxcXCIpOyAgIFxcbn0pO1xcbmlmIChNWV9QQUdFID09IDEpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBcXFwi8J+UjVxcXCIsXFxuICAgICAgICB1cmw6ICQudG9TdHJpbmcoKHIpID0+IHtcXG4gICAgICAgICAgICBwdXRNeVZhcigna2V5d29yZCcsIGlucHV0KTtcXG4gICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vc2VhcmNoP3J1bGU9JyArIHIgKyAnJnM9JyArIGlucHV0O1xcbiAgICAgICAgfSwgTVlfUlVMRS50aXRsZSksXFxuICAgICAgICBkZXNjOiAn5pu+57uP5rKn5rW36Zq+5Li65rC0LOmZpOWNtOW3q+WxseS4jeaYr+S6kScsXFxuICAgICAgICBjb2xfdHlwZTogXFxcImlucHV0XFxcIixcXG4gICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiBnZXRNeVZhcigna2V5d29yZCcsICcnKSB8fCBcXFwiXFxcIixcXG4gICAgICAgIH1cXG4gICAgfSk7XFxuICAgICAgICB2YXIgdGFicyA9IHBkZmEoaHRtbCwgXFxcIi5uYXYmJmxpOm5vdChsaTpoYXMoLnN1Yi1tZW51KSk6bm90KDpoYXMoYVt0YXJnZXRdKSk6bm90KDpoYXMoYVt0aXRsZV0pKVxcXCIpO1xcbiAgIGZvciAodmFyIGkgaW4gdGFicykge1xcbiAgICAgICAgdmFyIHRpdGxlID0gcGRmaCh0YWJzW2ldLCdUZXh0JylcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IGdldE15VmFyKCd0YWInLCAnMCcpID09IGkgPyBnZXRIZWFkKHRpdGxlLCcjRkY2Njk5JykgOiB0aXRsZSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgIHVybDogcGQodGFic1tpXSwgJ2EmJmhyZWYnKSArICQoXFxcIiNub0xvYWRpbmcjXFxcIikubGF6eVJ1bGUoKCBpKSA9PiB7XFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKCd0YWInLCBpKVxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcihcXFwidXJsXFxcIiwgaW5wdXQpO1xcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICB9LCBpKVxcbiAgICAgICAgfSlcXG4gICAgaWYgKGk9PTUpIHtcXG4gICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIGNvbF90eXBlOiBcXFwiYmxhbmtfYmxvY2tcXFwiXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgIH1cXG4gICAgfVxcbiAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJibGFua19ibG9ja1xcXCJcXG4gICAgICAgICAgICB9KVxcbn1cXG4gICAgIHZhciBwYWdpbmF0aW9uID0gcGRmYShodG1sLCBcXFwiLnBhZ2luYXRpb24mJmxpOm5vdCgucHJldi1wYWdlKTpub3QoLm5leHQtcGFnZSlcXFwiKTtcXG4gICAgdmFyIGN1cnJlbnR1ID0gcGRmaChodG1sLFxcXCJsaW5rW2hyZWZsYW5nPXpoXSYmaHJlZlxcXCIpXFxuXFxuICAgIHZhciBmaXJzdHUgPSBjdXJyZW50dS5yZXBsYWNlKC9cXFxcL3BhZ2VcXFxcL1xcXFxkKy8sXFxcIlxcXCIpXFxuICAgIHZhciBhY3RpdmUgPSBjdXJyZW50dS5tYXRjaCgvXFxcXC9wYWdlXFxcXC8oXFxcXGQrKS8pID8gY3VycmVudHUubWF0Y2goL1xcXFwvcGFnZVxcXFwvKFxcXFxkKykvKVsxXSA6IDE7XFxuICAgIHZhciBsYXN0dSA9IHBkZmgocGFnaW5hdGlvbi5wb3AoKSxcXFwiYSYmaHJlZlxcXCIpIHx8IGN1cnJlbnR1XFxuICAgIHZhciBsYXN0cCA9IGxhc3R1Lm1hdGNoKC9cXFxcL3BhZ2VcXFxcLyhcXFxcZCspLykgPyBsYXN0dS5tYXRjaCgvXFxcXC9wYWdlXFxcXC8oXFxcXGQrKS8pWzFdIDogMTtcXG5cXG5pZiAoIWN1cnJlbnR1LmluY2x1ZGVzKFxcXCJwb3B1bGFyXFxcIikpe1xcbiAgICAgbGFzdHUgPSBsYXN0dS5yZXBsYWNlKC9cXFxcL3BhZ2VcXFxcL1xcXFxkKy8sIFxcXCIvcGFnZS9cXFwiICsgKGxhc3RwIC0gMikpXFxuICAgICBsYXN0cCA9IGxhc3RwIC0yXFxufVxcblxcbnZhciBwYWdpO1xcbiAgICBpZiAoYWN0aXZlPT0xKSB7XFxuICAgICAgIHBhZ2kgPSAwXFxufSBlbHNlIGlmIChhY3RpdmUgPT0gbGFzdHApIHtcXG4gICAgICAgcGFnaSA9IDJcXG59IGVsc2Uge1xcbiAgICAgICBwYWdpID0gMVxcbn1cXG4gICAgdmFyIHRpdGxlID0gW1xcXCLpppZcXFwiLFxcXCLot7PpobU6XFxcIiArIGFjdGl2ZSxcXFwi5bC+6aG1OlxcXCIgKyBsYXN0cF1cXG4gICAgdmFyIHVybHMgPSBbZmlyc3R1LE1ZX1VSTCxsYXN0dV1cXG5pZiAoIGN1cnJlbnR1ICE9PSBcXFwiaHR0cHM6Ly9zdXBqYXYuY29tL3poL1xcXCIgKXtcXG4gICBmb3IgKHZhciBqIGluIHRpdGxlKSB7XFxuXFxuICAgIHZhciB1cmwgPSB1cmxzW2pdICsgJChcXFwiI25vTG9hZGluZyNcXFwiKS5sYXp5UnVsZSgoaikgPT4geyAgICBcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInVybFxcXCIsIGlucHV0KTtcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxuICAgICAgICAgICAgfSwgailcXG5cXG4gICAgaWYgKGo9PTEpIHtcXG4gICAgdXJsID0gJCgnJywn6Zmk6aaW6aG15ZKM5bC+6aG15LmL5aSW55qE6aG156CBJykuaW5wdXQoKGxhc3R1LGxhc3RwKT0+e1xcbiAgICAgICAgaWYgKHBhcnNlSW50KGlucHV0KSA+IDEgJiYgcGFyc2VJbnQoaW5wdXQpIDwgcGFyc2VJbnQobGFzdHApICYmIHBhcnNlSW50KGlucHV0KSAlIDEgPT0gMCkge1xcbiAgICAgICAgICAgICAgICB2YXIganVtcHUgPSBsYXN0dS5yZXBsYWNlKC9cXFxcL3BhZ2VcXFxcL1xcXFxkKy8sIFxcXCIvcGFnZS9cXFwiKyBpbnB1dClcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInVybFxcXCIsIGp1bXB1KTtcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxufSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL+ivt+i+k+WFpeato+ehrueahOmhteeggVxcXCJ9XFxuICAgICAgICAgICB9LGxhc3R1LGxhc3RwKSAgICAgICAgICAgICAgICAgIFxcbiAgICAgIH1cXG5cXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IHBhZ2kgPT0gaiA/IGdldEhlYWQodGl0bGVbal0sJyNGRjY2OTknKSA6IHRpdGxlW2pdLCAgICAgICAgICAgXFxuICAgICAgICAgICAgdXJsOiB1cmwsXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJywgICAgICAgICAgICAgICAgIFxcbiAgICAgICAgfSlcXG59fVxcblxcbmlmIChNWV9QQUdFID09IDEpIHtcXG4gICAgIHZhciBzb3R0ID0gY3VycmVudHUucmVwbGFjZSgvLio/KD0oLiopfCQpLyxcXFwiJDJcXFwiKVxcbiAgICAgdmFyIHNvcnQgPSBwZGZhKGh0bWwsIFxcXCIuc29ydCYmYVxcXCIpO1xcbiAgICAgc290dCA9IHNvdHQgPT09IFxcXCJcXFwiID8gcGRmaChzb3J0WzBdLCdUZXh0JykudG9Mb3dlckNhc2UoKSA6IHNvdHQ7XFxuICAgZm9yICh2YXIgaiBpbiBzb3J0KSB7XFxuICAgICAgICB2YXIgdGl0bGUgPSBwZGZoKHNvcnRbal0sJ1RleHQnKVxcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogc290dCAgPT0gdGl0bGUudG9Mb3dlckNhc2UoKSA/IGdldEhlYWQodGl0bGUsJyNGRjY2OTknKSA6IHRpdGxlLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgICAgICAgICAgdXJsOiBwZChzb3J0W2pdLCAnYSYmaHJlZicpICsgJChcXFwiI25vTG9hZGluZyNcXFwiKS5sYXp5UnVsZSgoaikgPT4ge1xcbiAgICAgICAgICAgICAgICBwdXRNeVZhcihcXFwidXJsXFxcIiwgaW5wdXQpO1xcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICB9LCBqKVxcbiAgICAgICAgfSlcXG59XFxuXFxufVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuWIl+ihqFwiLFwicGF0aFwiOlwibGlzdFwiLFwicnVsZVwiOlwiJC5leHBvcnRzID0gKCkgPT4ge1xcbnZhciBsaXN0ID0gcGRmYShodG1sLCBcXFwiLnBvc3RzJiYucG9zdFxcXCIpO1xcbmxpc3QuZm9yRWFjaChpdGVtPT57XFxuICAgdmFyIGltZyA9IHBkKGl0ZW0sXFxcImltZyYmZGF0YS1vcmlnaW5hbFxcXCIpO1xcbiAgIHZhciB0aXRsZSA9IHBkZmgoaXRlbSxcXFwiYSYmdGl0bGVcXFwiKS5yZXBsYWNlKFxcXCJb5Lit5paH5a2X5bmVXVxcXCIsXFxcIvCfh6jwn4ezXFxcIikucmVwbGFjZShcXFwiW+aXoOeggeegtOino11cXFwiLFxcXCLwn5SlXFxcIikucmVwbGFjZShcXFwiWzRLXVxcXCIsXFxcIvCflqVcXFwiKS5yZXBsYWNlKFxcXCJb6Iux5paH5a2X5bmVXVxcXCIsXFxcIvCfh7rwn4e4XFxcIik7XFxuICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgdGl0bGU6IHRpdGxlLFxcbiAgICAgICAgICAgICAgIGRlc2M6IHBkZmgoaXRlbSxcXFwiLm1ldGEtLS5kYXRlJiZUZXh0XFxcIiksXFxuICAgICAgICAgICAgICAgaW1nOiBpbWcucmVwbGFjZSgvKGh0dHAuKj9cXFxcLig/OmpwZ3x3ZWJwfHBuZ3xqcGVnKSkuKi8sXFxcIiQxXFxcIiksXFxuICAgICAgICAgICAgICAgdXJsOiBwZGZoKGl0ZW0sXFxcImEmJmhyZWZcXFwiKSArICdAcnVsZT1qczokLnJlcXVpcmUoXFxcImVyXFxcIiknLFxcbiAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwibW92aWVfMlxcXCIsXFxuICAgICAgICAgICAgICAgZXh0cmE6IHtwYWdlVGl0bGU6dGl0bGV9XFxuICAgICAgICAgfSlcXG59KVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuagh+etvlwiLFwicGF0aFwiOlwidGFic1wiLFwicnVsZVwiOlwidmFyIGdldFJhbmdlQ29sb3JzID0gZnVuY3Rpb24oKSB7XFxuICAgIHJldHVybiAnIycgKyAoJzAwMDAwJyArIChNYXRoLnJhbmRvbSgpICogMHgxMDAwMDAwIDw8IDApLnRvU3RyaW5nKDE2KSkuc3Vic3RyKC02KTtcXG59XFxudmFyIGxpc3RzID0gcGRmYShodG1sLCBcXFwiLmNhdGVnb3J5cyYmLmNoaWxkXFxcIik7XFxubGlzdHMuZm9yRWFjaChpdGVtPT57XFxuICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgdGl0bGU6ICfigJzigJzigJ3igJ0nICsgcGRmaChpdGVtLFxcXCJhJiZUZXh0XFxcIikuZm9udGNvbG9yKGdldFJhbmdlQ29sb3JzKCkpLCAgICAgICAgIFxcbiAgICAgICAgICAgICAgIHVybDogcGRmaChpdGVtLFxcXCJhJiZocmVmXFxcIikgKyAnIyNmeXBhZ2VAcnVsZT1qczokLnJlcXVpcmUoXFxcInlpXFxcIiknLFxcbiAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwidGV4dF8yXFxcIixcXG4gICAgICAgICB9KVxcbn0pXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLpppbpobVcIixcInBhdGhcIjpcImhvbWVcIixcInJ1bGVcIjpcInZhciB0YWIxID0gcGRmYShodG1sLCAnYm9keSYmLnJlY29tbWVuZCcpOyBcXG52YXIgdGFiMiA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5jb250ZW50cyYmLmNvbnRlbnQnKTsgXFxudmFyIHRhYnMgPSB0YWIxLmNvbmNhdCh0YWIyKVxcbnZhciBjb250cyA9IHRhYnNcXG5cXG5mb3IgKHZhciBpID0gMDsgaSA8IGNvbnRzLmxlbmd0aDsgaSsrKSB7XFxuICAgICAgdmFyIGxpc3QgPSBwZGZhKGNvbnRzW2ldLCAnLnBvc3RzJiYucG9zdCcpOyBcXG4gICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogJzxtaWRkbGU+PGZvbnQgY29sb3I9I0ZGQTUwMD4nK3BkZmgodGFic1tpXSwgJy5hcmNoaXZlLXRpdGxlJiZUZXh0JykucmVwbGFjZShcXFwiKyBNb3JlXFxcIixcXFwiXFxcIikrJzwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgZGVzYzogJzxtaWRkbGU+PGZvbnQgY29sb3I9cmVkPitcXFxcdFxcXFx0XFxcXHRcXFxcdCAg8J2QjPCdkKjwnZCr8J2QnjwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgaW1nOiBcXFwiaHR0cHM6Ly9pbWcudmludWEuY24vaW1hZ2VzL0lJZW5YLnBuZ1xcXCIsXFxuICAgICAgICB1cmw6IHBkKHRhYnNbaV0sJ2EmJmhyZWYnKSArICcjI2Z5cGFnZUBydWxlPWpzOiQucmVxdWlyZShcXFwieWlcXFwiKScsXFxuICAgICAgICBjb2xfdHlwZTogXFxcImF2YXRhclxcXCIsXFxuICAgICAgICBleHRyYToge2xpbmVWaXNpYmxlOmZhbHNlfVxcbiAgICB9KTtcXG5cXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykgeyAgICAgXFxuICB2YXIgaW1nID0gIGkgPT0gMD8gcGQobGlzdFtqXSwnaW1nJiZzcmMnKSA6IHBkKGxpc3Rbal0sJ2ltZyYmZGF0YS1vcmlnaW5hbCcpOyAgXFxuICB2YXIgdGl0bGUgPSBwZGZoKGxpc3Rbal0sICdhJiZ0aXRsZScpLnJlcGxhY2UoXFxcIlvkuK3mloflrZfluZVdXFxcIixcXFwi8J+HqPCfh7NcXFwiKS5yZXBsYWNlKFxcXCJb5peg56CB56C06KejXVxcXCIsXFxcIvCflKVcXFwiKS5yZXBsYWNlKFxcXCJbNEtdXFxcIixcXFwi8J+WpVxcXCIpLnJlcGxhY2UoXFxcIlvoi7HmloflrZfluZVdXFxcIixcXFwi8J+HuvCfh7hcXFwiKTtcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxuICAgICAgICAgICAgICAgIGRlc2M6IHBkZmgobGlzdFtqXSwgJy5tZXRhLS0uZGF0ZSYmVGV4dCcpLFxcbiAgICAgICAgICAgICAgICBpbWc6IGltZy5yZXBsYWNlKC8oaHR0cC4qP1xcXFwuKD86anBnfHdlYnB8cG5nfGpwZWcpKS4qLyxcXFwiJDFcXFwiKSxcXG4gICAgICAgICAgICAgICAgdXJsOiBwZChsaXN0W2pdLCAnYSYmaHJlZicpICsgJ0BydWxlPWpzOiQucmVxdWlyZShcXFwiZXJcXFwiKScsXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMicsXFxuICAgICAgICAgICAgICAgIGV4dHJhOiB7cGFnZVRpdGxlOnRpdGxlfVxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfVxcbiAgICB9XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuIDnuqdcIixcInBhdGhcIjpcInlpXCIsXCJydWxlXCI6XCJqczpcXG5hZGRMaXN0ZW5lcihcXFwib25DbG9zZVxcXCIsICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgY2xlYXJNeVZhcihcXFwieXNvcnRcXFwiKTsgICBcXG4gICAgICAgIGNsZWFyTXlWYXIoXFxcInl1cmxcXFwiKTsgICBcXG4gICAgICAgIGNsZWFyTXlWYXIoXFxcIm5leHRQYWdcXFwiKTsgICBcXG59KSk7XFxudmFyIGQgPSBbXVxcbk1ZX1VSTCA9IGdldE15VmFyKFxcXCJ5dXJsXFxcIiwgTVlfVVJMLnJlcGxhY2UoLyMjXFxcXGQrLyxcXFwiXFxcIikpO1xcbmxldCBuZXh0UGFnID0gZ2V0TXlWYXIoXFxcIm5leHRQYWdcXFwiLCBcXFwiXFxcIik7XFxuaWYgKG5leHRQYWcgJiYgTVlfUEFHRSA+IDEpIHtcXG4gICAgTVlfVVJMID0gbmV4dFBhZztcXG59XFxudmFyIGh0bWwgPSBmZXRjaChNWV9VUkwpXFxudHJ5IHtcXG4gICAgdmFyIG5leHRVcmxsID0gcGQoaHRtbCwgXFxcIi5uZXh0LXBhZ2UmJmEmJmhyZWZcXFwiKTtcXG4gICAgaWYgKCFuZXh0VXJsbCA9PVxcXCJcXFwiKVxcbiAgICBwdXRNeVZhcihcXFwibmV4dFBhZ1xcXCIsIG5leHRVcmxsIHx8IFxcXCJcXFwiKTtcXG59IGNhdGNoIChlKSB7XFxuICAgIGNsZWFyTXlWYXIoXFxcIm5leHRQYWdcXFwiKTtcXG4gICAvLyB0b2FzdChcXFwi5aW95YOP5rKh5pyJ5LiL5LiA6aG15LqG77yBXFxcIik7XFxufVxcbmxvZyhNWV9VUkwpXFxuXFxuLy9sb2coXFxcIuS4i+S4gOmhtSAg77yaXFxcIituZXh0UGFnKVxcbmZ1bmN0aW9uIGdldEhlYWQodGl0bGUsY29sb3IpIHtcXG4gICAgICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHN0cm9uZz48Zm9udCBjb2xvcj1cXFwiJyArIGNvbG9yICsgJ1xcXCI+JyArIHRpdGxlICsgJzwvZnJvbnQ+PC9zdHJvbmc+JztcXG4gICAgICAgICB9XFxuXFxuaWYoTVlfVFlQRSAhPSBcXFwic2VhcmNoXFxcIikge1xcbiAgICAgdmFyIHBhZ2luYXRpb24gPSBwZGZhKGh0bWwsIFxcXCIucGFnaW5hdGlvbiYmbGk6bm90KC5wcmV2LXBhZ2UpOm5vdCgubmV4dC1wYWdlKVxcXCIpO1xcbiAgICB2YXIgY3VycmVudHUgPSBwZGZoKGh0bWwsXFxcImxpbmtbaHJlZmxhbmc9emhdJiZocmVmXFxcIilcXG5cXG4gICAgdmFyIGZpcnN0dSA9IGN1cnJlbnR1LnJlcGxhY2UoL1xcXFwvcGFnZVxcXFwvXFxcXGQrLyxcXFwiXFxcIilcXG4gICAgdmFyIGFjdGl2ZSA9IGN1cnJlbnR1Lm1hdGNoKC9cXFxcL3BhZ2VcXFxcLyhcXFxcZCspLykgPyBjdXJyZW50dS5tYXRjaCgvXFxcXC9wYWdlXFxcXC8oXFxcXGQrKS8pWzFdIDogMTtcXG4gICAgdmFyIGxhc3R1ID0gcGRmaChwYWdpbmF0aW9uLnBvcCgpLFxcXCJhJiZocmVmXFxcIikgfHwgY3VycmVudHVcXG4gICAgdmFyIGxhc3RwID0gbGFzdHUubWF0Y2goL1xcXFwvcGFnZVxcXFwvKFxcXFxkKykvKSA/IGxhc3R1Lm1hdGNoKC9cXFxcL3BhZ2VcXFxcLyhcXFxcZCspLylbMV0gOiAxO1xcblxcbnZhciBwYWdpO1xcbiAgICBpZiAoYWN0aXZlPT0xKSB7XFxuICAgICAgIHBhZ2kgPSAwXFxufSBlbHNlIGlmIChhY3RpdmUgPT0gbGFzdHApIHtcXG4gICAgICAgcGFnaSA9IDJcXG59IGVsc2Uge1xcbiAgICAgICBwYWdpID0gMVxcbn1cXG4gICAgdmFyIHRpdGxlID0gW1xcXCLpppZcXFwiLFxcXCLot7PpobU6XFxcIiArIGFjdGl2ZSxcXFwi5bC+6aG1OlxcXCIgKyBsYXN0cF1cXG4gICAgdmFyIHVybHMgPSBbZmlyc3R1LE1ZX1VSTCxsYXN0dV1cXG5pZiAoIGN1cnJlbnR1ICE9PSBcXFwiaHR0cHM6Ly9zdXBqYXYuY29tL3poL1xcXCIgKXtcXG4gICBmb3IgKHZhciBqIGluIHRpdGxlKSB7XFxuXFxuICAgIHZhciB1cmwgPSB1cmxzW2pdICsgJChcXFwiI25vTG9hZGluZyNcXFwiKS5sYXp5UnVsZSgoaikgPT4geyAgICBcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInl1cmxcXFwiLCBpbnB1dCk7XFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgIH0sIGopXFxuXFxuICAgIGlmIChqPT0xKSB7XFxuICAgIHVybCA9ICQoJycsJ+mZpOmmlumhteWSjOWwvumhteS5i+WklueahOmhteeggScpLmlucHV0KChsYXN0dSxsYXN0cCk9PntcXG4gICAgICAgIGlmIChwYXJzZUludChpbnB1dCkgPiAxICYmIHBhcnNlSW50KGlucHV0KSA8IHBhcnNlSW50KGxhc3RwKSAmJiBwYXJzZUludChpbnB1dCkgJSAxID09IDApIHtcXG4gICAgICAgICAgICAgICAgdmFyIGp1bXB1ID0gbGFzdHUucmVwbGFjZSgvXFxcXC9wYWdlXFxcXC9cXFxcZCsvLCBcXFwiL3BhZ2UvXFxcIisgaW5wdXQpXFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKFxcXCJ5dXJsXFxcIiwganVtcHUpO1xcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG59IGVsc2Uge1xcbiAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8v6K+36L6T5YWl5q2j56Gu55qE6aG156CBXFxcIn1cXG4gICAgICAgICAgIH0sbGFzdHUsbGFzdHApICAgICAgICAgICAgICAgICAgXFxuICAgICAgfVxcblxcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogcGFnaSA9PSBqID8gZ2V0SGVhZCh0aXRsZVtqXSwnI0ZGNjY5OScpIDogdGl0bGVbal0sICAgICAgICAgICBcXG4gICAgICAgICAgICB1cmw6IHVybCxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLCAgICAgICAgICAgICAgICAgXFxuICAgICAgICB9KVxcbn19XFxufVxcblxcbmlmIChNWV9QQUdFID09IDEpIHtcXG4gICAgIHZhciBzb3J0ID0gcGRmYShodG1sLCBcXFwiLnNvcnQmJmFcXFwiKTtcXG4gICBmb3IgKHZhciBqIGluIHNvcnQpIHtcXG4gICAgICAgIHZhciB0aXRsZSA9IHBkZmgoc29ydFtqXSwnVGV4dCcpXFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBnZXRNeVZhcigneXNvcnQnLCAnMCcpID09IGogPyBnZXRIZWFkKHRpdGxlLCcjRkY2Njk5JykgOiB0aXRsZSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgIHVybDogcGQoc29ydFtqXSwgJ2EmJmhyZWYnKSArICQoXFxcIiNub0xvYWRpbmcjXFxcIikubGF6eVJ1bGUoKGopID0+IHtcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3lzb3J0JywgailcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInl1cmxcXFwiLCBpbnB1dCk7XFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgIH0sIGopXFxuICAgICAgICB9KVxcbn1cXG59XFxuXFxudmFyIGxpc3QgPSBwZGZhKGh0bWwsIFxcXCIucG9zdHMmJi5wb3N0XFxcIik7XFxubGlzdC5mb3JFYWNoKGl0ZW09PntcXG4gICB2YXIgaW1nID0gcGQoaXRlbSxcXFwiaW1nJiZkYXRhLW9yaWdpbmFsXFxcIik7XFxuICAgdmFyIHRpdGxlID0gcGRmaChpdGVtLFxcXCJhJiZ0aXRsZVxcXCIpLnJlcGxhY2UoXFxcIlvkuK3mloflrZfluZVdXFxcIixcXFwi8J+HqPCfh7NcXFwiKS5yZXBsYWNlKFxcXCJb5peg56CB56C06KejXVxcXCIsXFxcIvCflKVcXFwiKS5yZXBsYWNlKFxcXCJbNEtdXFxcIixcXFwi8J+WpVxcXCIpLnJlcGxhY2UoXFxcIlvoi7HmloflrZfluZVdXFxcIixcXFwi8J+HuvCfh7hcXFwiKTtcXG4gICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxuICAgICAgICAgICAgICAgZGVzYzogcGRmaChpdGVtLFxcXCIubWV0YS0tLmRhdGUmJlRleHRcXFwiKSxcXG4gICAgICAgICAgICAgICBpbWc6IGltZy5yZXBsYWNlKC8oaHR0cC4qP1xcXFwuKD86anBnfHdlYnB8cG5nfGpwZWcpKS4qLyxcXFwiJDFcXFwiKSxcXG4gICAgICAgICAgICAgICB1cmw6IHBkZmgoaXRlbSxcXFwiYSYmaHJlZlxcXCIpICsgJ0BydWxlPWpzOiQucmVxdWlyZShcXFwiZXJcXFwiKScsXFxuICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJtb3ZpZV8yXFxcIixcXG4gICAgICAgICAgICAgICBleHRyYToge3BhZ2VUaXRsZTp0aXRsZX1cXG4gICAgICAgICB9KVxcbn0pXFxuXFxuc2V0UmVzdWx0KGQpXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuoznuqdcIixcInBhdGhcIjpcImVyXCIsXCJydWxlXCI6XCJqczogdmFyIGQgPSBbXVxcbk1ZX1VSTCA9IE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovL2VtcHR5IyMnLCAnJyk7XFxubG9nKE1ZX1VSTClcXG52YXIgaHRtbCA9IGZldGNoKE1ZX1VSTCk7XFxuXFxuZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvbGF6eScsIHt9KSlcXG4gICAgLnJ1bGUpO1xcblxcbnZhciB0aXRsZSA9IHBkZmgoaHRtbCwgJy5hcmNoaXZlLXRpdGxlJiZUZXh0JylcXG4gICAgLnJlcGxhY2UoXFxcIlvkuK3mloflrZfluZVdXFxcIiwgXFxcIvCfh6jwn4ezXFxcIilcXG4gICAgLnJlcGxhY2UoXFxcIlvml6DnoIHnoLTop6NdXFxcIiwgXFxcIvCflKVcXFwiKVxcbiAgICAucmVwbGFjZShcXFwiWzRLXVxcXCIsIFxcXCLwn5alXFxcIilcXG4gICAgLnJlcGxhY2UoXFxcIlvoi7HmloflrZfluZVdXFxcIiwgXFxcIvCfh7rwn4e4XFxcIik7XFxudmFyIOivhuWIq+eggSA9IHRpdGxlLm1hdGNoKC9cXFxcdysoPzotfF8pXFxcXHcrKD86XFxcXHMrXFxcXGQrKT98XFxcXHcrKD8hXFxcXG4pXFxcXHMrXFxcXHcrLylbMF1cXG5pZiAodGl0bGUgIT09IG51bGwpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPG1pZGRsZT48Zm9udCBjb2xvcj0jZTU3YTFhPicgKyB0aXRsZSArICc8L2ZvbnQ+PC9taWRkbGU+JyxcXG4gICAgICAgIHVybDogXFxcImNvcHk6Ly9cXFwiICsg6K+G5Yir56CBLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcbiAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICBsaW5lVmlzaWJsZTogZmFsc2UsXFxuICAgICAgICAgICAgbG9uZ0NsaWNrOiBbe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+e9kemhtScsXFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwid2ViOi8vXFxcIiArIE1ZX1VSTFxcbiAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfnmb7luqbnv7vor5EnLFxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygodGl0bGUpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwieDU6Ly9odHRwczovL2ZhbnlpLmJhaWR1LmNvbS8janAvemgvXFxcIiArIHRpdGxlXFxuICAgICAgICAgICAgICAgIH0sIHRpdGxlKVxcbiAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdEZWVwbOe/u+ivkScsXFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCh0aXRsZSkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ4NTovL2h0dHBzOi8vd3d3LmRlZXBsLmNvbS96aC90cmFuc2xhdG9yLW1vYmlsZSNqYS96aC9cXFwiICsgdGl0bGVcXG4gICAgICAgICAgICAgICAgfSwgdGl0bGUpXFxuICAgICAgICAgICAgfSwge1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+iwt+atjOe/u+ivkScsXFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCh0aXRsZSkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ4NTovL2h0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20vP2hsPXpoLUNOJnNsPWphJnRsPXpoLUNOJnRleHQ9XFxcIiArIHRpdGxlXFxuICAgICAgICAgICAgICAgIH0sIHRpdGxlKVxcbiAgICAgICAgICAgIH1dXFxuICAgICAgICB9XFxuICAgIH0pXFxufVxcblxcbnZhciBpbWcgPSBwZChodG1sLCBcXFwiLnBvc3QtbWV0YSYmaW1nJiZzcmNcXFwiKTtcXG5pZiAoaW1nICE9PSBudWxsKSB7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICBpbWc6IGltZyxcXG4gICAgICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICAgICAgY29sX3R5cGU6ICdwaWNfMV9mdWxsJyxcXG4gICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgbG9uZ0NsaWNrOiBbe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+WkjeWItuWbvueJhycsXFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKChpbWcpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwiY29weTovL1xcXCIgKyBpbWdcXG4gICAgICAgICAgICAgICAgfSwgaW1nKVxcbiAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmiZPlvIDlm77niYcnLFxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoaW1nKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaW1nXFxuICAgICAgICAgICAgICAgIH0sIGltZylcXG4gICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn5LiL6L295Zu+54mHJyxcXG4gICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKGltZykgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJkb3dubG9hZDovL1xcXCIgKyBpbWdcXG4gICAgICAgICAgICAgICAgfSwgaW1nKVxcbiAgICAgICAgICAgIH1dXFxuICAgICAgICB9XFxuICAgIH0pO1xcbn1cXG5cXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+KAnOKAnOKAneKAnTxzcGFuIHN0eWxlPVxcXCJjb2xvcjogI0ZGRkZGRjtcXFwiPjxzbWFsbD7wnZCS8J2QhPCdkJHwnZCV8J2QhPCdkJEg77ya5bey5bGP6JS9SlBB562J5peg55So57q/6LevPC9zbWFsbD48L3NwYW4+JyxcXG4gICAgdXJsOiDor4bliKvnoIEgKyAkKCcjbm9Mb2FkaW5nIycpXFxuICAgICAgICAubGF6eVJ1bGUoKCkgPT4ge1xcbiAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL3BhZ2UveWo/cnVsZT3wnZCJ8J2QmvCdkK/wnZCD8J2QgSZ1cmw9aHR0cHM6Ly9cXFwiICsgZ2xvYmFsTWFwMC5nZXRWYXIoJ2phdmRiMCcsICdqYXZkYi5jb20nKSArIFxcXCIvc2VhcmNo77yf77yfZj1hbGzvvIbvvIZwYWdlPWZ5cGFnZe+8hu+8hnE9XFxcIiArIGlucHV0XFxuICAgIH0pLFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxuICAgIGV4dHJhOiB7XFxuICAgICAgICBsaW5lVmlzaWJsZTogZmFsc2UsXFxuICAgICAgICBwYWdlVGl0bGU6IOivhuWIq+eggVxcbiAgICB9XFxufSk7XFxuXFxuLy/lt7Lnu4/op6PmnpDnmoTnur/ot69cXG52YXIgUGxheWxpbmVkID0gW1xcXCJUVlxcXCIsIFxcXCJGU1RcXFwiLCBcXFwiU1RcXFwiLCBcXFwiVk9FXFxcIiwgXFxcIkRTXFxcIiwgXFxcIlN0cmVhbXRhcGVcXFwiLCBcXFwiVlRVXFxcIl1cXG5cXG5sZXQgYnRucyA9IHBkZmEoaHRtbCwgJy5idG5zJiYuYnRuc3QnKVxcbmlmIChidG5zLmxlbmd0aCA9PSAxKSB7XFxuICAgIGJ0bnN0ID0gcGRmYShidG5zWzBdLCAnYm9keSYmZGl2JylcXG59IGVsc2Uge1xcbiAgICBidG5zdCA9IHBkZmEoYnRuc1sxXSwgJ2JvZHkmJi5jZC1zZXJ2ZXInKVxcbn1cXG5idG5zdC5mb3JFYWNoKChjZHMsIGluZGV4KSA9PiB7XFxuICAgIGxldCBzZXJ2ZXIgPSBwZGZhKGNkcywgJ2JvZHkmJmE6bm90KDptYXRjaGVzKEpQQXxKU3xTU0J8TlN8TWl4ZHJvcHxOaW5qYVN0cmVhbXxNRHxHb1VubGltaXRlZCkpJyk7IC8v5bGP6JS957q/6Lev8J+IsvCfiLLwn4iy8J+IsvCfiLLwn4iyXFxuICAgIGlmIChidG5zdC5sZW5ndGggPiAxKSB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdJyArIFxcXCJDRFxcXCIuYm9sZCgpXFxuICAgICAgICAgICAgICAgIC5mb250Y29sb3IoXFxcIiM4QTJCRTJcXFwiKSArIChpbmRleCArIDEpXFxuICAgICAgICAgICAgICAgIC50b1N0cmluZygpXFxuICAgICAgICAgICAgICAgIC5ib2xkKClcXG4gICAgICAgICAgICAgICAgLmZvbnRjb2xvcihcXFwiIzhBMkJFMlxcXCIpICsgXFxcIjpcXFwiLmZvbnRjb2xvcihcXFwiIzhBMkJFMlxcXCIpLFxcbiAgICAgICAgICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgICAgICB9KTtcXG4gICAgfVxcbiAgICBzZXJ2ZXIuZm9yRWFjaCgobGlzdCwgaW5kZXgpID0+IHtcXG4gICAgICAgIHZhciB0aXRsZSA9IHBkZmgobGlzdCwgJ1RleHQnKTtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IFBsYXlsaW5lZC5pbmRleE9mKHRpdGxlKSA+PSAwID8gJ1xcXFx04oCc4oCc4oCd4oCdJyArICctJy5mb250Y29sb3IoXFxcIiMyNzc2ODZcXFwiKSArIHRpdGxlLmJvbGQoKVxcbiAgICAgICAgICAgICAgICAuZm9udGNvbG9yKFxcXCIjMjc3Njg2XFxcIikgKyAnLVxcXFx0Jy5mb250Y29sb3IoXFxcIiMyNzc2ODZcXFwiKSA6ICdcXFxcdC3igJzigJzigJ3igJ0nICsgdGl0bGUuYm9sZCgpICsgJy1cXFxcdCcsXFxuICAgICAgICAgICAgdXJsOiBwZGZoKGxpc3QsICdhJiZkYXRhLWxpbmsnKSArIGxhenksXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgIH0pO1xcbiAgICB9KVxcbiAgICBkLnB1c2goe1xcbiAgICAgICAgY29sX3R5cGU6ICdibGFua19ibG9jaydcXG4gICAgfSlcXG59KVxcbmQucHVzaCh7XFxuICAgIGNvbF90eXBlOiBcXFwiYmlnX2JsYW5rX2Jsb2NrXFxcIlxcbn0pXFxuZC5wdXNoKHtcXG4gICAgY29sX3R5cGU6IFxcXCJsaW5lX2JsYW5rXFxcIlxcbn0pXFxuZC5wdXNoKHtcXG4gICAgY29sX3R5cGU6IFxcXCJiaWdfYmxhbmtfYmxvY2tcXFwiXFxufSlcXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogXFxcImJpZ19ibGFua19ibG9ja1xcXCJcXG59KVxcblxcbmxldCBpbmZvID0gcGRmYShodG1sLCAnLnBvc3QtbWV0YSYmLmNhdHMmJmEnKTtcXG5pbmZvLmZvckVhY2goKGxpc3QsIGluZGV4KSA9PiB7XFxuICAgIHZhciB0aXRsZSA9IHBkZmgobGlzdCwgJ1RleHQnKTtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBpbmRleCA9PSAxID8gJ+KAmOKAmE1ha2VyOuKAmeKAmScgKyB0aXRsZSA6IChpbmRleCA+IDEgPyAn4oCY4oCYQ2FzdDrigJnigJknICsgdGl0bGUgOiB0aXRsZSksXFxuICAgICAgICB1cmw6IHBkKGxpc3QsICdhJiZocmVmJykgKyAnIyNmeXBhZ2VAcnVsZT1qczokLnJlcXVpcmUoXFxcInlpXFxcIiknLFxcbiAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgcGFnZVRpdGxlOiB0aXRsZVxcbiAgICAgICAgfVxcbiAgICB9KTtcXG4gICAgaWYgKGluZGV4ID09IDEpIHtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJibGFua19ibG9ja1xcXCJcXG4gICAgICAgIH0pXFxuICAgIH1cXG59KVxcbmQucHVzaCh7XFxuICAgIGNvbF90eXBlOiBcXFwibGluZV9ibGFua1xcXCJcXG59KVxcbmQucHVzaCh7XFxuICAgIGNvbF90eXBlOiBcXFwiYmlnX2JsYW5rX2Jsb2NrXFxcIlxcbn0pXFxuZC5wdXNoKHtcXG4gICAgY29sX3R5cGU6IFxcXCJibGFua19ibG9ja1xcXCJcXG59KVxcbmxldCB0YWdzID0gcGRmYShodG1sLCAnLnBvc3QtbWV0YSYmLnRhZ3MmJmEnKTtcXG50YWdzLmZvckVhY2goKGxpc3QsIGluZGV4KSA9PiB7XFxuICAgIHZhciB0aXRsZSA9IHBkZmgobGlzdCwgJ1RleHQnKTtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCcJyArIHRpdGxlICsgJ+KAneKAnScsXFxuICAgICAgICB1cmw6IHBkKGxpc3QsICdhJiZocmVmJykgKyAnIyNmeXBhZ2VAcnVsZT1qczokLnJlcXVpcmUoXFxcInlpXFxcIiknLFxcbiAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxuICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgIHBhZ2VUaXRsZTogdGl0bGVcXG4gICAgICAgIH1cXG4gICAgfSk7XFxufSlcXG5cXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVxcXCJjb2xvcjogI0ZGRkZGRjtcXFwiPvCdkJjwnZCo8J2QriDwnZCM8J2QmvCdkLIg8J2QgPCdkKXwnZCs8J2QqCDwnZCL8J2QovCdkKTwnZCePC9zcGFuPicsXFxuICAgIGNvbF90eXBlOiAncmljaF90ZXh0J1xcbn0pO1xcblxcbnZhciBsaXN0ID0gcGRmYShodG1sLCBcXFwiLnBvc3RzJiYucG9zdFxcXCIpO1xcbmxpc3QuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgdmFyIGltZyA9IHBkKGl0ZW0sIFxcXCJpbWcmJmRhdGEtb3JpZ2luYWxcXFwiKTtcXG4gICAgdmFyIHRpdGxlID0gcGRmaChpdGVtLCBcXFwiYSYmdGl0bGVcXFwiKVxcbiAgICAgICAgLnJlcGxhY2UoXFxcIlvkuK3mloflrZfluZVdXFxcIiwgXFxcIvCfh6jwn4ezXFxcIilcXG4gICAgICAgIC5yZXBsYWNlKFxcXCJb5peg56CB56C06KejXVxcXCIsIFxcXCLwn5SlXFxcIilcXG4gICAgICAgIC5yZXBsYWNlKFxcXCJbNEtdXFxcIiwgXFxcIvCflqVcXFwiKVxcbiAgICAgICAgLnJlcGxhY2UoXFxcIlvoi7HmloflrZfluZVdXFxcIiwgXFxcIvCfh7rwn4e4XFxcIik7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogdGl0bGUsXFxuICAgICAgICBkZXNjOiBwZGZoKGl0ZW0sIFxcXCIubWV0YS0tLmRhdGUmJlRleHRcXFwiKSxcXG4gICAgICAgIGltZzogaW1nLnJlcGxhY2UoLyhodHRwLio/XFxcXC4oPzpqcGd8d2VicHxwbmd8anBlZykpLiovLCBcXFwiJDFcXFwiKSxcXG4gICAgICAgIHVybDogcGRmaChpdGVtLCBcXFwiYSYmaHJlZlxcXCIpICsgJ0BydWxlPWpzOiQucmVxdWlyZShcXFwiZXJcXFwiKScsXFxuICAgICAgICBjb2xfdHlwZTogXFxcIm1vdmllXzJcXFwiLFxcbiAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICBwYWdlVGl0bGU6IHRpdGxlXFxuICAgICAgICB9XFxuICAgIH0pXFxufSlcXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogXFxcImJpZ19ibGFua19ibG9ja1xcXCJcXG59KVxcbmQucHVzaCh7XFxuICAgIGNvbF90eXBlOiBcXFwiYmlnX2JsYW5rX2Jsb2NrXFxcIlxcbn0pXFxuc2V0UmVzdWx0KGQpXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLop6PmnpBcIixcInBhdGhcIjpcImxhenlcIixcInJ1bGVcIjpcInZhciBsYXp5ID0gJCgnJykubGF6eVJ1bGUoKCkgPT4ge1xcbiAgICAvL0pQQeetiee6v+i3r+aMguS6huW3suWxj+iUve+8jOmcgOimgeWPr+WOu+S6jOe6p+aBouWkjVxcbiAgICAvL1RW57q/6LevLy9GU1Tnur/ot68vL1ZPRee6v+i3ry8vU1Tnur/ot68vL0RT57q/6LevLy9WVFXnur/ot69cXG4gICAgdmFyIGlkID0gaW5wdXQuc3BsaXQoJycpLnJldmVyc2UoKS5qb2luKCcnKTtcXG4gICAgdmFyIHVybCA9IGBodHRwczovL2xrMS5zdXByZW1lamF2LmNvbS9zdXBqYXYucGhwP2M9JHtpZH1gO1xcbiAgICB2YXIgcmVmZXJlciA9IGBodHRwczovL2xrMS5zdXByZW1lamF2LmNvbS9zdXBqYXYucGhwP2w9JHtpbnB1dH1gO1xcbiAgICB2YXIgbG9jYXRpb24gPSBKU09OLnBhcnNlKGZldGNoKHVybCwge1xcbiAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgIFxcXCJSZWZlcmVyXFxcIjogcmVmZXJlcixcXG4gICAgICAgIH0sXFxuICAgICAgICBvbmx5SGVhZGVyczogdHJ1ZVxcbiAgICB9KSkudXJsLnJlcGxhY2UoLyMuKi8sIFxcXCJcXFwiKVxcblxcbiAgICBpZiAobG9jYXRpb24uaW5jbHVkZXMoXFxcImVtdHVyYm92aWRcXFwiKSkge1xcbiAgICAgICAgLy9UVue6v+i3r1xcbiAgICAgICAgdmFyIGRvbWFpbiA9IGdldEhvbWUobG9jYXRpb24pXFxuICAgICAgICB2YXIgcGF0aCA9IGZldGNoKGxvY2F0aW9uLCB7XFxuICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAnUmVmZXJlcic6IHJlZmVyZXJcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KS5tYXRjaCgvJy4qPyhcXFxcLy4qP1xcXFwubTN1OCkvKVsxXVxcbiAgICAgICAgdmFyIHBsYXlVcmwgPSBwYXRoLmluY2x1ZGVzKFxcXCJjb21cXFwiKSA/IFxcXCJodHRwczpcXFwiICsgcGF0aCA6IGdldEhvbWUobG9jYXRpb24pICsgcGF0aFxcbiAgICAgICAgcmV0dXJuIHBsYXlVcmwgKyBcXFwiO3tSZWZlcmVyQFxcXCIgKyBsb2NhdGlvbiArIFxcXCJ9XFxcIlxcbiAgICB9IGVsc2UgaWYgKC9jaW5keWV5ZWZpbmFsfGZjMnN0cmVhbXxtaWNoYWVsYXBwbHlzb21lLy50ZXN0KGxvY2F0aW9uKSkge1xcbiAgICAgICAgLy9GU1Tnur/ot68vL1ZPRee6v+i3r1xcbiAgICAgICAgdmFyIHVybFBsYXkgPSBmZXRjaChsb2NhdGlvbiwge1xcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgJ1JlZmVyZXInOiByZWZlcmVyXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSkubWF0Y2goL2h0dHBzPy4qP20zdThbXlxcXCJdKy8pWzBdXFxuICAgICAgICByZXR1cm4gdXJsUGxheSArIFxcXCI7e1JlZmVyZXJAXFxcIiArIGxvY2F0aW9uICsgXFxcIn1cXFwiXFxuICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaW5jbHVkZXMoXFxcInN0cmVhbXRhcGVcXFwiKSkge1xcbiAgICAgICAgLy9TVOe6v+i3r1xcbiAgICAgICAgdmFyIGh0bWwgPSBmZXRjaChsb2NhdGlvbiwge1xcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgJ1JlZmVyZXInOiByZWZlcmVyXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSlcXG4gICAgICAgIHZhciBwYXR0ZXJuID0gaHRtbC5tYXRjaCgvXFxcXCgnIyguKiknXFxcXCkvKVsxXVxcbiAgICAgICAgdmFyIHNyYyA9IFxcXCJ2YXIgc3JjbGluayA9IFxcXCIgKyBodG1sLm1hdGNoKG5ldyBSZWdFeHAoXFxcIidcXFwiICsgcGF0dGVybiArIFxcXCIuKj89KFteO10rKVxcXCIpKVsxXVxcbiAgICAgICAgZXZhbChzcmMpXFxuICAgICAgICB2YXIgbGluayA9IFxcXCJodHRwczpcXFwiICsgc3JjbGluayArIFxcXCImc3RyZWFtPTFcXFwiXFxuICAgICAgICB2YXIgdXJsUGxheSA9IEpTT04ucGFyc2UoZmV0Y2gobGluaywge1xcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgXFxcIlJlZmVyZXJcXFwiOiBsb2NhdGlvbixcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIG9ubHlIZWFkZXJzOiB0cnVlXFxuICAgICAgICB9KSkudXJsXFxuICAgICAgICByZXR1cm4gdXJsUGxheSArIFxcXCI7e1JlZmVyZXJAXFxcIiArIGxvY2F0aW9uICsgXFxcIn1cXFwiXFxuICAgIH0gZWxzZSBpZiAoL2QwMDAwZHxkb29kfGRzMnBsYXkvLnRlc3QobG9jYXRpb24pKSB7XFxuICAgICAgICAvL0RT57q/6LevXFxuICAgICAgICB2YXIgaHRtbCA9IGZldGNoKGxvY2F0aW9uLCB7XFxuICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAnUmVmZXJlcic6IHJlZmVyZXJcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KVxcbiAgICAgICAgdmFyIHBhc3NfbWQ1ID0gZ2V0SG9tZShsb2NhdGlvbikgKyBodG1sLm1hdGNoKC9cXFxcL3Bhc3NfbWQ1W15cXFwiJ10rLylbMF1cXG4gICAgICAgIHZhciB0b2tlbiA9IGh0bWwubWF0Y2goL2Nvb2tpZUluZGV4Lio/XFxcXCcoLio/KVxcXFwnLylbMV1cXG4gICAgICAgIHZhciBkYXRhID0gZmV0Y2gocGFzc19tZDUsIHtcXG4gICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJSZWZlcmVyXFxcIjogbG9jYXRpb25cXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KVxcblxcbiAgICAgICAgZnVuY3Rpb24gbWFrZVBsYXkodG9rZW4pIHtcXG4gICAgICAgICAgICBmb3IgKHZhciBhID0gXFxcIlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICB0ID0gXFxcIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5XFxcIixcXG4gICAgICAgICAgICAgICAgICAgIG4gPSB0Lmxlbmd0aCxcXG4gICAgICAgICAgICAgICAgICAgIG8gPSAwOyAxMCA+IG87IG8rKylcXG4gICAgICAgICAgICAgICAgYSArPSB0LmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBuKSk7XFxuICAgICAgICAgICAgcmV0dXJuIGEgKyBcXFwiP3Rva2VuPVxcXCIgKyB0b2tlbiArIFxcXCImZXhwaXJ5PVxcXCIgKyBEYXRlLm5vdygpO1xcbiAgICAgICAgfTtcXG4gICAgICAgIHZhciB1cmxQbGF5ID0gZGF0YSArIG1ha2VQbGF5KHRva2VuKVxcbiAgICAgICAgcmV0dXJuIHVybFBsYXkgKyBcXFwiI2lzVmlkZW89dHJ1ZSM7e1JlZmVyZXJAXFxcIiArIGxvY2F0aW9uICsgXFxcIn1cXFwiXFxuICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaW5jbHVkZXMoXFxcInZ0YmUudG9cXFwiKSkge1xcbiAgICAgICAgLy9WVFXnur/ot69cXG4gICAgICAgIGZ1bmN0aW9uIGV2YWxkZWNvZGUodGV4dCkge1xcbiAgICAgICAgICAgIHZhciBjb2RlID0gJyc7XFxuICAgICAgICAgICAgdmFyIHMgPSB0ZXh0LnJlcGxhY2UoL15ldmFsLywgJycpXFxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKCdyZXR1cm4gcCcsICdjb2RlKz1wJylcXG4gICAgICAgICAgICBldmFsKHMpO1xcbiAgICAgICAgICAgIHJldHVybiBjb2RlO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgY29uc3QgaG9zdFJlZ2V4ID0gKHVybCkgPT4ge1xcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gdXJsLm1hdGNoKC9eKD86aHR0cHM/OlxcXFwvXFxcXC8pPyg/Ond3d1xcXFwuKT8oW2EtekEtWjAtOS1dezEsNjN9XFxcXC4pK1thLXpBLVpdezIsNn0vaSk7XFxuICAgICAgICAgICAgcmV0dXJuIG1hdGNoID8gbWF0Y2hbMF0gOiB1cmw7XFxuICAgICAgICB9O1xcblxcbiAgICAgICAgbGV0IGhvc3QgPSBob3N0UmVnZXgocmVmZXJlcilcXG5cXG4gICAgICAgIHZhciBodG1sID0gZmV0Y2gobG9jYXRpb24sIHtcXG4gICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgIFJlZmVyZXI6IGhvc3QsXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSlcXG4gICAgICAgIHZhciBpZnJhbWUgPSBwZGZhKGh0bWwsIFxcXCJpZnJhbWVcXFwiKTtcXG4gICAgICAgIFxcbiAgICAgICAgaWYgKGlmcmFtZS5sZW5ndGg+MCkge1xcbiAgICAgICAgICAgIGh0bWwgPSBmZXRjaChwZGZoKGlmcmFtZVswXSwgXFxcImlmcmFtZSYmc3JjXFxcIiksIHtcXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAgICAgUmVmZXJlcjogaG9zdCxcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH0pXFxuICAgICAgICB9XFxuXFxuICAgICAgICB2YXIgc2NyaXB0cyA9IHBkZmEoaHRtbCwgXFxcImJvZHkmJnNjcmlwdFxcXCIpO1xcbiAgICAgICAgbGV0IHNjcmlwdCA9IHNjcmlwdHMuZmlsdGVyKHggPT4geC5pbmNsdWRlcygnZXZhbCcpKS5tYXAobSA9PiBwZGZoKG0sIFxcXCJzY3JpcHQmJkh0bWxcXFwiKSlbMF07XFxuICAgICAgICBpZihzY3JpcHQ9PXVuZGVmaW5lZCl7XFxuICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+aXoOaVsOaNridcXG4gICAgICAgIH1cXG4gICAgICAgIFxcbiAgICAgICAgbGV0IG0zdTggPSAvZmlsZTpcXFwiKC4qPylcXFwiL2cuZXhlYyhldmFsZGVjb2RlKHNjcmlwdCkpWzFdO1xcbiAgICAgICAgcmV0dXJuIG0zdTg7XFxuXFxuICAgIH0gZWxzZSB7XFxuICAgICAgICBsb2coXFxcIumdqeWRveWwmuacquaIkOWKnyzlkIzlv5fku43pnIDliqrlips9PlxcXCIgKyBsb2NhdGlvbilcXG4gICAgICAgIHJldHVybiBcXFwiY29uZmlybTovL+WSsyzmnKznur/ot6/ov5nkuKrlnLDlnYDlubbmsqHmnInop6PmnpDvvIzml6Xlv5flt7LmiZPljbDlh7rvvIzmlazor7fmn6XnnIsuanM6J2hpa2VyOi8vZW1wdHknIFxcXCJcXG4gICAgfVxcbn0pXCJ9XSIsImljb24iOiJodHRwczovL2ltZy52aW51YS5jbi9pbWFnZXMvenJ3SzQud2VicCIsInByb3h5IjoiIn0=
Add Comment
Please, Sign In to add comment