Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@蚂蚁动漫@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6ImpzOk1ZX1VSTCA9IE1ZX1VSTC5zcGxpdCgnIyMnKVsxXTtcbnZhciBodG1sID0gZmV0Y2hQQyhNWV9VUkwpO1xudmFyIGxhc3QgPSBwZGZoKGh0bWwsICcubW9kdWxlLXBsYXktbGlzdC1jb250ZW50JiZhLC0xJiZUZXh0Jyk7XG5zZXRSZXN1bHQobGFzdCk7IiwidGl0bGUiOiLomoLomoHliqjmvKsiLCJhdXRob3IiOiLlj5HnsqrmtoLlopkmbGl1b25nODgiLCJ1cmwiOiJoaWtlcjovL2VtcHR5IyNodHRwczovL3d3dy5teWlmdW4uY29tL3BpYW5rdS9BbmltYXRpb24tLS0tLS0tLWZ5cGFnZS0tLS5odG1sIiwidmVyc2lvbiI6MCwiY29sX3R5cGUiOiJtb3ZpZV8zIiwiY2xhc3NfbmFtZSI6IiIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6IiIsImFyZWFfbmFtZSI6IiIsImFyZWFfdXJsIjoiIiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoiIiwic29ydF91cmwiOiIiLCJ5ZWFyX3VybCI6IiIsImZpbmRfcnVsZSI6ImpzOlxudmFyIGQgPSBbXTtcbnZhciBnZXRSYW5nZUNvbG9ycyA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnIycgKyAoJzAwMDAwJyArIChNYXRoLnJhbmRvbSgpICogMHgxMDAwMDAwIDw8IDApLnRvU3RyaW5nKDE2KSkuc3Vic3RyKC02KTtcbn1cblxuY29uc3Qg5YiG57G76aKc6ImyID0gZ2V0UmFuZ2VDb2xvcnMoKVxuY29uc3Qg5aSn57G75a6a5L2NID0gJ2JvZHkmJi5uYXZiYXItaXRlbXM6bm90KDpoYXMoOm1hdGNoZXMo6LWE5rqQfOeJiOacrHzlt7LpgIkpKSknXG5jb25zdCDmi7zmjqXliIbnsbsgPSAnYm9keSYmLm1vZHVsZS1pdGVtLWJveDpub3QoOm1hdGNoZXMo57G75Z6LKSknXG5jb25zdCDlsI/nsbvlrprkvY0gPSAnYm9keSYmYTpub3QoOm1hdGNoZXMo6aaW6aG1fOeDrXxBUFB855WZKSknXG5jb25zdCDliIbnsbvmoIfpopggPSAnYSYmVGV4dCdcbmNvbnN0IOWIhuexu+mTvuaOpSA9ICdhJiZocmVmJ1xuXG5NWV9VUkwgPSBNWV9VUkwucmVwbGFjZSgnaGlrZXI6Ly9lbXB0eSMjJywgJycpXG5cbmxldCB0cnVlX3VybCA9IGdldFZhcihNWV9SVUxFLnVybCwgTVlfVVJMKVxudmFyIHBhZ2UgPSBNWV9QQUdFXG5pZih0cnVlX3VybC5pbmNsdWRlcygncGFnZScpKXtcbnRydWVfdXJsID0gdHJ1ZV91cmwucmVwbGFjZSgvKFxcL3BhZ2VcXC8pXFxkKy8sJyQxJytwYWdlKVxufWVsc2V7XG4gICAgdHJ1ZV91cmw9dHJ1ZV91cmwucmVwbGFjZSgnLmh0bWwnLCcvcGFnZS8nK3BhZ2UrJy5odG1sJyk7XG59XG52YXIgaHRtbCA9IHJlcXVlc3QodHJ1ZV91cmwpXG5cbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2UvZHRmbD9ydWxlPeaooeadv8K3UScpKS5ydWxlKVxuXG52YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5tb2R1bGUtcG9zdGVyLWl0ZW0nKTtcbmZvciAodmFyIGogaW4gbGlzdCkge1xuICAgIGQucHVzaCh7XG4gICAgICAgIHRpdGxlOiBwZGZoKGxpc3Rbal0sICdhJiZ0aXRsZScpLFxuICAgICAgICBkZXNjOiBwZGZoKGxpc3Rbal0sICcuYWx0JiZUZXh0JyksXG4gICAgICAgIGltZzogcGQobGlzdFtqXSwgJy5sYXp5JiZkYXRhLW9yaWdpbmFsJykgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgdXJsOiBwZChsaXN0W2pdLCAnYSYmaHJlZicpICsgXCIjaW1tZXJzaXZlVGhlbWUjXCJcbiAgICB9KTtcbn1cbnNldFJlc3VsdChkKTsiLCJzZWFyY2hfdXJsIjoiaHR0cHM6Ly93d3cubXlpZnVuLmNvbS9zZWFyY2gvKiotLS0tLS0tLS0tZnlwYWdlLS0tLmh0bWwiLCJncm91cCI6IjDliqjmvKsiLCJzZWFyY2hGaW5kIjoianM6XG52YXIgZCA9IFtdO1xudmFyIGh0bWwgPSBnZXRSZXNDb2RlKCk7XG52YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5tb2R1bGUtY2FyZC1pdGVtJyk7XG5mb3IgKHZhciBqIGluIGxpc3QpIHtcbiAgICBkLnB1c2goe1xuICAgICAgICB0aXRsZTogcGRmaChsaXN0W2pdLCAnaW1nJiZhbHQnKSxcbiAgICAgICAgZGVzYzogcGRmaChsaXN0W2pdLCAnLm1vZHVsZS1pdGVtLW5vdGUmJlRleHQnKSxcbiAgICAgICAgY29udGVudDogcGRmaChsaXN0W2pdLCAnLm1vZHVsZS1pbmZvLWl0ZW0tY29udGVudCYmVGV4dCcpICsgJ1xcbicgKyBwZGZoKGxpc3Rbal0sICcubW9kdWxlLWluZm8taXRlbS1jb250ZW50JiZUZXh0JyksXG4gICAgICAgIGltZzogcGQobGlzdFtqXSwgJ2ltZ3x8LmxhenkmJmRhdGEtc3JjfHxkYXRhLW9yaWdpbmFsJykgKyAnQFJlZmVyZXI9JyxcbiAgICAgICAgdXJsOiBwZChsaXN0W2pdLCAnYSYmaHJlZicpICsgJyNpbW1lcnNpdmVUaGVtZSMnXG4gICAgfSk7XG59XG5zZXRSZXN1bHQoZCk7IiwiZGV0YWlsX2NvbF90eXBlIjoidGV4dF8yIiwiZGV0YWlsX2ZpbmRfcnVsZSI6ImpzOlxudmFyIGQgPSBbXTtcbnZhciBodG1sID0gZ2V0UmVzQ29kZSgpO1xuXG52YXIgbGF6eSA9ICQoJycpLmxhenlSdWxlKCgpID0+IHtcbiAgICB0cnkge1xuICAgICAgICBmdW5jdGlvbiB0b1VybChwbGF5VXJsKSB7XG4gICAgICAgICAgICBpZiAoL21ndHZ8c29odS8udGVzdChwbGF5VXJsKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBwbGF5VXJsICsgXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9XCI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKC9iaWxpLy50ZXN0KHBsYXlVcmwpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYXlVcmwgKyBcIjt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCYmUmVmZXJlckBodHRwczovL3d3dy5iaWxpYmlsaS5jb219XCI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKC9peGlndWEvLnRlc3QocGxheVVybCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcGxheVVybCArIFwiI2lzVmlkZW89dHJ1ZSNcIiArIFwiIy5tcDQ7e1JlZmVyZXJAaHR0cHM6Ly93d3cuaXhpZ3VhLmNvbS8mJlVzZXItQWdlbnRATW96aWxsYS81LjB9XCI7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBwbGF5VXJsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KGlucHV0LCB7fSk7XG4gICAgICAgIHZhciBwbGF5ZXJfZGF0YSA9IEpTT04ucGFyc2UoaHRtbC5tYXRjaCgvciBwbGF5ZXJfLio/PSguKj8pPC8pWzFdKTtcbiAgICAgICAgdmFyIGZybyA9IHBsYXllcl9kYXRhLmZyb207XG4gICAgICAgIHZhciBwbGF5VXJsID0gcGxheWVyX2RhdGEudXJsO1xuXG5cbiAgICAgICAgaWYgKHBsYXllcl9kYXRhLmVuY3J5cHQgPT0gJzEnKSB7XG4gICAgICAgICAgICBwbGF5VXJsID0gdW5lc2NhcGUocGxheWVyX2RhdGEudXJsKTtcbiAgICAgICAgfSBlbHNlIGlmIChwbGF5ZXJfZGF0YS5lbmNyeXB0ID09ICcyJykge1xuICAgICAgICAgICAgcGxheVVybCA9IHVuZXNjYXBlKGJhc2U2NERlY29kZShwbGF5ZXJfZGF0YS51cmwpKTtcbiAgICAgICAgfTtcbiAgICAgICAgdmFyIGV4Y2x1ZGUgPSAvcGxheW0zdTh8bTN1OFxcLnR2fG1pblxcLmNzc3w0MDRcXC5tM3U4fFxcLmNzcy87XG4gICAgICAgIHZhciBjb250YWluID0gL1xcLm1wNHxcXC5tM3U4fFxcLmZsdnxcXC5hdml8XFwubXBlZ3xcXC53bXZ8XFwubW92fFxcLnJtdmJ8XFwuZGF0fHFxQkZkb3dubG9hZHxtaW1lPXZpZGVvJTJGfHZpZGVvX21wNC87XG4gICAgICAgIGlmICghZXhjbHVkZS50ZXN0KHBsYXlVcmwpICYmIGNvbnRhaW4udGVzdChwbGF5VXJsKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvVXJsKHBsYXlVcmwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGp4VXJsID0gJyc7XG4gICAgICAgIHZhciBqeEh0bWwgPSByZXF1ZXN0KGp4VXJsLCB7XG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgXCJVc2VyLUFnZW50XCI6IFwiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMClcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG1ldGhvZDogXCJHRVRcIlxuICAgICAgICB9KTtcbiAgICAgICAgZXZhbChqeEh0bWwubWF0Y2goL3ZhciBjb25maWcgPSB7W1xcc1xcU10qP30vKVswXSArIFwiXCIpO1xuICAgICAgICB2YXIgYXBpVXJsID0gJyc7XG4gICAgICAgIHZhciBhcGlIdG1sID0gcmVxdWVzdChhcGlVcmwsIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICBcIlVzZXItQWdlbnRcIjogXCJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKVwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYm9keTogXCJ1cmw9XCIgKyBjb25maWcudXJsICsgXCImdGltZT1cIiArIGNvbmZpZy50aW1lICsgXCIma2V5PVwiICsgY29uZmlnLmtleSxcbiAgICAgICAgICAgIG1ldGhvZDogXCJQT1NUXCJcbiAgICAgICAgfSk7XG4gICAgICAgIHZhciBqc29uID0gSlNPTi5wYXJzZShhcGlIdG1sKTtcbiAgICAgICAgaWYgKGpzb24uY29kZSA9PSAyMDApIHtcbiAgICAgICAgICAgIHBsYXlVcmwgPSBqc29uLnVybDtcbiAgICAgICAgICAgIHJldHVybiB0b1VybChwbGF5VXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly8nICsganNvbi5tc2c7XG4gICAgICAgIH1cblxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy9zZXRFcnJvcihlKTtcbiAgICAgICAgc2hvd0xvYWRpbmcoXCLmraPlnKjov5vooYzmo4DntKLvvIzor7fnqI3lgJkuLi5cIik7XG4gICAgICAgIHZhciB2aWRlbyA9ICd4NVJ1bGU6Ly8nICsgaW5wdXQgKyAnQCcgKyAkLnRvU3RyaW5nKCgpID0+IHtcbiAgICAgICAgICAgIC8vZmJhLmxvZyhmYmEuZ2V0VXJscygpKVxuICAgICAgICAgICAgdmFyIHVybHMgPSBfZ2V0VXJscygpXG4gICAgICAgICAgICB2YXIgZXhjbHVkZSA9IC9wbGF5bTN1OHxtM3U4XFwudHZ8bWluXFwuY3NzfDQwNFxcLm0zdTh8XFwuY3NzLztcbiAgICAgICAgICAgIHZhciBjb250YWluID0gL1xcLm1wNHxcXC5tM3U4fFxcLmZsdnxcXC5hdml8XFwubXBlZ3xcXC53bXZ8XFwubW92fFxcLnJtdmJ8XFwuZGF0fHFxQkZkb3dubG9hZHxtaW1lPXZpZGVvJTJGfHZpZGVvX21wNC87XG4gICAgICAgICAgICBmb3IgKHZhciBpIGluIHVybHMpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWV4Y2x1ZGUudGVzdCh1cmxzW2ldKSAmJiBjb250YWluLnRlc3QodXJsc1tpXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZnlfYnJpZGdlX2FwcC5sb2codXJsc1tpXSlcbiAgICAgICAgICAgICAgICAgICAgaWYgKC9tZ3R2fHNvaHUvLnRlc3QodXJsc1tpXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9XCI7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL2JpbGkvLnRlc3QodXJsc1tpXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgXCI7e1VzZXItQWdlbnRATW96aWxsYS81LjAmJlJlZmVyZXJAaHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tfVwiO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9peGlndWEvLnRlc3QodXJsc1tpXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgXCIjaXNWaWRlbz10cnVlI1wiICsgXCIjLm1wNDt7UmVmZXJlckBodHRwczovL3d3dy5peGlndWEuY29tLyYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH1cIjtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdmlkZW87XG4gICAgfVxufSk7XG5cbi8v57q/6Lev5ZCN5YiX6KGo55qE5a6a5L2NXG52YXIgYXJ0cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJiN5LXBsYXlMaXN0JiYubW9kdWxlLXRhYi1pdGVtJyk7XG5cbi8v57q/6Lev5ZCN5YiX6KGo5ZCN56ew55qE5a6a5L2NXG52YXIgdGFicyA9IFtdO1xuZm9yICh2YXIgaSBpbiBhcnRzKSB7XG4gICAgdGFicy5wdXNoKHBhcnNlRG9tRm9ySHRtbChhcnRzW2ldLCAnVGV4dCcpLnJlcGxhY2UoJ++8iOivt+WLv+ebuOS/oeinhumikeWGheW5v+WRiu+8iScsJycpKVxufVxuXG4vL+aSreaUvuWIl+ihqOeahOWIl+ihqOeahOWumuS9jVxudmFyIGNvbnRzID0gcGFyc2VEb21Gb3JBcnJheShodG1sLCAnYm9keSYmLm1vZHVsZS1wbGF5LWxpc3QtY29udGVudCcpO1xudmFyIGxpc3RzID0gW107XG5mb3IgKHZhciBpIGluIGNvbnRzKSB7XG4gICAgdmFyIHRlbXAgPSBwYXJzZURvbUZvckFycmF5KGNvbnRzW2ldLCAnYm9keSYmYTpub3QoOmNvbnRhaW5zKOaOkuW6jykpJylcbiAgICBsaXN0cy5wdXNoKHRlbXApXG59XG5cbnZhciDlr7zmvJQgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJ21vZHVsZS1pbmZvLWl0ZW06Y29udGFpbnMo5a+85ryU77yaKSYmVGV4dCcpLnJlcGxhY2UoL1xcLy9nLCAnICcpO1xuXG52YXIg5Li75ryUID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcubW9kdWxlLWluZm8taXRlbTpjb250YWlucyjkuLvmvJTvvJopJiZUZXh0JykucmVwbGFjZSgvXFwvL2csICcgJyk7XG5cbnZhciDmm7TmlrAgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy5tb2R1bGUtaW5mby1pdGVtLDMmJlRleHQnKTtcblxudmFyIOeKtuaAgSA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLm1vZHVsZS1pbmZvLWl0ZW0sNCYmVGV4dCcpO1xuXG52YXIg5Zu+54mHID0gcGFyc2VEb20oaHRtbCwgJy5sYXp5JiZkYXRhLW9yaWdpbmFsJyk7XG5cbnZhciDnroDku4sgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy5tb2R1bGUtaW5mby1pbnRyb2R1Y3Rpb24tY29udGVudCYmVGV4dCcpLnJlcGxhY2UoJ+aUtui1tycsICcnKTtcblxudmFyIENvbG9yID0gXCIjZjEzYjY2YVwiO1xudmFyIENvbG9yMSA9IFwiIzA5OEFDMVwiO1xuXG5mdW5jdGlvbiBnZXRIZWFkKHRpdGxlKSB7XG4gICAgcmV0dXJuICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVwiJyArIENvbG9yICsgJ1wiPicgKyB0aXRsZSArICc8L2Zyb250Pjwvc3Ryb25nPic7XG59XG5sZXQgbGluZV9tb2RlbCA9IDg7XG5sZXQgbGluZV90eXBlX21vZGVsID0gJ2JsYW5rX2Jsb2NrJztcbmQucHVzaCh7XG4gICAgdGl0bGU6IOWvvOa8lCArICdcXG4nICsg5Li75ryULFxuICAgIGRlc2M6IOabtOaWsCArICdcXG4nICsg54q25oCBLFxuICAgIHBpY191cmw6IOWbvueJhyxcbiAgICB1cmw6IE1ZX1VSTCxcbiAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljX2JsdXInXG59KTtcbmQucHVzaCh7XG4gICAgdGl0bGU6ICfigJjigJjigJnigJk8c21hbGw+PGZvbnQgY29sb3I9XCIjZmYxNDhlOGVcIj7nroDku4vvvJonICsg566A5LuLLnN1YnN0cigwLCA1NSkgKyAnLi4uPC9mb250PjxzbWFsbD48Zm9udCBjb2xvcj1cInJlZFwiPuivpuaDhTwvZm9udD48L3NtYWxsPjwvc21hbGw+JyxcbiAgICB1cmw6ICdoaWtlcjovL2VtcHR5IycgKyAnXFxuJyArIOeugOS7iyArIGBAcnVsZT1qczp2YXIgcmVzID0ge307IHZhciBkID0gW107ZC5wdXNoKHt0aXRsZTon5b2x54mH566A5LuL77yaJysgTVlfVVJMLnNwbGl0KCdoaWtlcjovL2VtcHR5IycpWzFdLGNvbF90eXBlOiAnbG9uZ190ZXh0J30pO3Jlcy5kYXRhID0gZDsgc2V0SG9tZVJlc3VsdChyZXMpO2AsXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnXG59KTtcbmZvciAobGV0IGkgPSAwOyBpIDwgbGluZV9tb2RlbDsgaSsrKSB7XG4gICAgZC5wdXNoKHtcbiAgICAgICAgY29sX3R5cGU6IGxpbmVfdHlwZV9tb2RlbFxuICAgIH0pXG59XG5cbi8v5aSE55CG5o6o6YCBVFZCb3ggc3RhcnRcbmxldCB0ZnB1c2ggPSBnZXRJdGVtKCd3ZWJwdXNoJywgJzAnKTtcbmQucHVzaCh7XG4gICAgdGl0bGU6IChnZXRJdGVtKCd3ZWJwdXNoJywgJzAnKSA9PSAnMScgPyAn5Y2V6ZuG5o6o6YCB8J+foicgOiAn5Y2V6ZuG5o6o6YCB8J+UtCcpLFxuICAgIHVybDogYGhpa2VyOi8vZW1wdHlAbGF6eVJ1bGU9LmpzOmdldEl0ZW0oJ3dlYnB1c2gnLCcwJyk9PScxJz9zZXRJdGVtKCd3ZWJwdXNoJywnMCcpOnNldEl0ZW0oJ3dlYnB1c2gnLCcxJyk7cmVmcmVzaFBhZ2UoKTsndG9hc3Q6Ly/liIfmjaLmiJDlip/vvIEnYCxcblxuICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcbn0pO1xuZC5wdXNoKHtcbiAgICB0aXRsZTogJ+iuvue9rueUteinhklQJyxcbiAgICB1cmw6IFwiaW5wdXQ6Ly9cIiArIGdldEl0ZW0oJ2hpa2VydHZib3hzZXQnLCAnaHR0cDovLycgKyBnZXRJUCgpICsgJzo5OTc4JykgKyBcIi8vLy/or7fovpPlhaV0dmJveOaOqOmAgUlQ5Zyw5Z2A77yM5aaCaHR0cDovL1wiICsgZ2V0SVAoKSArIFwiOjk5NzguanM6c2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsaW5wdXQpO3JlZnJlc2hQYWdlKClcIixcbiAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nXG59KTtcbmQucHVzaCh7XG4gICAgdGl0bGU6IGdldEl0ZW0oJ2hpa2VydHZib3hzZXQnLCAnJyksXG4gICAgLy91cmw6ICdoaWtlcjovL2VtcHR5JyxcbiAgICB1cmw6IFwiaW5wdXQ6Ly9cIiArIGdldEl0ZW0oJ2hpa2VydHZib3hzZXQnLCAnaHR0cDovLycgKyBnZXRJUCgpICsgJzo5OTc4JykgKyBcIi8vLy/or7fovpPlhaV0dmJveOaOqOmAgUlQ5Zyw5Z2A77yM5aaCaHR0cDovL1wiICsgZ2V0SVAoKSArIFwiOjk5NzguanM6c2V0SXRlbSgnaGlrZXJ0dmJveHNldCcsaW5wdXQpO3JlZnJlc2hQYWdlKClcIixcbiAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nXG59KTtcblxudmFyIHBsYXlVcmxzID0gJyc7XG5mb3IgKHZhciBpID0gMDsgaSA8IGxpc3RzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIGxpc3QgPSBsaXN0c1tpXTtcbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgaWYgKGogPT0gbGlzdC5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICBwbGF5VXJscyArPSBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKSArIFwiJFwiICsgcGFyc2VEb20obGlzdFtqXSwgJ2EmJmhyZWYnKSArIFwiJCQkXCI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwbGF5VXJscyArPSBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKSArIFwiJFwiICsgcGFyc2VEb20obGlzdFtqXSwgJ2EmJmhyZWYnKSArIFwiI1wiO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5wbGF5VXJscyA9IHBsYXlVcmxzLnN1YnN0cmluZygwLCBwbGF5VXJscy5sZW5ndGggLSAzKTtcbi8vbG9nKHBsYXlVcmxzKTtcblxubGV0IHB1c2ggPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgXCJuYW1lXCI6IE1ZX1BBUkFNUy5teXRpdGxlLFxuICAgIFwicGljXCI6IHBhcnNlRG9tKGh0bWwsICcubGF6eWxvYWQmJmRhdGEtc3JjfHxkYXRhLW9yaWdpbmFsJyksXG4gICAgXCJjb250ZW50XCI6IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZpZGVvLWluZm8tY29udGVudCYmVGV4dCcpLnJlcGxhY2UoJ+aUtui1tycsICcnKSxcbiAgICBcImZyb21cIjogdGFicy5qb2luKCckJCQnKSxcbiAgICBcInVybFwiOiBwbGF5VXJscy5yZXBsYWNlKC9cXCYvZywgJ++8hu+8hicpXG59KTtcbi8vbG9nKHB1c2gpO1xuXG5kLnB1c2goe1xuICAgIHRpdGxlOiBcIuaOqOmAgeW9k+WJjemhteWIl+ihqOWIsFRWQm94XCIsXG4gICAgdXJsOiAkKHB1c2gpLmxhenlSdWxlKCgpID0+IHtcbiAgICAgICAgcmV0dXJuICdoaWtlcjovL3BhZ2UvcHVzaD9wdXNodXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoaW5wdXQpO1xuICAgIH0pLFxuICAgIGNvbF90eXBlOiBcInNjcm9sbF9idXR0b25cIlxufSk7XG5cbmQucHVzaCh7XG4gICAgICAgIGNvbF90eXBlOiAnbGluZV9ibGFuaydcbiAgICB9KVxuICAgIC8v5aSE55CG5o6o6YCBVFZCb3ggZW5kXG5cbmZ1bmN0aW9uIHNldFRhYnModGFicywgdmFyaSkge1xuICAgIGZvciAodmFyIGkgaW4gdGFicykge1xuICAgICAgICB2YXIgdXJsID0gXCIjbm9Mb2FkaW5nI0BsYXp5UnVsZT0uanM6cHV0VmFyKCdcIiArIHZhcmkgKyBcIicsICdcIiArIGkgKyBcIicpO3JlZnJlc2hQYWdlKGZhbHNlKTsndG9hc3Q6Ly/liIfmjaLmiJDlip/vvIEnOycjbm9IaXN0b3J5I2hpa2VyOi8vZW1wdHknXCI7XG4gICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICB0aXRsZTogZ2V0VmFyKHZhcmksICcwJykgPT0gaSA/IGdldEhlYWQodGFic1tpXSkgOiB0YWJzW2ldLFxuICAgICAgICAgICAgdXJsOiB1cmwsXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nXG4gICAgICAgIH0pXG4gICAgfVxuICAgIGQucHVzaCh7XG4gICAgICAgIGNvbF90eXBlOiAnbGluZV9ibGFuaydcbiAgICB9KVxufVxuXG5mdW5jdGlvbiBzZXRMaXN0cyhsaXN0cywgaW5kZXgpIHtcbiAgICBkLnB1c2goe1xuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXG4gICAgfSlcbn1cbmlmIChnZXRWYXIoJ3Noc29ydCcpID09ICcxJykge1xuICAgIHZhciBzeCA9ICfigJjigJjigJnigJk8Zm9udCBjb2xvcj1cIiMwYWEzNDRcIj7mjpLluo88L2ZvbnQ+PC9zbWFsbD4nICsgJzxzbWFsbD48Zm9udCBjb2xvcj1cIiMwYWEzNDRcIj7ihpE8L2ZvbnQ+PC9zbWFsbD4nICsgJzxzbWFsbD48Zm9udCBjb2xvcj1cIiNmZjRjMDBcIj7ihpM8L2ZvbnQ+PC9zbWFsbD4nO1xufSBlbHNlIHtcbiAgICB2YXIgc3ggPSAn4oCY4oCY4oCZ4oCZPGZvbnQgY29sb3I9XCIjMGFhMzQ0XCI+5o6S5bqPPC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XCIjZmY0YzAwXCI+4oaRPC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XCIjMGFhMzQ0XCI+4oaTPC9mb250Pjwvc21hbGw+Jztcbn1cblxuZnVuY3Rpb24gc2V0TGlzdHMobGlzdHMsIGluZGV4KSB7XG4gICAgZC5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICfigJjigJjigJnigJk8c3BhbiBzdHlsZT1cImNvbG9yOicgKyBDb2xvcjEgKyAnXCI+PHNtYWxsPumAiembhuWIl+ihqDwvc21hbGw+JyArICdcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHRcXHQ8c3BhbiBzdHlsZT1cImZsb2F0OnJpZ2h0XCI+JyArICc8c21hbGw+JyArIHN4ICsgJzwvc21hbGw+JyxcbiAgICAgICAgdXJsOiBgI25vTG9hZGluZyNAbGF6eVJ1bGU9LmpzOmxldCBjb25mID0gZ2V0VmFyKCdzaHNvcnQnKTtpZihjb25mPT0nMScpe3B1dFZhcih7a2V5OidzaHNvcnQnLCB2YWx1ZTonMCd9KTt9ZWxzZXtwdXRWYXIoe2tleTonc2hzb3J0JywgdmFsdWU6JzEnfSl9O3JlZnJlc2hQYWdlKCk7J3RvYXN0Oi8v5YiH5o2i5o6S5bqP5oiQ5YqfJzsnI25vSGlzdG9yeSNoaWtlcjovL2VtcHR5J2AsXG4gICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMSdcbiAgICB9KVxuICAgIHZhciBsaXN0ID0gbGlzdHNbaW5kZXhdO1xuXG4gICAgaWYgKGdldFZhcignc2hzb3J0JykgPT0gJzEnKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBmb3IgKHZhciBqID0gbGlzdC5sZW5ndGggLSAxOyBqID49IDA7IGotLSkge1xuICAgICAgICAgICAgICAgIGlmICh0ZnB1c2ggPT0gJzAnKSB7XG4gICAgICAgICAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sICdhJiZUZXh0JykucmVwbGFjZSgv56ysfOmbhnzor5185pyfL2csICcnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogcGFyc2VEb20obGlzdFtqXSwgJ2EmJmhyZWYnKSArIGxhenksXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogbGlzdC5sZW5ndGggPiA0ID8gJ3RleHRfNScgOiAndGV4dF8yJ1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2YXIgdXJseCA9ICdoaWtlcjovL3BhZ2UvcHVzaD9wdXNodXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJuYW1lXCI6IGdldFBhZ2VUaXRsZSgpICsgcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sICdhJiZUZXh0JyksXG4gICAgICAgICAgICAgICAgICAgICAgICBcInBpY1wiOiBwYXJzZURvbShodG1sLCAnLmxhenlsb2FkJiZkYXRhLXNyY3x8ZGF0YS1vcmlnaW5hbCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJjb250ZW50XCI6IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnZpZGVvLWluZm8tY29udGVudCYmVGV4dCcpLnJlcGxhY2UoJ+aUtui1tycsICcnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZnJvbVwiOiBnZXRQYWdlVGl0bGUoKSArIHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ1cmxcIjogcGFyc2VEb20obGlzdFtqXSwgJ2EmJmhyZWYnKVxuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIHZhciBleHRyYXggPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogcGFyc2VEb20obGlzdFtqXSwgJ2EmJmhyZWYnKVxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLnJlcGxhY2UoL+esrHzpm4Z86K+dfOacny9nLCAnJyksXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHVybHgsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogbGlzdC5sZW5ndGggPiA0ID8gJ3RleHRfNScgOiAndGV4dF8yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhOiBleHRyYXhcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmsqHmnInpgInpm4blk5/vvIzkuI3kv6Hngrnlm77niYfljrvnnIvnnIvwn5GAJyxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAodGZwdXNoID09ICcwJykge1xuICAgICAgICAgICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLnJlcGxhY2UoL+esrHzpm4Z86K+dfOacny9nLCAnJyksXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJykgKyBsYXp5LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMidcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHVybHggPSAnaGlrZXI6Ly9wYWdlL3B1c2g/cHVzaHVybD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwibmFtZVwiOiBnZXRQYWdlVGl0bGUoKSArIHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCAnYSYmVGV4dCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJwaWNcIjogcGFyc2VEb20oaHRtbCwgJy5sYXp5bG9hZCYmZGF0YS1zcmN8fGRhdGEtb3JpZ2luYWwnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiY29udGVudFwiOiBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy52aWRlby1pbmZvLWNvbnRlbnQmJlRleHQnKS5yZXBsYWNlKCfmlLbotbcnLCAnJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBcImZyb21cIjogZ2V0UGFnZVRpdGxlKCkgKyBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidXJsXCI6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJylcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB2YXIgZXh0cmF4ID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHBhcnNlRG9tKGxpc3Rbal0sICdhJiZocmVmJylcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwgJ2EmJlRleHQnKS5yZXBsYWNlKC/nrKx86ZuGfOivnXzmnJ8vZywgJycpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmx4LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMicsXG4gICAgICAgICAgICAgICAgICAgICAgICBleHRyYTogZXh0cmF4XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+ayoeaciemAiembhuWTn++8jOS4jeS/oeeCueWbvueJh+WOu+eci+eci/CfkYAnLFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMSdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5zZXRUYWJzKHRhYnMsIE1ZX1VSTCk7XG5zZXRMaXN0cyhsaXN0cywgZ2V0VmFyKE1ZX1VSTCwgJzAnKSk7XG5kLnB1c2goe1xuICAgIHRpdGxlOiAnPGJyPicsXG4gICAgY29sX3R5cGU6ICdyaWNoX3RleHQnXG59KTtcbnNldFJlc3VsdChkKTsiLCJzZGV0YWlsX2NvbF90eXBlIjoidGV4dF8zIiwic2RldGFpbF9maW5kX3J1bGUiOiIqIiwidWEiOiJtb2JpbGUiLCJwcmVSdWxlIjoiLyp2YXIgdXJsID0gJyc7XG5pZiAoL21hZ25ldHxlZDJrLy50ZXN0KGlucHV0KSkge1xuICAgIHVybCA9IGlucHV0O1xufSBlbHNlIHtcbiAgICB2YXIgaHRtbCA9IGZldGNoUEMoaW5wdXQpO1xuICAgIGlmICgvcGxheWVyX2FhYWEvLnRlc3QoaHRtbCkpIHtcbiAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKGh0bWwubWF0Y2goL3IgcGxheWVyX2FhYWEuKj89KC4qPyk8LylbMV0pO1xuICAgICAgICB2YXIgdXJsX3QgPSBodG1sLnVybDtcbiAgICAgICAgaWYgKGh0bWwuZW5jcnlwdCA9PSAnMScpIHtcbiAgICAgICAgICAgIHVybF90ID0gdW5lc2NhcGUodXJsX3QpO1xuICAgICAgICB9IGVsc2UgaWYgKGh0bWwuZW5jcnlwdCA9PSAnMicpIHtcbiAgICAgICAgICAgIHVybF90ID0gdW5lc2NhcGUoYmFzZTY0RGVjb2RlKHVybF90KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKC9cXC5tM3U4fFxcLm1wNHxcXC5mbHYvLnRlc3QodXJsX3QpKSB7XG4gICAgICAgICAgICB1cmwgPSB1cmxfdDtcbiAgICAgICAgfSBlbHNlIGlmICgvcXF8aXFpeWl8eW91a3V8bWd0dnxiaWxpLy50ZXN0KHVybF90KSkge1xuICAgICAgICAgICAgdXJsID0gJ3ZpZGVvOi8vaHR0cHM6Ly9qeC54bWZsdi5jb20vP3VybD0nICsgdXJsX3Q7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB1cmwgPSBleGVjdXRlV2ViUnVsZShpbnB1dCwgJC50b1N0cmluZygoaW5wdXQpID0+IHtcbiAgICAgICAgICAgICAgICB2YXIgdXJscyA9IHdpbmRvdy5fZ2V0VXJscygpO1xuICAgICAgICAgICAgICAgIGZvciAodmFyIHVybHMgb2YgdXJscykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoL20zdTh8bXA0Ly50ZXN0KHVybHMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJscztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIGlucHV0KSwge1xuICAgICAgICAgICAgICAgIHVhOiAnd2luZG93cycsXG4gICAgICAgICAgICAgICAgYmxvY2tSdWxlczogWydiYWlkdS4qLnBuZycsJy5qcGcnXVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICB1cmwgPSAndmlkZW86Ly8nICsgaW5wdXQ7XG4gICAgfVxufVxucmV0dXJuIHVybDsqLyIsInBhZ2VzIjoiW10iLCJpY29uIjoiIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment