xiaomianao666

小程序:影视工厂

Jun 26th, 2023
1,063
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@影视工厂@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi5b2x6KeG5bel5Y6CIiwiYXV0aG9yIjoi5b+D6a2UIiwidXJsIjoiaGlrZXI6Ly9lbXB0eSMjaHR0cHM6Ly93d3cueXNnYy52aXAvdm9kdHlwZS8xLWZ5cGFnZS5odG1sIiwidmVyc2lvbiI6MCwiY29sX3R5cGUiOiJtb3ZpZV8zIiwiY2xhc3NfbmFtZSI6IiIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6IiIsImFyZWFfbmFtZSI6IiIsImFyZWFfdXJsIjoiIiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoiIiwic29ydF91cmwiOiIiLCJ5ZWFyX3VybCI6IiIsImZpbmRfcnVsZSI6ImpzOlxudmFyIGQgPSBbXTtcbnZhciBnZXRSYW5nZUNvbG9ycyA9IGZ1bmN0aW9uKCkge8KgwqDCoMKgwqDCoMKgXG4gICAgcmV0dXJuICcjJyArICgnMDAwMDAnICsgKE1hdGgucmFuZG9tKCkgKiAweDEwMDAwMDAgPDwgMCkudG9TdHJpbmcoMTYpKS5zdWJzdHIoLTYpO8KgwqDCoMKgwqBcbn1cbmNvbnN0IOWIhuexu+minOiJsiA9IGdldFJhbmdlQ29sb3JzKClcbmNvbnN0IOWkp+exu+WumuS9jSA9ICdib2R5JiYubmF2LWxpc3QuY2xlYXJmaXgnXG5jb25zdCDmi7zmjqXliIbnsbsgPSAnYm9keSYmLm15dWktc2NyZWVuX19saXN0J1xuY29uc3Qg5bCP57G75a6a5L2NID0gJ2JvZHkmJmE6bm90KDptYXRjaGVzKOmmlumhtXzku4rml6Xmm7TmlrB854Ot5qacfEFQUHznlZnoqIDmnb986LWE6K6vfOe6quW9leeJh3zmmI7mmJ9855S16KeG55u05pKtfOWKqOS9nOeJh3zllpzliafniYd854ix5oOF54mHfOenkeW5u+eJh3zmgZDmgJbniYd85oKs55aR54mHfOWJp+aDheeJh3zmiJjkuonniYd85Yqo55S754mHfOWbveS6p+WJp3zmuK/lj7Dliad85pel6Z+p5YmnKSknXG5jb25zdCDliIbnsbvmoIfpopggPSAnYSYmVGV4dCdcbmNvbnN0IOWIhuexu+mTvuaOpSA9ICdhJiZocmVmJ1xuTVlfVVJMID0gTVlfVVJMLnJlcGxhY2UoJ2hpa2VyOi8vZW1wdHkjIycsICcnKVxubGV0IHRydWVfdXJsID0gZ2V0VmFyKE1ZX1JVTEUudXJsLCBNWV9VUkwpXG5jb25zdCBwYWdlID0gTVlfUEFHRVxuaWYgKGdldFZhcihNWV9SVUxFLnVybCkpIHtcbiAgICB0cnVlX3VybCA9IHRydWVfdXJsLnJlcGxhY2UoL3R5cGVcXC8oXFxkKylcXC5odG1sLywgJ3Nob3cvJDEtLS0tLS0tLS0tLS5odG1sJykucmVwbGFjZSgnLS0tLmh0bWwnLCBwYWdlICsgJy0tLS5odG1sJykucmVwbGFjZSgvKC0tLVxcZCsuaHRtbCkvLCBwYWdlICsgJyQxJylcbn1cbnZhciBodG1sID0gcmVxdWVzdCh0cnVlX3VybClcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2UvZHQnKSkucnVsZSlcbmNvbnN0IGxpc3QgPSBwZGZhKGh0bWwsICdib2R5JiYubXl1aS12b2RsaXN0X19ib3gnKVxubGlzdC5mb3JFYWNoKHZpZGVvID0+IHtcbiAgICBkLnB1c2goe1xuICAgICAgICB0aXRsZTogcGRmaCh2aWRlbywgJ2EmJnRpdGxlJyksXG4gICAgICAgIGRlc2M6IHBkZmgodmlkZW8sICcnKSxcbiAgICAgICAgaW1nOiBwZCh2aWRlbywgJ2EmJmRhdGEtb3JpZ2luYWwnKSArXG4gICAgICAgICAgICAnQFJlZmVyZXI9JyxcbiAgICAgICAgdXJsOiBwZCh2aWRlbywgJ2EmJmhyZWYnKSArICcjaW1tZXJzaXZlVGhlbWUjJyxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8zX21hcnF1ZWUnLFxuICAgIH0pXG59KVxuc2V0UmVzdWx0KGQpIiwic2VhcmNoX3VybCI6Imh0dHBzOi8vd3d3LnlzZ2MudmlwL3ZvZHNlYXJjaC8qKi0tLS0tLS0tLS0tLS0uaHRtbCIsImdyb3VwIjoiI++4j+KDo+W9seinhiIsInNlYXJjaEZpbmQiOiJqczpcblxudmFyIGQgPSBbXTtcbnZhciBodG1sID0gZ2V0UmVzQ29kZSgpXHJcbnZhciBsaXN0ID0gcGRmYShodG1sLCAnYm9keSYmLm1vZHVsZS1zZWFyY2gtaXRlbScpOy8v5YiX6KGoXG5mb3IgKHZhciBqIGluIGxpc3QpIHtcbiAgICBkLnB1c2goe1xuICAgICAgICB0aXRsZTogcGRmaChsaXN0W2pdLCAnYSYmVGV4dCcpLC8v5qCH6aKYXG4gICAgICAgIGRlc2M6IHBkZmgobGlzdFtqXSwgJy52aWRlby1zZXJpYWwmJlRleHQnKSwvL+esrOWHoOmbhuaIlua4heaZsOW6plxuICAgICAgICBpbWc6IHBkKGxpc3Rbal0sICdpbWcmJmRhdGEtc3JjJykrJ0BSZWZlcmVyPScsLy/lm77niYdcbmNvbnRlbnQ6cGRmaChsaXN0W2pdLCAnLnZpZGVvLWluZm8taXRlbSwyJiZUZXh0JyksLy/nroDku4vmiJblvbHniYfkv6Hmga9cbiAgICAgICAgdXJsOiBwZChsaXN0W2pdLCAnLnZpZGVvLXNlcmlhbCYmaHJlZicpICsgXCIjaW1tZXJzaXZlVGhlbWUjXCJcbiAgICB9KTtcbn1cclxuc2V0UmVzdWx0KGQpIiwiZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMSIsImRldGFpbF9maW5kX3J1bGUiOiJqczpcbnZhciBkID0gW107XG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKTtcblxudmFyIGxhenkgPSAkKCcnKS5sYXp5UnVsZSgoKSA9PiB7XG4gICAgZnVuY3Rpb24gd2ViU25pZmZlcihpbnB1dCkgey8v5ZeF5o6iXG4gICAgICAgIHNob3dMb2FkaW5nKCflsJ3or5Xojrflj5bop4bpopHkuK0uLi4nKTtcbiAgICAgICAgdmFyIHZpZGVvID1cbiAgICAgICAgICAgICd3ZWJSdWxlOi8vJyArXG4gICAgICAgICAgICBpbnB1dCArXG4gICAgICAgICAgICAnQCcgK1xuICAgICAgICAgICAgJC50b1N0cmluZygoKSA9PiB7XG4gICAgICAgICAgICAgICAgdmFyIHVybHMgPSBfZ2V0VXJscygpO1xuICAgICAgICAgICAgICAgIHZhciBleGNsdWRlID0gL1xcLzQwNFxcLm0zdTh8XFwveGlhamlhXFwubXA0fFxcL+S9memineS4jei2s1xcLm0zdTh8XFwuY3NzfFxcLmpzfFxcLmdpZnxcXC5wbmd8XFwuanBnfFxcLmpwZWd8aHRtbCxodHRwfG0zdTg4LmNvbVxcL2FkbWlufFxcLnBocFxcP3Y9aHxcXD91cmw9aHxcXCZ1cmw9aHxcXD92aWQ9aHwlMjUzRnVybCUyNTNEaC87IC8v6K6+572u5o6S6Zmk5Zyw5Z2AXG4gICAgICAgICAgICAgICAgdmFyIGNvbnRhaW4gPSAvXFwubXA0fFxcLm0zdTh8XFwuZmx2fFxcLmF2aXxcXC5tcGVnfFxcLndtdnxcXC5tb3Z8XFwucm12Yi87IC8v6K6+572u56ym5ZCI5p2h5Lu255qE5q2j56Gu5Zyw5Z2AXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgayBpbiB1cmxzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghZXhjbHVkZS50ZXN0KHVybHNba10pICYmIGNvbnRhaW4udGVzdCh1cmxzW2tdKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QodXJsc1trXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1trXSArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JztcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIFxuICAgICAgICAgICAgICAgICAgICAgKC9senxmZnp5Ly50ZXN0KHVybHNba10pKVxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZnlfYnJpZGdlX2FwcC5jbGVhck0zdThBZCh1cmxzW2tdKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoL1xcLmZsdnxiaWxpLy50ZXN0KHVybHNba10pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNba10gKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wJiZSZWZlcmVyQGh0dHBzOi8vd3d3LmJpbGliaWxpLmNvbX0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvdXJsPS8udGVzdCh1cmxzW2tdKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2tdLnNwbGl0KCd1cmw9JylbMV07XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2tdICsgJyNpc1ZpZGVvPXRydWUjJztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdmlkZW87XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gUGFyc2UoaW5wdXQpIHsvL+WFjeWXhVxuICAgICAgICB2YXIgcGxheWVyID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlucHV0KS5tYXRjaCgvciBwbGF5ZXJfLio/PSguKj8pPC8pWzFdKTtcbiAgICAgICAgdmFyIGZyb20gPSBwbGF5ZXIuZnJvbTtcbiAgICAgICAgdmFyIGpzdXJsID0gcGxheWVyLnVybDtcbmlmIChqc3VybC5tYXRjaCgvMTkwNXxzb3VodXx4aWd1YXxxcXxxaXlpfHlvdWt1fG1ndHZ8bGV8cHB0dnxiaWxpYmlsaS8pKSAge1xuICAgICAgICB2YXIgcGFyc2UgPSAnJztcbiAgfVxuICAgICAgICB2YXIgcmVmID0gXCJcIjtcbiAgICAgICAgaWYgKHJlZikge1xuICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHBhcnNlLCB7XG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICBcIlJlZmVyZXJcIjogcmVmXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QocGFyc2UpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBsb2coaHRtbClcbnVybD0gaHRtbC5tYXRjaCgvXCJ1cmxcIjogXCIoLio/KVwiLylbMV07XG4gICAgICAgIGxvZyh1cmwpXG4gICAgICAgIHJldHVybiB1cmw7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIFBhcnNlKGlucHV0KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHJldHVybiB3ZWJTbmlmZmVyKGlucHV0KTtcbiAgICB9XG59KTtcbi8v57q/6Lev5ZCN5YiX6KGo55qE5a6a5L2NXG52YXIgYXJ0cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5teXVpLXBhbmVsX19oZWFkJiYubmF2LXRhYnMmJmxpJyk7XG4gIFxuLy/nur/ot6/lkI3liJfooajlkI3np7DnmoTlrprkvY1cbnZhciB0YWJzID0gW107XG5mb3IgKHZhciBpIGluIGFydHMpIHtcbiAgICB0YWJzLnB1c2gocGFyc2VEb21Gb3JIdG1sKGFydHNbaV0sICdhJiZUZXh0JykpXG59XG5cblxuLy/mkq3mlL7liJfooajnmoTliJfooajnmoTlrprkvY1cbnZhciBjb250cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5teXVpLWNvbnRlbnRfX2xpc3QnKTtcblxuXG4vL+aSreaUvuWIl+ihqOeahOWIl+ihqOWQjeensOeahOWumuS9jVxudmFyIGxpc3RzID0gW107XG5mb3IgKHZhciBpIGluIGNvbnRzKSB7XG4gICAgbGlzdHMucHVzaChwYXJzZURvbUZvckFycmF5KGNvbnRzW2ldLCAnYm9keSYmYScpKVxufVxuXG5cbnZhciDlr7zmvJQgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy52aWRlby1pbmZvLWl0ZW1zOmNvbnRhaW5zKOWvvOa8lO+8mikmJlRleHQnKTtcblxudmFyIOS4u+a8lCA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZpZGVvLWluZm8taXRlbXM6Y29udGFpbnMo5Li75ryU77yaKSYmVGV4dCcpO1xuXG52YXIg5pu05pawID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcudmlkZW8taW5mby1pdGVtczptYXRjaGVzKOS4iuaYoO+8mikmJlRleHQnKTtcblxudmFyIOeKtuaAgSA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZpZGVvLWluZm8taXRlbXM6bWF0Y2hlcyjpm4bmlbDvvJp85aSH5rOo77yaKSYmVGV4dCcpO1xuXG52YXIg5Zu+54mHID0gcGFyc2VEb20oaHRtbCwgJy5sYXp5bG9hZCYmZGF0YS1zcmN8fGRhdGEtb3JpZ2luYWwnKTtcblxudmFyIOeugOS7iyA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZvZF9jb250ZW50JiZUZXh0JykucmVwbGFjZSgn5pS26LW3JywgJycpO1xuXG52YXIgQ29sb3IgPSBcIiNmMTNiNjZhXCI7XG52YXIgQ29sb3IxID0gXCIjMDk4QUMxXCI7XG5cbmZ1bmN0aW9uIGdldEhlYWQodGl0bGUpIHtcbiAgICByZXR1cm4gJ+KAmOKAmOKAmeKAmTxzdHJvbmc+PGZvbnQgY29sb3I9XCInICsgQ29sb3IgKyAnXCI+JyArIHRpdGxlICsgJzwvZnJvbnQ+PC9zdHJvbmc+Jztcbn1cbmxldCBsaW5lX21vZGVsID0gODtcbmxldCBsaW5lX3R5cGVfbW9kZWwgPSAnYmxhbmtfYmxvY2snO1xuZC5wdXNoKHtcbiAgICB0aXRsZTog5a+85ryUICsgJ1xcbicgKyDkuLvmvJQsXG4gICAgZGVzYzog5pu05pawICsgJ1xcbicgKyDnirbmgIEsXG4gICAgcGljX3VybDog5Zu+54mHLFxuICAgIHVybDogTVlfVVJMLFxuICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWNfYmx1cidcbn0pO1xuZC5wdXNoKHtcbiAgICB0aXRsZTogJ+KAmOKAmOKAmeKAmTxzbWFsbD48Zm9udCBjb2xvcj1cIiNmZjE0OGU4ZVwiPueugOS7i++8micgKyDnroDku4suc3Vic3RyKDAsIDU1KSArICcuLi48L2ZvbnQ+PHNtYWxsPjxmb250IGNvbG9yPVwicmVkXCI+6K+m5oOFPC9mb250Pjwvc21hbGw+PC9zbWFsbD4nLFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHkjJyArICdcXG4nICsg566A5LuLICsgYEBydWxlPWpzOnZhciByZXMgPSB7fTsgdmFyIGQgPSBbXTtkLnB1c2goe3RpdGxlOiflvbHniYfnroDku4vvvJonKyBNWV9VUkwuc3BsaXQoJ2hpa2VyOi8vZW1wdHkjJylbMV0sY29sX3R5cGU6ICdsb25nX3RleHQnfSk7cmVzLmRhdGEgPSBkOyBzZXRIb21lUmVzdWx0KHJlcyk7YCxcbiAgICBjb2xfdHlwZTogJ3RleHRfMSdcbn0pO1xuZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lX21vZGVsOyBpKyspIHtcbiAgICBkLnB1c2goe1xuICAgICAgICBjb2xfdHlwZTogbGluZV90eXBlX21vZGVsXG4gICAgfSlcbn1cblxuLy/lpITnkIbmjqjpgIFUVkJveCBzdGFydFxubGV0IHRmcHVzaCA9IGdldEl0ZW0oJ3dlYnB1c2gnLCAnMCcpO1xuZC5wdXNoKHtcbiAgICB0aXRsZTogKGdldEl0ZW0oJ3dlYnB1c2gnLCAnMCcpID09ICcxJyA/ICfljZXpm4bmjqjpgIHwn5+iJyA6ICfljZXpm4bmjqjpgIHwn5S0JyksXG4gICAgdXJsOiBgaGlrZXI6Ly9lbXB0eUBsYXp5UnVsZT0uanM6Z2V0SXRlbSgnd2VicHVzaCcsJzAnKT09JzEnP3NldEl0ZW0oJ3dlYnB1c2gnLCcwJyk6c2V0SXRlbSgnd2VicHVzaCcsJzEnKTtyZWZyZXNoUGFnZSgpOyd0b2FzdDovL+WIh+aNouaIkOWKn++8gSdgLFxuXG4gICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJ1xufSk7XG5kLnB1c2goe1xuICAgIHRpdGxlOiAn6K6+572u55S16KeGSVAnLFxuICAgIHVybDogXCJpbnB1dDovL1wiICsgZ2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsICdodHRwOi8vJyArIGdldElQKCkgKyAnOjk5NzgnKSArIFwiLy8vL+ivt+i+k+WFpXR2Ym945o6o6YCBSVDlnLDlnYDvvIzlpoJodHRwOi8vXCIgKyBnZXRJUCgpICsgXCI6OTk3OC5qczpzZXRJdGVtKCdoaWtlcnR2Ym94c2V0JyxpbnB1dCk7cmVmcmVzaFBhZ2UoKVwiLFxuICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcbn0pO1xuZC5wdXNoKHtcbiAgICB0aXRsZTogZ2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsICcnKSxcbiAgICAvL3VybDogJ2hpa2VyOi8vZW1wdHknLFxuICAgIHVybDogXCJpbnB1dDovL1wiICsgZ2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsICdodHRwOi8vJyArIGdldElQKCkgKyAnOjk5NzgnKSArIFwiLy8vL+ivt+i+k+WFpXR2Ym945o6o6YCBSVDlnLDlnYDvvIzlpoJodHRwOi8vXCIgKyBnZXRJUCgpICsgXCI6OTk3OC5qczpzZXRJdGVtKCdoaWtlcnR2Ym94c2V0JyxpbnB1dCk7cmVmcmVzaFBhZ2UoKVwiLFxuICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcbn0pO1xuXG52YXIgcGxheVVybHMgPSAnJztcbmZvciAodmFyIGkgPSAwOyBpIDwgbGlzdHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgbGlzdCA9IGxpc3RzW2ldO1xuICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykge1xuICAgICAgICBpZiAoaiA9PSBsaXN0Lmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHBsYXlVcmxzICs9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpICsgXCIkXCIgKyBwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpICsgXCIkJCRcIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBsYXlVcmxzICs9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpICsgXCIkXCIgKyBwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpICsgXCIjXCI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnBsYXlVcmxzID0gcGxheVVybHMuc3Vic3RyaW5nKDAsIHBsYXlVcmxzLmxlbmd0aCAtIDMpO1xuLy9sb2cocGxheVVybHMpO1xuXG5sZXQgcHVzaCA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICBcIm5hbWVcIjogZ2V0UGFnZVRpdGxlKCksXG4gICAgXCJwaWNcIjogcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubGF6eWxvYWQmJmRhdGEtc3JjJyksXG4gICAgXCJjb250ZW50XCI6IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZvZF9jb250ZW50JiZUZXh0JyksXG4gICAgXCJmcm9tXCI6IHRhYnMuam9pbignJCQkJyksXG4gICAgXCJ1cmxcIjogcGxheVVybHMucmVwbGFjZSgvXFwmL2csICfvvIbvvIYnKVxufSk7XG4vL2xvZyhwdXNoKTtcblxuZC5wdXNoKHtcbiAgICB0aXRsZTogXCLmjqjpgIHlvZPliY3pobXliJfooajliLBUVkJveFwiLFxuICAgIHVybDogJChwdXNoKS5sYXp5UnVsZSgoKSA9PiB7XG4gICAgICAgIHJldHVybiAnaGlrZXI6Ly9wYWdlL3B1c2g/cHVzaHVybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGlucHV0KTtcbiAgICB9KSxcbiAgICBjb2xfdHlwZTogXCJzY3JvbGxfYnV0dG9uXCJcbn0pO1xuXG5kLnB1c2goe1xuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXG4gICAgfSlcbiAgICAvL+WkhOeQhuaOqOmAgVRWQm94IGVuZFxuXG5mdW5jdGlvbiBzZXRUYWJzKHRhYnMsIHZhcmkpIHtcbiAgICBmb3IgKHZhciBpIGluIHRhYnMpIHtcbiAgICAgICAgdmFyIHVybCA9IFwiI25vTG9hZGluZyNAbGF6eVJ1bGU9LmpzOnB1dFZhcignXCIgKyB2YXJpICsgXCInLCAnXCIgKyBpICsgXCInKTtyZWZyZXNoUGFnZShmYWxzZSk7J3RvYXN0Oi8v5YiH5o2i5oiQ5Yqf77yBJzsnI25vSGlzdG9yeSNoaWtlcjovL2VtcHR5J1wiO1xuICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgdGl0bGU6IGdldFZhcih2YXJpLCAnMCcpID09IGkgPyBnZXRIZWFkKHRhYnNbaV0pIDogdGFic1tpXSxcbiAgICAgICAgICAgIHVybDogdXJsLFxuICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJ1xuICAgICAgICB9KVxuICAgIH1cbiAgICBkLnB1c2goe1xuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXG4gICAgfSlcbn1cblxuZnVuY3Rpb24gc2V0TGlzdHMobGlzdHMsIGluZGV4KSB7XG4gICAgZC5wdXNoKHtcbiAgICAgICAgY29sX3R5cGU6ICdsaW5lX2JsYW5rJ1xuICAgIH0pXG59XG5pZiAoZ2V0VmFyKCdzaHNvcnQnKSA9PSAnMScpIHtcbiAgICB2YXIgc3ggPSAn4oCY4oCY4oCZ4oCZPGZvbnQgY29sb3I9XCIjMGFhMzQ0XCI+5o6S5bqPPC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XCIjMGFhMzQ0XCI+4oaRPC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XCIjZmY0YzAwXCI+4oaTPC9mb250Pjwvc21hbGw+Jztcbn0gZWxzZSB7XG4gICAgdmFyIHN4ID0gJ+KAmOKAmOKAmeKAmTxmb250IGNvbG9yPVwiIzBhYTM0NFwiPuaOkuW6jzwvZm9udD48L3NtYWxsPicgKyAnPHNtYWxsPjxmb250IGNvbG9yPVwiI2ZmNGMwMFwiPuKGkTwvZm9udD48L3NtYWxsPicgKyAnPHNtYWxsPjxmb250IGNvbG9yPVwiIzBhYTM0NFwiPuKGkzwvZm9udD48L3NtYWxsPic7XG59XG5cbmZ1bmN0aW9uIHNldExpc3RzKGxpc3RzLCBpbmRleCkge1xuICAgIGQucHVzaCh7XG4gICAgICAgIHRpdGxlOiAn4oCY4oCY4oCZ4oCZPHNwYW4gc3R5bGU9XCJjb2xvcjonICsgQ29sb3IxICsgJ1wiPjxzbWFsbD7pgInpm4bliJfooag8L3NtYWxsPicgKyAnXFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4gc3R5bGU9XCJmbG9hdDpyaWdodFwiPicgKyAnPHNtYWxsPicgKyBzeCArICc8L3NtYWxsPicsXG4gICAgICAgIHVybDogYCNub0xvYWRpbmcjQGxhenlSdWxlPS5qczpsZXQgY29uZiA9IGdldFZhcignc2hzb3J0Jyk7aWYoY29uZj09JzEnKXtwdXRWYXIoe2tleTonc2hzb3J0JywgdmFsdWU6JzAnfSk7fWVsc2V7cHV0VmFyKHtrZXk6J3Noc29ydCcsIHZhbHVlOicxJ30pfTtyZWZyZXNoUGFnZSgpOyd0b2FzdDovL+WIh+aNouaOkuW6j+aIkOWKnyc7JyNub0hpc3RvcnkjaGlrZXI6Ly9lbXB0eSdgLFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnXG4gICAgfSlcbiAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XTtcblxuICAgIGlmIChnZXRWYXIoJ3Noc29ydCcpID09ICcxJykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IGxpc3QubGVuZ3RoIC0gMTsgaiA+PSAwOyBqLS0pIHtcbiAgICAgICAgICAgICAgICBpZiAodGZwdXNoID09ICcwJykge1xuICAgICAgICAgICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLnJlcGxhY2UoL+esrHzpm4Z86K+dfOacny9nLCAnJyksXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJykgKyBsYXp5LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMidcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHVybHggPSAnaGlrZXI6Ly9wYWdlL3B1c2g/cHVzaHVybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwibmFtZVwiOiBnZXRQYWdlVGl0bGUoKSArIHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJwaWNcIjogcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubGF6eWxvYWQmJmRhdGEtc3JjJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBcImNvbnRlbnRcIjogcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcudm9kX2NvbnRlbnQmJlRleHQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidXJsXCI6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJylcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB2YXIgZXh0cmF4ID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJylcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKS5yZXBsYWNlKC/nrKx86ZuGfOivnXzmnJ8vZywgJycpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmx4LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMicsXG4gICAgICAgICAgICAgICAgICAgICAgICBleHRyYTogZXh0cmF4XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5rKh5pyJ6YCJ6ZuG5ZOf77yM5LiN5L+h54K55Zu+54mH5Y6755yL55yL8J+RgCcsXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBsaXN0Lmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRmcHVzaCA9PSAnMCcpIHtcbiAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKS5yZXBsYWNlKC/nrKx86ZuGfOivnXzmnJ8vZywgJycpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpICsgbGF6eSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiBsaXN0Lmxlbmd0aCA+IDQgPyAndGV4dF81JyA6ICd0ZXh0XzInXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciB1cmx4ID0gJ2hpa2VyOi8vcGFnZS9wdXNoP3B1c2h1cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBcIm5hbWVcIjogZ2V0UGFnZVRpdGxlKCkgKyBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwicGljXCI6IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBcImNvbnRlbnRcIjogcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcuc2hvdy1kZXNjJiZUZXh0JyksXG4gICAgICAgICAgICAgICAgICAgICAgICBcInVybFwiOiBwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGV4dHJheCA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sICdhJiZUZXh0JykucmVwbGFjZSgv56ysfOmbhnzor5185pyfL2csICcnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdXJseCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiBsaXN0Lmxlbmd0aCA+IDQgPyAndGV4dF81JyA6ICd0ZXh0XzInLFxuICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmE6IGV4dHJheFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmsqHmnInpgInpm4blk5/vvIzkuI3kv6Hngrnlm77niYfljrvnnIvnnIvwn5GAJyxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuc2V0VGFicyh0YWJzLCBNWV9VUkwpO1xuc2V0TGlzdHMobGlzdHMsIGdldFZhcihNWV9VUkwsICcwJykpO1xuZC5wdXNoKHtcbiAgICB0aXRsZTogJzxicj4nLFxuICAgIGNvbF90eXBlOiAncmljaF90ZXh0J1xufSk7XG5zZXRSZXN1bHQoZCk7Iiwic2RldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJzZGV0YWlsX2ZpbmRfcnVsZSI6IioiLCJ1YSI6Im1vYmlsZSIsInByZVJ1bGUiOiJ2YXIgdWE9Jyc7XG5yZXF1aXJlKCdodHRwczovL2dpdGNvZGUubmV0L3FxXzMyMzk0MzUxL2RyLy0vcmF3L21hc3Rlci9qcy/pooTlpITnkIYuanMnKTsiLCJwYWdlcyI6Ilt7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi5o6o6YCBXCIsXCJwYXRoXCI6XCJwdXNoXCIsXCJydWxlXCI6XCJqczpcXG5sZXQgaXRlbXMgPSBbXTtcXG5sZXQgcHVzaGluID0gZGVjb2RlVVJJQ29tcG9uZW50KGdldFBhcmFtKFxcXCJwdXNodXJsXFxcIikpO1xcbmxldCB0dmlwID0gZ2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsICcnKTtcXG5cXG5pdGVtcy5wdXNoKHtcXG4gICAgdGl0bGU6ICflvZPliY1JUO+8micgKyB0dmlwLFxcbiAgICB1cmw6IFxcXCJpbnB1dDovL1xcXCIgKyBnZXRJdGVtKCdoaWtlcnR2Ym94c2V0JywgJ2h0dHA6Ly8nICsgZ2V0SVAoKSArICc6OTk3OCcpICsgXFxcIi8vLy/or7fovpPlhaVUVkJveOerr+eahElQ5Zyw5Z2A77yM5aaCaHR0cDovL1xcXCIgKyBnZXRJUCgpICsgXFxcIjo5OTc4LmpzOnNldEl0ZW0oJ2hpa2VydHZib3hzZXQnLGlucHV0KTtyZWZyZXNoUGFnZSgpXFxcIixcXG4gICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbidcXG59KTtcXG52YXIgcHVybCA9IHB1c2hpbjtcXG5cXG5pZiAocHVzaGluLmluY2x1ZGVzKCdcXFxcbicpICYmICFwdXNoaW4uc3RhcnRzV2l0aCgneycpKSB7XFxuICAgIHB1cmwgPSBwdXNoaW4ucmVwbGFjZShcXFwiXFxcXG5cXFwiLCAnJCcpO1xcbn1cXG5pZiAocHVzaGluLnN0YXJ0c1dpdGgoJ2h0dHAnKSAmJiBwdXNoaW4uaW5jbHVkZXMoJzt7JykpIHtcXG4gICAgcHVybCA9IEpTT04uc3RyaW5naWZ5KHtcXG4gICAgICAgIFxcXCJuYW1lXFxcIjogXFxcIua1t+mYlOebtOmTvuaOqOmAgVxcXCIsXFxuICAgICAgICBcXFwidXJsXFxcIjogcHVzaGluXFxuICAgIH0pXFxufVxcbmlmIChwdXNoaW4uc3RhcnRzV2l0aCgnaHR0cHM6Ly93d3cuYWxpeXVuZHJpdmUuY29tL3MvJykpIHtcXG4gICAgbGV0IHJlZnRva2VuID0gSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9maWxlcy9ydWxlcy9pY3kvaWN5LWFsaS10b2tlbi5qc29uJywge30pKVswXS5yZWZyZXNoX3Rva2VuO1xcbiAgICBwdXJsID0gSlNPTi5zdHJpbmdpZnkoe1xcbiAgICAgICAgXFxcInVybFxcXCI6IHB1c2hpbixcXG4gICAgICAgIFxcXCJyZWZyZXNoX3Rva2VuXFxcIjogcmVmdG9rZW5cXG4gICAgfSlcXG59XFxuaWYgKHB1c2hpbi5pbmNsdWRlcygnOjUyMDIwJykpIHtcXG4gICAgaWYgKHB1c2hpbi5pbmNsdWRlcygncmVkaXJlY3RQbGF5VXJsJykpIHtcXG4gICAgICAgIHB1cmwgPSBKU09OLnN0cmluZ2lmeSh7XFxuICAgICAgICAgICAgXFxcIm5hbWVcXFwiOiBcXFwi5rW36ZiU5oqV5bGP55u06ZO+XFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjogcHVzaGluXFxuICAgICAgICB9KVxcbiAgICB9IGVsc2Uge1xcbiAgICAgICAgcHVybCA9IEpTT04uc3RyaW5naWZ5KHtcXG4gICAgICAgICAgICBcXFwibmFtZVxcXCI6IFxcXCLmtbfpmJTnvZHpobXmipXlsY9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOiBwdXNoaW5cXG4gICAgICAgIH0pXFxuICAgIH1cXG59XFxuXFxuLy9sb2coJ+aOqOmAgScrcHVybCk7XFxudmFyIHN0YXRlID0gcmVxdWVzdCh0dmlwICsgJy9hY3Rpb24nLCB7XFxuICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyxcXG4gICAgICAgIC8vJ1gtUmVxdWVzdGVkLVdpdGgnOiAnWE1MSHR0cFJlcXVlc3QnLFxcbiAgICAgICAgJ1JlZmVyZXInOiB0dmlwXFxuICAgIH0sXFxuICAgIHRpbWVvdXQ6IDIwMDAsXFxuICAgIGJvZHk6ICdkbz1wdXNoJnVybD0nICsgcHVybC5yZXBsYWNlKC9cXFxcJi9nLCAn77yG77yGJyksXFxuICAgIG1ldGhvZDogJ1BPU1QnXFxufSk7XFxuLy9sb2coc3RhdGUpO1xcbmlmIChzdGF0ZSA9PSAnb2snKSB7XFxuICAgIC8vbG9nKHN0YXRlKTtcXG4gICAgaXRlbXMucHVzaCh7XFxuICAgICAgICB0aXRsZTogXFxcIuKchVxcXCIgKyBzdGF0ZSxcXG4gICAgICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICAgICAgY29sX3R5cGU6IFxcXCJ0ZXh0X2NlbnRlcl8xXFxcIlxcbiAgICB9KTtcXG59IGVsc2Uge1xcbiAgICAvL2xvZyhzdGF0ZSk7XFxuICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IFxcXCLinY5cXFwiICsgc3RhdGUsXFxuICAgICAgICB1cmw6IFxcXCJoaWtlcjovL2VtcHR5XFxcIixcXG4gICAgICAgIGNvbF90eXBlOiBcXFwidGV4dF9jZW50ZXJfMVxcXCJcXG4gICAgfSk7XFxuXFxufVxcbnNldFJlc3VsdChpdGVtcyk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLliqjmgIHliIbnsbtcIixcInBhdGhcIjpcImR0XCIsXCJydWxlXCI6XCJjb25zdCBlbXB0eSA9IFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcblxcbnRyeSB7XFxuICAgIHZhciBjYXRlZ29yaWVzID0gcGRmYShodG1sLCDlpKfnsbvlrprkvY0pLmNvbmNhdChwZGZhKGh0bWwsIOaLvOaOpeWIhuexuykpXFxufSBjYXRjaCAoZSkge1xcbiAgICB2YXIgY2F0ZWdvcmllcyA9IHBkZmEoaHRtbCwg5aSn57G75a6a5L2NKVxcbn1cXG5cXG5sZXQgaW5pdF9jYXRlID0gW11cXG5cXG5mb3IgKGxldCBpID0gMDsgaSA8IDIwOyBpKyspIHtcXG4gICAgaW5pdF9jYXRlLnB1c2goXFxcIjBcXFwiKVxcbn1cXG5cXG5jb25zdCBmb2xkID0gZ2V0VmFyKE1ZX1JVTEUuZ3JvdXAsIFxcXCIwXFxcIilcXG5jb25zdCBjYXRlX3RlbXBfanNvbiA9IGdldFZhcihNWV9SVUxFLnRpdGxlLCBKU09OLnN0cmluZ2lmeShpbml0X2NhdGUpKVxcbmNvbnN0IGNhdGVfdGVtcCA9IEpTT04ucGFyc2UoY2F0ZV90ZW1wX2pzb24pXFxuXFxuaWYgKHBhcnNlSW50KHBhZ2UpID09PSAxKSB7XFxuXFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogXFxcIvCflI1cXFwiLFxcbiAgICAgICAgdXJsOiBcXFwiJ2hpa2VyOi8vc2VhcmNoP3J1bGU9XFxcIiArIE1ZX1JVTEUudGl0bGUgKyBcXFwiJnM9JytpbnB1dFxcXCIsXFxuICAgICAgICBkZXNjOiBcXFwi5pCc5L2g5oOz55yLLi4uXFxcIixcXG4gICAgICAgIGNvbF90eXBlOiBcXFwiaW5wdXRcXFwiXFxuICAgIH0pO1xcblxcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IGZvbGQgPT09ICcxJyA/ICfigJzigJzigJ3igJ08Yj48c3BhbiBzdHlsZT1cXFwiY29sb3I6ICMxOUI4OURcXFwiPjogKDwvc3Bhbj48L2I+JyA6ICfigJzigJzigJ3igJ08Yj48c3BhbiBzdHlsZT1cXFwiY29sb3I6ICM5MTAxMTNcXFwiPjogKTwvc3Bhbj48L2I+JyxcXG4gICAgICAgIHVybDogJCgpLmxhenlSdWxlKChmb2xkKSA9PiB7XFxuICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUuZ3JvdXAsIGZvbGQgPT09ICcxJyA/ICcwJyA6ICcxJyk7XFxuICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG4gICAgICAgIH0sIGZvbGQpLFxcbiAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgfSlcXG5cXG5jYXRlZ29yaWVzLmZvckVhY2goKGNhdGVnb3J5LCBpbmRleCkgPT4ge1xcbiAgICAgICAgbGV0IHN1Yl9jYXRlZ29yaWVzID0gcGRmYShjYXRlZ29yeSwg5bCP57G75a6a5L2NKTtcXG4gICAgICAgIGlmIChpbmRleCA9PT0gMCkge1xcbiAgICAgICAgICAgIHN1Yl9jYXRlZ29yaWVzLmZvckVhY2goKGl0ZW0sIGtleSkgPT4ge1xcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwZGZoKGl0ZW0sIOWIhuexu+agh+mimClcXG4gICAgICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBrZXkudG9TdHJpbmcoKSA9PT0gY2F0ZV90ZW1wW2luZGV4XSA/ICfigJzigJzigJ3igJ08Yj48c3BhbiBzdHlsZT1cXFwiY29sb3I6ICcgKyDliIbnsbvpopzoibIgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9zcGFuPjwvYj4nIDogdGl0bGUsXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICQocGQoaXRlbSwg5YiG57G76ZO+5o6lKSArICcjbm9Mb2FkaW5nIycpLmxhenlSdWxlKChwYXJhbXMpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3X2NhdGUgPSBbXVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5jYXRlX3RlbXAuZm9yRWFjaCgoY2F0ZSwgaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3X2NhdGUucHVzaChpbmRleCA9PT0gMCA/IHBhcmFtcy5rZXkudG9TdHJpbmcoKSA6IFxcXCIwXFxcIilcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnRpdGxlLCBKU09OLnN0cmluZ2lmeShuZXdfY2F0ZSkpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudXJsLCBpbnB1dClcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSh0cnVlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXRlX3RlbXA6IGNhdGVfdGVtcCxcXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk6IGtleSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlOiBwYWdlLFxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJibGFua19ibG9ja1xcXCJcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH0gZWxzZSBpZiAoZm9sZCA9PT0gJzEnKSB7XFxuICAgICAgICAgICAgc3ViX2NhdGVnb3JpZXMuZm9yRWFjaCgoaXRlbSwga2V5KSA9PiB7XFxuICAgICAgICAgICAgICAgIGxldCB0aXRsZSA9IHBkZmgoaXRlbSwg5YiG57G75qCH6aKYKVxcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGtleS50b1N0cmluZygpID09PSBjYXRlX3RlbXBbaW5kZXhdID8gJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjogJyArIOWIhuexu+minOiJsiArICdcXFwiPicgKyB0aXRsZSArICc8L3NwYW4+PC9iPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChwZChpdGVtLCDliIbnsbvpk77mjqUpICsgJyNub0xvYWRpbmcjJykubGF6eVJ1bGUoKHBhcmFtcykgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5jYXRlX3RlbXBbcGFyYW1zLmluZGV4XSA9IHBhcmFtcy5rZXkudG9TdHJpbmcoKVxcblxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnRpdGxlLCBKU09OLnN0cmluZ2lmeShwYXJhbXMuY2F0ZV90ZW1wKSlcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS51cmwsIGlucHV0KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKHRydWUpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcbiAgICAgICAgICAgICAgICAgICAgfSwge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGVfdGVtcDogY2F0ZV90ZW1wLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk6IGtleSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlOiBwYWdlLFxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJibGFua19ibG9ja1xcXCJcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH1cXG4gICAgfSlcXG59XFxuXCJ9XSIsImljb24iOiIiLCJwcm94eSI6IiJ9
Add Comment
Please, Sign In to add comment