Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@长风音乐🎶@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi6ZW/6aOO6Z+z5LmQ8J+OtiIsImF1dGhvciI6Iue8mOWIhiIsInVybCI6Imhpa2VyOi8vZW1wdHkjI2h0dHBzOi8vY2Z5eS5jY2Z5QWxsP3NzPSMjZnlwYWdlIiwidmVyc2lvbiI6MjAyNDAxMDQsImNvbF90eXBlIjoiY2FyZF9waWNfMyIsImNsYXNzX25hbWUiOiLphbfmiJEm572R5piTJumFt+eLlybmrYzmiYsmTVYm55S16KeGJueUteWPsCIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6Ii9tcDMva3cucGhwJi9tcDMvMTYzLnBocCYvbXAzL2tnLnBocCYvbXAzL2dzLnBocCYvbXAzLyMmL21wMy9kcy5waHAmL2ZtLyIsImFyZWFfbmFtZSI6IuaKlumfsyblv6vmiYsmWVkm5YWt6Ze05oi/JuengOiJsibkuZDll6gm5Y2D5biGJuS5iOS5iCbmlpfpsbwm576a6JCMJuWTjuexsybmmKDlrqImOTXnp4Am5aWH56eAJiIsImFyZWFfdXJsIjoiL0NmL2R5emJqc29uLnBocCYvQ2Yva3MucGhwJi9DZi9ZWS5waHAmL0NmLzZmLnBocCYvQ2YveHMucGhwJi9DZi9saC5waHAmL0NmL3FmLnBocCYvQ2YvbW0ucGhwJi9DZi9keXUucGhwJi9DZi9sbS5waHAmL0NmL2FtLnBocCYvQ2YvaWsucGhwJi9DZi85NXgucGhwJi9DZi9xeC5waHAmIiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoi5Zeo56eAJuaIkeengCblk5Tlk6km5Lq65Lq6Jui/hembtybnjKvmkq0m5rWq5pKtJuiKseakkibooZfllLEm5pif5YWJJkNDJktLJk5PVybmo4noirHns5YiLCJzb3J0X3VybCI6IiIsInllYXJfdXJsIjoiL0NmL2h4LnBocCYvQ2Yvd3gucGhwJi9DZi9iemIucGhwJi9DZi9yci5waHAmL0NmL3hsLnBocCYvQ2YvbXoucGhwJi9DZi9sYi5waHAmL0NmL2hqLnBocCYvQ2YvamMucGhwJi9DZi94Z3piLnBocCYvQ2YvY2MucGhwJi9DZi9ray5waHAmL0NmL25vdy5waHAmL0NmL21odC5waHAiLCJmaW5kX3J1bGUiOiJqczpcbnZhciBkID0gW107XG52YXIgZ2V0UmFuZ2VDb2xvcnMgPSBmdW5jdGlvbigpIHvCoMKgwqDCoMKgwqDCoFxuICAgIHJldHVybiAnIycgKyAoJzAwMDAwJyArIChNYXRoLnJhbmRvbSgpICogMHgxMDAwMDAwIDw8IDApLnRvU3RyaW5nKDE2KSkuc3Vic3RyKC02KTvCoMKgwqDCoMKgXG59XG5cbmZ1bmN0aW9uIGNvbG9yKGEsIGIsIHR4dCkge1xuICAgIHJldHVybiBhID09IGIgPyAn4oCc4oCc4oCd4oCdPGI+PGZvbnQgY29sb3I9JyArIGdldFJhbmdlQ29sb3JzKCkgKyAnPicgKyB0eHQgKyAnPC9mb250PjwvYj4nIDogdHh0XG59XG5NWV9VUkwgPSBNWV9VUkwuc3BsaXQoXCIjI1wiKVsxXVxuaWYgKC9cXC9mbVxcLy8udGVzdChNWV9VUkwpKSB7XG4kLnJlcXVpcmUoXCJoaWtlcjovL3BhZ2UvZHRcIilcbn1lbHNlXG5pZiAoL0NmLy50ZXN0KE1ZX1VSTCkpIHtcbiAgICAkLnJlcXVpcmUoXCJoaWtlcjovL3BhZ2UvemJcIilcbn0gZWxzZVxuaWYgKC9cXC9kc1xcLi8udGVzdChNWV9VUkwpKSB7XG4gICAgICQucmVxdWlyZShcImhpa2VyOi8vcGFnZS9kc1wiKVxufSBlbHNlIHtcbiAgICBpZiAoL1xcL2dzXFwuLy50ZXN0KE1ZX1VSTCkpIHtcbiAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KE1ZX1VSTCwge30pO1xuICAgICAgICB2YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5qYycpXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsaXN0LmZvckVhY2goZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHBkZmgoZGF0YSwgJ2EmJlRleHQnKSxcbiAgICAgICAgICAgICAgICAgICAgLy9pbWc6IHBkKGRhdGEsICdhJiZkYXRhLW9yaWdpbmFsJykgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9jZnl5LmNjL21wMy9rdy5waHA/c3M9JyArIHBkZmgoZGF0YSwgJ2EmJlRleHQnKSxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzMnLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgIH0gZWxzZSBpZiAoLyMvLnRlc3QoTVlfVVJMKSkge1xuICAgICAgICB2YXIgaHRtbCA9IE1ZX1VSTC5zcGxpdChcIiNcIilbMF0ucmVwbGFjZSgnbXAzJywgJ21wNCcpXG4gICAgICAgIHZhciBzaiA9IHBkZmgocmVxdWVzdChodG1sLCB7fSksICdpZnJhbWUmJnNyYycpXG4gICAgICAgIHZhciB1cmwgPSBodG1sICsgc2pcbmlmIChNWV9QQUdFID09IDEpIHtcbiAgICAgICAgdmFyIGFyciA9IFtcIumFt+eLl01WXCIsIFwi6YW35oiRTVZcIl1cbiAgICAgICAgYXJyLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICB4eSA9ICfigJjigJjigJnigJk8Yj48c3BhbiBzdHlsZT1cImNvbG9yOiAjMWFhZDE5XCI+JyArIGl0ZW0gKyAnPC9zcGFuPjwvYj4nO1xuICAgICAgICAgICAgdmFyIHRpdGxlID0gaXRlbSA9PT0gZ2V0TXlWYXIoJ2ZsJywgJ+mFt+eLl01WJykgPyB4eSA6IGl0ZW07XG4gICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0aXRsZSxcbiAgICAgICAgICAgICAgICB1cmw6ICQoJyNub0xvYWRpbmcjJykubGF6eVJ1bGUoKHRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCdmbCcsIHRhKVxuICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcImhpa2VyOi8vZW1wdHlcIlxuICAgICAgICAgICAgICAgIH0sIGl0ZW0pLFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xufVxuICAgICAgICBsZXQgbW9kZSA9IGdldE15VmFyKCdmbCcsICfphbfmiJFNVicpXG4gICAgICAgIHN3aXRjaCAobW9kZSkge1xuICAgICAgICAgICAgY2FzZSAn6YW354uXTVYnOlxuICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gcGRmYShyZXF1ZXN0KHVybCwge30pLCAnYm9keSYmLmpjJylcbiAgICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgY2FzZSAn6YW35oiRTVYnOlxuICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gcGRmYShyZXF1ZXN0KHVybC5yZXBsYWNlKCdrZy9jZicsICdrdycpLCB7fSksICdib2R5JiYuamMnKVxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgICAgbGlzdC5mb3JFYWNoKGRhdGEgPT4ge1xuICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogcGRmaChkYXRhLCAnYSYmdGl0bGUnKSxcbiAgICAgICAgICAgICAgICAvLyBkZXNjOiBkYXRhLmF1dGhvcixcbiAgICAgICAgICAgICAgICBpbWc6IHBkZmgoZGF0YSwgJ2ltZyYmc3JjJykgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgICAgICAgICB1cmw6ICdodHRwczovL2NmeXkuY2MvbXA0L2tnLycgKyBwZGZoKGRhdGEsICdhJiZocmVmJykgKyAkKFwiXCIpLmxhenlSdWxlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd2aWRlbzovLycgKyBpbnB1dFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnJyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KCdodHRwczovL2NmeXkuY2MvbXAzLycsIHt9KS5tYXRjaCgvQ2ZcXChcIiguKj8pXCIvKVsxXS5zcGxpdChcIj1cIilbMV07XG4gICAgICAgIHZhciBsaXN0ID0gSlNPTi5wYXJzZShyZXF1ZXN0KE1ZX1VSTCArIGh0bWwpKS5EYXRhXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsaXN0LmZvckVhY2goZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgdmFyIHBpYyA9IGRhdGEucGljXG4gICAgICAgICAgICAgICAgaWYgKCEvaHR0cC8udGVzdChwaWMpKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSAnaHR0cHM6JyArIHBpY1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogZGF0YS50aXRsZSxcbiAgICAgICAgICAgICAgICAgICAgZGVzYzogZGF0YS5hdXRob3IsXG4gICAgICAgICAgICAgICAgICAgIGltZzogcGljICsgJ0BSZWZlcmVyPScsXG4gICAgICAgICAgICAgICAgICAgIHVybDogZGF0YS51cmwgKyAkKFwiXCIpLmxhenlSdWxlKChscmMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvXFwvMTYzXFwvLy50ZXN0KGlucHV0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBscmMgPSByZXF1ZXN0KGxyYywge30pLnJlcGxhY2UoL1xcWy9nLCAnXFxuWycpLnJlcGxhY2UoL1tcXHNcXFNdKj9cXFsvLCAnWycpLnJlcGxhY2UoL1tcXHNcXFNdKlxcPi8sICcnKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmxzOiBbaW5wdXRdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx5cmljOiBscmNcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIH0sIGRhdGEubHJjKSxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICcnLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgIH1cbn1cbiQucmVxdWlyZShcImhpa2VyOi8vcGFnZS/mm7TmlrBcIilcbnNldFJlc3VsdChkKSIsInNlYXJjaF91cmwiOiJoaWtlcjovL2VtcHR5P2tleT0qKiZwPWZ5cGFnZSIsImdyb3VwIjoi57yY5YiGIiwic2VhcmNoRmluZCI6ImpzOlxubGV0IGNvbmZpZyA9IFt7XG4gICAgXCJuYW1lXCI6IFwi6YW35oiR6Z+z5LmQXCIsXG4gICAgXCJ1cmxcIjogXCJodHRwczovL2NmeXkuY2MvbXAzL2t3LnBocD9zcz0qKlwiXG59LCB7XG4gICAgXCJuYW1lXCI6IFwi6YW354uX6Z+z5LmQXCIsXG4gICAgXCJ1cmxcIjogXCJodHRwczovL2NmeXkuY2MvbXAzL2tnLnBocD9zcz0qKlwiXG59LCB7XG4gICAgXCJuYW1lXCI6IFwi572R5piT6Z+z5LmQXCIsXG4gICAgXCJ1cmxcIjogXCJodHRwczovL2NmeXkuY2MvbXAzLzE2My5waHA/c3M9KipcIiAgICAgXG59LCB7XG4gICAgXCJuYW1lXCI6IFwiTVZcIixcbiAgICBcInVybFwiOiBcImh0dHBzOi8vY2Z5eS5jYy9tcDQva2cvY2YucGhwP3NzPSoqXCJcbiAgICAgIFxufV1cbmxldCBydWxlcyA9IGNvbmZpZy5tYXAoKHNvdXJjZSkgPT4geyAgXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdGl0bGU6IHNvdXJjZS5uYW1lLFxuICAgICAgICBzZWFyY2hfdXJsOiAnaGlrZXI6Ly9lbXB0eT9rZXk9KiomcD1meXBhZ2UnLFxuICAgICAgICBzZWFyY2hGaW5kOiAnanM6JyArICQudG9TdHJpbmcoKG5hbWUsIHVybCkgPT4ge1xuICAgICAgICAgICAgbGV0IGQgPSBbXTtcbiAgICAgICAgICAgIGtleSA9IGdldFBhcmFtKCdrZXknKTsgICAgICAgICAgXG4gICAgICAgICAgICB2YXIgdXJsID0gdXJsLnJlcGxhY2UoL1xcKlxcKi8sIGtleSk7ICAgXG4gICAgICBpZiAobmFtZSA9PT0gJ01WJykgIHtcbnZhciBsaXN0ID0gcGRmYShyZXF1ZXN0KHVybCwge30pLCAnYm9keSYmLmpjJylcbiAgICBsaXN0LmZvckVhY2goZGF0YSA9PiB7XG4gICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICB0aXRsZTogcGRmaChkYXRhLCAnYSYmdGl0bGUnKSxcbiAgICAgICAgICAgIC8vIGRlc2M6IGRhdGEuYXV0aG9yLFxuICAgICAgICAgICAgaW1nOiBwZGZoKGRhdGEsICdpbWcmJnNyYycpICsgJ0BSZWZlcmVyPScsXG4gICAgICAgICAgICB1cmw6ICdodHRwczovL2NmeXkuY2MvbXA0L2tnLycgKyBwZGZoKGRhdGEsICdhJiZocmVmJykrJChcIlwiKS5sYXp5UnVsZSgoKT0+eyAgICAgXG4gICAgcmV0dXJuICd2aWRlbzovLycraW5wdXRcbn0pICxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnJyxcbiAgICAgICAgfSlcbiAgICB9KVxufWVsc2V7XG4gICAgICAgICAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UocmVxdWVzdCh1cmwse30pKS5EYXRhXG50cnkge1xuICAgIGxpc3QuZm9yRWFjaChkYXRhID0+IHtcbnZhciBwaWMgPSBkYXRhLnBpY1xuaWYgKCEvaHR0cC8udGVzdChwaWMpKSB7XG52YXIgcGljID0gJ2h0dHBzOicrcGljXG59XG4gICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICB0aXRsZTogZGF0YS50aXRsZSxcbiAgICAgICAgICAgIGRlc2M6IGRhdGEuYXV0aG9yLFxuICAgICAgICAgICAgaW1nOiBwaWMgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgICAgIHVybDogIGRhdGEudXJsICsgJChcIlwiKS5sYXp5UnVsZSgobHJjKT0+e1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICB1cmxzOiBbaW5wdXRdLFxuICAgICAgICAgICAgbHlyaWM6IGxyY1xufSlcbn0sIGRhdGEubHJjKSxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnJyxcbiAgICAgICAgfSlcbiAgICB9KVxufSBjYXRjaCAoZSkge31cbn1cbiAgIHNldFJlc3VsdChkKTtcbiAgICAgICAgfSwgc291cmNlLm5hbWUsIHNvdXJjZS51cmwpXG4gICAgfTtcbn0pICAgICAgXG5zZXRSZXN1bHQoW3tcbiAgICB0aXRsZTogXCLngrnmiJHlvIDlp4vogZrmkJxcIixcbiAgICB1cmw6IFwiaGlrZXI6Ly9zZWFyY2g/cz1cIiArIGdldFBhcmFtKFwia2V5XCIpLFxuICAgIGV4dHJhOiB7XG4gICAgICAgIHJ1bGVzOiAkLnRvU3RyaW5nKChydWxlcykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHJ1bGVzXG4gICAgICAgIH0sIHJ1bGVzKVxuICAgIH1cbn1dKSIsImRldGFpbF9jb2xfdHlwZSI6ImNhcmRfcGljXzMiLCJkZXRhaWxfZmluZF9ydWxlIjoianM6XG52YXIgZCA9IFtdO1xuYWRkTGlzdGVuZXIoXCJvbkNsb3NlXCIsICQudG9TdHJpbmcoKCkgPT4ge1xuICAgIGNsZWFyTXlWYXIoXCJmbFwiKTtcbiAgICBcbn0pKTtcbmh0bWwgPSBnZXRSZXNDb2RlKCk7XG52YXIgYXJyID0gIFtcIumFt+aIkemfs+S5kFwiLFwi572R5piT6Z+z5LmQXCIsXCLphbfni5fpn7PkuZBcIl1cbmFyci5mb3JFYWNoKGl0ZW0gPT4ge1xueHkgPSAn4oCY4oCY4oCZ4oCZPGI+PHNwYW4gc3R5bGU9XCJjb2xvcjogIzFhYWQxOVwiPicgKyBpdGVtICsgJzwvc3Bhbj48L2I+JztcbnZhciB0aXRsZSA9IGl0ZW0gPT09IGdldE15VmFyKCdmbCcsICfphbfmiJHpn7PkuZAnKSA/IHh5IDogaXRlbTtcbmQucHVzaCh7XG50aXRsZTogdGl0bGUsXG51cmw6ICQoJyNub0xvYWRpbmcjJykubGF6eVJ1bGUoKHRhKT0+e1xuICAgICAgICAgICAgICAgIHB1dE15VmFyKCdmbCcsIHRhKVxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJoaWtlcjovL2VtcHR5XCJcbn0sIGl0ZW0pLFxuY29sX3R5cGU6ICd0ZXh0XzMnLFxuICAgICAgICB9KVxufSk7XG5sZXQgbW9kZSA9IGdldE15VmFyKCdmbCcsICfphbfmiJHpn7PkuZAnKVxubG9nKG1vZGUpXG5zd2l0Y2ggKG1vZGUpIHtcbiAgICBjYXNlICfphbfmiJHpn7PkuZAnOlxuICAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKGh0bWwpLkRhdGEgICAgICAgXG4gICAgICAgIGJyZWFrICAgXG4gICAgY2FzZSAn572R5piT6Z+z5LmQJzpcbiAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKHJlcXVlc3QoTVlfVVJMLnJlcGxhY2UoJ2t3JywnMTYzJykse30pKS5EYXRhICAgICAgIFxuICAgICAgICBicmVha1xuICAgIGNhc2UgJ+mFt+eLl+mfs+S5kCc6XG4gICAgbG9nKE1ZX1VSTClcbiAgICAgIHZhciBsaXN0ID0gSlNPTi5wYXJzZShyZXF1ZXN0KE1ZX1VSTC5yZXBsYWNlKCdrdycsJ2tnJykse30pKS5EYXRhICAgICAgIFxuICAgICAgICBicmVha1xufVxuXG50cnkge1xuICAgIGxpc3QuZm9yRWFjaChkYXRhID0+IHtcbnZhciBwaWMgPSBkYXRhLnBpY1xuaWYgKCEvaHR0cC8udGVzdChwaWMpKSB7XG52YXIgcGljID0gJ2h0dHBzOicrcGljXG59XG4gICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICB0aXRsZTogZGF0YS50aXRsZSxcbiAgICAgICAgICAgIGRlc2M6IGRhdGEuYXV0aG9yLFxuICAgICAgICAgICAgaW1nOiBwaWMgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgICAgIHVybDogIGRhdGEudXJsICsgJChcIlwiKS5sYXp5UnVsZSgobHJjKT0+e1xuICAgICBpZiAoL1xcLzE2M1xcLy8udGVzdChpbnB1dCkpIHtcbiAgICB2YXIgbHJjID0gcmVxdWVzdChscmMse30pLnJlcGxhY2UoL1xcWy9nLCAnXFxuWycpLnJlcGxhY2UoL1tcXHNcXFNdKj9cXFsvLCdbJykucmVwbGFjZSgvW1xcc1xcU10qXFw+LywnJyk7XG59XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgIHVybHM6IFtpbnB1dF0sXG4gICAgICAgICAgICBseXJpYzogbHJjXG59KVxufSwgZGF0YS5scmMpLFxuICAgICAgICAgICAgY29sX3R5cGU6ICcnLFxuICAgICAgICB9KVxuICAgIH0pXG59IGNhdGNoIChlKSB7fVxuc2V0UmVzdWx0KGQpIiwic2RldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJzZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInVhIjoibW9iaWxlIiwicHJlUnVsZSI6IiIsInBhZ2VzIjoiW3tcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuoznuqdcIixcInBhdGhcIjpcImVyXCIsXCJydWxlXCI6XCJ0cnkge1xcbiAgICBsaXN0LmZvckVhY2goZGF0YSA9PiB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBkYXRhLnRpdGxlLFxcbiAgICAgICAgICAgIGRlc2M6IGRhdGEuYXV0aG9yLFxcbiAgICAgICAgICAgIGltZzogZGF0YS5waWMgKyAnQFJlZmVyZXI9JyxcXG4gICAgICAgICAgICB1cmw6ICBkYXRhLnVybCArICQoXFxcIlxcXCIpLmxhenlSdWxlKChscmMpPT57XFxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XFxuICAgICAgICAgICAgdXJsczogW2lucHV0XSxcXG4gICAgICAgICAgICBseXJpYzogbHJjXFxufSlcXG59LCBkYXRhLmxyYyksXFxuICAgICAgICAgICAgY29sX3R5cGU6ICcnLFxcbiAgICAgICAgfSlcXG4gICAgfSlcXG59IGNhdGNoIChlKSB7fVxcbnNldFJlc3VsdChkKVwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi55u05pKtXCIsXCJwYXRoXCI6XCJ6YlwiLFwicnVsZVwiOlwiIHZhciBsYXp5ID0gJCgnJykubGF6eVJ1bGUoKCkgPT4ge1xcbiAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICB2YXIgdXJsID0gZmV0Y2goaW5wdXQpLm1hdGNoKC91cmw6ICcoLio/KScvKVsxXTtcXG4gICAgICAgICAgICB1cmwgPSB1cmwuc3RhcnRzV2l0aCgnaHR0cCcpID8gdXJsIDogJ2h0dHBzOicgKyB1cmw7XFxuICAgICAgICAgICAgcmV0dXJuIHVybC5yZXBsYWNlKC9cXFxcXFxcXHUwMDI2L2csICcmJylcXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gaW5wdXRcXG4gICAgICAgIH1cXG4gICAgfSk7XFxuICAgIGlmIChNWV9VUkwuaW5jbHVkZXMoJ2R5emJqc29uLnBocCcpKSB7XFxuICAgICAgICBNWV9VUkwgPSBNWV9VUkwucmVwbGFjZSgnc3M9JywgJ3A9JykgKyBNWV9QQUdFICsgJyZpZD0nO1xcbiAgICAgICAgaWYgKE1ZX1BBR0UgPT0gMSkge1xcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snXFxuICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgW3tcXG4gICAgICAgICAgICAgICAg6Z+z5LmQOiAnMjcwNydcXG4gICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgIOaDheaEnzogJzI4MzYnXFxuICAgICAgICAgICAgfSwge1xcbiAgICAgICAgICAgICAgICDoiJ7ouYg6ICcyNzI2J1xcbiAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAg5oi35aSWOiAnMjc0MidcXG4gICAgICAgICAgICB9XS5mb3JFYWNoKGl0ZW0gPT4ge1xcbiAgICAgICAgICAgICAgICB0aXRsZSA9IE9iamVjdC5rZXlzKGl0ZW0pWzBdO1xcbiAgICAgICAgICAgICAgICBpZCA9IE9iamVjdC52YWx1ZXMoaXRlbSlbMF07XFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogY29sb3IoaWQsIGdldE15VmFyKCfmipbpn7MnLCAnMjcwNycpLCB0aXRsZSksXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICQoJyNub0xvYWRpbmcjJykubGF6eVJ1bGUoKGlkKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ+aKlumfsycsIGlkKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICAgICAgICAgIH0sIGlkKSxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfVxcbiAgICAgICAgbGV0IGxpc3QgPSBKU09OLnBhcnNlKGZldGNoKE1ZX1VSTCArIGdldE15VmFyKCfmipbpn7MnLCAnMjcwNycpKSkuRGF0YTtcXG4gICAgICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS5qcyxcXG4gICAgICAgICAgICAgICAgZGVzYzogaXRlbS50eCxcXG4gICAgICAgICAgICAgICAgaW1nOiBpdGVtLnRwLFxcbiAgICAgICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoaW5wdXQpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZXM6IFsnZmx2JywgJ2hscyddLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybHM6IFtpbnB1dC5mbHYsIGlucHV0Lmhsc11cXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgIH0sIGl0ZW0pLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgIH0pXFxuICAgIH0gZWxzZVxcbiAgICBpZiAoTVlfVVJMLmluY2x1ZGVzKCdZWScpKSB7XFxuICAgICAgICB5eSA9ICdodHRwczovL3d3dy55eS5jb20vbW9yZS9wYWdlLmFjdGlvbj9tb2R1bGVJZD0zMDgmcGFnZT0nICsgTVlfUEFHRSArICcmYml6PXNpbmcmc3ViQml6PWlkeCZwYWdlU2l6ZT0xMCc7XFxuICAgICAgICBsZXQgbGlzdCA9IEpTT04ucGFyc2UoZmV0Y2goeXkpKS5kYXRhLmRhdGE7XFxuICAgICAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7XFxuICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6IGl0ZW0uZGVzYyxcXG4gICAgICAgICAgICAgICAgZGVzYzogaXRlbS5uYW1lLFxcbiAgICAgICAgICAgICAgICBpbWc6IGl0ZW0udGh1bWIsXFxuICAgICAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vY2Z5eS5jYy9hcGkveXkvJyArIGl0ZW0uc2lkICsgJy5tM3U4JyArIGxhenksXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMidcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfSlcXG4gICAgfSBlbHNlXFxuIGlmIChNWV9QQUdFID09IDEpIHtcXG4gdHJ5IHtcXG4gICAgICAgICAgICAgICAgbGV0IGxpc3QgPSBKU09OLnBhcnNlKGZldGNoKE1ZX1VSTCkpO1xcbiAgICAgICAgICAgICAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdGVtLnVzZXJuYW1lLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZzogaXRlbS5waWMsXFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9jZnNzLnZpcC9jZi82LycgKyBpdGVtLnJpZCArICcuZmx2JyArIGxhenksXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8yJ1xcbiAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxcbiBmdW5jdGlvbiDpgJrnlKgoTVlfVVJMKSB7XFxuICAgICAgICAgICAgaWYgKE1ZX1VSTC5pbmNsdWRlcygna3MucGhwJykpIHtcXG4gICAgICAgICAgICAgICAgaWYgKE1ZX1BBR0UgPT0gMSkge1xcbiAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2JsYW5rX2Jsb2NrJ1xcbiAgICAgICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgICAgICAgICBbe1xcbiAgICAgICAgICAgICAgICAgICAgICAgIOminOWAvDogJzEwMDAwMDYnXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAg5omN6Im6OiAnMTAwMDAwNCdcXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICDpn7PkuZA6ICcxMDAwMDAzJ1xcbiAgICAgICAgICAgICAgICAgICAgfSwge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIOaDheaEnzogJzEwMDAwMDcnXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAg6Iie6LmIOiAnMTAwMDAwMidcXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICDohLHlj6Pnp4A6ICcxMDAwMDA1J1xcbiAgICAgICAgICAgICAgICAgICAgfV0uZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZSA9IE9iamVjdC5rZXlzKGl0ZW0pWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkID0gT2JqZWN0LnZhbHVlcyhpdGVtKVswXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogY29sb3IoaWQsIGdldE15VmFyKCflv6vmiYsnLCAnMTAwMDAwNicpLCB0aXRsZSksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogJCgnI25vTG9hZGluZyMnKS5sYXp5UnVsZSgoaWQpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCflv6vmiYsnLCBpZClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBpZCksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IGZldGNoKE1ZX1VSTCArIGdldE15VmFyKCflv6vmiYsnLCAnMTAwMDAwNicpKTtcXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICBodG1sID0gZmV0Y2goTVlfVVJMKTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICdib2R5JiZwJyk7XFxuICAgICAgICAgICAgbGlzdC5mb3JFYWNoKGl0ZW0gPT4ge1xcbiAgICAgICAgICAgICAgICBpbWcgPSBwZGZoKGl0ZW0sICdpbWcmJnNyYycpO1xcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHBkZmgoaXRlbSwgJ1RleHQnKS5zcGxpdCgnLScpWzBdLFxcbiAgICAgICAgICAgICAgICAgICAgZGVzYzogcGRmaChpdGVtLCAnVGV4dCcpLnNwbGl0KCctJylbMV0sXFxuICAgICAgICAgICAgICAgICAgICBpbWc6IGltZy5zdGFydHNXaXRoKCdodHRwJykgPyBpbWcgOiAnaHR0cHM6JyArIGltZyxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vY2Zzcy52aXAnICsgcGRmaChpdGVtLCAnYSYmaHJlZicpICsgbGF6eSxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMidcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfVxcbiAgICAgICAgaWYgKE1ZX1VSTC5pbmNsdWRlcygna3MucGhwJykpIHtcXG4gICAgICAgICAgICDpgJrnlKgoTVlfVVJMLnJlcGxhY2UoJ3NzPScsICdpZD0nKSlcXG4gICAgICAgIH0gZWxzZVxcbiAgICAgICAgaWYgKE1ZX1VSTC5pbmNsdWRlcygnbm93LnBocCcpKSB7XFxuICAgICAgICAgICAg6YCa55SoKE1ZX1VSTC5yZXBsYWNlKCdzcz0nLCAnaWQ9MCcpKVxcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICDpgJrnlKgoTVlfVVJMKVxcbiAgICAgICAgfVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIueUteWPsFwiLFwicGF0aFwiOlwiZHRcIixcInJ1bGVcIjpcImlmIChNWV9QQUdFID09IDEpIHtcXG4gICAgdmFyIHVybCA9IE1ZX1VSTC5yZXBsYWNlKE1ZX1VSTCwnaHR0cHM6Ly9jZnNzLnZpcC9mbS8nKTtcXG4gICAgdmFyIGh0bWwgPSBmZXRjaCh1cmwpO1xcbiAgICB2YXIgbGlzdCA9IHBkZmEoaHRtbCwgJy5idCYmYScpLnNsaWNlKDEpO1xcbiAgICB2YXIgbGlzdDIgPSBwZGZhKGh0bWwsICcuYnQmJm9wdGlvbicpLnNsaWNlKDEpO1xcbiAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7XFxuICAgICAgICB2YXIgdGl0bGUgPSBwZGZoKGl0ZW0sICdhJiZUZXh0Jyk7XFxuICAgICAgICB2YXIgZHVybCA9IHBkZmgoaXRlbSwgJ2EmJmhyZWYnKTtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IGNvbG9yKGR1cmwsIGdldE15VmFyKCfnlLXlj7AnLCAnP2ZtPTQwNycpLCB0aXRsZSksXFxuICAgICAgICAgICAgdXJsOiAkKCcjbm9Mb2FkaW5nIycpLmxhenlSdWxlKCh1cmwpID0+IHtcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoJ+eUteWPsCcsIHVybClcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICB9LCBkdXJsKSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nXFxuICAgICAgICB9KVxcbiAgICB9KVxcbiAgICBkLnB1c2goe1xcbiAgICAgICAgY29sX3R5cGU6ICdibGFua19ibG9jaydcXG4gICAgfSlcXG4gICAgbGlzdDIuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgIHZhciB0aXRsZSA9IHBkZmgoaXRlbSwgJ1RleHQnKTtcXG4gICAgICAgIHZhciBkdXJsID0gcGRmaChpdGVtLCAnb3B0aW9uJiZ2YWx1ZScpO1xcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogY29sb3IoZHVybCwgZ2V0TXlWYXIoJ+eUteWPsCcpLCB0aXRsZSksXFxuICAgICAgICAgICAgdXJsOiAkKCcjbm9Mb2FkaW5nIycpLmxhenlSdWxlKCh1cmwpID0+IHtcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoJ+eUteWPsCcsIHVybClcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICB9LCBkdXJsKSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nXFxuICAgICAgICB9KVxcbiAgICB9KVxcblxcbiAgICB1cmwgPSAnaHR0cHM6Ly9jZnNzLnZpcC9mbS9xdC5waHAnICsgZ2V0TXlWYXIoJ+eUteWPsCcsICc/Zm09NDA3Jyk7XFxuICAgIGxpc3QgPSBKU09OLnBhcnNlKGZldGNoKHVybCkpLkRhdGE7XFxuICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6IGl0ZW0udGl0bGUsXFxuICAgICAgICAgICAgLy9kZXNjOiBpdGVtLmF1dGhvcixcXG4gICAgICAgICAgICBpbWc6IGl0ZW0ucGljLnN0YXJ0c1dpdGgoJ2h0dHAnKSA/IGl0ZW0ucGljIDogJ2h0dHBzOicgKyBpdGVtLnBpYyxcXG4gICAgICAgICAgICB1cmw6IGl0ZW0udXJsKyQoXFxcIlxcXCIpLmxhenlSdWxlKCgpPT57ICAgXFxuICAgcmV0dXJuIGlucHV0O1xcbn0pLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnYXZhdGFyJ1xcbiAgICAgICAgfSlcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgY29sX3R5cGU6ICdsaW5lJ1xcbiAgICAgICAgfSlcXG4gICAgfSlcXG59XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLmm7TmlrBcIixcInBhdGhcIjpcIuabtOaWsFwiLFwicnVsZVwiOlwidmFyIHVwbGluayA9ICdodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD02NTg0J1xcbmxldCBuZXdWZXJzaW9uO1xcbmxldCBteVZlcnNpb24gPSBNWV9SVUxFLnZlcnNpb247XFxudHJ5IHtcXG4gICAgbmV3VmVyc2lvbiA9IEpTT04ucGFyc2UoZmV0Y2hDYWNoZSh1cGxpbmssIDI0LCB7XFxuICAgICAgICB0aW1lb3V0OiAxMDAwXFxuICAgIH0pKS52ZXJzaW9uO1xcbiAgICBsb2cobmV3VmVyc2lvbilcXG59IGNhdGNoIChlKSB7XFxuICAgIG5ld1ZlcnNpb24gPSBteVZlcnNpb247XFxufVxcbmxldCBpc1VwZGF0ZSA9IE51bWJlcihuZXdWZXJzaW9uKSA+IE51bWJlcihteVZlcnNpb24pO1xcbmlmIChpc1VwZGF0ZSkge1xcbiAgICBsb2coJ+acieaWsOeJiOacrDonICsgbmV3VmVyc2lvbiArICcs5b2T5YmNOicgKyBteVZlcnNpb24pO1xcbiAgICBjb25maXJtKHtcXG4gICAgICAgIHRpdGxlOiAn5pu05paw5o+Q56S6JyxcXG4gICAgICAgIGNvbnRlbnQ6ICfmo4DmtYvliLDkvaDnmoTop4TliJnniYjmnKzlsI/kuo7mnI3liqHlmajniYjmnKzvvIzmmK/lkKbnq4vljbPmm7TmlrDvvJ8nLFxcbiAgICAgICAgY29uZmlybTogJC50b1N0cmluZygodXBsaW5rKSA9PiB7XFxuICAgICAgICAgICAgbG9nKHVwbGluaylcXG4gICAgICAgICAgICByZXR1cm4gYOa1t+mYlOinhueVjOmmlumhtemikemBk+inhOWIme+/pWhvbWVfcnVsZV91cmzvv6Uke3VwbGlua31gXFxuICAgICAgICB9LCB1cGxpbmspLFxcbiAgICB9KVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIueUteinhlwiLFwicGF0aFwiOlwiZHNcIixcInJ1bGVcIjpcIiB2YXIgaHRtbCA9IE1ZX1VSTC5yZXBsYWNlKE1ZX1VSTCwgJ2h0dHBzOi8vY2Z5eS5jYy9kcy8nKVxcbiAgICB2YXIgaHRtbCA9IHJlcXVlc3QoaHRtbCwge30pXFxuICAgIHZhciBsaXN0cyA9IHBkZmEoaHRtbCwgJ2JvZHkmJi51dScpXFxuICAgIGxpc3RzLmZvckVhY2goKGRhdGFzLCBpKSA9PiB7XFxuICAgICAgICB2YXIgbGlzdHNzID0gcGRmYShodG1sLCAnYm9keSYmaDEnKVxcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogJzxmb250IGNvbG9yPVxcXCIjRkQxMTNBXFxcIj7ilpAgPC9mb250PjxiPicgKyBwZGZoKGxpc3Rzc1tpXSwgJ2gxJiZUZXh0JykgKyAnPGI+JyxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3JpY2hfdGV4dCcsXFxuICAgICAgICB9KVxcbiAgICAgICAgdmFyIGxpc3QgPSBwZGZhKGRhdGFzLCAnYm9keSYmYScpXFxuICAgICAgICBsaXN0LmZvckVhY2goKGRhdGFzKSA9PiB7XFxuICAgICAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6IHBkZmgoZGF0YXMsICdhJiZUZXh0JyksXFxuICAgICAgICAgICAgICAgIGltZzogJ2h0dHBzOi8vY2Z5eS5jYy9kcy8nICsgcGRmaChkYXRhcywgJ2ltZyYmc3JjJykgKyAnQFJlZmVyZXI9JyxcXG4gICAgICAgICAgICAgICAgdXJsOiBwZChkYXRhcywgJ2EmJmhyZWYnKSArICQoXFxcIlxcXCIpLmxhenlSdWxlKCgpID0+IHtcXG5sb2cocmVxdWVzdCh1cmwse30pKVxcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgdXJsID0gcmVxdWVzdChpbnB1dCwge30pLm1hdGNoKC91cmw6ICcoLio/KScvKVsxXVxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvaHR0cC8udGVzdCh1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmw7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdodHRwczovL2NmeXkuY2MnICsgdXJsXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAndmlkZW86Ly8nICsgaW5wdXRcXG4gICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnaWNvbl80JyxcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfSlcXG4gICAgfSlcIn1dIiwiaWNvbiI6Imh0dHBzOi8vY2Z5eS5jYy9CdC9jZi5pY28iLCJwcm94eSI6IiJ9
Add Comment
Please, Sign In to add comment