Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序,666¥home_rule_v2¥base64://@JavDB3@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoiSmF2REIzIiwiYXV0aG9yIjoi6ZuGIiwidXJsIjoiaGlrZXI6Ly9lbXB0eSMjaHR0cHM6Ly9qYXZkYjUyMS5jb20vdGFncz9wYWdlPWZ5cGFnZSIsInZlcnNpb24iOjIxLCJjb2xfdHlwZSI6Im1vdmllXzIiLCJjbGFzc19uYW1lIjoiIiwidHlwZSI6InZpZGVvIiwiY2xhc3NfdXJsIjoiIiwiYXJlYV9uYW1lIjoiIiwiYXJlYV91cmwiOiIiLCJzb3J0X25hbWUiOiIiLCJ5ZWFyX25hbWUiOiIiLCJzb3J0X3VybCI6IiIsInllYXJfdXJsIjoiIiwiZmluZF9ydWxlIjoianM6XG52YXIgZCA9IFtdO1xuYWRkTGlzdGVuZXIoXCJvbkNsb3NlXCIsICQudG9TdHJpbmcoKCkgPT4ge1xuICAgIGxldCBrZXlzID0gbGlzdE15VmFyS2V5cygpO1xuICAgIGZvciAobGV0IGl0IG9mIGtleXMpIHtcbiAgICAgICAgY2xlYXJNeVZhcihpdCk7XG4gICAgfVxufSkpO1xuXG5cbmNvbnN0IOS4gOe6p+WumuS9jSA9ICdib2R5JiYudGFicydcbmNvbnN0IOS6jOe6p+WumuS9jSA9ICcjdGFncyYmZHQnXG5jb25zdCDnu5/kuIDlrprkvY0gPSAnYm9keSYmYTpub3QoOm1hdGNoZXMoRkMyfOWLlea8q3zmm7TlpJp86aCQ6Ka9KSknXG5jb25zdCDlvIDlkK/mkJzntKIgPSB0cnVlO1xuY29uc3QgcGFnZSA9IE1ZX1BBR0U7XG5NWV9VUkwgPSBNWV9VUkwucmVwbGFjZSgnaGlrZXI6Ly9lbXB0eSMjJywgJycpXG5sZXQgdHJ1ZV91cmwgPSBnZXRWYXIoTVlfUlVMRS51cmwsIE1ZX1VSTClcbmlmICh0cnVlX3VybC5pbmNsdWRlcygnPycpKSB7XG4gICAgICAgIGxvZygn5ZCr552AJylcbiAgICAgICAgIHRydWVfdXJsID0gdHJ1ZV91cmwgKyAnJnBhZ2U9JyArIHBhZ2U7XG4gICAgICAgIGxvZyh0cnVlX3VybCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgbG9nKCfkuI3lkKsnKVxuICAgICAgICB0cnVlX3VybCA9IHRydWVfdXJsKyc/JnBhZ2U9JytwYWdlO1xuICAgICAgICBsb2codHJ1ZV91cmwpO1xufVxuXG52YXIgaHRtbCA9IGZldGNoKHRydWVfdXJsLCB7aGVhZGVyczogeydVc2VyLUFnZW50JzogTU9CSUxFX1VBIC8qUENfVUEqL319KVxuZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvZHRmbCcsIHt9KSkucnVsZSk7XG5cblxuXG4vL+mhtemdouWGheWuueWhq+WFhVxudmFyIOS4gOe6p+WIl+ihqCA9ICdib2R5JiYuaXRlbSdcbnZhciDkuIDnuqfmoIfpopggPSAnLnZpZGVvLXRpdGxlJiZUZXh0J1xudmFyIOS4gOe6p+aPj+i/sDEgPSAnLm1ldGEmJlRleHQnXG52YXIg5LiA57qn5o+P6L+wMiA9ICcudGFnJiZUZXh0J1xudmFyIOS4gOe6p+WbvueJhyA9ICdpbWcmJnNyYydcbnZhciDkuIDnuqfpk77mjqUgPSAnYSYmaHJlZidcbmV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL1ByaW1hcnlUZW1wbGF0ZScsIHt9KSkucnVsZSk7XG5zZXRSZXN1bHQoZCkiLCJzZWFyY2hfdXJsIjoiL3NlYXJjaD9mPWFsbCZwYWdlPWZ5cGFnZSZxPSoqIiwiZ3JvdXAiOiLwn6Ww56eB5Lq65aSp5ZywIiwic2VhcmNoRmluZCI6ImpzOlxudmFyIOahhuaetuWIl+ihqCA9ICdib2R5JiYuaXRlbSdcbnZhciDmoYbmnrbmoIfpopggPSAnLnZpZGVvLXRpdGxlJiZUZXh0J1xudmFyIOahhuaetuaPj+i/sDEgPSAnLm1ldGEmJlRleHQnXG52YXIg5qGG5p625o+P6L+wMiA9ICcudGFnJiZUZXh0J1xudmFyIOahhuaetueugOS7izEgPSAnLnNjb3JlJiZUZXh0J1xudmFyIOahhuaetueugOS7izIgPSAnJ1xudmFyIOahhuaetuWbvueJhyA9ICdpbWcmJnNyYydcbnZhciDmoYbmnrbpk77mjqUgPSAnYSYmaHJlZidcblxuZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvU2VhcmNoRnJhbWUnLCB7fSkpLnJ1bGUpO1xuXG5zZXRIb21lUmVzdWx0KGQpIiwiZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMyIsImRldGFpbF9maW5kX3J1bGUiOiJqczpcbnZhciBkID0gW107XG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKTtcblxudmFyIOaQnOe0ouagh+etviA9ICcuZmlyc3QtYmxvY2smJi52YWx1ZSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wMSA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo55Wq6JmfKSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wMiA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo5pel5pyfKSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wMyA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo5pmC6ZW3KSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wNCA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo5bCO5ryUKSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wNSA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo54mH5ZWGKSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wNiA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo6KmV5YiGKSYmVGV4dCc7XG52YXIg5b2x6KeG5o+P6L+wNyA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo6aGe5YilKSYmVGV4dCc7XG52YXIg5b2x6KeG5bCB6Z2iID0gJy5jb2x1bW4tdmlkZW8tY292ZXImJmltZyYmc3JjJ1xuXG5ldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS90b29sJywge30pKS5ydWxlKTtcbmV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL1Bsb3QnLCB7fSkpLnJ1bGUpO1xuXG5zZXRIb21lUmVzdWx0KGQpOyIsInNkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwic2RldGFpbF9maW5kX3J1bGUiOiIqIiwidWEiOiJtb2JpbGUiLCJwcmVSdWxlIjoiIiwicGFnZXMiOiJbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS4gOe6p+WKqOaAgeWIhuexu1wiLFwicGF0aFwiOlwiZHRmbFwiLFwicnVsZVwiOlwiXFxuY29uc3QgZW1wdHkgPSBcXFwiaGlrZXI6Ly9lbXB0eVxcXCJcXG5cXG5jb25zdCDliIbnsbvpopzoibIgPSAnI0ZGMDBGRidcXG5jb25zdCDliqjmgIHnvKnlsI8gPSAn4ouBJ1xcbmNvbnN0IOWKqOaAgeaJqeWxlSA9ICfii4AnXFxuY29uc3Qg5YiG57G75qCH6aKYID0gJ2EmJlRleHQnXFxuY29uc3Qg5YiG57G76ZO+5o6lID0gJ2EmJmhyZWYnXFxudmFyIOaQnOe0oj10eXBlb2Yo5byA5ZCv5pCc57SiKSE9J3VuZGVmaW5lZCc/5byA5ZCv5pCc57SiOmZhbHNlO1xcbmlmwqAocGFyc2VJbnQocGFnZSnCoD09PcKgMSnCoHtcXG4gICAgaWYo5pCc57SiKXtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogJ1NlYXJjaCcsXFxuICAgICAgICB1cmw6IFxcXCInaGlrZXI6Ly9zZWFyY2g/cnVsZT1cXFwiICsgTVlfUlVMRS50aXRsZSArIFxcXCImcz0nK2lucHV0XFxcIixcXG4gICAgICAgIGRlc2M6IFxcXCLmkJzntKLlhbPplK7or41cXFwiLFxcbiAgICAgICAgY29sX3R5cGU6IFxcXCJpbnB1dFxcXCIsXFxuICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogZ2V0TXlWYXIoJ2tleXdvcmQnLCAnJyksXFxuICAgICAgICAgICAgb25DaGFuZ2U6ICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgICAgICAgICBwdXRNeVZhcigna2V5d29yZCcsIGlucHV0KTtcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfVxcbiAgICAgIH0pXFxuICAgIH1cXG59XFxuXFxudHJ5IHtcXG4gICAgdmFyIGNhdGVnb3JpZXMgPSBwZGZhKGh0bWwsIOS4gOe6p+WumuS9jSkuY29uY2F0KHBkZmEoaHRtbCwg5LqM57qn5a6a5L2NKSlcXG59IGNhdGNoIChlKSB7XFxuICAgIHZhciBjYXRlZ29yaWVzID0gcGRmYShodG1sLCDkuIDnuqflrprkvY0pXFxufVxcblxcbi8vbG9nKGh0bWwpXFxuXFxubGV0IGluaXRfY2F0ZSA9IFtdXFxuXFxuZm9yIChsZXQgaSA9IDA7IGkgPCAyMDsgaSsrKSB7XFxuICAgIGluaXRfY2F0ZS5wdXNoKFxcXCIwXFxcIilcXG59XFxuXFxuY29uc3QgZm9sZCA9IGdldFZhcihNWV9SVUxFLmdyb3VwLCBcXFwiMFxcXCIpXFxuY29uc3QgY2F0ZV90ZW1wX2pzb24gPSBnZXRWYXIoTVlfUlVMRS50aXRsZSwgSlNPTi5zdHJpbmdpZnkoaW5pdF9jYXRlKSlcXG5jb25zdCBjYXRlX3RlbXAgPSBKU09OLnBhcnNlKGNhdGVfdGVtcF9qc29uKVxcblxcbmlmIChwYXJzZUludChwYWdlKSA9PT0gMSkge1xcbiAgICBkLnB1c2goe1xcblxcbiAgICAgICAgdGl0bGU6IGZvbGQgPT0gXFxcIjFcXFwiID8gXFxcIuKAnOKAnOKAneKAnTxtaWRkbGU+PGI+PGZvbnQgY29sb3I9JyM2MmE2ZmInPlxcXCIgKyDliqjmgIHnvKnlsI8gKyBcXFwiPC9mb250PjwvYj48L21pZGRsZT5cXFwiIDogXFxcIuKAnOKAnOKAneKAnTxtaWRkbGU+PGI+PGZvbnQgY29sb3I9JyNGNzVENTknPlxcXCIgKyDliqjmgIHmianlsZUgKyBcXFwiPC9mb250PjwvYj48L21pZGRsZT5cXFwiLFxcblxcbiAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKGZvbGQpID0+IHtcXG4gICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS5ncm91cCwgZm9sZCA9PT0gJzEnID8gJzAnIDogJzEnKTtcXG4gICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcbiAgICAgICAgfSwgZm9sZCksXFxuICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICB9KVxcblxcblxcbiAgICBjYXRlZ29yaWVzLmZvckVhY2goKGNhdGVnb3J5LCBpbmRleCkgPT4ge1xcbiAgICAgICAgbGV0IHN1Yl9jYXRlZ29yaWVzID0gcGRmYShjYXRlZ29yeSwg57uf5LiA5a6a5L2NKTtcXG4gICAgICAgXFxuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XFxuICAgICAgICAgICAgc3ViX2NhdGVnb3JpZXMuZm9yRWFjaCgoaXRlbSwga2V5KSA9PiB7XFxuICAgICAgICAgICAgICAgIGxldCB0aXRsZSA9IHBkZmgoaXRlbSwg5YiG57G75qCH6aKYKVxcblxcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGtleS50b1N0cmluZygpID09PSBjYXRlX3RlbXBbaW5kZXhdID8gJ+KAnOKAnOKAneKAnTxiPjxzcGFuIHN0eWxlPVxcXCJjb2xvcjogJyArIOWIhuexu+minOiJsiArICdcXFwiPicgKyB0aXRsZSArICc8L3NwYW4+PC9iPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChwZChpdGVtLCDliIbnsbvpk77mjqUpICsgJyNub0xvYWRpbmcjJykubGF6eVJ1bGUoKHBhcmFtcykgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBuZXdfY2F0ZSA9IFtdXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLmNhdGVfdGVtcC5mb3JFYWNoKChjYXRlLCBpbmRleCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdfY2F0ZS5wdXNoKGluZGV4ID09PSAwID8gcGFyYW1zLmtleS50b1N0cmluZygpIDogXFxcIjBcXFwiKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudGl0bGUsIEpTT04uc3RyaW5naWZ5KG5ld19jYXRlKSlcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoTVlfUlVMRS51cmwsIGlucHV0KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKHRydWUpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL2VtcHR5XFxcIlxcbiAgICAgICAgICAgICAgICAgICAgfSwge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGVfdGVtcDogY2F0ZV90ZW1wLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2U6IHBhZ2UsXFxuICAgICAgICAgICAgICAgICAgICB9KSxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgfSlcXG5cXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImJsYW5rX2Jsb2NrXFxcIlxcbiAgICAgICAgICAgIH0pO1xcblxcbiAgICAgICAgfSBlbHNlIGlmIChmb2xkID09PSAnMScpIHtcXG4gICAgICAgICAgICBzdWJfY2F0ZWdvcmllcy5mb3JFYWNoKChpdGVtLCBrZXkpID0+IHtcXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGRmaChpdGVtLCDliIbnsbvmoIfpopgpXFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZToga2V5LnRvU3RyaW5nKCkgPT09IGNhdGVfdGVtcFtpbmRleF0gPyAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAnICsg5YiG57G76aKc6ImyICsgJ1xcXCI+JyArIHRpdGxlICsgJzwvc3Bhbj48L2I+JyA6IHRpdGxlLFxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAkKHBkKGl0ZW0sIOWIhuexu+mTvuaOpSkgKyAnI25vTG9hZGluZyMnKS5sYXp5UnVsZSgocGFyYW1zKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLmNhdGVfdGVtcFtwYXJhbXMuaW5kZXhdID0gcGFyYW1zLmtleS50b1N0cmluZygpXFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudGl0bGUsIEpTT04uc3RyaW5naWZ5KHBhcmFtcy5jYXRlX3RlbXApKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnVybCwgaW5wdXQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICAgICAgICAgICAgICB9LCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZV90ZW1wOiBjYXRlX3RlbXAsXFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleToga2V5LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2U6IHBhZ2UsXFxuICAgICAgICAgICAgICAgICAgICB9KSxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsXFxuICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImJsYW5rX2Jsb2NrXFxcIlxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfVxcbiAgICB9KVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS4gOe6p+mhtemdouahhuaetlwiLFwicGF0aFwiOlwiUHJpbWFyeVRlbXBsYXRlXCIsXCJydWxlXCI6XCJ2YXIgbGF6eUVKID0gJChcXFwiXFxcIikucnVsZSgoKSA9PiB7XFxuICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL2VqJywge30pKS5ydWxlKTtcXG59KTsgXFxubGV0IGxpc3QgPSBwZGZhKGh0bWwsIOS4gOe6p+WIl+ihqCk7XFxuZm9yIChsZXQgaiBpbiBsaXN0KSB7XFxuICAgICB2YXIg5qCH6aKYID0gcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sIOS4gOe6p+agh+mimCk7XFxuICAgICB2YXIg5o+P6L+wMSA9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCDkuIDnuqfmj4/ov7AxKS5yZXBsYWNlKCc6JywnJyk7XFxuICAgICB2YXIg5o+P6L+wMiA9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCDkuIDnuqfmj4/ov7AyKS5yZXBsYWNlKCfmlrAnLCcnKS5yZXBsYWNlKCfnrKwnLCcnKS5yZXBsYWNlKC9cXFxcLy4qLywnJyk7XFxuICAgICB2YXIg5Zu+54mHID0gcGFyc2VEb20obGlzdFtqXSwg5LiA57qn5Zu+54mHKSArICdAUmVmZXJlcj0nO1xcbiAgICAgdmFyIOmTvuaOpSA9IHBhcnNlRG9tKGxpc3Rbal0sIOS4gOe6p+mTvuaOpSkgKyBsYXp5RUo7ICAgICAgIFxcbiAgICAgICAgICBcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiDmoIfpopgsXFxuICAgICAgICBkZXNjOiDmj4/ov7AxICsgJyAnICsg5o+P6L+wMixcXG4gICAgICAgIGltZzog5Zu+54mHLFxcbiAgICAgICAgdXJsOiDpk77mjqUsIFxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8yJyxcXG4gICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgaW1nOiDlm77niYcsXFxuICAgICAgICB9XFxuICAgIH0pO1xcbn1cXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS4gOe6p+aQnOe0ouahhuaetlwiLFwicGF0aFwiOlwiU2VhcmNoRnJhbWVcIixcInJ1bGVcIjpcInZhciBkID0gW107XFxudmFyIGh0bWwgPSBnZXRSZXNDb2RlKClcXG5sZXQgbGlzdCA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwg5qGG5p625YiX6KGoKTtcXG5sb2coJ+aQnOe0oue7k+aenCcpXFxubG9nKGxpc3QpXFxuaWYgKGxpc3QubGVuZ3RoID09IDApIHRocm93IFxcXCLmkJzntKLkuLrnqbrvvIzlj6/og73ljLnphY3plJnor69cXFwiXFxuXFxuZm9yIChsZXQgaiBpbiBsaXN0KSB7XFxuICAgICB2YXIg5qCH6aKYID0gcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sIOahhuaetuagh+mimCkuc2xpY2UoMCw0NSk7XFxuICAgICB2YXIg566A5LuLMSA9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCDmoYbmnrbnroDku4sxKTtcXG4gICAgIHZhciDnroDku4syID0gcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sIOahhuaetueugOS7izIpO1xcbiAgICAgdmFyIOaPj+i/sDEgPSBwYXJzZURvbUZvckh0bWwobGlzdFtqXSwg5qGG5p625o+P6L+wMSk7XFxuICAgICB2YXIg5o+P6L+wMiA9IHBhcnNlRG9tRm9ySHRtbChsaXN0W2pdLCDmoYbmnrbmj4/ov7AyKTtcXG4gICAgIHZhciDlm77niYcgPSBwYXJzZURvbShsaXN0W2pdLCDmoYbmnrblm77niYcpICsgJ0BSZWZlcmVyPSc7XFxuICAgICB2YXIg6ZO+5o6lID0gcGFyc2VEb20obGlzdFtqXSwg5qGG5p626ZO+5o6lKTsgXFxuICAgICAgXFxuICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgIHRpdGxlOiAnPGI+PHNtYWxsPjxmb250IGNvbG9yPVxcXCIjRkYwMDAwXFxcIj4gJyArIOagh+mimCArICc8L2ZvbnQ+PC9zbWFsbD4nLCAgICAgICAgICAgXFxuICAgICAgICAgICAgICAgY29udGVudDog566A5LuLMSArICdcXFxcbicgKyDnroDku4syLFxcbiAgICAgICAgICAgICAgIGRlc2M6IOaPj+i/sDEgKyAnICcgKyDmj4/ov7AyLFxcbiAgICAgICAgICAgICAgIGltZzog5Zu+54mHLFxcbiAgICAgICAgICAgICAgIHVybDog6ZO+5o6lLFxcbiAgICAgICAgICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgaW1nOiDlm77niYcsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICB9KTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG5zZXRSZXN1bHQoZClcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS6jOe6p+mhtemdouWGheWuuVwiLFwicGF0aFwiOlwiUGxvdFwiLFwicnVsZVwiOlwiLy92YXIgaW1nID0gTVlfUEFSQU1TLmltZztcXG52YXIgaW1nID0gcGFyc2VEb20oaHRtbCwg5b2x6KeG5bCB6Z2iKTtcXG5kLnB1c2goe1xcbiAgICB1cmw6IGltZyxcXG4gICAgLy91cmw6IE1ZX1BBUkFNUy5pbWcsXFxuICAgIGRlc2M6ICcwJyxcXG4gICAgaW1nOiBpbWcsXFxuICAgIGNvbF90eXBlOiBcXFwiY2FyZF9waWNfMlxcXCIsXFxuICAgIGV4dHJhOiB7XFxuICAgICAgICBncmFkaWVudDogdHJ1ZSwgICBcXG4gICAgfVxcbn0pO1xcblxcbnZhciDmj4/ov7AxID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDEpO1xcbnZhciDmj4/ov7AyID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDIpO1xcbnZhciDmj4/ov7AzID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDMpO1xcbnZhciDmj4/ov7A0ID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDQpO1xcbnZhciDmj4/ov7A1ID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDUpO1xcbnZhciDmj4/ov7A2ID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDYpO1xcbnZhciDmj4/ov7A3ID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOW9seinhuaPj+i/sDcpO1xcblxcblxcbnZhciBsYXp5WUwgPSAkKFxcXCJcXFwiKS5ydWxlKCgpID0+IHtcXG4gICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UveWwnLCB7fSkpLnJ1bGUpO1xcbn0pOyBcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+KAmOKAmOKAmeKAmTxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiI0YwNTA2RVxcXCI+ICcgKyDmj4/ov7AxICsgJzwvZm9udD48L3NtYWxsPjxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiI0YwNTA2RVxcXCI+XFxcXG4gJyArIOaPj+i/sDIgKyAnPC9mb250Pjwvc21hbGw+PGI+PHNtYWxsPjxmb250IGNvbG9yPVxcXCIjRjA1MDZFXFxcIj5cXFxcbiAnICsg5o+P6L+wMy5zbGljZSgwLDI2KSArICc8L2ZvbnQ+PC9zbWFsbD48Yj48c21hbGw+PGZvbnQgY29sb3I9XFxcIiNGMDUwNkVcXFwiPlxcXFxuICcgKyDmj4/ov7A0LnNsaWNlKDAsMjYpICsgJzwvZm9udD48L3NtYWxsPjxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiI0YwNTA2RVxcXCI+XFxcXG4gJyArIOaPj+i/sDUuc2xpY2UoMCwyNikgKyAnPC9mb250Pjwvc21hbGw+PGI+PHNtYWxsPjxmb250IGNvbG9yPVxcXCIjRjA1MDZFXFxcIj5cXFxcbiAnICsg5o+P6L+wNi5zbGljZSgwLDE4KS5yZXBsYWNlKCcsICcsJycpICsgJzwvZm9udD48L3NtYWxsPjxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiI0YwNTA2RVxcXCI+XFxcXG4gJyArIOaPj+i/sDcuc2xpY2UoMCwzMikgKyAnPC9mb250Pjwvc21hbGw+PC9iPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiIzNDM0MzQ1xcXCI+XFxcXG7igKYuLi48L2ZvbnQ+PC9zbWFsbD48c21hbGw+PGZvbnQgY29sb3I9XFxcIiM3QjY4RUVcXFwiPuWclueJh+mgkOimvTwvZm9udD48L3NtYWxsPicsXFxuICAgIHVybDogTVlfVVJMICsgbGF6eVlMLFxcbiAgICBkZXNjOiAnMCcsXFxuICAgIHBpY191cmw6ICcnLFxcbiAgICBjb2xfdHlwZTogXFxcImNhcmRfcGljXzJcXFwiLFxcbiAgICBleHRyYToge1xcbiAgICAgICAgZ3JhZGllbnQ6IHRydWVcXG4gICAgfVxcbn0pO1xcbi8qXFxuLy/moIfpophcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJzxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwieWVsbG93XFxcIj5cXFxcdOagh+mimO+8mjwvZm9udD48L3NtYWxsPjxiPjxzbWFsbD48Zm9udCBjb2xvcj1cXFwiIzhBMkJFMlxcXCI+JyArIHBkZmgoaHRtbCwgJy50aXRsZSYmVGV4dCcpICsgJzwvZm9udD48L3NtYWxsPicsXFxuICAgIGNvbF90eXBlOiBcXFwicmljaF90ZXh0XFxcIlxcbn0pOyovXFxuXFxuLy/mqJnpoYxcXG52YXIgZGVzYyA9IHBkZmgoaHRtbCwgJy50aXRsZSYmVGV4dCcpO1xcblxcbmZ1bmN0aW9uIHNldERlc2MoYXJyLCBkZXNjLCBudW0pIHtcXG4gICAgZGVzYyA9IGRlc2MuY29uc3RydWN0b3IgPT0gQXJyYXkgPyBkZXNjLmpvaW4oJzxicj4nKSA6IGRlc2M7XFxuICAgIGlmIChkZXNjLnJlcGxhY2UoLyg8YnI+fFxcXFxzKykvZywgJycpLmxlbmd0aCA9PSAwKSB7XFxuICAgICAgICByZXR1cm5cXG4gICAgfVxcbiAgICBjb25zdCBtYXJrID0gJ2Rlc2MnO1xcbiAgICBudW0gPSB0eXBlb2YobnVtKSA9PSAndW5kZWZpbmVkJyA/IDEwMCA6IG51bVxcbiAgICBkZXNjID0gZGVzYy5zdGFydHNXaXRoKCfjgIDjgIAnKSA/IGRlc2MgOiAn44CA44CAJyArIGRlc2M7XFxuICAgIGRlc2MgPSBkZXNjLnJlcGxhY2UoLycvZywgXFxcIiYjMzk7XFxcIilcXG5cXG4gICAgZnVuY3Rpb24gc3Vic3RyKHN0ciwgbWF4TGVuZ3RoKSB7XFxuICAgICAgICBsZXQgbGVuID0gMDtcXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XFxuICAgICAgICAgICAgaWYgKHN0ci5jaGFyQ29kZUF0KGkpID4gMjU1KSB7XFxuICAgICAgICAgICAgICAgIGxlbiArPSAyO1xcbiAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgIGxlbisrO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgICBpZiAobGVuID4gbWF4TGVuZ3RoKSB7XFxuICAgICAgICAgICAgICAgIHJldHVybiBzdHIuc2xpY2UoMCwgaSkgKyAnLi4uJztcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgICByZXR1cm4gc3RyO1xcbiAgICB9XFxuICAgIGxldCBzZGVzYyA9IHN1YnN0cihkZXNjLCBudW0pO1xcbiAgICB2YXIgbGF6eSA9ICQoYCNub0xvYWRpbmcjYCkubGF6eVJ1bGUoKGRjLCBzZGMsIG0pID0+IHtcXG4gICAgICAgIHZhciBzaG93ID0gc3RvcmFnZTAuZ2V0SXRlbShtLCAnMCcpO1xcbiAgICAgICAgdmFyIHRpdGxlID0gZmluZEl0ZW0oJ2Rlc2MnKS50aXRsZTtcXG4gICAgICAgIHZhciByZSA9IC8oPFxcXFwvc21hbGw+PGJyPi4qPz4pLisvZztcXG4gICAgICAgIHZhciBleHAgPSAn5bGV6ZaLOic7XFxuICAgICAgICB2YXIgcmV0ID0gJ+aUtue4rjonO1xcbiAgICAgICAgaWYgKHNob3cgPT0gJzEnKSB7XFxuICAgICAgICAgICAgdXBkYXRlSXRlbSgnZGVzYycsIHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6IHRpdGxlXFxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZShyZXQsIGV4cClcXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKHJlLCAnJDEnICsgc2RjICsgJzwvc21hbGw+JylcXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKC8oPFxcXFwvc21hbGw+PGJyPjxmb250IGNvbG9yPVxcXCIpLio/KFxcXCI+KS8sICckMSM4QTJCRTIkMicpLy/mlLbotbfpoY/oibJcXG5cXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIHN0b3JhZ2UwLnNldEl0ZW0obSwgJzAnKTtcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgdXBkYXRlSXRlbSgnZGVzYycsIHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6IHRpdGxlXFxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZShleHAsIHJldClcXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKHJlLCAnJDEnICsgZGMgKyAnPC9zbWFsbD4nKVxcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLyg8XFxcXC9zbWFsbD48YnI+PGZvbnQgY29sb3I9XFxcIikuKj8oXFxcIj4pLywgJyQxIzFFOTBGRiQyJykvL+WxlemWi+mhj+iJslxcbiAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgc3RvcmFnZTAuc2V0SXRlbShtLCAnMScpO1xcbiAgICAgICAgfVxcbiAgICAgICAgcmV0dXJuIGBoaWtlcjovL2VtcHR5YFxcbiAgICB9LCBkZXNjLCBzZGVzYywgbWFyaylcXG4gICAgdmFyIHNjID0gc3RvcmFnZTAuZ2V0SXRlbShtYXJrLCAnMCcpID09ICcwJyA/ICdcXFxcdFxcXFx0XFxcXHTlsZXplos6JyA6ICdcXFxcdFxcXFx0XFxcXHTmlLbnuK46JztcXG4gICAgdmFyIGRjID0gc3RvcmFnZTAuZ2V0SXRlbShtYXJrLCAnMCcpID09ICcwJyA/IHNkZXNjIDogZGVzYztcXG4gICAgYXJyLnB1c2goe1xcbiAgICAgICAgdGl0bGU6ICcnICsgJzxiPjxmb250IGNvbG9yPVxcXCJ5ZWxsb3dcXFwiPuKItyAg5qiZ6aGMXFx0PC9mb250PjwvYj4nICsgXFxcIjxzbWFsbD48YSBzdHlsZT0ndGV4dC1kZWNvcmF0aW9uOiBub25lOycgaHJlZj0nXFxcIiArIGxhenkgKyBcXFwiJz5cXFwiICsgc2MgKyAnPC9hPjwvc21hbGw+PGJyPjxmb250IGNvbG9yPVxcXCIjOEEyQkUyXFxcIj4nICsgYCR7ZGN9YCArICc8L3NtYWxsPicsXFxuICAgICAgICBjb2xfdHlwZTogJ3JpY2hfdGV4dCcsXFxuICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgIGlkOiAnZGVzYycsXFxuICAgICAgICAgICAgbGluZVNwYWNpbmc6IDYsXFxuICAgICAgICAgICAgdGV4dFNpemU6IDEzLFxcbiAgICAgICAgICAgIGxpbmVWaXNpYmxlOiB0cnVlLFxcbiAgICAgICAgfVxcbiAgICB9KVxcbn1cXG5zZXREZXNjKGQsIGRlc2MpO1xcblxcbi8v55Wq5Y+3XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICfigJjigJjigJnigJk8Yj48bWlkZGxlPjxmb250IGNvbG9yPVxcXCIjRkY4QzAwXFxcIj4nK3BhcnNlRG9tRm9ySHRtbChodG1sLCAnYm9keSYmLmZpcnN0LWJsb2NrJiYudmFsdWUmJlRleHQnKSsnPC9mb250PjwvbWlkZGxlPjwvYj4nLC8v55Wq5Y+3XFxuICAgIHVybDogJ2NvcHk6Ly8nICsgcGFyc2VEb21Gb3JIdG1sKGh0bWwsICdib2R5JiYuZmlyc3QtYmxvY2smJi52YWx1ZSYmVGV4dCcpLC8v5aSN5Yi255Wq5Y+3XFxuICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcXG59KTtcXG5cXG4vL+a8lOWRmFxcbnZhciBsYXp5WVkgPSAkKFxcXCJcXFwiKS5ydWxlKCgpID0+IHtcXG4gICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UveXknLCB7fSkpLnJ1bGUpO1xcbn0pOyBcXG52YXIgYXJ0cyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5wYW5lbC1ibG9jazpjb250YWlucyjmvJTlk6EpJiZhJyk7XFxuZm9yICh2YXIgaSBpbiBhcnRzKSB7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogJ+KAmOKAmOKAmeKAmTxiPjxtaWRkbGU+PGZvbnQgY29sb3I9XFxcIiMwMEJGRkZcXFwiPicrcGFyc2VEb21Gb3JIdG1sKGFydHNbaV0sICdUZXh0JykrJzwvZm9udD48L21pZGRsZT48L2I+JyxcXG4gICAgICAgIHVybDogcGFyc2VEb20oYXJ0c1tpXSwgJ2EmJmhyZWYnKSArICc/cGFnZT0nICsgJ2Z5cGFnZScgKyBsYXp5WVksLy/pk77mjqVcXG4gICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbicsLy/nu4Tku7bmoLflvI9cXG59KVxcbn1cXG5cXG5cXG5cXG5cXG5cXG4gXFxuXFxuLy/no4HlipvlhoXlrrlcXG52YXIgbGlzdCA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5pdGVtLmNvbHVtbnMuaXMtZGVza3RvcCcpOy8v5YiX6KGoXFxuXFxuZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjMWFhZDE5XFxcIj7wn6ey56OB5Yqb5Zyw5Z2AOiDlhbHmnIknICsgbGlzdC5sZW5ndGggKyAn5p2h57q/6Lev8J+Rhzwvc3Bhbj48L2I+JyxcXG4gICAgICAgIHVybDogTVlfVVJMLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJ1xcbiAgICB9KVxcblxcbmxpc3QuZm9yRWFjaCh2aWRlbyA9PiB7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKHZpZGVvLCAnYSYmVGV4dCcpXFxuICAgICAgICAucmVwbGFjZSgnLm1wNCcsICcnKVxcbiAgICAgICAgLnJlcGxhY2UoJ01QNCcsICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKCcuYXZpJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoJ0FWSScsICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKCdKQVYnLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgvXFxcXGQr5YCL5paH5Lu2LywgJycpXFxuICAgICAgICAucmVwbGFjZSgvLCBcXFxcZCvlgIvmlofku7YvLCAnJylcXG4gICAgICAgIC5yZXBsYWNlKCdKQVYnLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgnSEQnLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgnMTA4MHAnLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgnRkhELTEwODBQJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoJy50b3JyZW50JywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoLy4qXFxcXC5DT00vLCAnJylcXG4gICAgICAgIC5yZXBsYWNlKC9bXFxcXHU0ZTAwLVxcXFx1OWZhNV0rL2csIFxcXCJcXFwiKVxcbiAgICAgICAgLnJlcGxhY2UoL1tcXFxcdTMwNDAtXFxcXHUzMDlGXFxcXHUzMEEwLVxcXFx1MzBGRlxcXFx1MzFGMC1cXFxcdTMxRkZdKy9nLCBcXFwiXFxcIilcXG4gICAgICAgIC5yZXBsYWNlKC/jgJAuKuOAkS9nLCAnJylcXG4gICAgICAgIC5yZXBsYWNlKC8uKkAvZywgJycpXFxuICAgICAgICAucmVwbGFjZSgvLC9nLCAnJylcXG4gICAgICAgIC5yZXBsYWNlKC9cXFxcKC9nLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgvXFxcXCkvZywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoL1xcXFxdL2csICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKC9cXFxcWy9nLCAnJykgXFxuICAgICAgICAgICAgICAgICAgICArICdcXFxcdFxcXFx0XFxcXHTwn5eTXFxcXHQnICtwYXJzZURvbUZvckh0bWwodmlkZW8sICcudGltZSYmVGV4dCcpLFxcbiAgICAgICAgcGljX3VybDogJ2h0dHBzOi8vaW1nLnZpbnVhLmNuL2ltYWdlcy9PY3Fwai5wbmcnLFxcbiAgICAgICAgdXJsOiBwYXJzZURvbSh2aWRlbywgJ2EmJmhyZWYnKSwvL+mTvuaOpVxcbiAgICAgICAgY29sX3R5cGU6ICdhdmF0YXInLC8v57uE5Lu25qC35byPXFxuICAgIH0pO1xcbn0pXFxuXFxuLy/mjqjojZDliJfooahcXG52YXIgbGF6eUVKID0gJChcXFwiXFxcIikucnVsZSgoKSA9PiB7XFxuICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL2VqJywge30pKS5ydWxlKTtcXG59KTsgXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICc8c3BhbiBzdHlsZT1cXFwiY29sb3I6IHllbGxvdztcXFwiPuS9oOWPr+iDveS5n+WWnOatoTwvc3Bhbj4nLFxcbiAgICBwaWNfdXJsOiBcXFwiaHR0cHM6Ly9sYW5tZWlndW9qaWFuZy5jb20vdHViaWFvL2tlLzEwMC5wbmdcXFwiLFxcbiAgICBjb2xfdHlwZTogJ3JpY2hfdGV4dCdcXG59KTtcXG5cXG50cnl7XFxudmFyIGxpc3QgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsICdib2R5JiYudGlsZS1zbWFsbCwtMSYmYScpOy8v5YiX6KGoXFxuXFxubGlzdC5mb3JFYWNoKHZpZGVvID0+IHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAgcGFyc2VEb21Gb3JIdG1sKHZpZGVvLCAnYSYmdGl0bGUnKSwvL+agh+mimFxcbiAgICAgICAgZGVzYzogcGFyc2VEb21Gb3JIdG1sKHZpZGVvLCAnLnZpZGVvLW51bWJlciYmVGV4dCcpLFxcbiAgICAgICAgaW1nOiBwYXJzZURvbSh2aWRlbywgJ2ltZyYmc3JjJykgKyBcXFwiQFJlZmVyZXI9XFxcIiwvL+WbvueJh1xcbiAgICAgICAgdXJsOiBwYXJzZURvbSh2aWRlbywgJ2EmJmhyZWYnKSArIGxhenlFSiwvL+mTvuaOpVxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8zX21hcnF1ZWUnLC8v57uE5Lu25qC35byPXFxuICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgIGltZzogcGFyc2VEb20odmlkZW8sICdpbWcmJnNyYycpICsgXFxcIkBSZWZlcmVyPVxcXCIsXFxuICAgICAgICB9XFxuICB9KTtcXG59KSAgIFxcbn0gY2F0Y2ggKGVycikge1xcbiAgY29uc29sZS5sb2coJ+ayoeacieaOqOiNkOWIl+ihqCcsIGVycik7XFxufTtcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS6jOe6p+WklumDqOaQnOe0olwiLFwicGF0aFwiOlwidG9vbFwiLFwicnVsZVwiOlwidmFyIHRpdGxlID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsIOaQnOe0ouagh+etvik7XFxubG9nKHRpdGxlKVxcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn4oCY4oCY4oCZ4oCZPGI+PG1pZGRsZT48Zm9udCBjb2xvcj1cXFwiI0ZGMDAwMFxcXCI+IE1pc3NBVjwvZm9udD48L21pZGRsZT4nLFxcbiAgICBwaWNfdXJsOiAnaHR0cDovL3BwLm15YXBwLmNvbS9tYV9pY29uLzAvaWNvbl8xMDkxMF8xNjYwODM5MDY4LzI1NicsXFxuICAgIHVybDogJ2hpa2VyOi8vc2VhcmNoP3M9JyArIHRpdGxlICsgJyZydWxlPU1pc3NBVuKciO+4jycsXFxuICAgIGNvbF90eXBlOiAnaWNvbl9zbWFsbF80JyxcXG59KTtcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+KAmOKAmOKAmeKAmTxiPjxtaWRkbGU+PGZvbnQgY29sb3I9XFxcIiMxRTkwRkZcXFwiPiBKYWJsZTwvZm9udD48L21pZGRsZT4nLFxcbiAgICBwaWNfdXJsOiAnaHR0cDovL3BwLm15YXBwLmNvbS9tYV9pY29uLzAvaWNvbl83NzIwXzE2NjA2MzA1ODAvMjU2JyxcXG4gICAgdXJsOiAnaGlrZXI6Ly9zZWFyY2g/cz0nICsgdGl0bGUgKyAnJnJ1bGU9SmFibGXinIjvuI8nLFxcbiAgICBjb2xfdHlwZTogJ2ljb25fc21hbGxfNCcsXFxufSk7XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICfigJjigJjigJnigJk8Yj48bWlkZGxlPjxmb250IGNvbG9yPVxcXCIjRkY4QzAwXFxcIj4g6buE6Imy5LuT5bqTPC9mb250PjwvbWlkZGxlPicsXFxuICAgIHBpY191cmw6ICdodHRwOi8vcGljLjIyNjUuY29tL3VwbG9hZC8yMDE5LTUvMjAxOTUxMzE3MTI1ODI1MDkucG5nJyxcXG4gICAgdXJsOiAnaGlrZXI6Ly9zZWFyY2g/cz0nICsgdGl0bGUgKyAnJnJ1bGU96buE6Imy5LuT5bqTJyxcXG4gICAgY29sX3R5cGU6ICdpY29uX3NtYWxsXzQnLFxcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn4oCY4oCY4oCZ4oCZPGI+PG1pZGRsZT48Zm9udCBjb2xvcj1cXFwiIzAwRkYwMFxcXCI+IEFW5bKbPC9mb250PjwvbWlkZGxlPicsXFxuICAgIHBpY191cmw6ICdodHRwOi8vcGljLjIyNjUuY29tL3VwbG9hZC8yMDE5LTEvMjAxOTEyMTUzMDM3NzExMy5wbmcnLFxcbiAgICB1cmw6ICdoaWtlcjovL3NlYXJjaD9zPScgKyB0aXRsZSArICcmcnVsZT1BVuWymycsXFxuICAgIGNvbF90eXBlOiAnaWNvbl9zbWFsbF80JyxcXG59KTtcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuS6jOe6p+WbvueJh+mihOiniFwiLFwicGF0aFwiOlwieWxcIixcInJ1bGVcIjpcIlxcbnZhciByZXMgPSB7fTsgXFxudmFyIGQgPSBbXTtcXG52YXIgaHRtbCA9IGdldFJlc0NvZGUoKVxcbnZhciBsaXN0ID0gcGRmYShodG1sLCdib2R5JiYucHJldmlldy1pbWFnZXMmJmEsMTonKTsgXFxuXFxuZm9yICh2YXIgaSBpbiBsaXN0KSB7XFxuZC5wdXNoKHtcXG4gICAgICAgIHBpY191cmw6IHBhcnNlRG9tKGxpc3RbaV0sICdhJiZocmVmJyksXFxuICAgICAgICB1cmw6IHBhcnNlRG9tKGxpc3RbaV0sICdhJiZocmVmJyksLy/pk77mjqVcXG4gICAgICAgIGNvbF90eXBlOiAncGljXzFfZnVsbCcsLy/nu4Tku7bmoLflvI9cXG59KTtcXG59XFxucmVzLmRhdGEgPSBkOyBcXG5zZXRIb21lUmVzdWx0KHJlcyk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuIDnuqfmvJTlkZjpobXpnaJcIixcInBhdGhcIjpcInl5XCIsXCJydWxlXCI6XCJqczp2YXIgZCA9IFtdO1xcbmFkZExpc3RlbmVyKFxcXCJvbkNsb3NlXFxcIiwgJC50b1N0cmluZygoKSA9PiB7XFxuICAgIGxldCBrZXlzID0gbGlzdE15VmFyS2V5cygpO1xcbiAgICBmb3IgKGxldCBpdCBvZiBrZXlzKSB7XFxuICAgICAgICBjbGVhck15VmFyKGl0KTtcXG4gICAgfVxcbn0pKTtcXG5cXG5jb25zdCDlvIDlkK/mkJzntKIgPSBmYWxzZTtcXG5jb25zdCBwYWdlID0gTVlfUEFHRTtcXG5sZXQgdHJ1ZV91cmwgPSBnZXRWYXIoTVlfUlVMRS51cmwsIE1ZX1VSTClcXG5pZiAodHJ1ZV91cmwuaW5jbHVkZXMoJz8nKSkge1xcbiAgICAgICAgLy9sb2coJ+WQq+aciScpXFxuICAgICAgICB0cnVlX3VybCA9IHRydWVfdXJsLnJlcGxhY2UoLyh0YWdzLiopLywnJDEnICsgJyZwYWdlPScgKyBwYWdlKTtcXG4gICAgICAgIGxvZyh0cnVlX3VybCk7XFxuICAgIH0gZWxzZSB7XFxuICAgICAgICB0cnVlX3VybCA9IHRydWVfdXJsKyc/JnBhZ2U9JytwYWdlXFxufVxcbnZhciBodG1sID0gZmV0Y2godHJ1ZV91cmwsIHtoZWFkZXJzOiB7J1VzZXItQWdlbnQnOiBNT0JJTEVfVUEgLypQQ19VQSovfX0pXFxuXFxuaWYgKE1ZX1BBR0UgPT0gMSkge1xcbmQucHVzaCh7XFxuICAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVxcXCJjb2xvcjogIzAwQkZGRjtcXFwiPicgKyBwZGZoKGh0bWwsICdoMiYmLmFjdG9yLXNlY3Rpb24tbmFtZSYmVGV4dCcpICsgJzwvc3Bhbj48c3BhbiBzdHlsZT1cXFwiY29sb3I6IGN5YW47XFxcIj5cXFxcdFxcXFx0XFxcXHRcXFxcdCcgKyBwZGZoKGh0bWwsICdoMiYmLnNlY3Rpb24tbWV0YTpsYXN0LWNoaWxkJiZUZXh0JykgKyAnPC9zcGFuPicsXFxuICAgICAgcGljX3VybDogcGQoaHRtbCwnLmF2YXRhciYmc3R5bGUnKSxcXG4gICAgICB1cmw6IE1ZX1VSTCxcXG4gICAgIGNvbF90eXBlOiAnYXZhdGFyJ1xcbn0pO1xcbiAgICAgICAgICAgfVxcblxcblxcblxcblxcblxcbi8v6aG16Z2i5YaF5a655aGr5YWFXFxudmFyIOS4gOe6p+WIl+ihqCA9ICdib2R5JiYuaXRlbSdcXG52YXIg5LiA57qn5qCH6aKYID0gJy52aWRlby10aXRsZSYmVGV4dCdcXG52YXIg5LiA57qn5o+P6L+wMSA9ICcubWV0YSYmVGV4dCdcXG52YXIg5LiA57qn5o+P6L+wMiA9ICcudGFnJiZUZXh0J1xcbnZhciDkuIDnuqflm77niYcgPSAnaW1nJiZzcmMnXFxudmFyIOS4gOe6p+mTvuaOpSA9ICdhJiZocmVmJ1xcbmV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL1ByaW1hcnlUZW1wbGF0ZScsIHt9KSkucnVsZSk7XFxuc2V0UmVzdWx0KGQpXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuoznuqfltYzlpZfpobXpnaJcIixcInBhdGhcIjpcImVqXCIsXCJydWxlXCI6XCJqczpcXG52YXIgZCA9IFtdO1xcbnZhciBodG1sID0gZ2V0UmVzQ29kZSgpO1xcblxcbnZhciDmkJzntKLmoIfnrb4gPSAnLmZpcnN0LWJsb2NrJiYudmFsdWUmJlRleHQnO1xcbnZhciDlvbHop4bmj4/ov7AxID0gJy5wYW5lbC1ibG9jazpjb250YWlucyjnlaromZ8pJiZUZXh0JztcXG52YXIg5b2x6KeG5o+P6L+wMiA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo5pel5pyfKSYmVGV4dCc7XFxudmFyIOW9seinhuaPj+i/sDMgPSAnLnBhbmVsLWJsb2NrOmNvbnRhaW5zKOaZgumVtykmJlRleHQnO1xcbnZhciDlvbHop4bmj4/ov7A0ID0gJy5wYW5lbC1ibG9jazpjb250YWlucyjlsI7mvJQpJiZUZXh0JztcXG52YXIg5b2x6KeG5o+P6L+wNSA9ICcucGFuZWwtYmxvY2s6Y29udGFpbnMo54mH5ZWGKSYmVGV4dCc7XFxudmFyIOW9seinhuaPj+i/sDYgPSAnLnBhbmVsLWJsb2NrOmNvbnRhaW5zKOipleWIhikmJlRleHQnO1xcbnZhciDlvbHop4bmj4/ov7A3ID0gJy5wYW5lbC1ibG9jazpjb250YWlucyjpoZ7liKUpJiZUZXh0JztcXG52YXIg5b2x6KeG5bCB6Z2iID0gJy5jb2x1bW4tdmlkZW8tY292ZXImJmltZyYmc3JjJztcXG5cXG5ldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS90b29sJywge30pKS5ydWxlKTtcXG5ldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS9QbG90Jywge30pKS5ydWxlKTtcXG5cXG5zZXRIb21lUmVzdWx0KGQpO1wifV0iLCJpY29uIjoiaHR0cHM6Ly9jMC5qZGJzdGF0aWMuY29tL2ltYWdlcy9sb2dvXzEyMHgxMjAucG5nIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment