Advertisement
xiaomianao666

邀您一起看:久九影视-““玉蒲团””现代版

Nov 19th, 2021
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥久九影视-““玉蒲团””现代版@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJcIixcImxpc3RUb0NsZWFyQXNzb2NpYXRlZEZLXCI6W10sXCJsaXN0VG9DbGVhclNlbGZGS1wiOltdLFwicGFnZUxpc3RcIjpbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkpTT07mjqXlj6PmlbDmja5cIixcInBhdGhcIjpcIlJlc0NvZGVcIixcInJ1bGVcIjpcIntcXG4gICAgXFxcImRhdGFcXFwiOltcXG4gICAgICAgIHtcXG4gICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIkFQUOW9seinhlxcXCIsXFxuICAgICAgICBcXFwibGlzdFxcXCI6W1xcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCIwMDflvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy4wMDd0cy5jYy9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/pm7bpm7bkuIPlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIjU1NeeUteW9sVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly93N3R2LmNvbS9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi81NTXnlLXlvbEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIjUwNjDlvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL2FwcC5saW56aGl5dWFuLnh5ei94Z2FwcC5waHAvdjEvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vNTA2MOW9semZoi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwiOTEzReW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly93d3cuOTEzZS5uZXQvYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vOTEzReW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwiQkTnlLXlvbFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5iZGR5c2Yub3JnL2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0JE55S15b2xLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJDT0tFTVZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL2Nva2Vtdi5tZS94Z2FwcC5waHAvdjEvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vQ09LRU1WLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmkq3mlL7lkYBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5ib2Zhbmd5YS5jb20veGdhcHAucGhwL3YxL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aSreaUvuWRgC5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi55WF6KeG5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2FwcC5yZWJvanUubmV0L2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eVheinhuW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6L+q6L+q5b2x6ZmiXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2RkODguaWN1OjYwODAvYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6L+q6L+q5b2x6ZmiLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlmIDlk6nlmIDlk6lcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL2RpbGlrdHYueHl6L3hnYXBwLnBocC92MS9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lmIDlk6nlmIDlk6kucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuavkuiIjOeUteW9sVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vd3d3LmR1c2hlNTIwLmNvbS9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mr5LoiIznlLXlvbEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWkp+W4iOWFhFxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vaG91Lmx1L2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wkp+W4iOWFhOW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5q615Y+L5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9sYi41Mjc3cy5jb20vYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5q615Y+L5b2x6KeGwqkucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIueTnOearlRWXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy5kaWppYXhpYS5jb20veGdhcHAucGhwL3YxL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eTnOearlRWLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmtbfog4blvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8veGYxMjMuY2MvYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5rW36IOG5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmtbfnu7XlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwMS55dXpob3V5cy5jb20vYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5rW357u15b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLkuqzlub/oiKpcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5qaW5nZ3VhbmdoYW5nLmNvbS9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kuqzlub/oiKrlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS5neWQiOinhumikVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vcHR5Z3guY29tL2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S5neWQiOinhumikS5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5rGf5rmW5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2FwcC5qaGR5dy52aXA6MTIzNC9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/msZ/muZblvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS5heS5neW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vYXBpLjU4cXhrLmNuL2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S5heS5neW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6JOd5p6c5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy5sYW5ndW90di5jb20veGdhcHAucGhwL3YxL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+iTneaenOW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi55Cz55CF5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cudTIzYy5jb20vYXBpLnBocC9hcHAvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v55Cz55CF5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmnoHkuZDpmIFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3ZpcC53dXFjbXMuY29tL2FwaS5waHAvYXBwL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aegeS5kOmYgS5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6JCM6JuL6JuLXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2FwcC5tZW5nZGFuZGFuLmNvbS94Z2FwcC5waHAvdjEvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6JCM6JuL6JuLLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmsKLop4bpopFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vaDEwODBwLmNvbS9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/msKLop4bpopEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaAneWPpOW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vYXBwLnNpZ3V5eS5jb20veGdhcHAucGhwL3YxL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aAneWPpOW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi57OW5p6c5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cudGd5cy50di9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ns5bmnpzlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaxoeWmluWKqOa8q1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vd3d3Lnd5eWRtLmNvbS9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/msaHlppbliqjmvKsucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWwj+aYk+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8veHkuaXJvcC5jbi9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/mmJPlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuW9seinhuW3peWculxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vd3d3LmlrNC5jYy9hcGkucGhwL2FwcC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lvbHop4blt6XlnLoucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIui/veWJp+i+vuS6ulxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly92aXBtdi50di94Z2FwcC5waHAvdjEvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6L+95Ymn6L6+5Lq6LnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9XFxuICAgICAgICBdXFxuICAgICAgICB9LFxcbiAgICAgICAge1xcbiAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwiQVBQ5b2x6KeGKHYxKVxcXCIsXFxuICAgICAgICBcXFwibGlzdFxcXCI6W1xcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCI1NTVUVlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9neGhzaHl5LmNvbS9hcGkucGhwL2djdHZhcGkudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vNTU1VFYucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIjgw5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy5jY2M4Lm5ldC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uLzgw5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCI4MEvlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovLzEwODBwLnR2L2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vODBL5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJDSlTlvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5janQ1MjEuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vQ0pU5b2x6ZmiLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJGVUZVXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9mdWZ1Lml4aGR1dGEuY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi9GVUZV5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJIR+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9jcy5oZ3l4LnZpcC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0hH5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJWSVDlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3LnNwLm9vby9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL1ZJUOW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi54ix5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuaHpsZmYuY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/niLHlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIueZveiPnOi/veWJp1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9sYmFwcC5odWltYW9qaWEuY29tOjMwMTE5L21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v55m96I+c6L+95YmnLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLnlYXkvJjop4bnlYxcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLjUxOGltby5jbi9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eVheS8mOinhueVjC5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5Yid5b+D5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuMThtdi5jbHViL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Yid5b+D5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlpJrlpJrlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3NwLjlhZW5nLmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WkmuWkmuW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5aSn5rW35b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovLzExOS4yOS42My4xMzcvYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpKfmtbflvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWkp+eGiui/veWJp1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly93d3cuZHh6ajg4LmNvbS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wkp+eGiui/veWJpy5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5q615Y+L5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9pc2hhbmd3by50b3AvYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mrrXlj4vlvbHop4YxLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLonbbkvJflvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLmRpZXp6Lm5ldC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+idtuS8l+W9semZoi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6aOe5o235b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuZmo2MDgwLmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+mjnuaNt+W9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5L2b57O76L+95YmnXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2ZveGkua2swNi50b3AvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kvZvns7vov73liacucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWFrOS4u+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9tbS50Y3NkY2hpbmEuY29tOjYwOTYvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lhazkuLvlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIui+ieWTpeW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vYXBwLnkuaGd5dWxlOC5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ovonlk6XlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIum7hOays+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9pLmxlZHU4LmNuL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6buE5rKz5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlk4jlsLzop4bpopFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3LnZpZGVvdmlwcy50b3AvYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lk4jlsLzop4bpopEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaxh+iBmuW6k1RWXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuenpjbG92ZTY2Ni5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/msYfogZrlupNUVi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5ZOI55qu5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly8wNzQ1eXkuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5ZOI55qu5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmoLjmoYPlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLmhldGFveXMudmlwL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5qC45qGD5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLnuqLlhZTop4bpopFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5ob3RvNC5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nuqLlhZTop4bpopEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuebkuWtkOW9semZolxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9pLm5paGFvaGV6aS5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nm5LlrZDlvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIueti+aWl+S6kVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vdHYuamluZGNsb3VkLmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eti+aWl+S6keW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5p6B566A5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly90di5hcmVvbmUudG9wL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5p6B566A5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlv6vmkq3lkKdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3LmhkOC5wdy9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+W/q+aSreWQpy5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5p6X6LC35b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3hnLmxnenk4LmNuOjg2L21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5p6X6LC35b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmh5LnjKvnlLXlvbFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vMDA3Lmxhbm1hb2R5LmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aHkueMq+eUteW9sS5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6JOd6bK46KeG55WMXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9hcHBzLnZkNS5jYy9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+iTnemyuOinhueVjC5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi57u/566t5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy42OXR5LmNjL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v57u/566t5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLkuZDnnIvop4bpopFcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3LmxrYW4udmlwL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LmQ55yL6KeG6aKRLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlhrfop4ZUVlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vbGVuLnR2L2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Ya36KeGVFYucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuacqOeZveW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly92YXBwLjIzYXQuY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mnKjnmb3lvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIum6u+eTnOinhumikVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9teWFwcC5tYWd1YXlzLmNjL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6bq755Oc6KeG6aKRLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLpurvohb5UVlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vd3d3Lm1hdGVuZ3R2LnRvcC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+m6u+iFvlRWLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLllrXkuZDlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vbWlhb2xleXMuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Za15LmQ5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLllrXlvbHlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3Lm14bWJrLnh5ei9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WWteW9seW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5pyo5a2Q55S15b2xXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy5tdXppZHkudG9wL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5pyo5a2Q55S15b2xLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLpurvlrZDov73liadcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLjJtYXouY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/purvlrZDov73liacucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWNl+W6nOi/veWJp1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9hcHAueGt2aWRlby5kZXNpZ24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ljZflupzov73liacucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaaluWFieW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vYXBwLmJsMjEwLmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aaluWFieW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi576O5Ymn6JmrXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9tZWlqdWNob25nLmNvbS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+e+juWJp+iZqy5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5YaF5ra15b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3YubmhkeXlzLmNuL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5YaF5ra15b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmn6DmqqzlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3R2LjEzbm0uY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5p+g5qqs5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlpYfotqPlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL2FwcC5xaXF1Lm1lL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5aWH6Laj5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLpqpHlo6vlvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL2FwcC5xaXNoaS54eXovYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/pqpHlo6vlvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuelnumprOW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly94aW4uampzdmlwLmNjL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v56We6ams5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLop4blkKzmmJ/nkINcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vemp5YXBpanp5cy5zaHlud2xrai5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/op4blkKzmmJ/nkIMucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaJi+aMh+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9zenlzMzM1NS5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/miYvmjIflvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIua3mOWJp+ekvlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9hcHAuc2h1aGFpOTkuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5reY5Ymn56S+LnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlpKnlpKnlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLmF0MDA4LmNuL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5aSp5aSp5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlpKnlpKnlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy50aWFudGlhbnlzOC5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpKnlpKnlvbHop4YxLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlm6LlpJXlvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vMTE5LjI5LjEyMS40OC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WbouWkleW9semZoi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5YWU5a2Q56qdXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2NqLmh1aW1hb2ppYS5jb206MTIzNDUvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lhZTlrZDnqp0ucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuaIkeeIseeUteW9sVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9hcHAuNWltdi5jYy9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aIkeeIseeUteW9sS5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5oiR54ix6Lef5YmnXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy41Mmdlbi5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/miJHniLHot5/liacucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWQvueIseW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9hcHAuNWxwLm5ldC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WQvueIseW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6JyX54mb55yL6bitXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL21vdmllLndva2V3dS5jbi9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+icl+eJm+eci+m4rS5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5b2x6ZiF6ZiBXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovLzIyMS4yMzYuMTguMTI6NjY1L2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5b2x6ZiF6ZiBLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlv5jlv6fmnpxUVlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vYXguanguY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lv5jlv6fmnpxUVi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5bCP5Z+O5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuMjY5dy5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/ln47lvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWFiOmUi+inhumikVxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vNTh4dHYubmV0L2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5YWI6ZSL6KeG6aKRLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlsI/mnoHlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBpLnhpYW95c3cuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5bCP5p6B5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmmJ/nqbrlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8veGlvbmdrb25nd3guY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mmJ/nqbrlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWwj+icu+ick1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly8za2V0di5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/onLvonJPop4bpopEucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS8kemXsuW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly90di43OHR2LmNjL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LyR6Zey5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmmJ/lvbHnm7jpmo9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBwLnJvb3R0aHJlZS50b3AvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mmJ/lvbHnm7jpmo8ucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWwj+aYk+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly94eS5pcm9wLmNuL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5bCP5piT5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLnm4rovr7lvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vbHVvYnUueXNzNjA4MC5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nm4rovr7lvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWFg+iKs+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly95ZnlzMTEyMi5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lhYPoirPlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIumbqOaenOW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly95Z2FwcC54Y3lzNjMuY29tL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6Zuo5p6c5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLpopblrrblvbHpmaJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vemx5LnhqcXh6LnRvcC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+miluWutuW9semZoi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5LyY5YWo5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9hcHAueG15dW4ueHl6L2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LyY5YWo5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlvbHop4bng63liadcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vbGIuMjZ5cy5jbi9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+W9seinhueDreWJpy5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5p2o5qGD5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3l0eXMxMTIyLmNvbS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+adqOahg+W9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5pyI6Imy5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovLzY5dHkuY2MvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mnIjoibLlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS8mOeCq+W9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly95dW50di5peXh0di5jbi9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S8mOeCq+W9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5LyY5LyY5b2x6ZmiXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3hzLjc4dHYuY2MvbW9nYWlfYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kvJjkvJjlvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIua4lOa4lOW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly94Yy40NWguY24vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/muJTmuJTlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS4gOWPqumxvFxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly93d3cuYmQtNGsubWwvYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kuIDlj6rpsbzlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIui/veeVqueMq1xcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9kbS40OTZkeS5jbjo4OC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i/veeVqueMqy5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6L+95Ymn5ZCnXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3podWlqdWJhLnZpcC9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i/veWJp+WQp+W9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5a6F55S35b2x6ZmiXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3d3dy5zZXh5eS50b3AvYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lroXnlLflvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWuheeUt+W9semZolxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHBzOi8vd3d3LnpueXk2NjYudG9wL2FwaS5waHAvdjEudm9kXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5a6F55S35b2x6ZmiLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOkFQUOW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLkvqbmjqLlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8veXMuaHVhbmdndWF5LmNvbS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S+puaOouW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6L+95b2x5YWUXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2xvbmd3Lnh5ejo5MS9hcGkucGhwL3YxLnZvZFxcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i/veW9seWFlC5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpBUFDlvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi54yq54yq5b2x6ZmiXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2FwcC4yemR5eS5jb20vYXBpLnBocC92MS52b2RcXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/njKrnjKrlvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6QVBQ5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIF1cXG4gICAgICAgIH0sXFxuICAgICAgICB7XFxuICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCJUVuW9seinhlxcXCIsXFxuICAgICAgICBcXFwibGlzdFxcXCI6W1xcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCIy5Y+35biBXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3Bob2ViZS5jZi9hcGkucGhwL2lwdHYvdm9kL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uLzLlj7fluIHlvbHpmaIucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6VFblvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5bCY5qKTVFZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vMTM5LjE1NS4xNzcuMjEzL2FwaS5waHAvaXB0di92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5bCY5qKTVFYucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6VFblvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi56i76I2J5Lq6VFZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vd3d3LnpoYWlrYW55cy54eXovYXBpLnBocC9pcHR2MS92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v56i76I2J5Lq6VFYucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6VFblvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5ZiA5ZOp5ZiA5ZOpXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9hcGkuZGlsaWt0di54eXovYXBpLnBocC9DaGVuZ2NoZW5nL3ZvZC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lmIDlk6nlmIDlk6lUVi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpUVuW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlpKfluIjlhYRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vZHN4dHYudHYuY2kvYXBpLnBocC9kc3gvdm9kL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wkp+W4iOWFhOW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpUVuW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLpu5HpvpnlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vdmlwLmppLWRpbmctaGUuc2l0ZS9hcGkucGhwL2lwdHYvdm9kL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+m7kem+meW9seinhi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpUVuW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLmoLjmoYPlvbHop4ZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vdHYuaGV0YW95cy52aXAvYXBpLnBocC9pcHR2L3ZvZC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/moLjmoYPlvbHop4YucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6VFblvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi6IGa5aSa5b2x6KeGXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL2pkeXkuY2h4am9uLmNuL2FwaS5waHAvaXB0di92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6IGa5aSa5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS5heS5heW9semZolxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9sbS4wODE4dHYuY29tL212L2FwaS5waHAvQ2hlbmdjaGVuZy92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LmF5LmF5b2x6ZmiLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIua1geaYn+mbqFxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly9zeXkubHh5eXkueHl6L212L2FwaS5waHAvQ2hlbmdjaGVuZy92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5rWB5pif6Zuo5b2x6ZmiLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuWGt+aciFRWXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly90di41MjF4NS5jb20vYXBpLnBocC9pcHR2L3ZvZC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJpbWdcXFwiOlxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lhrfmnIhUVi5wbmdcXFwiLFxcbiAgICAgICAgICAgIFxcXCJtdXJsXFxcIjpcXFwicTpUVuW9seinhlxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIHtcXG4gICAgICAgICAgICBcXFwidGl0bGVcXFwiOlxcXCLlj4zlrZDmmJ9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vdHYuZGl5b3VpLmNjL2FwaS5waHAvaXB0di92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Y+M5a2Q5pifLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuS6keaSreW9seinhlxcXCIsXFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcImh0dHA6Ly95dW5iby5ieGluLnR2L2FwaS5waHAvaXB0di92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LqR5pKt5b2x6KeGLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAge1xcbiAgICAgICAgICAgIFxcXCJ0aXRsZVxcXCI6XFxcIuW9semFt1RWXFxcIixcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjpcXFwiaHR0cDovL3p5LnB4dW4udG9wL2FwaS5waHAvaXB0di92b2QvXFxcIixcXG4gICAgICAgICAgICBcXFwiaW1nXFxcIjpcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5b2x6YW3VFYucG5nXFxcIixcXG4gICAgICAgICAgICBcXFwibXVybFxcXCI6XFxcInE6VFblvbHop4ZcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICB7XFxuICAgICAgICAgICAgXFxcInRpdGxlXFxcIjpcXFwi5bCP5p6BVFZcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCJodHRwOi8vYXBpLjhkOHEuY29tL21tdi9hcGkucGhwL0NoZW5nY2hlbmcvdm9kL1xcXCIsXFxuICAgICAgICAgICAgXFxcImltZ1xcXCI6XFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wwj+aegVRWLnBuZ1xcXCIsXFxuICAgICAgICAgICAgXFxcIm11cmxcXFwiOlxcXCJxOlRW5b2x6KeGXFxcIlxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIF1cXG4gICAgICAgIH1cXG4gICAgXVxcbiAgICB9XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLmkJzntKJcIixcInBhdGhcIjpcInNlYXJcIixcInJ1bGVcIjpcInZhciByZXMgPSB7fTtcXG52YXIgaXRlbXMgPSBbXTtcXG4vL+iuvue9ruaQnOe0oue6v+eoi1xcbnZhciBzc21vZGUgPSBKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL2ZpbGVzL3J1bGVzL3h5cS9hcHBtc2V0Lmpzb24nLCB7fSkpLnNzbW9kZTtcXG52YXIga2V5ID0gTVlfVVJMLnNwbGl0KCckJCQnKVsxXTtcXG4vL3NldEVycm9yKGxlKTtcXG5pZiAoc3Ntb2RlID09ICcwJykge1xcbiAgICBzZXRQYWdlVGl0bGUoa2V5ICsgJyDnmoTmkJzntKLnu5PmnpwnKVxcbn07XFxudmFyIGh0bWwgPSBKU09OLnBhcnNlKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS9SZXNDb2RlJywge30pKS5ydWxlKTtcXG52YXIgZGxpc3QgPSBodG1sLmRhdGE7XFxuXFxuZnVuY3Rpb24gcmFuZG9tU29ydDMoYXJyKSB7XFxuICAgIGFyci5zb3J0KGZ1bmN0aW9uKGEsIGIpIHtcXG4gICAgICAgIHJldHVybiBNYXRoLnJhbmRvbSgpIC0gMC41O1xcbiAgICB9KTtcXG4gICAgcmV0dXJuIGFycjtcXG59XFxuXFxuLy/miZPkubHpobrluo9cXG52YXIgcmFuZG9tID0gdHJ1ZTtcXG5cXG5mb3IgKHZhciBpID0gMDsgaSA8IGRsaXN0Lmxlbmd0aDsgaSsrKSB7XFxuICAgIHZhciBsaXN0ID0gZGxpc3RbaV0ubGlzdDtcXG4gICAgdmFyIHR5dGl0ID0gZGxpc3RbaV0udGl0bGVcXG4gICAgaWYgKHJhbmRvbSkge1xcbiAgICAgICAgbGV0IGsgPSBnZXRWYXIoTVlfUlVMRS50aXRsZSArIFxcXCItXFxcIiArIHR5dGl0LCBcXFwiXFxcIik7XFxuICAgICAgICBpZiAoayA9PSBcXFwiXFxcIikge1xcbiAgICAgICAgICAgIGxpc3QgPSByYW5kb21Tb3J0MyhsaXN0KVxcbiAgICAgICAgICAgIHB1dFZhcihNWV9SVUxFLnRpdGxlICsgXFxcIi1cXFwiICsgdHl0aXQsIEpTT04uc3RyaW5naWZ5KGxpc3QpKVxcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICBsaXN0ID0gSlNPTi5wYXJzZShrKVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIGlmIChzc21vZGUgPT0gJzAnKSB7XFxuICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogTVlfVFlQRSA9PSBcXFwiaG9tZVxcXCIgPyBkbGlzdFtpXS50aXRsZSArIFxcXCIg6YCJ5oup5LiA5Liq6aG555uu5p+l55yLIOKAnOKAnFxcXCIgKyBrZXkgKyBcXFwi4oCd4oCdIOeahOaQnOe0oue7k+aenFxcXCIgOiBkbGlzdFtpXS50aXRsZSArIFxcXCIg6YCJ5oup5LiA5Liq6aG555uu5p+l55yLIFxcXCIgKyBrZXkgKyBcXFwiIOeahOaQnOe0oue7k+aenFxcXCIsXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxuICAgICAgICB9KTtcXG5cXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykge1xcbiAgICAgICAgICAgIHZhciBsaW5rID0gbGlzdFtqXS51cmw7XFxuXFxuICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHl0aXQpKSB7XFxuICAgICAgICAgICAgICAgIGlmIChsaW5rLmluZGV4T2YoJ2FwaS5waHAvYXBwLycpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgaG11cmwgPSBsaW5rICsgJ3NlYXJjaD9wZz1meXBhZ2UmdGV4dD0nICsga2V5ICsgJyZ0b2tlbj0nO1xcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGxpbmsuaW5kZXhPZigneGdhcHAucGhwL3YxLycpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgaG11cmwgPSBsaW5rICsgJ3NlYXJjaD9wZz1meXBhZ2UmdGV4dD0nICsga2V5O1xcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICc/cGFnZT1meXBhZ2UmbGltaXQ9MTAmd2Q9JyArIGtleTtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5dGl0KSkge1xcbiAgICAgICAgICAgICAgICBpZiAoLzE5anh8MjkzeXN8emhhaWthbnlzfGppXFxcXC1kaW5nXFxcXC1oZXxwaG9lYmV8eXVuYm9cXFxcLmJ4aW58bGFucmVudGt8aGV0YW95c3w4ZDhxfGx4eXl5fHB4dW58MTM5XFxcXC4xNTUvLnRlc3QobGluaykpIHtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmem09JyArIGtleSArICcmcGFnZT1meXBhZ2UnO1xcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICc/YWM9bGlzdCZ3ZD0nICsga2V5ICsgJyZwYWdlPWZ5cGFnZSc7XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9XFxuICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxuICAgICAgICAgICAgICAgIHRpdGxlOiBsaXN0W2pdLnRpdGxlLFxcbiAgICAgICAgICAgICAgICB1cmw6ICQoJ2hpa2VyOi8vZW1wdHkjeCMnICsgaG11cmwgKyAnI3gjJyArIGxpbmsgKyAnI3gjJyArIHR5dGl0ICsgJyN4IycgKyBrZXkgKyAnI3gjJykucnVsZSgoKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICBldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS9zZWFyZXJqJywge30pKS5ydWxlKTtcXG4gICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8zJ1xcbiAgICAgICAgICAgICAgICAvL2xpbms6bGluayxcXG4gICAgICAgICAgICAgICAgLy90eXBlOiBpXFxuICAgICAgICAgICAgfSk7XFxuXFxuICAgICAgICB9IC8vZm9yIGpcXG5cXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBNWV9UWVBFID09IFxcXCJob21lXFxcIiA/IFxcXCLngrnlh7vmn6XnnIsgXFxcIit0eXRpdCtcXFwiIOWIhuexuyDigJzigJxcXFwiICsga2V5ICsgXFxcIuKAneKAnSDnmoTmkJzntKLnu5PmnpxcXFwiIDogXFxcIueCueWHu+afpeeciyBcXFwiK3R5dGl0K1xcXCIg5YiG57G7IFxcXCIgKyBrZXkgKyBcXFwiIOeahOaQnOe0oue7k+aenFxcXCIsXFxuICAgICAgICAgICAgdXJsOiAkKCdoaWtlcjovL2VtcHR5JCQkJyArIGtleSArICckJCRmeXBhZ2UkJCQnKS5ydWxlKChsaXN0LCB0eXRpdCkgPT4ge1xcbiAgICAgICAgICAgICAgICB2YXIgcmVzID0ge307XFxuICAgICAgICAgICAgICAgIHZhciBpdGVtcyA9IFtdO1xcbiAgICAgICAgICAgICAgICAvL+WPluaQnOe0oue6v+eoi+iuvue9rlxcbiAgICAgICAgICAgICAgICB2YXIgc3N4YyA9IEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vZmlsZXMvcnVsZXMveHlxL2FwcG1zZXQuanNvbicsIHt9KSkuc3Njb3VudDtcXG4gICAgICAgICAgICAgICAgLy/orr7nva7otoXml7bml7bpl7TvvIzotorlsI/otorlv6vvvIzljZXkvY3mr6vnp5JcXG4gICAgICAgICAgICAgICAgLy92YXIgdGltZW91ID0gNTAwMDtcXG4gICAgICAgICAgICAgICAgdmFyIGtleSA9IE1ZX1VSTC5zcGxpdCgnJCQkJylbMV07XFxuICAgICAgICAgICAgICAgIHZhciBudW0gPSBNWV9VUkwuc3BsaXQoJyQkJCcpWzJdO1xcbiAgICAgICAgICAgICAgICB2YXIgbGUgPSBwYXJzZUludChudW0gKiBzc3hjKTtcXG4gICAgICAgICAgICAgICAgdmFyIERhdGEgPSBbXTtcXG4gICAgICAgICAgICAgICAgdmFyIFRpdCA9IFtdO1xcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBqID0gbGUgLSBzc3hjOyBqIDwgbGU7IGorKykge1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKGogPCBsaXN0Lmxlbmd0aCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaW5rID0gbGlzdFtqXS51cmw7XFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHl0aXQpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaW5rLmluZGV4T2YoJ2FwaS5waHAvYXBwLycpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaG11cmwgPSBsaW5rICsgJ3NlYXJjaD9wZz0xJnRleHQ9JyArIGtleSArICcmdG9rZW49JztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChsaW5rLmluZGV4T2YoJ3hnYXBwLnBocC92MS8nKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICdzZWFyY2g/cGc9MSZ0ZXh0PScgKyBrZXk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaG11cmwgPSBsaW5rICsgJz9wYWdlPTEmbGltaXQ9MTAmd2Q9JyArIGtleTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5dGl0KSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoLzE5anh8MjkzeXN8emhhaWthbnlzfGppXFxcXC1kaW5nXFxcXC1oZXxwaG9lYmV8eXVuYm9cXFxcLmJ4aW58bGFucmVudGt8aGV0YW95c3w4ZDhxfGx4eXl5fHB4dW58MTM5XFxcXC4xNTUvLnRlc3QobGluaykpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmem09JyArIGtleSArICcmcGFnZT0xJztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmd2Q9JyArIGtleSArICcmcGFnZT0xJztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAvL0RhdGEucHVzaCh7dXJsOiBobXVybCxvcHRpb25zOiB7aGVhZGVyczoge1xcXCJVc2VyLUFnZW50XFxcIjogXFxcIkRhcnQvMi4xMyAoZGFydDppbylcXFwifSx0aW1lb3V0OiB0aW1lb3V9fSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgRGF0YS5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBobXVybCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJVc2VyLUFnZW50XFxcIjogXFxcIkRhcnQvMi4xMyAoZGFydDppbylcXFwiXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcXG4gICAgICAgICAgICAgICAgICAgICAgICBUaXQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdDogbGlzdFtqXS50aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluazogbGluayxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwbm06IHR5dGl0XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgICAgICAgICB9IC8vaWZcXG4gICAgICAgICAgICAgICAgfSAvL2ZvciBqXFxuXFxuICAgICAgICAgICAgICAgIC8vLS0t5Luj56CB5YiG55WM57q/LS0tLSBcXG4gICAgICAgICAgICAgICAgaWYgKERhdGEgIT0gJycpIHtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBiaHRtbCA9IGJhdGNoRmV0Y2goRGF0YSk7XFxuICAgICAgICAgICAgICAgICAgICAvL3dyaXRlRmlsZShcXFwiaGlrZXI6Ly9maWxlcy9ydWxlcy94eXEvYXBwRXJyb3IuanNvblxcXCIsSlNPTi5zdHJpbmdpZnkoYmh0bWwpKTtcXG5cXG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGsgPSAwOyBrIDwgYmh0bWwubGVuZ3RoOyBrKyspIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IGJodG1sW2tdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vbG9nKGh0bWwpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWwgPSBodG1sLnN1YnN0cmluZygwLCAyKSA9PSAnXFxcXHJcXFxcbicgPyBodG1sLnJlcGxhY2UoJ1xcXFxyXFxcXG4nLCAnJykgOiBodG1sO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC9idHdhZi8udGVzdChodG1sKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sID0gZmV0Y2goRGF0YVtrXS51cmwgKyAnJmJ0d2FmJyArIGh0bWwubWF0Y2goL2J0d2FmKC4qPylcXFxcXFxcIi8pWzFdLCB7fSk7XFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChodG1sID09IFxcXCJcXFwiIHx8IGh0bWwgPT0gbnVsbCB8fCBodG1sLnN1YnN0cmluZygwLCA1KSA9PSAnZXJyb3InIHx8ICFodG1sLnN0YXJ0c1dpdGgoJ3snKSkge1xcblxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBUaXRba10udGl0ICsgJyAnICsgJ+acquaQnOe0ouWIsO+8jOeCueWHu+iuv+mXruWOn+e9kemhtScsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IERhdGFba10udXJsICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChodG1sLmxlbmd0aCA8IDgwKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFRpdFtrXS50aXQgKyAnICcgKyAn6L+U5Zue5pWw5o2u5LiN5a6M5pW077yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogRGF0YVtrXS51cmwgKyBgQGxhenlSdWxlPS5qczppbnB1dC5zcGxpdCgnOycpWzBdYCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IEpTT04ucGFyc2UoaHRtbCk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vbG9nKGh0bWwpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdHlwZXQgPSBUaXRba10udHlwbm07XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ZG9taW4gPSBUaXRba10ubGluaztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGh0bWwubGlzdCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxpc3QgPSBodG1sLmxpc3Q7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhLmxpc3QpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGlzdCA9IGh0bWwuZGF0YTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gW107XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDwgMSkge1xcblxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFRpdFtrXS50aXQgKyAnICcgKyAn5YiX6KGo5bCP5LqOMe+8jOaXoOazleWxleekuu+8jOeCueWHu+iuv+mXruWOn+e9kemhtScsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBEYXRhW2tdLnVybCArIGBAbGF6eVJ1bGU9LmpzOmlucHV0LnNwbGl0KCc7JylbMF1gLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnRpdGxlO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS5waWM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWQgPSBsaXN0W2ldLm5leHRsaW5rO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcmVtID0gbGlzdFtpXS5zdGF0ZTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9BUFDlvbHop4YvLnRlc3QodHlwZXQpKSB7XFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0ZG9taW4uaW5kZXhPZignYXBpLnBocC9hcHAvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IHRkb21pbiArICd2aWRlb19kZXRhaWw/aWQ9JyArIGxpc3RbaV0udm9kX2lkICsgJyZ0b2tlbj0nO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRkb21pbi5pbmRleE9mKCd4Z2FwcC5waHAvdjEvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IHRkb21pbiArICd2aWRlb19kZXRhaWw/aWQ9JyArIGxpc3RbaV0udm9kX2lkO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtpXS52b2RfbmFtZTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnZvZF9waWM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdmlkID0gdGRvbWluICsgJy9kZXRhaWw/dm9kX2lkPScgKyBsaXN0W2ldLnZvZF9pZCArICcmdG9rZW49JztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy92YXIgY29uPWxpc3RbaV0udHlwZS50eXBlX2RlcztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcblxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS5zdGF0ZTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyh2aWQpO1xcblxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogTVlfVFlQRSA9PSBcXFwiaG9tZVxcXCIgPyB0aXRsZS5yZXBsYWNlKGtleSwgJ+KAnOKAnCcgKyBrZXkgKyAn4oCd4oCdJykgKyAnXFxcXG4nICsgcmVtIDogdGl0bGUgKyByZW0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpY191cmw6IHBpYyArICdAUmVmZXJlcj0nLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICQodmlkICsgJztnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX0nKS5ydWxlKCh0eXBldCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlcyA9IHt9O1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZW1zID0gW107XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IEpTT04ucGFyc2UoZ2V0UmVzQ29kZSgpKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiAnMjU1JiZmbG9hdCcsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJ1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbXl1cmwgPSBNWV9VUkwubWF0Y2goLyhbXFxcXFNdKj86XFxcXC9cXFxcL1tcXFxcU10qPylcXFxcLy8pWzFdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHlwZXQpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvYXBwbW92bGlzdCcsIHt9KSkucnVsZSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9UVuW9seinhi8udGVzdCh0eXBldCkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS90dm1vdmxpc3QnLCB7fSkpLnJ1bGUpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcblxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEgPSBpdGVtcztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEhvbWVSZXN1bHQocmVzKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgdHlwZXQpLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2NvbnRlbnQ6IHJlbSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogdHlwZXQgKyAnID0+ICcgKyBUaXRba10udGl0LFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljJ1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAvL2ZvciBpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gLy9pZiBsaXN0Lmxlbmd0aFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH0gLy9mb3IgayBiaHRtbC5sZW5ndGhcXG4gICAgICAgICAgICAgICAgfVxcblxcbiAgICAgICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcbiAgICAgICAgICAgICAgICBzZXRIb21lUmVzdWx0KHJlcyk7XFxuICAgICAgICAgICAgfSwgbGlzdCwgdHl0aXQpLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbiAgICAgICAgfSk7XFxuXFxuICAgIH1cXG5cXG59IC8vZm9yIGlcXG5cXG5cXG5yZXMuZGF0YSA9IGl0ZW1zO1xcbnNldEhvbWVSZXN1bHQocmVzKTtcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkFQUOWIhuexu+WIl+ihqFwiLFwicGF0aFwiOlwiYXBwbGlzdGRhdGFcIixcInJ1bGVcIjpcImlmIChodG1sLmxpc3QpIHtcXG4gICAgdmFyIGxpc3QgPSBodG1sLmxpc3Q7XFxufSBlbHNlIGlmIChodG1sLmRhdGEmJmh0bWwuZGF0YS5saXN0KSB7XFxuICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxufSBlbHNlIHtcXG4gICAgdmFyIGxpc3QgPSBodG1sLmRhdGE7XFxufVxcbi8vbG9nKGxpc3QpO1xcbmZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcbiAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnZvZF9uYW1lO1xcbiAgICB2YXIgaW1nID0gbGlzdFtpXS52b2RfcGljO1xcbiAgICB2YXIgdXJsID0gbGlzdFtpXS52b2RfaWQ7XFxuICAgIHZhciBkZXNjID0gbGlzdFtpXS52b2RfcmVtYXJrcztcXG4gICAgaWYoaHRtbC5saXN0KXtcXG4gICAgICAgIC8vbG9nKCdodG1sLmxpc3QnKTtcXG4gICAgICAgIHZhciBsaW5rID0gbXVybCArICd2aWRlb19kZXRhaWw/aWQ9JyArIHVybCArICcmdG9rZW49O2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxuICAgIH1lbHNlIGlmIChodG1sLmRhdGEmJmh0bWwuZGF0YS5saXN0KSB7XFxuICAgICAgICAvL2xvZygnaHRtbC5kYXRhLmxpc3QnKTtcXG4gICAgICAgIHZhciBsaW5rID0gbXVybCArICcvZGV0YWlsP3ZvZF9pZD0nICsgdXJsICsgJyZyZWxfbGltaXQ9MTA7Z2V0O3V0Zi04O3tVc2VyLUFnZW50QERhcnQvMi4xMyAoZGFydDppbyl9JztcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIC8vbG9nKCdlbHNlJyk7XFxuICAgICAgICB2YXIgbGluayA9IG11cmwgKyAndmlkZW9fZGV0YWlsP2lkPScgKyB1cmwgKyAnJnRva2VuPTtnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX0nO1xcbiAgICB9XFxuICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IHRpdGxlLFxcbiAgICAgICAgcGljX3VybDogaW1nICsgJ0BSZWZlcmVyPScsXFxuICAgICAgICB1cmw6ICQobGluaykucnVsZSgoKSA9PiB7XFxuICAgICAgICAgICAgdmFyIHJlcyA9IHt9O1xcbiAgICAgICAgICAgIHZhciBpdGVtcyA9IFtdO1xcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJycsXFxuICAgICAgICAgICAgICAgIGRlc2M6ICcyNTUmJmZsb2F0JyxcXG4gICAgICAgICAgICAgICAgdXJsOiAnJyxcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZSdcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgICAgICByZWZyZXNoWDVXZWJWaWV3KCcnKTtcXG4gICAgICAgICAgICB2YXIgaHRtbCA9IEpTT04ucGFyc2UoZ2V0UmVzQ29kZSgpKTtcXG4gICAgICAgICAgICB2YXIgbXl1cmwgPSBNWV9VUkwubWF0Y2goLyhbXFxcXFNdKj86XFxcXC9cXFxcL1tcXFxcU10qPylcXFxcLy8pWzFdO1xcbiAgICAgICAgICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL2FwcG1vdmxpc3QnLCB7fSkpLnJ1bGUpO1xcbiAgICAgICAgICAgIHJlcy5kYXRhID0gaXRlbXM7XFxuICAgICAgICAgICAgc2V0SG9tZVJlc3VsdChyZXMpO1xcbiAgICAgICAgfSksXFxuICAgICAgICBkZXNjOiBkZXNjLFxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8zX21hcnF1ZWUnXFxuICAgIH0pO1xcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIlRW5YiX6KGo6Kej5p6QXCIsXCJwYXRoXCI6XCJ0dmxpc3RkYXRhXCIsXCJydWxlXCI6XCJ2YXIgbGlzdCA9IGh0bWwuZGF0YTtcXG5mb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXG4gICAgdmFyIHRpdGxlID0gbGlzdFtpXS50aXRsZTtcXG4gICAgdmFyIGltZyA9IGxpc3RbaV0ucGljO1xcbiAgICB2YXIgdXJsID0gbGlzdFtpXS5uZXh0bGluaztcXG4gICAgdmFyIGRlc2MgPSBsaXN0W2ldLnN0YXRlO1xcbiAgICB1cmwgPSB1cmwuc3RhcnRzV2l0aCgnaHR0cCcpID8gdXJsIDogbXVybCArICc/YWM9ZGV0YWlsJmlkcz0nICsgdXJsO1xcbiAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiB0aXRsZSxcXG4gICAgICAgIHBpY191cmw6IGltZyArICdAUmVmZXJlcj0nLFxcbiAgICAgICAgdXJsOiAkKHVybCkucnVsZSgoKSA9PiB7XFxuICAgICAgICAgICAgdmFyIHJlcyA9IHt9O1xcbiAgICAgICAgICAgIHZhciBpdGVtcyA9IFtdO1xcbiAgICAgICAgICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShnZXRSZXNDb2RlKCkpO1xcbiAgICAgICAgICAgIHZhciBteXVybCA9IE1ZX1VSTC5tYXRjaCgvKFtcXFxcU10qPzpcXFxcL1xcXFwvW1xcXFxTXSo/KVxcXFwvLylbMV07XFxuICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxuICAgICAgICAgICAgICAgIHRpdGxlOiAnJyxcXG4gICAgICAgICAgICAgICAgZGVzYzogJzI1NSYmZmxvYXQnLFxcbiAgICAgICAgICAgICAgICB1cmw6ICcnLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJ1xcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgICAgIHJlZnJlc2hYNVdlYlZpZXcoJycpO1xcbiAgICAgICAgICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL3R2bW92bGlzdCcsIHt9KSkucnVsZSk7XFxuICAgICAgICAgICAgcmVzLmRhdGEgPSBpdGVtcztcXG4gICAgICAgICAgICBzZXRIb21lUmVzdWx0KHJlcyk7XFxuICAgICAgICB9KSxcXG4gICAgICAgIGRlc2M6IGRlc2MsXFxuICAgICAgICBjb2xfdHlwZTogJ21vdmllXzNfbWFycXVlZSdcXG4gICAgfSk7XFxufVwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQVBQ566A5LuL5LiO6YCJ6ZuGXCIsXCJwYXRoXCI6XCJhcHBtb3ZsaXN0XCIsXCJydWxlXCI6XCJpZiAoaHRtbC5kYXRhLnZvZF91cmxfd2l0aF9wbGF5ZXIpIHtcXG4gICAgdmFyIGNvbnRzID0gaHRtbC5kYXRhLnZvZF91cmxfd2l0aF9wbGF5ZXI7XFxuICAgIGlmIChjb250cy5sZW5ndGggPCAxKSB7XFxuICAgICAgICBjb250cyA9IGh0bWwuZGF0YS52b2RfcGxheV91cmwuc3BsaXQoJyQkJCcpO1xcbiAgICAgICAgdmFyIHRhYnMgPSBodG1sLmRhdGEudm9kX3BsYXlfZnJvbS5zcGxpdCgnJCQkJyk7XFxuICAgIH1cXG59IGVsc2UgaWYgKGh0bWwuZGF0YS52b2RfaW5mbyAmJiBodG1sLmRhdGEudm9kX2luZm8udm9kX3VybF93aXRoX3BsYXllcikge1xcbiAgICB2YXIgY29udHMgPSBodG1sLmRhdGEudm9kX2luZm8udm9kX3VybF93aXRoX3BsYXllcjtcXG4gICAgaWYgKGNvbnRzLmxlbmd0aCA8IDEpIHtcXG4gICAgICAgIGNvbnRzID0gaHRtbC5kYXRhLnZvZF9pbmZvLnZvZF9wbGF5X3VybC5zcGxpdCgnJCQkJyk7XFxuICAgICAgICB2YXIgdGFicyA9IGh0bWwuZGF0YS52b2RfaW5mby52b2RfcGxheV9mcm9tLnNwbGl0KCckJCQnKTtcXG4gICAgfVxcbn0gZWxzZSB7XFxuICAgIHZhciBjb250cyA9IGh0bWwuZGF0YS52b2RfcGxheV9saXN0O1xcbiAgICBpZiAoY29udHMubGVuZ3RoIDwgMSkge1xcbiAgICAgICAgY29udHMgPSBodG1sLmRhdGEudm9kX3BsYXlfdXJsLnNwbGl0KCckJCQnKTtcXG4gICAgICAgIHZhciB0YWJzID0gaHRtbC5kYXRhLnZvZF9wbGF5X2Zyb20uc3BsaXQoJyQkJCcpO1xcbiAgICB9XFxufVxcblxcbi8vbG9nKGNvbnRzKTtcXG5cXG52YXIgdGh1bWIgPSBodG1sLmRhdGEudm9kX2luZm8gPyBodG1sLmRhdGEudm9kX2luZm8udm9kX3BpYyA6IGh0bWwuZGF0YS52b2RfcGljO1xcbml0ZW1zLnB1c2goe1xcbiAgICB0aXRsZTogJ+WJp+aDheeugOS7i++8micsXFxuICAgIGRlc2M6IGh0bWwuZGF0YS52b2RfaW5mbyA/IGh0bWwuZGF0YS52b2RfaW5mby52b2RfY29udGVudCA6IGh0bWwuZGF0YS52b2RfY29udGVudCxcXG4gICAgcGljX3VybDogdGh1bWIsXFxuICAgIHVybDogdGh1bWIsXFxuICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWMnXFxufSk7XFxuXFxuZm9yICh2YXIgaSA9IDA7IGkgPCBjb250cy5sZW5ndGg7IGkrKykge1xcbiAgICBpZiAoY29udHNbaV0udXJsKSB7XFxuICAgICAgICB2YXIgbGlzdCA9IGNvbnRzW2ldLnVybC5zcGxpdChcXFwiI1xcXCIpO1xcbiAgICB9IGVsc2Uge1xcbiAgICAgICAgdmFyIGxpc3QgPSBjb250c1tpXS5zcGxpdChcXFwiI1xcXCIpO1xcbiAgICB9XFxuICAgIC8vc2V0RXJyb3IobGlzdC5sZW5ndGgpO1xcbiAgICBpZiAoaHRtbC5kYXRhLnZvZF91cmxfd2l0aF9wbGF5ZXIpIHtcXG4gICAgICAgIHZhciBwdGFiID0gY29udHNbaV0uY29kZSA/IGNvbnRzW2ldLmNvZGUgOiB0YWJzW2ldO1xcbiAgICB9IGVsc2UgaWYgKGh0bWwuZGF0YS52b2RfaW5mbyAmJiBodG1sLmRhdGEudm9kX2luZm8udm9kX3VybF93aXRoX3BsYXllcikge1xcbiAgICAgICAgdmFyIHB0YWIgPSBjb250c1tpXS5jb2RlID8gY29udHNbaV0uY29kZSA6IHRhYnNbaV07XFxuICAgIH0gZWxzZSB7XFxuICAgICAgICB2YXIgcHRhYiA9IGNvbnRzW2ldLmZyb20gPyBjb250c1tpXS5mcm9tIDogdGFic1tpXTtcXG4gICAgfVxcbiAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBwdGFiICsgJyDwn5SXJyArIFtpICsgMV0gKyAnLycgKyBbY29udHMubGVuZ3RoXSxcXG4gICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbiAgICB9KTtcXG4gICAgZm9yICh2YXIgaiA9IDA7IGogPCBsaXN0Lmxlbmd0aDsgaisrKSB7XFxuICAgICAgICB0cnkge1xcbiAgICAgICAgICAgIGlmIChodG1sLmRhdGEudm9kX3VybF93aXRoX3BsYXllcikge1xcbiAgICAgICAgICAgICAgICB2YXIgamllayA9IGNvbnRzW2ldLnBhcnNlX2FwaTtcXG4gICAgICAgICAgICAgICAgaWYgKGppZWsgIT0gJycgJiYgamllayAhPSBudWxsKSB7XFxuICAgICAgICAgICAgICAgICAgICBpZiAoamllay5zdWJzdHJpbmcoMCwgNCkgPT0gJ2h0dHAnKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgamllayA9IGppZWs7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGppZWsuc3Vic3RyaW5nKDAsIDIpID09ICdcXFxcL1xcXFwvJykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGppZWsgPSAnaHR0cHM6JyArIGppZWs7XFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgICAgICAgdmFyIGxpbmsgPSBqaWVrICsgbGlzdFtqXS5zcGxpdChcXFwiJFxcXCIpWzFdO1xcbiAgICAgICAgICAgICAgICBpZiAoL1xcXFwubTN1OHxcXFxcLm1wNHxvYmpcXFxcL3Rvcy8udGVzdChsaW5rKSAmJiAvaHR0cC8udGVzdChsaW5rKSkge1xcbiAgICAgICAgICAgICAgICAgICAgbGluayA9IGxpc3Rbal0uc3BsaXQoXFxcIiRcXFwiKVsxXTtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhLnZvZF9pbmZvICYmIGh0bWwuZGF0YS52b2RfaW5mby52b2RfdXJsX3dpdGhfcGxheWVyKSB7XFxuICAgICAgICAgICAgICAgIHZhciBqaWVrID0gY29udHNbaV0ucGFyc2VfYXBpO1xcbiAgICAgICAgICAgICAgICBpZiAoamllayAhPSAnJyAmJiBqaWVrICE9IG51bGwpIHtcXG4gICAgICAgICAgICAgICAgICAgIGlmIChqaWVrLnN1YnN0cmluZygwLCA0KSA9PSAnaHR0cCcpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBqaWVrID0gamllaztcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoamllay5zdWJzdHJpbmcoMCwgMikgPT0gJ1xcXFwvXFxcXC8nKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczonICsgamllaztcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvY29rZW12Ly50ZXN0KG15dXJsKSAmJiAvY29rZXFpZXx4aW58OTBtbS8udGVzdChwdGFiKSkge1xcbiAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczovL3BsYXllci45MG1tLm1lL3BsYXkucGhwP3VybD0nO1xcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIHZhciBsaW5rID0gamllayArIGxpc3Rbal0uc3BsaXQoXFxcIiRcXFwiKVsxXTtcXG4gICAgICAgICAgICAgICAgaWYgKC9cXFxcLm0zdTh8XFxcXC5tcDR8b2JqXFxcXC90b3MvLnRlc3QobGluaykgJiYgL2h0dHAvLnRlc3QobGluaykpIHtcXG4gICAgICAgICAgICAgICAgICAgIGxpbmsgPSBsaXN0W2pdLnNwbGl0KFxcXCIkXFxcIilbMV07XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICBpZiAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UyICYmIChjb250c1tpXS5wbGF5ZXJfaW5mby5wYXJzZTIpLmluZGV4T2YoXFxcIj1cXFwiKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIGppZWsgPSAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UyKS5tYXRjaCgvLio/dXJsPXwuKj92PXwuKj92aWQ9LylbMF0ucmVwbGFjZShcXFwiLi5cXFwiLCBcXFwiLlxcXCIpLnJlcGxhY2UoJ2pzb25icycsICcnKTtcXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjb250c1tpXS5wbGF5ZXJfaW5mby5wYXJzZSAmJiAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UpLmluZGV4T2YoXFxcIj1cXFwiKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIGppZWsgPSAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UpLm1hdGNoKC8uKj91cmw9fC4qP3Y9fC4qP3ZpZD0vKVswXS5yZXBsYWNlKFxcXCIuLlxcXCIsIFxcXCIuXFxcIik7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgamllayA9IFxcXCJcXFwiO1xcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIC8vc2V0RXJyb3Ioamllayk7XFxuICAgICAgICAgICAgICAgIGlmIChqaWVrICE9ICcnICYmIGppZWsgIT0gbnVsbCkge1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKGppZWsuc3Vic3RyaW5nKDAsIDQpID09ICdodHRwJykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGppZWsgPSBqaWVrO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqaWVrLnN1YnN0cmluZygwLCAyKSA9PSAnXFxcXC9cXFxcLycpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBqaWVrID0gJ2h0dHBzOicgKyBqaWVrO1xcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIHZhciBsaW5rID0gamllayArIGxpc3Rbal0uc3BsaXQoXFxcIiRcXFwiKVsxXTtcXG4gICAgICAgICAgICAgICAgLy9sb2cobGluayk7XFxuICAgICAgICAgICAgICAgIGlmICgvXFxcXC5tM3U4fFxcXFwubXA0fG9ialxcXFwvdG9zLy50ZXN0KGxpc3Rbal0uc3BsaXQoXFxcIiRcXFwiKVsxXSkpIHtcXG4gICAgICAgICAgICAgICAgICAgIGxpbmsgPSBsaXN0W2pdLnNwbGl0KFxcXCIkXFxcIilbMV07XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9XFxuICAgICAgICB9IGNhdGNoIChlKSB7XFxuICAgICAgICAgICAgbGluayA9IGxpc3Rbal0uc3BsaXQoXFxcIiRcXFwiKVsxXTtcXG4gICAgICAgIH1cXG4gICAgICAgIC8vbG9nKGxpbmspO1xcbiAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtqXS5zcGxpdChcXFwiJFxcXCIpWzBdO1xcbiAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDw9IDQpIHtcXG4gICAgICAgICAgICB2YXIgY2x0ID0gJ3RleHRfMic7XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIHZhciBjbHQgPSBpc05hTih0aXRsZSkgPyAnZmxleF9idXR0b24nIDogJ3RleHRfNSdcXG4gICAgICAgIH07XFxuICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxuICAgICAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKHB0YWIsIGxpbmssIG15dXJsKSA9PiB7XFxuICAgICAgICAgICAgICAgIHZhciBzcmN1cmwgPSBsaW5rO1xcbiAgICAgICAgICAgICAgICAvL2xvZyhzcmN1cmwpO1xcbiAgICAgICAgICAgICAgICAvL+WKqOaAgeino+aekOS7o+eggeW8gOWni1xcbiAgICAgICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICAgICAgLy/lpITnkIbmjIflrprop4bpopHkuI7nur/ot69cXG4gICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXC5tM3U4fFxcXFwubXA0fG9ialxcXFwvdG9zLy50ZXN0KHNyY3VybCkgJiYgL2h0dHAvLnRlc3Qoc3JjdXJsKSAmJiAhL1xcXFwuaHRtbC8udGVzdChzcmN1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC9cXFxcPS8udGVzdChzcmN1cmwpID8gc3JjdXJsLnNwbGl0KCc9JylbMV0gOiBzcmN1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzcmN1cmwuaW5kZXhPZihcXFwiL3NoYXJlL1xcXCIpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxpbmsgPSBzcmN1cmwuc3BsaXQoXFxcIi9zaGFyZVxcXCIpWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZmMgPSBmZXRjaChzcmN1cmwsIHt9KS5yZXBsYWNlKFxcXCJ2YXIgcHVybFxcXCIsIFxcXCJ2YXIgbWFpblxcXCIpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmMuaW5kZXhPZihcXFwibWFpblxcXCIpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWF0ID0gZmMubWF0Y2goL3ZhciBtYWluLio/Oy8pWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChtYXQpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHBsYXkgPSAobWFpbi5pbmRleE9mKFxcXCJodHRwXFxcIikgIT0gLTEgPyBtYWluIDogbGluayArIG1haW4pO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG1haW4gPSBmYy5tYXRjaCgvdXJsOi4qP1tcXFxcJ1xcXFxcXFwiXSguKj8pW1xcXFwnXFxcXFxcXCJdLylbMV07XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGxheSA9IChtYWluLmluZGV4T2YoXFxcImh0dHBcXFwiKSAhPSAtMSA/IG1haW4gOiBsaW5rICsgbWFpbilcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBsYXk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3g1V2ViVmlldzovLycgKyAoc3JjdXJsKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocHRhYiA9PSAncmVucmVubWknKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KCdodHRwczovL2NhY2hlMS5qaGR5dy52aXA6ODA5MS9ycm1pLnBocD91cmw9JyArIHNyY3VybC5zcGxpdCgndXJsPScpWzFdKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyhodG1sKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3g1UGxheTovLycgKyBKU09OLnBhcnNlKGh0bWwpLnVybDtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocHRhYiA9PSAnZnFmaWxtJykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaHR0cHM6Ly93d3cuamhkeXcudmlwL2ppZXhpL2ZxLnBocD91cmw9JyArIHNyY3VybC5zcGxpdCgndXJsPScpWzFdICsgJyZuZXh0PSc7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHB0YWIgPT0gJ3Jyc3AnKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdodHRwczovL3d3dy5qaGR5dy52aXAvamlleGkvcnIucGhwP3VybD0nICsgc3JjdXJsLnNwbGl0KCd1cmw9JylbMV0gKyAnJm5leHQ9JztcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL2poeXVuXFxcXC5waHAvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcmV0dXJuICd4NVdlYlZpZXc6Ly8nK3NyY3VybC5yZXBsYWNlKCdodHRwOi8vc3ZpcC5qaHl1bi5qeC5jbjoxMjM0L2poeXVuLnBocD91cmw9JywgJ2h0dHBzOi8vYXBpLmpoZHl3LnZpcC8/dXJsPScpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBqaGxpbiA9IHNyY3VybC5yZXBsYWNlKCdodHRwOi8vc3ZpcC5qaHl1bi5qeC5jbjoxMjM0L2poeXVuLnBocD91cmw9JywgJ2h0dHBzOi8vYXBpLmpoZHl3LnZpcC8/dXJsPScpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZURvbUZvckh0bWwocmVxdWVzdChqaGxpbiksICcjdmlkZW8mJnNvdXJjZSYmc3JjJyk7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHB0YWIgPT0gJ2FsaXp5Jykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gZmV0Y2goJ2h0dHBzOi8vZm91YmluLmNvbS9qaWV4aS5waHA/dXJsPScgKyBzcmN1cmwuc3BsaXQoJ3VybD0nKVsxXSwge30pLm1hdGNoKC9cXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiKC4qPylcXFxcXFxcIi8pWzFdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwdXJsO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvOTgzdmlwLy50ZXN0KHNyY3VybCkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShmZXRjaChzcmN1cmwsIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcIlVzZXItQWdlbnRcXFwiOiBNT0JJTEVfVUFcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3Q6IGZhbHNlLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoSGVhZGVyczogdHJ1ZVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKS5oZWFkZXJzLmxvY2F0aW9uWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgveFxcXFwtblxcXFwuY2N8bmhkejY2Ni8udGVzdChzcmN1cmwpICYmIC9cXFxcLmh0bWx8YmlsaWJpbGkvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSk7XFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAvL+WkhOeQhuaMh+WumuinhumikeWSjOe6v+i3r+e7k+adn1xcbiAgICAgICAgICAgICAgICAgICAgLy8tLS0t5YiG5Ymy57q/LS0tLS8vXFxuICAgICAgICAgICAgICAgICAgICB2YXIgc2NvZGUgPSBKU09OLnBhcnNlKGZldGNoKHNyY3VybCwge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcIlVzZXItQWdlbnRcXFwiOiBcXFwiRGFydC8yLjEzIChkYXJ0OmlvKVxcXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0OiBmYWxzZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICB3aXRoU3RhdHVzQ29kZTogdHJ1ZVxcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xcbiAgICAgICAgICAgICAgICAgICAgLy9sb2coc2NvZGUpO1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjb2RlLnN0YXR1c0NvZGUgPT0gJzMwMicpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL+aJk+W8gOino+aekOaciTMwMumHjeWumuWQkeeahOmTvuaOpVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByZWR1cmwgPSBzY29kZS5oZWFkZXJzLmxvY2F0aW9uWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXD1odHRwLy50ZXN0KHJlZHVybCkgJiYgL2h0bWx8YmlsaWJpbGkvLnRlc3QocmVkdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShmZXRjaChyZWR1cmwsIHt9KSkudXJsO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1xcXFw9aHR0cC8udGVzdChyZWR1cmwpICYmIC9cXFxcLm0zdTh8XFxcXC5tcDR8XFxcXC5mbHYvLnRlc3QocmVkdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVkdXJsLnN1YnN0cmluZyhyZWR1cmwuaW5kZXhPZignPWh0dHAnKSArIDEpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZWR1cmxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIGh0bWwgPSByZXF1ZXN0KHNyY3VybCk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGh0bWwgPSBzY29kZS5ib2R5O1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXDxib2R5Ly50ZXN0KGh0bWwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v572R6aG16Kej5p6Q55qE5omT5byA572R6aG1ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3JjdXJsO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vanNvbuino+aekOeahOWPlumTvuaOpVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcHVybCA9IGh0bWwubWF0Y2goL1tcXFxcJ1xcXFxcXFwiXXVybFtcXFxcJ1xcXFxcXFwiXTouKj9bXFxcXCdcXFxcXFxcIl0oLio/KVtcXFxcJ1xcXFxcXFwiXS8pWzFdLnJlcGxhY2UoL1xcXFxcXFxcL2csICcnKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC9odHRwLy50ZXN0KHB1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocHRhYiA9PSAnYmlsaWJpbGknKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnO3tSZWZlcmVyQGh0dHBzOi8vd3d3LmJpbGliaWxpLmNvbS8mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocHRhYiA9PSAnbWd0dicpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybCArICcjaXNWaWRlbz10cnVlIycgKyAnO3tSZWZlcmVyQHd3dy5tZ3R2LmNvbSYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH0nO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybCArICcjaXNWaWRlbz10cnVlIydcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1xcXFw9aHR0cC8udGVzdChzcmN1cmwpICYmIC9cXFxcLmh0bWx8YmlsaWJpbGkvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v6Z2eaHR0cOW8gOWktOeahOaJk+W8gOWOn+mTvuaOpSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgICAgICAgICAgLy/miqXplJnliKTmlq3lpITnkIZcXG4gICAgICAgICAgICAgICAgICAgIGlmIChzcmN1cmwuc3Vic3RyaW5nKDAsIDIpID09ICdcXFxcL1xcXFwvJykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaHR0cHM6JyArIHNyY3VybDtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1xcXFw9aHR0cC8udGVzdChzcmN1cmwpICYmIC9cXFxcLmh0bWx8YmlsaWJpbGkvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcmV0dXJuIHNyY3VybC5zcGxpdCgnPScpWzFdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSk7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3JldHVybiAneDVXZWJWaWV3Oi8vJytzcmN1cmxcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAvL+WKqOaAgeino+aekOS7o+eggee7k+adn1xcbiAgICAgICAgICAgIH0sIHB0YWIsIGxpbmssIG15dXJsKSxcXG4gICAgICAgICAgICBjb2xfdHlwZTogY2x0XFxuICAgICAgICB9KTtcXG4gICAgfVxcbn1cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIlRW566A5LuL5LiO6YCJ6ZuGXCIsXCJwYXRoXCI6XCJ0dm1vdmxpc3RcIixcInJ1bGVcIjpcInZhciB0YWJzID0gT2JqZWN0LmtleXMoaHRtbC52aWRlb2xpc3QpO1xcbnZhciB0aHVtYiA9IGh0bWwuaW1nX3VybDtcXG5pdGVtcy5wdXNoKHtcXG4gICAgdGl0bGU6ICfliafmg4XnroDku4vvvJonLFxcbiAgICBkZXNjOiBodG1sLmludHJvLFxcbiAgICBwaWNfdXJsOiB0aHVtYixcXG4gICAgdXJsOiB0aHVtYixcXG4gICAgY29sX3R5cGU6ICdtb3ZpZV8xX3ZlcnRpY2FsX3BpYydcXG59KTtcXG5cXG5mb3IgKHZhciBpID0gMDsgaSA8IHRhYnMubGVuZ3RoOyBpKyspIHtcXG4gICAgdmFyIGxpc3QgPSBodG1sLnZpZGVvbGlzdFt0YWJzW2ldXTtcXG4gICAgdmFyIHB0YWIgPSB0YWJzW2ldO1xcbiAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiBwdGFiICsgJyDwn5SXJyArIFtpICsgMV0gKyAnLycgKyBbdGFicy5sZW5ndGhdLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxuICAgIH0pO1xcblxcbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKyspIHtcXG4gICAgICAgIHZhciBzcmN1cmwgPSBsaXN0W2pdLnVybDtcXG4gICAgICAgIGlmKC8yOTNqeDEvLnRlc3Qoc3JjdXJsKSl7XFxuICAgICAgICAgICAgc3JjdXJsID0gc3JjdXJsLnJlcGxhY2UoJzI5M2p4MScsJ2p4Jyk7XFxuICAgICAgICB9XFxuICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2pdLnRpdGxlO1xcbiAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDw9IDQpIHtcXG4gICAgICAgICAgICB2YXIgY2x0ID0gJ3RleHRfMic7XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIHZhciBjbHQgPSBpc05hTih0aXRsZSkgPyAnZmxleF9idXR0b24nIDogJ3RleHRfNSdcXG4gICAgICAgIH07XFxuICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxuICAgICAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKHB0YWIsIHNyY3VybCwgbXl1cmwpID0+IHtcXG4gICAgICAgICAgICAgICAgLy9sb2coc3JjdXJsKTtcXG4gICAgICAgICAgICAgICAgLy/liqjmgIHop6PmnpDku6PnoIHlvIDlp4tcXG4gICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXC5tM3U4fFxcXFwubXA0fG9ialxcXFwvdG9zLy50ZXN0KHNyY3VybCkgJiYgL2h0dHAvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAvXFxcXD0vLnRlc3Qoc3JjdXJsKSA/IHNyY3VybC5zcGxpdCgnPScpWzFdIDogc3JjdXJsICsgJyNpc1ZpZGVvPXRydWUjJztcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3JjdXJsLmluZGV4T2YoXFxcIi9zaGFyZS9cXFwiKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaW5rID0gc3JjdXJsLnNwbGl0KFxcXCIvc2hhcmVcXFwiKVswXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGZjID0gZmV0Y2goc3JjdXJsLCB7fSkucmVwbGFjZShcXFwidmFyIHB1cmxcXFwiLCBcXFwidmFyIG1haW5cXFwiKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZjLmluZGV4T2YoXFxcIm1haW5cXFwiKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG1hdCA9IGZjLm1hdGNoKC92YXIgbWFpbi4qPzsvKVswXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwobWF0KTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwbGF5ID0gKG1haW4uaW5kZXhPZihcXFwiaHR0cFxcXCIpICE9IC0xID8gbWFpbiA6IGxpbmsgKyBtYWluKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtYWluID0gZmMubWF0Y2goL3VybDouKj9bXFxcXCdcXFxcXFxcIl0oLio/KVtcXFxcJ1xcXFxcXFwiXS8pWzFdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHBsYXkgPSAobWFpbi5pbmRleE9mKFxcXCJodHRwXFxcIikgIT0gLTEgPyBtYWluIDogbGluayArIG1haW4pXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwbGF5O1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd4NVdlYlZpZXc6Ly8nICsgKHNyY3VybClcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHB0YWIgPT0gJ2FsaXp5Jykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gZmV0Y2goJ2h0dHBzOi8vZm91YmluLmNvbS9qaWV4aS5waHA/dXJsPScgKyBzcmN1cmwsIHt9KS5tYXRjaCgvXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcIiguKj8pXFxcXFxcXCIvKVsxXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybDtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoLzE5anhcXFxcLnZpcHxuZnlpbmdzaGkvLnRlc3Qoc3JjdXJsKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gSlNPTi5wYXJzZShmZXRjaChzcmN1cmwucmVwbGFjZSgnaHR0cDovLycsICdodHRwczovLycpLCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJVc2VyLUFnZW50XFxcIjogTU9CSUxFX1VBXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0OiBmYWxzZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEhlYWRlcnM6IHRydWVcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSkuaGVhZGVycy5sb2NhdGlvblswXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoL3RpdGFuLm1ndHYvLnRlc3QocHVybCkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnICsgJzt7UmVmZXJlckB3d3cubWd0di5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICBlbHNlIGlmICgvb2JqXFxcXC90b3MvLnRlc3QocHVybCkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwdXJsXFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcXG4gICAgICAgICAgICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgICAgICAgICAgIC8vLS0tLeWIhuWJsue6vy0tLS0vL1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNjb2RlID0gSlNPTi5wYXJzZShmZXRjaChzcmN1cmwsIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJVc2VyLUFnZW50XFxcIjogTU9CSUxFX1VBXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdDogZmFsc2UsXFxuICAgICAgICAgICAgICAgICAgICAgICAgd2l0aFN0YXR1c0NvZGU6IHRydWVcXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcXG4gICAgICAgICAgICAgICAgICAgIGlmIChzY29kZS5zdGF0dXNDb2RlID09ICczMDInKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHB1cmwgPSBzY29kZS5oZWFkZXJzLmxvY2F0aW9uWzBdO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3ZhciBodG1sID0gcmVxdWVzdChzcmN1cmwpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBodG1sID0gc2NvZGUuYm9keTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyhodG1sKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoL1xcXFxcXFwidXJsXFxcXFxcXCJcXFxcOlxcXFxcXFwiaHR0cC8udGVzdChodG1sKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcHVybD1odG1sLm1hdGNoKC9cXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiKC4qPylcXFxcXFxcIi8pWzFdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaHRtbC5zdGFydHNXaXRoKCd7JykpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHB1cmwgPSBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHB1cmwgPSBzcmN1cmxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9yZXR1cm4gJ3g1V2ViVmlldzovLycrKHNyY3VybCkgXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgaWYgKC90aXRhbi5tZ3R2Ly50ZXN0KHB1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnICsgJzt7UmVmZXJlckB3d3cubWd0di5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL29ialxcXFwvdG9zLy50ZXN0KHB1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybFxcbiAgICAgICAgICAgICAgICAgICAgfTtcXG5cXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNyY3VybC5zdWJzdHJpbmcoMCwgMikgPT0gJ1xcXFwvXFxcXC8nKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdodHRwczonICsgc3JjdXJsO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvXFxcXD1odHRwLy50ZXN0KHNyY3VybCkgJiYgL1xcXFwuaHRtbHxiaWxpYmlsaS8udGVzdChzcmN1cmwpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgLy9yZXR1cm4gc3JjdXJsLnNwbGl0KCc9JylbMV07XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybFxcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIC8v5Yqo5oCB6Kej5p6Q5Luj56CB57uT5p2fXFxuICAgICAgICAgICAgfSwgcHRhYiwgc3JjdXJsLCBteXVybCksXFxuICAgICAgICAgICAgY29sX3R5cGU6IGNsdFxcbiAgICAgICAgfSk7XFxuICAgIH1cXG59XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLliJfooajmqKHlvI/mkJzntKLkuoznuqdcIixcInBhdGhcIjpcInNlYXJlcmpcIixcInJ1bGVcIjpcInZhciByZXMgPSB7fTtcXG52YXIgaXRlbXMgPSBbXTtcXG52YXIgc3BsID0gZ2V0UmVzQ29kZSgpLnNwbGl0KCcjeCMnKTtcXG52YXIgdHlwZXQgPSBzcGxbM107XFxudmFyIHRkb21pbiA9IHNwbFsyXTtcXG52YXIga2V5ID0gc3BsWzRdO1xcblxcbmlmICgvdmlwbXYvLnRlc3QodGRvbWluKSkge1xcbiAgICB2YXIgYmh0bWwgPSByZXF1ZXN0KHNwbFsxXSk7XFxufSBlbHNlIHtcXG4gICAgdmFyIGJodG1sID0gZmV0Y2goc3BsWzFdLCB7XFxuICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgXFxcIlVzZXItQWdlbnRcXFwiOiBcXFwiRGFydC8yLjEzIChkYXJ0OmlvKVxcXCJcXG4gICAgICAgIH1cXG4gICAgfSk7XFxufVxcbnRyeSB7XFxuICAgIGJodG1sID0gYmh0bWwuc3RhcnRzV2l0aCgnXFxcXHJcXFxcbicpID8gYmh0bWwucmVwbGFjZSgnXFxcXHJcXFxcbicsICcnKSA6IGJodG1sO1xcbn0gY2F0Y2ggKGUpIHt9XFxuaWYgKC9idHdhZi8udGVzdChiaHRtbCkpIHtcXG4gICAgLypcXG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTon5pyJ5a6d5aGU6aqM6K+B77yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogc3BsWzFdICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG4gICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgICAgICovXFxuXFxuICAgIGJodG1sID0gZmV0Y2goc3BsWzFdICsgJyZidHdhZicgKyBiaHRtbC5tYXRjaCgvYnR3YWYoLio/KVxcXFxcXFwiLylbMV0sIHt9KTtcXG5cXG59XFxuXFxuaWYgKGJodG1sID09IFxcXCJcXFwiIHx8IGJodG1sID09IG51bGwgfHwgYmh0bWwuc3Vic3RyaW5nKDAsIDUpID09ICdlcnJvcicgfHwgIWJodG1sLnN0YXJ0c1dpdGgoJ3snKSkge1xcbiAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn5pyq5pCc57Si5Yiw55u45YWz6LWE5rqQ77yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXG4gICAgICAgIHVybDogc3BsWzFdICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG4gICAgfSk7XFxufSBlbHNlIGlmIChiaHRtbC5sZW5ndGggPCA4MCkge1xcbiAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn6L+U5Zue5pWw5o2u5LiN5a6M5pW077yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXG4gICAgICAgIHVybDogc3BsWzFdICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG4gICAgfSk7XFxufSBlbHNlIHtcXG4gICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKGJodG1sKTtcXG4gICAgLy9sb2coc3BsWzFdKTtcXG4gICAgaWYgKGh0bWwubGlzdCkge1xcbiAgICAgICAgdmFyIGxpc3QgPSBodG1sLmxpc3Q7XFxuICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhLmxpc3QpIHtcXG4gICAgICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxuICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhKSB7XFxuICAgICAgICB2YXIgbGlzdCA9IGh0bWwuZGF0YTtcXG4gICAgfVxcblxcbiAgICBpZiAobGlzdC5sZW5ndGggPCAxKSB7XFxuICAgICAgICBpdGVtcy5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogJ+acquaQnOe0ouWIsO+8jOeCueWHu+iuv+mXruWOn+e9kemhtScsXFxuICAgICAgICAgICAgdXJsOiBzcGxbMV0gKyBgQGxhenlSdWxlPS5qczppbnB1dC5zcGxpdCgnOycpWzBdYCxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG4gICAgICAgIH0pO1xcbiAgICB9IGVsc2Uge1xcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XFxuXFxuICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHlwZXQpKSB7XFxuICAgICAgICAgICAgICAgIGlmICh0ZG9taW4uaW5kZXhPZignYXBpLnBocC9hcHAvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IHRkb21pbiArICd2aWRlb19kZXRhaWw/aWQ9JyArIGxpc3RbaV0udm9kX2lkICsgJyZ0b2tlbj0nO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxuICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRkb21pbi5pbmRleE9mKCd4Z2FwcC5waHAvdjEvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IHRkb21pbiArICd2aWRlb19kZXRhaWw/aWQ9JyArIGxpc3RbaV0udm9kX2lkO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxuICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtpXS52b2RfbmFtZTtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnZvZF9waWM7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgdmlkID0gdGRvbWluICsgJy9kZXRhaWw/dm9kX2lkPScgKyBsaXN0W2ldLnZvZF9pZCArICcmdG9rZW49JztcXG4gICAgICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcbiAgICAgICAgICAgICAgICAgICAgLy92YXIgY29uPWxpc3RbaV0udHlwZS50eXBlX2RlcztcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcbiAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnRpdGxlO1xcbiAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS5waWM7XFxuICAgICAgICAgICAgICAgIC8vdmFyIHZpZD10ZG9taW4rJy9kZXRhaWw/dm9kX2lkPScrbGlzdFtpXS5uZXh0bGluaysnJnJlbF9saW1pdD0xMCc7XFxuICAgICAgICAgICAgICAgIHZhciB2aWQgPSBsaXN0W2ldLm5leHRsaW5rO1xcbiAgICAgICAgICAgICAgICB2YXIgcmVtID0gbGlzdFtpXS5zdGF0ZTtcXG4gICAgICAgICAgICAgICAgLy92YXIgY29uPWxpc3RbaV0uc3RhdGU7XFxuICAgICAgICAgICAgfVxcblxcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGUucmVwbGFjZShrZXksICfigJzigJwnICsga2V5ICsgJ+KAneKAnScpLFxcbiAgICAgICAgICAgICAgICBwaWNfdXJsOiBwaWMgKyAnQFJlZmVyZXI9JyxcXG4gICAgICAgICAgICAgICAgdXJsOiAkKHZpZCsnO2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfScpLnJ1bGUoKHR5cGV0KSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgcmVzID0ge307XFxuICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbXMgPSBbXTtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShnZXRSZXNDb2RlKCkpO1xcbiAgICAgICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICcnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6ICcyNTUmJmZsb2F0JyxcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICcnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAneDVfd2Vidmlld19zaW5nbGUnXFxuICAgICAgICAgICAgICAgICAgICB9KTtcXG4gICAgICAgICAgICAgICAgICAgIHJlZnJlc2hYNVdlYlZpZXcoJycpO1xcbiAgICAgICAgICAgICAgICAgICAgdmFyIG15dXJsID0gTVlfVVJMLm1hdGNoKC8oW1xcXFxTXSo/OlxcXFwvXFxcXC9bXFxcXFNdKj8pXFxcXC8vKVsxXTtcXG4gICAgICAgICAgICAgICAgICAgIGlmICgvQVBQ5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL2FwcG1vdmxpc3QnLCB7fSkpLnJ1bGUpO1xcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvVFblvbHop4YvLnRlc3QodHlwZXQpKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvdHZtb3ZsaXN0Jywge30pKS5ydWxlKTtcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhID0gaXRlbXM7XFxuICAgICAgICAgICAgICAgICAgICBzZXRIb21lUmVzdWx0KHJlcyk7XFxuICAgICAgICAgICAgICAgIH0sIHR5cGV0KSxcXG4gICAgICAgICAgICAgICAgLy9jb250ZW50OnJlbSxcXG4gICAgICAgICAgICAgICAgZGVzYzogcmVtLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljJ1xcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfSAvL2ZvciBpXFxuICAgIH0gLy9lbHNlIGxpc3QubGVuZ3RoXFxufVxcblxcbnJlcy5kYXRhID0gaXRlbXM7XFxuc2V0SG9tZVJlc3VsdChyZXMpO1wifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQVBQ6aaW6aG15YiX6KGoXCIsXCJwYXRoXCI6XCJhcHBpbmRleGRhdGFcIixcInJ1bGVcIjpcImlmIChodG1sLmxpc3QpIHtcXG4gICAgdmFyIGxpc3QgPSBodG1sLmxpc3Q7XFxufSBlbHNlIGlmIChodG1sLmRhdGEmJmh0bWwuZGF0YS5saXN0KSB7XFxuICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxufSBlbHNlIHtcXG4gICAgdmFyIGxpc3QgPSBodG1sLmRhdGE7XFxufVxcblxcbmZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcbiAgICBpZiAobGlzdFtpXS52b2RfbGlzdCkge1xcbiAgICAgICAgdmFyIGxpc3RzID0gbGlzdFtpXS52b2RfbGlzdDtcXG4gICAgICAgIHZhciB0eXBlbmFtZSA9IGxpc3RbaV0udm9kX3R5cGVfbmFtZTtcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIHZhciBsaXN0cyA9IGxpc3RbaV0udmxpc3Q7XFxuICAgICAgICB2YXIgdHlwZW5hbWUgPSBsaXN0W2ldLnR5cGVfbmFtZVxcbiAgICB9XFxuICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgdGl0bGU6IHR5cGVuYW1lLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxuXFxuICAgIH0pO1xcbiAgICBcXG4gICAgZm9yICh2YXIgaiA9IDA7IGogPCBsaXN0cy5sZW5ndGg7IGorKykge1xcbiAgICAgICAgdmFyIHRpdGxlID0gbGlzdHNbal0udm9kX25hbWU7XFxuICAgICAgICB2YXIgaW1nID0gbGlzdHNbal0udm9kX3BpYztcXG4gICAgICAgIHZhciB1cmwgPSBsaXN0c1tqXS52b2RfaWQ7XFxuICAgICAgICB2YXIgZGVzYyA9IGxpc3RzW2pdLnZvZF9yZW1hcmtzO1xcbiAgICAgICAgaWYgKGh0bWwubGlzdCkge1xcbiAgICAgICAgICAgIHZhciBsaW5rID0gbXVybCArICd2aWRlb19kZXRhaWw/aWQ9JyArIHVybCArICcmdG9rZW49O2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxuICAgICAgICB9IGVsc2UgaWYgKGh0bWwuZGF0YSYmaHRtbC5kYXRhLmxpc3QpIHtcXG4gICAgICAgICAgICB2YXIgbGluayA9IG11cmwgKyAnL2RldGFpbD92b2RfaWQ9JyArIHVybCArICcmcmVsX2xpbWl0PTEwO2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIHZhciBsaW5rID0gbXVybCArICd2aWRlb19kZXRhaWw/aWQ9JyArIHVybCArICcmdG9rZW49O2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxuICAgICAgICB9ICAgICAgICBcXG4gICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSxcXG4gICAgICAgICAgICBwaWNfdXJsOiBpbWcgKyAnQFJlZmVyZXI9JyxcXG4gICAgICAgICAgICB1cmw6ICQobGluaykucnVsZSgoKSA9PiB7XFxuICAgICAgICAgICAgICAgIHZhciByZXMgPSB7fTtcXG4gICAgICAgICAgICAgICAgdmFyIGl0ZW1zID0gW107XFxuICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICcnLFxcbiAgICAgICAgICAgICAgICAgICAgZGVzYzogJzI1NSYmZmxvYXQnLFxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAnJyxcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAneDVfd2Vidmlld19zaW5nbGUnXFxuICAgICAgICAgICAgICAgIH0pO1xcbiAgICAgICAgICAgICAgICByZWZyZXNoWDVXZWJWaWV3KCcnKTsgICAgICAgICAgICAgICAgXFxuICAgICAgICAgICAgICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShnZXRSZXNDb2RlKCkpOyAgICAgICAgICAgICAgICBcXG4gICAgICAgICAgICAgICAgdmFyIG15dXJsID0gTVlfVVJMLm1hdGNoKC8oW1xcXFxTXSo/OlxcXFwvXFxcXC9bXFxcXFNdKj8pXFxcXC8vKVsxXTtcXG4gICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvYXBwbW92bGlzdCcsIHt9KSkucnVsZSk7ICAgICAgICAgICAgICAgIFxcbiAgICAgICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcbiAgICAgICAgICAgICAgICBzZXRIb21lUmVzdWx0KHJlcyk7XFxuICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgZGVzYzogZGVzYyxcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzNfbWFycXVlZSdcXG4gICAgICAgIH0pO1xcbiAgICB9XFxufVwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi6aaW5qyh5a+85YWl562J5b6FXCIsXCJwYXRoXCI6XCJ3YWl0XCIsXCJydWxlXCI6XCJmdW5jdGlvbiBjYW5Vc2UoKSB7XFxuICAgIC8v5aaC5p6c5pu05paw5LqG6KeE5YiZ5Lmf6KaB6ZmQ5rWB77yM5Y+v5Lul5L+u5pS5a2V5XFxuICAgIGxldCBrZXkgPSBcXFwibG9jazRcXFwiXFxuICAgIC8v562J5b6F5YiG6ZKf5pWwXFxuICAgIGxldCB3YWl0TWluID0gMzBcXG4gICAgXFxuICAgIGxldCBtaW4gPSBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAxMDAwICogNjAgKiB3YWl0TWluKVxcbiAgICBsZXQgdW5sb2NrID0gbmV3IERhdGUoKS5nZXRUaW1lKCkgKyBtaW47XFxuICAgIGxldCB0aW1lID0gZ2V0SXRlbShrZXksIFxcXCJcXFwiKTtcXG4gICAgaWYgKHRpbWUgPT0gXFxcIlxcXCIpIHtcXG4gICAgICAgIHNldEl0ZW0oa2V5LCBcXFwiXFxcIiArIHVubG9jaylcXG4gICAgICAgIGxldCBzdCA9IG5ldyBEYXRlKHVubG9jaykudG9Mb2NhbGVTdHJpbmcoKS5yZXBsYWNlKC86XFxcXGR7MSwyfSQvLCAnICcpO1xcbiAgICAgICAgbGV0IG1zZyA9IFxcXCLov5nmmK/mgqjnrKzkuIDmrKHkvb/nlKjor6XniYjmnKzop4TliJnvvIzkuLrpgb/lhY3nrKzkuIDmrKHlr7zlhaXkvb/nlKjkurrmlbDmv4Dlop7vvIzop4TliJnlsIblnKhcXFwiICsgc3QgKyBcXFwi6Kej6ZSB5L2/55So44CCPGJyPjxicj7lpb3op4TliJnkuI3mgJXmmZrvvIzor7fogJDlv4PnrYnlvoXvvIHor6Xmj5DnpLrku4XlnKjnrKzkuIDmrKHlr7zlhaXvvIjmm7TmlrDvvInml7blh7rnjrDvvIzlkI7nu63kvb/nlKjov4fnqIvkuK3kuI3kvJrlh7rnjrDvvIFcXFwiXFxuICAgICAgICBzZXRSZXN1bHQoW3tcXG4gICAgICAgICAgICB0aXRsZTogbXNnLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiBcXFwicmljaF90ZXh0XFxcIlxcbiAgICAgICAgfV0pXFxuICAgICAgICByZXR1cm4gZmFsc2VcXG4gICAgfSBlbHNlIGlmIChwYXJzZUludCh0aW1lKSA8IG5ldyBEYXRlKCkuZ2V0VGltZSgpKSB7XFxuICAgICAgICByZXR1cm4gdHJ1ZVxcbiAgICB9IGVsc2Uge1xcbiAgICAgICAgbGV0IHN0ID0gbmV3IERhdGUocGFyc2VJbnQodGltZSkpLnRvTG9jYWxlU3RyaW5nKCkucmVwbGFjZSgvOlxcXFxkezEsMn0kLywgJyAnKTtcXG4gICAgICAgIGxldCBtc2cgPSBcXFwi5Li66YG/5YWN5L2/55So5Lq65pWw5r+A5aKe77yM6KeE5YiZ5bCG5ZyoXFxcIiArIHN0ICsgXFxcIuino+mUgeS9v+eUqOOAgjxicj48YnI+5aW96KeE5YiZ5LiN5oCV5pma77yM6K+36ICQ5b+D562J5b6F77yB6K+l5o+Q56S65LuF5Zyo56ys5LiA5qyh5a+85YWl77yI5pu05paw77yJ5pe25Ye6546w77yM5ZCO57ut5L2/55So6L+H56iL5Lit5LiN5Lya5Ye6546w77yBXFxcIlxcbiAgICAgICAgc2V0UmVzdWx0KFt7XFxuICAgICAgICAgICAgdGl0bGU6IG1zZyxcXG4gICAgICAgICAgICBjb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG4gICAgICAgIH1dKVxcbiAgICAgICAgcmV0dXJuIGZhbHNlXFxuICAgIH1cXG59XFxuJC5leHBvcnRzID0gY2FuVXNlKCk7XCJ9XSxcInNhdmVkXCI6ZmFsc2UsXCJ0aXRsZVwiOlwiQVBQ5b2x6KeGKFApXCIsXCJ2ZXJzaW9uXCI6MCxcInVybFwiOlwiaHR0cHM6Ly9hcGkuNThxeGsuY24vYXBpLnBocC9hcHAvdmlkZW9fZGV0YWlsP2lkPTM4MDU4JnRva2VuPTtnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX1cIixcImNvbF90eXBlXCI6XCJtb3ZpZV8xXCIsXCJmaW5kX3J1bGVcIjpcImpzOjsoXFxuKHR5cGV0KSA9PiB7XFxuICAgIHZhciByZXMgPSB7fTtcXG4gICAgdmFyIGl0ZW1zID0gW107XFxuICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShnZXRSZXNDb2RlKCkpO1xcbiAgICBpdGVtcy5wdXNoKHt0aXRsZTogXFxcIlxcXCIsIGRlc2M6IFxcXCIyNTUmJmZsb2F0XFxcIiwgdXJsOiBcXFwiXFxcIiwgY29sX3R5cGU6IFxcXCJ4NV93ZWJ2aWV3X3NpbmdsZVxcXCJ9KTtcXG4gICAgcmVmcmVzaFg1V2ViVmlldyhcXFwiXFxcIik7XFxuICAgIHZhciBteXVybCA9IE1ZX1VSTC5tYXRjaCgvKFtcXFxcU10qPzpcXFxcL1xcXFwvW1xcXFxTXSo/KVxcXFwvLylbMV07XFxuICAgIGlmICgvQVBQ5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcbiAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKFxcXCJoaWtlcjovL3BhZ2UvYXBwbW92bGlzdFxcXCIsIHt9KSkucnVsZSk7XFxuICAgIH0gZWxzZSB7XFxuICAgICAgICBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcbiAgICAgICAgICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaChcXFwiaGlrZXI6Ly9wYWdlL3R2bW92bGlzdFxcXCIsIHt9KSkucnVsZSk7XFxuICAgICAgICB9XFxuICAgIH1cXG4gICAgcmVzLmRhdGEgPSBpdGVtcztcXG4gICAgc2V0SG9tZVJlc3VsdChyZXMpO1xcbn1cXG4pKFxcXCJBUFDlvbHop4ZcXFwiKVwiLFwiZ3JvdXBcIjpcIuKRoeW9seaQnFwiLFwidWFcIjpcIm1vYmlsZVwiLFwicHJlUnVsZVwiOlwiaWYoIWZpbGVFeGlzdCgnaGlrZXI6Ly9maWxlcy9ydWxlcy94eXEvYXBwbXNldC5qc29uJykpe1xcbnZhciBzZXQ9YHtcXFwic3Ntb2RlXFxcIjpcXFwiMFxcXCIsXFxcInNzY291bnRcXFwiOlxcXCI1XFxcIn1gO1xcbndyaXRlRmlsZShcXFwiaGlrZXI6Ly9maWxlcy9ydWxlcy94eXEvYXBwbXNldC5qc29uXFxcIixzZXQpOyAgXFxuIH1cIixcInBhZ2VzXCI6XCJbe1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwiSlNPTuaOpeWPo+aVsOaNrlxcXCIsXFxcInBhdGhcXFwiOlxcXCJSZXNDb2RlXFxcIixcXFwicnVsZVxcXCI6XFxcIntcXFxcbiAgICBcXFxcXFxcImRhdGFcXFxcXFxcIjpbXFxcXG4gICAgICAgIHtcXFxcbiAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiQVBQ5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgIFxcXFxcXFwibGlzdFxcXFxcXFwiOltcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIjAwN+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3LjAwN3RzLmNjL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+mbtumbtuS4g+W9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIjU1NeeUteW9sVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93N3R2LmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi81NTXnlLXlvbEucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCI1MDYw5b2x6ZmiXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9hcHAubGluemhpeXVhbi54eXoveGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uLzUwNjDlvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCI5MTNF5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3d3dy45MTNlLm5ldC9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi85MTNF5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiQkTnlLXlvbFcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy5iZGR5c2Yub3JnL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0JE55S15b2xLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiQ09LRU1WXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9jb2tlbXYubWUveGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0NPS0VNVi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaSreaUvuWRgFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3LmJvZmFuZ3lhLmNvbS94Z2FwcC5waHAvdjEvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5pKt5pS+5ZGALnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi55WF6KeG5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2FwcC5yZWJvanUubmV0L2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eVheinhuW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIui/qui/quW9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9kZDg4LmljdTo2MDgwL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i/qui/quW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWYgOWTqeWYgOWTqVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vZGlsaWt0di54eXoveGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WYgOWTqeWYgOWTqS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuavkuiIjOeUteW9sVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3LmR1c2hlNTIwLmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mr5LoiIznlLXlvbEucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlpKfluIjlhYRcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2hvdS5sdS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpKfluIjlhYTlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmrrXlj4vlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2xiLjUyNzdzLmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mrrXlj4vlvbHop4bCqS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIueTnOearlRWXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3d3dy5kaWppYXhpYS5jb20veGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eTnOearlRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5rW36IOG5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3hmMTIzLmNjL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+a1t+iDhuW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIua1t+e7teW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAxLnl1emhvdXlzLmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mtbfnu7XlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkuqzlub/oiKpcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy5qaW5nZ3VhbmdoYW5nLmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kuqzlub/oiKrlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkuZ3lkIjop4bpopFcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3B0eWd4LmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kuZ3lkIjop4bpopEucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmsZ/muZblvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vYXBwLmpoZHl3LnZpcDoxMjM0L2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+axn+a5luW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuS5heS5neW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vYXBpLjU4cXhrLmNuL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S5heS5neW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuiTneaenOW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cubGFuZ3VvdHYuY29tL3hnYXBwLnBocC92MS9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ok53mnpzlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLnkLPnkIXlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy51MjNjLmNvbS9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nkLPnkIXlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmnoHkuZDpmIFcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3ZpcC53dXFjbXMuY29tL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aegeS5kOmYgS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuiQjOibi+ibi1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAubWVuZ2RhbmRhbi5jb20veGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+iQjOibi+ibiy5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuawouinhumikVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9oMTA4MHAuY29tL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+awouinhumikS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaAneWPpOW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vYXBwLnNpZ3V5eS5jb20veGdhcHAucGhwL3YxL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aAneWPpOW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuezluaenOW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3LnRneXMudHYvYXBpLnBocC9hcHAvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v57OW5p6c5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5rGh5aaW5Yqo5ryrXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly93d3cud3l5ZG0uY29tL2FwaS5waHAvYXBwL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+axoeWmluWKqOa8qy5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWwj+aYk+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8veHkuaXJvcC5jbi9hcGkucGhwL2FwcC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/mmJPlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlvbHop4blt6XlnLpcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy5pazQuY2MvYXBpLnBocC9hcHAvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5b2x6KeG5bel5Zy6LnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6L+95Ymn6L6+5Lq6XFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3ZpcG12LnR2L3hnYXBwLnBocC92MS9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ov73liafovr7kuroucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgXVxcXFxuICAgICAgICB9LFxcXFxuICAgICAgICB7XFxcXG4gICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIkFQUOW9seinhih2MSlcXFxcXFxcIixcXFxcbiAgICAgICAgXFxcXFxcXCJsaXN0XFxcXFxcXCI6W1xcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiNTU1VFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vZ3hoc2h5eS5jb20vYXBpLnBocC9nY3R2YXBpLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uLzU1NVRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiODDlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vd3d3LmNjYzgubmV0L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vODDlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCI4MEvlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovLzEwODBwLnR2L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24vODBL5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiQ0pU5b2x6ZmiXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly93d3cuY2p0NTIxLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0NKVOW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIkZVRlVcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2Z1ZnUuaXhoZHV0YS5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0ZVRlXlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCJIR+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9jcy5oZ3l4LnZpcC9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL0hH5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiVklQ5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3d3dy5zcC5vb28vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi9WSVDlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLniLHlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy5oemxmZi5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eIseW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIueZveiPnOi/veWJp1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9sYmFwcC5odWltYW9qaWEuY29tOjMwMTE5L21vZ2FpX2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v55m96I+c6L+95YmnLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi55WF5LyY6KeG55WMXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2FwcC41MThpbW8uY24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nlYXkvJjop4bnlYwucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLliJ3lv4PlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy4xOG12LmNsdWIvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/liJ3lv4PlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlpJrlpJrlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3NwLjlhZW5nLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WkmuWkmuW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWkp+a1t+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly8xMTkuMjkuNjMuMTM3L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5aSn5rW35b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5aSn54aK6L+95YmnXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3d3dy5keHpqODguY29tL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5aSn54aK6L+95YmnLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5q615Y+L5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pc2hhbmd3by50b3AvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mrrXlj4vlvbHop4YxLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6J225LyX5b2x6ZmiXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2FwcC5kaWV6ei5uZXQvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/onbbkvJflvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLpo57mjbflvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy5majYwODAuY29tL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6aOe5o235b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5L2b57O76L+95YmnXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2ZveGkua2swNi50b3AvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kvZvns7vov73liacucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlhazkuLvlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vbW0udGNzZGNoaW5hLmNvbTo2MDk2L21vZ2FpX2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5YWs5Li75b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6L6J5ZOl5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9hcHAueS5oZ3l1bGU4LmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i+ieWTpeW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIum7hOays+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9pLmxlZHU4LmNuL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6buE5rKz5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5ZOI5bC86KeG6aKRXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3d3dy52aWRlb3ZpcHMudG9wL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5ZOI5bC86KeG6aKRLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5rGH6IGa5bqTVFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy56emNsb3ZlNjY2LmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+axh+iBmuW6k1RWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5ZOI55qu5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly8wNzQ1eXkuY29tL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5ZOI55qu5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5qC45qGD5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2FwcC5oZXRhb3lzLnZpcC9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aguOahg+W9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIue6ouWFlOinhumikVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3LmhvdG80LmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+e6ouWFlOinhumikS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuebkuWtkOW9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9pLm5paGFvaGV6aS5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nm5LlrZDlvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLnrYvmlpfkupFcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3R2LmppbmRjbG91ZC5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/nrYvmlpfkupHlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmnoHnroDlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3R2LmFyZW9uZS50b3AvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mnoHnroDlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlv6vmkq3lkKdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vd3d3LmhkOC5wdy9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+W/q+aSreWQpy5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuael+iwt+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly94Zy5sZ3p5OC5jbjo4Ni9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+ael+iwt+W9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaHkueMq+eUteW9sVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly8wMDcubGFubWFvZHkuY29tL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5oeS54yr55S15b2xLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6JOd6bK46KeG55WMXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9hcHBzLnZkNS5jYy9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+iTnemyuOinhueVjC5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIue7v+eureW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cuNjl0eS5jYy9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+e7v+eureW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuS5kOeci+inhumikVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cubGthbi52aXAvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kuZDnnIvop4bpopEucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlhrfop4ZUVlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vbGVuLnR2L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Ya36KeGVFYucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmnKjnmb3lvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vdmFwcC4yM2F0LmNuL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5pyo55m95b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6bq755Oc6KeG6aKRXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL215YXBwLm1hZ3VheXMuY2MvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/purvnk5zop4bpopEucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLpurvohb5UVlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vd3d3Lm1hdGVuZ3R2LnRvcC9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+m6u+iFvlRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5Za15LmQ5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL21pYW9sZXlzLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WWteS5kOW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSx7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLllrXlvbHlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vd3d3Lm14bWJrLnh5ei9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WWteW9seW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuacqOWtkOeUteW9sVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cubXV6aWR5LnRvcC9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+acqOWtkOeUteW9sS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIum6u+WtkOi/veWJp1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAuMm1hei5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+m6u+WtkOi/veWJpy5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWNl+W6nOi/veWJp1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAueGt2aWRlby5kZXNpZ24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ljZflupzov73liacucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmmpblhYnlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2FwcC5ibDIxMC5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mmpblhYnlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLnvo7liafomatcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL21laWp1Y2hvbmcuY29tL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v576O5Ymn6JmrLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5YaF5ra15b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3YubmhkeXlzLmNuL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5YaF5ra15b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5p+g5qqs5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly90di4xM25tLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+afoOaqrOW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWlh+i2o+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vYXBwLnFpcXUubWUvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpYfotqPlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLpqpHlo6vlvbHpmaJcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2FwcC5xaXNoaS54eXovYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/pqpHlo6vlvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLnpZ7pqazlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veGluLmpqc3ZpcC5jYy9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+elnumprOW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuinhuWQrOaYn+eQg1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly96anlhcGlqenlzLnNoeW53bGtqLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+inhuWQrOaYn+eQgy5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaJi+aMh+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9zenlzMzM1NS5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/miYvmjIflvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmt5jliafnpL5cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vYXBwLnNodWhhaTk5LmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+a3mOWJp+ekvi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWkqeWkqeW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAuYXQwMDguY24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpKnlpKnlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlpKnlpKnlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3d3dy50aWFudGlhbnlzOC5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lpKnlpKnlvbHop4YxLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5Zui5aSV5b2x6ZmiXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovLzExOS4yOS4xMjEuNDgvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lm6LlpJXlvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlhZTlrZDnqp1cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vY2ouaHVpbWFvamlhLmNvbToxMjM0NS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WFlOWtkOeqnS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaIkeeIseeUteW9sVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcHAuNWltdi5jYy9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+aIkeeIseeUteW9sS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuaIkeeIsei3n+WJp1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cuNTJnZW4uY29tL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5oiR54ix6Lef5YmnLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5ZC+54ix5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2FwcC41bHAubmV0L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5ZC+54ix5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6JyX54mb55yL6bitXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL21vdmllLndva2V3dS5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+icl+eJm+eci+m4rS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuW9semYhemYgVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly8yMjEuMjM2LjE4LjEyOjY2NS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+W9semYhemYgS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuW/mOW/p+aenFRWXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9heC5qeC5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+W/mOW/p+aenFRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5bCP5Z+O5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly93d3cuMjY5dy5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/ln47lvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlhYjplIvop4bpopFcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovLzU4eHR2Lm5ldC9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WFiOmUi+inhumikS5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWwj+aegeW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9hcGkueGlhb3lzdy5jb20vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsI/mnoHlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmmJ/nqbrlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veGlvbmdrb25nd3guY24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mmJ/nqbrlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlsI/onLvonJNcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vM2tldHYuY29tL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5bCP6Jy76JyT6KeG6aKRLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5LyR6Zey5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3R2Ljc4dHYuY2MvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kvJHpl7LlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmmJ/lvbHnm7jpmo9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vYXBwLnJvb3R0aHJlZS50b3AvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mmJ/lvbHnm7jpmo8ucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlsI/mmJPlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veHkuaXJvcC5jbi9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wwj+aYk+W9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuebiui+vuW9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9sdW9idS55c3M2MDgwLmNvbS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+ebiui+vuW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWFg+iKs+W9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly95ZnlzMTEyMi5jb20vbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lhYPoirPlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLpm6jmnpzlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veWdhcHAueGN5czYzLmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+mbqOaenOW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIumiluWutuW9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly96bHkueGpxeHoudG9wL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6aKW5a625b2x6ZmiLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5LyY5YWo5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9hcHAueG15dW4ueHl6L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LyY5YWo5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5b2x6KeG54Ot5YmnXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2xiLjI2eXMuY24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lvbHop4bng63liacucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmnajmoYPlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veXR5czExMjIuY29tL21vZ2FpX2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5p2o5qGD5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5pyI6Imy5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovLzY5dHkuY2MvbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/mnIjoibLlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkvJjngqvlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veXVudHYuaXl4dHYuY24vbW9nYWlfYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/kvJjngqvlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkvJjkvJjlvbHpmaJcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veHMuNzh0di5jYy9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S8mOS8mOW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIua4lOa4lOW9seinhlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly94Yy40NWguY24vYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/muJTmuJTlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkuIDlj6rpsbxcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vd3d3LmJkLTRrLm1sL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LiA5Y+q6bG85b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6L+955Wq54yrXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL2RtLjQ5NmR5LmNuOjg4L2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v6L+955Wq54yrLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi6L+95Ymn5ZCnXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3podWlqdWJhLnZpcC9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+i/veWJp+WQp+W9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWuheeUt+W9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly93d3cuc2V4eXkudG9wL2FwaS5waHAvdjEudm9kXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5a6F55S35b2x6ZmiLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOkFQUOW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5a6F55S35b2x6ZmiXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly93d3cuem55eTY2Ni50b3AvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lroXnlLflvbHpmaIucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkvqbmjqLlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veXMuaHVhbmdndWF5LmNvbS9tb2dhaV9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S+puaOouW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIui/veW9seWFlFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9sb25ndy54eXo6OTEvYXBpLnBocC92MS52b2RcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ov73lvbHlhZQucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6QVBQ5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLnjKrnjKrlvbHpmaJcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vYXBwLjJ6ZHl5LmNvbS9hcGkucGhwL3YxLnZvZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+eMqueMquW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpBUFDlvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfVxcXFxuICAgICAgICBdXFxcXG4gICAgICAgIH0sXFxcXG4gICAgICAgIHtcXFxcbiAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiVFblvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgXFxcXFxcXCJsaXN0XFxcXFxcXCI6W1xcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwiMuWPt+W4gVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9waG9lYmUuY2YvYXBpLnBocC9pcHR2L3ZvZC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi8y5Y+35biB5b2x6ZmiLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlsJjmopNUVlxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly8xMzkuMTU1LjE3Ny4yMTMvYXBpLnBocC9pcHR2L3ZvZC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lsJjmopNUVi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpUVuW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi56i76I2J5Lq6VFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vd3d3LnpoYWlrYW55cy54eXovYXBpLnBocC9pcHR2MS92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v56i76I2J5Lq6VFYucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6VFblvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWYgOWTqeWYgOWTqVxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vYXBpLmRpbGlrdHYueHl6L2FwaS5waHAvQ2hlbmdjaGVuZy92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5ZiA5ZOp5ZiA5ZOpVFYucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6VFblvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuWkp+W4iOWFhFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9kc3h0di50di5jaS9hcGkucGhwL2RzeC92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5aSn5biI5YWE5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLpu5HpvpnlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vdmlwLmppLWRpbmctaGUuc2l0ZS9hcGkucGhwL2lwdHYvdm9kL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+m7kem+meW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpUVuW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5qC45qGD5b2x6KeGXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcInVybFxcXFxcXFwiOlxcXFxcXFwiaHR0cDovL3R2LmhldGFveXMudmlwL2FwaS5waHAvaXB0di92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5qC45qGD5b2x6KeGLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLogZrlpJrlvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vamR5eS5jaHhqb24uY24vYXBpLnBocC9pcHR2L3ZvZC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/ogZrlpJrlvbHop4YucG5nXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcIm11cmxcXFxcXFxcIjpcXFxcXFxcInE6VFblvbHop4ZcXFxcXFxcIlxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuS5heS5heW9semZolxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImh0dHA6Ly9sbS4wODE4dHYuY29tL212L2FwaS5waHAvQ2hlbmdjaGVuZy92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5LmF5LmF5b2x6ZmiLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLmtYHmmJ/pm6hcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vc3l5Lmx4eXl5Lnh5ei9tdi9hcGkucGhwL0NoZW5nY2hlbmcvdm9kL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+a1geaYn+mbqOW9semZoi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpUVuW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5Ya35pyIVFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL3R2LjUyMXg1LmNvbS9hcGkucGhwL2lwdHYvdm9kL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+WGt+aciFRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLlj4zlrZDmmJ9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vdHYuZGl5b3VpLmNjL2FwaS5waHAvaXB0di92b2QvXFxcXFxcXCIsXFxcXG4gICAgICAgICAgICBcXFxcXFxcImltZ1xcXFxcXFwiOlxcXFxcXFwiaHR0cHM6Ly9pbm1lbW9yeS5jb2RpbmcubmV0L3AvSW5NZW1vcnkvZC9NQnJvd3Nlci9naXQvcmF3L21hc3Rlci9BcHBGaWxlL0FwcEljb24v5Y+M5a2Q5pifLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICB7XFxcXG4gICAgICAgICAgICBcXFxcXFxcInRpdGxlXFxcXFxcXCI6XFxcXFxcXCLkupHmkq3lvbHop4ZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8veXVuYm8uYnhpbi50di9hcGkucGhwL2lwdHYvdm9kL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+S6keaSreW9seinhi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpUVuW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5b2x6YW3VFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8venkucHh1bi50b3AvYXBpLnBocC9pcHR2L3ZvZC9cXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiaW1nXFxcXFxcXCI6XFxcXFxcXCJodHRwczovL2lubWVtb3J5LmNvZGluZy5uZXQvcC9Jbk1lbW9yeS9kL01Ccm93c2VyL2dpdC9yYXcvbWFzdGVyL0FwcEZpbGUvQXBwSWNvbi/lvbHphbdUVi5wbmdcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwibXVybFxcXFxcXFwiOlxcXFxcXFwicTpUVuW9seinhlxcXFxcXFwiXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAge1xcXFxuICAgICAgICAgICAgXFxcXFxcXCJ0aXRsZVxcXFxcXFwiOlxcXFxcXFwi5bCP5p6BVFZcXFxcXFxcIixcXFxcbiAgICAgICAgICAgIFxcXFxcXFwidXJsXFxcXFxcXCI6XFxcXFxcXCJodHRwOi8vYXBpLjhkOHEuY29tL21tdi9hcGkucGhwL0NoZW5nY2hlbmcvdm9kL1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJpbWdcXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vaW5tZW1vcnkuY29kaW5nLm5ldC9wL0luTWVtb3J5L2QvTUJyb3dzZXIvZ2l0L3Jhdy9tYXN0ZXIvQXBwRmlsZS9BcHBJY29uL+Wwj+aegVRWLnBuZ1xcXFxcXFwiLFxcXFxuICAgICAgICAgICAgXFxcXFxcXCJtdXJsXFxcXFxcXCI6XFxcXFxcXCJxOlRW5b2x6KeGXFxcXFxcXCJcXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgXVxcXFxuICAgICAgICB9XFxcXG4gICAgXVxcXFxuICAgIH1cXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLmkJzntKJcXFwiLFxcXCJwYXRoXFxcIjpcXFwic2VhclxcXCIsXFxcInJ1bGVcXFwiOlxcXCJ2YXIgcmVzID0ge307XFxcXG52YXIgaXRlbXMgPSBbXTtcXFxcbi8v6K6+572u5pCc57Si57q/56iLXFxcXG52YXIgc3Ntb2RlID0gSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9maWxlcy9ydWxlcy94eXEvYXBwbXNldC5qc29uJywge30pKS5zc21vZGU7XFxcXG52YXIga2V5ID0gTVlfVVJMLnNwbGl0KCckJCQnKVsxXTtcXFxcbi8vc2V0RXJyb3IobGUpO1xcXFxuaWYgKHNzbW9kZSA9PSAnMCcpIHtcXFxcbiAgICBzZXRQYWdlVGl0bGUoa2V5ICsgJyDnmoTmkJzntKLnu5PmnpwnKVxcXFxufTtcXFxcbnZhciBodG1sID0gSlNPTi5wYXJzZShKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvUmVzQ29kZScsIHt9KSkucnVsZSk7XFxcXG52YXIgZGxpc3QgPSBodG1sLmRhdGE7XFxcXG5cXFxcbmZ1bmN0aW9uIHJhbmRvbVNvcnQzKGFycikge1xcXFxuICAgIGFyci5zb3J0KGZ1bmN0aW9uKGEsIGIpIHtcXFxcbiAgICAgICAgcmV0dXJuIE1hdGgucmFuZG9tKCkgLSAwLjU7XFxcXG4gICAgfSk7XFxcXG4gICAgcmV0dXJuIGFycjtcXFxcbn1cXFxcblxcXFxuLy/miZPkubHpobrluo9cXFxcbnZhciByYW5kb20gPSB0cnVlO1xcXFxuXFxcXG5mb3IgKHZhciBpID0gMDsgaSA8IGRsaXN0Lmxlbmd0aDsgaSsrKSB7XFxcXG4gICAgdmFyIGxpc3QgPSBkbGlzdFtpXS5saXN0O1xcXFxuICAgIHZhciB0eXRpdCA9IGRsaXN0W2ldLnRpdGxlXFxcXG4gICAgaWYgKHJhbmRvbSkge1xcXFxuICAgICAgICBsZXQgayA9IGdldFZhcihNWV9SVUxFLnRpdGxlICsgXFxcXFxcXCItXFxcXFxcXCIgKyB0eXRpdCwgXFxcXFxcXCJcXFxcXFxcIik7XFxcXG4gICAgICAgIGlmIChrID09IFxcXFxcXFwiXFxcXFxcXCIpIHtcXFxcbiAgICAgICAgICAgIGxpc3QgPSByYW5kb21Tb3J0MyhsaXN0KVxcXFxuICAgICAgICAgICAgcHV0VmFyKE1ZX1JVTEUudGl0bGUgKyBcXFxcXFxcIi1cXFxcXFxcIiArIHR5dGl0LCBKU09OLnN0cmluZ2lmeShsaXN0KSlcXFxcbiAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgIGxpc3QgPSBKU09OLnBhcnNlKGspXFxcXG4gICAgICAgIH1cXFxcbiAgICB9XFxcXG4gICAgaWYgKHNzbW9kZSA9PSAnMCcpIHtcXFxcbiAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICB0aXRsZTogTVlfVFlQRSA9PSBcXFxcXFxcImhvbWVcXFxcXFxcIiA/IGRsaXN0W2ldLnRpdGxlICsgXFxcXFxcXCIg6YCJ5oup5LiA5Liq6aG555uu5p+l55yLIOKAnOKAnFxcXFxcXFwiICsga2V5ICsgXFxcXFxcXCLigJ3igJ0g55qE5pCc57Si57uT5p6cXFxcXFxcXCIgOiBkbGlzdFtpXS50aXRsZSArIFxcXFxcXFwiIOmAieaLqeS4gOS4qumhueebruafpeeciyBcXFxcXFxcIiArIGtleSArIFxcXFxcXFwiIOeahOaQnOe0oue7k+aenFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG4gICAgICAgIH0pO1xcXFxuXFxcXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKykge1xcXFxuICAgICAgICAgICAgdmFyIGxpbmsgPSBsaXN0W2pdLnVybDtcXFxcblxcXFxuICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHl0aXQpKSB7XFxcXG4gICAgICAgICAgICAgICAgaWYgKGxpbmsuaW5kZXhPZignYXBpLnBocC9hcHAvJykgIT0gLTEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICdzZWFyY2g/cGc9ZnlwYWdlJnRleHQ9JyArIGtleSArICcmdG9rZW49JztcXFxcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGxpbmsuaW5kZXhPZigneGdhcHAucGhwL3YxLycpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnc2VhcmNoP3BnPWZ5cGFnZSZ0ZXh0PScgKyBrZXk7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICc/cGFnZT1meXBhZ2UmbGltaXQ9MTAmd2Q9JyArIGtleTtcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKC9UVuW9seinhi8udGVzdCh0eXRpdCkpIHtcXFxcbiAgICAgICAgICAgICAgICBpZiAoLzE5anh8MjkzeXN8emhhaWthbnlzfGppXFxcXFxcXFwtZGluZ1xcXFxcXFxcLWhlfHBob2ViZXx5dW5ib1xcXFxcXFxcLmJ4aW58bGFucmVudGt8aGV0YW95c3w4ZDhxfGx4eXl5fHB4dW58MTM5XFxcXFxcXFwuMTU1Ly50ZXN0KGxpbmspKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmem09JyArIGtleSArICcmcGFnZT1meXBhZ2UnO1xcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmd2Q9JyArIGtleSArICcmcGFnZT1meXBhZ2UnO1xcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgIHRpdGxlOiBsaXN0W2pdLnRpdGxlLFxcXFxuICAgICAgICAgICAgICAgIHVybDogJCgnaGlrZXI6Ly9lbXB0eSN4IycgKyBobXVybCArICcjeCMnICsgbGluayArICcjeCMnICsgdHl0aXQgKyAnI3gjJyArIGtleSArICcjeCMnKS5ydWxlKCgpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2Uvc2VhcmVyaicsIHt9KSkucnVsZSk7XFxcXG4gICAgICAgICAgICAgICAgfSksXFxcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzMnXFxcXG4gICAgICAgICAgICAgICAgLy9saW5rOmxpbmssXFxcXG4gICAgICAgICAgICAgICAgLy90eXBlOiBpXFxcXG4gICAgICAgICAgICB9KTtcXFxcblxcXFxuICAgICAgICB9IC8vZm9yIGpcXFxcblxcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgdGl0bGU6IE1ZX1RZUEUgPT0gXFxcXFxcXCJob21lXFxcXFxcXCIgPyBcXFxcXFxcIueCueWHu+afpeeciyBcXFxcXFxcIit0eXRpdCtcXFxcXFxcIiDliIbnsbsg4oCc4oCcXFxcXFxcXCIgKyBrZXkgKyBcXFxcXFxcIuKAneKAnSDnmoTmkJzntKLnu5PmnpxcXFxcXFxcIiA6IFxcXFxcXFwi54K55Ye75p+l55yLIFxcXFxcXFwiK3R5dGl0K1xcXFxcXFwiIOWIhuexuyBcXFxcXFxcIiArIGtleSArIFxcXFxcXFwiIOeahOaQnOe0oue7k+aenFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgdXJsOiAkKCdoaWtlcjovL2VtcHR5JCQkJyArIGtleSArICckJCRmeXBhZ2UkJCQnKS5ydWxlKChsaXN0LCB0eXRpdCkgPT4ge1xcXFxuICAgICAgICAgICAgICAgIHZhciByZXMgPSB7fTtcXFxcbiAgICAgICAgICAgICAgICB2YXIgaXRlbXMgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICAvL+WPluaQnOe0oue6v+eoi+iuvue9rlxcXFxuICAgICAgICAgICAgICAgIHZhciBzc3hjID0gSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9maWxlcy9ydWxlcy94eXEvYXBwbXNldC5qc29uJywge30pKS5zc2NvdW50O1xcXFxuICAgICAgICAgICAgICAgIC8v6K6+572u6LaF5pe25pe26Ze077yM6LaK5bCP6LaK5b+r77yM5Y2V5L2N5q+r56eSXFxcXG4gICAgICAgICAgICAgICAgLy92YXIgdGltZW91ID0gNTAwMDtcXFxcbiAgICAgICAgICAgICAgICB2YXIga2V5ID0gTVlfVVJMLnNwbGl0KCckJCQnKVsxXTtcXFxcbiAgICAgICAgICAgICAgICB2YXIgbnVtID0gTVlfVVJMLnNwbGl0KCckJCQnKVsyXTtcXFxcbiAgICAgICAgICAgICAgICB2YXIgbGUgPSBwYXJzZUludChudW0gKiBzc3hjKTtcXFxcbiAgICAgICAgICAgICAgICB2YXIgRGF0YSA9IFtdO1xcXFxuICAgICAgICAgICAgICAgIHZhciBUaXQgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBqID0gbGUgLSBzc3hjOyBqIDwgbGU7IGorKykge1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoaiA8IGxpc3QubGVuZ3RoKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGluayA9IGxpc3Rbal0udXJsO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoL0FQUOW9seinhi8udGVzdCh0eXRpdCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobGluay5pbmRleE9mKCdhcGkucGhwL2FwcC8nKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaG11cmwgPSBsaW5rICsgJ3NlYXJjaD9wZz0xJnRleHQ9JyArIGtleSArICcmdG9rZW49JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGxpbmsuaW5kZXhPZigneGdhcHAucGhwL3YxLycpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnc2VhcmNoP3BnPTEmdGV4dD0nICsga2V5O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP3BhZ2U9MSZsaW1pdD0xMCZ3ZD0nICsga2V5O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5dGl0KSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvMTlqeHwyOTN5c3x6aGFpa2FueXN8amlcXFxcXFxcXC1kaW5nXFxcXFxcXFwtaGV8cGhvZWJlfHl1bmJvXFxcXFxcXFwuYnhpbnxsYW5yZW50a3xoZXRhb3lzfDhkOHF8bHh5eXl8cHh1bnwxMzlcXFxcXFxcXC4xNTUvLnRlc3QobGluaykpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGhtdXJsID0gbGluayArICc/YWM9bGlzdCZ6bT0nICsga2V5ICsgJyZwYWdlPTEnO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBobXVybCA9IGxpbmsgKyAnP2FjPWxpc3Qmd2Q9JyArIGtleSArICcmcGFnZT0xJztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL0RhdGEucHVzaCh7dXJsOiBobXVybCxvcHRpb25zOiB7aGVhZGVyczoge1xcXFxcXFwiVXNlci1BZ2VudFxcXFxcXFwiOiBcXFxcXFxcIkRhcnQvMi4xMyAoZGFydDppbylcXFxcXFxcIn0sdGltZW91dDogdGltZW91fX0pO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgRGF0YS5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGhtdXJsLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcXFxcXCJVc2VyLUFnZW50XFxcXFxcXCI6IFxcXFxcXFwiRGFydC8yLjEzIChkYXJ0OmlvKVxcXFxcXFwiXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFRpdC5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXQ6IGxpc3Rbal0udGl0bGUsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluazogbGluayxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBubTogdHl0aXRcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xcXFxuICAgICAgICAgICAgICAgICAgICB9IC8vaWZcXFxcbiAgICAgICAgICAgICAgICB9IC8vZm9yIGpcXFxcblxcXFxuICAgICAgICAgICAgICAgIC8vLS0t5Luj56CB5YiG55WM57q/LS0tLSBcXFxcbiAgICAgICAgICAgICAgICBpZiAoRGF0YSAhPSAnJykge1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgYmh0bWwgPSBiYXRjaEZldGNoKERhdGEpO1xcXFxuICAgICAgICAgICAgICAgICAgICAvL3dyaXRlRmlsZShcXFxcXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMveHlxL2FwcEVycm9yLmpzb25cXFxcXFxcIixKU09OLnN0cmluZ2lmeShiaHRtbCkpO1xcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGsgPSAwOyBrIDwgYmh0bWwubGVuZ3RoOyBrKyspIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBodG1sID0gYmh0bWxba107XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyhodG1sKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGh0bWwuc3Vic3RyaW5nKDAsIDIpID09ICdcXFxcXFxcXHJcXFxcXFxcXG4nID8gaHRtbC5yZXBsYWNlKCdcXFxcXFxcXHJcXFxcXFxcXG4nLCAnJykgOiBodG1sO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvYnR3YWYvLnRlc3QoaHRtbCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sID0gZmV0Y2goRGF0YVtrXS51cmwgKyAnJmJ0d2FmJyArIGh0bWwubWF0Y2goL2J0d2FmKC4qPylcXFxcXFxcXFxcXFxcXFwiLylbMV0sIHt9KTtcXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGh0bWwgPT0gXFxcXFxcXCJcXFxcXFxcIiB8fCBodG1sID09IG51bGwgfHwgaHRtbC5zdWJzdHJpbmcoMCwgNSkgPT0gJ2Vycm9yJyB8fCAhaHRtbC5zdGFydHNXaXRoKCd7JykpIHtcXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogVGl0W2tdLnRpdCArICcgJyArICfmnKrmkJzntKLliLDvvIzngrnlh7vorr/pl67ljp/nvZHpobUnLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IERhdGFba10udXJsICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGh0bWwubGVuZ3RoIDwgODApIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFRpdFtrXS50aXQgKyAnICcgKyAn6L+U5Zue5pWw5o2u5LiN5a6M5pW077yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBEYXRhW2tdLnVybCArIGBAbGF6eVJ1bGU9LmpzOmlucHV0LnNwbGl0KCc7JylbMF1gLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKGh0bWwpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vbG9nKGh0bWwpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0eXBldCA9IFRpdFtrXS50eXBubTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdGRvbWluID0gVGl0W2tdLmxpbms7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGh0bWwubGlzdCkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGlzdCA9IGh0bWwubGlzdDtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGh0bWwuZGF0YS5saXN0KSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChodG1sLmRhdGEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxpc3QgPSBodG1sLmRhdGE7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxpc3QgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDwgMSkge1xcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IFRpdFtrXS50aXQgKyAnICcgKyAn5YiX6KGo5bCP5LqOMe+8jOaXoOazleWxleekuu+8jOeCueWHu+iuv+mXruWOn+e9kemhtScsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IERhdGFba10udXJsICsgYEBsYXp5UnVsZT0uanM6aW5wdXQuc3BsaXQoJzsnKVswXWAsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XFxcXG5cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvVFblvbHop4YvLnRlc3QodHlwZXQpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtpXS50aXRsZTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS5waWM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IGxpc3RbaV0ubmV4dGxpbms7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0uc3RhdGU7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9BUFDlvbHop4YvLnRlc3QodHlwZXQpKSB7XFxcXG5cXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGRvbWluLmluZGV4T2YoJ2FwaS5waHAvYXBwLycpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnZvZF9waWM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWQgPSB0ZG9taW4gKyAndmlkZW9fZGV0YWlsP2lkPScgKyBsaXN0W2ldLnZvZF9pZCArICcmdG9rZW49JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIGNvbj1saXN0W2ldLnR5cGUudHlwZV9kZXM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0ZG9taW4uaW5kZXhPZigneGdhcHAucGhwL3YxLycpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnZvZF9waWM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2aWQgPSB0ZG9taW4gKyAndmlkZW9fZGV0YWlsP2lkPScgKyBsaXN0W2ldLnZvZF9pZDtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlbSA9IGxpc3RbaV0udm9kX3JlbWFya3M7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIGNvbj1saXN0W2ldLnR5cGUudHlwZV9kZXM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtpXS52b2RfbmFtZTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHBpYyA9IGxpc3RbaV0udm9kX3BpYztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZpZCA9IHRkb21pbiArICcvZGV0YWlsP3ZvZF9pZD0nICsgbGlzdFtpXS52b2RfaWQgKyAnJnRva2VuPSc7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcblxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy92YXIgY29uPWxpc3RbaV0uc3RhdGU7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyh2aWQpO1xcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogTVlfVFlQRSA9PSBcXFxcXFxcImhvbWVcXFxcXFxcIiA/IHRpdGxlLnJlcGxhY2Uoa2V5LCAn4oCc4oCcJyArIGtleSArICfigJ3igJ0nKSArICdcXFxcXFxcXG4nICsgcmVtIDogdGl0bGUgKyByZW0sXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogcGljICsgJ0BSZWZlcmVyPScsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAkKHZpZCArICc7Z2V0O3V0Zi04O3tVc2VyLUFnZW50QERhcnQvMi4xMyAoZGFydDppbyl9JykucnVsZSgodHlwZXQpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlcyA9IHt9O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbXMgPSBbXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKGdldFJlc0NvZGUoKSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICcnLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogJzI1NSYmZmxvYXQnLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnJyxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAneDVfd2Vidmlld19zaW5nbGUnXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbXl1cmwgPSBNWV9VUkwubWF0Y2goLyhbXFxcXFxcXFxTXSo/OlxcXFxcXFxcL1xcXFxcXFxcL1tcXFxcXFxcXFNdKj8pXFxcXFxcXFwvLylbMV07XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvQVBQ5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvYXBwbW92bGlzdCcsIHt9KSkucnVsZSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvdHZtb3ZsaXN0Jywge30pKS5ydWxlKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcXFxuXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5kYXRhID0gaXRlbXM7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEhvbWVSZXN1bHQocmVzKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCB0eXBldCksXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9jb250ZW50OiByZW0sXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogdHlwZXQgKyAnID0+ICcgKyBUaXRba10udGl0LFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWMnXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAvL2ZvciBpXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAvL2lmIGxpc3QubGVuZ3RoXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gLy9mb3IgayBiaHRtbC5sZW5ndGhcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG5cXFxcbiAgICAgICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcXFxuICAgICAgICAgICAgICAgIHNldEhvbWVSZXN1bHQocmVzKTtcXFxcbiAgICAgICAgICAgIH0sIGxpc3QsIHR5dGl0KSxcXFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcXFxuICAgICAgICB9KTtcXFxcblxcXFxuICAgIH1cXFxcblxcXFxufSAvL2ZvciBpXFxcXG5cXFxcblxcXFxucmVzLmRhdGEgPSBpdGVtcztcXFxcbnNldEhvbWVSZXN1bHQocmVzKTtcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCJBUFDliIbnsbvliJfooahcXFwiLFxcXCJwYXRoXFxcIjpcXFwiYXBwbGlzdGRhdGFcXFwiLFxcXCJydWxlXFxcIjpcXFwiaWYgKGh0bWwubGlzdCkge1xcXFxuICAgIHZhciBsaXN0ID0gaHRtbC5saXN0O1xcXFxufSBlbHNlIGlmIChodG1sLmRhdGEmJmh0bWwuZGF0YS5saXN0KSB7XFxcXG4gICAgdmFyIGxpc3QgPSBodG1sLmRhdGEubGlzdDtcXFxcbn0gZWxzZSB7XFxcXG4gICAgdmFyIGxpc3QgPSBodG1sLmRhdGE7XFxcXG59XFxcXG4vL2xvZyhsaXN0KTtcXFxcbmZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcXFxuICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxcXG4gICAgdmFyIGltZyA9IGxpc3RbaV0udm9kX3BpYztcXFxcbiAgICB2YXIgdXJsID0gbGlzdFtpXS52b2RfaWQ7XFxcXG4gICAgdmFyIGRlc2MgPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcXFxuICAgIGlmKGh0bWwubGlzdCl7XFxcXG4gICAgICAgIC8vbG9nKCdodG1sLmxpc3QnKTtcXFxcbiAgICAgICAgdmFyIGxpbmsgPSBtdXJsICsgJ3ZpZGVvX2RldGFpbD9pZD0nICsgdXJsICsgJyZ0b2tlbj07Z2V0O3V0Zi04O3tVc2VyLUFnZW50QERhcnQvMi4xMyAoZGFydDppbyl9JztcXFxcbiAgICB9ZWxzZSBpZiAoaHRtbC5kYXRhJiZodG1sLmRhdGEubGlzdCkge1xcXFxuICAgICAgICAvL2xvZygnaHRtbC5kYXRhLmxpc3QnKTtcXFxcbiAgICAgICAgdmFyIGxpbmsgPSBtdXJsICsgJy9kZXRhaWw/dm9kX2lkPScgKyB1cmwgKyAnJnJlbF9saW1pdD0xMDtnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX0nO1xcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIC8vbG9nKCdlbHNlJyk7XFxcXG4gICAgICAgIHZhciBsaW5rID0gbXVybCArICd2aWRlb19kZXRhaWw/aWQ9JyArIHVybCArICcmdG9rZW49O2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxcXG4gICAgfVxcXFxuICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICB0aXRsZTogdGl0bGUsXFxcXG4gICAgICAgIHBpY191cmw6IGltZyArICdAUmVmZXJlcj0nLFxcXFxuICAgICAgICB1cmw6ICQobGluaykucnVsZSgoKSA9PiB7XFxcXG4gICAgICAgICAgICB2YXIgcmVzID0ge307XFxcXG4gICAgICAgICAgICB2YXIgaXRlbXMgPSBbXTtcXFxcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgICAgIHRpdGxlOiAnJyxcXFxcbiAgICAgICAgICAgICAgICBkZXNjOiAnMjU1JiZmbG9hdCcsXFxcXG4gICAgICAgICAgICAgICAgdXJsOiAnJyxcXFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJ1xcXFxuICAgICAgICAgICAgfSk7XFxcXG4gICAgICAgICAgICByZWZyZXNoWDVXZWJWaWV3KCcnKTtcXFxcbiAgICAgICAgICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShnZXRSZXNDb2RlKCkpO1xcXFxuICAgICAgICAgICAgdmFyIG15dXJsID0gTVlfVVJMLm1hdGNoKC8oW1xcXFxcXFxcU10qPzpcXFxcXFxcXC9cXFxcXFxcXC9bXFxcXFxcXFxTXSo/KVxcXFxcXFxcLy8pWzFdO1xcXFxuICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvYXBwbW92bGlzdCcsIHt9KSkucnVsZSk7XFxcXG4gICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcXFxuICAgICAgICAgICAgc2V0SG9tZVJlc3VsdChyZXMpO1xcXFxuICAgICAgICB9KSxcXFxcbiAgICAgICAgZGVzYzogZGVzYyxcXFxcbiAgICAgICAgY29sX3R5cGU6ICdtb3ZpZV8zX21hcnF1ZWUnXFxcXG4gICAgfSk7XFxcXG59XFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwiVFbliJfooajop6PmnpBcXFwiLFxcXCJwYXRoXFxcIjpcXFwidHZsaXN0ZGF0YVxcXCIsXFxcInJ1bGVcXFwiOlxcXCJ2YXIgbGlzdCA9IGh0bWwuZGF0YTtcXFxcbmZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcXFxuICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udGl0bGU7XFxcXG4gICAgdmFyIGltZyA9IGxpc3RbaV0ucGljO1xcXFxuICAgIHZhciB1cmwgPSBsaXN0W2ldLm5leHRsaW5rO1xcXFxuICAgIHZhciBkZXNjID0gbGlzdFtpXS5zdGF0ZTtcXFxcbiAgICB1cmwgPSB1cmwuc3RhcnRzV2l0aCgnaHR0cCcpID8gdXJsIDogbXVybCArICc/YWM9ZGV0YWlsJmlkcz0nICsgdXJsO1xcXFxuICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICB0aXRsZTogdGl0bGUsXFxcXG4gICAgICAgIHBpY191cmw6IGltZyArICdAUmVmZXJlcj0nLFxcXFxuICAgICAgICB1cmw6ICQodXJsKS5ydWxlKCgpID0+IHtcXFxcbiAgICAgICAgICAgIHZhciByZXMgPSB7fTtcXFxcbiAgICAgICAgICAgIHZhciBpdGVtcyA9IFtdO1xcXFxuICAgICAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKGdldFJlc0NvZGUoKSk7XFxcXG4gICAgICAgICAgICB2YXIgbXl1cmwgPSBNWV9VUkwubWF0Y2goLyhbXFxcXFxcXFxTXSo/OlxcXFxcXFxcL1xcXFxcXFxcL1tcXFxcXFxcXFNdKj8pXFxcXFxcXFwvLylbMV07XFxcXG4gICAgICAgICAgICBpdGVtcy5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICB0aXRsZTogJycsXFxcXG4gICAgICAgICAgICAgICAgZGVzYzogJzI1NSYmZmxvYXQnLFxcXFxuICAgICAgICAgICAgICAgIHVybDogJycsXFxcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZSdcXFxcbiAgICAgICAgICAgIH0pO1xcXFxuICAgICAgICAgICAgcmVmcmVzaFg1V2ViVmlldygnJyk7XFxcXG4gICAgICAgICAgICBldmFsKEpTT04ucGFyc2UoZmV0Y2goJ2hpa2VyOi8vcGFnZS90dm1vdmxpc3QnLCB7fSkpLnJ1bGUpO1xcXFxuICAgICAgICAgICAgcmVzLmRhdGEgPSBpdGVtcztcXFxcbiAgICAgICAgICAgIHNldEhvbWVSZXN1bHQocmVzKTtcXFxcbiAgICAgICAgfSksXFxcXG4gICAgICAgIGRlc2M6IGRlc2MsXFxcXG4gICAgICAgIGNvbF90eXBlOiAnbW92aWVfM19tYXJxdWVlJ1xcXFxuICAgIH0pO1xcXFxufVxcXCJ9LHtcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcIkFQUOeugOS7i+S4jumAiembhlxcXCIsXFxcInBhdGhcXFwiOlxcXCJhcHBtb3ZsaXN0XFxcIixcXFwicnVsZVxcXCI6XFxcImlmIChodG1sLmRhdGEudm9kX3VybF93aXRoX3BsYXllcikge1xcXFxuICAgIHZhciBjb250cyA9IGh0bWwuZGF0YS52b2RfdXJsX3dpdGhfcGxheWVyO1xcXFxuICAgIGlmIChjb250cy5sZW5ndGggPCAxKSB7XFxcXG4gICAgICAgIGNvbnRzID0gaHRtbC5kYXRhLnZvZF9wbGF5X3VybC5zcGxpdCgnJCQkJyk7XFxcXG4gICAgICAgIHZhciB0YWJzID0gaHRtbC5kYXRhLnZvZF9wbGF5X2Zyb20uc3BsaXQoJyQkJCcpO1xcXFxuICAgIH1cXFxcbn0gZWxzZSBpZiAoaHRtbC5kYXRhLnZvZF9pbmZvICYmIGh0bWwuZGF0YS52b2RfaW5mby52b2RfdXJsX3dpdGhfcGxheWVyKSB7XFxcXG4gICAgdmFyIGNvbnRzID0gaHRtbC5kYXRhLnZvZF9pbmZvLnZvZF91cmxfd2l0aF9wbGF5ZXI7XFxcXG4gICAgaWYgKGNvbnRzLmxlbmd0aCA8IDEpIHtcXFxcbiAgICAgICAgY29udHMgPSBodG1sLmRhdGEudm9kX2luZm8udm9kX3BsYXlfdXJsLnNwbGl0KCckJCQnKTtcXFxcbiAgICAgICAgdmFyIHRhYnMgPSBodG1sLmRhdGEudm9kX2luZm8udm9kX3BsYXlfZnJvbS5zcGxpdCgnJCQkJyk7XFxcXG4gICAgfVxcXFxufSBlbHNlIHtcXFxcbiAgICB2YXIgY29udHMgPSBodG1sLmRhdGEudm9kX3BsYXlfbGlzdDtcXFxcbiAgICBpZiAoY29udHMubGVuZ3RoIDwgMSkge1xcXFxuICAgICAgICBjb250cyA9IGh0bWwuZGF0YS52b2RfcGxheV91cmwuc3BsaXQoJyQkJCcpO1xcXFxuICAgICAgICB2YXIgdGFicyA9IGh0bWwuZGF0YS52b2RfcGxheV9mcm9tLnNwbGl0KCckJCQnKTtcXFxcbiAgICB9XFxcXG59XFxcXG5cXFxcbi8vbG9nKGNvbnRzKTtcXFxcblxcXFxudmFyIHRodW1iID0gaHRtbC5kYXRhLnZvZF9pbmZvID8gaHRtbC5kYXRhLnZvZF9pbmZvLnZvZF9waWMgOiBodG1sLmRhdGEudm9kX3BpYztcXFxcbml0ZW1zLnB1c2goe1xcXFxuICAgIHRpdGxlOiAn5Ymn5oOF566A5LuL77yaJyxcXFxcbiAgICBkZXNjOiBodG1sLmRhdGEudm9kX2luZm8gPyBodG1sLmRhdGEudm9kX2luZm8udm9kX2NvbnRlbnQgOiBodG1sLmRhdGEudm9kX2NvbnRlbnQsXFxcXG4gICAgcGljX3VybDogdGh1bWIsXFxcXG4gICAgdXJsOiB0aHVtYixcXFxcbiAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljJ1xcXFxufSk7XFxcXG5cXFxcbmZvciAodmFyIGkgPSAwOyBpIDwgY29udHMubGVuZ3RoOyBpKyspIHtcXFxcbiAgICBpZiAoY29udHNbaV0udXJsKSB7XFxcXG4gICAgICAgIHZhciBsaXN0ID0gY29udHNbaV0udXJsLnNwbGl0KFxcXFxcXFwiI1xcXFxcXFwiKTtcXFxcbiAgICB9IGVsc2Uge1xcXFxuICAgICAgICB2YXIgbGlzdCA9IGNvbnRzW2ldLnNwbGl0KFxcXFxcXFwiI1xcXFxcXFwiKTtcXFxcbiAgICB9XFxcXG4gICAgLy9zZXRFcnJvcihsaXN0Lmxlbmd0aCk7XFxcXG4gICAgaWYgKGh0bWwuZGF0YS52b2RfdXJsX3dpdGhfcGxheWVyKSB7XFxcXG4gICAgICAgIHZhciBwdGFiID0gY29udHNbaV0uY29kZSA/IGNvbnRzW2ldLmNvZGUgOiB0YWJzW2ldO1xcXFxuICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhLnZvZF9pbmZvICYmIGh0bWwuZGF0YS52b2RfaW5mby52b2RfdXJsX3dpdGhfcGxheWVyKSB7XFxcXG4gICAgICAgIHZhciBwdGFiID0gY29udHNbaV0uY29kZSA/IGNvbnRzW2ldLmNvZGUgOiB0YWJzW2ldO1xcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIHZhciBwdGFiID0gY29udHNbaV0uZnJvbSA/IGNvbnRzW2ldLmZyb20gOiB0YWJzW2ldO1xcXFxuICAgIH1cXFxcbiAgICBpdGVtcy5wdXNoKHtcXFxcbiAgICAgICAgdGl0bGU6IHB0YWIgKyAnIPCflJcnICsgW2kgKyAxXSArICcvJyArIFtjb250cy5sZW5ndGhdLFxcXFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXFxcbiAgICB9KTtcXFxcbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKyspIHtcXFxcbiAgICAgICAgdHJ5IHtcXFxcbiAgICAgICAgICAgIGlmIChodG1sLmRhdGEudm9kX3VybF93aXRoX3BsYXllcikge1xcXFxuICAgICAgICAgICAgICAgIHZhciBqaWVrID0gY29udHNbaV0ucGFyc2VfYXBpO1xcXFxuICAgICAgICAgICAgICAgIGlmIChqaWVrICE9ICcnICYmIGppZWsgIT0gbnVsbCkge1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoamllay5zdWJzdHJpbmcoMCwgNCkgPT0gJ2h0dHAnKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBqaWVrID0gamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqaWVrLnN1YnN0cmluZygwLCAyKSA9PSAnXFxcXFxcXFwvXFxcXFxcXFwvJykge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczonICsgamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH1cXFxcblxcXFxuICAgICAgICAgICAgICAgIHZhciBsaW5rID0gamllayArIGxpc3Rbal0uc3BsaXQoXFxcXFxcXCIkXFxcXFxcXCIpWzFdO1xcXFxuICAgICAgICAgICAgICAgIGlmICgvXFxcXFxcXFwubTN1OHxcXFxcXFxcXC5tcDR8b2JqXFxcXFxcXFwvdG9zLy50ZXN0KGxpbmspICYmIC9odHRwLy50ZXN0KGxpbmspKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIGxpbmsgPSBsaXN0W2pdLnNwbGl0KFxcXFxcXFwiJFxcXFxcXFwiKVsxXTtcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGh0bWwuZGF0YS52b2RfaW5mbyAmJiBodG1sLmRhdGEudm9kX2luZm8udm9kX3VybF93aXRoX3BsYXllcikge1xcXFxuICAgICAgICAgICAgICAgIHZhciBqaWVrID0gY29udHNbaV0ucGFyc2VfYXBpO1xcXFxuICAgICAgICAgICAgICAgIGlmIChqaWVrICE9ICcnICYmIGppZWsgIT0gbnVsbCkge1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoamllay5zdWJzdHJpbmcoMCwgNCkgPT0gJ2h0dHAnKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBqaWVrID0gamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqaWVrLnN1YnN0cmluZygwLCAyKSA9PSAnXFxcXFxcXFwvXFxcXFxcXFwvJykge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczonICsgamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL2Nva2Vtdi8udGVzdChteXVybCkgJiYgL2Nva2VxaWV8eGlufDkwbW0vLnRlc3QocHRhYikpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczovL3BsYXllci45MG1tLm1lL3BsYXkucGhwP3VybD0nO1xcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICB2YXIgbGluayA9IGppZWsgKyBsaXN0W2pdLnNwbGl0KFxcXFxcXFwiJFxcXFxcXFwiKVsxXTtcXFxcbiAgICAgICAgICAgICAgICBpZiAoL1xcXFxcXFxcLm0zdTh8XFxcXFxcXFwubXA0fG9ialxcXFxcXFxcL3Rvcy8udGVzdChsaW5rKSAmJiAvaHR0cC8udGVzdChsaW5rKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICBsaW5rID0gbGlzdFtqXS5zcGxpdChcXFxcXFxcIiRcXFxcXFxcIilbMV07XFxcXG4gICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICBpZiAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UyICYmIChjb250c1tpXS5wbGF5ZXJfaW5mby5wYXJzZTIpLmluZGV4T2YoXFxcXFxcXCI9XFxcXFxcXCIpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBqaWVrID0gKGNvbnRzW2ldLnBsYXllcl9pbmZvLnBhcnNlMikubWF0Y2goLy4qP3VybD18Lio/dj18Lio/dmlkPS8pWzBdLnJlcGxhY2UoXFxcXFxcXCIuLlxcXFxcXFwiLCBcXFxcXFxcIi5cXFxcXFxcIikucmVwbGFjZSgnanNvbmJzJywgJycpO1xcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoY29udHNbaV0ucGxheWVyX2luZm8ucGFyc2UgJiYgKGNvbnRzW2ldLnBsYXllcl9pbmZvLnBhcnNlKS5pbmRleE9mKFxcXFxcXFwiPVxcXFxcXFwiKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgamllayA9IChjb250c1tpXS5wbGF5ZXJfaW5mby5wYXJzZSkubWF0Y2goLy4qP3VybD18Lio/dj18Lio/dmlkPS8pWzBdLnJlcGxhY2UoXFxcXFxcXCIuLlxcXFxcXFwiLCBcXFxcXFxcIi5cXFxcXFxcIik7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgdmFyIGppZWsgPSBcXFxcXFxcIlxcXFxcXFwiO1xcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAvL3NldEVycm9yKGppZWspO1xcXFxuICAgICAgICAgICAgICAgIGlmIChqaWVrICE9ICcnICYmIGppZWsgIT0gbnVsbCkge1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoamllay5zdWJzdHJpbmcoMCwgNCkgPT0gJ2h0dHAnKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBqaWVrID0gamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqaWVrLnN1YnN0cmluZygwLCAyKSA9PSAnXFxcXFxcXFwvXFxcXFxcXFwvJykge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgamllayA9ICdodHRwczonICsgamllaztcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICB2YXIgbGluayA9IGppZWsgKyBsaXN0W2pdLnNwbGl0KFxcXFxcXFwiJFxcXFxcXFwiKVsxXTtcXFxcbiAgICAgICAgICAgICAgICAvL2xvZyhsaW5rKTtcXFxcbiAgICAgICAgICAgICAgICBpZiAoL1xcXFxcXFxcLm0zdTh8XFxcXFxcXFwubXA0fG9ialxcXFxcXFxcL3Rvcy8udGVzdChsaXN0W2pdLnNwbGl0KFxcXFxcXFwiJFxcXFxcXFwiKVsxXSkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgbGluayA9IGxpc3Rbal0uc3BsaXQoXFxcXFxcXCIkXFxcXFxcXCIpWzFdO1xcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgIH1cXFxcbiAgICAgICAgfSBjYXRjaCAoZSkge1xcXFxuICAgICAgICAgICAgbGluayA9IGxpc3Rbal0uc3BsaXQoXFxcXFxcXCIkXFxcXFxcXCIpWzFdO1xcXFxuICAgICAgICB9XFxcXG4gICAgICAgIC8vbG9nKGxpbmspO1xcXFxuICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2pdLnNwbGl0KFxcXFxcXFwiJFxcXFxcXFwiKVswXTtcXFxcbiAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDw9IDQpIHtcXFxcbiAgICAgICAgICAgIHZhciBjbHQgPSAndGV4dF8yJztcXFxcbiAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgIHZhciBjbHQgPSBpc05hTih0aXRsZSkgPyAnZmxleF9idXR0b24nIDogJ3RleHRfNSdcXFxcbiAgICAgICAgfTtcXFxcbiAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgocHRhYiwgbGluaywgbXl1cmwpID0+IHtcXFxcbiAgICAgICAgICAgICAgICB2YXIgc3JjdXJsID0gbGluaztcXFxcbiAgICAgICAgICAgICAgICAvL2xvZyhzcmN1cmwpO1xcXFxuICAgICAgICAgICAgICAgIC8v5Yqo5oCB6Kej5p6Q5Luj56CB5byA5aeLXFxcXG4gICAgICAgICAgICAgICAgdHJ5IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgLy/lpITnkIbmjIflrprop4bpopHkuI7nur/ot69cXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKC9cXFxcXFxcXC5tM3U4fFxcXFxcXFxcLm1wNHxvYmpcXFxcXFxcXC90b3MvLnRlc3Qoc3JjdXJsKSAmJiAvaHR0cC8udGVzdChzcmN1cmwpICYmICEvXFxcXFxcXFwuaHRtbC8udGVzdChzcmN1cmwpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gL1xcXFxcXFxcPS8udGVzdChzcmN1cmwpID8gc3JjdXJsLnNwbGl0KCc9JylbMV0gOiBzcmN1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnO1xcXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNyY3VybC5pbmRleE9mKFxcXFxcXFwiL3NoYXJlL1xcXFxcXFwiKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGluayA9IHNyY3VybC5zcGxpdChcXFxcXFxcIi9zaGFyZVxcXFxcXFwiKVswXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZmMgPSBmZXRjaChzcmN1cmwsIHt9KS5yZXBsYWNlKFxcXFxcXFwidmFyIHB1cmxcXFxcXFxcIiwgXFxcXFxcXCJ2YXIgbWFpblxcXFxcXFwiKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmMuaW5kZXhPZihcXFxcXFxcIm1haW5cXFxcXFxcIikgIT0gLTEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG1hdCA9IGZjLm1hdGNoKC92YXIgbWFpbi4qPzsvKVswXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChtYXQpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGxheSA9IChtYWluLmluZGV4T2YoXFxcXFxcXCJodHRwXFxcXFxcXCIpICE9IC0xID8gbWFpbiA6IGxpbmsgKyBtYWluKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWFpbiA9IGZjLm1hdGNoKC91cmw6Lio/W1xcXFxcXFxcJ1xcXFxcXFxcXFxcXFxcXCJdKC4qPylbXFxcXFxcXFwnXFxcXFxcXFxcXFxcXFxcIl0vKVsxXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHBsYXkgPSAobWFpbi5pbmRleE9mKFxcXFxcXFwiaHR0cFxcXFxcXFwiKSAhPSAtMSA/IG1haW4gOiBsaW5rICsgbWFpbilcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwbGF5O1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAneDVXZWJWaWV3Oi8vJyArIChzcmN1cmwpXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocHRhYiA9PSAncmVucmVubWknKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoJ2h0dHBzOi8vY2FjaGUxLmpoZHl3LnZpcDo4MDkxL3JybWkucGhwP3VybD0nICsgc3JjdXJsLnNwbGl0KCd1cmw9JylbMV0pO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgLy9sb2coaHRtbCk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3g1UGxheTovLycgKyBKU09OLnBhcnNlKGh0bWwpLnVybDtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwdGFiID09ICdmcWZpbG0nKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2h0dHBzOi8vd3d3LmpoZHl3LnZpcC9qaWV4aS9mcS5waHA/dXJsPScgKyBzcmN1cmwuc3BsaXQoJ3VybD0nKVsxXSArICcmbmV4dD0nO1xcXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHB0YWIgPT0gJ3Jyc3AnKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2h0dHBzOi8vd3d3LmpoZHl3LnZpcC9qaWV4aS9yci5waHA/dXJsPScgKyBzcmN1cmwuc3BsaXQoJ3VybD0nKVsxXSArICcmbmV4dD0nO1xcXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9qaHl1blxcXFxcXFxcLnBocC8udGVzdChzcmN1cmwpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3JldHVybiAneDVXZWJWaWV3Oi8vJytzcmN1cmwucmVwbGFjZSgnaHR0cDovL3N2aXAuamh5dW4uanguY246MTIzNC9qaHl1bi5waHA/dXJsPScsICdodHRwczovL2FwaS5qaGR5dy52aXAvP3VybD0nKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBqaGxpbiA9IHNyY3VybC5yZXBsYWNlKCdodHRwOi8vc3ZpcC5qaHl1bi5qeC5jbjoxMjM0L2poeXVuLnBocD91cmw9JywgJ2h0dHBzOi8vYXBpLmpoZHl3LnZpcC8/dXJsPScpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlRG9tRm9ySHRtbChyZXF1ZXN0KGpobGluKSwgJyN2aWRlbyYmc291cmNlJiZzcmMnKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwdGFiID09ICdhbGl6eScpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gZmV0Y2goJ2h0dHBzOi8vZm91YmluLmNvbS9qaWV4aS5waHA/dXJsPScgKyBzcmN1cmwuc3BsaXQoJ3VybD0nKVsxXSwge30pLm1hdGNoKC9cXFxcXFxcXFxcXFxcXFwidXJsXFxcXFxcXFxcXFxcXFxcIjpcXFxcXFxcXFxcXFxcXFwiKC4qPylcXFxcXFxcXFxcXFxcXFwiLylbMV07XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybDtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvOTgzdmlwLy50ZXN0KHNyY3VybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKGZldGNoKHNyY3VybCwge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcXFxcXCJVc2VyLUFnZW50XFxcXFxcXCI6IE1PQklMRV9VQVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3Q6IGZhbHNlLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhIZWFkZXJzOiB0cnVlXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSkuaGVhZGVycy5sb2NhdGlvblswXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgveFxcXFxcXFxcLW5cXFxcXFxcXC5jY3xuaGR6NjY2Ly50ZXN0KHNyY3VybCkgJiYgL1xcXFxcXFxcLmh0bWx8YmlsaWJpbGkvLnRlc3Qoc3JjdXJsKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICAvL+WkhOeQhuaMh+WumuinhumikeWSjOe6v+i3r+e7k+adn1xcXFxuICAgICAgICAgICAgICAgICAgICAvLy0tLS3liIblibLnur8tLS0tLy9cXFxcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNjb2RlID0gSlNPTi5wYXJzZShmZXRjaChzcmN1cmwsIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXFxcXFxcIlVzZXItQWdlbnRcXFxcXFxcIjogXFxcXFxcXCJEYXJ0LzIuMTMgKGRhcnQ6aW8pXFxcXFxcXCJcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdDogZmFsc2UsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB3aXRoU3RhdHVzQ29kZTogdHJ1ZVxcXFxuICAgICAgICAgICAgICAgICAgICB9KSk7XFxcXG4gICAgICAgICAgICAgICAgICAgIC8vbG9nKHNjb2RlKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjb2RlLnN0YXR1c0NvZGUgPT0gJzMwMicpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8v5omT5byA6Kej5p6Q5pyJMzAy6YeN5a6a5ZCR55qE6ZO+5o6lXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgcmVkdXJsID0gc2NvZGUuaGVhZGVycy5sb2NhdGlvblswXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXFxcXFw9aHR0cC8udGVzdChyZWR1cmwpICYmIC9odG1sfGJpbGliaWxpLy50ZXN0KHJlZHVybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShmZXRjaChyZWR1cmwsIHt9KSkudXJsO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvXFxcXFxcXFw9aHR0cC8udGVzdChyZWR1cmwpICYmIC9cXFxcXFxcXC5tM3U4fFxcXFxcXFxcLm1wNHxcXFxcXFxcXC5mbHYvLnRlc3QocmVkdXJsKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZWR1cmwuc3Vic3RyaW5nKHJlZHVybC5pbmRleE9mKCc9aHR0cCcpICsgMSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZWR1cmxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIGh0bWwgPSByZXF1ZXN0KHNyY3VybCk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IHNjb2RlLmJvZHk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoL1xcXFxcXFxcPGJvZHkvLnRlc3QoaHRtbCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL+e9kemhteino+aekOeahOaJk+W8gOe9kemhtSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3JjdXJsO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2pzb27op6PmnpDnmoTlj5bpk77mjqVcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcHVybCA9IGh0bWwubWF0Y2goL1tcXFxcXFxcXCdcXFxcXFxcXFxcXFxcXFwiXXVybFtcXFxcXFxcXCdcXFxcXFxcXFxcXFxcXFwiXTouKj9bXFxcXFxcXFwnXFxcXFxcXFxcXFxcXFxcIl0oLio/KVtcXFxcXFxcXCdcXFxcXFxcXFxcXFxcXFwiXS8pWzFdLnJlcGxhY2UoL1xcXFxcXFxcXFxcXFxcXFwvZywgJycpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvaHR0cC8udGVzdChwdXJsKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocHRhYiA9PSAnYmlsaWJpbGknKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybCArICc7e1JlZmVyZXJAaHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tLyYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH0nO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHB0YWIgPT0gJ21ndHYnKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybCArICcjaXNWaWRlbz10cnVlIycgKyAnO3tSZWZlcmVyQHd3dy5tZ3R2LmNvbSYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH0nO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvXFxcXFxcXFw9aHR0cC8udGVzdChzcmN1cmwpICYmIC9cXFxcXFxcXC5odG1sfGJpbGliaWxpLy50ZXN0KHNyY3VybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL+mdnmh0dHDlvIDlpLTnmoTmiZPlvIDljp/pk77mjqUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSlcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIC8v5oql6ZSZ5Yik5pat5aSE55CGXFxcXG4gICAgICAgICAgICAgICAgICAgIGlmIChzcmN1cmwuc3Vic3RyaW5nKDAsIDIpID09ICdcXFxcXFxcXC9cXFxcXFxcXC8nKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2h0dHBzOicgKyBzcmN1cmw7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1xcXFxcXFxcPWh0dHAvLnRlc3Qoc3JjdXJsKSAmJiAvXFxcXFxcXFwuaHRtbHxiaWxpYmlsaS8udGVzdChzcmN1cmwpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3JldHVybiBzcmN1cmwuc3BsaXQoJz0nKVsxXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmwuc3Vic3RyaW5nKHNyY3VybC5pbmRleE9mKCc9aHR0cCcpICsgMSk7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3JjdXJsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3JldHVybiAneDVXZWJWaWV3Oi8vJytzcmN1cmxcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAvL+WKqOaAgeino+aekOS7o+eggee7k+adn1xcXFxuICAgICAgICAgICAgfSwgcHRhYiwgbGluaywgbXl1cmwpLFxcXFxuICAgICAgICAgICAgY29sX3R5cGU6IGNsdFxcXFxuICAgICAgICB9KTtcXFxcbiAgICB9XFxcXG59XFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwiVFbnroDku4vkuI7pgInpm4ZcXFwiLFxcXCJwYXRoXFxcIjpcXFwidHZtb3ZsaXN0XFxcIixcXFwicnVsZVxcXCI6XFxcInZhciB0YWJzID0gT2JqZWN0LmtleXMoaHRtbC52aWRlb2xpc3QpO1xcXFxudmFyIHRodW1iID0gaHRtbC5pbWdfdXJsO1xcXFxuaXRlbXMucHVzaCh7XFxcXG4gICAgdGl0bGU6ICfliafmg4XnroDku4vvvJonLFxcXFxuICAgIGRlc2M6IGh0bWwuaW50cm8sXFxcXG4gICAgcGljX3VybDogdGh1bWIsXFxcXG4gICAgdXJsOiB0aHVtYixcXFxcbiAgICBjb2xfdHlwZTogJ21vdmllXzFfdmVydGljYWxfcGljJ1xcXFxufSk7XFxcXG5cXFxcbmZvciAodmFyIGkgPSAwOyBpIDwgdGFicy5sZW5ndGg7IGkrKykge1xcXFxuICAgIHZhciBsaXN0ID0gaHRtbC52aWRlb2xpc3RbdGFic1tpXV07XFxcXG4gICAgdmFyIHB0YWIgPSB0YWJzW2ldO1xcXFxuICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICB0aXRsZTogcHRhYiArICcg8J+UlycgKyBbaSArIDFdICsgJy8nICsgW3RhYnMubGVuZ3RoXSxcXFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG4gICAgfSk7XFxcXG5cXFxcbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKyspIHtcXFxcbiAgICAgICAgdmFyIHNyY3VybCA9IGxpc3Rbal0udXJsO1xcXFxuICAgICAgICBpZigvMjkzangxLy50ZXN0KHNyY3VybCkpe1xcXFxuICAgICAgICAgICAgc3JjdXJsID0gc3JjdXJsLnJlcGxhY2UoJzI5M2p4MScsJ2p4Jyk7XFxcXG4gICAgICAgIH1cXFxcbiAgICAgICAgdmFyIHRpdGxlID0gbGlzdFtqXS50aXRsZTtcXFxcbiAgICAgICAgaWYgKGxpc3QubGVuZ3RoIDw9IDQpIHtcXFxcbiAgICAgICAgICAgIHZhciBjbHQgPSAndGV4dF8yJztcXFxcbiAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgIHZhciBjbHQgPSBpc05hTih0aXRsZSkgPyAnZmxleF9idXR0b24nIDogJ3RleHRfNSdcXFxcbiAgICAgICAgfTtcXFxcbiAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgocHRhYiwgc3JjdXJsLCBteXVybCkgPT4ge1xcXFxuICAgICAgICAgICAgICAgIC8vbG9nKHNyY3VybCk7XFxcXG4gICAgICAgICAgICAgICAgLy/liqjmgIHop6PmnpDku6PnoIHlvIDlp4tcXFxcbiAgICAgICAgICAgICAgICB0cnkge1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoL1xcXFxcXFxcLm0zdTh8XFxcXFxcXFwubXA0fG9ialxcXFxcXFxcL3Rvcy8udGVzdChzcmN1cmwpICYmIC9odHRwLy50ZXN0KHNyY3VybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAvXFxcXFxcXFw9Ly50ZXN0KHNyY3VybCkgPyBzcmN1cmwuc3BsaXQoJz0nKVsxXSA6IHNyY3VybCArICcjaXNWaWRlbz10cnVlIyc7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3JjdXJsLmluZGV4T2YoXFxcXFxcXCIvc2hhcmUvXFxcXFxcXCIpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaW5rID0gc3JjdXJsLnNwbGl0KFxcXFxcXFwiL3NoYXJlXFxcXFxcXCIpWzBdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBmYyA9IGZldGNoKHNyY3VybCwge30pLnJlcGxhY2UoXFxcXFxcXCJ2YXIgcHVybFxcXFxcXFwiLCBcXFxcXFxcInZhciBtYWluXFxcXFxcXCIpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmYy5pbmRleE9mKFxcXFxcXFwibWFpblxcXFxcXFwiKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbWF0ID0gZmMubWF0Y2goL3ZhciBtYWluLio/Oy8pWzBdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKG1hdCk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwbGF5ID0gKG1haW4uaW5kZXhPZihcXFxcXFxcImh0dHBcXFxcXFxcIikgIT0gLTEgPyBtYWluIDogbGluayArIG1haW4pO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtYWluID0gZmMubWF0Y2goL3VybDouKj9bXFxcXFxcXFwnXFxcXFxcXFxcXFxcXFxcIl0oLio/KVtcXFxcXFxcXCdcXFxcXFxcXFxcXFxcXFwiXS8pWzFdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGxheSA9IChtYWluLmluZGV4T2YoXFxcXFxcXCJodHRwXFxcXFxcXCIpICE9IC0xID8gbWFpbiA6IGxpbmsgKyBtYWluKVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBsYXk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd4NVdlYlZpZXc6Ly8nICsgKHNyY3VybClcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwdGFiID09ICdhbGl6eScpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gZmV0Y2goJ2h0dHBzOi8vZm91YmluLmNvbS9qaWV4aS5waHA/dXJsPScgKyBzcmN1cmwsIHt9KS5tYXRjaCgvXFxcXFxcXFxcXFxcXFxcInVybFxcXFxcXFxcXFxcXFxcXCI6XFxcXFxcXFxcXFxcXFxcIiguKj8pXFxcXFxcXFxcXFxcXFxcIi8pWzFdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmw7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoLzE5anhcXFxcXFxcXC52aXB8bmZ5aW5nc2hpLy50ZXN0KHNyY3VybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gSlNPTi5wYXJzZShmZXRjaChzcmN1cmwucmVwbGFjZSgnaHR0cDovLycsICdodHRwczovLycpLCB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXFxcXFxcIlVzZXItQWdlbnRcXFxcXFxcIjogTU9CSUxFX1VBXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdDogZmFsc2UsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEhlYWRlcnM6IHRydWVcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKS5oZWFkZXJzLmxvY2F0aW9uWzBdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC90aXRhbi5tZ3R2Ly50ZXN0KHB1cmwpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnICsgJzt7UmVmZXJlckB3d3cubWd0di5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gIGVsc2UgaWYgKC9vYmpcXFxcXFxcXC90b3MvLnRlc3QocHVybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHVybCArICcjaXNWaWRlbz10cnVlIyc7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwdXJsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xcXFxuICAgICAgICAgICAgICAgICAgICB9XFxcXG5cXFxcbiAgICAgICAgICAgICAgICAgICAgLy8tLS0t5YiG5Ymy57q/LS0tLS8vXFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBzY29kZSA9IEpTT04ucGFyc2UoZmV0Y2goc3JjdXJsLCB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcXFxcXCJVc2VyLUFnZW50XFxcXFxcXCI6IE1PQklMRV9VQVxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0OiBmYWxzZSxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhTdGF0dXNDb2RlOiB0cnVlXFxcXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjb2RlLnN0YXR1c0NvZGUgPT0gJzMwMicpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsID0gc2NvZGUuaGVhZGVycy5sb2NhdGlvblswXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIGh0bWwgPSByZXF1ZXN0KHNyY3VybCk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IHNjb2RlLmJvZHk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2xvZyhodG1sKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvXFxcXFxcXFxcXFxcXFxcInVybFxcXFxcXFxcXFxcXFxcXCJcXFxcXFxcXDpcXFxcXFxcXFxcXFxcXFwiaHR0cC8udGVzdChodG1sKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwdXJsPWh0bWwubWF0Y2goL1xcXFxcXFxcXFxcXFxcXCJ1cmxcXFxcXFxcXFxcXFxcXFwiOlxcXFxcXFxcXFxcXFxcXCIoLio/KVxcXFxcXFxcXFxcXFxcXCIvKVsxXTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaHRtbC5zdGFydHNXaXRoKCd7JykpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcHVybCA9IHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHB1cmwgPSBzcmN1cmxcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3JldHVybiAneDVXZWJWaWV3Oi8vJysoc3JjdXJsKSBcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoL3RpdGFuLm1ndHYvLnRlc3QocHVybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwdXJsICsgJyNpc1ZpZGVvPXRydWUjJyArICc7e1JlZmVyZXJAd3d3Lm1ndHYuY29tJiZVc2VyLUFnZW50QE1vemlsbGEvNS4wfSc7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL29ialxcXFxcXFxcL3Rvcy8udGVzdChwdXJsKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnO1xcXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHB1cmxcXFxcbiAgICAgICAgICAgICAgICAgICAgfTtcXFxcblxcXFxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNyY3VybC5zdWJzdHJpbmcoMCwgMikgPT0gJ1xcXFxcXFxcL1xcXFxcXFxcLycpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaHR0cHM6JyArIHNyY3VybDtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgvXFxcXFxcXFw9aHR0cC8udGVzdChzcmN1cmwpICYmIC9cXFxcXFxcXC5odG1sfGJpbGliaWxpLy50ZXN0KHNyY3VybCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcmV0dXJuIHNyY3VybC5zcGxpdCgnPScpWzFdO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNyY3VybC5zdWJzdHJpbmcoc3JjdXJsLmluZGV4T2YoJz1odHRwJykgKyAxKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcmN1cmxcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAvL+WKqOaAgeino+aekOS7o+eggee7k+adn1xcXFxuICAgICAgICAgICAgfSwgcHRhYiwgc3JjdXJsLCBteXVybCksXFxcXG4gICAgICAgICAgICBjb2xfdHlwZTogY2x0XFxcXG4gICAgICAgIH0pO1xcXFxuICAgIH1cXFxcbn1cXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLliJfooajmqKHlvI/mkJzntKLkuoznuqdcXFwiLFxcXCJwYXRoXFxcIjpcXFwic2VhcmVyalxcXCIsXFxcInJ1bGVcXFwiOlxcXCJ2YXIgcmVzID0ge307XFxcXG52YXIgaXRlbXMgPSBbXTtcXFxcbnZhciBzcGwgPSBnZXRSZXNDb2RlKCkuc3BsaXQoJyN4IycpO1xcXFxudmFyIHR5cGV0ID0gc3BsWzNdO1xcXFxudmFyIHRkb21pbiA9IHNwbFsyXTtcXFxcbnZhciBrZXkgPSBzcGxbNF07XFxcXG5cXFxcbmlmICgvdmlwbXYvLnRlc3QodGRvbWluKSkge1xcXFxuICAgIHZhciBiaHRtbCA9IHJlcXVlc3Qoc3BsWzFdKTtcXFxcbn0gZWxzZSB7XFxcXG4gICAgdmFyIGJodG1sID0gZmV0Y2goc3BsWzFdLCB7XFxcXG4gICAgICAgIGhlYWRlcnM6IHtcXFxcbiAgICAgICAgICAgIFxcXFxcXFwiVXNlci1BZ2VudFxcXFxcXFwiOiBcXFxcXFxcIkRhcnQvMi4xMyAoZGFydDppbylcXFxcXFxcIlxcXFxuICAgICAgICB9XFxcXG4gICAgfSk7XFxcXG59XFxcXG50cnkge1xcXFxuICAgIGJodG1sID0gYmh0bWwuc3RhcnRzV2l0aCgnXFxcXFxcXFxyXFxcXFxcXFxuJykgPyBiaHRtbC5yZXBsYWNlKCdcXFxcXFxcXHJcXFxcXFxcXG4nLCAnJykgOiBiaHRtbDtcXFxcbn0gY2F0Y2ggKGUpIHt9XFxcXG5pZiAoL2J0d2FmLy50ZXN0KGJodG1sKSkge1xcXFxuICAgIC8qXFxcXG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOifmnInlrp3loZTpqozor4HvvIzngrnlh7vorr/pl67ljp/nvZHpobUnLFxcXFxuICAgICAgICAgICAgICAgICAgICB1cmw6IHNwbFsxXSArIGBAbGF6eVJ1bGU9LmpzOmlucHV0LnNwbGl0KCc7JylbMF1gLFxcXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMSdcXFxcbiAgICAgICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgICAgICAgICAqL1xcXFxuXFxcXG4gICAgYmh0bWwgPSBmZXRjaChzcGxbMV0gKyAnJmJ0d2FmJyArIGJodG1sLm1hdGNoKC9idHdhZiguKj8pXFxcXFxcXFxcXFxcXFxcIi8pWzFdLCB7fSk7XFxcXG5cXFxcbn1cXFxcblxcXFxuaWYgKGJodG1sID09IFxcXFxcXFwiXFxcXFxcXCIgfHwgYmh0bWwgPT0gbnVsbCB8fCBiaHRtbC5zdWJzdHJpbmcoMCwgNSkgPT0gJ2Vycm9yJyB8fCAhYmh0bWwuc3RhcnRzV2l0aCgneycpKSB7XFxcXG4gICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgIHRpdGxlOiAn5pyq5pCc57Si5Yiw55u45YWz6LWE5rqQ77yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXFxcbiAgICAgICAgdXJsOiBzcGxbMV0gKyBgQGxhenlSdWxlPS5qczppbnB1dC5zcGxpdCgnOycpWzBdYCxcXFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG4gICAgfSk7XFxcXG59IGVsc2UgaWYgKGJodG1sLmxlbmd0aCA8IDgwKSB7XFxcXG4gICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgIHRpdGxlOiAn6L+U5Zue5pWw5o2u5LiN5a6M5pW077yM54K55Ye76K6/6Zeu5Y6f572R6aG1JyxcXFxcbiAgICAgICAgdXJsOiBzcGxbMV0gKyBgQGxhenlSdWxlPS5qczppbnB1dC5zcGxpdCgnOycpWzBdYCxcXFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG4gICAgfSk7XFxcXG59IGVsc2Uge1xcXFxuICAgIHZhciBodG1sID0gSlNPTi5wYXJzZShiaHRtbCk7XFxcXG4gICAgLy9sb2coc3BsWzFdKTtcXFxcbiAgICBpZiAoaHRtbC5saXN0KSB7XFxcXG4gICAgICAgIHZhciBsaXN0ID0gaHRtbC5saXN0O1xcXFxuICAgIH0gZWxzZSBpZiAoaHRtbC5kYXRhLmxpc3QpIHtcXFxcbiAgICAgICAgdmFyIGxpc3QgPSBodG1sLmRhdGEubGlzdDtcXFxcbiAgICB9IGVsc2UgaWYgKGh0bWwuZGF0YSkge1xcXFxuICAgICAgICB2YXIgbGlzdCA9IGh0bWwuZGF0YTtcXFxcbiAgICB9XFxcXG5cXFxcbiAgICBpZiAobGlzdC5sZW5ndGggPCAxKSB7XFxcXG4gICAgICAgIGl0ZW1zLnB1c2goe1xcXFxuICAgICAgICAgICAgdGl0bGU6ICfmnKrmkJzntKLliLDvvIzngrnlh7vorr/pl67ljp/nvZHpobUnLFxcXFxuICAgICAgICAgICAgdXJsOiBzcGxbMV0gKyBgQGxhenlSdWxlPS5qczppbnB1dC5zcGxpdCgnOycpWzBdYCxcXFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcXFxuICAgICAgICB9KTtcXFxcbiAgICB9IGVsc2Uge1xcXFxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXFxcblxcXFxuICAgICAgICAgICAgaWYgKC9BUFDlvbHop4YvLnRlc3QodHlwZXQpKSB7XFxcXG4gICAgICAgICAgICAgICAgaWYgKHRkb21pbi5pbmRleE9mKCdhcGkucGhwL2FwcC8nKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnZvZF9uYW1lO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgdmlkID0gdGRvbWluICsgJ3ZpZGVvX2RldGFpbD9pZD0nICsgbGlzdFtpXS52b2RfaWQgKyAnJnRva2VuPSc7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcXFxuICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGRvbWluLmluZGV4T2YoJ3hnYXBwLnBocC92MS8nKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnZvZF9uYW1lO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgcGljID0gbGlzdFtpXS52b2RfcGljO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgdmlkID0gdGRvbWluICsgJ3ZpZGVvX2RldGFpbD9pZD0nICsgbGlzdFtpXS52b2RfaWQ7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnZvZF9yZW1hcmtzO1xcXFxuICAgICAgICAgICAgICAgICAgICAvL3ZhciBjb249bGlzdFtpXS50eXBlLnR5cGVfZGVzO1xcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciB0aXRsZSA9IGxpc3RbaV0udm9kX25hbWU7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnZvZF9waWM7XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciB2aWQgPSB0ZG9taW4gKyAnL2RldGFpbD92b2RfaWQ9JyArIGxpc3RbaV0udm9kX2lkICsgJyZ0b2tlbj0nO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgcmVtID0gbGlzdFtpXS52b2RfcmVtYXJrcztcXFxcbiAgICAgICAgICAgICAgICAgICAgLy92YXIgY29uPWxpc3RbaV0udHlwZS50eXBlX2RlcztcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKC9UVuW9seinhi8udGVzdCh0eXBldCkpIHtcXFxcbiAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSBsaXN0W2ldLnRpdGxlO1xcXFxuICAgICAgICAgICAgICAgIHZhciBwaWMgPSBsaXN0W2ldLnBpYztcXFxcbiAgICAgICAgICAgICAgICAvL3ZhciB2aWQ9dGRvbWluKycvZGV0YWlsP3ZvZF9pZD0nK2xpc3RbaV0ubmV4dGxpbmsrJyZyZWxfbGltaXQ9MTAnO1xcXFxuICAgICAgICAgICAgICAgIHZhciB2aWQgPSBsaXN0W2ldLm5leHRsaW5rO1xcXFxuICAgICAgICAgICAgICAgIHZhciByZW0gPSBsaXN0W2ldLnN0YXRlO1xcXFxuICAgICAgICAgICAgICAgIC8vdmFyIGNvbj1saXN0W2ldLnN0YXRlO1xcXFxuICAgICAgICAgICAgfVxcXFxuXFxcXG4gICAgICAgICAgICBpdGVtcy5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGUucmVwbGFjZShrZXksICfigJzigJwnICsga2V5ICsgJ+KAneKAnScpLFxcXFxuICAgICAgICAgICAgICAgIHBpY191cmw6IHBpYyArICdAUmVmZXJlcj0nLFxcXFxuICAgICAgICAgICAgICAgIHVybDogJCh2aWQrJztnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX0nKS5ydWxlKCh0eXBldCkgPT4ge1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgcmVzID0ge307XFxcXG4gICAgICAgICAgICAgICAgICAgIHZhciBpdGVtcyA9IFtdO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IEpTT04ucGFyc2UoZ2V0UmVzQ29kZSgpKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJycsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiAnMjU1JiZmbG9hdCcsXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICcnLFxcXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZSdcXFxcbiAgICAgICAgICAgICAgICAgICAgfSk7XFxcXG4gICAgICAgICAgICAgICAgICAgIHJlZnJlc2hYNVdlYlZpZXcoJycpO1xcXFxuICAgICAgICAgICAgICAgICAgICB2YXIgbXl1cmwgPSBNWV9VUkwubWF0Y2goLyhbXFxcXFxcXFxTXSo/OlxcXFxcXFxcL1xcXFxcXFxcL1tcXFxcXFxcXFNdKj8pXFxcXFxcXFwvLylbMV07XFxcXG4gICAgICAgICAgICAgICAgICAgIGlmICgvQVBQ5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvYXBwbW92bGlzdCcsIHt9KSkucnVsZSk7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoL1RW5b2x6KeGLy50ZXN0KHR5cGV0KSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvdHZtb3ZsaXN0Jywge30pKS5ydWxlKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcXFxuICAgICAgICAgICAgICAgICAgICBzZXRIb21lUmVzdWx0KHJlcyk7XFxcXG4gICAgICAgICAgICAgICAgfSwgdHlwZXQpLFxcXFxuICAgICAgICAgICAgICAgIC8vY29udGVudDpyZW0sXFxcXG4gICAgICAgICAgICAgICAgZGVzYzogcmVtLFxcXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWMnXFxcXG4gICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgfSAvL2ZvciBpXFxcXG4gICAgfSAvL2Vsc2UgbGlzdC5sZW5ndGhcXFxcbn1cXFxcblxcXFxucmVzLmRhdGEgPSBpdGVtcztcXFxcbnNldEhvbWVSZXN1bHQocmVzKTtcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCJBUFDpppbpobXliJfooahcXFwiLFxcXCJwYXRoXFxcIjpcXFwiYXBwaW5kZXhkYXRhXFxcIixcXFwicnVsZVxcXCI6XFxcImlmIChodG1sLmxpc3QpIHtcXFxcbiAgICB2YXIgbGlzdCA9IGh0bWwubGlzdDtcXFxcbn0gZWxzZSBpZiAoaHRtbC5kYXRhJiZodG1sLmRhdGEubGlzdCkge1xcXFxuICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhLmxpc3Q7XFxcXG59IGVsc2Uge1xcXFxuICAgIHZhciBsaXN0ID0gaHRtbC5kYXRhO1xcXFxufVxcXFxuXFxcXG5mb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXFxcbiAgICBpZiAobGlzdFtpXS52b2RfbGlzdCkge1xcXFxuICAgICAgICB2YXIgbGlzdHMgPSBsaXN0W2ldLnZvZF9saXN0O1xcXFxuICAgICAgICB2YXIgdHlwZW5hbWUgPSBsaXN0W2ldLnZvZF90eXBlX25hbWU7XFxcXG4gICAgfSBlbHNlIHtcXFxcbiAgICAgICAgdmFyIGxpc3RzID0gbGlzdFtpXS52bGlzdDtcXFxcbiAgICAgICAgdmFyIHR5cGVuYW1lID0gbGlzdFtpXS50eXBlX25hbWVcXFxcbiAgICB9XFxcXG4gICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgIHRpdGxlOiB0eXBlbmFtZSxcXFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG5cXFxcbiAgICB9KTtcXFxcbiAgICBcXFxcbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGxpc3RzLmxlbmd0aDsgaisrKSB7XFxcXG4gICAgICAgIHZhciB0aXRsZSA9IGxpc3RzW2pdLnZvZF9uYW1lO1xcXFxuICAgICAgICB2YXIgaW1nID0gbGlzdHNbal0udm9kX3BpYztcXFxcbiAgICAgICAgdmFyIHVybCA9IGxpc3RzW2pdLnZvZF9pZDtcXFxcbiAgICAgICAgdmFyIGRlc2MgPSBsaXN0c1tqXS52b2RfcmVtYXJrcztcXFxcbiAgICAgICAgaWYgKGh0bWwubGlzdCkge1xcXFxuICAgICAgICAgICAgdmFyIGxpbmsgPSBtdXJsICsgJ3ZpZGVvX2RldGFpbD9pZD0nICsgdXJsICsgJyZ0b2tlbj07Z2V0O3V0Zi04O3tVc2VyLUFnZW50QERhcnQvMi4xMyAoZGFydDppbyl9JztcXFxcbiAgICAgICAgfSBlbHNlIGlmIChodG1sLmRhdGEmJmh0bWwuZGF0YS5saXN0KSB7XFxcXG4gICAgICAgICAgICB2YXIgbGluayA9IG11cmwgKyAnL2RldGFpbD92b2RfaWQ9JyArIHVybCArICcmcmVsX2xpbWl0PTEwO2dldDt1dGYtODt7VXNlci1BZ2VudEBEYXJ0LzIuMTMgKGRhcnQ6aW8pfSc7XFxcXG4gICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICB2YXIgbGluayA9IG11cmwgKyAndmlkZW9fZGV0YWlsP2lkPScgKyB1cmwgKyAnJnRva2VuPTtnZXQ7dXRmLTg7e1VzZXItQWdlbnRARGFydC8yLjEzIChkYXJ0OmlvKX0nO1xcXFxuICAgICAgICB9ICAgICAgICBcXFxcbiAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXFxcXG4gICAgICAgICAgICBwaWNfdXJsOiBpbWcgKyAnQFJlZmVyZXI9JyxcXFxcbiAgICAgICAgICAgIHVybDogJChsaW5rKS5ydWxlKCgpID0+IHtcXFxcbiAgICAgICAgICAgICAgICB2YXIgcmVzID0ge307XFxcXG4gICAgICAgICAgICAgICAgdmFyIGl0ZW1zID0gW107XFxcXG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaCh7XFxcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnJyxcXFxcbiAgICAgICAgICAgICAgICAgICAgZGVzYzogJzI1NSYmZmxvYXQnLFxcXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICcnLFxcXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJ1xcXFxuICAgICAgICAgICAgICAgIH0pO1xcXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hYNVdlYlZpZXcoJycpOyAgICAgICAgICAgICAgICBcXFxcbiAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IEpTT04ucGFyc2UoZ2V0UmVzQ29kZSgpKTsgICAgICAgICAgICAgICAgXFxcXG4gICAgICAgICAgICAgICAgdmFyIG15dXJsID0gTVlfVVJMLm1hdGNoKC8oW1xcXFxcXFxcU10qPzpcXFxcXFxcXC9cXFxcXFxcXC9bXFxcXFxcXFxTXSo/KVxcXFxcXFxcLy8pWzFdO1xcXFxuICAgICAgICAgICAgICAgIGV2YWwoSlNPTi5wYXJzZShmZXRjaCgnaGlrZXI6Ly9wYWdlL2FwcG1vdmxpc3QnLCB7fSkpLnJ1bGUpOyAgICAgICAgICAgICAgICBcXFxcbiAgICAgICAgICAgICAgICByZXMuZGF0YSA9IGl0ZW1zO1xcXFxuICAgICAgICAgICAgICAgIHNldEhvbWVSZXN1bHQocmVzKTtcXFxcbiAgICAgICAgICAgIH0pLFxcXFxuICAgICAgICAgICAgZGVzYzogZGVzYyxcXFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfM19tYXJxdWVlJ1xcXFxuICAgICAgICB9KTtcXFxcbiAgICB9XFxcXG59XFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwi6aaW5qyh5a+85YWl562J5b6FXFxcIixcXFwicGF0aFxcXCI6XFxcIndhaXRcXFwiLFxcXCJydWxlXFxcIjpcXFwiZnVuY3Rpb24gY2FuVXNlKCkge1xcXFxuICAgIC8v5aaC5p6c5pu05paw5LqG6KeE5YiZ5Lmf6KaB6ZmQ5rWB77yM5Y+v5Lul5L+u5pS5a2V5XFxcXG4gICAgbGV0IGtleSA9IFxcXFxcXFwibG9jazRcXFxcXFxcIlxcXFxuICAgIC8v562J5b6F5YiG6ZKf5pWwXFxcXG4gICAgbGV0IHdhaXRNaW4gPSAzMFxcXFxuICAgIFxcXFxuICAgIGxldCBtaW4gPSBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAxMDAwICogNjAgKiB3YWl0TWluKVxcXFxuICAgIGxldCB1bmxvY2sgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIG1pbjtcXFxcbiAgICBsZXQgdGltZSA9IGdldEl0ZW0oa2V5LCBcXFxcXFxcIlxcXFxcXFwiKTtcXFxcbiAgICBpZiAodGltZSA9PSBcXFxcXFxcIlxcXFxcXFwiKSB7XFxcXG4gICAgICAgIHNldEl0ZW0oa2V5LCBcXFxcXFxcIlxcXFxcXFwiICsgdW5sb2NrKVxcXFxuICAgICAgICBsZXQgc3QgPSBuZXcgRGF0ZSh1bmxvY2spLnRvTG9jYWxlU3RyaW5nKCkucmVwbGFjZSgvOlxcXFxcXFxcZHsxLDJ9JC8sICcgJyk7XFxcXG4gICAgICAgIGxldCBtc2cgPSBcXFxcXFxcIui/meaYr+aCqOesrOS4gOasoeS9v+eUqOivpeeJiOacrOinhOWIme+8jOS4uumBv+WFjeesrOS4gOasoeWvvOWFpeS9v+eUqOS6uuaVsOa/gOWinu+8jOinhOWImeWwhuWcqFxcXFxcXFwiICsgc3QgKyBcXFxcXFxcIuino+mUgeS9v+eUqOOAgjxicj48YnI+5aW96KeE5YiZ5LiN5oCV5pma77yM6K+36ICQ5b+D562J5b6F77yB6K+l5o+Q56S65LuF5Zyo56ys5LiA5qyh5a+85YWl77yI5pu05paw77yJ5pe25Ye6546w77yM5ZCO57ut5L2/55So6L+H56iL5Lit5LiN5Lya5Ye6546w77yBXFxcXFxcXCJcXFxcbiAgICAgICAgc2V0UmVzdWx0KFt7XFxcXG4gICAgICAgICAgICB0aXRsZTogbXNnLFxcXFxuICAgICAgICAgICAgY29sX3R5cGU6IFxcXFxcXFwicmljaF90ZXh0XFxcXFxcXCJcXFxcbiAgICAgICAgfV0pXFxcXG4gICAgICAgIHJldHVybiBmYWxzZVxcXFxuICAgIH0gZWxzZSBpZiAocGFyc2VJbnQodGltZSkgPCBuZXcgRGF0ZSgpLmdldFRpbWUoKSkge1xcXFxuICAgICAgICByZXR1cm4gdHJ1ZVxcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIGxldCBzdCA9IG5ldyBEYXRlKHBhcnNlSW50KHRpbWUpKS50b0xvY2FsZVN0cmluZygpLnJlcGxhY2UoLzpcXFxcXFxcXGR7MSwyfSQvLCAnICcpO1xcXFxuICAgICAgICBsZXQgbXNnID0gXFxcXFxcXCLkuLrpgb/lhY3kvb/nlKjkurrmlbDmv4Dlop7vvIzop4TliJnlsIblnKhcXFxcXFxcIiArIHN0ICsgXFxcXFxcXCLop6PplIHkvb/nlKjjgII8YnI+PGJyPuWlveinhOWImeS4jeaAleaZmu+8jOivt+iAkOW/g+etieW+he+8geivpeaPkOekuuS7heWcqOesrOS4gOasoeWvvOWFpe+8iOabtOaWsO+8ieaXtuWHuueOsO+8jOWQjue7reS9v+eUqOi/h+eoi+S4reS4jeS8muWHuueOsO+8gVxcXFxcXFwiXFxcXG4gICAgICAgIHNldFJlc3VsdChbe1xcXFxuICAgICAgICAgICAgdGl0bGU6IG1zZyxcXFxcbiAgICAgICAgICAgIGNvbF90eXBlOiBcXFxcXFxcInJpY2hfdGV4dFxcXFxcXFwiXFxcXG4gICAgICAgIH1dKVxcXFxuICAgICAgICByZXR1cm4gZmFsc2VcXFxcbiAgICB9XFxcXG59XFxcXG4kLmV4cG9ydHMgPSBjYW5Vc2UoKTtcXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwczovL2ltZy5obnp5dHAuY29tL3VwbG9hZC92b2QvMjAyMS0wOS0wNy8yMDIxMDkwNzE2MzA5OTc0NjUuanBnQFJlZmVyZXI9IiwidGl0bGUiOiLkuYXkuZ3lvbHop4Yt4oCc4oCc546J6JKy5Zui4oCd4oCd546w5Luj54mIIn0=
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement