Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@Netflav✈️@eyJmaXJzdEhlYWRlciI6ImNsYXNzIiwibGFzdF9jaGFwdGVyX3J1bGUiOiIiLCJ0aXRsZSI6Ik5ldGZsYXbinIjvuI8iLCJhdXRob3IiOiJSIiwidXJsIjoiaGlrZXI6Ly9lbXB0eSMjaHR0cHM6Ly93d3cubmV0ZmxhdjUuY29tL2Z5QWxsP3BhZ2U9ZnlwYWdlIiwidmVyc2lvbiI6MjAyMzAyMjMsImNvbF90eXBlIjoibW92aWVfMyIsImNsYXNzX25hbWUiOiIg5pyA5Y+X5qyi6L+OJuacrOaciCbkuIrmnIgmMuaciOWJjSYz5pyI5YmNJjTmnIjliY0mNeaciOWJjSIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6InRyZW5kaW5nJnRyZW5kaW5nLzEmdHJlbmRpbmcvMiZ0cmVuZGluZy8zJnRyZW5kaW5nLzQmdHJlbmRpbmcvNSZ0cmVuZGluZy82IiwiYXJlYV9uYW1lIjoiICDmnInnorwgICYgIOeEoeeivCAgJiAg5Lit5a2XICAmIOWIhuexuyAmIOWls+WEqiAiLCJhcmVhX3VybCI6ImNlbnNvcmVkJnVuY2Vuc29yZWQmY2hpbmVzZS1zdWImZ2VucmUmYWN0cmVzcyIsInNvcnRfbmFtZSI6IiIsInllYXJfbmFtZSI6IiIsInNvcnRfdXJsIjoiIiwieWVhcl91cmwiOiIiLCJmaW5kX3J1bGUiOiJqczpcbiQucmVxdWlyZShcInlpXCIpIiwic2VhcmNoX3VybCI6Imhpa2VyOi8vZW1wdHkjI2h0dHBzOi8vd3d3Lm5ldGZsYXY1LmNvbS9zZWFyY2g/a2V5d29yZD0qKiZwYWdlPWZ5cGFnZSZ0eXBlPXRpdGxlIiwiZ3JvdXAiOiLikaHinIjvuI8iLCJzZWFyY2hGaW5kIjoianM6XG52YXIgZCA9IFtdXG5NWV9VUkwgPSBNWV9VUkwucmVwbGFjZShcImhpa2VyOi8vZW1wdHkjI1wiLFwiXCIpXG5sb2coTVlfVVJMKVxudmFyIGh0bWwgPSBmZXRjaChNWV9VUkwpXG5cbiAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UocGRmaChodG1sLFwiYm9keSYmI19fTkVYVF9EQVRBX18mJkh0bWxcIikpLnByb3BzLmluaXRpYWxTdGF0ZS5zZWFyY2guZG9jc1xuICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHsgIFxudmFyIHVybGwgPSBcImhpa2VyOi8vZW1wdHkjI1wiICsgTVlfSE9NRSArICcvdmlkZW8/aWQ9JyArIGl0ZW0udmlkZW9JZDtcbiAgICBkLnB1c2goe1xuICAgICAgICB0aXRsZTogaXRlbS50aXRsZSxcbiAgICAgICAgZGVzYzogaXRlbS5zb3VyY2VEYXRlLnNsaWNlKDAsMTApLFxuICAgICAgICBpbWc6IGl0ZW0ucHJldmlldyxcbiAgICAgICAgLy91cmw6IHVybGwgKyAnQHJ1bGU9anM6JC5yZXF1aXJlKFwiaGlrZXI6Ly9wYWdlL2VyXCIpJyxcbiAgICAgICAgdXJsOiBcImhpa2VyOi8vcGFnZS9lcj91cmw9XCIgKyB1cmxsLFxuICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxuICAgIH0pXG59KVxuXG5zZXRSZXN1bHQoZCkiLCJkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwiZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInNkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwic2RldGFpbF9maW5kX3J1bGUiOiIiLCJ1YSI6Im1vYmlsZSIsInByZVJ1bGUiOiIiLCJwYWdlcyI6Ilt7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi5LiA57qnXCIsXCJwYXRoXCI6XCJ5aVwiLFwicnVsZVwiOlwianM6XFxudmFyIGQgPSBbXVxcbk1ZX1VSTCA9IE1ZX1VSTC5yZXBsYWNlKFxcXCJoaWtlcjovL2VtcHR5IyNcXFwiLFxcXCJcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvMVxcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9MSZcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvMlxcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9MiZcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvM1xcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9MyZcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvNFxcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9NCZcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvNVxcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9NSZcXFwiKS5yZXBsYWNlKFxcXCJ0cmVuZGluZ1xcXFwvNlxcXFw/XFxcIixcXFwidHJlbmRpbmc/cmFuZ2U9bW9udGgmdmFsdWU9NiZcXFwiKS5yZXBsYWNlKC9cXFxcL2dlbnJlXFxcXD9wYWdlPVxcXFxkKy8sXFxcIi9nZW5yZVxcXCIpXFxubG9nKE1ZX1VSTClcXG5cXG52YXIgaHRtbCA9IGZldGNoKE1ZX1VSTClcXG5cXG5pZihNWV9QQUdFPT0xKXtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBcXFwi8J+UjVxcXCIsXFxuICAgICAgICB1cmw6ICQudG9TdHJpbmcoKHIpID0+IHtcXG4gICAgICAgICAgICBwdXRNeVZhcigna2V5d29yZCcsIGlucHV0KTtcXG4gICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vc2VhcmNoP3J1bGU9JyArIHIgKyAnJnM9JyArIGlucHV0O1xcbiAgICAgICAgfSwgTVlfUlVMRS50aXRsZSksXFxuICAgICAgICBkZXNjOiAn5pCc5L2g5oOz6KaB55qEJywvL+aQnOe0ouWFs+mUruivjVxcbiAgICAgICAgY29sX3R5cGU6IFxcXCJpbnB1dFxcXCIsXFxuICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogZ2V0TXlWYXIoJ2tleXdvcmQnLCAnJykgfHwgXFxcIlxcXCIsXFxuICAgICAgICB9XFxuICAgIH0pO1xcbn1cXG5cXG5pZigvXFxcXC90cmVuZGluZy8udGVzdChNWV9VUkwpKXtcXG4gICAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKHBkZmgoaHRtbCxcXFwiYm9keSYmI19fTkVYVF9EQVRBX18mJkh0bWxcXFwiKSkucHJvcHMuaW5pdGlhbFN0YXRlLnRyZW5kaW5nLmRvY3NcXG4gICAgbGlzdC5mb3JFYWNoKGl0ZW0gPT4geyAgXFxudmFyIHVybGwgPSBcXFwiaGlrZXI6Ly9lbXB0eSMjXFxcIiArIE1ZX0hPTUUgKyAnL3ZpZGVvP2lkPScgKyBpdGVtLnZpZGVvSWQ7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogaXRlbS50aXRsZSxcXG4gICAgICAgIGRlc2M6IGl0ZW0uY3JlYXRlZEF0LnNsaWNlKDAsMTApLFxcbiAgICAgICAgaW1nOiBpdGVtLnByZXZpZXdfaHAsXFxuICAgICAgICB1cmw6IHVybGwgKyAnQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJoaWtlcjovL3BhZ2UvZXJcXFwiKScsXFxuICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICB9KVxcbn0pXFxufWVsc2UgaWYoL1xcXFwvY2Vuc29yZWQvLnRlc3QoTVlfVVJMKSl7XFxuICAgICAgIHZhciBsaXN0ID0gSlNPTi5wYXJzZShwZGZoKGh0bWwsXFxcImJvZHkmJiNfX05FWFRfREFUQV9fJiZIdG1sXFxcIikpLnByb3BzLmluaXRpYWxTdGF0ZS5jZW5zb3JlZC5kb2NzXFxuICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHsgIFxcbnZhciB1cmxsID0gXFxcImhpa2VyOi8vZW1wdHkjI1xcXCIgKyBNWV9IT01FICsgJy92aWRlbz9pZD0nICsgaXRlbS52aWRlb0lkO1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IGl0ZW0udGl0bGUsXFxuICAgICAgICBkZXNjOiBpdGVtLnNvdXJjZURhdGUuc2xpY2UoMCwxMCksXFxuICAgICAgICBpbWc6IGl0ZW0ucHJldmlld19ocCxcXG4gICAgICAgIHVybDogdXJsbCArICdAcnVsZT1qczokLnJlcXVpcmUoXFxcImhpa2VyOi8vcGFnZS9lclxcXCIpJyxcXG4gICAgICAgIGNvbF90eXBlOiAnbW92aWVfMicsXFxuICAgIH0pXFxufSlcXG59ZWxzZSBpZigvXFxcXC91bmNlbnNvcmVkLy50ZXN0KE1ZX1VSTCkpe1xcbiAgICAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UocGRmaChodG1sLFxcXCJib2R5JiYjX19ORVhUX0RBVEFfXyYmSHRtbFxcXCIpKS5wcm9wcy5pbml0aWFsU3RhdGUudW5jZW5zb3JlZC5kb2NzXFxuICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHsgIFxcbnZhciB1cmxsID0gXFxcImhpa2VyOi8vZW1wdHkjI1xcXCIgKyBNWV9IT01FICsgJy92aWRlbz9pZD0nICsgaXRlbS52aWRlb0lkO1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IGl0ZW0udGl0bGUsXFxuICAgICAgICBkZXNjOiBpdGVtLnNvdXJjZURhdGUuc2xpY2UoMCwxMCksXFxuICAgICAgICBpbWc6IGl0ZW0ucHJldmlld19ocCxcXG4gICAgICAgIHVybDogdXJsbCArICdAcnVsZT1qczokLnJlcXVpcmUoXFxcImhpa2VyOi8vcGFnZS9lclxcXCIpJyxcXG4gICAgICAgIGNvbF90eXBlOiAnbW92aWVfMicsXFxuICAgIH0pXFxufSlcXG59ZWxzZSBpZigvXFxcXC9jaGluZXNlLXN1Yi8udGVzdChNWV9VUkwpKXtcXG4gICAgICAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKHBkZmgoaHRtbCxcXFwiYm9keSYmI19fTkVYVF9EQVRBX18mJkh0bWxcXFwiKSkucHJvcHMuaW5pdGlhbFN0YXRlLmNoaW5lc2UuZG9jc1xcbiAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7ICBcXG52YXIgdXJsbCA9IFxcXCJoaWtlcjovL2VtcHR5IyNcXFwiICsgTVlfSE9NRSArICcvdmlkZW8/aWQ9JyArIGl0ZW0udmlkZW9JZDtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLFxcbiAgICAgICAgZGVzYzogaXRlbS5zb3VyY2VEYXRlLnNsaWNlKDAsMTApLFxcbiAgICAgICAgaW1nOiBpdGVtLnByZXZpZXdfaHAsXFxuICAgICAgICB1cmw6IHVybGwgKyAnQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJoaWtlcjovL3BhZ2UvZXJcXFwiKScsXFxuICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICB9KVxcbn0pXFxufWVsc2UgaWYoL1xcXFwvZ2VucmUvLnRlc3QoTVlfVVJMKSl7XFxuICAgIHZhciB0YWJzID0gcGRmYShodG1sLCAnI21haW5fc2VnbWVudCYmLmNvbnRhaW5lcl9oZWFkZXJfdGl0bGVfbGFyZ2UnKTtcXG4gICAgdmFyIGNvbnRzID0gcGRmYShodG1sLCAnI21haW5fc2VnbWVudCYmLmdlbnJlX2l0ZW1fY29udGFpbmVyJyk7XFxuXFxuZm9yICh2YXIgaSA9IDA7IGkgPCBjb250cy5sZW5ndGg7IGkrKykge1xcbiAgICAgIHZhciBsaXN0ID0gcGRmYShjb250c1tpXSwgJ2JvZHkmJmEnKTsgXFxuICAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6ICc8c3BhbiBzdHlsZT1cXFwiY29sb3I6ICNGRjAwRkY7XFxcIj4nICsgcGRmaCh0YWJzW2ldLCAnVGV4dCcpICsgJzwvc3Bhbj4nLFxcbiAgICAgICAgdXJsOid0b2FzdDovL+eCueS6huS5n+ayoeeUqCcsXFxuICAgICAgICBjb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG4gICAgfSk7XFxuLypcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIGNvbF90eXBlOiBcXFwibGluZVxcXCJcXG4gICAgfSk7XFxuKi9cXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykgeyAgICAgICBcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+KAnOKAnOKAneKAnTxtaWRkbGU+PGZvbnQgY29sb3I9I0ZGQTUwMD4nK3BkZmgobGlzdFtqXSwgJ2EmJlRleHQnKSsnPC9mb250PjwvbWlkZGxlPicsXFxuICAgICAgICAgICAgICAgIHVybDogJ2hpa2VyOi8vZW1wdHkjIycrcGQobGlzdFtqXSwgJ2EmJmhyZWYnKSArICcmcGFnZT1meXBhZ2VAcnVsZT1qczokLnJlcXVpcmUoXFxcInlpXFxcIiknLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMycsXFxuICAgICAgICAgICAgICAgIFxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfVxcbiAgICB9XFxufWVsc2UgaWYoL1xcXFwvYWxsLy50ZXN0KE1ZX1VSTCkpe1xcbiAgICAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UocGRmaChodG1sLFxcXCJib2R5JiYjX19ORVhUX0RBVEFfXyYmSHRtbFxcXCIpKS5wcm9wcy5pbml0aWFsU3RhdGUuYWxsLmRvY3NcXG4gICAgbGlzdC5mb3JFYWNoKGl0ZW0gPT4geyAgXFxudmFyIHVybGwgPSBcXFwiaGlrZXI6Ly9lbXB0eSMjXFxcIiArIE1ZX0hPTUUgKyAnL3ZpZGVvP2lkPScgKyBpdGVtLnZpZGVvSWQ7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogaXRlbS50aXRsZSxcXG4gICAgICAgIGRlc2M6IGl0ZW0uc291cmNlRGF0ZS5zbGljZSgwLDEwKSxcXG4gICAgICAgIGltZzogaXRlbS5wcmV2aWV3X2hwLFxcbiAgICAgICAgdXJsOiB1cmxsICsgJ0BydWxlPWpzOiQucmVxdWlyZShcXFwiaGlrZXI6Ly9wYWdlL2VyXFxcIiknLFxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8yJyxcXG4gICAgICAgICAgICAgICAgICAgZXh0cmE6e1xcbiAgICAgICAgIHBhZ2VUaXRsZTogaXRlbS50aXRsZSxcXG4gICAgICAgICAgICAgICAgICB9ICAgIFxcbiAgICB9KVxcbn0pXFxufWVsc2UgaWYoL1xcXFwvYWN0cmVzcy8udGVzdChNWV9VUkwpKXtcXG4gICAgICAgdmFyIGxpc3QgPSBwZGZhKGh0bWwsXFxcIiNtYWluX3NlZ21lbnQmJmFbaHJlZl1cXFwiKVxcbiAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7ICBcXG52YXIgdXJsbCA9IFxcXCJoaWtlcjovL2VtcHR5IyNcXFwiICsgcGQoaXRlbSxcXFwiYSYmaHJlZlxcXCIpO1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IHBkZmgoaXRlbSxcXFwiLmFjdHJlc3NfZ3JpZF90aXRsZV9ibG9jayYmVGV4dFxcXCIpLFxcbiAgICAgICAgLy9kZXNjOiBwZGZoKGl0ZW0sXFxcIi5hY3RyZXNzX2dyaWRfdGl0bGVfYmxvY2ssMSYmVGV4dFxcXCIpLFxcbiAgICAgICAgaW1nOiBwZChpdGVtLFxcXCJpbWcmJnNyY1xcXCIpLFxcbiAgICAgICAgdXJsOiB1cmxsICsgJyZwYWdlPWZ5cGFnZUBydWxlPWpzOiQucmVxdWlyZShcXFwiaGlrZXI6Ly9wYWdlL3lpXFxcIiknLFxcbiAgICAgICAgY29sX3R5cGU6ICdpY29uXzRfY2FyZCcsXFxuICAgICAgICAgICAgICAgICAgIGV4dHJhOntcXG4gICAgICAgICBwYWdlVGl0bGU6IHBkZmgoaXRlbSxcXFwiLmFjdHJlc3NfZ3JpZF90aXRsZV9ibG9jayYmVGV4dFxcXCIpLFxcbiAgICAgICAgICAgICAgICAgIH0gICAgXFxuICAgIH0pXFxufSlcXG59XFxuXFxuc2V0UmVzdWx0KGQpXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuoznuqdcIixcInBhdGhcIjpcImVyXCIsXCJydWxlXCI6XCJqczpcXG52YXIgZCA9IFtdXFxuTVlfVVJMID0gTVlfVVJMLnJlcGxhY2UoXFxcImhpa2VyOi8vZW1wdHkjI1xcXCIsXFxcIlxcXCIpXFxudmFyIGh0bWwgPSBmZXRjaChNWV9VUkwpXFxudmFyIGpzb24gPSBKU09OLnBhcnNlKHBkZmgoaHRtbCwgJ2JvZHkmJiNfX05FWFRfREFUQV9fJiZIdG1sJykpO1xcblxcbnZhciB0aXRsZSA9IHBkZmgoaHRtbCwnYm9keSYmI3ZpZGVvLWRldGFpbHMmJi52aWRlb2RldGFpbF8yX3RpdGxlJiZUZXh0Jyk7XFxudmFyIGRlc2MgPSBwZGZoKGh0bWwsICdib2R5JiYjdmlkZW8tZGV0YWlscyYmLnZpZGVvZGV0YWlsXzJfdmlld3MmJlRleHQnKTtcXG4gICBpZih0aXRsZSAhPT1udWxsKXtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPG1pZGRsZT48Zm9udCBjb2xvcj0jRkZBNTAwPicrdGl0bGUrJzwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgZGVzYzogZGVzYyArIFxcXCJcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdOeCueWHu+WbvueJh+mihOiniFxcXCIsXFxuICAgICAgICB1cmw6IE1ZX1VSTCxcXG4gICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgICAgIGV4dHJhOiB7bGluZVZpc2libGU6IGZhbHNlfVxcbiAgICB9KVxcbn1cXG5cXG52YXIgaW1nID0gcGQoaHRtbCwnYm9keSYmI3ZpZGVvLWRldGFpbHMmJi52aWRlb2RldGFpbF8yX3ByZXZpZXdfYmxvY2smJmltZyYmc3JjJyk7XFxuICAgIGlmKGltZyAhPT1udWxsKXtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgIGltZzogaW1nLFxcbiAgICAgICAgICAgICB1cmw6IE1ZX1VSTCArICQoJycpLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgIHZhciBpbnAgPSBmZXRjaChpbnB1dCx7fSk7IFxcbiAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJwaWNzOi8vXFxcIitwZGZhKGlucCwgJ2JvZHkmJiN2aWRlby1kZXRhaWxzJiYudmlkZW9kZXRhaWxfMl9wcmV2aWV3X2Jsb2NrJykubWFwKGltZyA9PnBkKGltZywgJ2ltZyYmc3JjJykrXFxcIkBSZWZlcmVyPVxcXCIsKS5qb2luKFxcXCImJlxcXCIpICBcXG4gICAgICAgICAgICAgICAgICB9KSxcXG4gICAgICAgICAgICAgY29sX3R5cGU6ICdwaWNfMV9mdWxsJyxcXG4gICAgICAgICAgICAgICAgICB9KTtcXG4gICAgICAgICB9XFxuXFxudHJ5e1xcbnZhciBjb250ZW50ID0ganNvbi5wcm9wcy5pbml0aWFsU3RhdGUudmlkZW8uZGF0YS5kZXNjcmlwdGlvbjtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBcXFwiPG1pZGRsZT48Zm9udCBjb2xvcj0jMDA4QjhCPlxcXCIrY29udGVudC5yZXBsYWNlKC88fD4vZywnJykrXFxcIjwvZm9udD48L21pZGRsZT5cXFwiLFxcbiAgICAgICAgY29sX3R5cGU6ICdyaWNoX3RleHQnLFxcbiAgICAgICAgZXh0cmE6IHtsaW5lVmlzaWJsZTogZmFsc2V9XFxuICAgIH0pXFxufWNhdGNoe31cXG5cXG5ldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS9sYXp5Jywge30pKS5ydWxlKTtcXG52YXIgcGxheSA9IGpzb24ucHJvcHMuaW5pdGlhbFN0YXRlLnZpZGVvLmRhdGEuc3JjcztcXG5mb3IgKGxldCBpIGluIHBsYXkpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBcXFwi5pKt5pS+5ZmoXFxcIiArIFtpXSxcXG4gICAgICAgIHVybDogcGxheVtpXSArIGxhenksXFxuICAgICAgICBjb2xfdHlwZTogcGxheS5sZW5ndGggPiAyID8gJ3RleHRfMycgOiAndGV4dF8yJ1xcbiAgICB9KTtcXG59XFxuXFxuZm9yICh2YXIgYiA9IDA7IGIgPCAyOyBiKyspIHtcXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogJ2JpZ19ibGFua19ibG9jaydcXG59KVxcbn1cXG5cXG5sZXQgYXJyID0gcGRmYShodG1sLFxcXCJib2R5JiYjdmlkZW8tZGV0YWlscyYmLnZpZGVvZGV0YWlsXzJfc2VwYXJhdG9yfmRpdj5kaXYsMDoyXFxcIik7XFxuZm9yIChsZXQgaXQgb2YgYXJyKSB7XFxuICAgIGxldCB0ID0gcGRmaChpdCwgXFxcIlRleHRcXFwiKTtcXG4gICAgaWYgKCF0IHx8IHQgPT0gXFxcIlxcXCIpIHtcXG4gICAgICAgIGNvbnRpbnVlO1xcbiAgICB9XFxuICAgIGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogJ+KAnOKAnOKAneKAnTxtaWRkbGU+PGZvbnQgY29sb3I9IzAwOTlGRj4nK3QrJzwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgLy91cmw6IFxcXCJ0b2FzdDovL+eCueS6huS5n+ayoeeUqFxcXCIsXFxuICAgICAgICB1cmw6IE1ZX1VSTCArICQoJycpLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICB2YXIgdXJsID0gcmVxdWVzdChpbnB1dCkubWF0Y2goL2h0dHBzP1teXFxcXFxcXCJdK1xcXFwuKG0zdTh8bXA0KS8pWzBdXFxuICAgICAgICAgICAgICAgIHJldHVybiB1cmwgICAgICAgICBcXG4gICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XFxuICAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8v5LmI5pyJ6aKE6KeI6KeG6aKRXFxcIlxcbiAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICBjb2xfdHlwZTogXFxcInRleHRfMlxcXCJcXG4gICAgfSk7XFxufVxcblxcbnZhciB0YWJzID0gcGRmYShodG1sLCAnYm9keSYmI3ZpZGVvLWRldGFpbHMmJi52aWRlb2RldGFpbF8yX3NlcGFyYXRvcn5kaXYmJi52aWRlb2RldGFpbF8yX2ZpZWxkX25hbWUsMjo0Jyk7XFxudmFyIGNvbnRzID0gcGRmYShodG1sLCAnYm9keSYmI3ZpZGVvLWRldGFpbHMmJi52aWRlb2RldGFpbF8yX3NlcGFyYXRvcn5kaXY+ZGl2LDI6NCcpO1xcbmZvciAodmFyIGkgPSAwOyBpIDwgY29udHMubGVuZ3RoOyBpKyspIHtcXG4gICAgICB2YXIgbGlzdCA9IHBkZmEoY29udHNbaV0sICdib2R5JiZhJyk7IFxcbiAgICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAnPG1pZGRsZT48Zm9udCBjb2xvcj1jeWFuPicrcGRmaCh0YWJzW2ldLCAnVGV4dCcpKyc8L2ZvbnQ+PC9taWRkbGU+PGZvbnQgY29sb3I9eWVsbG93Puabvue7j+ayp+a1t+mavuS4uuawtO+8jOmZpOWNtOW3q+WxseS4jeaYr+S6keOAgjwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgdXJsOid0b2FzdDovL+eCueS6huS5n+ayoeeUqCcsXFxuICAgICAgICBjb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG4gICAgfSk7XFxuICBcXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykgeyAgICAgICBcXG4gICAgICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+KAnOKAnOKAneKAnTxtaWRkbGU+PGZvbnQgY29sb3I9I0ZGMDBGRj4nK3BkZmgobGlzdFtqXSwgJ2EmJlRleHQnKSsnPC9mb250PjwvbWlkZGxlPicsXFxuICAgICAgICAgICAgICAgIHVybDogcGQobGlzdFtqXSwgJ2EmJmhyZWYnKSsnJnBhZ2U9ZnlwYWdlQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJ5aVxcXCIpJyxcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJywgICAgICAgIFxcbiAgICAgICAgICAgICAgICAgICBleHRyYTp7XFxuICAgICAgICAgcGFnZVRpdGxlOiBwZGZoKGxpc3Rbal0sICdhJiZUZXh0JyksXFxuICAgICAgICAgICAgICAgICAgfSAgICBcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH1cXG4gICAgfVxcblxcbi8v56OB5Yqb5YaF5a65XFxudmFyIGxpc3QgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsICdib2R5JiYubWFnbmV0XzJfaXRlbScpOy8v5YiX6KGoXFxuZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPGI+PHNwYW4gc3R5bGU9XFxcImNvbG9yOiAjMWFhZDE5XFxcIj7wn6ey56OB5Yqb5Zyw5Z2AOiDlhbHmnIknICsgbGlzdC5sZW5ndGggKyAn5p2h57q/6Lev8J+Rhzwvc3Bhbj48L2I+JyxcXG4gICAgICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXG4gICAgICAgIGV4dHJhOntsaW5lVmlzaWJsZTpmYWxzZX1cXG4gICAgfSlcXG5saXN0LmZvckVhY2godmlkZW8gPT4ge1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IHBhcnNlRG9tRm9ySHRtbCh2aWRlbywgJy5tYWduZXRfMl9pdGVtX3RpdGxlJiZUZXh0JylcXG4gICAgICAgIC5yZXBsYWNlKC9cXFxcXy8sICcnKVxcbiAgICAgICAgLnJlcGxhY2UoJy5tcDQnLCAnJylcXG4gICAgICAgIC5yZXBsYWNlKCdNUDQnLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgnLmF2aScsICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKCdBVkknLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgnSkFWJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoL1xcXFxkK+WAi+aWh+S7ti8sICcnKVxcbiAgICAgICAgLnJlcGxhY2UoLywgXFxcXGQr5YCL5paH5Lu2LywgJycpXFxuICAgICAgICAucmVwbGFjZSgnSkFWJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoJ0hEJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoJzEwODBwJywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoJ0ZIRC0xMDgwUCcsICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKCcudG9ycmVudCcsICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKC8uKlxcXFwuQ09NLywgJycpXFxuICAgICAgICAucmVwbGFjZSgvW1xcXFx1NGUwMC1cXFxcdTlmYTVdKy9nLCBcXFwiXFxcIilcXG4gICAgICAgIC5yZXBsYWNlKC9bXFxcXHUzMDQwLVxcXFx1MzA5RlxcXFx1MzBBMC1cXFxcdTMwRkZcXFxcdTMxRjAtXFxcXHUzMUZGXSsvZywgXFxcIlxcXCIpXFxuICAgICAgICAucmVwbGFjZSgv44CQLirjgJEvZywgJycpXFxuICAgICAgICAucmVwbGFjZSgvLipAL2csICcnKVxcbiAgICAgICAgLnJlcGxhY2UoLywvZywgJycpXFxuICAgICAgICAucmVwbGFjZSgvXFxcXCgvZywgJycpIFxcbiAgICAgICAgLnJlcGxhY2UoL1xcXFwpL2csICcnKSBcXG4gICAgICAgIC5yZXBsYWNlKC9cXFxcXS9nLCAnJykgXFxuICAgICAgICAucmVwbGFjZSgvXFxcXFsvZywgJycpLFxcbiAgICAgICAgZGVzYzogcGFyc2VEb21Gb3JIdG1sKHZpZGVvLCAnLm1hZ25ldF8yX2l0ZW1fdGl0bGUsMSYmVGV4dCcpICsgJ1xcXFx0XFxcXHRcXFxcdPCfl5NcXFxcdCcgK3BhcnNlRG9tRm9ySHRtbCh2aWRlbywgJy5tYWduZXRfMl9pdGVtX3RpdGxlLDImJlRleHQnKSxcXG4gICAgICAgIHBpY191cmw6ICdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlhWE52TFRnNE5Ua3RNU0kvUGdvOElTMHRJRWRsYm1WeVlYUnZjam9nUVdSdlltVWdTV3hzZFhOMGNtRjBiM0lnTWpFdU1DNHdMQ0JUVmtjZ1JYaHdiM0owSUZCc2RXY3RTVzRnTGlCVFZrY2dWbVZ5YzJsdmJqb2dOaTR3TUNCQ2RXbHNaQ0F3S1NBZ0xTMCtDanh6ZG1jZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUlnZG1WeWMybHZiajBpTVM0eElpQnBaRDBpUTJGd1lWOHhJaUI0UFNJd2NIZ2lJSGs5SWpCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURVeE1pQTFNVElpSUhOMGVXeGxQU0psYm1GaWJHVXRZbUZqYTJkeWIzVnVaRHB1WlhjZ01DQXdJRFV4TWlBMU1USTdJaUI0Yld3NmMzQmhZMlU5SW5CeVpYTmxjblpsSWlCM2FXUjBhRDBpTlRFeUlpQm9aV2xuYUhROUlqVXhNaUkrQ2p4blBnb0pQSEJoZEdnZ1ptbHNiRDBpSTJabVkyTXdNQ0lnWkQwaVRUTXhOaTQyT1RJc01UazFMak13TW1NMExqSTFOeXcwTGpJMU55d3hNQzQzT0RNc05TNDJNalVzTVRZdU5URXhMRE11TVRkc01UUTRMalE1TXkwMk15NDJOR00wTGpVMk9DMHhMamsxTnl3M0xqZzNNaTAyTGpBM0xEZ3VPREUxTFRFd0xqazBPQ0FnSUdNd0xqa3pNaTAwTGpnNE9TMHdMall3TVMwNUxqa3lNaTAwTGpFeU1pMHhNeTQwTkRSc0xUTXhMamd5TFRNeExqZ3liRFV6TGpBek15MDFNeTR3TXpOak5TNHdPRFV0TlM0d09EY3NOUzQ0TlRJdE1UTXVNRFl6TERFdU9ESXlMVEU1TGpBeE55QWdJR010TkM0d01UY3ROUzQ0TWpNdE1URXVOekV6TFRndU1qRTBMVEU0TGpNME5DMDFMak0zTmt3ek5ESXVOVGc1TERZMExqZ3pNbU10TkM0MU5qZ3NNUzQ1TlRrdE55NDROelFzTmk0d055MDRMamd4TlN3eE1DNDVOU0FnSUdNdE1DNDVNelFzTkM0NE9Ea3NNQzQyTURFc09TNDVNaklzTkM0eE1qSXNNVE11TkRRMGJETXhMamd5TERNeExqZ3liQzAxTXk0d016TXNOVE11TURNelF6TXhNQzQ0T0Rnc01UYzVMamczTkN3ek1UQXVOelExTERFNE9TNHpOVFVzTXpFMkxqWTVNaXd4T1RVdU16QXllaUl2UGdvSlBIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ0lHUTlJazB5TURVdU5URXpMRE13TGpjeE5Xd3ROVE11TURNekxEVXpMakF6TTJ3NE5DNDROVE1zT0RRdU9EVXpiRFV6TGpBek15MDFNeTR3TXpOak5TNDROakV0TlM0NE5qTXNOUzQ0TmpFdE1UVXVNelVzTUMweU1TNHlNVE5zTFRZekxqWTBMVFl6TGpZMElDQWdRekl5TUM0NE5qTXNNalF1T0RVeUxESXhNUzR6TnpVc01qUXVPRFV5TERJd05TNDFNVE1zTXpBdU56RTFlaUl2UGdvSlBIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ0lHUTlJazAwT0RFdU1qZzFMRE13Tmk0ME9EWmpOUzQ0TmpNdE5TNDROak1zTlM0NE5qTXRNVFV1TXpVc01DMHlNUzR5TVROc0xUWXpMalkwTFRZekxqWTBZeTAxTGpnMk15MDFMamcyTXkweE5TNHpOUzAxTGpnMk15MHlNUzR5TVRNc01Hd3ROVE11TURNekxEVXpMakF6TXlBZ0lHdzROQzQ0TlRNc09EUXVPRFV6VERRNE1TNHlPRFVzTXpBMkxqUTRObm9pTHo0S0NUeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlDQmtQU0pOTXpNeUxqYzVNaXcwTlRRdU9UYzViRGMwTGpJME5pMDNOQzR5TkRkc0xUZzBMamcxTXkwNE5DNDROVE5zTFRjMExqSTBOaXczTkM0eU5EZGpMVEk1TGpJMExESTVMakkwTFRjMkxqZ3lOaXd5T1M0eU5DMHhNRFl1TURZMkxEQWdJQ0J6TFRJNUxqSTBMVGMyTGpneU5pd3dMVEV3Tmk0d05qWnNOelF1TWpRMkxUYzBMakkwTjJ3dE9EUXVPRFV6TFRnMExqZzFNMHcxTnk0d01pd3hOemt1TWpBNFl5MDNOaTR3TWpjc056WXVNREkzTFRjMkxqQXlOeXd4T1RrdU56UXlMREFzTWpjMUxqYzNNU0FnSUVNeE16TXVNRFE0TERVek1TNHdNRFlzTWpVMkxqYzJOU3cxTXpFdU1EQTJMRE16TWk0M09USXNORFUwTGprM09Yb2lMejRLUEM5blBnb0tDZ29LQ2dvS0Nnb0tDZ29LQ2dvOEwzTjJaejRLJyxcXG4gICAgICAgIHVybDogcGFyc2VEb20odmlkZW8sICdhJiZocmVmJyksLy/pk77mjqVcXG4gICAgICAgIGNvbF90eXBlOiAnYXZhdGFyJywvL+e7hOS7tuagt+W8j1xcbiAgICB9KTtcXG59KVxcblxcbi8v55u45YWz5b2x54mHXFxudHJ5e1xcbnZhciBhcGkgPSBwYXJzZURvbUZvckh0bWwoaHRtbCxcXFwiaGVhZCYmbGlua1tyZWw9Y2Fub25pY2FsXSYmaHJlZlxcXCIpLnJlcGxhY2UoXFxcInZpZGVvP2lkXFxcIixcXFwiYXBpOTgvdmlkZW8vZ2V0UmVsYXRlZFZpZGVvP2NhdGVnb3J5PXpoOiZhY3Rvcj16aDomdmlkZW9JZFxcXCIpXFxudmFyIGxpc3QgPSBKU09OLnBhcnNlKGZldGNoKGFwaSkpLnJlc3VsdC5kb2NzXFxuXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICc8c3BhbiBzdHlsZT1cXFwiY29sb3I6ICNGRjAwRkY7XFxcIj7nm7jpl5zlvbHniYc8L3NwYW4+JyxcXG4gICAgY29sX3R5cGU6ICdyaWNoX3RleHQnXFxufSk7XFxuXFxubGlzdC5mb3JFYWNoKGl0ZW0gPT4ge1xcbnZhciB1cmxsID0gXFxcImhpa2VyOi8vZW1wdHkjI1xcXCIgKyBNWV9IT01FICsgJy92aWRlbz9pZD0nICsgaXRlbS52aWRlb0lkO1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6ICBpdGVtLnRpdGxlLFxcbiAgICAgICAgZGVzYzogaXRlbS5zb3VyY2VEYXRlLnNsaWNlKDAsMTApLFxcbiAgICAgICAgaW1nOiBpdGVtLnByZXZpZXcsXFxuICAgICAgICB1cmw6IHVybGwgKyAnQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJoaWtlcjovL3BhZ2UvZXJcXFwiKScsXFxuICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICBwYWdlVGl0bGU6IGl0ZW0udGl0bGUsXFxuICAgICAgICB9XFxuICB9KTtcXG59KSAgIFxcbn0gY2F0Y2ggKGVycikge1xcbn07XFxuXFxuc2V0UmVzdWx0KGQpXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkuoznuqco5aSHKVwiLFwicGF0aFwiOlwiZXIxXCIsXCJydWxlXCI6XCJqczpcXG52YXIgZCA9IFtdO1xcbnZhciBodG1sID0gZ2V0UmVzQ29kZSgpO1xcbnZhciBqc29uID0gSlNPTi5wYXJzZShwZGZoKGh0bWwsICdib2R5JiYjX19ORVhUX0RBVEFfXyYmSHRtbCcpKTtcXG52YXIgdGl0bGUgPSBqc29uLnByb3BzLmluaXRpYWxTdGF0ZS52aWRlby5kYXRhLnRpdGxlX3poO1xcbnZhciBmYW5oYW8gPSBqc29uLnByb3BzLmluaXRpYWxTdGF0ZS52aWRlby5kYXRhLmNvZGU7XFxudmFyIHByZXZpZXdWaWRlbyA9IGpzb24ucHJvcHMuaW5pdGlhbFN0YXRlLnZpZGVvLmRhdGEucHJldmlld1ZpZGVvO1xcbnZhciBkZXNjID0ganNvbi5wcm9wcy5pbml0aWFsU3RhdGUudmlkZW8uZGF0YS5kZXNjcmlwdGlvbjtcXG4vL+agh+mimFxcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPG1pZGRsZT48Zm9udCBjb2xvcj0jZTUwOTE1PicgKyB0aXRsZSArICc8L2ZvbnQ+PC9taWRkbGU+JyxcXG4gICAgZGVzYzogZGVzYyxcXG4gICAgdXJsOiBNWV9VUkwsXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgZXh0cmE6IHtcXG4gICAgICAgIGxpbmVWaXNpYmxlOiBmYWxzZVxcbiAgICB9XFxufSlcXG5cXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogJ2JpZ19ibGFua19ibG9jaydcXG59KVxcblxcbmQucHVzaCh7XFxuICAgIGltZzoganNvbi5wcm9wcy5pbml0aWFsU3RhdGUudmlkZW8uZGF0YS5wcmV2aWV3LFxcbiAgICB1cmw6IHByZXZpZXdWaWRlbyxcXG4gICAgY29sX3R5cGU6ICdwaWNfMV9mdWxsJyxcXG4gICAgZXh0cmE6IHtcXG4gICAgICAgIGxpbmVWaXNpYmxlOiBmYWxzZVxcbiAgICB9XFxufSlcXG5kLnB1c2goe1xcbiAgICBjb2xfdHlwZTogJ2JpZ19ibGFua19ibG9jaydcXG59KVxcbnZhciBwbGF5ID0ganNvbi5wcm9wcy5pbml0aWFsU3RhdGUudmlkZW8uZGF0YS5zcmNzO1xcbmZvciAobGV0IGkgaW4gcGxheSkge1xcbiAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IFxcXCLmkq3mlL7lmahcXFwiICsgW2ldLFxcbiAgICAgICAgdXJsOiBwbGF5W2ldLFxcbiAgICAgICAgY29sX3R5cGU6IHBsYXkubGVuZ3RoID4gMiA/ICd0ZXh0XzMnIDogJ3RleHRfMidcXG4gICAgfSk7XFxufVxcbmQucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXFxuICAgIH0pXFxudmFyIGFjdG9ycyA9IGpzb24ucHJvcHMuaW5pdGlhbFN0YXRlLnZpZGVvLmRhdGEuYWN0b3JzO1xcbmQucHVzaCh7XFxuICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPG1pZGRsZT48Zm9udCBjb2xvcj0jZTUwOTE1PuWls+S8mDwvZm9udD48L21pZGRsZT4nLFxcbiAgdXJsOiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCIsXFxuICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxuICAgICAgICAgICAgfSk7XFxuZm9yIChsZXQgaSBpbiBhY3RvcnMpIHtcXG4gICAgaWYgKGFjdG9yc1tpXS5pbmRleE9mKCd6aDonKSA+IC0xKSB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBhY3RvcnNbaV0ucmVwbGFjZSgnemg6JywgJycpLFxcbiAgICAgICAgICAgIHVybDogTVlfSE9NRSArICcvYWxsP2FjdHJlc3M9JyArIGFjdG9yc1tpXS5yZXBsYWNlKCd6aDonLCAnJykgKyAnJnBhZ2U9ZnlwYWdlQHJ1bGU9anM6JC5yZXF1aXJlKFxcXCJ5aVxcXCIpJyxcXG4gICAgICAgICAgICBjb2xfdHlwZTogYWN0b3JzLmxlbmd0aCA+IDIgPyAndGV4dF8zJyA6ICd0ZXh0XzInLFxcbiAgICAgICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgICAgIHBhZ2VUaXRsZTogYWN0b3JzW2ldLnJlcGxhY2UoJ3poOicsICcnKSxcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KTtcXG5cXHQgIFxcbiAgICB9XFxufVxcbmQucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXFxuICAgIH0pXFxuXFxudmFyIHRhZ3MgPSBqc29uLnByb3BzLmluaXRpYWxTdGF0ZS52aWRlby5kYXRhLnRhZ3M7XFxuZC5wdXNoKHtcXG4gICAgICAgdGl0bGU6ICfigJzigJzigJ3igJ08bWlkZGxlPjxmb250IGNvbG9yPSNlNTA5MTU+5qCH562+PC9mb250PjwvbWlkZGxlPicsXFxuICB1cmw6IFxcXCJoaWtlcjovL2VtcHR5XFxcIixcXG4gICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXG4gICAgICAgICAgICB9KTtcXG5mb3IgKGxldCBpIGluIHRhZ3MpIHtcXG4gICAgaWYgKHRhZ3NbaV0uaW5kZXhPZignemg6JykgPiAtMSkge1xcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogdGFnc1tpXS5yZXBsYWNlKCd6aDonLCAnJyksXFxuICAgICAgICAgICAgdXJsOiBNWV9IT01FICsgJy9hbGw/Z2VucmU9JyArIHRhZ3NbaV0ucmVwbGFjZSgnemg6JywgJycpICsgJyZwYWdlPWZ5cGFnZUBydWxlPWpzOiQucmVxdWlyZShcXFwieWlcXFwiKScsXFxuICAgICAgICAgICAgY29sX3R5cGU6IHRhZ3MubGVuZ3RoID4gMiA/ICd0ZXh0XzMnIDogJ3RleHRfMicsXFxuICAgICAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICAgICAgcGFnZVRpdGxlOiB0YWdzW2ldLnJlcGxhY2UoJ3poOicsICcnKSxcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KTtcXG5cXHQgIFxcbiAgICB9XFxufVxcbmQucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXFxuICAgIH0pXFxudmFyIG1hZ25ldHMgPSBqc29uLnByb3BzLmluaXRpYWxTdGF0ZS52aWRlby5kYXRhLm1hZ25ldHNcXG5pZiAobWFnbmV0cyAhPT0gJycpIHtcXG4gIFxcdGQucHVzaCh7XFxuICAgICAgICB0aXRsZTogJ+KAnOKAnOKAneKAnTxtaWRkbGU+PGZvbnQgY29sb3I9I2U1MDkxNT7no4Hlipvpk77mjqXjgJAnKyBtYWduZXRzLmxlbmd0aCArICfjgJHmnaE8L2ZvbnQ+PC9taWRkbGU+JyxcXG4gICAgICAgIHVybDogXFxcImhpa2VyOi8vZW1wdHlcXFwiLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXG4gICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgbGluZVZpc2libGU6IGZhbHNlXFxuICAgICAgICB9XFxuICAgIH0pO1xcbiAgZm9yKGxldCBpIGluIG1hZ25ldHMpe1xcblxcdCAgICBkLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IG1hZ25ldHNbaV0udGl0bGUsXFxuICAgICAgICBkZXNjOiBtYWduZXRzW2ldLmZpbGVTaXplICsgJ1xcXFx0XFxcXHRcXFxcdPCfl5NcXFxcdCcgKyBtYWduZXRzW2ldLmxhc3RVcGRhdGUsXFxuICAgICAgICBwaWNfdXJsOiAnaGlrZXI6Ly9pbWFnZXMvaWNfYm9va21hcmtfZm9sZGVyJyxcXG4gICAgICAgIHVybDogbWFnbmV0c1tpXS5zcmMsLy/pk77mjqVcXG4gICAgICAgIGNvbF90eXBlOiAnYXZhdGFyJywvL+e7hOS7tuagt+W8j1xcbiAgICB9KTtcXHRcXG4gIH1cXG59XFxuZC5wdXNoKHtcXG4gICAgICAgIGNvbF90eXBlOiAnbGluZV9ibGFuaydcXG4gICAgfSlcXG4vL+mihOiniOWbvlxcbnZhciBpbWdBcnIgPSBqc29uLnByb3BzLmluaXRpYWxTdGF0ZS52aWRlby5kYXRhLnByZXZpZXdJbWFnZXM7XFxuaWYgKGltZ0FyciAhPT0gJycpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCc4oCc4oCd4oCdPG1pZGRsZT48Zm9udCBjb2xvcj0jZTUwOTE1PumihOiniOWbvjwvZm9udD48L21pZGRsZT4nLFxcbiAgICAgICAgdXJsOiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCIsXFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcbiAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICBsaW5lVmlzaWJsZTogZmFsc2VcXG4gICAgICAgIH1cXG4gICAgfSlcXG4gICAgaW1nQXJyLm1hcChpdGVtID0+IHtcXG4gICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgaW1nOiBpdGVtLFxcbiAgICAgICAgICAgIHVybDogaXRlbSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3BpY18zJyxcXG4gICAgICAgIH0pO1xcbiAgICB9KVxcbn1cXG5zZXRSZXN1bHQoZClcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuino+aekFwiLFwicGF0aFwiOlwibGF6eVwiLFwicnVsZVwiOlwidmFyIGxhenkgPSAkKCcnKS5sYXp5UnVsZSgoKSA9PiB7ICAgIFxcbiAgIGlmKC9lbWJlZHJpc2UvLnRlc3QoaW5wdXQpKXtcXG4gICAgICAgIHZhciB1cmwgPSBwZGZoKHJlcXVlc3QoaW5wdXQpLFxcXCJzb3VyY2UmJnNyY1xcXCIpO1xcbiAgICAgICAgcmV0dXJuIFxcXCJ2aWRlbzovL1xcXCIgKyB1cmwgKyBcXFwiO2dldDtVVEYtODt7T3JpZ2luQGh0dHBzOi8vZW1iZWRyaXNlLmNvbSYmJiZSZWZlcmVyQGh0dHBzOi8vZW1iZWRyaXNlLmNvbS99XFxcIlxcbn1lbHNlIGlmKC9tbXN3MDF8amF2Z2FuYXxuZXRmbGF2bnMxLy50ZXN0KGlucHV0KSl7XFxuICAgIHZhciB1cmwgPSByZXF1ZXN0KGlucHV0KS5tYXRjaCgvZmlsZTpcXFxcXFxcIihbXlxcXFxcXFwiXSspXFxcXFxcXCIvKVsxXVxcbiAgICByZXR1cm4gdXJsXFxufWVsc2UgaWYoL2VtdHVyYm92aWQvLnRlc3QoaW5wdXQpKXtcXG4gICAgdmFyIHVybCA9IHJlcXVlc3QoaW5wdXQpLm1hdGNoKC9odHRwcz86XFxcXC9cXFxcL1teO1xcXFxcXFwiXStcXFxcLihtM3U4fG1wNCkvKVswXVxcbiAgICByZXR1cm4gdXJsICsgXFxcIjtnZXQ7VVRGLTg7e09yaWdpbkBcXFwiICsgdXJsICsgXFxcIiYmJiZSZWZlcmVyQFxcXCIgKyB1cmwgKyBcXFwifVxcXCJcXG59ZWxzZSBpZigvbW1mbHxuZXRmbGF2bnMyfGRvb29vZC8udGVzdChpbnB1dCkpe1xcbiAgICByZXR1cm4gaW5wdXRcXG59ZWxzZXtcXG4gICAgcmV0dXJuIFxcXCJ2aWRlbzovL1xcXCIgKyBpbnB1dFxcbn1cXG59KTtcIn1dIiwiaWNvbiI6Imh0dHBzOi8vaW1nLnZpbnVhLmNuL2ltYWdlcy96VUFlWS5wbmciLCJwcm94eSI6IiJ9
Add Comment
Please, Sign In to add comment